Merge "Upgrade to 8.9.3"
diff --git a/README.android b/README.android
index 663cb0c..a27f309 100644
--- a/README.android
+++ b/README.android
@@ -1,5 +1,5 @@
 URL: https://github.com/googlei18n/libphonenumber
-Version: 8.8.10
+Version: 8.9.3
 License: Apache 2
 Description: Google Phone Number Library.
 
diff --git a/README.version b/README.version
index e29d015..5f1852b 100644
--- a/README.version
+++ b/README.version
@@ -1,3 +1,3 @@
 URL: https://github.com/googlei18n/libphonenumber/
-Version: 8.8.10
+Version: 8.9.3
 BugComponent: 24949
diff --git a/build.xml b/build.xml
index f70d694..aae3fa9 100644
--- a/build.xml
+++ b/build.xml
@@ -171,6 +171,15 @@
       <arg value="-jar" />
       <arg value="${build.tools.jar}"/>
       <arg value="BuildMetadataJsonFromXml"/>
+      <arg value="${resources.dir}/ShortNumberMetadata.xml"/>
+      <arg value="${javascript.dir}/i18n/phonenumbers/shortnumbermetadata.js"/>
+      <arg value="false"/> <!-- Lite metadata. -->
+      <arg value="i18n.phonenumbers.shortnumbermetadata" /> <!-- namespace to provide -->
+    </exec>
+    <exec executable="java">
+      <arg value="-jar" />
+      <arg value="${build.tools.jar}"/>
+      <arg value="BuildMetadataJsonFromXml"/>
       <arg value="${resources.dir}/PhoneNumberMetadataForTesting.xml"/>
       <arg value="${javascript.dir}/i18n/phonenumbers/metadatafortesting.js"/>
     </exec>
diff --git a/carrier/pom.xml b/carrier/pom.xml
index cabc133..0eb2ea8 100644
--- a/carrier/pom.xml
+++ b/carrier/pom.xml
@@ -3,14 +3,14 @@
   <modelVersion>4.0.0</modelVersion>
   <groupId>com.googlecode.libphonenumber</groupId>
   <artifactId>carrier</artifactId>
-  <version>1.77</version>
+  <version>1.82</version>
   <packaging>jar</packaging>
   <url>https://github.com/googlei18n/libphonenumber/</url>
 
   <parent>
     <groupId>com.googlecode.libphonenumber</groupId>
     <artifactId>libphonenumber-parent</artifactId>
-    <version>8.8.10</version>
+    <version>8.9.3</version>
   </parent>
 
   <build>
@@ -56,12 +56,12 @@
     <dependency>
       <groupId>com.googlecode.libphonenumber</groupId>
       <artifactId>libphonenumber</artifactId>
-      <version>8.8.10</version>
+      <version>8.9.3</version>
     </dependency>
     <dependency>
       <groupId>com.googlecode.libphonenumber</groupId>
       <artifactId>prefixmapper</artifactId>
-      <version>2.87</version>
+      <version>2.92</version>
     </dependency>
   </dependencies>
 
