/*
 * Copyright (C) 2017 The Android Open Source Project
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

syntax = "proto2";
package android.providers.settings;

option java_multiple_files = true;
option java_outer_classname = "SettingsServiceProto";

message SettingsServiceDumpProto {
    // Per user settings
    repeated UserSettingsProto user_settings = 1;

    // Global settings
    optional GlobalSettingsProto global_settings = 2;
}

message UserSettingsProto {
    // Should be 0, 10, 11, 12, etc. where 0 is the owner.
    optional int32 user_id = 1;

    // The secure settings for this user
    optional SecureSettingsProto secure_settings = 2;

    // The system settings for this user
    optional SystemSettingsProto system_settings = 3;
}

// Note: it's a conscious decision to add each setting as a separate field. This
// allows annotating each setting with its own privacy tag.
message GlobalSettingsProto {
    repeated SettingsOperationProto historical_operations = 1;

    optional SettingProto add_users_when_locked = 2;
    optional SettingProto enable_accessibility_global_gesture_enabled = 3;
    optional SettingProto airplane_mode_on = 4;
    optional SettingProto theater_mode_on = 5;
    optional SettingProto radio_bluetooth = 6;
    optional SettingProto radio_wifi = 7;
    optional SettingProto radio_wimax = 8;
    optional SettingProto radio_cell = 9;
    optional SettingProto radio_nfc = 10;
    optional SettingProto airplane_mode_radios = 11;
    optional SettingProto airplane_mode_toggleable_radios = 12;
    optional SettingProto bluetooth_class_of_device = 293;
    optional SettingProto bluetooth_disabled_profiles = 13;
    optional SettingProto bluetooth_interoperability_list = 14;
    optional SettingProto wifi_sleep_policy = 15;
    optional SettingProto auto_time = 16;
    optional SettingProto auto_time_zone = 17;
    optional SettingProto car_dock_sound = 18;
    optional SettingProto car_undock_sound = 19;
    optional SettingProto desk_dock_sound = 20;
    optional SettingProto desk_undock_sound = 21;
    optional SettingProto dock_sounds_enabled = 22;
    optional SettingProto dock_sounds_enabled_when_accessibility = 23;
    optional SettingProto lock_sound = 24;
    optional SettingProto unlock_sound = 25;
    optional SettingProto trusted_sound = 26;
    optional SettingProto low_battery_sound = 27;
    optional SettingProto power_sounds_enabled = 28;
    optional SettingProto wireless_charging_started_sound = 29;
    optional SettingProto charging_sounds_enabled = 30;
    optional SettingProto stay_on_while_plugged_in = 31;
    optional SettingProto bugreport_in_power_menu = 32;
    optional SettingProto adb_enabled = 33;
    optional SettingProto debug_view_attributes = 34;
    optional SettingProto assisted_gps_enabled = 35;
    optional SettingProto bluetooth_on = 36;
    optional SettingProto cdma_cell_broadcast_sms = 37;
    optional SettingProto cdma_roaming_mode = 38;
    optional SettingProto cdma_subscription_mode = 39;
    optional SettingProto data_activity_timeout_mobile = 40;
    optional SettingProto data_activity_timeout_wifi = 41;
    optional SettingProto data_roaming = 42;
    optional SettingProto mdc_initial_max_retry = 43;
    optional SettingProto force_allow_on_external = 44;
    optional SettingProto euicc_provisioned = 294;
    optional SettingProto development_force_resizable_activities = 45;
    optional SettingProto development_enable_freeform_windows_support = 46;
    optional SettingProto development_settings_enabled = 47;
    optional SettingProto device_provisioned = 48;
    optional SettingProto device_provisioning_mobile_data_enabled = 49;
    optional SettingProto display_size_forced = 50;
    optional SettingProto display_scaling_force = 51;
    optional SettingProto download_max_bytes_over_mobile = 52;
    optional SettingProto download_recommended_max_bytes_over_mobile = 53;
    optional SettingProto hdmi_control_enabled = 54;
    optional SettingProto hdmi_system_audio_control_enabled = 55;
    optional SettingProto hdmi_control_auto_wakeup_enabled = 56;
    optional SettingProto hdmi_control_auto_device_off_enabled = 57;
    optional SettingProto location_background_throttle_interval_ms = 295;
    optional SettingProto location_background_throttle_proximity_alert_interval_ms = 296;
    optional SettingProto location_background_throttle_package_whitelist = 297;
    optional SettingProto wifi_scan_background_throttle_interval_ms = 298;
    optional SettingProto wifi_scan_background_throttle_package_whitelist = 299;
    optional SettingProto mhl_input_switching_enabled = 58;
    optional SettingProto mhl_power_charge_enabled = 59;
    optional SettingProto mobile_data = 60;
    optional SettingProto mobile_data_always_on = 61;
    optional SettingProto connectivity_metrics_buffer_size = 62;
    optional SettingProto netstats_enabled = 63;
    optional SettingProto netstats_poll_interval = 64;
    optional SettingProto netstats_time_cache_max_age = 65;
    optional SettingProto netstats_global_alert_bytes = 66;
    optional SettingProto netstats_sample_enabled = 67;
    optional SettingProto netstats_augment_enabled = 300;
    optional SettingProto netstats_dev_bucket_duration = 68;
    optional SettingProto netstats_dev_persist_bytes = 69;
    optional SettingProto netstats_dev_rotate_age = 70;
    optional SettingProto netstats_dev_delete_age = 71;
    optional SettingProto netstats_uid_bucket_duration = 72;
    optional SettingProto netstats_uid_persist_bytes = 73;
    optional SettingProto netstats_uid_rotate_age = 74;
    optional SettingProto netstats_uid_delete_age = 75;
    optional SettingProto netstats_uid_tag_bucket_duration = 76;
    optional SettingProto netstats_uid_tag_persist_bytes = 77;
    optional SettingProto netstats_uid_tag_rotate_age = 78;
    optional SettingProto netstats_uid_tag_delete_age = 79;
    optional SettingProto network_preference = 80;
    optional SettingProto network_scorer_app = 81;
    optional SettingProto nitz_update_diff = 82;
    optional SettingProto nitz_update_spacing = 83;
    optional SettingProto ntp_server = 84;
    optional SettingProto ntp_timeout = 85;
    optional SettingProto storage_benchmark_interval = 86;
    optional SettingProto dns_resolver_sample_validity_seconds = 87;
    optional SettingProto dns_resolver_success_threshold_percent = 88;
    optional SettingProto dns_resolver_min_samples = 89;
    optional SettingProto dns_resolver_max_samples = 90;
    optional SettingProto ota_disable_automatic_update = 91;
    optional SettingProto package_verifier_enable = 92;
    optional SettingProto package_verifier_timeout = 93;
    optional SettingProto package_verifier_default_response = 94;
    optional SettingProto package_verifier_setting_visible = 95;
    optional SettingProto package_verifier_include_adb = 96;
    optional SettingProto fstrim_mandatory_interval = 97;
    optional SettingProto pdp_watchdog_poll_interval_ms = 98;
    optional SettingProto pdp_watchdog_long_poll_interval_ms = 99;
    optional SettingProto pdp_watchdog_error_poll_interval_ms = 100;
    optional SettingProto pdp_watchdog_trigger_packet_count = 101;
    optional SettingProto pdp_watchdog_error_poll_count = 102;
    optional SettingProto pdp_watchdog_max_pdp_reset_fail_count = 103;
    optional SettingProto setup_prepaid_data_service_url = 105;
    optional SettingProto setup_prepaid_detection_target_url = 106;
    optional SettingProto setup_prepaid_detection_redir_host = 107;
    optional SettingProto sms_outgoing_check_interval_ms = 108;
    optional SettingProto sms_outgoing_check_max_count = 109;
    optional SettingProto sms_short_code_confirmation = 110;
    optional SettingProto sms_short_code_rule = 111;
    optional SettingProto tcp_default_init_rwnd = 112;
    optional SettingProto tether_supported = 113;
    optional SettingProto tether_dun_required = 114;
    optional SettingProto tether_dun_apn = 115;
    optional SettingProto tether_offload_disabled = 301;
    optional SettingProto carrier_app_whitelist = 116;
    optional SettingProto usb_mass_storage_enabled = 117;
    optional SettingProto use_google_mail = 118;
    optional SettingProto webview_data_reduction_proxy_key = 119;
    optional SettingProto webview_fallback_logic_enabled = 120;
    optional SettingProto webview_provider = 121;
    optional SettingProto webview_multiprocess = 122;
    optional SettingProto network_switch_notification_daily_limit = 123;
    optional SettingProto network_switch_notification_rate_limit_millis = 124;
    optional SettingProto network_avoid_bad_wifi = 125;
    optional SettingProto network_metered_multipath_preference = 302;
    optional SettingProto network_watchlist_last_report_time = 303;
    optional SettingProto wifi_badging_thresholds = 304;
    optional SettingProto wifi_display_on = 126;
    optional SettingProto wifi_display_certification_on = 127;
    optional SettingProto wifi_display_wps_config = 128;
    optional SettingProto wifi_networks_available_notification_on = 129;
    optional SettingProto wimax_networks_available_notification_on = 130;
    optional SettingProto wifi_networks_available_repeat_delay = 131;
    optional SettingProto wifi_country_code = 132;
    optional SettingProto wifi_framework_scan_interval_ms = 133;
    optional SettingProto wifi_idle_ms = 134;
    optional SettingProto wifi_num_open_networks_kept = 135;
    optional SettingProto wifi_on = 136;
    optional SettingProto wifi_scan_always_available = 137;
    optional SettingProto wifi_wakeup_enabled = 138;
    optional SettingProto wifi_wakeup_available = 305;
    optional SettingProto network_scoring_ui_enabled = 306;
    optional SettingProto speed_label_cache_eviction_age_millis = 307;
    optional SettingProto recommended_network_evaluator_cache_expiry_ms = 308;
    optional SettingProto network_recommendations_enabled = 139;
    optional SettingProto network_recommendations_package = 286;
    optional SettingProto use_open_wifi_package = 309;
    optional SettingProto network_recommendation_request_timeout_ms = 310;
    optional SettingProto ble_scan_always_available = 140;
    optional SettingProto wifi_saved_state = 141;
    optional SettingProto wifi_supplicant_scan_interval_ms = 142;
    optional SettingProto wifi_enhanced_auto_join = 143;
    optional SettingProto wifi_network_show_rssi = 144;
    optional SettingProto wifi_scan_interval_when_p2p_connected_ms = 145;
    optional SettingProto wifi_watchdog_on = 146;
    optional SettingProto wifi_watchdog_poor_network_test_enabled = 147;
    optional SettingProto wifi_suspend_optimizations_enabled = 148;
    optional SettingProto wifi_verbose_logging_enabled = 149;
    optional SettingProto wifi_max_dhcp_retry_count = 150;
    optional SettingProto wifi_mobile_data_transition_wakelock_timeout_ms = 151;
    optional SettingProto wifi_device_owner_configs_lockdown = 152;
    optional SettingProto wifi_frequency_band = 153;
    optional SettingProto wifi_p2p_device_name = 154;
    optional SettingProto wifi_reenable_delay_ms = 155;
    optional SettingProto wifi_ephemeral_out_of_range_timeout_ms = 156;
    optional SettingProto data_stall_alarm_non_aggressive_delay_in_ms = 157;
    optional SettingProto data_stall_alarm_aggressive_delay_in_ms = 158;
    optional SettingProto provisioning_apn_alarm_delay_in_ms = 159;
    optional SettingProto gprs_register_check_period_ms = 160;
    optional SettingProto wtf_is_fatal = 161;
    optional SettingProto mode_ringer = 162;
    optional SettingProto overlay_display_devices = 163;
    optional SettingProto battery_discharge_duration_threshold = 164;
    optional SettingProto battery_discharge_threshold = 165;
    optional SettingProto send_action_app_error = 166;
    optional SettingProto dropbox_age_seconds = 167;
    optional SettingProto dropbox_max_files = 168;
    optional SettingProto dropbox_quota_kb = 169;
    optional SettingProto dropbox_quota_percent = 170;
    optional SettingProto dropbox_reserve_percent = 171;
    optional SettingProto dropbox_tag_prefix = 172;
    optional SettingProto error_logcat_prefix = 173;
    optional SettingProto sys_free_storage_log_interval = 174;
    optional SettingProto disk_free_change_reporting_threshold = 175;
    optional SettingProto sys_storage_threshold_percentage = 176;
    optional SettingProto sys_storage_threshold_max_bytes = 177;
    optional SettingProto sys_storage_full_threshold_bytes = 178;
    optional SettingProto sys_storage_cache_percentage = 311;
    optional SettingProto sys_storage_cache_max_bytes = 312;
    optional SettingProto sync_max_retry_delay_in_seconds = 179;
    optional SettingProto connectivity_change_delay = 180;
    optional SettingProto connectivity_sampling_interval_in_seconds = 181;
    optional SettingProto pac_change_delay = 182;
    optional SettingProto captive_portal_mode = 183;
    optional SettingProto captive_portal_detection_enabled = 313;
    optional SettingProto captive_portal_server = 184;
    optional SettingProto captive_portal_https_url = 185;
    optional SettingProto captive_portal_http_url = 186;
    optional SettingProto captive_portal_fallback_url = 187;
    optional SettingProto captive_portal_other_fallback_urls = 314;
    optional SettingProto captive_portal_use_https = 188;
    optional SettingProto captive_portal_user_agent = 189;
    optional SettingProto nsd_on = 190;
    optional SettingProto set_install_location = 191;
    optional SettingProto default_install_location = 192;
    optional SettingProto inet_condition_debounce_up_delay = 193;
    optional SettingProto inet_condition_debounce_down_delay = 194;
    optional SettingProto read_external_storage_enforced_default = 195;
    optional SettingProto http_proxy = 196;
    optional SettingProto global_http_proxy_host = 197;
    optional SettingProto global_http_proxy_port = 198;
    optional SettingProto global_http_proxy_exclusion_list = 199;
    optional SettingProto global_http_proxy_pac = 200;
    optional SettingProto set_global_http_proxy = 201;
    optional SettingProto default_dns_server = 202;
    // The requested Private DNS mode and an accompanying specifier.
    optional SettingProto private_dns_mode = 315;
    optional SettingProto private_dns_specifier = 316;
    optional SettingProto bluetooth_headset_priority_prefix = 203;
    optional SettingProto bluetooth_a2dp_sink_priority_prefix = 204;
    optional SettingProto bluetooth_a2dp_src_priority_prefix = 205;
    optional SettingProto bluetooth_a2dp_supports_optional_codecs_prefix = 287;
    optional SettingProto bluetooth_a2dp_optional_codecs_enabled_prefix = 288;
    optional SettingProto bluetooth_input_device_priority_prefix = 206;
    optional SettingProto bluetooth_map_priority_prefix = 207;
    optional SettingProto bluetooth_map_client_priority_prefix = 208;
    optional SettingProto bluetooth_pbap_client_priority_prefix = 209;
    optional SettingProto bluetooth_sap_priority_prefix = 210;
    optional SettingProto bluetooth_pan_priority_prefix = 211;
    optional SettingProto bluetooth_hearing_aid_priority_prefix = 345;
    optional SettingProto activity_manager_constants = 317;
    optional SettingProto device_idle_constants = 212;
    optional SettingProto device_idle_constants_watch = 213;
    optional SettingProto battery_saver_constants = 318;
    optional SettingProto anomaly_detection_constants = 319;
    optional SettingProto always_on_display_constants = 320;
    optional SettingProto app_idle_constants = 214;
    optional SettingProto power_manager_constants = 321;
    optional SettingProto alarm_manager_constants = 215;
    optional SettingProto job_scheduler_constants = 216;
    optional SettingProto shortcut_manager_constants = 217;
    optional SettingProto device_policy_constants = 322;
    optional SettingProto text_classifier_constants = 323;
    optional SettingProto window_animation_scale = 218;
    optional SettingProto transition_animation_scale = 219;
    optional SettingProto animator_duration_scale = 220;
    optional SettingProto fancy_ime_animations = 221;
    optional SettingProto compatibility_mode = 222;
    optional SettingProto emergency_tone = 223;
    optional SettingProto call_auto_retry = 224;
    optional SettingProto emergency_affordance_needed = 225;
    optional SettingProto preferred_network_mode = 226;
    optional SettingProto debug_app = 227;
    optional SettingProto wait_for_debugger = 228;
    optional SettingProto enable_gpu_debug_layers = 342;
    optional SettingProto gpu_debug_app = 343;
    optional SettingProto gpu_debug_layers = 344;
    optional SettingProto low_power_mode = 229;
    optional SettingProto low_power_mode_trigger_level = 230;
    optional SettingProto always_finish_activities = 231;
    optional SettingProto dock_audio_media_enabled = 232;
    optional SettingProto encoded_surround_output = 233;
    optional SettingProto audio_safe_volume_state = 234;
    optional SettingProto tzinfo_update_content_url = 235;
    optional SettingProto tzinfo_update_metadata_url = 236;
    optional SettingProto selinux_update_content_url = 237;
    optional SettingProto selinux_update_metadata_url = 238;
    optional SettingProto sms_short_codes_update_content_url = 239;
    optional SettingProto sms_short_codes_update_metadata_url = 240;
    optional SettingProto apn_db_update_content_url = 241;
    optional SettingProto apn_db_update_metadata_url = 242;
    optional SettingProto cert_pin_update_content_url = 243;
    optional SettingProto cert_pin_update_metadata_url = 244;
    optional SettingProto intent_firewall_update_content_url = 245;
    optional SettingProto intent_firewall_update_metadata_url = 246;
    optional SettingProto lang_id_update_content_url = 324;
    optional SettingProto lang_id_update_metadata_url = 325;
    optional SettingProto smart_selection_update_content_url = 326;
    optional SettingProto smart_selection_update_metadata_url = 327;
    optional SettingProto selinux_status = 247;
    optional SettingProto development_force_rtl = 248;
    optional SettingProto low_battery_sound_timeout = 249;
    optional SettingProto wifi_bounce_delay_override_ms = 250;
    optional SettingProto policy_control = 251;
    optional SettingProto zen_mode = 252;
    optional SettingProto zen_mode_ringer_level = 253;
    optional SettingProto zen_mode_config_etag = 254;
    optional SettingProto heads_up_notifications_enabled = 255;
    optional SettingProto device_name = 256;
    optional SettingProto network_scoring_provisioned = 257;
    optional SettingProto require_password_to_decrypt = 258;
    optional SettingProto enhanced_4g_mode_enabled = 259;
    optional SettingProto vt_ims_enabled = 260;
    optional SettingProto wfc_ims_enabled = 261;
    optional SettingProto wfc_ims_mode = 262;
    optional SettingProto wfc_ims_roaming_mode = 263;
    optional SettingProto wfc_ims_roaming_enabled = 264;
    optional SettingProto lte_service_forced = 265;
    optional SettingProto ephemeral_cookie_max_size_bytes = 266;
    optional SettingProto enable_ephemeral_feature = 267;
    optional SettingProto instant_app_dexopt_enabled = 328;
    optional SettingProto installed_instant_app_min_cache_period = 268;
    optional SettingProto installed_instant_app_max_cache_period = 289;
    optional SettingProto uninstalled_instant_app_min_cache_period = 290;
    optional SettingProto uninstalled_instant_app_max_cache_period = 291;
    optional SettingProto unused_static_shared_lib_min_cache_period = 292;
    optional SettingProto allow_user_switching_when_system_user_locked = 269;
    optional SettingProto boot_count = 270;
    optional SettingProto safe_boot_disallowed = 271;
    optional SettingProto device_demo_mode = 272;
    optional SettingProto network_access_timeout_ms = 329;
    optional SettingProto database_downgrade_reason = 274;
    optional SettingProto database_creation_buildid = 330;
    optional SettingProto contacts_database_wal_enabled = 275;
    optional SettingProto location_settings_link_to_permissions_enabled = 331;
    reserved 332; // Removed backup_refactored_service_disabled
    optional SettingProto euicc_factory_reset_timeout_millis = 333;
    optional SettingProto storage_settings_clobber_threshold = 334;
    optional SettingProto multi_sim_voice_call_subscription = 276;
    optional SettingProto multi_sim_voice_prompt = 277;
    optional SettingProto multi_sim_data_call_subscription = 278;
    optional SettingProto multi_sim_sms_subscription = 279;
    optional SettingProto multi_sim_sms_prompt = 280;
    optional SettingProto new_contact_aggregator = 281;
    optional SettingProto contact_metadata_sync_enabled = 282;
    optional SettingProto enable_cellular_on_boot = 283;
    optional SettingProto max_notification_enqueue_rate = 284;
    optional SettingProto show_notification_channel_warnings = 335;
    optional SettingProto cell_on = 285;
    optional SettingProto show_temperature_warning = 336;
    optional SettingProto warning_temperature = 337;
    optional SettingProto enable_diskstats_logging = 338;
    optional SettingProto enable_cache_quota_calculation = 339;
    optional SettingProto enable_deletion_helper_no_threshold_toggle = 340;
    optional SettingProto notification_snooze_options = 341;
    optional SettingProto enable_gnss_raw_meas_full_tracking = 346;
    optional SettingProto zram_enabled = 347;
    optional SettingProto enable_smart_replies_in_notifications = 348;
    optional SettingProto show_first_crash_dialog = 349;
    optional SettingProto wifi_connected_mac_randomization_enabled = 350;
    optional SettingProto show_restart_in_crash_dialog = 351;
    optional SettingProto show_mute_in_crash_dialog = 352;
    optional SettingProto chained_battery_attribution_enabled = 353;

    // Next tag = 354;
}

message SecureSettingsProto {
    repeated SettingsOperationProto historical_operations = 1;

    optional SettingProto android_id = 2;
    optional SettingProto default_input_method = 3;
    optional SettingProto selected_input_method_subtype = 4;
    optional SettingProto input_methods_subtype_history = 5;
    optional SettingProto input_method_selector_visibility = 6;
    optional SettingProto voice_interaction_service = 7;
    optional SettingProto autofill_service = 8;
    optional SettingProto bluetooth_hci_log = 9;
    optional SettingProto user_setup_complete = 10;
    // Whether the current user has been set up via setup wizard (0 = false,
    // 1 = true). This value differs from USER_SETUP_COMPLETE in that it can be
    // reset back to 0 in case SetupWizard has been re-enabled on TV devices.
    optional SettingProto tv_user_setup_complete = 170;
    optional SettingProto completed_category_prefix = 11;
    optional SettingProto enabled_input_methods = 12;
    optional SettingProto disabled_system_input_methods = 13;
    optional SettingProto show_ime_with_hard_keyboard = 14;
    optional SettingProto always_on_vpn_app = 15;
    optional SettingProto always_on_vpn_lockdown = 16;
    optional SettingProto install_non_market_apps = 17;
    optional SettingProto unknown_sources_default_reversed = 171;
    optional SettingProto location_mode = 18;
    optional SettingProto location_previous_mode = 19;
    optional SettingProto lock_to_app_exit_locked = 20;
    optional SettingProto lock_screen_lock_after_timeout = 21;
    optional SettingProto lock_screen_allow_private_notifications = 172;
    optional SettingProto lock_screen_allow_remote_input = 22;
    optional SettingProto show_note_about_notification_hiding = 23;
    optional SettingProto trust_agents_initialized = 24;
    optional SettingProto parental_control_enabled = 25;
    optional SettingProto parental_control_last_update = 26;
    optional SettingProto parental_control_redirect_url = 27;
    optional SettingProto settings_classname = 28;
    optional SettingProto accessibility_enabled = 29;
    optional SettingProto accessibility_shortcut_enabled = 173;
    optional SettingProto accessibility_shortcut_on_lock_screen = 174;
    optional SettingProto accessibility_shortcut_dialog_shown = 175;
    optional SettingProto accessibility_shortcut_target_service = 176;
    optional SettingProto accessibility_button_target_component = 177;
    optional SettingProto touch_exploration_enabled = 30;
    optional SettingProto enabled_accessibility_services = 31;
    optional SettingProto touch_exploration_granted_accessibility_services = 32;
    optional SettingProto accessibility_speak_password = 33;
    optional SettingProto accessibility_high_text_contrast_enabled = 34;
    optional SettingProto accessibility_script_injection = 35;
    optional SettingProto accessibility_screen_reader_url = 36;
    optional SettingProto accessibility_web_content_key_bindings = 37;
    optional SettingProto accessibility_display_magnification_enabled = 38;
    optional SettingProto accessibility_display_magnification_navbar_enabled = 178;
    optional SettingProto accessibility_display_magnification_scale = 39;
    optional SettingProto accessibility_display_magnification_auto_update = 179;
    optional SettingProto accessibility_soft_keyboard_mode = 40;
    optional SettingProto accessibility_captioning_enabled = 41;
    optional SettingProto accessibility_captioning_locale = 42;
    optional SettingProto accessibility_captioning_preset = 43;
    optional SettingProto accessibility_captioning_background_color = 44;
    optional SettingProto accessibility_captioning_foreground_color = 45;
    optional SettingProto accessibility_captioning_edge_type = 46;
    optional SettingProto accessibility_captioning_edge_color = 47;
    optional SettingProto accessibility_captioning_window_color = 48;
    optional SettingProto accessibility_captioning_typeface = 49;
    optional SettingProto accessibility_captioning_font_scale = 50;
    optional SettingProto accessibility_display_inversion_enabled = 51;
    optional SettingProto accessibility_display_daltonizer_enabled = 52;
    optional SettingProto accessibility_display_daltonizer = 53;
    optional SettingProto accessibility_autoclick_enabled = 54;
    optional SettingProto accessibility_autoclick_delay = 55;
    optional SettingProto accessibility_large_pointer_icon = 56;
    optional SettingProto long_press_timeout = 57;
    optional SettingProto multi_press_timeout = 58;
    optional SettingProto enabled_print_services = 59;
    optional SettingProto disabled_print_services = 60;
    optional SettingProto display_density_forced = 61;
    optional SettingProto tts_default_rate = 62;
    optional SettingProto tts_default_pitch = 63;
    optional SettingProto tts_default_synth = 64;
    optional SettingProto tts_default_locale = 65;
    optional SettingProto tts_enabled_plugins = 66;
    optional SettingProto connectivity_release_pending_intent_delay_ms = 67;
    optional SettingProto allowed_geolocation_origins = 68;
    optional SettingProto preferred_tty_mode = 69;
    optional SettingProto enhanced_voice_privacy_enabled = 70;
    optional SettingProto tty_mode_enabled = 71;
    optional SettingProto backup_enabled = 72;
    optional SettingProto backup_auto_restore = 73;
    optional SettingProto backup_provisioned = 74;
    optional SettingProto backup_transport = 75;
    optional SettingProto last_setup_shown = 76;
    optional SettingProto search_global_search_activity = 77;
    optional SettingProto search_num_promoted_sources = 78;
    optional SettingProto search_max_results_to_display = 79;
    optional SettingProto search_max_results_per_source = 80;
    optional SettingProto search_web_results_override_limit = 81;
    optional SettingProto search_promoted_source_deadline_millis = 82;
    optional SettingProto search_source_timeout_millis = 83;
    optional SettingProto search_prefill_millis = 84;
    optional SettingProto search_max_stat_age_millis = 85;
    optional SettingProto search_max_source_event_age_millis = 86;
    optional SettingProto search_min_impressions_for_source_ranking = 87;
    optional SettingProto search_min_clicks_for_source_ranking = 88;
    optional SettingProto search_max_shortcuts_returned = 89;
    optional SettingProto search_query_thread_core_pool_size = 90;
    optional SettingProto search_query_thread_max_pool_size = 91;
    optional SettingProto search_shortcut_refresh_core_pool_size = 92;
    optional SettingProto search_shortcut_refresh_max_pool_size = 93;
    optional SettingProto search_thread_keepalive_seconds = 94;
    optional SettingProto search_per_source_concurrent_query_limit = 95;
    optional SettingProto mount_play_notification_snd = 96;
    optional SettingProto mount_ums_autostart = 97;
    optional SettingProto mount_ums_prompt = 98;
    optional SettingProto mount_ums_notify_enabled = 99;
    optional SettingProto anr_show_background = 100;
    optional SettingProto voice_recognition_service = 101;
    optional SettingProto package_verifier_user_consent = 102;
    optional SettingProto selected_spell_checker = 103;
    optional SettingProto selected_spell_checker_subtype = 104;
    optional SettingProto spell_checker_enabled = 105;
    optional SettingProto incall_power_button_behavior = 106;
    optional SettingProto incall_back_button_behavior = 107;
    optional SettingProto wake_gesture_enabled = 108;
    optional SettingProto doze_enabled = 109;
    optional SettingProto doze_always_on = 110;
    optional SettingProto doze_pulse_on_pick_up = 111;
    optional SettingProto doze_pulse_on_long_press = 180;
    optional SettingProto doze_pulse_on_double_tap = 112;
    optional SettingProto ui_night_mode = 113;
    optional SettingProto screensaver_enabled = 114;
    optional SettingProto screensaver_components = 115;
    optional SettingProto screensaver_activate_on_dock = 116;
    optional SettingProto screensaver_activate_on_sleep = 117;
    optional SettingProto screensaver_default_component = 118;
    optional SettingProto nfc_payment_default_component = 119;
    optional SettingProto nfc_payment_foreground = 120;
    optional SettingProto sms_default_application = 121;
    optional SettingProto dialer_default_application = 122;
    optional SettingProto emergency_assistance_application = 123;
    optional SettingProto assist_structure_enabled = 124;
    optional SettingProto assist_screenshot_enabled = 125;
    optional SettingProto assist_disclosure_enabled = 126;
    optional SettingProto enabled_notification_assistant = 127;
    optional SettingProto enabled_notification_listeners = 128;
    optional SettingProto enabled_notification_policy_access_packages = 129;
    optional SettingProto sync_parent_sounds = 130;
    optional SettingProto immersive_mode_confirmations = 131;
    optional SettingProto print_service_search_uri = 132;
    optional SettingProto payment_service_search_uri = 133;
    optional SettingProto autofill_service_search_uri = 181;
    optional SettingProto skip_first_use_hints = 134;
    optional SettingProto unsafe_volume_music_active_ms = 135;
    optional SettingProto lock_screen_show_notifications = 136;
    optional SettingProto tv_input_hidden_inputs = 137;
    optional SettingProto tv_input_custom_labels = 138;
    optional SettingProto usb_audio_automatic_routing_disabled = 139;
    optional SettingProto sleep_timeout = 140;
    optional SettingProto double_tap_to_wake = 141;
    optional SettingProto assistant = 142;
    optional SettingProto camera_gesture_disabled = 143;
    optional SettingProto camera_double_tap_power_gesture_disabled = 144;
    optional SettingProto camera_double_twist_to_flip_enabled = 145;
    optional SettingProto camera_lift_trigger_enabled = 182;
    optional SettingProto assist_gesture_enabled = 183;
    optional SettingProto assist_gesture_sensitivity = 184;
    optional SettingProto assist_gesture_silence_alerts_enabled = 185;
    optional SettingProto assist_gesture_wake_enabled = 186;
    optional SettingProto assist_gesture_setup_complete = 187;
    optional SettingProto night_display_activated = 146;
    optional SettingProto night_display_auto_mode = 147;
    optional SettingProto night_display_color_temperature = 188;
    optional SettingProto night_display_custom_start_time = 148;
    optional SettingProto night_display_custom_end_time = 149;
    optional SettingProto night_display_last_activated_time = 189;
    optional SettingProto brightness_use_twilight = 150;
    optional SettingProto enabled_vr_listeners = 151;
    optional SettingProto vr_display_mode = 152;
    optional SettingProto carrier_apps_handled = 153;
    optional SettingProto managed_profile_contact_remote_search = 154;
    optional SettingProto automatic_storage_manager_enabled = 155;
    optional SettingProto automatic_storage_manager_days_to_retain = 156;
    optional SettingProto automatic_storage_manager_bytes_cleared = 157;
    optional SettingProto automatic_storage_manager_last_run = 158;
    optional SettingProto automatic_storage_manager_turned_off_by_policy = 190;
    optional SettingProto system_navigation_keys_enabled = 159;
    optional SettingProto downloads_backup_enabled = 160;
    optional SettingProto downloads_backup_allow_metered = 161;
    optional SettingProto downloads_backup_charging_only = 162;
    optional SettingProto automatic_storage_manager_downloads_days_to_retain = 163;
    optional SettingProto qs_tiles = 164;
    reserved 165; // Removed demo_user_setup_complete
    optional SettingProto instant_apps_enabled = 166;
    optional SettingProto device_paired = 167;
    optional SettingProto package_verifier_state = 191;
    optional SettingProto cmas_additional_broadcast_pkg = 192;
    optional SettingProto notification_badging = 168;
    optional SettingProto qs_auto_added_tiles = 193;
    optional SettingProto lockdown_in_power_menu = 194;
    optional SettingProto backup_manager_constants = 169;
    optional SettingProto show_first_crash_dialog_dev_option = 195;
    optional SettingProto bluetooth_on_while_driving = 196;

    // Next tag = 197
}

message SystemSettingsProto {
    repeated SettingsOperationProto historical_operations = 1;

    optional SettingProto end_button_behavior = 2;
    optional SettingProto advanced_settings = 3;
    optional SettingProto bluetooth_discoverability = 4;
    optional SettingProto bluetooth_discoverability_timeout = 5;
    optional SettingProto font_scale = 6;
    optional SettingProto system_locales = 7;
    optional SettingProto display_color_mode = 67;
    optional SettingProto screen_off_timeout = 8;
    optional SettingProto screen_brightness = 9;
    optional SettingProto screen_brightness_for_vr = 10;
    optional SettingProto screen_brightness_mode = 11;
    optional SettingProto screen_auto_brightness_adj = 12;
    optional SettingProto mode_ringer_streams_affected = 13;
    optional SettingProto mute_streams_affected = 14;
    optional SettingProto vibrate_on = 15;
    optional SettingProto vibrate_input_devices = 16;
    optional SettingProto volume_ring = 17;
    optional SettingProto volume_system = 18;
    optional SettingProto volume_voice = 19;
    optional SettingProto volume_music = 20;
    optional SettingProto volume_alarm = 21;
    optional SettingProto volume_notification = 22;
    optional SettingProto volume_bluetooth_sco = 23;
    optional SettingProto volume_accessibility = 68;
    optional SettingProto volume_master = 24;
    optional SettingProto master_mono = 25;
    // Whether silent mode should allow vibration feedback. This is used
    // internally in AudioService and the Sound settings activity to coordinate
    // decoupling of vibrate and silent modes. This setting will likely be
    // removed in a future release with support for audio/vibe feedback
    // profiles.
    // Not used anymore. On devices with vibrator, the user explicitly selects
    // silent or vibrate mode. Kept for use by legacy database upgrade code in
    // DatabaseHelper.
    optional SettingProto vibrate_in_silent = 26;
    optional SettingProto append_for_last_audible = 27;
    optional SettingProto ringtone = 28;
    optional SettingProto ringtone_cache = 29;
    optional SettingProto notification_sound = 30;
    optional SettingProto notification_sound_cache = 31;
    optional SettingProto alarm_alert = 32;
    optional SettingProto alarm_alert_cache = 33;
    optional SettingProto media_button_receiver = 34;
    optional SettingProto text_auto_replace = 35;
    optional SettingProto text_auto_caps = 36;
    optional SettingProto text_auto_punctuate = 37;
    optional SettingProto text_show_password = 38;
    optional SettingProto show_gtalk_service_status = 39;
    optional SettingProto time_12_24 = 40;
    optional SettingProto date_format = 41;
    optional SettingProto setup_wizard_has_run = 42;
    optional SettingProto accelerometer_rotation = 43;
    optional SettingProto user_rotation = 44;
    optional SettingProto hide_rotation_lock_toggle_for_accessibility = 45;
    optional SettingProto vibrate_when_ringing = 46;
    optional SettingProto dtmf_tone_when_dialing = 47;
    optional SettingProto dtmf_tone_type_when_dialing = 48;
    optional SettingProto hearing_aid = 49;
    optional SettingProto tty_mode = 50;
    optional SettingProto sound_effects_enabled = 51;
    optional SettingProto haptic_feedback_enabled = 52;
    optional SettingProto notification_light_pulse = 53;
    optional SettingProto pointer_location = 54;
    optional SettingProto show_touches = 55;
    // Log raw orientation data from {@link
    // com.android.server.policy.WindowOrientationListener} for use with the
    // orientationplot.py tool.
    // 0 = no, 1 = yes
    optional SettingProto window_orientation_listener_log = 56;
    optional SettingProto lockscreen_sounds_enabled = 57;
    optional SettingProto lockscreen_disabled = 58;
    optional SettingProto sip_receive_calls = 59;
    optional SettingProto sip_call_options = 60;
    optional SettingProto sip_always = 61;
    optional SettingProto sip_address_only = 62;
    optional SettingProto pointer_speed = 63;
    optional SettingProto lock_to_app_enabled = 64;
    optional SettingProto egg_mode = 65;
    optional SettingProto show_battery_percent = 69;
    optional SettingProto when_to_make_wifi_calls = 66;

    // Next tag = 70;
}

message SettingProto {
    // ID of the setting
    optional string id = 1;

    // Name of the setting
    optional string name = 2;

    // Package name of the setting
    optional string pkg = 3;

    // Value of this setting
    optional string value = 4;

    // Default value of this setting
    optional string default_value = 5;

    // Whether the default is set by the system
    optional bool default_from_system = 6;
}

message SettingsProto {
    // Enum values gotten from Settings.java
    enum ScreenBrightnessMode {
        SCREEN_BRIGHTNESS_MODE_MANUAL = 0;
        SCREEN_BRIGHTNESS_MODE_AUTOMATIC = 1;
    }
}

message SettingsOperationProto {
    // When the operation happened
    optional int64 timestamp = 1;

    // Type of the operation
    optional string operation = 2;

    // Name of the setting that was affected (optional)
    optional string setting = 3;
}
