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

  <if expr="is_android or is_ios">
    <message name="IDS_NTP_TITLE_NO_SUGGESTIONS" desc="On the New Tab Page, title text explaining there is no content." formatter_data="android_java">
      That’s all for now
    </message>
  </if>

  <message name="IDS_NTP_ARTICLE_SUGGESTIONS_NOT_AVAILABLE" desc="On the New Tab Page, text of a toast transiently shown to the user to indicate that no article could be fetched.">
    Articles aren't available right now
  </message>

  <if expr="use_titlecase">
    <message name="IDS_NTP_ARTICLE_SUGGESTIONS_SECTION_HEADER" desc="Header of the articles section, which is a list of news articles displayed as cards on the New Tab Page.">
      Articles for You
    </message>
  </if>

  <if expr="not use_titlecase">
    <message name="IDS_NTP_ARTICLE_SUGGESTIONS_SECTION_HEADER" desc="Header of the articles section, which is a list of news articles displayed as cards on the New Tab Page." formatter_data="android_java">
      Articles for you
    </message>
  </if>

  <if expr="use_titlecase">
    <message name="IDS_NTP_SUGGESTIONS_SECTION_HEADER" desc="Header of the suggested content section, which is a list of suggested content displayed as cards on the New Tab Page. This will replace a string 'Articles for You', which was used when the suggested content was just news articles. ">
      For You
    </message>
  </if>

  <if expr="not use_titlecase">
    <message name="IDS_NTP_SUGGESTIONS_SECTION_HEADER" desc="Header of the suggested content section, which is a list of suggested content displayed as cards on the New Tab Page. This will replace a string 'Articles for You', which was used when the suggested content was just news articles. " formatter_data="android_java">
      For you
    </message>
  </if>


  <message name="IDS_NTP_ARTICLE_SUGGESTIONS_SECTION_EMPTY" desc="On the New Tab Page, text of the card explaining to the user that they can expect to see suggested articles in this area in the future.">
    Your suggested articles appear here
  </message>

  <!-- When you change this string, please change IDS_NTP_PHYSICAL_WEB_PAGE_SUGGESTIONS_SECTION_EMPTY description accordingly. -->
  <message name="IDS_NTP_PHYSICAL_WEB_PAGE_SUGGESTIONS_SECTION_HEADER" desc="Header of the physical web section. The physical web section shows a list of physical web pages available near the user. A physical web page is a URL transmitted over bluetooth by a low power device (a beacon). The user must be at most 100 meters (generally even closer) away from the beacon to receive the URL. This allows the URL to be context based (e.g. one is at a train station and the schedule is available as a physical web page).">
    Nearby
  </message>

  <message name="IDS_NTP_PHYSICAL_WEB_PAGE_SUGGESTIONS_SECTION_EMPTY" desc="On the New Tab Page, text of the card explaining to the user that they can expect to see physical web page suggestions in this area in the future, but currently this area is empty. Connection to the physical web section header (which is currently 'Nearby') must be clear, but the words (i.e. translation of 'nearby') may differ. The physical web section shows a list of physical web pages available near the user. A physical web page is a URL transmitted over bluetooth by a low power device (a beacon). The user must be at most 100 meters (generally even closer) away from the beacon to receive the URL. This allows the URL to be context based (e.g. one is at a train station and the schedule is available as a physical web page).">
    Your nearby suggestions appear here
  </message>

  <if expr="use_titlecase">
    <message name="IDS_NTP_READING_LIST_SUGGESTIONS_SECTION_HEADER" desc="Header of the Reading List section. The Reading List section shows a list of unread pages from the Reading List.">
      Reading List
    </message>
  </if>

  <if expr="not use_titlecase">
    <message name="IDS_NTP_READING_LIST_SUGGESTIONS_SECTION_HEADER" desc="Header of the Reading List section. The Reading List section shows a list of unread pages from the Reading List.">
      Reading list
    </message>
  </if>

  <message name="IDS_NTP_READING_LIST_SUGGESTIONS_SECTION_EMPTY" desc="On the New Tab Page, text of the card explaining to the user that they can expect to see Reading List articles in this area in the future.">
    Pages from your reading list appear here
  </message>

  <message name="IDS_NTP_RECENT_TAB_SUGGESTIONS_SECTION_HEADER" desc="Header of the recent tabs section, which is a list of recent open tabs, which are currently opened and were automatically saved for offline consumption. This list is displayed as cards on the New Tab Page. The saved version is opened only if there are problems with the data connection (e.g. slow or absent).">
    Open tabs
  </message>

  <message name="IDS_NTP_RECENT_TAB_SUGGESTIONS_SECTION_EMPTY" desc="On the New Tab Page, text of the card explaining to the user that they can expect to see recent open tabs in this area in the future, but currently this area is empty. Recent open tabs - the tabs which are currently opened and were automatically saved for offline consumption.">
    Your open tabs appear here
  </message>

  <message name="IDS_NTP_NOTIFICATIONS_READ_THIS_STORY_AND_MORE" desc="Used in notifications about news articles. The notification first gives the title of a headline article, then uses this string to identify the publisher of that article and the number of additional articles available to read. Articles come in batches of 10, from a variety of publishers, so usually the number of additional articles is 9 (headline article + 9 others = 10 articles).">
    From <ph name="ARTICLE_PUBLISHER">$1<ex>World News Corporation</ex></ph>. Read this and <ph name="OTHER_ARTICLE_COUNT">$2<ex>9</ex></ph> other stories.
  </message>

</grit-part>
