Hello community,

here is the log from the commit of package python-phonenumbers for 
openSUSE:Factory checked in at 2019-09-23 12:06:23
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/python-phonenumbers (Old)
 and      /work/SRC/openSUSE:Factory/.python-phonenumbers.new.7948 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-phonenumbers"

Mon Sep 23 12:06:23 2019 rev:7 rq:729893 version:8.10.18

Changes:
--------
--- /work/SRC/openSUSE:Factory/python-phonenumbers/python-phonenumbers.changes  
2019-07-23 22:40:25.178933709 +0200
+++ 
/work/SRC/openSUSE:Factory/.python-phonenumbers.new.7948/python-phonenumbers.changes
        2019-09-23 12:06:24.969915219 +0200
@@ -1,0 +2,6 @@
+Tue Sep 10 13:23:27 UTC 2019 - Tomáš Chvátal <[email protected]>
+
+- Update to 8.10.18:
+  * metadata updates
+
+-------------------------------------------------------------------

Old:
----
  phonenumbers-8.10.15.tar.gz

New:
----
  phonenumbers-8.10.18.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ python-phonenumbers.spec ++++++
--- /var/tmp/diff_new_pack.qXDlYL/_old  2019-09-23 12:06:25.721915095 +0200
+++ /var/tmp/diff_new_pack.qXDlYL/_new  2019-09-23 12:06:25.725915094 +0200
@@ -18,7 +18,7 @@
 
 %{?!python_module:%define python_module() python-%{**} python3-%{**}}
 Name:           python-phonenumbers
-Version:        8.10.15
+Version:        8.10.18
 Release:        0
 Summary:        Python version of Google's common library for international 
phone numbers
 License:        Apache-2.0

