phonelib 0.6.2 → 0.6.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (141) hide show
  1. checksums.yaml +4 -4
  2. data/{README.rdoc → README.md} +116 -75
  3. data/data/extended_data.dat +0 -0
  4. data/data/libphonenumber/FALSEHOODS.md +16 -0
  5. data/data/libphonenumber/FAQ.md +8 -0
  6. data/data/libphonenumber/README.md +1 -1
  7. data/data/libphonenumber/cpp/src/phonenumbers/alternate_format.cc +108 -100
  8. data/data/libphonenumber/cpp/src/phonenumbers/lite_metadata.cc +10070 -10016
  9. data/data/libphonenumber/cpp/src/phonenumbers/metadata.cc +10938 -10884
  10. data/data/libphonenumber/cpp/src/phonenumbers/short_metadata.cc +2481 -2455
  11. data/data/libphonenumber/java/carrier/pom.xml +26 -4
  12. data/data/libphonenumber/java/carrier/src/com/google/i18n/phonenumbers/carrier/data/255_en +0 -0
  13. data/data/libphonenumber/java/carrier/src/com/google/i18n/phonenumbers/carrier/data/374_en +0 -0
  14. data/data/libphonenumber/java/carrier/src/com/google/i18n/phonenumbers/carrier/data/374_ru +0 -0
  15. data/data/libphonenumber/java/carrier/src/com/google/i18n/phonenumbers/carrier/data/421_en +0 -0
  16. data/data/libphonenumber/java/carrier/src/com/google/i18n/phonenumbers/carrier/data/66_en +0 -0
  17. data/data/libphonenumber/java/carrier/src/com/google/i18n/phonenumbers/carrier/data/91_en +0 -0
  18. data/data/libphonenumber/java/carrier/src/com/google/i18n/phonenumbers/carrier/data/93_fa +0 -0
  19. data/data/libphonenumber/java/carrier/src/com/google/i18n/phonenumbers/carrier/data/973_en +0 -0
  20. data/data/libphonenumber/java/carrier/src/com/google/i18n/phonenumbers/carrier/data/98_fa +0 -0
  21. data/data/libphonenumber/java/carrier/src/com/google/i18n/phonenumbers/carrier/data/992_en +0 -0
  22. data/data/libphonenumber/java/carrier/src/com/google/i18n/phonenumbers/carrier/data/994_en +0 -0
  23. data/data/libphonenumber/java/carrier/src/com/google/i18n/phonenumbers/carrier/data/config +0 -0
  24. data/data/libphonenumber/java/demo/pom.xml +6 -6
  25. data/data/libphonenumber/java/geocoder/pom.xml +26 -4
  26. data/data/libphonenumber/java/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/1747_en +0 -0
  27. data/data/libphonenumber/java/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/1934_en +0 -0
  28. data/data/libphonenumber/java/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/371_en +0 -0
  29. data/data/libphonenumber/java/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/44_en +0 -0
  30. data/data/libphonenumber/java/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/504_en +0 -0
  31. data/data/libphonenumber/java/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/82_bg +0 -0
  32. data/data/libphonenumber/java/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/82_ca +0 -0
  33. data/data/libphonenumber/java/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/82_el +0 -0
  34. data/data/libphonenumber/java/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/82_es +0 -0
  35. data/data/libphonenumber/java/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/82_fi +0 -0
  36. data/data/libphonenumber/java/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/82_hi +0 -0
  37. data/data/libphonenumber/java/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/82_hu +0 -0
  38. data/data/libphonenumber/java/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/82_iw +0 -0
  39. data/data/libphonenumber/java/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/82_ja +0 -0
  40. data/data/libphonenumber/java/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/82_tr +0 -0
  41. data/data/libphonenumber/java/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/91_en +0 -0
  42. data/data/libphonenumber/java/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/93_en +0 -0
  43. data/data/libphonenumber/java/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/93_fa +0 -0
  44. data/data/libphonenumber/java/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/98_en +0 -0
  45. data/data/libphonenumber/java/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/98_fa +0 -0
  46. data/data/libphonenumber/java/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/992_en +0 -0
  47. data/data/libphonenumber/java/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/994_en +0 -0
  48. data/data/libphonenumber/java/geocoder/src/com/google/i18n/phonenumbers/geocoding/data/config +0 -0
  49. data/data/libphonenumber/java/internal/prefixmapper/pom.xml +25 -3
  50. data/data/libphonenumber/java/libphonenumber/pom.xml +23 -2
  51. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/MetadataLoader.java +2 -1
  52. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/MultiFileMetadataSourceImpl.java +63 -70
  53. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberAlternateFormatsProto_595 +0 -0
  54. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AZ +0 -0
  55. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BD +0 -0
  56. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BG +0 -0
  57. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BH +0 -0
  58. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CI +0 -0
  59. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CN +0 -0
  60. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_HK +0 -0
  61. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_HN +0 -0
  62. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_IN +0 -0
  63. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_KN +0 -0
  64. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_KW +0 -0
  65. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_LV +0 -0
  66. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_PY +0 -0
  67. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SK +0 -0
  68. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SN +0 -0
  69. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TC +0 -0
  70. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TH +0 -0
  71. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TJ +0 -0
  72. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TZ +0 -0
  73. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_US +0 -0
  74. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_AE +0 -0
  75. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_AR +0 -0
  76. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_BR +0 -0
  77. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_GB +0 -0
  78. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_IN +0 -0
  79. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_NO +0 -0
  80. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_SK +0 -0
  81. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/data/ShortNumberMetadataProto_ZA +0 -0
  82. data/data/libphonenumber/java/libphonenumber/src/com/google/i18n/phonenumbers/data/SingleFilePhoneNumberMetadataProto +0 -0
  83. data/data/libphonenumber/java/libphonenumber/test/com/google/i18n/phonenumbers/MultiFileMetadataSourceImplTest.java +25 -5
  84. data/data/libphonenumber/java/pom.xml +2 -2
  85. data/data/libphonenumber/java/release_notes.txt +45 -0
  86. data/data/libphonenumber/javascript/i18n/phonenumbers/demo-compiled.js +72 -70
  87. data/data/libphonenumber/javascript/i18n/phonenumbers/metadata.js +38 -32
  88. data/data/libphonenumber/javascript/i18n/phonenumbers/metadatalite.js +38 -32
  89. data/data/libphonenumber/resources/PhoneNumberAlternateFormats.xml +16 -0
  90. data/data/libphonenumber/resources/PhoneNumberMetadata.xml +232 -96
  91. data/data/libphonenumber/resources/ShortNumberMetadata.xml +188 -44
  92. data/data/libphonenumber/resources/carrier/en/255.txt +2 -0
  93. data/data/libphonenumber/resources/carrier/en/374.txt +3 -3
  94. data/data/libphonenumber/resources/carrier/en/421.txt +1 -0
  95. data/data/libphonenumber/resources/carrier/en/66.txt +1 -0
  96. data/data/libphonenumber/resources/carrier/en/91.txt +419 -253
  97. data/data/libphonenumber/resources/carrier/en/973.txt +1 -0
  98. data/data/libphonenumber/resources/carrier/en/992.txt +1 -0
  99. data/data/libphonenumber/resources/carrier/en/994.txt +3 -0
  100. data/data/libphonenumber/resources/carrier/fa/93.txt +24 -0
  101. data/data/libphonenumber/resources/carrier/fa/98.txt +30 -0
  102. data/data/libphonenumber/resources/carrier/ru/374.txt +28 -0
  103. data/data/libphonenumber/resources/geocoding/bg/82.txt +34 -0
  104. data/data/libphonenumber/resources/geocoding/ca/82.txt +34 -0
  105. data/data/libphonenumber/resources/geocoding/el/82.txt +28 -0
  106. data/data/libphonenumber/resources/geocoding/en/1.txt +2 -0
  107. data/data/libphonenumber/resources/geocoding/en/371.txt +3 -0
  108. data/data/libphonenumber/resources/geocoding/en/44.txt +19 -1
  109. data/data/libphonenumber/resources/geocoding/en/504.txt +19 -0
  110. data/data/libphonenumber/resources/geocoding/en/91.txt +1 -5
  111. data/data/libphonenumber/resources/geocoding/en/93.txt +52 -0
  112. data/data/libphonenumber/resources/geocoding/en/98.txt +0 -2
  113. data/data/libphonenumber/resources/geocoding/en/992.txt +77 -0
  114. data/data/libphonenumber/resources/geocoding/en/994.txt +98 -0
  115. data/data/libphonenumber/resources/geocoding/es/82.txt +33 -0
  116. data/data/libphonenumber/resources/geocoding/fa/93.txt +53 -0
  117. data/data/libphonenumber/resources/geocoding/fa/98.txt +0 -2
  118. data/data/libphonenumber/resources/geocoding/fi/82.txt +34 -0
  119. data/data/libphonenumber/resources/geocoding/hi/82.txt +36 -0
  120. data/data/libphonenumber/resources/geocoding/hu/82.txt +35 -0
  121. data/data/libphonenumber/resources/geocoding/iw/82.txt +37 -0
  122. data/data/libphonenumber/resources/geocoding/ja/82.txt +35 -0
  123. data/data/libphonenumber/resources/geocoding/tr/82.txt +35 -0
  124. data/data/libphonenumber/tools/java/common/pom.xml +2 -0
  125. data/data/libphonenumber/tools/java/cpp-build/pom.xml +4 -0
  126. data/data/libphonenumber/tools/java/data/pom.xml +1 -11
  127. data/data/libphonenumber/tools/java/java-build/pom.xml +2 -0
  128. data/data/phone_data.dat +0 -0
  129. data/lib/phonelib.rb +7 -6
  130. data/lib/phonelib/core.rb +116 -68
  131. data/lib/phonelib/data_importer.rb +23 -19
  132. data/lib/phonelib/data_importer_helper.rb +16 -16
  133. data/lib/phonelib/phone.rb +47 -137
  134. data/lib/phonelib/phone_analyzer.rb +27 -25
  135. data/lib/phonelib/phone_analyzer_helper.rb +16 -9
  136. data/lib/phonelib/phone_extended_data.rb +27 -17
  137. data/lib/phonelib/phone_formatter.rb +131 -0
  138. data/lib/phonelib/version.rb +2 -3
  139. data/lib/tasks/phonelib_tasks.rake +0 -2
  140. data/lib/validators/phone_validator.rb +24 -14
  141. metadata +42 -3
@@ -557,8 +557,8 @@ i18n.phonenumbers.metadata.countryToMetadata = {
557
557
  ,,,[,,"NA","NA"]
558
558
  ]
