From b48ba18623e2991bad0d58111e60eb5cd8f7fdc6 Mon Sep 17 00:00:00 2001 From: Lara Scheidegger Date: Wed, 9 Feb 2011 13:05:37 +0000 Subject: [PATCH] Metadata update, UAN code support and isNumberMatch changes. --- java/release_notes.txt | 15 + .../phonenumbers/BuildMetadataFromXml.java | 11 +- .../phonenumbers/proto/phonemetadata.proto | 4 + .../phonenumbers/src/PhoneNumberMetaData.xml | 1835 +++++++++++++---- .../test/PhoneNumberMetaDataForTesting.xml | 12 +- .../i18n/phonenumbers/PhoneNumberUtil.java | 160 +- .../i18n/phonenumbers/Phonemetadata.java | 48 + .../data/PhoneNumberMetadataProto_AD | Bin 327 -> 351 bytes .../data/PhoneNumberMetadataProto_AE | Bin 539 -> 563 bytes .../data/PhoneNumberMetadataProto_AF | Bin 295 -> 319 bytes .../data/PhoneNumberMetadataProto_AG | Bin 381 -> 475 bytes .../data/PhoneNumberMetadataProto_AI | Bin 348 -> 409 bytes .../data/PhoneNumberMetadataProto_AL | Bin 682 -> 706 bytes .../data/PhoneNumberMetadataProto_AM | Bin 499 -> 523 bytes .../data/PhoneNumberMetadataProto_AN | Bin 531 -> 555 bytes .../data/PhoneNumberMetadataProto_AO | Bin 266 -> 290 bytes .../data/PhoneNumberMetadataProto_AR | Bin 2087 -> 2111 bytes .../data/PhoneNumberMetadataProto_AS | Bin 330 -> 391 bytes .../data/PhoneNumberMetadataProto_AT | Bin 1002 -> 1026 bytes .../data/PhoneNumberMetadataProto_AU | Bin 734 -> 758 bytes .../data/PhoneNumberMetadataProto_AW | Bin 342 -> 366 bytes .../data/PhoneNumberMetadataProto_AZ | Bin 490 -> 731 bytes .../data/PhoneNumberMetadataProto_BA | Bin 340 -> 379 bytes .../data/PhoneNumberMetadataProto_BB | Bin 326 -> 387 bytes .../data/PhoneNumberMetadataProto_BD | Bin 1007 -> 1031 bytes .../data/PhoneNumberMetadataProto_BE | Bin 643 -> 685 bytes .../data/PhoneNumberMetadataProto_BF | Bin 351 -> 375 bytes .../data/PhoneNumberMetadataProto_BG | Bin 750 -> 774 bytes .../data/PhoneNumberMetadataProto_BH | Bin 409 -> 433 bytes .../data/PhoneNumberMetadataProto_BI | Bin 292 -> 316 bytes .../data/PhoneNumberMetadataProto_BJ | Bin 364 -> 388 bytes .../data/PhoneNumberMetadataProto_BL | Bin 245 -> 272 bytes .../data/PhoneNumberMetadataProto_BM | Bin 364 -> 425 bytes .../data/PhoneNumberMetadataProto_BN | Bin 247 -> 274 bytes .../data/PhoneNumberMetadataProto_BO | Bin 492 -> 516 bytes .../data/PhoneNumberMetadataProto_BR | Bin 659 -> 683 bytes .../data/PhoneNumberMetadataProto_BS | Bin 506 -> 567 bytes .../data/PhoneNumberMetadataProto_BT | Bin 356 -> 380 bytes .../data/PhoneNumberMetadataProto_BW | Bin 491 -> 515 bytes .../data/PhoneNumberMetadataProto_BY | Bin 567 -> 591 bytes .../data/PhoneNumberMetadataProto_BZ | Bin 361 -> 385 bytes .../data/PhoneNumberMetadataProto_CA | Bin 578 -> 660 bytes .../data/PhoneNumberMetadataProto_CD | Bin 336 -> 360 bytes .../data/PhoneNumberMetadataProto_CF | Bin 277 -> 301 bytes .../data/PhoneNumberMetadataProto_CG | Bin 323 -> 347 bytes .../data/PhoneNumberMetadataProto_CH | Bin 476 -> 500 bytes .../data/PhoneNumberMetadataProto_CI | Bin 356 -> 380 bytes .../data/PhoneNumberMetadataProto_CK | Bin 130 -> 154 bytes .../data/PhoneNumberMetadataProto_CL | Bin 844 -> 864 bytes .../data/PhoneNumberMetadataProto_CM | Bin 357 -> 381 bytes .../data/PhoneNumberMetadataProto_CN | Bin 2555 -> 2579 bytes .../data/PhoneNumberMetadataProto_CO | Bin 147 -> 818 bytes .../data/PhoneNumberMetadataProto_CR | Bin 351 -> 375 bytes .../data/PhoneNumberMetadataProto_CU | Bin 415 -> 435 bytes .../data/PhoneNumberMetadataProto_CV | Bin 292 -> 316 bytes .../data/PhoneNumberMetadataProto_CY | Bin 321 -> 345 bytes .../data/PhoneNumberMetadataProto_CZ | Bin 389 -> 413 bytes .../data/PhoneNumberMetadataProto_DE | Bin 1615 -> 1639 bytes .../data/PhoneNumberMetadataProto_DJ | Bin 250 -> 277 bytes .../data/PhoneNumberMetadataProto_DK | Bin 380 -> 404 bytes .../data/PhoneNumberMetadataProto_DM | Bin 373 -> 434 bytes .../data/PhoneNumberMetadataProto_DO | Bin 314 -> 375 bytes .../data/PhoneNumberMetadataProto_DZ | Bin 565 -> 589 bytes .../data/PhoneNumberMetadataProto_EC | Bin 546 -> 570 bytes .../data/PhoneNumberMetadataProto_EE | Bin 749 -> 796 bytes .../data/PhoneNumberMetadataProto_EG | Bin 569 -> 593 bytes .../data/PhoneNumberMetadataProto_ER | Bin 293 -> 317 bytes .../data/PhoneNumberMetadataProto_ES | Bin 358 -> 394 bytes .../data/PhoneNumberMetadataProto_ET | Bin 1049 -> 1073 bytes .../data/PhoneNumberMetadataProto_FI | Bin 677 -> 718 bytes .../data/PhoneNumberMetadataProto_FJ | Bin 122 -> 146 bytes .../data/PhoneNumberMetadataProto_FK | Bin 128 -> 152 bytes .../data/PhoneNumberMetadataProto_FM | Bin 122 -> 146 bytes .../data/PhoneNumberMetadataProto_FO | Bin 344 -> 368 bytes .../data/PhoneNumberMetadataProto_FR | Bin 470 -> 494 bytes .../data/PhoneNumberMetadataProto_GA | Bin 521 -> 545 bytes .../data/PhoneNumberMetadataProto_GB | Bin 2706 -> 2742 bytes .../data/PhoneNumberMetadataProto_GD | Bin 423 -> 484 bytes .../data/PhoneNumberMetadataProto_GE | Bin 628 -> 652 bytes .../data/PhoneNumberMetadataProto_GF | Bin 122 -> 146 bytes .../data/PhoneNumberMetadataProto_GG | Bin 523 -> 581 bytes .../data/PhoneNumberMetadataProto_GH | Bin 414 -> 438 bytes .../data/PhoneNumberMetadataProto_GI | Bin 292 -> 316 bytes .../data/PhoneNumberMetadataProto_GL | Bin 313 -> 337 bytes .../data/PhoneNumberMetadataProto_GM | Bin 329 -> 353 bytes .../data/PhoneNumberMetadataProto_GN | Bin 363 -> 387 bytes .../data/PhoneNumberMetadataProto_GP | Bin 349 -> 373 bytes .../data/PhoneNumberMetadataProto_GQ | Bin 403 -> 427 bytes .../data/PhoneNumberMetadataProto_GR | Bin 802 -> 826 bytes .../data/PhoneNumberMetadataProto_GT | Bin 122 -> 146 bytes .../data/PhoneNumberMetadataProto_GU | Bin 383 -> 444 bytes .../data/PhoneNumberMetadataProto_GW | Bin 274 -> 298 bytes .../data/PhoneNumberMetadataProto_GY | Bin 129 -> 153 bytes .../data/PhoneNumberMetadataProto_HK | Bin 446 -> 470 bytes .../data/PhoneNumberMetadataProto_HN | Bin 440 -> 464 bytes .../data/PhoneNumberMetadataProto_HR | Bin 860 -> 884 bytes .../data/PhoneNumberMetadataProto_HT | Bin 311 -> 335 bytes .../data/PhoneNumberMetadataProto_HU | Bin 463 -> 487 bytes .../data/PhoneNumberMetadataProto_ID | Bin 1031 -> 1057 bytes .../data/PhoneNumberMetadataProto_IE | Bin 1154 -> 1189 bytes .../data/PhoneNumberMetadataProto_IL | Bin 699 -> 843 bytes .../data/PhoneNumberMetadataProto_IM | Bin 465 -> 447 bytes .../data/PhoneNumberMetadataProto_IN | Bin 2833 -> 2893 bytes .../data/PhoneNumberMetadataProto_IO | Bin 122 -> 146 bytes .../data/PhoneNumberMetadataProto_IQ | Bin 417 -> 441 bytes .../data/PhoneNumberMetadataProto_IR | Bin 339 -> 864 bytes .../data/PhoneNumberMetadataProto_IS | Bin 629 -> 653 bytes .../data/PhoneNumberMetadataProto_IT | Bin 826 -> 904 bytes .../data/PhoneNumberMetadataProto_JE | Bin 538 -> 596 bytes .../data/PhoneNumberMetadataProto_JM | Bin 468 -> 529 bytes .../data/PhoneNumberMetadataProto_JO | Bin 521 -> 545 bytes .../data/PhoneNumberMetadataProto_JP | Bin 4538 -> 4569 bytes .../data/PhoneNumberMetadataProto_KE | Bin 427 -> 451 bytes .../data/PhoneNumberMetadataProto_KG | Bin 574 -> 598 bytes .../data/PhoneNumberMetadataProto_KH | Bin 480 -> 504 bytes .../data/PhoneNumberMetadataProto_KI | Bin 128 -> 152 bytes .../data/PhoneNumberMetadataProto_KM | Bin 255 -> 282 bytes .../data/PhoneNumberMetadataProto_KN | Bin 357 -> 418 bytes .../data/PhoneNumberMetadataProto_KP | Bin 128 -> 152 bytes .../data/PhoneNumberMetadataProto_KR | Bin 1459 -> 1493 bytes .../data/PhoneNumberMetadataProto_KW | Bin 388 -> 452 bytes .../data/PhoneNumberMetadataProto_KY | Bin 456 -> 517 bytes .../data/PhoneNumberMetadataProto_KZ | Bin 805 -> 829 bytes .../data/PhoneNumberMetadataProto_LA | Bin 434 -> 458 bytes .../data/PhoneNumberMetadataProto_LB | Bin 463 -> 487 bytes .../data/PhoneNumberMetadataProto_LC | Bin 401 -> 462 bytes .../data/PhoneNumberMetadataProto_LI | Bin 723 -> 747 bytes .../data/PhoneNumberMetadataProto_LK | Bin 371 -> 395 bytes .../data/PhoneNumberMetadataProto_LR | Bin 367 -> 391 bytes .../data/PhoneNumberMetadataProto_LS | Bin 252 -> 279 bytes .../data/PhoneNumberMetadataProto_LT | Bin 503 -> 527 bytes .../data/PhoneNumberMetadataProto_LU | Bin 122 -> 1404 bytes .../data/PhoneNumberMetadataProto_LV | Bin 277 -> 301 bytes .../data/PhoneNumberMetadataProto_LY | Bin 128 -> 310 bytes .../data/PhoneNumberMetadataProto_MA | Bin 691 -> 715 bytes .../data/PhoneNumberMetadataProto_MC | Bin 128 -> 456 bytes .../data/PhoneNumberMetadataProto_MD | Bin 526 -> 550 bytes .../data/PhoneNumberMetadataProto_ME | Bin 128 -> 152 bytes .../data/PhoneNumberMetadataProto_MF | Bin 251 -> 278 bytes .../data/PhoneNumberMetadataProto_MG | Bin 345 -> 369 bytes .../data/PhoneNumberMetadataProto_MH | Bin 129 -> 153 bytes .../data/PhoneNumberMetadataProto_MK | Bin 560 -> 584 bytes .../data/PhoneNumberMetadataProto_ML | Bin 391 -> 415 bytes .../data/PhoneNumberMetadataProto_MM | Bin 560 -> 584 bytes .../data/PhoneNumberMetadataProto_MN | Bin 666 -> 690 bytes .../data/PhoneNumberMetadataProto_MO | Bin 258 -> 285 bytes .../data/PhoneNumberMetadataProto_MP | Bin 401 -> 462 bytes .../data/PhoneNumberMetadataProto_MQ | Bin 128 -> 152 bytes .../data/PhoneNumberMetadataProto_MR | Bin 486 -> 510 bytes .../data/PhoneNumberMetadataProto_MS | Bin 297 -> 358 bytes .../data/PhoneNumberMetadataProto_MT | Bin 404 -> 428 bytes .../data/PhoneNumberMetadataProto_MU | Bin 400 -> 424 bytes .../data/PhoneNumberMetadataProto_MV | Bin 334 -> 358 bytes .../data/PhoneNumberMetadataProto_MW | Bin 484 -> 508 bytes .../data/PhoneNumberMetadataProto_MX | Bin 1743 -> 1767 bytes .../data/PhoneNumberMetadataProto_MY | Bin 614 -> 638 bytes .../data/PhoneNumberMetadataProto_MZ | Bin 354 -> 378 bytes .../data/PhoneNumberMetadataProto_NA | Bin 804 -> 828 bytes .../data/PhoneNumberMetadataProto_NC | Bin 128 -> 152 bytes .../data/PhoneNumberMetadataProto_NE | Bin 431 -> 455 bytes .../data/PhoneNumberMetadataProto_NF | Bin 122 -> 146 bytes .../data/PhoneNumberMetadataProto_NG | Bin 891 -> 835 bytes .../data/PhoneNumberMetadataProto_NI | Bin 128 -> 152 bytes .../data/PhoneNumberMetadataProto_NL | Bin 597 -> 621 bytes .../data/PhoneNumberMetadataProto_NO | Bin 541 -> 565 bytes .../data/PhoneNumberMetadataProto_NP | Bin 481 -> 505 bytes .../data/PhoneNumberMetadataProto_NR | Bin 128 -> 152 bytes .../data/PhoneNumberMetadataProto_NU | Bin 190 -> 214 bytes .../data/PhoneNumberMetadataProto_NZ | Bin 683 -> 770 bytes .../data/PhoneNumberMetadataProto_OM | Bin 377 -> 401 bytes .../data/PhoneNumberMetadataProto_PA | Bin 128 -> 152 bytes .../data/PhoneNumberMetadataProto_PE | Bin 391 -> 415 bytes .../data/PhoneNumberMetadataProto_PF | Bin 122 -> 146 bytes .../data/PhoneNumberMetadataProto_PG | Bin 418 -> 442 bytes .../data/PhoneNumberMetadataProto_PH | Bin 929 -> 953 bytes .../data/PhoneNumberMetadataProto_PK | Bin 1704 -> 1724 bytes .../data/PhoneNumberMetadataProto_PL | Bin 561 -> 585 bytes .../data/PhoneNumberMetadataProto_PM | Bin 128 -> 152 bytes .../data/PhoneNumberMetadataProto_PR | Bin 323 -> 384 bytes .../data/PhoneNumberMetadataProto_PS | Bin 513 -> 535 bytes .../data/PhoneNumberMetadataProto_PT | Bin 439 -> 464 bytes .../data/PhoneNumberMetadataProto_PW | Bin 123 -> 147 bytes .../data/PhoneNumberMetadataProto_PY | Bin 129 -> 153 bytes .../data/PhoneNumberMetadataProto_QA | Bin 319 -> 343 bytes .../data/PhoneNumberMetadataProto_RE | Bin 378 -> 402 bytes .../data/PhoneNumberMetadataProto_RO | Bin 429 -> 453 bytes .../data/PhoneNumberMetadataProto_RS | Bin 525 -> 549 bytes .../data/PhoneNumberMetadataProto_RU | Bin 541 -> 571 bytes .../data/PhoneNumberMetadataProto_RW | Bin 355 -> 379 bytes .../data/PhoneNumberMetadataProto_SA | Bin 577 -> 601 bytes .../data/PhoneNumberMetadataProto_SB | Bin 122 -> 146 bytes .../data/PhoneNumberMetadataProto_SC | Bin 603 -> 627 bytes .../data/PhoneNumberMetadataProto_SD | Bin 271 -> 295 bytes .../data/PhoneNumberMetadataProto_SE | Bin 1581 -> 2289 bytes .../data/PhoneNumberMetadataProto_SG | Bin 524 -> 559 bytes .../data/PhoneNumberMetadataProto_SH | Bin 122 -> 146 bytes .../data/PhoneNumberMetadataProto_SI | Bin 631 -> 655 bytes .../data/PhoneNumberMetadataProto_SK | Bin 526 -> 550 bytes .../data/PhoneNumberMetadataProto_SL | Bin 297 -> 321 bytes .../data/PhoneNumberMetadataProto_SM | Bin 128 -> 583 bytes .../data/PhoneNumberMetadataProto_SN | Bin 436 -> 460 bytes .../data/PhoneNumberMetadataProto_SO | Bin 310 -> 334 bytes .../data/PhoneNumberMetadataProto_SR | Bin 122 -> 146 bytes .../data/PhoneNumberMetadataProto_ST | Bin 226 -> 250 bytes .../data/PhoneNumberMetadataProto_SV | Bin 122 -> 146 bytes .../data/PhoneNumberMetadataProto_SY | Bin 408 -> 432 bytes .../data/PhoneNumberMetadataProto_SZ | Bin 450 -> 494 bytes .../data/PhoneNumberMetadataProto_TC | Bin 390 -> 451 bytes .../data/PhoneNumberMetadataProto_TD | Bin 319 -> 343 bytes .../data/PhoneNumberMetadataProto_TF | Bin 128 -> 152 bytes .../data/PhoneNumberMetadataProto_TG | Bin 289 -> 313 bytes .../data/PhoneNumberMetadataProto_TH | Bin 513 -> 537 bytes .../data/PhoneNumberMetadataProto_TJ | Bin 562 -> 586 bytes .../data/PhoneNumberMetadataProto_TK | Bin 122 -> 146 bytes .../data/PhoneNumberMetadataProto_TL | Bin 307 -> 331 bytes .../data/PhoneNumberMetadataProto_TM | Bin 285 -> 309 bytes .../data/PhoneNumberMetadataProto_TN | Bin 281 -> 305 bytes .../data/PhoneNumberMetadataProto_TO | Bin 122 -> 146 bytes .../data/PhoneNumberMetadataProto_TR | Bin 319 -> 343 bytes .../data/PhoneNumberMetadataProto_TT | Bin 449 -> 510 bytes .../data/PhoneNumberMetadataProto_TV | Bin 122 -> 146 bytes .../data/PhoneNumberMetadataProto_TW | Bin 388 -> 412 bytes .../data/PhoneNumberMetadataProto_TZ | Bin 487 -> 507 bytes .../data/PhoneNumberMetadataProto_UA | Bin 1025 -> 1051 bytes .../data/PhoneNumberMetadataProto_UG | Bin 500 -> 524 bytes .../data/PhoneNumberMetadataProto_US | Bin 1500 -> 1577 bytes .../data/PhoneNumberMetadataProto_UY | Bin 128 -> 152 bytes .../data/PhoneNumberMetadataProto_UZ | Bin 296 -> 320 bytes .../data/PhoneNumberMetadataProto_VA | Bin 221 -> 245 bytes .../data/PhoneNumberMetadataProto_VC | Bin 443 -> 504 bytes .../data/PhoneNumberMetadataProto_VE | Bin 368 -> 392 bytes .../data/PhoneNumberMetadataProto_VG | Bin 428 -> 489 bytes .../data/PhoneNumberMetadataProto_VI | Bin 450 -> 511 bytes .../data/PhoneNumberMetadataProto_VN | Bin 930 -> 954 bytes .../data/PhoneNumberMetadataProto_VU | Bin 122 -> 146 bytes .../data/PhoneNumberMetadataProto_WF | Bin 122 -> 146 bytes .../data/PhoneNumberMetadataProto_WS | Bin 351 -> 375 bytes .../data/PhoneNumberMetadataProto_YE | Bin 398 -> 422 bytes .../data/PhoneNumberMetadataProto_YT | Bin 236 -> 260 bytes .../data/PhoneNumberMetadataProto_ZA | Bin 473 -> 497 bytes .../data/PhoneNumberMetadataProto_ZM | Bin 338 -> 362 bytes .../data/PhoneNumberMetadataProto_ZW | Bin 1518 -> 1542 bytes .../i18n/phonenumbers/ExampleNumbersTest.java | 31 +- .../phonenumbers/PhoneNumberUtilTest.java | 65 +- .../PhoneNumberMetadataProtoForTesting_AD | Bin 122 -> 146 bytes .../PhoneNumberMetadataProtoForTesting_AO | Bin 276 -> 300 bytes .../PhoneNumberMetadataProtoForTesting_AR | Bin 810 -> 834 bytes .../PhoneNumberMetadataProtoForTesting_AU | Bin 334 -> 358 bytes .../PhoneNumberMetadataProtoForTesting_BS | Bin 347 -> 371 bytes .../PhoneNumberMetadataProtoForTesting_DE | Bin 615 -> 639 bytes .../PhoneNumberMetadataProtoForTesting_GB | Bin 494 -> 518 bytes .../PhoneNumberMetadataProtoForTesting_IT | Bin 430 -> 454 bytes .../PhoneNumberMetadataProtoForTesting_JP | Bin 411 -> 435 bytes .../PhoneNumberMetadataProtoForTesting_KR | Bin 1536 -> 1560 bytes .../PhoneNumberMetadataProtoForTesting_MX | Bin 915 -> 939 bytes .../PhoneNumberMetadataProtoForTesting_NZ | Bin 499 -> 534 bytes .../PhoneNumberMetadataProtoForTesting_PL | Bin 283 -> 307 bytes .../PhoneNumberMetadataProtoForTesting_RE | Bin 365 -> 389 bytes .../PhoneNumberMetadataProtoForTesting_SG | Bin 368 -> 392 bytes .../PhoneNumberMetadataProtoForTesting_US | Bin 463 -> 511 bytes .../PhoneNumberMetadataProtoForTesting_YT | Bin 237 -> 261 bytes 261 files changed, 1776 insertions(+), 405 deletions(-) diff --git a/java/release_notes.txt b/java/release_notes.txt index a5e0ff57d..37931d36c 100644 --- a/java/release_notes.txt +++ b/java/release_notes.txt @@ -1,3 +1,18 @@ +Feb 9th, 2011 +* Code changes: + - Better isNumberMatch method. This will now recognise numbers starting with a national prefix as + an NSN_MATCH, instead of SHORT_NSN_MATCH. + == Note Non-backwards-compatible API change here! == + This will no longer throw a NumberParseException - instead we will return NOT_A_NUMBER if one + or other of the numbers provided do not match. + - New number-type UAN now supported in the code. This represents Company Numbers or Universally + Accessible Numbers. +* Metadata changes: + - Bug-fixes and updates for the following countries: AG, AZ, BA, BE, CA, CU, ES, FI, GB, GD, GG, + IE, IL, IM, IN, IR, IT, JE, JP, KR, KW, NG, NZ, PK, PS, PT, RU, SE, SG, SY, US + - New countries: CO, LU, LY, MC, SM + - Addition of "Personal Number" ranges to all NANPA countries + Jan 31st, 2011 * Code changes: - Introducing equals() and hashCode() methods for the Phonenumber.PhoneNumber class diff --git a/java/resources/com/google/i18n/phonenumbers/BuildMetadataFromXml.java b/java/resources/com/google/i18n/phonenumbers/BuildMetadataFromXml.java index 5c2ef7a4e..87a8d0544 100644 --- a/java/resources/com/google/i18n/phonenumbers/BuildMetadataFromXml.java +++ b/java/resources/com/google/i18n/phonenumbers/BuildMetadataFromXml.java @@ -138,7 +138,7 @@ public class BuildMetadataFromXml { nationalPrefix = element.getAttribute("nationalPrefix"); metadata.setNationalPrefix(nationalPrefix); nationalPrefixFormattingRule = - validateRE(getNationalPrefixFormattingRuleFromElement(element, nationalPrefix)); + getNationalPrefixFormattingRuleFromElement(element, nationalPrefix); if (!metadata.hasNationalPrefixForParsing()) { metadata.setNationalPrefixForParsing(nationalPrefix); @@ -159,8 +159,8 @@ public class BuildMetadataFromXml { Element numberFormatElement = (Element) numberFormatElements.item(i); NumberFormat format = new NumberFormat(); if (numberFormatElement.hasAttribute("nationalPrefixFormattingRule")) { - format.setNationalPrefixFormattingRule(validateRE( - getNationalPrefixFormattingRuleFromElement(numberFormatElement, nationalPrefix))); + format.setNationalPrefixFormattingRule( + getNationalPrefixFormattingRuleFromElement(numberFormatElement, nationalPrefix)); } else { format.setNationalPrefixFormattingRule(nationalPrefixFormattingRule); } @@ -180,7 +180,7 @@ public class BuildMetadataFromXml { throw new RuntimeException("Invalid number of format patterns for country: " + regionCode); } - format.setFormat(validateRE(formatPattern.item(0).getFirstChild().getNodeValue())); + format.setFormat(formatPattern.item(0).getFirstChild().getNodeValue()); metadata.addNumberFormat(format); } } @@ -224,6 +224,9 @@ public class BuildMetadataFromXml { metadata.setPersonalNumber(processPhoneNumberDescElement(generalDesc, element, "personalNumber")); metadata.setPager(processPhoneNumberDescElement(generalDesc, element, "pager")); + metadata.setUan(processPhoneNumberDescElement(generalDesc, element, "uan")); + metadata.setNoInternationalDialling(processPhoneNumberDescElement(generalDesc, element, + "noInternationalDialling")); if (metadata.getMobile().getNationalNumberPattern().equals( metadata.getFixedLine().getNationalNumberPattern())) { diff --git a/java/resources/com/google/i18n/phonenumbers/proto/phonemetadata.proto b/java/resources/com/google/i18n/phonenumbers/proto/phonemetadata.proto index 7968feb2b..42f0a994d 100644 --- a/java/resources/com/google/i18n/phonenumbers/proto/phonemetadata.proto +++ b/java/resources/com/google/i18n/phonenumbers/proto/phonemetadata.proto @@ -118,6 +118,10 @@ message PhoneMetadata { required PhoneNumberDesc personal_number = 7; required PhoneNumberDesc voip = 8; required PhoneNumberDesc pager = 21; + required PhoneNumberDesc uan = 25; + // The rules here distinguish the numbers that are only able to be dialled + // nationally. + required PhoneNumberDesc no_international_dialling = 24; // The ISO 3166-1 alpha-2 representation of a country/region required string id = 9; diff --git a/java/resources/com/google/i18n/phonenumbers/src/PhoneNumberMetaData.xml b/java/resources/com/google/i18n/phonenumbers/src/PhoneNumberMetaData.xml index fb011b205..a32c7dd2f 100644 --- a/java/resources/com/google/i18n/phonenumbers/src/PhoneNumberMetaData.xml +++ b/java/resources/com/google/i18n/phonenumbers/src/PhoneNumberMetaData.xml @@ -236,10 +236,12 @@ \d{7,10} + 268(?: 4(?: - 6[0-3]| + 6[0-38]| 84 )| 56[0-2] @@ -248,20 +250,27 @@ 2684601234 + 268(?: 464| 7(?: 2[0-9]| 64| - 7[0-5]| - 8[358] + 7[0-689]| + 8[02-68] ) )\d{4} \d{10} 2684641234 + + 26840[69]\d{4} + \d{10} + 2684061234 + 8(?: @@ -280,6 +289,18 @@ \d{10} 9002123456 + + + + 5(?: + 00| + 33| + 44 + )[2-9]\d{6} + + \d{10} + 5002345678 + 26848[01]\d{4} @@ -342,6 +363,18 @@ \d{10} 9002123456 + + + + 5(?: + 00| + 33| + 44 + )[2-9]\d{6} + + \d{10} + 5002345678 + @@ -919,6 +952,18 @@ \d{10} 9002123456 + + + + 5(?: + 00| + 33| + 44 + )[2-9]\d{6} + + \d{10} + 5002345678 + @@ -1250,30 +1295,42 @@ - - + + - - - 1[28]| - 22| - [3-8] - - $1 $2 $3 + + 1[28] + $1 $2 $3 $4 + + + 22 + $1 $2 $3 $4 + + + 3 + $1 $2 $3 $4 - + 1[013-79]| 2[013-9] - $1 $2 + $1 $2 $3 $4 + + + [4-8] + $1 $2 $3 $4 [1-8]\d{7,8} - \d{8,9} + \d{5,9} + (?: 1(?: @@ -1286,7 +1343,7 @@ 3[358]| 4[013-79]| 5[0-479]| - 6[0236-9]| + 6[02346-9]| 7[0-24-8] )| 2(?: @@ -1337,12 +1394,10 @@ \d{6,8} - (?: [35]\d| - 49| - 81 + 49 )\d{6} 30123456 @@ -1369,6 +1424,11 @@ \d{8} 82123456 + + 81\d{6} + \d{8} + 81123456 + @@ -1416,6 +1476,18 @@ \d{10} 9002123456 + + + + 5(?: + 00| + 33| + 44 + )[2-9]\d{6} + + \d{10} + 5002345678 + @@ -1666,7 +1738,7 @@ )\d{6}| 8(?: 0[1-9]| - [1-79]\d + [1-69]\d )\d{5} \d{8} @@ -1698,6 +1770,11 @@ \d{8} 90123456 + + 87\d{6} + \d{8} + 87123456 + @@ -2118,6 +2195,18 @@ \d{10} 9002123456 + + + + 5(?: + 00| + 33| + 44 + )[2-9]\d{6} + + \d{10} + 5002345678 + @@ -2360,6 +2449,18 @@ \d{10} 9002123456 + + + + 5(?: + 00| + 33| + 44 + )[2-9]\d{6} + + \d{10} + 5002345678 + @@ -2645,42 +2746,37 @@ 50| 89 )| - 306| + 3(?: + 06| + 43 + )| 4(?: 03| - 16| - 18| + 1[68]| 38| - 50| - 56 + 5[06] )| 5(?: - 00| - 06| - 14| - 19| - 81| - 87 + 0[06]| + 1[49]| + 79| + 8[17] )| 6(?: - 00| - 04| + 0[04]| 13| 47 )| 7(?: - 00| - 05| - 09| - 10| - 78| - 80 + 0[059]| + [18]0| + 78 )| 8(?: - 07| + [06]7| 19| - 67 - ) + )| + 90[25] )[2-9]\d{6}| 310\d{4} @@ -2695,46 +2791,37 @@ 50| 89 )| - 306| + 3(?: + 06| + 43 + )| 4(?: 03| - 16| - 18| + 1[68]| 38| - 50| - 56 + 5[06] )| 5(?: - 00| - 06| - 14| - 19| - 81| - 87 + 0[06]| + 1[49]| + 79| + 8[17] )| 6(?: - 00| - 04| + 0[04]| 13| 47 )| 7(?: - 00| - 05| - 09| - 10| - 78| - 80 + 0[059]| + [18]0| + 78 )| 8(?: - 07| + [06]7| 19| - 67 )| - 9(?: - 02| - 05 - ) + 90[25] )[2-9]\d{6} 2042345678 @@ -2757,6 +2844,18 @@ \d{10} 9002123456 + + + + 5(?: + 00| + 33| + 44 + )[2-9]\d{6} + + \d{10} + 5002345678 + @@ -2976,7 +3075,7 @@ - + + + + + + 1(?: + 8[2-9]| + 9[0-3]| + [2-7] + )| + [24-8] + + + 1(?: + 8[2-9]| + 9(?: + 09| + [1-3] + )| + [2-7] + )| + [24-8] + + ($1) $2 + + + + 1(?: + 8[2-9]| + 9[0-3]| + [2-7] + )| + [24-8] + + + 1(?: + 8[2-9]| + 9(?: + 09| + [1-3] + )| + [2-7] + )| + [24-8] + + $1 $2 + + + 3 + $1 $2 + + + 3 + $1 $2 + + + + 1(?: + 80| + 9[04] + ) + + + 1(?: + 800| + 9(?: + 0[01]| + 4[78] + ) + ) + + $1-$2-$3 + + + + 1(?: + 80| + 9[04] + ) + + + 1(?: + 800| + 9(?: + 0[01]| + 4[78] + ) + ) + + $1 $2 $3 + + + + + (?: + [13]\d{0,3}| + [24-8] + )\d{7} + + \d{7,11} + + + [124-8][2-9]\d{6} + \d{8} + 12345678 + + + + 3(?: + 0[0-24]| + 1[0-8]| + 2[01] + )\d{7} + + \d{10} + 3211234567 + + + 1800\d{7} + \d{11} + 18001234567 + + + + 19(?: + 0[01]| + 4[78] + )\d{7} + + \d{11} + 19001234567 + @@ -3612,16 +3843,15 @@ - (?: - 2[1-4]\d{5,6}| - 3(?: - 1\d{6}| - [23]\d{4,6})| - 4(?: - [125]\d{5,6}| - [36]\d{6}| - [78]\d{4,6})| - 7\d{6,7}) + 2[1-4]\d{5,6}| + 3(?: + 1\d{6}| + [23]\d{4,6})| + 4(?: + [125]\d{5,6}| + [36]\d{6}| + [78]\d{4,6})| + 7\d{6,7} 71234567 @@ -4166,6 +4396,18 @@ \d{10} 9002123456 + + + + 5(?: + 00| + 33| + 44 + )[2-9]\d{6} + + \d{10} + 5002345678 + @@ -4206,6 +4448,18 @@ \d{10} 9002123456 + + + + 5(?: + 00| + 33| + 44 + )[2-9]\d{6} + + \d{10} + 5002345678 + @@ -4639,16 +4893,15 @@ 90[12]\d{6} 901123456 - - - (?: - 51| - 70 - )\d{7} - + 70\d{7} 701234567 + + + 51\d{7} + 511234567 + @@ -4855,35 +5108,19 @@ \d{5,12} - + 1(?: - 0[1-9]\d{3,7}| [35689][1-8]\d{3,9}| [47]\d{5,10} )| - 2(?: - 0(?: - [16-8]\d{3,7}| - 2[14-9]\d{1,6}| - [3-5]\d{2,7}| - 9[0-7]\d{1,6} - )| - [1-8]\d{3,9}| - 9\d{4,8} - )| + 2[1-8]\d{3,9}| 3(?: - 0[1-9]\d{3,7}| [1-8]\d{3,9}| 9\d{4,8} )| [5689][1-8]\d{3,9}| - 7(?: - 1\d{7}| - 3\d{8}| - 5[03-9]\d{2,7} - ) 1312345678 @@ -4905,6 +5142,28 @@ \d{8,9} 600123456 + + + 10[1-9]\d{3,7}| + 2(?: + 0(?: + [16-8]\d{3,7}| + 2[14-9]\d{1,6}| + [3-5]\d{2,7}| + 9[0-7]\d{1,6} + )| + 9\d{4,8} + )| + 30[1-9]\d{3,7}| + 7(?: + 1\d{7}| + 3\d{8}| + 5[03-9]\d{2,7} + ) + + \d{6,10} + 10112345 + @@ -5159,7 +5418,7 @@ @@ -5322,15 +5581,14 @@ + All patterns exclude ranges used in GG, IM, JE. --> 2(?: 0[01378]| @@ -5350,7 +5608,7 @@ 21[0-7]| 31[0-8]| [459]1\d| - 61[01246-9] + 61[0-46-9] ) )\d{6}| 1(?: @@ -5562,11 +5820,7 @@ ) )\d{3}| 176888[234678]\d{2}| - 16977[23]\d{3}| - (?: - 3[0347]| - 55 - )\d{8} + 16977[23]\d{3} 1212345678 @@ -5679,6 +5933,7 @@ 5612345678 + (?: 3[0347]| @@ -5688,6 +5943,56 @@ \d{10} 5512345678 + + + + 1(?: + 0[01]| + 1(?: + [12]| + [68]\d{3} + )| + 2[123]| + 33| + 4(?: + 1| + 7\d + )| + 5\d| + 70\d| + 800\d| + 9[15] + )| + 2(?: + 02| + 2(?: + 02| + 11| + 2 + )| + 3(?: + 02| + 45 + ) + 425 + )| + 3[13]3| + 4(?: + 0[02]| + 35[01]| + 44[45]| + 5\d + )| + 650| + 789| + 9(?: + 01| + 99 + ) + + \d{3,6} + 150 + @@ -5711,11 +6016,10 @@ 86 )| 4(?: - 08| + [06]8| 3[5-9]| 4[0-49]| 5[5-79]| - 68| 73| 90 )| @@ -5762,6 +6066,18 @@ \d{10} 9002123456 + + + + 5(?: + 00| + 33| + 44 + )[2-9]\d{6} + + \d{10} + 5002345678 + @@ -5860,9 +6176,14 @@ - [15789]\d{6,9} + [135789]\d{6,9} \d{6,10} + + 1481[2-9]\d{5} + \d{10} + 1481250123 + @@ -5948,6 +6269,24 @@ \d{10} 5612345678 + + + (?: + 3[0347]| + 55 + )\d{8} + + \d{10} + 5512345678 + + + + 1\d{2}(?:\d{3})?| + 999 + + \d{3,6} + 150 + @@ -6502,6 +6841,18 @@ \d{10} 9002123456 + + + + 5(?: + 00| + 33| + 44 + )[2-9]\d{6} + + \d{10} + 5002345678 + @@ -7110,8 +7461,7 @@ may have 7 digit subscriber numbers, although limited to 5 in the plan. This was caused by a numbering update in 2008 (http://www.wtng.info/wtng-353-ie.html has more details). Other changes not in the plan include consolidating 0502, 0506 and 0509 into 057 and - 054, 055 and 053 into 053, and making 044 be followed by 7 digits in some cases. We - also include Universal Access numbers here in the fixed-line list. + 054, 055 and 053 into 053, and making 044 be followed by 7 digits in some cases. Another peculiarity is that 048 actually replaces 00 44 28 when Irish people dial, allowing them to easily dial Northern Ireland. We support these numbers here, although technically they are numbers for the UK. --> @@ -7144,7 +7494,6 @@ [56]\d{7} )| 7[14]\d{7}| - 818\d{6}| 9(?: 1\d{6}| [04]\d{7}| @@ -7196,6 +7545,11 @@ \d{9} 761234567 + + 818\d{6} + \d{9} + 818123456 + @@ -7234,11 +7588,29 @@ 121 $1-$2-$3 + + + [2-689] + *$1 + - [1-57-9]\d{6,9} - \d{7,10} + + [17]\d{6,9}| + [2-589]\d{3}(?:\d{3,6})?| + 6\d{3} + + \d{4,10} + + + 1700\d{6}| + [2-689]\d{3} + + \d{4,10} + 1700123456 + (?: @@ -7297,6 +7669,17 @@ \d{9} 771234567 + + + [2-689]\d{3} + \d{4} + 2250 + + + 1\d{3} + \d{4} + 1455 + @@ -7305,9 +7688,14 @@ - [15789]\d{6,9} + [135789]\d{6,9} \d{6,10} + + 1624[2-9]\d{5} + \d{10} + 1624250123 + @@ -7320,53 +7708,38 @@ \d{10} 7924123456 - - - 7624\d{6} - \d{10} - 7624123456 - - - - 80(?: - 0(?: - 1111| - \d{6,7} - )| - 8\d{7} - )| - 500\d{6} - - \d{7}(?:\d{2,3})? - 8001234567 + + 808162\d{4} + \d{10} + 8081624567 + (?: - 87[123]| - 9(?: - [01]\d| - 8[0-3] - ) - )\d{7} + 872299| + 90[0167]624 + )\d{4} \d{10} - 9012345678 + 9016247890 + 8(?: 4(?: - 5464\d| - [2-5]\d{7} + 40[49]06| + 5624\d )| - 70\d{7} - ) + 70624\d + )\d{3} - \d{7}(?:\d{3})? - 8431234567 + \d{10} + 8456247890 + 70\d{8} \d{10} @@ -7377,6 +7750,24 @@ \d{10} 5612345678 + + + (?: + 3[0347]| + 55 + )\d{8} + + \d{10} + 5512345678 + + + + 1\d{2}(?:\d{3})?| + 999 + + \d{3,6} + 150 + @@ -7585,9 +7976,9 @@ $1 $2 $3 - 180 - 1800 + pattern="(18[06]0)(\d{2,3})(\d{4})"> + 18[06] + 18[06]0 $1 $2 $3 @@ -7854,6 +8245,12 @@ 9001234567 --> + + + 1860345\d{4} + \d{11} + 18603451234 + @@ -7911,6 +8308,7 @@ + 21 $1 $2 $3 @@ -7924,53 +8322,149 @@ - [1-9]\d{9} - \d{7,10} - - - [1-8]\d{9} - 2123456789 - - - - 9(?: - 1\d| - 3[1-8] - )\d{7} - - \d{10} - 9123456789 - - - - - - - - - - [4-9] - $1 $2 - - - 3 - $1 $2 $3 - - - - - [4-9]\d{6}| - 38\d{7} - - \d{7,9} + [2-6]\d{4,9}|[1789]\d{9} + \d{5,10} - + + 2(?: + 1[2-9]\d{2,7}| + 51\d{3,7} + )| (?: - 4(?: - 1[0-245]| - 2[0-7]| + 241| + 3(?: + 11| + 5[23] + )| + 441| + 5[14]1 + )\d{4,7}| + (?: + 3(?: + 34| + 41 + )| + 6(?: + 11| + 52 + )| + )\d{6,7}| + (?: + 1(?: + [134589][12]| + [27][1-4] + )| + 2(?: + 2[189]| + [3689][12]| + 42| + 5[256]| + 7[34] + )| + 3(?: + 12| + 2[1-4]| + 3[125]| + 4[24-9]| + 51| + [6-9][12] + )| + 4(?: + [135-9][12]| + 2[1-467]| + 4[2-4] + )| + 5(?: + 12| + 2[89]| + 3[1-5]| + 4[2-8]| + [5-7][12]| + 8[1245] + )| + 6(?: + 12| + [347-9][12]| + 51| + 6[1-6] + )| + 7(?: + [13589][12]| + 2[1289]| + 4[1-4]| + 6[1-6]| + 7[1-3] + )| + 8(?: + [145][12]| + 3[124578]| + 6[1256]| + 7[1245] + ) + )\d{7} + + 2123456789 + + + + 9(?: + 1\d| + 3[124-8] + )\d{7} + + \d{10} + 9123456789 + + + 943[24678]\d{6} + \d{10} + 9432123456 + + + + + 993[12]\d{6} + \d{10} + 9932123456 + + + + 9990\d{6} + \d{10} + 9990123456 + + + + + + + + + [4-9] + $1 $2 + + + 3 + $1 $2 $3 + + + + + [4-9]\d{6}| + 38\d{7} + + \d{7,9} + + + + + (?: + 4(?: + 1[0-245]| + 2[0-7]| [37][0-8]| 4[0245]| 5[0-356]| @@ -8051,34 +8545,24 @@ 0[26] $1 $2 $3 - + 0[26] $1 $2 - - 0(?: - [13-57-9][0159]| - 36 - ) - + 0[13-57-9][0159] $1 $2 $3 - - - 0(?: - [13-57-9][0159]| - 36 - ) - + + 0[13-57-9][0159] $1 $2 - 0[13-57-9] + 0[13-57-9][2-46-8] $1 $2 $3 - 0[13-57-9] + 0[13-57-9][2-46-8] $1 $2 @@ -8106,8 +8590,16 @@ \d{6,11} - 0\d{7,10} - \d{8,11} + + 0(?: + [26]\d{4,9}| + [13-57-9](?: + [0159]\d{4,8}| + [2-46-8]\d{5,8} + ) + ) + + \d{6,11} 0212345678 @@ -8158,9 +8650,14 @@ - [15789]\d{6,9} + [135789]\d{6,9} \d{6,10} + + 1534[2-9]\d{5} + \d{10} + 1534250123 + @@ -8269,6 +8766,47 @@ \d{10} 5612345678 + + + + (?: + 3[0347]| + 55 + )\d{8} + + \d{10} + 5512345678 + + + + + 1(?: + 00| + 1(?: + 2| + 8\d{3} + )| + 23| + 4(?: + [14]| + 28| + 7\d + )| + 5\d| + 7(?: + 0[12]| + [128]| + 35? + )| + 808| + 9[135] + )| + 23[234]| + 999 + + \d{3,6} + 150 + @@ -8348,6 +8886,18 @@ \d{10} 9002123456 + + + + 5(?: + 00| + 33| + 44 + )[2-9]\d{6} + + \d{10} + 5002345678 + @@ -9209,13 +9759,14 @@ (?: 1(?: + 1[236-8]| 2[3-6]| 3[3-9]| 4[2-6]| [58][2-8]| 6[2-7]| 7[2-9]| - 9[1-578] + 9[1-8] )| 2[2-9]\d| [36][1-9]\d| @@ -9617,6 +10168,18 @@ \d{10} 9002123456 + + + + 5(?: + 00| + 33| + 44 + )[2-9]\d{6} + + \d{10} + 5002345678 + @@ -9803,24 +10366,7 @@ \d{4,10} - - 1(?: - 5(?: - 44| - 66| - 77| - 88| - 99 - )| - 6(?: - 00| - 44| - 6[16]| - 70| - 88 - ) - )\d{4}| (?: 2| [34][1-3]| @@ -9860,14 +10406,36 @@ \d{10} 7012345678 + + + 1(?: + 5(?: + 44| + 66| + 77| + 88| + 99 + )| + 6(?: + 00| + 44| + 6[16]| + 70| + 88 + ) + )\d{4} + + \d{8} + 15441234 + + nationalPrefixFormattingRule="$NP$FG"> - + [1269] $1 $2 @@ -9897,21 +10465,37 @@ ) )\d{4} - \d{7,8} 22345678 (?: - 5[05]| - 6[05-7]| - 9[0479] - )\d{6} + 5(?: + 0[02]| + 5\d + )| + 6(?: + 0[03679]| + 5[015-9]| + 6\d| + 7[067] + )| + 9(?: + 0[09]| + 4[049]| + [79]\d + ) + )\d{5} \d{8} 50012345 + + 1\d{2} + \d{3} + 177 + @@ -9995,6 +10579,18 @@ \d{10} 9002345678 + + + + 5(?: + 00| + 33| + 44 + )[2-9]\d{6} + + \d{10} + 5002345678 + @@ -10330,6 +10926,18 @@ \d{10} 9002123456 + + + + 5(?: + 00| + 33| + 44 + )[2-9]\d{6} + + \d{10} + 5002345678 + @@ -10640,7 +11248,200 @@ - + + + + + + + [23-5]| + 7[1-9]| + [89](?: + [1-9]| + 0[2-9] + ) + + $1 $2 + + + + [23-5]| + 7[1-9]| + [89](?: + [1-9]| + 0[2-9] + ) + + $1 $2 $3 + + + 20 + $1 $2 $3 + + + + + 2(?: + [0367]| + 4[3-8] + ) + + $1 $2 $3 $4 + + + 20 + $1 $2 $3 $4 + + + + 2(?: + [0367]| + 4[3-8] + ) + + $1 $2 $3 $4 $5 + + + + 2(?: + [12589]| + 4[12] + )| + [3-5]| + 7[1-9]| + [89](?: + [1-9]| + 0[2-9] + ) + + $1 $2 $3 $4 + + + + [89]0[01]| + 70 + + $1 $2 $3 + + + 6 + $1 $2 $3 + + + + + + [24-9]\d{3,10}| + 3(?: + [0-46-9]\d{2,9}| + 5[013-9]\d{1,8} + ) + + \d{4,11} + + + + + (?: + 2(?: + 2\d{1,2}| + 3[2-9]| + [67]\d| + 4[1-8]\d?| + 5[1-5]\d?| + 9[0-24-9]\d? + )| + 3(?: + [059][05-9]| + [13]\d| + [26][015-9]| + 4[0-26-9]| + 7[0-389]| + 8[08] + )\d?| + 4\d{2,3}| + 5(?: + [01458]\d| + [27][0-69]| + 3[0-3]| + [69][0-7] + )\d?| + 7(?: + 1[019]| + 2[05-9]| + 3[05]| + [45][07-9]| + [679][089]| + 8[06-9] + )\d?| + 8(?: + 0[2-9]| + 1[0-36-9]| + 3[3-9]| + [469]9| + [58][7-9]| + 7[89] + )\d?| + 9(?: + 0[89]| + 2[0-49]| + 37| + 49| + 5[0-27-9]| + 7[7-9]| + 9[0-478] + )\d? + )\d{1,7} + + 27123456 + + + 6[269][18]\d{6} + \d{9} + 628123456 + + + 800\d{5} + \d{8} + 80012345 + + + 90[01]\d{5} + \d{8} + 90012345 + + + 801\d{5} + \d{8} + 80112345 + + + 70\d{6} + \d{8} + 70123456 + + + 20\d{2,8} + \d{4,10} + 2012345 + + + + 1(?: + 1[23]| + 2\d{3} + ) + + \d{3,5} + 12123 + @@ -10674,8 +11475,39 @@ + + + nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG"> + + + $1-$2 + + + + [25679]\d{8} + \d{7,9} + + + + (?: + 2[1345]| + 5[1347]| + 6[123479]| + 71 + )\d{7} + + 212345678 + + + 9[12356]\d{7} + \d{9} + 912345678 + @@ -10802,8 +11634,58 @@ + + + nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG"> + + + + [89] + $1 $2 $3 $4 + + + 4 + $1 $2 $3 + + + 6 + $1 $2 $3 $4 $5 + + + + [4689]\d{7,8} + \d{8,9} + + + 8\d{7} + \d{8} + + + + 9[2-47-9]\d{6} + \d{8} + 99123456 + + + + + 6\d{8}| + 4\d{7} + + 612345678 + + + + (?: + 8\d| + 90 + )\d{6} + + \d{8} + 90123456 + @@ -11371,6 +12253,18 @@ \d{10} 9002123456 + + + + 5(?: + 00| + 33| + 44 + )[2-9]\d{6} + + \d{10} + 5002345678 + @@ -11476,6 +12370,18 @@ \d{10} 9002123456 + + + + 5(?: + 00| + 33| + 44 + )[2-9]\d{6} + + \d{10} + 5002345678 + @@ -12365,18 +13271,8 @@ - 70[03-9]| - 8(?: - 0| - 1[23] - ) - - $1 $2 $3 - - - - 702| - 819 + 70| + 8[01] $1 $2 $3 @@ -12426,19 +13322,17 @@ 12345678 - + (?: - 70[3-9]| + 70(?: + [3-9]\d| + 2[1-9] + )| 8(?: 0[2-9]| - 1[23] - ) - )\d{7}| - (?: - 702[1-9]| - 819[01] + 1[23689] + )\d )\d{6} \d{10} @@ -12706,8 +13600,11 @@ - + + @@ -12734,8 +13631,8 @@ - - 2[019] + + 2[0169]|86 $1 $2 $3 @@ -12747,60 +13644,61 @@ - [2-9]\d{7,9} - \d{7,10} + + 6[235-9]\d{6}| + [2-57-9]\d{7,10} + + \d{7,11} (?: 3[2-79]| - [479][2-689]| - 6[235-9] + [49][2-689]| + 6[235-9]| + 7[2-589] )\d{6}| 24099\d{3} \d{7,8} 32345678 - + 2(?: - [027]\d{7}| - 9\d{6,7}| + [079]\d{7}| 1(?: 0\d{5,7}| [12]\d{5,6}| [3-9]\d{5} )| - 4[1-9]\d{6}| - 8\d{7,8} + [28]\d{7,8}| + 4[1-9]\d{6} ) \d{8,10} 211234567 - + + [28]6\d{6,7} + \d{8,9} + 26123456 + + - (?: - 800| - 508 - )\d{6,7} + 508\d{6,7}| + 80\d{6,8} - - \d{9,10} + \d{8,10} 800123456 - - 900\d{6,7} - \d{9,10} + 90\d{7,9} + \d{9,11} 900123456 @@ -13189,15 +14087,13 @@ - (?: - 2[349]| - 45| - 54| - 60| - 72| - 8[2-5]| - 9[2-9] - ) + 2[349]| + 45| + 54| + 60| + 72| + 8[2-5]| + 9[2-9] (?: @@ -13381,14 +14277,19 @@ \d{8} 90012345 - + + + 122\d{6} + \d{9} + + 122044444 + + + what type of number they are. We exclude Azad Jammu, Kashmir and Northern Areas here + since no online example UANs can be found, and they have an "access code" at the start, + making it difficult to guess what a UAN in these areas would look like. --> (?: 2(?: @@ -13432,14 +14333,7 @@ \d{11,12} 21111825888 - - - - 122\d{6} - \d{9} - - 122044444 - + @@ -13573,6 +14467,18 @@ \d{10} 9002345678 + + + + 5(?: + 00| + 33| + 44 + )[2-9]\d{6} + + \d{10} + 5002345678 + @@ -13602,12 +14508,10 @@ - (?: - [24589]\d{7,9}| - 1(?: - [78]\d{8}| - [49]\d{2,3} - ) + [24589]\d{7,8}| + 1(?: + [78]\d{8}| + [49]\d{2,3} ) \d{4,10} @@ -13615,7 +14519,7 @@ (?: - 22[2379]| + 22[234789]| 42[45]| 82[01458]| 92[369] @@ -13682,7 +14586,7 @@ 9(?: [136]\d{2}| - 2[25-79]\d| + 2[124-79]\d| 4(?: 80| 9\d @@ -14003,11 +14907,15 @@ 9123456789 - 800\d{7} + + 80[04]\d{7} 8001234567 - 809\d{7} + + 80[39]\d{7} 8091234567 @@ -14260,8 +15168,12 @@ 8 - $1 $2 $3 $4 + $1-$2 $3 $4 + + 8 + $1 $2 $3 $4 + 1[013689]| @@ -14272,8 +15184,20 @@ 6[03]| 90 - $1 $2 $3 $4 + $1-$2 $3 $4 + + + 1[013689]| + 2[0136]| + 3[1356]| + 4[0246]| + 54| + 6[03]| + 90 + + $1 $2 $3 $4 + 1[13689]| @@ -14284,8 +15208,20 @@ 6[03]| 90 - $1 $2 $3 + $1-$2 $3 + + + 1[13689]| + 2[136]| + 3[1356]| + 4[0246]| + 54| + 6[03]| + 90 + + $1 $2 $3 + 1[2457]| @@ -14300,8 +15236,24 @@ 4[0-3] ) - $1 $2 $3 $4 + $1-$2 $3 $4 + + + 1[2457]| + 2[2457-9]| + 3[0247-9]| + 4[1357-9]| + 5[0-35-9]| + 6[124-9]| + 9(?: + [125-8]| + 3[0-5]| + 4[0-3] + ) + + $1 $2 $3 $4 + 1[2457]| @@ -14316,20 +15268,48 @@ 4[0-3] ) - $1 $2 $3 + $1-$2 $3 + + + 1[2457]| + 2[2457-9]| + 3[0247-9]| + 4[1357-9]| + 5[0-35-9]| + 6[124-9]| + 9(?: + [125-8]| + 3[0-5]| + 4[0-3] + ) + + $1 $2 $3 + 7[02-467] - $1 $2 $3 $4 + $1-$2 $3 $4 + + 7[02-467] + $1 $2 $3 $4 + 20 - $1 $2 $3 + $1-$2 $3 + + 20 + $1 $2 $3 + 9[034] - $1 $2 $3 $4 + $1-$2 $3 $4 + + 9[034] + $1 $2 $3 $4 + \d{7,10} @@ -14487,12 +15467,8 @@ \d{8,11} - - - 6[1-8]\d{6}| - 7000\d{7} - - \d{8,11} + 6[1-8]\d{6} + \d{8} 61234567 @@ -14750,8 +15726,76 @@ + + + + + nationalPrefixForParsing="(?:0549)?([89]\d{5})" nationalPrefixTransformRule="0549$1"> + + + [5-7] + $1 $2 $3 $4 + + + [5-7] + $1 $2 $3 $4 + + + + 0 + $1 $2 + + + + 0 + ($1) $2 + + + + [89] + 0549 $1 + + + [89] + (0549) $1 + + + + [05-7]\d{7,9} + \d{6,10} + + + + + 0549(?: + 8[0157-9]| + 9\d + )\d{4} + + 0549886377 + + + 6[16]\d{6} + \d{8} + 66661212 + + + + 7[178]\d{6} + \d{8} + 71123456 + + + 5[158]\d{6} + \d{8} + 58001110 + @@ -14916,8 +15960,7 @@ (?: 1(?: - - 1\d? | + 1\d?| 4\d| [2356] )| @@ -15082,6 +16125,18 @@ \d{10} 9002345678 + + + + 5(?: + 00| + 33| + 44 + )[2-9]\d{6} + + \d{10} + 5002345678 + 64971[01]\d{4} \d{10} @@ -15550,6 +16605,18 @@ \d{10} 9002345678 + + + + 5(?: + 00| + 33| + 44 + )[2-9]\d{6} + + \d{10} + 5002345678 + @@ -15637,9 +16704,7 @@ (?: 6[158]| 7[1-9] - )(?: - \d{7} - ) + )\d{7} \d{9} 612345678 @@ -15980,14 +17045,16 @@ 2[3-5]| 3[0245]| 4[0235]| + 58| 69| - 7[089]| + 7[0589]| 8[04] )| 5(?: 0[1-57-9]| 1[0235-8]| - [23]0| + 20| + 3[04]| 4[01]| 5[19]| 6[1-37]| @@ -16030,7 +17097,7 @@ 0[1346-9]| 1[02-9]| 2[058]| - 3[167]| + 3[1678]| 4[0179]| 5[1246]| 7[0-3589]| @@ -16070,14 +17137,16 @@ 2[3-5]| 3[0245]| 4[0235]| + 58| 69| - 7[089]| + 7[0589]| 8[04] )| 5(?: 0[1-57-9]| 1[0235-8]| - [23]0| + 20| + 3[04]| 4[01]| 5[19]| 6[1-37]| @@ -16120,7 +17189,7 @@ 0[1346-9]| 1[02-9]| 2[058]| - 3[167]| + 3[1678]| 4[0179]| 5[1246]| 7[0-3589]| @@ -16148,6 +17217,18 @@ \d{10} 9002345678 + + + + 5(?: + 00| + 33| + 44 + )[2-9]\d{6} + + \d{10} + 5002345678 + @@ -16293,6 +17374,18 @@ \d{10} 9002345678 + + + + 5(?: + 00| + 33| + 44 + )[2-9]\d{6} + + \d{10} + 5002345678 + @@ -16427,6 +17520,18 @@ \d{10} 9002345678 + + + + 5(?: + 00| + 33| + 44 + )[2-9]\d{6} + + \d{10} + 5002345678 + @@ -16476,6 +17581,18 @@ \d{10} 9002345678 + + + + 5(?: + 00| + 33| + 44 + )[2-9]\d{6} + + \d{10} + 5002345678 + diff --git a/java/resources/com/google/i18n/phonenumbers/test/PhoneNumberMetaDataForTesting.xml b/java/resources/com/google/i18n/phonenumbers/test/PhoneNumberMetaDataForTesting.xml index 6560b6896..c2b0dd84d 100644 --- a/java/resources/com/google/i18n/phonenumbers/test/PhoneNumberMetaDataForTesting.xml +++ b/java/resources/com/google/i18n/phonenumbers/test/PhoneNumberMetaDataForTesting.xml @@ -558,7 +558,10 @@ - [2-9]\d{7,9} + + [289]\d{7,9}| + [3-7]\d{7} + \d{7,10} @@ -702,8 +705,13 @@ \d{7,10} 1234567890 + + + 800\d{7} + \d{10} + - 8(00|66|77|88)\d{7} + 8(?:00|66|77|88)\d{7} \d{10} diff --git a/java/src/com/google/i18n/phonenumbers/PhoneNumberUtil.java b/java/src/com/google/i18n/phonenumbers/PhoneNumberUtil.java index be71063d3..9f0039203 100644 --- a/java/src/com/google/i18n/phonenumbers/PhoneNumberUtil.java +++ b/java/src/com/google/i18n/phonenumbers/PhoneNumberUtil.java @@ -47,9 +47,13 @@ import java.util.regex.Pattern; * @author Lara Rennie */ public class PhoneNumberUtil { + /** Flags to use when compiling regular expressions for phone numbers. */ + static final int REGEX_FLAGS = Pattern.UNICODE_CASE | Pattern.CASE_INSENSITIVE; // The minimum and maximum length of the national significant number. private static final int MIN_LENGTH_FOR_NSN = 3; - private static final int MAX_LENGTH_FOR_NSN = 15; + static final int MAX_LENGTH_FOR_NSN = 15; + // The maximum length of the country code. + static final int MAX_LENGTH_COUNTRY_CODE = 3; static final String META_DATA_FILE_PREFIX = "/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto"; static final String COUNTRY_CODE_TO_REGION_CODE_MAP_CLASS_NAME = @@ -68,6 +72,8 @@ public class PhoneNumberUtil { // load factor of roughly 0.75. private final Set supportedCountries = new HashSet(300); + // Region-code for the unknown region. + private static final String UNKNOWN_REGION = "ZZ"; // The set of countries that share country code 1. // There are roughly 26 countries of them and we set the initial capacity of the HashSet to 35 @@ -94,33 +100,43 @@ public class PhoneNumberUtil { digitMap.put('0', '0'); digitMap.put('\uFF10', '0'); // Fullwidth digit 0 digitMap.put('\u0660', '0'); // Arabic-indic digit 0 + digitMap.put('\u06F0', '0'); // Eastern-Arabic digit 0 digitMap.put('1', '1'); digitMap.put('\uFF11', '1'); // Fullwidth digit 1 digitMap.put('\u0661', '1'); // Arabic-indic digit 1 + digitMap.put('\u06F1', '1'); // Eastern-Arabic digit 1 digitMap.put('2', '2'); digitMap.put('\uFF12', '2'); // Fullwidth digit 2 digitMap.put('\u0662', '2'); // Arabic-indic digit 2 + digitMap.put('\u06F2', '2'); // Eastern-Arabic digit 2 digitMap.put('3', '3'); digitMap.put('\uFF13', '3'); // Fullwidth digit 3 digitMap.put('\u0663', '3'); // Arabic-indic digit 3 + digitMap.put('\u06F3', '3'); // Eastern-Arabic digit 3 digitMap.put('4', '4'); digitMap.put('\uFF14', '4'); // Fullwidth digit 4 digitMap.put('\u0664', '4'); // Arabic-indic digit 4 + digitMap.put('\u06F4', '4'); // Eastern-Arabic digit 4 digitMap.put('5', '5'); digitMap.put('\uFF15', '5'); // Fullwidth digit 5 digitMap.put('\u0665', '5'); // Arabic-indic digit 5 + digitMap.put('\u06F5', '5'); // Eastern-Arabic digit 5 digitMap.put('6', '6'); digitMap.put('\uFF16', '6'); // Fullwidth digit 6 digitMap.put('\u0666', '6'); // Arabic-indic digit 6 + digitMap.put('\u06F6', '6'); // Eastern-Arabic digit 6 digitMap.put('7', '7'); digitMap.put('\uFF17', '7'); // Fullwidth digit 7 digitMap.put('\u0667', '7'); // Arabic-indic digit 7 + digitMap.put('\u06F7', '7'); // Eastern-Arabic digit 7 digitMap.put('8', '8'); digitMap.put('\uFF18', '8'); // Fullwidth digit 8 digitMap.put('\u0668', '8'); // Arabic-indic digit 8 + digitMap.put('\u06F8', '8'); // Eastern-Arabic digit 8 digitMap.put('9', '9'); digitMap.put('\uFF19', '9'); // Fullwidth digit 9 digitMap.put('\u0669', '9'); // Arabic-indic digit 9 + digitMap.put('\u06F9', '9'); // Eastern-Arabic digit 9 DIGIT_MAPPINGS = Collections.unmodifiableMap(digitMap); HashMap alphaMap = new HashMap(40); @@ -171,6 +187,7 @@ public class PhoneNumberUtil { aSet.add(241); // Gabon aSet.add(242); // Congo (Rep. of the) aSet.add(268); // Swaziland + aSet.add(378); // San Marino aSet.add(379); // Vatican City aSet.add(501); // Belize LEADING_ZERO_COUNTRIES = Collections.unmodifiableSet(aSet); @@ -190,17 +207,17 @@ public class PhoneNumberUtil { // This consists of dash characters, white space characters, full stops, slashes, // square brackets, parentheses and tildes. It also includes the letter 'x' as that is found as a // placeholder for carrier information in some phone numbers. - private static final String VALID_PUNCTUATION = "-x\u2010-\u2015\u2212\u30FC\uFF0D-\uFF0F " + + static final String VALID_PUNCTUATION = "-x\u2010-\u2015\u2212\u30FC\uFF0D-\uFF0F " + "\u00A0\u200B\u2060\u3000()\uFF08\uFF09\uFF3B\uFF3D.\\[\\]/~\u2053\u223C\uFF5E"; - // Digits accepted in phone numbers + // Digits accepted in phone numbers that we understand. private static final String VALID_DIGITS = - Arrays.toString(DIGIT_MAPPINGS.keySet().toArray()).replaceAll(", ", ""); + Arrays.toString(DIGIT_MAPPINGS.keySet().toArray()).replaceAll("[, \\[\\]]", ""); // We accept alpha characters in phone numbers, ASCII only, upper and lower case. private static final String VALID_ALPHA = - Arrays.toString(ALPHA_MAPPINGS.keySet().toArray()).replaceAll(", ", "") + - Arrays.toString(ALPHA_MAPPINGS.keySet().toArray()).toLowerCase().replaceAll(", ", ""); - private static final String PLUS_CHARS = "+\uFF0B"; + Arrays.toString(ALPHA_MAPPINGS.keySet().toArray()).replaceAll("[, \\[\\]]", "") + + Arrays.toString(ALPHA_MAPPINGS.keySet().toArray()).toLowerCase().replaceAll("[, \\[\\]]", ""); + static final String PLUS_CHARS = "+\uFF0B"; private static final Pattern PLUS_CHARS_PATTERN = Pattern.compile("[" + PLUS_CHARS + "]+"); private static final Pattern CAPTURING_DIGIT_PATTERN = Pattern.compile("([" + VALID_DIGITS + "])"); @@ -220,7 +237,7 @@ public class PhoneNumberUtil { // actually two phone numbers, (530) 583-6985 x302 and (530) 583-6985 x2303. We remove the second // extension so that the first number is parsed correctly. private static final String SECOND_NUMBER_START = "[\\\\/] *x"; - private static final Pattern SECOND_NUMBER_START_PATTERN = Pattern.compile(SECOND_NUMBER_START); + static final Pattern SECOND_NUMBER_START_PATTERN = Pattern.compile(SECOND_NUMBER_START); // Regular expression of trailing characters that we want to remove. We remove all characters that // are not alpha or numerical characters. The hash character is retained here, as it may signify @@ -240,9 +257,10 @@ public class PhoneNumberUtil { // the start. // Corresponds to the following: // plus_sign*([punctuation]*[digits]){3,}([punctuation]|[digits]|[alpha])* + // Note VALID_PUNCTUATION starts with a -, so must be the first in the range. private static final String VALID_PHONE_NUMBER = "[" + PLUS_CHARS + "]*(?:[" + VALID_PUNCTUATION + "]*[" + VALID_DIGITS + "]){3,}[" + - VALID_ALPHA + VALID_PUNCTUATION + VALID_DIGITS + "]*"; + VALID_PUNCTUATION + VALID_ALPHA + VALID_DIGITS + "]*"; // Default extension prefix to use when formatting. This will be put in front of any extension // component of the number, after the main national number is formatted. For example, if you wish @@ -261,7 +279,7 @@ public class PhoneNumberUtil { // Canonical-equivalence doesn't seem to be an option with Android java, so we allow two options // for representing the accented o - the character itself, and one in the unicode decomposed form // with the combining acute accent. - private static final String KNOWN_EXTN_PATTERNS = "[ \u00A0\\t,]*" + + static final String KNOWN_EXTN_PATTERNS = "[ \u00A0\\t,]*" + "(?:ext(?:ensi(?:o\u0301?|\u00F3))?n?|" + "\uFF45\uFF58\uFF54\uFF4E?|[,x\uFF58#\uFF03~\uFF5E]|int|anexo|\uFF49\uFF4E\uFF54)" + "[:\\.\uFF0E]?[ \u00A0\\t,-]*([" + VALID_DIGITS + "]{1,7})#?|[- ]+([" + VALID_DIGITS + @@ -270,14 +288,12 @@ public class PhoneNumberUtil { // Regexp of all known extension prefixes used by different countries followed by 1 or more valid // digits, for use when parsing. private static final Pattern EXTN_PATTERN = - Pattern.compile("(?:" + KNOWN_EXTN_PATTERNS + ")$", - Pattern.UNICODE_CASE | Pattern.CASE_INSENSITIVE); + Pattern.compile("(?:" + KNOWN_EXTN_PATTERNS + ")$", REGEX_FLAGS); // We append optionally the extension pattern to the end here, as a valid phone number may // have an extension prefix appended, followed by 1 or more digits. private static final Pattern VALID_PHONE_NUMBER_PATTERN = - Pattern.compile(VALID_PHONE_NUMBER + "(?:" + KNOWN_EXTN_PATTERNS + ")?", - Pattern.UNICODE_CASE | Pattern.CASE_INSENSITIVE); + Pattern.compile(VALID_PHONE_NUMBER + "(?:" + KNOWN_EXTN_PATTERNS + ")?", REGEX_FLAGS); private static final Pattern NON_DIGITS_PATTERN = Pattern.compile("(\\D+)"); private static final Pattern FIRST_GROUP_PATTERN = Pattern.compile("(\\$1)"); @@ -334,6 +350,9 @@ public class PhoneNumberUtil { // http://en.wikipedia.org/wiki/Personal_Numbers PERSONAL_NUMBER, PAGER, + // Used for "Universal Access Numbers" or "Company Numbers". They may be further routed to + // specific offices, but allow one number to be used for a company. + UAN, // A phone number is of type UNKNOWN when it does not fit any of the known patterns for a // specific country. UNKNOWN @@ -343,6 +362,7 @@ public class PhoneNumberUtil { * Types of phone number matches. See detailed description beside the isNumberMatch() method. */ public enum MatchType { + NOT_A_NUMBER, NO_MATCH, SHORT_NSN_MATCH, NSN_MATCH, @@ -1120,6 +1140,8 @@ public class PhoneNumberUtil { return metadata.getPersonalNumber(); case PAGER: return metadata.getPager(); + case UAN: + return metadata.getUan(); default: return metadata.getGeneralDesc(); } @@ -1165,6 +1187,9 @@ public class PhoneNumberUtil { if (isNumberMatchingDesc(nationalNumber, metadata.getPager())) { return PhoneNumberType.PAGER; } + if (isNumberMatchingDesc(nationalNumber, metadata.getUan())) { + return PhoneNumberType.UAN; + } boolean isFixedLine = isNumberMatchingDesc(nationalNumber, metadata.getFixedLine()); if (isFixedLine) { @@ -1294,7 +1319,7 @@ public class PhoneNumberUtil { */ public String getRegionCodeForCountryCode(int countryCode) { List regionCodes = countryCodeToRegionCodeMap.get(countryCode); - return regionCodes == null ? "ZZ" : regionCodes.get(0); + return regionCodes == null ? UNKNOWN_REGION : regionCodes.get(0); } /** @@ -1509,7 +1534,7 @@ public class PhoneNumberUtil { int extractCountryCode(StringBuffer fullNumber, StringBuffer nationalNumber) { int potentialCountryCode; int numberLength = fullNumber.length(); - for (int i = 1; i <= 3 && i <= numberLength; i++) { + for (int i = 1; i <= MAX_LENGTH_COUNTRY_CODE && i <= numberLength; i++) { potentialCountryCode = Integer.parseInt(fullNumber.substring(0, i)); if (countryCodeToRegionCodeMap.containsKey(potentialCountryCode)) { nationalNumber.append(fullNumber.substring(i)); @@ -2025,18 +2050,35 @@ public class PhoneNumberUtil { * specified with + at the start. * @param secondNumber second number to compare. Can contain formatting, and can have country * code specified with + at the start. - * @return NO_MATCH, SHORT_NSN_MATCH, NSN_MATCH, EXACT_MATCH. See isNumberMatch(PhoneNumber - * firstNumber, PhoneNumber secondNumber) for more details. - * @throws NumberParseException if either number is not considered to be a viable phone - * number + * @return NOT_A_NUMBER, NO_MATCH, SHORT_NSN_MATCH, NSN_MATCH, EXACT_MATCH. See + * isNumberMatch(PhoneNumber firstNumber, PhoneNumber secondNumber) for more details. */ - public MatchType isNumberMatch(String firstNumber, String secondNumber) - throws NumberParseException { - PhoneNumber number1 = new PhoneNumber(); - parseHelper(firstNumber, null, false, false, number1); - PhoneNumber number2 = new PhoneNumber(); - parseHelper(secondNumber, null, false, false, number2); - return isNumberMatch(number1, number2); + public MatchType isNumberMatch(String firstNumber, String secondNumber) { + try { + PhoneNumber firstNumberAsProto = parse(firstNumber, UNKNOWN_REGION); + return isNumberMatch(firstNumberAsProto, secondNumber); + } catch (NumberParseException e) { + if (e.getErrorType() == NumberParseException.ErrorType.INVALID_COUNTRY_CODE) { + try { + PhoneNumber secondNumberAsProto = parse(secondNumber, UNKNOWN_REGION); + return isNumberMatch(secondNumberAsProto, firstNumber); + } catch (NumberParseException e2) { + if (e2.getErrorType() == NumberParseException.ErrorType.INVALID_COUNTRY_CODE) { + try { + PhoneNumber firstNumberProto = new PhoneNumber(); + PhoneNumber secondNumberProto = new PhoneNumber(); + parseHelper(firstNumber, null, false, false, firstNumberProto); + parseHelper(secondNumber, null, false, false, secondNumberProto); + return isNumberMatch(firstNumberProto, secondNumberProto); + } catch (NumberParseException e3) { + // Fall through and return MatchType.NOT_A_NUMBER. + } + } + } + } + } + // One or more of the phone numbers we are trying to match is not a viable phone number. + return MatchType.NOT_A_NUMBER; } /** @@ -2046,15 +2088,61 @@ public class PhoneNumberUtil { * @param firstNumber first number to compare in proto buffer format. * @param secondNumber second number to compare. Can contain formatting, and can have country * code specified with + at the start. - * @return NO_MATCH, SHORT_NSN_MATCH, NSN_MATCH, EXACT_MATCH. See isNumberMatch(PhoneNumber - * firstNumber, PhoneNumber secondNumber) for more details. - * @throws NumberParseException if the second number is not considered to be a viable phone - * number + * @return NOT_A_NUMBER, NO_MATCH, SHORT_NSN_MATCH, NSN_MATCH, EXACT_MATCH. See + * isNumberMatch(PhoneNumber firstNumber, PhoneNumber secondNumber) for more details. */ - public MatchType isNumberMatch(PhoneNumber firstNumber, String secondNumber) - throws NumberParseException { - PhoneNumber number2 = new PhoneNumber(); - parseHelper(secondNumber, null, false, false, number2); - return isNumberMatch(firstNumber, number2); + public MatchType isNumberMatch(PhoneNumber firstNumber, String secondNumber) { + // First see if the second number has an implicit country code, by attempting to parse it. + try { + PhoneNumber secondNumberAsProto = parse(secondNumber, UNKNOWN_REGION); + return isNumberMatch(firstNumber, secondNumberAsProto); + } catch (NumberParseException e) { + if (e.getErrorType() == NumberParseException.ErrorType.INVALID_COUNTRY_CODE) { + // The second number has no country code. EXACT_MATCH is no longer possible. + // We parse it as if the region was the same as that for the first number, and if + // EXACT_MATCH is returned, we replace this with NSN_MATCH. + String firstNumberRegion = getRegionCodeForCountryCode(firstNumber.getCountryCode()); + try { + if (!firstNumberRegion.equals(UNKNOWN_REGION)) { + PhoneNumber secondNumberWithFirstNumberRegion = parse(secondNumber, firstNumberRegion); + MatchType match = isNumberMatch(firstNumber, secondNumberWithFirstNumberRegion); + if (match == MatchType.EXACT_MATCH) { + return MatchType.NSN_MATCH; + } + return match; + } else { + // If the first number didn't have a valid country code, then we parse the second number + // without one as well. + PhoneNumber secondNumberProto = new PhoneNumber(); + parseHelper(secondNumber, null, false, false, secondNumberProto); + return isNumberMatch(firstNumber, secondNumberProto); + } + } catch (NumberParseException e2) { + // Fall-through to return NOT_A_NUMBER. + } + } + } + // One or more of the phone numbers we are trying to match is not a viable phone number. + return MatchType.NOT_A_NUMBER; + } + + /** + * Returns true if the number can only be dialled from within the country. If unknown, or the + * number can be dialled from outside the country as well, returns false. Does not check the + * number is a valid number. + * TODO: Make this method public when we have enough metadata to make it worthwhile. Currently + * visible for testing purposes only. + * + * @param number the phone-number for which we want to know whether it is only diallable from + * within the country + */ + boolean canBeInternationallyDialled(PhoneNumber number) { + String regionCode = getRegionCodeForNumber(number); + String nationalSignificantNumber = getNationalSignificantNumber(number); + if (!isValidRegionCode(regionCode)) { + return true; + } + PhoneMetadata metadata = getMetadataForRegion(regionCode); + return !isNumberMatchingDesc(nationalSignificantNumber, metadata.getNoInternationalDialling()); } } diff --git a/java/src/com/google/i18n/phonenumbers/Phonemetadata.java b/java/src/com/google/i18n/phonenumbers/Phonemetadata.java index 0c1aea0b9..98dd52fa2 100644 --- a/java/src/com/google/i18n/phonenumbers/Phonemetadata.java +++ b/java/src/com/google/i18n/phonenumbers/Phonemetadata.java @@ -374,6 +374,34 @@ public final class Phonemetadata { return this; } + // required PhoneNumberDesc uan = 25; + private boolean hasUan; + private PhoneNumberDesc uan_ = null; + public boolean hasUan() { return hasUan; } + public PhoneNumberDesc getUan() { return uan_; } + public PhoneMetadata setUan(PhoneNumberDesc value) { + if (value == null) { + throw new NullPointerException(); + } + hasUan = true; + uan_ = value; + return this; + } + + // required PhoneNumberDesc noInternationalDialling = 24; + private boolean hasNoInternationalDialling; + private PhoneNumberDesc noInternationalDialling_ = null; + public boolean hasNoInternationalDialling() { return hasNoInternationalDialling; } + public PhoneNumberDesc getNoInternationalDialling() { return noInternationalDialling_; } + public PhoneMetadata setNoInternationalDialling(PhoneNumberDesc value) { + if (value == null) { + throw new NullPointerException(); + } + hasNoInternationalDialling = true; + noInternationalDialling_ = value; + return this; + } + // required string id = 9; private boolean hasId; private String id_ = ""; @@ -568,6 +596,14 @@ public final class Phonemetadata { if (hasPager) { pager_.writeExternal(objectOutput); } + objectOutput.writeBoolean(hasUan); + if (hasUan) { + uan_.writeExternal(objectOutput); + } + objectOutput.writeBoolean(hasNoInternationalDialling); + if (hasNoInternationalDialling) { + noInternationalDialling_.writeExternal(objectOutput); + } objectOutput.writeUTF(id_); objectOutput.writeInt(countryCode_); @@ -675,6 +711,18 @@ public final class Phonemetadata { desc.readExternal(objectInput); setPager(desc); } + hasDesc = objectInput.readBoolean(); + if (hasDesc) { + PhoneNumberDesc desc = new PhoneNumberDesc(); + desc.readExternal(objectInput); + setUan(desc); + } + hasDesc = objectInput.readBoolean(); + if (hasDesc) { + PhoneNumberDesc desc = new PhoneNumberDesc(); + desc.readExternal(objectInput); + setNoInternationalDialling(desc); + } setId(objectInput.readUTF()); setCountryCode(objectInput.readInt()); diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AD b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AD index 616dae9d9af383061c0e209d180149d472a5ede1..62b3b29d8a6ca67f9329c1e6ceb47af735a2886a 100644 GIT binary patch delta 23 fcmX@kbf1ZH&07Z6Dh39|u!)?PCZ6Y+c)kJvVg3ly delta 20 ccmcc5bexHE&07Z6Dh38dyNR5aCVtKV07-NQX8-^I diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AE b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AE index 597d55b4604009553da857cf31306c5dcbd71ff5..cce75403ea2ba9ad8fe1a35b263e192da337af6d 100644 GIT binary patch delta 26 gcmbQuvYCZ*&07Z6Dh387t&N;YjFaUVd4Tv20ASt*?*IS* delta 22 ecmdnYGMj~S&07Z6Dh387p^cnMjFX)iKL7wo-v%%M diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AF b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AF index d5c398595184e33d117557c8018bd331075bdcf0..69223401efbbdb111d6b01fdf1b929369fc2ffa9 100644 GIT binary patch delta 20 ccmZ3^w4aG{&07Z6Dh38dvx%H%ChpAw07J$G;Q#;t delta 20 ccmdnbw48}^&07Z6Dh38dxrv--CcX^<07I4r;Q#;t diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AG b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AG index 6fc667fb7302896f525e263e184d56261dc24c39..f0b7c4fa76101f4b87fcfd37e63240cb95401bdf 100644 GIT binary patch delta 127 zcmey%beoxT&07Z6Dh39|OA|R21(l7=EHvz`On}%d+CbOXVxpBEqrt>X8E!KR%h(!= zXagf%vxz-DyyB)nB?bmH#>O=!CKC^ebD0_#7#W+GnweWnR%F!X;sY9FVi0X+89Q-; YsE~n~AyAT$k%7t25lk>l_GB~x07j@DXaE2J delta 71 zcmcc3{FjMy&07Z6Dh39|l8Ky(0!l_^78>?eCO~W!ZJ=vB(OQpDXJVENyJ>8VMYOT$ Y#ECteOn#1x3_yZmvNxmlyhz diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AL b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AL index 9ace69a20bb44963277df1151fdff425f756e661..560b6777b69b7e389dbc1ca2cab7be8bf0f45d6f 100644 GIT binary patch delta 23 fcmZ3*dWe;C&07Z6Dh39oof|o4FmCQ-RAdAITX+Wr delta 23 fcmX@ax{8%^&07Z6Dh39og&R3%FmB$-$jJx*TSx~5 diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AM b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AM index aa722df63b55232145f42b3fd61f122fda639ec4..e1488b3cf186966810fba33c6b9d87064b901a52 100644 GIT binary patch delta 26 gcmey&+|9zd<}Cwj6$1kk(?(7s#>x7OJV1N|0A%$B?f?J) delta 22 ecmeBX`OM6@<}Cwj6$1m~tBssSjFW>IcK`rXA_pD- diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AN b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AN index f32485cb7ff34cd5020bd9a0606a9f20474ee0bf..73a83e8606f67bbdfc0b8a6f33a85951478f4e7f 100644 GIT binary patch delta 22 ecmbQtvYLf+&07Z6Dh387rH!1k87KEJwgUi5HwK9S delta 22 ecmZ3@GMR;Q&07Z6Dh387u8o|t87J>y%m)BV2L_1% diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AO b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_AO index 83acb24e853d75baf6d68c33fdc19b2fcdd18a39..304cb0a2c7709eccd81853d281da9844d30e39b9 100644 GIT binary patch delta 23 fcmeBTTExV;<}Cwj6$1mK1ld|?t6zmIR=}C zLKZc$W;CNW?`fouZ_3|@vQHusLePCsjqi`Ab6fjC&>Ehty8$_RFZa(1KStoRCw3Jk z$x#K_Sl{(g2W@>HO^`}AEdmx9lN=W$YvUTYEn;lIQbkTBU1XHeV>Drvaj0P}FxFvv zS4HjY{&)i0*)Bv0+9=i-#yaTRq8OOX$f_(jW#Vf4glmDzVLRB3krz-4)Y|*sY47KB z_Hqz}DK+38XSk9;#&Y#Y`(0x+~PK;9a42g-O>%xk?uS zTgpOJ0!85YQy;b0HL;!_5c6? delta 208 zcmcc3`ifa+&07Z6Dh39|hYUc1k&%HX+ECXbHYTOoT*so8k%1k^ve2=t1&XDdIl!PChQ_+)mOzcd LV5TKZC)j!b?vN?- diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BA b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BA index 8517a8116dbfc935ac1fb9159bf124b0ef0fddcb..3c9e2688758fdc04c8e9a3264748e2b6e3b3e165 100644 GIT binary patch delta 68 zcmcb@^qYxu&07Z6Dh39|qKTYJyh0lGR?)_$u`ww%CYBSekIFGJGO$}1#-vo6)iN@$ V0%;2%&0%3^Xk=_+YBupp0sw*A5KE}kk<}Cwj6$1mK?L^KmldTv%0Y^dxQvd(} diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BD b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BD index a7d04c2b2ef0d0339e5d6b6c322d6bba8b4a01d4..872fc63a95129e434fa02a4077e722b5a7c6fc81 100644 GIT binary patch delta 22 ecmaFQ-p;|f<}Cwj6$1nFzm1%{%#;5yeFOkk7zg$M delta 22 ecmZqYc+bwc<}Cwj6$1nFvyGg*%#-z)Zvp^P><0G$ diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BE b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BE index 925aa03bb41f1ccfe800c78c03a6adeba0b38271..b0074bfeb33db16f18bda42c060b6c2eba0161fc 100644 GIT binary patch delta 53 zcmZo>UCYY3<}Cwj6$1m)l8KzzjAj!{XNj^~n8&14o7FNhumWidAkAT6KADZtY_kDl GFe3nx;tkCJ delta 31 ncmZ3>+RVzi<}Cwj6$1lP)kMy0M)QfKvnB^Jif;B}jAsM@l^Y2W diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BF b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BF index 99e001ae9be621f8315e45313bbe7a0ca94a4c4e..1fc75cc6d60b274f433f7704b96ee07167b383e0 100644 GIT binary patch delta 25 hcmcc5^qq-w&07Z6Dh39|yp5c!j1%ukOy*+@1ORRE2c-Z2 delta 22 dcmey)bf1ZH&07Z6Dh39|u#KFojFZ(E0|8WR1|9$a diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BG b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BG index c99fbe105843e776bc86d19241eda71304860d4a..ed3913d0fd4c63a52481d900e489b42711ba739e 100644 GIT binary patch delta 23 fcmaFI+Q!DY<}Cwj6$1m)-;JD+jGMg}moNeVU9|^S delta 23 ecmZo;d&kPT<}Cwj6$1m)(~X>wjGL<%dl&&+hX+>x diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BH b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BH index abef81672435cfcf68fc42e8103aaaf1f141c2d4..a7b67c4b23286345dd2af0be0472b080e8c2d4af 100644 GIT binary patch delta 26 gcmbQqypfr6&07Z6Dh39|6&pE&87BuY@&K_X0BOSqMgRZ+ delta 22 ecmdnUJd>Go&07Z6Dh39|2^%?s87G%8+5!Mg%?4Hg diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BI b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BI index db71deb943701edf3263857c66c51cb808cd1962..40ecfcbb1b8a11b66b4c4adec97aee4c52fa46b1 100644 GIT binary patch delta 23 fcmZ3&w14}^tC%y^-07Cr+(f|Me diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BJ b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BJ index 3ed5c445de3c10527facd44b885910955a11d5ee..1fb831867756bdca549e05788c73b4bd77c43077 100644 GIT binary patch delta 25 hcmaFE)WXcU<}Cwj6$1lf^+rx1#)(%XCQCC00sv+62VDRF delta 22 dcmZo+e#6AM<}Cwj6$1lf@vKvfdEX71>gVx diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BL b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BL index 276bbbc9018fdfb7ee98f2f1fa3849925a22fb85..de4b8047ce65733686e61af25d793bb3fc67b6f9 100644 GIT binary patch delta 23 fcmey$IDv_C&07Z6Dh38d_K9p~C$5*6cv%SmTYv}j delta 17 ZcmbQh^p%lq&07Z6^7j)t&rW=&1OPvs2b%x@ diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BM b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BM index cc07f42131aa8035bce5d97460ef291ea516b19e..f51c6f7e9975d8ab3f265bbe0bcfd2807a4e759d 100644 GIT binary patch delta 77 zcmaFEw33-~&07Z6Dh39|1sge~81=+WHSDbn3~G#xYfMZuqm6VeV`EaP&1xAL*nqU5 e0g%CEYG7bwY+`C=ZZTPbQDw3YBhO?PMhyTDMG~<9 delta 22 dcmZ3<{Dz5h&07Z6Dh39|JpoW_1~LEu diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BN b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BN index 2b56da6320aa89dd4489650d72614f4062c50bd2..0fe3d380421d91942e818117dcdd286d76984c2b 100644 GIT binary patch delta 23 fcmey)IEjgK&07Z6Dh38d&WUVGCeGuTI4=?aS``Pj delta 17 ZcmbQl^qrAy&07Z6@{bcamrOkB3jjYL2YLVi diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BO b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BO index 577f50510d826182dc6e4d2e9f47ea8a255044f9..191b55c7aa9171b2011479e18b8456d225a7ebab 100644 GIT binary patch delta 22 dcmaFE+`_`S<}Cwj6$1m~?~R-}jFV#-`vFz72Rr}( delta 22 dcmZo+dBe=P<}Cwj6$1m~Mo&07Z6Dh39ou8o|9jGHGhN-_cfRN)4K diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BS b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BS index 29dec477d6f47002e839920ef8cb41f587416ecb..e72eaac502ec585d299a66607453fe2680645b0d 100644 GIT binary patch delta 77 zcmeyxyq$$}&07Z6Dh387y^WkJ81=+WHSDbn3~G#xYfMZuqm6VeV`EaP&1xAL*nqU5 f0g%CEYG7bwY+`C=ZZUZsqsru6j69PsF=_w+DQFay delta 22 ecmdna@{5^s&07Z6Dh39|j~h8xFiw8Q=m`K^+Xwmp diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BT b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BT index c5abdd1dee2ea6fac947180458caa5d6e0e267ee..c04cc474e58851d3e16bfe7f3767a846e7df0bbb 100644 GIT binary patch delta 23 fcmaFD^oNOa&07Z6Dh39|;)$F$ChnD(_^=rOXiEu4 delta 20 ccmeyv^n{6X&07Z6Dh39|=!u*+CjM*&08YpU;Q#;t diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BW b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BW index 24f51e8793b5201bd6c4394742443720e23d8672..752f8527d4e3e23286016bd41fb2cf9a87f58093 100644 GIT binary patch delta 26 icmaFO+|0tc<}Cwj6$1m~uZ^5#jFY1oB_`K1<^TY6p9o0+ delta 22 ecmZo>dCknZ<}Cwj6$1m~qm7(pjFYD`<^TXxq6b0% diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BY b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_BY index 0ef9b4d1517b41e95e9c4799941a19287dcbb1d4..91b82072b96e524d5a666e25cf7360cc13fb09bc 100644 GIT binary patch delta 26 icmdnaa-M~A&07Z6Dh387w~d_B7$;XVN=%;5I0FE1CI~wK delta 22 ecmX@lvYmx<&07Z6Dh387y^WmH7$0C_>82e%_4Ll zBL<7u(*QT-Iw4e~QS)SxI^0t-u}vrqb##SHUYJNGAQp?V0EtzjtCONsi%PJ!7q|wC zrlU`j-HXi>>y$F%TCR~ZuhEB?a;cR5#&7&X>8l0*ReaUQRz*t48Kt1s!!uV^?{-sj z=JTdp)naM)@`OvGle~z;Z`ts;F~Xxee7W;V5okwTUAJydZ2sBny7^!(!^5WkYjUK{ LF_`az*#7wfXHAs0 literal 578 zcmc(dPfA2F493$ZiVV2$5@JCi>7O)pBZGS{pzb_{^Sv{O_wZ`o!E|`TJlxFELX+|} zp}!>k{-N^^qNx*62!XC&(tUq>ec$yN*`3aTF5R~~;n^eT^Y-x}`R0P8s0`~7nH6P- z8KMwFwsBQ8q7Iqi0a73xCa@Nvi|krPaiJ|j1$PLe8H^)r$ZaHQi}3)b4kzqbWsMhT zlenZ@sy1`fFVFoiRP+I!z;#W%>g8Y9n|-C;vkFzT2D8)U8gr6;!CvlFXFfJ4(1rKM ihvpCY#W8Gp-Uf0rhI#T#)6;hR3_4>GcVRKE9o8=)A%V95 diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CD b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CD index b248f9c0f7ef565398e577cbdeb12e00dbe79b78..029f0e9fefbb5d9c72b5e0ab176f33f5a7cf55e4 100644 GIT binary patch delta 23 fcmcb>^n!_V&07Z6Dh39|_=%hcCiY59JlPHaVowOK delta 20 ccmaFCbb*O;&07Z6Dh38d_lcYbCO&Kj07|$Ac>n+a diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CF b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CF index 7ad9c1f28b12379e2cda4d1c1435cd088c36efe7..440ee17f2330b97b3bd8feae87fdedef8ec3575b 100644 GIT binary patch delta 20 ccmbQrw3dl;&07Z6Dh38dm5H3YC$7l^06;YchyVZp delta 20 ccmZ3>G?j^S&07Z6Dh38do{5~hC*BDJ06+x>hyVZp diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CG b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CG index 94f8cca093da624f4b07b832af545ef9af1f60a8..dfc82a1db99b22ad4af9b40e6d6236bca256cc9e 100644 GIT binary patch delta 23 fcmX@ibeoBD&07Z6Dh39|poyG^Chq5%xW5GeU{VO9 delta 20 ccmcc3beM^A&07Z6Dh38dtBIV4CO)nJ07z^HM*si- diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CH b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CH index b9ec90d25f262deca36aa3d4202c3e5cbfd91476..b9781b3c9d483743390d7d8ac4db8a23dfbfb1b7 100644 GIT binary patch delta 26 gcmcb^{Dqlw&07Z6Dh39|*Bd!?87FHo@&NHB0C%wn1^@s6 delta 22 ecmeyue21BH&07Z6Dh39|%Nsd$87KQOE&~8sIR`ud diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CI b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CI index 728b344a906e3d44ee4b414cbfeb08f096809a5b..c647c3dfb5dac65e522b21d23e04192846263a37 100644 GIT binary patch delta 25 hcmaFD^oNOa&07Z6Dh39|;*FeKj1%8WOcrJg1ORWp2hRWi delta 22 dcmeyv^n{6X&07Z6Dh39|=#89QjFYt)0|8Z;1~&iz diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CK b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CK index a02cd7a1010283adb65c6e097d7fb7d3368f0c47..2ce83c2808c3f3136684718700059d3a6009090e 100644 GIT binary patch delta 20 ccmZo-oW;nt<}Cwj`IL!l5fk+!CdR1%07kC{rvLx| delta 17 YcmbQm*u==T<}CwjdCf$&h>2w?05gOI&;S4c diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CL b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CL index a5068d89b699f531ff0ba54e1cc79b2057ae77b2..e6bb05edfb69f5f1de00bcba9512ed4d093e3cef 100644 GIT binary patch delta 37 tcmX@Z_JECZ&07Z6Dh3AT@Qs|VjFZI~`6s(F1~M8>j%GC6e1@@s5dhAk3TprW delta 33 pcmaFBc7}~}&07Z6Dh38-=Z&1MjFZzCJs3?V7ciP`e!$qk2mq~p3FZI* diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CM b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CM index 48d920932c09883182d06063f93542081ad29e5d..414c1ddc0f43cc5bda0dbaa1b7b26a500976db2d 100644 GIT binary patch delta 20 ccmaFL^p}Zq&07Z6Dh39|l8Kz>CmvV|08aS_+yDRo delta 20 ccmey%^puHn&07Z6Dh39|n2DU{Cw}M!08YsV+yDRo diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CN b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CN index f0e924bb1363dc11feb88a644de50eb5f7f5c78f..aeb822422a46a656e5f8cdd4289539c32f6196ee 100644 GIT binary patch delta 50 zcmew@JXvG|3-jbtO#GA2GI363VSdY6#lXPAF!>`}+~yFLMa*nKE)xU8=G!b`jFW>n GR{{W&YYyrF delta 65 zcmbO%@>_TV3-e?d=C_kM*(F%37#LU>CM&YLZO&m?#4O9e$iToLsu7b?ZCtB~L;;mC LzSykI@q!TmD{K){ diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CO b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CO index ec43e3adfc330f166cab905630f179021793144f..84926a14e4a52a3debf50e26554327c1425b107e 100644 GIT binary patch literal 818 zcmb_Z!Ab)$5S_GCt3{!gf(TmZA{*#JCdqa;UPQd>2c)_6D>VB@{+j>bOS-fR3Zi(} zWU}*S-n=*OA2fL-8cQM)LeO>jaPQfK?e0yjO&7hkRU0IpO($rY?lp48 z_zeIP+-(A~Hn!e0EpRsmJ(X9Lwjna^Hbm_eAG)5Ph!v{Njpn`(b!Xfvl?ai^5JoUd zKaZFNyM1#G(fZ~%>7c+33r5e6f^Z}Oe~xMN^a8&e&6V`F$PvXx4Gva%BaAEmddAS{Z0=CGXD*ylh literal 147 zcmZ4UmVvdrmw|zSkr70|Fe3w#pCgz6Ns!HEU~={c8fnQOs$p+sU=VF;ZW&vnY-(y+ TqiktusR^`?(EvsO)j^C;qDh08RS`(f|Me diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CU b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CU index ab458a33c939ab73f369b373950199d36d0200f0..58728b954b7e331bf6d9bb3a19ac96c0ed6c5281 100644 GIT binary patch delta 32 ocmbQwyqTGE&07Z6Dh39|RTDXt8N((TgiUO(ns`@YG9%+W0H)Fkn*aa+ delta 34 qcmdnYJfE3!&07Z6Dh39|X%jh>S)w%TttRS*F=|e1u9_^$I1d1-;R)aX diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CV b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CV index 348260b5a5c0aba33639d9de3314296866e15130..40f68197ac34349d06da5b73c88cac8d412d92e8 100644 GIT binary patch delta 23 fcmZ3&w14}_ICw_AS07E$j-T(jq diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CY b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_CY index d59197b3c51684bf4637bcdf7bd70148318534b2..6e910fa533ee132fe0adae57c22db518c6707b34 100644 GIT binary patch delta 20 ccmX@ebd!m5&07Z6Dh39|fQg(xCccaS07*^s(*n! diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_DE b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_DE index 5cec8ce320071d43ba31f617e2cdac6e54577834..657ff376a8f86163613897b7e6ae41c715145c00 100644 GIT binary patch delta 52 ucmX@l^PFcx3X=pQBLkD4BbZ=7W^Ybm>SbiDVqjp3ocxhlVly9$BNG4?WD0Kp delta 27 icmaFPbDn2I3e)Bqre4O$d@K^IRSXPFj+@n39GL)qMF&Fw diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_DJ b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_DJ index 8df1bce1e88ac4c2344f41271bf9eca11ab3b77b..195b880b1d625fa09d1f799b852502d81658f423 100644 GIT binary patch delta 23 fcmeyxIF*TW&07Z6Dh38do{4O0C-zHB-0ThjTJs0U delta 17 ZcmbQr^ox;g&07Z6@-GuP*G@d=4gf#J2af;% diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_DK b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_DK index 294013b8e5479b0a33b79502b3b375267c16e6ed..84b40d6e4e261fd5562f8e9f6654aebc3f7fbafc 100644 GIT binary patch delta 26 gcmeyvG=-US&07Z6Dh39|?v0!ZjFV*i_@% delta 22 dcmbQj{D+Bi&07Z6Dh39|;*FdNjFTN1g8@)J1}*>q diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_DM b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_DM index 046e184da1ffc482f7bf949070c0c6058225801e..2f468341e75ad48cb8e545a3a6990c045c8199b3 100644 GIT binary patch delta 69 zcmey$w27H>&07Z6Dh39|l^Z#g8TG_XHSDbn3~G#xYfMZuqm6VeV`EaP&1xAL*nqU5 W0g%CEYG7bwY+`C=ZZTPwF#-UGh7mdd delta 22 dcmdnQ{FRAw&07Z6Dh39|oQ<5yjFU4NJpodO244UG diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_DO b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_DO index 05ef91320b9c8dd376730686a535b8bc3a437c27..0100b938c94c3cb594113975189f02adbe661dd2 100644 GIT binary patch delta 49 zcmdnR^qq-w&07Z6Dh39|yosDo_{2>$?5zw8YK)C*OiVNr delta 22 ecmX@hvXzB%&07Z6Dh387osFD6jFWR29{>PPcLu@$ diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_EC b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_EC index 1e125fc96f3c366e7edec78b850ee85111255215..5078020831299875a06e2f258f82e5dffbeadfb5 100644 GIT binary patch delta 24 gcmZ3)vWtat&07Z6Dh387!- delta 23 fcmbQk_Lh}%&07Z6Dh39oCmT6y7&mWW%wPlnU-t*3 diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_EG b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_EG index dc2b772388005d710c1cb3a605e4b934ff352efa..1b383cb184f64dfe12f131a6fc99108110b12da5 100644 GIT binary patch delta 26 icmdnVa*>5|&07Z6Dh387kByuajFV#-B_=mA?f?L8YzPMc delta 22 ecmcb}vXg~#&07Z6Dh387gN>XOjFV?F?f?K$rw0B2 diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_ER b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_ER index 5dee5f6a8164e9e52fd84deeb15e157b90e6e1eb..72073963ef3082dc64e7de61e716a0993fc3bcb6 100644 GIT binary patch delta 20 ccmZ3=w3mr<&07Z6Dh38dlZl+?Cmu)z07H2O+yDRo delta 20 ccmdnXw3LZ+&07Z6Dh38dnTed|Cw}k+07FRz+yDRo diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_ES b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_ES index 85d0e22b72a9f89f5483d4cabe70873cf9273255..81c67e2561e197ed8b9bfc4146861c54a0e06d01 100644 GIT binary patch delta 56 zcmaFH)WyuX<}Cwj6$1lf<3!Fg%JFfuZ*n;OQXRGZf_GOz+^OCZf@YB=$u J@MHnTFaWw`4*dWC delta 35 rcmeBTe#XSP<}Cwj6$1lf>_pBpTzne#R;GqE<_4M*Zx~KCVGIKRxy%Ya diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_ET b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_ET index 45587dffe62713e0c43d67333cd3b527175dd875..6c1a58853187e4f20265c2b4e0558be866303bf4 100644 GIT binary patch delta 37 ncmbQqv5{lL5$4GYm?b73Vb*0TSDXBiS%Qy&*+9jRkpT(--TDZ8 delta 52 zcmdnUF_UA%5$4Hvm~}O3H8o;Vs!eJ&88}o76;zBARE!ybfU%s9f!RRCkP*ZI0RV5? B3Dp1q diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_FI b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_FI index f544b38f495b6398b6aba5e457e1d8a7c51f89cc..925e74014e69a48e7e1a974613a4a997cd06afb2 100644 GIT binary patch delta 121 zcmZ3=dXANI&07Z6Dh39oqZ2t*Sd$Dj?5!p`C<{g#>RQCcq*NR0Sk~4Ug9OiLO%`W7 zEX2sj&}C=zLQpOf*uSoX+T=2^6$| i2wK+GSOR5DbS!E$Ym6~9q-jk)z^FcP+TO{`Os4_#R3D@O diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_FJ b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_FJ index 9756031dcaa562326a48b89b1959e64bfb97a68b..dfc6432756a1f011951b921604ace1690bab9065 100644 GIT binary patch delta 19 acmb=L#K^YhEdy(L&qTI}iFy(f<75CtnFfXc delta 16 XcmbQlSjD#HEdy(L$wan@iDfbXF(?JE diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_FK b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_FK index b10ad658529bf9f08723dfb3dbba05f40850aaad..9630d47db6d3fd08060f9d8d1d68b111cc1a5ed4 100644 GIT binary patch delta 20 ccmZo*oWaPp<}Cwj`J{<#5fk+!CdMfN07gv)p8x;= delta 17 YcmbQi*ucoP<}CwjdDTR=h>2xN05dcN$N&HU diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_FM b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_FM index 13fbbace84ce81ca81d39960182889a8caa2bf32..f3f36997b9790cb7d866b6a7315e9f65232ac4aa 100644 GIT binary patch delta 19 acmb=L#K^YhEdy(L&qTI}iFy(f<75CtnFfXc delta 16 XcmbQlSjD#HEdy(L$wan@iDfbXF(?JE diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_FO b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_FO index 6f8ab3a08df7e30bc53520f35ba2c1a4d779aba8..f75752f4bce63d0c3c264554abbfd696a63da8dd 100644 GIT binary patch delta 28 kcmcb?^nru&ia{x#;20{P; delta 22 dcmZ3;(#gWP<}Cwj6$1kk!$!^;#>sOTTL4H020{P; diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GB b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GB index c6853dec2aa7d02c06f3518a5201f10250e20cf0..9f4e327b9196e69424254942c8010b4b4ccd37e3 100644 GIT binary patch delta 112 zcmbOvx=nO~24liR%}z$$jax#Q*>tNI7+4rK^RqNCZeGl4$i%|P$RIp<0;{MsTTDu| zp+PMp1DC0(p^>qPshPP2P?E{d5lk>JFu6N1FfiyaFc}yyFfuS20EHDQfW|Q`p8Sek KWwS6xJre+Gn-(en delta 93 zcmdlcI!Sbb24m?&%}ypmqm7$Gnc1os7+4r|H}kPHFbdab*jpJ#8yK6I$JUsdYR05g wTWs!SHDVHDU~+e2U|`T;U@|aZU}Ru4U}RuYsF*Cwp~4E(&s4wJoTHuz04^vLApigX diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GD b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GD index eed33a81c0e2412cf60e050885258bd6520ba92f..f2e6c56f65c32924d7be7d47f538dc5f382a7ec6 100644 GIT binary patch delta 83 zcmZ3^{Dhfv&07Z6Dh39|+Y>oGWugttVl8TnqfK=!V{1&J4RlR_v?-8lZW%i ksfN9kfkBP2agB+I=45?FF)mXB10!P-Q!{gm$^MKH0Qa31vH$=8 delta 53 zcmaFDyquYH&07Z6Dh39|c@sH3WehB8jH69;En{m;q78ISfV3%)YYwE%EGFiCm^_=& F69B2$5P1Lq diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GE b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GE index 13f26f3fcfe24ca0dbc09af009f000d25652f30b..fd894c53faaa5aefe109cc7e559287efd233b310 100644 GIT binary patch delta 27 icmeyu(!p~_5}O?uO&9@l0|yfT delta 23 ecmeBS{ldbz<}Cwj6$1lP_C`)~#?29oCX4`9dj?AY diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GF b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GF index b904357fd643161da84619c9ddf2420ff92cde57..e82b26cf0c1679acaa8b0892f0ebdb516abfc63e 100644 GIT binary patch delta 19 acmb=L#K^YhEdy(L&qTI}iFy(f<75CtnFfXc delta 16 XcmbQlSjD#HEdy(L$wan@iDfbXF(?JE diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GG b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GG index 869208202030c423935b88289dbc1153fb4657d1..ae3cec7c8620237c1a03619a68fe322502142176 100644 GIT binary patch delta 91 zcmeBXIm#lk<}Cwj6$1m44FdxMBO@aNf3%_TM&V10mO!?!hP{<>w1KgSd2EfTsb)+{ mwM8u>0~?SwGypQVOic}qj7?0<%q@V5nfx5V1jFQ~jA{UKj1tcP delta 32 ncmX@g(#;~g<}Cwj6$1kk69WSSBO@aNU$o&ykxPt|<(bp~b>jw? diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GH b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GH index 59857cf8ce80a1802d6914d7ae8db1c9d02d15b4..82ff8e468688e175d43f07286db7ad8705a9c228 100644 GIT binary patch delta 26 icmbQoyp5T2&07Z6Dh39|wHrBI87IpzN=)`+3;+OWQ3oaf delta 22 ecmdnSJdc@k&07Z6Dh39|sT(<687HSP1^@s~VFp|P diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GI b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GI index 89fad3eba71723fd20e87af2b37c94c4bf19126b..63a685fa4dc00443e858e66dec48902b21edd54b 100644 GIT binary patch delta 23 fcmZ3&w14}{GCo3?@002k<1`7ZH diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GL b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GL index a0934bc50d17e56a202dea313d53175f4beb3b3a..f8dc2b009720b28ff6e7bd849ea5c510f8d0ebb2 100644 GIT binary patch delta 23 fcmdnVbdia3&07Z6Dh38dkBOWwC$5*6_{kjrUr-31 delta 21 dcmcb}w3CT*&07Z6Dh38dgNd9kCv!2n0{}~G21x(_ diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GM b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GM index fc19acc0f957ed681380923c7173a97c6ddad924..27ce34fb107a74fdeb271bc60c24c7fbd95b435b 100644 GIT binary patch delta 24 gcmX@f^pJ^j&07Z6Dh39|h>e`gjFT97CNX*f09^(KVgLXD delta 22 dcmaFJbdrg4&07Z6Dh38dhmD-fjFVLuZ2?c^1;hXV diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GN b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GN index 919cd8df34fb38782e0a925c244c94ee825746e0..dde6c5365735e3e44c96f59547c2d28e2d14d9b5 100644 GIT binary patch delta 26 gcmaFO)XdDe<}Cwj6$1lf)kaQ1#>sq)JU|=^0A@r6i2wiq delta 22 dcmZo>e$B+W<}Cwj6$1lf(nd}}#>qyEfdEWW1=|1s diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GP b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GP index e9302aacbfc01759595149bfacf0528fc30b9803..f6108ee18525650308c6d87ea512b03ab84105a2 100644 GIT binary patch delta 24 gcmcc1^p%No&07Z6Dh39|oQ<5!jFT97CNahW0AY>>vH$=8 delta 22 dcmey$beD;9&07Z6Dh39|kd2(ojFVLu0|8U@1{44Q diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GQ b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GQ index 455e8aefc7717e524b466b01b3853765722eef87..c3bd13e57f6be8f03144abe646816e89f02809f8 100644 GIT binary patch delta 25 hcmbQtyqcMF&07Z6Dh39|MH@Lq87Kadm@LOw3IJo<2crN0 delta 22 dcmZ3@Jeiqu&07Z6Dh39|u8o|cjFZh6O94uy1^@s6 diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GR b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GR index 7797c75a2d39003c109763af8157f397cb4d1af3..ed28df8d6dcc83deddf0b7184c276e888f91e8c5 100644 GIT binary patch delta 22 ecmZ3)wu_B(&07Z6Dh38-!;PGYOp}9{E&u>b)CQ6O delta 22 ecmdnRwup^$&07Z6Dh38-$&H+eOp}|Kb^riOqy~}z diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GT b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GT index 82c4d1dec1aa9d2d1cb16bc0e1eeea19fc6b6507..b91516c18dc28e39681df7037fb1d323f5254b98 100644 GIT binary patch delta 19 acmb=L#K^YhEdy(L&qTI}iFy(f<75CtnFfXc delta 16 XcmbQlSjD#HEdy(L$wan@iDfbXF(?JE diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GU b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GU index c7ebf8fe1c1125d45f71de97217ea9521280acb9..237d37afdc762eeb927b9a535b3d1867809120f3 100644 GIT binary patch delta 54 zcmey*w1=5<&07Z6Dh39|%^Nv&8F|G`HSDbn3~G#xYfMZg-WTUGH83zTHZe6bx0r0t IC;`L{0HWp&H2?qr delta 30 mcmdnP{GW+)&07Z6Dh39|vW=X&jFambMJLxV@=Tt>r~v?!hX~aG diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GW b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GW index a5c64f69aeef96d972aa4aaeee6a2eddecd8e234..a755f364104d7093e51475b69acd3a2fb9623bf0 100644 GIT binary patch delta 20 ccmbQlw2Fyy&07Z6Dh38d#fh9}ChiRd06+i+jQ{`u delta 20 ccmZ3*G>M6G&07Z6Dh38d&WW67Ccd==06)+MjQ{`u diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GY b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_GY index d11ba6d10abf8941464a8fbd434fbbff1c262d23..10f48a72c02d9f2d68350a5c0831b2eaf23ef3e0 100644 GIT binary patch delta 20 ccmZo2y&05e<#%m4rY diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_HK b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_HK index aa8066c8e28a9f05a4899530baaa604fe614c78c..01b773d70fefcdac61768999018cd296418878cd 100644 GIT binary patch delta 20 ccmdnTe2tlN&07Z6Dh39|vlBVLOniD108G>fX8-^I delta 21 dcmcb{ypNf4&07Z6Dh39|trI!FOcrH42mn!32WkKS diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_HN b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_HN index c884ba6920518bbf2476368a33f43b2137623cde..502c311e1511b0822bd9bc736c64c0b6623bc97f 100644 GIT binary patch delta 26 gcmdnNe1VyB&07Z6Dh39|;~P1P7$@g5@&K_X0CUg?00000 delta 22 ecmcb>yn~r@&07Z6Dh39|^&2^h7$;9=v;_cF5eD%9 diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_HR b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_HR index 3a0bbe87fdf09129e0dc98ac0398e85842511d9e..3089e8b99416c2ef415eab049607f8df9ac0c85e 100644 GIT binary patch delta 23 ecmcb^_Jxge&07Z6Dh3AT?2VjGjGK)aHJJcim2pJqH&6 delta 22 ecmaFPe4d$e&07Z6Dh39|V;ebb7$?Uvb^!ob4F?wh diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_ID b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_ID index 704fffee93792d34b9720ba14fd7a6b536552bb2..0c2803e31a18f00a52fbf3af3929fdbc4911511a 100644 GIT binary patch delta 34 qcmZqYSjfS-<}Cwj6$1kc!$!_#rpXOVJewPs3K^No#U_7b76SmMBMFfJ delta 46 vcmZ3;(ayoS<}Cwj6$1nFzm1&DOq-W5r80^!FfuS(7+3;H0~JF?1}Fdk6>Fg&D0F6&M*AI4le;Vp6KjY8e?=fwU!%<^&2E8X23Inr(Ju WTFS^&K5OzbX64DYEaH=uSP}q{XA*M& delta 45 zcmZ3=*~B?Pmx+;OqW*1m3qy;Tlxnlh9E>)Mn+up`GEU}ZQD!PHpPaxVKG~He0RSM+ B3~2xW diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_IL b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_IL index 7657febc28745b311a1f3605c2dfc3d3210b9c0a..d39b391d89dd3863c08be795a582c296e18fed33 100644 GIT binary patch delta 210 zcmdnZdYa97&07Z6Dh38-Ck6%vMn*;k?Px>u*qD@RGabv?nrI_kQwvKF*SJ>0-U>wP znAK|9*O-BY7#TQ#w8=(wea1kbRvw^oGnjHl23C+z}9YX`4S}u?pLnC7oQ?toojOvW+o9h@Y7&X{6z-DPOFl(t8f*i`g4z-Jsfl0-X I5hw%(08mseKmY&$ delta 65 zcmX@jwwqOb&07Z6Dh39oO$-bSjEsy7{LzNGrslequ`wytW;&L&j0_w=mib0!ea6X$ T8PyrtHos=HU}OcVW?%pS3)T+P diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_IM b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_IM index fb263ec643eeca7c16063dee9331cd454da88ace..7285d1ec2026629e166c60e988aa0ace56888fc2 100644 GIT binary patch literal 447 zcmZvZJx&BM427MMVEGZEproNfth9ym<2a^4loW7*kd8wjn7t7-x8e@G>`23omPiv> ze&6%6CSN~v^g-ml372zpS$z~O)?VK}^TxK0PIi^&Ep$5dIi%j$7aX1Sc9IMupbM>% ztrs)ZteA`JQeWAWhnAy|4JD^Spdq@;#v@}l6(M2-UEi0M@P8&KfA&rv2sk> gMv=bya^^^Uc z{hWUP($yys{}4XRbf1k2F^wPlFW;q!>82th6UwwUzPFlK7MN}|ZJmb@q`Q!vPveDn z4FU9^h16Tq4`71!66JOKrq|$_6VsTKYLi+<1~wpVXb5C*L&Xh^j7>J5W))y!t72ea zwlbM)$6?5*JMp~kW(SVROdOILh8EEVX0elRa4E{MLD&rJ5ZZu|fl0-XkpT(-dC3_F delta 68 zcmX>rHc@QDb=J*XY%ENSCX)*}4B2$67#NuTO+2r=xtL=z6RVhpp@qR@K5j(`W*~!s Q1xOe$GBBwaGBQ8`0Bfub(f|Me diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_IO b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_IO index a8da3f4dc47fd0db45bd9e8495449122d090c8da..f15346f963093c9681d8be08d916f19f2a333906 100644 GIT binary patch delta 19 acmb=L#K^YhEdy(L&qTI}iFy(f<75CtnFfXc delta 16 XcmbQlSjD#HEdy(L$wan@iDfbXF(?JE diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_IQ b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_IQ index 18d3ab2e0f383bb0d0f88f18e429f08775d288a7..ab713bbe8ea5940b44414f289cf7eea02ff1426e 100644 GIT binary patch delta 20 ccmZ3;ypx%8&07Z6Dh39|4HG%+Uo!pp|X;P#~A#W4>6p8j>(&yFu4*o~G zOO{}8agt8@=AVBw+P_cq<`>b`4@~njVVP=?gvFrHG#64BC$;#v0VkBl))^SmL-MMut*ITSO|kTgT)I*4UlU!3CwBQ6p=3?EaEh+$u{FKC?>0m z(FH>hJlF+Z8V%W&!m7}akQUfl?2^W4 zVDNd*ci+A^!hpux^y>OU&gRY@PK4M_HT%^Fly0(mv;dx70Cfkx%Q=rPXytJ+xpzg~ z*Y9}BKdBo>a^%(lTh!6VlW>26lFr*i*GE1a<#6=&0Z=FG=xRJ-B>H5iU(j_z;C~S} Rc$$OtOv-3q!@qFLNzZQL!J+^F delta 94 zcmaFBcA3d$&07Z6Dh38dF9smN$jHDIZK!J*8q2dM__Eyn`#=55Fx|Xrg28O1Vu{FkKnv4t#K*S)Z0W!&`7OcTk$E;S9 kfmOv&LB$9t$H;(7^W>>ax?EfaFk>fQVNyfp@-Wu`08JSwtN;K2 diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_JE b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_JE index 43b10d14b2848eee878d123fbd9eae6c9cb265d1..8b31f895bc09143da4a207727982cb19e871916b 100644 GIT binary patch delta 91 zcmbQma)m`?&07Z6Dh387Zw3YiMn*;k{%AwvjlvHZErD!d4SOr&Xai#t^Vk|wQ_Yx^ mYKvM%1~wpVXaHnznVK3J8Jn1znOguAGx<4!35LmE7}WrUmlGNQ delta 32 ocmcb@GK)oc&07Z6Dh387K?Vi}Mn*;kzG%aZA`clS>oKVT0DCD0;s5{u diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_JM b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_JM index ff1a1794b1ae7bb81b3907a7232b68420862027f..77c4efc804b6fa4d91ce5242a7bad094480391dd 100644 GIT binary patch delta 69 zcmcb@JduTS&07Z6Dh387j*Xm6jC$gx8unHO1~taUH6|vS(MGzKu`wytX0?nAY(U!3 W0Lb7nH83zTHZe6bx0qbR7y$riO%WIX delta 30 kcmbQpa)p_5&07Z6Dh39|(;GRP7$-kqvWz&j3Z|1^55} delta 22 dcmZ3;(#gWP<}Cwj6$1kk!$wXc#>v5q=Kw{w1^55} diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_JP b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_JP index 1a8acdbec4b49850ef5bef83d609a053405e0c75..230c63b70b7c188714b86243182902c2cbaef95b 100644 GIT binary patch delta 116 zcmdm`d{cRXhTuO9dn-c_jy5tj)3u1LnP_0RF}aVChmnzi$Ix$jZc8#lXPA zFxiG#j?r>6AIn2#sK9%6`N`XP3rtT$Tn+a delta 22 ecmcb{vX6yx&07Z6Dh387(~X=987CiNoB{w-^9MTs diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_KH b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_KH index 2d186fef6222eb016ce1f2f73acc5d9c8fb790e8..0ddca187c0967987e7b3daa8cac77b10bec21aa2 100644 GIT binary patch delta 22 ecmaFB{DYZu&07Z6Dh39|_ZvBF87J#8ZUO*Xxd&VT delta 22 ecmeyt{D7Hr&07Z6Dh39|>l-<387Idv&H?~ii3eN& diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_KI b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_KI index 8370801e68a79e647ed4d5d2f30dd6e6aa1d391b..377f39bb9245faed1229fa7cc4fa857666da7a11 100644 GIT binary patch delta 20 ccmZo*oWaPp<}Cwj`J{<#5fk+!CdMfN07gv)p8x;= delta 17 YcmbQi*ucoP<}CwjdDTR=h>2xN05dcN$N&HU diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_KM b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_KM index 2d6fe4fc5090a47c51f28749df93e3f935256660..a2d3de609d78addfb6991753b9682bf76c53a521 100644 GIT binary patch delta 23 fcmey*IE#sM&07Z6Dh38d!HH~JC$8t2xIO>?T&f57 delta 17 ZcmbQm^q-M!&07Z6@}Cnqw@$p~0sug@2de-8 diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_KN b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_KN index eb4ad7749946d3b2a5e52e4d4592e0d9bc275322..863b3eb33b54c39f49e97cae7173eaf7178c5333 100644 GIT binary patch delta 69 zcmaFLw1}B=&07Z6Dh39|nHxEU8TG_XHSDbn3~G#xYfMZuqm6VeV`EaP&1xAL*nqU5 W0g%CEYG7bwY+`C=ZZVmcF#-U11`z51 delta 22 dcmZ3){FI4v&07Z6Dh39|n2nsmjFTf7JpoR~1`hxL diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_KP b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_KP index 74310f17e9ba05c3c1314855caa29dedfe6c4157..eccdf9e392a1f3282a3b38c41456d683464a7cfe 100644 GIT binary patch delta 20 ccmZo*oWaPp<}Cwj`J{<#5fk+!CdMfN07gv)p8x;= delta 17 YcmbQi*ucoP<}CwjdDTR=h>2xN05dcN$N&HU diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_KR b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_KR index 978e7d9e8b1189f153777b5a8fdcd671b2b36450..641ce7fceca75a513a3459e16690fc77b7618e20 100644 GIT binary patch delta 66 zcmdnYeU*EH38UG@EKx=lMn(pc$z`ni5-};&Cbf(VtU%fVNOKsPnwS_G8Jlb_W-MW1 TtzuwcJU;n3v(jchmZgjUFXIr) delta 38 ucmcc0y_tK031jwTKSmSAnvJHSjGGrSW-v|WV^LzQVqjogy4iqbDI);jxeAs5 diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_KW b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_KW index 5cc81d80081d9825cec30cf0ade4ed17f9d29da5..3d5cd85f9d72ae6f3ec929e48472ceb25027e70d 100644 GIT binary patch delta 134 zcmZo+KElko<}Cwj6$1m~?uncoK|vb!R;EB~5N%)-TVooNqFG}G;ToHnTLML*4Gc|n zfef>llp6DB12gkj%^FLH3ZSS-w1EkbiUukLYSoNMsWzRsK4#*7o{9e@nHd-uCMz=P RGBQjKVpQc~U%?&07Z6Dh38-nT?!3m?ldys{jB_`UW-t diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_LA b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_LA index 4d0bedba02b85cbf2e20fd1035396396a13cee0c..e0c1ec1ca017a55efa3aa2b5e69c933e5948340f 100644 GIT binary patch delta 20 ccmdnQe2STK&07Z6Dh39|gA+N=PdxAm07>%*5&!@I delta 20 ccmX@byos4}&07Z6Dh39|l@mG7PyBET07=6L5&!@I diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_LB b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_LB index 8ec8d9dfa410fb6be378d66719099480d43d434b..ab97154f0c8561dd001d2441cb6c15110546efd2 100644 GIT binary patch delta 26 gcmX@l{G6F{&07Z6Dh39|dmB0V87K2F@&NH+0CG16mH+?% delta 22 ecmaFPe4d$e&07Z6Dh39|V;ed787CVsZU+EXr3UH% diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_LC b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_LC index d253f13802b3630c538ab685c3eda8031e8278ad..296fe4179809d0e39dae1b30fd0c5b582d812fb4 100644 GIT binary patch delta 58 zcmbQpe2$rO&07Z6Dh39|qZ>Kx8F|G`HSDbn3~G#xYfMZgeiY|2H83zTHZe6bx0oEr MC^0#fkq3xP0Mi5yF#rGn delta 26 icmX@dJdv4m&07Z6Dh39|j*Xo5jFaawa!&4JbN~QsdIzQe diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_LI b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_LI index 03207a1030ac36498ebb9a5aea1d0a5020badb18..37693c56691858097e4534b46831ecddc309da3e 100644 GIT binary patch delta 23 fcmcc2`kIw<&07Z6Dh39oM;kdWF>XH0D8L8+W_kzX delta 22 ecmaFOdYP4T&07Z6Dh39oQyV!iF;4!>_yYi5=Lo_8 diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_LK b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_LK index aa92d0ec1b2ea74ce0456428355f2aa88f9a0155..4092102ba51a44a8fdc53c9198e526c57d217cdf 100644 GIT binary patch delta 23 fcmey&)XmJf<}Cwj6$1lf(?re(6W2;ieAxv6VF(EP delta 21 ccmeBX{>;R=<}Cwj6$1lf)@~ diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_LR b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_LR index 762883c88172219a3caad711696f8d71bc03d6e7..c5cfee68a6c909c69da2a8cd5932eccc08655834 100644 GIT binary patch delta 23 fcmaFQ)XvPg<}Cwj6$1lf-9*kC6Zc9?eAov7U_1!) delta 20 ccmZo?e$T|Y<}Cwj6$1lf+CD~_WA$M`gE@?9J zck05_Hfn`<+YwE|@e>f14-Tnga3n@_PJ;(;wu$=&yRwUrsJgqhYPvWk?Fx{L z022>5p>kveAfB?v&ID{i(qU|c*Fu;(1Ea+}StokHd*J&4u|`1RNHlss!#tu10=Va@ zj5vod>k#H^4g#rqVxTAnK=qs@7NPVoI(*qJ^_0vh!v1LzetQ*k6R|6^qmn2!=4+vahjab(MheOyZXpM7M?}HHH zsN93)I%?EH7#>8#V+5k<@imV21Xo_@_wt3_&+KAy&2q~apFG?j^S&07Z6Dh38do{5}?CO-B806-`Pj{pDw diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_LY b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_LY index f0433fd995bdabb1dedff0656cce8f91d73f1811..6fb9f25d6c3878094a58ce7f91c95e4998a7ca86 100644 GIT binary patch literal 310 zcmb_XK?=e!5S*3;15%1z%YHq$l(;xXF|KK0oRgpfx9A+k&+1>2@ ziSi0i0|p|@dgt2^)A@4i2Evp%tm42PmTI?kyV+45QX1_@>5l%D|VHdg%^ngl9L$6?xsSl;R1nOE>R#i;trgscj$8hg-Yz$ z%vdw?zBiuZ5BfVmPGAthYh|qS+fBVMr>+qU`Epa=u!*s+@|h`TZQHWh4^8Hg_gP+; zxeWl@77r#MZUBO3+YObDV{ggVr`yyAuTu{Ghv`39v|b1pg8L)y0j=6?x{ZNowd8-l z5ory9oC9xw9^MlU=S_My;YDS!%41c;%7mNYsp7o^J*_ffVR9oYItUX+7g?(ja}|6f W_P*5_gz-g6$5_offV~1(0Db{yOHmB~ literal 128 zcmZ4UmVvdrih+TFkr70|Fe3w#pCgz6Ns!HEVDfbanp(-gWMBX^oDog{?STLQO_$#k#>rZY5|jNH4*&pP;|BEr delta 22 dcmZ3+(#OKN<}Cwj6$1kk>qbsj#>r`n2LMM?1|I+b diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_ME b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_ME index 80be441b5cf08810ae8fdb72b99c805a7f6bdfb7..056305b5580202562aed1b1552e5a27e2f837a8c 100644 GIT binary patch delta 20 ccmZo*oWaPp<}Cwj`J{<#5fk+!CdMfN07gv)p8x;= delta 17 YcmbQi*ucoP<}CwjdDTR=h>2xN05dcN$N&HU diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MF b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MF index 5138d374fd0bb877c0844f0de6ad4864cec9c7a7..29c214b0b4140dc6206ca34cbd08bbd7ca11fe4d 100644 GIT binary patch delta 23 fcmey(IE{&O&07Z6Dh38d-id6NC(f0acvA@gT%ZU5 delta 17 ZcmbQn^qY}w&07Z6@~;y)FHiiU1OPy*2e|+M diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MG b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MG index 7b38ca3ac010368b05e32983f3a62ebb4bfbc5d5..b0c8bf218cf515e6f4f7933844eb73bfc7e42841 100644 GIT binary patch delta 23 fcmcb~^pS~k&07Z6Dh39|jES6IC!Uj-_%9j&XDbOw delta 21 dcmey!bd!m5&07Z6Dh39|fQg)6CyOyg0{~Ir2Gsxn diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MH b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MH index b8d3d45d2df7e09b2cf076d353e182069a78bead..131f1980e27aa5a83afbea4e08947442467ca170 100644 GIT binary patch delta 20 ccmZo2y&05e<#%m4rY diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MK b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MK index 9bf3754f7f8d1cc504efc63cec88c5d8f056c48e..9b94a61ce554acef996fb69619f28e0fbe2e546a 100644 GIT binary patch delta 26 gcmdnMa)O0(&07Z6Dh387`;DAQjFaOTd4TvL0BYU`!vFvP delta 22 ecmX@XvVnzj&07Z6Dh387^^KfKjFX!gj{*QsBL>6( diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_ML b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_ML index 73cc6dca791013819ae5cbc55c16963e8e12801b..d1efd0f24eb0d1f5c95990a48b289eb168387527 100644 GIT binary patch delta 26 gcmZo?p3ls=<}Cwj6$1m~w2hp~jFS}@d4M<_0AaHRo&W#< delta 22 dcmbQw+|JCo<}Cwj6$1lf-9}Dj#>p;>(Ev!L1>OJv diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MM b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MM index f0be7e4c4ab360ec9667c327e5737a1b61c48530..8c3505974930d70155f00db11e25c2d67346f50b 100644 GIT binary patch delta 24 gcmdnMa)O0(&07Z6Dh387`-z;NCcfv{_}-Bb0BA`F-2eap delta 22 ecmX@XvVnzj&07Z6Dh387^@*IHHVZSFG6Dcm8wOMW diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MN b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MN index d3c52c6cfa765f0467eeae9eba467a85290609e8..0d76175c1de651f4673b07b86656880798faf632 100644 GIT binary patch delta 26 icmbQmx`~x@&07Z6Dh39ol^Z!t87IDx*lfob!w3LxatHSS delta 23 fcmdnQI*XNa&07Z6Dh39oi5odh88?S9#xMc^R80nA diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MO b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MO index f0fbe002d233466b92bb4204ea6187fe98f28594..a72a4bcc2af79f4f89f88775797365af7600ecdb 100644 GIT binary patch delta 23 fcmZo-n#;tw<}Cwj6$1mK$V9eX6DLSaJm3TXQLYDf delta 17 ZcmbQs)WpQL<}Cwj`JaiLyC&Xt0suMG2R#4) diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MP b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MP index f8789a57ac4803345f4503e891e650fc4293063b..312659b090d71655f55ad30a71e990a3989b115c 100644 GIT binary patch delta 58 zcmbQpe2$rO&07Z6Dh39|qZ>Kx8F|G`HSDbn3~G#xYfMZgeiY|2H83zTHZe6bx0oEr MC^0#fkq3xP0Mi5yF#rGn delta 26 icmX@dJdv4m&07Z6Dh39|j*Xo5jFaawa!&4JbN~QsdIzQe diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MQ b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MQ index c13fbbf430fa682b87516492e0850b783e7eea4a..6a495d763caa167e5c1f0b09ed3280671c3b696a 100644 GIT binary patch delta 20 ccmZo*oWaPp<}Cwj`J{<#5fk+!CdMfN07gv)p8x;= delta 17 YcmbQi*ucoP<}CwjdDTR=h>2xN05dcN$N&HU diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MR b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MR index ce173e479b3928eb6e61281f31ad3553a71f579c..fd21ea71e720d6cd85075d8e223a5dbfe846fde7 100644 GIT binary patch delta 26 icmaFH{EwM)&07Z6Dh39|uNyhN7$@s9N=y!BoD2Yb1PELJ delta 22 ecmeyz{EV4%&07Z6Dh39|yBj&Z7$;{lP6hy7DF=Z7 diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MS b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MS index f966f9b5ba1e4699ba85c4c428f573f8b21f3932..c1ad3b365badb365004914e00781142603eb6ba7 100644 GIT binary patch delta 49 zcmZ3<^o)sf&07Z6Dh39|*omCi`NT~%?5zw8YK)C*OiVNl?&07Z6Dh39|`5QT17$<8oN=)`;bOr!s5(fAH delta 22 dcmZ3%Jb{^W&07Z6Dh39|_Kln_jFVFtodHXM1|t9f diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MV b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MV index 77a73cc87e9a1e102af1e9586df3d6665c2b272d..49e9b28b0b4166302c49b131a1b52c7d1b496dac 100644 GIT binary patch delta 24 gcmX@d^o)sf&07Z6Dh39|*omBfCti@4%*N;e0BZpVDgXcg delta 21 dcmaFHbdHI0&07Z6Dh38d*NL2eC(AK<002+@2C)DD diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MW b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MW index aeb83349073935c9cb4662825853c01a19ed20c9..4529ee137e82000332d5a89d9de58c8e59ae5f66 100644 GIT binary patch delta 23 fcmaFD{D+xy&07Z6Dh39|&l5R6PJG8R@!dB7Z*~fY delta 21 dcmeyv{Dhfv&07Z6Dh39|+Y>oIP8MQ(1pruu2mb&7 diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MX b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_MX index c09bbf4b885eed16318a0a61e37321a9f7d98da7..c857d1de51ae881a47beec17d9bb138733e08299 100644 GIT binary patch delta 18 acmX@l`5ZHwOp`;Io&x|&qy}vO diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_NC b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_NC index b5e235afc68f234b60ca47b6611966f6b3eb9c33..a6ce4d01cf3f47cf708097345e06d1b7c9f98d84 100644 GIT binary patch delta 20 ccmZo*oWaPp<}Cwj`J{<#5fk+!CdMfN07gv)p8x;= delta 17 YcmbQi*ucoP<}CwjdDTR=h>2xN05dcN$N&HU diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_NE b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_NE index 9654c4d5c46c6b34c9440c00d65fb2800765a11c..05e12c30e496efe012cb47f6cae8248cb4a81b83 100644 GIT binary patch delta 22 ecmZ3_e4Lqc&07Z6Dh39|eH%ID7$@^HE&u>f%?5b@ delta 22 ecmX@kyq=kJ&07Z6Dh39|Wg9u=7$@5^b^riSod$UT diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_NF b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_NF index 544eef3f797b064dff532593de44c7adff35bd53..e4ef5e8fe6a261845267a523c4d19a58cffe9e82 100644 GIT binary patch delta 19 acmb=L#K^YhEdy(L&qTI}iFy(f<75CtnFfXc delta 16 XcmbQlSjD#HEdy(L$wan@iDfbXF(?JE diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_NG b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_NG index ddb825f7f232659bcd44e801592f7830a25a54b7..09939ff5dd08c38f482140b719476a60b016f82a 100644 GIT binary patch delta 97 zcmey(c9@NG&07Z6Dh38-tBIVa^i4GEt;`L8M6|K4Wo%4JjZw5AkfB*)0TeTcHUhG1 w45N*V%`AX|F)5R|80SuoX5^ndk5QG8ZSoPuZJZqD1~nGZ28OYdPcv-*07AGM`2YX_ delta 173 zcmX@i_M44!&07Z6Dh3ATqKTZR%xyI6t;`Lgjdd+!Yb=0lgJ>fV(=gh|I95|LCZ*cE zwg#-kDB2LL#?Ug_z%X_)6XV>;+ZkmT*(YCN+!iPbG{OL322?vE1G9mOAtM6=gQP~Z pxkW6{G~-%L4HSxjL&Z=*#YjQL7^sYqf!*A|sK&z3a`I%R4FDmqERp~K diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_NI b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_NI index 42181d37e3a7ccf6962983ed4fe0f76ac0123850..5eb33fe7c58d1e87d92376fe67a67628a6bb8c2c 100644 GIT binary patch delta 20 ccmZo*oWaPp<}Cwj`J{<#5fk+!CdMfN07gv)p8x;= delta 17 YcmbQi*ucoP<}CwjdDTR=h>2xN05dcN$N&HU diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_NL b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_NL index e85597f2b34cb6a5a732bba2be2c4ce8ae7ad28e..79c874169a50b2e79947d4f8d48d65dfa4fc71d9 100644 GIT binary patch delta 26 icmcc0@|J~j&07Z6Dh39ol#QH{j1#}{Zb%7 delta 22 ecmdnWGM9yO&07Z6Dh387k&T@7jFT5IP6Yr=F9wwW diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_NP b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_NP index fc42a3fe0424801186a1f18ab1b482fd46acea61..74caa04014a02dd7c401b534da45b9aa2c7be22c 100644 GIT binary patch delta 25 hcmaFJ{F9k;&07Z6Dh39|4;wi-87IDzm@LG29sqTv2*UsX delta 22 ecmey#{E(S*&07Z6Dh39|8yh(}87FHoo(BM09S1A` diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_NR b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_NR index 1ed47df6fd0ae3024f68bb0e6cb224d346a62d2d..72e46b38a5c570122987d39975ea4a7a1261670f 100644 GIT binary patch delta 20 ccmZo*oWaPp<}Cwj`J{<#5fk+!CdMfN07gv)p8x;= delta 17 YcmbQi*ucoP<}CwjdDTR=h>2xN05dcN$N&HU diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_NU b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_NU index 099065c19c913df71649584a1c1870e0dc13e99e..d33aa7a2feecff99f124f1769f15ebfc1489332e 100644 GIT binary patch delta 20 ccmdnTc#V;5&07Z6@(UB$=1i=Un7Bv=09D%vD*ylh delta 17 Zcmcb{xQ~%-&07Z6@*NY|=1klr0{}ia2Lu2B diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_NZ b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_NZ index 71b1d941d5ad1cb4146796acbbfa7a47b0fb1139..20dc762bb83aa335dd285d65324cd680014bb5d0 100644 GIT binary patch delta 344 zcmXw#u};G<6h)sc6=;DC2_d0wl>)fp*-7kYma;H`_y9~cU}XneNX#siKLfsme_=*! zJU7X9?Ht{EoX^So*5lU?OkM!w9{>m;U~Yq{+okXBA6{*W!7N+XpPbT|1nlq!jyf?8 zzFJ+>%sAi0(D;s{CC+0>bftjS*Jt}ThS`8ja>4qedJBe1bc#}Jf*vPN`U&dSrbcU1 zH?4KNcF-afE#*=q+$0)|Mw}3Pp7E(Kj8lGKe6ikK7bc&J)8oA&VTVou+nlK9jm=8T pk3inu@t?Vb8L~b`Z8Zx@#QZG2jAGzWF;q}7Qcy7l`IUhUqG2xN05dcN$N&HU diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_PE b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_PE index 472ee304999c29d1d4b7b39feea5ca890da54914..45de89dbf3c1c0a666bc453326cab70c27cf7a4a 100644 GIT binary patch delta 23 fcmZo?p3ls=<}Cwj6$1m~w27P-CeD?Zcyk>9SsDnf delta 20 ccmbQw+|JCo<}Cwj6$1lf-9*j{6F;s4074E2X8-^I diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_PF b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_PF index 921e217ec930c2b0b5d8aeb0519c68ec7a3a7e8f..30924a4ef8a4b7cdfff32e67e2b4d2707e790547 100644 GIT binary patch delta 19 acmb=L#K^YhEdy(L&qTI}iFy(f<75CtnFfXc delta 16 XcmbQlSjD#HEdy(L$wan@iDfbXF(?JE diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_PG b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_PG index 05e8556b2842e0065078251eab65711196489922..067b4997cb4473471122c80c81588a33b0024bbc 100644 GIT binary patch delta 25 hcmZ3)yo;H0&07Z6Dh39|jTxY delta 23 fcmdnVzL1@B&07Z6Dh3AT85=px88=5TCNcp4R!0Vg diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_PK b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_PK index ac191776da62dc16f1aeac36de288ce1bd24effb..a7a82f77099b16911ca79322d1de99e4e4450b8b 100644 GIT binary patch delta 64 zcmZ3%yN7oH6DO0OBO?QlV3_=d$zt+f#!r)_nXj={F)%Q#oBWYkV)6xMzR5ByR*VXh U8(0*W7}O_UU{T+^goT9(0B~9ouK)l5 delta 43 zcmV+`0M!4y4X6#E0+U1n?~@DyHIqC8&6Cgr7zKI&00NqmCIm2xN05dcN$N&HU diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_PR b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_PR index 0995296e7af46658841ad99a64d6c26baee8d1fb..335b318e83e4e82b5d904d1c46b8a6a6c1a75232 100644 GIT binary patch delta 39 vcmX@i)WFQS<}Cwj6$1lf`9#jQyyB)B_ErW4HO9s@CMFZ-i!+)|yq5|9;#dpX delta 29 lcmZo*KFq|q<}Cwj6$1mK)kMy>lkFKrC)+UcOb%hx0RVvh2m}BC diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_PS b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_PS index 16b2bedaa59bc352359ac35c2e05040d82927ff4..21b99860fa4187e909c43808dc98fcdc7e566754 100644 GIT binary patch delta 73 zcmZoSYp8EHla4j{)w$Ize_ asDeR9!`{lsDB8%_#N1+H`18qXjJE+Rgb}WMXPz85@&QZLVWEQBFomlaYY~$TQI~ aG^hotV$cFAGBS!bGB%$W`h0Q-<6!`SOA+q? diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_PT b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_PT index 3903c9c0759d7dbc3a61778cf708c9fb4e2fbe98..bb7270f9c2b5181dfbab349b5e3dc512e30d1f0f 100644 GIT binary patch delta 59 zcmdnae1VyB&07Z6Dh39|;}bdSMRhDS?5&~=jm=_XQmTz=YmA}|jZ7xaIm5%q$iU?1 M2qqXN$1p|%00~VG`~Uy| delta 45 zcmcb>yq%eI&07Z6Dh39|brU)3MYJt7?5&~=jm=_XQmTz=YmB0eOefAgGr5t`9{@h~ B4w?V} diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_PW b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_PW index f0fbeb9cd550eb600b3c5e93ec872246aa2f031a..d65d876a58ce9d1bfb16ed5234c2f1ec3adcf40e 100644 GIT binary patch delta 19 acmb=P%*eLpEdy(L??kqUiFy(f<75Fu$p(r5 delta 16 XcmbQtSk1QPEdy(L=|r}OiDj|?F-`@u diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_PY b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_PY index 546d5313381b3ea85c6a240d7061c5e588ff3a02..07354365feae2d993a615b84f6b0b19563c506e4 100644 GIT binary patch delta 20 ccmZo2y&05e<#%m4rY diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_QA b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_QA index 3415b66f35cb327c31d0345160c70cd35fd1f10d..4717ebd1fc3aa4c61ad8891e3749b5ac7ba56b70 100644 GIT binary patch delta 23 fcmdnbbe)NF&07Z6Dh38dzloeDCa#s3crgzEUx)~k delta 20 ccmcc4w4aG{&07Z6Dh38dvx%H1CcexA07udXJpcdz diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_RE b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_RE index 3f9a186bcc7149a91ffe1f5adf16a80442a5f048..fa0ccb45d8851e8385cfddfdf71c1c9cf806a6aa 100644 GIT binary patch delta 21 dcmeyxG>MsW&07Z6Dh39|&W)U`j1#}L002y$2M7QF delta 22 dcmbQl{ELZm&07Z6Dh39|!i}7)jFZ(Ea{x~M1`7ZH diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_RO b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_RO index 6f1621583f1a4221bac8ed011b4557ee7d92bdb3..595878ed5891588afc860e954981f26de26f8b15 100644 GIT binary patch delta 21 dcmZ3>e3Y4U&07Z6Dh39|JsUZh87F?(2>?s!2U7q5 delta 22 ecmX@gyq1}B&07Z6Dh39|B^x=J87HeSE(8EiT?SSF diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_RS b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_RS index 6b0d501fa3393136d4aeb3e1871b4f4106f137bc..cc359b110f941c2a77a9b0c27272068029a1562a 100644 GIT binary patch delta 24 gcmeBWS<1q><}Cwj6$1m4%tX#l6W{Y}d@sic0AM%>Q2+n{ delta 22 dcmZ3=(#yiR<}Cwj6$1kk%S6skn}r#L7y(J#1;_vZ diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_RU b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_RU index 1c713a3f8dc5658ff784c55b9d04897c213885af..9589b8474a3882f0a66bca3dc4960551296f970b 100644 GIT binary patch delta 45 ycmbQsvYUl-&07Z6Dh387qluiq*tsnXq76)9C$lrkf!W5Ev6D3!y(h;o9s~dtgA4Eg delta 39 tcmdnZGM9yO&07Z6Dh387k%^qYSU4;U3?_3i%7GY`ll2+BCr@Hr2>{Ip3KjqW diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_RW b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_RW index 9b9f1d65c6de817a79bd35ceb0185439a41996f9..63319ceb150682769917bafeb3cd91ff0db01fea 100644 GIT binary patch delta 20 ccmaFN^qYxu&07Z6Dh39|qKTa6ChlJX08W?((*OVf delta 20 ccmey(^q7fr&07Z6Dh39|sEM5CCcf_h08VHJ(*OVf diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SA b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SA index df752f213543b68571f6508f7844f9c33852a718..ec5abcc4f61c0c76b7019203a7ceab76af4a2f42 100644 GIT binary patch delta 23 ecmX@ea+8H~&07Z6Dh39ofQ_88jGOrwjTr$}0|n#& delta 23 ecmcb~a*%~{&07Z6Dh387i;bMJjGOHkr5OQL(*@)J diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SB b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SB index fa3af2f7d79b7a5a975e9b744883c2870f5fc527..464b8ec69c932050f7d96229347b95b5c4d9d221 100644 GIT binary patch delta 19 acmb=L#K^YhEdy(L&qTI}iFy(f<75CtnFfXc delta 16 XcmbQlSjD#HEdy(L$wan@iDfbXF(?JE diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SC b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SC index 79ee4c0d87a2f7d271bc3a3845215cd7c9b64964..d8528060a1e4543f90352a5a4329288bdd74a808 100644 GIT binary patch delta 30 mcmcc3@|lHm&07Z6Dh39otc{!}7$;eE=4+qu& diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SD b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SD index 8d70a39a287d25676ba0612778c8a6bb35955a3c..34968f0ad5f861caf379de5efdcf5b062f28f707 100644 GIT binary patch delta 23 fcmeBYTF%6|<}Cwj6$1mK+(gc86Z<75?hgO}R1ycH delta 20 ccmZ3^)X&7Z<}Cwj6$1k!+eFT76R!sV06y3TYXATM diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SE b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SE index a857f7ea9560363c21b07580ee973502b04600ad..fb42a83c2752bb34dc36185bb067e4071e2b06a8 100644 GIT binary patch delta 164 zcmZ3>^HFev3G-wb<}gOx$;Hg}Kyov)9cvW>0}I3CkIWLhni?@F)kd|N3>+$kx|5|@ z5`ijeS=xalD{C*1oXlzkB+s#014%A6g~|TR#*7S;JDAf%7#JBC7$h{J4Ry^dV`Eal y22I}2Dmht|MF*%P9B2r`fvOyv(JuV>K*axz&Rf#e2OZ6NuO)s_ux0s{bBDkvKO delta 112 zcmew;xRz&w3G-whX1mGJ?0l1FFdI!?z-GhD$iO_Ak41vDih+Sie)1T1Ey|AZ;-*;+8T2M0|Ow-yq1xH14vuw7#dFW KK0Vou@g)Gc2oQh( diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SH b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SH index df0fa346980f4716e4e4fc64a6f1252086202147..96e6c73e73cc02b5da528c95b87ff63ed839bef3 100644 GIT binary patch delta 19 acmb=L#K^YhEdy(L&qTI}iFy(f<75CtnFfXc delta 16 XcmbQlSjD#HEdy(L$wan@iDfbXF(?JE diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SI b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SI index e592b21bcbf483d685482d5452bfa86be9257dd3..927774b1e4c5a04bd51ae9b7118866da1aa74ff3 100644 GIT binary patch delta 31 ncmey)($C7d<}Cwj6$1lP+eS`T#>u>l{F4P3IXC+;YBB-_$#QMjl2+1|~m8Fu^cckMRKji;4$4 delta 22 dcmZ3+(#OKN<}Cwj6$1kk>qbsP#>qj9R{%z{1`7ZH diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SL b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SL index ee6c80fabcc934b609aa4d2ba0e0c9d055e5ed84..c3fd293ff002fa56ee7ba2d5682d4c19562948b3 100644 GIT binary patch delta 23 fcmZ3A8 delta 20 ccmX@ew33N)&07Z6Dh38dg^8RuCjRsQ07NbZ^#A|> diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SM b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SM index 60532b715100b2c6b255fc8a4c845006ea1b6667..ea97ce14efcd974fab65b487ec25d749fd43203e 100644 GIT binary patch literal 583 zcmbV|Jx&8L5QU!?mW4#=s1U^#F4j^ad3M)7OF_f|prLfqdp3 zZH>S8=6OCoQEq|a5r9$(vt->OtXG@2Fds&RYrgq8*^ysyXI(!u%ZHdOxv&`4@55?i znCO3#3KQXC^j!$7n)pOs96eJdpHXPfi&|na8k2VXe#qxBOZ8i&-`)4wA}^M&U|oni#o^`k+V;fyJ}L#m(0O3*rYRk)NmJL2pRry^91Cc}w$Au_U$ MaPuAaAVenc1^*#r5&!@I literal 128 zcmZ4UmVvdrih+TFkr70|Fe3w#pCgz6Ns!HEU<&pHnp(xcWMBX^oDog{?STLQPi_lV diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SN b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_SN index 48518c5ae48c2aef7aba1b3395ec1322a895bad1..535afa3541aab13d491c5d882ead1939cb00826e 100644 GIT binary patch delta 26 icmdnOe1@5G&07Z6Dh39|!y7rH7$?gzN=!~>3&07Z6Dh39|2xN05dcN$N&HU diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TG b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TG index 473a79cf2371654dec772f11d56b0f1dd6d18b4f..d6b9654534c7ef16617b7009b02dc17e516d24ac 100644 GIT binary patch delta 23 fcmZ3;w3CT*&07Z6Dh38dgNd9MC!XV(crF+KS;q)D delta 20 ccmdnVw2+B&&07Z6Dh38diHV#SCw_7V079Dv&Hw-a diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TH b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TH index 2148ca08617da0c7563235c7fbfdb4215e9e8cd2..e7f2c336ab8df5029819afe1daeff0e1e9ff182a 100644 GIT binary patch delta 35 ncmZo&07Z6Dh387$BCSeCf?`Sct4mC0B6q##Q*>R delta 22 ecmX@bvWbOr&07Z6Dh387&54|kHZwE2GXeln1qMt2 diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TK b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TK index bc3a14c3f2ca6ccad7b307732f141707463a2e6f..653d606513f619c4e753c17d988a70a9188f4178 100644 GIT binary patch delta 19 acmb=L#K^YhEdy(L&qTI}iFy(f<75CtnFfXc delta 16 XcmbQlSjD#HEdy(L$wan@iDfbXF(?JE diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TL b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TL index 60b6a85e0b31d9de77829f920f58b375125102c5..8b4378c53bbb8a3932a96265bf0dd672c8cf281e 100644 GIT binary patch delta 23 fcmdnYbef5C&07Z6Dh38dr-__zC%)pD_{tLiUl9no delta 21 dcmX@jw3&%>&07Z6Dh38dt%;m(C-X7d0su;41~mWx diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TM b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TM index fef8dc06c65809c9d578ba92a5e0f3d252b68c72..c3c8de1c72fc8d28c5a776ca4a08b09b314942bb 100644 GIT binary patch delta 23 fcmbQsw3Uf-&07Z6Dh38dor#=VC-zB9+!qf3R|f~# delta 20 ccmdnWG?$5U&07Z6Dh38dk%^pJCtiyO06|v8~Rnodq&OauTA&Z(E$K_3JAsk diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TV b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TV index bc611bf4e382d968e09f8df597e87d55063b8eac..8cf631d5186f1731ff3bcb3e3fe3d1eb3d1beeb2 100644 GIT binary patch delta 19 acmb=L#K^YhEdy(L&qTI}iFy(f<75CtnFfXc delta 16 XcmbQlSjD#HEdy(L$wan@iDfbXF(?JE diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TW b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TW index e87da47726124fbcae0dd63cc2f7dbbbd269fd93..63963cf5113e85046f2b8a5d5e490a1ba32ca157 100644 GIT binary patch delta 23 fcmZo+p2N(!<}Cwj6$1m~t<8 diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TZ b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_TZ index b1afda8e9a59300b25ba4d976dff01f92fae68da..0f99acbf5b9c0f0ed3b75339469f4fc3c81f88ab 100644 GIT binary patch delta 61 zcmaFP{F|9`&07Z6Dh39|PZK#E#Kko1t<0hgO)X+;%%cr;En_ufQmV~sC#G!YVPs@r O@^b_e43qg8ZvX%>ED)mr delta 52 zcmey({G6F{&07Z6Dh39|dlNYwq@^_Mt<0hgO)X+;%%cr;En_u-0x>Do=Czs=6Shy* HXFLM{q{t9J diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_UA b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_UA index 9fe9153ae7033e47719db4733778fb1a78dce92c..a5d2806401f5a77e17c907d29fdb7d32b0913c10 100644 GIT binary patch delta 45 vcmZqVn9aet<}Cwj6$1kc!$wY4#)+>aHuEt)W)dnF&}3v_Hc&BSWPkzy|0M{R delta 40 qcmbQu(a6EM<}Cwj6$1nFkBywHjGNUMA2SJPGBPk5s2DObKmh>Ing@#j diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_UG b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_UG index cddbc4a9aa7e889d08e7f9bb010bede8f9c17514..4eb5563f8c63982d2f41ded6c528007984176108 100644 GIT binary patch delta 25 hcmeyu+{41T<}Cwj6$1kk^F~ey#)*F=CMz;t1^{Eu2d@AC delta 22 ecmeBS`NGV(<}Cwj6$1m~>y4ZejFT-HF9QHmh6e}$ diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_US b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_US index 9408e0509496b70d4fe77c86c5b75bd542b90eb6..25b36680c22856e4b7089d4f9930e9b7e9caee6a 100644 GIT binary patch delta 140 zcmcb^y^?2w7Nf!Be5M^-rWQ43mNn+l2BwpBnUy(=3~G#{4NPJ;3o?o@GFnW|WAR{O z!mDz!AmdWjDh387>B-v|^TAp+tBRXy*jpI@%`&brG0}`R(zT3@NvSrgWn^Fj(uM{= L2AAn%PS(o+I@~08 delta 80 zcmZ3Q?Hz1pmNn+l1{2>Zvql>k#~N&wU=(4TT*u2xN05dcN$N&HU diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_UZ b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_UZ index 2349b7d23119af5e43fbec2c145ea8ed68558dad..2a307b35d7b2003adeeec469ecca63ea6dd3455c 100644 GIT binary patch delta 23 fcmZ3%bbyI-&07Z6Dh38d^NE}XC+_2!xGxI;T6hRG delta 20 ccmX@Ww1SCq&07Z6Dh38d`H7qdCq9Y;07H!i+5i9m diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_VA b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_VA index 7da0693af7cf001bde9bdf63e55d36025ed1ace0..a0be427a7bccd2b4d627d8476b832b2466f94d1a 100644 GIT binary patch delta 20 ccmcc1_?3}u&07Z6^7j+jCQpo&m^jk~09xG$eEw1_sQ^yQ1^55} delta 22 dcmeBR{=me!<}Cwj6$1lf`bJJE#>v)p(E$K_T?oto diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_VN b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_VN index 79206df59162150fccf6ace65d973520d20076bb..a46320719d0a61037f8f9f3b72719fb0e67ccdb4 100644 GIT binary patch delta 27 jcmZ3)zKfl6&07Z6Dh3ATjTFcg diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_VU b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_VU index d2499c02100c273e980e1e4f0f4b27d9d260f9bd..a79ddef1752ff685a6c720c673ddba4e5d60096e 100644 GIT binary patch delta 19 acmb=L#K^YhEdy(L&qTI}iFy(f<75CtnFfXc delta 16 XcmbQlSjD#HEdy(L$wan@iDfbXF(?JE diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_WF b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_WF index 47b706edab70767a72a5a55588f63571315cc5fd..423e86d3fa66a31d91a1c2a5a280a4ae409b119a 100644 GIT binary patch delta 19 acmb=L#K^YhEdy(L&qTI}iFy(f<75CtnFfXc delta 16 XcmbQlSjD#HEdy(L$wan@iDfbXF(?JE diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_WS b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_WS index b4150e8162bc683ad0dc3b7a22a529b7d1963256..52fd0e7db6c10a1e3ad3ad1f8b51fb2efa98b744 100644 GIT binary patch delta 23 fcmcc5^qq-w&07Z6Dh39|yosFGC+?A$_@EvDXDbOY delta 20 ccmey)bf1ZH&07Z6Dh39|u!)@4C;q4h08QNo%m4rY diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_YE b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_YE index 0858848cafa5a4b443957de2a41ce5e6b68da417..e4e2e7874b3357948517c1f92f75b9ba003bbb3e 100644 GIT binary patch delta 23 fcmeBUUdGJ1<}Cwj6$1m~+=-m8CZ3m=_<1$}TxAIr delta 21 dcmZ3++{eth<}Cwj6$1lf>qO31lermZ0{}2qr3Wzp diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_ZM b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_ZM index addba8da8c5461461e8ac1335b35c0464a7ddb07..99c815290638c0fa945d2e2c317067306acfc7cb 100644 GIT binary patch delta 20 ccmcb_^oogd&07Z6Dh39|#EG0|C+?d90851jjsO4v delta 20 ccmaFGbcu;`&07Z6Dh38d&xxF8C%&rz083Q|jsO4v diff --git a/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_ZW b/java/src/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProto_ZW index 0c3990e6c1e5b7ea69693f43ca192ca841ec7206..13aa7286e7685f0af08b0e4df0fba305c8e31000 100644 GIT binary patch delta 35 rcmaFI-Nv&)mTB@HMv2X`Ojj6Ls~8v voipTypes = EnumSet.of(PhoneNumberType.PAGER); - checkNumbersValidAndCorrectType(PhoneNumberType.PAGER, voipTypes); + Set pagerTypes = EnumSet.of(PhoneNumberType.PAGER); + checkNumbersValidAndCorrectType(PhoneNumberType.PAGER, pagerTypes); + assertEquals(0, invalidCases.size()); + assertEquals(0, wrongTypeCases.size()); + } + + public void testUan() throws Exception { + Set uanTypes = EnumSet.of(PhoneNumberType.UAN); + checkNumbersValidAndCorrectType(PhoneNumberType.UAN, uanTypes); assertEquals(0, invalidCases.size()); assertEquals(0, wrongTypeCases.size()); } @@ -139,4 +147,23 @@ public class ExampleNumbersTest extends TestCase { assertEquals(0, invalidCases.size()); assertEquals(0, wrongTypeCases.size()); } + + public void testCanBeInternationallyDialled() throws Exception { + for (String regionCode : phoneNumberUtil.getSupportedCountries()) { + PhoneNumber exampleNumber = null; + PhoneNumberDesc desc = + phoneNumberUtil.getMetadataForRegion(regionCode).getNoInternationalDialling(); + try { + if (desc.hasExampleNumber()) { + exampleNumber = phoneNumberUtil.parse(desc.getExampleNumber(), regionCode); + } + } catch (NumberParseException e) { + LOGGER.log(Level.SEVERE, e.toString()); + } + if (exampleNumber != null && phoneNumberUtil.canBeInternationallyDialled(exampleNumber)) { + wrongTypeCases.add(exampleNumber); + } + } + assertEquals(0, wrongTypeCases.size()); + } } diff --git a/java/test/com/google/i18n/phonenumbers/PhoneNumberUtilTest.java b/java/test/com/google/i18n/phonenumbers/PhoneNumberUtilTest.java index 2e0f7314c..ffd6017b6 100644 --- a/java/test/com/google/i18n/phonenumbers/PhoneNumberUtilTest.java +++ b/java/test/com/google/i18n/phonenumbers/PhoneNumberUtilTest.java @@ -256,6 +256,12 @@ public class PhoneNumberUtilTest extends TestCase { assertEquals("Conversion did not correctly replace non-latin digits", expectedOutput, PhoneNumberUtil.normalize(inputNumber)); + // Eastern-Arabic digits. + inputNumber = "\u06F52\u06F0"; + expectedOutput = "520"; + assertEquals("Conversion did not correctly replace non-latin digits", + expectedOutput, + PhoneNumberUtil.normalize(inputNumber)); } public void testNormaliseStripAlphaCharacters() { @@ -442,8 +448,6 @@ public class PhoneNumberUtilTest extends TestCase { phoneUtil.formatOutOfCountryCallingNumber(arNumber, "AU")); assertEquals("011 15 8765-4321 ext. 1234", phoneUtil.formatOutOfCountryCallingNumber(arNumber, "AR")); - assertEquals("011 15 8765-4321 ext. 1234", - phoneUtil.formatOutOfCountryCallingNumber(arNumber, "ar")); } public void testFormatOutOfCountryWithPreferredIntlPrefix() { @@ -1740,6 +1744,17 @@ public class PhoneNumberUtilTest extends TestCase { // NSN matches, but extension is different - not the same number. assertEquals(PhoneNumberUtil.MatchType.NO_MATCH, phoneUtil.isNumberMatch("+64 3 331-6005 ext.1235", "3 331 6005#1234")); + + // Invalid numbers that can't be parsed. + assertEquals(PhoneNumberUtil.MatchType.NOT_A_NUMBER, + phoneUtil.isNumberMatch("43", "3 331 6043")); + // Invalid numbers that can't be parsed. + assertEquals(PhoneNumberUtil.MatchType.NOT_A_NUMBER, + phoneUtil.isNumberMatch("+43", "+64 3 331 6005")); + assertEquals(PhoneNumberUtil.MatchType.NOT_A_NUMBER, + phoneUtil.isNumberMatch("+43", "64 3 331 6005")); + assertEquals(PhoneNumberUtil.MatchType.NOT_A_NUMBER, + phoneUtil.isNumberMatch("Dog", "64 3 331 6005")); } public void testIsNumberMatchNsnMatches() throws Exception { @@ -1752,10 +1767,35 @@ public class PhoneNumberUtilTest extends TestCase { nzNumber.setCountryCode(64).setNationalNumber(33316005L).setExtension(""); assertEquals(PhoneNumberUtil.MatchType.NSN_MATCH, phoneUtil.isNumberMatch(nzNumber, "03 331 6005")); + // Here the second number possibly starts with the country code for New Zealand, although we are + // unsure. + assertEquals(PhoneNumberUtil.MatchType.NSN_MATCH, + phoneUtil.isNumberMatch(nzNumber, "(64-3) 331 6005")); PhoneNumber unchangedNzNumber = new PhoneNumber(); unchangedNzNumber.setCountryCode(64).setNationalNumber(33316005L).setExtension(""); // Check the phone number proto was not edited during the method call. assertEquals(unchangedNzNumber, nzNumber); + + // Here, the 1 might be a national prefix, if we compare it to the US number, so the resultant + // match is an NSN match. + PhoneNumber usNumber = new PhoneNumber(); + usNumber.setCountryCode(1).setNationalNumber(2345678901L).setExtension(""); + assertEquals(PhoneNumberUtil.MatchType.NSN_MATCH, + phoneUtil.isNumberMatch(usNumber, "1-234-567-8901")); + assertEquals(PhoneNumberUtil.MatchType.NSN_MATCH, + phoneUtil.isNumberMatch(usNumber, "2345678901")); + assertEquals(PhoneNumberUtil.MatchType.NSN_MATCH, + phoneUtil.isNumberMatch("+1 234-567 8901", "1 234 567 8901")); + assertEquals(PhoneNumberUtil.MatchType.NSN_MATCH, + phoneUtil.isNumberMatch("1 234-567 8901", "1 234 567 8901")); + assertEquals(PhoneNumberUtil.MatchType.NSN_MATCH, + phoneUtil.isNumberMatch("1 234-567 8901", "+1 234 567 8901")); + // For this case, the match will be a short NSN match, because we cannot assume that the 1 might + // be a national prefix, so don't remove it when parsing. + PhoneNumber randomNumber = new PhoneNumber(); + randomNumber.setCountryCode(41).setNationalNumber(2345678901L).setExtension(""); + assertEquals(PhoneNumberUtil.MatchType.SHORT_NSN_MATCH, + phoneUtil.isNumberMatch(randomNumber, "1-234-567-8901")); } public void testIsNumberMatchShortNsnMatches() throws Exception { @@ -1789,4 +1829,25 @@ public class PhoneNumberUtilTest extends TestCase { assertEquals(PhoneNumberUtil.MatchType.SHORT_NSN_MATCH, phoneUtil.isNumberMatch(italianNumberOne, italianNumberTwo)); } + + public void testCanBeInternationallyDialled() throws Exception { + // We have no-international-dialling rules for the US in our test metadata. + PhoneNumber usNumber = new PhoneNumber(); + usNumber.setCountryCode(1).setNationalNumber(8001231234L); + assertFalse(phoneUtil.canBeInternationallyDialled(usNumber)); + + PhoneNumber usInternationalNumber = new PhoneNumber(); + usInternationalNumber.setCountryCode(1).setNationalNumber(2311231234L); + assertTrue(phoneUtil.canBeInternationallyDialled(usInternationalNumber)); + + PhoneNumber usInvalidNumber = new PhoneNumber(); + // Invalid number. + usInvalidNumber.setCountryCode(1).setNationalNumber(13112312L); + assertTrue(phoneUtil.canBeInternationallyDialled(usInvalidNumber)); + + // We have no data for NZ - should return true. + PhoneNumber nzNumber = new PhoneNumber(); + nzNumber.setCountryCode(64).setNationalNumber(33316005L); + assertTrue(phoneUtil.canBeInternationallyDialled(nzNumber)); + } } diff --git a/java/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_AD b/java/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_AD index 8f72b9537f4030994e26eca204e3481d70811a97..f72b26475f8caf6e5c21ba4c63260e50e2a3ee6c 100644 GIT binary patch delta 19 acmb=L#K^YhEdy(L&qTI}iFy(f<75CtnFfXc delta 16 XcmbQlSjD#HEdy(L$wan@iDfbXF(?JE diff --git a/java/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_AO b/java/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_AO index 76203392ff5341b8ae43c5d6c64ce620e2768f22..486d96d7c777785cbb66fc9e9c8257ef7da87c90 100644 GIT binary patch delta 23 fcmbQjw1$au&07Z6Dh38d<%yiTCeD|bcsLLMRh0+J delta 20 ccmZ3(G=+(C&07Z6Dh38d?unecCf*JN06)?Og8%>k diff --git a/java/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_AR b/java/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_AR index 68b25027bcf6a591c9f6051df972475cceea90f8..4a9b091eea72595ec9913299f7ee43eb03b3c11a 100644 GIT binary patch delta 24 gcmZ3*c8HC0&07Z6Dh38-%ZZ$aChq6ixIdc-0Azd!YXATM delta 21 dcmX@awu+5&&07Z6Dh38-#fhAUHa?DL0su?>2M+)M diff --git a/java/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_AU b/java/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_AU index 8a05649f71482558cecab07decc9f170cdc6fc7a..8c20ebf74b058ee2a6cb3b98c4ddbf4ea492d230 100644 GIT binary patch delta 23 fcmX@d^o)sf&07Z6Dh39|*omAQC$8g}xNZReVbTb# delta 20 ccmaFHbdHI0&07Z6Dh38d*NL1PCtjKY07?-DVgLXD diff --git a/java/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_BS b/java/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_BS index f6f9f9cf5d95a08c5279bdbc2f187f9678437d13..d1a31b0a7299b40bb3e82ad724b44d2c731be9a7 100644 GIT binary patch delta 22 dcmcc3^qGls&07Z6Dh39|tc{%djFS}@tpQaX1~>o! delta 22 dcmey&beoBD&07Z6Dh39|ppBgRjFSTxl>t=k1~>o! diff --git a/java/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_DE b/java/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_DE index 039192c6caf891bad36d10366153b7b44aca87ff..b2f1c5aa4bc5987f6a9c7a2ce54331928677f69f 100644 GIT binary patch delta 22 dcmaFP@}Grs&07Z6Dh39ovW=YljGGwK839+!25kTU delta 23 ecmey*@|=Zp&07Z6Dh39oxQ(3rjGGM@{TTsWr3P*Q diff --git a/java/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_GB b/java/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_GB index 4a3747bcc5cf8047675e7400b57116c2e0b5e63d..1d2b408b809a6b4792a7c0c2070b4943ea192c06 100644 GIT binary patch delta 33 lcmaFI+{VJW<}Cwj6$1m~--(_wqxAP#9GC`z{EBABeTS0Q6|aF>MS=I0n85xsQ>@~ delta 32 ocmbQi)4;RAi*a)j<8r3Sd@K@dRSXP_pNuDOV3ycy&vKIy0G&h$d;kCd diff --git a/java/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_MX b/java/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_MX index 98c475bceb78416685c4c7ddd510d467d85c85b2..5857b91f53c3e1eb7f90f0453387cd766fae957e 100644 GIT binary patch delta 21 dcmbQtzM7qL&07Z6Dh3ATMH4yKY@GXz2>?t{2cG}{ delta 21 dcmZ3@KAD|!&07Z6Dh3ATu8Ev$HlDr51OQAS2cG}{ diff --git a/java/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_NZ b/java/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_NZ index 257c955780376b17215da8c27205546782c89b73..e330135dac6cdd4fbcec539270df93b58c416381 100644 GIT binary patch delta 56 zcmey&JdH(t&07Z6Dh387UIqpRMn*;k@n|Cp%h;HdYI7aS+L~x%U2`yJql_@)WNt=@ I$@+{(0DyoF1ONa4 delta 41 vcmbQn@|js?&07Z6Dh39|R}4Uck&%HX+DO+jHYTOoT*q>wx-jG9AjTsA-3tnQ diff --git a/java/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_PL b/java/test/com/google/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_PL index c6a0cb6f9ab07c412aafc4e013630c447e0d34df..0fd0d27751258386cfe81a2060dda5e95375fae3 100644 GIT binary patch delta 23 fcmbQuw3&%>&07Z6Dh38dt%;o5C(e