++++++ phonenumbers-8.10.15.tar.gz -> phonenumbers-8.10.18.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/phonenumbers-8.10.15/HISTORY.md 
new/phonenumbers-8.10.18/HISTORY.md
--- old/phonenumbers-8.10.15/HISTORY.md 2019-04-10 09:12:32.000000000 +0200
+++ new/phonenumbers-8.10.18/HISTORY.md 2019-09-06 08:35:53.000000000 +0200
@@ -7,7 +7,7 @@
 This file does not generally include descriptions of patch releases (vX.Y.Z
 => vX.Y.Z+1) unless there are significant changes to code, not just metadata
 changes.  (Metadata updates are best checked
-[upstream](https://github.com/googlei18n/libphonenumber/blob/master/release_notes.txt).)
+[upstream](https://github.com/google/libphonenumber/blob/master/release_notes.txt).)
 
 
 What's new in 8.10.8
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/phonenumbers-8.10.15/PKG-INFO 
new/phonenumbers-8.10.18/PKG-INFO
--- old/phonenumbers-8.10.15/PKG-INFO   2019-07-16 20:59:00.000000000 +0200
+++ new/phonenumbers-8.10.18/PKG-INFO   2019-09-06 08:50:35.000000000 +0200
@@ -1,6 +1,6 @@
 Metadata-Version: 2.1
 Name: phonenumbers
-Version: 8.10.15
+Version: 8.10.18
 Summary: Python version of Google's common library for parsing, formatting, 
storing and validating international phone numbers.
 Home-page: https://github.com/daviddrysdale/python-phonenumbers
 Author: David Drysdale
@@ -11,13 +11,13 @@
         
         [![Coverage 
Status](https://coveralls.io/repos/daviddrysdale/python-phonenumbers/badge.svg?branch=dev&service=github)](https://coveralls.io/github/daviddrysdale/python-phonenumbers?branch=dev)
         
-        This is a Python port of [Google's libphonenumber 
library](https://github.com/googlei18n/libphonenumber)
+        This is a Python port of [Google's libphonenumber 
library](https://github.com/google/libphonenumber)
         It supports Python 2.5-2.7 and Python 3.x (in the same codebase, with 
no
         [2to3](http://docs.python.org/2/library/2to3.html) conversion needed).
         
         Original Java code is Copyright (C) 2009-2015 The Libphonenumber 
Authors.
         
-        Release [HISTORY](python/HISTORY.md), derived from [upstream release 
notes](https://github.com/googlei18n/libphonenumber/blob/master/release_notes.txt).
+        Release [HISTORY](python/HISTORY.md), derived from [upstream release 
notes](https://github.com/google/libphonenumber/blob/master/release_notes.txt).
         
         
         Installation
@@ -184,7 +184,7 @@
         ```
         
         For more information about the other functionality available from the 
library, look in the unit tests or in the original
-        [libphonenumber project](https://github.com/googlei18n/libphonenumber).
+        [libphonenumber project](https://github.com/google/libphonenumber).
         
         Memory Usage
         ------------
@@ -219,7 +219,7 @@
         * The `python/` directory holds the Python code.
         * The `resources/` directory is a copy of the `resources/`
           directory from
-          
[libphonenumber](https://github.com/googlei18n/libphonenumber/tree/master/resources).
+          
[libphonenumber](https://github.com/google/libphonenumber/tree/master/resources).
           This is not needed to run the Python code, but is needed when 
upstream
           changes to the master metadata need to be incorporated.
         * The `tools/` directory holds the tools that are used to process 
upstream
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/phonenumbers-8.10.15/README.md 
new/phonenumbers-8.10.18/README.md
--- old/phonenumbers-8.10.15/README.md  2019-04-10 09:12:32.000000000 +0200
+++ new/phonenumbers-8.10.18/README.md  2019-08-05 14:03:39.000000000 +0200
@@ -3,13 +3,13 @@
 
 [![Coverage 
Status](https://coveralls.io/repos/daviddrysdale/python-phonenumbers/badge.svg?branch=dev&service=github)](https://coveralls.io/github/daviddrysdale/python-phonenumbers?branch=dev)
 
-This is a Python port of [Google's libphonenumber 
library](https://github.com/googlei18n/libphonenumber)
+This is a Python port of [Google's libphonenumber 
library](https://github.com/google/libphonenumber)
 It supports Python 2.5-2.7 and Python 3.x (in the same codebase, with no
 [2to3](http://docs.python.org/2/library/2to3.html) conversion needed).
 
 Original Java code is Copyright (C) 2009-2015 The Libphonenumber Authors.
 
-Release [HISTORY](python/HISTORY.md), derived from [upstream release 
notes](https://github.com/googlei18n/libphonenumber/blob/master/release_notes.txt).
+Release [HISTORY](python/HISTORY.md), derived from [upstream release 
notes](https://github.com/google/libphonenumber/blob/master/release_notes.txt).
 
 
 Installation
@@ -176,7 +176,7 @@
 ```
 
 For more information about the other functionality available from the library, 
look in the unit tests or in the original
-[libphonenumber project](https://github.com/googlei18n/libphonenumber).
+[libphonenumber project](https://github.com/google/libphonenumber).
 
 Memory Usage
 ------------
@@ -211,7 +211,7 @@
 * The `python/` directory holds the Python code.
 * The `resources/` directory is a copy of the `resources/`
   directory from
-  
[libphonenumber](https://github.com/googlei18n/libphonenumber/tree/master/resources).
+  
[libphonenumber](https://github.com/google/libphonenumber/tree/master/resources).
   This is not needed to run the Python code, but is needed when upstream
   changes to the master metadata need to be incorporated.
 * The `tools/` directory holds the tools that are used to process upstream
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/phonenumbers-8.10.15/phonenumbers/__init__.py 
new/phonenumbers-8.10.18/phonenumbers/__init__.py
--- old/phonenumbers-8.10.15/phonenumbers/__init__.py   2019-07-16 
09:00:10.000000000 +0200
+++ new/phonenumbers-8.10.18/phonenumbers/__init__.py   2019-09-06 
08:36:41.000000000 +0200
@@ -146,7 +146,7 @@
 
 # Version number is taken from the upstream libphonenumber version
 # together with an indication of the version of the Python-specific code.
-__version__ = "8.10.15"
+__version__ = "8.10.18"
 
 __all__ = ['PhoneNumber', 'CountryCodeSource', 'FrozenPhoneNumber',
            'REGION_CODE_FOR_NON_GEO_ENTITY', 'NumberFormat', 
'PhoneNumberDesc', 'PhoneMetadata',
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/phonenumbers-8.10.15/phonenumbers/asyoutypeformatter.py 
new/phonenumbers-8.10.18/phonenumbers/asyoutypeformatter.py
--- old/phonenumbers-8.10.15/phonenumbers/asyoutypeformatter.py 2019-04-10 
09:12:32.000000000 +0200
+++ new/phonenumbers-8.10.18/phonenumbers/asyoutypeformatter.py 2019-08-16 
22:51:34.000000000 +0200
@@ -33,7 +33,7 @@
 from .phonenumberutil import _VALID_PUNCTUATION, REGION_CODE_FOR_NON_GEO_ENTITY
 from .phonenumberutil import _PLUS_SIGN, _PLUS_CHARS_PATTERN
 from .phonenumberutil import _extract_country_code, 
region_code_for_country_code
-from .phonenumberutil import country_code_for_region
+from .phonenumberutil import country_code_for_region, 
normalize_diallable_chars_only
 from .phonenumberutil import _formatting_rule_has_first_group_only
 
 # Character used when appropriate to separate a prefix, such as a long NDD or
@@ -394,7 +394,18 @@
                 else:
                     self._should_add_space_after_national_prefix = 
bool(_NATIONAL_PREFIX_SEPARATORS_PATTERN.search(number_format.national_prefix_formatting_rule))
                 formatted_number = re.sub(num_re, number_format.format, 
self._national_number)
-                return self._append_national_number(formatted_number)
+                # Check that we did not remove nor add any extra digits when 
we matched
+                # this formatting pattern. This usually happens after we 
entered the last
+                # digit during AYTF. Eg: In case of MX, we swallow mobile 
token (1) when
+                # formatted but AYTF should retain all the number entered and 
not change
+                # in order to match a format (of same leading digits and 
length) display
+                # in that way.
+                full_output = self._append_national_number(formatted_number)
+                formatted_number_digits_only = 
normalize_diallable_chars_only(full_output)
+                if formatted_number_digits_only == 
self._accrued_input_without_formatting:
+                    # If it's the same (i.e entered number and format is 
same), then it's
+                    # safe to return this in formatted number as nothing is 
lost / added.
+                    return full_output
         return U_EMPTY_STRING
 
     def get_remembered_position(self):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/phonenumbers-8.10.15/phonenumbers/carrierdata/data0.py 
new/phonenumbers-8.10.18/phonenumbers/carrierdata/data0.py
--- old/phonenumbers-8.10.15/phonenumbers/carrierdata/data0.py  2019-07-16 
09:00:07.000000000 +0200
+++ new/phonenumbers-8.10.18/phonenumbers/carrierdata/data0.py  2019-09-06 
08:30:06.000000000 +0200
@@ -422,6 +422,7 @@
  '180997':{'en': 'Orange'},
  '180998':{'en': 'Orange'},
  '180999':{'en': 'Tricom'},
+ '186824':{'en': 'Digicel'},
  '186826':{'en': 'bmobile'},
  '186827':{'en': 'bmobile'},
  '186828':{'en': 'bmobile'},
@@ -837,6 +838,7 @@
  '22678':{'en': 'Telecel Faso'},
  '22679':{'en': 'Telecel Faso'},
  '22780':{'en': 'Orange'},
+ '22781':{'en': 'Orange'},
  '22788':{'en': 'Airtel'},
  '22789':{'en': 'Airtel'},
  '22790':{'en': 'Orange'},
@@ -2354,6 +2356,7 @@
  '373787':{'en': 'Moldcell'},
  '373788':{'en': 'Moldcell'},
  '37379':{'en': 'Moldcell'},
+ '37433':{'en': 'Beeline', 'ru': u('\u0411\u0438\u043b\u0430\u0439\u043d')},
  '37441':{'en': 'Ucom', 'ru': u('\u042e\u043a\u043e\u043c')},
  '37443':{'en': 'Beeline', 'ru': u('\u0411\u0438\u043b\u0430\u0439\u043d')},
  '37444':{'en': 'Ucom', 'ru': u('\u042e\u043a\u043e\u043c')},
@@ -10016,7 +10019,4 @@
  '554998408':{'en': 'Brasil Telecom GSM'},
  '554998409':{'en': 'Brasil Telecom GSM'},
  '554998411':{'en': 'Brasil Telecom GSM'},
- '554998412':{'en': 'Brasil Telecom GSM'},
- '554998413':{'en': 'Brasil Telecom GSM'},
- '554998414':{'en': 'Brasil Telecom GSM'},
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/phonenumbers-8.10.15/phonenumbers/carrierdata/data1.py 
new/phonenumbers-8.10.18/phonenumbers/carrierdata/data1.py
--- old/phonenumbers-8.10.15/phonenumbers/carrierdata/data1.py  2019-07-16 
09:00:07.000000000 +0200
+++ new/phonenumbers-8.10.18/phonenumbers/carrierdata/data1.py  2019-09-06 
08:30:06.000000000 +0200
@@ -19,6 +19,9 @@
 # limitations under the License.
 
 data = {
+ '554998412':{'en': 'Brasil Telecom GSM'},
+ '554998413':{'en': 'Brasil Telecom GSM'},
+ '554998414':{'en': 'Brasil Telecom GSM'},
  '554998415':{'en': 'Brasil Telecom GSM'},
  '554998416':{'en': 'Brasil Telecom GSM'},
  '554998417':{'en': 'Brasil Telecom GSM'},
@@ -4578,6 +4581,7 @@
  '5623233':{'en': 'Entel'},
  '5623234':{'en': 'Entel'},
  '5623235':{'en': 'Entel'},
+ '56233':{'en': 'Movistar'},
  '56941':{'en': 'Movistar'},
  '56942':{'en': 'Entel'},
  '569430':{'en': 'Telestar'},
@@ -5609,6 +5613,7 @@
  '614791':{'en': 'Optus'},
  '61481':{'en': 'Optus'},
  '61482':{'en': 'Optus'},
+ '61483':{'en': 'Telstra'},
  '61484':{'en': 'Telstra'},
  '61485':{'en': 'TravelSIM'},
  '61487':{'en': 'Telstra'},
@@ -5947,6 +5952,13 @@
  '658798':{'en': 'SingTel'},
  '658799':{'en': 'SingTel'},
  '658800':{'en': 'M1'},
+ '658801':{'en': 'TPG'},
+ '658802':{'en': 'TPG'},
+ '658803':{'en': 'TPG'},
+ '658804':{'en': 'TPG'},
+ '658805':{'en': 'TPG'},
+ '658806':{'en': 'TPG'},
+ '658807':{'en': 'TPG'},
  '658809':{'en': 'StarHub'},
  '658810':{'en': 'TPG'},
  '658811':{'en': 'M1'},
@@ -5977,6 +5989,17 @@
  '658869':{'en': 'SingTel'},
  '658876':{'en': 'SingTel'},
  '658877':{'en': 'M1'},
+ '658900':{'en': 'TPG'},
+ '658901':{'en': 'TPG'},
+ '658902':{'en': 'TPG'},
+ '658903':{'en': 'TPG'},
+ '658904':{'en': 'TPG'},
+ '658905':{'en': 'SingTel'},
+ '658906':{'en': 'SingTel'},
+ '658907':{'en': 'SingTel'},
+ '658908':{'en': 'SingTel'},
+ '658909':{'en': 'SingTel'},
+ '65891':{'en': 'TPG'},
  '659001':{'en': 'StarHub'},
  '659002':{'en': 'StarHub'},
  '659003':{'en': 'StarHub'},
@@ -8028,6 +8051,7 @@
  '86155':{'en': 'China Unicom', 'zh': u('\u4e2d\u56fd\u8054\u901a'), 
'zh_Hant': u('\u4e2d\u570b\u806f\u901a')},
  '86156':{'en': 'China Unicom', 'zh': u('\u4e2d\u56fd\u8054\u901a'), 
'zh_Hant': u('\u4e2d\u570b\u806f\u901a')},
  '86166':{'en': 'China Unicom', 'zh': u('\u4e2d\u56fd\u8054\u901a'), 
'zh_Hant': u('\u4e2d\u570b\u806f\u901a')},
+ '86167':{'en': 'China Unicom', 'zh': u('\u4e2d\u56fd\u8054\u901a'), 
'zh_Hant': u('\u4e2d\u570b\u806f\u901a')},
  '861700':{'en': 'China Telecom', 'zh': u('\u4e2d\u56fd\u7535\u4fe1'), 
'zh_Hant': u('\u4e2d\u570b\u96fb\u4fe1')},
  '861701':{'en': 'China Telecom', 'zh': u('\u4e2d\u56fd\u7535\u4fe1'), 
'zh_Hant': u('\u4e2d\u570b\u96fb\u4fe1')},
  '861702':{'en': 'China Telecom', 'zh': u('\u4e2d\u56fd\u7535\u4fe1'), 
'zh_Hant': u('\u4e2d\u570b\u96fb\u4fe1')},
@@ -9995,28 +10019,4 @@
  '9183175':{'en': 'Reliance Jio'},
  '9183176':{'en': 'Reliance Jio'},
  '9183177':{'en': 'Idea'},
- '9183178':{'en': 'Vodafone'},
- '918318':{'en': 'Reliance Jio'},
- '918319':{'en': 'Reliance Jio'},
- '918320':{'en': 'Reliance Jio'},
- '9183270':{'en': 'Vodafone'},
- '9183272':{'en': 'Vodafone'},
- '9183273':{'en': 'Vodafone'},
- '9183274':{'en': 'Vodafone'},
- '9183275':{'en': 'Vodafone'},
- '9183276':{'en': 'Vodafone'},
- '9183277':{'en': 'Reliance Jio'},
- '9183278':{'en': 'Vodafone'},
- '918328':{'en': 'Reliance Jio'},
- '9183287':{'en': 'Vodafone'},
- '918329':{'en': 'Reliance Jio'},
- '91833':{'en': 'Vodafone'},
- '918330':{'en': 'BSNL MOBILE'},
- '918331':{'en': 'BSNL MOBILE'},
- '918332':{'en': 'BSNL MOBILE'},
- '918333':{'en': 'BSNL MOBILE'},
- '918340':{'en': 'Reliance Jio'},
- '9183400':{'en': 'Idea'},
- '9183408':{'en': 'Idea'},
- '9183409':{'en': 'Idea'},
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/phonenumbers-8.10.15/phonenumbers/carrierdata/data2.py 
new/phonenumbers-8.10.18/phonenumbers/carrierdata/data2.py
--- old/phonenumbers-8.10.15/phonenumbers/carrierdata/data2.py  2019-07-16 
09:00:07.000000000 +0200
+++ new/phonenumbers-8.10.18/phonenumbers/carrierdata/data2.py  2019-09-06 
08:30:06.000000000 +0200
@@ -19,6 +19,30 @@
 # limitations under the License.
 
 data = {
+ '9183178':{'en': 'Vodafone'},
+ '918318':{'en': 'Reliance Jio'},
+ '918319':{'en': 'Reliance Jio'},
+ '918320':{'en': 'Reliance Jio'},
+ '9183270':{'en': 'Vodafone'},
+ '9183272':{'en': 'Vodafone'},
+ '9183273':{'en': 'Vodafone'},
+ '9183274':{'en': 'Vodafone'},
+ '9183275':{'en': 'Vodafone'},
+ '9183276':{'en': 'Vodafone'},
+ '9183277':{'en': 'Reliance Jio'},
+ '9183278':{'en': 'Vodafone'},
+ '918328':{'en': 'Reliance Jio'},
+ '9183287':{'en': 'Vodafone'},
+ '918329':{'en': 'Reliance Jio'},
+ '91833':{'en': 'Vodafone'},
+ '918330':{'en': 'BSNL MOBILE'},
+ '918331':{'en': 'BSNL MOBILE'},
+ '918332':{'en': 'BSNL MOBILE'},
+ '918333':{'en': 'BSNL MOBILE'},
+ '918340':{'en': 'Reliance Jio'},
+ '9183400':{'en': 'Idea'},
+ '9183408':{'en': 'Idea'},
+ '9183409':{'en': 'Idea'},
  '918341':{'en': 'Telewings'},
  '918342':{'en': 'Vodafone'},
  '918343':{'en': 'Idea'},
@@ -1413,6 +1437,9 @@
  '95985':{'en': 'MPT'},
  '95986':{'en': 'MPT'},
  '95987':{'en': 'MPT'},
+ '959887':{'en': 'MPT'},
+ '959888':{'en': 'MPT'},
+ '959889':{'en': 'MPT'},
  '95989':{'en': 'MPT'},
  '95991':{'en': 'MPT'},
  '95995':{'en': 'Ooredoo'},
@@ -1536,8 +1563,10 @@
  '9725523':{'en': 'Home Cellular'},
  '9725524':{'en': 'Telzar'},
  '9725525':{'en': 'Telzar'},
+ '9725526':{'en': 'Telzar'},
  '972553':{'en': 'Free Telecom'},
  '9725550':{'en': 'Annatel'},
+ '9725555':{'en': 'Rami Levy'},
  '972556':{'en': 'Rami Levy'},
  '9725570':{'en': 'Cellact'},
  '9725571':{'en': 'Cellact'},
@@ -1626,6 +1655,7 @@
  '992919':{'en': 'Tacom'},
  '99292':{'en': 'Tcell'},
  '99293':{'en': 'Tcell'},
+ '99294':{'en': 'Babilon-M'},
  '99298':{'en': 'Babilon-M'},
  '99361':{'en': 'TM-Cell'},
  '99365':{'en': 'TM-Cell'},
@@ -1676,7 +1706,13 @@
  '99670':{'en': 'Nur Telecom'},
  '99675':{'en': 'ALFA Telecom'},
  '99677':{'en': 'Sky mobile'},
- '9969':{'en': 'Sky mobile'},
+ '99688':{'en': 'ALFA Telecom'},
+ '996990':{'en': 'ALFA Telecom'},
+ '996995':{'en': 'ALFA Telecom'},
+ '996996':{'en': 'Sky mobile'},
+ '996997':{'en': 'ALFA Telecom'},
+ '996998':{'en': 'ALFA Telecom'},
+ '996999':{'en': 'Sky mobile'},
  '9986':{'en': 'MTS'},
  '99870':{'en': 'MTS'},
  '99872':{'en': 'MTS'},
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/phonenumbers-8.10.15/phonenumbers/data/alt_format_676.py 
new/phonenumbers-8.10.18/phonenumbers/data/alt_format_676.py
--- old/phonenumbers-8.10.15/phonenumbers/data/alt_format_676.py        
2019-07-16 09:00:01.000000000 +0200
+++ new/phonenumbers-8.10.18/phonenumbers/data/alt_format_676.py        
2019-09-06 08:30:01.000000000 +0200
@@ -1,4 +1,4 @@
 """Auto-generated file, do not edit by hand. 676 metadata"""
 from ..phonemetadata import NumberFormat
 
-PHONE_ALT_FORMAT_676 = [NumberFormat(pattern='(\\d{2})(\\d{5})', format='\\1 
\\2', leading_digits_pattern=['[6-8]'])]
+PHONE_ALT_FORMAT_676 = [NumberFormat(pattern='(\\d{2})(\\d{5})', format='\\1 
\\2', leading_digits_pattern=['[5-8]'])]
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/phonenumbers-8.10.15/phonenumbers/data/region_AM.py 
new/phonenumbers-8.10.18/phonenumbers/data/region_AM.py
--- old/phonenumbers-8.10.15/phonenumbers/data/region_AM.py     2019-07-16 
09:00:01.000000000 +0200
+++ new/phonenumbers-8.10.18/phonenumbers/data/region_AM.py     2019-09-06 
08:30:00.000000000 +0200
@@ -4,7 +4,7 @@
 PHONE_METADATA_AM = PhoneMetadata(id='AM', country_code=374, 
international_prefix='00',
     
general_desc=PhoneNumberDesc(national_number_pattern='(?:[1-489]\\d|55|60|77)\\d{6}',
 possible_length=(8,), possible_length_local_only=(5, 6)),
     
fixed_line=PhoneNumberDesc(national_number_pattern='(?:(?:1[0-25]|47)\\d|2(?:2[2-46]|3[1-8]|4[2-69]|5[2-7]|6[1-9]|8[1-7])|3[12]2)\\d{5}',
 example_number='10123456', possible_length=(8,), 
possible_length_local_only=(5, 6)),
-    
mobile=PhoneNumberDesc(national_number_pattern='(?:4[1349]|55|77|88|9[13-9])\\d{6}',
 example_number='77123456', possible_length=(8,)),
+    
mobile=PhoneNumberDesc(national_number_pattern='(?:33|4[1349]|55|77|88|9[13-9])\\d{6}',
 example_number='77123456', possible_length=(8,)),
     toll_free=PhoneNumberDesc(national_number_pattern='800\\d{5}', 
example_number='80012345', possible_length=(8,)),
     premium_rate=PhoneNumberDesc(national_number_pattern='90[016]\\d{5}', 
example_number='90012345', possible_length=(8,)),
     shared_cost=PhoneNumberDesc(national_number_pattern='80[1-4]\\d{5}', 
example_number='80112345', possible_length=(8,)),
@@ -12,7 +12,7 @@
     national_prefix='0',
     national_prefix_for_parsing='0',
     number_format=[NumberFormat(pattern='(\\d{3})(\\d{2})(\\d{3})', 
format='\\1 \\2 \\3', leading_digits_pattern=['[89]0'], 
national_prefix_formatting_rule='0 \\1'),
-        NumberFormat(pattern='(\\d{3})(\\d{5})', format='\\1 \\2', 
leading_digits_pattern=['[23]'], national_prefix_formatting_rule='(0\\1)'),
+        NumberFormat(pattern='(\\d{3})(\\d{5})', format='\\1 \\2', 
leading_digits_pattern=['2|3[12]'], national_prefix_formatting_rule='(0\\1)'),
         NumberFormat(pattern='(\\d{2})(\\d{6})', format='\\1 \\2', 
leading_digits_pattern=['1|47'], national_prefix_formatting_rule='(0\\1)'),
-        NumberFormat(pattern='(\\d{2})(\\d{6})', format='\\1 \\2', 
leading_digits_pattern=['[4-9]'], national_prefix_formatting_rule='0\\1')],
+        NumberFormat(pattern='(\\d{2})(\\d{6})', format='\\1 \\2', 
leading_digits_pattern=['[3-9]'], national_prefix_formatting_rule='0\\1')],
     mobile_number_portable_region=True)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/phonenumbers-8.10.15/phonenumbers/data/region_AU.py 
new/phonenumbers-8.10.18/phonenumbers/data/region_AU.py
--- old/phonenumbers-8.10.15/phonenumbers/data/region_AU.py     2019-07-16 
09:00:01.000000000 +0200
+++ new/phonenumbers-8.10.18/phonenumbers/data/region_AU.py     2019-09-06 
08:30:00.000000000 +0200
@@ -4,7 +4,7 @@
 PHONE_METADATA_AU = PhoneMetadata(id='AU', country_code=61, 
international_prefix='001[14-689]|14(?:1[14]|34|4[17]|[56]6|7[47]|88)0011',
     
general_desc=PhoneNumberDesc(national_number_pattern='1(?:[0-79]\\d{7,8}|8[0-24-9]\\d{7})|(?:[2-478]\\d\\d|550)\\d{6}|1\\d{4,7}',
 possible_length=(5, 6, 7, 8, 9, 10), possible_length_local_only=(8,)),
     
fixed_line=PhoneNumberDesc(national_number_pattern='(?:[237]\\d{5}|8(?:51(?:0(?:0[03-9]|[1247]\\d|3[2-9]|5[0-8]|6[1-9]|8[0-6])|1(?:1[69]|[23]\\d|4[0-4]))|(?:[6-8]\\d{3}|9(?:[02-9]\\d\\d|1(?:[0-57-9]\\d|6[0135-9])))\\d))\\d{3}',
 example_number='212345678', possible_length=(9,), 
possible_length_local_only=(8,)),
-    
mobile=PhoneNumberDesc(national_number_pattern='4(?:[0-3]\\d|4[047-9]|5[0-25-9]|6[06-9]|7[02-9]|8[0-2457-9]|9[017-9])\\d{6}',
 example_number='412345678', possible_length=(9,)),
+    
mobile=PhoneNumberDesc(national_number_pattern='483[0-3]\\d{5}|4(?:[0-3]\\d|4[047-9]|5[0-25-9]|6[06-9]|7[02-9]|8[0-2457-9]|9[017-9])\\d{6}',
 example_number='412345678', possible_length=(9,)),
     
toll_free=PhoneNumberDesc(national_number_pattern='180(?:0\\d{3}|2)\\d{3}', 
example_number='1800123456', possible_length=(7, 10)),
     premium_rate=PhoneNumberDesc(national_number_pattern='190[0-26]\\d{6}', 
example_number='1900123456', possible_length=(10,)),
     
shared_cost=PhoneNumberDesc(national_number_pattern='13(?:00\\d{3}|45[0-4])\\d{3}|13\\d{4}',
 example_number='1300123456', possible_length=(6, 8, 10)),
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/phonenumbers-8.10.15/phonenumbers/data/region_BR.py 
new/phonenumbers-8.10.18/phonenumbers/data/region_BR.py
--- old/phonenumbers-8.10.15/phonenumbers/data/region_BR.py     2019-07-16 
09:00:01.000000000 +0200
+++ new/phonenumbers-8.10.18/phonenumbers/data/region_BR.py     2019-09-06 
08:30:00.000000000 +0200
@@ -12,7 +12,7 @@
     national_prefix='0',
     
national_prefix_for_parsing='0(?:(1[245]|2[1-35]|31|4[13]|[56]5|99)(\\d{10,11}))?',
     national_prefix_transform_rule='\\2',
-    number_format=[NumberFormat(pattern='(\\d{3,6})', format='\\1', 
leading_digits_pattern=['1(?:1[25-8]|2[357-9]|3[02-68]|4[12568]|5|6[0-8]|8[015]|9[0-47-9])|610']),
+    number_format=[NumberFormat(pattern='(\\d{3,6})', format='\\1', 
leading_digits_pattern=['1(?:1[25-8]|2[357-9]|3[02-68]|4[12568]|5|6[0-8]|8[015]|9[0-47-9])|321|610']),
         NumberFormat(pattern='(\\d{4})(\\d{4})', format='\\1-\\2', 
leading_digits_pattern=['300|4(?:0[02]|37)', '4(?:02|37)0|[34]00']),
         NumberFormat(pattern='(\\d{4})(\\d{4})', format='\\1-\\2', 
leading_digits_pattern=['[2-57]', '[2357]|4(?:[0-24-9]|3(?:[0-689]|7[1-9]))']),
         NumberFormat(pattern='(\\d{3})(\\d{2,3})(\\d{4})', format='\\1 \\2 
\\3', leading_digits_pattern=['(?:[358]|90)0'], 
national_prefix_formatting_rule='0\\1'),
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/phonenumbers-8.10.15/phonenumbers/data/region_CC.py 
new/phonenumbers-8.10.18/phonenumbers/data/region_CC.py
--- old/phonenumbers-8.10.15/phonenumbers/data/region_CC.py     2019-07-16 
09:00:01.000000000 +0200
+++ new/phonenumbers-8.10.18/phonenumbers/data/region_CC.py     2019-09-06 
08:30:00.000000000 +0200
@@ -4,7 +4,7 @@
 PHONE_METADATA_CC = PhoneMetadata(id='CC', country_code=61, 
international_prefix='001[14-689]|14(?:1[14]|34|4[17]|[56]6|7[47]|88)0011',
     
general_desc=PhoneNumberDesc(national_number_pattern='1(?:[0-79]\\d|8[0-24-9])\\d{7}|(?:[148]\\d\\d|550)\\d{6}|1\\d{5,7}',
 possible_length=(6, 7, 8, 9, 10), possible_length_local_only=(8,)),
     
fixed_line=PhoneNumberDesc(national_number_pattern='8(?:51(?:0(?:02|31|60)|118)|91(?:0(?:1[0-2]|29)|1(?:[28]2|50|79)|2(?:10|64)|3(?:[06]8|22)|4[29]8|62\\d|70[23]|959))\\d{3}',
 example_number='891621234', possible_length=(9,), 
possible_length_local_only=(8,)),
-    
mobile=PhoneNumberDesc(national_number_pattern='4(?:[0-3]\\d|4[047-9]|5[0-25-9]|6[06-9]|7[02-9]|8[0-2457-9]|9[017-9])\\d{6}',
 example_number='412345678', possible_length=(9,)),
+    
mobile=PhoneNumberDesc(national_number_pattern='483[0-3]\\d{5}|4(?:[0-3]\\d|4[047-9]|5[0-25-9]|6[06-9]|7[02-9]|8[0-2457-9]|9[017-9])\\d{6}',
 example_number='412345678', possible_length=(9,)),
     
toll_free=PhoneNumberDesc(national_number_pattern='180(?:0\\d{3}|2)\\d{3}', 
example_number='1800123456', possible_length=(7, 10)),
     premium_rate=PhoneNumberDesc(national_number_pattern='190[0-26]\\d{6}', 
example_number='1900123456', possible_length=(10,)),
     
shared_cost=PhoneNumberDesc(national_number_pattern='13(?:00\\d{3}|45[0-4])\\d{3}|13\\d{4}',
 example_number='1300123456', possible_length=(6, 8, 10)),
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/phonenumbers-8.10.15/phonenumbers/data/region_CL.py 
new/phonenumbers-8.10.18/phonenumbers/data/region_CL.py
--- old/phonenumbers-8.10.15/phonenumbers/data/region_CL.py     2019-07-16 
09:00:01.000000000 +0200
+++ new/phonenumbers-8.10.18/phonenumbers/data/region_CL.py     2019-09-06 
08:30:00.000000000 +0200
@@ -3,8 +3,8 @@
 
 PHONE_METADATA_CL = PhoneMetadata(id='CL', country_code=56, 
international_prefix='(?:0|1(?:1[0-69]|2[0-57]|5[13-58]|69|7[0167]|8[018]))0',
     
general_desc=PhoneNumberDesc(national_number_pattern='12300\\d{6}|6\\d{9,10}|[2-9]\\d{8}',
 possible_length=(9, 10, 11)),
-    
fixed_line=PhoneNumberDesc(national_number_pattern='21962\\d{4}|(?:232[0-8]|80[1-9]\\d)\\d{5}|(?:22|3[2-5]|[47][1-35]|5[1-3578]|6[13-57]|8[1-9]|9[2-9])\\d{7}',
 example_number='221234567', possible_length=(9,)),
-    
mobile=PhoneNumberDesc(national_number_pattern='21962\\d{4}|(?:232[0-8]|80[1-9]\\d)\\d{5}|(?:22|3[2-5]|[47][1-35]|5[1-3578]|6[13-57]|8[1-9]|9[2-9])\\d{7}',
 example_number='221234567', possible_length=(9,)),
+    
fixed_line=PhoneNumberDesc(national_number_pattern='(?:2(?:1962|3(?:2\\d\\d|300))|80[1-9]\\d\\d)\\d{4}|(?:22|3[2-5]|[47][1-35]|5[1-3578]|6[13-57]|8[1-9]|9[2-9])\\d{7}',
 example_number='221234567', possible_length=(9,)),
+    
mobile=PhoneNumberDesc(national_number_pattern='(?:2(?:1962|3(?:2\\d\\d|300))|80[1-9]\\d\\d)\\d{4}|(?:22|3[2-5]|[47][1-35]|5[1-3578]|6[13-57]|8[1-9]|9[2-9])\\d{7}',
 example_number='221234567', possible_length=(9,)),
     toll_free=PhoneNumberDesc(national_number_pattern='(?:123|8)00\\d{6}', 
example_number='800123456', possible_length=(9, 11)),
     shared_cost=PhoneNumberDesc(national_number_pattern='600\\d{7,8}', 
example_number='6001234567', possible_length=(10, 11)),
     voip=PhoneNumberDesc(national_number_pattern='44\\d{7}', 
example_number='441234567', possible_length=(9,)),
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/phonenumbers-8.10.15/phonenumbers/data/region_CX.py 
new/phonenumbers-8.10.18/phonenumbers/data/region_CX.py
--- old/phonenumbers-8.10.15/phonenumbers/data/region_CX.py     2019-07-16 
09:00:01.000000000 +0200
+++ new/phonenumbers-8.10.18/phonenumbers/data/region_CX.py     2019-09-06 
08:30:00.000000000 +0200
@@ -4,7 +4,7 @@
 PHONE_METADATA_CX = PhoneMetadata(id='CX', country_code=61, 
international_prefix='001[14-689]|14(?:1[14]|34|4[17]|[56]6|7[47]|88)0011',
     
general_desc=PhoneNumberDesc(national_number_pattern='1(?:[0-79]\\d|8[0-24-9])\\d{7}|(?:[148]\\d\\d|550)\\d{6}|1\\d{5,7}',
 possible_length=(6, 7, 8, 9, 10), possible_length_local_only=(8,)),
     
fixed_line=PhoneNumberDesc(national_number_pattern='8(?:51(?:0(?:01|30|59)|117)|91(?:00[6-9]|1(?:[28]1|49|78)|2(?:09|63)|3(?:12|26|75)|4(?:56|97)|64\\d|7(?:0[01]|1[0-2])|958))\\d{3}',
 example_number='891641234', possible_length=(9,), 
possible_length_local_only=(8,)),
-    
mobile=PhoneNumberDesc(national_number_pattern='4(?:[0-3]\\d|4[047-9]|5[0-25-9]|6[06-9]|7[02-9]|8[0-2457-9]|9[017-9])\\d{6}',
 example_number='412345678', possible_length=(9,)),
+    
mobile=PhoneNumberDesc(national_number_pattern='483[0-3]\\d{5}|4(?:[0-3]\\d|4[047-9]|5[0-25-9]|6[06-9]|7[02-9]|8[0-2457-9]|9[017-9])\\d{6}',
 example_number='412345678', possible_length=(9,)),
     
toll_free=PhoneNumberDesc(national_number_pattern='180(?:0\\d{3}|2)\\d{3}', 
example_number='1800123456', possible_length=(7, 10)),
     premium_rate=PhoneNumberDesc(national_number_pattern='190[0-26]\\d{6}', 
example_number='1900123456', possible_length=(10,)),
     
shared_cost=PhoneNumberDesc(national_number_pattern='13(?:00\\d{3}|45[0-4])\\d{3}|13\\d{4}',
 example_number='1300123456', possible_length=(6, 8, 10)),
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/phonenumbers-8.10.15/phonenumbers/data/region_GB.py 
new/phonenumbers-8.10.18/phonenumbers/data/region_GB.py
--- old/phonenumbers-8.10.15/phonenumbers/data/region_GB.py     2019-07-16 
09:00:01.000000000 +0200
+++ new/phonenumbers-8.10.18/phonenumbers/data/region_GB.py     2019-09-06 
08:30:00.000000000 +0200
@@ -3,7 +3,7 @@
 
 PHONE_METADATA_GB = PhoneMetadata(id='GB', country_code=44, 
international_prefix='00',
     
general_desc=PhoneNumberDesc(national_number_pattern='[1-357-9]\\d{9}|[18]\\d{8}|8\\d{6}',
 possible_length=(7, 9, 10), possible_length_local_only=(4, 5, 6, 7, 8)),
-    
fixed_line=PhoneNumberDesc(national_number_pattern='(?:1(?:1(?:3[0-58]|4[0-5]|5[0-26-9]|6[0-4]|[78][0-49])|2(?:0[024-9]|1[0-7]|2[3-9]|3[3-79]|4[1-689]|[58][02-9]|6[0-47-9]|7[013-9]|9\\d)|3(?:0\\d|1[0-8]|[25][02-9]|3[02-579]|[468][0-46-9]|7[1-35-79]|9[2-578])|4(?:0[03-9]|[137]\\d|[28][02-57-9]|4[02-69]|5[0-8]|[69][0-79])|5(?:0[1-35-9]|[16]\\d|2[024-9]|3[015689]|4[02-9]|5[03-9]|7[0-35-9]|8[0-468]|9[0-57-9])|6(?:0[034689]|1\\d|2[0-35689]|[38][013-9]|4[1-467]|5[0-69]|6[13-9]|7[0-8]|9[0-24578])|7(?:0[0246-9]|2\\d|3[0236-8]|4[03-9]|5[0-46-9]|6[013-9]|7[0-35-9]|8[024-9]|9[02-9])|8(?:0[35-9]|2[1-57-9]|3[02-578]|4[0-578]|5[124-9]|6[2-69]|7\\d|8[02-9]|9[02569])|9(?:0[02-589]|[18]\\d|2[02-689]|3[1-57-9]|4[2-9]|5[0-579]|6[2-47-9]|7[0-24578]|9[2-57]))|2(?:0[01378]|3[0189]|4[017]|8[0-46-9]|9[0-2])\\d)\\d{6}|1(?:(?:2(?:0(?:46[1-4]|87[2-9])|545[1-79]|76(?:2\\d|3[1-8]|6[1-6])|9(?:7(?:2[0-4]|3[2-5])|8(?:2[2-8]|7[0-47-9]|8[3-5])))|3(?:6(?:38[2-5]|47[23])|8(?:47[04-9]|64[0157-9]))|4(?:044[1-7]|20(?:2[23]|8\\d)|6(?:0(?:30|5[2-57]|6[1-8]|7[2-8])|140)|8(?:052|87[1-3]))|5(?:2(?:4(?:3[2-79]|6\\d)|76\\d)|6(?:26[06-9]|686))|6(?:06(?:4\\d|7[4-79])|295[5-7]|35[34]\\d|47(?:24|61)|59(?:5[08]|6[67]|74)|9(?:55[0-4]|77[23]))|8(?:27[56]\\d|37(?:5[2-5]|8[239])|843[2-58])|9(?:0(?:0(?:6[1-8]|85)|52\\d)|3583|4(?:66[1-8]|9(?:2[01]|81))|63(?:23|3[1-4])|9561))\\d|7(?:(?:26(?:6[13-9]|7[0-7])|442\\d|50(?:2[0-3]|[3-68]2|76))\\d|6888[2-46-8]))\\d\\d',
 example_number='1212345678', possible_length=(9, 10), 
possible_length_local_only=(4, 5, 6, 7, 8)),
+    
fixed_line=PhoneNumberDesc(national_number_pattern='(?:1(?:(?:1(?:3[0-58]|4[0-5]|5[0-26-9]|6[0-4]|[78][0-49])|3(?:0\\d|1[0-8]|[25][02-9]|3[02-579]|[468][0-46-9]|7[1-35-79]|9[2-578])|4(?:0[03-9]|[137]\\d|[28][02-57-9]|4[02-69]|5[0-8]|[69][0-79])|5(?:0[1-35-9]|[16]\\d|2[024-9]|3[015689]|4[02-9]|5[03-9]|7[0-35-9]|8[0-468]|9[0-57-9])|6(?:0[034689]|1\\d|2[0-35689]|[38][013-9]|4[1-467]|5[0-69]|6[13-9]|7[0-8]|9[0-24578])|7(?:0[0246-9]|2\\d|3[0236-8]|4[03-9]|5[0-46-9]|6[013-9]|7[0-35-9]|8[024-9]|9[02-9])|8(?:0[35-9]|2[1-57-9]|3[02-578]|4[0-578]|5[124-9]|6[2-69]|7\\d|8[02-9]|9[02569])|9(?:0[02-589]|[18]\\d|2[02-689]|3[1-57-9]|4[2-9]|5[0-579]|6[2-47-9]|7[0-24578]|9[2-57]))\\d\\d|2(?:(?:0[024-9]|2[3-9]|3[3-79]|4[1-689]|[58][02-9]|6[0-47-9]|7[013-9]|9\\d)\\d\\d|1(?:[0-7]\\d\\d|80[04589])))|2(?:0[01378]|3[0189]|4[017]|8[0-46-9]|9[0-2])\\d{3})\\d{4}|1(?:(?:2(?:0(?:46[1-4]|87[2-9])|545[1-79]|76(?:2\\d|3[1-8]|6[1-6])|9(?:7(?:2[0-4]|3[2-5])|8(?:2[2-8]|7[0-47-9]|8[3-5])))|3(?:6(?:38[2-5]|47[23])|8(?:47[04-9]|64[0157-9]))|4(?:044[1-7]|20(?:2[23]|8\\d)|6(?:0(?:30|5[2-57]|6[1-8]|7[2-8])|140)|8(?:052|87[1-3]))|5(?:2(?:4(?:3[2-79]|6\\d)|76\\d)|6(?:26[06-9]|686))|6(?:06(?:4\\d|7[4-79])|295[5-7]|35[34]\\d|47(?:24|61)|59(?:5[08]|6[67]|74)|9(?:55[0-4]|77[23]))|8(?:27[56]\\d|37(?:5[2-5]|8[239])|843[2-58])|9(?:0(?:0(?:6[1-8]|85)|52\\d)|3583|4(?:66[1-8]|9(?:2[01]|81))|63(?:23|3[1-4])|9561))\\d|7(?:(?:26(?:6[13-9]|7[0-7])|442\\d|50(?:2[0-3]|[3-68]2|76))\\d|6888[2-46-8]))\\d\\d',
 example_number='1212345678', possible_length=(9, 10), 
possible_length_local_only=(4, 5, 6, 7, 8)),
     
mobile=PhoneNumberDesc(national_number_pattern='7(?:457[0-57-9]|700[01]|911[028])\\d{5}|7(?:[1-3]\\d\\d|4(?:[0-46-9]\\d|5[0-689])|5(?:0[0-8]|[13-9]\\d|2[0-35-9])|7(?:0[1-9]|[1-7]\\d|8[02-9]|9[0-689])|8(?:[014-9]\\d|[23][0-8])|9(?:[024-9]\\d|1[02-9]|3[0-689]))\\d{6}',
 example_number='7400123456', possible_length=(10,)),
     
toll_free=PhoneNumberDesc(national_number_pattern='80[08]\\d{7}|800\\d{6}|8001111',
 example_number='8001234567', possible_length=(7, 9, 10)),
     
premium_rate=PhoneNumberDesc(national_number_pattern='(?:8(?:4[2-5]|7[0-3])|9(?:[01]\\d|8[2-49]))\\d{7}|845464\\d',
 example_number='9012345678', possible_length=(7, 10)),
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/phonenumbers-8.10.15/phonenumbers/data/region_HU.py 
new/phonenumbers-8.10.18/phonenumbers/data/region_HU.py
--- old/phonenumbers-8.10.15/phonenumbers/data/region_HU.py     2019-07-16 
09:00:01.000000000 +0200
+++ new/phonenumbers-8.10.18/phonenumbers/data/region_HU.py     2019-09-06 
08:30:00.000000000 +0200
@@ -12,6 +12,6 @@
     
no_international_dialling=PhoneNumberDesc(national_number_pattern='[48]0\\d{6}',
 possible_length=(8,)),
     national_prefix='06',
     national_prefix_for_parsing='06',
-    number_format=[NumberFormat(pattern='(\\d)(\\d{3})(\\d{4})', format='\\1 
\\2 \\3', leading_digits_pattern=['1'], 
national_prefix_formatting_rule='(\\1)'),
-        NumberFormat(pattern='(\\d{2})(\\d{3})(\\d{3,4})', format='\\1 \\2 
\\3', leading_digits_pattern=['[2-9]'], 
national_prefix_formatting_rule='(\\1)')],
+    number_format=[NumberFormat(pattern='(\\d)(\\d{3})(\\d{4})', format='\\1 
\\2 \\3', leading_digits_pattern=['1'], national_prefix_formatting_rule='(06 
\\1)'),
+        NumberFormat(pattern='(\\d{2})(\\d{3})(\\d{3,4})', format='\\1 \\2 
\\3', leading_digits_pattern=['[2-9]'], national_prefix_formatting_rule='06 
\\1')],
     mobile_number_portable_region=True)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/phonenumbers-8.10.15/phonenumbers/data/region_IL.py 
new/phonenumbers-8.10.18/phonenumbers/data/region_IL.py
--- old/phonenumbers-8.10.15/phonenumbers/data/region_IL.py     2019-07-16 
09:00:01.000000000 +0200
+++ new/phonenumbers-8.10.18/phonenumbers/data/region_IL.py     2019-09-06 
08:30:00.000000000 +0200
@@ -4,11 +4,11 @@
 PHONE_METADATA_IL = PhoneMetadata(id='IL', country_code=972, 
international_prefix='0(?:0|1[2-9])',
     
general_desc=PhoneNumberDesc(national_number_pattern='1\\d{6}(?:\\d{3,5})?|[57]\\d{8}|[1-489]\\d{7}',
 possible_length=(7, 8, 9, 10, 11, 12), possible_length_local_only=(7,)),
     
fixed_line=PhoneNumberDesc(national_number_pattern='153\\d{8,9}|[2-489]\\d{7}', 
example_number='21234567', possible_length=(8, 11, 12), 
possible_length_local_only=(7,)),
-    
mobile=PhoneNumberDesc(national_number_pattern='5(?:(?:[0-489][2-9]|6\\d)\\d|5(?:01|2[2-5]|3[23]|4[45]|5[05689]|6[6-8]|7[0-267]|8[7-9]|9[1-9]))\\d{5}',
 example_number='502345678', possible_length=(9,)),
+    
mobile=PhoneNumberDesc(national_number_pattern='5(?:(?:[0-489][2-9]|6\\d)\\d|5(?:01|2[2-6]|3[23]|4[45]|5[05689]|6[6-8]|7[0-267]|8[7-9]|9[1-9]))\\d{5}',
 example_number='502345678', possible_length=(9,)),
     
toll_free=PhoneNumberDesc(national_number_pattern='1(?:255|80[019]\\d{3})\\d{3}',
 example_number='1800123456', possible_length=(7, 10)),
     
premium_rate=PhoneNumberDesc(national_number_pattern='1212\\d{4}|1(?:200|9(?:0[01]|19))\\d{6}',
 example_number='1919123456', possible_length=(8, 10)),
     shared_cost=PhoneNumberDesc(national_number_pattern='1700\\d{6}', 
example_number='1700123456', possible_length=(10,)),
-    
voip=PhoneNumberDesc(national_number_pattern='78(?:33|55|77|81)\\d{5}|7(?:18|2[23]|3[237]|47|6[58]|7\\d|82|9[2357-9])\\d{6}',
 example_number='771234567', possible_length=(9,)),
+    
voip=PhoneNumberDesc(national_number_pattern='78(?:33|55|77|81)\\d{5}|7(?:18|2[23]|3[237]|47|6[58]|7\\d|82|9[235-9])\\d{6}',
 example_number='771234567', possible_length=(9,)),
     uan=PhoneNumberDesc(national_number_pattern='1599\\d{6}', 
example_number='1599123456', possible_length=(10,)),
     voicemail=PhoneNumberDesc(national_number_pattern='151\\d{8,9}', 
example_number='15112340000', possible_length=(11, 12)),
     
no_international_dialling=PhoneNumberDesc(national_number_pattern='1700\\d{6}', 
possible_length=(10,)),
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/phonenumbers-8.10.15/phonenumbers/data/region_KG.py 
new/phonenumbers-8.10.18/phonenumbers/data/region_KG.py
--- old/phonenumbers-8.10.15/phonenumbers/data/region_KG.py     2019-07-16 
09:00:01.000000000 +0200
+++ new/phonenumbers-8.10.18/phonenumbers/data/region_KG.py     2019-09-06 
08:30:00.000000000 +0200
@@ -2,12 +2,12 @@
 from ..phonemetadata import NumberFormat, PhoneNumberDesc, PhoneMetadata
 
 PHONE_METADATA_KG = PhoneMetadata(id='KG', country_code=996, 
international_prefix='00',
-    
general_desc=PhoneNumberDesc(national_number_pattern='(?:[235-7]\\d|99)\\d{7}|800\\d{6,7}',
 possible_length=(9, 10), possible_length_local_only=(5, 6)),
+    
general_desc=PhoneNumberDesc(national_number_pattern='8\\d{9}|(?:[235-8]\\d|99)\\d{7}',
 possible_length=(9, 10), possible_length_local_only=(5, 6)),
     
fixed_line=PhoneNumberDesc(national_number_pattern='(?:3(?:1(?:[256]\\d|3[1-9]|47)|2(?:22|3[0-479]|6[0-7])|4(?:22|5[6-9]|6\\d)|5(?:22|3[4-7]|59|6\\d)|6(?:22|5[35-7]|6\\d)|7(?:22|3[468]|4[1-9]|59|[67]\\d)|9(?:22|4[1-8]|6\\d))|6(?:09|12|2[2-4])\\d)\\d{5}',
 example_number='312123456', possible_length=(9,), 
possible_length_local_only=(5, 6)),
-    
mobile=PhoneNumberDesc(national_number_pattern='(?:2(?:0[0-35]|2\\d)|5(?:0[0-57-9]|[124-7]\\d)|7(?:[07]\\d|55)|99[69])\\d{6}',
 example_number='700123456', possible_length=(9,)),
+    
mobile=PhoneNumberDesc(national_number_pattern='8801\\d{5}|(?:2(?:0[0-35]|2\\d)|5(?:0[0-57-9]|[124-7]\\d)|7(?:[07]\\d|55)|99[05-9])\\d{6}',
 example_number='700123456', possible_length=(9,)),
     toll_free=PhoneNumberDesc(national_number_pattern='800\\d{6,7}', 
example_number='800123456', possible_length=(9, 10)),
     national_prefix='0',
     national_prefix_for_parsing='0',
     number_format=[NumberFormat(pattern='(\\d{4})(\\d{5})', format='\\1 \\2', 
leading_digits_pattern=['3(?:1[346]|[24-79])'], 
national_prefix_formatting_rule='0\\1'),
-        NumberFormat(pattern='(\\d{3})(\\d{3})(\\d{3})', format='\\1 \\2 \\3', 
leading_digits_pattern=['[235-79]'], national_prefix_formatting_rule='0\\1'),
+        NumberFormat(pattern='(\\d{3})(\\d{3})(\\d{3})', format='\\1 \\2 \\3', 
leading_digits_pattern=['[235-79]|88'], national_prefix_formatting_rule='0\\1'),
         NumberFormat(pattern='(\\d{3})(\\d{3})(\\d)(\\d{2,3})', format='\\1 
\\2 \\3 \\4', leading_digits_pattern=['8'], 
national_prefix_formatting_rule='0\\1')])
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/phonenumbers-8.10.15/phonenumbers/data/region_KR.py 
new/phonenumbers-8.10.18/phonenumbers/data/region_KR.py
--- old/phonenumbers-8.10.15/phonenumbers/data/region_KR.py     2019-07-16 
09:00:01.000000000 +0200
+++ new/phonenumbers-8.10.18/phonenumbers/data/region_KR.py     2019-09-06 
08:30:00.000000000 +0200
@@ -4,7 +4,7 @@
 PHONE_METADATA_KR = PhoneMetadata(id='KR', country_code=82, 
international_prefix='00(?:[125689]|3(?:[46]5|91)|7(?:00|27|3|55|6[126]))',
     
general_desc=PhoneNumberDesc(national_number_pattern='00[1-9]\\d{8,11}|(?:[12]|5\\d{3})\\d{7}|[13-6]\\d{9}|(?:[1-6]\\d|80)\\d{7}|[3-6]\\d{4,5}|(?:00|7)0\\d{8}',
 possible_length=(5, 6, 8, 9, 10, 11, 12, 13, 14), 
possible_length_local_only=(3, 4, 7)),
     
fixed_line=PhoneNumberDesc(national_number_pattern='(?:2|3[1-3]|[46][1-4]|5[1-5])[1-9]\\d{6,7}|(?:3[1-3]|[46][1-4]|5[1-5])1\\d{2,3}',
 example_number='22123456', possible_length=(5, 6, 8, 9, 10), 
possible_length_local_only=(3, 4, 7)),
-    mobile=PhoneNumberDesc(national_number_pattern='1[0-26-9]\\d{7,8}', 
example_number='1000000000', possible_length=(9, 10)),
+    
mobile=PhoneNumberDesc(national_number_pattern='10[01]\\d{6}|1(?:0[2-9]|[126-9]\\d)\\d{6,7}',
 example_number='1020000000', possible_length=(9, 10)),
     
toll_free=PhoneNumberDesc(national_number_pattern='00(?:308\\d{6,7}|798\\d{7,9})|(?:00368|80)\\d{7}',
 example_number='801234567', possible_length=(9, 11, 12, 13, 14)),
     premium_rate=PhoneNumberDesc(national_number_pattern='60[2-9]\\d{6}', 
example_number='602345678', possible_length=(9,)),
     personal_number=PhoneNumberDesc(national_number_pattern='50\\d{8,9}', 
example_number='5012345678', possible_length=(10, 11)),
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/phonenumbers-8.10.15/phonenumbers/data/region_KW.py 
new/phonenumbers-8.10.18/phonenumbers/data/region_KW.py
--- old/phonenumbers-8.10.15/phonenumbers/data/region_KW.py     2019-07-16 
09:00:01.000000000 +0200
+++ new/phonenumbers-8.10.18/phonenumbers/data/region_KW.py     2019-09-06 
08:30:00.000000000 +0200
@@ -4,7 +4,7 @@
 PHONE_METADATA_KW = PhoneMetadata(id='KW', country_code=965, 
international_prefix='00',
     
general_desc=PhoneNumberDesc(national_number_pattern='(?:18|[2569]\\d\\d)\\d{5}',
 possible_length=(7, 8)),
     
fixed_line=PhoneNumberDesc(national_number_pattern='2(?:[23]\\d\\d|4(?:[1-35-9]\\d|44)|5(?:0[034]|[2-46]\\d|5[1-3]|7[1-7]))\\d{4}',
 example_number='22345678', possible_length=(8,)),
-    
mobile=PhoneNumberDesc(national_number_pattern='(?:52(?:22|5[25])|6(?:222|70[013-9]|93[039])|9(?:11[01]|702))\\d{4}|(?:5(?:[05]\\d|1[0-7]|6[56])|6(?:0[034679]|5[015-9]|6\\d|7[67]|9[069])|9(?:0[09]|22|4[01479]|55|6[0679]|7[1-9]|8[057-9]|9\\d))\\d{5}',
 example_number='50012345', possible_length=(8,)),
+    
mobile=PhoneNumberDesc(national_number_pattern='(?:52(?:22|5[25])|6(?:222|70[013-9]|93[039])|9(?:11[01]|333|702))\\d{4}|(?:5(?:[05]\\d|1[0-7]|6[56])|6(?:0[034679]|5[015-9]|6\\d|7[67]|9[069])|9(?:0[09]|22|4[01479]|55|6[0679]|7[1-9]|8[057-9]|9\\d))\\d{5}',
 example_number='50012345', possible_length=(8,)),
     toll_free=PhoneNumberDesc(national_number_pattern='18\\d{5}', 
example_number='1801234', possible_length=(7,)),
     number_format=[NumberFormat(pattern='(\\d{4})(\\d{3,4})', format='\\1 
\\2', leading_digits_pattern=['[169]|2(?:[235]|4[1-35-9])|52']),
         NumberFormat(pattern='(\\d{3})(\\d{5})', format='\\1 \\2', 
leading_digits_pattern=['[25]'])],
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/phonenumbers-8.10.15/phonenumbers/data/region_MK.py 
new/phonenumbers-8.10.18/phonenumbers/data/region_MK.py
--- old/phonenumbers-8.10.15/phonenumbers/data/region_MK.py     2019-07-16 
09:00:01.000000000 +0200
+++ new/phonenumbers-8.10.18/phonenumbers/data/region_MK.py     2019-09-06 
08:30:00.000000000 +0200
@@ -4,7 +4,7 @@
 PHONE_METADATA_MK = PhoneMetadata(id='MK', country_code=389, 
international_prefix='00',
     general_desc=PhoneNumberDesc(national_number_pattern='[2-578]\\d{7}', 
possible_length=(8,), possible_length_local_only=(6, 7)),
     
fixed_line=PhoneNumberDesc(national_number_pattern='(?:2(?:[23]\\d|5[0-24578]|6[01]|82)|3(?:1[3-68]|[23][2-68]|4[23568])|4(?:[23][2-68]|4[3-68]|5[2568]|6[25-8]|7[24-68]|8[4-68]))\\d{5}',
 example_number='22012345', possible_length=(8,), 
possible_length_local_only=(6, 7)),
-    
mobile=PhoneNumberDesc(national_number_pattern='7(?:(?:[0-25-8]\\d|3[2-4]|9[23])\\d|421)\\d{4}',
 example_number='72345678', possible_length=(8,)),
+    
mobile=PhoneNumberDesc(national_number_pattern='7(?:(?:[0-25-8]\\d|3[2-4]|9[23])\\d|4(?:21|60))\\d{4}',
 example_number='72345678', possible_length=(8,)),
     toll_free=PhoneNumberDesc(national_number_pattern='800\\d{5}', 
example_number='80012345', possible_length=(8,)),
     premium_rate=PhoneNumberDesc(national_number_pattern='5[02-9]\\d{6}', 
example_number='50012345', possible_length=(8,)),
     
shared_cost=PhoneNumberDesc(national_number_pattern='8(?:0[1-9]|[1-9]\\d)\\d{5}',
 example_number='80123456', possible_length=(8,)),
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/phonenumbers-8.10.15/phonenumbers/data/region_MM.py 
new/phonenumbers-8.10.18/phonenumbers/data/region_MM.py
--- old/phonenumbers-8.10.15/phonenumbers/data/region_MM.py     2019-07-16 
09:00:01.000000000 +0200
+++ new/phonenumbers-8.10.18/phonenumbers/data/region_MM.py     2019-09-06 
08:30:00.000000000 +0200
@@ -4,7 +4,7 @@
 PHONE_METADATA_MM = PhoneMetadata(id='MM', country_code=95, 
international_prefix='00',
     
general_desc=PhoneNumberDesc(national_number_pattern='1\\d{5,7}|95\\d{6}|(?:[4-7]|9[0-46-9])\\d{6,8}|(?:2|8\\d)\\d{5,8}',
 possible_length=(6, 7, 8, 9, 10), possible_length_local_only=(5,)),
     
fixed_line=PhoneNumberDesc(national_number_pattern='(?:1(?:(?:2\\d|3[56]|[89][0-6])\\d|4(?:2[2-469]|39|46|6[25]|7[0-2])|6)|2(?:2(?:00|8[34])|4(?:0\\d|2[246]|39|46|62|7[0-2])|51\\d\\d)|4(?:2(?:2\\d\\d|48[0-2])|[34]20\\d)|6(?:0(?:[23]|88\\d)|(?:124|320|[56]2\\d)\\d|247[23]|4(?:2[04]\\d|47[23])|7(?:(?:3\\d|8[01459])\\d|4(?:39|60|7[01])))|8(?:[1-3]2\\d|5(?:2\\d|4[1-9]|51))\\d)\\d{4}|5(?:2(?:2\\d{5,6}|47[023]\\d{4})|(?:347[23]|42(?:1|86)|(?:522|[68]20)\\d|7(?:20\\d|48[0-2])|9(?:20\\d|47[01]))\\d{4})|7(?:120\\d{4,5}|(?:425\\d|5(?:202|96\\d))\\d{4})|(?:(?:1[2-6]\\d|4(?:2[24-8]|356|[46][2-6]|5[35])|5(?:[27][2-8]|3[2-68]|4[25-8]|5[23]|6[2-4]|8[25-7]|9[2-7])|6(?:[19]20|42[03-6]|(?:52|7[45])\\d)|7(?:[04][25-8]|[15][235-7]|22|3[2-4]))\\d|8(?:[135]2\\d\\d|2(?:2\\d\\d|320)))\\d{3}|25\\d{5,6}|(?:2[2-9]|43[235-7]|6(?:1[2356]|[24][2-6]|3[256]|5[2-4]|6[2-8]|7[235-7]|8[245]|9[24])|8(?:1[235689]|2[2-8]|32|4[24-7]|5[245]|6[23]))\\d{4}|(?:4[35]|5[48]|63|7[0145]|8[13])470\\d{4}|(?:4[35]|5[48]|63|7[0145]|8[13])4\\d{4}',
 example_number='1234567', possible_length=(6, 7, 8, 9), 
possible_length_local_only=(5,)),
-    
mobile=PhoneNumberDesc(national_number_pattern='(?:17[01]|9(?:2(?:[0-4]|[56]\\d\\d)|(?:3(?:[0-36]|4\\d)|(?:6[7-9]|89)\\d|7(?:3|5[0-2]|[6-9]\\d))\\d|4(?:(?:[0245]\\d|[1379])\\d|88)|5[0-6]|9(?:[089]|[5-7]\\d\\d))\\d)\\d{4}|9[69]1\\d{6}|9[68]\\d{6}',
 example_number='92123456', possible_length=(7, 8, 9, 10)),
+    
mobile=PhoneNumberDesc(national_number_pattern='(?:17[01]|9(?:2(?:[0-4]|[56]\\d\\d)|(?:3(?:[0-36]|4\\d)|6[7-9]\\d|7(?:3|5[0-2]|[6-9]\\d)|8(?:8[7-9]|9\\d))\\d|4(?:(?:[0245]\\d|[1379])\\d|88)|5[0-6]|9(?:[089]|[5-7]\\d\\d))\\d)\\d{4}|9[69]1\\d{6}|9[68]\\d{6}',
 example_number='92123456', possible_length=(7, 8, 9, 10)),
     
toll_free=PhoneNumberDesc(national_number_pattern='80080(?:[01][1-9]|2\\d)\\d{3}',
 example_number='8008001234', possible_length=(10,)),
     voip=PhoneNumberDesc(national_number_pattern='1333\\d{4}|[12]468\\d{4}', 
example_number='13331234', possible_length=(8,)),
     national_prefix='0',
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/phonenumbers-8.10.15/phonenumbers/data/region_MV.py 
new/phonenumbers-8.10.18/phonenumbers/data/region_MV.py
--- old/phonenumbers-8.10.15/phonenumbers/data/region_MV.py     2019-07-16 
09:00:01.000000000 +0200
+++ new/phonenumbers-8.10.18/phonenumbers/data/region_MV.py     2019-09-06 
08:30:01.000000000 +0200
@@ -4,10 +4,10 @@
 PHONE_METADATA_MV = PhoneMetadata(id='MV', country_code=960, 
international_prefix='0(?:0|19)',
     
general_desc=PhoneNumberDesc(national_number_pattern='(?:800|9[0-57-9]\\d)\\d{7}|[34679]\\d{6}',
 possible_length=(7, 10)),
     
fixed_line=PhoneNumberDesc(national_number_pattern='(?:3(?:0[0-3]|3[0-59])|6(?:[57][02468]|6[024-68]|8[024689]))\\d{4}',
 example_number='6701234', possible_length=(7,)),
-    
mobile=PhoneNumberDesc(national_number_pattern='46[46]\\d{4}|(?:7[2-9]|9[14-9])\\d{5}',
 example_number='7712345', possible_length=(7,)),
+    
mobile=PhoneNumberDesc(national_number_pattern='46[46]\\d{4}|(?:7[2-9]|9[13-9])\\d{5}',
 example_number='7712345', possible_length=(7,)),
     toll_free=PhoneNumberDesc(national_number_pattern='800\\d{7}', 
example_number='8001234567', possible_length=(10,)),
     premium_rate=PhoneNumberDesc(national_number_pattern='900\\d{7}', 
example_number='9001234567', possible_length=(10,)),
     uan=PhoneNumberDesc(national_number_pattern='4[05]0\\d{4}', 
example_number='4001234', possible_length=(7,)),
     preferred_international_prefix='00',
-    number_format=[NumberFormat(pattern='(\\d{3})(\\d{4})', format='\\1-\\2', 
leading_digits_pattern=['[3467]|9[14-9]']),
+    number_format=[NumberFormat(pattern='(\\d{3})(\\d{4})', format='\\1-\\2', 
leading_digits_pattern=['[3467]|9[13-9]']),
         NumberFormat(pattern='(\\d{3})(\\d{3})(\\d{4})', format='\\1 \\2 \\3', 
leading_digits_pattern=['[89]'])])
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/phonenumbers-8.10.15/phonenumbers/data/region_MX.py 
new/phonenumbers-8.10.18/phonenumbers/data/region_MX.py
--- old/phonenumbers-8.10.15/phonenumbers/data/region_MX.py     2019-07-16 
09:00:01.000000000 +0200
+++ new/phonenumbers-8.10.18/phonenumbers/data/region_MX.py     2019-09-06 
08:30:01.000000000 +0200
@@ -2,7 +2,7 @@
 from ..phonemetadata import NumberFormat, PhoneNumberDesc, PhoneMetadata
 
 PHONE_METADATA_MX = PhoneMetadata(id='MX', country_code=52, 
international_prefix='0[09]',
-    
general_desc=PhoneNumberDesc(national_number_pattern='(?:1\\d|[2-9])\\d{9}', 
possible_length=(10, 11), possible_length_local_only=(7, 8)),
+    
general_desc=PhoneNumberDesc(national_number_pattern='(?:1(?:[01467]\\d|[2359][1-9]|8[1-79])|[2-9]\\d)\\d{8}',
 possible_length=(10, 11), possible_length_local_only=(7, 8)),
     
fixed_line=PhoneNumberDesc(national_number_pattern='(?:2(?:0[01]|2[1-9]|3[1-35-8]|4[13-9]|7[1-689]|8[1-578]|9[467])|3(?:1[1-79]|[2458][1-9]|3\\d|7[1-8]|9[1-5])|4(?:1[1-57-9]|[24-7][1-9]|3[1-8]|8[1-35-9]|9[2-689])|5(?:[56]\\d|88|9[1-79])|6(?:1[2-68]|[2-4][1-9]|5[1-3689]|6[1-57-9]|7[1-7]|8[67]|9[4-8])|7(?:[1-467][1-9]|5[13-9]|8[1-69]|9[17])|8(?:1\\d|2[13-689]|3[1-6]|4[124-6]|6[1246-9]|7[1-378]|9[12479])|9(?:1[346-9]|2[1-4]|3[2-46-8]|5[1348]|[69][1-9]|7[12]|8[1-8]))\\d{7}',
 example_number='2001234567', possible_length=(10,), 
possible_length_local_only=(7, 8)),
     
mobile=PhoneNumberDesc(national_number_pattern='(?:1(?:2(?:2[1-9]|3[1-35-8]|4[13-9]|7[1-689]|8[1-578]|9[467])|3(?:1[1-79]|[2458][1-9]|3\\d|7[1-8]|9[1-5])|4(?:1[1-57-9]|[24-7][1-9]|3[1-8]|8[1-35-9]|9[2-689])|5(?:[56]\\d|88|9[1-79])|6(?:1[2-68]|[2-4][1-9]|5[1-3689]|6[1-57-9]|7[1-7]|8[67]|9[4-8])|7(?:[1-467][1-9]|5[13-9]|8[1-69]|9[17])|8(?:1\\d|2[13-689]|3[1-6]|4[124-6]|6[1246-9]|7[1-378]|9[12479])|9(?:1[346-9]|2[1-4]|3[2-46-8]|5[1348]|[69][1-9]|7[12]|8[1-8]))|2(?:2[1-9]|3[1-35-8]|4[13-9]|7[1-689]|8[1-578]|9[467])|3(?:1[1-79]|[2458][1-9]|3\\d|7[1-8]|9[1-5])|4(?:1[1-57-9]|[24-7][1-9]|3[1-8]|8[1-35-9]|9[2-689])|5(?:[56]\\d|88|9[1-79])|6(?:1[2-68]|[2-4][1-9]|5[1-3689]|6[1-57-9]|7[1-7]|8[67]|9[4-8])|7(?:[1-467][1-9]|5[13-9]|8[1-69]|9[17])|8(?:1\\d|2[13-689]|3[1-6]|4[124-6]|6[1246-9]|7[1-378]|9[12479])|9(?:1[346-9]|2[1-4]|3[2-46-8]|5[1348]|[69][1-9]|7[12]|8[1-8]))\\d{7}',
 example_number='12221234567', possible_length=(10, 11), 
possible_length_local_only=(7, 8)),
     toll_free=PhoneNumberDesc(national_number_pattern='8(?:00|88)\\d{7}', 
example_number='8001234567', possible_length=(10,)),
@@ -11,15 +11,14 @@
     personal_number=PhoneNumberDesc(national_number_pattern='500\\d{7}', 
example_number='5001234567', possible_length=(10,)),
     preferred_international_prefix='00',
     national_prefix='01',
-    national_prefix_for_parsing='0[12]|04[45]([2-9]\\d{9})$',
-    national_prefix_transform_rule='1\\1',
+    national_prefix_for_parsing='0(?:[12]|4[45])|1',
     number_format=[NumberFormat(pattern='(\\d{5})', format='\\1', 
leading_digits_pattern=['53']),
-        NumberFormat(pattern='(\\d{2})(\\d{4})(\\d{4})', format='\\1 \\2 \\3', 
leading_digits_pattern=['33|5[56]|81'], national_prefix_formatting_rule='01 
\\1', national_prefix_optional_when_formatting=True),
-        NumberFormat(pattern='(\\d{3})(\\d{3})(\\d{4})', format='\\1 \\2 \\3', 
leading_digits_pattern=['[2-9]'], national_prefix_formatting_rule='01 \\1', 
national_prefix_optional_when_formatting=True),
-        NumberFormat(pattern='(\\d)(\\d{2})(\\d{4})(\\d{4})', format='\\2 \\3 
\\4', leading_digits_pattern=['1(?:33|5[56]|81)'], 
national_prefix_formatting_rule='044 \\1'),
-        NumberFormat(pattern='(\\d)(\\d{3})(\\d{3})(\\d{4})', format='\\2 \\3 
\\4', leading_digits_pattern=['1'], national_prefix_formatting_rule='044 \\1')],
+        NumberFormat(pattern='(\\d{2})(\\d{4})(\\d{4})', format='\\1 \\2 \\3', 
leading_digits_pattern=['33|5[56]|81'], 
national_prefix_optional_when_formatting=True),
+        NumberFormat(pattern='(\\d{3})(\\d{3})(\\d{4})', format='\\1 \\2 \\3', 
leading_digits_pattern=['[2-9]'], 
national_prefix_optional_when_formatting=True),
+        NumberFormat(pattern='(\\d)(\\d{2})(\\d{4})(\\d{4})', format='\\2 \\3 
\\4', leading_digits_pattern=['1(?:33|5[56]|81)'], 
national_prefix_optional_when_formatting=True),
+        NumberFormat(pattern='(\\d)(\\d{3})(\\d{3})(\\d{4})', format='\\2 \\3 
\\4', leading_digits_pattern=['1'], 
national_prefix_optional_when_formatting=True)],
     intl_number_format=[NumberFormat(pattern='(\\d{2})(\\d{4})(\\d{4})', 
format='\\1 \\2 \\3', leading_digits_pattern=['33|5[56]|81']),
         NumberFormat(pattern='(\\d{3})(\\d{3})(\\d{4})', format='\\1 \\2 \\3', 
leading_digits_pattern=['[2-9]']),
-        NumberFormat(pattern='(\\d)(\\d{2})(\\d{4})(\\d{4})', format='\\1 \\2 
\\3 \\4', leading_digits_pattern=['1(?:33|5[56]|81)']),
-        NumberFormat(pattern='(\\d)(\\d{3})(\\d{3})(\\d{4})', format='\\1 \\2 
\\3 \\4', leading_digits_pattern=['1'])],
+        NumberFormat(pattern='(\\d)(\\d{2})(\\d{4})(\\d{4})', format='\\2 \\3 
\\4', leading_digits_pattern=['1(?:33|5[56]|81)']),
+        NumberFormat(pattern='(\\d)(\\d{3})(\\d{3})(\\d{4})', format='\\2 \\3 
\\4', leading_digits_pattern=['1'])],
     mobile_number_portable_region=True)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/phonenumbers-8.10.15/phonenumbers/data/region_NE.py 
new/phonenumbers-8.10.18/phonenumbers/data/region_NE.py
--- old/phonenumbers-8.10.15/phonenumbers/data/region_NE.py     2019-07-16 
09:00:01.000000000 +0200
+++ new/phonenumbers-8.10.18/phonenumbers/data/region_NE.py     2019-09-06 
08:30:01.000000000 +0200
@@ -4,7 +4,7 @@
 PHONE_METADATA_NE = PhoneMetadata(id='NE', country_code=227, 
international_prefix='00',
     general_desc=PhoneNumberDesc(national_number_pattern='[0289]\\d{7}', 
possible_length=(8,)),
     
fixed_line=PhoneNumberDesc(national_number_pattern='2(?:0(?:20|3[1-8]|4[13-5]|5[14]|6[14578]|7[1-578])|1(?:4[145]|5[14]|6[14-68]|7[169]|88))\\d{4}',
 example_number='20201234', possible_length=(8,)),
-    mobile=PhoneNumberDesc(national_number_pattern='(?:8[04589]|9\\d)\\d{6}', 
example_number='93123456', possible_length=(8,)),
+    mobile=PhoneNumberDesc(national_number_pattern='(?:8[014589]|9\\d)\\d{6}', 
example_number='93123456', possible_length=(8,)),
     toll_free=PhoneNumberDesc(national_number_pattern='08\\d{6}', 
example_number='08123456', possible_length=(8,)),
     premium_rate=PhoneNumberDesc(national_number_pattern='09\\d{6}', 
example_number='09123456', possible_length=(8,)),
     number_format=[NumberFormat(pattern='(\\d{2})(\\d{3})(\\d{3})', 
format='\\1 \\2 \\3', leading_digits_pattern=['08']),
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/phonenumbers-8.10.15/phonenumbers/data/region_SG.py 
new/phonenumbers-8.10.18/phonenumbers/data/region_SG.py
--- old/phonenumbers-8.10.15/phonenumbers/data/region_SG.py     2019-07-16 
09:00:01.000000000 +0200
+++ new/phonenumbers-8.10.18/phonenumbers/data/region_SG.py     2019-09-06 
08:30:01.000000000 +0200
@@ -4,17 +4,17 @@
 PHONE_METADATA_SG = PhoneMetadata(id='SG', country_code=65, 
international_prefix='0[0-3]\\d',
     
general_desc=PhoneNumberDesc(national_number_pattern='(?:(?:1\\d|8)\\d\\d|7000)\\d{7}|[3689]\\d{7}',
 possible_length=(8, 10, 11)),
     fixed_line=PhoneNumberDesc(national_number_pattern='6[1-9]\\d{6}', 
example_number='61234567', possible_length=(8,)),
-    mobile=PhoneNumberDesc(national_number_pattern='(?:8[1-8]|9[0-8])\\d{6}', 
example_number='81234567', possible_length=(8,)),
+    
mobile=PhoneNumberDesc(national_number_pattern='89[01]\\d{5}|(?:8[1-8]|9[0-8])\\d{6}',
 example_number='81234567', possible_length=(8,)),
     toll_free=PhoneNumberDesc(national_number_pattern='(?:18|8)00\\d{7}', 
example_number='18001234567', possible_length=(10, 11)),
     premium_rate=PhoneNumberDesc(national_number_pattern='1900\\d{7}', 
example_number='19001234567', possible_length=(11,)),
     voip=PhoneNumberDesc(national_number_pattern='3[12]\\d{6}', 
example_number='31234567', possible_length=(8,)),
     uan=PhoneNumberDesc(national_number_pattern='7000\\d{7}', 
example_number='70001234567', possible_length=(11,)),
     number_format=[NumberFormat(pattern='(\\d{4,5})', format='\\1', 
leading_digits_pattern=['1[0135-7]|77']),
-        NumberFormat(pattern='(\\d{4})(\\d{4})', format='\\1 \\2', 
leading_digits_pattern=['[369]|8[1-8]']),
+        NumberFormat(pattern='(\\d{4})(\\d{4})', format='\\1 \\2', 
leading_digits_pattern=['[369]|8[1-9]']),
         NumberFormat(pattern='(\\d{3})(\\d{3})(\\d{4})', format='\\1 \\2 \\3', 
leading_digits_pattern=['8']),
         NumberFormat(pattern='(\\d{4})(\\d{4})(\\d{3})', format='\\1 \\2 \\3', 
leading_digits_pattern=['7']),
         NumberFormat(pattern='(\\d{4})(\\d{3})(\\d{4})', format='\\1 \\2 \\3', 
leading_digits_pattern=['1'])],
-    intl_number_format=[NumberFormat(pattern='(\\d{4})(\\d{4})', format='\\1 
\\2', leading_digits_pattern=['[369]|8[1-8]']),
+    intl_number_format=[NumberFormat(pattern='(\\d{4})(\\d{4})', format='\\1 
\\2', leading_digits_pattern=['[369]|8[1-9]']),
         NumberFormat(pattern='(\\d{3})(\\d{3})(\\d{4})', format='\\1 \\2 \\3', 
leading_digits_pattern=['8']),
         NumberFormat(pattern='(\\d{4})(\\d{4})(\\d{3})', format='\\1 \\2 \\3', 
leading_digits_pattern=['7']),
         NumberFormat(pattern='(\\d{4})(\\d{3})(\\d{4})', format='\\1 \\2 \\3', 
leading_digits_pattern=['1'])],
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/phonenumbers-8.10.15/phonenumbers/data/region_TJ.py 
new/phonenumbers-8.10.18/phonenumbers/data/region_TJ.py
--- old/phonenumbers-8.10.15/phonenumbers/data/region_TJ.py     2019-07-16 
09:00:01.000000000 +0200
+++ new/phonenumbers-8.10.18/phonenumbers/data/region_TJ.py     2019-09-06 
08:30:01.000000000 +0200
@@ -4,7 +4,7 @@
 PHONE_METADATA_TJ = PhoneMetadata(id='TJ', country_code=992, 
international_prefix='810',
     
general_desc=PhoneNumberDesc(national_number_pattern='(?:[3-59]\\d|77|88)\\d{7}',
 possible_length=(9,), possible_length_local_only=(3, 5, 6, 7)),
     
fixed_line=PhoneNumberDesc(national_number_pattern='(?:3(?:1[3-5]|2[245]|3[12]|4[24-7]|5[25]|72)|4(?:46|74|87))\\d{6}',
 example_number='372123456', possible_length=(9,), 
possible_length_local_only=(3, 5, 6, 7)),
-    
mobile=PhoneNumberDesc(national_number_pattern='41[18]\\d{6}|(?:5[05]|77|88|9[0-35-9])\\d{7}',
 example_number='917123456', possible_length=(9,)),
+    
mobile=PhoneNumberDesc(national_number_pattern='41[18]\\d{6}|(?:5[05]|77|88|9\\d)\\d{7}',
 example_number='917123456', possible_length=(9,)),
     preferred_international_prefix='8~10',
     national_prefix='8',
     national_prefix_for_parsing='8',
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/phonenumbers-8.10.15/phonenumbers/data/region_TT.py 
new/phonenumbers-8.10.18/phonenumbers/data/region_TT.py
--- old/phonenumbers-8.10.15/phonenumbers/data/region_TT.py     2019-07-16 
09:00:01.000000000 +0200
+++ new/phonenumbers-8.10.18/phonenumbers/data/region_TT.py     2019-09-06 
08:30:01.000000000 +0200
@@ -3,7 +3,7 @@
 
 PHONE_METADATA_TT = PhoneMetadata(id='TT', country_code=1, 
international_prefix='011',
     
general_desc=PhoneNumberDesc(national_number_pattern='(?:[58]\\d\\d|900)\\d{7}',
 possible_length=(10,), possible_length_local_only=(7,)),
-    
fixed_line=PhoneNumberDesc(national_number_pattern='868(?:2(?:01|1[89]|[23]\\d)|6(?:0[7-9]|1[02-8]|2[1-9]|[3-69]\\d|7[0-79])|82[124])\\d{4}',
 example_number='8682211234', possible_length=(10,), 
possible_length_local_only=(7,)),
+    
fixed_line=PhoneNumberDesc(national_number_pattern='868(?:2(?:01|1[89]|[23]\\d|4[0-2])|6(?:0[7-9]|1[02-8]|2[1-9]|[3-69]\\d|7[0-79])|82[124])\\d{4}',
 example_number='8682211234', possible_length=(10,), 
possible_length_local_only=(7,)),
     
mobile=PhoneNumberDesc(national_number_pattern='868(?:2(?:6[6-9]|[7-9]\\d)|[37](?:0[1-9]|1[02-9]|[2-9]\\d)|4[6-9]\\d|6(?:20|78|8\\d))\\d{4}',
 example_number='8682911234', possible_length=(10,), 
possible_length_local_only=(7,)),
     
toll_free=PhoneNumberDesc(national_number_pattern='8(?:00|33|44|55|66|77|88)[2-9]\\d{6}',
 example_number='8002345678', possible_length=(10,)),
     premium_rate=PhoneNumberDesc(national_number_pattern='900[2-9]\\d{6}', 
example_number='9002345678', possible_length=(10,)),
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/phonenumbers-8.10.15/phonenumbers/data/region_TW.py 
new/phonenumbers-8.10.18/phonenumbers/data/region_TW.py
--- old/phonenumbers-8.10.15/phonenumbers/data/region_TW.py     2019-07-16 
09:00:01.000000000 +0200
+++ new/phonenumbers-8.10.18/phonenumbers/data/region_TW.py     2019-09-06 
08:30:01.000000000 +0200
@@ -3,7 +3,7 @@
 
 PHONE_METADATA_TW = PhoneMetadata(id='TW', country_code=886, 
international_prefix='0(?:0[25-79]|19)',
     
general_desc=PhoneNumberDesc(national_number_pattern='(?:[24589]|7\\d)\\d{8}|[2-8]\\d{7}|2\\d{6}',
 possible_length=(7, 8, 9, 10)),
-    
fixed_line=PhoneNumberDesc(national_number_pattern='24\\d{6,7}|8(?:2(?:3\\d|66)|36[24-9])\\d{4}|(?:2[235-8]\\d|3[2-9]|4(?:[239]\\d|[78])|5[2-8]|6[235-79]|7[1-9]|8[7-9])\\d{6}',
 example_number='221234567', possible_length=(8, 9)),
+    
fixed_line=PhoneNumberDesc(national_number_pattern='24\\d{6,7}|(?:6412|8(?:2(?:3\\d|66)|36[24-9]))\\d{4}|(?:2[235-8]\\d|3[2-9]|4(?:[239]\\d|[78])|5[2-8]|6[235-79]|7[1-9]|8[7-9])\\d{6}',
 example_number='221234567', possible_length=(8, 9)),
     mobile=PhoneNumberDesc(national_number_pattern='9[0-8]\\d{7}', 
example_number='912345678', possible_length=(9,)),
     toll_free=PhoneNumberDesc(national_number_pattern='80[0-79]\\d{6}', 
example_number='800123456', possible_length=(9,)),
     
premium_rate=PhoneNumberDesc(national_number_pattern='20(?:[013-9]\\d\\d|2)\\d{4}',
 example_number='203123456', possible_length=(7, 9)),
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/phonenumbers-8.10.15/phonenumbers/data/region_VI.py 
new/phonenumbers-8.10.18/phonenumbers/data/region_VI.py
--- old/phonenumbers-8.10.15/phonenumbers/data/region_VI.py     2019-07-16 
09:00:01.000000000 +0200
+++ new/phonenumbers-8.10.18/phonenumbers/data/region_VI.py     2019-09-06 
08:30:01.000000000 +0200
@@ -3,8 +3,8 @@
 
 PHONE_METADATA_VI = PhoneMetadata(id='VI', country_code=1, 
international_prefix='011',
     
general_desc=PhoneNumberDesc(national_number_pattern='[58]\\d{9}|(?:34|90)0\\d{7}',
 possible_length=(10,), possible_length_local_only=(7,)),
-    
fixed_line=PhoneNumberDesc(national_number_pattern='340(?:2(?:01|2[06-8]|44|77)|3(?:32|44)|4(?:22|7[34])|5(?:1[34]|55)|6(?:26|4[23]|77|9[023])|7(?:1[2-57-9]|27|7\\d)|884|998)\\d{4}',
 example_number='3406421234', possible_length=(10,), 
possible_length_local_only=(7,)),
-    
mobile=PhoneNumberDesc(national_number_pattern='340(?:2(?:01|2[06-8]|44|77)|3(?:32|44)|4(?:22|7[34])|5(?:1[34]|55)|6(?:26|4[23]|77|9[023])|7(?:1[2-57-9]|27|7\\d)|884|998)\\d{4}',
 example_number='3406421234', possible_length=(10,), 
possible_length_local_only=(7,)),
+    
fixed_line=PhoneNumberDesc(national_number_pattern='340(?:2(?:0[12]|2[06-8]|4[49]|77)|3(?:32|44)|4(?:22|7[34]|89)|5(?:1[34]|55)|6(?:2[56]|4[23]|77|9[023])|7(?:1[2-57-9]|27|7\\d)|884|998)\\d{4}',
 example_number='3406421234', possible_length=(10,), 
possible_length_local_only=(7,)),
+    
mobile=PhoneNumberDesc(national_number_pattern='340(?:2(?:0[12]|2[06-8]|4[49]|77)|3(?:32|44)|4(?:22|7[34]|89)|5(?:1[34]|55)|6(?:2[56]|4[23]|77|9[023])|7(?:1[2-57-9]|27|7\\d)|884|998)\\d{4}',
 example_number='3406421234', possible_length=(10,), 
possible_length_local_only=(7,)),
     
toll_free=PhoneNumberDesc(national_number_pattern='8(?:00|33|44|55|66|77|88)[2-9]\\d{6}',
 example_number='8002345678', possible_length=(10,)),
     premium_rate=PhoneNumberDesc(national_number_pattern='900[2-9]\\d{6}', 
example_number='9002345678', possible_length=(10,)),
     
personal_number=PhoneNumberDesc(national_number_pattern='5(?:00|2[12]|33|44|66|77|88)[2-9]\\d{6}',
 example_number='5002345678', possible_length=(10,)),
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/phonenumbers-8.10.15/phonenumbers/data/region_VN.py 
new/phonenumbers-8.10.18/phonenumbers/data/region_VN.py
--- old/phonenumbers-8.10.15/phonenumbers/data/region_VN.py     2019-07-16 
09:00:01.000000000 +0200
+++ new/phonenumbers-8.10.18/phonenumbers/data/region_VN.py     2019-09-06 
08:30:01.000000000 +0200
@@ -3,7 +3,7 @@
 
 PHONE_METADATA_VN = PhoneMetadata(id='VN', country_code=84, 
international_prefix='00',
     
general_desc=PhoneNumberDesc(national_number_pattern='[12]\\d{9}|[135-9]\\d{8}|[16]\\d{7}|[16-8]\\d{6}',
 possible_length=(7, 8, 9, 10)),
-    
fixed_line=PhoneNumberDesc(national_number_pattern='2(?:0[3-9]|1[0-689]|2[0-25-9]|3[2-9]|4[2-8]|5[124-9]|6[0-39]|7[0-7]|8[2-7]|9[0-4679])\\d{7}',
 example_number='2101234567', possible_length=(10,)),
+    
fixed_line=PhoneNumberDesc(national_number_pattern='2(?:0[3-9]|1[0-689]|2[0-25-9]|3[2-9]|4[2-8]|5[124-9]|6[0-39]|7[0-7]|8[2-79]|9[0-4679])\\d{7}',
 example_number='2101234567', possible_length=(10,)),
     
mobile=PhoneNumberDesc(national_number_pattern='(?:52[238]|8(?:79|9[689])|99[013-9])\\d{6}|(?:3\\d|5[689]|7[06-9]|8[1-68]|9[0-8])\\d{7}',
 example_number='912345678', possible_length=(9,)),
     
toll_free=PhoneNumberDesc(national_number_pattern='1(?:228\\d{4}|800\\d{4,6})', 
example_number='1800123456', possible_length=(8, 9, 10)),
     premium_rate=PhoneNumberDesc(national_number_pattern='1900\\d{4,6}', 
example_number='1900123456', possible_length=(8, 9, 10)),
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/phonenumbers-8.10.15/phonenumbers/phonenumberutil.py 
new/phonenumbers-8.10.18/phonenumbers/phonenumberutil.py
--- old/phonenumbers-8.10.15/phonenumbers/phonenumberutil.py    2019-05-28 
09:16:14.000000000 +0200
+++ new/phonenumbers-8.10.18/phonenumbers/phonenumberutil.py    2019-09-06 
08:36:41.000000000 +0200
@@ -84,7 +84,7 @@
 # code. One example of when this is relevant is when determining the length of
 # the national destination code, which should be the length of the area code
 # plus the length of the mobile token.
-_MOBILE_TOKEN_MAPPINGS = {52: u('1'), 54: u('9')}
+_MOBILE_TOKEN_MAPPINGS = {54: u('9')}
 # 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
@@ -1184,14 +1184,6 @@
                 # the carriers won't connect the call.  Because of that, we 
return
                 # an empty string here.
                 formatted_number = U_EMPTY_STRING
-        elif is_valid_number and region_code == "HU":
-            # The national format for HU numbers doesn't contain the national
-            # prefix, because that is how numbers are normally written
-            # down. However, the national prefix is obligatory when dialing
-            # from a mobile phone, except for short numbers. As a result, we
-            # add it back here if it is a valid regular length phone number.
-            formatted_number = (ndd_prefix_for_region(region_code, True) +  # 
strip non-digits
-                                U_SPACE + format_number(numobj_no_ext, 
PhoneNumberFormat.NATIONAL))
         elif country_calling_code == _NANPA_COUNTRY_CODE:
             # For NANPA countries, we output international format for numbers
             # that can be dialed internationally, since that always works,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/phonenumbers-8.10.15/phonenumbers/shortdata/region_BR.py 
new/phonenumbers-8.10.18/phonenumbers/shortdata/region_BR.py
--- old/phonenumbers-8.10.15/phonenumbers/shortdata/region_BR.py        
2019-07-16 09:00:01.000000000 +0200
+++ new/phonenumbers-8.10.18/phonenumbers/shortdata/region_BR.py        
2019-09-06 08:30:01.000000000 +0200
@@ -2,11 +2,11 @@
 from ..phonemetadata import NumberFormat, PhoneNumberDesc, PhoneMetadata
 
 PHONE_METADATA_BR = PhoneMetadata(id='BR', country_code=None, 
international_prefix=None,
-    general_desc=PhoneNumberDesc(national_number_pattern='[124-69]\\d{2,5}', 
possible_length=(3, 4, 5, 6)),
+    general_desc=PhoneNumberDesc(national_number_pattern='[1-69]\\d{2,5}', 
possible_length=(3, 4, 5, 6)),
     
toll_free=PhoneNumberDesc(national_number_pattern='1(?:00|12|28|8[015]|9[0-47-9])|4(?:57|82\\d)|911',
 example_number='100', possible_length=(3, 4)),
     emergency=PhoneNumberDesc(national_number_pattern='1(?:12|28|9[023])|911', 
example_number='112', possible_length=(3,)),
-    
short_code=PhoneNumberDesc(national_number_pattern='1(?:0(?:[02]|3(?:1[2-579]|2[13-9]|3[124-9]|4[1-3578]|5[1-468]|6[139]|8[149]|9[168])|5[0-35-9]|6(?:0|1[0-35-8]?|2[0145]|3[0137]?|4[37-9]?|5[0-35]|6[016]?|7[137]?|8[5-8]|9[1359]))|1[25-8]|2[357-9]|3[024-68]|4[12568]|5\\d|6[0-8]|8[015]|9[0-47-9])|2(?:7(?:330|878)|85959?)|4(?:0404?|57|828)|55555|6(?:0\\d{4}|10000)|911|(?:133|411)[12]',
 example_number='100', possible_length=(3, 4, 5, 6)),
-    standard_rate=PhoneNumberDesc(national_number_pattern='102|273\\d\\d', 
example_number='102', possible_length=(3, 5)),
+    
short_code=PhoneNumberDesc(national_number_pattern='1(?:0(?:[02]|3(?:1[2-579]|2[13-9]|3[124-9]|4[1-3578]|5[1-468]|6[139]|8[149]|9[168])|5[0-35-9]|6(?:0|1[0-35-8]?|2[0145]|3[0137]?|4[37-9]?|5[0-35]|6[016]?|7[137]?|8[5-8]|9[1359]))|1[25-8]|2[357-9]|3[024-68]|4[12568]|5\\d|6[0-8]|8[015]|9[0-47-9])|2(?:7(?:330|878)|85959?)|(?:32|91)1|4(?:0404?|57|828)|55555|6(?:0\\d{4}|10000)|(?:133|411)[12]',
 example_number='100', possible_length=(3, 4, 5, 6)),
+    standard_rate=PhoneNumberDesc(national_number_pattern='102|273\\d\\d|321', 
example_number='102', possible_length=(3, 5)),
     
carrier_specific=PhoneNumberDesc(national_number_pattern='151|(?:278|555)\\d\\d|4(?:04\\d\\d?|11\\d|57)',
 example_number='151', possible_length=(3, 4, 5)),
-    
sms_services=PhoneNumberDesc(national_number_pattern='285\\d{2,3}|40404|(?:27[38]\\d|482)\\d|6(?:0\\d|10)\\d{3}',
 example_number='4820', possible_length=(4, 5, 6)),
+    
sms_services=PhoneNumberDesc(national_number_pattern='285\\d{2,3}|321|40404|(?:27[38]\\d|482)\\d|6(?:0\\d|10)\\d{3}',
 example_number='321', possible_length=(3, 4, 5, 6)),
     short_data=True)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/phonenumbers-8.10.15/phonenumbers/shortdata/region_IL.py 
new/phonenumbers-8.10.18/phonenumbers/shortdata/region_IL.py
--- old/phonenumbers-8.10.15/phonenumbers/shortdata/region_IL.py        
2019-07-16 09:00:01.000000000 +0200
+++ new/phonenumbers-8.10.18/phonenumbers/shortdata/region_IL.py        
2019-09-06 08:30:01.000000000 +0200
@@ -2,10 +2,10 @@
 from ..phonemetadata import NumberFormat, PhoneNumberDesc, PhoneMetadata
 
 PHONE_METADATA_IL = PhoneMetadata(id='IL', country_code=None, 
international_prefix=None,
-    general_desc=PhoneNumberDesc(national_number_pattern='1\\d{2,4}', 
possible_length=(3, 4, 5)),
+    general_desc=PhoneNumberDesc(national_number_pattern='[12]\\d{2,4}', 
possible_length=(3, 4, 5)),
     toll_free=PhoneNumberDesc(national_number_pattern='1(?:0[0-2]|12)', 
example_number='100', possible_length=(3,)),
     emergency=PhoneNumberDesc(national_number_pattern='1(?:0[0-2]|12)', 
example_number='100', possible_length=(3,)),
-    
short_code=PhoneNumberDesc(national_number_pattern='1(?:0(?:[0-2]|400)|1(?:[013-9]\\d|2)|[2-9]\\d\\d)',
 example_number='100', possible_length=(3, 4, 5)),
+    
short_code=PhoneNumberDesc(national_number_pattern='1(?:0[0-2]|1(?:[013-9]\\d|2)|[2-9]\\d\\d)|2407|(?:104|27)00',
 example_number='100', possible_length=(3, 4, 5)),
     carrier_specific=PhoneNumberDesc(national_number_pattern='104\\d\\d', 
example_number='10400', possible_length=(5,)),
     sms_services=PhoneNumberDesc(national_number_pattern='104\\d\\d', 
example_number='10400', possible_length=(5,)),
     short_data=True)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/phonenumbers-8.10.15/phonenumbers/shortdata/region_TH.py 
new/phonenumbers-8.10.18/phonenumbers/shortdata/region_TH.py
--- old/phonenumbers-8.10.15/phonenumbers/shortdata/region_TH.py        
2019-07-16 09:00:01.000000000 +0200
+++ new/phonenumbers-8.10.18/phonenumbers/shortdata/region_TH.py        
2019-09-06 08:30:01.000000000 +0200
@@ -6,7 +6,7 @@
     
toll_free=PhoneNumberDesc(national_number_pattern='1(?:1(?:00|2[03]|3[3479]|7[67]|9[0246])|578|6(?:44|6[79]|88|9[16])|88\\d|9[19])|1[15]55',
 example_number='191', possible_length=(3, 4)),
     
premium_rate=PhoneNumberDesc(national_number_pattern='1(?:113|2[23]\\d|5(?:09|56))',
 example_number='1113', possible_length=(4,)),
     emergency=PhoneNumberDesc(national_number_pattern='1(?:669|9[19])', 
example_number='191', possible_length=(3, 4)),
-    
short_code=PhoneNumberDesc(national_number_pattern='1(?:0[0-2]|1(?:0[03]|1[1-35]|2[0358]|3[03-79]|4[02-489]|5[04-9]|6[04-79]|7[03-9]|8[027-9]|9[02-79])|2(?:22|3[89])|3(?:18|2[23]|3[013]|5[56]|6[45]|73)|477|5(?:0\\d|4[0-37-9]|5[1-8]|6[01679]|7[12568]|8[0-24589]|9[013589])|6(?:0[0-29]|2[03]|4[3-6]|6[1-9]|7[0257-9]|8[0158]|9[014-9])|7(?:[14]9|7[27]|90)|888|9[19])',
 example_number='100', possible_length=(3, 4)),
-    
standard_rate=PhoneNumberDesc(national_number_pattern='1(?:1(?:03|1[15]|2[58]|3[056]|4[02-49]|5[046-9]|7[03-589]|9[579])|5(?:0[0-8]|4[0-378]|5[1-478]|7[156])|6(?:20|4[356]|6[1-68]|7[057-9]|8[015]|9[0457-9]))|1(?:1[68]|3[1-35]|5[689]|60|7[17])\\d',
 example_number='1103', possible_length=(4,)),
+    
short_code=PhoneNumberDesc(national_number_pattern='1(?:0[0-2]|1(?:0[03]|1[1-35]|2[0358]|3[03-79]|4[02-489]|5[04-9]|6[04-79]|7[03-9]|8[027-9]|9[02-79])|2(?:22|3[89]|66)|3(?:18|2[23]|3[013]|5[56]|6[45]|73)|477|5(?:0\\d|4[0-37-9]|5[1-8]|6[01679]|7[12568]|8[0-24589]|9[013589])|6(?:0[0-29]|2[03]|4[3-6]|6[1-9]|7[0257-9]|8[0158]|9[014-9])|7(?:[14]9|7[27]|90)|888|9[19])',
 example_number='100', possible_length=(3, 4)),
+    
standard_rate=PhoneNumberDesc(national_number_pattern='1(?:1(?:03|1[15]|2[58]|3[056]|4[02-49]|5[046-9]|7[03-589]|9[579])|5(?:0[0-8]|4[0-378]|5[1-478]|7[156])|6(?:20|4[356]|6[1-68]|7[057-9]|8[015]|9[0457-9]))|1(?:1[68]|26|3[1-35]|5[689]|60|7[17])\\d',
 example_number='1103', possible_length=(4,)),
     carrier_specific=PhoneNumberDesc(national_number_pattern='114[89]', 
example_number='1148', possible_length=(4,)),
     short_data=True)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/phonenumbers-8.10.15/phonenumbers.egg-info/PKG-INFO 
new/phonenumbers-8.10.18/phonenumbers.egg-info/PKG-INFO
--- old/phonenumbers-8.10.15/phonenumbers.egg-info/PKG-INFO     2019-07-16 
20:58:59.000000000 +0200
+++ new/phonenumbers-8.10.18/phonenumbers.egg-info/PKG-INFO     2019-09-06 
08:50:34.000000000 +0200
@@ -1,6 +1,6 @@
 Metadata-Version: 2.1
 Name: phonenumbers
-Version: 8.10.15
+Version: 8.10.18
 Summary: Python version of Google's common library for parsing, formatting, 
storing and validating international phone numbers.
 Home-page: https://github.com/daviddrysdale/python-phonenumbers
 Author: David Drysdale
@@ -11,13 +11,13 @@
         
         [![Coverage 
Status](https://coveralls.io/repos/daviddrysdale/python-phonenumbers/badge.svg?branch=dev&service=github)](https://coveralls.io/github/daviddrysdale/python-phonenumbers?branch=dev)
         
-        This is a Python port of [Google's libphonenumber 
library](https://github.com/googlei18n/libphonenumber)
+        This is a Python port of [Google's libphonenumber 
library](https://github.com/google/libphonenumber)
         It supports Python 2.5-2.7 and Python 3.x (in the same codebase, with 
no
         [2to3](http://docs.python.org/2/library/2to3.html) conversion needed).
         
         Original Java code is Copyright (C) 2009-2015 The Libphonenumber 
Authors.
         
-        Release [HISTORY](python/HISTORY.md), derived from [upstream release 
notes](https://github.com/googlei18n/libphonenumber/blob/master/release_notes.txt).
+        Release [HISTORY](python/HISTORY.md), derived from [upstream release 
notes](https://github.com/google/libphonenumber/blob/master/release_notes.txt).
         
         
         Installation
@@ -184,7 +184,7 @@
         ```
         
         For more information about the other functionality available from the 
library, look in the unit tests or in the original
-        [libphonenumber project](https://github.com/googlei18n/libphonenumber).
+        [libphonenumber project](https://github.com/google/libphonenumber).
         
         Memory Usage
         ------------
@@ -219,7 +219,7 @@
         * The `python/` directory holds the Python code.
         * The `resources/` directory is a copy of the `resources/`
           directory from
-          
[libphonenumber](https://github.com/googlei18n/libphonenumber/tree/master/resources).
+          
[libphonenumber](https://github.com/google/libphonenumber/tree/master/resources).
           This is not needed to run the Python code, but is needed when 
upstream
           changes to the master metadata need to be incorporated.
         * The `tools/` directory holds the tools that are used to process 
upstream
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/phonenumbers-8.10.15/phonenumbers.egg-info/SOURCES.txt 
new/phonenumbers-8.10.18/phonenumbers.egg-info/SOURCES.txt
--- old/phonenumbers-8.10.15/phonenumbers.egg-info/SOURCES.txt  2019-07-16 
20:59:00.000000000 +0200
+++ new/phonenumbers-8.10.18/phonenumbers.egg-info/SOURCES.txt  2019-09-06 
08:50:34.000000000 +0200
@@ -635,7 +635,6 @@
 tests/testdata/region_FR.py
 tests/testdata/region_GB.py
 tests/testdata/region_GG.py
-tests/testdata/region_HU.py
 tests/testdata/region_IT.py
 tests/testdata/region_JP.py
 tests/testdata/region_KR.py
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/phonenumbers-8.10.15/tests/asyoutypetest.py 
new/phonenumbers-8.10.18/tests/asyoutypetest.py
--- old/phonenumbers-8.10.15/tests/asyoutypetest.py     2019-04-10 
09:18:09.000000000 +0200
+++ new/phonenumbers-8.10.18/tests/asyoutypetest.py     2019-08-05 
14:04:06.000000000 +0200
@@ -69,7 +69,7 @@
         self.assertEqual("+48881231+2", formatter.input_digit('2'))
 
     def testTooLongNumberMatchingMultipleLeadingDigits(self):
-        # See https://github.com/googlei18n/libphonenumber/issues/36
+        # See https://github.com/google/libphonenumber/issues/36
         # The bug occurred last time for countries which have two
         # formatting rules with exactly the same leading digits pattern
         # but differ in length.
@@ -1151,7 +1151,7 @@
         # we should ensure we use the last leading digit pattern, rather than
         # the first one such that it *thinks* it's found a valid formatting
         # rule again.
-        # https://github.com/googlei18n/libphonenumber/issues/437
+        # https://github.com/google/libphonenumber/issues/437
         self.assertEqual("+8698812", formatter.input_digit('2'))
         self.assertEqual("+86988123", formatter.input_digit('3'))
         self.assertEqual("+869881234", formatter.input_digit('4'))
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/phonenumbers-8.10.15/tests/phonenumberutiltest.py 
new/phonenumbers-8.10.18/tests/phonenumberutiltest.py
--- old/phonenumbers-8.10.15/tests/phonenumberutiltest.py       2019-04-10 
09:12:32.000000000 +0200
+++ new/phonenumbers-8.10.18/tests/phonenumberutiltest.py       2019-09-06 
08:36:41.000000000 +0200
@@ -292,7 +292,7 @@
         self.assertEqual(4, 
phonenumbers.length_of_national_destination_code(number2))
 
     def testGetCountryMobileToken(self):
-        self.assertEqual("1", 
phonenumbers.country_mobile_token(phonenumbers.country_code_for_region("MX")))
+        self.assertEqual("9", 
phonenumbers.country_mobile_token(phonenumbers.country_code_for_region("AR")))
         # Country calling code for Sweden, which has no mobile token.
         # Python version change: Use GB instead, which exists in the test 
metadata
         self.assertEqual("", 
phonenumbers.country_mobile_token(phonenumbers.country_code_for_region("GB")))
@@ -824,15 +824,6 @@
         self.assertEqual("123", 
phonenumbers.format_number_for_mobile_dialing(deShortNumber, "DE", False))
         self.assertEqual("", 
phonenumbers.format_number_for_mobile_dialing(deShortNumber, "IT", False))
 
-        # Test the special logic for Hungary, where the national prefix must 
be added before dialing
-        # from a mobile phone for regular length numbers, but not for short 
numbers.
-        huRegularNumber = PhoneNumber(country_code=36, 
national_number=301234567)
-        self.assertEqual("06301234567", 
phonenumbers.format_number_for_mobile_dialing(huRegularNumber, "HU", False))
-        self.assertEqual("+36301234567", 
phonenumbers.format_number_for_mobile_dialing(huRegularNumber, "JP", False))
-        huShortNumber = PhoneNumber(country_code=36, national_number=104)
-        self.assertEqual("104", 
phonenumbers.format_number_for_mobile_dialing(huShortNumber, "HU", False))
-        self.assertEqual("", 
phonenumbers.format_number_for_mobile_dialing(huShortNumber, "JP", False))
-
         # Test the special logic for NANPA countries, for which regular length 
phone numbers are always
         # output in international format, but short numbers are in national 
format.
         self.assertEqual("+16502530000", 
phonenumbers.format_number_for_mobile_dialing(US_NUMBER, "US", False))
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/phonenumbers-8.10.15/tests/testdata/__init__.py 
new/phonenumbers-8.10.18/tests/testdata/__init__.py
--- old/phonenumbers-8.10.15/tests/testdata/__init__.py 2019-07-16 
09:00:01.000000000 +0200
+++ new/phonenumbers-8.10.18/tests/testdata/__init__.py 2019-09-06 
08:30:01.000000000 +0200
@@ -15,7 +15,7 @@
 
 from phonenumbers.phonemetadata import PhoneMetadata
 
-_AVAILABLE_REGION_CODES = 
['AD','AE','AM','AO','AR','AU','BB','BR','BS','BY','CA','CC','CN','CX','DE','FR','GB','GG','HU','IT','JP','KR','MX','NZ','PL','RE','RU','SE','SG','TA','US','UZ','YT']
+_AVAILABLE_REGION_CODES = 
['AD','AE','AM','AO','AR','AU','BB','BR','BS','BY','CA','CC','CN','CX','DE','FR','GB','GG','IT','JP','KR','MX','NZ','PL','RE','RU','SE','SG','TA','US','UZ','YT']
 _AVAILABLE_NONGEO_COUNTRY_CODES = [800, 882, 979]
 
 def _load_region(code):
@@ -39,7 +39,6 @@
     1: ("US", "BB", "BS", "CA",),
     7: ("RU",),
     33: ("FR",),
-    36: ("HU",),
     39: ("IT",),
     44: ("GB", "GG",),
     46: ("SE",),
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/phonenumbers-8.10.15/tests/testdata/region_HU.py 
new/phonenumbers-8.10.18/tests/testdata/region_HU.py
--- old/phonenumbers-8.10.15/tests/testdata/region_HU.py        2019-07-16 
09:00:01.000000000 +0200
+++ new/phonenumbers-8.10.18/tests/testdata/region_HU.py        1970-01-01 
01:00:00.000000000 +0100
@@ -1,8 +0,0 @@
-"""Auto-generated file, do not edit by hand. HU metadata"""
-from phonenumbers.phonemetadata import NumberFormat, PhoneNumberDesc, 
PhoneMetadata
-
-PHONE_METADATA_HU = PhoneMetadata(id='HU', country_code=36, 
international_prefix='00',
-    general_desc=PhoneNumberDesc(national_number_pattern='30\\d{7}', 
possible_length=(9,)),
-    mobile=PhoneNumberDesc(national_number_pattern='30\\d{7}', 
example_number='301234567', possible_length=(9,)),
-    national_prefix='06',
-    national_prefix_for_parsing='06')


Reply via email to