559
559
  ,"AZ":[,[,,"[1-9]\\d{8}","\\d{7,9}"]
560
- ,[,,"(?:1[28]\\d|2(?:02|1[24]|2[2-4]|33|[45]2|6[23])|365)\\d{6}","\\d{7,9}"]
561
- ,[,,"(?:4[04]|5[015]|60|7[07])\\d{7}","\\d{9}"]
560
+ ,[,,"(?:1[28]\\d{3}|2(?:02|1[24]|2[2-4]|33|[45]2|6[23])\\d{2}|365(?:[0-46-9]\\d|5[0-35-9]))\\d{4}","\\d{7,9}"]
561
+ ,[,,"(?:36554|(?:4[04]|5[015]|60|7[07])\\d{3})\\d{4}","\\d{9}"]
562
562
  ,[,,"88\\d{7}","\\d{9}"]
563
563
  ,[,,"900200\\d{3}","\\d{9}"]
564
564
  ,[,,"NA","NA"]
@@ -617,7 +617,7 @@ i18n.phonenumbers.metadata.countryToMetadata = {
617
617
  ,[,,"NA","NA"]
618
618
  ,[,,"NA","NA"]
619
619
  ,[,,"96(?:0[49]|1[0-4]|6[69])\\d{6}","\\d{10}"]
620
- ,"BD",880,"00[12]?","0",,,"0",,"00",,[[,"(2)(\\d{7,8})","$1-$2",["2"]
620
+ ,"BD",880,"00","0",,,"0",,,,[[,"(2)(\\d{7,8})","$1-$2",["2"]
621
621
  ,"0$1"]
622
622
  ,[,"(\\d{2})(\\d{4,6})","$1-$2",["[3-79]1"]
623
623
  ,"0$1"]
@@ -669,14 +669,14 @@ i18n.phonenumbers.metadata.countryToMetadata = {
669
669
  ,,,[,,"NA","NA"]
670
670
  ]
671
671
  ,"BG":[,[,,"[23567]\\d{5,7}|[489]\\d{6,8}","\\d{5,9}"]
672
- ,[,,"2(?:[0-8]\\d{5,6}|9\\d{4,6})|(?:[36]\\d|5[1-9]|8[1-6]|9[1-7])\\d{5,6}|(?:4(?:[124-7]\\d|3[1-6])|7(?:0[1-9]|[1-9]\\d))\\d{4,5}","\\d{5,8}"]
672
+ ,[,,"2\\d{5,7}|(?:[36]\\d|5[1-9]|8[1-6]|9[1-7])\\d{5,6}|(?:4(?:[124-7]\\d|3[1-6])|7(?:0[1-9]|[1-9]\\d))\\d{4,5}","\\d{5,8}"]
673
673
  ,[,,"(?:8[7-9]\\d|9(?:8\\d|99))\\d{6}|4(?:3[0789]|8\\d)\\d{5}","\\d{8,9}"]
674
674
  ,[,,"800\\d{5}","\\d{8}"]
675
675
  ,[,,"90\\d{6}","\\d{8}"]
676
676
  ,[,,"NA","NA"]
677
677
  ,[,,"700\\d{5}","\\d{5,9}"]
678
678
  ,[,,"NA","NA"]
679
- ,"BG",359,"00","0",,,"0",,,,[[,"(2)(\\d{5})","$1 $2",["29"]
679
+ ,"BG",359,"00","0",,,"0",,,,[[,"(2)(\\d)(\\d{2})(\\d{2})","$1 $2 $3 $4",["2"]
680
680
  ,"0$1"]
681
681
  ,[,"(2)(\\d{3})(\\d{3,4})","$1 $2 $3",["2"]
682
682
  ,"0$1"]
@@ -700,7 +700,7 @@ i18n.phonenumbers.metadata.countryToMetadata = {
700
700
  ]
701
701
  ,"BH":[,[,,"[136-9]\\d{7}","\\d{8}"]
702
702
  ,[,,"(?:1(?:3[1356]|6[0156]|7\\d)\\d|6(?:1[16]\\d|500|6(?:0\\d|3[12]|44|7[7-9])|9[69][69])|7(?:1(?:11|78)|7\\d{2}))\\d{4}","\\d{8}"]
703
- ,[,,"(?:3(?:[1-4679]\\d|5[013569]|8[0-47-9])\\d|6(?:3(?:00|33|6[16])|6(?:[69]\\d|3[03-9]|7[0-6])))\\d{4}","\\d{8}"]
703
+ ,[,,"(?:3(?:[1-4679]\\d|5[013-69]|8[0-47-9])\\d|6(?:3(?:00|33|6[16])|6(?:[69]\\d|3[03-9]|7[0-6])))\\d{4}","\\d{8}"]
704
704
  ,[,,"80\\d{6}","\\d{8}"]
705
705
  ,[,,"(?:87|9[014578])\\d{6}","\\d{8}"]
706
706
  ,[,,"84\\d{6}","\\d{8}"]
@@ -1052,7 +1052,7 @@ i18n.phonenumbers.metadata.countryToMetadata = {
1052
1052
  ]
1053
1053
  ,"CI":[,[,,"[02-8]\\d{7}","\\d{8}"]
1054
1054
  ,[,,"(?:2(?:0[023]|1[02357]|[23][045]|4[03-5])|3(?:0[06]|1[069]|[2-4][07]|5[09]|6[08]))\\d{5}","\\d{8}"]
1055
- ,[,,"(?:0[1-9]|4\\d|5[14-9]|6[015-79]|7[578]|87)\\d{6}","\\d{8}"]
1055
+ ,[,,"(?:0[1-9]|4\\d|5[14-9]|6[015-79]|7[578]|8[79])\\d{6}","\\d{8}"]
1056
1056
  ,[,,"NA","NA"]
1057
1057
  ,[,,"NA","NA"]
1058
1058
  ,[,,"NA","NA"]
@@ -1151,7 +1151,7 @@ i18n.phonenumbers.metadata.countryToMetadata = {
1151
1151
  ]
1152
1152
  ,"CN":[,[,,"[1-7]\\d{6,11}|8[0-357-9]\\d{6,9}|9\\d{7,10}","\\d{4,12}"]
1153
1153
  ,[,,"21(?:100\\d{2}|95\\d{3,4}|\\d{8,10})|(?:10|2[02-57-9]|3(?:11|7[179])|4(?:[15]1|3[1-35])|5(?:1\\d|2[37]|3[12]|51|7[13-79]|9[15])|7(?:31|5[457]|6[09]|91)|8(?:[57]1|98))(?:100\\d{2}|95\\d{3,4}|\\d{8})|(?:3(?:1[02-9]|35|49|5\\d|7[02-68]|9[1-68])|4(?:1[02-9]|2[179]|3[3-9]|5[2-9]|6[4789]|7\\d|8[23])|5(?:3[03-9]|4[36]|5[02-9]|6[1-46]|7[028]|80|9[2-46-9])|6(?:3[1-5]|6[0238]|9[12])|7(?:01|[17]\\d|2[248]|3[04-9]|4[3-6]|5[0-4689]|6[2368]|9[02-9])|8(?:078|1[236-8]|2[5-7]|3\\d|5[1-9]|7[02-9]|8[3678]|9[1-7])|9(?:0[1-3689]|1[1-79]|[379]\\d|4[13]|5[1-5]))(?:100\\d{2}|95\\d{3,4}|\\d{7})|80(?:29|6[03578]|7[018]|81)\\d{4}","\\d{4,12}"]
1154
- ,[,,"1(?:[38]\\d|4[57]|5[0-35-9]|7[036-8])\\d{8}","\\d{11}"]
1154
+ ,[,,"1(?:[38]\\d|4[57]|5[0-35-9]|7[0136-8])\\d{8}","\\d{11}"]
1155
1155
  ,[,,"(?:10)?800\\d{7}","\\d{10,12}"]
1156
1156
  ,[,,"16[08]\\d{5}","\\d{8}"]
1157
1157
  ,[,,"400\\d{7}|950\\d{7,8}|(?:10|2[0-57-9]|3(?:[157]\\d|35|49|9[1-68])|4(?:[17]\\d|2[179]|[35][1-9]|6[4789]|8[23])|5(?:[1357]\\d|2[37]|4[36]|6[1-46]|80|9[1-9])|6(?:3[1-5]|6[0238]|9[12])|7(?:01|[1579]\\d|2[248]|3[014-9]|4[3-6]|6[023689])|8(?:1[236-8]|2[5-7]|[37]\\d|5[14-9]|8[3678]|9[1-8])|9(?:0[1-3689]|1[1-79]|[379]\\d|4[13]|5[1-5]))96\\d{3,4}","\\d{7,11}"]
@@ -2046,7 +2046,7 @@ i18n.phonenumbers.metadata.countryToMetadata = {
2046
2046
  ,[,,"NA","NA"]
2047
2047
  ,[,,"8[1-3]\\d{6}","\\d{8}"]
2048
2048
  ,[,,"NA","NA"]
2049
- ,"HK",852,"00",,,,,,,,[[,"(\\d{4})(\\d{4})","$1 $2",["[235-7]|[89](?:0[1-9]|[1-9])"]
2049
+ ,"HK",852,"00(?:[126-9]|30|5[09])?",,,,,,"00",,[[,"(\\d{4})(\\d{4})","$1 $2",["[235-7]|[89](?:0[1-9]|[1-9])"]
2050
2050
  ]
2051
2051
  ,[,"(800)(\\d{3})(\\d{3})","$1 $2 $3",["800"]
2052
2052
  ]
@@ -2061,7 +2061,7 @@ i18n.phonenumbers.metadata.countryToMetadata = {
2061
2061
  ,,,[,,"NA","NA"]
2062
2062
  ]
2063
2063
  ,"HN":[,[,,"[237-9]\\d{7}","\\d{8}"]
2064
- ,[,,"2(?:2(?:0[019]|1[1-36]|[23]\\d|4[056]|5[57]|7[01389]|8[0146-9]|9[012])|4(?:2[3-59]|3[13-689]|4[0-68]|5[1-35])|5(?:4[3-5]|5\\d|6[56]|74)|6(?:[056]\\d|3[04]|4[0-378]|[78][0-8]|9[01])|7(?:6[46-9]|7[02-9]|8[34])|8(?:79|8[0-35789]|9[1-57-9]))\\d{4}","\\d{8}"]
2064
+ ,[,,"2(?:2(?:0[019]|1[1-36]|[23]\\d|4[056]|5[57]|7[01389]|8[0146-9]|9[012])|4(?:07|2[3-59]|3[13-689]|4[0-68]|5[1-35])|5(?:16|4[3-5]|5\\d|6[4-6]|74)|6(?:[056]\\d|17|3[04]|4[0-378]|[78][0-8]|9[01])|7(?:6[46-9]|7[02-9]|8[034])|8(?:79|8[0-35789]|9[1-57-9]))\\d{4}","\\d{8}"]
2065
2065
  ,[,,"[37-9]\\d{7}","\\d{8}"]
2066
2066
  ,[,,"NA","NA"]
2067
2067
  ,[,,"NA","NA"]
@@ -2249,15 +2249,15 @@ i18n.phonenumbers.metadata.countryToMetadata = {
2249
2249
  ,[,,"3(?:08162\\d|3\\d{5}|4(?:40[49]06|5624\\d)|7(?:0624\\d|2299\\d))\\d{3}|55\\d{8}","\\d{10}"]
2250
2250
  ,,,[,,"NA","NA"]
2251
2251
  ]
2252
- ,"IN":[,[,,"1\\d{7,12}|[2-9]\\d{9,10}","\\d{6,13}"]
2252
+ ,"IN":[,[,,"008\\d{9}|1\\d{7,12}|[2-9]\\d{9,10}","\\d{6,13}"]
2253
2253
  ,[,,"(?:11|2[02]|33|4[04]|79)[2-7]\\d{7}|80[2-467]\\d{7}|(?:1(?:2[0-249]|3[0-25]|4[145]|[59][14]|6[014]|7[1257]|8[01346])|2(?:1[257]|3[013]|4[01]|5[0137]|6[0158]|78|8[1568]|9[14])|3(?:26|4[1-3]|5[34]|6[01489]|7[02-46]|8[159])|4(?:1[36]|2[1-47]|3[15]|5[12]|6[0-26-9]|7[0-24-9]|8[013-57]|9[014-7])|5(?:1[025]|[36][25]|22|4[28]|5[12]|[78]1|9[15])|6(?:12|[2345]1|57|6[13]|7[14]|80)|7(?:12|2[14]|3[134]|4[47]|5[15]|[67]1|88)|8(?:16|2[014]|3[126]|6[136]|7[078]|8[34]|91))[2-7]\\d{6}|(?:(?:1(?:2[35-8]|3[346-9]|4[236-9]|[59][0235-9]|6[235-9]|7[34689]|8[257-9])|2(?:1[134689]|3[24-8]|4[2-8]|5[25689]|6[2-4679]|7[13-79]|8[2-479]|9[235-9])|3(?:01|1[79]|2[1-5]|4[25-8]|5[125689]|6[235-7]|7[157-9]|8[2-467])|4(?:1[14578]|2[5689]|3[2-467]|5[4-7]|6[35]|73|8[2689]|9[2389])|5(?:[16][146-9]|2[14-8]|3[1346]|4[14-69]|5[46]|7[2-4]|8[2-8]|9[246])|6(?:1[1358]|2[2457]|3[2-4]|4[235-7]|[57][2-689]|6[24-578]|8[1-6])|8(?:1[1357-9]|2[235-8]|3[03-57-9]|4[0-24-9]|5\\d|6[2457-9]|7[1-6]|8[1256]|9[2-4]))\\d|7(?:(?:1[013-9]|2[0235-9]|3[2679]|4[1-35689]|5[2-46-9]|[67][02-9]|9\\d)\\d|8(?:2[0-6]|[013-8]\\d)))[2-7]\\d{5}","\\d{6,10}"]
2254
- ,[,,"(?:7(?:0\\d{3}|2(?:[0235679]\\d|[14][017-9]|8[0-59]|9[389])\\d|3(?:[05-8]\\d{2}|1(?:[089]\\d|7[5-8])|2(?:[5-8]\\d|[01][089])|3[17-9]\\d|4(?:[07-9]\\d|11)|9[01689]\\d)|4(?:0[1-9]\\d|1(?:[015-9]\\d|4[08])|[29][89]\\d|39\\d|8[389]\\d)|5(?:[034678]\\d|2[03-9]|5[017-9]|9[7-9])\\d|6(?:0[0-47]|1[0-257-9]|2[0-4]|3[19]|5[4589]|[6-9]\\d)\\d|7(?:0[2-9]|[1-79]\\d|8[1-9])\\d|8[0-79]\\d{2}|99[4-9]\\d)|8(?:0(?:[01589]\\d|6[67])|1(?:[02-57-9]\\d|1[0135-9])|2(?:[236-9]\\d|5[1-9])|3(?:[0357-9]\\d|4[1-9])|[45]\\d{2}|6[02457-9]\\d|7(?:07|[1-69]\\d)|8(?:[0-26-9]\\d|44|5[2-9])|9(?:[035-9]\\d|2[2-9]|4[0-8]))\\d|9\\d{4})\\d{5}","\\d{10}"]
2255
- ,[,,"1(?:600\\d{6}|80(?:0\\d{4,9}|3\\d{9}))","\\d{8,13}"]
2254
+ ,[,,"(?:7(?:0\\d{3}|2(?:[0235679]\\d{2}|[14][017-9]\\d|8(?:[0-59]\\d|6[089]|78)|9[389]\\d)|3(?:[05-8]\\d{2}|1(?:[089]\\d|7[5-8])|2(?:[5-8]\\d|[01][089])|3[17-9]\\d|4(?:[07-9]\\d|11)|9(?:[01689]\\d|59))|4(?:0[1-9]\\d|1(?:[015-9]\\d|4[08])|2(?:[1-7][089]|[89]\\d)|3(?:[0-8][089]|9\\d)|4(?:[089]\\d|11|7[02-8])|5(?:0[089]|[59]9)|7(?:0[3-9]|11|7[02-8]|[89]\\d)|8(?:[0-24-7][089]|[389]\\d)|9(?:[0-6][089]|7[08]|[89]\\d))|5(?:[034678]\\d|2[03-9]|5[017-9]|9[7-9])\\d|6(?:0[0-47]|1[0-257-9]|2[0-4]|3[19]|5[4589]|[6-9]\\d)\\d|7(?:0[2-9]|[1-79]\\d|8[1-9])\\d|8(?:[0-79]\\d{2}|88[01])|99[4-9]\\d)|8(?:0(?:[01589]\\d|6[67])|1(?:[02-57-9]\\d|1[0135-9])|2(?:[236-9]\\d|5[1-9])|3(?:[0357-9]\\d|4[1-9])|[45]\\d{2}|6[02457-9]\\d|7(?:07|[1-69]\\d)|8(?:[0-26-9]\\d|44|5[2-9])|9(?:[035-9]\\d|2[2-9]|4[0-8]))\\d|9\\d{4})\\d{5}","\\d{10}"]
2255
+ ,[,,"00800\\d{7}|1(?:600\\d{6}|80(?:0\\d{4,9}|3\\d{9}))","\\d{8,13}"]
2256
2256
  ,[,,"186[12]\\d{9}","\\d{13}"]
2257
2257
  ,[,,"1860\\d{7}","\\d{11}"]
2258
2258
  ,[,,"NA","NA"]
2259
2259
  ,[,,"NA","NA"]
2260
- ,"IN",91,"00","0",,,"0",,,,[[,"(\\d{5})(\\d{5})","$1 $2",["7(?:[02357]|4[0-389]|6[0-35-9]|8[0-79]|99)|8(?:0[015689]|1[0-57-9]|2[2356-9]|3[0-57-9]|[45]|6[02457-9]|7[01-69]|8[0-24-9]|9[02-9])|9","7(?:0|2(?:[0235679]|[14][017-9]|8[0-59]|9[389])|3(?:[05-8]|1[07-9]|2[015-8]|3[17-9]|4[017-9]|9[01689])|4(?:0[1-9]|1[014-9]|[29][89]|39|8[389])|5(?:[034678]|2[03-9]|5[017-9]|9[7-9])|6(?:0[0-47]|1[0-257-9]|2[0-4]|3[19]|5[4589]|[6-9])|7(?:0[2-9]|[1-79]|8[1-9])|8[0-79]|99[4-9])|8(?:0(?:[01589]|6[67])|1(?:[02-57-9]|1[0135-9])|2(?:[236-9]|5[1-9])|3(?:[0357-9]|4[1-9])|[45]|6[02457-9]|7(?:07|[1-69])|8(?:[0-26-9]|44|5[2-9])|9(?:[035-9]|2[2-9]|4[0-8]))|9","7(?:0|2(?:[0235679]|[14][017-9]|8[0-59]|9[389])|3(?:[05-8]|1(?:[089]|7[5-9])|2(?:[5-8]|[01][089])|3[17-9]|4(?:[07-9]|11)|9[01689])|4(?:0[1-9]|1(?:[015-9]|4[08])|[29][89]|39|8[389])|5(?:[034678]|2[03-9]|5[017-9]|9[7-9])|6(?:0[0-47]|1[0-257-9]|2[0-4]|3[19]|5[4589]|[6-9])|7(?:0[2-9]|[1-79]|8[1-9])|8[0-79]|99[4-9])|8(?:0(?:[01589]|6[67])|1(?:[02-57-9]|1[0135-9])|2(?:[236-9]|5[1-9])|3(?:[0357-9]|4[1-9])|[45]|6[02457-9]|7(?:07|[1-69])|8(?:[0-26-9]|44|5[2-9])|9(?:[035-9]|2[2-9]|4[0-8]))|9"]
2260
+ ,"IN",91,"00","0",,,"0",,,,[[,"(\\d{5})(\\d{5})","$1 $2",["7(?:[023578]|4[0-57-9]|6[0-35-9]|99)|8(?:0[015689]|1[0-57-9]|2[2356-9]|3[0-57-9]|[45]|6[02457-9]|7[01-69]|8[0-24-9]|9[02-9])|9","7(?:[08]|2(?:[0235679]|[14][017-9]|8[0-79]|9[389])|3(?:[05-8]|1[07-9]|2[015-8]|3[17-9]|4[017-9]|9[015689])|4(?:[02][1-9]|1[014-9]|3\\d|[47][017-9]|5[059]|[89])|5(?:[034678]|2[03-9]|5[017-9]|9[7-9])|6(?:0[0-47]|1[0-257-9]|2[0-4]|3[19]|5[4589]|[6-9])|7(?:0[2-9]|[1-79]|8[1-9])|99[4-9])|8(?:0(?:[01589]|6[67])|1(?:[02-57-9]|1[0135-9])|2(?:[236-9]|5[1-9])|3(?:[0357-9]|4[1-9])|[45]|6[02457-9]|7(?:07|[1-69])|8(?:[0-26-9]|44|5[2-9])|9(?:[035-9]|2[2-9]|4[0-8]))|9","7(?:0|2(?:[0235679]|[14][017-9]|8(?:[0-569]|78)|9[389])|3(?:[05-8]|1(?:[089]|7[5-9])|2(?:[5-8]|[01][089])|3[17-9]|4(?:[07-9]|11)|9(?:[01689]|59))|4(?:0[1-9]|1(?:[015-9]|4[08])|2(?:[1-7][089]|[89])|3(?:[0-8][089]|9)|4(?:[089]|11|7[02-8])|5(?:0[089]|[59]9)|7(?:0[3-9]|11|7[02-8]|[89])|8(?:[0-24-7][089]|[389])|9(?:[0-6][089]|7[08]|[89]))|5(?:[034678]|2[03-9]|5[017-9]|9[7-9])|6(?:0[0-47]|1[0-257-9]|2[0-4]|3[19]|5[4589]|[6-9])|7(?:0[2-9]|[1-79]|8[1-9])|8(?:[0-79]|88[01])|99[4-9])|8(?:0(?:[01589]|6[67])|1(?:[02-57-9]|1[0135-9])|2(?:[236-9]|5[1-9])|3(?:[0357-9]|4[1-9])|[45]|6[02457-9]|7(?:07|[1-69])|8(?:[0-26-9]|44|5[2-9])|9(?:[035-9]|2[2-9]|4[0-8]))|9"]
2261
2261
  ,"0$1",,1]
2262
2262
  ,[,"(\\d{2})(\\d{4})(\\d{4})","$1 $2 $3",["11|2[02]|33|4[04]|79|80[2-46]"]
2263
2263
  ,"0$1",,1]
@@ -2269,6 +2269,8 @@ i18n.phonenumbers.metadata.countryToMetadata = {
2269
2269
  ,"0$1",,1]
2270
2270
  ,[,"(\\d{4})(\\d{3})(\\d{3})","$1 $2 $3",["1(?:[23579]|[468][1-9])|[2-8]"]
2271
2271
  ,"0$1",,1]
2272
+ ,[,"(\\d{2})(\\d{3})(\\d{4})(\\d{3})","$1 $2 $3 $4",["008"]
2273
+ ,"0$1",,1]
2272
2274
  ,[,"(1600)(\\d{2})(\\d{4})","$1 $2 $3",["160","1600"]
2273
2275
  ,"$1",,1]
2274
2276
  ,[,"(1800)(\\d{4,5})","$1 $2",["180","1800"]
@@ -2281,9 +2283,9 @@ i18n.phonenumbers.metadata.countryToMetadata = {
2281
2283
  ,"$1",,1]
2282
2284
  ]
2283
2285
  ,,[,,"NA","NA"]
2284
- ,,,[,,"1(?:600\\d{6}|8(?:0(?:0\\d{4,9}|3\\d{9})|6(?:0\\d{7}|[12]\\d{9})))","\\d{8,13}"]
2286
+ ,,,[,,"00800\\d{7}|1(?:600\\d{6}|8(?:0(?:0\\d{4,9}|3\\d{9})|6(?:0\\d{7}|[12]\\d{9})))","\\d{8,13}"]
2285
2287
  ,[,,"140\\d{7}","\\d{10}"]
2286
- ,,,[,,"NA","NA"]
2288
+ ,1,,[,,"NA","NA"]
2287
2289
  ]
2288
2290
  ,"IO":[,[,,"3\\d{6}","\\d{7}"]
2289
2291
  ,[,,"37\\d{5}","\\d{7}"]
@@ -2595,7 +2597,7 @@ i18n.phonenumbers.metadata.countryToMetadata = {
2595
2597
  ]
2596
2598
  ,"KN":[,[,,"[589]\\d{9}","\\d{7}(?:\\d{3})?"]
2597
2599
  ,[,,"869(?:2(?:29|36)|302|4(?:6[015-9]|70))\\d{4}","\\d{7}(?:\\d{3})?"]
2598
- ,[,,"869(?:5(?:5[6-8]|6[5-7])|66\\d|76[02-6])\\d{4}","\\d{10}"]
2600
+ ,[,,"869(?:5(?:5[6-8]|6[5-7])|66\\d|76[02-7])\\d{4}","\\d{10}"]
2599
2601
  ,[,,"8(?:00|44|55|66|77|88)[2-9]\\d{6}","\\d{10}"]
2600
2602
  ,[,,"900[2-9]\\d{6}","\\d{10}"]
2601
2603
  ,[,,"NA","NA"]
@@ -2687,7 +2689,7 @@ i18n.phonenumbers.metadata.countryToMetadata = {
2687
2689
  ]
2688
2690
  ,"KW":[,[,,"[12569]\\d{6,7}","\\d{7,8}"]
2689
2691
  ,[,,"(?:18\\d|2(?:[23]\\d{2}|4(?:[1-35-9]\\d|44)|5(?:0[034]|[2-46]\\d|5[1-3]|7[1-7])))\\d{4}","\\d{7,8}"]
2690
- ,[,,"(?:5(?:[05]\\d{2}|1[0-7]\\d|2(?:22|5[25]))|6(?:0[034679]\\d|5[015-9]\\d|6\\d{2}|7[067]\\d|9[0369]\\d)|9(?:0[09]\\d|22\\d|4[01479]\\d|55\\d|6[0679]\\d|[79]\\d{2}|8[057-9]\\d))\\d{4}","\\d{8}"]
2692
+ ,[,,"(?:5(?:[05]\\d{2}|1[0-7]\\d|2(?:22|5[25])|66\\d)|6(?:0[034679]\\d|222|5[015-9]\\d|6\\d{2}|7[067]\\d|9[0369]\\d)|9(?:0[09]\\d|22\\d|4[01479]\\d|55\\d|6[0679]\\d|[79]\\d{2}|8[057-9]\\d))\\d{4}","\\d{8}"]
2691
2693
  ,[,,"NA","NA"]
2692
2694
  ,[,,"NA","NA"]
2693
2695
  ,[,,"NA","NA"]
@@ -2695,7 +2697,7 @@ i18n.phonenumbers.metadata.countryToMetadata = {
2695
2697
  ,[,,"NA","NA"]
2696
2698
  ,"KW",965,"00",,,,,,,,[[,"(\\d{4})(\\d{3,4})","$1 $2",["[16]|2(?:[0-35-9]|4[0-35-9])|9[024-9]|52[25]"]
2697
2699
  ]
2698
- ,[,"(\\d{3})(\\d{5})","$1 $2",["244|5[015]"]
2700
+ ,[,"(\\d{3})(\\d{5})","$1 $2",["244|5(?:[015]|66)"]
2699
2701
  ]
2700
2702
  ]
2701
2703
  ,,[,,"NA","NA"]
@@ -2910,7 +2912,7 @@ i18n.phonenumbers.metadata.countryToMetadata = {
2910
2912
  ,,,[,,"NA","NA"]
2911
2913
  ]
2912
2914
  ,"LV":[,[,,"[2689]\\d{7}","\\d{8}"]
2913
- ,[,,"6[3-8]\\d{6}","\\d{8}"]
2915
+ ,[,,"6\\d{7}","\\d{8}"]
2914
2916
  ,[,,"2\\d{7}","\\d{8}"]
2915
2917
  ,[,,"80\\d{6}","\\d{8}"]
2916
2918
  ,[,,"90\\d{6}","\\d{8}"]
@@ -3880,16 +3882,20 @@ i18n.phonenumbers.metadata.countryToMetadata = {
3880
3882
  ,[,,"NA","NA"]
3881
3883
  ,[,,"NA","NA"]
3882
3884
  ,[,,"8700[0-4]\\d{4}","\\d{9}"]
3883
- ,"PY",595,"00","0",,,"0",,,,[[,"(\\d{2})(\\d{5,7})","$1 $2",["(?:[26]1|3[289]|4[124678]|7[123]|8[1236])"]
3884
- ,"($1)"]
3885
+ ,"PY",595,"00","0",,,"0",,,,[[,"(\\d{2})(\\d{5})","$1 $2",["(?:[26]1|3[289]|4[124678]|7[123]|8[1236])"]
3886
+ ,"(0$1)"]
3887
+ ,[,"(\\d{2})(\\d{3})(\\d{3,4})","$1 $2 $3",["(?:[26]1|3[289]|4[124678]|7[123]|8[1236])"]
3888
+ ,"(0$1)"]
3885
3889
  ,[,"(\\d{3})(\\d{3,6})","$1 $2",["[2-9]0"]
3886
3890
  ,"0$1"]
3887
3891
  ,[,"(\\d{3})(\\d{6})","$1 $2",["9[1-9]"]
3888
3892
  ,"0$1"]
3889
3893
  ,[,"(\\d{2})(\\d{3})(\\d{4})","$1 $2 $3",["8700"]
3890
3894
  ]
3891
- ,[,"(\\d{3})(\\d{4,6})","$1 $2",["[2-8][1-9]"]
3892
- ,"($1)"]
3895
+ ,[,"(\\d{3})(\\d{4,5})","$1 $2",["[2-8][1-9]"]
3896
+ ,"(0$1)"]
3897
+ ,[,"(\\d{3})(\\d{3})(\\d{3})","$1 $2 $3",["[2-8][1-9]"]
3898
+ ,"0$1"]
3893
3899
  ]
3894
3900
  ,,[,,"NA","NA"]
3895
3901
  ,,,[,,"NA","NA"]
@@ -4228,7 +4234,7 @@ i18n.phonenumbers.metadata.countryToMetadata = {
4228
4234
  ]
4229
4235
  ,"SK":[,[,,"(?:[2-68]\\d{5,8}|9\\d{6,8})","\\d{6,9}"]
4230
4236
  ,[,,"2(?:16\\d{3,4}|\\d{8})|[3-5](?:[1-8]16\\d{2,3}|\\d{8})","\\d{6,9}"]
4231
- ,[,,"9(?:0[1-8]|1[0-24-9]|4[0489]|50)\\d{6}","\\d{9}"]
4237
+ ,[,,"9(?:0(?:[1-8]\\d|9[1-9])|(?:1[0-24-9]|4[0489]|50)\\d)\\d{5}","\\d{9}"]
4232
4238
  ,[,,"800\\d{6}","\\d{9}"]
4233
4239
  ,[,,"9(?:[78]\\d{7}|00\\d{6})","\\d{9}"]
4234
4240
  ,[,,"8[5-9]\\d{7}","\\d{9}"]
@@ -4296,7 +4302,7 @@ i18n.phonenumbers.metadata.countryToMetadata = {
4296
4302
  ]
4297
4303
  ,"SN":[,[,,"[3789]\\d{8}","\\d{9}"]
4298
4304
  ,[,,"3(?:0(?:1[0-2]|80)|282|3(?:8[1-9]|9[3-9])|611|90[1-5])\\d{5}","\\d{9}"]
4299
- ,[,,"7(?:[067]\\d|21|8[0-26]|90)\\d{6}","\\d{9}"]
4305
+ ,[,,"7(?:[067]\\d|21|8[0-46]|90)\\d{6}","\\d{9}"]
4300
4306
  ,[,,"800\\d{6}","\\d{9}"]
4301
4307
  ,[,,"88[4689]\\d{6}","\\d{9}"]
4302
4308
  ,[,,"81[02468]\\d{6}","\\d{9}"]
@@ -4466,7 +4472,7 @@ i18n.phonenumbers.metadata.countryToMetadata = {
4466
4472
  ]
4467
4473
  ,"TC":[,[,,"[5689]\\d{9}","\\d{7}(?:\\d{3})?"]
4468
4474
  ,[,,"649(?:712|9(?:4\\d|50))\\d{4}","\\d{7}(?:\\d{3})?"]
4469
- ,[,,"649(?:2(?:3[129]|4[1-7])|3(?:3[1-389]|4[1-7])|4[34][1-3])\\d{4}","\\d{10}"]
4475
+ ,[,,"649(?:2(?:3[129]|4[1-7])|3(?:3[1-389]|4[1-8])|4[34][1-3])\\d{4}","\\d{10}"]
4470
4476
  ,[,,"8(?:00|44|55|66|77|88)[2-9]\\d{6}","\\d{10}"]
4471
4477
  ,[,,"900[2-9]\\d{6}","\\d{10}"]
4472
4478
  ,[,,"NA","NA"]
@@ -4509,7 +4515,7 @@ i18n.phonenumbers.metadata.countryToMetadata = {
4509
4515
  ]
4510
4516
  ,"TH":[,[,,"[2-9]\\d{7,8}|1\\d{3}(?:\\d{5,6})?","\\d{4}|\\d{8,10}"]
4511
4517
  ,[,,"(?:2\\d|3[2-9]|4[2-5]|5[2-6]|7[3-7])\\d{6}","\\d{8}"]
4512
- ,[,,"(?:14|6[1-3]|[89]\\d)\\d{7}","\\d{9}"]
4518
+ ,[,,"(?:14|6[1-4]|[89]\\d)\\d{7}","\\d{9}"]
4513
4519
  ,[,,"1800\\d{6}","\\d{10}"]
4514
4520
  ,[,,"1900\\d{6}","\\d{10}"]
4515
4521
  ,[,,"NA","NA"]
@@ -4529,7 +4535,7 @@ i18n.phonenumbers.metadata.countryToMetadata = {
4529
4535
  ]
4530
4536
  ,"TJ":[,[,,"[3-589]\\d{8}","\\d{3,9}"]
4531
4537
  ,[,,"(?:3(?:1[3-5]|2[245]|3[12]|4[24-7]|5[25]|72)|4(?:46|74|87))\\d{6}","\\d{3,9}"]
4532
- ,[,,"(?:41[18]|50[125]|88\\d|9[0-35-9]\\d)\\d{6}","\\d{9}"]
4538
+ ,[,,"(?:41[18]|5(?:0[125]|5\\d)|88\\d|9[0-35-9]\\d)\\d{6}","\\d{9}"]
4533
4539
  ,[,,"NA","NA"]
4534
4540
  ,[,,"NA","NA"]
4535
4541
  ,[,,"NA","NA"]
@@ -4703,7 +4709,7 @@ i18n.phonenumbers.metadata.countryToMetadata = {
4703
4709
  ]
4704
4710
  ,"TZ":[,[,,"\\d{9}","\\d{7,9}"]
4705
4711
  ,[,,"2[2-8]\\d{7}","\\d{7,9}"]
4706
- ,[,,"(?:6[25-8]|7[13-9])\\d{7}","\\d{9}"]
4712
+ ,[,,"(?:6[125-9]|7[1-9])\\d{7}","\\d{9}"]
4707
4713
  ,[,,"80[08]\\d{6}","\\d{9}"]
4708
4714
  ,[,,"90\\d{7}","\\d{9}"]
4709
4715
  ,[,,"8(?:40|6[01])\\d{6}","\\d{9}"]
@@ -4762,8 +4768,8 @@ i18n.phonenumbers.metadata.countryToMetadata = {
4762
4768
  ,,,[,,"NA","NA"]
4763
4769
  ]
4764
4770
  ,"US":[,[,,"[2-9]\\d{9}","\\d{7}(?:\\d{3})?"]
4765
- ,[,,"(?:2(?:0[1-35-9]|1[02-9]|2[04589]|3[149]|4[08]|5[1-46]|6[0279]|7[026]|8[13])|3(?:0[1-57-9]|1[02-9]|2[0135]|3[014679]|4[67]|5[12]|6[014]|8[056])|4(?:0[124-9]|1[02-579]|2[3-5]|3[0245]|4[0235]|58|69|7[0589]|8[04])|5(?:0[1-57-9]|1[0235-8]|20|3[0149]|4[01]|5[19]|6[1-37]|7[013-5]|8[056])|6(?:0[1-35-9]|1[024-9]|2[03689]|3[016]|4[16]|5[017]|6[0-279]|78|8[12])|7(?:0[1-46-8]|1[02-9]|2[0457]|3[1247]|4[037]|5[47]|6[02359]|7[02-59]|8[156])|8(?:0[1-68]|1[02-8]|28|3[0-25]|4[3578]|5[046-9]|6[02-5]|7[028])|9(?:0[1346-9]|1[02-9]|2[0589]|3[01678]|4[0179]|5[12469]|7[0-3589]|8[0459]))[2-9]\\d{6}","\\d{7}(?:\\d{3})?"]
4766
- ,[,,"(?:2(?:0[1-35-9]|1[02-9]|2[04589]|3[149]|4[08]|5[1-46]|6[0279]|7[026]|8[13])|3(?:0[1-57-9]|1[02-9]|2[0135]|3[014679]|4[67]|5[12]|6[014]|8[056])|4(?:0[124-9]|1[02-579]|2[3-5]|3[0245]|4[0235]|58|69|7[0589]|8[04])|5(?:0[1-57-9]|1[0235-8]|20|3[0149]|4[01]|5[19]|6[1-37]|7[013-5]|8[056])|6(?:0[1-35-9]|1[024-9]|2[03689]|3[016]|4[16]|5[017]|6[0-279]|78|8[12])|7(?:0[1-46-8]|1[02-9]|2[0457]|3[1247]|4[037]|5[47]|6[02359]|7[02-59]|8[156])|8(?:0[1-68]|1[02-8]|28|3[0-25]|4[3578]|5[046-9]|6[02-5]|7[028])|9(?:0[1346-9]|1[02-9]|2[0589]|3[01678]|4[0179]|5[12469]|7[0-3589]|8[0459]))[2-9]\\d{6}","\\d{7}(?:\\d{3})?"]
4771
+ ,[,,"(?:2(?:0[1-35-9]|1[02-9]|2[04589]|3[149]|4[08]|5[1-46]|6[0279]|7[026]|8[13])|3(?:0[1-57-9]|1[02-9]|2[0135]|3[014679]|4[67]|5[12]|6[014]|8[056])|4(?:0[124-9]|1[02-579]|2[3-5]|3[0245]|4[0235]|58|69|7[0589]|8[04])|5(?:0[1-57-9]|1[0235-8]|20|3[0149]|4[01]|5[19]|6[1-37]|7[013-5]|8[056])|6(?:0[1-35-9]|1[024-9]|2[03689]|3[016]|4[16]|5[017]|6[0-279]|78|8[12])|7(?:0[1-46-8]|1[02-9]|2[0457]|3[1247]|4[037]|5[47]|6[02359]|7[02-59]|8[156])|8(?:0[1-68]|1[02-8]|28|3[0-25]|4[3578]|5[046-9]|6[02-5]|7[028])|9(?:0[1346-9]|1[02-9]|2[0589]|3[014678]|4[0179]|5[12469]|7[0-3589]|8[0459]))[2-9]\\d{6}","\\d{7}(?:\\d{3})?"]
4772
+ ,[,,"(?:2(?:0[1-35-9]|1[02-9]|2[04589]|3[149]|4[08]|5[1-46]|6[0279]|7[026]|8[13])|3(?:0[1-57-9]|1[02-9]|2[0135]|3[014679]|4[67]|5[12]|6[014]|8[056])|4(?:0[124-9]|1[02-579]|2[3-5]|3[0245]|4[0235]|58|69|7[0589]|8[04])|5(?:0[1-57-9]|1[0235-8]|20|3[0149]|4[01]|5[19]|6[1-37]|7[013-5]|8[056])|6(?:0[1-35-9]|1[024-9]|2[03689]|3[016]|4[16]|5[017]|6[0-279]|78|8[12])|7(?:0[1-46-8]|1[02-9]|2[0457]|3[1247]|4[037]|5[47]|6[02359]|7[02-59]|8[156])|8(?:0[1-68]|1[02-8]|28|3[0-25]|4[3578]|5[046-9]|6[02-5]|7[028])|9(?:0[1346-9]|1[02-9]|2[0589]|3[014678]|4[0179]|5[12469]|7[0-3589]|8[0459]))[2-9]\\d{6}","\\d{7}(?:\\d{3})?"]
4767
4773
  ,[,,"8(?:00|44|55|66|77|88)[2-9]\\d{6}","\\d{10}"]
4768
4774
  ,[,,"900[2-9]\\d{6}","\\d{10}"]
4769
4775
  ,[,,"NA","NA"]
@@ -1636,6 +1636,22 @@
1636
1636
  </leadingDigits>
1637
1637
  <format>$1 $2 $3</format>
1638
1638
  </numberFormat>
1639
+ <numberFormat pattern="(\d{2})(\d{6,7})">
1640
+ <leadingDigits>
1641
+ (?:
1642
+ [26]1|
1643
+ 3[289]|
1644
+ 4[124678]|
1645
+ 7[123]|
1646
+ 8[1236]
1647
+ )
1648
+ </leadingDigits>
1649
+ <format>$1 $2</format>
1650
+ </numberFormat>
1651
+ <numberFormat pattern="(\d{3})(\d{6})">
1652
+ <leadingDigits>[2-8][1-9]</leadingDigits>
1653
+ <format>$1 $2</format>
1654
+ </numberFormat>
1639
1655
  </availableFormats>
1640
1656
  </territory>
1641
1657
 
@@ -1932,6 +1932,8 @@
1932
1932
  </leadingDigits>
1933
1933
  <format>$1 $2 $3 $4</format>
1934
1934
  </numberFormat>
1935
+ <!-- ITU uses XX XXX XXXX for mobile numbers, but numbers online typically
1936
+ use XX XXX XX XX. -->
1935
1937
  <numberFormat pattern="(\d{2})(\d{3})(\d{2})(\d{2})" nationalPrefixFormattingRule="$NP$FG">
1936
1938
  <leadingDigits>[4-8]</leadingDigits>
1937
1939
  <format>$1 $2 $3 $4</format>
@@ -1946,10 +1948,13 @@
1946
1948
  <nationalNumberPattern>[1-9]\d{8}</nationalNumberPattern>
1947
1949
  <possibleNumberPattern>\d{7,9}</possibleNumberPattern>
1948
1950
  </generalDesc>
1951
+ <!-- 12109 fixed line numbers are mentioned as "Information Operator Assistance"
1952
+ by ITU. Added it to fixedline numbers as whole 12 range numbers are fixedline
1953
+ numbers in Baku. -->
1949
1954
  <fixedLine>
1950
1955
  <nationalNumberPattern>
1951
1956
  (?:
1952
- 1[28]\d|
1957
+ 1[28]\d{3}|
1953
1958
  2(?:
1954
1959
  02|
1955
1960
  1[24]|
@@ -1957,20 +1962,28 @@
1957
1962
  33|
1958
1963
  [45]2|
1959
1964
  6[23]
1960
- )|
1961
- 365
1962
- )\d{6}
1965
+ )\d{2}|
1966
+ 365(?:
1967
+ [0-46-9]\d|
1968
+ 5[0-35-9]
1969
+ )
1970
+ )\d{4}
1963
1971
  </nationalNumberPattern>
1964
1972
  <exampleNumber>123123456</exampleNumber>
1965
1973
  </fixedLine>
1966
1974
  <mobile>
1975
+ <!-- Prefix 36554 is added to mobile as per confirmation from Ministry of
1976
+ Communications in Azerbaijan. -->
1967
1977
  <nationalNumberPattern>
1968
1978
  (?:
1969
- 4[04]|
1970
- 5[015]|
1971
- 60|
1972
- 7[07]
1973
- )\d{7}
1979
+ 36554|
1980
+ (?:
1981
+ 4[04]|
1982
+ 5[015]|
1983
+ 60|
1984
+ 7[07]
1985
+ )\d{3}
1986
+ )\d{4}
1974
1987
  </nationalNumberPattern>
1975
1988
  <possibleNumberPattern>\d{9}</possibleNumberPattern>
1976
1989
  <exampleNumber>401234567</exampleNumber>
@@ -2188,8 +2201,10 @@
2188
2201
  </territory>
2189
2202
 
2190
2203
  <!-- Bangladesh -->
2191
- <territory id="BD" countryCode="880" internationalPrefix="00[12]?"
2192
- preferredInternationalPrefix="00"
2204
+ <!-- As per official evidence, 001 and 002 can be used for International dialing covering toll
2205
+ quality and non-toll quality services. But these are not in use according to our tests
2206
+ (see b/29552679). -->
2207
+ <territory id="BD" countryCode="880" internationalPrefix="00"
2193
2208
  nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG">
2194
2209
  <references>
2195
2210
  <sourceUrl>http://www.itu.int/oth/T0202000012/en</sourceUrl>
@@ -2747,9 +2762,9 @@
2747
2762
  <!-- Formatting rules follow the conventions seen in web-search results. A space has been
2748
2763
  used to separate the area code from the rest of the number, based on sites like
2749
2764
  http://www.goldenpages.bg. -->
2750
- <numberFormat pattern="(2)(\d{5})">
2751
- <leadingDigits>29</leadingDigits>
2752
- <format>$1 $2</format>
2765
+ <numberFormat pattern="(2)(\d)(\d{2})(\d{2})">
2766
+ <leadingDigits>2</leadingDigits>
2767
+ <format>$1 $2 $3 $4</format>
2753
2768
  </numberFormat>
2754
2769
  <numberFormat pattern="(2)(\d{3})(\d{3,4})">
2755
2770
  <leadingDigits>2</leadingDigits>
@@ -2804,13 +2819,10 @@
2804
2819
  <possibleNumberPattern>\d{5,9}</possibleNumberPattern>
2805
2820
  </generalDesc>
2806
2821
  <fixedLine>
2807
- <!-- 29xxxx numbers have been added because they can be found online, and are typically
2808
- used by taxi companies. -->
2822
+ <!-- We found evidence at least for ranges 28 and 29 followed by 4 digits in 2016, although
2823
+ the latest ITU doc doesn't mention that. -->
2809
2824
  <nationalNumberPattern>
2810
- 2(?:
2811
- [0-8]\d{5,6}|
2812
- 9\d{4,6}
2813
- )|
2825
+ 2\d{5,7}|
2814
2826
  (?:
2815
2827
  [36]\d|
2816
2828
  5[1-9]|
@@ -2918,13 +2930,14 @@
2918
2930
  <exampleNumber>17001234</exampleNumber>
2919
2931
  </fixedLine>
2920
2932
  <!-- 31 is assigned to Royal Court, as per documents on Bahrain's own telecom site, even
2921
- though it is omitted from the ITU document. -->
2933
+ though it is omitted from the ITU document. Based on online evidences added prefix
2934
+ 354 to mobile. -->
2922
2935
  <mobile>
2923
2936
  <nationalNumberPattern>
2924
2937
  (?:
2925
2938
  3(?:
2926
2939
  [1-4679]\d|
2927
- 5[013569]|
2940
+ 5[013-69]|
2928
2941
  8[0-47-9]
2929
2942
  )\d|
2930
2943
  6(?:
@@ -3993,8 +4006,8 @@
3993
4006
  <!-- Wikipedia and ITU seem out of date, but say that for a number in the format ZNY-XXXX
3994
4007
  Z represents the district code (or 6 for mobile), N the type of number and Y the first
3995
4008
  digit of the customer's number. Only N = 0 and 2 are supposedly in use, but we have
3996
- found many numbers starting with 732 online. No evidence has been found about the
3997
- category of 732 numbers. -->
4009
+ found many numbers starting with 732 online. When emailed, Belize Telemedia Ltd
4010
+ confirmed these numbers belong to the Landline Postpaid PSTN category. -->
3998
4011
  <nationalNumberPattern>
3999
4012
  (?:
4000
4013
  [23458][02]\d|
@@ -4518,7 +4531,8 @@
4518
4531
  (Moov) based on numbers found online. The prefix 56 was assigned to MTN in July 2013:
4519
4532
  http://www.atci.ci/images/stories/pdf/decisions-dg/decision_002.pdf
4520
4533
  The prefix 75 is from an open-source bug report.
4521
- 50 has been removed since Warid seems to have stopped operation in Côte d'Ivoire. -->
4534
+ 50 has been removed since Warid seems to have stopped operation in Côte d'Ivoire.
4535
+ Added mobile prefix 89 from user report and online evidence. -->
4522
4536
  <nationalNumberPattern>
4523
4537
  (?:
4524
4538
  0[1-9]|
@@ -4526,7 +4540,7 @@
4526
4540
  5[14-9]|
4527
4541
  6[015-79]|
4528
4542
  7[578]|
4529
- 87
4543
+ 8[79]
4530
4544
  )\d{6}
4531
4545
  </nationalNumberPattern>
4532
4546
  <exampleNumber>01234567</exampleNumber>
@@ -5150,13 +5164,14 @@
5150
5164
  <exampleNumber>1012345678</exampleNumber>
5151
5165
  </fixedLine>
5152
5166
  <mobile>
5153
- <!-- 170, 176, 177 and 178 prefixes are introduced in early 2014 for 4G networks. -->
5167
+ <!-- 170, 176, 177 and 178 prefixes are introduced in early 2014 for 4G networks.
5168
+ 171 is a valid mobile range as per online evidence. -->
5154
5169
  <nationalNumberPattern>
5155
5170
  1(?:
5156
5171
  [38]\d|
5157
5172
  4[57]|
5158
5173
  5[0-35-9]|
5159
- 7[036-8]
5174
+ 7[0136-8]
5160
5175
  )\d{8}
5161
5176
  </nationalNumberPattern>
5162
5177
  <possibleNumberPattern>\d{11}</possibleNumberPattern>
@@ -9434,7 +9449,8 @@
9434
9449
  </territory>
9435
9450
 
9436
9451
  <!-- Hong Kong -->
9437
- <territory id="HK" countryCode="852" internationalPrefix="00" mobileNumberPortableRegion="true">
9452
+ <territory id="HK" countryCode="852" internationalPrefix="00(?:[126-9]|30|5[09])?"
9453
+ preferredInternationalPrefix="00" mobileNumberPortableRegion="true">
9438
9454
  <references>
9439
9455
  <sourceUrl>http://www.ofca.gov.hk/en/industry_focus/telecommunications/portability/index.html</sourceUrl>
9440
9456
  </references>
@@ -9542,8 +9558,8 @@
9542
9558
  <possibleNumberPattern>\d{8}</possibleNumberPattern>
9543
9559
  </generalDesc>
9544
9560
  <fixedLine>
9545
- <!-- Extra prefixes 227[01389], 228X, 2292, 260X and 263[04] were added from numbers
9546
- found online. -->
9561
+ <!-- Extra prefixes 227[01389], 228X, 2292, 2407, 2516, 2564, 260X, 2617, 263[04] and 2780
9562
+ were added from numbers found online and user reports. -->
9547
9563
  <nationalNumberPattern>
9548
9564
  2(?:
9549
9565
  2(?:
@@ -9557,19 +9573,22 @@
9557
9573
  9[012]
9558
9574
  )|
9559
9575
  4(?:
9576
+ 07|
9560
9577
  2[3-59]|
9561
9578
  3[13-689]|
9562
9579
  4[0-68]|
9563
9580
  5[1-35]
9564
9581
  )|
9565
9582
  5(?:
9583
+ 16|
9566
9584
  4[3-5]|
9567
9585
  5\d|
9568
- 6[56]|
9586
+ 6[4-6]|
9569
9587
  74
9570
9588
  )|
9571
9589
  6(?:
9572
9590
  [056]\d|
9591
+ 17|
9573
9592
  3[04]|
9574
9593
  4[0-378]|
9575
9594
  [78][0-8]|
@@ -9578,7 +9597,7 @@
9578
9597
  7(?:
9579
9598
  6[46-9]|
9580
9599
  7[02-9]|
9581
- 8[34]
9600
+ 8[034]
9582
9601
  )|
9583
9602
  8(?:
9584
9603
  79|
@@ -10571,8 +10590,8 @@
10571
10590
  - fixed line changes are notified on the http://www.bsnl.co.in website. Area codes can be
10572
10591
  verified here at http://dq.ndc.bsnl.co.in/bsnl-web/stdSearch.seam. -->
10573
10592
  <territory id="IN" countryCode="91" internationalPrefix="00" nationalPrefix="0"
10574
- nationalPrefixFormattingRule="$NP$FG" nationalPrefixOptionalWhenFormatting="true"
10575
- mobileNumberPortableRegion="true">
10593
+ leadingZeroPossible="true" nationalPrefixFormattingRule="$NP$FG"
10594
+ nationalPrefixOptionalWhenFormatting="true" mobileNumberPortableRegion="true">
10576
10595
  <references>
10577
10596
  <sourceUrl>http://www.itu.int/oth/T0202000063/en</sourceUrl>
10578
10597
  <sourceUrl>http://en.wikipedia.org/wiki/%2B91</sourceUrl>
@@ -10584,10 +10603,9 @@
10584
10603
  <numberFormat pattern="(\d{5})(\d{5})">
10585
10604
  <leadingDigits>
10586
10605
  7(?:
10587
- [02357]|
10588
- 4[0-389]|
10606
+ [023578]|
10607
+ 4[0-57-9]|
10589
10608
  6[0-35-9]|
10590
- 8[0-79]|
10591
10609
  99
10592
10610
  )|
10593
10611
  8(?:
@@ -10605,11 +10623,11 @@
10605
10623
  </leadingDigits>
10606
10624
  <leadingDigits>
10607
10625
  7(?:
10608
- 0|
10626
+ [08]|
10609
10627
  2(?:
10610
10628
  [0235679]|
10611
10629
  [14][017-9]|
10612
- 8[0-59]|
10630
+ 8[0-79]|
10613
10631
  9[389]
10614
10632
  )|
10615
10633
  3(?:
@@ -10618,14 +10636,15 @@
10618
10636
  2[015-8]|
10619
10637
  3[17-9]|
10620
10638
  4[017-9]|
10621
- 9[01689]
10639
+ 9[015689]
10622
10640
  )|
10623
10641
  4(?:
10624
- 0[1-9]|
10642
+ [02][1-9]|
10625
10643
  1[014-9]|
10626
- [29][89]|
10627
- 39|
10628
- 8[389]
10644
+ 3\d|
10645
+ [47][017-9]|
10646
+ 5[059]|
10647
+ [89]
10629
10648
  )|
10630
10649
  5(?:
10631
10650
  [034678]|
@@ -10646,7 +10665,6 @@
10646
10665
  [1-79]|
10647
10666
  8[1-9]
10648
10667
  )|
10649
- 8[0-79]|
10650
10668
  99[4-9]
10651
10669
  )|
10652
10670
  8(?:
@@ -10692,7 +10710,10 @@
10692
10710
  2(?:
10693
10711
  [0235679]|
10694
10712
  [14][017-9]|
10695
- 8[0-59]|
10713
+ 8(?:
10714
+ [0-569]|
10715
+ 78
10716
+ )|
10696
10717
  9[389]
10697
10718
  )|
10698
10719
  3(?:
@@ -10710,7 +10731,10 @@
10710
10731
  [07-9]|
10711
10732
  11
10712
10733
  )|
10713
- 9[01689]
10734
+ 9(?:
10735
+ [01689]|
10736
+ 59
10737
+ )
10714
10738
  )|
10715
10739
  4(?:
10716
10740
  0[1-9]|
@@ -10718,9 +10742,38 @@
10718
10742
  [015-9]|
10719
10743
  4[08]
10720
10744
  )|
10721
- [29][89]|
10722
- 39|
10723
- 8[389]
10745
+ 2(?:
10746
+ [1-7][089]|
10747
+ [89]
10748
+ )|
10749
+ 3(?:
10750
+ [0-8][089]|
10751
+ 9
10752
+ )|
10753
+ 4(?:
10754
+ [089]|
10755
+ 11|
10756
+ 7[02-8]
10757
+ )|
10758
+ 5(?:
10759
+ 0[089]|
10760
+ [59]9
10761
+ )|
10762
+ 7(?:
10763
+ 0[3-9]|
10764
+ 11|
10765
+ 7[02-8]|
10766
+ [89]
10767
+ )|
10768
+ 8(?:
10769
+ [0-24-7][089]|
10770
+ [389]
10771
+ )|
10772
+ 9(?:
10773
+ [0-6][089]|
10774
+ 7[08]|
10775
+ [89]
10776
+ )
10724
10777
  )|
10725
10778
  5(?:
10726
10779
  [034678]|
@@ -10741,7 +10794,10 @@
10741
10794
  [1-79]|
10742
10795
  8[1-9]
10743
10796
  )|
10744
- 8[0-79]|
10797
+ 8(?:
10798
+ [0-79]|
10799
+ 88[01]
10800
+ )|
10745
10801
  99[4-9]
10746
10802
  )|
10747
10803
  8(?:
@@ -10909,6 +10965,10 @@
10909
10965
  </leadingDigits>
10910
10966
  <format>$1 $2 $3</format>
10911
10967
  </numberFormat>
10968
+ <numberFormat pattern="(\d{2})(\d{3})(\d{4})(\d{3})">
10969
+ <leadingDigits>008</leadingDigits>
10970
+ <format>$1 $2 $3 $4</format>
10971
+ </numberFormat>
10912
10972
  <numberFormat nationalPrefixFormattingRule="$FG"
10913
10973
  pattern="(1600)(\d{2})(\d{4})">
10914
10974
  <leadingDigits>160</leadingDigits>
@@ -10948,6 +11008,7 @@
10948
11008
  </availableFormats>
10949
11009
  <generalDesc>
10950
11010
  <nationalNumberPattern>
11011
+ 008\d{9}|
10951
11012
  1\d{7,12}|
10952
11013
  [2-9]\d{9,10}
10953
11014
  </nationalNumberPattern>
@@ -10955,6 +11016,7 @@
10955
11016
  </generalDesc>
10956
11017
  <noInternationalDialling>
10957
11018
  <nationalNumberPattern>
11019
+ 00800\d{7}|
10958
11020
  1(?:
10959
11021
  600\d{6}|
10960
11022
  8(?:
@@ -11158,26 +11220,32 @@
11158
11220
  <!-- http://en.wikipedia.org/wiki/Mobile_telephone_numbering_in_India -->
11159
11221
  <!-- The document titled "List of MSC codes" linked off
11160
11222
  http://www.dot.gov.in/access-services/national-numbering-plan-2003 was helpful but last
11161
- updated 2012 - more updates at http://www.dot.gov.in/access-services/allotment-msc-codes. -->
11223
+ updated 2012 - more updates at http://www.dot.gov.in/access-services/allotment-msc-codes.
11224
+ -->
11162
11225
  <mobile>
11163
11226
  <!-- A couple of additional prefixes found neither on the wikipedia page nor in the MSC
11164
11227
  codes list, are added because SMS messages have been successfully sent to these
11165
11228
  numbers. It seems almost impossible to know for some of these numbers whether they are
11166
11229
  land-line or mobile, since the ranges overlap. We go to a maximum depth of five where
11167
11230
  necessary to distinguish between mobile and fixed-line numbers. Extra prefixes added:
11168
- 7601, 768[56], 7695, 8299, 8309. New prefixes were also added based on the document
11169
- provided from mobile carriers: https://github.com/googlei18n/libphonenumber/issues/260
11170
- and https://github.com/googlei18n/libphonenumber/pull/692/ -->
11231
+ 72878, 74599, 7601, 768[56], 7695, 8299, 8309. New prefixes were also added based on
11232
+ the document provided from mobile carriers:
11233
+ https://github.com/googlei18n/libphonenumber/issues/260 and
11234
+ https://github.com/googlei18n/libphonenumber/pull/692/ -->
11171
11235
  <nationalNumberPattern>
11172
11236
  (?:
11173
11237
  7(?:
11174
11238
  0\d{3}|
11175
11239
  2(?:
11176
- [0235679]\d|
11177
- [14][017-9]|
11178
- 8[0-59]|
11179
- 9[389]
11180
- )\d|
11240
+ [0235679]\d{2}|
11241
+ [14][017-9]\d|
11242
+ 8(?:
11243
+ [0-59]\d|
11244
+ 6[089]|
11245
+ 78
11246
+ )|
11247
+ 9[389]\d
11248
+ )|
11181
11249
  3(?:
11182
11250
  [05-8]\d{2}|
11183
11251
  1(?:
@@ -11193,7 +11261,10 @@
11193
11261
  [07-9]\d|
11194
11262
  11
11195
11263
  )|
11196
- 9[01689]\d
11264
+ 9(?:
11265
+ [01689]\d|
11266
+ 59
11267
+ )
11197
11268
  )|
11198
11269
  4(?:
11199
11270
  0[1-9]\d|
@@ -11201,9 +11272,38 @@
11201
11272
  [015-9]\d|
11202
11273
  4[08]
11203
11274
  )|
11204
- [29][89]\d|
11205
- 39\d|
11206
- 8[389]\d
11275
+ 2(?:
11276
+ [1-7][089]|
11277
+ [89]\d
11278
+ )|
11279
+ 3(?:
11280
+ [0-8][089]|
11281
+ 9\d
11282
+ )|
11283
+ 4(?:
11284
+ [089]\d|
11285
+ 11|
11286
+ 7[02-8]
11287
+ )|
11288
+ 5(?:
11289
+ 0[089]|
11290
+ [59]9
11291
+ )|
11292
+ 7(?:
11293
+ 0[3-9]|
11294
+ 11|
11295
+ 7[02-8]|
11296
+ [89]\d
11297
+ )|
11298
+ 8(?:
11299
+ [0-24-7][089]|
11300
+ [389]\d
11301
+ )|
11302
+ 9(?:
11303
+ [0-6][089]|
11304
+ 7[08]|
11305
+ [89]\d
11306
+ )
11207
11307
  )|
11208
11308
  5(?:
11209
11309
  [034678]\d|
@@ -11224,7 +11324,10 @@
11224
11324
  [1-79]\d|
11225
11325
  8[1-9]
11226
11326
  )\d|
11227
- 8[0-79]\d{2}|
11327
+ 8(?:
11328
+ [0-79]\d{2}|
11329
+ 88[01]
11330
+ )|
11228
11331
  99[4-9]\d
11229
11332
  )|
11230
11333
  8(?:
@@ -11265,7 +11368,7 @@
11265
11368
  )\d{5}
11266
11369
  </nationalNumberPattern>
11267
11370
  <possibleNumberPattern>\d{10}</possibleNumberPattern>
11268
- <exampleNumber>9123456789</exampleNumber>
11371
+ <exampleNumber>9987654321</exampleNumber>
11269
11372
  </mobile>
11270
11373
  <tollFree>
11271
11374
  <!-- Information gathered from sites such as
@@ -11273,6 +11376,7 @@
11273
11376
  http://indmusings.blogspot.com/2008/09/free-help-line-numbersindia.html
11274
11377
  http://www.bsnl.co.in/service/telev.htm -->
11275
11378
  <nationalNumberPattern>
11379
+ 00800\d{7}|
11276
11380
  1(?:
11277
11381
  600\d{6}|
11278
11382
  80(?:
@@ -13749,7 +13853,7 @@
13749
13853
  6[5-7]
13750
13854
  )|
13751
13855
  66\d|
13752
- 76[02-6]
13856
+ 76[02-7]
13753
13857
  )\d{4}
13754
13858
  </nationalNumberPattern>
13755
13859
  <possibleNumberPattern>\d{10}</possibleNumberPattern>
@@ -14138,7 +14242,10 @@
14138
14242
  <numberFormat pattern="(\d{3})(\d{5})">
14139
14243
  <leadingDigits>
14140
14244
  244|
14141
- 5[015]
14245
+ 5(?:
14246
+ [015]|
14247
+ 66
14248
+ )
14142
14249
  </leadingDigits>
14143
14250
  <format>$1 $2</format>
14144
14251
  </numberFormat>
@@ -14178,10 +14285,12 @@
14178
14285
  2(?:
14179
14286
  22|
14180
14287
  5[25]
14181
- )
14288
+ )|
14289
+ 66\d
14182
14290
  )|
14183
14291
  6(?:
14184
14292
  0[034679]\d|
14293
+ 222|
14185
14294
  5[015-9]\d|
14186
14295
  6\d{2}|
14187
14296
  7[067]\d|
@@ -15287,7 +15396,7 @@
15287
15396
  <possibleNumberPattern>\d{8}</possibleNumberPattern>
15288
15397
  </generalDesc>
15289
15398
  <fixedLine>
15290
- <nationalNumberPattern>6[3-8]\d{6}</nationalNumberPattern>
15399
+ <nationalNumberPattern>6\d{7}</nationalNumberPattern>
15291
15400
  <exampleNumber>63123456</exampleNumber>
15292
15401
  </fixedLine>
15293
15402
  <mobile>
@@ -19768,9 +19877,10 @@
19768
19877
  <sourceUrl>http://www.itu.int/oth/T02020000A5/en</sourceUrl>
19769
19878
  <sourceUrl>http://www.copaco.com.py/portal/index.php/component/content/article/8-empresa/74-codigos-de-area.html</sourceUrl>
19770
19879
  </references>
19880
+ <!-- Number formats of landline numbers are based on online references. -->
19771
19881
  <availableFormats>
19772
- <!-- CONATEL plan. -->
19773
- <numberFormat pattern="(\d{2})(\d{5,7})" nationalPrefixFormattingRule="($FG)">
19882
+ <!-- CONATEL plan begin. -->
19883
+ <numberFormat pattern="(\d{2})(\d{5})" nationalPrefixFormattingRule="($NP$FG)">
19774
19884
  <leadingDigits>
19775
19885
  (?:
19776
19886
  [26]1|
@@ -19782,6 +19892,19 @@
19782
19892
  </leadingDigits>
19783
19893
  <format>$1 $2</format>
19784
19894
  </numberFormat>
19895
+ <numberFormat pattern="(\d{2})(\d{3})(\d{3,4})" nationalPrefixFormattingRule="($NP$FG)">
19896
+ <leadingDigits>
19897
+ (?:
19898
+ [26]1|
19899
+ 3[289]|
19900
+ 4[124678]|
19901
+ 7[123]|
19902
+ 8[1236]
19903
+ )
19904
+ </leadingDigits>
19905
+ <format>$1 $2 $3</format>
19906
+ </numberFormat>
19907
+ <!-- CONATEL plan end. -->
19785
19908
  <numberFormat pattern="(\d{3})(\d{3,6})" nationalPrefixFormattingRule="$NP$FG">
19786
19909
  <leadingDigits>[2-9]0</leadingDigits>
19787
19910
  <format>$1 $2</format>
@@ -19795,12 +19918,16 @@
19795
19918
  <leadingDigits>8700</leadingDigits>
19796
19919
  <format>$1 $2 $3</format>
19797
19920
  </numberFormat>
19798
- <!-- "Fall-back" rule for the rest of the fixed-line numbers that have 3-digit area codes.
19921
+ <!-- "Fall-back" rules for the rest of the fixed-line numbers that have 3-digit area codes.
19799
19922
  -->
19800
- <numberFormat pattern="(\d{3})(\d{4,6})" nationalPrefixFormattingRule="($FG)">
19923
+ <numberFormat pattern="(\d{3})(\d{4,5})" nationalPrefixFormattingRule="($NP$FG)">
19801
19924
  <leadingDigits>[2-8][1-9]</leadingDigits>
19802
19925
  <format>$1 $2</format>
19803
19926
  </numberFormat>
19927
+ <numberFormat pattern="(\d{3})(\d{3})(\d{3})" nationalPrefixFormattingRule="$NP$FG">
19928
+ <leadingDigits>[2-8][1-9]</leadingDigits>
19929
+ <format>$1 $2 $3</format>
19930
+ </numberFormat>
19804
19931
  </availableFormats>
19805
19932
  <generalDesc>
19806
19933
  <nationalNumberPattern>
@@ -21245,14 +21372,20 @@
21245
21372
  </fixedLine>
21246
21373
  <mobile>
21247
21374
  <!-- 948 isn't in the number pattern, but many examples using this have been found, so
21248
- deeming it valid for now. -->
21375
+ deeming it valid for now. 909[1-9] is assigned to carrier Juro as per online
21376
+ references found. -->
21249
21377
  <nationalNumberPattern>
21250
21378
  9(?:
21251
- 0[1-8]|
21252
- 1[0-24-9]|
21253
- 4[0489]|
21254
- 50
21255
- )\d{6}
21379
+ 0(?:
21380
+ [1-8]\d|
21381
+ 9[1-9]
21382
+ )|
21383
+ (?:
21384
+ 1[0-24-9]|
21385
+ 4[0489]|
21386
+ 50
21387
+ )\d
21388
+ )\d{5}
21256
21389
  </nationalNumberPattern>
21257
21390
  <possibleNumberPattern>\d{9}</possibleNumberPattern>
21258
21391
  <exampleNumber>912123456</exampleNumber>
@@ -21449,7 +21582,7 @@
21449
21582
  7(?:
21450
21583
  [067]\d|
21451
21584
  21|
21452
- 8[0-26]|
21585
+ 8[0-46]|
21453
21586
  90
21454
21587
  )\d{6}
21455
21588
  </nationalNumberPattern>
@@ -21979,7 +22112,7 @@
21979
22112
  )|
21980
22113
  3(?:
21981
22114
  3[1-389]|
21982
- 4[1-7]
22115
+ 4[1-8]
21983
22116
  )|
21984
22117
  4[34][1-3]
21985
22118
  )\d{4}
@@ -22166,14 +22299,14 @@
22166
22299
  <exampleNumber>21234567</exampleNumber>
22167
22300
  </fixedLine>
22168
22301
  <mobile>
22169
- <!-- Numbers found online starting with 62. 14 and 63 are from an open-source bug report,
22170
- we couldn't find evidence of these specifically being in use but this article
22171
- http://www.prachachat.net/news_detail.php?newsid=1395732787&grpid=03&catid=06&subcatid=0600
22172
- talks about prefix 6 and 1 being cleared for mobile use. -->
22302
+ <!-- Numbers found online starting with 62 and 64. 14 and 63 are from an open-source bug
22303
+ report, we couldn't find evidence of these specifically being in use but this article
22304
+ http://www.prachachat.net/news_detail.php?newsid=1395732787 talks about prefix 6 and 1
22305
+ being cleared for mobile use. -->
22173
22306
  <nationalNumberPattern>
22174
22307
  (?:
22175
22308
  14|
22176
- 6[1-3]|
22309
+ 6[1-4]|
22177
22310
  [89]\d
22178
22311
  )\d{7}
22179
22312
  </nationalNumberPattern>
@@ -22281,11 +22414,14 @@
22281
22414
  </fixedLine>
22282
22415
  <mobile>
22283
22416
  <!-- Adding 90 prefix as SMS messages could be successfully delivered to these mobile
22284
- numbers, and 50[12] for TCell from bug reports. -->
22417
+ numbers, 50[12] for TCell and 55 for Megafon from bug reports. -->
22285
22418
  <nationalNumberPattern>
22286
22419
  (?:
22287
22420
  41[18]|
22288
- 50[125]|
22421
+ 5(?:
22422
+ 0[125]|
22423
+ 5\d
22424
+ )|
22289
22425
  88\d|
22290
22426
  9[0-35-9]\d
22291
22427
  )\d{6}
@@ -22918,8 +23054,8 @@
22918
23054
  <mobile>
22919
23055
  <nationalNumberPattern>
22920
23056
  (?:
22921
- 6[25-8]|
22922
- 7[13-9]
23057
+ 6[125-9]|
23058
+ 7[1-9]
22923
23059
  )\d{7}
22924
23060
  </nationalNumberPattern>
22925
23061
  <possibleNumberPattern>\d{9}</possibleNumberPattern>
@@ -23349,7 +23485,7 @@
23349
23485
  0[1346-9]|
23350
23486
  1[02-9]|
23351
23487
  2[0589]|
23352
- 3[01678]|
23488
+ 3[014678]|
23353
23489
  4[0179]|
23354
23490
  5[12469]|
23355
23491
  7[0-3589]|
@@ -23357,7 +23493,7 @@
23357
23493
  )
23358
23494
  )[2-9]\d{6}
23359
23495
  </nationalNumberPattern>
23360
- <exampleNumber>2015555555</exampleNumber>
23496
+ <exampleNumber>2015550123</exampleNumber>
23361
23497
  </fixedLine>
23362
23498
  <mobile>
23363
23499
  <nationalNumberPattern>
@@ -23441,7 +23577,7 @@
23441
23577
  0[1346-9]|
23442
23578
  1[02-9]|
23443
23579
  2[0589]|
23444
- 3[01678]|
23580
+ 3[014678]|
23445
23581
  4[0179]|
23446
23582
  5[12469]|
23447
23583
  7[0-3589]|
@@ -23449,7 +23585,7 @@
23449
23585
  )
23450
23586
  )[2-9]\d{6}
23451
23587
  </nationalNumberPattern>
23452
- <exampleNumber>2015555555</exampleNumber>
23588
+ <exampleNumber>2015550123</exampleNumber>
23453
23589
  </mobile>
23454
23590
  <tollFree>
23455
23591
  <nationalNumberPattern>