diff --git a/carrier/src/com/google/i18n/phonenumbers/carrier/data/212_en b/carrier/src/com/google/i18n/phonenumbers/carrier/data/212_en
index 22f5112..0ee7903 100644
--- a/carrier/src/com/google/i18n/phonenumbers/carrier/data/212_en
+++ b/carrier/src/com/google/i18n/phonenumbers/carrier/data/212_en
Binary files differ
diff --git a/carrier/src/com/google/i18n/phonenumbers/carrier/data/223_en b/carrier/src/com/google/i18n/phonenumbers/carrier/data/223_en
index 63e5fa0..9af1728 100644
--- a/carrier/src/com/google/i18n/phonenumbers/carrier/data/223_en
+++ b/carrier/src/com/google/i18n/phonenumbers/carrier/data/223_en
Binary files differ
diff --git a/carrier/src/com/google/i18n/phonenumbers/carrier/data/225_en b/carrier/src/com/google/i18n/phonenumbers/carrier/data/225_en
index 18e3d26..3390eca 100644
--- a/carrier/src/com/google/i18n/phonenumbers/carrier/data/225_en
+++ b/carrier/src/com/google/i18n/phonenumbers/carrier/data/225_en
Binary files differ
diff --git a/carrier/src/com/google/i18n/phonenumbers/carrier/data/226_en b/carrier/src/com/google/i18n/phonenumbers/carrier/data/226_en
index fd8421f..b5ac28c 100644
--- a/carrier/src/com/google/i18n/phonenumbers/carrier/data/226_en
+++ b/carrier/src/com/google/i18n/phonenumbers/carrier/data/226_en
Binary files differ
diff --git a/carrier/src/com/google/i18n/phonenumbers/carrier/data/228_en b/carrier/src/com/google/i18n/phonenumbers/carrier/data/228_en
index 26befb6..fd9b201 100644
--- a/carrier/src/com/google/i18n/phonenumbers/carrier/data/228_en
+++ b/carrier/src/com/google/i18n/phonenumbers/carrier/data/228_en
Binary files differ
diff --git a/carrier/src/com/google/i18n/phonenumbers/carrier/data/229_en b/carrier/src/com/google/i18n/phonenumbers/carrier/data/229_en
index 15bb0e2..4870401 100644
--- a/carrier/src/com/google/i18n/phonenumbers/carrier/data/229_en
+++ b/carrier/src/com/google/i18n/phonenumbers/carrier/data/229_en
Binary files differ
diff --git a/carrier/src/com/google/i18n/phonenumbers/carrier/data/230_en b/carrier/src/com/google/i18n/phonenumbers/carrier/data/230_en
index 2aef0c5..2116295 100644
--- a/carrier/src/com/google/i18n/phonenumbers/carrier/data/230_en
+++ b/carrier/src/com/google/i18n/phonenumbers/carrier/data/230_en
Binary files differ
diff --git a/carrier/src/com/google/i18n/phonenumbers/carrier/data/232_en b/carrier/src/com/google/i18n/phonenumbers/carrier/data/232_en
index d5b6384..4a5e6c7 100644
--- a/carrier/src/com/google/i18n/phonenumbers/carrier/data/232_en
+++ b/carrier/src/com/google/i18n/phonenumbers/carrier/data/232_en
Binary files differ
diff --git a/carrier/src/com/google/i18n/phonenumbers/carrier/data/238_en b/carrier/src/com/google/i18n/phonenumbers/carrier/data/238_en
index 064784f..c8b833e 100644
--- a/carrier/src/com/google/i18n/phonenumbers/carrier/data/238_en
+++ b/carrier/src/com/google/i18n/phonenumbers/carrier/data/238_en
Binary files differ
diff --git a/carrier/src/com/google/i18n/phonenumbers/carrier/data/245_en b/carrier/src/com/google/i18n/phonenumbers/carrier/data/245_en
index ddd3541..d0c4ba2 100644
--- a/carrier/src/com/google/i18n/phonenumbers/carrier/data/245_en
+++ b/carrier/src/com/google/i18n/phonenumbers/carrier/data/245_en
Binary files differ
diff --git a/carrier/src/com/google/i18n/phonenumbers/carrier/data/249_en b/carrier/src/com/google/i18n/phonenumbers/carrier/data/249_en
index acd9edd..62df772 100644
--- a/carrier/src/com/google/i18n/phonenumbers/carrier/data/249_en
+++ b/carrier/src/com/google/i18n/phonenumbers/carrier/data/249_en
Binary files differ
diff --git a/carrier/src/com/google/i18n/phonenumbers/carrier/data/251_en b/carrier/src/com/google/i18n/phonenumbers/carrier/data/251_en
index 5b56828..354c011 100644
--- a/carrier/src/com/google/i18n/phonenumbers/carrier/data/251_en
+++ b/carrier/src/com/google/i18n/phonenumbers/carrier/data/251_en
Binary files differ
diff --git a/carrier/src/com/google/i18n/phonenumbers/carrier/data/254_en b/carrier/src/com/google/i18n/phonenumbers/carrier/data/254_en
index b7ff3a8..95bdb8a 100644
--- a/carrier/src/com/google/i18n/phonenumbers/carrier/data/254_en
+++ b/carrier/src/com/google/i18n/phonenumbers/carrier/data/254_en
Binary files differ
diff --git a/carrier/src/com/google/i18n/phonenumbers/carrier/data/32_en b/carrier/src/com/google/i18n/phonenumbers/carrier/data/32_en
index 113260e..cd544f1 100644
--- a/carrier/src/com/google/i18n/phonenumbers/carrier/data/32_en
+++ b/carrier/src/com/google/i18n/phonenumbers/carrier/data/32_en
Binary files differ
diff --git a/carrier/src/com/google/i18n/phonenumbers/carrier/data/383_en b/carrier/src/com/google/i18n/phonenumbers/carrier/data/383_en
new file mode 100644
index 0000000..79ec6c5
--- /dev/null
+++ b/carrier/src/com/google/i18n/phonenumbers/carrier/data/383_en
Binary files differ
diff --git a/carrier/src/com/google/i18n/phonenumbers/carrier/data/385_en b/carrier/src/com/google/i18n/phonenumbers/carrier/data/385_en
index 9b7fa97..eb5c93c 100644
--- a/carrier/src/com/google/i18n/phonenumbers/carrier/data/385_en
+++ b/carrier/src/com/google/i18n/phonenumbers/carrier/data/385_en
Binary files differ
diff --git a/carrier/src/com/google/i18n/phonenumbers/carrier/data/688_en b/carrier/src/com/google/i18n/phonenumbers/carrier/data/688_en
new file mode 100644
index 0000000..ed1ad94
--- /dev/null
+++ b/carrier/src/com/google/i18n/phonenumbers/carrier/data/688_en
Binary files differ
diff --git a/carrier/src/com/google/i18n/phonenumbers/carrier/data/90_en b/carrier/src/com/google/i18n/phonenumbers/carrier/data/90_en
index e684f05..757debc 100644
--- a/carrier/src/com/google/i18n/phonenumbers/carrier/data/90_en
+++ b/carrier/src/com/google/i18n/phonenumbers/carrier/data/90_en
Binary files differ
diff --git a/carrier/src/com/google/i18n/phonenumbers/carrier/data/91_en b/carrier/src/com/google/i18n/phonenumbers/carrier/data/91_en
index 5e420cd..65b0c41 100644
--- a/carrier/src/com/google/i18n/phonenumbers/carrier/data/91_en
+++ b/carrier/src/com/google/i18n/phonenumbers/carrier/data/91_en
Binary files differ
diff --git a/carrier/src/com/google/i18n/phonenumbers/carrier/data/93_en b/carrier/src/com/google/i18n/phonenumbers/carrier/data/93_en
index 0124b91..cdb7caa 100644
--- a/carrier/src/com/google/i18n/phonenumbers/carrier/data/93_en
+++ b/carrier/src/com/google/i18n/phonenumbers/carrier/data/93_en
Binary files differ
diff --git a/carrier/src/com/google/i18n/phonenumbers/carrier/data/976_en b/carrier/src/com/google/i18n/phonenumbers/carrier/data/976_en
index 20a0576..dac090c 100644
--- a/carrier/src/com/google/i18n/phonenumbers/carrier/data/976_en
+++ b/carrier/src/com/google/i18n/phonenumbers/carrier/data/976_en
Binary files differ
diff --git a/carrier/src/com/google/i18n/phonenumbers/carrier/data/996_en b/carrier/src/com/google/i18n/phonenumbers/carrier/data/996_en
index dfc8159..b7d5391 100644
--- a/carrier/src/com/google/i18n/phonenumbers/carrier/data/996_en
+++ b/carrier/src/com/google/i18n/phonenumbers/carrier/data/996_en
Binary files differ
diff --git a/carrier/src/com/google/i18n/phonenumbers/carrier/data/config b/carrier/src/com/google/i18n/phonenumbers/carrier/data/config
index 27a9451..375e227 100644
--- a/carrier/src/com/google/i18n/phonenumbers/carrier/data/config
+++ b/carrier/src/com/google/i18n/phonenumbers/carrier/data/config
Binary files differ
diff --git a/demo/pom.xml b/demo/pom.xml
index c862745..b0584e8 100644
--- a/demo/pom.xml
+++ b/demo/pom.xml
@@ -3,13 +3,13 @@
   <modelVersion>4.0.0</modelVersion>
   <groupId>com.googlecode.libphonenumber</groupId>
   <artifactId>demo</artifactId>
