<?xml version="1.0" encoding="UTF-8"?>
<grit latest_public_release="0" current_release="1" output_all_resource_defines="false">
  <outputs>
    <output filename="grit/locale_settings.h" type="rc_header">
      <emit emit_type='prepend'></emit>
    </output>
    <output filename="locale_settings_am.pak" type="data_package" lang="am" />
    <output filename="locale_settings_ar.pak" type="data_package" lang="ar" />
    <output filename="locale_settings_bg.pak" type="data_package" lang="bg" />
    <output filename="locale_settings_bn.pak" type="data_package" lang="bn" />
    <output filename="locale_settings_ca.pak" type="data_package" lang="ca" />
    <output filename="locale_settings_cs.pak" type="data_package" lang="cs" />
    <output filename="locale_settings_da.pak" type="data_package" lang="da" />
    <output filename="locale_settings_de.pak" type="data_package" lang="de" />
    <output filename="locale_settings_el.pak" type="data_package" lang="el" />
    <output filename="locale_settings_en-GB.pak" type="data_package" lang="en-GB" />
    <output filename="locale_settings_en-US.pak" type="data_package" lang="en" />
    <output filename="locale_settings_es.pak" type="data_package" lang="es" />
    <if expr="is_ios">
      <!-- iOS uses es-MX for es-419 -->
      <output filename="locale_settings_es-MX.pak" type="data_package" lang="es-419" />
    </if>
    <if expr="not is_ios">
      <output filename="locale_settings_es-419.pak" type="data_package" lang="es-419" />
    </if>
    <output filename="locale_settings_et.pak" type="data_package" lang="et" />
    <output filename="locale_settings_fa.pak" type="data_package" lang="fa" />
    <output filename="locale_settings_fake-bidi.pak" type="data_package" lang="fake-bidi" />
    <output filename="locale_settings_fi.pak" type="data_package" lang="fi" />
    <output filename="locale_settings_fil.pak" type="data_package" lang="fil" />
    <output filename="locale_settings_fr.pak" type="data_package" lang="fr" />
    <output filename="locale_settings_gu.pak" type="data_package" lang="gu" />
    <output filename="locale_settings_he.pak" type="data_package" lang="he" />
    <output filename="locale_settings_hi.pak" type="data_package" lang="hi" />
    <output filename="locale_settings_hr.pak" type="data_package" lang="hr" />
    <output filename="locale_settings_hu.pak" type="data_package" lang="hu" />
    <output filename="locale_settings_id.pak" type="data_package" lang="id" />
    <output filename="locale_settings_it.pak" type="data_package" lang="it" />
    <output filename="locale_settings_ja.pak" type="data_package" lang="ja" />
    <output filename="locale_settings_kn.pak" type="data_package" lang="kn" />
    <output filename="locale_settings_ko.pak" type="data_package" lang="ko" />
    <output filename="locale_settings_lt.pak" type="data_package" lang="lt" />
    <output filename="locale_settings_lv.pak" type="data_package" lang="lv" />
    <output filename="locale_settings_ml.pak" type="data_package" lang="ml" />
    <output filename="locale_settings_mr.pak" type="data_package" lang="mr" />
    <output filename="locale_settings_ms.pak" type="data_package" lang="ms" />
    <output filename="locale_settings_nl.pak" type="data_package" lang="nl" />
    <!-- The translation console uses 'no' for Norwegian Bokmål. It should
         be 'nb'. -->
    <output filename="locale_settings_nb.pak" type="data_package" lang="no" />
    <output filename="locale_settings_pl.pak" type="data_package" lang="pl" />
    <if expr="is_ios">
      <!-- iOS uses pt for pt-BR -->
      <output filename="locale_settings_pt.pak" type="data_package" lang="pt-BR" />
    </if>
    <if expr="not is_ios">
      <output filename="locale_settings_pt-BR.pak" type="data_package" lang="pt-BR" />
    </if>
    <output filename="locale_settings_pt-PT.pak" type="data_package" lang="pt-PT" />
    <output filename="locale_settings_ro.pak" type="data_package" lang="ro" />
    <output filename="locale_settings_ru.pak" type="data_package" lang="ru" />
    <output filename="locale_settings_sk.pak" type="data_package" lang="sk" />
    <output filename="locale_settings_sl.pak" type="data_package" lang="sl" />
    <output filename="locale_settings_sr.pak" type="data_package" lang="sr" />
    <output filename="locale_settings_sv.pak" type="data_package" lang="sv" />
    <output filename="locale_settings_sw.pak" type="data_package" lang="sw" />
    <output filename="locale_settings_ta.pak" type="data_package" lang="ta" />
    <output filename="locale_settings_te.pak" type="data_package" lang="te" />
    <output filename="locale_settings_th.pak" type="data_package" lang="th" />
    <output filename="locale_settings_tr.pak" type="data_package" lang="tr" />
    <output filename="locale_settings_uk.pak" type="data_package" lang="uk" />
    <output filename="locale_settings_vi.pak" type="data_package" lang="vi" />
    <output filename="locale_settings_zh-CN.pak" type="data_package" lang="zh-CN" />
    <output filename="locale_settings_zh-TW.pak" type="data_package" lang="zh-TW" />
  </outputs>
  <translations>
    <file path="locale_settings_am.xtb" lang="am" />
    <file path="locale_settings_ar.xtb" lang="ar" />
    <file path="locale_settings_bg.xtb" lang="bg" />
    <file path="locale_settings_bn.xtb" lang="bn" />
    <file path="locale_settings_ca.xtb" lang="ca" />
    <file path="locale_settings_cs.xtb" lang="cs" />
    <file path="locale_settings_da.xtb" lang="da" />
    <file path="locale_settings_de.xtb" lang="de" />
    <file path="locale_settings_el.xtb" lang="el" />
    <file path="locale_settings_en-GB.xtb" lang="en-GB" />
    <file path="locale_settings_es.xtb" lang="es" />
    <file path="locale_settings_es-419.xtb" lang="es-419" />
    <file path="locale_settings_et.xtb" lang="et" />
    <file path="locale_settings_fa.xtb" lang="fa" />
    <file path="locale_settings_fi.xtb" lang="fi" />
    <file path="locale_settings_fil.xtb" lang="fil" />
    <file path="locale_settings_fr.xtb" lang="fr" />
    <file path="locale_settings_gu.xtb" lang="gu" />
    <file path="locale_settings_he.xtb" lang="he" />
    <file path="locale_settings_hi.xtb" lang="hi" />
    <file path="locale_settings_hr.xtb" lang="hr" />
    <file path="locale_settings_hu.xtb" lang="hu" />
    <file path="locale_settings_id.xtb" lang="id" />
    <file path="locale_settings_it.xtb" lang="it" />
    <file path="locale_settings_ja.xtb" lang="ja" />
    <file path="locale_settings_kn.xtb" lang="kn" />
    <file path="locale_settings_ko.xtb" lang="ko" />
    <file path="locale_settings_lt.xtb" lang="lt" />
    <file path="locale_settings_lv.xtb" lang="lv" />
    <file path="locale_settings_ml.xtb" lang="ml" />
    <file path="locale_settings_mr.xtb" lang="mr" />
    <file path="locale_settings_ms.xtb" lang="ms" />
    <file path="locale_settings_nl.xtb" lang="nl" />
    <file path="locale_settings_nb.xtb" lang="no" />
    <file path="locale_settings_pl.xtb" lang="pl" />
    <file path="locale_settings_pt-BR.xtb" lang="pt-BR" />
    <file path="locale_settings_pt-PT.xtb" lang="pt-PT" />
    <file path="locale_settings_ro.xtb" lang="ro" />
    <file path="locale_settings_ru.xtb" lang="ru" />
    <file path="locale_settings_sk.xtb" lang="sk" />
    <file path="locale_settings_sl.xtb" lang="sl" />
    <file path="locale_settings_sr.xtb" lang="sr" />
    <file path="locale_settings_sv.xtb" lang="sv" />
    <file path="locale_settings_sw.xtb" lang="sw" />
    <file path="locale_settings_ta.xtb" lang="ta" />
    <file path="locale_settings_te.xtb" lang="te" />
    <file path="locale_settings_th.xtb" lang="th" />
    <file path="locale_settings_tr.xtb" lang="tr" />
    <file path="locale_settings_uk.xtb" lang="uk" />
    <file path="locale_settings_vi.xtb" lang="vi" />
    <file path="locale_settings_zh-CN.xtb" lang="zh-CN" />
    <file path="locale_settings_zh-TW.xtb" lang="zh-TW" />
    <file path="locale_settings_fake-bidi.xtb" lang="fake-bidi" />
  </translations>
  <release seq="1" allow_pseudo="false">
    <messages fallback_to_english="true">

      <!-- The file name of the spellchecking dictionary without the extension (case-sensitive). -->
      <message name="IDS_SPELLCHECK_DICTIONARY" use_name_for_id="true">
        en-US
      </message>

      <!-- The width of the Crucial Notification bubble in characters (See above). -->
      <message name="IDS_CRUCIAL_NOTIFICATION_BUBBLE_WIDTH_CHARS" use_name_for_id="true">
        55
      </message>

      <!-- The width of the Extension Wipeout bubble in characters (See above). -->
      <message name="IDS_EXTENSION_WIPEOUT_BUBBLE_WIDTH_CHARS" use_name_for_id="true">
        55
      </message>

      <!-- The width of the Extension Toolbar Redesign bubble in characters (See above). -->
      <message name="IDS_EXTENSION_TOOLBAR_REDESIGN_NOTIFICATION_BUBBLE_WIDTH_CHARS" use_name_for_id="true">
        55
      </message>

      <if expr="is_win or is_linux or chromeos">
        <!-- The width of the ash/ChromeOS system tray menu in pixels. -->
        <message name="IDS_SYSTEM_TRAY_MENU_BUBBLE_WIDTH_PIXELS" use_name_for_id="true">
          300
        </message>
      </if>

      <if expr="is_win">
        <!-- The width of the Conflicting Module bubble in characters (See above). -->
        <message name="IDS_CONFLICTING_MODULE_BUBBLE_WIDTH_CHARS" use_name_for_id="true">
          46
        </message>
      </if>

      <if expr="chromeos">
        <!-- The width and height of the Join Wi-Fi network dialog box in -->
        <!-- characters and lines (See above). -->
        <message name="IDS_JOIN_WIFI_NETWORK_DIALOG_WIDTH_CHARS" use_name_for_id="true">
          60
        </message>
        <message name="IDS_JOIN_WIFI_NETWORK_DIALOG_MINIMUM_HEIGHT_LINES" use_name_for_id="true">
          4
        </message>

        <!-- The height of the advanced Join Wi-Fi network dialog box in lines. -->
        <message name="IDS_JOIN_WIFI_NETWORK_DIALOG_ADVANCED_WIDTH_CHARS" use_name_for_id="true">
          100
        </message>
        <message name="IDS_JOIN_WIFI_NETWORK_DIALOG_ADVANCED_MINIMUM_HEIGHT_LINES" use_name_for_id="true">
          30
        </message>
      </if>

      <!-- The width and height of the Edit Bookmark dialog box in characters and lines -->
      <!-- (See above). -->
      <message name="IDS_EDITBOOKMARK_DIALOG_WIDTH_CHARS" use_name_for_id="true">
        70
      </message>
      <message name="IDS_EDITBOOKMARK_DIALOG_HEIGHT_LINES" use_name_for_id="true">
        25
      </message>

      <!-- The width and height of the "Mozilla Firefox is locked" dialog box in -->
      <!-- characters and lines (See above). -->
      <message name="IDS_IMPORTLOCK_DIALOG_WIDTH_CHARS" use_name_for_id="true">
        50
      </message>
      <message name="IDS_IMPORTLOCK_DIALOG_HEIGHT_LINES" use_name_for_id="true">
        8
      </message>

      <!-- The URL for the the Welcome to Chrome page shown on first run. -->
      <message name="IDS_WELCOME_PAGE_URL" translateable="false">
        http://tools.google.com/chrome/intl/[GRITLANGCODE]/welcome.html
      </message>

      <!-- The language dependent download view size. -->
      <message name="IDS_DOWNLOAD_BIG_PROGRESS_SIZE" use_name_for_id="true">
        52
      </message>

      <!-- The URL for the themes gallery. -->
      <message name="IDS_THEMES_GALLERY_URL" translateable="false">
        https://chrome.google.com/webstore?hl=[GRITLANGCODE]&amp;category=theme
      </message>

      <!-- The URL for the webstore. -->
      <message name="IDS_WEBSTORE_URL" translateable="false">
        https://chrome.google.com/webstore?hl=[GRITLANGCODE]
      </message>

      <!-- The URL for Google Chrome welcome page. This is used for the pre -->
      <!-- populated thumbnails. -->
      <message name="IDS_CHROME_WELCOME_URL" translateable="false">
        http://www.google.com/chrome/intl/[GRITLANGCODE]/welcome.html
      </message>
      <if expr="is_android or is_ios">
        <message name="IDS_MOBILE_WELCOME_URL" translateable="false">
          chrome://welcome
        </message>
      </if>

      <!-- The URLs for Adobe Flash settings. We cannot rely on -->
      <!-- the automatic expansion of GRITLANGCODE here because Adobe does -->
      <!-- not use the language/locale code. -->
      <message name="IDS_FLASH_STORAGE_URL" use_name_for_id="true">
        http://www.adobe.com/go/settmgr_storage_en
      </message>
      <message name="IDS_FLASH_GLOBAL_PRIVACY_URL" use_name_for_id="true">
        http://www.macromedia.com/support/documentation/en/flashplayer/help/settings_manager02.html
      </message>
      <message name="IDS_FLASH_WEBSITE_PRIVACY_URL" use_name_for_id="true">
        http://www.macromedia.com/support/documentation/en/flashplayer/help/settings_manager06.html
      </message>

      <message name="IDS_SYNC_UNRECOVERABLE_ERROR_HELP_URL" translateable="false">
        https://support.google.com/chrome/answer/1181420
      </message>

      <!-- The width for the "create application shortcuts" dialog in characters. -->
      <message name="IDS_CREATE_SHORTCUTS_DIALOG_WIDTH_CHARS" use_name_for_id="true">
        65
      </message>

      <if expr="is_win">
        <!-- The width of the make-default-in-metro dialog in characters. -->
        <message name="IDS_METRO_FLOW_WIDTH_CHARS" use_name_for_id="true">
          78
        </message>

        <!-- The height of the make-default-in-metro dialog in characters. -->
        <message name="IDS_METRO_FLOW_HEIGHT_LINES" use_name_for_id="true">
          26
        </message>
      </if>

      <!-- The width of the media galleries configuration dialog in characters. -->
      <message name="IDS_MEDIA_GALLERIES_DIALOG_CONTENT_WIDTH_CHARS" use_name_for_id="true">
        81
      </message>

      <if expr="chromeos">
        <!-- The width of the help-app dialog in pixels. -->
        <message name="IDS_HELP_APP_DIALOG_WIDTH_PIXELS" use_name_for_id="true">
            710
        </message>

        <!-- The height of the help-app dialog in pixels. -->
        <message name="IDS_HELP_APP_DIALOG_HEIGHT_PIXELS" use_name_for_id="true">
            400
        </message>

        <!-- The EULA credits dialog in pixels. -->
        <message name="IDS_CREDITS_APP_DIALOG_WIDTH_PIXELS" use_name_for_id="true">
            710
        </message>

        <!-- The EULA credits dialog in pixels. -->
        <message name="IDS_CREDITS_APP_DIALOG_HEIGHT_PIXELS" use_name_for_id="true">
            500
        </message>

        <message name="IDS_FACTORY_RESET_HELP_URL" translateable="false">
          https://support.google.com/chromebook/answer/183084?hl=[GRITLANGCODE]
        </message>
      </if>

      <!-- Links from the Clear Browsing Data dialog. -->
      <message name="IDS_SETTINGS_CLEAR_DATA_LEARN_MORE_URL" translateable="false">
        https://support.google.com/chrome/?p=settings_clear_browsing_data
      </message>

      <message name="IDS_SETTINGS_CLEAR_DATA_WEB_HISTORY_URL_IN_FOOTER" translateable="false">
        https://history.google.com/history/?utm_source=chrome_cbd
      </message>

      <message name="IDS_SETTINGS_CLEAR_DATA_WEB_HISTORY_URL_IN_DIALOG" translateable="false">
        https://history.google.com/history/?utm_source=chrome_n
      </message>

      <!-- Links on the History page. -->
      <message name="IDS_SETTINGS_CLEAR_DATA_WEB_HISTORY_URL_IN_HISTORY" translateable="false">
        https://history.google.com/history/?utm_source=chrome_h
      </message>

    </messages>
  </release>
</grit>
