Merge "Upgrade to libphonenumber-7.7.0 which is nano proto free" am: 78b57ad809
am: c34dc740c4
Change-Id: I5994a995496c57985ace28421f6d352217e80a7b
diff --git a/Android.mk b/Android.mk
index bbcacb6..5b8c2ca 100644
--- a/Android.mk
+++ b/Android.mk
@@ -57,7 +57,6 @@
LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk
LOCAL_NO_STANDARD_LIBRARIES := true
LOCAL_JAVA_LIBRARIES := core-oj core-libart
-LOCAL_STATIC_JAVA_LIBRARIES := libprotobuf-java-nano
LOCAL_JAVA_LANGUAGE_VERSION := 1.7
include $(BUILD_STATIC_JAVA_LIBRARY)
@@ -69,7 +68,6 @@
LOCAL_JAVA_RESOURCE_DIRS := $(libphonenumber_resource_dirs)
LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk
LOCAL_SDK_VERSION := 9
-LOCAL_STATIC_JAVA_LIBRARIES := libprotobuf-java-nano
LOCAL_JAVA_LANGUAGE_VERSION := 1.7
include $(BUILD_STATIC_JAVA_LIBRARY)
@@ -84,6 +82,6 @@
LOCAL_JAVA_RESOURCE_DIRS := $(libphonenumber_test_resource_dirs)
LOCAL_ADDITIONAL_DEPENDENCIES := $(LOCAL_PATH)/Android.mk
LOCAL_SDK_VERSION := current
-LOCAL_STATIC_JAVA_LIBRARIES := libphonenumber libprotobuf-java-nano
+LOCAL_STATIC_JAVA_LIBRARIES := libphonenumber
LOCAL_JAVA_LANGUAGE_VERSION := 1.7
include $(BUILD_STATIC_JAVA_LIBRARY)
diff --git a/README.version b/README.version
index 1cd4978..9eb1b43 100644
--- a/README.version
+++ b/README.version
@@ -1,3 +1,3 @@
-URL: https://github.com/googlei18n/libphonenumber/archive/libphonenumber-7.0.2.tar.gz
-Version: 7.0.2
+URL: https://github.com/googlei18n/libphonenumber/archive/libphonenumber-7.7.0.tar.gz
+Version: 7.7.0
BugComponent: 24949
diff --git a/build.xml b/build.xml
index 45b6abb..8adde3b 100644
--- a/build.xml
+++ b/build.xml
@@ -45,21 +45,6 @@
</exec>
</target>
- <target name="build-single-file-phone-metadata">
- <exec executable="java">
- <arg value="-jar" />
- <arg value="${build.tools.jar}"/>
- <arg value="BuildMetadataProtoFromXml"/>
- <arg value="--input-file=${resources.dir}/PhoneNumberMetadata.xml"/>
- <arg value="--output-dir=${libphonenumber.src.dir}/com/google/i18n/phonenumbers"/>
- <arg value="--data-prefix=data/SingleFilePhoneNumberMetadataProto"/>
- <arg value="--single-file=true"/>
- <arg value="--mapping-class=CountryCodeToRegionCodeMap"/>
- <arg value="--copyright=2010"/>
- <arg value="--lite-build=false"/>
- </exec>
- </target>
-
<target name="build-short-metadata">
<exec executable="java">
<arg value="-jar" />
@@ -88,21 +73,6 @@
</exec>
</target>
- <target name="build-single-file-test-metadata">
- <exec executable="java">
- <arg value="-jar" />
- <arg value="${build.tools.jar}"/>
- <arg value="BuildMetadataProtoFromXml"/>
- <arg value="--input-file=${resources.dir}/PhoneNumberMetadataForTesting.xml"/>
- <arg value="--output-dir=${libphonenumber.test.dir}/com/google/i18n/phonenumbers"/>
- <arg value="--data-prefix=data/SingleFilePhoneNumberMetadataProtoForTesting"/>
- <arg value="--single-file=true"/>
- <arg value="--mapping-class=CountryCodeToRegionCodeMapForTesting"/>
- <arg value="--copyright=2010"/>
- <arg value="--lite-build=false"/>
- </exec>
- </target>
-
<target name="build-alternate-metadata">
<exec executable="java">
<arg value="-jar" />
diff --git a/carrier/pom.xml b/carrier/pom.xml
index 7fd8faa..cc18d94 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.26</version>
+ <version>1.43</version>
<packaging>jar</packaging>
<url>https://github.com/googlei18n/libphonenumber/</url>
<parent>
<groupId>com.googlecode.libphonenumber</groupId>
<artifactId>libphonenumber-parent</artifactId>
- <version>7.2.6</version>
+ <version>7.7.0</version>
</parent>
<build>
@@ -28,18 +28,40 @@
<targetPath>com/google/i18n/phonenumbers/carrier/testing_data</targetPath>
</testResource>
</testResources>
+ <plugins>
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>animal-sniffer-maven-plugin</artifactId>
+ <version>1.15</version>
+ <executions>
+ <execution>
+ <phase>test</phase>
+ <goals>
+ <goal>check</goal>
+ </goals>
+ </execution>
+ </executions>
+ <configuration>
+ <signature>
+ <groupId>org.codehaus.mojo.signature</groupId>
+ <artifactId>java15</artifactId>
+ <version>1.0</version>
+ </signature>
+ </configuration>
+ </plugin>
+ </plugins>
</build>
<dependencies>
<dependency>
<groupId>com.googlecode.libphonenumber</groupId>
<artifactId>libphonenumber</artifactId>
- <version>7.2.6</version>
+ <version>7.7.0</version>
</dependency>
<dependency>
<groupId>com.googlecode.libphonenumber</groupId>
<artifactId>prefixmapper</artifactId>
- <version>2.36</version>
+ <version>2.53</version>
</dependency>
</dependencies>
diff --git a/carrier/src/com/google/i18n/phonenumbers/carrier/data/1671_en b/carrier/src/com/google/i18n/phonenumbers/carrier/data/1671_en
index abc75c6..4151489 100644
--- a/carrier/src/com/google/i18n/phonenumbers/carrier/data/1671_en
+++ b/carrier/src/com/google/i18n/phonenumbers/carrier/data/1671_en
Binary files differ
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 04ebce5..5ed3160 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 1845987..63e5fa0 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 ac0d4ac..ffd1089 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/229_en b/carrier/src/com/google/i18n/phonenumbers/carrier/data/229_en
index 2a208a9..a2a1039 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/243_en b/carrier/src/com/google/i18n/phonenumbers/carrier/data/243_en
index 34bdc17..0ff477d 100644
--- a/carrier/src/com/google/i18n/phonenumbers/carrier/data/243_en
+++ b/carrier/src/com/google/i18n/phonenumbers/carrier/data/243_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 397b884..0f5394a 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/252_en b/carrier/src/com/google/i18n/phonenumbers/carrier/data/252_en
index ba7b00d..432ae99 100644
--- a/carrier/src/com/google/i18n/phonenumbers/carrier/data/252_en
+++ b/carrier/src/com/google/i18n/phonenumbers/carrier/data/252_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 9a600ed..fea08ad 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/255_en b/carrier/src/com/google/i18n/phonenumbers/carrier/data/255_en
index ea1a183..51be629 100644
--- a/carrier/src/com/google/i18n/phonenumbers/carrier/data/255_en
+++ b/carrier/src/com/google/i18n/phonenumbers/carrier/data/255_en
Binary files differ
diff --git a/carrier/src/com/google/i18n/phonenumbers/carrier/data/27_en b/carrier/src/com/google/i18n/phonenumbers/carrier/data/27_en
index d8ee91b..18b085f 100644
--- a/carrier/src/com/google/i18n/phonenumbers/carrier/data/27_en
+++ b/carrier/src/com/google/i18n/phonenumbers/carrier/data/27_en
Binary files differ
diff --git a/carrier/src/com/google/i18n/phonenumbers/carrier/data/374_en b/carrier/src/com/google/i18n/phonenumbers/carrier/data/374_en
index 5a9033f..60a12aa 100644
--- a/carrier/src/com/google/i18n/phonenumbers/carrier/data/374_en
+++ b/carrier/src/com/google/i18n/phonenumbers/carrier/data/374_en
Binary files differ
diff --git a/carrier/src/com/google/i18n/phonenumbers/carrier/data/374_ru b/carrier/src/com/google/i18n/phonenumbers/carrier/data/374_ru
new file mode 100644
index 0000000..7142799
--- /dev/null
+++ b/carrier/src/com/google/i18n/phonenumbers/carrier/data/374_ru
Binary files differ
diff --git a/carrier/src/com/google/i18n/phonenumbers/carrier/data/382_en b/carrier/src/com/google/i18n/phonenumbers/carrier/data/382_en
new file mode 100644
index 0000000..0bcfed3
--- /dev/null
+++ b/carrier/src/com/google/i18n/phonenumbers/carrier/data/382_en
Binary files differ
diff --git a/carrier/src/com/google/i18n/phonenumbers/carrier/data/421_en b/carrier/src/com/google/i18n/phonenumbers/carrier/data/421_en
index 75f4d40..1a1cae9 100644
--- a/carrier/src/com/google/i18n/phonenumbers/carrier/data/421_en
+++ b/carrier/src/com/google/i18n/phonenumbers/carrier/data/421_en
Binary files differ
diff --git a/carrier/src/com/google/i18n/phonenumbers/carrier/data/61_en b/carrier/src/com/google/i18n/phonenumbers/carrier/data/61_en
index c025528..6ff2209 100644
--- a/carrier/src/com/google/i18n/phonenumbers/carrier/data/61_en
+++ b/carrier/src/com/google/i18n/phonenumbers/carrier/data/61_en
Binary files differ
diff --git a/carrier/src/com/google/i18n/phonenumbers/carrier/data/66_en b/carrier/src/com/google/i18n/phonenumbers/carrier/data/66_en
index 2985cc0..21017a6 100644
--- a/carrier/src/com/google/i18n/phonenumbers/carrier/data/66_en
+++ b/carrier/src/com/google/i18n/phonenumbers/carrier/data/66_en
Binary files differ
diff --git a/carrier/src/com/google/i18n/phonenumbers/carrier/data/677_en b/carrier/src/com/google/i18n/phonenumbers/carrier/data/677_en
index 51bed88..c085964 100644
--- a/carrier/src/com/google/i18n/phonenumbers/carrier/data/677_en
+++ b/carrier/src/com/google/i18n/phonenumbers/carrier/data/677_en
Binary files differ
diff --git a/carrier/src/com/google/i18n/phonenumbers/carrier/data/84_en b/carrier/src/com/google/i18n/phonenumbers/carrier/data/84_en
index 5296d9d..af53f1b 100644
--- a/carrier/src/com/google/i18n/phonenumbers/carrier/data/84_en
+++ b/carrier/src/com/google/i18n/phonenumbers/carrier/data/84_en
Binary files differ
diff --git a/carrier/src/com/google/i18n/phonenumbers/carrier/data/852_zh b/carrier/src/com/google/i18n/phonenumbers/carrier/data/852_zh
new file mode 100644
index 0000000..ac7be2b
--- /dev/null
+++ b/carrier/src/com/google/i18n/phonenumbers/carrier/data/852_zh
Binary files differ
diff --git a/carrier/src/com/google/i18n/phonenumbers/carrier/data/852_zh_Hant b/carrier/src/com/google/i18n/phonenumbers/carrier/data/852_zh_Hant
new file mode 100644
index 0000000..a07076a
--- /dev/null
+++ b/carrier/src/com/google/i18n/phonenumbers/carrier/data/852_zh_Hant
Binary files differ
diff --git a/carrier/src/com/google/i18n/phonenumbers/carrier/data/853_en b/carrier/src/com/google/i18n/phonenumbers/carrier/data/853_en
index 1e5acc8..5953b11 100644
--- a/carrier/src/com/google/i18n/phonenumbers/carrier/data/853_en
+++ b/carrier/src/com/google/i18n/phonenumbers/carrier/data/853_en
Binary files differ
diff --git a/carrier/src/com/google/i18n/phonenumbers/carrier/data/855_en b/carrier/src/com/google/i18n/phonenumbers/carrier/data/855_en
index 9acebb8..85e5133 100644
--- a/carrier/src/com/google/i18n/phonenumbers/carrier/data/855_en
+++ b/carrier/src/com/google/i18n/phonenumbers/carrier/data/855_en
Binary files differ
diff --git a/carrier/src/com/google/i18n/phonenumbers/carrier/data/86_en b/carrier/src/com/google/i18n/phonenumbers/carrier/data/86_en
index 574cd57..15379c3 100644
--- a/carrier/src/com/google/i18n/phonenumbers/carrier/data/86_en
+++ b/carrier/src/com/google/i18n/phonenumbers/carrier/data/86_en
Binary files differ
diff --git a/carrier/src/com/google/i18n/phonenumbers/carrier/data/86_zh b/carrier/src/com/google/i18n/phonenumbers/carrier/data/86_zh
new file mode 100644
index 0000000..92132e6
--- /dev/null
+++ b/carrier/src/com/google/i18n/phonenumbers/carrier/data/86_zh
Binary files differ
diff --git a/carrier/src/com/google/i18n/phonenumbers/carrier/data/86_zh_Hant b/carrier/src/com/google/i18n/phonenumbers/carrier/data/86_zh_Hant
new file mode 100644
index 0000000..64702af
--- /dev/null
+++ b/carrier/src/com/google/i18n/phonenumbers/carrier/data/86_zh_Hant
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 3250d04..5891a0f 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_fa b/carrier/src/com/google/i18n/phonenumbers/carrier/data/93_fa
new file mode 100644
index 0000000..5bc8e68
--- /dev/null
+++ b/carrier/src/com/google/i18n/phonenumbers/carrier/data/93_fa
Binary files differ
diff --git a/carrier/src/com/google/i18n/phonenumbers/carrier/data/963_en b/carrier/src/com/google/i18n/phonenumbers/carrier/data/963_en
new file mode 100644
index 0000000..0426ab4
--- /dev/null
+++ b/carrier/src/com/google/i18n/phonenumbers/carrier/data/963_en
Binary files differ
diff --git a/carrier/src/com/google/i18n/phonenumbers/carrier/data/968_en b/carrier/src/com/google/i18n/phonenumbers/carrier/data/968_en
index d573607..c635477 100644
--- a/carrier/src/com/google/i18n/phonenumbers/carrier/data/968_en
+++ b/carrier/src/com/google/i18n/phonenumbers/carrier/data/968_en
Binary files differ
diff --git a/carrier/src/com/google/i18n/phonenumbers/carrier/data/971_en b/carrier/src/com/google/i18n/phonenumbers/carrier/data/971_en
index bc897ca..80751d0 100644
--- a/carrier/src/com/google/i18n/phonenumbers/carrier/data/971_en
+++ b/carrier/src/com/google/i18n/phonenumbers/carrier/data/971_en
Binary files differ
diff --git a/carrier/src/com/google/i18n/phonenumbers/carrier/data/972_en b/carrier/src/com/google/i18n/phonenumbers/carrier/data/972_en
index 62d54b5..49fe22d 100644
--- a/carrier/src/com/google/i18n/phonenumbers/carrier/data/972_en
+++ b/carrier/src/com/google/i18n/phonenumbers/carrier/data/972_en
Binary files differ
diff --git a/carrier/src/com/google/i18n/phonenumbers/carrier/data/973_en b/carrier/src/com/google/i18n/phonenumbers/carrier/data/973_en
index 0a4e1d0..4c8551d 100644
--- a/carrier/src/com/google/i18n/phonenumbers/carrier/data/973_en
+++ b/carrier/src/com/google/i18n/phonenumbers/carrier/data/973_en
Binary files differ
diff --git a/carrier/src/com/google/i18n/phonenumbers/carrier/data/98_fa b/carrier/src/com/google/i18n/phonenumbers/carrier/data/98_fa
new file mode 100644
index 0000000..fba7aca
--- /dev/null
+++ b/carrier/src/com/google/i18n/phonenumbers/carrier/data/98_fa
Binary files differ
diff --git a/carrier/src/com/google/i18n/phonenumbers/carrier/data/992_en b/carrier/src/com/google/i18n/phonenumbers/carrier/data/992_en
index d1307eb..f9568f8 100644
--- a/carrier/src/com/google/i18n/phonenumbers/carrier/data/992_en
+++ b/carrier/src/com/google/i18n/phonenumbers/carrier/data/992_en
Binary files differ
diff --git a/carrier/src/com/google/i18n/phonenumbers/carrier/data/994_en b/carrier/src/com/google/i18n/phonenumbers/carrier/data/994_en
index 6d3de75..2594797 100644
--- a/carrier/src/com/google/i18n/phonenumbers/carrier/data/994_en
+++ b/carrier/src/com/google/i18n/phonenumbers/carrier/data/994_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 b7f95b5..4a4e6e4 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 07eeba4..90072bf 100644
--- a/demo/pom.xml
+++ b/demo/pom.xml
@@ -4,11 +4,11 @@
<parent>
<artifactId>libphonenumber-parent</artifactId>
<groupId>com.googlecode.libphonenumber</groupId>
- <version>7.2.6</version>
+ <version>7.7.0</version>
</parent>
<groupId>com.googlecode.libphonenumber</groupId>
<artifactId>demo</artifactId>
- <version>7.2.6</version>
+ <version>7.7.0</version>
<properties>
<gae.version>1.9.32</gae.version>
@@ -31,7 +31,7 @@
<version>2.5</version>
</dependency>
<dependency>
- <groupId>org.apache.commons</groupId>
+ <groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>1.3.2</version>
</dependency>
@@ -48,17 +48,17 @@
<dependency>
<groupId>com.googlecode.libphonenumber</groupId>
<artifactId>libphonenumber</artifactId>
- <version>7.2.6</version>
+ <version>7.7.0</version>
</dependency>
<dependency>
<groupId>com.googlecode.libphonenumber</groupId>
<artifactId>geocoder</artifactId>
- <version>2.36</version>
+ <version>2.53</version>
</dependency>
<dependency>
<groupId>com.googlecode.libphonenumber</groupId>
<artifactId>carrier</artifactId>
- <version>1.26</version>
+ <version>1.43</version>
</dependency>
</dependencies>
diff --git a/geocoder/pom.xml b/geocoder/pom.xml
index a345582..99030c1 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.36</version>
+ <version>2.53</version>
<packaging>jar</packaging>
<url>https://github.com/googlei18n/libphonenumber/</url>
<parent>
<groupId>com.googlecode.libphonenumber</groupId>
<artifactId>libphonenumber-parent</artifactId>
- <version>7.2.6</version>
+ <version>7.7.0</version>
</parent>
<build>
@@ -36,18 +36,40 @@
<targetPath>com/google/i18n/phonenumbers/timezones/testing_data</targetPath>
</testResource>
</testResources>
+ <plugins>
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>animal-sniffer-maven-plugin</artifactId>
+ <version>1.15</version>
+ <executions>
+ <execution>
+ <phase>test</phase>
+ <goals>
+ <goal>check</goal>
+ </goals>
+ </execution>
+ </executions>
+ <configuration>
+ <signature>
+ <groupId>org.codehaus.mojo.signature</groupId>
+ <artifactId>java15</artifactId>
+ <version>1.0</version>
+ </signature>
+ </configuration>
+ </plugin>
+ </plugins>
</build>
<dependencies>
<dependency>
<groupId>com.googlecode.libphonenumber</groupId>
<artifactId>libphonenumber</artifactId>
- <version>7.2.6</version>
+ <version>7.7.0</version>
</dependency>
<dependency>
<groupId>com.googlecode.libphonenumber</groupId>
<artifactId>prefixmapper</artifactId>
- <version>2.36</version>
+ <version>2.53</version>
</dependency>
</dependencies>
diff --git a/geocoder/src/com/google/i18n/phonenumbers/geocoding/PhoneNumberOfflineGeocoder.java b/geocoder/src/com/google/i18n/phonenumbers/geocoding/PhoneNumberOfflineGeocoder.java
index 5642a11..f4dc6aa 100644
--- a/geocoder/src/com/google/i18n/phonenumbers/geocoding/PhoneNumberOfflineGeocoder.java
+++ b/geocoder/src/com/google/i18n/phonenumbers/geocoding/PhoneNumberOfflineGeocoder.java
@@ -186,7 +186,7 @@
PhoneNumberType numberType = phoneUtil.getNumberType(number);
if (numberType == PhoneNumberType.UNKNOWN) {
return "";
- } else if (!canBeGeocoded(numberType)) {
+ } else if (!phoneUtil.isNumberGeographical(numberType, number.getCountryCode())) {
return getCountryNameForNumber(number, languageCode);
}
return getDescriptionForValidNumber(number, languageCode);
@@ -209,20 +209,9 @@
PhoneNumberType numberType = phoneUtil.getNumberType(number);
if (numberType == PhoneNumberType.UNKNOWN) {
return "";
- } else if (!canBeGeocoded(numberType)) {
+ } else if (!phoneUtil.isNumberGeographical(numberType, number.getCountryCode())) {
return getCountryNameForNumber(number, languageCode);
}
return getDescriptionForValidNumber(number, languageCode, userRegion);
}
-
- /**
- * A similar method is implemented as PhoneNumberUtil.isNumberGeographical, which performs a
- * stricter check, as it determines if a number has a geographical association. Also, if new
- * phone number types were added, we should check if this other method should be updated too.
- */
- private boolean canBeGeocoded(PhoneNumberType numberType) {
- return (numberType == PhoneNumberType.FIXED_LINE ||
- numberType == PhoneNumberType.MOBILE ||
- numberType == PhoneNumberType.FIXED_LINE_OR_MOBILE);
- }
}
diff --git a/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/1548_en b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/1548_en
new file mode 100644
index 0000000..cf1636a
--- /dev/null
+++ b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/1548_en
Binary files differ
diff --git a/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/1743_en b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/1743_en
new file mode 100644
index 0000000..29a919a
--- /dev/null
+++ b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/1743_en
Binary files differ
diff --git a/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/1747_en b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/1747_en
new file mode 100644
index 0000000..24bb011
--- /dev/null
+++ b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/1747_en
Binary files differ
diff --git a/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/1934_en b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/1934_en
new file mode 100644
index 0000000..0856e34
--- /dev/null
+++ b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/1934_en
Binary files differ
diff --git a/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/212_en b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/212_en
index fa71451..2ae8176 100644
--- a/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/212_en
+++ b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/212_en
Binary files differ
diff --git a/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/223_en b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/223_en
new file mode 100644
index 0000000..06efda8
--- /dev/null
+++ b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/223_en
Binary files differ
diff --git a/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/251_en b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/251_en
index e389d1c..6da6432 100644
--- a/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/251_en
+++ b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/251_en
Binary files differ
diff --git a/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/254_en b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/254_en
index 3b413f6..1b18760 100644
--- a/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/254_en
+++ b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/254_en
Binary files differ
diff --git a/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/27_en b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/27_en
index 39d41a0..b99be33 100644
--- a/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/27_en
+++ b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/27_en
Binary files differ
diff --git a/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/371_en b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/371_en
index 5273f0e..5ad7e32 100644
--- a/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/371_en
+++ b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/371_en
Binary files differ
diff --git a/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/44_en b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/44_en
index 3a2d306..2dd3e79 100644
--- a/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/44_en
+++ b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/44_en
Binary files differ
diff --git a/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/501_en b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/501_en
new file mode 100644
index 0000000..dbf547d
--- /dev/null
+++ b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/501_en
Binary files differ
diff --git a/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/504_en b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/504_en
new file mode 100644
index 0000000..24aedf8
--- /dev/null
+++ b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/504_en
Binary files differ
diff --git a/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/55_en b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/55_en
index 61697eb..054d213 100644
--- a/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/55_en
+++ b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/55_en
Binary files differ
diff --git a/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/55_pt b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/55_pt
new file mode 100644
index 0000000..6e927cc
--- /dev/null
+++ b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/55_pt
Binary files differ
diff --git a/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/82_bg b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/82_bg
new file mode 100644
index 0000000..0f3c055
--- /dev/null
+++ b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/82_bg
Binary files differ
diff --git a/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/82_ca b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/82_ca
new file mode 100644
index 0000000..243c0a2
--- /dev/null
+++ b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/82_ca
Binary files differ
diff --git a/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/82_el b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/82_el
new file mode 100644
index 0000000..48d7608
--- /dev/null
+++ b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/82_el
Binary files differ
diff --git a/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/82_es b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/82_es
new file mode 100644
index 0000000..3d8653a
--- /dev/null
+++ b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/82_es
Binary files differ
diff --git a/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/82_fi b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/82_fi
new file mode 100644
index 0000000..b7348e9
--- /dev/null
+++ b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/82_fi
Binary files differ
diff --git a/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/82_hi b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/82_hi
new file mode 100644
index 0000000..1fbe406
--- /dev/null
+++ b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/82_hi
Binary files differ
diff --git a/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/82_hu b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/82_hu
new file mode 100644
index 0000000..96ca994
--- /dev/null
+++ b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/82_hu
Binary files differ
diff --git a/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/82_iw b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/82_iw
new file mode 100644
index 0000000..715f8f0
--- /dev/null
+++ b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/82_iw
Binary files differ
diff --git a/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/82_ja b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/82_ja
new file mode 100644
index 0000000..d559b04
--- /dev/null
+++ b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/82_ja
Binary files differ
diff --git a/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/82_pl b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/82_pl
new file mode 100644
index 0000000..440ff0e
--- /dev/null
+++ b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/82_pl
Binary files differ
diff --git a/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/82_pt b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/82_pt
new file mode 100644
index 0000000..c89b1b4
--- /dev/null
+++ b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/82_pt
Binary files differ
diff --git a/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/82_ro b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/82_ro
new file mode 100644
index 0000000..82606ac
--- /dev/null
+++ b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/82_ro
Binary files differ
diff --git a/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/82_ru b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/82_ru
new file mode 100644
index 0000000..e94b0d7
--- /dev/null
+++ b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/82_ru
Binary files differ
diff --git a/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/82_sl b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/82_sl
new file mode 100644
index 0000000..e083afe
--- /dev/null
+++ b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/82_sl
Binary files differ
diff --git a/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/82_sr b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/82_sr
new file mode 100644
index 0000000..ae96047
--- /dev/null
+++ b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/82_sr
Binary files differ
diff --git a/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/82_tr b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/82_tr
new file mode 100644
index 0000000..3fe4384
--- /dev/null
+++ b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/82_tr
Binary files differ
diff --git a/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/82_uk b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/82_uk
new file mode 100644
index 0000000..7f1676a
--- /dev/null
+++ b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/82_uk
Binary files differ
diff --git a/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/82_vi b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/82_vi
new file mode 100644
index 0000000..0221acd
--- /dev/null
+++ b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/82_vi
Binary files differ
diff --git a/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/84_en b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/84_en
index 5221729..28501b9 100644
--- a/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/84_en
+++ b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/84_en
Binary files differ
diff --git a/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/86_en b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/86_en
index ec13539..ca85eca 100644
--- a/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/86_en
+++ b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/86_en
Binary files differ
diff --git a/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/86_zh b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/86_zh
index 6519ec5..84f72fa 100644
--- a/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/86_zh
+++ b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/86_zh
Binary files differ
diff --git a/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/91_en b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/91_en
index 0b87cd9..06551ca 100644
--- a/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/91_en
+++ b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/91_en
Binary files differ
diff --git a/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/93_en b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/93_en
new file mode 100644
index 0000000..3c179c7
--- /dev/null
+++ b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/93_en
Binary files differ
diff --git a/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/93_fa b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/93_fa
new file mode 100644
index 0000000..19c76fd
--- /dev/null
+++ b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/93_fa
Binary files differ
diff --git a/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/98_en b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/98_en
index e6995f4..2d8f8f7 100644
--- a/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/98_en
+++ b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/98_en
Binary files differ
diff --git a/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/98_fa b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/98_fa
index 00da41f..19206f8 100644
--- a/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/98_fa
+++ b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/98_fa
Binary files differ
diff --git a/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/992_en b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/992_en
new file mode 100644
index 0000000..7bdce26
--- /dev/null
+++ b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/992_en
Binary files differ
diff --git a/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/994_en b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/994_en
new file mode 100644
index 0000000..69468e9
--- /dev/null
+++ b/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/994_en
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 591c591..7b3822c 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 f8a5045..08d7a6d 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/geocoder/test/com/google/i18n/phonenumbers/geocoding/PhoneNumberOfflineGeocoderTest.java b/geocoder/test/com/google/i18n/phonenumbers/geocoding/PhoneNumberOfflineGeocoderTest.java
index ed9bd3b..082a759 100644
--- a/geocoder/test/com/google/i18n/phonenumbers/geocoding/PhoneNumberOfflineGeocoderTest.java
+++ b/geocoder/test/com/google/i18n/phonenumbers/geocoding/PhoneNumberOfflineGeocoderTest.java
@@ -41,6 +41,8 @@
new PhoneNumber().setCountryCode(82).setNationalNumber(6421234567L);
private static final PhoneNumber KO_INVALID_NUMBER =
new PhoneNumber().setCountryCode(82).setNationalNumber(1234L);
+ private static final PhoneNumber KO_MOBILE =
+ new PhoneNumber().setCountryCode(82).setNationalNumber(101234567L);
private static final PhoneNumber US_NUMBER1 =
new PhoneNumber().setCountryCode(1).setNationalNumber(6502530000L);
private static final PhoneNumber US_NUMBER2 =
@@ -160,4 +162,9 @@
assertEquals("", geocoder.getDescriptionForNumber(KO_INVALID_NUMBER, Locale.ENGLISH));
assertEquals("", geocoder.getDescriptionForNumber(US_INVALID_NUMBER, Locale.ENGLISH));
}
+
+ public void testGetDescriptionForNonGeographicalNumberWithGeocodingPrefix() {
+ // We have a geocoding prefix, but we shouldn't use it since this is not geographical.
+ assertEquals("South Korea", geocoder.getDescriptionForNumber(KO_MOBILE, Locale.ENGLISH));
+ }
}
diff --git a/geocoder/test/com/google/i18n/phonenumbers/geocoding/testing_data/82_en b/geocoder/test/com/google/i18n/phonenumbers/geocoding/testing_data/82_en
index cd18ecb..8d13960 100644
--- a/geocoder/test/com/google/i18n/phonenumbers/geocoding/testing_data/82_en
+++ b/geocoder/test/com/google/i18n/phonenumbers/geocoding/testing_data/82_en
Binary files differ
diff --git a/internal/prefixmapper/pom.xml b/internal/prefixmapper/pom.xml
index 3d86d55..f9ba2fb 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.36</version>
+ <version>2.53</version>
<packaging>jar</packaging>
<url>https://github.com/googlei18n/libphonenumber/</url>
<parent>
<groupId>com.googlecode.libphonenumber</groupId>
<artifactId>libphonenumber-parent</artifactId>
- <version>7.2.6</version>
+ <version>7.7.0</version>
<relativePath>../../pom.xml</relativePath>
</parent>
@@ -23,13 +23,35 @@
<targetPath>com/google/i18n/phonenumbers/geocoding/testing_data</targetPath>
</testResource>
</testResources>
+ <plugins>
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>animal-sniffer-maven-plugin</artifactId>
+ <version>1.15</version>
+ <executions>
+ <execution>
+ <phase>test</phase>
+ <goals>
+ <goal>check</goal>
+ </goals>
+ </execution>
+ </executions>
+ <configuration>
+ <signature>
+ <groupId>org.codehaus.mojo.signature</groupId>
+ <artifactId>java15</artifactId>
+ <version>1.0</version>
+ </signature>
+ </configuration>
+ </plugin>
+ </plugins>
</build>
<dependencies>
<dependency>
<groupId>com.googlecode.libphonenumber</groupId>
<artifactId>libphonenumber</artifactId>
- <version>7.2.6</version>
+ <version>7.7.0</version>
</dependency>
</dependencies>
diff --git a/lib/com/google/protobuf/protobuf-java/2.6.1/protobuf-java-2.6.1.jar b/lib/com/google/protobuf/protobuf-java/2.6.1/protobuf-java-2.6.1.jar
deleted file mode 100644
index 669e672..0000000
--- a/lib/com/google/protobuf/protobuf-java/2.6.1/protobuf-java-2.6.1.jar
+++ /dev/null
Binary files differ
diff --git a/lib/com/google/protobuf/protobuf-java/2.6.1/protobuf-java-2.6.1.pom b/lib/com/google/protobuf/protobuf-java/2.6.1/protobuf-java-2.6.1.pom
deleted file mode 100644
index a9f88e0..0000000
--- a/lib/com/google/protobuf/protobuf-java/2.6.1/protobuf-java-2.6.1.pom
+++ /dev/null
@@ -1,9 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
- <modelVersion>4.0.0</modelVersion>
- <groupId>com.google.protobuf</groupId>
- <artifactId>protobuf-java</artifactId>
- <version>2.6.1</version>
- <description>POM was created from install:install-file</description>
-</project>
diff --git a/lib/com/google/protobuf/protobuf-java/maven-metadata-local.xml b/lib/com/google/protobuf/protobuf-java/maven-metadata-local.xml
deleted file mode 100644
index fdb8517..0000000
--- a/lib/com/google/protobuf/protobuf-java/maven-metadata-local.xml
+++ /dev/null
@@ -1,12 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<metadata>
- <groupId>com.google.protobuf</groupId>
- <artifactId>protobuf-java</artifactId>
- <versioning>
- <release>2.6.1</release>
- <versions>
- <version>2.6.1</version>
- </versions>
- <lastUpdated>20151102180249</lastUpdated>
- </versioning>
-</metadata>
diff --git a/libphonenumber/pom.xml b/libphonenumber/pom.xml
index 82446bc..608ab88 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>7.2.6</version>
+ <version>7.7.0</version>
<packaging>jar</packaging>
<url>https://github.com/googlei18n/libphonenumber/</url>
<parent>
<groupId>com.googlecode.libphonenumber</groupId>
<artifactId>libphonenumber-parent</artifactId>
- <version>7.2.6</version>
+ <version>7.7.0</version>
</parent>
<build>
@@ -30,41 +30,26 @@
</testResources>
<plugins>
<plugin>
- <artifactId>maven-jar-plugin</artifactId>
- <configuration>
- <excludes>
- <exclude>com/google/i18n/phonenumbers/SingleFileMetadataSourceImpl.class</exclude>
- <exclude>com/google/i18n/phonenumbers/data/SingleFilePhoneNumberMetadataProto</exclude>
- </excludes>
- </configuration>
- </plugin>
- <plugin>
- <artifactId>maven-shade-plugin</artifactId>
- <version>2.4.2</version>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>animal-sniffer-maven-plugin</artifactId>
+ <version>1.15</version>
<executions>
<execution>
- <phase>package</phase>
+ <phase>test</phase>
<goals>
- <goal>shade</goal>
+ <goal>check</goal>
</goals>
</execution>
</executions>
+ <configuration>
+ <signature>
+ <groupId>org.codehaus.mojo.signature</groupId>
+ <artifactId>java15</artifactId>
+ <version>1.0</version>
+ </signature>
+ </configuration>
</plugin>
</plugins>
</build>
- <repositories>
- <repository>
- <id>protobuf-java-lib</id>
- <url>file://${project.basedir}/../lib</url>
- </repository>
- </repositories>
- <dependencies>
- <dependency>
- <groupId>com.google.protobuf</groupId>
- <artifactId>protobuf-java</artifactId>
- <version>2.6.1</version>
- </dependency>
- </dependencies>
-
</project>
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/AsYouTypeFormatter.java b/libphonenumber/src/com/google/i18n/phonenumbers/AsYouTypeFormatter.java
index 6af473e..abcab8d 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/AsYouTypeFormatter.java
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/AsYouTypeFormatter.java
@@ -16,8 +16,8 @@
package com.google.i18n.phonenumbers;
-import com.google.i18n.phonenumbers.nano.Phonemetadata.NumberFormat;
-import com.google.i18n.phonenumbers.nano.Phonemetadata.PhoneMetadata;
+import com.google.i18n.phonenumbers.Phonemetadata.NumberFormat;
+import com.google.i18n.phonenumbers.Phonemetadata.PhoneMetadata;
import java.util.ArrayList;
import java.util.Iterator;
@@ -61,11 +61,8 @@
// Character used when appropriate to separate a prefix, such as a long NDD or a country calling
// code, from the national number.
private static final char SEPARATOR_BEFORE_NATIONAL_NUMBER = ' ';
- private static final PhoneMetadata EMPTY_METADATA;
- static {
- EMPTY_METADATA = new PhoneMetadata();
- EMPTY_METADATA.internationalPrefix = "NA";
- }
+ private static final PhoneMetadata EMPTY_METADATA =
+ new PhoneMetadata().setInternationalPrefix("NA");
private PhoneMetadata defaultMetadata;
private PhoneMetadata currentMetadata;
@@ -154,7 +151,7 @@
Iterator<NumberFormat> it = possibleFormats.iterator();
while (it.hasNext()) {
NumberFormat numberFormat = it.next();
- String pattern = numberFormat.pattern;
+ String pattern = numberFormat.getPattern();
if (currentFormattingPattern.equals(pattern)) {
return false;
}
@@ -162,7 +159,7 @@
currentFormattingPattern = pattern;
shouldAddSpaceAfterNationalPrefix =
NATIONAL_PREFIX_SEPARATORS_PATTERN.matcher(
- numberFormat.nationalPrefixFormattingRule).find();
+ numberFormat.getNationalPrefixFormattingRule()).find();
// With a new formatting template, the matched position using the old template needs to be
// reset.
lastMatchPosition = 0;
@@ -176,17 +173,17 @@
}
private void getAvailableFormats(String leadingDigits) {
- NumberFormat[] numberFormats =
- (isCompleteNumber && currentMetadata.intlNumberFormat.length > 0)
- ? currentMetadata.intlNumberFormat
- : currentMetadata.numberFormat;
- boolean nationalPrefixIsUsedByCountry = (!currentMetadata.nationalPrefix.equals(""));
- for (NumberFormat format : numberFormats) {
+ List<NumberFormat> formatList =
+ (isCompleteNumber && currentMetadata.intlNumberFormatSize() > 0)
+ ? currentMetadata.intlNumberFormats()
+ : currentMetadata.numberFormats();
+ boolean nationalPrefixIsUsedByCountry = currentMetadata.hasNationalPrefix();
+ for (NumberFormat format : formatList) {
if (!nationalPrefixIsUsedByCountry || isCompleteNumber ||
- format.nationalPrefixOptionalWhenFormatting ||
+ format.isNationalPrefixOptionalWhenFormatting() ||
PhoneNumberUtil.formattingRuleHasFirstGroupOnly(
- format.nationalPrefixFormattingRule)) {
- if (isFormatEligible(format.format)) {
+ format.getNationalPrefixFormattingRule())) {
+ if (isFormatEligible(format.getFormat())) {
possibleFormats.add(format);
}
}
@@ -203,14 +200,14 @@
Iterator<NumberFormat> it = possibleFormats.iterator();
while (it.hasNext()) {
NumberFormat format = it.next();
- if (format.leadingDigitsPattern.length == 0) {
+ if (format.leadingDigitsPatternSize() == 0) {
// Keep everything that isn't restricted by leading digits.
continue;
}
int lastLeadingDigitsPattern =
- Math.min(indexOfLeadingDigitsPattern, format.leadingDigitsPattern.length - 1);
+ Math.min(indexOfLeadingDigitsPattern, format.leadingDigitsPatternSize() - 1);
Pattern leadingDigitsPattern = regexCache.getPatternForRegex(
- format.leadingDigitsPattern[lastLeadingDigitsPattern]);
+ format.getLeadingDigitsPattern(lastLeadingDigitsPattern));
Matcher m = leadingDigitsPattern.matcher(leadingDigits);
if (!m.lookingAt()) {
it.remove();
@@ -219,7 +216,7 @@
}
private boolean createFormattingTemplate(NumberFormat format) {
- String numberPattern = format.pattern;
+ String numberPattern = format.getPattern();
// The formatter doesn't format numbers when numberPattern contains "|", e.g.
// (20|3)\d{4}. In those cases we quickly return.
@@ -233,7 +230,7 @@
// Replace any standalone digit (not the one in d{}) with \d
numberPattern = STANDALONE_DIGIT_PATTERN.matcher(numberPattern).replaceAll("\\\\d");
formattingTemplate.setLength(0);
- String tempTemplate = getFormattingTemplate(numberPattern, format.format);
+ String tempTemplate = getFormattingTemplate(numberPattern, format.getFormat());
if (tempTemplate.length() > 0) {
formattingTemplate.append(tempTemplate);
return true;
@@ -431,12 +428,12 @@
*/
String attemptToFormatAccruedDigits() {
for (NumberFormat numberFormat : possibleFormats) {
- Matcher m = regexCache.getPatternForRegex(numberFormat.pattern).matcher(nationalNumber);
+ Matcher m = regexCache.getPatternForRegex(numberFormat.getPattern()).matcher(nationalNumber);
if (m.matches()) {
shouldAddSpaceAfterNationalPrefix =
NATIONAL_PREFIX_SEPARATORS_PATTERN.matcher(
- numberFormat.nationalPrefixFormattingRule).find();
- String formattedNumber = m.replaceAll(numberFormat.format);
+ numberFormat.getNationalPrefixFormattingRule()).find();
+ String formattedNumber = m.replaceAll(numberFormat.getFormat());
return appendNationalNumber(formattedNumber);
}
}
@@ -529,7 +526,7 @@
// that national significant numbers in NANPA always start with [2-9] after the national prefix.
// Numbers beginning with 1[01] can only be short/emergency numbers, which don't need the
// national prefix.
- return (currentMetadata.countryCode == 1) && (nationalNumber.charAt(0) == '1') &&
+ return (currentMetadata.getCountryCode() == 1) && (nationalNumber.charAt(0) == '1') &&
(nationalNumber.charAt(1) != '0') && (nationalNumber.charAt(1) != '1');
}
@@ -540,9 +537,9 @@
startOfNationalNumber = 1;
prefixBeforeNationalNumber.append('1').append(SEPARATOR_BEFORE_NATIONAL_NUMBER);
isCompleteNumber = true;
- } else if (!currentMetadata.nationalPrefixForParsing.equals("")) {
+ } else if (currentMetadata.hasNationalPrefixForParsing()) {
Pattern nationalPrefixForParsing =
- regexCache.getPatternForRegex(currentMetadata.nationalPrefixForParsing);
+ regexCache.getPatternForRegex(currentMetadata.getNationalPrefixForParsing());
Matcher m = nationalPrefixForParsing.matcher(nationalNumber);
// Since some national prefix patterns are entirely optional, check that a national prefix
// could actually be extracted.
@@ -570,7 +567,7 @@
private boolean attemptToExtractIdd() {
Pattern internationalPrefix =
regexCache.getPatternForRegex("\\" + PhoneNumberUtil.PLUS_SIGN + "|" +
- currentMetadata.internationalPrefix);
+ currentMetadata.getInternationalPrefix());
Matcher iddMatcher = internationalPrefix.matcher(accruedInputWithoutFormatting);
if (iddMatcher.lookingAt()) {
isCompleteNumber = true;
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/MetadataLoader.java b/libphonenumber/src/com/google/i18n/phonenumbers/MetadataLoader.java
index 1ab3e93..9904bcd 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/MetadataLoader.java
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/MetadataLoader.java
@@ -23,7 +23,8 @@
*/
public interface MetadataLoader {
/**
- * Returns an input stream corresponding to the metadata to load.
+ * Returns an input stream corresponding to the metadata to load. This method may be called
+ * concurrently so implementations must be thread-safe.
*
* @param metadataFileName File name (including path) of metadata to load. File path is an
* absolute class path like /com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto.
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/MetadataManager.java b/libphonenumber/src/com/google/i18n/phonenumbers/MetadataManager.java
index 0d998c7..df72a60 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/MetadataManager.java
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/MetadataManager.java
@@ -16,16 +16,16 @@
package com.google.i18n.phonenumbers;
-import com.google.i18n.phonenumbers.nano.Phonemetadata.PhoneMetadata;
-import com.google.i18n.phonenumbers.nano.Phonemetadata.PhoneMetadataCollection;
-import com.google.protobuf.nano.CodedInputByteBufferNano;
+import com.google.i18n.phonenumbers.Phonemetadata.PhoneMetadata;
+import com.google.i18n.phonenumbers.Phonemetadata.PhoneMetadataCollection;
-import java.io.ByteArrayOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.ObjectInputStream;
import java.util.Collections;
import java.util.HashMap;
+import java.util.Iterator;
+import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.logging.Level;
@@ -36,13 +36,13 @@
* additional data files such as PhoneNumberAlternateFormats, but in the future it is envisaged it
* would handle the main metadata file (PhoneNumberMetadata.xml) as well.
*/
-class MetadataManager {
+final class MetadataManager {
private static final String ALTERNATE_FORMATS_FILE_PREFIX =
"/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto";
private static final String SHORT_NUMBER_METADATA_FILE_PREFIX =
"/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto";
- private static final Logger LOGGER = Logger.getLogger(MetadataManager.class.getName());
+ private static final Logger logger = Logger.getLogger(MetadataManager.class.getName());
private static final Map<Integer, PhoneMetadata> callingCodeToAlternateFormatsMap =
Collections.synchronizedMap(new HashMap<Integer, PhoneMetadata>());
@@ -61,50 +61,52 @@
private MetadataManager() {
}
- private static void close(InputStream in) {
- if (in != null) {
+ /**
+ * Loads and returns the metadata object from the given stream and closes the stream.
+ *
+ * @param source the non-null stream from which metadata is to be read
+ * @return the loaded metadata object
+ */
+ static PhoneMetadataCollection loadMetadataAndCloseInput(InputStream source) {
+ ObjectInputStream ois = null;
+ try {
try {
- in.close();
+ ois = new ObjectInputStream(source);
} catch (IOException e) {
- LOGGER.log(Level.WARNING, e.toString());
+ throw new RuntimeException("cannot load/parse metadata", e);
+ }
+ PhoneMetadataCollection metadataCollection = new PhoneMetadataCollection();
+ try {
+ metadataCollection.readExternal(ois);
+ } catch (IOException e) {
+ throw new RuntimeException("cannot load/parse metadata", e);
+ }
+ return metadataCollection;
+ } finally {
+ try {
+ if (ois != null) {
+ // This will close all underlying streams as well, including source.
+ ois.close();
+ } else {
+ source.close();
+ }
+ } catch (IOException e) {
+ logger.log(Level.WARNING, "error closing input stream (ignored)", e);
}
}
}
- // The size of the byte buffer used for deserializing the alternate formats and short number
- // metadata files for each region.
- private static final int BUFFER_SIZE = 16 * 1024;
-
- static CodedInputByteBufferNano convertStreamToByteBuffer(ObjectInputStream in, int bufferSize)
- throws IOException {
- ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
- int nRead;
- byte[] data = new byte[bufferSize];
-
- while ((nRead = in.read(data, 0, bufferSize)) != -1) {
- outputStream.write(data, 0, nRead);
- }
-
- outputStream.flush();
- return CodedInputByteBufferNano.newInstance(outputStream.toByteArray());
- }
-
private static void loadAlternateFormatsMetadataFromFile(int countryCallingCode) {
- InputStream source = PhoneNumberMatcher.class.getResourceAsStream(
- ALTERNATE_FORMATS_FILE_PREFIX + "_" + countryCallingCode);
- ObjectInputStream in = null;
- try {
- in = new ObjectInputStream(source);
- CodedInputByteBufferNano byteBuffer = convertStreamToByteBuffer(in, BUFFER_SIZE);
- PhoneMetadataCollection alternateFormats = new PhoneMetadataCollection();
- alternateFormats.mergeFrom(byteBuffer);
- for (PhoneMetadata metadata : alternateFormats.metadata) {
- callingCodeToAlternateFormatsMap.put(metadata.countryCode, metadata);
- }
- } catch (IOException e) {
- LOGGER.log(Level.WARNING, e.toString());
- } finally {
- close(in);
+ String fileName = ALTERNATE_FORMATS_FILE_PREFIX + "_" + countryCallingCode;
+ InputStream source = MetadataManager.class.getResourceAsStream(fileName);
+ if (source == null) {
+ // Sanity check; this should not happen since we only load things based on the expectation
+ // that they are present, by checking the map of available data first.
+ throw new IllegalStateException("missing metadata: " + fileName);
+ }
+ PhoneMetadataCollection alternateFormats = loadMetadataAndCloseInput(source);
+ for (PhoneMetadata metadata : alternateFormats.getMetadataList()) {
+ callingCodeToAlternateFormatsMap.put(metadata.getCountryCode(), metadata);
}
}
@@ -121,21 +123,16 @@
}
private static void loadShortNumberMetadataFromFile(String regionCode) {
- InputStream source = PhoneNumberMatcher.class.getResourceAsStream(
- SHORT_NUMBER_METADATA_FILE_PREFIX + "_" + regionCode);
- ObjectInputStream in = null;
- try {
- in = new ObjectInputStream(source);
- CodedInputByteBufferNano byteBuffer = convertStreamToByteBuffer(in, BUFFER_SIZE);
- PhoneMetadataCollection shortNumberMetadata = new PhoneMetadataCollection();
- shortNumberMetadata.mergeFrom(byteBuffer);
- for (PhoneMetadata metadata : shortNumberMetadata.metadata) {
- regionCodeToShortNumberMetadataMap.put(regionCode, metadata);
- }
- } catch (IOException e) {
- LOGGER.log(Level.WARNING, e.toString());
- } finally {
- close(in);
+ String fileName = SHORT_NUMBER_METADATA_FILE_PREFIX + "_" + regionCode;
+ InputStream source = MetadataManager.class.getResourceAsStream(fileName);
+ if (source == null) {
+ // Sanity check; this should not happen since we only load things based on the expectation
+ // that they are present, by checking the map of available data first.
+ throw new IllegalStateException("missing metadata: " + fileName);
+ }
+ PhoneMetadataCollection shortNumberMetadata = loadMetadataAndCloseInput(source);
+ for (PhoneMetadata metadata : shortNumberMetadata.getMetadataList()) {
+ regionCodeToShortNumberMetadataMap.put(regionCode, metadata);
}
}
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/MetadataSource.java b/libphonenumber/src/com/google/i18n/phonenumbers/MetadataSource.java
index 018ff3d..d0ec50d 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/MetadataSource.java
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/MetadataSource.java
@@ -16,7 +16,7 @@
package com.google.i18n.phonenumbers;
-import com.google.i18n.phonenumbers.nano.Phonemetadata.PhoneMetadata;
+import com.google.i18n.phonenumbers.Phonemetadata.PhoneMetadata;
/**
* A source for phone metadata for all regions.
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/MultiFileMetadataSourceImpl.java b/libphonenumber/src/com/google/i18n/phonenumbers/MultiFileMetadataSourceImpl.java
index 4f6b29d..d89052c 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/MultiFileMetadataSourceImpl.java
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/MultiFileMetadataSourceImpl.java
@@ -16,16 +16,16 @@
package com.google.i18n.phonenumbers;
-import com.google.i18n.phonenumbers.nano.Phonemetadata.PhoneMetadata;
-import com.google.i18n.phonenumbers.nano.Phonemetadata.PhoneMetadataCollection;
+import com.google.i18n.phonenumbers.Phonemetadata.PhoneMetadata;
+import com.google.i18n.phonenumbers.Phonemetadata.PhoneMetadataCollection;
-import java.io.IOException;
import java.io.InputStream;
import java.io.ObjectInputStream;
import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
+import java.util.concurrent.ConcurrentHashMap;
import java.util.logging.Level;
import java.util.logging.Logger;
@@ -41,18 +41,14 @@
"/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto";
// A mapping from a region code to the PhoneMetadata for that region.
- // Note: Synchronization, though only needed for the Android version of the library, is used in
- // all versions for consistency.
- private final Map<String, PhoneMetadata> regionToMetadataMap =
- Collections.synchronizedMap(new HashMap<String, PhoneMetadata>());
+ private final ConcurrentHashMap<String, PhoneMetadata> geographicalRegions =
+ new ConcurrentHashMap<String, PhoneMetadata>();
// A mapping from a country calling code for a non-geographical entity to the PhoneMetadata for
// that country calling code. Examples of the country calling codes include 800 (International
// Toll Free Service) and 808 (International Shared Cost Service).
- // Note: Synchronization, though only needed for the Android version of the library, is used in
- // all versions for consistency.
- private final Map<Integer, PhoneMetadata> countryCodeToNonGeographicalMetadataMap =
- Collections.synchronizedMap(new HashMap<Integer, PhoneMetadata>());
+ private final ConcurrentHashMap<Integer, PhoneMetadata> nonGeographicalRegions =
+ new ConcurrentHashMap<Integer, PhoneMetadata>();
// The prefix of the metadata files from which region data is loaded.
private final String filePrefix;
@@ -60,104 +56,81 @@
// The metadata loader used to inject alternative metadata sources.
private final MetadataLoader metadataLoader;
- // It is assumed that metadataLoader is not null.
- public MultiFileMetadataSourceImpl(String filePrefix, MetadataLoader metadataLoader) {
+ // It is assumed that metadataLoader is not null. If needed, checks should happen before passing
+ // here.
+ // @VisibleForTesting
+ MultiFileMetadataSourceImpl(String filePrefix, MetadataLoader metadataLoader) {
this.filePrefix = filePrefix;
this.metadataLoader = metadataLoader;
}
- // It is assumed that metadataLoader is not null.
+ // It is assumed that metadataLoader is not null. If needed, checks should happen before passing
+ // here.
public MultiFileMetadataSourceImpl(MetadataLoader metadataLoader) {
this(META_DATA_FILE_PREFIX, metadataLoader);
}
@Override
public PhoneMetadata getMetadataForRegion(String regionCode) {
- synchronized (regionToMetadataMap) {
- if (!regionToMetadataMap.containsKey(regionCode)) {
- // The regionCode here will be valid and won't be '001', so we don't need to worry about
- // what to pass in for the country calling code.
- loadMetadataFromFile(regionCode, 0);
- }
- }
- return regionToMetadataMap.get(regionCode);
+ PhoneMetadata metadata = geographicalRegions.get(regionCode);
+ return (metadata != null) ? metadata : loadMetadataFromFile(
+ regionCode, geographicalRegions, filePrefix, metadataLoader);
}
@Override
public PhoneMetadata getMetadataForNonGeographicalRegion(int countryCallingCode) {
- synchronized (countryCodeToNonGeographicalMetadataMap) {
- if (!countryCodeToNonGeographicalMetadataMap.containsKey(countryCallingCode)) {
- List<String> regionCodes =
- CountryCodeToRegionCodeMap.getCountryCodeToRegionCodeMap().get(countryCallingCode);
- // We can assume that if the country calling code maps to the non-geo entity region code
- // then that's the only region code it maps to.
- if (regionCodes.size() == 1 &&
- PhoneNumberUtil.REGION_CODE_FOR_NON_GEO_ENTITY.equals(regionCodes.get(0))) {
- loadMetadataFromFile(PhoneNumberUtil.REGION_CODE_FOR_NON_GEO_ENTITY, countryCallingCode);
- }
- }
+ PhoneMetadata metadata = nonGeographicalRegions.get(countryCallingCode);
+ if (metadata != null) {
+ return metadata;
}
- return countryCodeToNonGeographicalMetadataMap.get(countryCallingCode);
+ if (isNonGeographical(countryCallingCode)) {
+ return loadMetadataFromFile(
+ countryCallingCode, nonGeographicalRegions, filePrefix, metadataLoader);
+ }
+ // The given country calling code was for a geographical region.
+ return null;
}
- // @VisibleForTesting
- void loadMetadataFromFile(String regionCode, int countryCallingCode) {
- boolean isNonGeoRegion = PhoneNumberUtil.REGION_CODE_FOR_NON_GEO_ENTITY.equals(regionCode);
- String fileName = filePrefix + "_" +
- (isNonGeoRegion ? String.valueOf(countryCallingCode) : regionCode);
- InputStream source = metadataLoader.loadMetadata(fileName);
- if (source == null) {
- logger.log(Level.SEVERE, "missing metadata: " + fileName);
- throw new IllegalStateException("missing metadata: " + fileName);
- }
- try {
- PhoneMetadataCollection metadataCollection =
- loadMetadataAndCloseInput(new ObjectInputStream(source));
- PhoneMetadata[] metadataList = metadataCollection.metadata;
- if (metadataList.length == 0) {
- logger.log(Level.SEVERE, "empty metadata: " + fileName);
- throw new IllegalStateException("empty metadata: " + fileName);
- }
- if (metadataList.length > 1) {
- logger.log(Level.WARNING, "invalid metadata (too many entries): " + fileName);
- }
- PhoneMetadata metadata = metadataList[0];
- if (isNonGeoRegion) {
- countryCodeToNonGeographicalMetadataMap.put(countryCallingCode, metadata);
- } else {
- regionToMetadataMap.put(regionCode, metadata);
- }
- } catch (IOException e) {
- logger.log(Level.SEVERE, "cannot load/parse metadata: " + fileName, e);
- throw new RuntimeException("cannot load/parse metadata: " + fileName, e);
- }
+ // A country calling code is non-geographical if it only maps to the non-geographical region code,
+ // i.e. "001".
+ private boolean isNonGeographical(int countryCallingCode) {
+ List<String> regionCodes =
+ CountryCodeToRegionCodeMap.getCountryCodeToRegionCodeMap().get(countryCallingCode);
+ return (regionCodes.size() == 1
+ && PhoneNumberUtil.REGION_CODE_FOR_NON_GEO_ENTITY.equals(regionCodes.get(0)));
}
/**
- * Loads the metadata protocol buffer from the given stream and closes the stream afterwards. Any
- * exceptions that occur while reading or closing the stream are ignored.
- *
- * @param source the non-null stream from which metadata is to be read.
- * @return the loaded metadata protocol buffer.
+ * @param key The geographical region code or the non-geographical region's country
+ * calling code.
+ * @param map The map to contain the mapping from {@code key} to the corresponding
+ * metadata.
+ * @param filePrefix The prefix of the metadata files from which region data is loaded.
+ * @param metadataLoader The metadata loader used to inject alternative metadata sources.
*/
- private static PhoneMetadataCollection loadMetadataAndCloseInput(ObjectInputStream source) {
- // The size of the byte buffer used for deserializing the phone number metadata files for each
- // region.
- final int MULTI_FILE_BUFFER_SIZE = 16 * 1024;
-
- PhoneMetadataCollection metadataCollection = new PhoneMetadataCollection();
- try {
- metadataCollection.mergeFrom(
- MetadataManager.convertStreamToByteBuffer(source, MULTI_FILE_BUFFER_SIZE));
- } catch (IOException e) {
- logger.log(Level.WARNING, "error reading input (ignored)", e);
- } finally {
- try {
- source.close();
- } catch (IOException e) {
- logger.log(Level.WARNING, "error closing input stream (ignored)", e);
- }
+ // @VisibleForTesting
+ static <T> PhoneMetadata loadMetadataFromFile(
+ T key, ConcurrentHashMap<T, PhoneMetadata> map, String filePrefix,
+ MetadataLoader metadataLoader) {
+ // We assume key.toString() is well-defined.
+ String fileName = filePrefix + "_" + key;
+ InputStream source = metadataLoader.loadMetadata(fileName);
+ if (source == null) {
+ // Sanity check; this should not happen since we only load things based on the expectation
+ // that they are present, by checking the map of available data first.
+ throw new IllegalStateException("missing metadata: " + fileName);
}
- return metadataCollection;
+ PhoneMetadataCollection metadataCollection = MetadataManager.loadMetadataAndCloseInput(source);
+ List<PhoneMetadata> metadataList = metadataCollection.getMetadataList();
+ if (metadataList.isEmpty()) {
+ // Sanity check; this should not happen since we build with non-empty metadata.
+ throw new IllegalStateException("empty metadata: " + fileName);
+ }
+ if (metadataList.size() > 1) {
+ logger.log(Level.WARNING, "invalid metadata (too many entries): " + fileName);
+ }
+ PhoneMetadata metadata = metadataList.get(0);
+ PhoneMetadata oldValue = map.putIfAbsent(key, metadata);
+ return (oldValue != null) ? oldValue : metadata;
}
}
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/PhoneNumberMatcher.java b/libphonenumber/src/com/google/i18n/phonenumbers/PhoneNumberMatcher.java
index a9d918f..c74b21a 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/PhoneNumberMatcher.java
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/PhoneNumberMatcher.java
@@ -19,10 +19,10 @@
import com.google.i18n.phonenumbers.PhoneNumberUtil.Leniency;
import com.google.i18n.phonenumbers.PhoneNumberUtil.MatchType;
import com.google.i18n.phonenumbers.PhoneNumberUtil.PhoneNumberFormat;
-import com.google.i18n.phonenumbers.Phonenumber.PhoneNumber;
+import com.google.i18n.phonenumbers.Phonemetadata.NumberFormat;
+import com.google.i18n.phonenumbers.Phonemetadata.PhoneMetadata;
import com.google.i18n.phonenumbers.Phonenumber.PhoneNumber.CountryCodeSource;
-import com.google.i18n.phonenumbers.nano.Phonemetadata.NumberFormat;
-import com.google.i18n.phonenumbers.nano.Phonemetadata.PhoneMetadata;
+import com.google.i18n.phonenumbers.Phonenumber.PhoneNumber;
import java.lang.Character.UnicodeBlock;
import java.util.Iterator;
@@ -585,7 +585,7 @@
PhoneMetadata alternateFormats =
MetadataManager.getAlternateFormatsForCountry(number.getCountryCode());
if (alternateFormats != null) {
- for (NumberFormat alternateFormat : alternateFormats.numberFormat) {
+ for (NumberFormat alternateFormat : alternateFormats.numberFormats()) {
formattedNumberGroups = getNationalNumberGroups(util, number, alternateFormat);
if (checker.checkGroups(util, number, normalizedCandidate, formattedNumberGroups)) {
return true;
@@ -665,17 +665,17 @@
// Check if a national prefix should be present when formatting this number.
String nationalNumber = util.getNationalSignificantNumber(number);
NumberFormat formatRule =
- util.chooseFormattingPatternForNumber(metadata.numberFormat, nationalNumber);
+ util.chooseFormattingPatternForNumber(metadata.numberFormats(), nationalNumber);
// To do this, we check that a national prefix formatting rule was present and that it wasn't
// just the first-group symbol ($1) with punctuation.
- if ((formatRule != null) && formatRule.nationalPrefixFormattingRule.length() > 0) {
- if (formatRule.nationalPrefixOptionalWhenFormatting) {
+ if ((formatRule != null) && formatRule.getNationalPrefixFormattingRule().length() > 0) {
+ if (formatRule.isNationalPrefixOptionalWhenFormatting()) {
// The national-prefix is optional in these cases, so we don't need to check if it was
// present.
return true;
}
if (PhoneNumberUtil.formattingRuleHasFirstGroupOnly(
- formatRule.nationalPrefixFormattingRule)) {
+ formatRule.getNationalPrefixFormattingRule())) {
// National Prefix not needed for this number.
return true;
}
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/PhoneNumberUtil.java b/libphonenumber/src/com/google/i18n/phonenumbers/PhoneNumberUtil.java
index 0a0e455..5a41d76 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/PhoneNumberUtil.java
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/PhoneNumberUtil.java
@@ -16,11 +16,11 @@
package com.google.i18n.phonenumbers;
+import com.google.i18n.phonenumbers.Phonemetadata.NumberFormat;
+import com.google.i18n.phonenumbers.Phonemetadata.PhoneMetadata;
+import com.google.i18n.phonenumbers.Phonemetadata.PhoneNumberDesc;
import com.google.i18n.phonenumbers.Phonenumber.PhoneNumber;
import com.google.i18n.phonenumbers.Phonenumber.PhoneNumber.CountryCodeSource;
-import com.google.i18n.phonenumbers.nano.Phonemetadata.NumberFormat;
-import com.google.i18n.phonenumbers.nano.Phonemetadata.PhoneMetadata;
-import com.google.i18n.phonenumbers.nano.Phonemetadata.PhoneNumberDesc;
import java.io.InputStream;
import java.util.ArrayList;
@@ -88,6 +88,19 @@
// be the length of the area code plus the length of the mobile token.
private static final Map<Integer, String> MOBILE_TOKEN_MAPPINGS;
+ // Set of country codes that have geographically assigned mobile numbers (see GEO_MOBILE_COUNTRIES
+ // below) which are not based on *area codes*. For example, in China mobile numbers start with a
+ // carrier indicator, and beyond that are geographically assigned: this carrier indicator is not
+ // considered to be an area code.
+ private static final Set<Integer> GEO_MOBILE_COUNTRIES_WITHOUT_MOBILE_AREA_CODES;
+
+ // Set of country calling codes that have geographically assigned mobile numbers. This may not be
+ // complete; we add calling codes case by case, as we find geographical mobile numbers or hear
+ // from user reports. Note that countries like the US, where we can't distinguish between
+ // fixed-line or mobile numbers, are not listed here, since we consider FIXED_LINE_OR_MOBILE to be
+ // a possibly geographically-related type anyway (like FIXED_LINE).
+ private static final Set<Integer> GEO_MOBILE_COUNTRIES;
+
// The PLUS_SIGN signifies the international prefix.
static final char PLUS_SIGN = '+';
@@ -119,6 +132,19 @@
mobileTokenMap.put(54, "9");
MOBILE_TOKEN_MAPPINGS = Collections.unmodifiableMap(mobileTokenMap);
+ HashSet<Integer> geoMobileCountriesWithoutMobileAreaCodes = new HashSet<Integer>();
+ geoMobileCountriesWithoutMobileAreaCodes.add(86); // China
+ GEO_MOBILE_COUNTRIES_WITHOUT_MOBILE_AREA_CODES =
+ Collections.unmodifiableSet(geoMobileCountriesWithoutMobileAreaCodes);
+
+ HashSet<Integer> geoMobileCountries = new HashSet<Integer>();
+ geoMobileCountries.add(52); // Mexico
+ geoMobileCountries.add(54); // Argentina
+ geoMobileCountries.add(55); // Brazil
+ geoMobileCountries.add(62); // Indonesia: some prefixes only (fixed CMDA wireless)
+ geoMobileCountries.addAll(geoMobileCountriesWithoutMobileAreaCodes);
+ GEO_MOBILE_COUNTRIES = Collections.unmodifiableSet(geoMobileCountries);
+
// Simple ASCII digits map used to populate ALPHA_PHONE_MAPPINGS and
// ALL_PLUS_NUMBER_GROUPING_SYMBOLS.
HashMap<Character, Character> asciiDigitMappings = new HashMap<Character, Character>();
@@ -587,24 +613,6 @@
}
/**
- * Returns a copy of the given NumberFormat object.
- */
- static NumberFormat copyNumberFormat(NumberFormat other) {
- NumberFormat copy = new NumberFormat();
- copy.pattern = other.pattern;
- copy.format = other.format;
- int leadingDigitsPatternSize = other.leadingDigitsPattern.length;
- copy.leadingDigitsPattern = new String[leadingDigitsPatternSize];
- for (int i = 0; i < leadingDigitsPatternSize; i++) {
- copy.leadingDigitsPattern[i] = other.leadingDigitsPattern[i];
- }
- copy.nationalPrefixFormattingRule = other.nationalPrefixFormattingRule;
- copy.domesticCarrierCodeFormattingRule = other.domesticCarrierCodeFormattingRule;
- copy.nationalPrefixOptionalWhenFormatting = other.nationalPrefixOptionalWhenFormatting;
- return copy;
- }
-
- /**
* Attempts to extract a possible number from the string passed in. This currently strips all
* leading characters that cannot be used to start a phone number. Characters that can be used to
* start a phone number are defined in the VALID_START_CHAR_PATTERN. If none of these characters
@@ -787,11 +795,21 @@
}
// If a country doesn't use a national prefix, and this number doesn't have an Italian leading
// zero, we assume it is a closed dialling plan with no area codes.
- if (metadata.nationalPrefix.equals("") && !number.isItalianLeadingZero()) {
+ if (!metadata.hasNationalPrefix() && !number.isItalianLeadingZero()) {
return 0;
}
- if (!isNumberGeographical(number)) {
+ PhoneNumberType type = getNumberType(number);
+ int countryCallingCode = number.getCountryCode();
+ if (type == PhoneNumberType.MOBILE
+ // Note this is a rough heuristic; it doesn't cover Indonesia well, for example, where area
+ // codes are present for some mobile phones but not for others. We have no better way of
+ // representing this in the metadata at this point.
+ && GEO_MOBILE_COUNTRIES_WITHOUT_MOBILE_AREA_CODES.contains(countryCallingCode)) {
+ return 0;
+ }
+
+ if (!isNumberGeographical(type, countryCallingCode)) {
return 0;
}
@@ -1006,18 +1024,23 @@
* Tests whether a phone number has a geographical association. It checks if the number is
* associated to a certain region in the country where it belongs to. Note that this doesn't
* verify if the number is actually in use.
- *
- * A similar method is implemented as PhoneNumberOfflineGeocoder.canBeGeocoded, which performs a
- * looser check, since it only prevents cases where prefixes overlap for geocodable and
- * non-geocodable numbers. Also, if new phone number types were added, we should check if this
- * other method should be updated too.
*/
- boolean isNumberGeographical(PhoneNumber phoneNumber) {
- PhoneNumberType numberType = getNumberType(phoneNumber);
- // TODO: Include mobile phone numbers from countries like Indonesia, which has some
- // mobile numbers that are geographical.
- return numberType == PhoneNumberType.FIXED_LINE ||
- numberType == PhoneNumberType.FIXED_LINE_OR_MOBILE;
+ public boolean isNumberGeographical(PhoneNumber phoneNumber) {
+ return isNumberGeographical(getNumberType(phoneNumber), phoneNumber.getCountryCode());
+ }
+
+ /**
+ * Tests whether a phone number has a geographical association, as represented by its type and the
+ * country it belongs to.
+ *
+ * This version of isNumberGeographical exists since calculating the phone number type is
+ * expensive; if we have already done this, we don't want to do it again.
+ */
+ public boolean isNumberGeographical(PhoneNumberType numberType, int countryCallingCode) {
+ return numberType == PhoneNumberType.FIXED_LINE
+ || numberType == PhoneNumberType.FIXED_LINE_OR_MOBILE
+ || (GEO_MOBILE_COUNTRIES.contains(countryCallingCode)
+ && numberType == PhoneNumberType.MOBILE);
}
/**
@@ -1131,29 +1154,29 @@
StringBuilder formattedNumber = new StringBuilder(20);
NumberFormat formattingPattern =
- chooseFormattingPatternForNumber(userDefinedFormats.toArray(
- new NumberFormat[userDefinedFormats.size()]), nationalSignificantNumber);
+ chooseFormattingPatternForNumber(userDefinedFormats, nationalSignificantNumber);
if (formattingPattern == null) {
// If no pattern above is matched, we format the number as a whole.
formattedNumber.append(nationalSignificantNumber);
} else {
+ NumberFormat numFormatCopy = new NumberFormat();
// Before we do a replacement of the national prefix pattern $NP with the national prefix, we
// need to copy the rule so that subsequent replacements for different numbers have the
// appropriate national prefix.
- NumberFormat numFormatCopy = copyNumberFormat(formattingPattern);
- String nationalPrefixFormattingRule = formattingPattern.nationalPrefixFormattingRule;
+ numFormatCopy.mergeFrom(formattingPattern);
+ String nationalPrefixFormattingRule = formattingPattern.getNationalPrefixFormattingRule();
if (nationalPrefixFormattingRule.length() > 0) {
- String nationalPrefix = metadata.nationalPrefix;
+ String nationalPrefix = metadata.getNationalPrefix();
if (nationalPrefix.length() > 0) {
// Replace $NP with national prefix and $FG with the first group ($1).
nationalPrefixFormattingRule =
NP_PATTERN.matcher(nationalPrefixFormattingRule).replaceFirst(nationalPrefix);
nationalPrefixFormattingRule =
FG_PATTERN.matcher(nationalPrefixFormattingRule).replaceFirst("\\$1");
- numFormatCopy.nationalPrefixFormattingRule = nationalPrefixFormattingRule;
+ numFormatCopy.setNationalPrefixFormattingRule(nationalPrefixFormattingRule);
} else {
// We don't want to have a rule for how to format the national prefix if there isn't one.
- numFormatCopy.nationalPrefixFormattingRule = "";
+ numFormatCopy.clearNationalPrefixFormattingRule();
}
}
formattedNumber.append(
@@ -1369,16 +1392,16 @@
}
// Metadata cannot be null because we checked 'isValidRegionCode()' above.
PhoneMetadata metadataForRegionCallingFrom = getMetadataForRegion(regionCallingFrom);
- String internationalPrefix = metadataForRegionCallingFrom.internationalPrefix;
+ String internationalPrefix = metadataForRegionCallingFrom.getInternationalPrefix();
// For regions that have multiple international prefixes, the international format of the
// number is returned, unless there is a preferred international prefix.
String internationalPrefixForFormatting = "";
if (UNIQUE_INTERNATIONAL_PREFIX.matcher(internationalPrefix).matches()) {
internationalPrefixForFormatting = internationalPrefix;
- } else if (!metadataForRegionCallingFrom.preferredInternationalPrefix.equals("")) {
+ } else if (metadataForRegionCallingFrom.hasPreferredInternationalPrefix()) {
internationalPrefixForFormatting =
- metadataForRegionCallingFrom.preferredInternationalPrefix;
+ metadataForRegionCallingFrom.getPreferredInternationalPrefix();
}
String regionCode = getRegionCodeForCountryCode(countryCallingCode);
@@ -1464,7 +1487,7 @@
PhoneMetadata metadata = getMetadataForRegion(regionCode);
String nationalNumber = getNationalSignificantNumber(number);
NumberFormat formatRule =
- chooseFormattingPatternForNumber(metadata.numberFormat, nationalNumber);
+ chooseFormattingPatternForNumber(metadata.numberFormats(), nationalNumber);
// The format rule could still be null here if the national number was 0 and there was no
// raw input (this should not be possible for numbers generated by the phonenumber library
// as they would also not have a country calling code and we would have exited earlier).
@@ -1476,7 +1499,7 @@
// return the national format.
// TODO: Refactor the code below with the code in
// isNationalPrefixPresentIfRequired.
- String candidateNationalPrefixRule = formatRule.nationalPrefixFormattingRule;
+ String candidateNationalPrefixRule = formatRule.getNationalPrefixFormattingRule();
// We assume that the first-group symbol will never be _before_ the national prefix.
int indexOfFirstGroup = candidateNationalPrefixRule.indexOf("$1");
if (indexOfFirstGroup <= 0) {
@@ -1492,8 +1515,9 @@
break;
}
// Otherwise, we need to remove the national prefix from our output.
- NumberFormat numFormatCopy = copyNumberFormat(formatRule);
- numFormatCopy.nationalPrefixFormattingRule = "";
+ NumberFormat numFormatCopy = new NumberFormat();
+ numFormatCopy.mergeFrom(formatRule);
+ numFormatCopy.clearNationalPrefixFormattingRule();
List<NumberFormat> numberFormats = new ArrayList<NumberFormat>(1);
numberFormats.add(numFormatCopy);
formattedNumber = formatByPattern(number, PhoneNumberFormat.NATIONAL, numberFormats);
@@ -1550,7 +1574,7 @@
}
String nationalNumber = getNationalSignificantNumber(number);
NumberFormat formatRule =
- chooseFormattingPatternForNumber(metadata.numberFormat, nationalNumber);
+ chooseFormattingPatternForNumber(metadata.numberFormats(), nationalNumber);
return formatRule != null;
}
@@ -1614,17 +1638,18 @@
} else if (metadataForRegionCallingFrom != null &&
countryCode == getCountryCodeForValidRegion(regionCallingFrom)) {
NumberFormat formattingPattern =
- chooseFormattingPatternForNumber(metadataForRegionCallingFrom.numberFormat,
+ chooseFormattingPatternForNumber(metadataForRegionCallingFrom.numberFormats(),
nationalNumber);
if (formattingPattern == null) {
// If no pattern above is matched, we format the original input.
return rawInput;
}
- NumberFormat newFormat = copyNumberFormat(formattingPattern);
+ NumberFormat newFormat = new NumberFormat();
+ newFormat.mergeFrom(formattingPattern);
// The first group is the first group of digits that the user wrote together.
- newFormat.pattern = "(\\d+)(.*)";
+ newFormat.setPattern("(\\d+)(.*)");
// Here we just concatenate them back together after the national prefix has been fixed.
- newFormat.format = "$1$2";
+ newFormat.setFormat("$1$2");
// Now we format using this pattern instead of the default pattern, but with the national
// prefix prefixed if necessary.
// This will not work in the cases where the pattern (and not the leading digits) decide
@@ -1637,11 +1662,11 @@
// prefixes, the international format of the number is returned, unless there is a preferred
// international prefix.
if (metadataForRegionCallingFrom != null) {
- String internationalPrefix = metadataForRegionCallingFrom.internationalPrefix;
+ String internationalPrefix = metadataForRegionCallingFrom.getInternationalPrefix();
internationalPrefixForFormatting =
UNIQUE_INTERNATIONAL_PREFIX.matcher(internationalPrefix).matches()
? internationalPrefix
- : metadataForRegionCallingFrom.preferredInternationalPrefix;
+ : metadataForRegionCallingFrom.getPreferredInternationalPrefix();
}
StringBuilder formattedNumber = new StringBuilder(rawInput);
String regionCode = getRegionCodeForCountryCode(countryCode);
@@ -1723,27 +1748,27 @@
PhoneMetadata metadata,
PhoneNumberFormat numberFormat,
String carrierCode) {
- NumberFormat[] intlNumberFormats = metadata.intlNumberFormat;
+ List<NumberFormat> intlNumberFormats = metadata.intlNumberFormats();
// When the intlNumberFormats exists, we use that to format national number for the
// INTERNATIONAL format instead of using the numberDesc.numberFormats.
- NumberFormat[] availableFormats =
- (intlNumberFormats.length == 0 || numberFormat == PhoneNumberFormat.NATIONAL)
- ? metadata.numberFormat
- : metadata.intlNumberFormat;
+ List<NumberFormat> availableFormats =
+ (intlNumberFormats.size() == 0 || numberFormat == PhoneNumberFormat.NATIONAL)
+ ? metadata.numberFormats()
+ : metadata.intlNumberFormats();
NumberFormat formattingPattern = chooseFormattingPatternForNumber(availableFormats, number);
return (formattingPattern == null)
? number
: formatNsnUsingPattern(number, formattingPattern, numberFormat, carrierCode);
}
- NumberFormat chooseFormattingPatternForNumber(NumberFormat[] availableFormats,
+ NumberFormat chooseFormattingPatternForNumber(List<NumberFormat> availableFormats,
String nationalNumber) {
for (NumberFormat numFormat : availableFormats) {
- int size = numFormat.leadingDigitsPattern.length;
+ int size = numFormat.leadingDigitsPatternSize();
if (size == 0 || regexCache.getPatternForRegex(
// We always use the last leading_digits_pattern, as it is the most detailed.
- numFormat.leadingDigitsPattern[size - 1]).matcher(nationalNumber).lookingAt()) {
- Matcher m = regexCache.getPatternForRegex(numFormat.pattern).matcher(nationalNumber);
+ numFormat.getLeadingDigitsPattern(size - 1)).matcher(nationalNumber).lookingAt()) {
+ Matcher m = regexCache.getPatternForRegex(numFormat.getPattern()).matcher(nationalNumber);
if (m.matches()) {
return numFormat;
}
@@ -1765,15 +1790,15 @@
NumberFormat formattingPattern,
PhoneNumberFormat numberFormat,
String carrierCode) {
- String numberFormatRule = formattingPattern.format;
+ String numberFormatRule = formattingPattern.getFormat();
Matcher m =
- regexCache.getPatternForRegex(formattingPattern.pattern).matcher(nationalNumber);
+ regexCache.getPatternForRegex(formattingPattern.getPattern()).matcher(nationalNumber);
String formattedNationalNumber = "";
if (numberFormat == PhoneNumberFormat.NATIONAL &&
carrierCode != null && carrierCode.length() > 0 &&
- formattingPattern.domesticCarrierCodeFormattingRule.length() > 0) {
+ formattingPattern.getDomesticCarrierCodeFormattingRule().length() > 0) {
// Replace the $CC in the formatting rule with the desired carrier code.
- String carrierCodeFormattingRule = formattingPattern.domesticCarrierCodeFormattingRule;
+ String carrierCodeFormattingRule = formattingPattern.getDomesticCarrierCodeFormattingRule();
carrierCodeFormattingRule =
CC_PATTERN.matcher(carrierCodeFormattingRule).replaceFirst(carrierCode);
// Now replace the $FG in the formatting rule with the first group and the carrier code
@@ -1783,7 +1808,7 @@
formattedNationalNumber = m.replaceAll(numberFormatRule);
} else {
// Use the national prefix formatting rule instead.
- String nationalPrefixFormattingRule = formattingPattern.nationalPrefixFormattingRule;
+ String nationalPrefixFormattingRule = formattingPattern.getNationalPrefixFormattingRule();
if (numberFormat == PhoneNumberFormat.NATIONAL &&
nationalPrefixFormattingRule != null &&
nationalPrefixFormattingRule.length() > 0) {
@@ -1819,6 +1844,62 @@
}
/**
+ * Gets an invalid number for the specified region. This is useful for unit-testing purposes,
+ * where you want to test what will happen with an invalid number. Note that the number that is
+ * returned will always be able to be parsed and will have the correct country code. It may also
+ * be a valid *short* number/code for this region. Validity checking such numbers is handled with
+ * {@link com.google.i18n.phonenumbers.ShortNumberInfo}.
+ *
+ * @param regionCode the region for which an example number is needed
+ * @return an invalid number for the specified region. Returns null when an unsupported region or
+ * the region 001 (Earth) is passed in.
+ */
+ public PhoneNumber getInvalidExampleNumber(String regionCode) {
+ if (!isValidRegionCode(regionCode)) {
+ logger.log(Level.WARNING, "Invalid or unknown region code provided: " + regionCode);
+ return null;
+ }
+ // We start off with a valid fixed-line number since every country supports this. Alternatively
+ // we could start with a different number type, since fixed-line numbers typically have a wide
+ // breadth of valid number lengths and we may have to make it very short before we get an
+ // invalid number.
+ PhoneNumberDesc desc = getNumberDescByType(getMetadataForRegion(regionCode),
+ PhoneNumberType.FIXED_LINE);
+ if (!desc.hasExampleNumber()) {
+ // This shouldn't happen; we have a test for this.
+ return null;
+ }
+ String exampleNumber = desc.getExampleNumber();
+ // Try and make the number invalid. We do this by changing the length. We try reducing the
+ // length of the number, since currently no region has a number that is the same length as
+ // MIN_LENGTH_FOR_NSN. This is probably quicker than making the number longer, which is another
+ // alternative. We could also use the possible number pattern to extract the possible lengths of
+ // the number to make this faster, but this method is only for unit-testing so simplicity is
+ // preferred to performance. We don't want to return a number that can't be parsed, so we check
+ // the number is long enough. We try all possible lengths because phone number plans often have
+ // overlapping prefixes so the number 123456 might be valid as a fixed-line number, and 12345 as
+ // a mobile number. It would be faster to loop in a different order, but we prefer numbers that
+ // look closer to real numbers (and it gives us a variety of different lengths for the resulting
+ // phone numbers - otherwise they would all be MIN_LENGTH_FOR_NSN digits long.)
+ for (int phoneNumberLength = exampleNumber.length() - 1;
+ phoneNumberLength >= MIN_LENGTH_FOR_NSN;
+ phoneNumberLength--) {
+ String numberToTry = exampleNumber.substring(0, phoneNumberLength);
+ try {
+ PhoneNumber possiblyValidNumber = parse(numberToTry, regionCode);
+ if (!isValidNumber(possiblyValidNumber)) {
+ return possiblyValidNumber;
+ }
+ } catch (NumberParseException e) {
+ // Shouldn't happen: we have already checked the length, we know example numbers have
+ // only valid digits, and we know the region code is fine.
+ }
+ }
+ // We have a test to check that this doesn't happen for any of our supported regions.
+ return null;
+ }
+
+ /**
* Gets a valid number for the specified region and number type.
*
* @param regionCode the region for which an example number is needed
@@ -1836,8 +1917,8 @@
}
PhoneNumberDesc desc = getNumberDescByType(getMetadataForRegion(regionCode), type);
try {
- if (!desc.exampleNumber.equals("")) {
- return parse(desc.exampleNumber, regionCode);
+ if (desc.hasExampleNumber()) {
+ return parse(desc.getExampleNumber(), regionCode);
}
} catch (NumberParseException e) {
logger.log(Level.SEVERE, e.toString());
@@ -1846,6 +1927,37 @@
}
/**
+ * Gets a valid number for the specified number type (it may belong to any country).
+ *
+ * @param type the type of number that is needed
+ * @return a valid number for the specified type. Returns null when the metadata
+ * does not contain such information. This should only happen when no numbers of this type are
+ * allocated anywhere in the world anymore.
+ */
+ public PhoneNumber getExampleNumberForType(PhoneNumberType type) {
+ for (String regionCode : getSupportedRegions()) {
+ PhoneNumber exampleNumber = getExampleNumberForType(regionCode, type);
+ if (exampleNumber != null) {
+ return exampleNumber;
+ }
+ }
+ // If there wasn't an example number for a region, try the non-geographical entities.
+ for (int countryCallingCode : getSupportedGlobalNetworkCallingCodes()) {
+ PhoneNumberDesc desc = getNumberDescByType(
+ getMetadataForNonGeographicalRegion(countryCallingCode), type);
+ try {
+ if (desc.hasExampleNumber()) {
+ return parse("+" + countryCallingCode + desc.getExampleNumber(), UNKNOWN_REGION);
+ }
+ } catch (NumberParseException e) {
+ logger.log(Level.SEVERE, e.toString());
+ }
+ }
+ // There are no example numbers of this type for any country in the library.
+ return null;
+ }
+
+ /**
* Gets a valid number for the specified country calling code for a non-geographical entity.
*
* @param countryCallingCode the country calling code for a non-geographical entity
@@ -1856,10 +1968,10 @@
public PhoneNumber getExampleNumberForNonGeoEntity(int countryCallingCode) {
PhoneMetadata metadata = getMetadataForNonGeographicalRegion(countryCallingCode);
if (metadata != null) {
- PhoneNumberDesc desc = metadata.generalDesc;
+ PhoneNumberDesc desc = metadata.getGeneralDesc();
try {
- if (!desc.exampleNumber.equals("")) {
- return parse("+" + countryCallingCode + desc.exampleNumber, "ZZ");
+ if (desc.hasExampleNumber()) {
+ return parse("+" + countryCallingCode + desc.getExampleNumber(), UNKNOWN_REGION);
}
} catch (NumberParseException e) {
logger.log(Level.SEVERE, e.toString());
@@ -1882,8 +1994,8 @@
if (numberFormat == PhoneNumberFormat.RFC3966) {
formattedNumber.append(RFC3966_EXTN_PREFIX).append(number.getExtension());
} else {
- if (!metadata.preferredExtnPrefix.equals("")) {
- formattedNumber.append(metadata.preferredExtnPrefix).append(number.getExtension());
+ if (metadata.hasPreferredExtnPrefix()) {
+ formattedNumber.append(metadata.getPreferredExtnPrefix()).append(number.getExtension());
} else {
formattedNumber.append(DEFAULT_EXTN_PREFIX).append(number.getExtension());
}
@@ -1894,28 +2006,28 @@
PhoneNumberDesc getNumberDescByType(PhoneMetadata metadata, PhoneNumberType type) {
switch (type) {
case PREMIUM_RATE:
- return metadata.premiumRate;
+ return metadata.getPremiumRate();
case TOLL_FREE:
- return metadata.tollFree;
+ return metadata.getTollFree();
case MOBILE:
- return metadata.mobile;
+ return metadata.getMobile();
case FIXED_LINE:
case FIXED_LINE_OR_MOBILE:
- return metadata.fixedLine;
+ return metadata.getFixedLine();
case SHARED_COST:
- return metadata.sharedCost;
+ return metadata.getSharedCost();
case VOIP:
- return metadata.voip;
+ return metadata.getVoip();
case PERSONAL_NUMBER:
- return metadata.personalNumber;
+ return metadata.getPersonalNumber();
case PAGER:
- return metadata.pager;
+ return metadata.getPager();
case UAN:
- return metadata.uan;
+ return metadata.getUan();
case VOICEMAIL:
- return metadata.voicemail;
+ return metadata.getVoicemail();
default:
- return metadata.generalDesc;
+ return metadata.getGeneralDesc();
}
}
@@ -1936,48 +2048,48 @@
}
private PhoneNumberType getNumberTypeHelper(String nationalNumber, PhoneMetadata metadata) {
- if (!isNumberMatchingDesc(nationalNumber, metadata.generalDesc)) {
+ if (!isNumberMatchingDesc(nationalNumber, metadata.getGeneralDesc())) {
return PhoneNumberType.UNKNOWN;
}
- if (isNumberMatchingDesc(nationalNumber, metadata.premiumRate)) {
+ if (isNumberMatchingDesc(nationalNumber, metadata.getPremiumRate())) {
return PhoneNumberType.PREMIUM_RATE;
}
- if (isNumberMatchingDesc(nationalNumber, metadata.tollFree)) {
+ if (isNumberMatchingDesc(nationalNumber, metadata.getTollFree())) {
return PhoneNumberType.TOLL_FREE;
}
- if (isNumberMatchingDesc(nationalNumber, metadata.sharedCost)) {
+ if (isNumberMatchingDesc(nationalNumber, metadata.getSharedCost())) {
return PhoneNumberType.SHARED_COST;
}
- if (isNumberMatchingDesc(nationalNumber, metadata.voip)) {
+ if (isNumberMatchingDesc(nationalNumber, metadata.getVoip())) {
return PhoneNumberType.VOIP;
}
- if (isNumberMatchingDesc(nationalNumber, metadata.personalNumber)) {
+ if (isNumberMatchingDesc(nationalNumber, metadata.getPersonalNumber())) {
return PhoneNumberType.PERSONAL_NUMBER;
}
- if (isNumberMatchingDesc(nationalNumber, metadata.pager)) {
+ if (isNumberMatchingDesc(nationalNumber, metadata.getPager())) {
return PhoneNumberType.PAGER;
}
- if (isNumberMatchingDesc(nationalNumber, metadata.uan)) {
+ if (isNumberMatchingDesc(nationalNumber, metadata.getUan())) {
return PhoneNumberType.UAN;
}
- if (isNumberMatchingDesc(nationalNumber, metadata.voicemail)) {
+ if (isNumberMatchingDesc(nationalNumber, metadata.getVoicemail())) {
return PhoneNumberType.VOICEMAIL;
}
- boolean isFixedLine = isNumberMatchingDesc(nationalNumber, metadata.fixedLine);
+ boolean isFixedLine = isNumberMatchingDesc(nationalNumber, metadata.getFixedLine());
if (isFixedLine) {
- if (metadata.sameMobileAndFixedLinePattern) {
+ if (metadata.isSameMobileAndFixedLinePattern()) {
return PhoneNumberType.FIXED_LINE_OR_MOBILE;
- } else if (isNumberMatchingDesc(nationalNumber, metadata.mobile)) {
+ } else if (isNumberMatchingDesc(nationalNumber, metadata.getMobile())) {
return PhoneNumberType.FIXED_LINE_OR_MOBILE;
}
return PhoneNumberType.FIXED_LINE;
}
// Otherwise, test to see if the number is mobile. Only do this if certain that the patterns for
// mobile and fixed line aren't the same.
- if (!metadata.sameMobileAndFixedLinePattern &&
- isNumberMatchingDesc(nationalNumber, metadata.mobile)) {
+ if (!metadata.isSameMobileAndFixedLinePattern() &&
+ isNumberMatchingDesc(nationalNumber, metadata.getMobile())) {
return PhoneNumberType.MOBILE;
}
return PhoneNumberType.UNKNOWN;
@@ -2003,14 +2115,14 @@
boolean isNumberPossibleForDesc(String nationalNumber, PhoneNumberDesc numberDesc) {
Matcher possibleNumberPatternMatcher =
- regexCache.getPatternForRegex(numberDesc.possibleNumberPattern)
+ regexCache.getPatternForRegex(numberDesc.getPossibleNumberPattern())
.matcher(nationalNumber);
return possibleNumberPatternMatcher.matches();
}
boolean isNumberMatchingDesc(String nationalNumber, PhoneNumberDesc numberDesc) {
Matcher nationalNumberPatternMatcher =
- regexCache.getPatternForRegex(numberDesc.nationalNumberPattern)
+ regexCache.getPatternForRegex(numberDesc.getNationalNumberPattern())
.matcher(nationalNumber);
return isNumberPossibleForDesc(nationalNumber, numberDesc) &&
nationalNumberPatternMatcher.matches();
@@ -2089,8 +2201,8 @@
// If leadingDigits is present, use this. Otherwise, do full validation.
// Metadata cannot be null because the region codes come from the country calling code map.
PhoneMetadata metadata = getMetadataForRegion(regionCode);
- if (!metadata.leadingDigits.equals("")) {
- if (regexCache.getPatternForRegex(metadata.leadingDigits)
+ if (metadata.hasLeadingDigits()) {
+ if (regexCache.getPatternForRegex(metadata.getLeadingDigits())
.matcher(nationalNumber).lookingAt()) {
return regionCode;
}
@@ -2156,7 +2268,7 @@
if (metadata == null) {
throw new IllegalArgumentException("Invalid region code: " + regionCode);
}
- return metadata.countryCode;
+ return metadata.getCountryCode();
}
/**
@@ -2182,7 +2294,7 @@
+ ") provided.");
return null;
}
- String nationalPrefix = metadata.nationalPrefix;
+ String nationalPrefix = metadata.getNationalPrefix();
// If no national prefix was found, we return null.
if (nationalPrefix.length() == 0) {
return null;
@@ -2216,7 +2328,7 @@
if (mainMetadataForCallingCode == null) {
return false;
}
- return mainMetadataForCallingCode.leadingZeroPossible;
+ return mainMetadataForCallingCode.isLeadingZeroPossible();
}
/**
@@ -2273,7 +2385,7 @@
*/
private boolean isShorterThanPossibleNormalNumber(PhoneMetadata regionMetadata, String number) {
Pattern possibleNumberPattern = regexCache.getPatternForRegex(
- regionMetadata.generalDesc.possibleNumberPattern);
+ regionMetadata.getGeneralDesc().getPossibleNumberPattern());
return testNumberLengthAgainstPattern(possibleNumberPattern, number) ==
ValidationResult.TOO_SHORT;
}
@@ -2313,7 +2425,7 @@
// Metadata cannot be null because the country calling code is valid.
PhoneMetadata metadata = getMetadataForRegionOrCallingCode(countryCode, regionCode);
Pattern possibleNumberPattern =
- regexCache.getPatternForRegex(metadata.generalDesc.possibleNumberPattern);
+ regexCache.getPatternForRegex(metadata.getGeneralDesc().getPossibleNumberPattern());
return testNumberLengthAgainstPattern(possibleNumberPattern, nationalNumber);
}
@@ -2445,7 +2557,7 @@
// Set the default prefix to be something that will never match.
String possibleCountryIddPrefix = "NonMatch";
if (defaultRegionMetadata != null) {
- possibleCountryIddPrefix = defaultRegionMetadata.internationalPrefix;
+ possibleCountryIddPrefix = defaultRegionMetadata.getInternationalPrefix();
}
CountryCodeSource countryCodeSource =
@@ -2473,19 +2585,19 @@
// Check to see if the number starts with the country calling code for the default region. If
// so, we remove the country calling code, and do some checks on the validity of the number
// before and after.
- int defaultCountryCode = defaultRegionMetadata.countryCode;
+ int defaultCountryCode = defaultRegionMetadata.getCountryCode();
String defaultCountryCodeString = String.valueOf(defaultCountryCode);
String normalizedNumber = fullNumber.toString();
if (normalizedNumber.startsWith(defaultCountryCodeString)) {
StringBuilder potentialNationalNumber =
new StringBuilder(normalizedNumber.substring(defaultCountryCodeString.length()));
- PhoneNumberDesc generalDesc = defaultRegionMetadata.generalDesc;
+ PhoneNumberDesc generalDesc = defaultRegionMetadata.getGeneralDesc();
Pattern validNumberPattern =
- regexCache.getPatternForRegex(generalDesc.nationalNumberPattern);
+ regexCache.getPatternForRegex(generalDesc.getNationalNumberPattern());
maybeStripNationalPrefixAndCarrierCode(
potentialNationalNumber, defaultRegionMetadata, null /* Don't need the carrier code */);
Pattern possibleNumberPattern =
- regexCache.getPatternForRegex(generalDesc.possibleNumberPattern);
+ regexCache.getPatternForRegex(generalDesc.getPossibleNumberPattern());
// If the number was not valid before but is valid now, or if it was too long before, we
// consider the number with the country calling code stripped to be a better result and
// keep that instead.
@@ -2578,7 +2690,7 @@
boolean maybeStripNationalPrefixAndCarrierCode(
StringBuilder number, PhoneMetadata metadata, StringBuilder carrierCode) {
int numberLength = number.length();
- String possibleNationalPrefix = metadata.nationalPrefixForParsing;
+ String possibleNationalPrefix = metadata.getNationalPrefixForParsing();
if (numberLength == 0 || possibleNationalPrefix.length() == 0) {
// Early return for numbers of zero length.
return false;
@@ -2587,14 +2699,14 @@
Matcher prefixMatcher = regexCache.getPatternForRegex(possibleNationalPrefix).matcher(number);
if (prefixMatcher.lookingAt()) {
Pattern nationalNumberRule =
- regexCache.getPatternForRegex(metadata.generalDesc.nationalNumberPattern);
+ regexCache.getPatternForRegex(metadata.getGeneralDesc().getNationalNumberPattern());
// Check if the original number is viable.
boolean isViableOriginalNumber = nationalNumberRule.matcher(number).matches();
// prefixMatcher.group(numOfGroups) == null implies nothing was captured by the capturing
// groups in possibleNationalPrefix; therefore, no transformation is necessary, and we just
// remove the national prefix.
int numOfGroups = prefixMatcher.groupCount();
- String transformRule = metadata.nationalPrefixTransformRule;
+ String transformRule = metadata.getNationalPrefixTransformRule();
if (transformRule == null || transformRule.length() == 0 ||
prefixMatcher.group(numOfGroups) == null) {
// If the original number was viable, and the resultant number is not, we return.
@@ -2670,10 +2782,18 @@
}
/**
- * Parses a string and returns it in proto buffer format. This method will throw a
- * {@link com.google.i18n.phonenumbers.NumberParseException} if the number is not considered to be
- * a possible number. Note that validation of whether the number is actually a valid number for a
- * particular region is not performed. This can be done separately with {@link #isValidNumber}.
+ * Parses a string and returns it as a phone number in proto buffer format. The method is quite
+ * lenient and looks for a number in the input text (raw input) and does not check whether the
+ * string is definitely only a phone number. To do this, it ignores punctuation and white-space,
+ * as well as any text before the number (e.g. a leading "Tel: ") and trims the non-number bits.
+ * It will accept a number in any format (E164, national, international etc), assuming it can be
+ * interpreted with the defaultRegion supplied. It also attempts to convert any alpha characters
+ * into digits if it thinks this is a vanity number of the type "1800 MICROSOFT".
+ *
+ * <p> This method will throw a {@link com.google.i18n.phonenumbers.NumberParseException} if the
+ * number is not considered to be a possible number. Note that validation of whether the number
+ * is actually a valid number for a particular region is not performed. This can be done
+ * separately with {@link #isValidNumber}.
*
* @param numberToParse number that we are attempting to parse. This can contain formatting
* such as +, ( and -, as well as a phone number extension. It can also
@@ -2685,9 +2805,10 @@
* start with a '+' followed by the country calling code, then
* "ZZ" or null can be supplied.
* @return a phone number proto buffer filled with the parsed number
- * @throws NumberParseException if the string is not considered to be a viable phone number or if
- * no default region was supplied and the number is not in
- * international format (does not start with +)
+ * @throws NumberParseException if the string is not considered to be a viable phone number (e.g.
+ * too few or too many digits) or if no default region was supplied
+ * and the number is not in international format (does not start
+ * with +)
*/
public PhoneNumber parse(String numberToParse, String defaultRegion)
throws NumberParseException {
@@ -2880,7 +3001,7 @@
normalize(nationalNumber);
normalizedNationalNumber.append(nationalNumber);
if (defaultRegion != null) {
- countryCode = regionMetadata.countryCode;
+ countryCode = regionMetadata.getCountryCode();
phoneNumber.setCountryCode(countryCode);
} else if (keepRawInput) {
phoneNumber.clearCountryCodeSource();
@@ -3154,7 +3275,7 @@
return true;
}
String nationalSignificantNumber = getNationalSignificantNumber(number);
- return !isNumberMatchingDesc(nationalSignificantNumber, metadata.noInternationalDialling);
+ return !isNumberMatchingDesc(nationalSignificantNumber, metadata.getNoInternationalDialling());
}
/**
@@ -3170,6 +3291,6 @@
logger.log(Level.WARNING, "Invalid or unknown region code provided: " + regionCode);
return false;
}
- return metadata.mobileNumberPortableRegion;
+ return metadata.isMobileNumberPortableRegion();
}
}
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/Phonemetadata.java b/libphonenumber/src/com/google/i18n/phonenumbers/Phonemetadata.java
new file mode 100644
index 0000000..ac63ec6
--- /dev/null
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/Phonemetadata.java
@@ -0,0 +1,1119 @@
+/*
+ * Copyright (C) 2010 The Libphonenumber Authors
+ *
+ * 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.
+ */
+
+/**
+ * Definition of the class representing metadata for international telephone numbers. This class is
+ * hand created based on the class file compiled from phonemetadata.proto. Please refer to that file
+ * for detailed descriptions of the meaning of each field.
+ */
+
+package com.google.i18n.phonenumbers;
+
+import java.io.Externalizable;
+import java.io.IOException;
+import java.io.ObjectInput;
+import java.io.ObjectOutput;
+
+public final class Phonemetadata {
+ private Phonemetadata() {}
+ public static class NumberFormat implements Externalizable {
+ private static final long serialVersionUID = 1;
+ public NumberFormat() {}
+
+ /**
+ * Provides a dummy builder to 'emulate' the API of the code generated by the latest version of
+ * Protocol Buffers. This lets BuildMetadataFromXml class to build with both this hand created
+ * class and the one generated by the latest version of Protocol Buffers.
+ */
+ public static final class Builder extends NumberFormat {
+ public NumberFormat build() {
+ return this;
+ }
+ }
+
+ public static Builder newBuilder() {
+ return new Builder();
+ }
+
+ // required string pattern = 1;
+ private boolean hasPattern;
+ private String pattern_ = "";
+ public boolean hasPattern() { return hasPattern; }
+ public String getPattern() { return pattern_; }
+ public NumberFormat setPattern(String value) {
+ hasPattern = true;
+ pattern_ = value;
+ return this;
+ }
+
+ // required string format = 2;
+ private boolean hasFormat;
+ private String format_ = "";
+ public boolean hasFormat() { return hasFormat; }
+ public String getFormat() { return format_; }
+ public NumberFormat setFormat(String value) {
+ hasFormat = true;
+ format_ = value;
+ return this;
+ }
+
+ // repeated string leading_digits_pattern = 3;
+ private java.util.List<String> leadingDigitsPattern_ = new java.util.ArrayList<String>();
+ public java.util.List<String> leadingDigitPatterns() {
+ return leadingDigitsPattern_;
+ }
+ public int leadingDigitsPatternSize() { return leadingDigitsPattern_.size(); }
+ public String getLeadingDigitsPattern(int index) {
+ return leadingDigitsPattern_.get(index);
+ }
+ public NumberFormat addLeadingDigitsPattern(String value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ leadingDigitsPattern_.add(value);
+ return this;
+ }
+
+ // optional string national_prefix_formatting_rule = 4;
+ private boolean hasNationalPrefixFormattingRule;
+ private String nationalPrefixFormattingRule_ = "";
+ public boolean hasNationalPrefixFormattingRule() { return hasNationalPrefixFormattingRule; }
+ public String getNationalPrefixFormattingRule() { return nationalPrefixFormattingRule_; }
+ public NumberFormat setNationalPrefixFormattingRule(String value) {
+ hasNationalPrefixFormattingRule = true;
+ nationalPrefixFormattingRule_ = value;
+ return this;
+ }
+ public NumberFormat clearNationalPrefixFormattingRule() {
+ hasNationalPrefixFormattingRule = false;
+ nationalPrefixFormattingRule_ = "";
+ return this;
+ }
+
+ // optional bool national_prefix_optional_when_formatting = 6;
+ private boolean hasNationalPrefixOptionalWhenFormatting;
+ private boolean nationalPrefixOptionalWhenFormatting_ = false;
+ public boolean hasNationalPrefixOptionalWhenFormatting() {
+ return hasNationalPrefixOptionalWhenFormatting; }
+ public boolean isNationalPrefixOptionalWhenFormatting() {
+ return nationalPrefixOptionalWhenFormatting_; }
+ public NumberFormat setNationalPrefixOptionalWhenFormatting(boolean value) {
+ hasNationalPrefixOptionalWhenFormatting = true;
+ nationalPrefixOptionalWhenFormatting_ = value;
+ return this;
+ }
+
+ // optional string domestic_carrier_code_formatting_rule = 5;
+ private boolean hasDomesticCarrierCodeFormattingRule;
+ private String domesticCarrierCodeFormattingRule_ = "";
+ public boolean hasDomesticCarrierCodeFormattingRule() {
+ return hasDomesticCarrierCodeFormattingRule; }
+ public String getDomesticCarrierCodeFormattingRule() {
+ return domesticCarrierCodeFormattingRule_; }
+ public NumberFormat setDomesticCarrierCodeFormattingRule(String value) {
+ hasDomesticCarrierCodeFormattingRule = true;
+ domesticCarrierCodeFormattingRule_ = value;
+ return this;
+ }
+
+ public NumberFormat mergeFrom(NumberFormat other) {
+ if (other.hasPattern()) {
+ setPattern(other.getPattern());
+ }
+ if (other.hasFormat()) {
+ setFormat(other.getFormat());
+ }
+ int leadingDigitsPatternSize = other.leadingDigitsPatternSize();
+ for (int i = 0; i < leadingDigitsPatternSize; i++) {
+ addLeadingDigitsPattern(other.getLeadingDigitsPattern(i));
+ }
+ if (other.hasNationalPrefixFormattingRule()) {
+ setNationalPrefixFormattingRule(other.getNationalPrefixFormattingRule());
+ }
+ if (other.hasDomesticCarrierCodeFormattingRule()) {
+ setDomesticCarrierCodeFormattingRule(other.getDomesticCarrierCodeFormattingRule());
+ }
+ setNationalPrefixOptionalWhenFormatting(other.isNationalPrefixOptionalWhenFormatting());
+ return this;
+ }
+
+ public void writeExternal(ObjectOutput objectOutput) throws IOException {
+ objectOutput.writeUTF(pattern_);
+ objectOutput.writeUTF(format_);
+ int leadingDigitsPatternSize = leadingDigitsPatternSize();
+ objectOutput.writeInt(leadingDigitsPatternSize);
+ for (int i = 0; i < leadingDigitsPatternSize; i++) {
+ objectOutput.writeUTF(leadingDigitsPattern_.get(i));
+ }
+
+ objectOutput.writeBoolean(hasNationalPrefixFormattingRule);
+ if (hasNationalPrefixFormattingRule) {
+ objectOutput.writeUTF(nationalPrefixFormattingRule_);
+ }
+ objectOutput.writeBoolean(hasDomesticCarrierCodeFormattingRule);
+ if (hasDomesticCarrierCodeFormattingRule) {
+ objectOutput.writeUTF(domesticCarrierCodeFormattingRule_);
+ }
+ objectOutput.writeBoolean(nationalPrefixOptionalWhenFormatting_);
+ }
+
+ public void readExternal(ObjectInput objectInput) throws IOException {
+ setPattern(objectInput.readUTF());
+ setFormat(objectInput.readUTF());
+ int leadingDigitsPatternSize = objectInput.readInt();
+ for (int i = 0; i < leadingDigitsPatternSize; i++) {
+ leadingDigitsPattern_.add(objectInput.readUTF());
+ }
+ if (objectInput.readBoolean()) {
+ setNationalPrefixFormattingRule(objectInput.readUTF());
+ }
+ if (objectInput.readBoolean()) {
+ setDomesticCarrierCodeFormattingRule(objectInput.readUTF());
+ }
+ setNationalPrefixOptionalWhenFormatting(objectInput.readBoolean());
+ }
+ }
+
+ public static class PhoneNumberDesc implements Externalizable {
+ private static final long serialVersionUID = 1;
+ public PhoneNumberDesc() {}
+
+ /**
+ * Provides a dummy builder.
+ *
+ * @see NumberFormat.Builder
+ */
+ public static final class Builder extends PhoneNumberDesc {
+ public PhoneNumberDesc build() {
+ return this;
+ }
+ }
+ public static Builder newBuilder() {
+ return new Builder();
+ }
+
+ // optional string national_number_pattern = 2;
+ private boolean hasNationalNumberPattern;
+ private String nationalNumberPattern_ = "";
+ public boolean hasNationalNumberPattern() { return hasNationalNumberPattern; }
+ public String getNationalNumberPattern() { return nationalNumberPattern_; }
+ public PhoneNumberDesc setNationalNumberPattern(String value) {
+ hasNationalNumberPattern = true;
+ nationalNumberPattern_ = value;
+ return this;
+ }
+
+ // optional string possible_number_pattern = 3;
+ private boolean hasPossibleNumberPattern;
+ private String possibleNumberPattern_ = "";
+ public boolean hasPossibleNumberPattern() { return hasPossibleNumberPattern; }
+ public String getPossibleNumberPattern() { return possibleNumberPattern_; }
+ public PhoneNumberDesc setPossibleNumberPattern(String value) {
+ hasPossibleNumberPattern = true;
+ possibleNumberPattern_ = value;
+ return this;
+ }
+
+ // repeated int32 possible_length = 9;
+ private java.util.List<Integer> possibleLength_ = new java.util.ArrayList<Integer>();
+ public java.util.List<Integer> getPossibleLengthList() {
+ return possibleLength_;
+ }
+ public int getPossibleLengthCount() { return possibleLength_.size(); }
+ public int getPossibleLength(int index) {
+ return possibleLength_.get(index);
+ }
+ public PhoneNumberDesc addPossibleLength(int value) {
+ possibleLength_.add(value);
+ return this;
+ }
+ public PhoneNumberDesc clearPossibleLength() {
+ possibleLength_.clear();
+ return this;
+ }
+
+ // repeated int32 possible_length_local_only = 10;
+ private java.util.List<Integer> possibleLengthLocalOnly_ = new java.util.ArrayList<Integer>();
+ public java.util.List<Integer> getPossibleLengthLocalOnlyList() {
+ return possibleLengthLocalOnly_;
+ }
+ public int getPossibleLengthLocalOnlyCount() { return possibleLengthLocalOnly_.size(); }
+ public int getPossibleLengthLocalOnly(int index) {
+ return possibleLengthLocalOnly_.get(index);
+ }
+ public PhoneNumberDesc addPossibleLengthLocalOnly(int value) {
+ possibleLengthLocalOnly_.add(value);
+ return this;
+ }
+ public PhoneNumberDesc clearPossibleLengthLocalOnly() {
+ possibleLengthLocalOnly_.clear();
+ return this;
+ }
+
+ // optional string example_number = 6;
+ private boolean hasExampleNumber;
+ private String exampleNumber_ = "";
+ public boolean hasExampleNumber() { return hasExampleNumber; }
+ public String getExampleNumber() { return exampleNumber_; }
+ public PhoneNumberDesc setExampleNumber(String value) {
+ hasExampleNumber = true;
+ exampleNumber_ = value;
+ return this;
+ }
+
+ public PhoneNumberDesc mergeFrom(PhoneNumberDesc other) {
+ if (other.hasNationalNumberPattern()) {
+ setNationalNumberPattern(other.getNationalNumberPattern());
+ }
+ if (other.hasPossibleNumberPattern()) {
+ setPossibleNumberPattern(other.getPossibleNumberPattern());
+ }
+ for (int i = 0; i < other.getPossibleLengthCount(); i++) {
+ addPossibleLength(other.getPossibleLength(i));
+ }
+ for (int i = 0; i < other.getPossibleLengthLocalOnlyCount(); i++) {
+ addPossibleLengthLocalOnly(other.getPossibleLengthLocalOnly(i));
+ }
+ if (other.hasExampleNumber()) {
+ setExampleNumber(other.getExampleNumber());
+ }
+ return this;
+ }
+
+ public boolean exactlySameAs(PhoneNumberDesc other) {
+ return nationalNumberPattern_.equals(other.nationalNumberPattern_) &&
+ possibleNumberPattern_.equals(other.possibleNumberPattern_) &&
+ possibleLength_.equals(other.possibleLength_) &&
+ possibleLengthLocalOnly_.equals(other.possibleLengthLocalOnly_) &&
+ exampleNumber_.equals(other.exampleNumber_);
+ }
+
+ public void writeExternal(ObjectOutput objectOutput) throws IOException {
+ objectOutput.writeBoolean(hasNationalNumberPattern);
+ if (hasNationalNumberPattern) {
+ objectOutput.writeUTF(nationalNumberPattern_);
+ }
+
+ objectOutput.writeBoolean(hasPossibleNumberPattern);
+ if (hasPossibleNumberPattern) {
+ objectOutput.writeUTF(possibleNumberPattern_);
+ }
+
+ int possibleLengthSize = getPossibleLengthCount();
+ objectOutput.writeInt(possibleLengthSize);
+ for (int i = 0; i < possibleLengthSize; i++) {
+ objectOutput.writeInt(possibleLength_.get(i));
+ }
+
+ int possibleLengthLocalOnlySize = getPossibleLengthLocalOnlyCount();
+ objectOutput.writeInt(possibleLengthLocalOnlySize);
+ for (int i = 0; i < possibleLengthLocalOnlySize; i++) {
+ objectOutput.writeInt(possibleLengthLocalOnly_.get(i));
+ }
+
+ objectOutput.writeBoolean(hasExampleNumber);
+ if (hasExampleNumber) {
+ objectOutput.writeUTF(exampleNumber_);
+ }
+ }
+
+ public void readExternal(ObjectInput objectInput) throws IOException {
+ if (objectInput.readBoolean()) {
+ setNationalNumberPattern(objectInput.readUTF());
+ }
+
+ if (objectInput.readBoolean()) {
+ setPossibleNumberPattern(objectInput.readUTF());
+ }
+
+ int possibleLengthSize = objectInput.readInt();
+ for (int i = 0; i < possibleLengthSize; i++) {
+ possibleLength_.add(objectInput.readInt());
+ }
+
+ int possibleLengthLocalOnlySize = objectInput.readInt();
+ for (int i = 0; i < possibleLengthLocalOnlySize; i++) {
+ possibleLengthLocalOnly_.add(objectInput.readInt());
+ }
+
+ if (objectInput.readBoolean()) {
+ setExampleNumber(objectInput.readUTF());
+ }
+ }
+ }
+
+ public static class PhoneMetadata implements Externalizable {
+ private static final long serialVersionUID = 1;
+ public PhoneMetadata() {}
+
+ /**
+ * Provides a dummy builder.
+ *
+ * @see NumberFormat.Builder
+ */
+ public static final class Builder extends PhoneMetadata {
+ public PhoneMetadata build() {
+ return this;
+ }
+ }
+ public static Builder newBuilder() {
+ return new Builder();
+ }
+
+ // optional PhoneNumberDesc general_desc = 1;
+ private boolean hasGeneralDesc;
+ private PhoneNumberDesc generalDesc_ = null;
+ public boolean hasGeneralDesc() { return hasGeneralDesc; }
+ public PhoneNumberDesc getGeneralDesc() { return generalDesc_; }
+ public PhoneMetadata setGeneralDesc(PhoneNumberDesc value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ hasGeneralDesc = true;
+ generalDesc_ = value;
+ return this;
+ }
+
+ // optional PhoneNumberDesc fixed_line = 2;
+ private boolean hasFixedLine;
+ private PhoneNumberDesc fixedLine_ = null;
+ public boolean hasFixedLine() { return hasFixedLine; }
+ public PhoneNumberDesc getFixedLine() { return fixedLine_; }
+ public PhoneMetadata setFixedLine(PhoneNumberDesc value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ hasFixedLine = true;
+ fixedLine_ = value;
+ return this;
+ }
+
+ // optional PhoneNumberDesc mobile = 3;
+ private boolean hasMobile;
+ private PhoneNumberDesc mobile_ = null;
+ public boolean hasMobile() { return hasMobile; }
+ public PhoneNumberDesc getMobile() { return mobile_; }
+ public PhoneMetadata setMobile(PhoneNumberDesc value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ hasMobile = true;
+ mobile_ = value;
+ return this;
+ }
+
+ // optional PhoneNumberDesc toll_free = 4;
+ private boolean hasTollFree;
+ private PhoneNumberDesc tollFree_ = null;
+ public boolean hasTollFree() { return hasTollFree; }
+ public PhoneNumberDesc getTollFree() { return tollFree_; }
+ public PhoneMetadata setTollFree(PhoneNumberDesc value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ hasTollFree = true;
+ tollFree_ = value;
+ return this;
+ }
+
+ // optional PhoneNumberDesc premium_rate = 5;
+ private boolean hasPremiumRate;
+ private PhoneNumberDesc premiumRate_ = null;
+ public boolean hasPremiumRate() { return hasPremiumRate; }
+ public PhoneNumberDesc getPremiumRate() { return premiumRate_; }
+ public PhoneMetadata setPremiumRate(PhoneNumberDesc value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ hasPremiumRate = true;
+ premiumRate_ = value;
+ return this;
+ }
+
+ // optional PhoneNumberDesc shared_cost = 6;
+ private boolean hasSharedCost;
+ private PhoneNumberDesc sharedCost_ = null;
+ public boolean hasSharedCost() { return hasSharedCost; }
+ public PhoneNumberDesc getSharedCost() { return sharedCost_; }
+ public PhoneMetadata setSharedCost(PhoneNumberDesc value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ hasSharedCost = true;
+ sharedCost_ = value;
+ return this;
+ }
+
+ // optional PhoneNumberDesc personal_number = 7;
+ private boolean hasPersonalNumber;
+ private PhoneNumberDesc personalNumber_ = null;
+ public boolean hasPersonalNumber() { return hasPersonalNumber; }
+ public PhoneNumberDesc getPersonalNumber() { return personalNumber_; }
+ public PhoneMetadata setPersonalNumber(PhoneNumberDesc value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ hasPersonalNumber = true;
+ personalNumber_ = value;
+ return this;
+ }
+
+ // optional PhoneNumberDesc voip = 8;
+ private boolean hasVoip;
+ private PhoneNumberDesc voip_ = null;
+ public boolean hasVoip() { return hasVoip; }
+ public PhoneNumberDesc getVoip() { return voip_; }
+ public PhoneMetadata setVoip(PhoneNumberDesc value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ hasVoip = true;
+ voip_ = value;
+ return this;
+ }
+
+ // optional PhoneNumberDesc pager = 21;
+ private boolean hasPager;
+ private PhoneNumberDesc pager_ = null;
+ public boolean hasPager() { return hasPager; }
+ public PhoneNumberDesc getPager() { return pager_; }
+ public PhoneMetadata setPager(PhoneNumberDesc value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ hasPager = true;
+ pager_ = value;
+ return this;
+ }
+
+ // optional PhoneNumberDesc uan = 25;
+ private boolean hasUan;
+ private PhoneNumberDesc uan_ = null;
+ public boolean hasUan() { return hasUan; }
+ public PhoneNumberDesc getUan() { return uan_; }
+ public PhoneMetadata setUan(PhoneNumberDesc value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ hasUan = true;
+ uan_ = value;
+ return this;
+ }
+
+ // optional PhoneNumberDesc emergency = 27;
+ private boolean hasEmergency;
+ private PhoneNumberDesc emergency_ = null;
+ public boolean hasEmergency() { return hasEmergency; }
+ public PhoneNumberDesc getEmergency() { return emergency_; }
+ public PhoneMetadata setEmergency(PhoneNumberDesc value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ hasEmergency = true;
+ emergency_ = value;
+ return this;
+ }
+
+ // optional PhoneNumberDesc voicemail = 28;
+ private boolean hasVoicemail;
+ private PhoneNumberDesc voicemail_ = null;
+ public boolean hasVoicemail() { return hasVoicemail; }
+ public PhoneNumberDesc getVoicemail() { return voicemail_; }
+ public PhoneMetadata setVoicemail(PhoneNumberDesc value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ hasVoicemail = true;
+ voicemail_ = value;
+ return this;
+ }
+
+ // optional PhoneNumberDesc short_code = 29;
+ private boolean hasShortCode;
+ private PhoneNumberDesc shortCode_ = null;
+ public boolean hasShortCode() { return hasShortCode; }
+ public PhoneNumberDesc getShortCode() { return shortCode_; }
+ public PhoneMetadata setShortCode(PhoneNumberDesc value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ hasShortCode = true;
+ shortCode_ = value;
+ return this;
+ }
+
+ // optional PhoneNumberDesc standard_rate = 30;
+ private boolean hasStandardRate;
+ private PhoneNumberDesc standardRate_ = null;
+ public boolean hasStandardRate() { return hasStandardRate; }
+ public PhoneNumberDesc getStandardRate() { return standardRate_; }
+ public PhoneMetadata setStandardRate(PhoneNumberDesc value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ hasStandardRate = true;
+ standardRate_ = value;
+ return this;
+ }
+
+ // optional PhoneNumberDesc carrier_specific = 31;
+ private boolean hasCarrierSpecific;
+ private PhoneNumberDesc carrierSpecific_ = null;
+ public boolean hasCarrierSpecific() { return hasCarrierSpecific; }
+ public PhoneNumberDesc getCarrierSpecific() { return carrierSpecific_; }
+ public PhoneMetadata setCarrierSpecific(PhoneNumberDesc value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ hasCarrierSpecific = true;
+ carrierSpecific_ = value;
+ return this;
+ }
+
+ // optional PhoneNumberDesc noInternationalDialling = 24;
+ private boolean hasNoInternationalDialling;
+ private PhoneNumberDesc noInternationalDialling_ = null;
+ public boolean hasNoInternationalDialling() { return hasNoInternationalDialling; }
+ public PhoneNumberDesc getNoInternationalDialling() { return noInternationalDialling_; }
+ public PhoneMetadata setNoInternationalDialling(PhoneNumberDesc value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ hasNoInternationalDialling = true;
+ noInternationalDialling_ = value;
+ return this;
+ }
+
+ // required string id = 9;
+ private boolean hasId;
+ private String id_ = "";
+ public boolean hasId() { return hasId; }
+ public String getId() { return id_; }
+ public PhoneMetadata setId(String value) {
+ hasId = true;
+ id_ = value;
+ return this;
+ }
+
+ // optional int32 country_code = 10;
+ private boolean hasCountryCode;
+ private int countryCode_ = 0;
+ public boolean hasCountryCode() { return hasCountryCode; }
+ public int getCountryCode() { return countryCode_; }
+ public PhoneMetadata setCountryCode(int value) {
+ hasCountryCode = true;
+ countryCode_ = value;
+ return this;
+ }
+
+ // optional string international_prefix = 11;
+ private boolean hasInternationalPrefix;
+ private String internationalPrefix_ = "";
+ public boolean hasInternationalPrefix() { return hasInternationalPrefix; }
+ public String getInternationalPrefix() { return internationalPrefix_; }
+ public PhoneMetadata setInternationalPrefix(String value) {
+ hasInternationalPrefix = true;
+ internationalPrefix_ = value;
+ return this;
+ }
+
+ // optional string preferred_international_prefix = 17;
+ private boolean hasPreferredInternationalPrefix;
+ private String preferredInternationalPrefix_ = "";
+ public boolean hasPreferredInternationalPrefix() { return hasPreferredInternationalPrefix; }
+ public String getPreferredInternationalPrefix() { return preferredInternationalPrefix_; }
+ public PhoneMetadata setPreferredInternationalPrefix(String value) {
+ hasPreferredInternationalPrefix = true;
+ preferredInternationalPrefix_ = value;
+ return this;
+ }
+
+ // optional string national_prefix = 12;
+ private boolean hasNationalPrefix;
+ private String nationalPrefix_ = "";
+ public boolean hasNationalPrefix() { return hasNationalPrefix; }
+ public String getNationalPrefix() { return nationalPrefix_; }
+ public PhoneMetadata setNationalPrefix(String value) {
+ hasNationalPrefix = true;
+ nationalPrefix_ = value;
+ return this;
+ }
+
+ // optional string preferred_extn_prefix = 13;
+ private boolean hasPreferredExtnPrefix;
+ private String preferredExtnPrefix_ = "";
+ public boolean hasPreferredExtnPrefix() { return hasPreferredExtnPrefix; }
+ public String getPreferredExtnPrefix() { return preferredExtnPrefix_; }
+ public PhoneMetadata setPreferredExtnPrefix(String value) {
+ hasPreferredExtnPrefix = true;
+ preferredExtnPrefix_ = value;
+ return this;
+ }
+
+ // optional string national_prefix_for_parsing = 15;
+ private boolean hasNationalPrefixForParsing;
+ private String nationalPrefixForParsing_ = "";
+ public boolean hasNationalPrefixForParsing() { return hasNationalPrefixForParsing; }
+ public String getNationalPrefixForParsing() { return nationalPrefixForParsing_; }
+ public PhoneMetadata setNationalPrefixForParsing(String value) {
+ hasNationalPrefixForParsing = true;
+ nationalPrefixForParsing_ = value;
+ return this;
+ }
+
+ // optional string national_prefix_transform_rule = 16;
+ private boolean hasNationalPrefixTransformRule;
+ private String nationalPrefixTransformRule_ = "";
+ public boolean hasNationalPrefixTransformRule() { return hasNationalPrefixTransformRule; }
+ public String getNationalPrefixTransformRule() { return nationalPrefixTransformRule_; }
+ public PhoneMetadata setNationalPrefixTransformRule(String value) {
+ hasNationalPrefixTransformRule = true;
+ nationalPrefixTransformRule_ = value;
+ return this;
+ }
+
+ // optional bool same_mobile_and_fixed_line_pattern = 18 [default = false];
+ private boolean hasSameMobileAndFixedLinePattern;
+ private boolean sameMobileAndFixedLinePattern_ = false;
+ public boolean hasSameMobileAndFixedLinePattern() { return hasSameMobileAndFixedLinePattern; }
+ public boolean isSameMobileAndFixedLinePattern() { return sameMobileAndFixedLinePattern_; }
+ public PhoneMetadata setSameMobileAndFixedLinePattern(boolean value) {
+ hasSameMobileAndFixedLinePattern = true;
+ sameMobileAndFixedLinePattern_ = value;
+ return this;
+ }
+
+ // repeated NumberFormat number_format = 19;
+ private java.util.List<NumberFormat> numberFormat_ = new java.util.ArrayList<NumberFormat>();
+ public java.util.List<NumberFormat> numberFormats() {
+ return numberFormat_;
+ }
+ public int numberFormatSize() { return numberFormat_.size(); }
+ public NumberFormat getNumberFormat(int index) {
+ return numberFormat_.get(index);
+ }
+ public PhoneMetadata addNumberFormat(NumberFormat value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ numberFormat_.add(value);
+ return this;
+ }
+
+ // repeated NumberFormat intl_number_format = 20;
+ private java.util.List<NumberFormat> intlNumberFormat_ =
+ new java.util.ArrayList<NumberFormat>();
+ public java.util.List<NumberFormat> intlNumberFormats() {
+ return intlNumberFormat_;
+ }
+ public int intlNumberFormatSize() { return intlNumberFormat_.size(); }
+ public NumberFormat getIntlNumberFormat(int index) {
+ return intlNumberFormat_.get(index);
+ }
+
+ public PhoneMetadata addIntlNumberFormat(NumberFormat value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ intlNumberFormat_.add(value);
+ return this;
+ }
+ public PhoneMetadata clearIntlNumberFormat() {
+ intlNumberFormat_.clear();
+ return this;
+ }
+
+ // optional bool main_country_for_code = 22 [default = false];
+ private boolean hasMainCountryForCode;
+ private boolean mainCountryForCode_ = false;
+ public boolean hasMainCountryForCode() { return hasMainCountryForCode; }
+ public boolean isMainCountryForCode() { return mainCountryForCode_; }
+ // Method that lets this class have the same interface as the one generated by Protocol Buffers
+ // which is used by C++ build tools.
+ public boolean getMainCountryForCode() { return mainCountryForCode_; }
+ public PhoneMetadata setMainCountryForCode(boolean value) {
+ hasMainCountryForCode = true;
+ mainCountryForCode_ = value;
+ return this;
+ }
+
+ // optional string leading_digits = 23;
+ private boolean hasLeadingDigits;
+ private String leadingDigits_ = "";
+ public boolean hasLeadingDigits() { return hasLeadingDigits; }
+ public String getLeadingDigits() { return leadingDigits_; }
+ public PhoneMetadata setLeadingDigits(String value) {
+ hasLeadingDigits = true;
+ leadingDigits_ = value;
+ return this;
+ }
+
+ // optional bool leading_zero_possible = 26 [default = false];
+ private boolean hasLeadingZeroPossible;
+ private boolean leadingZeroPossible_ = false;
+ public boolean hasLeadingZeroPossible() { return hasLeadingZeroPossible; }
+ public boolean isLeadingZeroPossible() { return leadingZeroPossible_; }
+ public PhoneMetadata setLeadingZeroPossible(boolean value) {
+ hasLeadingZeroPossible = true;
+ leadingZeroPossible_ = value;
+ return this;
+ }
+
+ // optional bool mobile_number_portable_region = 32 [default = false];
+ private boolean hasMobileNumberPortableRegion;
+ private boolean mobileNumberPortableRegion_ = false;
+ public boolean hasMobileNumberPortableRegion() { return hasMobileNumberPortableRegion; }
+ public boolean isMobileNumberPortableRegion() { return mobileNumberPortableRegion_; }
+ public PhoneMetadata setMobileNumberPortableRegion(boolean value) {
+ hasMobileNumberPortableRegion = true;
+ mobileNumberPortableRegion_ = value;
+ return this;
+ }
+
+ public void writeExternal(ObjectOutput objectOutput) throws IOException {
+ objectOutput.writeBoolean(hasGeneralDesc);
+ if (hasGeneralDesc) {
+ generalDesc_.writeExternal(objectOutput);
+ }
+ objectOutput.writeBoolean(hasFixedLine);
+ if (hasFixedLine) {
+ fixedLine_.writeExternal(objectOutput);
+ }
+ objectOutput.writeBoolean(hasMobile);
+ if (hasMobile) {
+ mobile_.writeExternal(objectOutput);
+ }
+ objectOutput.writeBoolean(hasTollFree);
+ if (hasTollFree) {
+ tollFree_.writeExternal(objectOutput);
+ }
+ objectOutput.writeBoolean(hasPremiumRate);
+ if (hasPremiumRate) {
+ premiumRate_.writeExternal(objectOutput);
+ }
+ objectOutput.writeBoolean(hasSharedCost);
+ if (hasSharedCost) {
+ sharedCost_.writeExternal(objectOutput);
+ }
+ objectOutput.writeBoolean(hasPersonalNumber);
+ if (hasPersonalNumber) {
+ personalNumber_.writeExternal(objectOutput);
+ }
+ objectOutput.writeBoolean(hasVoip);
+ if (hasVoip) {
+ voip_.writeExternal(objectOutput);
+ }
+ objectOutput.writeBoolean(hasPager);
+ if (hasPager) {
+ pager_.writeExternal(objectOutput);
+ }
+ objectOutput.writeBoolean(hasUan);
+ if (hasUan) {
+ uan_.writeExternal(objectOutput);
+ }
+ objectOutput.writeBoolean(hasEmergency);
+ if (hasEmergency) {
+ emergency_.writeExternal(objectOutput);
+ }
+ objectOutput.writeBoolean(hasVoicemail);
+ if (hasVoicemail) {
+ voicemail_.writeExternal(objectOutput);
+ }
+ objectOutput.writeBoolean(hasShortCode);
+ if (hasShortCode) {
+ shortCode_.writeExternal(objectOutput);
+ }
+ objectOutput.writeBoolean(hasStandardRate);
+ if (hasStandardRate) {
+ standardRate_.writeExternal(objectOutput);
+ }
+ objectOutput.writeBoolean(hasCarrierSpecific);
+ if (hasCarrierSpecific) {
+ carrierSpecific_.writeExternal(objectOutput);
+ }
+ objectOutput.writeBoolean(hasNoInternationalDialling);
+ if (hasNoInternationalDialling) {
+ noInternationalDialling_.writeExternal(objectOutput);
+ }
+
+ objectOutput.writeUTF(id_);
+ objectOutput.writeInt(countryCode_);
+ objectOutput.writeUTF(internationalPrefix_);
+
+ objectOutput.writeBoolean(hasPreferredInternationalPrefix);
+ if (hasPreferredInternationalPrefix) {
+ objectOutput.writeUTF(preferredInternationalPrefix_);
+ }
+
+ objectOutput.writeBoolean(hasNationalPrefix);
+ if (hasNationalPrefix) {
+ objectOutput.writeUTF(nationalPrefix_);
+ }
+
+ objectOutput.writeBoolean(hasPreferredExtnPrefix);
+ if (hasPreferredExtnPrefix) {
+ objectOutput.writeUTF(preferredExtnPrefix_);
+ }
+
+ objectOutput.writeBoolean(hasNationalPrefixForParsing);
+ if (hasNationalPrefixForParsing) {
+ objectOutput.writeUTF(nationalPrefixForParsing_);
+ }
+
+ objectOutput.writeBoolean(hasNationalPrefixTransformRule);
+ if (hasNationalPrefixTransformRule) {
+ objectOutput.writeUTF(nationalPrefixTransformRule_);
+ }
+
+ objectOutput.writeBoolean(sameMobileAndFixedLinePattern_);
+
+ int numberFormatSize = numberFormatSize();
+ objectOutput.writeInt(numberFormatSize);
+ for (int i = 0; i < numberFormatSize; i++) {
+ numberFormat_.get(i).writeExternal(objectOutput);
+ }
+
+ int intlNumberFormatSize = intlNumberFormatSize();
+ objectOutput.writeInt(intlNumberFormatSize);
+ for (int i = 0; i < intlNumberFormatSize; i++) {
+ intlNumberFormat_.get(i).writeExternal(objectOutput);
+ }
+
+ objectOutput.writeBoolean(mainCountryForCode_);
+
+ objectOutput.writeBoolean(hasLeadingDigits);
+ if (hasLeadingDigits) {
+ objectOutput.writeUTF(leadingDigits_);
+ }
+
+ objectOutput.writeBoolean(leadingZeroPossible_);
+
+ objectOutput.writeBoolean(mobileNumberPortableRegion_);
+ }
+
+ public void readExternal(ObjectInput objectInput) throws IOException {
+ boolean hasDesc = objectInput.readBoolean();
+ if (hasDesc) {
+ PhoneNumberDesc desc = new PhoneNumberDesc();
+ desc.readExternal(objectInput);
+ setGeneralDesc(desc);
+ }
+ hasDesc = objectInput.readBoolean();
+ if (hasDesc) {
+ PhoneNumberDesc desc = new PhoneNumberDesc();
+ desc.readExternal(objectInput);
+ setFixedLine(desc);
+ }
+ hasDesc = objectInput.readBoolean();
+ if (hasDesc) {
+ PhoneNumberDesc desc = new PhoneNumberDesc();
+ desc.readExternal(objectInput);
+ setMobile(desc);
+ }
+ hasDesc = objectInput.readBoolean();
+ if (hasDesc) {
+ PhoneNumberDesc desc = new PhoneNumberDesc();
+ desc.readExternal(objectInput);
+ setTollFree(desc);
+ }
+ hasDesc = objectInput.readBoolean();
+ if (hasDesc) {
+ PhoneNumberDesc desc = new PhoneNumberDesc();
+ desc.readExternal(objectInput);
+ setPremiumRate(desc);
+ }
+ hasDesc = objectInput.readBoolean();
+ if (hasDesc) {
+ PhoneNumberDesc desc = new PhoneNumberDesc();
+ desc.readExternal(objectInput);
+ setSharedCost(desc);
+ }
+ hasDesc = objectInput.readBoolean();
+ if (hasDesc) {
+ PhoneNumberDesc desc = new PhoneNumberDesc();
+ desc.readExternal(objectInput);
+ setPersonalNumber(desc);
+ }
+ hasDesc = objectInput.readBoolean();
+ if (hasDesc) {
+ PhoneNumberDesc desc = new PhoneNumberDesc();
+ desc.readExternal(objectInput);
+ setVoip(desc);
+ }
+ hasDesc = objectInput.readBoolean();
+ if (hasDesc) {
+ PhoneNumberDesc desc = new PhoneNumberDesc();
+ desc.readExternal(objectInput);
+ setPager(desc);
+ }
+ hasDesc = objectInput.readBoolean();
+ if (hasDesc) {
+ PhoneNumberDesc desc = new PhoneNumberDesc();
+ desc.readExternal(objectInput);
+ setUan(desc);
+ }
+ hasDesc = objectInput.readBoolean();
+ if (hasDesc) {
+ PhoneNumberDesc desc = new PhoneNumberDesc();
+ desc.readExternal(objectInput);
+ setEmergency(desc);
+ }
+ hasDesc = objectInput.readBoolean();
+ if (hasDesc) {
+ PhoneNumberDesc desc = new PhoneNumberDesc();
+ desc.readExternal(objectInput);
+ setVoicemail(desc);
+ }
+ hasDesc = objectInput.readBoolean();
+ if (hasDesc) {
+ PhoneNumberDesc desc = new PhoneNumberDesc();
+ desc.readExternal(objectInput);
+ setShortCode(desc);
+ }
+ hasDesc = objectInput.readBoolean();
+ if (hasDesc) {
+ PhoneNumberDesc desc = new PhoneNumberDesc();
+ desc.readExternal(objectInput);
+ setStandardRate(desc);
+ }
+ hasDesc = objectInput.readBoolean();
+ if (hasDesc) {
+ PhoneNumberDesc desc = new PhoneNumberDesc();
+ desc.readExternal(objectInput);
+ setCarrierSpecific(desc);
+ }
+ hasDesc = objectInput.readBoolean();
+ if (hasDesc) {
+ PhoneNumberDesc desc = new PhoneNumberDesc();
+ desc.readExternal(objectInput);
+ setNoInternationalDialling(desc);
+ }
+
+ setId(objectInput.readUTF());
+ setCountryCode(objectInput.readInt());
+ setInternationalPrefix(objectInput.readUTF());
+
+ boolean hasString = objectInput.readBoolean();
+ if (hasString) {
+ setPreferredInternationalPrefix(objectInput.readUTF());
+ }
+
+ hasString = objectInput.readBoolean();
+ if (hasString) {
+ setNationalPrefix(objectInput.readUTF());
+ }
+
+ hasString = objectInput.readBoolean();
+ if (hasString) {
+ setPreferredExtnPrefix(objectInput.readUTF());
+ }
+
+ hasString = objectInput.readBoolean();
+ if (hasString) {
+ setNationalPrefixForParsing(objectInput.readUTF());
+ }
+
+ hasString = objectInput.readBoolean();
+ if (hasString) {
+ setNationalPrefixTransformRule(objectInput.readUTF());
+ }
+
+ setSameMobileAndFixedLinePattern(objectInput.readBoolean());
+
+ int nationalFormatSize = objectInput.readInt();
+ for (int i = 0; i < nationalFormatSize; i++) {
+ NumberFormat numFormat = new NumberFormat();
+ numFormat.readExternal(objectInput);
+ numberFormat_.add(numFormat);
+ }
+
+ int intlNumberFormatSize = objectInput.readInt();
+ for (int i = 0; i < intlNumberFormatSize; i++) {
+ NumberFormat numFormat = new NumberFormat();
+ numFormat.readExternal(objectInput);
+ intlNumberFormat_.add(numFormat);
+ }
+
+ setMainCountryForCode(objectInput.readBoolean());
+
+ hasString = objectInput.readBoolean();
+ if (hasString) {
+ setLeadingDigits(objectInput.readUTF());
+ }
+
+ setLeadingZeroPossible(objectInput.readBoolean());
+
+ setMobileNumberPortableRegion(objectInput.readBoolean());
+ }
+ }
+
+ public static class PhoneMetadataCollection implements Externalizable {
+ private static final long serialVersionUID = 1;
+ public PhoneMetadataCollection() {}
+
+ /**
+ * Provides a dummy builder.
+ *
+ * @see NumberFormat.Builder
+ */
+ public static final class Builder extends PhoneMetadataCollection {
+ public PhoneMetadataCollection build() {
+ return this;
+ }
+ }
+ public static Builder newBuilder() {
+ return new Builder();
+ }
+
+ // repeated PhoneMetadata metadata = 1;
+ private java.util.List<PhoneMetadata> metadata_ = new java.util.ArrayList<PhoneMetadata>();
+
+ public java.util.List<PhoneMetadata> getMetadataList() {
+ return metadata_;
+ }
+ public int getMetadataCount() { return metadata_.size(); }
+
+ public PhoneMetadataCollection addMetadata(PhoneMetadata value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ metadata_.add(value);
+ return this;
+ }
+
+ public void writeExternal(ObjectOutput objectOutput) throws IOException {
+ int size = getMetadataCount();
+ objectOutput.writeInt(size);
+ for (int i = 0; i < size; i++) {
+ metadata_.get(i).writeExternal(objectOutput);
+ }
+ }
+
+ public void readExternal(ObjectInput objectInput) throws IOException {
+ int size = objectInput.readInt();
+ for (int i = 0; i < size; i++) {
+ PhoneMetadata metadata = new PhoneMetadata();
+ metadata.readExternal(objectInput);
+ metadata_.add(metadata);
+ }
+ }
+
+ public PhoneMetadataCollection clear() {
+ metadata_.clear();
+ return this;
+ }
+ }
+}
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/ShortNumberInfo.java b/libphonenumber/src/com/google/i18n/phonenumbers/ShortNumberInfo.java
index fe5ca8f..abe800a 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/ShortNumberInfo.java
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/ShortNumberInfo.java
@@ -16,11 +16,11 @@
package com.google.i18n.phonenumbers;
-import com.google.i18n.phonenumbers.Phonenumber.PhoneNumber;
import com.google.i18n.phonenumbers.internal.MatcherApi;
import com.google.i18n.phonenumbers.internal.RegexBasedMatcher;
-import com.google.i18n.phonenumbers.nano.Phonemetadata.PhoneMetadata;
-import com.google.i18n.phonenumbers.nano.Phonemetadata.PhoneNumberDesc;
+import com.google.i18n.phonenumbers.Phonemetadata.PhoneMetadata;
+import com.google.i18n.phonenumbers.Phonemetadata.PhoneNumberDesc;
+import com.google.i18n.phonenumbers.Phonenumber.PhoneNumber;
import java.util.ArrayList;
import java.util.Arrays;
@@ -130,7 +130,7 @@
if (phoneMetadata == null) {
return false;
}
- return matcherApi.matchesPossibleNumber(shortNumber, phoneMetadata.generalDesc);
+ return matcherApi.matchesPossibleNumber(shortNumber, phoneMetadata.getGeneralDesc());
}
/**
@@ -151,7 +151,7 @@
return false;
}
return matcherApi.matchesPossibleNumber(getNationalSignificantNumber(number),
- phoneMetadata.generalDesc);
+ phoneMetadata.getGeneralDesc());
}
/**
@@ -171,7 +171,7 @@
if (phoneMetadata == null) {
continue;
}
- if (matcherApi.matchesPossibleNumber(shortNumber, phoneMetadata.generalDesc)) {
+ if (matcherApi.matchesPossibleNumber(shortNumber, phoneMetadata.getGeneralDesc())) {
return true;
}
}
@@ -199,11 +199,11 @@
if (phoneMetadata == null) {
return false;
}
- PhoneNumberDesc generalDesc = phoneMetadata.generalDesc;
+ PhoneNumberDesc generalDesc = phoneMetadata.getGeneralDesc();
if (!matchesPossibleNumberAndNationalNumber(shortNumber, generalDesc)) {
return false;
}
- PhoneNumberDesc shortNumberDesc = phoneMetadata.shortCode;
+ PhoneNumberDesc shortNumberDesc = phoneMetadata.getShortCode();
return matchesPossibleNumberAndNationalNumber(shortNumber, shortNumberDesc);
}
@@ -226,11 +226,11 @@
return false;
}
String shortNumber = getNationalSignificantNumber(number);
- PhoneNumberDesc generalDesc = phoneMetadata.generalDesc;
+ PhoneNumberDesc generalDesc = phoneMetadata.getGeneralDesc();
if (!matchesPossibleNumberAndNationalNumber(shortNumber, generalDesc)) {
return false;
}
- PhoneNumberDesc shortNumberDesc = phoneMetadata.shortCode;
+ PhoneNumberDesc shortNumberDesc = phoneMetadata.getShortCode();
return matchesPossibleNumberAndNationalNumber(shortNumber, shortNumberDesc);
}
@@ -292,13 +292,13 @@
// The cost categories are tested in order of decreasing expense, since if for some reason the
// patterns overlap the most expensive matching cost category should be returned.
- if (matchesPossibleNumberAndNationalNumber(shortNumber, phoneMetadata.premiumRate)) {
+ if (matchesPossibleNumberAndNationalNumber(shortNumber, phoneMetadata.getPremiumRate())) {
return ShortNumberCost.PREMIUM_RATE;
}
- if (matchesPossibleNumberAndNationalNumber(shortNumber, phoneMetadata.standardRate)) {
+ if (matchesPossibleNumberAndNationalNumber(shortNumber, phoneMetadata.getStandardRate())) {
return ShortNumberCost.STANDARD_RATE;
}
- if (matchesPossibleNumberAndNationalNumber(shortNumber, phoneMetadata.tollFree)) {
+ if (matchesPossibleNumberAndNationalNumber(shortNumber, phoneMetadata.getTollFree())) {
return ShortNumberCost.TOLL_FREE;
}
if (isEmergencyNumber(shortNumber, regionDialingFrom)) {
@@ -346,13 +346,13 @@
// The cost categories are tested in order of decreasing expense, since if for some reason the
// patterns overlap the most expensive matching cost category should be returned.
- if (matchesPossibleNumberAndNationalNumber(shortNumber, phoneMetadata.premiumRate)) {
+ if (matchesPossibleNumberAndNationalNumber(shortNumber, phoneMetadata.getPremiumRate())) {
return ShortNumberCost.PREMIUM_RATE;
}
- if (matchesPossibleNumberAndNationalNumber(shortNumber, phoneMetadata.standardRate)) {
+ if (matchesPossibleNumberAndNationalNumber(shortNumber, phoneMetadata.getStandardRate())) {
return ShortNumberCost.STANDARD_RATE;
}
- if (matchesPossibleNumberAndNationalNumber(shortNumber, phoneMetadata.tollFree)) {
+ if (matchesPossibleNumberAndNationalNumber(shortNumber, phoneMetadata.getTollFree())) {
return ShortNumberCost.TOLL_FREE;
}
if (isEmergencyNumber(shortNumber, regionDialingFrom)) {
@@ -429,7 +429,7 @@
for (String regionCode : regionCodes) {
PhoneMetadata phoneMetadata = MetadataManager.getShortNumberMetadataForRegion(regionCode);
if (phoneMetadata != null
- && matchesPossibleNumberAndNationalNumber(nationalNumber, phoneMetadata.shortCode)) {
+ && matchesPossibleNumberAndNationalNumber(nationalNumber, phoneMetadata.getShortCode())) {
// The number is valid for this region.
return regionCode;
}
@@ -457,9 +457,9 @@
if (phoneMetadata == null) {
return "";
}
- PhoneNumberDesc desc = phoneMetadata.shortCode;
- if (!desc.exampleNumber.equals("")) {
- return desc.exampleNumber;
+ PhoneNumberDesc desc = phoneMetadata.getShortCode();
+ if (desc.hasExampleNumber()) {
+ return desc.getExampleNumber();
}
return "";
}
@@ -481,20 +481,20 @@
PhoneNumberDesc desc = null;
switch (cost) {
case TOLL_FREE:
- desc = phoneMetadata.tollFree;
+ desc = phoneMetadata.getTollFree();
break;
case STANDARD_RATE:
- desc = phoneMetadata.standardRate;
+ desc = phoneMetadata.getStandardRate();
break;
case PREMIUM_RATE:
- desc = phoneMetadata.premiumRate;
+ desc = phoneMetadata.getPremiumRate();
break;
default:
// UNKNOWN_COST numbers are computed by the process of elimination from the other cost
// categories.
}
- if (desc != null && !desc.exampleNumber.equals("")) {
- return desc.exampleNumber;
+ if (desc != null && desc.hasExampleNumber()) {
+ return desc.getExampleNumber();
}
return "";
}
@@ -543,12 +543,12 @@
return false;
}
PhoneMetadata metadata = MetadataManager.getShortNumberMetadataForRegion(regionCode);
- if (metadata == null || metadata.emergency == null) {
+ if (metadata == null || !metadata.hasEmergency()) {
return false;
}
String normalizedNumber = PhoneNumberUtil.normalizeDigitsOnly(number);
- PhoneNumberDesc emergencyDesc = metadata.emergency;
+ PhoneNumberDesc emergencyDesc = metadata.getEmergency();
boolean allowPrefixMatchForRegion =
allowPrefixMatch && !REGIONS_WHERE_EMERGENCY_NUMBERS_MUST_BE_EXACT.contains(regionCode);
return matcherApi.matchesNationalNumber(normalizedNumber, emergencyDesc,
@@ -572,7 +572,7 @@
PhoneMetadata phoneMetadata = MetadataManager.getShortNumberMetadataForRegion(regionCode);
return (phoneMetadata != null)
&& (matchesPossibleNumberAndNationalNumber(nationalNumber,
- phoneMetadata.carrierSpecific));
+ phoneMetadata.getCarrierSpecific()));
}
/**
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/SingleFileMetadataSourceImpl.java b/libphonenumber/src/com/google/i18n/phonenumbers/SingleFileMetadataSourceImpl.java
index b89c234..9062ef4 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/SingleFileMetadataSourceImpl.java
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/SingleFileMetadataSourceImpl.java
@@ -16,17 +16,14 @@
package com.google.i18n.phonenumbers;
-import com.google.i18n.phonenumbers.nano.Phonemetadata.PhoneMetadata;
-import com.google.i18n.phonenumbers.nano.Phonemetadata.PhoneMetadataCollection;
+import com.google.i18n.phonenumbers.Phonemetadata.PhoneMetadata;
+import com.google.i18n.phonenumbers.Phonemetadata.PhoneMetadataCollection;
-import java.io.IOException;
import java.io.InputStream;
-import java.io.ObjectInputStream;
import java.util.Collections;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
-import java.util.logging.Level;
import java.util.logging.Logger;
/**
@@ -97,58 +94,28 @@
void loadMetadataFromFile() {
InputStream source = metadataLoader.loadMetadata(fileName);
if (source == null) {
- logger.log(Level.SEVERE, "missing metadata: " + fileName);
+ // This should not happen since clients shouldn't be using this implementation directly.
+ // The single file implementation is experimental, only for when the jars contain a single
+ // file with all regions' metadata. Currently we do not release such jars.
+ // TODO(b/30807096): Get the MetadataManager to decide whether to use this or the multi file
+ // loading depending on what data is available in the jar.
throw new IllegalStateException("missing metadata: " + fileName);
}
- try {
- PhoneMetadataCollection metadataCollection =
- loadMetadataAndCloseInput(new ObjectInputStream(source));
- PhoneMetadata[] metadataList = metadataCollection.metadata;
- if (metadataList.length == 0) {
- logger.log(Level.SEVERE, "empty metadata: " + fileName);
- throw new IllegalStateException("empty metadata: " + fileName);
- }
- for (PhoneMetadata metadata : metadataList) {
- String regionCode = metadata.id;
- int countryCallingCode = metadata.countryCode;
- boolean isNonGeoRegion = PhoneNumberUtil.REGION_CODE_FOR_NON_GEO_ENTITY.equals(regionCode);
- if (isNonGeoRegion) {
- countryCodeToNonGeographicalMetadataMap.put(countryCallingCode, metadata);
- } else {
- regionToMetadataMap.put(regionCode, metadata);
- }
- }
- } catch (IOException e) {
- logger.log(Level.SEVERE, "cannot load/parse metadata: " + fileName, e);
- throw new RuntimeException("cannot load/parse metadata: " + fileName, e);
+ PhoneMetadataCollection metadataCollection = MetadataManager.loadMetadataAndCloseInput(source);
+ List<PhoneMetadata> metadataList = metadataCollection.getMetadataList();
+ if (metadataList.isEmpty()) {
+ // This should not happen since clients shouldn't be using this implementation!
+ throw new IllegalStateException("empty metadata: " + fileName);
}
- }
-
- /**
- * Loads the metadata protocol buffer from the given stream and closes the stream afterwards. Any
- * exceptions that occur while reading or closing the stream are ignored.
- *
- * @param source the non-null stream from which metadata is to be read.
- * @return the loaded metadata protocol buffer.
- */
- private static PhoneMetadataCollection loadMetadataAndCloseInput(ObjectInputStream source) {
- // The size of the byte buffer for deserializing the single nano metadata file which holds
- // metadata for all regions.
- final int SINGLE_FILE_BUFFER_SIZE = 256 * 1024;
-
- PhoneMetadataCollection metadataCollection = new PhoneMetadataCollection();
- try {
- metadataCollection.mergeFrom(
- MetadataManager.convertStreamToByteBuffer(source, SINGLE_FILE_BUFFER_SIZE));
- } catch (IOException e) {
- logger.log(Level.WARNING, "error reading input (ignored)", e);
- } finally {
- try {
- source.close();
- } catch (IOException e) {
- logger.log(Level.WARNING, "error closing input stream (ignored)", e);
+ for (PhoneMetadata metadata : metadataList) {
+ String regionCode = metadata.getId();
+ int countryCallingCode = metadata.getCountryCode();
+ boolean isNonGeoRegion = PhoneNumberUtil.REGION_CODE_FOR_NON_GEO_ENTITY.equals(regionCode);
+ if (isNonGeoRegion) {
+ countryCodeToNonGeographicalMetadataMap.put(countryCallingCode, metadata);
+ } else {
+ regionToMetadataMap.put(regionCode, metadata);
}
}
- return metadataCollection;
}
}
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_255 b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_255
index 7e32b2b..7c4f9da 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_255
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_255
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_27 b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_27
index a8394f7..5ab6d03 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_27
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_27
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_30 b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_30
index cfd7b37..4f6f50a 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_30
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_30
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_31 b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_31
index 82340de..1999488 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_31
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_31
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_34 b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_34
index d0703f8..7c60d3d 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_34
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_34
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_350 b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_350
index 1ea3d71..e857d20 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_350
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_350
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_351 b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_351
index bffda86..bd077e7 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_351
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_351
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_352 b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_352
index 79b39e1..7ee05e9 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_352
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_352
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_358 b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_358
index 83951fb..dc7a5d1 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_358
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_358
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_359 b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_359
index fb48aa6..6431d10 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_359
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_359
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_36 b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_36
index 0994e0d..9284fb1 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_36
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_36
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_372 b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_372
index 3f3689c..a16f968 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_372
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_372
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_373 b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_373
index b9d0f47..6932076 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_373
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_373
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_380 b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_380
index 7bd530d..ef96327 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_380
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_380
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_381 b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_381
index b98f0b3..37654d4 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_381
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_381
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_385 b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_385
index a2f2fbe..c6d7913 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_385
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_385
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_43 b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_43
index cab13d8..48addfe 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_43
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_43
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_44 b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_44
index a5cdfdc..4864eeb 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_44
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_44
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_49 b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_49
index aca98ea..54cc030 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_49
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_49
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_505 b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_505
index 437160a..f8b78ff 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_505
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_505
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_506 b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_506
index 4be3816..1987a23 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_506
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_506
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_54 b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_54
index fcd3a37..c401bf9 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_54
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_54
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_55 b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_55
index 490569e..a207595 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_55
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_55
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_58 b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_58
index 07bd92e..da95139 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_58
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_58
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_595 b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_595
index a2563d3..6020141 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_595
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_595
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_61 b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_61
index 2ff5a99..7a0a3b8 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_61
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_61
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_62 b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_62
index 3c04146..8763d3c 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_62
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_62
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_63 b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_63
index 0c434d1..84f5a53 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_63
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_63
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_66 b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_66
index 3f59b7b..bcf3abb 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_66
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_66
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_675 b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_675
index b28f198..52d0a37 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_675
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_675
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_676 b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_676
index b9a02bc..e7f5f11 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_676
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_676
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_679 b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_679
index f799637..15209d2 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_679
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_679
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_7 b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_7
index 74eba0d..5d72f0b 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_7
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_7
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_81 b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_81
index 5952533..efe9684 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_81
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_81
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_84 b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_84
index bae5eaa..5c77233 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_84
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_84
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_855 b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_855
index 8dc04db..e231e9d 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_855
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_855
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_90 b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_90
index 531b6e2..9475071 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_90
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_90
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_91 b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_91
index 319d621..f63b8ec 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_91
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_91
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_94 b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_94
index 931b3e5..6958435 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_94
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_94
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_95 b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_95
index 50afc44..a672784 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_95
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_95
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_971 b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_971
index 1cf408c..31d4fe0 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_971
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_971
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_972 b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_972
index 6bdc92c..01d2cb9 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_972
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_972
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_995 b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_995
index 6e21214..81d6f13 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_995
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_995
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_800 b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_800
index c8d5ffa..dd55173 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_800
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_800
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_808 b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_808
index d17c8d6..8f434f2 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_808
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_808
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_870 b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_870
index e8c082b..894b6cb 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_870
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_870
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_878 b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_878
index d58df56..d10e41f 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_878
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_878
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_881 b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_881
index ea9ef7e..1ae3e35 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_881
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_881
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_882 b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_882
index ca49ff0..550e9a4 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_882
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_882
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_883 b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_883
index 88b8a5a..e0c66f1 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_883
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_883
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_888 b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_888
index 0cd763b..1bf712d 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_888
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_888
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_979 b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_979
index 0929b3f..f5151be 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_979
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_979
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AC b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AC
index c1878bd..06d5961 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AC
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AC
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AD b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AD
index bfac111..78988b4 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AD
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AD
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AE b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AE
index 3fed669..23a8e2d 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AE
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AE
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AF b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AF
index a34ad96..1e38dd7 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_AG b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AG
index 122a2d2..cf19f85 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AG
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AG
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AI b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AI
index c8decd9..2fb4737 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AI
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AI
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AL b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AL
index aa2ab6d..cc43beb 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AL
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AL
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 38daaa1..6cd5015 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_AO b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AO
index 133a93b..243033e 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AO
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AO
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AR b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AR
index e8d3d9c..1a91aa6 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AR
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AR
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AS b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AS
index 1762bfd..030cf8e 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AS
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AS
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AT b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AT
index 7b6813f..528c317 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AT
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AT
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AU b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AU
index e87facd..2c35e5d 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AU
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AU
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AW b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AW
index bea4677..59edc86 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AW
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AW
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AX b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AX
index 3a0163b..32cd44f 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AX
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AX
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AZ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AZ
index 32fcc1a..8051518 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AZ
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AZ
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BA b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BA
index 9f7ced8..550b49e 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BA
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BA
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BB b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BB
index 07e1552..7cf8553 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BB
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BB
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 81e9a79..349705c 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 9cab975..74370f9 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 1265ae9..45f03ec 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_BG b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BG
index bda3990..36a59d3 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BG
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BG
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BH b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BH
index 7700513..9673208 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BH
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BH
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BI b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BI
index 1aa3e01..1a3442c 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BI
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BI
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 ed13585..7bcf135 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_BL b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BL
index 25c8318..fe4139a 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BL
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BL
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BM b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BM
index 3165966..56c05de 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BM
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BM
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BN b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BN
index b8d9001..2af84ab 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BN
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BN
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BO b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BO
index a17a92b..025a261 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BO
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BO
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BQ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BQ
index 7825f44..9ee6d9f 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BQ
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BQ
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BR b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BR
index 9d1f45c..f6d3a1f 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BR
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BR
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BS b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BS
index 87b790b..440f624 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BS
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BS
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BT b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BT
index 4790935..21d1781 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BT
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BT
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BW b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BW
index d59df84..b95a873 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BW
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BW
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BY b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BY
index 63c2062..7696797 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BY
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BY
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BZ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BZ
index f6ad5c1..3a9eaac 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BZ
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BZ
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 690e6d8..ebb127a 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_CC b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CC
index b4fc272..6ce9013 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CC
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CC
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CD b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CD
index cf0004f..0a069ce 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CD
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CD
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CF b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CF
index 456b2a3..ddd2cdf 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CF
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CF
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 f1cb4eb..d3e80da 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_CH b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CH
index 144c6eb..f895299 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CH
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CH
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 6c8e4ef..f4c1bd1 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_CK b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CK
index 0a2c5e8..8620374 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CK
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CK
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 21f89d8..0f0b7c2 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_CM b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CM
index 8d458be..c4c6ae1 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CM
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CM
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 6c3815b..fba893e 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_CO b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CO
index eba5a7b..96075d2 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CO
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CO
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CR b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CR
index 06034b7..ff2bfff 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CR
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CR
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CU b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CU
index 3883664..586226b 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CU
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CU
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 bea6d98..f285ad1 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_CW b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CW
index 96c787a..c0f8736 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CW
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CW
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CX b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CX
index 81e9a31..6da44fb 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CX
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CX
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CY b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CY
index 8b1f9da..27df194 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CY
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CY
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CZ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CZ
index 4003d75..d888c3c 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CZ
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CZ
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 fbaad08..8594987 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_DJ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_DJ
index 0a69eb8..df52fa8 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_DJ
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_DJ
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_DK b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_DK
index 0f0a954..b46f8ca 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_DK
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_DK
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_DM b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_DM
index 020d81b..0efc992 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_DM
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_DM
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_DO b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_DO
index 81cbb5a..a5f2ae3 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_DO
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_DO
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_DZ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_DZ
index 93eb032..c90f9d5 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_DZ
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_DZ
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_EC b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_EC
index 9beb7d2..fa11c73 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_EC
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_EC
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_EE b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_EE
index 45c53c6..adf90fa 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_EE
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_EE
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_EG b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_EG
index f98dde2..abba494 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_EG
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_EG
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 5484012..fb7c7f4 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_ER b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_ER
index b9f7028..3493c4a 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_ER
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_ER
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_ES b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_ES
index f31856e..c4d9889 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_ES
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_ES
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 f26f873..a17b030 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_FI b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_FI
index 0da7692..ec2d958 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_FI
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_FI
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_FJ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_FJ
index 17da105..b47ac8f 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_FJ
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_FJ
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_FK b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_FK
index 0b8ff8f..7792393 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_FK
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_FK
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_FM b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_FM
index ec4f634..c5bb164 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_FM
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_FM
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_FO b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_FO
index 2a3c8a4..a1735d3 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_FO
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_FO
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 c27b007..c7bdc8a 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_GA b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GA
index 8513d52..a086ea1 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GA
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GA
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GB b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GB
index d31f480..7f33b9b 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GB
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GB
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GD b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GD
index 9116ebc..5922834 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GD
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GD
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GE b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GE
index 2754840..25412b4 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GE
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GE
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GF b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GF
index 76ea09d..ff2ed91 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GF
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GF
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GG b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GG
index 17aa02e..2e79234 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GG
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GG
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GH b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GH
index 6f2a088..901d822 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GH
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GH
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GI b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GI
index 3fef301..8eabaa6 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GI
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GI
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GL b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GL
index b9c885a..e4e91a3 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GL
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GL
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GM b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GM
index 402e5e2..81bc9ce 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GM
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GM
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GN b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GN
index 357c2f0..305a0a3 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GN
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GN
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 8799e47..019e38f 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_GQ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GQ
index bed4f18..be34bae 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GQ
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GQ
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GR b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GR
index 010b08f..4a65521 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GR
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GR
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GT b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GT
index 0e66b7f..2451e16 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GT
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GT
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GU b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GU
index ec96aae..0c45ef6 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GU
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GU
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 737b6eb..d4d061f 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_GY b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GY
index 6efcfab..9e4a059 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GY
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GY
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 aa348cb..d5b5a20 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_HN b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_HN
index b0f61db..9ae12b9 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_HN
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_HN
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_HR b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_HR
index 8aab20b..addda3a 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_HR
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_HR
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_HT b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_HT
index c8d1d5f..9fb5a7b 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_HT
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_HT
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_HU b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_HU
index ae834a8..cb1eb60 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_HU
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_HU
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_ID b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_ID
index a6f6d7c..844c4c5 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_ID
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_ID
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_IE b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_IE
index 0974614..b4d3a10 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_IE
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_IE
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_IL b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_IL
index fa66a43..c3b0d2c 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_IL
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_IL
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_IM b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_IM
index d03d54b..2e6cc68 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_IM
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_IM
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 16ce805..233d969 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_IO b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_IO
index 7a0aff3..811ec9a 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_IO
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_IO
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_IQ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_IQ
index e0ce0c2..020eb37 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_IQ
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_IQ
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 1f4aa7c..80c3751 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_IS b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_IS
index 69c7840..60209c0 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_IS
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_IS
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_IT b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_IT
index d40afae..312e16e 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_IT
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_IT
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_JE b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_JE
index 8252564..7aa280c 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_JE
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_JE
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_JM b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_JM
index 00b6fb7..d14f29c 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_JM
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_JM
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_JO b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_JO
index a06b3de..1762bcd 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_JO
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_JO
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_JP b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_JP
index 3018755..617b85d 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_JP
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_JP
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 3f090b0..859fc28 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 90c99e5..01c777d 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_KH b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_KH
index d613ba5..51cd3d1 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_KH
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_KH
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_KI b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_KI
index afdd07c..eef2315 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_KI
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_KI
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_KM b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_KM
index f77db73..4b50eb5 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_KM
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_KM
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_KN b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_KN
index 3de9458..b70a219 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_KN
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_KN
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_KP b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_KP
index ed9ca6d..eeb0d20 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_KP
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_KP
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_KR b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_KR
index fbf6919..9558689 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_KR
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_KR
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 11e2f67..68ff9bb 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_KY b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_KY
index 58f8997..9516542 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_KY
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_KY
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_KZ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_KZ
index d27d765..2fd94d0 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_KZ
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_KZ
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_LA b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_LA
index 77b03c3..907e8ea 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_LA
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_LA
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_LB b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_LB
index e581024..30ef330 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_LB
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_LB
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_LC b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_LC
index bf87478..7963326 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_LC
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_LC
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_LI b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_LI
index de0a7f3..9296aec 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_LI
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_LI
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_LK b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_LK
index 5229b08..7370f60 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_LK
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_LK
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_LR b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_LR
index e74f064..a67fb98 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_LR
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_LR
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_LS b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_LS
index 51e4436..fa569e2 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_LS
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_LS
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_LT b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_LT
index 293e570..c35889e 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_LT
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_LT
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_LU b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_LU
index 1a6159a..b45028c 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_LU
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_LU
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_LV b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_LV
index aff0d8a..67a9033 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_LV
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_LV
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_LY b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_LY
index 87d5b7b..d02ab18 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_LY
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_LY
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 faa1b92..b5779ac 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_MC b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MC
index 7b21de8..55a213c 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MC
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MC
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MD b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MD
index 0e181e2..ac53564 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MD
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MD
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_ME b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_ME
index c4752c7..0209cde 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_ME
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_ME
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MF b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MF
index 85534b9..1c41103 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MF
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MF
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MG b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MG
index 7c1109e..4be3862 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MG
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MG
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MH b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MH
index fe2f8ee..d22bc61 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MH
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MH
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MK b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MK
index 6d067e5..dfbf320 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MK
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MK
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 f3da8d5..e6b2628 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_MM b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MM
index ce3c3a2..f55b9c1 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MM
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MM
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MN b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MN
index 7fc3dc5..4dc239b 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MN
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MN
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MO b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MO
index 2c431d1..f302fb6 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MO
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MO
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MP b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MP
index 1081bea..52e25b8 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MP
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MP
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MQ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MQ
index da0b569..874d136 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MQ
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MQ
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MR b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MR
index 6b3891e..7991488 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MR
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MR
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MS b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MS
index 97ea8ef..dc6aec1 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MS
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MS
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MT b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MT
index 9f4ff69..33ed28d 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MT
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MT
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 8967440..b1afdc0 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 1864b4a..72ade39 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 e10d74a..46ba716 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_MX b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MX
index 267bd72..9b7ed16 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MX
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MX
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 3c3a913..8cc82c0 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_MZ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MZ
index ba7d762..30b630d 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MZ
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MZ
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_NA b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_NA
index 84098ce..b4ad6c9 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_NA
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_NA
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_NC b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_NC
index b4a00fc..9448ef1 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_NC
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_NC
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_NE b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_NE
index ca1b880..94cfbd6 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_NE
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_NE
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_NF b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_NF
index 2b8d8ca..fb7a27a 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_NF
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_NF
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_NG b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_NG
index 0520cba..26c6a66 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_NG
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_NG
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_NI b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_NI
index a346663..d193df2 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_NI
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_NI
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_NL b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_NL
index e74d23e..dc3b99c 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_NL
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_NL
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_NO b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_NO
index 643ca91..0789050 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_NO
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_NO
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_NP b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_NP
index fa21ba0..4cc0540 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_NP
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_NP
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_NR b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_NR
index ae7cff0..675edb2 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_NR
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_NR
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_NU b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_NU
index 2e2af52..7407a2c 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_NU
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_NU
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_NZ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_NZ
index 2280bf8..ae8b310 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_NZ
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_NZ
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_OM b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_OM
index e2ab69d..0b6614b 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_OM
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_OM
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 4ca001e..032e12d 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_PE b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_PE
index 7130c27..21d246e 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_PE
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_PE
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_PF b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_PF
index 6d78c6a..0f51df3 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_PF
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_PF
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_PG b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_PG
index ca9dcba..d8e9fb6 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_PG
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_PG
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_PH b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_PH
index c0cf364..7f74aea 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_PH
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_PH
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_PK b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_PK
index ebc0d91..7c95b37 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_PK
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_PK
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_PL b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_PL
index ee40a83..8eebf08 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_PL
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_PL
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_PM b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_PM
index 3b54a74..84d8d00 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_PM
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_PM
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_PR b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_PR
index 1879c81..12de93d 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_PR
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_PR
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_PS b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_PS
index 3f01149..7a4f449 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_PS
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_PS
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_PT b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_PT
index e0478c0..7cdefab 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_PT
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_PT
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_PW b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_PW
index ed6d829..c78f3f8 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_PW
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_PW
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_PY b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_PY
index 3b44fa5..4c02300 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_PY
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_PY
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_QA b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_QA
index 3394f13..3a80968 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_QA
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_QA
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_RE b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_RE
index 26dd0c4..8cdb151 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_RE
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_RE
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_RO b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_RO
index 01c62ca..7a5f675 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_RO
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_RO
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_RS b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_RS
index 709b19b..c671905 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_RS
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_RS
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_RU b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_RU
index 50a6e6c..f2e9dfc 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_RU
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_RU
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_RW b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_RW
index 2440e11..78c0c39 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_RW
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_RW
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SA b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SA
index f60c95d..7121f03 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SA
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SA
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SB b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SB
index 860a62f..d4c4a1e 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SB
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SB
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SC b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SC
index 0b8c108..c9ab7bf 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SC
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SC
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 a483c1e..b1c1819 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_SE b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SE
index fafe8d6..2b83aa5 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SE
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SE
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SG b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SG
index 1c0e6a2..c176e1b 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SG
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SG
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SH b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SH
index c8d6f82..c65b785 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SH
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SH
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SI b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SI
index 1d2b9e7..213809d 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SI
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SI
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SJ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SJ
index 2a00642..d6b5da2 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SJ
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SJ
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SK b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SK
index c642a83..2e82522 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SK
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SK
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 f2f231b..b3bd72e 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_SM b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SM
index 6c2df8f..99abc50 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SM
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SM
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SN b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SN
index 83fe3a1..c930034 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SN
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SN
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SO b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SO
index bf98eef..0f3a491 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SO
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SO
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SR b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SR
index 9d3d88e..1cbadd0 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SR
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SR
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SS b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SS
index d6ab393..22af291 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SS
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SS
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_ST b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_ST
index 1736256..4b02e5d 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_ST
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_ST
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SV b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SV
index fbc8cd6..06e019d 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SV
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SV
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SX b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SX
index 80ae038..57c5acd 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SX
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SX
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SY b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SY
index f61fd9d..d099d14 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SY
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SY
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SZ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SZ
index 3fccaea..06ee7a6 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SZ
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SZ
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TA b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TA
index 5359335..94ea084 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TA
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TA
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TC b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TC
index 5e04501..eb21bba 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TC
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TC
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TD b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TD
index 546dd98..c48135b 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TD
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TD
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 cd6d88d..0e293cb 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_TH b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TH
index 415a87d..e6950ed 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TH
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TH
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TJ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TJ
index 43b8acc..c33fdda 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TJ
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TJ
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TK b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TK
index 3b216e7..b78c16f 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TK
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TK
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TL b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TL
index 2afdf56..4b98126 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TL
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TL
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TM b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TM
index daa2625..3423cdb 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TM
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TM
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TN b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TN
index 4eece03..f619fc0 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TN
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TN
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TO b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TO
index fe9ea53..6022c49 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TO
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TO
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 55d9cdd..da11135 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 75e974c..c5bdb72 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 3694730..8b5e370 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_TW b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TW
index 77446e3..21e17d5 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TW
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TW
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TZ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TZ
index e520fee..fddf6c4 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TZ
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TZ
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_UA b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_UA
index af44a6b..2c8b86c 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_UA
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_UA
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_UG b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_UG
index 99a5155..658338d 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_UG
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_UG
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 a8fdf10..c85b9ae 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_UY b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_UY
index 3467720..b12ec52 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_UY
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_UY
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_UZ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_UZ
index 38273b6..fe87889 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_UZ
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_UZ
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_VA b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_VA
index e9484d1..bfa0356 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_VA
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_VA
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_VC b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_VC
index 17bc40e..bbd247f 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_VC
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_VC
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_VE b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_VE
index a1a3ad9..3697e6b 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_VE
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_VE
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_VG b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_VG
index e6da71b..6eb1fd8 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_VG
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_VG
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_VI b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_VI
index f04e574..8e83bdd 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_VI
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_VI
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_VN b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_VN
index 55c5d6c..9d9827d 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_VN
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_VN
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_VU b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_VU
index 818cca8..fb52724 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_VU
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_VU
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_WF b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_WF
index 15de7fe..192f85b 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_WF
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_WF
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_WS b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_WS
index 73fdc76..b68ec5b 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_WS
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_WS
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_YE b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_YE
index 88b4749..acca926 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_YE
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_YE
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_YT b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_YT
index 1dc3dd4..5d99aab 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_YT
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_YT
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_ZA b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_ZA
index a0ba811..e9beec7 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_ZA
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_ZA
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_ZM b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_ZM
index e1d5544..a94420a 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_ZM
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_ZM
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_ZW b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_ZW
index 0b35a04..40e4fd9 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_ZW
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_ZW
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_AC b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_AC
index 74ffcdc..3dea590 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_AC
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_AC
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_AD b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_AD
index f24df33..a45bbb7 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_AD
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_AD
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_AE b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_AE
index fbcfefc..5bbc6df 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_AE
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_AE
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_AF b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_AF
index 3788b26..38212a3 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_AF
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_AF
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_AG b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_AG
index 78ae869..975779f 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_AG
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_AG
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_AI b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_AI
index e7e5bff..bd88c28 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_AI
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_AI
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_AL b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_AL
index 8ea4ce8..20aa7bb 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_AL
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_AL
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_AM b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_AM
index 6352293..31e46c1 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_AM
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_AM
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_AO b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_AO
index 310df7f..22ad3f6 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_AO
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_AO
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_AR b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_AR
index 8a9daf1..3e57091 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_AR
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_AR
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_AS b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_AS
index a27ffe7..16b9fff 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_AS
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_AS
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_AT b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_AT
index 304c1a2..42feb96 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_AT
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_AT
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_AU b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_AU
index d209247..f572a64 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_AU
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_AU
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_AW b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_AW
index f3ffda4..79fc45c 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_AW
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_AW
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_AX b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_AX
index 565fcb5..2aa1773 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_AX
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_AX
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_AZ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_AZ
index c3a7dc4..36f53ad 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_AZ
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_AZ
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BA b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BA
index 33520ea..48fb30d 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BA
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BA
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BB b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BB
index 269b75b..7ed12a5 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BB
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BB
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BD b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BD
index a1983cf..89bb751 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BD
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BD
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 3701ff6..9f14fed 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_BF b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BF
index bd050b3..7459997 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BF
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BF
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BG b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BG
index 8b926fb..db21062 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BG
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BG
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BH b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BH
index 662b7ae..48204d4 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BH
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BH
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BI b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BI
index 5b3dec4..0c7a866 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BI
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BI
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BJ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BJ
index 3d5f8aa..cd723b6 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BJ
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BJ
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BL b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BL
index 2f404c3..68e41a1 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BL
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BL
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BM b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BM
index b373c20..dd6f8ef 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BM
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BM
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BN b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BN
index 02cabe0..fbfd8ec 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BN
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BN
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BO b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BO
index 22e7733..a63de67 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BO
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BO
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BQ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BQ
index a29dd56..77dd739 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BQ
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BQ
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BR b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BR
index 8072ac7..1dad637 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BR
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BR
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BS b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BS
index 66388d7..ed4609a 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BS
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BS
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BT b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BT
index f290d2e..561d108 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BT
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BT
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BW b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BW
index 9760503..762ee4a 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BW
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BW
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BY b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BY
index 8c7e33c..1e54cb1 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BY
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BY
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BZ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BZ
index 4609c03..cf5d670 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BZ
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BZ
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CA b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CA
index 60321f5..601800a 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CA
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CA
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CC b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CC
index 9f460e2..a95e63d 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CC
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CC
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CD b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CD
index cdc4765..3129e02 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CD
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CD
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CF b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CF
index 13be56c..6e828c8 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CF
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CF
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CG b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CG
index a87dfd0..959f845 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CG
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CG
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CH b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CH
index fc732e0..1851523 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CH
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CH
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CI b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CI
index 0b01c4a..aafce89 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CI
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CI
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CK b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CK
index 2a9df3f..745dd90 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CK
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CK
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CL b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CL
index 6ace01a..01770d0 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CL
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CL
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CM b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CM
index e03b68f..c08c97e 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CM
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CM
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CN b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CN
index 557fcdd..fc1e772 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CN
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CN
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CO b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CO
index 890d0df..ef1fa4e 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CO
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CO
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CR b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CR
index d31a371..87e6559 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CR
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CR
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CU b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CU
index e6f3a6a..fbcc416 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CU
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CU
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CV b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CV
index d751c2d..998eebd 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CV
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CV
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CW b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CW
index 638e4ea..e3ae045 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CW
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CW
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CX b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CX
index 584ed68..42cf8d9 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CX
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CX
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CY b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CY
index 87f0f0a..7822789 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CY
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CY
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CZ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CZ
index 6788fb6..15cc9db 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CZ
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_CZ
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_DE b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_DE
index 15b5a22..d13b10e 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_DE
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_DE
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_DJ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_DJ
index 9570d9a..d2e2cf7 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_DJ
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_DJ
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_DK b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_DK
index 0c51ece..a7feff7 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_DK
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_DK
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_DM b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_DM
index 2937e9f..a243358 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_DM
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_DM
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_DO b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_DO
index 02548a8..bed984d 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_DO
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_DO
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_DZ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_DZ
index fffe170..8adb195 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_DZ
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_DZ
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_EC b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_EC
index dffb0c4..bd6fb37 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_EC
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_EC
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_EE b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_EE
index cf858b7..a2add07 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_EE
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_EE
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_EG b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_EG
index 16f946a..6c566a5 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_EG
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_EG
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_EH b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_EH
index 157e301..1fd543e 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_EH
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_EH
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_ER b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_ER
index bd31d1a..8081979 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_ER
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_ER
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_ES b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_ES
index 9e33287..e346671 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_ES
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_ES
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_ET b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_ET
index 992d15f..de8a819 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_ET
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_ET
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_FI b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_FI
index ed0013e..b329404 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_FI
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_FI
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_FJ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_FJ
index 105990e..eb5053c 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_FJ
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_FJ
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_FK b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_FK
index d06ee70..4fc96e6 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_FK
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_FK
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_FM b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_FM
index c02c676..899f301 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_FM
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_FM
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_FO b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_FO
index 1032654..2f87ede 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_FO
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_FO
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_FR b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_FR
index 781a5a2..9cd45b1 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_FR
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_FR
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_GA b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_GA
index 253da09..bcebdb3 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_GA
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_GA
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_GB b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_GB
index 0567b72..85a8eae 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_GB
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_GB
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_GD b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_GD
index 42f73e8..57a9403 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_GD
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_GD
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_GE b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_GE
index 0f03548..d5f0078 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_GE
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_GE
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_GF b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_GF
index d064d4b..77ac382 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_GF
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_GF
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_GG b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_GG
index 525a43a..b69dbd6 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_GG
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_GG
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_GH b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_GH
index b58fcf3..6899162 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_GH
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_GH
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_GI b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_GI
index 1ec43e2..5525f6d 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_GI
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_GI
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_GL b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_GL
index 5d89ce5..bd1430e 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_GL
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_GL
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_GM b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_GM
index 45580ca..f4e1dc9 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_GM
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_GM
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_GN b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_GN
index d29e28c..6a4b36d 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_GN
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_GN
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_GP b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_GP
index 0495da1..fb326ba 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_GP
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_GP
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_GR b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_GR
index 7e055f6..02040dd 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_GR
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_GR
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_GT b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_GT
index ad158a9..35a99a7 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_GT
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_GT
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_GU b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_GU
index 0f97192..fa65f3b 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_GU
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_GU
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_GW b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_GW
index 2cdaa3c..2ad7386 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_GW
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_GW
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_GY b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_GY
index 727fd90..0725de1 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_GY
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_GY
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_HK b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_HK
index ae9d337..fcca67f 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_HK
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_HK
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_HN b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_HN
index dcfa8e5..c1d9108 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_HN
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_HN
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_HR b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_HR
index 5fe20b6..9ef49ea 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_HR
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_HR
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_HT b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_HT
index f20c956..32e3c8d 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_HT
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_HT
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_HU b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_HU
index 26fb332..c06399a 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_HU
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_HU
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_ID b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_ID
index b001a74..e725254 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_ID
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_ID
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_IE b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_IE
index b707978..70c05d5 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_IE
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_IE
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_IL b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_IL
index cf44a7c..826cc64 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_IL
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_IL
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_IM b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_IM
index 0f48665..a06e48d 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_IM
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_IM
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_IN b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_IN
index 5672dc7..4a9ef2b 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_IN
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_IN
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_IQ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_IQ
index a2b3e7d..1f9373f 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_IQ
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_IQ
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_IR b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_IR
index 8ac0ca5..e0403a9 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_IR
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_IR
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 ff8b214..2fdf762 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_IT b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_IT
index a6d5e6a..7bcbdc2 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_IT
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_IT
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_JE b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_JE
index f1e1f5b..8fea286 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_JE
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_JE
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_JM b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_JM
index f531f3f..f5de2f5 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_JM
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_JM
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_JO b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_JO
index 6060674..38ea92b 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_JO
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_JO
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_JP b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_JP
index 0a41f2b..08fff35 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_JP
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_JP
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_KE b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_KE
index 67c2382..16e9161 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_KE
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_KE
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_KG b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_KG
index 645409a..e7bdf5b 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_KG
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_KG
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_KH b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_KH
index 357e193..a8a9bd1 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_KH
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_KH
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_KI b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_KI
index ad6ff09..80a0aa6 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_KI
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_KI
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_KM b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_KM
index f007b0b..35dadfc 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_KM
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_KM
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_KN b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_KN
index bed22fe..e737292 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_KN
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_KN
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_KP b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_KP
index e0108aa..5ce9364 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_KP
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_KP
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_KR b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_KR
index edb0da1..c87bb62 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_KR
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_KR
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_KW b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_KW
index b8d7ba7..b244645 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_KW
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_KW
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_KY b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_KY
index 2021fd6..a64d89c 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_KY
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_KY
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_KZ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_KZ
index fdd1524..23ee572 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_KZ
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_KZ
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_LA b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_LA
index a0db8e7..6478104 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_LA
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_LA
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_LB b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_LB
index 461f785..1c5858a 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_LB
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_LB
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_LC b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_LC
index dccb214..c3bb4cb 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_LC
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_LC
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_LI b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_LI
index 75cbf63..64dbc28 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_LI
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_LI
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_LK b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_LK
index f7a3bf5..6e481a4 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_LK
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_LK
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_LR b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_LR
index 865909b..3371005 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_LR
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_LR
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_LS b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_LS
index 1402e1b..8aa0744 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_LS
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_LS
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_LT b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_LT
index f24cd39..f50b892 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_LT
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_LT
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_LU b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_LU
index 73dfe0c..fc67477 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_LU
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_LU
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_LV b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_LV
index 55065ba..915764a 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_LV
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_LV
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_LY b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_LY
index da6addd..39e3992 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_LY
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_LY
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MA b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MA
index b72a0cb..2b8d16b 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MA
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MA
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MC b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MC
index 40b9d7b..529230d 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MC
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MC
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MD b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MD
index 54c4b90..03634d1 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MD
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MD
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_ME b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_ME
index 7fd5a28..8b82517 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_ME
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_ME
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MF b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MF
index b1fa010..6bd7e04 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MF
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MF
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MG b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MG
index 9fb191b..95e41da 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MG
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MG
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MH b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MH
index c0c0960..2b9ea51 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MH
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MH
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MK b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MK
index cf8e304..25f54dd 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MK
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MK
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_ML b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_ML
index 21b14db..0c82380 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_ML
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_ML
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MM b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MM
index 22ea722..fc113f3 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MM
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MM
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MN b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MN
index 5ab339b..2119e3e 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MN
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MN
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MO b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MO
index d152832..1040888 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MO
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MO
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MP b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MP
index a34c3f0..d8917d7 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MP
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MP
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MQ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MQ
index f6ec8c7..865d1e5 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MQ
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MQ
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MR b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MR
index e2c2542..01e47d0 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MR
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MR
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MS b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MS
index 38fb6c9..d50d673 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MS
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MS
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MT b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MT
index 4c923cb..aaebe77 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MT
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MT
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MU b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MU
index ab8083e..fbbc863 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MU
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MU
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MV b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MV
index 95dc6e3..d6b201a 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MV
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MV
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MW b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MW
index 91bafcc..2838c13 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MW
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MW
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MX b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MX
index dc5de20..3d3f45d 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MX
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MX
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MY b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MY
index e49f811..9f7e349 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MY
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MY
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MZ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MZ
index fbd9aff..8839ea3 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MZ
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_MZ
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_NA b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_NA
index e86b9ce..28d941b 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_NA
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_NA
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_NC b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_NC
index 2c53891..d8ec9e1 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_NC
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_NC
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_NE b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_NE
index d771aa1..6c98019 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_NE
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_NE
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_NF b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_NF
index 469c0aa..1b8e271 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_NF
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_NF
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_NG b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_NG
index 4765e57..24ecb77 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_NG
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_NG
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_NI b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_NI
index 0e64424..e87a268 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_NI
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_NI
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_NL b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_NL
index b7c82f6..e157570 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_NL
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_NL
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_NO b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_NO
index 8231890..6428caf 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_NO
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_NO
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_NP b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_NP
index f4b2a09..20cb1a8 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_NP
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_NP
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_NR b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_NR
index 5a471fd..fd5ca97 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_NR
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_NR
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_NU b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_NU
index e225d92..edf5155 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_NU
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_NU
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_NZ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_NZ
index ab3f525..e96a67e 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_NZ
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_NZ
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_OM b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_OM
index 01fb50d..8eb0071 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_OM
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_OM
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_PA b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_PA
index fbcf298..980d490 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_PA
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_PA
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_PE b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_PE
index d52f09d..6d7d8bb 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_PE
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_PE
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_PF b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_PF
index 2bc0ee2..41ab3dc 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_PF
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_PF
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_PG b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_PG
index db09b2b..5b41c33 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_PG
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_PG
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_PH b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_PH
index c89463c..33ad6a0 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_PH
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_PH
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_PK b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_PK
index f0aa8a4..4abf46d 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_PK
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_PK
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_PL b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_PL
index 3561642..0ae2514 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_PL
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_PL
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_PM b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_PM
index f4adb43..f2bfe1f 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_PM
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_PM
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_PR b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_PR
index 0b237f0..a07a07b 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_PR
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_PR
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_PT b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_PT
index cda1278..355988e 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_PT
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_PT
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_PW b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_PW
index c6440cd..2b57a22 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_PW
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_PW
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_PY b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_PY
index b593049..3252647 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_PY
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_PY
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_QA b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_QA
index 574a4f4..dd44334 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_QA
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_QA
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_RE b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_RE
index 924f838..19558ba 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_RE
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_RE
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_RO b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_RO
index 24e8a54..fc00dfa 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_RO
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_RO
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_RS b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_RS
index 8504886..ad8531b 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_RS
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_RS
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_RU b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_RU
index 71da753..d3559a9 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_RU
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_RU
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_RW b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_RW
index 1f02df8..54db815 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_RW
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_RW
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SA b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SA
index 1af3a30..24f9bdf 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SA
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SA
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SB b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SB
index f067ce0..a6a8b03 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SB
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SB
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SC b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SC
index 983acb8..f80964a 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SC
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SC
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SD b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SD
index 193fe6b..50e23e7 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SD
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SD
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SE b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SE
index 4dba0da..9eeff84 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SE
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SE
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SG b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SG
index 3b2ddf5..6c15300 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SG
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SG
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SH b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SH
index e7bf39c..a6af740 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SH
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SH
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SI b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SI
index fa6214f..65a3a5e 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SI
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SI
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SJ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SJ
index 71d22bd..bfc5612 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SJ
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SJ
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SK b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SK
index a4cdcb5..d80bf27 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SK
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SK
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SL b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SL
index f4270f1..f4d57e1 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SL
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SL
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SM b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SM
index 9957c8f..1d5ef4d 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SM
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SM
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SN b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SN
index a5cd1c3..1902a56 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SN
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SN
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SO b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SO
index c5f6cdb..90b23de 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SO
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SO
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SR b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SR
index e7bae5d..10a3b01 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SR
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SR
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_ST b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_ST
index 097b246..d25e308 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_ST
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_ST
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SV b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SV
index 4b1f16d..11c9282 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SV
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SV
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SX b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SX
index afa6a86..53df316 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SX
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SX
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SY b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SY
index b2118eb..8638c3f 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SY
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SY
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SZ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SZ
index fa0cba5..94d4b94 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SZ
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SZ
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_TC b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_TC
index 3f9db42..a3ece84 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_TC
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_TC
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_TD b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_TD
index 96aa8a1..760d211 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_TD
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_TD
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_TG b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_TG
index 16ed6c7..d7e1910 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_TG
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_TG
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_TH b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_TH
index 11b3296..9ff0ca4 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_TH
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_TH
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_TJ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_TJ
index 51a8727..17e0c92 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_TJ
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_TJ
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_TL b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_TL
index 1dabb41..26cd38e 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_TL
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_TL
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_TM b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_TM
index ded3a7c..1c8ac3d 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_TM
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_TM
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_TN b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_TN
index 992b371..9368cc4 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_TN
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_TN
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_TO b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_TO
index 5a36936..a72b863 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_TO
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_TO
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_TR b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_TR
index 1bb4435..869c121 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_TR
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_TR
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_TT b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_TT
index 1c67e2b..0b71013 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_TT
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_TT
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_TV b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_TV
index 40e5310..4135f70 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_TV
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_TV
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_TW b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_TW
index 846f018..6dfce01 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_TW
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_TW
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_TZ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_TZ
index 0c67e67..1e0572d 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_TZ
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_TZ
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_UA b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_UA
index 58a31df..c10cb13 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_UA
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_UA
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_UG b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_UG
index b7b6839..c3a24b7 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_UG
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_UG
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_US b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_US
index 5b5cd66..9a3f862 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_US
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_US
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_UY b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_UY
index 7dc561d..79de6f8 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_UY
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_UY
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_UZ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_UZ
index febccc9..0d23be4 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_UZ
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_UZ
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_VA b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_VA
index a170b28..dfab49f 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_VA
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_VA
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_VC b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_VC
index b5b5458..23228e3 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_VC
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_VC
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_VE b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_VE
index e9a731e..0722459 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_VE
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_VE
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_VG b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_VG
index aac109b..7b22a38 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_VG
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_VG
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_VI b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_VI
index 5e6e6df..6cf7622 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_VI
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_VI
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_VN b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_VN
index 136a077..555e762 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_VN
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_VN
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_VU b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_VU
index a6ab9ee..d5efdac 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_VU
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_VU
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_WF b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_WF
index fc5bcb2..d5675c7 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_WF
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_WF
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_WS b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_WS
index 686c189..e854522 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_WS
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_WS
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_YE b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_YE
index dcdd8df..3d559e4 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_YE
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_YE
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_YT b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_YT
index 60a6a33..026b340 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_YT
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_YT
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 2e639e0..c63b947 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/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_ZM b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_ZM
index f0e5edb..33083f1 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_ZM
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_ZM
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_ZW b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_ZW
index 77fcbd6..b6ebb29 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_ZW
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_ZW
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/data/SingleFilePhoneNumberMetadataProto b/libphonenumber/src/com/google/i18n/phonenumbers/data/SingleFilePhoneNumberMetadataProto
deleted file mode 100644
index a6d902d..0000000
--- a/libphonenumber/src/com/google/i18n/phonenumbers/data/SingleFilePhoneNumberMetadataProto
+++ /dev/null
Binary files differ
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/internal/MatcherApi.java b/libphonenumber/src/com/google/i18n/phonenumbers/internal/MatcherApi.java
index ac20136..38319cb 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/internal/MatcherApi.java
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/internal/MatcherApi.java
@@ -16,7 +16,7 @@
package com.google.i18n.phonenumbers.internal;
-import com.google.i18n.phonenumbers.nano.Phonemetadata.PhoneNumberDesc;
+import com.google.i18n.phonenumbers.Phonemetadata.PhoneNumberDesc;
/**
* Internal phonenumber matching API used to isolate the underlying implementation of the
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/internal/RegexBasedMatcher.java b/libphonenumber/src/com/google/i18n/phonenumbers/internal/RegexBasedMatcher.java
index b1e7a23..125a182 100644
--- a/libphonenumber/src/com/google/i18n/phonenumbers/internal/RegexBasedMatcher.java
+++ b/libphonenumber/src/com/google/i18n/phonenumbers/internal/RegexBasedMatcher.java
@@ -16,8 +16,8 @@
package com.google.i18n.phonenumbers.internal;
+import com.google.i18n.phonenumbers.Phonemetadata.PhoneNumberDesc;
import com.google.i18n.phonenumbers.RegexCache;
-import com.google.i18n.phonenumbers.nano.Phonemetadata.PhoneNumberDesc;
import java.util.regex.Matcher;
@@ -38,7 +38,7 @@
public boolean matchesNationalNumber(String nationalNumber, PhoneNumberDesc numberDesc,
boolean allowPrefixMatch) {
Matcher nationalNumberPatternMatcher = regexCache.getPatternForRegex(
- numberDesc.nationalNumberPattern).matcher(nationalNumber);
+ numberDesc.getNationalNumberPattern()).matcher(nationalNumber);
return nationalNumberPatternMatcher.matches()
|| (allowPrefixMatch && nationalNumberPatternMatcher.lookingAt());
}
@@ -46,7 +46,7 @@
// @Override
public boolean matchesPossibleNumber(String nationalNumber, PhoneNumberDesc numberDesc) {
Matcher possibleNumberPatternMatcher = regexCache.getPatternForRegex(
- numberDesc.possibleNumberPattern).matcher(nationalNumber);
+ numberDesc.getPossibleNumberPattern()).matcher(nationalNumber);
return possibleNumberPatternMatcher.matches();
}
}
diff --git a/libphonenumber/src/com/google/i18n/phonenumbers/nano/Phonemetadata.java b/libphonenumber/src/com/google/i18n/phonenumbers/nano/Phonemetadata.java
deleted file mode 100644
index abf4a67..0000000
--- a/libphonenumber/src/com/google/i18n/phonenumbers/nano/Phonemetadata.java
+++ /dev/null
@@ -1,1040 +0,0 @@
-// Generated by the protocol buffer compiler. DO NOT EDIT!
-
-package com.google.i18n.phonenumbers.nano;
-
-@SuppressWarnings("hiding")
-public interface Phonemetadata {
-
- public static final class NumberFormat extends
- com.google.protobuf.nano.MessageNano {
-
- private static volatile NumberFormat[] _emptyArray;
- public static NumberFormat[] emptyArray() {
- // Lazily initializes the empty array
- if (_emptyArray == null) {
- synchronized (
- com.google.protobuf.nano.InternalNano.LAZY_INIT_LOCK) {
- if (_emptyArray == null) {
- _emptyArray = new NumberFormat[0];
- }
- }
- }
- return _emptyArray;
- }
-
- // required string pattern = 1;
- public java.lang.String pattern;
-
- // required string format = 2;
- public java.lang.String format;
-
- // repeated string leading_digits_pattern = 3;
- public java.lang.String[] leadingDigitsPattern;
-
- // optional string national_prefix_formatting_rule = 4;
- public java.lang.String nationalPrefixFormattingRule;
-
- // optional bool national_prefix_optional_when_formatting = 6;
- public boolean nationalPrefixOptionalWhenFormatting;
-
- // optional string domestic_carrier_code_formatting_rule = 5;
- public java.lang.String domesticCarrierCodeFormattingRule;
-
- public NumberFormat() {
- clear();
- }
-
- public NumberFormat clear() {
- pattern = "";
- format = "";
- leadingDigitsPattern = com.google.protobuf.nano.WireFormatNano.EMPTY_STRING_ARRAY;
- nationalPrefixFormattingRule = "";
- nationalPrefixOptionalWhenFormatting = false;
- domesticCarrierCodeFormattingRule = "";
- cachedSize = -1;
- return this;
- }
-
- @Override
- public void writeTo(com.google.protobuf.nano.CodedOutputByteBufferNano output)
- throws java.io.IOException {
- output.writeString(1, this.pattern);
- output.writeString(2, this.format);
- if (this.leadingDigitsPattern != null && this.leadingDigitsPattern.length > 0) {
- for (int i = 0; i < this.leadingDigitsPattern.length; i++) {
- java.lang.String element = this.leadingDigitsPattern[i];
- if (element != null) {
- output.writeString(3, element);
- }
- }
- }
- if (!this.nationalPrefixFormattingRule.equals("")) {
- output.writeString(4, this.nationalPrefixFormattingRule);
- }
- if (!this.domesticCarrierCodeFormattingRule.equals("")) {
- output.writeString(5, this.domesticCarrierCodeFormattingRule);
- }
- if (this.nationalPrefixOptionalWhenFormatting != false) {
- output.writeBool(6, this.nationalPrefixOptionalWhenFormatting);
- }
- super.writeTo(output);
- }
-
- @Override
- protected int computeSerializedSize() {
- int size = super.computeSerializedSize();
- size += com.google.protobuf.nano.CodedOutputByteBufferNano
- .computeStringSize(1, this.pattern);
- size += com.google.protobuf.nano.CodedOutputByteBufferNano
- .computeStringSize(2, this.format);
- if (this.leadingDigitsPattern != null && this.leadingDigitsPattern.length > 0) {
- int dataCount = 0;
- int dataSize = 0;
- for (int i = 0; i < this.leadingDigitsPattern.length; i++) {
- java.lang.String element = this.leadingDigitsPattern[i];
- if (element != null) {
- dataCount++;
- dataSize += com.google.protobuf.nano.CodedOutputByteBufferNano
- .computeStringSizeNoTag(element);
- }
- }
- size += dataSize;
- size += 1 * dataCount;
- }
- if (!this.nationalPrefixFormattingRule.equals("")) {
- size += com.google.protobuf.nano.CodedOutputByteBufferNano
- .computeStringSize(4, this.nationalPrefixFormattingRule);
- }
- if (!this.domesticCarrierCodeFormattingRule.equals("")) {
- size += com.google.protobuf.nano.CodedOutputByteBufferNano
- .computeStringSize(5, this.domesticCarrierCodeFormattingRule);
- }
- if (this.nationalPrefixOptionalWhenFormatting != false) {
- size += com.google.protobuf.nano.CodedOutputByteBufferNano
- .computeBoolSize(6, this.nationalPrefixOptionalWhenFormatting);
- }
- return size;
- }
-
- @Override
- public NumberFormat mergeFrom(
- com.google.protobuf.nano.CodedInputByteBufferNano input)
- throws java.io.IOException {
- while (true) {
- int tag = input.readTag();
- switch (tag) {
- case 0:
- return this;
- default: {
- if (!com.google.protobuf.nano.WireFormatNano.parseUnknownField(input, tag)) {
- return this;
- }
- break;
- }
- case 10: {
- this.pattern = input.readString();
- break;
- }
- case 18: {
- this.format = input.readString();
- break;
- }
- case 26: {
- int arrayLength = com.google.protobuf.nano.WireFormatNano
- .getRepeatedFieldArrayLength(input, 26);
- int i = this.leadingDigitsPattern == null ? 0 : this.leadingDigitsPattern.length;
- java.lang.String[] newArray = new java.lang.String[i + arrayLength];
- if (i != 0) {
- java.lang.System.arraycopy(this.leadingDigitsPattern, 0, newArray, 0, i);
- }
- for (; i < newArray.length - 1; i++) {
- newArray[i] = input.readString();
- input.readTag();
- }
- // Last one without readTag.
- newArray[i] = input.readString();
- this.leadingDigitsPattern = newArray;
- break;
- }
- case 34: {
- this.nationalPrefixFormattingRule = input.readString();
- break;
- }
- case 42: {
- this.domesticCarrierCodeFormattingRule = input.readString();
- break;
- }
- case 48: {
- this.nationalPrefixOptionalWhenFormatting = input.readBool();
- break;
- }
- }
- }
- }
-
- public static NumberFormat parseFrom(byte[] data)
- throws com.google.protobuf.nano.InvalidProtocolBufferNanoException {
- return com.google.protobuf.nano.MessageNano.mergeFrom(new NumberFormat(), data);
- }
-
- public static NumberFormat parseFrom(
- com.google.protobuf.nano.CodedInputByteBufferNano input)
- throws java.io.IOException {
- return new NumberFormat().mergeFrom(input);
- }
- }
-
- public static final class PhoneNumberDesc extends
- com.google.protobuf.nano.MessageNano {
-
- private static volatile PhoneNumberDesc[] _emptyArray;
- public static PhoneNumberDesc[] emptyArray() {
- // Lazily initializes the empty array
- if (_emptyArray == null) {
- synchronized (
- com.google.protobuf.nano.InternalNano.LAZY_INIT_LOCK) {
- if (_emptyArray == null) {
- _emptyArray = new PhoneNumberDesc[0];
- }
- }
- }
- return _emptyArray;
- }
-
- // optional string national_number_pattern = 2;
- public java.lang.String nationalNumberPattern;
-
- // optional string possible_number_pattern = 3;
- public java.lang.String possibleNumberPattern;
-
- // optional string example_number = 6;
- public java.lang.String exampleNumber;
-
- public PhoneNumberDesc() {
- clear();
- }
-
- public PhoneNumberDesc clear() {
- nationalNumberPattern = "";
- possibleNumberPattern = "";
- exampleNumber = "";
- cachedSize = -1;
- return this;
- }
-
- @Override
- public void writeTo(com.google.protobuf.nano.CodedOutputByteBufferNano output)
- throws java.io.IOException {
- if (!this.nationalNumberPattern.equals("")) {
- output.writeString(2, this.nationalNumberPattern);
- }
- if (!this.possibleNumberPattern.equals("")) {
- output.writeString(3, this.possibleNumberPattern);
- }
- if (!this.exampleNumber.equals("")) {
- output.writeString(6, this.exampleNumber);
- }
- super.writeTo(output);
- }
-
- @Override
- protected int computeSerializedSize() {
- int size = super.computeSerializedSize();
- if (!this.nationalNumberPattern.equals("")) {
- size += com.google.protobuf.nano.CodedOutputByteBufferNano
- .computeStringSize(2, this.nationalNumberPattern);
- }
- if (!this.possibleNumberPattern.equals("")) {
- size += com.google.protobuf.nano.CodedOutputByteBufferNano
- .computeStringSize(3, this.possibleNumberPattern);
- }
- if (!this.exampleNumber.equals("")) {
- size += com.google.protobuf.nano.CodedOutputByteBufferNano
- .computeStringSize(6, this.exampleNumber);
- }
- return size;
- }
-
- @Override
- public PhoneNumberDesc mergeFrom(
- com.google.protobuf.nano.CodedInputByteBufferNano input)
- throws java.io.IOException {
- while (true) {
- int tag = input.readTag();
- switch (tag) {
- case 0:
- return this;
- default: {
- if (!com.google.protobuf.nano.WireFormatNano.parseUnknownField(input, tag)) {
- return this;
- }
- break;
- }
- case 18: {
- this.nationalNumberPattern = input.readString();
- break;
- }
- case 26: {
- this.possibleNumberPattern = input.readString();
- break;
- }
- case 50: {
- this.exampleNumber = input.readString();
- break;
- }
- }
- }
- }
-
- public static PhoneNumberDesc parseFrom(byte[] data)
- throws com.google.protobuf.nano.InvalidProtocolBufferNanoException {
- return com.google.protobuf.nano.MessageNano.mergeFrom(new PhoneNumberDesc(), data);
- }
-
- public static PhoneNumberDesc parseFrom(
- com.google.protobuf.nano.CodedInputByteBufferNano input)
- throws java.io.IOException {
- return new PhoneNumberDesc().mergeFrom(input);
- }
- }
-
- public static final class PhoneMetadata extends
- com.google.protobuf.nano.MessageNano {
-
- private static volatile PhoneMetadata[] _emptyArray;
- public static PhoneMetadata[] emptyArray() {
- // Lazily initializes the empty array
- if (_emptyArray == null) {
- synchronized (
- com.google.protobuf.nano.InternalNano.LAZY_INIT_LOCK) {
- if (_emptyArray == null) {
- _emptyArray = new PhoneMetadata[0];
- }
- }
- }
- return _emptyArray;
- }
-
- // optional .i18n.phonenumbers.PhoneNumberDesc general_desc = 1;
- public com.google.i18n.phonenumbers.nano.Phonemetadata.PhoneNumberDesc generalDesc;
-
- // optional .i18n.phonenumbers.PhoneNumberDesc fixed_line = 2;
- public com.google.i18n.phonenumbers.nano.Phonemetadata.PhoneNumberDesc fixedLine;
-
- // optional .i18n.phonenumbers.PhoneNumberDesc mobile = 3;
- public com.google.i18n.phonenumbers.nano.Phonemetadata.PhoneNumberDesc mobile;
-
- // optional .i18n.phonenumbers.PhoneNumberDesc toll_free = 4;
- public com.google.i18n.phonenumbers.nano.Phonemetadata.PhoneNumberDesc tollFree;
-
- // optional .i18n.phonenumbers.PhoneNumberDesc premium_rate = 5;
- public com.google.i18n.phonenumbers.nano.Phonemetadata.PhoneNumberDesc premiumRate;
-
- // optional .i18n.phonenumbers.PhoneNumberDesc shared_cost = 6;
- public com.google.i18n.phonenumbers.nano.Phonemetadata.PhoneNumberDesc sharedCost;
-
- // optional .i18n.phonenumbers.PhoneNumberDesc personal_number = 7;
- public com.google.i18n.phonenumbers.nano.Phonemetadata.PhoneNumberDesc personalNumber;
-
- // optional .i18n.phonenumbers.PhoneNumberDesc voip = 8;
- public com.google.i18n.phonenumbers.nano.Phonemetadata.PhoneNumberDesc voip;
-
- // optional .i18n.phonenumbers.PhoneNumberDesc pager = 21;
- public com.google.i18n.phonenumbers.nano.Phonemetadata.PhoneNumberDesc pager;
-
- // optional .i18n.phonenumbers.PhoneNumberDesc uan = 25;
- public com.google.i18n.phonenumbers.nano.Phonemetadata.PhoneNumberDesc uan;
-
- // optional .i18n.phonenumbers.PhoneNumberDesc emergency = 27;
- public com.google.i18n.phonenumbers.nano.Phonemetadata.PhoneNumberDesc emergency;
-
- // optional .i18n.phonenumbers.PhoneNumberDesc voicemail = 28;
- public com.google.i18n.phonenumbers.nano.Phonemetadata.PhoneNumberDesc voicemail;
-
- // optional .i18n.phonenumbers.PhoneNumberDesc short_code = 29;
- public com.google.i18n.phonenumbers.nano.Phonemetadata.PhoneNumberDesc shortCode;
-
- // optional .i18n.phonenumbers.PhoneNumberDesc standard_rate = 30;
- public com.google.i18n.phonenumbers.nano.Phonemetadata.PhoneNumberDesc standardRate;
-
- // optional .i18n.phonenumbers.PhoneNumberDesc carrier_specific = 31;
- public com.google.i18n.phonenumbers.nano.Phonemetadata.PhoneNumberDesc carrierSpecific;
-
- // optional .i18n.phonenumbers.PhoneNumberDesc no_international_dialling = 24;
- public com.google.i18n.phonenumbers.nano.Phonemetadata.PhoneNumberDesc noInternationalDialling;
-
- // required string id = 9;
- public java.lang.String id;
-
- // optional int32 country_code = 10;
- public int countryCode;
-
- // optional string international_prefix = 11;
- public java.lang.String internationalPrefix;
-
- // optional string preferred_international_prefix = 17;
- public java.lang.String preferredInternationalPrefix;
-
- // optional string national_prefix = 12;
- public java.lang.String nationalPrefix;
-
- // optional string preferred_extn_prefix = 13;
- public java.lang.String preferredExtnPrefix;
-
- // optional string national_prefix_for_parsing = 15;
- public java.lang.String nationalPrefixForParsing;
-
- // optional string national_prefix_transform_rule = 16;
- public java.lang.String nationalPrefixTransformRule;
-
- // optional bool same_mobile_and_fixed_line_pattern = 18 [default = false];
- public boolean sameMobileAndFixedLinePattern;
-
- // repeated .i18n.phonenumbers.NumberFormat number_format = 19;
- public com.google.i18n.phonenumbers.nano.Phonemetadata.NumberFormat[] numberFormat;
-
- // repeated .i18n.phonenumbers.NumberFormat intl_number_format = 20;
- public com.google.i18n.phonenumbers.nano.Phonemetadata.NumberFormat[] intlNumberFormat;
-
- // optional bool main_country_for_code = 22 [default = false];
- public boolean mainCountryForCode;
-
- // optional string leading_digits = 23;
- public java.lang.String leadingDigits;
-
- // optional bool leading_zero_possible = 26 [default = false];
- public boolean leadingZeroPossible;
-
- // optional bool mobile_number_portable_region = 32 [default = false];
- public boolean mobileNumberPortableRegion;
-
- public PhoneMetadata() {
- clear();
- }
-
- public PhoneMetadata clear() {
- generalDesc = null;
- fixedLine = null;
- mobile = null;
- tollFree = null;
- premiumRate = null;
- sharedCost = null;
- personalNumber = null;
- voip = null;
- pager = null;
- uan = null;
- emergency = null;
- voicemail = null;
- shortCode = null;
- standardRate = null;
- carrierSpecific = null;
- noInternationalDialling = null;
- id = "";
- countryCode = 0;
- internationalPrefix = "";
- preferredInternationalPrefix = "";
- nationalPrefix = "";
- preferredExtnPrefix = "";
- nationalPrefixForParsing = "";
- nationalPrefixTransformRule = "";
- sameMobileAndFixedLinePattern = false;
- numberFormat = com.google.i18n.phonenumbers.nano.Phonemetadata.NumberFormat.emptyArray();
- intlNumberFormat = com.google.i18n.phonenumbers.nano.Phonemetadata.NumberFormat.emptyArray();
- mainCountryForCode = false;
- leadingDigits = "";
- leadingZeroPossible = false;
- mobileNumberPortableRegion = false;
- cachedSize = -1;
- return this;
- }
-
- @Override
- public void writeTo(com.google.protobuf.nano.CodedOutputByteBufferNano output)
- throws java.io.IOException {
- if (this.generalDesc != null) {
- output.writeMessage(1, this.generalDesc);
- }
- if (this.fixedLine != null) {
- output.writeMessage(2, this.fixedLine);
- }
- if (this.mobile != null) {
- output.writeMessage(3, this.mobile);
- }
- if (this.tollFree != null) {
- output.writeMessage(4, this.tollFree);
- }
- if (this.premiumRate != null) {
- output.writeMessage(5, this.premiumRate);
- }
- if (this.sharedCost != null) {
- output.writeMessage(6, this.sharedCost);
- }
- if (this.personalNumber != null) {
- output.writeMessage(7, this.personalNumber);
- }
- if (this.voip != null) {
- output.writeMessage(8, this.voip);
- }
- output.writeString(9, this.id);
- if (this.countryCode != 0) {
- output.writeInt32(10, this.countryCode);
- }
- if (!this.internationalPrefix.equals("")) {
- output.writeString(11, this.internationalPrefix);
- }
- if (!this.nationalPrefix.equals("")) {
- output.writeString(12, this.nationalPrefix);
- }
- if (!this.preferredExtnPrefix.equals("")) {
- output.writeString(13, this.preferredExtnPrefix);
- }
- if (!this.nationalPrefixForParsing.equals("")) {
- output.writeString(15, this.nationalPrefixForParsing);
- }
- if (!this.nationalPrefixTransformRule.equals("")) {
- output.writeString(16, this.nationalPrefixTransformRule);
- }
- if (!this.preferredInternationalPrefix.equals("")) {
- output.writeString(17, this.preferredInternationalPrefix);
- }
- if (this.sameMobileAndFixedLinePattern != false) {
- output.writeBool(18, this.sameMobileAndFixedLinePattern);
- }
- if (this.numberFormat != null && this.numberFormat.length > 0) {
- for (int i = 0; i < this.numberFormat.length; i++) {
- com.google.i18n.phonenumbers.nano.Phonemetadata.NumberFormat element = this.numberFormat[i];
- if (element != null) {
- output.writeMessage(19, element);
- }
- }
- }
- if (this.intlNumberFormat != null && this.intlNumberFormat.length > 0) {
- for (int i = 0; i < this.intlNumberFormat.length; i++) {
- com.google.i18n.phonenumbers.nano.Phonemetadata.NumberFormat element = this.intlNumberFormat[i];
- if (element != null) {
- output.writeMessage(20, element);
- }
- }
- }
- if (this.pager != null) {
- output.writeMessage(21, this.pager);
- }
- if (this.mainCountryForCode != false) {
- output.writeBool(22, this.mainCountryForCode);
- }
- if (!this.leadingDigits.equals("")) {
- output.writeString(23, this.leadingDigits);
- }
- if (this.noInternationalDialling != null) {
- output.writeMessage(24, this.noInternationalDialling);
- }
- if (this.uan != null) {
- output.writeMessage(25, this.uan);
- }
- if (this.leadingZeroPossible != false) {
- output.writeBool(26, this.leadingZeroPossible);
- }
- if (this.emergency != null) {
- output.writeMessage(27, this.emergency);
- }
- if (this.voicemail != null) {
- output.writeMessage(28, this.voicemail);
- }
- if (this.shortCode != null) {
- output.writeMessage(29, this.shortCode);
- }
- if (this.standardRate != null) {
- output.writeMessage(30, this.standardRate);
- }
- if (this.carrierSpecific != null) {
- output.writeMessage(31, this.carrierSpecific);
- }
- if (this.mobileNumberPortableRegion != false) {
- output.writeBool(32, this.mobileNumberPortableRegion);
- }
- super.writeTo(output);
- }
-
- @Override
- protected int computeSerializedSize() {
- int size = super.computeSerializedSize();
- if (this.generalDesc != null) {
- size += com.google.protobuf.nano.CodedOutputByteBufferNano
- .computeMessageSize(1, this.generalDesc);
- }
- if (this.fixedLine != null) {
- size += com.google.protobuf.nano.CodedOutputByteBufferNano
- .computeMessageSize(2, this.fixedLine);
- }
- if (this.mobile != null) {
- size += com.google.protobuf.nano.CodedOutputByteBufferNano
- .computeMessageSize(3, this.mobile);
- }
- if (this.tollFree != null) {
- size += com.google.protobuf.nano.CodedOutputByteBufferNano
- .computeMessageSize(4, this.tollFree);
- }
- if (this.premiumRate != null) {
- size += com.google.protobuf.nano.CodedOutputByteBufferNano
- .computeMessageSize(5, this.premiumRate);
- }
- if (this.sharedCost != null) {
- size += com.google.protobuf.nano.CodedOutputByteBufferNano
- .computeMessageSize(6, this.sharedCost);
- }
- if (this.personalNumber != null) {
- size += com.google.protobuf.nano.CodedOutputByteBufferNano
- .computeMessageSize(7, this.personalNumber);
- }
- if (this.voip != null) {
- size += com.google.protobuf.nano.CodedOutputByteBufferNano
- .computeMessageSize(8, this.voip);
- }
- size += com.google.protobuf.nano.CodedOutputByteBufferNano
- .computeStringSize(9, this.id);
- if (this.countryCode != 0) {
- size += com.google.protobuf.nano.CodedOutputByteBufferNano
- .computeInt32Size(10, this.countryCode);
- }
- if (!this.internationalPrefix.equals("")) {
- size += com.google.protobuf.nano.CodedOutputByteBufferNano
- .computeStringSize(11, this.internationalPrefix);
- }
- if (!this.nationalPrefix.equals("")) {
- size += com.google.protobuf.nano.CodedOutputByteBufferNano
- .computeStringSize(12, this.nationalPrefix);
- }
- if (!this.preferredExtnPrefix.equals("")) {
- size += com.google.protobuf.nano.CodedOutputByteBufferNano
- .computeStringSize(13, this.preferredExtnPrefix);
- }
- if (!this.nationalPrefixForParsing.equals("")) {
- size += com.google.protobuf.nano.CodedOutputByteBufferNano
- .computeStringSize(15, this.nationalPrefixForParsing);
- }
- if (!this.nationalPrefixTransformRule.equals("")) {
- size += com.google.protobuf.nano.CodedOutputByteBufferNano
- .computeStringSize(16, this.nationalPrefixTransformRule);
- }
- if (!this.preferredInternationalPrefix.equals("")) {
- size += com.google.protobuf.nano.CodedOutputByteBufferNano
- .computeStringSize(17, this.preferredInternationalPrefix);
- }
- if (this.sameMobileAndFixedLinePattern != false) {
- size += com.google.protobuf.nano.CodedOutputByteBufferNano
- .computeBoolSize(18, this.sameMobileAndFixedLinePattern);
- }
- if (this.numberFormat != null && this.numberFormat.length > 0) {
- for (int i = 0; i < this.numberFormat.length; i++) {
- com.google.i18n.phonenumbers.nano.Phonemetadata.NumberFormat element = this.numberFormat[i];
- if (element != null) {
- size += com.google.protobuf.nano.CodedOutputByteBufferNano
- .computeMessageSize(19, element);
- }
- }
- }
- if (this.intlNumberFormat != null && this.intlNumberFormat.length > 0) {
- for (int i = 0; i < this.intlNumberFormat.length; i++) {
- com.google.i18n.phonenumbers.nano.Phonemetadata.NumberFormat element = this.intlNumberFormat[i];
- if (element != null) {
- size += com.google.protobuf.nano.CodedOutputByteBufferNano
- .computeMessageSize(20, element);
- }
- }
- }
- if (this.pager != null) {
- size += com.google.protobuf.nano.CodedOutputByteBufferNano
- .computeMessageSize(21, this.pager);
- }
- if (this.mainCountryForCode != false) {
- size += com.google.protobuf.nano.CodedOutputByteBufferNano
- .computeBoolSize(22, this.mainCountryForCode);
- }
- if (!this.leadingDigits.equals("")) {
- size += com.google.protobuf.nano.CodedOutputByteBufferNano
- .computeStringSize(23, this.leadingDigits);
- }
- if (this.noInternationalDialling != null) {
- size += com.google.protobuf.nano.CodedOutputByteBufferNano
- .computeMessageSize(24, this.noInternationalDialling);
- }
- if (this.uan != null) {
- size += com.google.protobuf.nano.CodedOutputByteBufferNano
- .computeMessageSize(25, this.uan);
- }
- if (this.leadingZeroPossible != false) {
- size += com.google.protobuf.nano.CodedOutputByteBufferNano
- .computeBoolSize(26, this.leadingZeroPossible);
- }
- if (this.emergency != null) {
- size += com.google.protobuf.nano.CodedOutputByteBufferNano
- .computeMessageSize(27, this.emergency);
- }
- if (this.voicemail != null) {
- size += com.google.protobuf.nano.CodedOutputByteBufferNano
- .computeMessageSize(28, this.voicemail);
- }
- if (this.shortCode != null) {
- size += com.google.protobuf.nano.CodedOutputByteBufferNano
- .computeMessageSize(29, this.shortCode);
- }
- if (this.standardRate != null) {
- size += com.google.protobuf.nano.CodedOutputByteBufferNano
- .computeMessageSize(30, this.standardRate);
- }
- if (this.carrierSpecific != null) {
- size += com.google.protobuf.nano.CodedOutputByteBufferNano
- .computeMessageSize(31, this.carrierSpecific);
- }
- if (this.mobileNumberPortableRegion != false) {
- size += com.google.protobuf.nano.CodedOutputByteBufferNano
- .computeBoolSize(32, this.mobileNumberPortableRegion);
- }
- return size;
- }
-
- @Override
- public PhoneMetadata mergeFrom(
- com.google.protobuf.nano.CodedInputByteBufferNano input)
- throws java.io.IOException {
- while (true) {
- int tag = input.readTag();
- switch (tag) {
- case 0:
- return this;
- default: {
- if (!com.google.protobuf.nano.WireFormatNano.parseUnknownField(input, tag)) {
- return this;
- }
- break;
- }
- case 10: {
- if (this.generalDesc == null) {
- this.generalDesc = new com.google.i18n.phonenumbers.nano.Phonemetadata.PhoneNumberDesc();
- }
- input.readMessage(this.generalDesc);
- break;
- }
- case 18: {
- if (this.fixedLine == null) {
- this.fixedLine = new com.google.i18n.phonenumbers.nano.Phonemetadata.PhoneNumberDesc();
- }
- input.readMessage(this.fixedLine);
- break;
- }
- case 26: {
- if (this.mobile == null) {
- this.mobile = new com.google.i18n.phonenumbers.nano.Phonemetadata.PhoneNumberDesc();
- }
- input.readMessage(this.mobile);
- break;
- }
- case 34: {
- if (this.tollFree == null) {
- this.tollFree = new com.google.i18n.phonenumbers.nano.Phonemetadata.PhoneNumberDesc();
- }
- input.readMessage(this.tollFree);
- break;
- }
- case 42: {
- if (this.premiumRate == null) {
- this.premiumRate = new com.google.i18n.phonenumbers.nano.Phonemetadata.PhoneNumberDesc();
- }
- input.readMessage(this.premiumRate);
- break;
- }
- case 50: {
- if (this.sharedCost == null) {
- this.sharedCost = new com.google.i18n.phonenumbers.nano.Phonemetadata.PhoneNumberDesc();
- }
- input.readMessage(this.sharedCost);
- break;
- }
- case 58: {
- if (this.personalNumber == null) {
- this.personalNumber = new com.google.i18n.phonenumbers.nano.Phonemetadata.PhoneNumberDesc();
- }
- input.readMessage(this.personalNumber);
- break;
- }
- case 66: {
- if (this.voip == null) {
- this.voip = new com.google.i18n.phonenumbers.nano.Phonemetadata.PhoneNumberDesc();
- }
- input.readMessage(this.voip);
- break;
- }
- case 74: {
- this.id = input.readString();
- break;
- }
- case 80: {
- this.countryCode = input.readInt32();
- break;
- }
- case 90: {
- this.internationalPrefix = input.readString();
- break;
- }
- case 98: {
- this.nationalPrefix = input.readString();
- break;
- }
- case 106: {
- this.preferredExtnPrefix = input.readString();
- break;
- }
- case 122: {
- this.nationalPrefixForParsing = input.readString();
- break;
- }
- case 130: {
- this.nationalPrefixTransformRule = input.readString();
- break;
- }
- case 138: {
- this.preferredInternationalPrefix = input.readString();
- break;
- }
- case 144: {
- this.sameMobileAndFixedLinePattern = input.readBool();
- break;
- }
- case 154: {
- int arrayLength = com.google.protobuf.nano.WireFormatNano
- .getRepeatedFieldArrayLength(input, 154);
- int i = this.numberFormat == null ? 0 : this.numberFormat.length;
- com.google.i18n.phonenumbers.nano.Phonemetadata.NumberFormat[] newArray =
- new com.google.i18n.phonenumbers.nano.Phonemetadata.NumberFormat[i + arrayLength];
- if (i != 0) {
- java.lang.System.arraycopy(this.numberFormat, 0, newArray, 0, i);
- }
- for (; i < newArray.length - 1; i++) {
- newArray[i] = new com.google.i18n.phonenumbers.nano.Phonemetadata.NumberFormat();
- input.readMessage(newArray[i]);
- input.readTag();
- }
- // Last one without readTag.
- newArray[i] = new com.google.i18n.phonenumbers.nano.Phonemetadata.NumberFormat();
- input.readMessage(newArray[i]);
- this.numberFormat = newArray;
- break;
- }
- case 162: {
- int arrayLength = com.google.protobuf.nano.WireFormatNano
- .getRepeatedFieldArrayLength(input, 162);
- int i = this.intlNumberFormat == null ? 0 : this.intlNumberFormat.length;
- com.google.i18n.phonenumbers.nano.Phonemetadata.NumberFormat[] newArray =
- new com.google.i18n.phonenumbers.nano.Phonemetadata.NumberFormat[i + arrayLength];
- if (i != 0) {
- java.lang.System.arraycopy(this.intlNumberFormat, 0, newArray, 0, i);
- }
- for (; i < newArray.length - 1; i++) {
- newArray[i] = new com.google.i18n.phonenumbers.nano.Phonemetadata.NumberFormat();
- input.readMessage(newArray[i]);
- input.readTag();
- }
- // Last one without readTag.
- newArray[i] = new com.google.i18n.phonenumbers.nano.Phonemetadata.NumberFormat();
- input.readMessage(newArray[i]);
- this.intlNumberFormat = newArray;
- break;
- }
- case 170: {
- if (this.pager == null) {
- this.pager = new com.google.i18n.phonenumbers.nano.Phonemetadata.PhoneNumberDesc();
- }
- input.readMessage(this.pager);
- break;
- }
- case 176: {
- this.mainCountryForCode = input.readBool();
- break;
- }
- case 186: {
- this.leadingDigits = input.readString();
- break;
- }
- case 194: {
- if (this.noInternationalDialling == null) {
- this.noInternationalDialling = new com.google.i18n.phonenumbers.nano.Phonemetadata.PhoneNumberDesc();
- }
- input.readMessage(this.noInternationalDialling);
- break;
- }
- case 202: {
- if (this.uan == null) {
- this.uan = new com.google.i18n.phonenumbers.nano.Phonemetadata.PhoneNumberDesc();
- }
- input.readMessage(this.uan);
- break;
- }
- case 208: {
- this.leadingZeroPossible = input.readBool();
- break;
- }
- case 218: {
- if (this.emergency == null) {
- this.emergency = new com.google.i18n.phonenumbers.nano.Phonemetadata.PhoneNumberDesc();
- }
- input.readMessage(this.emergency);
- break;
- }
- case 226: {
- if (this.voicemail == null) {
- this.voicemail = new com.google.i18n.phonenumbers.nano.Phonemetadata.PhoneNumberDesc();
- }
- input.readMessage(this.voicemail);
- break;
- }
- case 234: {
- if (this.shortCode == null) {
- this.shortCode = new com.google.i18n.phonenumbers.nano.Phonemetadata.PhoneNumberDesc();
- }
- input.readMessage(this.shortCode);
- break;
- }
- case 242: {
- if (this.standardRate == null) {
- this.standardRate = new com.google.i18n.phonenumbers.nano.Phonemetadata.PhoneNumberDesc();
- }
- input.readMessage(this.standardRate);
- break;
- }
- case 250: {
- if (this.carrierSpecific == null) {
- this.carrierSpecific = new com.google.i18n.phonenumbers.nano.Phonemetadata.PhoneNumberDesc();
- }
- input.readMessage(this.carrierSpecific);
- break;
- }
- case 256: {
- this.mobileNumberPortableRegion = input.readBool();
- break;
- }
- }
- }
- }
-
- public static PhoneMetadata parseFrom(byte[] data)
- throws com.google.protobuf.nano.InvalidProtocolBufferNanoException {
- return com.google.protobuf.nano.MessageNano.mergeFrom(new PhoneMetadata(), data);
- }
-
- public static PhoneMetadata parseFrom(
- com.google.protobuf.nano.CodedInputByteBufferNano input)
- throws java.io.IOException {
- return new PhoneMetadata().mergeFrom(input);
- }
- }
-
- public static final class PhoneMetadataCollection extends
- com.google.protobuf.nano.MessageNano {
-
- private static volatile PhoneMetadataCollection[] _emptyArray;
- public static PhoneMetadataCollection[] emptyArray() {
- // Lazily initializes the empty array
- if (_emptyArray == null) {
- synchronized (
- com.google.protobuf.nano.InternalNano.LAZY_INIT_LOCK) {
- if (_emptyArray == null) {
- _emptyArray = new PhoneMetadataCollection[0];
- }
- }
- }
- return _emptyArray;
- }
-
- // repeated .i18n.phonenumbers.PhoneMetadata metadata = 1;
- public com.google.i18n.phonenumbers.nano.Phonemetadata.PhoneMetadata[] metadata;
-
- public PhoneMetadataCollection() {
- clear();
- }
-
- public PhoneMetadataCollection clear() {
- metadata = com.google.i18n.phonenumbers.nano.Phonemetadata.PhoneMetadata.emptyArray();
- cachedSize = -1;
- return this;
- }
-
- @Override
- public void writeTo(com.google.protobuf.nano.CodedOutputByteBufferNano output)
- throws java.io.IOException {
- if (this.metadata != null && this.metadata.length > 0) {
- for (int i = 0; i < this.metadata.length; i++) {
- com.google.i18n.phonenumbers.nano.Phonemetadata.PhoneMetadata element = this.metadata[i];
- if (element != null) {
- output.writeMessage(1, element);
- }
- }
- }
- super.writeTo(output);
- }
-
- @Override
- protected int computeSerializedSize() {
- int size = super.computeSerializedSize();
- if (this.metadata != null && this.metadata.length > 0) {
- for (int i = 0; i < this.metadata.length; i++) {
- com.google.i18n.phonenumbers.nano.Phonemetadata.PhoneMetadata element = this.metadata[i];
- if (element != null) {
- size += com.google.protobuf.nano.CodedOutputByteBufferNano
- .computeMessageSize(1, element);
- }
- }
- }
- return size;
- }
-
- @Override
- public PhoneMetadataCollection mergeFrom(
- com.google.protobuf.nano.CodedInputByteBufferNano input)
- throws java.io.IOException {
- while (true) {
- int tag = input.readTag();
- switch (tag) {
- case 0:
- return this;
- default: {
- if (!com.google.protobuf.nano.WireFormatNano.parseUnknownField(input, tag)) {
- return this;
- }
- break;
- }
- case 10: {
- int arrayLength = com.google.protobuf.nano.WireFormatNano
- .getRepeatedFieldArrayLength(input, 10);
- int i = this.metadata == null ? 0 : this.metadata.length;
- com.google.i18n.phonenumbers.nano.Phonemetadata.PhoneMetadata[] newArray =
- new com.google.i18n.phonenumbers.nano.Phonemetadata.PhoneMetadata[i + arrayLength];
- if (i != 0) {
- java.lang.System.arraycopy(this.metadata, 0, newArray, 0, i);
- }
- for (; i < newArray.length - 1; i++) {
- newArray[i] = new com.google.i18n.phonenumbers.nano.Phonemetadata.PhoneMetadata();
- input.readMessage(newArray[i]);
- input.readTag();
- }
- // Last one without readTag.
- newArray[i] = new com.google.i18n.phonenumbers.nano.Phonemetadata.PhoneMetadata();
- input.readMessage(newArray[i]);
- this.metadata = newArray;
- break;
- }
- }
- }
- }
-
- public static PhoneMetadataCollection parseFrom(byte[] data)
- throws com.google.protobuf.nano.InvalidProtocolBufferNanoException {
- return com.google.protobuf.nano.MessageNano.mergeFrom(new PhoneMetadataCollection(), data);
- }
-
- public static PhoneMetadataCollection parseFrom(
- com.google.protobuf.nano.CodedInputByteBufferNano input)
- throws java.io.IOException {
- return new PhoneMetadataCollection().mergeFrom(input);
- }
- }
-}
diff --git a/libphonenumber/test/com/google/i18n/phonenumbers/ExampleNumbersTest.java b/libphonenumber/test/com/google/i18n/phonenumbers/ExampleNumbersTest.java
index 1365ac3..2591131 100644
--- a/libphonenumber/test/com/google/i18n/phonenumbers/ExampleNumbersTest.java
+++ b/libphonenumber/test/com/google/i18n/phonenumbers/ExampleNumbersTest.java
@@ -17,8 +17,8 @@
package com.google.i18n.phonenumbers;
import com.google.i18n.phonenumbers.PhoneNumberUtil.PhoneNumberType;
+import com.google.i18n.phonenumbers.Phonemetadata.PhoneNumberDesc;
import com.google.i18n.phonenumbers.Phonenumber.PhoneNumber;
-import com.google.i18n.phonenumbers.nano.Phonemetadata.PhoneNumberDesc;
import junit.framework.TestCase;
@@ -142,10 +142,10 @@
for (String regionCode : phoneNumberUtil.getSupportedRegions()) {
PhoneNumber exampleNumber = null;
PhoneNumberDesc desc =
- phoneNumberUtil.getMetadataForRegion(regionCode).noInternationalDialling;
+ phoneNumberUtil.getMetadataForRegion(regionCode).getNoInternationalDialling();
try {
- if (!desc.exampleNumber.equals("")) {
- exampleNumber = phoneNumberUtil.parse(desc.exampleNumber, regionCode);
+ if (desc.hasExampleNumber()) {
+ exampleNumber = phoneNumberUtil.parse(desc.getExampleNumber(), regionCode);
}
} catch (NumberParseException e) {
LOGGER.log(Level.SEVERE, e.toString());
@@ -175,7 +175,21 @@
public void testEveryRegionHasAnExampleNumber() throws Exception {
for (String regionCode : phoneNumberUtil.getSupportedRegions()) {
PhoneNumber exampleNumber = phoneNumberUtil.getExampleNumber(regionCode);
- assertNotNull("None found for region " + regionCode, exampleNumber);
+ assertNotNull("No example number found for region " + regionCode, exampleNumber);
+ }
+ }
+
+ public void testEveryRegionHasAnInvalidExampleNumber() throws Exception {
+ for (String regionCode : phoneNumberUtil.getSupportedRegions()) {
+ PhoneNumber exampleNumber = phoneNumberUtil.getInvalidExampleNumber(regionCode);
+ assertNotNull("No invalid example number found for region " + regionCode, exampleNumber);
+ }
+ }
+
+ public void testEveryTypeHasAnExampleNumber() throws Exception {
+ for (PhoneNumberUtil.PhoneNumberType type : PhoneNumberUtil.PhoneNumberType.values()) {
+ PhoneNumber exampleNumber = phoneNumberUtil.getExampleNumberForType(type);
+ assertNotNull("No example number found for type " + type, exampleNumber);
}
}
@@ -199,10 +213,14 @@
for (ShortNumberInfo.ShortNumberCost cost : ShortNumberInfo.ShortNumberCost.values()) {
exampleShortNumber = shortNumberInfo.getExampleShortNumberForCost(regionCode, cost);
if (!exampleShortNumber.equals("")) {
- if (cost != shortNumberInfo.getExpectedCostForRegion(
- phoneNumberUtil.parse(exampleShortNumber, regionCode), regionCode)) {
+ phoneNumber = phoneNumberUtil.parse(exampleShortNumber, regionCode);
+ ShortNumberInfo.ShortNumberCost exampleShortNumberCost =
+ shortNumberInfo.getExpectedCostForRegion(phoneNumber, regionCode);
+ if (cost != exampleShortNumberCost) {
wrongTypeCases.add(phoneNumber);
- LOGGER.log(Level.SEVERE, "Wrong cost for " + phoneNumber.toString());
+ LOGGER.log(Level.SEVERE, "Wrong cost for " + phoneNumber.toString()
+ + ": got " + exampleShortNumberCost
+ + ", expected: " + cost);
}
}
}
@@ -216,9 +234,9 @@
int wrongTypeCounter = 0;
for (String regionCode : shortNumberInfo.getSupportedRegions()) {
PhoneNumberDesc desc =
- MetadataManager.getShortNumberMetadataForRegion(regionCode).emergency;
- if (!desc.exampleNumber.equals("")) {
- String exampleNumber = desc.exampleNumber;
+ MetadataManager.getShortNumberMetadataForRegion(regionCode).getEmergency();
+ if (desc.hasExampleNumber()) {
+ String exampleNumber = desc.getExampleNumber();
PhoneNumber phoneNumber = phoneNumberUtil.parse(exampleNumber, regionCode);
if (!shortNumberInfo.isPossibleShortNumberForRegion(phoneNumber, regionCode)
|| !shortNumberInfo.isEmergencyNumber(exampleNumber, regionCode)) {
@@ -239,9 +257,9 @@
for (String regionCode : shortNumberInfo.getSupportedRegions()) {
// Test the carrier-specific tag.
PhoneNumberDesc desc =
- MetadataManager.getShortNumberMetadataForRegion(regionCode).carrierSpecific;
- if (!desc.exampleNumber.equals("")) {
- String exampleNumber = desc.exampleNumber;
+ MetadataManager.getShortNumberMetadataForRegion(regionCode).getCarrierSpecific();
+ if (desc.hasExampleNumber()) {
+ String exampleNumber = desc.getExampleNumber();
PhoneNumber carrierSpecificNumber = phoneNumberUtil.parse(exampleNumber, regionCode);
if (!shortNumberInfo.isPossibleShortNumberForRegion(carrierSpecificNumber, regionCode)
|| !shortNumberInfo.isCarrierSpecific(carrierSpecificNumber)) {
diff --git a/libphonenumber/test/com/google/i18n/phonenumbers/MetadataManagerTest.java b/libphonenumber/test/com/google/i18n/phonenumbers/MetadataManagerTest.java
index 7a4b5ec..229d8f7 100644
--- a/libphonenumber/test/com/google/i18n/phonenumbers/MetadataManagerTest.java
+++ b/libphonenumber/test/com/google/i18n/phonenumbers/MetadataManagerTest.java
@@ -16,7 +16,7 @@
package com.google.i18n.phonenumbers;
-import com.google.i18n.phonenumbers.nano.Phonemetadata.PhoneMetadata;
+import com.google.i18n.phonenumbers.Phonemetadata.PhoneMetadata;
import junit.framework.TestCase;
@@ -29,14 +29,14 @@
// We should have some data for Germany.
PhoneMetadata germanyAlternateFormats = MetadataManager.getAlternateFormatsForCountry(49);
assertNotNull(germanyAlternateFormats);
- assertTrue(germanyAlternateFormats.numberFormat.length > 0);
+ assertTrue(germanyAlternateFormats.numberFormats().size() > 0);
}
public void testShortNumberMetadataContainsData() throws Exception {
// We should have some data for France.
PhoneMetadata franceShortNumberMetadata = MetadataManager.getShortNumberMetadataForRegion("FR");
assertNotNull(franceShortNumberMetadata);
- assertTrue(franceShortNumberMetadata.shortCode != null);
+ assertTrue(franceShortNumberMetadata.hasShortCode());
}
public void testAlternateFormatsFailsGracefully() throws Exception {
diff --git a/libphonenumber/test/com/google/i18n/phonenumbers/MultiFileMetadataSourceImplTest.java b/libphonenumber/test/com/google/i18n/phonenumbers/MultiFileMetadataSourceImplTest.java
index c1c5319..cf9bc90 100644
--- a/libphonenumber/test/com/google/i18n/phonenumbers/MultiFileMetadataSourceImplTest.java
+++ b/libphonenumber/test/com/google/i18n/phonenumbers/MultiFileMetadataSourceImplTest.java
@@ -16,6 +16,9 @@
package com.google.i18n.phonenumbers;
+import com.google.i18n.phonenumbers.Phonemetadata.PhoneMetadata;
+
+import java.util.concurrent.ConcurrentHashMap;
import junit.framework.TestCase;
/**
@@ -24,21 +27,38 @@
public class MultiFileMetadataSourceImplTest extends TestCase {
public MultiFileMetadataSourceImplTest() {}
+ public void testGeographicalRegionMetadataLoadsCorrectly() {
+ ConcurrentHashMap<String, PhoneMetadata> map = new ConcurrentHashMap<String, PhoneMetadata>();
+ PhoneMetadata metadata = MultiFileMetadataSourceImpl.loadMetadataFromFile(
+ "CA", map, "/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting",
+ PhoneNumberUtil.DEFAULT_METADATA_LOADER);
+ assertEquals(metadata, map.get("CA"));
+ }
+
+ public void testNonGeographicalRegionMetadataLoadsCorrectly() {
+ ConcurrentHashMap<Integer, PhoneMetadata> map = new ConcurrentHashMap<Integer, PhoneMetadata>();
+ PhoneMetadata metadata = MultiFileMetadataSourceImpl.loadMetadataFromFile(
+ 800, map, "/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting",
+ PhoneNumberUtil.DEFAULT_METADATA_LOADER);
+ assertEquals(metadata, map.get(800));
+ }
+
public void testMissingMetadataFileThrowsRuntimeException() {
- MultiFileMetadataSourceImpl multiFileMetadataSource = new MultiFileMetadataSourceImpl(
- "no/such/file", PhoneNumberUtil.DEFAULT_METADATA_LOADER);
// In normal usage we should never get a state where we are asking to load metadata that doesn't
// exist. However if the library is packaged incorrectly in the jar, this could happen and the
// best we can do is make sure the exception has the file name in it.
try {
- multiFileMetadataSource.loadMetadataFromFile("XX", -1);
+ MultiFileMetadataSourceImpl.loadMetadataFromFile(
+ "XX", new ConcurrentHashMap<String, PhoneMetadata>(), "no/such/file",
+ PhoneNumberUtil.DEFAULT_METADATA_LOADER);
fail("expected exception");
} catch (RuntimeException e) {
assertTrue("Unexpected error: " + e, e.getMessage().contains("no/such/file_XX"));
}
try {
- multiFileMetadataSource.loadMetadataFromFile(
- PhoneNumberUtil.REGION_CODE_FOR_NON_GEO_ENTITY, 123);
+ MultiFileMetadataSourceImpl.loadMetadataFromFile(
+ 123, new ConcurrentHashMap<Integer, PhoneMetadata>(), "no/such/file",
+ PhoneNumberUtil.DEFAULT_METADATA_LOADER);
fail("expected exception");
} catch (RuntimeException e) {
assertTrue("Unexpected error: " + e, e.getMessage().contains("no/such/file_123"));
diff --git a/libphonenumber/test/com/google/i18n/phonenumbers/PhoneNumberUtilTest.java b/libphonenumber/test/com/google/i18n/phonenumbers/PhoneNumberUtilTest.java
index 4f6bcaf..e5313c7 100644
--- a/libphonenumber/test/com/google/i18n/phonenumbers/PhoneNumberUtilTest.java
+++ b/libphonenumber/test/com/google/i18n/phonenumbers/PhoneNumberUtilTest.java
@@ -17,11 +17,11 @@
package com.google.i18n.phonenumbers;
import com.google.i18n.phonenumbers.PhoneNumberUtil.PhoneNumberFormat;
+import com.google.i18n.phonenumbers.Phonemetadata.NumberFormat;
+import com.google.i18n.phonenumbers.Phonemetadata.PhoneMetadata;
+import com.google.i18n.phonenumbers.Phonemetadata.PhoneNumberDesc;
import com.google.i18n.phonenumbers.Phonenumber.PhoneNumber;
import com.google.i18n.phonenumbers.Phonenumber.PhoneNumber.CountryCodeSource;
-import com.google.i18n.phonenumbers.nano.Phonemetadata.NumberFormat;
-import com.google.i18n.phonenumbers.nano.Phonemetadata.PhoneMetadata;
-import com.google.i18n.phonenumbers.nano.Phonemetadata.PhoneNumberDesc;
import java.util.ArrayList;
import java.util.List;
@@ -132,77 +132,81 @@
assertNull(phoneUtil.getMetadataForNonGeographicalRegion(-1));
}
- private boolean exactlySame(PhoneNumberDesc first, PhoneNumberDesc second) {
- return first.nationalNumberPattern.equals(second.nationalNumberPattern) &&
- first.possibleNumberPattern.equals(second.possibleNumberPattern) &&
- first.exampleNumber.equals(second.exampleNumber);
- }
-
public void testGetInstanceLoadUSMetadata() {
PhoneMetadata metadata = phoneUtil.getMetadataForRegion(RegionCode.US);
- assertEquals("US", metadata.id);
- assertEquals(1, metadata.countryCode);
- assertEquals("011", metadata.internationalPrefix);
- assertTrue(!metadata.nationalPrefix.equals(""));
- assertEquals(2, metadata.numberFormat.length);
+ assertEquals("US", metadata.getId());
+ assertEquals(1, metadata.getCountryCode());
+ assertEquals("011", metadata.getInternationalPrefix());
+ assertTrue(metadata.hasNationalPrefix());
+ assertEquals(2, metadata.numberFormatSize());
assertEquals("(\\d{3})(\\d{3})(\\d{4})",
- metadata.numberFormat[1].pattern);
- assertEquals("$1 $2 $3", metadata.numberFormat[1].format);
+ metadata.getNumberFormat(1).getPattern());
+ assertEquals("$1 $2 $3", metadata.getNumberFormat(1).getFormat());
assertEquals("[13-689]\\d{9}|2[0-35-9]\\d{8}",
- metadata.generalDesc.nationalNumberPattern);
- assertEquals("\\d{7}(?:\\d{3})?", metadata.generalDesc.possibleNumberPattern);
- assertTrue(exactlySame(metadata.generalDesc, metadata.fixedLine));
- assertEquals("\\d{10}", metadata.tollFree.possibleNumberPattern);
- assertEquals("900\\d{7}", metadata.premiumRate.nationalNumberPattern);
+ metadata.getGeneralDesc().getNationalNumberPattern());
+ assertEquals("\\d{7}(?:\\d{3})?", metadata.getGeneralDesc().getPossibleNumberPattern());
+ assertTrue(metadata.getGeneralDesc().exactlySameAs(metadata.getFixedLine()));
+ assertEquals("\\d{10}", metadata.getTollFree().getPossibleNumberPattern());
+ assertEquals(10, metadata.getGeneralDesc().getPossibleLength(0));
+ // Possible lengths are the same as the general description, so aren't stored separately in the
+ // toll free element as well.
+ assertEquals(0, metadata.getTollFree().getPossibleLengthCount());
+ assertEquals("900\\d{7}", metadata.getPremiumRate().getNationalNumberPattern());
// No shared-cost data is available, so it should be initialised to "NA".
- assertEquals("NA", metadata.sharedCost.nationalNumberPattern);
- assertEquals("NA", metadata.sharedCost.possibleNumberPattern);
+ assertEquals("NA", metadata.getSharedCost().getNationalNumberPattern());
+ assertEquals("NA", metadata.getSharedCost().getPossibleNumberPattern());
}
public void testGetInstanceLoadDEMetadata() {
PhoneMetadata metadata = phoneUtil.getMetadataForRegion(RegionCode.DE);
- assertEquals("DE", metadata.id);
- assertEquals(49, metadata.countryCode);
- assertEquals("00", metadata.internationalPrefix);
- assertEquals("0", metadata.nationalPrefix);
- assertEquals(6, metadata.numberFormat.length);
- assertEquals(1, metadata.numberFormat[5].leadingDigitsPattern.length);
- assertEquals("900", metadata.numberFormat[5].leadingDigitsPattern[0]);
+ assertEquals("DE", metadata.getId());
+ assertEquals(49, metadata.getCountryCode());
+ assertEquals("00", metadata.getInternationalPrefix());
+ assertEquals("0", metadata.getNationalPrefix());
+ assertEquals(6, metadata.numberFormatSize());
+ assertEquals(1, metadata.getNumberFormat(5).leadingDigitsPatternSize());
+ assertEquals("900", metadata.getNumberFormat(5).getLeadingDigitsPattern(0));
assertEquals("(\\d{3})(\\d{3,4})(\\d{4})",
- metadata.numberFormat[5].pattern);
- assertEquals("$1 $2 $3", metadata.numberFormat[5].format);
- assertEquals("(?:[24-6]\\d{2}|3[03-9]\\d|[789](?:[1-9]\\d|0[2-9]))\\d{1,8}",
- metadata.fixedLine.nationalNumberPattern);
- assertEquals("\\d{2,14}", metadata.fixedLine.possibleNumberPattern);
- assertEquals("30123456", metadata.fixedLine.exampleNumber);
- assertEquals("\\d{10}", metadata.tollFree.possibleNumberPattern);
- assertEquals("900([135]\\d{6}|9\\d{7})", metadata.premiumRate.nationalNumberPattern);
+ metadata.getNumberFormat(5).getPattern());
+ assertEquals("$1 $2 $3", metadata.getNumberFormat(5).getFormat());
+ assertEquals(2, metadata.getGeneralDesc().getPossibleLengthLocalOnlyCount());
+ assertEquals(8, metadata.getGeneralDesc().getPossibleLengthCount());
+ // Nothing is present for fixed-line, since it is the same as the general desc, so for
+ // efficiency reasons we don't store an extra value.
+ assertEquals(0, metadata.getFixedLine().getPossibleLengthCount());
+ assertEquals(2, metadata.getMobile().getPossibleLengthCount());
+ assertEquals("(?:[24-6]\\d{2}|3[03-9]\\d|[789](?:0[2-9]|[1-9]\\d))\\d{1,8}",
+ metadata.getFixedLine().getNationalNumberPattern());
+ assertEquals("\\d{2,14}", metadata.getFixedLine().getPossibleNumberPattern());
+ assertEquals("30123456", metadata.getFixedLine().getExampleNumber());
+ assertEquals("\\d{10}", metadata.getTollFree().getPossibleNumberPattern());
+ assertEquals("900([135]\\d{6}|9\\d{7})", metadata.getPremiumRate().getNationalNumberPattern());
}
public void testGetInstanceLoadARMetadata() {
PhoneMetadata metadata = phoneUtil.getMetadataForRegion(RegionCode.AR);
- assertEquals("AR", metadata.id);
- assertEquals(54, metadata.countryCode);
- assertEquals("00", metadata.internationalPrefix);
- assertEquals("0", metadata.nationalPrefix);
- assertEquals("0(?:(11|343|3715)15)?", metadata.nationalPrefixForParsing);
- assertEquals("9$1", metadata.nationalPrefixTransformRule);
- assertEquals("$2 15 $3-$4", metadata.numberFormat[2].format);
+ assertEquals("AR", metadata.getId());
+ assertEquals(54, metadata.getCountryCode());
+ assertEquals("00", metadata.getInternationalPrefix());
+ assertEquals("0", metadata.getNationalPrefix());
+ assertEquals("0(?:(11|343|3715)15)?", metadata.getNationalPrefixForParsing());
+ assertEquals("9$1", metadata.getNationalPrefixTransformRule());
+ assertEquals("$2 15 $3-$4", metadata.getNumberFormat(2).getFormat());
assertEquals("(9)(\\d{4})(\\d{2})(\\d{4})",
- metadata.numberFormat[3].pattern);
+ metadata.getNumberFormat(3).getPattern());
assertEquals("(9)(\\d{4})(\\d{2})(\\d{4})",
- metadata.intlNumberFormat[3].pattern);
- assertEquals("$1 $2 $3 $4", metadata.intlNumberFormat[3].format);
+ metadata.getIntlNumberFormat(3).getPattern());
+ assertEquals("$1 $2 $3 $4", metadata.getIntlNumberFormat(3).getFormat());
}
public void testGetInstanceLoadInternationalTollFreeMetadata() {
PhoneMetadata metadata = phoneUtil.getMetadataForNonGeographicalRegion(800);
- assertEquals("001", metadata.id);
- assertEquals(800, metadata.countryCode);
- assertEquals("$1 $2", metadata.numberFormat[0].format);
- assertEquals("(\\d{4})(\\d{4})", metadata.numberFormat[0].pattern);
- assertEquals("12345678", metadata.generalDesc.exampleNumber);
- assertEquals("12345678", metadata.tollFree.exampleNumber);
+ assertEquals("001", metadata.getId());
+ assertEquals(800, metadata.getCountryCode());
+ assertEquals("$1 $2", metadata.getNumberFormat(0).getFormat());
+ assertEquals("(\\d{4})(\\d{4})", metadata.getNumberFormat(0).getPattern());
+ assertEquals("12345678", metadata.getGeneralDesc().getExampleNumber());
+ assertEquals("12345678", metadata.getTollFree().getExampleNumber());
}
public void testIsNumberGeographical() {
@@ -210,6 +214,10 @@
assertTrue(phoneUtil.isNumberGeographical(AU_NUMBER)); // Australian fixed line number.
assertFalse(phoneUtil.isNumberGeographical(INTERNATIONAL_TOLL_FREE)); // International toll
// free number.
+ // We test that mobile phone numbers in relevant regions are indeed considered geographical.
+ assertTrue(phoneUtil.isNumberGeographical(AR_MOBILE)); // Argentina, mobile phone number.
+ assertTrue(phoneUtil.isNumberGeographical(MX_MOBILE1)); // Mexico, mobile phone number.
+ assertTrue(phoneUtil.isNumberGeographical(MX_MOBILE2)); // Mexico, another mobile phone number.
}
public void testIsLeadingZeroPossible() {
@@ -231,12 +239,16 @@
// Google London, which has area code "20".
assertEquals(2, phoneUtil.getLengthOfGeographicalAreaCode(GB_NUMBER));
- // A UK mobile phone, which has no area code.
+ // A mobile number in the UK does not have an area code (by default, mobile numbers do not,
+ // unless they have been added to our list of exceptions).
assertEquals(0, phoneUtil.getLengthOfGeographicalAreaCode(GB_MOBILE));
// Google Buenos Aires, which has area code "11".
assertEquals(2, phoneUtil.getLengthOfGeographicalAreaCode(AR_NUMBER));
+ // A mobile number in Argentina also has an area code.
+ assertEquals(3, phoneUtil.getLengthOfGeographicalAreaCode(AR_MOBILE));
+
// Google Sydney, which has area code "2".
assertEquals(1, phoneUtil.getLengthOfGeographicalAreaCode(AU_NUMBER));
@@ -251,6 +263,10 @@
// An international toll free number, which has no area code.
assertEquals(0, phoneUtil.getLengthOfGeographicalAreaCode(INTERNATIONAL_TOLL_FREE));
+
+ // A mobile number from China is geographical, but does not have an area code.
+ PhoneNumber cnMobile = new PhoneNumber().setCountryCode(86).setNationalNumber(18912341234L);
+ assertEquals(0, phoneUtil.getLengthOfGeographicalAreaCode(cnMobile));
}
public void testGetLengthOfNationalDestinationCode() {
@@ -287,6 +303,11 @@
// An international toll free number, which has NDC "1234".
assertEquals(4, phoneUtil.getLengthOfNationalDestinationCode(INTERNATIONAL_TOLL_FREE));
+
+ // A mobile number from China is geographical, but does not have an area code: however it still
+ // can be considered to have a national destination code.
+ PhoneNumber cnMobile = new PhoneNumber().setCountryCode(86).setNationalNumber(18912341234L);
+ assertEquals(3, phoneUtil.getLengthOfNationalDestinationCode(cnMobile));
}
public void testGetCountryMobileToken() {
@@ -330,7 +351,17 @@
PhoneNumberUtil.PhoneNumberType.MOBILE));
// RegionCode 001 is reserved for supporting non-geographical country calling code. We don't
// support getting an example number for it with this method.
- assertEquals(null, phoneUtil.getExampleNumber(RegionCode.UN001));
+ assertNull(phoneUtil.getExampleNumber(RegionCode.UN001));
+ }
+
+ public void testGetInvalidExampleNumber() {
+ // RegionCode 001 is reserved for supporting non-geographical country calling codes. We don't
+ // support getting an invalid example number for it with getInvalidExampleNumber.
+ assertNull(phoneUtil.getInvalidExampleNumber(RegionCode.UN001));
+ assertNull(phoneUtil.getInvalidExampleNumber(RegionCode.CS));
+ PhoneNumber usInvalidNumber = phoneUtil.getInvalidExampleNumber(RegionCode.US);
+ assertEquals(1, usInvalidNumber.getCountryCode());
+ assertFalse(usInvalidNumber.getNationalNumber() == 0);
}
public void testGetExampleNumberForNonGeoEntity() {
@@ -338,6 +369,13 @@
assertEquals(UNIVERSAL_PREMIUM_RATE, phoneUtil.getExampleNumberForNonGeoEntity(979));
}
+ public void testGetExampleNumberWithoutRegion() {
+ // In our test metadata we don't cover all types: in our real metadata, we do.
+ assertNotNull(phoneUtil.getExampleNumberForType(PhoneNumberUtil.PhoneNumberType.FIXED_LINE));
+ assertNotNull(phoneUtil.getExampleNumberForType(PhoneNumberUtil.PhoneNumberType.MOBILE));
+ assertNotNull(phoneUtil.getExampleNumberForType(PhoneNumberUtil.PhoneNumberType.PREMIUM_RATE));
+ }
+
public void testConvertAlphaCharactersInNumber() {
String input = "1800-ABC-DEF";
// Alpha chars are converted to digits; everything else is left untouched.
@@ -815,8 +853,8 @@
public void testFormatByPattern() {
NumberFormat newNumFormat = new NumberFormat();
- newNumFormat.pattern = "(\\d{3})(\\d{3})(\\d{4})";
- newNumFormat.format = "($1) $2-$3";
+ newNumFormat.setPattern("(\\d{3})(\\d{3})(\\d{4})");
+ newNumFormat.setFormat("($1) $2-$3");
List<NumberFormat> newNumberFormats = new ArrayList<NumberFormat>();
newNumberFormats.add(newNumFormat);
@@ -831,8 +869,8 @@
// $NP is set to '1' for the US. Here we check that for other NANPA countries the US rules are
// followed.
- newNumFormat.nationalPrefixFormattingRule = "$NP ($FG)";
- newNumFormat.format = "$1 $2-$3";
+ newNumFormat.setNationalPrefixFormattingRule("$NP ($FG)");
+ newNumFormat.setFormat("$1 $2-$3");
assertEquals("1 (242) 365-1234",
phoneUtil.formatByPattern(BS_NUMBER, PhoneNumberFormat.NATIONAL,
newNumberFormats));
@@ -840,8 +878,8 @@
phoneUtil.formatByPattern(BS_NUMBER, PhoneNumberFormat.INTERNATIONAL,
newNumberFormats));
- newNumFormat.pattern = "(\\d{2})(\\d{5})(\\d{3})";
- newNumFormat.format = "$1-$2 $3";
+ newNumFormat.setPattern("(\\d{2})(\\d{5})(\\d{3})");
+ newNumFormat.setFormat("$1-$2 $3");
newNumberFormats.set(0, newNumFormat);
assertEquals("02-36618 300",
@@ -851,20 +889,20 @@
phoneUtil.formatByPattern(IT_NUMBER, PhoneNumberFormat.INTERNATIONAL,
newNumberFormats));
- newNumFormat.nationalPrefixFormattingRule = "$NP$FG";
- newNumFormat.pattern = "(\\d{2})(\\d{4})(\\d{4})";
- newNumFormat.format = "$1 $2 $3";
+ newNumFormat.setNationalPrefixFormattingRule("$NP$FG");
+ newNumFormat.setPattern("(\\d{2})(\\d{4})(\\d{4})");
+ newNumFormat.setFormat("$1 $2 $3");
newNumberFormats.set(0, newNumFormat);
assertEquals("020 7031 3000",
phoneUtil.formatByPattern(GB_NUMBER, PhoneNumberFormat.NATIONAL,
newNumberFormats));
- newNumFormat.nationalPrefixFormattingRule = "($NP$FG)";
+ newNumFormat.setNationalPrefixFormattingRule("($NP$FG)");
assertEquals("(020) 7031 3000",
phoneUtil.formatByPattern(GB_NUMBER, PhoneNumberFormat.NATIONAL,
newNumberFormats));
- newNumFormat.nationalPrefixFormattingRule = "";
+ newNumFormat.setNationalPrefixFormattingRule("");
assertEquals("20 7031 3000",
phoneUtil.formatByPattern(GB_NUMBER, PhoneNumberFormat.NATIONAL,
newNumberFormats));
@@ -1437,9 +1475,8 @@
public void testMaybeStripNationalPrefix() {
PhoneMetadata metadata = new PhoneMetadata();
- metadata.nationalPrefixForParsing = "34";
- metadata.generalDesc = new PhoneNumberDesc();
- metadata.generalDesc.nationalNumberPattern = "\\d{4,8}";
+ metadata.setNationalPrefixForParsing("34");
+ metadata.setGeneralDesc(new PhoneNumberDesc().setNationalNumberPattern("\\d{4,8}"));
StringBuilder numberToStrip = new StringBuilder("34356778");
String strippedNumber = "356778";
assertTrue(phoneUtil.maybeStripNationalPrefixAndCarrierCode(numberToStrip, metadata, null));
@@ -1451,20 +1488,20 @@
assertEquals("Should have had no change - no national prefix present.",
strippedNumber, numberToStrip.toString());
// Some countries have no national prefix. Repeat test with none specified.
- metadata.nationalPrefixForParsing = "";
+ metadata.setNationalPrefixForParsing("");
assertFalse(phoneUtil.maybeStripNationalPrefixAndCarrierCode(numberToStrip, metadata, null));
assertEquals("Should not strip anything with empty national prefix.",
strippedNumber, numberToStrip.toString());
// If the resultant number doesn't match the national rule, it shouldn't be stripped.
- metadata.nationalPrefixForParsing = "3";
+ metadata.setNationalPrefixForParsing("3");
numberToStrip = new StringBuilder("3123");
strippedNumber = "3123";
assertFalse(phoneUtil.maybeStripNationalPrefixAndCarrierCode(numberToStrip, metadata, null));
- assertEquals("Should have had no change - after stripping, it wouldn't have matched " +
- "the national rule.",
- strippedNumber, numberToStrip.toString());
+ assertEquals("Should have had no change - after stripping, it wouldn't have matched "
+ + "the national rule.",
+ strippedNumber, numberToStrip.toString());
// Test extracting carrier selection code.
- metadata.nationalPrefixForParsing = "0(81)?";
+ metadata.setNationalPrefixForParsing("0(81)?");
numberToStrip = new StringBuilder("08122123456");
strippedNumber = "22123456";
StringBuilder carrierCode = new StringBuilder();
@@ -1474,9 +1511,9 @@
assertEquals("Should have had national prefix and carrier code stripped.",
strippedNumber, numberToStrip.toString());
// If there was a transform rule, check it was applied.
- metadata.nationalPrefixTransformRule = "5$15";
+ metadata.setNationalPrefixTransformRule("5$15");
// Note that a capturing group is present here.
- metadata.nationalPrefixForParsing = "0(\\d{2})";
+ metadata.setNationalPrefixForParsing("0(\\d{2})");
numberToStrip = new StringBuilder("031123");
String transformedNumber = "5315123";
assertTrue(phoneUtil.maybeStripNationalPrefixAndCarrierCode(numberToStrip, metadata, null));
@@ -1651,11 +1688,10 @@
try {
String phoneNumber = "(1 610) 619 446";
StringBuilder numberToFill = new StringBuilder();
- assertEquals("Should not have extracted a country calling code - invalid number after " +
- "extraction of uncertain country calling code.",
- 0,
- phoneUtil.maybeExtractCountryCode(phoneNumber, metadata, numberToFill, false,
- number));
+ assertEquals("Should not have extracted a country calling code - invalid number after "
+ + "extraction of uncertain country calling code.",
+ 0,
+ phoneUtil.maybeExtractCountryCode(phoneNumber, metadata, numberToFill, false, number));
assertFalse("Should not contain CountryCodeSource.", number.hasCountryCodeSource());
} catch (NumberParseException e) {
fail("Should not have thrown an exception: " + e.toString());
@@ -1664,11 +1700,10 @@
try {
String phoneNumber = "(1 610) 619";
StringBuilder numberToFill = new StringBuilder();
- assertEquals("Should not have extracted a country calling code - too short number both " +
- "before and after extraction of uncertain country calling code.",
- 0,
- phoneUtil.maybeExtractCountryCode(phoneNumber, metadata, numberToFill, true,
- number));
+ assertEquals("Should not have extracted a country calling code - too short number both "
+ + "before and after extraction of uncertain country calling code.",
+ 0,
+ phoneUtil.maybeExtractCountryCode(phoneNumber, metadata, numberToFill, true, number));
assertEquals("Did not figure out CountryCodeSource correctly",
CountryCodeSource.FROM_DEFAULT_COUNTRY, number.getCountryCodeSource());
} catch (NumberParseException e) {
@@ -1814,20 +1849,18 @@
// Using a soft hyphen U+00AD.
assertEquals(US_NUMBER, phoneUtil.parse("1 (650) 253\u00AD-0000", RegionCode.US));
// The whole number, including punctuation, is here represented in full-width form.
- assertEquals(US_NUMBER, phoneUtil.parse("\uFF0B\uFF11\u3000\uFF08\uFF16\uFF15\uFF10\uFF09" +
- "\u3000\uFF12\uFF15\uFF13\uFF0D\uFF10\uFF10\uFF10" +
- "\uFF10",
- RegionCode.SG));
+ assertEquals(US_NUMBER, phoneUtil.parse("\uFF0B\uFF11\u3000\uFF08\uFF16\uFF15\uFF10\uFF09"
+ + "\u3000\uFF12\uFF15\uFF13\uFF0D\uFF10\uFF10\uFF10\uFF10",
+ RegionCode.SG));
// Using U+30FC dash instead.
- assertEquals(US_NUMBER, phoneUtil.parse("\uFF0B\uFF11\u3000\uFF08\uFF16\uFF15\uFF10\uFF09" +
- "\u3000\uFF12\uFF15\uFF13\u30FC\uFF10\uFF10\uFF10" +
- "\uFF10",
- RegionCode.SG));
+ assertEquals(US_NUMBER, phoneUtil.parse("\uFF0B\uFF11\u3000\uFF08\uFF16\uFF15\uFF10\uFF09"
+ + "\u3000\uFF12\uFF15\uFF13\u30FC\uFF10\uFF10\uFF10\uFF10",
+ RegionCode.SG));
// Using a very strange decimal digit range (Mongolian digits).
- assertEquals(US_NUMBER, phoneUtil.parse("\u1811 \u1816\u1815\u1810 " +
- "\u1812\u1815\u1813 \u1810\u1810\u1810\u1810",
- RegionCode.US));
+ assertEquals(US_NUMBER, phoneUtil.parse("\u1811 \u1816\u1815\u1810 "
+ + "\u1812\u1815\u1813 \u1810\u1810\u1810\u1810",
+ RegionCode.US));
}
public void testParseWithLeadingZero() throws Exception {
diff --git a/libphonenumber/test/com/google/i18n/phonenumbers/ShortNumberInfoTest.java b/libphonenumber/test/com/google/i18n/phonenumbers/ShortNumberInfoTest.java
index edcb004..7059678 100644
--- a/libphonenumber/test/com/google/i18n/phonenumbers/ShortNumberInfoTest.java
+++ b/libphonenumber/test/com/google/i18n/phonenumbers/ShortNumberInfoTest.java
@@ -329,7 +329,7 @@
assertEquals(ShortNumberInfo.ShortNumberCost.UNKNOWN_COST,
shortInfo.getExpectedCostForRegion(parse("211", RegionCode.US), RegionCode.US));
assertFalse(shortInfo.isEmergencyNumber("211", RegionCode.CA));
- assertEquals(ShortNumberInfo.ShortNumberCost.UNKNOWN_COST,
+ assertEquals(ShortNumberInfo.ShortNumberCost.TOLL_FREE,
shortInfo.getExpectedCostForRegion(parse("211", RegionCode.CA), RegionCode.CA));
}
diff --git a/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_800 b/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_800
index c8d5ffa..cfaaeca 100644
--- a/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_800
+++ b/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_800
Binary files differ
diff --git a/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_979 b/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_979
index 87e9835..92cb48a 100644
--- a/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_979
+++ b/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_979
Binary files differ
diff --git a/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_AD b/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_AD
index fd2844b..42e2c85 100644
--- a/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_AD
+++ b/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_AD
Binary files differ
diff --git a/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_AE b/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_AE
index de5efa3..79aeb16 100644
--- a/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_AE
+++ b/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_AE
Binary files differ
diff --git a/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_AO b/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_AO
index 7865c2f..3b33ecc 100644
--- a/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_AO
+++ b/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_AO
Binary files differ
diff --git a/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_AR b/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_AR
index c9c1af8..e8eee83 100644
--- a/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_AR
+++ b/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_AR
Binary files differ
diff --git a/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_AU b/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_AU
index 734279b..ef6e385 100644
--- a/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_AU
+++ b/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_AU
Binary files differ
diff --git a/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_BB b/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_BB
index fc3a715..76b000c 100644
--- a/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_BB
+++ b/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_BB
Binary files differ
diff --git a/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_BR b/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_BR
index 8bf34a1..2284176 100644
--- a/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_BR
+++ b/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_BR
Binary files differ
diff --git a/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_BS b/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_BS
index 443033c..301810e 100644
--- a/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_BS
+++ b/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_BS
Binary files differ
diff --git a/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_BY b/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_BY
index d89232d..ac42920 100644
--- a/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_BY
+++ b/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_BY
Binary files differ
diff --git a/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_CA b/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_CA
index 464bd02..3be2c44 100644
--- a/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_CA
+++ b/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_CA
Binary files differ
diff --git a/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_CC b/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_CC
index 2462f4c..7547c46 100644
--- a/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_CC
+++ b/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_CC
Binary files differ
diff --git a/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_CN b/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_CN
index b832939..4297012 100644
--- a/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_CN
+++ b/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_CN
Binary files differ
diff --git a/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_CX b/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_CX
index 92a9582..7c76e17 100644
--- a/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_CX
+++ b/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_CX
Binary files differ
diff --git a/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_DE b/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_DE
index e3797a4..e55eebf 100644
--- a/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_DE
+++ b/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_DE
Binary files differ
diff --git a/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_FR b/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_FR
index ece939d..c15c8cd 100644
--- a/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_FR
+++ b/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_FR
Binary files differ
diff --git a/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_GB b/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_GB
index 9e8ecc4..59c4861 100644
--- a/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_GB
+++ b/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_GB
Binary files differ
diff --git a/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_GG b/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_GG
index 712f683..b20aac7 100644
--- a/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_GG
+++ b/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_GG
Binary files differ
diff --git a/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_HU b/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_HU
index 28fdec1..43873a4 100644
--- a/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_HU
+++ b/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_HU
Binary files differ
diff --git a/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_IT b/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_IT
index d3c00b2..6f46a99 100644
--- a/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_IT
+++ b/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_IT
Binary files differ
diff --git a/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_JP b/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_JP
index aa055b1..1418061 100644
--- a/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_JP
+++ b/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_JP
Binary files differ
diff --git a/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_KR b/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_KR
index 49e8302..fc35203 100644
--- a/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_KR
+++ b/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_KR
Binary files differ
diff --git a/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_MX b/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_MX
index cd4593a..9151ddc 100644
--- a/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_MX
+++ b/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_MX
Binary files differ
diff --git a/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_NZ b/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_NZ
index 9a26ed1..554b800 100644
--- a/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_NZ
+++ b/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_NZ
Binary files differ
diff --git a/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_PL b/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_PL
index 7c5fc15..da93e75 100644
--- a/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_PL
+++ b/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_PL
Binary files differ
diff --git a/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_RE b/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_RE
index 144938c..435ecc0 100644
--- a/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_RE
+++ b/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_RE
Binary files differ
diff --git a/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_SE b/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_SE
index 99fdf26..7e9e68b 100644
--- a/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_SE
+++ b/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_SE
Binary files differ
diff --git a/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_SG b/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_SG
index fa31285..1f13cb2 100644
--- a/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_SG
+++ b/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_SG
Binary files differ
diff --git a/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_US b/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_US
index a6c26c5..6ee4178 100644
--- a/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_US
+++ b/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_US
Binary files differ
diff --git a/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_YT b/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_YT
index 0852976..aa7469b 100644
--- a/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_YT
+++ b/libphonenumber/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_YT
Binary files differ
diff --git a/libphonenumber/test/com/google/i18n/phonenumbers/data/SingleFilePhoneNumberMetadataProtoForTesting b/libphonenumber/test/com/google/i18n/phonenumbers/data/SingleFilePhoneNumberMetadataProtoForTesting
deleted file mode 100644
index 82ae4a8..0000000
--- a/libphonenumber/test/com/google/i18n/phonenumbers/data/SingleFilePhoneNumberMetadataProtoForTesting
+++ /dev/null
Binary files differ
diff --git a/pom.xml b/pom.xml
index 70e6b39..1b1a067 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>7.2.6</version>
+ <version>7.7.0</version>
<packaging>pom</packaging>
<url>https://github.com/googlei18n/libphonenumber/</url>
@@ -92,7 +92,7 @@
<artifactId>maven-surefire-plugin</artifactId>
<version>2.12</version>
<configuration>
- <forkMode>never</forkMode>
+ <forkCount>0</forkCount>
<includes>
<include>**/*Test.java</include>
</includes>
diff --git a/release_notes.txt b/release_notes.txt
index 2e89ec2..25195c3 100644
--- a/release_notes.txt
+++ b/release_notes.txt
@@ -1,3 +1,174 @@
+Sep 19, 2016: libphonenumber-7.7.0
+Code changes:
+ - Removed the dependency on protobuf (protobuf-javanano) from the Java library,
+ resurrecting
+ java/libphonenumber/src/com/google/i18n/phonenumbers/Phonemetadata.java
+ which was present until libphonenumber-7.1.1.
+ Does not affect the C++ or JavaScript libraries.
+
+Sep 07, 2016: libphonenumber-7.6.1
+Code changes:
+ - Phonemetadata.java has two more fields to represent possible lengths of phone
+ numbers. Changed BuildMetadataFromXml (and the resultant jar) to alter the way
+ that metadata about possible-lengths information is consumed when constructing
+ metadata to populate these.
+ Discussion list email:
+ https://groups.google.com/forum/#!topic/libphonenumber-discuss/75TOpTFVi08
+Metadata changes:
+ - Updated phone metadata for region code(s):
+ AG, AM, AX, BY, CD, FI, IN, KR, MA, NA, NL, PK, SY
+ - Updated short number metadata for region code(s): BR, GB, NL, NZ
+ - New geocoding data for country calling code(s):
+ 82 (pl, pt, ro, ru, sl, sr, uk, vi)
+ - Updated carrier data for country calling code(s):
+ 27 (en), 91 (en), 243 (en), 963 (en)
+
+Aug 24, 2016: libphonenumber-7.6.0
+Code changes:
+ - Refactored metadata loading and closed all streams after loading.
+ - Made isNumberGeographical public, and changed the geocoder to
+ use this when checking whether to give a detailed answer or country-level
+ only.
+Build changes:
+ - Use protobuf-javanano 3.0.0-alpha-7 from Maven Central.
+Metadata changes:
+ - Updated phone metadata for region code(s): EH, ET, JM, MA, SK, SN, SY, ZM
+ - Updated short number metadata for region code(s): ZA
+ - Updated geocoding data for country calling code(s): 212 (en)
+ - New carrier data for country calling code(s):
+ 86 (zh, zh_Hant), 852 (zh, zh_Hant), 963 (en)
+ - Updated carrier data for country calling code(s):
+ 86 (en), 212 (en), 251 (en), 421 (en)
+ - Deleted unsupported SingleFilePhoneNumberMetadataProto
+
+Aug 10, 2016: libphonenumber-7.5.2
+Metadata changes:
+ - Updated phone metadata for region code(s): CO, IN, ME
+ - Updated short number metadata for region code(s): IN
+ - New carrier data for country calling code(s): 382 (en)
+ - Updated carrier data for country calling code(s): 91 (en)
+
+Jul 27, 2016: libphonenumber-7.5.1
+Metadata changes:
+ - Updated alternate formatting data for country calling code(s): 595
+ - Updated phone metadata for region code(s): BD, BG, CI, IN, PY, TJ
+ - Updated short number metadata for region code(s): IN
+ - New geocoding data for country calling code(s):
+ 82 (bg, ca, el, es, fi, hi, hu, iw, ja, tr)
+ - Updated geocoding data for country calling code(s): 44 (en)
+ - New carrier data for country calling code(s): 374 (ru)
+ - Updated carrier data for country calling code(s):
+ 91 (en), 374 (en), 992 (en)
+
+Jul 22, 2016: libphonenumber-7.5.0
+Code changes:
+ - Simplify concurrent metadata loading in MultiFileMetadataSourceImpl and
+ reduce points of contention.
+
+Jul 14, 2016: libphonenumber-7.4.5
+Metadata changes:
+ - Updated phone metadata for region code(s): CN, HN, IN, KW, LV, TC
+ - Updated short number metadata for region code(s): AE, BR, GB, ZA
+ - New geocoding data for country calling code(s): 93 (fa), 992 (en)
+ - Updated geocoding data for country calling code(s):
+ 91 (en), 98 (en, fa), 371 (en), 504 (en), 1 (en)
+ - Updated carrier data for country calling code(s): 91 (en)
+
+Jun 29, 2016: libphonenumber-7.4.4
+Metadata changes:
+ - Updated phone metadata for region code(s): AZ, BH, HN, IN, US
+ - Updated short number metadata for region code(s): BR, IN, SK
+ - New geocoding data for country calling code(s): 994 (en),
+ - Updated geocoding data for country calling code(s): 504 (en), 1 (en)
+ - Updated carrier data for country calling code(s):
+ 91 (en), 973 (en), 994 (en)
+
+Jun 15, 2016: libphonenumber-7.4.3
+Metadata changes:
+ - Updated phone metadata for region code(s):
+ HK, HN, IN, KN, KW, SK, SN, TH, TZ
+ - Updated short number metadata for region code(s): AR, NO
+ - New geocoding data for country calling code(s): 93 (en), 504 (en)
+ - New carrier data for country calling code(s): 93 (fa), 98 (fa)
+ - Updated carrier data for country calling code(s):
+ 66 (en), 91 (en), 255 (en), 421 (en)
+
+Jun 01, 2016: libphonenumber-7.4.2
+Code changes:
+ - Make C++ code forward compatible with an upcoming RE2 change.
+Metadata changes:
+ - Updated phone metadata for region code(s): AE, BZ, GU, IN, KR
+ - Updated short number metadata for region code(s): BR
+ - New geocoding data for country calling code(s): 501 (en)
+ - Updated carrier data for country calling code(s):
+ 91 (en), 971 (en), 1671 (en)
+
+May 18, 2016: libphonenumber-7.4.1
+Metadata changes:
+ - Updated phone metadata for region code(s): FR, IL, KR
+ - Updated carrier data for country calling code(s): 972 (en)
+
+May 11, 2016: libphonenumber-7.4.0
+Maven changes:
+ - Repackage protobuf runtime dependency to prevent conflicts with clients'
+ protobuf dependencies. Backwards-compatible, so no changes needed for clients
+ who could use the previous release, but enables those with their own protobuf
+ dependencies to use this and future releases without workarounds.
+
+May 03, 2016: libphonenumber-7.3.2
+Metadata changes:
+ - Updated phone metadata for region code(s):
+ AU, BR, ET, IN, KH, ML, NO, SB, TJ, US
+ - Updated short number metadata for region code(s): CA, ML, US
+ - New geocoding data for country calling code(s): 223 (en)
+ - Updated geocoding data for country calling code(s):
+ 27 (en), 55 (en, pt), 1 (en)
+ - Updated carrier data for country calling code(s):
+ 61 (en), 91 (en), 223 (en), 251 (en), 677 (en), 992 (en)
+
+Apr 20, 2016: libphonenumber-7.3.1
+Metadata changes:
+ - Updated phone metadata for region code(s): DE, DJ, IL, IN, KH
+ - Updated short number metadata for region code(s): BR
+ - Updated carrier data for country calling code(s):
+ 91 (en), 855 (en), 972 (en)
+
+Apr 05, 2016: libphonenumber-7.3.0
+Code changes:
+ - Added java/pending_code_changes.txt for contributors to track code changes
+ between releases.
+ - Reduced minimum required version of cmake to 2.8.
+ - Added cmake installation instructions for Mac.
+ - Added getExampleNumberForType that doesn't take in a region, and
+ getInvalidExampleNumber
+ - Improvements to javadoc for parse method
+ - Update isNumberGeographical to return true for geographical mobile numbers.
+Metadata changes:
+ - Updated phone metadata for region code(s):
+ BJ, BZ, CI, ET, GQ, KE, KW, ML, NO, OM, VN
+ - Updated short number metadata for region code(s): KE
+ - Updated geocoding data for country calling code(s):
+ 84 (en), 251 (en), 254 (en)
+ - Updated carrier data for country calling code(s):
+ 84 (en), 225 (en), 229 (en), 254 (en), 968 (en)
+
+Mar 21, 2016: libphonenumber-7.2.8
+Metadata changes:
+ - Updated phone metadata for region code(s): CL, CN, FO, KE, SE, SO
+ - Updated short number metadata for region code(s): FO
+ - Updated geocoding data for country calling code(s): 86 (en, zh)
+ - Updated carrier data for country calling code(s):
+ 86 (en), 252 (en), 254 (en)
+
+Mar 09, 2016: libphonenumber-7.2.7
+Code changes:
+ - Update nationalPrefixOptionalWhenFormatting documentation.
+Metadata changes:
+ - Updated phone metadata for region code(s): CN, IN, MO, TK
+ - Updated short number metadata for region code(s): FR
+ - Updated carrier data for country calling code(s): 853 (en)
+ - Updated / refreshed time zone meta data.
+
Feb 25, 2016: libphonenumber-7.2.6
Metadata changes:
- Updated phone metadata for region code(s): DJ, MA, NA, US