-  <version>8.8.10</version>
+  <version>8.9.3</version>
   <packaging>jar</packaging>
   <url>https://github.com/googlei18n/libphonenumber/</url>
   <parent>
     <groupId>com.googlecode.libphonenumber</groupId>
     <artifactId>libphonenumber-parent</artifactId>
-    <version>8.8.10</version>
+    <version>8.9.3</version>
   </parent>
 
   <properties>
@@ -88,17 +88,17 @@
     <dependency>
       <groupId>com.googlecode.libphonenumber</groupId>
       <artifactId>libphonenumber</artifactId>
-      <version>8.8.10</version>
+      <version>8.9.3</version>
     </dependency>
     <dependency>
       <groupId>com.googlecode.libphonenumber</groupId>
       <artifactId>geocoder</artifactId>
-      <version>2.87</version>
+      <version>2.92</version>
     </dependency>
     <dependency>
       <groupId>com.googlecode.libphonenumber</groupId>
       <artifactId>carrier</artifactId>
-      <version>1.77</version>
+      <version>1.82</version>
     </dependency>
   </dependencies>
 
diff --git a/demo/src/com/google/phonenumbers/PhoneNumberParserServlet.java b/demo/src/com/google/phonenumbers/PhoneNumberParserServlet.java
index 0730c3b..de4606a 100644
--- a/demo/src/com/google/phonenumbers/PhoneNumberParserServlet.java
+++ b/demo/src/com/google/phonenumbers/PhoneNumberParserServlet.java
@@ -214,6 +214,9 @@
     return permaLink.toString();
   }
 
