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

<grit latest_public_release="0" current_release="1"
      source_lang_id="en" enc_check="möl">
  <outputs>
    <output filename="grit/components_strings.h" type="rc_header">
      <emit emit_type='prepend'></emit>
    </output>
    <output filename="components_strings_am.pak" type="data_package" lang="am" />
    <output filename="components_strings_ar.pak" type="data_package" lang="ar" />
    <output filename="components_strings_bg.pak" type="data_package" lang="bg" />
    <output filename="components_strings_bn.pak" type="data_package" lang="bn" />
    <output filename="components_strings_ca.pak" type="data_package" lang="ca" />
    <output filename="components_strings_cs.pak" type="data_package" lang="cs" />
    <output filename="components_strings_da.pak" type="data_package" lang="da" />
    <output filename="components_strings_de.pak" type="data_package" lang="de" />
    <output filename="components_strings_el.pak" type="data_package" lang="el" />
    <output filename="components_strings_en-GB.pak" type="data_package" lang="en-GB" />
    <output filename="components_strings_en-US.pak" type="data_package" lang="en" />
    <output filename="components_strings_es.pak" type="data_package" lang="es" />
    <if expr="is_ios">
      <!-- iOS uses es-MX for es-419 -->
      <output filename="components_strings_es-MX.pak" type="data_package" lang="es-419" />
    </if>
    <if expr="not is_ios">
      <output filename="components_strings_es-419.pak" type="data_package" lang="es-419" />
    </if>
    <output filename="components_strings_et.pak" type="data_package" lang="et" />
    <output filename="components_strings_fa.pak" type="data_package" lang="fa" />
    <output filename="components_strings_fake-bidi.pak" type="data_package" lang="fake-bidi" />
    <output filename="components_strings_fi.pak" type="data_package" lang="fi" />
    <output filename="components_strings_fil.pak" type="data_package" lang="fil" />
    <output filename="components_strings_fr.pak" type="data_package" lang="fr" />
    <output filename="components_strings_gu.pak" type="data_package" lang="gu" />
    <output filename="components_strings_he.pak" type="data_package" lang="he" />
    <output filename="components_strings_hi.pak" type="data_package" lang="hi" />
    <output filename="components_strings_hr.pak" type="data_package" lang="hr" />
    <output filename="components_strings_hu.pak" type="data_package" lang="hu" />
    <output filename="components_strings_id.pak" type="data_package" lang="id" />
    <output filename="components_strings_it.pak" type="data_package" lang="it" />
    <output filename="components_strings_ja.pak" type="data_package" lang="ja" />
    <output filename="components_strings_kn.pak" type="data_package" lang="kn" />
    <output filename="components_strings_ko.pak" type="data_package" lang="ko" />
    <output filename="components_strings_lt.pak" type="data_package" lang="lt" />
    <output filename="components_strings_lv.pak" type="data_package" lang="lv" />
    <output filename="components_strings_ml.pak" type="data_package" lang="ml" />
    <output filename="components_strings_mr.pak" type="data_package" lang="mr" />
    <output filename="components_strings_ms.pak" type="data_package" lang="ms" />
    <output filename="components_strings_nl.pak" type="data_package" lang="nl" />
    <!-- The translation console uses 'no' for Norwegian Bokmål. It should
         be 'nb'. -->
    <output filename="components_strings_nb.pak" type="data_package" lang="no" />
    <output filename="components_strings_pl.pak" type="data_package" lang="pl" />
    <if expr="is_ios">
      <!-- iOS uses pt for pt-BR -->
      <output filename="components_strings_pt.pak" type="data_package" lang="pt-BR" />
    </if>
    <if expr="not is_ios">
      <output filename="components_strings_pt-BR.pak" type="data_package" lang="pt-BR" />
    </if>
    <output filename="components_strings_pt-PT.pak" type="data_package" lang="pt-PT" />
    <output filename="components_strings_ro.pak" type="data_package" lang="ro" />
    <output filename="components_strings_ru.pak" type="data_package" lang="ru" />
    <output filename="components_strings_sk.pak" type="data_package" lang="sk" />
    <output filename="components_strings_sl.pak" type="data_package" lang="sl" />
    <output filename="components_strings_sr.pak" type="data_package" lang="sr" />
    <output filename="components_strings_sv.pak" type="data_package" lang="sv" />
    <output filename="components_strings_sw.pak" type="data_package" lang="sw" />
    <output filename="components_strings_ta.pak" type="data_package" lang="ta" />
    <output filename="components_strings_te.pak" type="data_package" lang="te" />
    <output filename="components_strings_th.pak" type="data_package" lang="th" />
    <output filename="components_strings_tr.pak" type="data_package" lang="tr" />
    <output filename="components_strings_uk.pak" type="data_package" lang="uk" />
    <output filename="components_strings_vi.pak" type="data_package" lang="vi" />
    <output filename="components_strings_zh-CN.pak" type="data_package" lang="zh-CN" />
    <output filename="components_strings_zh-TW.pak" type="data_package" lang="zh-TW" />

    <!-- On Android, output some strings into Android's xml string format.
         These strings are tagged with formatter_data="android_java" -->
    <if expr="is_android">
      <output filename="java/res/values-am/components_strings.xml" lang="am" type="android" context="android_java" />
      <output filename="java/res/values-ar/components_strings.xml" lang="ar" type="android" context="android_java" />
      <output filename="java/res/values-bg/components_strings.xml" lang="bg" type="android" context="android_java" />
      <output filename="java/res/values-ca/components_strings.xml" lang="ca" type="android" context="android_java" />
      <output filename="java/res/values-cs/components_strings.xml" lang="cs" type="android" context="android_java" />
      <output filename="java/res/values-da/components_strings.xml" lang="da" type="android" context="android_java" />
      <output filename="java/res/values-de/components_strings.xml" lang="de" type="android" context="android_java" />
      <output filename="java/res/values-el/components_strings.xml" lang="el" type="android" context="android_java" />
      <output filename="java/res/values/components_strings.xml" lang="en" type="android" context="android_java" />
      <output filename="java/res/values-en-rGB/components_strings.xml" lang="en-GB" type="android" context="android_java" />
      <output filename="java/res/values-es/components_strings.xml" lang="es" type="android" context="android_java" />
      <output filename="java/res/values-es-rUS/components_strings.xml" lang="es-419" type="android" context="android_java" />
      <output filename="java/res/values-fa/components_strings.xml" lang="fa" type="android" context="android_java" />
      <output filename="java/res/values-fi/components_strings.xml" lang="fi" type="android" context="android_java" />
      <output filename="java/res/values-tl/components_strings.xml" lang="fil" type="android" context="android_java" />
      <output filename="java/res/values-fr/components_strings.xml" lang="fr" type="android" context="android_java" />
      <output filename="java/res/values-hi/components_strings.xml" lang="hi" type="android" context="android_java" />
      <output filename="java/res/values-hr/components_strings.xml" lang="hr" type="android" context="android_java" />
      <output filename="java/res/values-hu/components_strings.xml" lang="hu" type="android" context="android_java" />
      <output filename="java/res/values-in/components_strings.xml" lang="id" type="android" context="android_java" />
      <output filename="java/res/values-it/components_strings.xml" lang="it" type="android" context="android_java" />
      <output filename="java/res/values-iw/components_strings.xml" lang="he" type="android" context="android_java" />
      <output filename="java/res/values-ja/components_strings.xml" lang="ja" type="android" context="android_java" />
      <output filename="java/res/values-ko/components_strings.xml" lang="ko" type="android" context="android_java" />
      <output filename="java/res/values-lt/components_strings.xml" lang="lt" type="android" context="android_java" />
      <output filename="java/res/values-lv/components_strings.xml" lang="lv" type="android" context="android_java" />
      <output filename="java/res/values-nl/components_strings.xml" lang="nl" type="android" context="android_java" />
      <output filename="java/res/values-nb/components_strings.xml" lang="no" type="android" context="android_java" />
      <output filename="java/res/values-pl/components_strings.xml" lang="pl" type="android" context="android_java" />
      <output filename="java/res/values-pt-rBR/components_strings.xml" lang="pt-BR" type="android" context="android_java" />
      <output filename="java/res/values-pt-rPT/components_strings.xml" lang="pt-PT" type="android" context="android_java" />
      <output filename="java/res/values-ro/components_strings.xml" lang="ro" type="android" context="android_java" />
      <output filename="java/res/values-ru/components_strings.xml" lang="ru" type="android" context="android_java" />
      <output filename="java/res/values-sk/components_strings.xml" lang="sk" type="android" context="android_java" />
      <output filename="java/res/values-sl/components_strings.xml" lang="sl" type="android" context="android_java" />
      <output filename="java/res/values-sr/components_strings.xml" lang="sr" type="android" context="android_java" />
      <output filename="java/res/values-sv/components_strings.xml" lang="sv" type="android" context="android_java" />
      <output filename="java/res/values-sw/components_strings.xml" lang="sw" type="android" context="android_java" />
      <output filename="java/res/values-th/components_strings.xml" lang="th" type="android" context="android_java" />
      <output filename="java/res/values-tr/components_strings.xml" lang="tr" type="android" context="android_java" />
      <output filename="java/res/values-uk/components_strings.xml" lang="uk" type="android" context="android_java" />
      <output filename="java/res/values-vi/components_strings.xml" lang="vi" type="android" context="android_java" />
      <output filename="java/res/values-zh-rCN/components_strings.xml" lang="zh-CN" type="android" context="android_java" />
      <output filename="java/res/values-zh/components_strings.xml" lang="zh-TW" type="android" context="android_java" />
    </if>

  </outputs>
  <translations>
    <file path="strings/components_strings_am.xtb" lang="am" />
    <file path="strings/components_strings_ar.xtb" lang="ar" />
    <file path="strings/components_strings_bg.xtb" lang="bg" />
    <file path="strings/components_strings_bn.xtb" lang="bn" />
    <file path="strings/components_strings_ca.xtb" lang="ca" />
    <file path="strings/components_strings_cs.xtb" lang="cs" />
    <file path="strings/components_strings_da.xtb" lang="da" />
    <file path="strings/components_strings_de.xtb" lang="de" />
    <file path="strings/components_strings_el.xtb" lang="el" />
    <file path="strings/components_strings_en-GB.xtb" lang="en-GB" />
    <file path="strings/components_strings_es.xtb" lang="es" />
    <file path="strings/components_strings_es-419.xtb" lang="es-419" />
    <file path="strings/components_strings_et.xtb" lang="et" />
    <file path="strings/components_strings_fa.xtb" lang="fa" />
    <file path="strings/components_strings_fi.xtb" lang="fi" />
    <file path="strings/components_strings_fil.xtb" lang="fil" />
    <file path="strings/components_strings_fr.xtb" lang="fr" />
    <file path="strings/components_strings_gu.xtb" lang="gu" />
    <file path="strings/components_strings_hi.xtb" lang="hi" />
    <file path="strings/components_strings_hr.xtb" lang="hr" />
    <file path="strings/components_strings_hu.xtb" lang="hu" />
    <file path="strings/components_strings_id.xtb" lang="id" />
    <file path="strings/components_strings_it.xtb" lang="it" />
    <!-- The translation console uses 'iw' for Hebrew, but we use 'he'. -->
    <file path="strings/components_strings_iw.xtb" lang="he" />
    <file path="strings/components_strings_ja.xtb" lang="ja" />
    <file path="strings/components_strings_kn.xtb" lang="kn" />
    <file path="strings/components_strings_ko.xtb" lang="ko" />
    <file path="strings/components_strings_lt.xtb" lang="lt" />
    <file path="strings/components_strings_lv.xtb" lang="lv" />
    <file path="strings/components_strings_ml.xtb" lang="ml" />
    <file path="strings/components_strings_mr.xtb" lang="mr" />
    <file path="strings/components_strings_ms.xtb" lang="ms" />
    <file path="strings/components_strings_nl.xtb" lang="nl" />
    <file path="strings/components_strings_no.xtb" lang="no" />
    <file path="strings/components_strings_pl.xtb" lang="pl" />
    <file path="strings/components_strings_pt-BR.xtb" lang="pt-BR" />
    <file path="strings/components_strings_pt-PT.xtb" lang="pt-PT" />
    <file path="strings/components_strings_ro.xtb" lang="ro" />
    <file path="strings/components_strings_ru.xtb" lang="ru" />
    <file path="strings/components_strings_sk.xtb" lang="sk" />
    <file path="strings/components_strings_sl.xtb" lang="sl" />
    <file path="strings/components_strings_sr.xtb" lang="sr" />
    <file path="strings/components_strings_sv.xtb" lang="sv" />
    <file path="strings/components_strings_sw.xtb" lang="sw" />
    <file path="strings/components_strings_ta.xtb" lang="ta" />
    <file path="strings/components_strings_te.xtb" lang="te" />
    <file path="strings/components_strings_th.xtb" lang="th" />
    <file path="strings/components_strings_tr.xtb" lang="tr" />
    <file path="strings/components_strings_uk.xtb" lang="uk" />
    <file path="strings/components_strings_vi.xtb" lang="vi" />
    <file path="strings/components_strings_zh-CN.xtb" lang="zh-CN" />
    <file path="strings/components_strings_zh-TW.xtb" lang="zh-TW" />
  </translations>
  <release seq="1" allow_pseudo="false">
    <messages fallback_to_english="true">
      <part file="app_modal_strings.grdp" />
      <part file="autofill_strings.grdp" />
      <part file="bookmark_bar_strings.grdp" />
      <part file="bookmark_component_strings.grdp" />
      <part file="browser_sync_strings.grdp" />
      <part file="components_settings_strings.grdp" />
      <part file="crash_strings.grdp" />
      <part file="dialog_strings.grdp" />
      <part file="dom_distiller_strings.grdp" />
      <part file="error_page_strings.grdp" />
      <part file="find_in_page_strings.grdp" />
      <part file="flags_ui_strings.grdp" />
      <part file="history_strings.grdp" />
      <part file="login_dialog_strings.grdp" />
      <part file="new_or_sad_tab_strings.grdp" />
      <part file="omnibox_strings.grdp" />
      <part file="pageinfo_strings.grdp" />
      <part file="password_manager_strings.grdp" />
      <part file="pdf_strings.grdp" />
      <part file="policy_strings.grdp" />
      <part file="security_interstitials_strings.grdp" />
      <part file="ssl_errors_strings.grdp" />
      <part file="supervised_user_error_page_strings.grdp" />
      <part file="sync_ui_strings.grdp" />
      <part file="translate_strings.grdp" />
      <part file="undo_strings.grdp" />
      <part file="version_ui_strings.grdp" />

      <!-- Generic terms -->
      <message name="IDS_CANCEL" desc="Used for Cancel on buttons">
        Cancel
      </message>
      <message name="IDS_CLOSE" desc="A generic term for Close on buttons and menus.">
        Close
      </message>
      <message name="IDS_DONE" desc="A generic term for Done on buttons and menus.">
        Done
      </message>
      <message name="IDS_LEARN_MORE" desc="Learn more text">
        Learn more
      </message>
      <message name="IDS_OK" desc="Used for OK on buttons">
        OK
      </message>
      <message name="IDS_PLUGIN_NOT_SUPPORTED" desc="The placeholder text for an unsupported plugin.">
        This plugin is not supported.
      </message>
      <if expr="not is_android">
        <if expr="not use_titlecase">
          <message name="IDS_PRINT" desc="The text label of the Print... menu item. Opens a dialog box to select print settings">
            &amp;Print...
          </message>
        </if>
        <if expr="use_titlecase">
          <message name="IDS_PRINT" desc="In Title Case: The text label of the Print... menu item. Opens a dialog box to select print settings">
            &amp;Print...
          </message>
        </if>
      </if>
      <if expr="not use_titlecase">
        <message name="IDS_RECENTLY_CLOSED" desc="The section header for the Recently Closed section of the Recent Tabs menu.">
          Recently closed
        </message>
      </if>
      <if expr="use_titlecase">
        <message name="IDS_RECENTLY_CLOSED" desc="In Title Case: The section header for the Recently Closed section of the Recent Tabs menu.">
          Recently Closed
        </message>
      </if>

      <!-- Accessibility labels for generic items -->
      <message name="IDS_ACCNAME_BACK" desc="The accessible name for the back button.">
        Back
      </message>
      <message name="IDS_ACCNAME_FORWARD" desc="The accessible name for the forward button.">
        Forward
      </message>
      <message name="IDS_ACCNAME_CLOSE" desc="The accessible name for the Close button.">
        Close
      </message>
      <message name="IDS_ACCNAME_LOCATION" desc="The accessible name for the editable-text portion of the omnibox.">
        Address and search bar
      </message>

      <message name="IDS_UTILITY_PROCESS_JSON_PARSER_NAME" desc="The name of the utility process used for parsing JSON files.">
        JSON Parser
      </message>

      <message name="IDS_SESSION_CRASHED_VIEW_RESTORE_BUTTON" desc="Title of the restore button in the session crashed view.">
        Restore
      </message>

      <!-- Website Settings UI -->
      <message name="IDS_WEBSITE_SETTINGS_NON_SECURE_TRANSPORT" desc="Text that is displayed in the header of the Website Settings popup if the website uses non-secure transport.">
        Your connection to this site is not private.
      </message>

      <!-- Advanced Section Titles -->
      <message name="IDS_OPTIONS_ADVANCED_SECTION_TITLE_PRIVACY">
        Privacy
      </message>
    </messages>
  </release>
</grit>
