summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorShaopeng Jia <shaopengjia@google.com>2011-11-16 15:46:59 +0100
committerShaopeng Jia <shaopengjia@google.com>2011-11-16 15:58:10 +0100
commita48b2d221ba46df7446d1a87244efa985e8e292f (patch)
tree0476cf873fc14dc63c47be284f43e6a33431234b
parent1507920ac94db27c1e98a3975be2482fa7fe70c0 (diff)
downloadlibphonenumber-a48b2d221ba46df7446d1a87244efa985e8e292f.tar.gz
Upgrade to libphonenumber 4.2
Bug: 5247602 Change-Id: I07c553770de3cf821809dab55e4e8e871b1b9356
-rw-r--r--README.android2
-rw-r--r--java/release_notes.txt16
-rw-r--r--java/src/com/android/i18n/phonenumbers/CountryCodeToRegionCodeMap.java3
-rw-r--r--java/src/com/android/i18n/phonenumbers/PhoneNumberMatcher.java9
-rw-r--r--java/src/com/android/i18n/phonenumbers/PhoneNumberUtil.java177
-rw-r--r--java/src/com/android/i18n/phonenumbers/Phonemetadata.java16
-rw-r--r--java/src/com/android/i18n/phonenumbers/ShortNumberUtil.java45
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ACbin231 -> 240 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ADbin364 -> 380 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AEbin593 -> 597 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AFbin348 -> 349 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AGbin503 -> 519 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AIbin437 -> 446 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ALbin732 -> 736 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AMbin608 -> 612 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ANbin568 -> 583 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AObin303 -> 317 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ARbin2604 -> 2621 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ASbin419 -> 428 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ATbin1088 -> 1091 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AUbin1150 -> 1158 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AWbin409 -> 423 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AXbin525 -> 534 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AZbin984 -> 1010 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BAbin405 -> 406 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BDbin1055 -> 1059 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BEbin720 -> 724 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BFbin383 -> 394 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BGbin883 -> 890 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BHbin458 -> 514 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BIbin329 -> 342 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BJbin376 -> 389 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BLbin285 -> 292 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BMbin453 -> 462 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BNbin278 -> 292 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BObin556 -> 558 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BRbin808 -> 811 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BSbin595 -> 607 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BTbin405 -> 420 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BWbin580 -> 596 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BYbin752 -> 755 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BZbin392 -> 411 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CCbin488 -> 501 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CDbin373 -> 375 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CFbin314 -> 315 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CGbin360 -> 362 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CHbin533 -> 535 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CIbin397 -> 420 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CKbin294 -> 308 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CLbin937 -> 944 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CMbin394 -> 411 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CNbin2672 -> 2689 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CObin865 -> 871 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CRbin503 -> 505 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CUbin448 -> 463 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CVbin329 -> 343 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CXbin488 -> 501 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CYbin401 -> 402 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CZbin501 -> 524 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_DEbin1674 -> 1681 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_DJbin300 -> 301 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_DKbin381 -> 382 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_DMbin464 -> 484 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_DZbin614 -> 617 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ECbin631 -> 637 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_EEbin830 -> 834 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_EGbin794 -> 798 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ERbin330 -> 331 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ESbin529 -> 530 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ETbin946 -> 974 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_FIbin748 -> 751 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_FJbin434 -> 436 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_FKbin230 -> 239 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_FMbin309 -> 336 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_FObin421 -> 422 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_FRbin587 -> 589 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GAbin558 -> 584 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GBbin2843 -> 2853 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GDbin515 -> 524 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GEbin541 -> 543 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GFbin402 -> 403 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GGbin594 -> 607 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GHbin450 -> 451 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GLbin359 -> 360 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GMbin366 -> 383 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GNbin400 -> 401 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GPbin402 -> 414 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GQbin430 -> 432 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GRbin865 -> 868 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GTbin418 -> 420 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GUbin797 -> 806 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GWbin311 -> 325 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GYbin422 -> 423 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_HKbin509 -> 512 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_HNbin486 -> 487 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_HRbin957 -> 967 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_HTbin348 -> 361 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_HUbin525 -> 527 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_IDbin1085 -> 1091 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_IEbin1241 -> 1250 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ILbin869 -> 876 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_IMbin513 -> 522 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_INbin3974 -> 3984 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_IObin257 -> 258 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_IQbin452 -> 455 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_IRbin897 -> 1017 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ISbin673 -> 675 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ITbin973 -> 982 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_JEbin692 -> 705 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_JObin564 -> 567 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_JPbin4956 -> 4967 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KEbin461 -> 476 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KGbin687 -> 703 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KHbin586 -> 605 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KIbin250 -> 291 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KMbin328 -> 343 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KNbin448 -> 468 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KPbin474 -> 477 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KRbin1592 -> 1603 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KWbin486 -> 488 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LAbin409 -> 424 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LBbin535 -> 537 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LCbin490 -> 506 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LIbin768 -> 792 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LKbin422 -> 424 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LRbin561 -> 578 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LSbin292 -> 306 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LTbin579 -> 599 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LUbin1485 -> 1494 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LVbin332 -> 333 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LYbin321 -> 335 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MAbin753 -> 757 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MCbin489 -> 492 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MDbin646 -> 649 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MEbin681 -> 683 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MFbin291 -> 302 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MGbin382 -> 398 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MHbin322 -> 323 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MKbin617 -> 620 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MLbin437 -> 438 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MMbin606 -> 612 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MNbin716 -> 721 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MObin308 -> 309 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MPbin583 -> 592 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MQbin377 -> 398 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MRbin397 -> 408 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MSbin386 -> 402 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MTbin450 -> 451 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MUbin517 -> 518 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MVbin493 -> 495 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MWbin521 -> 542 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MXbin1793 -> 1803 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MYbin730 -> 736 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MZbin391 -> 415 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NAbin841 -> 858 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NCbin321 -> 333 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NEbin470 -> 472 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NFbin330 -> 351 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NGbin859 -> 865 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NIbin293 -> 294 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NLbin647 -> 651 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NObin601 -> 603 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NPbin562 -> 565 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NRbin278 -> 292 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NUbin227 -> 236 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NZbin792 -> 797 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_OMbin425 -> 428 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PAbin873 -> 875 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PEbin595 -> 599 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PFbin368 -> 380 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PGbin445 -> 456 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PHbin992 -> 999 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PKbin1765 -> 1773 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PLbin615 -> 617 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PMbin292 -> 293 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PRbin419 -> 428 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PSbin548 -> 551 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PTbin486 -> 520 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PWbin364 -> 374 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PYbin856 -> 861 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_QAbin391 -> 393 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_REbin415 -> 436 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_RObin475 -> 477 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_RSbin710 -> 716 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_RUbin601 -> 603 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_RWbin475 -> 478 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SAbin628 -> 633 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SBbin389 -> 390 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SCbin535 -> 546 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SDbin319 -> 320 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SEbin2307 -> 2314 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SGbin595 -> 599 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SHbin254 -> 273 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SIbin680 -> 684 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SJbin423 -> 436 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SKbin583 -> 586 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SLbin350 -> 351 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SMbin603 -> 609 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SNbin430 -> 431 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SObin467 -> 482 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SRbin444 -> 447 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_STbin266 -> 276 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SVbin476 -> 479 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SXbin0 -> 427 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SYbin460 -> 462 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SZbin429 -> 439 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TCbin479 -> 495 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TDbin358 -> 359 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TGbin318 -> 344 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_THbin580 -> 584 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TJbin656 -> 660 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TLbin344 -> 354 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TMbin327 -> 339 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TNbin337 -> 338 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TObin444 -> 469 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TRbin733 -> 736 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TVbin233 -> 242 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TWbin438 -> 440 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TZbin520 -> 539 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_UAbin1088 -> 1091 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_UGbin546 -> 555 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_USbin1630 -> 1633 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_UYbin479 -> 482 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_UZbin1796 -> 1824 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_VAbin275 -> 276 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_VCbin503 -> 519 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_VEbin422 -> 423 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_VGbin507 -> 523 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_VIbin615 -> 624 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_VNbin980 -> 988 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_VUbin386 -> 387 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_WFbin292 -> 304 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_WSbin363 -> 378 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_YEbin435 -> 451 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_YTbin276 -> 292 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ZAbin701 -> 705 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ZMbin400 -> 402 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ZWbin1577 -> 1586 bytes
-rw-r--r--java/test/com/android/i18n/phonenumbers/PhoneNumberMatcherTest.java10
-rw-r--r--java/test/com/android/i18n/phonenumbers/PhoneNumberUtilTest.java22
-rw-r--r--java/test/com/android/i18n/phonenumbers/RegionCode.java1
-rw-r--r--java/test/com/android/i18n/phonenumbers/ShortNumberUtilTest.java72
-rw-r--r--java/test/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_AObin313 -> 314 bytes
-rw-r--r--java/test/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_ARbin842 -> 852 bytes
-rw-r--r--java/test/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_AUbin371 -> 373 bytes
-rw-r--r--java/test/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_DEbin729 -> 735 bytes
-rw-r--r--java/test/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_GBbin531 -> 535 bytes
-rw-r--r--java/test/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_ITbin467 -> 471 bytes
-rw-r--r--java/test/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_JPbin546 -> 552 bytes
-rw-r--r--java/test/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_KRbin1570 -> 1582 bytes
-rw-r--r--java/test/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_MXbin965 -> 975 bytes
-rw-r--r--java/test/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_NZbin547 -> 550 bytes
-rw-r--r--java/test/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_PLbin319 -> 320 bytes
-rw-r--r--java/test/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_REbin402 -> 403 bytes
-rw-r--r--java/test/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_SGbin420 -> 423 bytes
-rw-r--r--java/test/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_USbin562 -> 565 bytes
256 files changed, 290 insertions, 83 deletions
diff --git a/README.android b/README.android
index c1587c5c..352969a9 100644
--- a/README.android
+++ b/README.android
@@ -1,5 +1,5 @@
URL: http://code.google.com/p/libphonenumber/
-Version: 4.1 (r380)
+Version: 4.2 (r385)
License: Apache 2
Description: Google Phone Number Library.
Local Modification:
diff --git a/java/release_notes.txt b/java/release_notes.txt
index 3aa751b7..0fb5dc64 100644
--- a/java/release_notes.txt
+++ b/java/release_notes.txt
@@ -1,3 +1,19 @@
+November 10th, 2011: libphonenumber-4.2
+* Code changes
+ - Providing an "exact match" isEmergencyNumber method
+ - Improvement to PhoneNumberMatcher: requires national prefix to be present
+ when matching national-format numbers, unless matching for a region where it
+ is explicitly marked in the metadata that they may be omitted. Applies to
+ leniency level VALID and higher.
+ - Change formatNumberForMobileDialing not to modify the phoneNumber passed in.
+
+* Metadata changes
+ - Emergency numbers added for all remaining countries
+ - Collected data on which numbers we format with a national prefix are
+ commonly written without one and added this
+ - Updates for AR, AT, BH, CZ, GR, IR, KM, LT, MX, PT, SE, SO, UG
+ - Addition of SX (Sint Maarten)
+
October 19th, 2011: libphonenumber-4.1
* Code changes
- Update code and metadata for countries with IDD "8~10" to accept phone
diff --git a/java/src/com/android/i18n/phonenumbers/CountryCodeToRegionCodeMap.java b/java/src/com/android/i18n/phonenumbers/CountryCodeToRegionCodeMap.java
index 2897bccb..3600f825 100644
--- a/java/src/com/android/i18n/phonenumbers/CountryCodeToRegionCodeMap.java
+++ b/java/src/com/android/i18n/phonenumbers/CountryCodeToRegionCodeMap.java
@@ -38,7 +38,7 @@ public class CountryCodeToRegionCodeMap {
ArrayList<String> listWithRegionCode;
- listWithRegionCode = new ArrayList<String>(24);
+ listWithRegionCode = new ArrayList<String>(25);
listWithRegionCode.add("US");
listWithRegionCode.add("AG");
listWithRegionCode.add("AI");
@@ -58,6 +58,7 @@ public class CountryCodeToRegionCodeMap {
listWithRegionCode.add("MP");
listWithRegionCode.add("MS");
listWithRegionCode.add("PR");
+ listWithRegionCode.add("SX");
listWithRegionCode.add("TC");
listWithRegionCode.add("TT");
listWithRegionCode.add("VC");
diff --git a/java/src/com/android/i18n/phonenumbers/PhoneNumberMatcher.java b/java/src/com/android/i18n/phonenumbers/PhoneNumberMatcher.java
index e00e1992..1cd106c2 100644
--- a/java/src/com/android/i18n/phonenumbers/PhoneNumberMatcher.java
+++ b/java/src/com/android/i18n/phonenumbers/PhoneNumberMatcher.java
@@ -279,6 +279,7 @@ final class PhoneNumberMatcher implements Iterator<PhoneNumberMatch> {
* combining marks should also return true since we assume they have been added to a preceding
* Latin character.
*/
+ // @VisibleForTesting
static boolean isLatinLetter(char letter) {
// Combining marks are a subset of non-spacing-mark.
if (!Character.isLetter(letter) && Character.getType(letter) != Character.NON_SPACING_MARK) {
@@ -420,8 +421,14 @@ final class PhoneNumberMatcher implements Iterator<PhoneNumberMatch> {
}
}
- PhoneNumber number = phoneUtil.parse(candidate, preferredRegion);
+ PhoneNumber number = phoneUtil.parseAndKeepRawInput(candidate, preferredRegion);
if (leniency.verify(number, candidate, phoneUtil)) {
+ // We used parseAndKeepRawInput to create this number, but for now we don't return the extra
+ // values parsed. TODO: stop clearing all values here and switch all users over
+ // to using rawInput() rather than the rawString() of PhoneNumberMatch.
+ number.clearCountryCodeSource();
+ number.clearRawInput();
+ number.clearPreferredDomesticCarrierCode();
return new PhoneNumberMatch(offset, candidate, number);
}
} catch (NumberParseException e) {
diff --git a/java/src/com/android/i18n/phonenumbers/PhoneNumberUtil.java b/java/src/com/android/i18n/phonenumbers/PhoneNumberUtil.java
index 762f3e5d..3f0138a9 100644
--- a/java/src/com/android/i18n/phonenumbers/PhoneNumberUtil.java
+++ b/java/src/com/android/i18n/phonenumbers/PhoneNumberUtil.java
@@ -420,15 +420,18 @@ public class PhoneNumberUtil {
/**
* Phone numbers accepted are
* {@linkplain PhoneNumberUtil#isPossibleNumber(Phonenumber.PhoneNumber) possible} and
- * {@linkplain PhoneNumberUtil#isValidNumber(Phonenumber.PhoneNumber) valid}.
+ * {@linkplain PhoneNumberUtil#isValidNumber(Phonenumber.PhoneNumber) valid}. Numbers written
+ * in national format must have their national-prefix present if it is usually written for a
+ * number of this type.
*/
VALID {
@Override
boolean verify(PhoneNumber number, String candidate, PhoneNumberUtil util) {
- if (!util.isValidNumber(number)) {
+ if (!util.isValidNumber(number) ||
+ !containsOnlyValidXChars(number, candidate, util)) {
return false;
}
- return containsOnlyValidXChars(number, candidate, util);
+ return isNationalPrefixPresentIfRequired(number, util);
}
},
/**
@@ -447,7 +450,8 @@ public class PhoneNumberUtil {
boolean verify(PhoneNumber number, String candidate, PhoneNumberUtil util) {
if (!util.isValidNumber(number) ||
!containsOnlyValidXChars(number, candidate, util) ||
- containsMoreThanOneSlash(candidate)) {
+ containsMoreThanOneSlash(candidate) ||
+ !isNationalPrefixPresentIfRequired(number, util)) {
return false;
}
// TODO: Evaluate how this works for other locales (testing has been
@@ -501,7 +505,8 @@ public class PhoneNumberUtil {
boolean verify(PhoneNumber number, String candidate, PhoneNumberUtil util) {
if (!util.isValidNumber(number) ||
!containsOnlyValidXChars(number, candidate, util) ||
- containsMoreThanOneSlash(candidate)) {
+ containsMoreThanOneSlash(candidate) ||
+ !isNationalPrefixPresentIfRequired(number, util)) {
return false;
}
// TODO: Evaluate how this works for other locales (testing has been
@@ -591,6 +596,51 @@ public class PhoneNumberUtil {
return true;
}
+ private static boolean isNationalPrefixPresentIfRequired(
+ PhoneNumber number, PhoneNumberUtil util) {
+ // First, check how we deduced the country code. If it was written in international format,
+ // then the national prefix is not required.
+ if (number.getCountryCodeSource() != CountryCodeSource.FROM_DEFAULT_COUNTRY) {
+ return true;
+ }
+ String phoneNumberRegion =
+ util.getRegionCodeForCountryCode(number.getCountryCode());
+ PhoneMetadata metadata = util.getMetadataForRegion(phoneNumberRegion);
+ if (metadata == null) {
+ return true;
+ }
+ // Check if a national prefix should be present when formatting this number.
+ String nationalNumber = util.getNationalSignificantNumber(number);
+ NumberFormat formatRule =
+ util.chooseFormattingPatternForNumber(metadata.numberFormats(), nationalNumber);
+ // To do this, we check that a national prefix formatting rule was present and that it wasn't
+ // just the first-group symbol ($1) with punctuation.
+ if ((formatRule != null) && formatRule.getNationalPrefixFormattingRule().length() > 0) {
+ if (formatRule.isNationalPrefixOptionalWhenFormatting()) {
+ // The national-prefix is optional in these cases, so we don't need to check if it was
+ // present.
+ return true;
+ }
+ // Remove the first-group symbol.
+ String candidateNationalPrefixRule = formatRule.getNationalPrefixFormattingRule();
+ // We assume that the first-group symbol will never be _before_ the national prefix.
+ candidateNationalPrefixRule =
+ candidateNationalPrefixRule.substring(0, candidateNationalPrefixRule.indexOf("$1"));
+ candidateNationalPrefixRule = util.normalizeDigitsOnly(candidateNationalPrefixRule);
+ if (candidateNationalPrefixRule.length() == 0) {
+ // National Prefix not needed for this number.
+ return true;
+ }
+ // Normalize the remainder.
+ String rawInputCopy = util.normalizeDigitsOnly(number.getRawInput());
+ StringBuilder rawInput = new StringBuilder(rawInputCopy);
+ // Check if we found a national prefix and/or carrier code at the start of the raw input,
+ // and return the result.
+ return util.maybeStripNationalPrefixAndCarrierCode(rawInput, metadata, null);
+ }
+ return true;
+ }
+
/** Returns true if {@code number} is a verified number according to this leniency. */
abstract boolean verify(PhoneNumber number, String candidate, PhoneNumberUtil util);
}
@@ -873,7 +923,7 @@ public class PhoneNumberUtil {
return 0;
}
- if (getRegionCodeForNumber(number).equals("AR") &&
+ if (getRegionCodeForCountryCode(number.getCountryCode()).equals("AR") &&
getNumberType(number) == PhoneNumberType.MOBILE) {
// Argentinian mobile numbers, when formatted in the international format, are in the form of
// +54 9 NDC XXXX.... As a result, we take the length of the third group (NDC) and add 1 for
@@ -1476,6 +1526,22 @@ public class PhoneNumberUtil {
return formattedNationalNumber;
}
+ private NumberFormat chooseFormattingPatternForNumber(List<NumberFormat> availableFormats,
+ String nationalNumber) {
+ for (NumberFormat numFormat : availableFormats) {
+ int size = numFormat.leadingDigitsPatternSize();
+ if (size == 0 || regexCache.getPatternForRegex(
+ // We always use the last leading_digits_pattern, as it is the most detailed.
+ numFormat.getLeadingDigitsPattern(size - 1)).matcher(nationalNumber).lookingAt()) {
+ Matcher m = regexCache.getPatternForRegex(numFormat.getPattern()).matcher(nationalNumber);
+ if (m.matches()) {
+ return numFormat;
+ }
+ }
+ }
+ return null;
+ }
+
// Simple wrapper of formatAccordingToFormats for the common case of no carrier code.
private String formatAccordingToFormats(String nationalNumber,
List<NumberFormat> availableFormats,
@@ -1489,44 +1555,37 @@ public class PhoneNumberUtil {
List<NumberFormat> availableFormats,
PhoneNumberFormat numberFormat,
String carrierCode) {
- for (NumberFormat numFormat : availableFormats) {
- int size = numFormat.leadingDigitsPatternSize();
- if (size == 0 || regexCache.getPatternForRegex(
- // We always use the last leading_digits_pattern, as it is the most detailed.
- numFormat.getLeadingDigitsPattern(size - 1)).matcher(nationalNumber).lookingAt()) {
- Matcher m = regexCache.getPatternForRegex(numFormat.getPattern()).matcher(nationalNumber);
- if (m.matches()) {
- String numberFormatRule = numFormat.getFormat();
- if (numberFormat == PhoneNumberFormat.NATIONAL &&
- carrierCode != null && carrierCode.length() > 0 &&
- numFormat.getDomesticCarrierCodeFormattingRule().length() > 0) {
- // Replace the $CC in the formatting rule with the desired carrier code.
- String carrierCodeFormattingRule = numFormat.getDomesticCarrierCodeFormattingRule();
- carrierCodeFormattingRule =
- CC_PATTERN.matcher(carrierCodeFormattingRule).replaceFirst(carrierCode);
- // Now replace the $FG in the formatting rule with the first group and the carrier code
- // combined in the appropriate way.
- numberFormatRule = FIRST_GROUP_PATTERN.matcher(numberFormatRule)
- .replaceFirst(carrierCodeFormattingRule);
- return m.replaceAll(numberFormatRule);
- } else {
- // Use the national prefix formatting rule instead.
- String nationalPrefixFormattingRule = numFormat.getNationalPrefixFormattingRule();
- if (numberFormat == PhoneNumberFormat.NATIONAL &&
- nationalPrefixFormattingRule != null &&
- nationalPrefixFormattingRule.length() > 0) {
- Matcher firstGroupMatcher = FIRST_GROUP_PATTERN.matcher(numberFormatRule);
- return m.replaceAll(firstGroupMatcher.replaceFirst(nationalPrefixFormattingRule));
- } else {
- return m.replaceAll(numberFormatRule);
- }
- }
- }
+ NumberFormat numFormat = chooseFormattingPatternForNumber(availableFormats, nationalNumber);
+ if (numFormat == null) {
+ // If no pattern above is matched, we format the number as a whole.
+ return nationalNumber;
+ }
+ String numberFormatRule = numFormat.getFormat();
+ Matcher m = regexCache.getPatternForRegex(numFormat.getPattern()).matcher(nationalNumber);
+ if (numberFormat == PhoneNumberFormat.NATIONAL &&
+ carrierCode != null && carrierCode.length() > 0 &&
+ numFormat.getDomesticCarrierCodeFormattingRule().length() > 0) {
+ // Replace the $CC in the formatting rule with the desired carrier code.
+ String carrierCodeFormattingRule = numFormat.getDomesticCarrierCodeFormattingRule();
+ carrierCodeFormattingRule =
+ CC_PATTERN.matcher(carrierCodeFormattingRule).replaceFirst(carrierCode);
+ // Now replace the $FG in the formatting rule with the first group and the carrier code
+ // combined in the appropriate way.
+ numberFormatRule = FIRST_GROUP_PATTERN.matcher(numberFormatRule)
+ .replaceFirst(carrierCodeFormattingRule);
+ return m.replaceAll(numberFormatRule);
+ } else {
+ // Use the national prefix formatting rule instead.
+ String nationalPrefixFormattingRule = numFormat.getNationalPrefixFormattingRule();
+ if (numberFormat == PhoneNumberFormat.NATIONAL &&
+ nationalPrefixFormattingRule != null &&
+ nationalPrefixFormattingRule.length() > 0) {
+ Matcher firstGroupMatcher = FIRST_GROUP_PATTERN.matcher(numberFormatRule);
+ return m.replaceAll(firstGroupMatcher.replaceFirst(nationalPrefixFormattingRule));
+ } else {
+ return m.replaceAll(numberFormatRule);
}
}
-
- // If no pattern above is matched, we format the number as a whole.
- return nationalNumber;
}
/**
@@ -2131,7 +2190,8 @@ public class PhoneNumberUtil {
PhoneNumberDesc generalDesc = defaultRegionMetadata.getGeneralDesc();
Pattern validNumberPattern =
regexCache.getPatternForRegex(generalDesc.getNationalNumberPattern());
- maybeStripNationalPrefixAndCarrierCode(potentialNationalNumber, defaultRegionMetadata);
+ maybeStripNationalPrefixAndCarrierCode(
+ potentialNationalNumber, defaultRegionMetadata, null /* Don't need the carrier code */);
Pattern possibleNumberPattern =
regexCache.getPatternForRegex(generalDesc.getPossibleNumberPattern());
// If the number was not valid before but is valid now, or if it was too long before, we
@@ -2219,16 +2279,17 @@ public class PhoneNumberUtil {
* @param number the normalized telephone number that we wish to strip any national
* dialing prefix from
* @param metadata the metadata for the region that we think this number is from
- * @return the carrier code extracted if it is present, otherwise return an empty string.
+ * @param carrierCode a place to insert the carrier code if one is extracted
+ * @return true if a national prefix or carrier code (or both) could be extracted.
*/
// @VisibleForTesting
- String maybeStripNationalPrefixAndCarrierCode(StringBuilder number, PhoneMetadata metadata) {
- String carrierCode = "";
+ boolean maybeStripNationalPrefixAndCarrierCode(
+ StringBuilder number, PhoneMetadata metadata, StringBuilder carrierCode) {
int numberLength = number.length();
String possibleNationalPrefix = metadata.getNationalPrefixForParsing();
if (numberLength == 0 || possibleNationalPrefix.length() == 0) {
// Early return for numbers of zero length.
- return "";
+ return false;
}
// Attempt to parse the first digits as a national prefix.
Matcher prefixMatcher = regexCache.getPatternForRegex(possibleNationalPrefix).matcher(number);
@@ -2247,12 +2308,13 @@ public class PhoneNumberUtil {
// If the original number was viable, and the resultant number is not, we return.
if (isViableOriginalNumber &&
!nationalNumberRule.matcher(number.substring(prefixMatcher.end())).matches()) {
- return "";
+ return false;
}
- if (numOfGroups > 0 && prefixMatcher.group(numOfGroups) != null) {
- carrierCode = prefixMatcher.group(1);
+ if (carrierCode != null && numOfGroups > 0 && prefixMatcher.group(numOfGroups) != null) {
+ carrierCode.append(prefixMatcher.group(1));
}
number.delete(0, prefixMatcher.end());
+ return true;
} else {
// Check that the resultant number is still viable. If not, return. Check this by copying
// the string buffer and making the transformation on the copy first.
@@ -2260,15 +2322,16 @@ public class PhoneNumberUtil {
transformedNumber.replace(0, numberLength, prefixMatcher.replaceFirst(transformRule));
if (isViableOriginalNumber &&
!nationalNumberRule.matcher(transformedNumber.toString()).matches()) {
- return "";
+ return false;
}
- if (numOfGroups > 1) {
- carrierCode = prefixMatcher.group(1);
+ if (carrierCode != null && numOfGroups > 1) {
+ carrierCode.append(prefixMatcher.group(1));
}
number.replace(0, number.length(), transformedNumber.toString());
+ return true;
}
}
- return carrierCode;
+ return false;
}
/**
@@ -2511,10 +2574,10 @@ public class PhoneNumberUtil {
"The string supplied is too short to be a phone number.");
}
if (regionMetadata != null) {
- String carrierCode =
- maybeStripNationalPrefixAndCarrierCode(normalizedNationalNumber, regionMetadata);
+ StringBuilder carrierCode = new StringBuilder();
+ maybeStripNationalPrefixAndCarrierCode(normalizedNationalNumber, regionMetadata, carrierCode);
if (keepRawInput) {
- phoneNumber.setPreferredDomesticCarrierCode(carrierCode);
+ phoneNumber.setPreferredDomesticCarrierCode(carrierCode.toString());
}
}
int lengthOfNationalNumber = normalizedNationalNumber.length();
diff --git a/java/src/com/android/i18n/phonenumbers/Phonemetadata.java b/java/src/com/android/i18n/phonenumbers/Phonemetadata.java
index 9affe5bb..927a6c36 100644
--- a/java/src/com/android/i18n/phonenumbers/Phonemetadata.java
+++ b/java/src/com/android/i18n/phonenumbers/Phonemetadata.java
@@ -102,6 +102,19 @@ public final class Phonemetadata {
return this;
}
+ // optional bool national_prefix_optional_when_formatting = 6;
+ private boolean hasNationalPrefixOptionalWhenFormatting;
+ private boolean nationalPrefixOptionalWhenFormatting_ = false;
+ public boolean hasNationalPrefixOptionalWhenFormatting() {
+ return hasNationalPrefixOptionalWhenFormatting; }
+ public boolean isNationalPrefixOptionalWhenFormatting() {
+ return nationalPrefixOptionalWhenFormatting_; }
+ public NumberFormat setNationalPrefixOptionalWhenFormatting(boolean value) {
+ hasNationalPrefixOptionalWhenFormatting = true;
+ nationalPrefixOptionalWhenFormatting_ = value;
+ return this;
+ }
+
// optional string domestic_carrier_code_formatting_rule = 5;
private boolean hasDomesticCarrierCodeFormattingRule;
private String domesticCarrierCodeFormattingRule_ = "";
@@ -132,6 +145,7 @@ public final class Phonemetadata {
if (other.hasDomesticCarrierCodeFormattingRule()) {
setDomesticCarrierCodeFormattingRule(other.getDomesticCarrierCodeFormattingRule());
}
+ setNationalPrefixOptionalWhenFormatting(other.isNationalPrefixOptionalWhenFormatting());
return this;
}
@@ -152,6 +166,7 @@ public final class Phonemetadata {
if (hasDomesticCarrierCodeFormattingRule) {
objectOutput.writeUTF(domesticCarrierCodeFormattingRule_);
}
+ objectOutput.writeBoolean(nationalPrefixOptionalWhenFormatting_);
}
public void readExternal(ObjectInput objectInput) throws IOException {
@@ -167,6 +182,7 @@ public final class Phonemetadata {
if (objectInput.readBoolean()) {
setDomesticCarrierCodeFormattingRule(objectInput.readUTF());
}
+ setNationalPrefixOptionalWhenFormatting(objectInput.readBoolean());
}
}
diff --git a/java/src/com/android/i18n/phonenumbers/ShortNumberUtil.java b/java/src/com/android/i18n/phonenumbers/ShortNumberUtil.java
index ea2a030c..951164d3 100644
--- a/java/src/com/android/i18n/phonenumbers/ShortNumberUtil.java
+++ b/java/src/com/android/i18n/phonenumbers/ShortNumberUtil.java
@@ -16,6 +16,7 @@
package com.android.i18n.phonenumbers;
+import com.android.i18n.phonenumbers.Phonemetadata.PhoneMetadata;
import com.android.i18n.phonenumbers.Phonemetadata.PhoneNumberDesc;
import java.util.regex.Pattern;
@@ -51,6 +52,25 @@ public class ShortNumberUtil {
* @return if the number might be used to connect to an emergency service in the given region.
*/
public boolean connectsToEmergencyNumber(String number, String regionCode) {
+ return matchesEmergencyNumberHelper(number, regionCode, true /* allows prefix match */);
+ }
+
+ /**
+ * Returns true if the number exactly matches an emergency service number in the given region.
+ *
+ * This method takes into account cases where the number might contain formatting, but doesn't
+ * allow additional digits to be appended.
+ *
+ * @param number the phone number to test
+ * @param regionCode the region where the phone number is being dialed
+ * @return if the number exactly matches an emergency services number in the given region.
+ */
+ public boolean isEmergencyNumber(String number, String regionCode) {
+ return matchesEmergencyNumberHelper(number, regionCode, false /* doesn't allow prefix match */);
+ }
+
+ private boolean matchesEmergencyNumberHelper(String number, String regionCode,
+ boolean allowPrefixMatch) {
number = PhoneNumberUtil.extractPossibleNumber(number);
if (PhoneNumberUtil.PLUS_CHARS_PATTERN.matcher(number).lookingAt()) {
// Returns false if the number starts with a plus sign. We don't believe dialing the country
@@ -58,20 +78,17 @@ public class ShortNumberUtil {
// add additional logic here to handle it.
return false;
}
- String normalizedNumber = PhoneNumberUtil.normalizeDigitsOnly(number);
- PhoneNumberDesc emergencyNumberDesc = phoneUtil.getMetadataForRegion(regionCode).getEmergency();
- Pattern emergencyNumberPattern =
- Pattern.compile(emergencyNumberDesc.getNationalNumberPattern());
- if (regionCode.equals("BR")) {
- // This is to prevent Brazilian local numbers which start with 911 being incorrectly
- // classified as emergency numbers. In Brazil, it is impossible to append additional digits to
- // an emergency number to dial the number.
- if (!emergencyNumberPattern.matcher(normalizedNumber).matches()) {
- return false;
- }
+ PhoneMetadata metadata = phoneUtil.getMetadataForRegion(regionCode);
+ if (metadata == null || !metadata.hasEmergency()) {
+ return false;
}
-
- // Check the prefix against possible emergency numbers for this region.
- return emergencyNumberPattern.matcher(normalizedNumber).lookingAt();
+ Pattern emergencyNumberPattern =
+ Pattern.compile(metadata.getEmergency().getNationalNumberPattern());
+ String normalizedNumber = PhoneNumberUtil.normalizeDigitsOnly(number);
+ // In Brazil, it is impossible to append additional digits to an emergency number to dial the
+ // number.
+ return (!allowPrefixMatch || regionCode.equals("BR"))
+ ? emergencyNumberPattern.matcher(normalizedNumber).matches()
+ : emergencyNumberPattern.matcher(normalizedNumber).lookingAt();
}
}
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AC b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AC
index 1a3a4b18..63a07844 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AC
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AC
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AD b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AD
index 8a62bd60..56514044 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AD
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AD
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AE b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AE
index db146bc9..5ce6bd9d 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AE
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AE
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AF b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AF
index 5bef81bc..ce0b6776 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AF
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AF
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AG b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AG
index 5f23860a..0fb852a9 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AG
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AG
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AI b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AI
index de0fb778..5ec108b7 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AI
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AI
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AL b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AL
index 3c865860..e7f2d420 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AL
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AL
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AM b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AM
index 39937946..5af20f5e 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AM
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AM
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AN b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AN
index 25aab568..27c2ae35 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AN
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AN
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AO b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AO
index c975f997..77b08cb7 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AO
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AO
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AR b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AR
index e4208162..a39c6017 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AR
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AR
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AS b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AS
index 221eccba..3b38675c 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AS
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AS
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AT b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AT
index 92a4e32d..c38a56c8 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AT
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AT
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AU b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AU
index dbb500d9..2fa06cf8 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AU
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AU
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AW b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AW
index de31efe8..fb3aad4c 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AW
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AW
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AX b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AX
index fd7987da..c0dbabf1 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AX
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AX
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AZ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AZ
index 6b536c7c..e4b14a68 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AZ
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AZ
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BA b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BA
index b3dfcd3e..ad4662f0 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BA
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BA
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BD b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BD
index e63abb13..b6c204af 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BD
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BD
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BE b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BE
index 3e9ed8fb..b37f61f0 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BE
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BE
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BF b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BF
index 635f743d..48d20e7f 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BF
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BF
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BG b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BG
index 81fa78b0..2b3c0ae3 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BG
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BG
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BH b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BH
index 3f39c962..841ea9a8 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BH
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BH
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BI b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BI
index db38b2c1..293ebbc2 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BI
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BI
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BJ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BJ
index abe93770..e3c5863b 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BJ
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BJ
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BL b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BL
index dede3091..4987820f 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BL
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BL
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BM b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BM
index 18c09454..d014b2a5 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BM
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BM
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BN b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BN
index 38d82488..c257c58d 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BN
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BN
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BO b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BO
index 634f143f..f5919ff9 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BO
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BO
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BR b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BR
index 71dc64bd..ec29af27 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BR
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BR
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BS b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BS
index c6f960e8..f52796e0 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BS
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BS
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BT b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BT
index c0f93c59..e549cd77 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BT
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BT
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BW b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BW
index cf095424..21fd265d 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BW
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BW
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BY b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BY
index c2228e31..a679105c 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BY
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BY
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BZ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BZ
index e9bd308d..5a4d052d 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BZ
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BZ
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CC b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CC
index 515bcc46..2f2f8aad 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CC
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CC
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CD b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CD
index 65cd03b4..cf7bba2f 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CD
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CD
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CF b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CF
index fb5a305c..e3ce491d 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CF
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CF
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CG b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CG
index 3cab707f..2b4128dd 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CG
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CG
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CH b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CH
index 46aa41a5..409254af 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CH
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CH
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CI b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CI
index bb771dc3..98198b8e 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CI
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CI
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CK b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CK
index 168a085f..2f6fe630 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CK
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CK
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CL b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CL
index 1422c5cb..0e90d894 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CL
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CL
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CM b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CM
index 330fe3ad..4018df43 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CM
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CM
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CN b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CN
index 70701d1a..67a7f5e0 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CN
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CN
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CO b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CO
index d1491f4c..b1dbb84e 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CO
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CO
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CR b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CR
index 146a9db4..cbc064bb 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CR
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CR
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CU b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CU
index c4da25e4..97e98380 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CU
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CU
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CV b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CV
index 70b16679..45172446 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CV
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CV
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CX b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CX
index 733e530a..cb8dfd9f 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CX
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CX
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CY b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CY
index b6fd4b9f..de1e0041 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CY
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CY
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CZ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CZ
index 7e782e1d..5c41a795 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CZ
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CZ
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_DE b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_DE
index 1905b944..cfc5b193 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_DE
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_DE
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_DJ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_DJ
index 9f941463..55113818 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_DJ
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_DJ
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_DK b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_DK
index 79d8735f..00829666 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_DK
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_DK
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_DM b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_DM
index 3829dafb..723ea80d 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_DM
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_DM
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_DZ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_DZ
index 8cff69ef..41073358 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_DZ
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_DZ
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_EC b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_EC
index 7b7f5ec8..343743d6 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_EC
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_EC
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_EE b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_EE
index b88d8c3e..28bd9fbb 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_EE
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_EE
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_EG b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_EG
index 6d271358..38e39b34 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_EG
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_EG
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ER b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ER
index d6e0f9b7..ae892007 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ER
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ER
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ES b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ES
index 02af173c..9b855f14 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ES
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ES
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ET b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ET
index 4e73ea12..8843e540 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ET
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ET
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_FI b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_FI
index 865ca1a1..604d7ff2 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_FI
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_FI
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_FJ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_FJ
index 965c7552..cdd713c3 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_FJ
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_FJ
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_FK b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_FK
index ff38f2cc..6c19901b 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_FK
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_FK
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_FM b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_FM
index eceb9a2b..b4031f06 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_FM
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_FM
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_FO b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_FO
index cc4be13e..46dac926 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_FO
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_FO
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_FR b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_FR
index 874194aa..66d244e0 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_FR
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_FR
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GA b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GA
index 348b1ed0..dddd714e 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GA
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GA
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GB b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GB
index 143ff4b2..bd6e72a9 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GB
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GB
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GD b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GD
index 368a1051..e120fa5b 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GD
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GD
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GE b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GE
index 306b9a5e..ac5bb579 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GE
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GE
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GF b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GF
index 7b2b581e..da17df2b 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GF
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GF
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GG b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GG
index f289a987..0e6809f3 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GG
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GG
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GH b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GH
index 74ea830d..dea89c77 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GH
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GH
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GL b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GL
index 654cd4ff..d327b753 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GL
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GL
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GM b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GM
index 827c8b7c..3bf3e41a 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GM
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GM
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GN b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GN
index 0d8cd8a5..b0b74065 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GN
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GN
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GP b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GP
index 05961ecb..e03584b2 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GP
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GP
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GQ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GQ
index e18b8f50..424b068f 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GQ
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GQ
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GR b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GR
index 6f68892c..655b5b4e 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GR
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GR
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GT b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GT
index a3fbe0fc..a2a20cf0 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GT
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GT
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GU b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GU
index de49dfeb..9a006f1d 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GU
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GU
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GW b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GW
index 3c9ee203..77b63985 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GW
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GW
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GY b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GY
index 78cb16d6..eb367615 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GY
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GY
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_HK b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_HK
index 86b33570..dfd2d098 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_HK
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_HK
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_HN b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_HN
index fa77fd78..6dd47c02 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_HN
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_HN
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_HR b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_HR
index f1f8c6c7..27a0c8a0 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_HR
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_HR
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_HT b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_HT
index 105d95f3..245ee938 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_HT
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_HT
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_HU b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_HU
index 1ec5c7f1..6ef13068 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_HU
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_HU
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ID b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ID
index 516d1910..3d0f8cc6 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ID
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ID
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_IE b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_IE
index 13f4b02f..12bc7929 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_IE
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_IE
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_IL b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_IL
index 83505d57..a0f1071e 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_IL
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_IL
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_IM b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_IM
index c83da95a..8d8c8816 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_IM
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_IM
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_IN b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_IN
index f934b5fc..05b4b508 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_IN
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_IN
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_IO b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_IO
index 0e26ed9d..a9aa5698 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_IO
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_IO
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_IQ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_IQ
index eaf0102c..40099461 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_IQ
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_IQ
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_IR b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_IR
index 3d6c9780..9edbc878 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_IR
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_IR
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_IS b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_IS
index fdfe70b4..d2813474 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_IS
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_IS
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_IT b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_IT
index ee1dc295..d5c2c719 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_IT
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_IT
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_JE b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_JE
index 71003d31..1908b641 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_JE
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_JE
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_JO b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_JO
index 2043332a..47058adb 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_JO
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_JO
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_JP b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_JP
index d9097917..9db7e6e3 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_JP
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_JP
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KE b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KE
index ba366255..68de57a0 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KE
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KE
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KG b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KG
index f9013e76..617ce07e 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KG
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KG
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KH b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KH
index b6d9b708..9f757d43 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KH
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KH
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KI b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KI
index f0140dfd..82bdb905 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KI
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KI
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KM b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KM
index 9035f8f8..21570aef 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KM
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KM
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KN b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KN
index 091abf0a..5a5f4e8a 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KN
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KN
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KP b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KP
index 8bb92386..42a4b263 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KP
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KP
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KR b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KR
index 331d1d81..816ed3f9 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KR
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KR
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KW b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KW
index 2f5c5b22..77f805ac 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KW
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KW
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LA b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LA
index 45629317..62db7dc5 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LA
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LA
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LB b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LB
index 67af442e..65b3c94b 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LB
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LB
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LC b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LC
index 45c9fe74..c8a6ad50 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LC
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LC
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LI b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LI
index 13efb94c..c29d8903 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LI
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LI
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LK b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LK
index cacb5a22..a9a9d2ee 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LK
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LK
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LR b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LR
index 9094843e..f1ce4beb 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LR
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LR
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LS b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LS
index e8210553..e04c603b 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LS
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LS
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LT b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LT
index 5bdabd4f..0c113150 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LT
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LT
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LU b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LU
index 2ed3fc25..4ffc7912 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LU
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LU
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LV b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LV
index b7a02eda..a76eab93 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LV
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LV
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LY b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LY
index 8988b9f3..8fc1ee7c 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LY
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LY
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MA b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MA
index 3bb35a04..ef1522ab 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MA
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MA
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MC b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MC
index 66461fc1..79fac1a8 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MC
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MC
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MD b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MD
index 56e6ac35..b17e4afe 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MD
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MD
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ME b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ME
index 264ec570..24937fd9 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ME
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ME
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MF b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MF
index e00abfa2..38131494 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MF
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MF
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MG b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MG
index da2d7b2f..072379ff 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MG
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MG
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MH b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MH
index def092da..fc642131 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MH
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MH
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MK b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MK
index 945490b6..3bbd43ea 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MK
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MK
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ML b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ML
index a3cb55d7..5cce5628 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ML
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ML
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MM b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MM
index 2e6b5681..4f3ea918 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MM
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MM
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MN b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MN
index 7ed10784..0a7e31aa 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MN
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MN
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MO b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MO
index cf9446c1..4cf96257 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MO
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MO
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MP b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MP
index 1f0249c3..0f9476d2 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MP
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MP
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MQ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MQ
index 1e686cea..c48db347 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MQ
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MQ
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MR b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MR
index eadaab09..36db9e41 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MR
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MR
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MS b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MS
index 1db3c7b3..969cafc5 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MS
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MS
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MT b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MT
index 2d3ed91b..c2aaa539 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MT
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MT
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MU b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MU
index 4eb65a23..d69bd682 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MU
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MU
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MV b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MV
index 2e09171d..8841a29b 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MV
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MV
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MW b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MW
index a5096108..7bf7d438 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MW
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MW
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MX b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MX
index 05303660..fa3cb402 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MX
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MX
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MY b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MY
index 1f293314..07b6b858 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MY
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MY
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MZ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MZ
index c50b9246..3d0967a5 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MZ
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MZ
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NA b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NA
index 0538f74b..86d10bc6 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NA
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NA
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NC b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NC
index 1a7d8a8e..6e5d3f78 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NC
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NC
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NE b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NE
index 226b16f6..b9cd0ac7 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NE
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NE
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NF b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NF
index 596dd70d..622d39ff 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NF
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NF
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NG b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NG
index ac6597ea..0f478cac 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NG
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NG
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NI b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NI
index b92feee5..64d3eb01 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NI
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NI
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NL b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NL
index e395fbdd..aaefdd95 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NL
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NL
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NO b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NO
index 5f3ef88f..68388545 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NO
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NO
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NP b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NP
index 18854559..2868f9ca 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NP
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NP
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NR b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NR
index 870e517b..c8ec23eb 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NR
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NR
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NU b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NU
index 571051f2..50dbafdf 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NU
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NU
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NZ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NZ
index cd204814..6c3535bc 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NZ
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NZ
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_OM b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_OM
index 9b733701..84cded46 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_OM
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_OM
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PA b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PA
index 981d0793..2c032e67 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PA
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PA
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PE b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PE
index 40bbf584..6b89b38b 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PE
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PE
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PF b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PF
index f24e8e49..60c6d306 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PF
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PF
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PG b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PG
index ec72d57d..9fbb7bcc 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PG
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PG
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PH b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PH
index 1ea186db..56a53cba 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PH
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PH
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PK b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PK
index 7bfe2ad6..e1114b60 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PK
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PK
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PL b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PL
index 51d56b3c..69d172c0 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PL
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PL
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PM b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PM
index 65f6ac53..f8da61b5 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PM
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PM
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PR b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PR
index 0901ad53..3b8c4a2f 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PR
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PR
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PS b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PS
index 46a269f8..da7d297c 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PS
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PS
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PT b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PT
index 187db1a7..6baccc72 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PT
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PT
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PW b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PW
index a8bd035e..45398fa6 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PW
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PW
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PY b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PY
index 7bb927a7..6bc931e8 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PY
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PY
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_QA b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_QA
index a482873e..8ec44a08 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_QA
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_QA
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_RE b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_RE
index 43593bb5..e2af509b 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_RE
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_RE
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_RO b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_RO
index 60f99b27..a55d60fb 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_RO
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_RO
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_RS b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_RS
index 9dc55f33..5a803f96 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_RS
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_RS
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_RU b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_RU
index 1d1ade8a..28bb82d0 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_RU
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_RU
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_RW b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_RW
index 4ca18677..cb6329ea 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_RW
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_RW
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SA b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SA
index 46619c2b..aefd945c 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SA
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SA
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SB b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SB
index 21df6666..e35361f2 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SB
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SB
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SC b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SC
index ca57e4c9..f012a555 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SC
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SC
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SD b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SD
index 609d732c..060bd91b 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SD
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SD
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SE b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SE
index 04170b56..e5850c78 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SE
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SE
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SG b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SG
index 731a1fbc..e8dfd31d 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SG
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SG
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SH b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SH
index b4ebc4bb..dcf690a9 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SH
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SH
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SI b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SI
index b0c48574..ca7c517c 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SI
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SI
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SJ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SJ
index a8b4cabf..17122cca 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SJ
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SJ
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SK b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SK
index c5df50f0..48323b5d 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SK
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SK
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SL b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SL
index b11e93aa..e942566b 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SL
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SL
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SM b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SM
index 3545cc3c..94327842 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SM
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SM
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SN b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SN
index 933dca85..549ff61c 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SN
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SN
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SO b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SO
index 02388680..0b4edc7c 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SO
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SO
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SR b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SR
index 79f19dce..a7260aad 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SR
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SR
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ST b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ST
index da445dfd..265f3af1 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ST
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ST
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SV b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SV
index 0ac6bba5..436b979c 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SV
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SV
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SX b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SX
new file mode 100644
index 00000000..50b2362e
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SX
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SY b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SY
index 0b8d63f3..4a6a7b80 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SY
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SY
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SZ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SZ
index 3cdd2847..c1ed3880 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SZ
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SZ
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TC b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TC
index 67ccd0f7..dc62e4ca 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TC
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TC
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TD b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TD
index 31a13541..b92127f0 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TD
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TD
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TG b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TG
index ee3bd808..176b9bfb 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TG
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TG
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TH b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TH
index 51e0a798..8b56a1f6 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TH
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TH
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TJ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TJ
index 974034ed..efce54e8 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TJ
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TJ
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TL b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TL
index e971e040..46a855f9 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TL
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TL
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TM b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TM
index 3c02452b..cf1c21d0 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TM
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TM
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TN b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TN
index 6043f2d0..50a7217e 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TN
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TN
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TO b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TO
index aee32a7d..e2cd8de9 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TO
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TO
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TR b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TR
index eb2be549..060cc34c 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TR
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TR
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TV b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TV
index ab5424e7..3b532105 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TV
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TV
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TW b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TW
index bfb6f6be..acda89f2 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TW
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TW
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TZ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TZ
index 1c800363..5450858d 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TZ
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TZ
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_UA b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_UA
index 0ab8c47c..5019f027 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_UA
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_UA
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_UG b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_UG
index 4b28889e..d154f24c 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_UG
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_UG
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_US b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_US
index d83bd32d..1046ec6a 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_US
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_US
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_UY b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_UY
index e214c259..f9e4805e 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_UY
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_UY
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_UZ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_UZ
index 1d1f028a..f894a1fe 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_UZ
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_UZ
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_VA b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_VA
index 96152e86..42367de8 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_VA
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_VA
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_VC b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_VC
index 386be34e..294335dc 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_VC
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_VC
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_VE b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_VE
index bfbe19ad..645c9a5e 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_VE
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_VE
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_VG b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_VG
index 215b7a54..bda87e45 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_VG
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_VG
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_VI b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_VI
index bf3ab19b..987acec4 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_VI
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_VI
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_VN b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_VN
index 74ddd896..ad1e62bf 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_VN
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_VN
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_VU b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_VU
index 685bf497..26ecb82b 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_VU
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_VU
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_WF b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_WF
index 404da8ec..2337ed6a 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_WF
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_WF
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_WS b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_WS
index 324ae99f..03fa87f6 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_WS
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_WS
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_YE b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_YE
index 43cba39d..be646a13 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_YE
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_YE
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_YT b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_YT
index 088ad95c..e5eb1059 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_YT
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_YT
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ZA b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ZA
index 2a441893..c742d5c1 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ZA
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ZA
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ZM b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ZM
index a1272430..dd3dea3f 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ZM
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ZM
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ZW b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ZW
index dfe9fde6..2766b3c3 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ZW
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ZW
Binary files differ
diff --git a/java/test/com/android/i18n/phonenumbers/PhoneNumberMatcherTest.java b/java/test/com/android/i18n/phonenumbers/PhoneNumberMatcherTest.java
index 520fb14b..7bbbf2c2 100644
--- a/java/test/com/android/i18n/phonenumbers/PhoneNumberMatcherTest.java
+++ b/java/test/com/android/i18n/phonenumbers/PhoneNumberMatcherTest.java
@@ -45,7 +45,8 @@ public class PhoneNumberMatcherTest extends TestCase {
public void testFindNationalNumber() throws Exception {
// same cases as in testParseNationalNumber
doTestFindInContext("033316005", RegionCode.NZ);
- doTestFindInContext("33316005", RegionCode.NZ);
+ // ("33316005", RegionCode.NZ) is omitted since the national prefix is obligatory for these
+ // types of numbers in New Zealand.
// National prefix attached and some formatting present.
doTestFindInContext("03-331 6005", RegionCode.NZ);
doTestFindInContext("03 331 6005", RegionCode.NZ);
@@ -375,6 +376,7 @@ public class PhoneNumberMatcherTest extends TestCase {
new NumberTest("1650 x 253 - 1234", RegionCode.US),
new NumberTest("650 x 253 - 1234", RegionCode.US),
new NumberTest("650x2531234", RegionCode.US),
+ new NumberTest("(20) 3346 1234", RegionCode.GB), // Non-optional NP omitted
};
/**
@@ -393,7 +395,7 @@ public class PhoneNumberMatcherTest extends TestCase {
new NumberTest("800 234 1 111x1111", RegionCode.US),
new NumberTest("+494949-4-94", RegionCode.DE), // National number in wrong format
new NumberTest("\uFF14\uFF11\uFF15\uFF16\uFF16\uFF16\uFF16-\uFF17\uFF17\uFF17\uFF17",
- RegionCode.US)
+ RegionCode.US),
};
/**
@@ -405,7 +407,7 @@ public class PhoneNumberMatcherTest extends TestCase {
new NumberTest("415-6667777", RegionCode.US),
// Should be found by strict grouping but not exact grouping, as the last two groups are
// formatted together as a block.
- new NumberTest("800-2491234", RegionCode.DE),
+ new NumberTest("0800-2491234", RegionCode.DE),
};
/**
@@ -430,6 +432,8 @@ public class PhoneNumberMatcherTest extends TestCase {
new NumberTest("+49494949 ext. 49", RegionCode.DE),
new NumberTest("0494949", RegionCode.DE),
new NumberTest("0494949 ext. 49", RegionCode.DE),
+ new NumberTest("01 (33) 3461 2234", RegionCode.MX), // Optional NP present
+ new NumberTest("(33) 3461 2234", RegionCode.MX), // Optional NP omitted
};
public void testMatchesWithStrictGroupingLeniency() throws Exception {
diff --git a/java/test/com/android/i18n/phonenumbers/PhoneNumberUtilTest.java b/java/test/com/android/i18n/phonenumbers/PhoneNumberUtilTest.java
index 61344d1f..54433bf6 100644
--- a/java/test/com/android/i18n/phonenumbers/PhoneNumberUtilTest.java
+++ b/java/test/com/android/i18n/phonenumbers/PhoneNumberUtilTest.java
@@ -477,6 +477,13 @@ public class PhoneNumberUtilTest extends TestCase {
phoneUtil.formatOutOfCountryCallingNumber(arNumberWithExtn, RegionCode.AR));
}
+ public void testFormatOutOfCountryWithInvalidRegion() {
+ // AQ/Antarctica isn't a valid region code for phone number formatting,
+ // so this falls back to intl formatting.
+ assertEquals("+1 650 253 0000",
+ phoneUtil.formatOutOfCountryCallingNumber(US_NUMBER, "AQ"));
+ }
+
public void testFormatOutOfCountryWithPreferredIntlPrefix() {
// This should use 0011, since that is the preferred international prefix (both 0011 and 0012
// are accepted as possible international prefixes in our test metadta.)
@@ -1102,24 +1109,24 @@ public class PhoneNumberUtilTest extends TestCase {
metadata.setGeneralDesc(new PhoneNumberDesc().setNationalNumberPattern("\\d{4,8}"));
StringBuilder numberToStrip = new StringBuilder("34356778");
String strippedNumber = "356778";
- phoneUtil.maybeStripNationalPrefixAndCarrierCode(numberToStrip, metadata);
+ assertTrue(phoneUtil.maybeStripNationalPrefixAndCarrierCode(numberToStrip, metadata, null));
assertEquals("Should have had national prefix stripped.",
strippedNumber, numberToStrip.toString());
// Retry stripping - now the number should not start with the national prefix, so no more
// stripping should occur.
- phoneUtil.maybeStripNationalPrefixAndCarrierCode(numberToStrip, metadata);
+ assertFalse(phoneUtil.maybeStripNationalPrefixAndCarrierCode(numberToStrip, metadata, null));
assertEquals("Should have had no change - no national prefix present.",
strippedNumber, numberToStrip.toString());
// Some countries have no national prefix. Repeat test with none specified.
metadata.setNationalPrefixForParsing("");
- phoneUtil.maybeStripNationalPrefixAndCarrierCode(numberToStrip, metadata);
+ assertFalse(phoneUtil.maybeStripNationalPrefixAndCarrierCode(numberToStrip, metadata, null));
assertEquals("Should not strip anything with empty national prefix.",
strippedNumber, numberToStrip.toString());
// If the resultant number doesn't match the national rule, it shouldn't be stripped.
metadata.setNationalPrefixForParsing("3");
numberToStrip = new StringBuilder("3123");
strippedNumber = "3123";
- phoneUtil.maybeStripNationalPrefixAndCarrierCode(numberToStrip, metadata);
+ assertFalse(phoneUtil.maybeStripNationalPrefixAndCarrierCode(numberToStrip, metadata, null));
assertEquals("Should have had no change - after stripping, it wouldn't have matched " +
"the national rule.",
strippedNumber, numberToStrip.toString());
@@ -1127,7 +1134,10 @@ public class PhoneNumberUtilTest extends TestCase {
metadata.setNationalPrefixForParsing("0(81)?");
numberToStrip = new StringBuilder("08122123456");
strippedNumber = "22123456";
- assertEquals("81", phoneUtil.maybeStripNationalPrefixAndCarrierCode(numberToStrip, metadata));
+ StringBuilder carrierCode = new StringBuilder();
+ assertTrue(phoneUtil.maybeStripNationalPrefixAndCarrierCode(
+ numberToStrip, metadata, carrierCode));
+ assertEquals("81", carrierCode.toString());
assertEquals("Should have had national prefix and carrier code stripped.",
strippedNumber, numberToStrip.toString());
// If there was a transform rule, check it was applied.
@@ -1136,7 +1146,7 @@ public class PhoneNumberUtilTest extends TestCase {
metadata.setNationalPrefixForParsing("0(\\d{2})");
numberToStrip = new StringBuilder("031123");
String transformedNumber = "5315123";
- phoneUtil.maybeStripNationalPrefixAndCarrierCode(numberToStrip, metadata);
+ assertTrue(phoneUtil.maybeStripNationalPrefixAndCarrierCode(numberToStrip, metadata, null));
assertEquals("Should transform the 031 to a 5315.",
transformedNumber, numberToStrip.toString());
}
diff --git a/java/test/com/android/i18n/phonenumbers/RegionCode.java b/java/test/com/android/i18n/phonenumbers/RegionCode.java
index 74ac8bb8..ecf5660d 100644
--- a/java/test/com/android/i18n/phonenumbers/RegionCode.java
+++ b/java/test/com/android/i18n/phonenumbers/RegionCode.java
@@ -41,6 +41,7 @@ final class RegionCode {
static final String SG = "SG";
static final String US = "US";
static final String YT = "YT";
+ static final String ZW = "ZW";
// Official code for the unknown region.
static final String ZZ = "ZZ";
}
diff --git a/java/test/com/android/i18n/phonenumbers/ShortNumberUtilTest.java b/java/test/com/android/i18n/phonenumbers/ShortNumberUtilTest.java
index 4fe95524..b1aaade6 100644
--- a/java/test/com/android/i18n/phonenumbers/ShortNumberUtilTest.java
+++ b/java/test/com/android/i18n/phonenumbers/ShortNumberUtilTest.java
@@ -21,6 +21,8 @@ import junit.framework.TestCase;
import java.io.InputStream;
/**
+ * Unit tests for ShortNumberUtil.java
+ *
* @author Shaopeng Jia
*/
public class ShortNumberUtilTest extends TestCase {
@@ -29,6 +31,7 @@ public class ShortNumberUtilTest extends TestCase {
"/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting";
public ShortNumberUtilTest() {
+ PhoneNumberUtil.resetInstance();
PhoneNumberUtil phoneUtil = PhoneNumberUtil.getInstance(
TEST_META_DATA_FILE_PREFIX,
CountryCodeToRegionCodeMapForTesting.getCountryCodeToRegionCodeMap());
@@ -73,4 +76,73 @@ public class ShortNumberUtilTest extends TestCase {
assertFalse(shortUtil.connectsToEmergencyNumber("1900", RegionCode.BR));
assertFalse(shortUtil.connectsToEmergencyNumber("9996", RegionCode.BR));
}
+
+ public void testConnectsToEmergencyNumber_AO() {
+ // Angola doesn't have any metadata for emergency numbers in the test metadata.
+ assertFalse(shortUtil.connectsToEmergencyNumber("911", RegionCode.AO));
+ assertFalse(shortUtil.connectsToEmergencyNumber("222123456", RegionCode.AO));
+ assertFalse(shortUtil.connectsToEmergencyNumber("923123456", RegionCode.AO));
+ }
+
+ public void testConnectsToEmergencyNumber_ZW() {
+ // Zimbabwe doesn't have any metadata in the test metadata.
+ assertFalse(shortUtil.connectsToEmergencyNumber("911", RegionCode.ZW));
+ assertFalse(shortUtil.connectsToEmergencyNumber("01312345", RegionCode.ZW));
+ assertFalse(shortUtil.connectsToEmergencyNumber("0711234567", RegionCode.ZW));
+ }
+
+ public void testIsEmergencyNumber_US() {
+ assertTrue(shortUtil.isEmergencyNumber("911", RegionCode.US));
+ assertTrue(shortUtil.isEmergencyNumber("119", RegionCode.US));
+ assertFalse(shortUtil.isEmergencyNumber("999", RegionCode.US));
+ }
+
+ public void testIsEmergencyNumberLongNumber_US() {
+ assertFalse(shortUtil.isEmergencyNumber("9116666666", RegionCode.US));
+ assertFalse(shortUtil.isEmergencyNumber("1196666666", RegionCode.US));
+ assertFalse(shortUtil.isEmergencyNumber("9996666666", RegionCode.US));
+ }
+
+ public void testIsEmergencyNumberWithFormatting_US() {
+ assertTrue(shortUtil.isEmergencyNumber("9-1-1", RegionCode.US));
+ assertTrue(shortUtil.isEmergencyNumber("*911", RegionCode.US));
+ assertTrue(shortUtil.isEmergencyNumber("1-1-9", RegionCode.US));
+ assertTrue(shortUtil.isEmergencyNumber("*119", RegionCode.US));
+ assertFalse(shortUtil.isEmergencyNumber("9-9-9", RegionCode.US));
+ assertFalse(shortUtil.isEmergencyNumber("*999", RegionCode.US));
+ }
+
+ public void testIsEmergencyNumberWithPlusSign_US() {
+ assertFalse(shortUtil.isEmergencyNumber("+911", RegionCode.US));
+ assertFalse(shortUtil.isEmergencyNumber("\uFF0B911", RegionCode.US));
+ assertFalse(shortUtil.isEmergencyNumber(" +911", RegionCode.US));
+ assertFalse(shortUtil.isEmergencyNumber("+119", RegionCode.US));
+ assertFalse(shortUtil.isEmergencyNumber("+999", RegionCode.US));
+ }
+
+ public void testIsEmergencyNumber_BR() {
+ assertTrue(shortUtil.isEmergencyNumber("911", RegionCode.BR));
+ assertTrue(shortUtil.isEmergencyNumber("190", RegionCode.BR));
+ assertFalse(shortUtil.isEmergencyNumber("999", RegionCode.BR));
+ }
+
+ public void testIsEmergencyNumberLongNumber_BR() {
+ assertFalse(shortUtil.isEmergencyNumber("9111", RegionCode.BR));
+ assertFalse(shortUtil.isEmergencyNumber("1900", RegionCode.BR));
+ assertFalse(shortUtil.isEmergencyNumber("9996", RegionCode.BR));
+ }
+
+ public void testIsEmergencyNumber_AO() {
+ // Angola doesn't have any metadata for emergency numbers in the test metadata.
+ assertFalse(shortUtil.isEmergencyNumber("911", RegionCode.AO));
+ assertFalse(shortUtil.isEmergencyNumber("222123456", RegionCode.AO));
+ assertFalse(shortUtil.isEmergencyNumber("923123456", RegionCode.AO));
+ }
+
+ public void testIsEmergencyNumber_ZW() {
+ // Zimbabwe doesn't have any metadata in the test metadata.
+ assertFalse(shortUtil.isEmergencyNumber("911", RegionCode.ZW));
+ assertFalse(shortUtil.isEmergencyNumber("01312345", RegionCode.ZW));
+ assertFalse(shortUtil.isEmergencyNumber("0711234567", RegionCode.ZW));
+ }
}
diff --git a/java/test/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_AO b/java/test/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_AO
index 6a8cb687..44b042ef 100644
--- a/java/test/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_AO
+++ b/java/test/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_AO
Binary files differ
diff --git a/java/test/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_AR b/java/test/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_AR
index f93ae44c..549bc8b8 100644
--- a/java/test/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_AR
+++ b/java/test/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_AR
Binary files differ
diff --git a/java/test/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_AU b/java/test/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_AU
index a5761e1d..b3ee4837 100644
--- a/java/test/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_AU
+++ b/java/test/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_AU
Binary files differ
diff --git a/java/test/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_DE b/java/test/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_DE
index c2ebe28a..42d58fe7 100644
--- a/java/test/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_DE
+++ b/java/test/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_DE
Binary files differ
diff --git a/java/test/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_GB b/java/test/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_GB
index 28acb39c..171bbc09 100644
--- a/java/test/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_GB
+++ b/java/test/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_GB
Binary files differ
diff --git a/java/test/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_IT b/java/test/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_IT
index 4175feed..be4d9c17 100644
--- a/java/test/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_IT
+++ b/java/test/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_IT
Binary files differ
diff --git a/java/test/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_JP b/java/test/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_JP
index 8fc2b789..1dbb2b1b 100644
--- a/java/test/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_JP
+++ b/java/test/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_JP
Binary files differ
diff --git a/java/test/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_KR b/java/test/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_KR
index 63fc8eac..21c764ea 100644
--- a/java/test/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_KR
+++ b/java/test/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_KR
Binary files differ
diff --git a/java/test/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_MX b/java/test/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_MX
index e033b404..854f0206 100644
--- a/java/test/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_MX
+++ b/java/test/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_MX
Binary files differ
diff --git a/java/test/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_NZ b/java/test/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_NZ
index de811438..d3b27a63 100644
--- a/java/test/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_NZ
+++ b/java/test/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_NZ
Binary files differ
diff --git a/java/test/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_PL b/java/test/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_PL
index 00fbafe4..9b082dff 100644
--- a/java/test/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_PL
+++ b/java/test/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_PL
Binary files differ
diff --git a/java/test/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_RE b/java/test/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_RE
index fffbfcf1..02b38fa7 100644
--- a/java/test/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_RE
+++ b/java/test/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_RE
Binary files differ
diff --git a/java/test/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_SG b/java/test/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_SG
index b9877358..c5df8dc5 100644
--- a/java/test/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_SG
+++ b/java/test/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_SG
Binary files differ
diff --git a/java/test/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_US b/java/test/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_US
index ce84e222..cf65f6aa 100644
--- a/java/test/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_US
+++ b/java/test/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProtoForTesting_US
Binary files differ