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

DO NOT MODIFY.

This file is generated by
third_party/libaddressinput/chromium/tools/update-strings.py from
src/third_party/libaddressinput/src/cpp/res/messages.grdp. Submit modifications
to the upstream library at https://libaddressinput.googlecode.com/.

-->
<!--
Copyright (C) 2013 Google Inc.

Licensed under the Apache License, Version 2.0 (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.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
<grit-part>
  <message
      name="IDS_LIBADDRESSINPUT_COUNTRY_OR_REGION_LABEL"
      desc="A country or a political region (Countries like the United States or
            regions like Hong Kong or Macao, or places like Taiwan, where
            whether it is a country or not is a politically sensitive
            question).">
    Country / Region
  </message>
  <message
      name="IDS_LIBADDRESSINPUT_LOCALITY_LABEL"
      desc="E.g., New York City.">
    City
  </message>
  <message
      name="IDS_LIBADDRESSINPUT_ADDRESS_LINE_1_LABEL"
      desc="E.g., 18th Street, Unit 3.">
    Street address
  </message>
  <message
      name="IDS_LIBADDRESSINPUT_POSTAL_CODE_LABEL"
      desc="Postal Code. Values are frequently alphanumeric. Used in countries
            such as Switzerland.">
    Postal code
  </message>
  <message
      name="IDS_LIBADDRESSINPUT_ZIP_CODE_LABEL"
      desc="ZIP code. Values are frequently alphanumeric. Used in countries such
            as the US.">
    ZIP code
  </message>
  <message
      name="IDS_LIBADDRESSINPUT_AREA"
      desc="Administrative Area for Hong Kong (e.g., Kowloon).">
    Area
  </message>
  <message
      name="IDS_LIBADDRESSINPUT_COUNTY"
      desc="Administrative Area for United Kingdoms (e.g. York) or for the
            United States (e.g. Orange County).">
    County
  </message>
  <message
      name="IDS_LIBADDRESSINPUT_DEPARTMENT"
      desc="Administrative Area for Nicaragua (e.g., Boaco) or France.">
    Department
  </message>
  <message
      name="IDS_LIBADDRESSINPUT_DISTRICT"
      desc="Administrative Area for Nauru Central Pacific (e.g., Aiwo district),
            or area of a town (a neighbourhood/suburb) used for addresses in
            Korea and China.">
    District
  </message>
  <message
      name="IDS_LIBADDRESSINPUT_DO_SI"
      desc="Administrative Area for Korea (e.g., Gyeonggi-do or Busan-si).">
    Do/Si
  </message>
  <message
      name="IDS_LIBADDRESSINPUT_EMIRATE"
      desc="Administrative Area for United Arab Emirates (e.g., Abu Dhabi).">
    Emirate
  </message>
  <message
      name="IDS_LIBADDRESSINPUT_ISLAND"
      desc="Administrative Area for certain countries (e.g., Bahama's Cat
            Island).">
    Island
  </message>
  <message
      name="IDS_LIBADDRESSINPUT_OBLAST"
      desc="Administrative Area for certain countries (e.g., Russia's
            Leningrad).">
    Oblast
  </message>
  <message
      name="IDS_LIBADDRESSINPUT_PARISH"
      desc="Administrative Area for certain countries (e.g., Andorra's
            Canillo).">
    Parish
  </message>
  <message
      name="IDS_LIBADDRESSINPUT_PREFECTURE"
      desc="Administrative Area for Japan (e.g., Hokkaido).">
    Prefecture
  </message>
  <message
      name="IDS_LIBADDRESSINPUT_PROVINCE"
      desc="Administrative Area for certain countries (e.g., France's
            Champagne).">
    Province
  </message>
  <message
      name="IDS_LIBADDRESSINPUT_STATE"
      desc="Administrative Area for certain countries (e.g., US' California).">
    State
  </message>
  <message
      name="IDS_LIBADDRESSINPUT_RECIPIENT_LABEL"
      desc="Label for the field for a person's name in an address.">
    Name
  </message>
  <message
      name="IDS_LIBADDRESSINPUT_MISSING_REQUIRED_FIELD"
      desc="Error message shown with a UI field when it is a required field and
            the user has not filled it out.">
    You can't leave this empty.
  </message>
  <message
      name="IDS_LIBADDRESSINPUT_MISSING_REQUIRED_POSTAL_CODE_EXAMPLE_AND_URL"
      desc="Error message shown with the postal code field when it is a required
            field and the user has not filled it out, providing an example
            postal code and a link to this country's postal service that a user
            can use to look up their postal code.">
    You must provide a postal code, for example <ph name="EXAMPLE">$1<ex>90291</ex></ph>. Don't know your postal code? Find it out <ph name="BEGIN_LINK">$2</ph>here<ph name="END_LINK">$3</ph>.
  </message>
  <message
      name="IDS_LIBADDRESSINPUT_MISSING_REQUIRED_POSTAL_CODE_EXAMPLE"
      desc="Error message shown with the postal code field when it is a required
            field and the user has not filled it out, providing an example
            postal code.">
    You must provide a postal code, for example <ph name="EXAMPLE">$1<ex>90291</ex></ph>.
  </message>
  <message
      name="IDS_LIBADDRESSINPUT_MISSING_REQUIRED_ZIP_CODE_EXAMPLE_AND_URL"
      desc="Error message shown with the ZIP code field when it is a required
            field and the user has not filled it out, providing an example ZIP
            code and a link to this country's postal service that a user can use
            to look up their ZIP code. This is specifically for countries using
            ZIP codes instead of Postal codes, such as America.">
    You must provide a ZIP code, for example <ph name="EXAMPLE">$1<ex>90291</ex></ph>. Don't know your ZIP code? Find it out <ph name="BEGIN_LINK">$2</ph>here<ph name="END_LINK">$3</ph>.
  </message>
  <message
      name="IDS_LIBADDRESSINPUT_MISSING_REQUIRED_ZIP_CODE_EXAMPLE"
      desc="Error message shown with the ZIP code field when it is a required
            field and the user has not filled it out, providing an example ZIP
            code.">
    You must provide a ZIP code, for example <ph name="EXAMPLE">$1<ex>90291</ex></ph>.
  </message>
  <message
      name="IDS_LIBADDRESSINPUT_UNKNOWN_VALUE"
      desc="Occurs when the user fills out the wrong value for an address field.
            For example, this would be shown when putting 'Cupertino' in United
            States' State field.">
    <ph name="FIELD_VALUE">$1<ex>Cupertino</ex></ph> is not recognized as a known value for this field.
  </message>
  <message
      name="IDS_LIBADDRESSINPUT_UNRECOGNIZED_FORMAT_POSTAL_CODE_EXAMPLE_AND_URL"
      desc="Occurs when the user fills out a postal code that does not conform
            to the country's postal code format. For example, this would be
            shown when using '80' as a Swiss postal code, which is normally 4
            digits long. Provides an example postal code and a link to this
            country's postal service that a user can use to look up their postal
            code.">
    This postal code format is not recognized. Example of a valid postal code: <ph name="EXAMPLE">$1<ex>90291</ex></ph>. Don't know your postal code? Find it out <ph name="BEGIN_LINK">$2</ph>here<ph name="END_LINK">$3</ph>.
  </message>
  <message
      name="IDS_LIBADDRESSINPUT_UNRECOGNIZED_FORMAT_POSTAL_CODE_EXAMPLE"
      desc="Occurs when the user fills out a postal code that does not conform
            to the country's postal code format. For example, this would be
            shown when using '80' as a Swiss postal code, which is normally 4
            digits long. Provides an example postal code.">
    This postal code format is not recognized. Example of a valid postal code: <ph name="EXAMPLE">$1<ex>90291</ex></ph>.
  </message>
  <message
      name="IDS_LIBADDRESSINPUT_UNRECOGNIZED_FORMAT_POSTAL_CODE"
      desc="Occurs when the user fills out a postal code that does not conform
            to the country's postal code format. For example, this would be
            shown when using '80' as a Swiss postal code, which is normally 4
            digits long.">
    This postal code format is not recognized.
  </message>
  <message
      name="IDS_LIBADDRESSINPUT_UNRECOGNIZED_FORMAT_ZIP_CODE_EXAMPLE_AND_URL"
      desc="Occurs when the user fills out a ZIP code that does not conform to
            the country's ZIP code format. For example, this would be shown when
            using '901' as a ZIP code for the United States. Provides an example
            ZIP code and a link to this country's postal service that a user can
            use to look up their ZIP code.">
    This ZIP code format is not recognized. Example of a valid ZIP code: <ph name="EXAMPLE">$1<ex>90291</ex></ph>. Don't know your ZIP code? Find it out <ph name="BEGIN_LINK">$2</ph>here<ph name="END_LINK">$3</ph>.
  </message>
  <message
      name="IDS_LIBADDRESSINPUT_UNRECOGNIZED_FORMAT_ZIP_CODE_EXAMPLE"
      desc="Occurs when the user fills out a ZIP code that does not conform to
            the country's ZIP code format. For example, this would be shown when
            using '901' as a ZIP code for the United States. Provides an example
            ZIP code.">
    This ZIP code format is not recognized. Example of a valid ZIP code: <ph name="EXAMPLE">$1<ex>90291</ex></ph>.
  </message>
  <message
      name="IDS_LIBADDRESSINPUT_UNRECOGNIZED_FORMAT_ZIP"
      desc="Occurs when the user fills out a ZIP code that does not conform to
            the country's ZIP code format. For example, this would be shown when
            using '901' as a ZIP code for the United States.">
    This ZIP code format is not recognized.
  </message>
  <message
      name="IDS_LIBADDRESSINPUT_MISMATCHING_VALUE_POSTAL_CODE_URL"
      desc="Occurs when the user fills out the wrong postal code for a certain
      location. For example, this would be shown when using Z3Z 2Y7 for
      Alberta, Canada. Provides a link to this country's postal service
      that a user can use to look up their postal code.">
    This postal code does not appear to match the rest of this address. Don't know your postal code? Find it out <ph name="BEGIN_LINK">$1</ph>here<ph name="END_LINK">$2</ph>.
  </message>
  <message
      name="IDS_LIBADDRESSINPUT_MISMATCHING_VALUE_POSTAL_CODE"
      desc="Occurs when the user fills out the wrong postal code for a certain
      location. For example, this would be shown when using Z3Z 2Y7 for
      Alberta, Canada.">
    This postal code does not appear to match the rest of this address.
  </message>
  <message
      name="IDS_LIBADDRESSINPUT_MISMATCHING_VALUE_ZIP_URL"
      desc="Occurs when the user fills out the wrong ZIP code for a certain
      location. For example, this would be shown when using 10001 for
      Arizona state. Provides a link to this country's postal service that
      a user can use to look up their ZIP code.">
    This ZIP code does not appear to match the rest of this address. Don't know your ZIP code? Find it out <ph name="BEGIN_LINK">$1</ph>here<ph name="END_LINK">$2</ph>.
  </message>
  <message
      name="IDS_LIBADDRESSINPUT_MISMATCHING_VALUE_ZIP"
      desc="Occurs when the user fills out the wrong ZIP code for a certain
      location. For example, this would be shown when using 10001 for
      Arizona state.">
    This ZIP code does not appear to match the rest of this address.
  </message>
  <message
      name="IDS_LIBADDRESSINPUT_PO_BOX_FORBIDDEN_VALUE"
      desc="Occurs when the user fills out a P.O. box as part of a physical
      address.">
    This address line appears to contain a post office box. Please use a street or building address.
  </message>
</grit-part>