+  private static final String NEW_ISSUE_BASE_URL =
+    "https://issuetracker.google.com/issues/new?component=192347&title=";
+
   /**
    * Returns a link to create a new github issue with the relevant information.
    */
@@ -223,32 +226,9 @@
     String issueTitle = "Validation issue with " + phoneNumber
         + (hasDefaultCountry ? " (" + defaultCountry + ")" : "");
 
-    // Issue template. This must be kept in sync with the template in
-    // https://github.com/googlei18n/libphonenumber/blob/master/CONTRIBUTING.md.
-    StringBuilder issueTemplate = new StringBuilder(
-        "Please read the \"guidelines for contributing\" (linked above) and fill "
-        + "in the template below.\n\n");
-    issueTemplate.append("Country/region affected (e.g., \"US\"): ")
-        .append(defaultCountry).append("\n\n");
-    issueTemplate.append("Example number(s) affected (\"+1 555 555-1234\"): ")
-        .append(phoneNumber).append("\n\n");
-    issueTemplate.append(
-        "The phone number range(s) to which the issue applies (\"+1 555 555-XXXX\"): \n\n");
-    issueTemplate.append(
-        "The type of the number(s) (\"fixed-line\", \"mobile\", \"short code\", etc.): \n\n");
-    issueTemplate.append(
-        "The cost, if applicable (\"toll-free\", \"premium rate\", \"shared cost\"): \n\n");
-    issueTemplate.append(
-        "Supporting evidence (for example, national numbering plan, announcement from mobile "
-        + "carrier, news article): **IMPORTANT - anything posted here is made public. "
-        + "Read the guidelines first!** \n\n");
-    issueTemplate.append("[link to demo]("
-        + getPermaLinkURL(phoneNumber, defaultCountry, geocodingLocale, true /* absoluteURL */)
-        + ")\n\n");
-    String newIssueLink = "https://github.com/googlei18n/libphonenumber/issues/new?title=";
+    String newIssueLink = NEW_ISSUE_BASE_URL;
     try {
-      newIssueLink += URLEncoder.encode(issueTitle, UTF_8.name()) + "&body="
-        + URLEncoder.encode(issueTemplate.toString(), UTF_8.name());
+      newIssueLink += URLEncoder.encode(issueTitle, UTF_8.name());
     } catch(UnsupportedEncodingException e) {
       // UTF-8 is guaranteed in Java, so this should be impossible.
       throw new AssertionError(e);
diff --git a/demo/war/WEB-INF/appengine-web.xml b/demo/war/WEB-INF/appengine-web.xml
index 5e9135b..1a367ec 100644
--- a/demo/war/WEB-INF/appengine-web.xml
+++ b/demo/war/WEB-INF/appengine-web.xml
@@ -2,6 +2,7 @@
 <appengine-web-app xmlns="http://appengine.google.com/ns/1.0">
   <application>libphonenumber-hrd</application>
   <version>1</version>
+  <runtime>java8</runtime>
   <threadsafe>true</threadsafe>
 
   <!-- Configure java.util.logging -->
diff --git a/geocoder/pom.xml b/geocoder/pom.xml
index fe950d8..509619a 100644
--- a/geocoder/pom.xml
+++ b/geocoder/pom.xml
@@ -3,14 +3,14 @@
   <modelVersion>4.0.0</modelVersion>
   <groupId>com.googlecode.libphonenumber</groupId>
   <artifactId>geocoder</artifactId>
-  <version>2.87</version>
+  <version>2.92</version>
   <packaging>jar</packaging>
   <url>https://github.com/googlei18n/libphonenumber/</url>
 
   <parent>
     <groupId>com.googlecode.libphonenumber</groupId>
     <artifactId>libphonenumber-parent</artifactId>
-    <version>8.8.10</version>
+    <version>8.9.3</version>
   </parent>
 
   <build>
@@ -64,12 +64,12 @@
     <dependency>
       <groupId>com.googlecode.libphonenumber</groupId>
       <artifactId>libphonenumber</artifactId>
-      <version>8.8.10</version>
+      <version>8.9.3</version>
     </dependency>
     <dependency>
       <groupId>com.googlecode.libphonenumber</groupId>
       <artifactId>prefixmapper</artifactId>
-      <version>2.87</version>
+      <version>2.92</version>
     </dependency>
   </dependencies>
 
diff --git a/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/1279_en b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/1279_en
new file mode 100644
index 0000000..2f8cd4e
--- /dev/null
+++ b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/1279_en
Binary files differ
diff --git a/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/383_en b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/383_en
new file mode 100644
index 0000000..c1f8fbc
--- /dev/null
+++ b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/383_en
Binary files differ
diff --git a/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/383_sq b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/383_sq
new file mode 100644
index 0000000..d11ac78
--- /dev/null
+++ b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/383_sq
Binary files differ
diff --git a/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/383_sr b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/383_sr
new file mode 100644
index 0000000..8a8db36
--- /dev/null
+++ b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/383_sr
Binary files differ
diff --git a/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/config b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/config
index 63a100e..a9e73f7 100644
--- a/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/config
+++ b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/config
Binary files differ
diff --git a/geocoder/src/com/google/i18n/phonenumbers/timezones/data/map_data b/geocoder/src/com/google/i18n/phonenumbers/timezones/data/map_data
index 60be6c4..1f34192 100644
--- a/geocoder/src/com/google/i18n/phonenumbers/timezones/data/map_data
+++ b/geocoder/src/com/google/i18n/phonenumbers/timezones/data/map_data
Binary files differ
diff --git a/internal/prefixmapper/pom.xml b/internal/prefixmapper/pom.xml
index 0482545..a8f66c9 100644
--- a/internal/prefixmapper/pom.xml
+++ b/internal/prefixmapper/pom.xml
@@ -3,14 +3,14 @@
   <modelVersion>4.0.0</modelVersion>
   <groupId>com.googlecode.libphonenumber</groupId>
   <artifactId>prefixmapper</artifactId>
-  <version>2.87</version>
+  <version>2.92</version>
   <packaging>jar</packaging>
   <url>https://github.com/googlei18n/libphonenumber/</url>
 
   <parent>
     <groupId>com.googlecode.libphonenumber</groupId>
     <artifactId>libphonenumber-parent</artifactId>
-    <version>8.8.10</version>
+    <version>8.9.3</version>
     <relativePath>../../pom.xml</relativePath>
   </parent>
 
@@ -51,7 +51,7 @@
     <dependency>
       <groupId>com.googlecode.libphonenumber</groupId>
       <artifactId>libphonenumber</artifactId>
-      <version>8.8.10</version>
+      <version>8.9.3</version>
     </dependency>
   </dependencies>
 
diff --git a/libphonenumber/pom.xml b/libphonenumber/pom.xml
index f2d1a3c..fbbdadb 100644
--- a/libphonenumber/pom.xml
+++ b/libphonenumber/pom.xml
@@ -3,14 +3,14 @@
   <modelVersion>4.0.0</modelVersion>
   <groupId>com.googlecode.libphonenumber</groupId>
   <artifactId>libphonenumber</artifactId>
-  <version>8.8.10</version>
+  <version>8.9.3</version>
   <packaging>jar</packaging>
   <url>https://github.com/googlei18n/libphonenumber/</url>
 
   <parent>
     <groupId>com.googlecode.libphonenumber</groupId>
     <artifactId>libphonenumber-parent</artifactId>
-    <version>8.8.10</version>
+    <version>8.9.3</version>
   </parent>
 
   <build>
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/CountryCodeToRegionCodeMap.java b/libphonenumber/src/com/google/i18n/phonenumbers/CountryCodeToRegionCodeMap.java
index b8126dc..159f940 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/CountryCodeToRegionCodeMap.java
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/CountryCodeToRegionCodeMap.java
@@ -31,10 +31,10 @@
   // countries sharing a calling code, such as the NANPA countries, the one
   // indicated with "isMainCountryForCode" in the metadata should be first.
   static Map<Integer, List<String>> getCountryCodeToRegionCodeMap() {
-    // The capacity is set to 285 as there are 214 different entries,
+    // The capacity is set to 286 as there are 215 different entries,
     // and this offers a load factor of roughly 0.75.
     Map<Integer, List<String>> countryCodeToRegionCodeMap =
-        new HashMap<Integer, List<String>>(285);
+        new HashMap<Integer, List<String>>(286);
 
     ArrayList<String> listWithRegionCode;
 
@@ -583,6 +583,10 @@
     countryCodeToRegionCodeMap.put(382, listWithRegionCode);
 
     listWithRegionCode = new ArrayList<String>(1);
+    listWithRegionCode.add("XK");
+    countryCodeToRegionCodeMap.put(383, listWithRegionCode);
+
+    listWithRegionCode = new ArrayList<String>(1);
     listWithRegionCode.add("HR");
     countryCodeToRegionCodeMap.put(385, listWithRegionCode);
 
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/ShortNumbersRegionCodeSet.java b/libphonenumber/src/com/google/i18n/phonenumbers/ShortNumbersRegionCodeSet.java
index 2b84f98..9e453c6 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/ShortNumbersRegionCodeSet.java
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/ShortNumbersRegionCodeSet.java
@@ -26,9 +26,9 @@
 public class ShortNumbersRegionCodeSet {
   // A set of all region codes for which data is available.
   static Set<String> getRegionCodeSet() {
-    // The capacity is set to 318 as there are 239 different entries,
+    // The capacity is set to 320 as there are 240 different entries,
     // and this offers a load factor of roughly 0.75.
-    Set<String> regionCodeSet = new HashSet<String>(318);
+    Set<String> regionCodeSet = new HashSet<String>(320);
 
     regionCodeSet.add("AC");
     regionCodeSet.add("AD");
@@ -264,6 +264,7 @@
     regionCodeSet.add("VU");
     regionCodeSet.add("WF");
     regionCodeSet.add("WS");
+    regionCodeSet.add("XK");
     regionCodeSet.add("YE");
     regionCodeSet.add("YT");
     regionCodeSet.add("ZA");
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AF b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AF
index c758e90..9bbc2fb 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AF
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AF
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AM b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AM
index 443e078..795a380 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AM
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AM
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BD b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BD
index bceb64c..a447c7e 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BD
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BD
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BE b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BE
index 882db4a..efbb149 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BE
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BE
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BF b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BF
index 22eed1b..9eca3ce 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BF
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BF
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BJ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BJ
index dd2824e..da90b70 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BJ
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BJ
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CA b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CA
index 5f95e27..28e8303 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CA
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CA
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CG b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CG
index 22d6284..5fbb32d 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CG
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CG
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CI b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CI
index cdbcd3c..e8ac1a3 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CI
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CI
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CL b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CL
index c6333ce..0ec4087 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CL
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CL
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CN b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CN
index fcf1c63..e472d6f 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CN
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CN
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CV b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CV
index c2d8689..97fdc2f 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CV
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CV
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_DE b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_DE
index f9b9288..e54c63f 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_DE
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_DE
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_EH b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_EH
index 9a937b4..ceb01f1 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_EH
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_EH
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_ET b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_ET
index 50bd0ce..c3333a4 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_ET
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_ET
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_FR b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_FR
index b73e002..cc34d79 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_FR
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_FR
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GP b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GP
index 2be6e06..6d136f2 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GP
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GP
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GW b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GW
index 04e8ec0..d478fa1 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GW
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GW
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_HK b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_HK
index cb6ed7e..654a34b 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_HK
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_HK
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_IN b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_IN
index caf64b9..2613265 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_IN
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_IN
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_IR b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_IR
index 29a8b66..35d7ff4 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_IR
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_IR
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_KE b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_KE
index 0a453e3..a399b38 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_KE
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_KE
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_KG b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_KG
index d71b4c1..9170947 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_KG
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_KG
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_KW b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_KW
index 8752321..2736165 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_KW
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_KW
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MA b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MA
index 1dd7a56..a12981d 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MA
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MA
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_ML b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_ML
index 9fab73c..7259be8 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_ML
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_ML
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MU b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MU
index 2bbba46..820fea1 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MU
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MU
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MV b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MV
index 4c3414b..6ba9ea9 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MV
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MV
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MW b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MW
index b84780e..ec6c82c 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MW
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MW
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MY b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MY
index dd3a2ea..746c11d 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MY
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MY
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_PA b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_PA
index 91f8f0f..da36a95 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_PA
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_PA
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SD b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SD
index cb8b6f8..7a1414d 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SD
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SD
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SL b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SL
index b077715..eea8ef4 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SL
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SL
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TG b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TG
index 65378c2..c7be9b7 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TG
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TG
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TR b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TR
index aeac66b..9e8bf9e 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TR
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TR
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TT b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TT
index b766a0b..f56956d 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TT
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TT
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TV b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TV
index 5072eb0..ada7c7e 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TV
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TV
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_US b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_US
index dce94ec..2a9190b 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_US
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_US
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_XK b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_XK
new file mode 100644
index 0000000..cc7f79a
--- /dev/null
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_XK
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BE b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BE
index 7dd451b..23b0334 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BE
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BE
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_IS b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_IS
index 53c8e4f..3bba034 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_IS
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_IS
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_XK b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_XK
new file mode 100644
index 0000000..977af36
--- /dev/null
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_XK
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_ZA b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_ZA
index 8aec04e..721118b 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_ZA
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_ZA
Binary files differ
diff --git a/pom.xml b/pom.xml
index 2320975..b1ffaaf 100644
--- a/pom.xml
+++ b/pom.xml
@@ -3,7 +3,7 @@
   <modelVersion>4.0.0</modelVersion>
   <groupId>com.googlecode.libphonenumber</groupId>
   <artifactId>libphonenumber-parent</artifactId>
-  <version>8.8.10</version>
+  <version>8.9.3</version>
   <packaging>pom</packaging>
   <url>https://github.com/googlei18n/libphonenumber/</url>
 
@@ -34,7 +34,7 @@
     <connection>scm:git:https://github.com/googlei18n/libphonenumber.git</connection>
     <developerConnection>scm:git:git@github.com:googlei18n/libphonenumber.git</developerConnection>
     <url>https://github.com/googlei18n/libphonenumber/</url>
-    <tag>v8.8.10</tag>
+    <tag>v8.9.3</tag>
   </scm>
 
   <properties>