<?xml version="1.0" encoding="UTF-8"?>

<!--
This file contains the strings for ash.
-->

<grit base_dir="." latest_public_release="0" current_release="1"
      output_all_resource_defines="false" source_lang_id="en" enc_check="möl">
  <outputs>
    <output filename="grit/ash_strings.h" type="rc_header">
      <emit emit_type='prepend'></emit>
    </output>
    <output filename="ash_strings_am.pak" type="data_package" lang="am" />
    <output filename="ash_strings_ar.pak" type="data_package" lang="ar" />
    <output filename="ash_strings_bg.pak" type="data_package" lang="bg" />
    <output filename="ash_strings_bn.pak" type="data_package" lang="bn" />
    <output filename="ash_strings_ca.pak" type="data_package" lang="ca" />
    <output filename="ash_strings_cs.pak" type="data_package" lang="cs" />
    <output filename="ash_strings_da.pak" type="data_package" lang="da" />
    <output filename="ash_strings_de.pak" type="data_package" lang="de" />
    <output filename="ash_strings_el.pak" type="data_package" lang="el" />
    <output filename="ash_strings_en-GB.pak" type="data_package" lang="en-GB" />
    <output filename="ash_strings_en-US.pak" type="data_package" lang="en" />
    <output filename="ash_strings_es.pak" type="data_package" lang="es" />
    <output filename="ash_strings_es-419.pak" type="data_package" lang="es-419" />
    <output filename="ash_strings_et.pak" type="data_package" lang="et" />
    <output filename="ash_strings_fa.pak" type="data_package" lang="fa" />
    <output filename="ash_strings_fake-bidi.pak" type="data_package" lang="fake-bidi" />
    <output filename="ash_strings_fi.pak" type="data_package" lang="fi" />
    <output filename="ash_strings_fil.pak" type="data_package" lang="fil" />
    <output filename="ash_strings_fr.pak" type="data_package" lang="fr" />
    <output filename="ash_strings_gu.pak" type="data_package" lang="gu" />
    <output filename="ash_strings_he.pak" type="data_package" lang="he" />
    <output filename="ash_strings_hi.pak" type="data_package" lang="hi" />
    <output filename="ash_strings_hr.pak" type="data_package" lang="hr" />
    <output filename="ash_strings_hu.pak" type="data_package" lang="hu" />
    <output filename="ash_strings_id.pak" type="data_package" lang="id" />
    <output filename="ash_strings_it.pak" type="data_package" lang="it" />
    <output filename="ash_strings_ja.pak" type="data_package" lang="ja" />
    <output filename="ash_strings_kn.pak" type="data_package" lang="kn" />
    <output filename="ash_strings_ko.pak" type="data_package" lang="ko" />
    <output filename="ash_strings_lt.pak" type="data_package" lang="lt" />
    <output filename="ash_strings_lv.pak" type="data_package" lang="lv" />
    <output filename="ash_strings_ml.pak" type="data_package" lang="ml" />
    <output filename="ash_strings_mr.pak" type="data_package" lang="mr" />
    <output filename="ash_strings_ms.pak" type="data_package" lang="ms" />
    <output filename="ash_strings_nl.pak" type="data_package" lang="nl" />
    <!-- The translation console uses 'no' for Norwegian Bokmål. It should
         be 'nb'. -->
    <output filename="ash_strings_nb.pak" type="data_package" lang="no" />
    <output filename="ash_strings_pl.pak" type="data_package" lang="pl" />
    <output filename="ash_strings_pt-BR.pak" type="data_package" lang="pt-BR" />
    <output filename="ash_strings_pt-PT.pak" type="data_package" lang="pt-PT" />
    <output filename="ash_strings_ro.pak" type="data_package" lang="ro" />
    <output filename="ash_strings_ru.pak" type="data_package" lang="ru" />
    <output filename="ash_strings_sk.pak" type="data_package" lang="sk" />
    <output filename="ash_strings_sl.pak" type="data_package" lang="sl" />
    <output filename="ash_strings_sr.pak" type="data_package" lang="sr" />
    <output filename="ash_strings_sv.pak" type="data_package" lang="sv" />
    <output filename="ash_strings_sw.pak" type="data_package" lang="sw" />
    <output filename="ash_strings_ta.pak" type="data_package" lang="ta" />
    <output filename="ash_strings_te.pak" type="data_package" lang="te" />
    <output filename="ash_strings_th.pak" type="data_package" lang="th" />
    <output filename="ash_strings_tr.pak" type="data_package" lang="tr" />
    <output filename="ash_strings_uk.pak" type="data_package" lang="uk" />
    <output filename="ash_strings_vi.pak" type="data_package" lang="vi" />
    <output filename="ash_strings_zh-CN.pak" type="data_package" lang="zh-CN" />
    <output filename="ash_strings_zh-TW.pak" type="data_package" lang="zh-TW" />
  </outputs>
  <translations>
    <file path="strings/ash_strings_am.xtb" lang="am" />
    <file path="strings/ash_strings_ar.xtb" lang="ar" />
    <file path="strings/ash_strings_bg.xtb" lang="bg" />
    <file path="strings/ash_strings_bn.xtb" lang="bn" />
    <file path="strings/ash_strings_ca.xtb" lang="ca" />
    <file path="strings/ash_strings_cs.xtb" lang="cs" />
    <file path="strings/ash_strings_da.xtb" lang="da" />
    <file path="strings/ash_strings_de.xtb" lang="de" />
    <file path="strings/ash_strings_el.xtb" lang="el" />
    <file path="strings/ash_strings_en-GB.xtb" lang="en-GB" />
    <file path="strings/ash_strings_es.xtb" lang="es" />
    <file path="strings/ash_strings_es-419.xtb" lang="es-419" />
    <file path="strings/ash_strings_et.xtb" lang="et" />
    <file path="strings/ash_strings_fa.xtb" lang="fa" />
    <file path="strings/ash_strings_fi.xtb" lang="fi" />
    <file path="strings/ash_strings_fil.xtb" lang="fil" />
    <file path="strings/ash_strings_fr.xtb" lang="fr" />
    <file path="strings/ash_strings_gu.xtb" lang="gu" />
    <file path="strings/ash_strings_hi.xtb" lang="hi" />
    <file path="strings/ash_strings_hr.xtb" lang="hr" />
    <file path="strings/ash_strings_hu.xtb" lang="hu" />
    <file path="strings/ash_strings_id.xtb" lang="id" />
    <file path="strings/ash_strings_it.xtb" lang="it" />
    <!-- The translation console uses 'iw' for Hebrew, but we use 'he'. -->
    <file path="strings/ash_strings_iw.xtb" lang="he" />
    <file path="strings/ash_strings_ja.xtb" lang="ja" />
    <file path="strings/ash_strings_kn.xtb" lang="kn" />
    <file path="strings/ash_strings_ko.xtb" lang="ko" />
    <file path="strings/ash_strings_lt.xtb" lang="lt" />
    <file path="strings/ash_strings_lv.xtb" lang="lv" />
    <file path="strings/ash_strings_ml.xtb" lang="ml" />
    <file path="strings/ash_strings_mr.xtb" lang="mr" />
    <file path="strings/ash_strings_ms.xtb" lang="ms" />
    <file path="strings/ash_strings_nl.xtb" lang="nl" />
    <file path="strings/ash_strings_no.xtb" lang="no" />
    <file path="strings/ash_strings_pl.xtb" lang="pl" />
    <file path="strings/ash_strings_pt-BR.xtb" lang="pt-BR" />
    <file path="strings/ash_strings_pt-PT.xtb" lang="pt-PT" />
    <file path="strings/ash_strings_ro.xtb" lang="ro" />
    <file path="strings/ash_strings_ru.xtb" lang="ru" />
    <file path="strings/ash_strings_sk.xtb" lang="sk" />
    <file path="strings/ash_strings_sl.xtb" lang="sl" />
    <file path="strings/ash_strings_sr.xtb" lang="sr" />
    <file path="strings/ash_strings_sv.xtb" lang="sv" />
    <file path="strings/ash_strings_sw.xtb" lang="sw" />
    <file path="strings/ash_strings_ta.xtb" lang="ta" />
    <file path="strings/ash_strings_te.xtb" lang="te" />
    <file path="strings/ash_strings_th.xtb" lang="th" />
    <file path="strings/ash_strings_tr.xtb" lang="tr" />
    <file path="strings/ash_strings_uk.xtb" lang="uk" />
    <file path="strings/ash_strings_vi.xtb" lang="vi" />
    <file path="strings/ash_strings_zh-CN.xtb" lang="zh-CN" />
    <file path="strings/ash_strings_zh-TW.xtb" lang="zh-TW" />
  </translations>
  <release seq="1" allow_pseudo="false">
    <messages fallback_to_english="true">
      <!-- TODO add all of your "string table" messages here.  Remember to
      change nontranslateable parts of the messages into placeholders (using the
      <ph> element).  You can also use the 'grit add' tool to help you identify
      nontranslateable parts and create placeholders for them. -->

      <!-- TODO(zork): Only include these in Aura builds -->
      <message name="IDS_ASH_SHELF_APP_LIST_LAUNCHER_TITLE" desc="The title used for the Ash Launcher in the Shelf (not mentioning 'Apps' since this is a general launcher).">
        Launcher
      </message>
      <message name="IDS_ASH_SHELF_APP_LIST_LAUNCHER_SYNCING_TITLE" desc="The title used for the Ash Launcher in the Shelf to indicate loading/syncinc apps.">
        Launcher (syncing apps...)
      </message>
      <message name="IDS_ASH_SHELF_OVERFLOW_NAME" desc="The title used for the Ash overflow button in the shelf">
        Overflow button
      </message>
      <message name="IDS_ASH_SHELF_CONTEXT_MENU_AUTO_HIDE" desc="Title of the menu item in the context menu for auto-hiding the shelf when the current window is not maximized">
        Autohide shelf
      </message>
      <message name="IDS_ASH_SHELF_CONTEXT_MENU_POSITION" desc="Title of the menu item in the context menu for aligning the shelf">
        Shelf position
      </message>
      <message name="IDS_ASH_SHELF_CONTEXT_MENU_ALIGN_BOTTOM" desc="Title of the menu item in the context menu for aligning the shelf to the bottom of the screen">
        Bottom
      </message>
      <message name="IDS_ASH_SHELF_CONTEXT_MENU_ALIGN_LEFT" desc="Title of the menu item in the context menu for aligning the shelf to the left of the screen">
        Left
      </message>
      <message name="IDS_ASH_SHELF_CONTEXT_MENU_ALIGN_RIGHT" desc="Title of the menu item in the context menu for aligning the shelf to the right of the screen">
        Right
      </message>
      <message name="IDS_ASH_SHELF_ACCESSIBLE_NAME" desc="The accessible name of the shelf.">
        Shelf
      </message>

      <message name="IDS_ASH_KEYBOARD_OVERLAY_TITLE" desc="The title of the keyboard overlay.">
        Keyboard overlay
      </message>

      <message name="IDS_ASH_LEARN_MORE" desc="Text of Learn more links.">
        Learn more
      </message>

      <!-- Status tray items -->
      <message name="IDS_ASH_STATUS_TRAY_ACCESSIBLE_DESCRIPTION" desc="The accessible description of the status tray and the information on it.">
        Status tray, time <ph name="time">$1<ex>9:50</ex></ph>, <ph name="battery">$2<ex>Battery is full.</ex></ph>
      </message>
      <message name="IDS_ASH_STATUS_TRAY_BRAILLE_DISPLAY_CONNECTED" desc="The message shown on a notification when a braille display is connected">
        Braille display connected.
      </message>
      <message name="IDS_ASH_STATUS_TRAY_SETTINGS" desc="The accessible text for a settings button.">
        Settings
      </message>
      <message name="IDS_ASH_STATUS_TRAY_SPOKEN_FEEDBACK_ENABLED" desc="The message shown on a notification when spoken feedback is enabled">
        Press Ctrl + Alt + Z to disable spoken feedback.
      </message>
      <message name="IDS_ASH_STATUS_TRAY_SPOKEN_FEEDBACK_ENABLED_TITLE" desc="The title message shown on a notification when spoken feedback is enabled">
        ChromeVox enabled
      </message>
      <message name="IDS_ASH_STATUS_TRAY_SPOKEN_FEEDBACK_BRAILLE_ENABLED_TITLE" desc="The message shown on a notification when both the spoken feedback and braille are enabled">
        Braille and ChromeVox are enabled
      </message>
      <message name="IDS_ASH_STATUS_TRAY_SIGN_OUT" desc="The label used for the button in the status tray to sign out of the system.">
        Sign out
      </message>
      <message name="IDS_ASH_STATUS_TRAY_SIGN_OUT_ALL" desc="The label used for the button in the status tray to sign out all users of the system.">
        Sign out all
      </message>
      <message name="IDS_ASH_STATUS_TRAY_GUEST_LABEL" desc="The label used in the system tray's user card to indicate that the current session is a guest session.">
        Guest
      </message>
      <message name="IDS_ASH_STATUS_TRAY_EXIT_GUEST" desc="The label used for the button in the status tray to terminate a guest session.">
        Exit guest
      </message>
      <message name="IDS_ASH_STATUS_TRAY_EXIT_PUBLIC" desc="The label used for the button in the status tray to terminate a public account session. If the label is long, indicate where it may be broken into two lines by inserting \n instead of a whitespace.">
        Exit session
      </message>
      <message name="IDS_ASH_STATUS_TRAY_PUBLIC_LABEL" desc="Text of the the ash system bubble's user card when the current session is a public account session.">
        <ph name="DISPLAY_NAME">$1<ex>Internet kiosk</ex></ph> is a public session managed by <ph name="DOMAIN">$2<ex>yourdomain.com</ex></ph>
      </message>
      <message name="IDS_ASH_STATUS_TRAY_LOCK" desc="The label used for the button in the status tray to lock the screen.">
        Lock
      </message>
      <message name="IDS_ASH_STATUS_TRAY_SIGN_IN_ANOTHER_ACCOUNT" desc="The string for the button which lets the user add another account to the current session.">
        Sign in another user...
      </message>
      <message name="IDS_ASH_STATUS_TRAY_MESSAGE_CANNOT_ADD_USER" desc="The error message when the user has reached the limit of multi profile users.">
        You can only have up to three accounts in multiple sign-in.
      </message>
      <message name="IDS_ASH_STATUS_TRAY_MESSAGE_NOT_ALLOWED_PRIMARY_USER" desc="The error message when the primary user forbids multiple signin because of not-allowed policy or because of usage policy-pushed certificates.">
        The administrator for this account has disallowed multiple sign-in.
      </message>
      <message name="IDS_ASH_STATUS_TRAY_MESSAGE_OUT_OF_USERS" desc="The error message when all the users are added into multi-profile session.">
        All available users have already been added to this session.
      </message>
      <message name="IDS_ASH_STATUS_TRAY_NIGHT_LIGHT" desc="The label used for the button in the status tray to toggle the Night Light feature (which controls the color temperature of the screen) on or off.">
        Night Light: <ph name="NIGHT_LIGHT_STATUS">$1<ex>On</ex></ph>
      </message>
      <message name="IDS_ASH_STATUS_TRAY_NIGHT_LIGHT_OFF_STATE" desc="The label for the Off state of the Night Light feature.">
        Off
      </message>
      <message name="IDS_ASH_STATUS_TRAY_NIGHT_LIGHT_ON_STATE" desc="The label for the On state of the Night Light feature.">
        On
      </message>
      <message name="IDS_ASH_STATUS_TRAY_CAST" desc="The label used as the header in the cast popup.">
        Cast screen
      </message>
      <message name="IDS_ASH_STATUS_TRAY_CAST_CAST_DESKTOP" desc="The label used in the tray popup to tell the user we are casting the desktop.">
        Casting screen to <ph name="RECEIVER_NAME">$1<ex>Living Room</ex></ph>
      </message>
      <message name="IDS_ASH_STATUS_TRAY_CAST_CAST_DESKTOP_ACCESSIBILITY_STOP" desc="Stop button accessibility label used in the tray popup to tell the user to stop a cast to the desktop.">
        Stop casting screen to <ph name="RECEIVER_NAME">$1<ex>Living Room</ex></ph>
      </message>
      <message name="IDS_ASH_STATUS_TRAY_CAST_CAST_TAB" desc="The title label used in the tray popup to tell the user we are casting a tab.">
        Casting <ph name="TAB_NAME">$1<ex>YouTube</ex></ph> to <ph name="RECEIVER_NAME">$2<ex>Living Room</ex></ph>
      </message>
      <message name="IDS_ASH_STATUS_TRAY_CAST_CAST_TAB_ACCESSIBILITY_STOP" desc="Stop button accessibility label used in the tray popup to tell the user to stop a tab cast.">
        Stop casting <ph name="TAB_NAME">$1<ex>YouTube</ex></ph> to <ph name="RECEIVER_NAME">$2<ex>Living Room</ex></ph>
      </message>
      <message name="IDS_ASH_STATUS_TRAY_CAST_CAST_UNKNOWN" desc="The label used when we have detected we are casting but do not know what we are casting or who we are casting to.">
        Casting to an unknown receiver
      </message>
      <message name="IDS_ASH_STATUS_TRAY_CAST_CAST_UNKNOWN_ACCESSIBILITY_STOP" desc="Stop button accessibility label used in the tray popup to tell the user to stop a cast, but we do not know what we are casting or who we are casting to.">
        Stop casting to an unknown receiver
      </message>
      <message name="IDS_ASH_STATUS_TRAY_CAST_DESKTOP" desc="The label used in the tray popup to notify that desktop may be cast.">
        Cast devices available
      </message>
      <message name="IDS_ASH_STATUS_TRAY_CAST_STOP" desc="The label used in the tray popup to stop casting.">
        Stop
      </message>

      <message name="IDS_ASH_STATUS_TRAY_BLUETOOTH" desc="The label used as the header in the bluetooth popup.">
        Bluetooth
      </message>
      <message name="IDS_ASH_STATUS_TRAY_BLUETOOTH_ENABLED" desc="The label used in the tray popup to notify that bluetooth is enabled.">
        Bluetooth enabled
      </message>
      <message name="IDS_ASH_STATUS_TRAY_BLUETOOTH_DISABLED" desc="The label used in the tray popup to notify that bluetooth is disabled.">
        Bluetooth disabled
      </message>
      <message name="IDS_ASH_STATUS_TRAY_BLUETOOTH_DISCOVERING" desc="The label used in the tray popup to show bluetooth is discovering devices.">
        Scanning for devices...
      </message>
      <message name="IDS_ASH_STATUS_TRAY_BLUETOOTH_PAIRED_DEVICES" desc="The sub-header label for paired devices in Bluetooth device list.">
        Paired devices
      </message>
      <message name="IDS_ASH_STATUS_TRAY_BLUETOOTH_UNPAIRED_DEVICES" desc="The sub-header label for unpaired devices in Bluetooth device list.">
        Unpaired devices
      </message>
      <message name="IDS_ASH_STATUS_TRAY_BLUETOOTH_SETTINGS" desc="The label used in the tray pop up to open Bluetooth setting page.">
        Bluetooth settings
      </message>

      <message name="IDS_ASH_STATUS_TRAY_UPDATE" desc="The label used in the tray popup to notify that the user should restart to get system updates.">
        Restart to update
      </message>

      <message name="IDS_ASH_STATUS_TRAY_UPDATE_FLASH" desc="The label used in the tray popup to notify that the user should restart to update Adobe Flash Player.">
        Restart to update Adobe Flash Player
      </message>

      <message name="IDS_ASH_STATUS_TRAY_RESTART_AND_POWERWASH_TO_UPDATE" desc="The label used in the tray popup to notify that the user should restart and powerwash the device to get system updates.">
        Restart and powerwash to update
      </message>

      <message name="IDS_ASH_STATUS_TRAY_UPDATE_OVER_CELLULAR_AVAILABLE" desc="The label used in the tray popup to notify that update is available but current connection is cellular.">
        Click to view update details
      </message>

      <message name="IDS_ASH_STATUS_TRAY_VOLUME" desc="The accessible text for the volume slider.">
        Volume
      </message>
      <message name="IDS_ASH_STATUS_TRAY_VOLUME_MUTE" desc="The accessible text for the volume mute button.">
        Mute
      </message>

      <message name="IDS_ASH_STATUS_TRAY_IME" desc="The label used as the header in the IME popup.">
        Input methods
      </message>
      <message name="IDS_ASH_STATUS_TRAY_IME_SETTINGS" desc="The label used for IME settings entry.">
        Customize languages and input...
      </message>
      <message name="IDS_ASH_STATUS_TRAY_IME_MANAGED" desc="Tooltip for the icon displayed when input methods are managed by enterprise policy">
        Input methods are configured by your administrator.
      </message>
      <message name="IDS_ASH_STATUS_TRAY_IME_EMOJI" desc="The label used for IME emoji entry.">
        Emoji palette
      </message>
      <message name="IDS_ASH_STATUS_TRAY_IME_HANDWRITING" desc="The label used for IME handwriting entry.">
        Handwriting input
      </message>
      <message name="IDS_ASH_STATUS_TRAY_IME_VOICE" desc="The label used for IME voice entry.">
        Voice input
      </message>

      <message name="IDS_ASH_STATUS_TRAY_LOCALE_CHANGE_MESSAGE" desc="The message used for locale change notifications in the system tray.">
        The language has changed from "<ph name="FROM_LOCALE">$1<ex>Italian</ex></ph>" to "<ph name="TO_LOCALE">$2<ex>English (United States)</ex></ph>" after syncing your settings.
      </message>
      <message name="IDS_ASH_STATUS_TRAY_LOCALE_REVERT_MESSAGE" desc="Link to revert a change.">
        Change back to "<ph name="FROM_LOCALE">$1<ex>Italian</ex></ph>" (requires restart)
      </message>

      <message name="IDS_ASH_STATUS_TRAY_ACCESSIBILITY" desc="The label used in the tray menu to show the accessibility option menu.">
        Accessibility
      </message>
      <message name="IDS_ASH_STATUS_TRAY_ACCESSIBILITY_TITLE" desc="The label used in the title of the accessibility option menu.">
        Accessibility
      </message>
      <message name="IDS_ASH_STATUS_TRAY_ACCESSIBILITY_SPOKEN_FEEDBACK" desc="The label used in the accessibility menu of the
    system tray to toggle on/off spoken feedback feature.">
        ChromeVox (spoken feedback)
      </message>
      <message name="IDS_ASH_STATUS_TRAY_ACCESSIBILITY_HIGH_CONTRAST_MODE" desc="The label used in the accessibility menu of the system tray to toggle on/off high contrast feature.">
        High contrast mode
      </message>
      <message name="IDS_ASH_STATUS_TRAY_ACCESSIBILITY_SCREEN_MAGNIFIER" desc="The label used in the accessibility menu of the system tray to toggle on/off magnifier feature.">
        Screen magnifier
      </message>
      <message name="IDS_ASH_STATUS_TRAY_ACCESSIBILITY_LARGE_CURSOR" desc="The label used in the accessibility menu of the system tray to toggle on/off large mouse cursor feature.">
        Large mouse cursor
      </message>
      <message name="IDS_ASH_STATUS_TRAY_ACCESSIBILITY_AUTOCLICK" desc="The label used in the accessibility menu of the system tray to toggle on/off automatic mouse clicks.">
        Automatic clicks
      </message>
      <message name="IDS_ASH_STATUS_TRAY_ACCESSIBILITY_VIRTUAL_KEYBOARD" desc="The label used in the accessibility menu of the system tray to toggle on/off the onscreen keyboard.">
        On-screen keyboard
      </message>
      <message name="IDS_ASH_STATUS_TRAY_ACCESSIBILITY_ADDITIONAL_SETTINGS" desc="The sub-header label for additional setting in accessibility menu of system tray.">
        Additional settings
      </message>
      <message name="IDS_ASH_STATUS_TRAY_ACCESSIBILITY_MONO_AUDIO" desc="The label used in the additional settings of accessibility menu of the system tray to toggle on/off mono audio.">
        Mono audio
      </message>
      <message name="IDS_ASH_STATUS_TRAY_ACCESSIBILITY_CARET_HIGHLIGHT" desc="The label used in the additional settings of accessibility menu of the system tray to toggle on/off caret highlight.">
        Highlight text caret
      </message>
      <message name="IDS_ASH_STATUS_TRAY_ACCESSIBILITY_HIGHLIGHT_MOUSE_CURSOR" desc="The label used in the additional settings of accessibility menu of the system tray to toggle on/off highlight mouse cursor.">
        Highlight mouse cursor
      </message>
      <message name="IDS_ASH_STATUS_TRAY_ACCESSIBILITY_HIGHLIGHT_KEYBOARD_FOCUS" desc="The label used in the additional settings of accessibility menu of the system tray to toggle on/off highlight keyboard focus.">
        Highlight object with keyboard focus
      </message>
      <message name="IDS_ASH_STATUS_TRAY_ACCESSIBILITY_STICKY_KEYS" desc="The label used in the additional settings of accessibility menu of the system tray to toggle on/off sticky keys.">
        Sticky keys
      </message>
      <message name="IDS_ASH_STATUS_TRAY_ACCESSIBILITY_TAP_DRAGGING" desc="The label used in the additional settings of accessibility menu of the system tray to toggle on/off tap dragging.">
        Tap dragging
      </message>
      <message name="IDS_ASH_STATUS_TRAY_ACCESSIBILITY_SETTINGS" desc="The label used in the accessibility menu of system tray to open accessibility setting page.">
        Accessibility settings
      </message>
      <message name="IDS_ASH_STATUS_TRAY_HELP" desc="The accessible text for the help button.">
        Help
      </message>
      <message name="IDS_ASH_STATUS_TRAY_DATE" desc="The date displayed on ash system bubble, Depending on launguage, please choose the best separator(eg ',') between abbreviated weekday and date">
        <ph name="short_weekday">$1<ex>Fri</ex></ph>, <ph name="date">$2<ex>Aug 31, 2012</ex></ph>
      </message>
      <message name="IDS_ASH_STATUS_TRAY_REBOOT" desc="The accessible text for the reboot button.">
        Restart
      </message>
      <message name="IDS_ASH_STATUS_TRAY_SHUTDOWN" desc="The accessible text for the shutdown button.">
        Shut down
      </message>

      <!-- Status tray enterprise management. -->
      <message name="IDS_ASH_ENTERPRISE_DEVICE_MANAGED_BY" desc="Text for notifications showing that this device is enterpise managed. Used when the organization's domain name is available.">
        This device is managed by <ph name="DOMAIN">$1<ex>acmecorp.com</ex></ph>.
      </message>
      <message name="IDS_ASH_ENTERPRISE_DEVICE_MANAGED" desc="Text for notifications showing that this device is enterprise managed. Used when the organization's domain name is not available (e.g. Active Directory).">
        This device is enterprise managed
      </message>

      <!-- Status tray supervised users. -->
      <message name="IDS_ASH_STATUS_TRAY_SUPERVISED_LABEL" desc="Label shown instead of email for supervised users">
         Supervised user
      </message>
      <message name="IDS_ASH_USER_IS_SUPERVISED_BY_NOTICE" desc="Text for notifications showing that this user is supervised">
        Usage and history of this user can be reviewed by the manager (<ph name="MANAGER_EMAIL">$1<ex>user@example.com</ex></ph>) on chrome.com.
      </message>
      <message name="IDS_ASH_CHILD_USER_IS_MANAGED_BY_ONE_PARENT_NOTICE" desc="Text for notifications showing that this child user is managed by parent's account.">
        This is an account for kids managed by <ph name="MANAGER_EMAIL">$1<ex>user@example.com</ex></ph>
      </message>
      <message name="IDS_ASH_CHILD_USER_IS_MANAGED_BY_TWO_PARENTS_NOTICE" desc="Text for notifications showing that this child user is managed by two parents' accounts.">
        This is an account for kids managed by <ph name="FIRST_PARENT_EMAIL">$1<ex>first@example.com</ex></ph> and <ph name="SECOND_PARENT_EMAIL">$2<ex>second@example.com</ex></ph>
      </message>

      <message name="IDS_ASH_STATUS_TRAY_PREVIOUS_MENU" desc="The accessible text for header entries for detailed versions of status tray items.">
        Previous menu
      </message>

      <message name="IDS_ASH_STYLUS_TOOLS_CAPTURE_REGION_ACTION" desc="Title of the capture region action in the stylus tools (a pop-up panel next to the status tray). This causes a partial screenshot to be taken (the user selects an area of the screen to take a screenshot of).">
        Capture region
      </message>
      <message name="IDS_ASH_STYLUS_TOOLS_CAPTURE_REGION_TOAST" desc="Message content on the toast that appears when the user activates the capture region action in the stylus tools.">
        Use the stylus to select a region
      </message>
      <message name="IDS_ASH_STYLUS_TOOLS_CAPTURE_SCREEN_ACTION" desc="Title of the capture screen action in the stylus tools (a pop-up panel next to the status tray). Clicking this button takes a screenshot of the entire screen.">
        Capture screen
      </message>
      <message name="IDS_ASH_STYLUS_TOOLS_CREATE_NOTE_ACTION" desc="Title of the capture screen action in the stylus tools (a pop-up panel next to the status tray). Clicking this opens up an application that the user can quickly jot a note down in.">
        Create note
      </message>
      <message name="IDS_ASH_STYLUS_TOOLS_LASER_POINTER_MODE" desc="Title of the laser pointer in the palette (a pop-up panel next to the status tray). Clicking this turns the mouse into a laser pointer. Additionally, the palette tray is closed.">
        Laser pointer
      </message>
      <message name="IDS_ASH_STYLUS_TOOLS_MAGNIFIER_MODE" desc="Title of the magnification mode in the stylus tools. Clicking this button opens up a magnifier. The magnifier remains active until the user turns it off by tapping the same button again.">
        Magnifying glass
      </message>
      <message name="IDS_ASH_STYLUS_TOOLS_METALAYER_MODE" desc="Title of the metalayer mode in the stylus tools. Clicking this button opens up the voice interaction overlay. The overlay remains active until the user completes the interaction.">
        Assistant
      </message>
      <message name="IDS_ASH_STYLUS_TOOLS_TITLE" desc="The title of the stylus tools dialog in the ash shelf.">
        Stylus tools
      </message>
      <message name="IDS_ASH_PALETTE_SETTINGS" desc="The label on the setting button used to open palette setting page.">
        Stylus settings
      </message>

      <message name="IDS_ASH_TOAST_DISMISS_BUTTON" desc="The text button shown in toasts to close the toast immediately without waiting timeout.">
        DISMISS
      </message>

      <message name="IDS_ASH_CONTROL_KEY" desc="Name of [Ctrl] key name. Shouldn't be translated in many languages actually. This name should be lower case.">
        ctrl
      </message>
      <message name="IDS_ASH_SHIFT_KEY" desc="Name of [Shift] key. Shouldn't be translated in many languages actually. This name should be lower case.">
        shift
      </message>
      <message name="IDS_ASH_ALT_KEY" desc="Name of [Alt] key name. Shouldn't be translated in many languages actually. This name should be lower case.">
        alt
      </message>
      <message name="IDS_ASH_SEARCH_KEY" desc="Name of [Search] key name. This name should be lower case.">
        search
      </message>
      <message name="IDS_ASH_ALTGR_KEY" desc="Name of [AltGr] key name. Shouldn't be translated in many languages actually. This name should be lower case.">
        altgr
      </message>
      <message name="IDS_ASH_MOD3_KEY" desc="Name of ISOLevel5 (mod3) key name. Shouldn't be translated in many languages actually. This name should be lower case.">
        mod3
      </message>

      <!-- Overview Mode -->
      <message name="IDS_ASH_OVERVIEW_BUTTON_ACCESSIBLE_NAME" desc="The accessible name for the Overview button in the system tray.">
        Toggle window overview
      </message>

      <!-- Device types -->
      <message name="IDS_ASH_CHROMEBASE" desc="The device name for a Chromebase (versus say Chromebox)">
        Chromebase
      </message>
      <message name="IDS_ASH_CHROMEBIT" desc="The device name for a Chromebit (versus say Chromebox)">
        Chromebit
      </message>
      <message name="IDS_ASH_CHROMEBOOK" desc="The device name for a Chromebook (versus say Chromebox)">
        Chromebook
      </message>
      <message name="IDS_ASH_CHROMEBOX" desc="The device name for a Chromebox (versus say Chromebook)">
        Chromebox
      </message>
      <message name="IDS_ASH_CHROMEDEVICE" desc="The device name for a generic Chrome device">
        Chrome device
      </message>

      <!-- Status tray charging strings. -->
      <message name="IDS_ASH_STATUS_TRAY_LOW_POWER_CHARGER_TITLE" desc="The title of a notification indicating that a low-current USB charger has been connected.">
        Low-power charger connected
      </message>
      <message name="IDS_ASH_STATUS_TRAY_LOW_POWER_CHARGER_MESSAGE_SHORT" desc="The message body of a notification indicating that a low-current USB charger has been connected, short version.">
        Your <ph name="DEVICE_TYPE">$1<ex>Chromebook</ex></ph> may not charge while it is turned on.
      </message>
      <message name="IDS_ASH_STATUS_TRAY_CHARGING_FROM_DUAL_ROLE_TITLE" desc="The message title of a notification indicating that the device is being charged by a connected dual-role USB Type-C device.">
        Charging from <ph name="POWER_SOURCE">$1<ex>USB-C device (left port)</ex></ph>
      </message>
      <message name="IDS_ASH_STATUS_TRAY_CHARGING_DUAL_ROLE_DEVICE_TITLE" desc="The message title of a notification indicating that the device is charging the connected USB Type-C device.">
        Charging <ph name="POWER_SOURCE">$1<ex>USB-C device (left port)</ex></ph>
      </message>
      <message name="IDS_ASH_STATUS_TRAY_CHARGING_DUAL_ROLE_DEVICES_TITLE" desc="The message title of a notification indicating that the device is charging multiple connected USB Type-C devices.">
        Charging connected USB-C devices
      </message>
      <message name="IDS_ASH_STATUS_TRAY_DUAL_ROLE_MESSAGE" desc="The message body of a notification, which indicates that the user can click the notification to see and change which device is being used as a power source.">
        Click for more options
      </message>
      <message name="IDS_ASH_POWER_SOURCE_PORT_LEFT" desc="The text identifying an external device, when that device is connected to the USB Type-C port on the left side of this device.">
        USB-C device (left port)
      </message>
      <message name="IDS_ASH_POWER_SOURCE_PORT_RIGHT" desc="The text identifying an external device, when that device is connected to the USB Type-C port on the right side of this device.">
        USB-C device (right port)
      </message>
      <message name="IDS_ASH_POWER_SOURCE_PORT_BACK" desc="The text identifying an external device, when that device is connected to the USB Type-C port on the back of this device.">
        USB-C device (rear port)
      </message>
      <message name="IDS_ASH_POWER_SOURCE_PORT_FRONT" desc="The text identifying an external device, when that device is connected to the USB Type-C port on the front of this device.">
        USB-C device (front port)
      </message>
      <message name="IDS_ASH_POWER_SOURCE_PORT_LEFT_FRONT" desc="The text identifying an external device, when that device is connected to a USB Type-C port on the left side of this device. In this case there are two ports on that side, so this text should refer to the front one on that side.">
        USB-C device (left side front port)
      </message>
      <message name="IDS_ASH_POWER_SOURCE_PORT_LEFT_BACK" desc="The text identifying an external device, when that device is connected to a USB Type-C port on the left side of this device. In this case there are two ports on that side, so this text should refer to the back one on that side.">
        USB-C device (left side back port)
      </message>
      <message name="IDS_ASH_POWER_SOURCE_PORT_RIGHT_FRONT" desc="The text identifying an external device, when that device is connected to a USB Type-C port on the right side of this device. In this case there are two ports on that side, so this text should refer to the front one on that side.">
        USB-C device (right side front port)
      </message>
      <message name="IDS_ASH_POWER_SOURCE_PORT_RIGHT_BACK" desc="The text identifying an external device, when that device is connected to a USB Type-C port on the right side of this device. In this case there are two ports on that side, so this text should refer to the back one on that side.">
        USB-C device (right side back port)
      </message>
      <message name="IDS_ASH_POWER_SOURCE_PORT_BACK_LEFT" desc="The text identifying an external device, when that device is connected to a USB Type-C port on the back of this device. In this case there are two ports on the back, so this text should refer to the one on the left.">
        USB-C device (left port in the back)
      </message>
      <message name="IDS_ASH_POWER_SOURCE_PORT_BACK_RIGHT" desc="The text identifying an external device, when that device is connected to a USB Type-C port on the back of this device. In this case there are two ports on the back, so this text should refer to the one on the right.">
        USB-C device (right port in the back)
      </message>
      <message name="IDS_ASH_POWER_SOURCE_PORT_UNKNOWN" desc="The text referring to the device to charge from, when its port location cannot be determined.">
        USB-C device
      </message>

      <!-- Status Tray Network strings -->
      <message name="IDS_ASH_STATUS_TRAY_NETWORK" desc="The label used in the network dialog header.">
        Network
      </message>
      <message name="IDS_ASH_STATUS_TRAY_NETWORK_STATUS_CONNECTED" desc="The label used when a network connection is connected.">
        Connected
      </message>
      <message name="IDS_ASH_STATUS_TRAY_NETWORK_STATUS_CONNECTING" desc="The label used when a network connection is connecting.">
        Connecting...
      </message>
      <message name="IDS_ASH_STATUS_TRAY_VPN" desc="The label used in the VPN detailed view header.">
        Private network
      </message>
      <message name="IDS_ASH_STATUS_TRAY_VPN_BUILT_IN_PROVIDER" desc="The name of the built-in VPN provider that supports OpenVPN and L2TP over IPsec.">
        OpenVPN / L2TP
      </message>
      <message name="IDS_ASH_STATUS_TRAY_VPN_DISCONNECT" desc="Message on button that disconnects from the current VPN.">
        Disconnect
      </message>
      <message name="IDS_ASH_STATUS_TRAY_WIFI_ADDRESS" desc="The label for the mac address of the wifi device.">
        Wi-Fi: <ph name="ADDRESS">$1<ex>23:45:67:89:AB:CD</ex></ph>
      </message>
      <message name="IDS_ASH_STATUS_TRAY_NETWORK_INFO" desc="The accessible text for the network info button.">
        Network info
      </message>
      <message name="IDS_ASH_STATUS_TRAY_IP_ADDRESS" desc="The label for the IP address of the network.">
        IP address: <ph name="ADDRESS">$1<ex>192.168.1.1</ex></ph>
      </message>
      <message name="IDS_ASH_STATUS_TRAY_IPV6_ADDRESS" desc="The label for the IPv6 address of the network.">
        IPv6 address: <ph name="ADDRESS">$1<ex>0:0:0:0:100:0:0:1</ex></ph>
      </message>
      <message name="IDS_ASH_STATUS_TRAY_NETWORK_SETTINGS" desc="The label used in the settings entry in the network dialog.">
        Network settings
      </message>
      <message name="IDS_ASH_STATUS_TRAY_NETWORK_PROXY_SETTINGS" desc="The label used in the proxy settings entry in the network dialog in the login screen.">
        Proxy settings
      </message>
      <message name="IDS_ASH_STATUS_TRAY_OTHER_WIFI" desc="The label used for the item to display other Wi-Fi networks.">
        Join other...
      </message>
      <message name="IDS_ASH_STATUS_TRAY_EXTENSION_CONTROLLED_WIFI" desc="The accessible text for the badge in the detailed network list indicating that the respective network's configuration may be controlled by an extension.">
        The extension "<ph name="EXTENSION_NAME">$1<ex>Nexus S</ex></ph>" can help connect to this network.
      </message>
      <message name="IDS_ASH_STATUS_TRAY_BLUETOOTH_DISCOVERABLE" desc="Notification shown when a Bluetooth adapter is discoverable.">
        Your computer is discoverable to nearby Bluetooth devices and will appear as "<ph name="NAME">$1<ex>Chromebook</ex></ph>" with address <ph name="ADDRESS">$2<ex>01:23:45:67:89:0A</ex></ph>
      </message>
      <message name="IDS_ASH_STATUS_TRAY_BLUETOOTH_DISPLAY_PINCODE" desc="Bluetooth pairing message typically shown on a request from a 2.0 device that has a keyboard.">
        Bluetooth device "<ph name="DEVICE_NAME">$1<ex>Nexus S</ex></ph>" would like permission to pair. Please enter this PIN code on that device: <ph name="PINCODE">$2<ex>123456</ex></ph>
      </message>
      <message name="IDS_ASH_STATUS_TRAY_BLUETOOTH_DISPLAY_PASSKEY" desc="Bluetooth pairing message typically shown on a request from a device that has a keyboard.">
        Bluetooth device "<ph name="DEVICE_NAME">$1<ex>Nexus S</ex></ph>" would like permission to pair. Please enter this passkey on that device: <ph name="PASSKEY">$2<ex>123456</ex></ph>
      </message>
      <message name="IDS_ASH_STATUS_TRAY_BLUETOOTH_CONFIRM_PASSKEY" desc="Bluetooth pairing message typically shown on a request from a device that has a display.">
        Bluetooth device "<ph name="DEVICE_NAME">$1<ex>Nexus S</ex></ph>" would like permission to pair. Before accepting, please confirm that this passkey is shown on that device: <ph name="PASSKEY">$2<ex>123456</ex></ph>
      </message>
      <message name="IDS_ASH_STATUS_TRAY_BLUETOOTH_AUTHORIZE_PAIRING" desc="Bluetooth pairing message typically shown on a request from a device without input or display.">
        Bluetooth device "<ph name="DEVICE_NAME">$1<ex>Nexus S</ex></ph>" would like permission to pair.
      </message>
      <message name="IDS_ASH_STATUS_TRAY_BLUETOOTH_ACCEPT" desc="Message on button to accept Bluetooth pairing request.">
        Accept
      </message>
      <message name="IDS_ASH_STATUS_TRAY_BLUETOOTH_REJECT" desc="Message on button to reject Bluetooth pairing request.">
        Reject
      </message>
      <message name="IDS_ASH_STATUS_TRAY_BLUETOOTH_PAIRED" desc="Notification shown when a new device is paired with the computer.">
        Bluetooth device "<ph name="DEVICE_NAME">$1<ex>Nexus S</ex></ph>" has been paired and is now available to all users. You may remove this pairing using Settings.
      </message>

      <!-- Ash multi-user warning dialog -->
      <message name="IDS_DESKTOP_CASTING_ACTIVE_TITLE" desc="The title for the dialog which tells the user that desktop casting is in progress, asking if the casting should be stopped before switching - or - the switch should be aborted.">
        Stop screen sharing?
      </message>
      <message name="IDS_DESKTOP_CASTING_ACTIVE_MESSAGE" desc="The message for the dialog which tells the user that desktop casting is in progress, asking if the casting should be stopped before switching - or - the switch should be aborted.">
        Screen sharing will stop when you switch to another user. Do you want to continue?
      </message>

      <!-- Status tray screen capture strings. -->
      <message name="IDS_ASH_STATUS_TRAY_SCREEN_CAPTURE_STOP" desc="label used for screen capture stop button">
        Stop
      </message>

      <!-- Status tray media recording state strings. -->
      <message name="IDS_ASH_STATUS_TRAY_MEDIA_RECORDING_AUDIO" desc="label used to indicate that the microphone is used by a background user">
        Microphone is in use.
      </message>
      <message name="IDS_ASH_STATUS_TRAY_MEDIA_RECORDING_VIDEO" desc="label used to indicate that the camera is used by a background user">
        Camera is in use.
      </message>
      <message name="IDS_ASH_STATUS_TRAY_MEDIA_RECORDING_AUDIO_VIDEO" desc="label used to indicate that the camera and microphone are used by a background user">
        Camera and microphone are in use.
      </message>

      <!-- Status tray screen share strings. -->
      <message name="IDS_ASH_STATUS_TRAY_SCREEN_SHARE_STOP" desc="label used for screen sharing stop button">
        Stop
      </message>
      <message name="IDS_ASH_STATUS_TRAY_SCREEN_SHARE_BEING_HELPED" desc="label for screen sharing notification">
        Sharing control of your screen via Remote Assistance.
      </message>
      <message name="IDS_ASH_STATUS_TRAY_SCREEN_SHARE_BEING_HELPED_NAME" desc="label for screen sharing notification with name">
        Sharing control of your screen with <ph name="HELPER_NAME">$1<ex>Walder Frey</ex></ph> via Remote Assistance.
      </message>

      <!-- Status tray audio strings. -->
      <message name="IDS_ASH_STATUS_TRAY_AUDIO_FRONT_MIC" desc="label used for front microphone">
        Front microphone
      </message>

      <message name="IDS_ASH_STATUS_TRAY_AUDIO_HEADPHONE" desc="label used for audio headphone device">
        Headphone
      </message>

      <message name="IDS_ASH_STATUS_TRAY_AUDIO_INTERNAL_SPEAKER" desc="label used for internal audio speaker">
        Speaker (internal)
      </message>

      <message name="IDS_ASH_STATUS_TRAY_AUDIO_INTERNAL_MIC" desc="label used for internal microphone">
        Microphone (internal)
      </message>

      <message name="IDS_ASH_STATUS_TRAY_AUDIO_REAR_MIC" desc="label used for rear microphone">
        Rear microphone
      </message>

      <message name="IDS_ASH_STATUS_TRAY_AUDIO_USB_DEVICE" desc="label used for usb audio device">
        <ph name="device_name">$1<ex>Headphone</ex></ph> (USB)
      </message>

      <message name="IDS_ASH_STATUS_TRAY_AUDIO_BLUETOOTH_DEVICE" desc="label used for bluetooth audio device">
        <ph name="device_name">$1<ex>Headphone</ex></ph> (Bluetooth)
      </message>

      <message name="IDS_ASH_STATUS_TRAY_AUDIO_HDMI_DEVICE" desc="label used for hdmi audio device">
        <ph name="device_name">$1<ex>Speaker</ex></ph> (HDMI/DP)
      </message>
      <message name="IDS_ASH_STATUS_TRAY_AUDIO_MIC_JACK_DEVICE" desc="label used for mic jack device">
        Mic jack
      </message>

      <message name="IDS_AURA_SET_DESKTOP_WALLPAPER" desc="The label used for change wallpaper in context menu">
        Set wallpaper...
      </message>

      <message name="IDS_ASH_STATUS_TRAY_TRACING" desc="The status tray item indicating that performance tracing is running.">
        Performance tracing enabled
      </message>
      <message name="IDS_ASH_STATUS_TRAY_BRIGHTNESS" desc="The accessible text for the brightness slider.">
        Brightness
      </message>
      <message name="IDS_ASH_STATUS_TRAY_KEYBOARD_BRIGHTNESS" desc="The accessible text for the keyboard brightness slider.">
        Keyboard brightness
      </message>
      <message name="IDS_ASH_STATUS_TRAY_AUDIO" desc="The label used in audio detailed page bottom header of ash tray pop up.">
        Audio settings
      </message>
      <message name="IDS_ASH_STATUS_TRAY_AUDIO_OUTPUT" desc="The label used in audio detailed page for audio output section of ash tray pop up.">
        Output
      </message>
      <message name="IDS_ASH_STATUS_TRAY_AUDIO_INPUT" desc="The label used in audio detailed page for audio input section of ash tray pop up.">
        Input
      </message>
      <message name="IDS_ASH_STATUS_TRAY_DISPLAY_MIRRORING" desc="The label used in the tray to show that the current status is mirroring.">
        Mirroring to <ph name="DISPLAY_NAME">$1</ph>
      </message>
      <message name="IDS_ASH_STATUS_TRAY_DISPLAY_MIRROR_EXIT" desc="The label used in the tray to show that mirror mode is exiting.">
        Exiting mirror mode
      </message>
      <message name="IDS_ASH_STATUS_TRAY_DISPLAY_EXTENDED" desc="The label used in the tray to show that the current status is extended.">
        Extending screen to <ph name="DISPLAY_NAME">$1</ph>
      </message>
      <message name="IDS_ASH_STATUS_TRAY_DISPLAY_REMOVED" desc="The text of the notification to show when a display is removed.">
        Removed display <ph name="DISPLAY_NAME">$1</ph>
      </message>
      <message name="IDS_ASH_STATUS_TRAY_DISPLAY_MIRRORING_NO_INTERNAL" desc="The label used in the tray to show that the current status is mirroring and the device doesn't have the internal display.">
        Mirroring
      </message>
      <message name="IDS_ASH_STATUS_TRAY_DISPLAY_EXTENDED_NO_INTERNAL" desc="The label used in the tray to show that the current status is extended and the device doesn't have the internal display.">
        Extending screen
      </message>
      <message name="IDS_ASH_STATUS_TRAY_DISPLAY_RESOLUTION_CHANGED" desc="The label used in the tray to notify that the display resolution settings has changed.">
        <ph name="DISPLAY_NAME">$1</ph> resolution was changed to <ph name="RESOLUTION">$2</ph>
      </message>
      <message name="IDS_ASH_STATUS_TRAY_DISPLAY_RESOLUTION_CHANGED_TO_UNSUPPORTED" desc="The label used in the tray to notify that the display resolution settings has changed to an unsupported resolution and the system falls back to another resolution.">
        <ph name="DISPLAY_NAME">$1</ph> doesn't support <ph name="SPECIFIED_RESOLUTION">$2<ex>2560x1600</ex></ph>. The resolution was changed to <ph name="FALLBACK_RESOLUTION">$3<ex>1920x1200</ex></ph>
      </message>
      <message name="IDS_ASH_STATUS_TRAY_DISPLAY_ROTATED" desc="The label used in the tray to notify that the display rotation settings has changed.">
        <ph name="DISPLAY_NAME">$1</ph> was rotated to <ph name="ROTATION">$2</ph>
      </message>
      <message name="IDS_ASH_STATUS_TRAY_DISPLAY_ANNOTATED_NAME" desc="Label used to show a display name with annotation (like screen resolution or overscan info).">
        <ph name="DISPLAY_NAME">$1</ph> (<ph name="ANNOTATION">$2</ph>)
      </message>
      <message name="IDS_ASH_STATUS_TRAY_DISPLAY_ANNOTATION_OVERSCAN" desc="Label used to describe that the system notice that this display device may have overscan area.">
        overscan
      </message>
      <message name="IDS_ASH_STATUS_TRAY_DISPLAY_STANDARD_ORIENTATION" desc="The default value of display orientation option item.">
        0&#x00B0;
      </message>
      <message name="IDS_ASH_STATUS_TRAY_DISPLAY_ORIENTATION_90" desc="The value of display orientation option item: 90-degree rotated">
        90&#x00B0;
      </message>
      <message name="IDS_ASH_STATUS_TRAY_DISPLAY_ORIENTATION_180" desc="The value of display orientation option item: 180-degree rotated">
        180&#x00B0;
      </message>
      <message name="IDS_ASH_STATUS_TRAY_DISPLAY_ORIENTATION_270" desc="The value of display orientation option item: 270-degree rotated">
        270&#x00B0;
      </message>
      <message name="IDS_ASH_STATUS_TRAY_DISPLAY_UNIFIED" desc="The title of the notification indicating that the system is in unified desktop mode.">
        Unified desktop mode
      </message>
      <message name="IDS_ASH_STATUS_TRAY_DISPLAY_UNIFIED_EXITING" desc="The title of the notification indicating that the system is exiting unified desktop mode.">
        Exiting unified desktop mode
      </message>
      <message name="IDS_ASH_STATUS_TRAY_CAPS_LOCK_ENABLED" desc="The label used for the tray item to indicate caps lock is on and to toggle caps lock by the click.">
        CAPS LOCK is on
      </message>
      <message name="IDS_ASH_STATUS_TRAY_CAPS_LOCK_DISABLED" desc="The label used for the tray item to indicate caps lock is on and to toggle caps lock by the click.">
        CAPS LOCK is off
      </message>
      <message name="IDS_ASH_STATUS_TRAY_CAPS_LOCK_SHORTCUT_SEARCH" desc="The shortcut text used for the caps lock tray item.">
        Search
      </message>
      <message name="IDS_ASH_STATUS_TRAY_CAPS_LOCK_SHORTCUT_SEARCH_OR_SHIFT" desc="The shortcut text used for the caps lock tray item.">
        Search or Shift
      </message>
      <message name="IDS_ASH_STATUS_TRAY_CAPS_LOCK_SHORTCUT_ALT_SEARCH" desc="The shortcut text used for the caps lock tray item.">
        Alt+Search
      </message>
      <message name="IDS_ASH_STATUS_TRAY_CAPS_LOCK_SHORTCUT_ALT_SEARCH_OR_SHIFT" desc="The shortcut text used for the caps lock tray item.">
        Alt+Search or Shift
      </message>
      <message name="IDS_ASH_STATUS_TRAY_CAPS_LOCK_CANCEL_BY_ALT_SEARCH" desc="The message shown on a bubble when caps lock is turned on.">
        Press Alt+Search or Shift to cancel.
      </message>
      <message name="IDS_ASH_STATUS_TRAY_CAPS_LOCK_CANCEL_BY_SEARCH" desc="The message shown on a bubble when caps lock is turned on.">
        Press Search or Shift to cancel.
      </message>
      <message name="IDS_ASH_STATUS_TRAY_BATTERY_FULL" desc="The label in the tray dialog to indicate that the battery is full.">
        Battery full
      </message>
      <message name="IDS_ASH_STATUS_TRAY_BATTERY_PERCENT" desc="The label in the tray dialog to show the remaining battery power as a percent.">
        <ph name="percentage">{0,number,percent}<ex>56%</ex></ph> remaining
      </message>
      <message name="IDS_ASH_STATUS_TRAY_BATTERY_TIME_UNTIL_FULL" desc="The label in the tray dialog to show a time estimate until the battery is fully charged.">
        <ph name="time">$1<ex>2h 53m</ex></ph> until full
      </message>
      <message name="IDS_ASH_STATUS_TRAY_BATTERY_CALCULATING" desc="The label in the tray dialog indicating that the time to charge or discharge the battery is being calculated.">
        Calculating...
      </message>
      <message name="IDS_ASH_STATUS_TRAY_BATTERY_TIME_LEFT_SHORT" desc="The label in the tray bubble settings row to show a time estimate until the battery is empty.">
        <ph name="time">$1<ex>2:53</ex></ph> left
      </message>
      <message name="IDS_ASH_STATUS_TRAY_BATTERY_TIME_UNTIL_FULL_SHORT" desc="The label in the tray bubble settings row to show a time estimate until the battery is fully charged.">
        <ph name="time">$1<ex>2:53</ex></ph> until full
      </message>
      <message name="IDS_ASH_STATUS_TRAY_BATTERY_CHARGING_UNRELIABLE" desc="The label in the tray dialog to indicate that battery charging is unreliable.">
        Low-power charger
      </message>
      <message name="IDS_ASH_STATUS_TRAY_BATTERY_FULL_CHARGE_ACCESSIBLE" desc="The message used by accessibility to show battery is fully charged.">
        Battery is full.
      </message>
      <message name="IDS_ASH_STATUS_TRAY_BATTERY_PERCENT_ACCESSIBLE" desc="The message used by accessibility to show battery is discharging.">
        Battery is <ph name="percentage">$1<ex>56</ex></ph>% full.
      </message>
      <message name="IDS_ASH_STATUS_TRAY_BATTERY_PERCENT_CHARGING_ACCESSIBLE" desc="The message used by accessibility to show battery is being charged.">
        Battery is <ph name="percentage">$1<ex>56</ex></ph>% full and charging.
      </message>
      <message name="IDS_ASH_STATUS_TRAY_BATTERY_CALCULATING_ACCESSIBLE" desc="The message used by accessibility to show battery is calculating its time in short message.">
        Calculating battery time.
      </message>
      <message name= "IDS_ASH_STATUS_TRAY_BATTERY_TIME_LEFT_ACCESSIBLE" desc="The message used by accessibility to read remaining battery time until empty.">
        Time left until battery is empty, <ph name="time_left">$1<ex>1 hour and 15 minutes</ex></ph>
      </message>
      <message name= "IDS_ASH_STATUS_TRAY_BATTERY_TIME_UNTIL_FULL_ACCESSIBLE" desc="The message used by accessibility to read the estimated time until full.">
        Time remaining until battery is fully charged, <ph name="time_remaining">$1<ex>1 hour and 15 minutes</ex></ph>
      </message>
      <message name = "IDS_ASH_STATUS_TRAY_BATTERY_TIME_ACCESSIBLE" desc="The message used by accessibility to read battery time, which includes both non-zero hours and minutes.">
        <ph name="hour">$1<ex> 1 hour</ex></ph> and <ph name="minute">$2<ex>15 minutes</ex></ph>
      </message>
      <message name="IDS_ASH_STATUS_TRAY_BATTERY_CHARGING_UNRELIABLE_ACCESSIBLE" desc="The message used by accessibility to indicate that battery charging is unreliable.">
        Plugged in to a low-power charger. Battery charging may not be reliable.
      </message>
      <message name="IDS_ASH_STATUS_TRAY_BUBBLE_SESSION_LENGTH_LIMIT" desc="Tray bubble item shown to inform the user that the session length is limited.">
        Session ends in <ph name="session_time_remaining">$1<ex>4 minutes 23 seconds</ex></ph>.
      </message>
      <message name="IDS_ASH_STATUS_TRAY_NOTIFICATION_SESSION_LENGTH_LIMIT" desc="Notification shown to inform the user that the session length is limited.">
        Session ends in <ph name="session_time_remaining">$1<ex>4 minutes 23 seconds</ex></ph>. You will be signed out.
      </message>
      <message name="IDS_ASH_STATUS_TRAY_ROTATION_LOCK_AUTO" desc="The text shown in the tray menu when rotation is set to auto and the user can enable the rotation lock by tapping.">
        Auto rotate
      </message>
      <message name="IDS_ASH_STATUS_TRAY_ROTATION_LOCK_LANDSCAPE" desc="The text shown in the tray menu when rotation is set locked to landscape.">
        Landscape
      </message>
      <message name="IDS_ASH_STATUS_TRAY_ROTATION_LOCK_PORTRAIT" desc="The text shown in the tray menu when rotation is set locked to portrait.">
        Portrait
      </message>
      <message name="IDS_ASH_STATUS_TRAY_KEYBOARD_DISABLED" desc="The text shown in the tray menu when the virtual keyboard is disabled.">
        On-screen keyboard disabled
      </message>
      <message name="IDS_ASH_STATUS_TRAY_KEYBOARD_ENABLED" desc="The text shown in the tray menu when the virtual keyboard is enabled.">
        On-screen keyboard enabled
      </message>

      <!-- Status tray networking strings. -->
      <message name="IDS_ASH_STATUS_TRAY_MOBILE_SCANNING" desc="Message when scanning for mobile networks">
        Searching for mobile networks...
      </message>
      <message name="IDS_ASH_STATUS_TRAY_ETHERNET" desc="The generic name for an Ethernet connection.">
        Ethernet
      </message>
      <message name="IDS_ASH_STATUS_TRAY_ETHERNET_ADDRESS" desc="The label for the mac address of the ethernet device.">
        Ethernet: <ph name="ADDRESS">$1<ex>01:23:45:67:89:AB</ex></ph>
      </message>
      <message name="IDS_ASH_STATUS_TRAY_INITIALIZING_CELLULAR" desc="Message for the status area when initializing the cellular device.">
        Initializing...
      </message>
      <message name="IDS_ASH_STATUS_TRAY_NETWORK_ACTIVATING" desc="Message for the network tray tooltip and network list when activating a network.">
        Activating <ph name="NAME">$1<ex>YBH Cellular</ex></ph>
      </message>
      <message name="IDS_ASH_STATUS_TRAY_NETWORK_CONNECTED" desc="Message for the network tray tooltip and network list when connected to a network.">
        Connected to <ph name="NAME">$1<ex>GoogleGuest</ex></ph>
      </message>
      <message name="IDS_ASH_STATUS_TRAY_NETWORK_CONNECTING" desc="Message for the network tray tooltip and network list when connecting to a network.">
        Connecting to <ph name="NAME">$1<ex>GoogleGuest</ex></ph>
      </message>
      <message name="IDS_ASH_STATUS_TRAY_NETWORK_RECONNECTING" desc="Message for the network tray tooltip and network list when reconnecting to a network.">
        Reconnecting to <ph name="NAME">$1<ex>Company VPN</ex></ph>
      </message>
      <message name="IDS_ASH_STATUS_TRAY_NETWORK_LIST_ACTIVATE" desc="Message for the network list to activate the network.">
        Activate <ph name="NETWORKSERVICE">$1<ex>YBH Cellular</ex></ph>
      </message>
      <message name="IDS_ASH_STATUS_TRAY_NETWORK_LIST_ACTIVATING" desc="Message for the network list when activating a network.">
        <ph name="NAME">$1<ex>YBH Cellular</ex></ph>: Activating...
      </message>
      <message name="IDS_ASH_STATUS_TRAY_NETWORK_LIST_CONNECTING" desc="Message for the network list when connecting to a network.">
        <ph name="NAME">$1<ex>GoogleGuest</ex></ph>: Connecting...
      </message>
      <message name="IDS_ASH_STATUS_TRAY_NETWORK_LIST_RECONNECTING" desc="Message for the network list when reconnecting to a network.">
        <ph name="NAME">$1<ex>Company VPN</ex></ph>: Reconnecting...
      </message>
      <message name="IDS_ASH_STATUS_TRAY_NETWORK_NOT_CONNECTED" desc="Description in status area or network list when no network is connected.">
        No network
      </message>
      <message name="IDS_ASH_STATUS_TRAY_NETWORK_PROHIBITED" desc="Tooltip in network list when no network is prohibited by policy.">
        This network is disabled by your administrator.
      </message>
      <message name="IDS_ASH_STATUS_TRAY_NO_NETWORKS" desc="The message to display in the network info bubble when it is otherwise empty.">
        No network information available
      </message>
      <message name="IDS_ASH_STATUS_TRAY_NO_MOBILE_NETWORKS" desc="The message to display in the network list when no mobile networks are available.">
        No mobile network available
      </message>
      <message name="IDS_ASH_STATUS_TRAY_ENABLE_BLUETOOTH" desc="The message to display in the network list when Tether is enabled but Bluetooth is disabled.">
        Turn on Bluetooth to discover nearby devices
      </message>
      <message name="IDS_ASH_STATUS_TRAY_VPN_DISCONNECTED" desc="The label used in system tray bubble to display vpn is disconnected.">
        VPN disconnected
      </message>
      <message name="IDS_ASH_STATUS_TRAY_NETWORK_WIFI_ENABLED" desc="The label used in the tray popup to notify that Wi-Fi is turned on.">
        Wi-Fi is turned on.
      </message>
      <message name="IDS_ASH_STATUS_TRAY_NETWORK_WIFI_DISABLED" desc="The label used in the tray popup to notify that Wi-Fi is turned off.">
        Wi-Fi is turned off.
      </message>
      <message name="IDS_ASH_STATUS_TRAY_WIFI_SCANNING_MESSAGE" desc="Scanning for wifi networks">
        Searching for Wi-Fi networks...
      </message>
      <message name="IDS_ASH_STATUS_TRAY_NETWORK_MOBILE" desc="The label used in the tray popup to separate mobile networks.">
        Mobile data
      </message>
      <message name="IDS_ASH_STATUS_TRAY_NETWORK_WIFI" desc="The label used in the tray popup to separate Wi-Fi networks.">
        Wi-Fi
      </message>
      <message name="IDS_ASH_STATUS_TRAY_NETWORK_TETHER" desc="The label used in the tray popup to separate Instant Tethering networks.">
        Instant Tethering
      </message>
      <message name="IDS_ASH_STATUS_TRAY_ADD_CONNECTION" desc="Title for control to add a new network connection." >
        Add connection
      </message>
      <message name="IDS_ASH_STATUS_TRAY_NETWORK_MONITORED_WARNING" desc="The label used in the tray popup to warn users their network may be monitored." >
        Network may be monitored
      </message>

      <message name="IDS_ASH_VIRTUAL_KEYBOARD_TRAY_ACCESSIBLE_NAME" desc="The accessible text for virtual keyboard icon in status tray.">
        Show on-screen keyboard
      </message>
      <message name="IDS_ASH_DISPLAY_FAILURE_ON_MIRRORING" desc="An error message to show that the system failed to enter the mirroring mode.">
        Could not mirror displays since no supported resolutions found. Entered extended desktop instead.
      </message>
      <message name="IDS_ASH_DISPLAY_FAILURE_ON_NON_MIRRORING" desc="An error message to show that the system failed to enter the extended desktop mode or unknown status. Please translate the parenthesized text.">
        This monitor isn't getting along with your <ph name="DEVICE_TYPE">$1<ex>Chromebook</ex></ph> (the monitor is not supported).
      </message>
      <message name="IDS_ASH_DISPLAY_FAILURE_SEND_FEEDBACK" desc="Button text below error report to allow user to send feedback report.">
        Send feedback
      </message>
      <message name="IDS_ASH_DISPLAY_MIRRORING_NOT_SUPPORTED" desc="A message used to explain that mirroring with more than two displays is not supported.">
        Mirroring with more than two displays is not supported.
      </message>
      <message name="IDS_ASH_DISPLAY_RESOLUTION_CHANGE_ACCEPT" desc="A button label shown in the notification for the resolution change to accept the change">
        Accept
      </message>
      <message name="IDS_ASH_DISPLAY_RESOLUTION_CHANGE_REVERT" desc="A button label shown in the notification for the resolution change to revert the change">
        Revert
      </message>
      <message name="IDS_ASH_DISPLAY_RESOLUTION_TIMEOUT" desc="A message for to notify the user about the timeout of display resolution change.">
        Reverting to old resolution in <ph name="TIMEOUT_SECONDS">$1</ph>
      </message>
      <message name="IDS_ASH_LOW_PERIPHERAL_BATTERY_NOTIFICATION_TEXT" desc="The text of the notification when a peripheral device is in low battery condition.">
        Battery low (<ph name="percentage">$1<ex>56</ex></ph>%)
      </message>
      <message name="IDS_ASH_SCREENSHOT_NOTIFICATION_TITLE_SUCCESS" desc="The title of the notification when a screenshot was taken.">
        Screenshot taken
      </message>
      <message name="IDS_ASH_SCREENSHOT_NOTIFICATION_TITLE_DISABLED" desc="The title of the notification when taking a screenshot failed because screenshots are disabled.">
        Screenshots disabled
      </message>
      <message name="IDS_ASH_SCREENSHOT_NOTIFICATION_TITLE_FAIL" desc="The title of the notification when taking a screenshot failed.">
        An error occurred
      </message>
      <message name="IDS_ASH_SCREENSHOT_NOTIFICATION_TEXT_SUCCESS" desc="The text of the notification when a screenshot was taken. If clicked, the screenshot file is displayed in the Files app.">
        Show in folder
      </message>
      <message name="IDS_ASH_SCREENSHOT_NOTIFICATION_TEXT_DISABLED" desc="The text of the notification when taking a screenshot failed because screenshots are disabled by administrator policy.">
        The ability to take screenshots has been disabled by your administrator.
      </message>
      <message name="IDS_ASH_SCREENSHOT_NOTIFICATION_TEXT_FAIL" desc="The text of the notification when taking a screenshot failed.">
        Failed to save screenshot
      </message>
      <message name="IDS_ASH_SIGN_OUT_WARNING_POPUP_TEXT" desc="The text of the popup when the user preses the exit shortcut in chrome-os.">
        Press Ctrl+Shift+Q twice to sign out.
      </message>
      <message name="IDS_ASH_SIGN_OUT_WARNING_POPUP_TEXT_ACCESSIBLE" desc="The message used by accessibility to indicate the content of the popup when the user preses the exit shortcut in chrome-os.">
        Press Control Shift Q twice to sign out.
      </message>
      <message name="IDS_ASH_LOGOUT_CONFIRMATION_TITLE" desc="Dialog title for the logout confirmation dialog.">
        Exiting session
      </message>
      <message name="IDS_ASH_LOGOUT_CONFIRMATION_WARNING" desc="The text for the logout confirmation dialog.">
        You will automatically be signed out in <ph name="LOGOUT_TIME_LEFT">$1<ex>5 seconds</ex></ph>.
      </message>
      <message name="IDS_ASH_LOGOUT_CONFIRMATION_WARNING_NOW" desc="The text for the logout confirmation dialog with no time left.">
        You will be signed out now.
      </message>
      <message name="IDS_ASH_LOGOUT_CONFIRMATION_BUTTON" desc="The text for okay button of the logout confirmation dialog.">
        Sign out now
      </message>

      <!-- HaTS Strings -->
      <message name="IDS_ASH_HATS_NOTIFICATION_TITLE" desc="The title of the notification for Happiness Tracking Survey.">
        Help us improve Chromebooks
      </message>
      <message name="IDS_ASH_HATS_NOTIFICATION_BODY" desc="The body of the notification for Happiness Tracking Survey.">
        Let us know how we’re doing by answering a few questions.
      </message>
      <message name="IDS_ASH_HATS_NOTIFICATION_TAKE_SURVEY_BUTTON" desc="The title of the button in the notification for Happiness Tracking Survey to take the said survey.">
        Take survey
      </message>
      <message name="IDS_ASH_IME_MENU_ACCESSIBLE_NAME" desc="The accessible text for opt-in IME menu icon in status tray.">
        IME menu button
      </message>

      <!-- Quick Unlock Strings -->
       <message name="IDS_ASH_QUICK_UNLOCK_NOTIFICATION_TITLE" desc="The title of the notification for Quick Unlock feature notification.">
        QU Feature notification title here
      </message>
      <message name="IDS_ASH_QUICK_UNLOCK_NOTIFICATION_BODY" desc="The body of the notification for Quick Unlock feature notification.">
        QU Feature notification body goes here. QU Feature notification body goes here. QU Feature notification body goes here. QU Feature notification body goes here. QU Feature notification body goes here.
      </message>
      <message name="IDS_ASH_FINGERPRINT_NOTIFICATION_TITLE" desc="The title of the notification for fingerprint unlock feature notification.">
       Enable Fingerprint unlock?
     </message>
     <message name="IDS_ASH_FINGERPRINT_NOTIFICATION_BODY" desc="The body of the notification for fingerprint unlock feature notification.">
       Skip the lock screen by just tapping the fingerprint sensor. Click to configure.
     </message>

      <!-- Deprecated Accelerators Messages -->
      <!-- Shortcut keys MUST be connected with pluses (e.g. Ctrl+Shift+L). -->
      <message name="IDS_SHORTCUT_LOCK_SCREEN_OLD" desc="the old deprecated shortcut to lock the screen.">
        Ctrl+Shift+L
      </message>
      <message name="IDS_SHORTCUT_LOCK_SCREEN_NEW" desc="the new shortcut to lock the screen.">
        Search+L
      </message>
      <message name="IDS_SHORTCUT_TASK_MANAGER_OLD" desc="the old deprecated shortcut to open the task manager.">
        Shift+Esc
      </message>
      <message name="IDS_SHORTCUT_TASK_MANAGER_NEW" desc="the new shortcut to open the task manager.">
        Search+Esc
      </message>
      <message name="IDS_SHORTCUT_IME_BUBBLE_OLD" desc="the old deprecated shortcut to show the input options menu bubble in the shelf.">
        Alt+Shift+K
      </message>
      <message name="IDS_SHORTCUT_IME_BUBBLE_NEW" desc="the new shortcut to show the input options menu bubble in the shelf.">
        Search+Shift+K
      </message>
      <message name="IDS_SHORTCUT_TOGGLE_HIGH_CONTRAST_OLD" desc="the old deprecated shortcut to toggle the high contrast display mode.">
        Search+Shift+H
      </message>
      <message name="IDS_SHORTCUT_TOGGLE_HIGH_CONTRAST_NEW" desc="the new shortcut to toggle the high contrast display mode.">
        Ctrl+Search+H
      </message>
      <message name="IDS_DEPRECATED_LOCK_SCREEN_MSG"
               desc="Notification message to tell users about the deprecation of Ctrl+Shift+L shortcut to lock the screen.">
        The shortcut to lock the screen has changed. Please use <ph name="NEW_SHORTCUT">$1<ex>Search+L</ex></ph> instead of <ph name="OLD_SHORTCUT">$2<ex>Ctrl+Shift+L</ex></ph>.
      </message>
      <message name="IDS_DEPRECATED_SHOW_TASK_MANAGER_MSG"
               desc="Notification message to tell users about the deprecation of Shift+ESC shortcut to show the task manager.">
        The shortcut to open the task manager has changed. Please use <ph name="NEW_SHORTCUT">$1<ex>Search+Esc</ex></ph> instead of <ph name="OLD_SHORTCUT">$2<ex>Shift+Esc</ex></ph>.
      </message>
      <message name="IDS_DEPRECATED_SHOW_IME_BUBBLE_MSG"
               desc="Notification message to tell users about the deprecation of Alt+Shift+K shortcut to show the input options menu bubble in the shelf.">
        The shortcut to show the input options menu bubble in the shelf has changed. Please use <ph name="NEW_SHORTCUT">$1<ex>Search+Shift+K</ex></ph> instead of <ph name="OLD_SHORTCUT">$2<ex>Alt+Shift+K</ex></ph>.
      </message>
      <message name="IDS_DEPRECATED_TOGGLE_HIGH_CONTRAST_MSG" desc="Notification message to tell users about the deprecation of Search+Shift+H shortcut to toggle the high contrast display mode.">
        The shortcut to toggle High Contrast Mode has changed. Please use <ph name="NEW_SHORTCUT">$1<ex>Ctrl+Search+H</ex></ph> instead of <ph name="OLD_SHORTCUT">$2<ex>Search+Shift+H</ex></ph>.
      </message>

      <!-- Notification that an accelerator was pressed, so the user knows how to toggle it back -->
      <message name="IDS_HIGH_CONTRAST_ACCEL_MSG"
               desc="Notification message to tell users that they just pressed the Search+Shift+H shortcut to toggle High Contrast Mode, and that pressing it again will toggle it off.">
        High Contrast Mode enabled. Press Ctrl+Search+H again to toggle it off.
      </message>

      <!-- Tray scale strings -->
      <message name="IDS_ASH_STATUS_TRAY_SCALE" desc="The label used in scale setting detailed page of ash tray popup.">
        Display scale settings
      </message>
      <message name="IDS_ASH_STATUS_TRAY_SCALE_SLIDER" desc="The accessible text for the scale slider">Display scale</message>
    </messages>
  </release>
</grit>

