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

<!-- This file contains definitions of resources that will be translated for
each locale. Specifically, these are UI strings that are used by webkit that
need to be translated for each locale.-->

<!-- Some of these strings and string descriptions were taken from
WebKit/win/WebCoreLocalizedStrings.cpp so we include the original license
below:

/*
 * Copyright (C) 2007 Apple Inc.  All rights reserved.
 *
 * Redistribution and use in source and binary forms, with or without
 * modification, are permitted provided that the following conditions
 * are met:
 * 1. Redistributions of source code must retain the above copyright
 *    notice, this list of conditions and the following disclaimer.
 * 2. Redistributions in binary form must reproduce the above copyright
 *    notice, this list of conditions and the following disclaimer in the
 *    documentation and/or other materials provided with the distribution.
 *
 * THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY
 * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
 * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL APPLE COMPUTER, INC. OR
 * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
 * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
 * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
 * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY
 * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 
 */
-->

<grit base_dir="." latest_public_release="0" current_release="1"
      source_lang_id="en" enc_check="möl">
  <outputs>
    <!-- TODO add each of your output files.  Modify the three below, and add
    your own for your various languages.  See the user's guide
    (http://wiki/Main/GritUsersGuide) for more details.
    Note that all output references are relative to the output directory
    which is specified at build time. -->
    <output filename="grit/webkit_strings.h" type="rc_header">
      <emit emit_type='prepend'></emit>
    </output>
    <!-- TODO(tony): Get rid of this .rc file. -->
    <output filename="webkit_strings_en-US.rc" type="rc_all" lang="en" />

    <output filename="webkit_strings_am.pak" type="data_package" lang="am" />
    <output filename="webkit_strings_ar.pak" type="data_package" lang="ar" />
    <if expr="pp_ifdef('use_third_party_translations')">
      <output filename="webkit_strings_ast.pak" type="data_package" lang="ast" />
    </if>
    <output filename="webkit_strings_bg.pak" type="data_package" lang="bg" />
    <output filename="webkit_strings_bn.pak" type="data_package" lang="bn" />
    <if expr="pp_ifdef('use_third_party_translations')">
      <output filename="webkit_strings_bs.pak" type="data_package" lang="bs" />
    </if>
    <output filename="webkit_strings_ca.pak" type="data_package" lang="ca" />
    <if expr="pp_ifdef('use_third_party_translations')">
      <output filename="webkit_strings_ca@valencia.pak" type="data_package" lang="ca@valencia" />
    </if>
    <output filename="webkit_strings_cs.pak" type="data_package" lang="cs" />
    <output filename="webkit_strings_da.pak" type="data_package" lang="da" />
    <output filename="webkit_strings_de.pak" type="data_package" lang="de" />
    <output filename="webkit_strings_el.pak" type="data_package" lang="el" />
    <if expr="pp_ifdef('use_third_party_translations')">
      <output filename="webkit_strings_en-AU.pak" type="data_package" lang="en-AU" />
    </if>
    <output filename="webkit_strings_en-GB.pak" type="data_package" lang="en-GB" />
    <output filename="webkit_strings_en-US.pak" type="data_package" lang="en" />
    <if expr="pp_ifdef('use_third_party_translations')">
      <output filename="webkit_strings_eo.pak" type="data_package" lang="eo" />
    </if>
    <output filename="webkit_strings_es.pak" type="data_package" lang="es" />
    <output filename="webkit_strings_es-419.pak" type="data_package" lang="es-419" />
    <output filename="webkit_strings_et.pak" type="data_package" lang="et" />
    <if expr="pp_ifdef('use_third_party_translations')">
      <output filename="webkit_strings_eu.pak" type="data_package" lang="eu" />
    </if>
    <output filename="webkit_strings_fa.pak" type="data_package" lang="fa" />
    <output filename="webkit_strings_fake-bidi.pak" type="data_package" lang="fake-bidi" />
    <output filename="webkit_strings_fi.pak" type="data_package" lang="fi" />
    <output filename="webkit_strings_fil.pak" type="data_package" lang="fil" />
    <output filename="webkit_strings_fr.pak" type="data_package" lang="fr" />
    <if expr="pp_ifdef('use_third_party_translations')">
      <output filename="webkit_strings_gl.pak" type="data_package" lang="gl" />
    </if>
    <output filename="webkit_strings_gu.pak" type="data_package" lang="gu" />
    <output filename="webkit_strings_he.pak" type="data_package" lang="he" />
    <output filename="webkit_strings_hi.pak" type="data_package" lang="hi" />
    <output filename="webkit_strings_hr.pak" type="data_package" lang="hr" />
    <output filename="webkit_strings_hu.pak" type="data_package" lang="hu" />
    <if expr="pp_ifdef('use_third_party_translations')">
      <output filename="webkit_strings_hy.pak" type="data_package" lang="hy" />
      <output filename="webkit_strings_ia.pak" type="data_package" lang="ia" />
    </if>
    <output filename="webkit_strings_id.pak" type="data_package" lang="id" />
    <output filename="webkit_strings_it.pak" type="data_package" lang="it" />
    <output filename="webkit_strings_ja.pak" type="data_package" lang="ja" />
    <if expr="pp_ifdef('use_third_party_translations')">
      <output filename="webkit_strings_ka.pak" type="data_package" lang="ka" />
    </if>
    <output filename="webkit_strings_kn.pak" type="data_package" lang="kn" />
    <output filename="webkit_strings_ko.pak" type="data_package" lang="ko" />
    <if expr="pp_ifdef('use_third_party_translations')">
      <output filename="webkit_strings_ku.pak" type="data_package" lang="ku" />
      <output filename="webkit_strings_kw.pak" type="data_package" lang="kw" />
    </if>
    <output filename="webkit_strings_lt.pak" type="data_package" lang="lt" />
    <output filename="webkit_strings_lv.pak" type="data_package" lang="lv" />
    <output filename="webkit_strings_ml.pak" type="data_package" lang="ml" />
    <output filename="webkit_strings_mr.pak" type="data_package" lang="mr" />
    <output filename="webkit_strings_ms.pak" type="data_package" lang="ms" />
    <output filename="webkit_strings_nl.pak" type="data_package" lang="nl" />
    <!-- The translation console uses 'no' for Norwegian Bokmål. It should
         be 'nb'. -->
    <output filename="webkit_strings_nb.pak" type="data_package" lang="no" />
    <output filename="webkit_strings_pl.pak" type="data_package" lang="pl" />
    <output filename="webkit_strings_pt-BR.pak" type="data_package" lang="pt-BR" />
    <output filename="webkit_strings_pt-PT.pak" type="data_package" lang="pt-PT" />
    <output filename="webkit_strings_ro.pak" type="data_package" lang="ro" />
    <output filename="webkit_strings_ru.pak" type="data_package" lang="ru" />
    <output filename="webkit_strings_sk.pak" type="data_package" lang="sk" />
    <output filename="webkit_strings_sl.pak" type="data_package" lang="sl" />
    <output filename="webkit_strings_sr.pak" type="data_package" lang="sr" />
    <output filename="webkit_strings_sv.pak" type="data_package" lang="sv" />
    <output filename="webkit_strings_sw.pak" type="data_package" lang="sw" />
    <output filename="webkit_strings_ta.pak" type="data_package" lang="ta" />
    <output filename="webkit_strings_te.pak" type="data_package" lang="te" />
    <output filename="webkit_strings_th.pak" type="data_package" lang="th" />
    <output filename="webkit_strings_tr.pak" type="data_package" lang="tr" />
    <if expr="pp_ifdef('use_third_party_translations')">
      <output filename="webkit_strings_ug.pak" type="data_package" lang="ug" />
    </if>
    <output filename="webkit_strings_uk.pak" type="data_package" lang="uk" />
    <output filename="webkit_strings_vi.pak" type="data_package" lang="vi" />
    <output filename="webkit_strings_zh-CN.pak" type="data_package" lang="zh-CN" />
    <output filename="webkit_strings_zh-TW.pak" type="data_package" lang="zh-TW" />
  </outputs>
  <translations>
    <file path="resources/webkit_strings_am.xtb" lang="am" />
    <file path="resources/webkit_strings_ar.xtb" lang="ar" />
    <if expr="pp_ifdef('use_third_party_translations')">
      <file path="../../third_party/launchpad_translations/webkit_strings_ast.xtb" lang="ast" />
    </if>
    <file path="resources/webkit_strings_bg.xtb" lang="bg" />
    <file path="resources/webkit_strings_bn.xtb" lang="bn" />
    <if expr="pp_ifdef('use_third_party_translations')">
      <file path="../../third_party/launchpad_translations/webkit_strings_bs.xtb" lang="bs" />
    </if>
    <file path="resources/webkit_strings_ca.xtb" lang="ca" />
    <if expr="pp_ifdef('use_third_party_translations')">
      <file path="../../third_party/launchpad_translations/webkit_strings_ca-valencia.xtb" lang="ca@valencia" />
    </if>
    <file path="resources/webkit_strings_cs.xtb" lang="cs" />
    <file path="resources/webkit_strings_da.xtb" lang="da" />
    <file path="resources/webkit_strings_de.xtb" lang="de" />
    <file path="resources/webkit_strings_el.xtb" lang="el" />
    <if expr="pp_ifdef('use_third_party_translations')">
      <file path="../../third_party/launchpad_translations/webkit_strings_en-AU.xtb" lang="en-AU" />
    </if>
    <file path="resources/webkit_strings_en-GB.xtb" lang="en-GB" />
    <file path="resources/webkit_strings_es.xtb" lang="es" />
    <file path="resources/webkit_strings_es-419.xtb" lang="es-419" />
    <file path="resources/webkit_strings_et.xtb" lang="et" />
    <if expr="pp_ifdef('use_third_party_translations')">
      <file path="../../third_party/launchpad_translations/webkit_strings_eu.xtb" lang="eu" />
    </if>
    <file path="resources/webkit_strings_fa.xtb" lang="fa" />
    <file path="resources/webkit_strings_fi.xtb" lang="fi" />
    <file path="resources/webkit_strings_fil.xtb" lang="fil" />
    <file path="resources/webkit_strings_fr.xtb" lang="fr" />
    <if expr="pp_ifdef('use_third_party_translations')">
      <file path="../../third_party/launchpad_translations/webkit_strings_gl.xtb" lang="gl" />
    </if>
    <file path="resources/webkit_strings_gu.xtb" lang="gu" />
    <file path="resources/webkit_strings_hi.xtb" lang="hi" />
    <file path="resources/webkit_strings_hr.xtb" lang="hr" />
    <file path="resources/webkit_strings_hu.xtb" lang="hu" />
    <if expr="pp_ifdef('use_third_party_translations')">
      <file path="../../third_party/launchpad_translations/webkit_strings_hy.xtb" lang="hy" />
    </if>
    <file path="resources/webkit_strings_id.xtb" lang="id" />
    <file path="resources/webkit_strings_it.xtb" lang="it" />
    <!-- The translation console uses 'iw' for Hebrew, but we use 'he'. -->
    <file path="resources/webkit_strings_iw.xtb" lang="he" />
    <file path="resources/webkit_strings_ja.xtb" lang="ja" />
    <if expr="pp_ifdef('use_third_party_translations')">
      <file path="../../third_party/launchpad_translations/webkit_strings_ka.xtb" lang="ka" />
    </if>
    <file path="resources/webkit_strings_kn.xtb" lang="kn" />
    <file path="resources/webkit_strings_ko.xtb" lang="ko" />
    <if expr="pp_ifdef('use_third_party_translations')">
      <file path="../../third_party/launchpad_translations/webkit_strings_ku.xtb" lang="ku" />
      <file path="../../third_party/launchpad_translations/webkit_strings_kw.xtb" lang="kw" />
    </if>
    <file path="resources/webkit_strings_lt.xtb" lang="lt" />
    <file path="resources/webkit_strings_lv.xtb" lang="lv" />
    <file path="resources/webkit_strings_ml.xtb" lang="ml" />
    <file path="resources/webkit_strings_mr.xtb" lang="mr" />
    <file path="resources/webkit_strings_ms.xtb" lang="ms" />
    <file path="resources/webkit_strings_nl.xtb" lang="nl" />
    <file path="resources/webkit_strings_no.xtb" lang="no" />
    <file path="resources/webkit_strings_pl.xtb" lang="pl" />
    <file path="resources/webkit_strings_pt-BR.xtb" lang="pt-BR" />
    <file path="resources/webkit_strings_pt-PT.xtb" lang="pt-PT" />
    <file path="resources/webkit_strings_ro.xtb" lang="ro" />
    <file path="resources/webkit_strings_ru.xtb" lang="ru" />
    <file path="resources/webkit_strings_sk.xtb" lang="sk" />
    <file path="resources/webkit_strings_sl.xtb" lang="sl" />
    <file path="resources/webkit_strings_sr.xtb" lang="sr" />
    <file path="resources/webkit_strings_sv.xtb" lang="sv" />
    <file path="resources/webkit_strings_sw.xtb" lang="sw" />
    <file path="resources/webkit_strings_ta.xtb" lang="ta" />
    <file path="resources/webkit_strings_te.xtb" lang="te" />
    <file path="resources/webkit_strings_th.xtb" lang="th" />
    <file path="resources/webkit_strings_tr.xtb" lang="tr" />
    <if expr="pp_ifdef('use_third_party_translations')">
      <file path="../../third_party/launchpad_translations/webkit_strings_ug.xtb" lang="ug" />
    </if>
    <file path="resources/webkit_strings_uk.xtb" lang="uk" />
    <file path="resources/webkit_strings_vi.xtb" lang="vi" />
    <file path="resources/webkit_strings_zh-CN.xtb" lang="zh-CN" />
    <file path="resources/webkit_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. -->

      <message name="IDS_DETAILS_WITHOUT_SUMMARY_LABEL" desc="Clickable label to show detailed information or to hide the detailed information.">
        Details
      </message>
      <message name="IDS_SEARCHABLE_INDEX_INTRO" desc="Text that appears at the start of nearly-obsolete webpages in the form of a 'searchable index'.">
        This is a searchable index. Enter search keywords: '''
      </message>
      <message name="IDS_FORM_CALENDAR_CLEAR" desc="Label for a button which clears a date input field.">
        Clear
      </message>
      <message name="IDS_FORM_CALENDAR_TODAY" desc="Label for a button which sets today to a date input field.">
        Today
      </message>
      <message name="IDS_FORM_DATE_FORMAT_DAY_IN_MONTH" desc="Short word to indicate which is the day-in-month part in a date format. e.g. 'Day' in 'Month/Day/Year'">
        Day
      </message>
      <message name="IDS_FORM_DATE_FORMAT_MONTH" desc="Short word to indicate which is the month part in a date format. e.g. 'Month' in 'Month/Day/Year'">
        Month
      </message>
      <message name="IDS_FORM_DATE_FORMAT_YEAR" desc="Short word to indicate which is the year part in a date format. e.g. 'Year' in 'Month/Day/Year'">
        Year
      </message>
      <message name="IDS_FORM_SUBMIT_LABEL" desc="Default label for Submit buttons in forms on webpages.">
        Submit
      </message>
      <message name="IDS_FORM_INPUT_ALT" desc="alt text for &lt;input&gt; elements with no alt, title, or value">
        Submit
      </message>
      <message name="IDS_FORM_RESET_LABEL" desc="default label for Reset buttons in forms on webpages">
        Reset
      </message>
      <message name="IDS_FORM_FILE_BUTTON_LABEL" desc="title for a single file chooser button used in HTML forms">
        Choose File
      </message>
      <message name="IDS_FORM_MULTIPLE_FILES_BUTTON_LABEL" desc="title for a multiple file chooser button used in HTML forms. This title should be as short as possible.">
        Choose Files
      </message>
      <message name="IDS_FORM_FILE_NO_FILE_LABEL" desc="text to display in file button used in HTML forms when no file is selected">
        No file chosen
      </message>
      <message name="IDS_FORM_FILE_NO_FILE_DRAG_LABEL" desc="text to display in file button used in HTML forms when no file is selected to indicate that files can be dragged onto the file button">
        Drag file here
      </message>
      <message name="IDS_FORM_FILE_MULTIPLE_UPLOAD" desc="text to display next to file buttons in HTML forms when 2 or more files are selected for uploading. This is not used for a case that just 1 file is selected.">
        <ph name="NUMBER_OF_FILES">$1<ex>3</ex></ph> files
      </message>
      <message name="IDS_FORM_OTHER_COLOR_LABEL" desc="Label for button that opens a full color chooser so the user can choose colors other than the ones in the list.">
        Other...
      </message>
      <message name="IDS_FORM_OTHER_DATE_LABEL" desc="Label for button that opens a full calendar picker so the user can choose dates other than the ones in the list." meaning="for date label">
        Other...
      </message>
      <message name="IDS_FORM_OTHER_MONTH_LABEL" desc="Label for button that opens a full month picker so the user can choose dates other than the ones in the list." meaning="for month label">
        Other...
      </message>
      <message name="IDS_FORM_OTHER_TIME_LABEL" desc="Label for button that opens a full time picker so the user can choose dates other than the ones in the list." meaning="for time label">
        Other...
      </message>
      <message name="IDS_FORM_OTHER_WEEK_LABEL" desc="Label for button that opens a full week picker so the user can choose dates other than the ones in the list." meaning="for week label">
        Other...
      </message>
      <message name="IDS_FORM_PLACEHOLDER_FOR_DAY_OF_MONTH_FIELD" desc="Text for denoting day of month field position in date format. Short text is prefered. See http://crbug.com/152632 for samples.">
        dd
      </message>
      <message name="IDS_FORM_PLACEHOLDER_FOR_MONTH_FIELD" desc="Text for denoting month field position in date format. Short text is prefered. See http://crbug.com/152632 for samples.">
        mm
      </message>
      <message name="IDS_FORM_PLACEHOLDER_FOR_YEAR_FIELD" desc="Text for denoting day of month field position in date format. Short text is prefered. See http://crbug.com/152632 for samples.">
        yyyy
      </message>
      <message name="IDS_FORM_THIS_MONTH_LABEL" desc="Label for button in month picker to select this month.">
        This month
      </message>
      <message name="IDS_FORM_THIS_WEEK_LABEL" desc="Label for button in week picker to select this week.">
        This week
      </message>
      <message name="IDS_FORM_WEEK_NUMBER_LABEL" desc="Label for week number column in a calendar.">
        Week
      </message>

      <message name="IDS_RECENT_SEARCHES_NONE" desc="Label for only item in menu that appears when clicking on the search field image, when no searches have been performed">
        No recent searches
      </message>
      <message name="IDS_RECENT_SEARCHES" desc="label for first item in the menu that appears when clicking on the search field image, used as embedded menu title">
        Recent Searches
      </message>
      <message name="IDS_RECENT_SEARCHES_CLEAR" desc="menu item in Recent Searches menu that empties menu's contents">
        Clear Recent Searches
      </message>

      <message name="IDS_IMAGE_TITLE_FOR_FILENAME" desc="window title for a standalone image (uses mutiplication symbol, not x)">
        <ph name="FILENAME">%s<ex>My Cool Image.gif</ex></ph><ph name="WIDTH">%d<ex>400</ex></ph>×<ph name="HEIGHT">%d<ex>600</ex></ph>
      </message>

      <message name="IDS_AX_ROLE_WEB_AREA" desc="accessibility role description for web area">
        HTML content
      </message>
      <message name="IDS_AX_ROLE_LINK" desc="accessibility role description for link">
        link
      </message>
      <message name="IDS_AX_ROLE_LIST_MARKER" desc="accessibility role description for list marker">
        list marker
      </message>
      <message name="IDS_AX_ROLE_IMAGE_MAP" desc="accessibility role description for image map">
        image map
      </message>
      <message name="IDS_AX_ROLE_HEADING" desc="accessibility role description for headings">
        heading
      </message>
      <message name="IDS_AX_ROLE_FOOTER" desc="accessibility role description for footers">
        footer
      </message>
      <message name="IDS_AX_ROLE_STEPPER" desc="accessibility role description for a stepper - a control where you can use up/down arrows to increment or decrement it. The name 'stepper' is how this user interface element is described by VoiceOver on Mac OS X; the translation should be consistent with VoiceOver.">
        stepper
      </message>

      <message name="IDS_AX_BUTTON_ACTION_VERB" desc="Verb stating the action that will occur when a button is pressed, as used by accessibility.">
        press
      </message>
      <message name="IDS_AX_RADIO_BUTTON_ACTION_VERB" desc="Verb stating the action that will occur when a radio button is clicked, as used by accessibility.">
        select
      </message>
      <message name="IDS_AX_TEXT_FIELD_ACTION_VERB" desc="Verb stating the action that will occur when a text field is selected, as used by accessibility.">
        activate
      </message>
      <message name="IDS_AX_CHECKED_CHECK_BOX_ACTION_VERB" desc="Verb stating the action that will occur when a checked checkbox is clicked, as used by accessibility.">
        uncheck
      </message>
      <message name="IDS_AX_UNCHECKED_CHECK_BOX_ACTION_VERB" desc="Verb stating the action that will occur when an unchecked checkbox is clicked, as used by accessibility.">
        check
      </message>
      <message name="IDS_AX_LINK_ACTION_VERB" desc="Verb stating the action that will occur when a link is clicked, as used by accessibility.">
        jump
      </message>

      <message name="IDS_AX_AM_PM_FIELD_TEXT" desc="Accessible description of the AM/PM field in a date/time control">
        AM/PM
      </message>

      <message name="IDS_AX_DAY_OF_MONTH_FIELD_TEXT" desc="Accessible description of the day of month field in a date/time control">
        Day
      </message>

      <message name="IDS_AX_DATE_TIME_FIELD_EMPTY_VALUE_TEXT" desc="Accessible description of empty value of field in a date/time control">
        blank
      </message>

      <message name="IDS_AX_HOUR_FIELD_TEXT" desc="Accessible description of the hour field in a date/time control">
        Hours
      </message>

      <message name="IDS_AX_MEDIA_DEFAULT" desc="Accessible description of a media control.">
        media control
      </message>

      <message name="IDS_AX_MEDIA_AUDIO_ELEMENT" desc="Accessible description of audio">
        audio
      </message>

      <message name="IDS_AX_MEDIA_VIDEO_ELEMENT" desc="Accessible description of video">
        video
      </message>

      <message name="IDS_AX_MEDIA_MUTE_BUTTON" desc="accessibility role description for mute button">
        mute
      </message>

      <message name="IDS_AX_MEDIA_UNMUTE_BUTTON" desc="accessibility role description for turn mute off button">
        unmute
      </message>

      <message name="IDS_AX_MEDIA_PLAY_BUTTON" desc="accessibility role description for play button">
        play
      </message>

      <message name="IDS_AX_MEDIA_PAUSE_BUTTON" desc="accessibility role description for pause button">
        pause
      </message>

      <message name="IDS_AX_MEDIA_SLIDER" desc="accessibility role description for timeline slider">
        movie time
      </message>

      <message name="IDS_AX_MEDIA_SLIDER_THUMB" desc="accessibility role description for timeline thumb">
        movie timeline thumb
      </message>

      <message name="IDS_AX_MEDIA_REWIND_BUTTON" desc="accessibility role description for seek back 30 seconds button">
        back 30 seconds
      </message>

      <message name="IDS_AX_MEDIA_RETURN_TO_REALTIME_BUTTON" desc="accessibility role description for return to real time button">
        return to real time
      </message>

      <message name="IDS_AX_MEDIA_CURRENT_TIME_DISPLAY" desc="accessibility role description for elapsed time display">
        elapsed time
      </message>

      <message name="IDS_AX_MEDIA_TIME_REMAINING_DISPLAY" desc="accessibility role description for time remaining display">
        remaining time
      </message>

      <message name="IDS_AX_MEDIA_STATUS_DISPLAY" desc="accessibility role description for movie status">
        status
      </message>

      <message name="IDS_AX_MEDIA_ENTER_FULL_SCREEN_BUTTON" desc="accessibility role description for enter fullscreen button">
        enter full screen
      </message>

      <message name="IDS_AX_MEDIA_EXIT_FULL_SCREEN_BUTTON" desc="accessibility role description for exit fullscreen button">
        exit full screen
      </message>

      <message name="IDS_AX_MEDIA_SEEK_FORWARD_BUTTON" desc="accessibility role description for fast forward button">
        fast forward
      </message>

      <message name="IDS_AX_MEDIA_SEEK_BACK_BUTTON" desc="accessibility role description for fast reverse button">
        fast reverse
      </message>

      <message name="IDS_AX_MEDIA_SHOW_CLOSED_CAPTIONS_BUTTON" desc="accessibility role description for show closed captions button">
        show closed captions
      </message>

      <message name="IDS_AX_MEDIA_HIDE_CLOSED_CAPTIONS_BUTTON" desc="accessibility role description for hide closed captions button">
        hide closed captions
      </message>

      <message name="IDS_AX_MEDIA_AUDIO_ELEMENT_HELP" desc="Accessible help of audio controls">
        audio
      </message>

      <message name="IDS_AX_MEDIA_VIDEO_ELEMENT_HELP" desc="Accessible help of video">
        video
      </message>

      <message name="IDS_AX_MEDIA_MUTE_BUTTON_HELP" desc="accessibility help description for mute button">
        mute audio track
      </message>

      <message name="IDS_AX_MEDIA_UNMUTE_BUTTON_HELP" desc="accessibility help description for turn mute off button">
        unmute audio track
      </message>

      <message name="IDS_AX_MEDIA_PLAY_BUTTON_HELP" desc="accessibility help description for play button">
        begin playback
      </message>

      <message name="IDS_AX_MEDIA_PAUSE_BUTTON_HELP" desc="accessibility help description for pause button">
        pause playback
      </message>

      <message name="IDS_AX_MEDIA_SLIDER_HELP" desc="accessibility help description for timeline slider">
        movie time scrubber
      </message>

      <message name="IDS_AX_MEDIA_SLIDER_THUMB_HELP" desc="accessibility help description for timeline thumb">
        movie time scrubber thumb
      </message>

      <message name="IDS_AX_MEDIA_REWIND_BUTTON_HELP" desc="accessibility help description for seek back 30 seconds button">
        seek movie back 30 seconds
      </message>

      <message name="IDS_AX_MEDIA_RETURN_TO_REALTIME_BUTTON_HELP" desc="accessibility help description for return to real time button">
        return streaming movie to real time
      </message>

      <message name="IDS_AX_MEDIA_CURRENT_TIME_DISPLAY_HELP" desc="accessibility help description for elapsed time display">
        current time in seconds
      </message>

      <message name="IDS_AX_MEDIA_TIME_REMAINING_DISPLAY_HELP" desc="accessibility help description for time remaining display">
        number of seconds ofmovie remaining
      </message>

      <message name="IDS_AX_MEDIA_STATUS_DISPLAY_HELP" desc="accessibility help description for movie status">
        current movie status
      </message>

      <message name="IDS_AX_MEDIA_ENTER_FULL_SCREEN_BUTTON_HELP" desc="accessibility help description for enter fullscreen button">
        play movie in full screen mode
      </message>

      <message name="IDS_AX_MEDIA_EXIT_FULL_SCREEN_BUTTON_HELP" desc="accessibility help description for exit fullscreen button">
        exit full screen
      </message>

      <message name="IDS_AX_MEDIA_SEEK_FORWARD_BUTTON_HELP" desc="accessibility help description for fast forward button">
        seek quickly forward
      </message>

      <message name="IDS_AX_MEDIA_SEEK_BACK_BUTTON_HELP" desc="accessibility help description for fast reverse button">
        seek quickly back
      </message>

      <message name="IDS_AX_MEDIA_SHOW_CLOSED_CAPTIONS_BUTTON_HELP" desc="accessibility help description for show closed captions button">
        start displaying closed captions
      </message>

      <message name="IDS_AX_MEDIA_HIDE_CLOSED_CAPTIONS_BUTTON_HELP" desc="accessibility help description for hide closed captions button">
        stop displaying closed captions
      </message>

      <message name="IDS_AX_MILLISECOND_FIELD_TEXT" desc="Accessible description of the millisecond field in a date/time control">
        Milliseconds
      </message>

      <message name="IDS_AX_MINUTE_FIELD_TEXT" desc="Accessible description of the minute field in a date/time control">
        Minutes
      </message>

      <message name="IDS_AX_MONTH_FIELD_TEXT" desc="Accessible description of the month field in a date/time control">
        Month
      </message>

      <message name="IDS_AX_SECOND_FIELD_TEXT" desc="Accessible description of the second field in a date/time control">
        Seconds
      </message>

      <message name="IDS_AX_WEEK_OF_YEAR_FIELD_TEXT" desc="Accessible description of the week of year field in a date/time control">
        Week
      </message>

      <message name="IDS_AX_YEAR_FIELD_TEXT" desc="Accessible description of the year field in a date/time control">
        Year
      </message>

      <message name="IDS_KEYGEN_HIGH_GRADE_KEY" desc="High-grade cryptographic key size menu item">
        2048 (High Grade)
      </message>
      <message name="IDS_KEYGEN_MED_GRADE_KEY" desc="Medium-grade cryptographic key size menu item">
        1024 (Medium Grade)
      </message>

      <message name="IDS_FORM_INPUT_WEEK_TEMPLATE" desc="A specfic week (1-53) in a specific year shown in a form control">
        Week <ph name="WEEKNUMBER">$2<ex>51</ex></ph>, <ph name="YEAR">$1<ex>2012</ex></ph>
      </message>
      <message name="IDS_FORM_VALIDATION_VALUE_MISSING_MULTIPLE_FILE" desc="Heading or short sentence shown when a file upload control in a webpage requires one or more files selected, but the user didn't specify any files.">
        Please select one or more files.
      </message>
      <message name="IDS_FORM_VALIDATION_TYPE_MISMATCH" desc="Heading or short sentence shown when a form control in a webpage requires specific type such as email address or URL, but the specified value does not comform to the type.">
        Invalid value.
      </message>
      <message name="IDS_FORM_VALIDATION_TYPE_MISMATCH_EMAIL_EMPTY" desc="Heading or short sentence shown when there is an email field in a form and a user specified an empty value.">
        Please enter a non-empty email address.
      </message>
      <message name="IDS_FORM_VALIDATION_TYPE_MISMATCH_EMAIL_EMPTY_DOMAIN" desc="Heading or short sentence shown when there is an email field in a form and a user specified an invalid value like 'user@'.">
        Please enter a part following '<ph name="ATSIGN">$1<ex>@</ex></ph>'. '<ph name="INVALIDADDRESS">$2<ex>user@</ex></ph>' is incomplete.
      </message>
      <message name="IDS_FORM_VALIDATION_TYPE_MISMATCH_EMAIL_EMPTY_LOCAL" desc="Heading or short sentence shown when there is an email field in a form and a user specified an invalid value like '@example.com'.">
        Please enter a part followed by '<ph name="ATSIGN">$1<ex>@</ex></ph>'. '<ph name="INVALIDADDRESS">$2<ex>@example.com</ex></ph>' is incomplete.
      </message>
      <message name="IDS_FORM_VALIDATION_TYPE_MISMATCH_EMAIL_INVALID_DOMAIN" desc="Heading or short sentence shown when there is an email field in a form and a user specified an invalid value like 'user@example,com'.">
        A part following '<ph name="ATSIGN">$1<ex>@</ex></ph>' should not contain the symbol '<ph name="INVALIDCHARACTER">$2<ex>,</ex></ph>'.
      </message>
      <message name="IDS_FORM_VALIDATION_TYPE_MISMATCH_EMAIL_INVALID_DOTS" desc="Heading or short sentence shown when there is an email field in a form and a user specified an invalid value with wrong dots like 'user@example..com'.">
        '<ph name="DOT">$1<ex>.</ex></ph>' is used at a wrong position in '<ph name="INVALIDDOMAIN">$2<ex>example..com</ex></ph>'.
      </message>
      <message name="IDS_FORM_VALIDATION_TYPE_MISMATCH_EMAIL_INVALID_LOCAL" desc="Heading or short sentence shown when there is an email field in a form and a user specified an invalid value like 'us,er@example.com'.">
        A part followed by '<ph name="ATSIGN">$1<ex>@</ex></ph>' should not contain the symbol '<ph name="INVALIDCHARACTER">$2<ex>,</ex></ph>'.
      </message>
      <message name="IDS_FORM_VALIDATION_TYPE_MISMATCH_EMAIL_NO_AT_SIGN" desc="Heading or short sentence shown when there is an email field in a form and a user specified an invalid value liek 'user'.">
        Please include an '<ph name="ATSIGN">$1<ex>@</ex></ph>' in the email address. '<ph name="INVALIDADDRESS">$2<ex>user</ex></ph>' is missing an '<ph name="ATSIGN">$1<ex>@</ex></ph>'.
      </message>
      <message name="IDS_FORM_VALIDATION_TYPE_MISMATCH_MULTIPLE_EMAIL" desc="Heading or short sentence shown there is a field which accepts multiple e-mail addresses and a user specified a value which is not a comma-separated e-mail addresses.">
        Please enter a comma separated list of email addresses.
      </message>
      <message name="IDS_FORM_VALIDATION_RANGE_UNDERFLOW" desc="Heading or short sentence shown when a form control value in a webpage needs to be larger than or equal to a minimum value specified by the page author, but a user specified a too small value.">
        Value must be greater than or equal to <ph name="MINIMUM">$1<ex>0</ex></ph>.
      </message>
      <message name="IDS_FORM_VALIDATION_RANGE_UNDERFLOW_DATETIME" desc="Heading or short sentence shown when a form control value in a webpage needs to be later or equal to a minimum date/time value specified by the page author, but a user specified an earlier date/time.">
        Value must be <ph name="MINIMUM_DATE_OR_TIME">$1<ex>01/04/2013</ex></ph> or later.
      </message>
      <message name="IDS_FORM_VALIDATION_RANGE_OVERFLOW" desc="Heading or short sentence shown when a form control value in a webpage needs to be smaller than or equal to a maximum value specified by the page author, but a user specified a too large value.">
        Value must be less than or equal to <ph name="MAXIMUM">$1<ex>100</ex></ph>.
      </message>
      <message name="IDS_FORM_VALIDATION_RANGE_OVERFLOW_DATETIME" desc="Heading or short sentence shown when a form control value in a webpage needs to be earlier than or equal to a maximum date/time value specified by the page author, but a user specified a later date/time.">
        Value must be <ph name="MAXIMUM_DATE_OR_TIME">$1<ex>12/31/2013</ex></ph> or earlier.
      </message>
      <message name="IDS_FORM_VALIDATION_BAD_INPUT_DATETIME" desc="Heading or short sentence shown when a user specified an incomplete value or an invalid date (such as 02/31/2012) to a date/time form control in a webpage.">
	Please enter a valid value. The field is incomplete or has an invalid date.
      </message>
      <message name="IDS_FORM_VALIDATION_BAD_INPUT_NUMBER" desc="Heading or short sentence shown when a user entered a non-number string to a number field in a webpage.">
	Please enter a number.
      </message>

<!-- The following IDS_FORM_VALIDATION_* messages were taken from Mozilla's dom.properties file.

# ***** BEGIN LICENSE BLOCK *****
# Version: MPL 1.1/GPL 2.0/LGPL 2.1
#
# The contents of this file are subject to the Mozilla Public License Version
# 1.1 (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
# http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
# for the specific language governing rights and limitations under the
# License.
#
# The Original Code is mozilla.org code.
#
# The Initial Developer of the Original Code is
# Netscape Communications Corporation.
# Portions created by the Initial Developer are Copyright (C) 2001
# the Initial Developer. All Rights Reserved.
#
# Contributor(s):
#   Mitch <mstoltz@netscape.com> (original author)
#   Ehsan Akhgari <ehsan.akhgari@gmail.com>
#
# Alternatively, the contents of this file may be used under the terms of
# either of the GNU General Public License Version 2 or later (the "GPL"),
# or the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
# in which case the provisions of the GPL or the LGPL are applicable instead
# of those above. If you wish to allow use of your version of this file only
# under the terms of either the GPL or the LGPL, and not to allow others to
# use your version of this file under the terms of the MPL, indicate your
# decision by deleting the provisions above and replace them with the notice
# and other provisions required by the GPL or the LGPL. If you do not delete
# the provisions above, a recipient may use your version of this file under
# the terms of any one of the MPL, the GPL or the LGPL.
#
# ***** END LICENSE BLOCK *****
-->
      <message name="IDS_FORM_VALIDATION_VALUE_MISSING" desc="Heading or short sentence shown when a text form control in a webpage requires a value, but the user didn't specify any value.">
        Please fill out this field.
      </message>
      <message name="IDS_FORM_VALIDATION_VALUE_MISSING_CHECKBOX" desc="Heading or short sentence shown when a checkbox control in a webpage must be checked, but the user didn't check it.">
        Please check this box if you want to proceed.
      </message>
      <message name="IDS_FORM_VALIDATION_VALUE_MISSING_FILE" desc="Heading or short sentence shown when a file upload control in a webpage requires a file selected, but the user didn't specify any file.">
        Please select a file.
      </message>
      <message name="IDS_FORM_VALIDATION_VALUE_MISSING_RADIO" desc="Heading or short sentence shown when a radio button of a radio button group in a webpage must be selected, but the user selected nothing.">
        Please select one of these options.
      </message>
      <message name="IDS_FORM_VALIDATION_VALUE_MISSING_SELECT" desc="Heading or short sentence shown when a value of a menu-list control in a webpage must be selected, but the user selected nothing.">
        Please select an item in the list.
      </message>
      <message name="IDS_FORM_VALIDATION_TYPE_MISMATCH_EMAIL" desc="Heading or short sentence shown when there is an email field in a form and a user specified a value which doesn't look like an e-mail address.">
        Please enter an email address.
      </message>
      <message name="IDS_FORM_VALIDATION_TYPE_MISMATCH_URL" desc="Heading or short sentence shown when there is a URL field in a form and a user specified a value which doesn't look like a URL.">
        Please enter a URL.
      </message>
      <message name="IDS_FORM_VALIDATION_PATTERN_MISMATCH" desc="Heading or short sentence shown when a form control value needs to satisfy a pattern specified by the page author, but a user specified unmatched value.">
        Please match the requested format.
      </message>
      <message name="IDS_FORM_VALIDATION_STEP_MISMATCH" desc="Heading or short sentence shown when a form control value in a webpage should be aligned to a step value specified by the page author, but a user speficified non-aligned value. e.g. A number type field, minimum value is 0, and step value is 4. If A user-specified value is not a multiple of 4, this warning message is shown.">
        Please enter a valid value. The two nearest valid values are <ph name="VALID_VALUE_LOW">$1<ex>4</ex></ph> and <ph name="VALID_VALUE_HIGHER">$2<ex>8</ex></ph>.
      </message>
      <message name="IDS_FORM_VALIDATION_STEP_MISMATCH_CLOSE_TO_LIMIT" desc="Heading or short sentence shown when a form control value in a webpage should be aligned to a step value specified by the page author, but a user speficified non-aligned value. e.g. A number type field, minimum value is 0, and step value is 4. If A user-specified value is not a multiple of 4, this warning message is shown.">
        Please enter a valid value. The nearest valid value is <ph name="VALID_VALUE">$1<ex>0</ex></ph>.
      </message>
      <message name="IDS_FORM_VALIDATION_TOO_LONG" desc="Heading or short sentence shown when a form control in a webpage needs to be shorter than a length specified by the page author, but a user specified long value.">
        Please shorten this text to <ph name="MAX_CHARACTERS">$2<ex>100</ex></ph> characters or less (you are currently using <ph name="CURRENT_LENGTH">$1<ex>101</ex></ph> characters).
      </message>

      <message name="IDS_PDF_NEED_PASSWORD" desc="A message asking the user for a password to open a PDF file.">
        This document is password protected.  Please enter a password.
      </message>

      <message name="IDS_PDF_PAGE_LOADING" desc="A message displayed on the PDF page while page is loading.">
        Loading...
      </message>

      <message name="IDS_PDF_LOADING_PROGRESS" desc="A message displayed on the PDF control to indicate loading progress.">
        Loading document: <ph name="PAGE_NUMBER">%d<ex>3</ex></ph>/<ph name="NUMBER_OF_PAGES">%d<ex>15</ex></ph> pages...
      </message>

      <message name="IDS_PDF_PAGE_LOAD_FAILED" desc="A message displayed on the PDF control to indicate that the PDF document failed to load.">
        Failed to load PDF document
      </message>

      <message name="IDS_PDF_PROGRESS_LOADING" desc="A message displayed on the progress control over PDF page during document loading.">
        Loading
      </message>

      <message name="IDS_PLUGIN_INITIALIZATION_ERROR" desc="A message displayed when a plug-in failed to load">
        Couldn't load plug-in.
      </message>

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