summaryrefslogtreecommitdiff
path: root/java/src/com
diff options
context:
space:
mode:
authorShaopeng Jia <shaopengjia@google.com>2011-10-25 20:38:42 +0200
committerShaopeng Jia <shaopengjia@google.com>2011-10-28 20:35:15 +0200
commitca1e43d6e1fac07c7fc29c66c7da1fa9d7cf50f2 (patch)
tree62aa4b3004f8e57e32eab7c0bcc021e4e3fce8cd /java/src/com
parente7fd2450b0b87ccb1996f8c4134ea904a58978bf (diff)
downloadlibphonenumber-ca1e43d6e1fac07c7fc29c66c7da1fa9d7cf50f2.tar.gz
Upgrade libphonenumber to v4.1
Bug: 5247602 Change-Id: Icf2965f85efb70b92919931b4a4029ac5a634475
Diffstat (limited to 'java/src/com')
-rw-r--r--java/src/com/android/i18n/phonenumbers/AsYouTypeFormatter.java82
-rw-r--r--java/src/com/android/i18n/phonenumbers/CountryCodeToRegionCodeMap.java2
-rw-r--r--java/src/com/android/i18n/phonenumbers/NumberParseException.java2
-rw-r--r--java/src/com/android/i18n/phonenumbers/PhoneNumberMatch.java2
-rw-r--r--java/src/com/android/i18n/phonenumbers/PhoneNumberMatcher.java2
-rw-r--r--java/src/com/android/i18n/phonenumbers/PhoneNumberUtil.java118
-rw-r--r--java/src/com/android/i18n/phonenumbers/Phonemetadata.java26
-rw-r--r--java/src/com/android/i18n/phonenumbers/Phonenumber.java2
-rw-r--r--java/src/com/android/i18n/phonenumbers/RegexCache.java2
-rw-r--r--java/src/com/android/i18n/phonenumbers/ShortNumberUtil.java77
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ACbin219 -> 231 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ADbin352 -> 364 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AEbin564 -> 593 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AFbin320 -> 348 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AGbin491 -> 503 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AIbin425 -> 437 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ALbin707 -> 732 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AMbin586 -> 608 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ANbin556 -> 568 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AObin291 -> 303 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ARbin2550 -> 2604 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ASbin407 -> 419 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ATbin1054 -> 1088 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AUbin1066 -> 1150 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AWbin397 -> 409 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AXbin513 -> 525 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AZbin972 -> 984 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BAbin380 -> 405 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BBbin403 -> 428 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BDbin1032 -> 1055 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BEbin686 -> 720 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BFbin369 -> 383 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BGbin849 -> 883 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BHbin436 -> 458 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BIbin317 -> 329 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BJbin389 -> 376 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BLbin273 -> 285 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BMbin441 -> 453 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BNbin275 -> 278 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BObin531 -> 556 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BRbin684 -> 808 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BSbin583 -> 595 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BTbin381 -> 405 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BWbin568 -> 580 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BYbin715 -> 752 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BZbin380 -> 392 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CAbin689 -> 714 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CCbin476 -> 488 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CDbin361 -> 373 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CFbin302 -> 314 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CGbin348 -> 360 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CHbin501 -> 533 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CIbin384 -> 397 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CKbin282 -> 294 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CLbin885 -> 937 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CMbin382 -> 394 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CNbin2586 -> 2672 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CObin828 -> 865 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CRbin478 -> 503 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CUbin436 -> 448 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CVbin317 -> 329 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CXbin476 -> 488 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CYbin373 -> 401 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CZbin456 -> 501 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_DEbin1640 -> 1674 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_DJbin278 -> 300 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_DKbin411 -> 381 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_DMbin450 -> 464 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_DObin398 -> 749 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_DZbin590 -> 614 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ECbin565 -> 631 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_EEbin806 -> 830 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_EGbin610 -> 794 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ERbin318 -> 330 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ESbin488 -> 529 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ETbin934 -> 946 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_FIbin727 -> 748 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_FJbin398 -> 434 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_FKbin218 -> 230 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_FMbin297 -> 309 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_FObin400 -> 421 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_FRbin495 -> 587 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GAbin546 -> 558 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GBbin2818 -> 2843 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GDbin500 -> 515 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GEbin490 -> 541 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GFbin379 -> 402 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GGbin582 -> 594 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GHbin421 -> 450 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GIbin317 -> 348 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GLbin338 -> 359 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GMbin354 -> 366 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GNbin388 -> 400 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GPbin390 -> 402 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GQbin418 -> 430 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GRbin827 -> 865 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GTbin387 -> 418 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GUbin785 -> 797 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GWbin299 -> 311 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GYbin397 -> 422 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_HKbin481 -> 509 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_HNbin465 -> 486 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_HRbin885 -> 957 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_HTbin336 -> 348 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_HUbin493 -> 525 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_IDbin1058 -> 1085 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_IEbin1190 -> 1241 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ILbin844 -> 869 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_IMbin501 -> 513 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_INbin3702 -> 3974 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_IObin245 -> 257 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_IQbin442 -> 452 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_IRbin865 -> 897 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ISbin654 -> 673 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ITbin947 -> 973 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_JEbin680 -> 692 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_JMbin628 -> 673 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_JObin539 -> 564 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_JPbin4932 -> 4956 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KEbin449 -> 461 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KGbin670 -> 687 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KHbin549 -> 586 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KIbin270 -> 250 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KMbin316 -> 328 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KNbin436 -> 448 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KPbin462 -> 474 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KRbin1569 -> 1592 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KWbin466 -> 486 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KYbin533 -> 554 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KZbin818 -> 855 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LAbin392 -> 409 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LBbin496 -> 535 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LCbin478 -> 490 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LIbin756 -> 768 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LKbin396 -> 422 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LRbin482 -> 561 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LSbin280 -> 292 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LTbin528 -> 579 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LUbin1461 -> 1485 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LVbin302 -> 332 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LYbin309 -> 321 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MAbin716 -> 753 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MCbin457 -> 489 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MDbin610 -> 646 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MEbin649 -> 681 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MFbin279 -> 291 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MGbin370 -> 382 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MHbin310 -> 322 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MKbin585 -> 617 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MLbin416 -> 437 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MMbin585 -> 606 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MNbin691 -> 716 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MObin286 -> 308 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MPbin571 -> 583 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MQbin365 -> 377 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MRbin385 -> 397 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MSbin374 -> 386 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MTbin429 -> 450 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MUbin488 -> 517 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MVbin465 -> 493 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MWbin509 -> 521 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MXbin1764 -> 1793 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MYbin639 -> 730 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MZbin379 -> 391 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NAbin829 -> 841 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NCbin309 -> 321 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NEbin456 -> 470 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NFbin318 -> 330 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NGbin836 -> 859 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NIbin272 -> 293 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NLbin622 -> 647 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NObin576 -> 601 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NPbin530 -> 562 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NRbin266 -> 278 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NUbin215 -> 227 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NZbin771 -> 792 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_OMbin402 -> 425 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PAbin858 -> 873 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PEbin564 -> 595 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PFbin356 -> 368 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PGbin443 -> 445 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PHbin963 -> 992 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PKbin1725 -> 1765 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PLbin586 -> 615 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PMbin269 -> 292 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PRbin407 -> 419 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PSbin536 -> 548 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PTbin465 -> 486 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PWbin352 -> 364 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PYbin834 -> 856 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_QAbin344 -> 391 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_REbin403 -> 415 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_RObin454 -> 475 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_RSbin680 -> 710 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_RUbin566 -> 601 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_RWbin454 -> 475 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SAbin602 -> 628 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SBbin322 -> 389 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SCbin523 -> 535 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SDbin296 -> 319 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SEbin2278 -> 2307 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SGbin560 -> 595 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SHbin242 -> 254 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SIbin656 -> 680 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SJbin411 -> 423 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SKbin551 -> 583 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SLbin322 -> 350 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SMbin578 -> 603 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SNbin427 -> 430 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SObin335 -> 467 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SRbin423 -> 444 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_STbin251 -> 266 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SVbin455 -> 476 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SYbin435 -> 460 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SZbin417 -> 429 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TCbin467 -> 479 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TDbin344 -> 358 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TGbin393 -> 318 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_THbin538 -> 580 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TJbin619 -> 656 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TKbin222 -> 234 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TLbin332 -> 344 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TMbin310 -> 327 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TNbin305 -> 337 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TObin432 -> 444 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TRbin684 -> 733 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TTbin529 -> 556 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TVbin221 -> 233 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TWbin413 -> 438 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TZbin508 -> 520 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_UAbin1052 -> 1088 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_UGbin526 -> 546 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_USbin1605 -> 1630 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_UYbin454 -> 479 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_UZbin321 -> 1796 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_VAbin246 -> 275 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_VCbin491 -> 503 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_VEbin401 -> 422 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_VGbin495 -> 507 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_VIbin603 -> 615 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_VNbin955 -> 980 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_VUbin365 -> 386 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_WFbin280 -> 292 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_WSbin376 -> 363 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_YEbin423 -> 435 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_YTbin261 -> 276 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ZAbin505 -> 701 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ZMbin363 -> 400 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ZWbin1543 -> 1577 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/AreaCodeMap.java15
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/AreaCodeMapStorageStrategy.java52
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/DefaultMapStorage.java7
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/FlyweightMapStorage.java237
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/MappingFileProvider.java2
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/PhoneNumberOfflineGeocoder.java29
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/20_enbin0 -> 408 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/212_enbin0 -> 1233 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/212_frbin0 -> 604 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/213_enbin0 -> 250 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/216_enbin0 -> 321 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/220_enbin0 -> 96 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/221_enbin0 -> 49 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/222_enbin0 -> 181 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/222_frbin0 -> 31 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/224_enbin0 -> 303 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/225_enbin0 -> 174 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/225_frbin0 -> 174 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/226_enbin0 -> 280 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/228_enbin0 -> 129 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/228_esbin0 -> 142 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/228_frbin0 -> 149 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/229_enbin0 -> 639 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/229_frbin0 -> 161 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/230_enbin0 -> 126 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/230_esbin0 -> 76 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/230_frbin0 -> 76 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/232_enbin0 -> 66 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/233_enbin0 -> 772 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/238_enbin0 -> 1047 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/238_ptbin0 -> 1047 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/239_enbin0 -> 315 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/239_ptbin0 -> 54 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/242_enbin0 -> 140 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/242_frbin0 -> 140 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/243_enbin0 -> 184 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/243_frbin0 -> 94 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/244_enbin0 -> 488 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/244_ptbin0 -> 95 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/245_enbin0 -> 325 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/245_ptbin0 -> 325 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/247_enbin0 -> 118 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/249_enbin0 -> 171 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/251_enbin0 -> 10810 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/252_enbin0 -> 66 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/254_enbin0 -> 373 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/256_enbin0 -> 198 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/258_enbin0 -> 161 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/258_ptbin0 -> 32 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/260_enbin0 -> 274 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/261_enbin0 -> 394 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/263_enbin0 -> 924 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/264_enbin0 -> 349 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/266_enbin0 -> 31 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/267_enbin0 -> 310 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/268_enbin0 -> 995 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/269_enbin0 -> 195 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/269_frbin0 -> 195 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/27_enbin0 -> 601 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/290_enbin0 -> 96 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/290_frbin0 -> 64 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/299_enbin0 -> 376 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/30_elbin0 -> 5597 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/30_enbin0 -> 2303 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/31_enbin0 -> 1735 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/31_nlbin1734 -> 33 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/33_enbin0 -> 63146 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/33_frbin63148 -> 132 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/34_enbin0 -> 1018 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/34_esbin1020 -> 124 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/351_enbin0 -> 823 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/351_ptbin823 -> 31 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/352_debin0 -> 326 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/352_enbin0 -> 669 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/354_enbin0 -> 123 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/355_enbin0 -> 893 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/358_enbin0 -> 210 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/358_fibin0 -> 112 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/358_sebin0 -> 211 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/36_enbin0 -> 799 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/36_hubin0 -> 433 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/370_enbin0 -> 746 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/371_enbin0 -> 495 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/372_enbin0 -> 276 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/373_enbin0 -> 637 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/373_robin0 -> 331 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/373_rubin0 -> 965 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/374_enbin0 -> 1949 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/381_enbin0 -> 495 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/381_srbin0 -> 188 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/39_itbin3319 -> 2506 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/41_debin318 -> 138 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/41_frbin322 -> 97 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/41_itbin322 -> 183 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/420_enbin0 -> 431 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/421_enbin0 -> 422 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/43_debin18893 -> 3003 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/43_enbin0 -> 18727 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/46_enbin0 -> 4010 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/46_svbin4009 -> 34 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/48_enbin0 -> 725 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/48_plbin0 -> 242 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/49_debin66574 -> 1164 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/49_enbin0 -> 98456 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/51_enbin0 -> 354 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/53_enbin0 -> 396 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/54_enbin0 -> 5536 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/54_esbin5330 -> 179 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/55_enbin0 -> 1385 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/56_enbin0 -> 342 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/58_enbin0 -> 809 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/58_esbin0 -> 84 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/81_enbin0 -> 16654 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/84_enbin0 -> 1477 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/84_vibin0 -> 1125 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/86_enbin0 -> 7147 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/86_zhbin9120 -> 8472 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/90_trbin1804 -> 882 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/94_enbin0 -> 510 bytes
-rw-r--r--java/src/com/android/i18n/phonenumbers/geocoding/data/configbin4014 -> 4863 bytes
369 files changed, 445 insertions, 212 deletions
diff --git a/java/src/com/android/i18n/phonenumbers/AsYouTypeFormatter.java b/java/src/com/android/i18n/phonenumbers/AsYouTypeFormatter.java
index 5dd0ea22..500329d5 100644
--- a/java/src/com/android/i18n/phonenumbers/AsYouTypeFormatter.java
+++ b/java/src/com/android/i18n/phonenumbers/AsYouTypeFormatter.java
@@ -1,5 +1,5 @@
/*
- * Copyright (C) 2009 Google Inc.
+ * Copyright (C) 2009 The Libphonenumber Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -45,7 +45,11 @@ public class AsYouTypeFormatter {
private String currentFormattingPattern = "";
private StringBuilder accruedInput = new StringBuilder();
private StringBuilder accruedInputWithoutFormatting = new StringBuilder();
+ // This indicates whether AsYouTypeFormatter is currently doing the formatting.
private boolean ableToFormat = true;
+ // Set to true when users enter their own formatting. AsYouTypeFormatter will do no formatting at
+ // all when this is set to true.
+ private boolean inputHasFormatting = false;
private boolean isInternationalFormatting = false;
private boolean isExpectingCountryCallingCode = false;
private final PhoneNumberUtil phoneUtil = PhoneNumberUtil.getInstance();
@@ -91,7 +95,13 @@ public class AsYouTypeFormatter {
// The position of a digit upon which inputDigitAndRememberPosition is most recently invoked, as
// found in accruedInputWithoutFormatting.
private int positionToRemember = 0;
+ // This contains anything that has been entered so far preceding the national significant number,
+ // and it is formatted (e.g. with space inserted). For example, this can contain IDD, country
+ // code, and/or NDD, etc.
private StringBuilder prefixBeforeNationalNumber = new StringBuilder();
+ // This contains the national prefix that has been extracted. It contains only digits without
+ // formatting.
+ private String nationalPrefixExtracted = "";
private StringBuilder nationalNumber = new StringBuilder();
private List<NumberFormat> possibleFormats = new ArrayList<NumberFormat>();
@@ -137,6 +147,9 @@ public class AsYouTypeFormatter {
}
if (createFormattingTemplate(numberFormat)) {
currentFormattingPattern = pattern;
+ // With a new formatting template, the matched position using the old template needs to be
+ // reset.
+ lastMatchPosition = 0;
return true;
} else { // Remove the current number format from possibleFormats.
it.remove();
@@ -236,8 +249,10 @@ public class AsYouTypeFormatter {
lastMatchPosition = 0;
currentFormattingPattern = "";
prefixBeforeNationalNumber.setLength(0);
+ nationalPrefixExtracted = "";
nationalNumber.setLength(0);
ableToFormat = true;
+ inputHasFormatting = false;
positionToRemember = 0;
originalPosition = 0;
isInternationalFormatting = false;
@@ -283,13 +298,29 @@ public class AsYouTypeFormatter {
// sign (accepted at the start of the number only).
if (!isDigitOrLeadingPlusSign(nextChar)) {
ableToFormat = false;
+ inputHasFormatting = true;
+ } else {
+ nextChar = normalizeAndAccrueDigitsAndPlusSign(nextChar, rememberPosition);
}
if (!ableToFormat) {
+ // When we are unable to format because of reasons other than that formatting chars have been
+ // entered, it can be due to really long IDDs or NDDs. If that is the case, we might be able
+ // to do formatting again after extracting them.
+ if (inputHasFormatting) {
+ return accruedInput.toString();
+ } else if (attemptToExtractIdd()) {
+ if (attemptToExtractCountryCallingCode()) {
+ return attemptToChoosePatternWithPrefixExtracted();
+ }
+ } else if (ableToExtractLongerNdd()) {
+ // Add an additional space to separate long NDD and national significant number for
+ // readability.
+ prefixBeforeNationalNumber.append(" ");
+ return attemptToChoosePatternWithPrefixExtracted();
+ }
return accruedInput.toString();
}
- nextChar = normalizeAndAccrueDigitsAndPlusSign(nextChar, rememberPosition);
-
// We start to attempt to format only when at least MIN_LEADING_DIGITS_LENGTH digits (the plus
// sign is counted as a digit as well for this purpose) have been entered.
switch (accruedInputWithoutFormatting.length()) {
@@ -300,26 +331,17 @@ public class AsYouTypeFormatter {
case 3:
if (attemptToExtractIdd()) {
isExpectingCountryCallingCode = true;
- } else { // No IDD or plus sign is found, must be entering in national format.
- removeNationalPrefixFromNationalNumber();
+ } else { // No IDD or plus sign is found, might be entering in national format.
+ nationalPrefixExtracted = removeNationalPrefixFromNationalNumber();
return attemptToChooseFormattingPattern();
}
- case 4:
- case 5:
+ default:
if (isExpectingCountryCallingCode) {
if (attemptToExtractCountryCallingCode()) {
isExpectingCountryCallingCode = false;
}
return prefixBeforeNationalNumber + nationalNumber.toString();
}
- // We make a last attempt to extract a country calling code at the 6th digit because the
- // maximum length of IDD and country calling code are both 3.
- case 6:
- if (isExpectingCountryCallingCode && !attemptToExtractCountryCallingCode()) {
- ableToFormat = false;
- return accruedInput.toString();
- }
- default:
if (possibleFormats.size() > 0) { // The formatting pattern is already chosen.
String tempNationalNumber = inputDigitHelper(nextChar);
// See if the accrued digits can be formatted properly already. If not, use the results
@@ -341,6 +363,28 @@ public class AsYouTypeFormatter {
}
}
+ private String attemptToChoosePatternWithPrefixExtracted() {
+ ableToFormat = true;
+ isExpectingCountryCallingCode = false;
+ possibleFormats.clear();
+ return attemptToChooseFormattingPattern();
+ }
+
+ // Some national prefixes are a substring of others. If extracting the shorter NDD doesn't result
+ // in a number we can format, we try to see if we can extract a longer version here.
+ private boolean ableToExtractLongerNdd() {
+ if (nationalPrefixExtracted.length() > 0) {
+ // Put the extracted NDD back to the national number before attempting to extract a new NDD.
+ nationalNumber.insert(0, nationalPrefixExtracted);
+ // Remove the previously extracted NDD from prefixBeforeNationalNumber. We cannot simply set
+ // it to empty string because people sometimes enter national prefix after country code, e.g
+ // +44 (0)20-1234-5678.
+ int indexOfPreviousNdd = prefixBeforeNationalNumber.lastIndexOf(nationalPrefixExtracted);
+ prefixBeforeNationalNumber.setLength(indexOfPreviousNdd);
+ }
+ return !nationalPrefixExtracted.equals(removeNationalPrefixFromNationalNumber());
+ }
+
private boolean isDigitOrLeadingPlusSign(char nextChar) {
return Character.isDigit(nextChar) ||
(accruedInput.length() == 1 &&
@@ -408,13 +452,14 @@ public class AsYouTypeFormatter {
}
}
- private void removeNationalPrefixFromNationalNumber() {
+ // Returns the national prefix extracted, or an empty string if it is not present.
+ private String removeNationalPrefixFromNationalNumber() {
int startOfNationalNumber = 0;
if (currentMetaData.getCountryCode() == 1 && nationalNumber.charAt(0) == '1') {
startOfNationalNumber = 1;
prefixBeforeNationalNumber.append("1 ");
isInternationalFormatting = true;
- } else if (currentMetaData.hasNationalPrefix()) {
+ } else if (currentMetaData.hasNationalPrefixForParsing()) {
Pattern nationalPrefixForParsing =
regexCache.getPatternForRegex(currentMetaData.getNationalPrefixForParsing());
Matcher m = nationalPrefixForParsing.matcher(nationalNumber);
@@ -427,7 +472,9 @@ public class AsYouTypeFormatter {
prefixBeforeNationalNumber.append(nationalNumber.substring(0, startOfNationalNumber));
}
}
+ String nationalPrefix = nationalNumber.substring(0, startOfNationalNumber);
nationalNumber.delete(0, startOfNationalNumber);
+ return nationalPrefix;
}
/**
@@ -447,6 +494,7 @@ public class AsYouTypeFormatter {
int startOfCountryCallingCode = iddMatcher.end();
nationalNumber.setLength(0);
nationalNumber.append(accruedInputWithoutFormatting.substring(startOfCountryCallingCode));
+ prefixBeforeNationalNumber.setLength(0);
prefixBeforeNationalNumber.append(
accruedInputWithoutFormatting.substring(0, startOfCountryCallingCode));
if (accruedInputWithoutFormatting.charAt(0) != PhoneNumberUtil.PLUS_SIGN) {
diff --git a/java/src/com/android/i18n/phonenumbers/CountryCodeToRegionCodeMap.java b/java/src/com/android/i18n/phonenumbers/CountryCodeToRegionCodeMap.java
index c80da971..2897bccb 100644
--- a/java/src/com/android/i18n/phonenumbers/CountryCodeToRegionCodeMap.java
+++ b/java/src/com/android/i18n/phonenumbers/CountryCodeToRegionCodeMap.java
@@ -1,5 +1,5 @@
/*
- * Copyright (C) 2010 Google Inc.
+ * Copyright (C) 2010 The Libphonenumber Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/java/src/com/android/i18n/phonenumbers/NumberParseException.java b/java/src/com/android/i18n/phonenumbers/NumberParseException.java
index 598723d3..038c4734 100644
--- a/java/src/com/android/i18n/phonenumbers/NumberParseException.java
+++ b/java/src/com/android/i18n/phonenumbers/NumberParseException.java
@@ -1,5 +1,5 @@
/*
- * Copyright (C) 2009 Google Inc.
+ * Copyright (C) 2009 The Libphonenumber Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/java/src/com/android/i18n/phonenumbers/PhoneNumberMatch.java b/java/src/com/android/i18n/phonenumbers/PhoneNumberMatch.java
index ac511114..336ecac9 100644
--- a/java/src/com/android/i18n/phonenumbers/PhoneNumberMatch.java
+++ b/java/src/com/android/i18n/phonenumbers/PhoneNumberMatch.java
@@ -1,5 +1,5 @@
/*
- * Copyright (C) 2011 Google Inc.
+ * Copyright (C) 2011 The Libphonenumber Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/java/src/com/android/i18n/phonenumbers/PhoneNumberMatcher.java b/java/src/com/android/i18n/phonenumbers/PhoneNumberMatcher.java
index 44efdf7c..e00e1992 100644
--- a/java/src/com/android/i18n/phonenumbers/PhoneNumberMatcher.java
+++ b/java/src/com/android/i18n/phonenumbers/PhoneNumberMatcher.java
@@ -1,5 +1,5 @@
/*
- * Copyright (C) 2011 Google Inc.
+ * Copyright (C) 2011 The Libphonenumber Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/java/src/com/android/i18n/phonenumbers/PhoneNumberUtil.java b/java/src/com/android/i18n/phonenumbers/PhoneNumberUtil.java
index 3f03ee57..762f3e5d 100644
--- a/java/src/com/android/i18n/phonenumbers/PhoneNumberUtil.java
+++ b/java/src/com/android/i18n/phonenumbers/PhoneNumberUtil.java
@@ -1,5 +1,5 @@
/*
- * Copyright (C) 2009 Google Inc.
+ * Copyright (C) 2009 The Libphonenumber Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -59,7 +59,8 @@ public class PhoneNumberUtil {
static final int REGEX_FLAGS = Pattern.UNICODE_CASE | Pattern.CASE_INSENSITIVE;
// The minimum and maximum length of the national significant number.
private static final int MIN_LENGTH_FOR_NSN = 3;
- static final int MAX_LENGTH_FOR_NSN = 15;
+ // The ITU says the maximum length should be 15, but we have found longer numbers in Germany.
+ static final int MAX_LENGTH_FOR_NSN = 16;
// The maximum length of the country calling code.
static final int MAX_LENGTH_COUNTRY_CODE = 3;
static final String META_DATA_FILE_PREFIX =
@@ -87,6 +88,10 @@ public class PhoneNumberUtil {
private final Set<String> nanpaRegions = new HashSet<String>(35);
private static final int NANPA_COUNTRY_CODE = 1;
+ // The prefix that needs to be inserted in front of a Colombian landline number when dialed from
+ // a mobile phone in Colombia.
+ private static final String COLOMBIA_MOBILE_TO_FIXED_LINE_PREFIX = "3";
+
// The PLUS_SIGN signifies the international prefix.
static final char PLUS_SIGN = '+';
@@ -622,7 +627,7 @@ public class PhoneNumberUtil {
}
}
- private void close(InputStream in) {
+ private static void close(InputStream in) {
if (in != null) {
try {
in.close();
@@ -678,6 +683,7 @@ public class PhoneNumberUtil {
* @param number string to be checked for viability as a phone number
* @return true if the number could be a phone number of some sort, otherwise false
*/
+ // @VisibleForTesting
static boolean isViablePhoneNumber(String number) {
if (number.length() < MIN_LENGTH_FOR_NSN) {
return false;
@@ -929,7 +935,7 @@ public class PhoneNumberUtil {
}
/**
- * Convenience method to enable tests to get a list of what regions the library has metadata for.
+ * Convenience method to get a list of what regions the library has metadata for.
*/
public Set<String> getSupportedRegions() {
return supportedRegions;
@@ -1153,6 +1159,52 @@ public class PhoneNumberUtil {
}
/**
+ * Returns a number formatted in such a way that it can be dialed from a mobile phone in a
+ * specific region. If the number cannot be reached from the region (e.g. some countries block
+ * toll-free numbers from being called outside of the country), the method returns an empty
+ * string.
+ *
+ * @param number the phone number to be formatted
+ * @param regionCallingFrom the region where the call is being placed
+ * @param withFormatting whether the number should be returned with formatting symbols, such as
+ * spaces and dashes.
+ * @return the formatted phone number
+ */
+ public String formatNumberForMobileDialing(PhoneNumber number, String regionCallingFrom,
+ boolean withFormatting) {
+ String regionCode = getRegionCodeForNumber(number);
+ if (!isValidRegionCode(regionCode)) {
+ return number.hasRawInput() ? number.getRawInput() : "";
+ }
+
+ String formattedNumber;
+ // Clear the extension, as that part cannot normally be dialed together with the main number.
+ PhoneNumber numberNoExt = new PhoneNumber().mergeFrom(number).clearExtension();
+ PhoneNumberType numberType = getNumberType(numberNoExt);
+ if ((regionCode.equals("CO")) && (regionCallingFrom.equals("CO")) &&
+ (numberType == PhoneNumberType.FIXED_LINE)) {
+ formattedNumber =
+ formatNationalNumberWithCarrierCode(numberNoExt, COLOMBIA_MOBILE_TO_FIXED_LINE_PREFIX);
+ } else if ((regionCode.equals("BR")) && (regionCallingFrom.equals("BR")) &&
+ ((numberType == PhoneNumberType.FIXED_LINE) || (numberType == PhoneNumberType.MOBILE) ||
+ (numberType == PhoneNumberType.FIXED_LINE_OR_MOBILE))) {
+ formattedNumber = numberNoExt.hasPreferredDomesticCarrierCode()
+ ? formatNationalNumberWithPreferredCarrierCode(numberNoExt, "")
+ // Brazilian fixed line and mobile numbers need to be dialed with a carrier code when
+ // called within Brazil. Without that, most of the carriers won't connect the call.
+ // Because of that, we return an empty string here.
+ : "";
+ } else if (canBeInternationallyDialled(numberNoExt)) {
+ return withFormatting ? format(numberNoExt, PhoneNumberFormat.INTERNATIONAL)
+ : format(numberNoExt, PhoneNumberFormat.E164);
+ } else {
+ formattedNumber = (regionCallingFrom.equals(regionCode))
+ ? format(numberNoExt, PhoneNumberFormat.NATIONAL) : "";
+ }
+ return withFormatting ? formattedNumber : normalizeDigitsOnly(formattedNumber);
+ }
+
+ /**
* Formats a phone number for out-of-country dialing purposes. If no regionCallingFrom is
* supplied, we format the number in its INTERNATIONAL format. If the country calling code is the
* same as that of the region where the number is from, then NATIONAL formatting will be applied.
@@ -1364,18 +1416,8 @@ public class PhoneNumberUtil {
* @return the national significant number of the PhoneNumber object passed in
*/
public String getNationalSignificantNumber(PhoneNumber number) {
- // The leading zero in the national (significant) number of an Italian phone number has a
- // special meaning. Unlike the rest of the world, it indicates the number is a landline
- // number. There have been plans to migrate landline numbers to start with the digit two since
- // December 2000, but it has not yet happened.
- // See http://en.wikipedia.org/wiki/%2B39 for more details.
- // Other regions such as Cote d'Ivoire and Gabon use this for their mobile numbers.
- StringBuilder nationalNumber = new StringBuilder(
- (number.hasItalianLeadingZero() &&
- number.isItalianLeadingZero() &&
- isLeadingZeroPossible(number.getCountryCode()))
- ? "0" : ""
- );
+ // If a leading zero has been set, we prefix this now. Note this is not a national prefix.
+ StringBuilder nationalNumber = new StringBuilder(number.isItalianLeadingZero() ? "0" : "");
nationalNumber.append(number.getNationalNumber());
return nationalNumber.toString();
}
@@ -1394,7 +1436,7 @@ public class PhoneNumberUtil {
formattedNumber.insert(0, " ").insert(0, countryCallingCode).insert(0, PLUS_SIGN);
return;
case RFC3966:
- formattedNumber.insert(0, "-").insert(0, countryCallingCode) .insert(0, PLUS_SIGN);
+ formattedNumber.insert(0, "-").insert(0, countryCallingCode).insert(0, PLUS_SIGN);
return;
case NATIONAL:
default:
@@ -1509,7 +1551,7 @@ public class PhoneNumberUtil {
public PhoneNumber getExampleNumberForType(String regionCode, PhoneNumberType type) {
// Check the region code is valid.
if (!isValidRegionCode(regionCode)) {
- LOGGER.log(Level.WARNING, "Invalid or unknown region code provided.");
+ LOGGER.log(Level.SEVERE, "Invalid or unknown region code provided: " + regionCode);
return null;
}
PhoneNumberDesc desc = getNumberDescByType(getMetadataForRegion(regionCode), type);
@@ -1993,6 +2035,10 @@ public class PhoneNumberUtil {
// 0 if fullNumber doesn't start with a valid country calling code, and leaves nationalNumber
// unmodified.
int extractCountryCode(StringBuilder fullNumber, StringBuilder nationalNumber) {
+ if ((fullNumber.length() == 0) || (fullNumber.charAt(0) == '0')) {
+ // Country codes do not begin with a '0'.
+ return 0;
+ }
int potentialCountryCode;
int numberLength = fullNumber.length();
for (int i = 1; i <= MAX_LENGTH_COUNTRY_CODE && i <= numberLength; i++) {
@@ -2036,6 +2082,7 @@ public class PhoneNumberUtil {
* only populated when keepCountryCodeSource is true.
* @return the country calling code extracted or 0 if none could be extracted
*/
+ // @VisibleForTesting
int maybeExtractCountryCode(String number, PhoneMetadata defaultRegionMetadata,
StringBuilder nationalNumber, boolean keepRawInput,
PhoneNumber phoneNumber)
@@ -2143,6 +2190,7 @@ public class PhoneNumberUtil {
* removed from the number, otherwise CountryCodeSource.FROM_DEFAULT_COUNTRY if the number did
* not seem to be in international format.
*/
+ // @VisibleForTesting
CountryCodeSource maybeStripInternationalPrefixAndNormalize(
StringBuilder number,
String possibleIddPrefix) {
@@ -2159,13 +2207,6 @@ public class PhoneNumberUtil {
}
// Attempt to parse the first digits as an international prefix.
Pattern iddPattern = regexCache.getPatternForRegex(possibleIddPrefix);
- if (parsePrefixAsIdd(iddPattern, number)) {
- normalize(number);
- return CountryCodeSource.FROM_NUMBER_WITH_IDD;
- }
- // If still not found, then try and normalize the number and then try again. This shouldn't be
- // done before, since non-numeric characters (+ and ~) may legally be in the international
- // prefix.
normalize(number);
return parsePrefixAsIdd(iddPattern, number)
? CountryCodeSource.FROM_NUMBER_WITH_IDD
@@ -2180,6 +2221,7 @@ public class PhoneNumberUtil {
* @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.
*/
+ // @VisibleForTesting
String maybeStripNationalPrefixAndCarrierCode(StringBuilder number, PhoneMetadata metadata) {
String carrierCode = "";
int numberLength = number.length();
@@ -2236,6 +2278,7 @@ public class PhoneNumberUtil {
* @param number the non-normalized telephone number that we wish to strip the extension from
* @return the phone extension
*/
+ // @VisibleForTesting
String maybeStripExtension(StringBuilder number) {
Matcher m = EXTN_PATTERN.matcher(number);
// If we find a potential extension, and the number preceding this is a viable number, we assume
@@ -2423,8 +2466,29 @@ public class PhoneNumberUtil {
// Check to see if the number is given in international format so we know whether this number is
// from the default region or not.
StringBuilder normalizedNationalNumber = new StringBuilder();
- int countryCode = maybeExtractCountryCode(nationalNumber.toString(), regionMetadata,
- normalizedNationalNumber, keepRawInput, phoneNumber);
+ int countryCode = 0;
+ try {
+ // TODO: This method should really just take in the string buffer that has already
+ // been created, and just remove the prefix, rather than taking in a string and then
+ // outputting a string buffer.
+ countryCode = maybeExtractCountryCode(nationalNumber.toString(), regionMetadata,
+ normalizedNationalNumber, keepRawInput, phoneNumber);
+ } catch (NumberParseException e) {
+ Matcher matcher = PLUS_CHARS_PATTERN.matcher(nationalNumber.toString());
+ if (e.getErrorType() == NumberParseException.ErrorType.INVALID_COUNTRY_CODE &&
+ matcher.lookingAt()) {
+ // Strip the plus-char, and try again.
+ countryCode = maybeExtractCountryCode(nationalNumber.substring(matcher.end()),
+ regionMetadata, normalizedNationalNumber,
+ keepRawInput, phoneNumber);
+ if (countryCode == 0) {
+ throw new NumberParseException(NumberParseException.ErrorType.INVALID_COUNTRY_CODE,
+ "Could not interpret numbers after plus-sign.");
+ }
+ } else {
+ throw new NumberParseException(e.getErrorType(), e.getMessage());
+ }
+ }
if (countryCode != 0) {
String phoneNumberRegion = getRegionCodeForCountryCode(countryCode);
if (!phoneNumberRegion.equals(defaultRegion)) {
diff --git a/java/src/com/android/i18n/phonenumbers/Phonemetadata.java b/java/src/com/android/i18n/phonenumbers/Phonemetadata.java
index 3642b340..9affe5bb 100644
--- a/java/src/com/android/i18n/phonenumbers/Phonemetadata.java
+++ b/java/src/com/android/i18n/phonenumbers/Phonemetadata.java
@@ -1,5 +1,5 @@
/*
- * Copyright (C) 2010 Google Inc.
+ * Copyright (C) 2010 The Libphonenumber Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -430,6 +430,20 @@ public final class Phonemetadata {
return this;
}
+ // required PhoneNumberDesc emergency = 27;
+ private boolean hasEmergency;
+ private PhoneNumberDesc emergency_ = null;
+ public boolean hasEmergency() { return hasEmergency; }
+ public PhoneNumberDesc getEmergency() { return emergency_; }
+ public PhoneMetadata setEmergency(PhoneNumberDesc value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ hasEmergency = true;
+ emergency_ = value;
+ return this;
+ }
+
// required PhoneNumberDesc noInternationalDialling = 24;
private boolean hasNoInternationalDialling;
private PhoneNumberDesc noInternationalDialling_ = null;
@@ -660,6 +674,10 @@ public final class Phonemetadata {
if (hasUan) {
uan_.writeExternal(objectOutput);
}
+ objectOutput.writeBoolean(hasEmergency);
+ if (hasEmergency) {
+ emergency_.writeExternal(objectOutput);
+ }
objectOutput.writeBoolean(hasNoInternationalDialling);
if (hasNoInternationalDialling) {
noInternationalDialling_.writeExternal(objectOutput);
@@ -783,6 +801,12 @@ public final class Phonemetadata {
if (hasDesc) {
PhoneNumberDesc desc = new PhoneNumberDesc();
desc.readExternal(objectInput);
+ setEmergency(desc);
+ }
+ hasDesc = objectInput.readBoolean();
+ if (hasDesc) {
+ PhoneNumberDesc desc = new PhoneNumberDesc();
+ desc.readExternal(objectInput);
setNoInternationalDialling(desc);
}
diff --git a/java/src/com/android/i18n/phonenumbers/Phonenumber.java b/java/src/com/android/i18n/phonenumbers/Phonenumber.java
index 86afef16..73fa8842 100644
--- a/java/src/com/android/i18n/phonenumbers/Phonenumber.java
+++ b/java/src/com/android/i18n/phonenumbers/Phonenumber.java
@@ -1,5 +1,5 @@
/*
- * Copyright (C) 2010 Google Inc.
+ * Copyright (C) 2010 The Libphonenumber Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/java/src/com/android/i18n/phonenumbers/RegexCache.java b/java/src/com/android/i18n/phonenumbers/RegexCache.java
index 1d90390f..d2e9b2a6 100644
--- a/java/src/com/android/i18n/phonenumbers/RegexCache.java
+++ b/java/src/com/android/i18n/phonenumbers/RegexCache.java
@@ -1,5 +1,5 @@
/*
- * Copyright (C) 2010 Google Inc.
+ * Copyright (C) 2010 The Libphonenumber Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/java/src/com/android/i18n/phonenumbers/ShortNumberUtil.java b/java/src/com/android/i18n/phonenumbers/ShortNumberUtil.java
new file mode 100644
index 00000000..ea2a030c
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/ShortNumberUtil.java
@@ -0,0 +1,77 @@
+/*
+ * Copyright (C) 2011 The Libphonenumber Authors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.i18n.phonenumbers;
+
+import com.android.i18n.phonenumbers.Phonemetadata.PhoneNumberDesc;
+
+import java.util.regex.Pattern;
+
+/*
+ * Utility for international short phone numbers, such as short codes and emergency numbers. Note
+ * most commercial short numbers are not handled here, but by the PhoneNumberUtil.
+ *
+ * @author Shaopeng Jia
+ */
+public class ShortNumberUtil {
+
+ private final PhoneNumberUtil phoneUtil;
+
+ public ShortNumberUtil() {
+ phoneUtil = PhoneNumberUtil.getInstance();
+ }
+
+ // @VisibleForTesting
+ ShortNumberUtil(PhoneNumberUtil util) {
+ phoneUtil = util;
+ }
+
+ /**
+ * Returns true if the number might be used to connect to an emergency service in the given
+ * region.
+ *
+ * This method takes into account cases where the number might contain formatting, or might have
+ * additional digits appended (when it is okay to do that in the region specified).
+ *
+ * @param number the phone number to test
+ * @param regionCode the region where the phone number is being dialed
+ * @return if the number might be used to connect to an emergency service in the given region.
+ */
+ public boolean connectsToEmergencyNumber(String number, String regionCode) {
+ 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
+ // code before emergency numbers (e.g. +1911) works, but later, if that proves to work, we can
+ // 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;
+ }
+ }
+
+ // Check the prefix against possible emergency numbers for this region.
+ return 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 d0069f1a..1a3a4b18 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 2f5199be..8a62bd60 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 2f543e19..db146bc9 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 0120a238..5bef81bc 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 ce1d5089..5f23860a 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 2bdd9da8..de0fb778 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 15cbd779..3c865860 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 7d0f2a2f..39937946 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 e2aa056d..25aab568 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 13a52853..c975f997 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 a4f97938..e4208162 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 76f517cb..221eccba 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 6cdcf99a..92a4e32d 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 0b96301c..dbb500d9 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 5e694689..de31efe8 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 8abd0035..fd7987da 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 8b6224b4..6b536c7c 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 c5e36f65..b3dfcd3e 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_BB b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BB
index 553a1de1..982cff99 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BB
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BB
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 f335c393..e63abb13 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 24636604..3e9ed8fb 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 9cd27d8a..635f743d 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 f3645fd9..81fa78b0 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 9e7b9c85..3f39c962 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 2b67b002..db38b2c1 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 e5ef1ec5..abe93770 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 b410d02e..dede3091 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 c50e099a..18c09454 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 46b0177a..38d82488 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 8e8857c7..634f143f 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 9aa4d28e..71dc64bd 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 23bbf755..c6f960e8 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 139f181f..c0f93c59 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 641043db..cf095424 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 b07157e1..c2228e31 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 3e4f3716..e9bd308d 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_CA b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CA
index 396702d4..5bf386dc 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CA
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CA
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 948af634..515bcc46 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 4456d294..65cd03b4 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 eeb5eeb1..fb5a305c 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 6b809d41..3cab707f 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 1b520c31..46aa41a5 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 dadad8e7..bb771dc3 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 ce2a8ec3..168a085f 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 8fabf745..1422c5cb 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 5fb3c1fe..330fe3ad 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 697b08c5..70701d1a 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 e87ef011..d1491f4c 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 50905758..146a9db4 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 3d2e499b..c4da25e4 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 947e6608..70b16679 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 585d96a7..733e530a 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 fb374ed8..b6fd4b9f 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 43ec39e7..7e782e1d 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 87844f3a..1905b944 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 2978ffe4..9f941463 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 cbb0f4c5..79d8735f 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 8713673d..3829dafb 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_DO b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_DO
index c48d82cb..0305f76f 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_DO
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_DO
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 c3d52a0a..8cff69ef 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 6578ddde..7b7f5ec8 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 8387a3b1..b88d8c3e 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 a00edb4b..6d271358 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 5c256361..d6e0f9b7 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 c5717d0b..02af173c 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 6aacbc5f..4e73ea12 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 bd871b6d..865ca1a1 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 d123c006..965c7552 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 47e774d2..ff38f2cc 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 678e85d9..eceb9a2b 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 f6641dd5..cc4be13e 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 7a2adfd4..874194aa 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 800c4f2e..348b1ed0 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 d1ae7581..143ff4b2 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 ef111ddd..368a1051 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 9b0cc6e4..306b9a5e 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 b84bf203..7b2b581e 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 7d246864..f289a987 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 4e97d137..74ea830d 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_GI b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GI
index 66253312..7dcc9ff5 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GI
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GI
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 f50ade6e..654cd4ff 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 abef42bd..827c8b7c 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 c865a177..0d8cd8a5 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 fdce9528..05961ecb 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 2444a747..e18b8f50 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 2c4a8288..6f68892c 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 2f9f995a..a3fbe0fc 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 7cd77012..de49dfeb 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 9ca22998..3c9ee203 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 1636ed42..78cb16d6 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 89a9cff1..86b33570 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 8aa38571..fa77fd78 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 9766d562..f1f8c6c7 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 6ee3bd1e..105d95f3 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 98f85c9f..1ec5c7f1 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 c2d6738e..516d1910 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 bd1e9ed0..13f4b02f 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 f784b0f8..83505d57 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 ab78e3a3..c83da95a 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 8354c600..f934b5fc 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 7731fb8c..0e26ed9d 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 475492fe..eaf0102c 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 a5b3394e..3d6c9780 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 eb45cb46..fdfe70b4 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 da951bc4..ee1dc295 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 37dc706f..71003d31 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_JM b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_JM
index dce03a83..81be1e13 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_JM
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_JM
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 cc0d0913..2043332a 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 9b020a4f..d9097917 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 4c35cb29..ba366255 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 dc63e311..f9013e76 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 f88db2f2..b6d9b708 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 1b754cc3..f0140dfd 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 b6916497..9035f8f8 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 9045dfb2..091abf0a 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 aa771a1a..8bb92386 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 f74cb4db..331d1d81 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 e0df4268..2f5c5b22 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_KY b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KY
index 5bfc93e2..cfd26788 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KY
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KY
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KZ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KZ
index 06708a20..b129ff6d 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KZ
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KZ
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 7f78cb8e..45629317 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 f1dfbca3..67af442e 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 3239dd66..45c9fe74 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 e1d137c4..13efb94c 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 2b06a386..cacb5a22 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 dd7306bc..9094843e 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 e65316eb..e8210553 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 02ad948c..5bdabd4f 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 ef5e720a..2ed3fc25 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 80c3aa3d..b7a02eda 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 a3c60005..8988b9f3 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 dd0beb56..3bb35a04 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 1a80b905..66461fc1 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 0763f61a..56e6ac35 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 7cce9670..264ec570 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 2daec61e..e00abfa2 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 7eef113e..da2d7b2f 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 ec542a92..def092da 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 040a7919..945490b6 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 c7d6d187..a3cb55d7 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 fbe65bcd..2e6b5681 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 b96b7f9e..7ed10784 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 d0bb6aeb..cf9446c1 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 83c50af1..1f0249c3 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 889f6494..1e686cea 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 d4e34bc5..eadaab09 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 c6d5fe50..1db3c7b3 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 e4ef74a9..2d3ed91b 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 51ef9b2f..4eb65a23 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 7e2e0b3a..2e09171d 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 36fe6c98..a5096108 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 dc44efbc..05303660 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 35b8414d..1f293314 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 5128f4e7..c50b9246 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 5c54aa0e..0538f74b 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 6e857221..1a7d8a8e 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 62309e52..226b16f6 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 59991ff4..596dd70d 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 4e12b369..ac6597ea 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 95e956a8..b92feee5 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 f0a7b306..e395fbdd 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 cf7b46ed..5f3ef88f 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 e54df79c..18854559 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 65dd064a..870e517b 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 ac5a701f..571051f2 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 199e3c21..cd204814 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 a3ce6c10..9b733701 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 ad660fc2..981d0793 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 7c9e801c..40bbf584 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 f09ce4ce..f24e8e49 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 767f47ca..ec72d57d 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 cf6ad8d5..1ea186db 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 6b0027d5..7bfe2ad6 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 012f5b7d..51d56b3c 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 b91198c1..65f6ac53 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 ed7165b8..0901ad53 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 11146590..46a269f8 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 9c691cc9..187db1a7 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 f51d0d16..a8bd035e 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 628bd873..7bb927a7 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 da69ee29..a482873e 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 0a282a45..43593bb5 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 d45708ae..60f99b27 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 d3691b52..9dc55f33 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 189e57ff..1d1ade8a 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 22f3ec7a..4ca18677 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 a938bbf2..46619c2b 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 55247406..21df6666 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 95fa89ad..ca57e4c9 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 37871a15..609d732c 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 88513464..04170b56 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 6020eb31..731a1fbc 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 e928407b..b4ebc4bb 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 b9df92b7..b0c48574 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 aca19d3b..a8b4cabf 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 50b4e3a5..c5df50f0 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 5ab84328..b11e93aa 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 176add7a..3545cc3c 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 853bd408..933dca85 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 2db94507..02388680 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 a2150452..79f19dce 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 9a8a7ecb..da445dfd 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 695ef3f1..0ac6bba5 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_SY b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SY
index 858b5da1..0b8d63f3 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 b487a132..3cdd2847 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 0db93953..67ccd0f7 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 dc573d14..31a13541 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 924a8602..ee3bd808 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 119af7de..51e0a798 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 e6834072..974034ed 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_TK b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TK
index 83d8bfc1..849f1c7d 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TK
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TK
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 3e96e180..e971e040 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 b3b4ad8c..3c02452b 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 b4c07475..6043f2d0 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 256eebfa..aee32a7d 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 df54d356..eb2be549 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_TT b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TT
index a0239225..945011b4 100644
--- a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TT
+++ b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TT
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 973582a0..ab5424e7 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 08b41729..bfb6f6be 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 b5c29afd..1c800363 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 f74e132a..0ab8c47c 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 97fd6fbf..4b28889e 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 d6ac18f0..d83bd32d 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 ebf41e10..e214c259 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 05c68545..1d1f028a 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 0b7f9eed..96152e86 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 58174684..386be34e 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 1db71968..bfbe19ad 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 3c4a379d..215b7a54 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 3f93a897..bf3ab19b 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 6f2b378b..74ddd896 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 fe110d21..685bf497 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 f6b6c159..404da8ec 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 9022baaa..324ae99f 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 b18ec98b..43cba39d 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 ae7df495..088ad95c 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 b0369306..2a441893 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 5e0253df..a1272430 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 45b6bc1d..dfe9fde6 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/src/com/android/i18n/phonenumbers/geocoding/AreaCodeMap.java b/java/src/com/android/i18n/phonenumbers/geocoding/AreaCodeMap.java
index cab8818b..c22bde5c 100644
--- a/java/src/com/android/i18n/phonenumbers/geocoding/AreaCodeMap.java
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/AreaCodeMap.java
@@ -1,5 +1,5 @@
/*
- * Copyright (C) 2011 Google Inc.
+ * Copyright (C) 2011 The Libphonenumber Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -129,12 +129,15 @@ public class AreaCodeMap implements Externalizable {
* Supports Java Serialization.
*/
public void writeExternal(ObjectOutput objectOutput) throws IOException {
- objectOutput.writeBoolean(areaCodeMapStorage.isFlyweight());
+ objectOutput.writeBoolean(areaCodeMapStorage instanceof FlyweightMapStorage);
areaCodeMapStorage.writeExternal(objectOutput);
}
/**
- * Returns the description of the geographical area the {@code number} corresponds to.
+ * Returns the description of the geographical area the {@code number} corresponds to. This method
+ * distinguishes the case of an invalid prefix and a prefix for which the name is not available in
+ * the current language. If the description is not available in the current language an empty
+ * string is returned. If no description was found for the provided number, null is returned.
*
* @param number the phone number to look up
* @return the description of the geographical area
@@ -142,7 +145,7 @@ public class AreaCodeMap implements Externalizable {
String lookup(PhoneNumber number) {
int numOfEntries = areaCodeMapStorage.getNumOfEntries();
if (numOfEntries == 0) {
- return "";
+ return null;
}
long phonePrefix =
Long.parseLong(number.getCountryCode() + phoneUtil.getNationalSignificantNumber(number));
@@ -156,7 +159,7 @@ public class AreaCodeMap implements Externalizable {
}
currentIndex = binarySearch(0, currentIndex, phonePrefix);
if (currentIndex < 0) {
- return "";
+ return null;
}
int currentPrefix = areaCodeMapStorage.getPrefix(currentIndex);
if (phonePrefix == currentPrefix) {
@@ -164,7 +167,7 @@ public class AreaCodeMap implements Externalizable {
}
currentSetOfLengths = currentSetOfLengths.headSet(possibleLength);
}
- return "";
+ return null;
}
/**
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/AreaCodeMapStorageStrategy.java b/java/src/com/android/i18n/phonenumbers/geocoding/AreaCodeMapStorageStrategy.java
index 2d88c122..c91f5d1c 100644
--- a/java/src/com/android/i18n/phonenumbers/geocoding/AreaCodeMapStorageStrategy.java
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/AreaCodeMapStorageStrategy.java
@@ -1,5 +1,5 @@
/*
- * Copyright (C) 2011 Google Inc.
+ * Copyright (C) 2011 The Libphonenumber Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -29,35 +29,10 @@ import java.util.TreeSet;
*
* @author Philippe Liard
*/
-// @VisibleForTesting
abstract class AreaCodeMapStorageStrategy {
protected int numOfEntries = 0;
protected final TreeSet<Integer> possibleLengths = new TreeSet<Integer>();
- public AreaCodeMapStorageStrategy() {}
-
- /**
- * Returns whether the underlying implementation of this abstract class is flyweight.
- * It is expected to be flyweight if it implements the {@code FlyweightMapStorage} class.
- *
- * @return whether the underlying implementation of this abstract class is flyweight
- */
- public abstract boolean isFlyweight();
-
- /**
- * @return the number of entries contained in the area code map
- */
- public int getNumOfEntries() {
- return numOfEntries;
- }
-
- /**
- * @return the set containing the possible lengths of prefixes
- */
- public TreeSet<Integer> getPossibleLengths() {
- return possibleLengths;
- }
-
/**
* Gets the phone number prefix located at the provided {@code index}.
*
@@ -68,7 +43,8 @@ abstract class AreaCodeMapStorageStrategy {
/**
* Gets the description corresponding to the phone number prefix located at the provided {@code
- * index}.
+ * index}. If the description is not available in the current language an empty string is
+ * returned.
*
* @param index the index of the phone number prefix that needs to be returned
* @return the description corresponding to the phone number prefix at the provided index
@@ -102,16 +78,30 @@ abstract class AreaCodeMapStorageStrategy {
*/
public abstract void writeExternal(ObjectOutput objectOutput) throws IOException;
+ /**
+ * @return the number of entries contained in the area code map
+ */
+ public int getNumOfEntries() {
+ return numOfEntries;
+ }
+
+ /**
+ * @return the set containing the possible lengths of prefixes
+ */
+ public TreeSet<Integer> getPossibleLengths() {
+ return possibleLengths;
+ }
+
@Override
public String toString() {
StringBuilder output = new StringBuilder();
int numOfEntries = getNumOfEntries();
for (int i = 0; i < numOfEntries; i++) {
- output.append(getPrefix(i));
- output.append("|");
- output.append(getDescription(i));
- output.append("\n");
+ output.append(getPrefix(i))
+ .append("|")
+ .append(getDescription(i))
+ .append("\n");
}
return output.toString();
}
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/DefaultMapStorage.java b/java/src/com/android/i18n/phonenumbers/geocoding/DefaultMapStorage.java
index 00f40fd0..8cae4c7f 100644
--- a/java/src/com/android/i18n/phonenumbers/geocoding/DefaultMapStorage.java
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/DefaultMapStorage.java
@@ -1,5 +1,5 @@
/*
- * Copyright (C) 2011 Google Inc.
+ * Copyright (C) 2011 The Libphonenumber Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -36,11 +36,6 @@ class DefaultMapStorage extends AreaCodeMapStorageStrategy {
private String[] descriptions;
@Override
- public boolean isFlyweight() {
- return false;
- }
-
- @Override
public int getPrefix(int index) {
return phoneNumberPrefixes[index];
}
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/FlyweightMapStorage.java b/java/src/com/android/i18n/phonenumbers/geocoding/FlyweightMapStorage.java
index 453856fe..f0b27bb7 100644
--- a/java/src/com/android/i18n/phonenumbers/geocoding/FlyweightMapStorage.java
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/FlyweightMapStorage.java
@@ -1,5 +1,5 @@
/*
- * Copyright (C) 2011 Google Inc.
+ * Copyright (C) 2011 The Libphonenumber Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -21,7 +21,6 @@ import java.io.ObjectInput;
import java.io.ObjectOutput;
import java.nio.ByteBuffer;
import java.util.Arrays;
-import java.util.Comparator;
import java.util.Map.Entry;
import java.util.SortedMap;
import java.util.SortedSet;
@@ -34,10 +33,10 @@ import java.util.TreeSet;
*
* @author Philippe Liard
*/
-class FlyweightMapStorage extends AreaCodeMapStorageStrategy {
+final class FlyweightMapStorage extends AreaCodeMapStorageStrategy {
// Size of short and integer types in bytes.
- private static final int SHORT_SIZE = Short.SIZE / 8;
- private static final int INT_SIZE = Integer.SIZE / 8;
+ private static final int SHORT_NUM_BYTES = Short.SIZE / 8;
+ private static final int INT_NUM_BYTES = Integer.SIZE / 8;
// The number of bytes used to store a phone number prefix.
private int prefixSizeInBytes;
@@ -51,120 +50,60 @@ class FlyweightMapStorage extends AreaCodeMapStorageStrategy {
// Sorted string array of unique description strings.
private String[] descriptionPool;
- public FlyweightMapStorage() {}
-
- @Override
- public boolean isFlyweight() {
- return true;
- }
-
- /**
- * Gets the minimum number of bytes that can be used to store the provided {@code value}.
- */
- private static int getOptimalNumberOfBytesForValue(int value) {
- return value <= Short.MAX_VALUE ? SHORT_SIZE : INT_SIZE;
- }
-
- /**
- * Stores the provided {@code value} to the provided byte {@code buffer} at the specified {@code
- * index} using the provided {@code wordSize} in bytes. Note that only integer and short sizes are
- * supported.
- *
- * @param buffer the byte buffer to which the value is stored
- * @param wordSize the number of bytes used to store the provided value
- * @param index the index to which the value is stored
- * @param value the value that is stored assuming it does not require more than the specified
- * number of bytes.
- */
- private static void storeWordInBuffer(ByteBuffer buffer, int wordSize, int index, int value) {
- index *= wordSize;
-
- if (wordSize == SHORT_SIZE) {
- buffer.putShort(index, (short) value);
- } else {
- buffer.putInt(index, value);
- }
- }
-
- /**
- * Reads the {@code value} at the specified {@code index} from the provided byte {@code buffer}.
- * Note that only integer and short sizes are supported.
- *
- * @param buffer the byte buffer from which the value is read
- * @param wordSize the number of bytes used to store the value
- * @param index the index where the value is read from
- *
- * @return the value read from the buffer
- */
- private static int readWordFromBuffer(ByteBuffer buffer, int wordSize, int index) {
- index *= wordSize;
- return wordSize == SHORT_SIZE ? buffer.getShort(index) : buffer.getInt(index);
- }
-
@Override
public int getPrefix(int index) {
return readWordFromBuffer(phoneNumberPrefixes, prefixSizeInBytes, index);
}
+ /**
+ * This implementation returns the same string (same identity) when called for multiple indexes
+ * corresponding to prefixes that have the same description.
+ */
@Override
public String getDescription(int index) {
- return descriptionPool[readWordFromBuffer(descriptionIndexes, descIndexSizeInBytes, index)];
+ int indexInDescriptionPool =
+ readWordFromBuffer(descriptionIndexes, descIndexSizeInBytes, index);
+ return descriptionPool[indexInDescriptionPool];
}
@Override
- public void readFromSortedMap(SortedMap<Integer, String> sortedAreaCodeMap) {
+ public void readFromSortedMap(SortedMap<Integer, String> areaCodeMap) {
SortedSet<String> descriptionsSet = new TreeSet<String>();
- numOfEntries = sortedAreaCodeMap.size();
- prefixSizeInBytes = getOptimalNumberOfBytesForValue(sortedAreaCodeMap.lastKey());
+ numOfEntries = areaCodeMap.size();
+ prefixSizeInBytes = getOptimalNumberOfBytesForValue(areaCodeMap.lastKey());
phoneNumberPrefixes = ByteBuffer.allocate(numOfEntries * prefixSizeInBytes);
// Fill the phone number prefixes byte buffer, the set of possible lengths of prefixes and the
// description set.
int index = 0;
- for (Entry<Integer, String> entry : sortedAreaCodeMap.entrySet()) {
+ for (Entry<Integer, String> entry : areaCodeMap.entrySet()) {
int prefix = entry.getKey();
- storeWordInBuffer(phoneNumberPrefixes, prefixSizeInBytes, index++, prefix);
+ storeWordInBuffer(phoneNumberPrefixes, prefixSizeInBytes, index, prefix);
possibleLengths.add((int) Math.log10(prefix) + 1);
descriptionsSet.add(entry.getValue());
+ ++index;
}
+ createDescriptionPool(descriptionsSet, areaCodeMap);
+ }
- // Create the description pool.
+ /**
+ * Creates the description pool from the provided set of string descriptions and area code map.
+ */
+ private void createDescriptionPool(SortedSet<String> descriptionsSet,
+ SortedMap<Integer, String> areaCodeMap) {
descIndexSizeInBytes = getOptimalNumberOfBytesForValue(descriptionsSet.size() - 1);
descriptionIndexes = ByteBuffer.allocate(numOfEntries * descIndexSizeInBytes);
descriptionPool = new String[descriptionsSet.size()];
descriptionsSet.toArray(descriptionPool);
// Map the phone number prefixes to the descriptions.
- index = 0;
+ int index = 0;
for (int i = 0; i < numOfEntries; i++) {
int prefix = readWordFromBuffer(phoneNumberPrefixes, prefixSizeInBytes, i);
- String description = sortedAreaCodeMap.get(prefix);
- int positionInDescriptionPool =
- Arrays.binarySearch(descriptionPool, description, new Comparator<String>() {
- public int compare(String o1, String o2) { return o1.compareTo(o2); }
- });
- storeWordInBuffer(descriptionIndexes, descIndexSizeInBytes, index++,
- positionInDescriptionPool);
- }
- }
-
- /**
- * Stores a value which is read from the provided {@code objectInput} to the provided byte {@code
- * buffer} at the specified {@code index}.
- *
- * @param objectInput the object input stream from which the value is read
- * @param wordSize the number of bytes used to store the value read from the stream
- * @param outputBuffer the byte buffer to which the value is stored
- * @param index the index where the value is stored in the buffer
- * @throws IOException if an error occurred reading from the object input stream
- */
- private static void readExternalWord(ObjectInput objectInput, int wordSize,
- ByteBuffer outputBuffer, int index) throws IOException {
- index *= wordSize;
- if (wordSize == SHORT_SIZE) {
- outputBuffer.putShort(index, objectInput.readShort());
- } else {
- outputBuffer.putInt(index, objectInput.readInt());
+ String description = areaCodeMap.get(prefix);
+ int positionInDescriptionPool = Arrays.binarySearch(descriptionPool, description);
+ storeWordInBuffer(descriptionIndexes, descIndexSizeInBytes, index, positionInDescriptionPool);
+ ++index;
}
}
@@ -173,12 +112,14 @@ class FlyweightMapStorage extends AreaCodeMapStorageStrategy {
// Read binary words sizes.
prefixSizeInBytes = objectInput.readInt();
descIndexSizeInBytes = objectInput.readInt();
+
// Read possible lengths.
int sizeOfLengths = objectInput.readInt();
possibleLengths.clear();
for (int i = 0; i < sizeOfLengths; i++) {
possibleLengths.add(objectInput.readInt());
}
+
// Read description pool size.
int descriptionPoolSize = objectInput.readInt();
// Read description pool.
@@ -189,10 +130,17 @@ class FlyweightMapStorage extends AreaCodeMapStorageStrategy {
String description = objectInput.readUTF();
descriptionPool[i] = description;
}
- // Read entries.
+ readEntries(objectInput);
+ }
+
+ /**
+ * Reads the area code entries from the provided input stream and stores them to the internal byte
+ * buffers.
+ */
+ private void readEntries(ObjectInput objectInput) throws IOException {
numOfEntries = objectInput.readInt();
if (phoneNumberPrefixes == null || phoneNumberPrefixes.capacity() < numOfEntries) {
- phoneNumberPrefixes = ByteBuffer.allocate(numOfEntries * prefixSizeInBytes);
+ phoneNumberPrefixes = ByteBuffer.allocate(numOfEntries * prefixSizeInBytes);
}
if (descriptionIndexes == null || descriptionIndexes.capacity() < numOfEntries) {
descriptionIndexes = ByteBuffer.allocate(numOfEntries * descIndexSizeInBytes);
@@ -203,43 +151,26 @@ class FlyweightMapStorage extends AreaCodeMapStorageStrategy {
}
}
- /**
- * Writes the value read from the provided byte {@code buffer} at the specified {@code index} to
- * the provided {@code objectOutput}.
- *
- * @param objectOutput the object output stream to which the value is written
- * @param wordSize the number of bytes used to store the value
- * @param inputBuffer the byte buffer from which the value is read
- * @param index the index of the value in the the byte buffer
- * @throws IOException if an error occurred writing to the provided object output stream
- */
- private static void writeExternalWord(ObjectOutput objectOutput, int wordSize,
- ByteBuffer inputBuffer, int index) throws IOException {
- index *= wordSize;
- if (wordSize == SHORT_SIZE) {
- objectOutput.writeShort(inputBuffer.getShort(index));
- } else {
- objectOutput.writeInt(inputBuffer.getInt(index));
- }
- }
-
@Override
public void writeExternal(ObjectOutput objectOutput) throws IOException {
// Write binary words sizes.
objectOutput.writeInt(prefixSizeInBytes);
objectOutput.writeInt(descIndexSizeInBytes);
+
// Write possible lengths.
int sizeOfLengths = possibleLengths.size();
objectOutput.writeInt(sizeOfLengths);
for (Integer length : possibleLengths) {
objectOutput.writeInt(length);
}
+
// Write description pool size.
objectOutput.writeInt(descriptionPool.length);
// Write description pool.
for (String description : descriptionPool) {
objectOutput.writeUTF(description);
}
+
// Write entries.
objectOutput.writeInt(numOfEntries);
for (int i = 0; i < numOfEntries; i++) {
@@ -247,4 +178,86 @@ class FlyweightMapStorage extends AreaCodeMapStorageStrategy {
writeExternalWord(objectOutput, descIndexSizeInBytes, descriptionIndexes, i);
}
}
+
+ /**
+ * Gets the minimum number of bytes that can be used to store the provided {@code value}.
+ */
+ private static int getOptimalNumberOfBytesForValue(int value) {
+ return value <= Short.MAX_VALUE ? SHORT_NUM_BYTES : INT_NUM_BYTES;
+ }
+
+ /**
+ * Stores a value which is read from the provided {@code objectInput} to the provided byte {@code
+ * buffer} at the specified {@code index}.
+ *
+ * @param objectInput the object input stream from which the value is read
+ * @param wordSize the number of bytes used to store the value read from the stream
+ * @param outputBuffer the byte buffer to which the value is stored
+ * @param index the index where the value is stored in the buffer
+ * @throws IOException if an error occurred reading from the object input stream
+ */
+ private static void readExternalWord(ObjectInput objectInput, int wordSize,
+ ByteBuffer outputBuffer, int index) throws IOException {
+ int wordIndex = index * wordSize;
+ if (wordSize == SHORT_NUM_BYTES) {
+ outputBuffer.putShort(wordIndex, objectInput.readShort());
+ } else {
+ outputBuffer.putInt(wordIndex, objectInput.readInt());
+ }
+ }
+
+ /**
+ * Writes the value read from the provided byte {@code buffer} at the specified {@code index} to
+ * the provided {@code objectOutput}.
+ *
+ * @param objectOutput the object output stream to which the value is written
+ * @param wordSize the number of bytes used to store the value
+ * @param inputBuffer the byte buffer from which the value is read
+ * @param index the index of the value in the the byte buffer
+ * @throws IOException if an error occurred writing to the provided object output stream
+ */
+ private static void writeExternalWord(ObjectOutput objectOutput, int wordSize,
+ ByteBuffer inputBuffer, int index) throws IOException {
+ int wordIndex = index * wordSize;
+ if (wordSize == SHORT_NUM_BYTES) {
+ objectOutput.writeShort(inputBuffer.getShort(wordIndex));
+ } else {
+ objectOutput.writeInt(inputBuffer.getInt(wordIndex));
+ }
+ }
+
+ /**
+ * Reads the {@code value} at the specified {@code index} from the provided byte {@code buffer}.
+ * Note that only integer and short sizes are supported.
+ *
+ * @param buffer the byte buffer from which the value is read
+ * @param wordSize the number of bytes used to store the value
+ * @param index the index where the value is read from
+ *
+ * @return the value read from the buffer
+ */
+ private static int readWordFromBuffer(ByteBuffer buffer, int wordSize, int index) {
+ int wordIndex = index * wordSize;
+ return wordSize == SHORT_NUM_BYTES ? buffer.getShort(wordIndex) : buffer.getInt(wordIndex);
+ }
+
+ /**
+ * Stores the provided {@code value} to the provided byte {@code buffer} at the specified {@code
+ * index} using the provided {@code wordSize} in bytes. Note that only integer and short sizes are
+ * supported.
+ *
+ * @param buffer the byte buffer to which the value is stored
+ * @param wordSize the number of bytes used to store the provided value
+ * @param index the index to which the value is stored
+ * @param value the value that is stored assuming it does not require more than the specified
+ * number of bytes.
+ */
+ private static void storeWordInBuffer(ByteBuffer buffer, int wordSize, int index, int value) {
+ int wordIndex = index * wordSize;
+ if (wordSize == SHORT_NUM_BYTES) {
+ buffer.putShort(wordIndex, (short) value);
+ } else {
+ buffer.putInt(wordIndex, value);
+ }
+ }
}
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/MappingFileProvider.java b/java/src/com/android/i18n/phonenumbers/geocoding/MappingFileProvider.java
index 2c294c42..481655a2 100644
--- a/java/src/com/android/i18n/phonenumbers/geocoding/MappingFileProvider.java
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/MappingFileProvider.java
@@ -1,5 +1,5 @@
/*
- * Copyright (C) 2011 Google Inc.
+ * Copyright (C) 2011 The Libphonenumber Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/PhoneNumberOfflineGeocoder.java b/java/src/com/android/i18n/phonenumbers/geocoding/PhoneNumberOfflineGeocoder.java
index a577e105..1845f289 100644
--- a/java/src/com/android/i18n/phonenumbers/geocoding/PhoneNumberOfflineGeocoder.java
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/PhoneNumberOfflineGeocoder.java
@@ -1,5 +1,5 @@
/*
- * Copyright (C) 2011 Google Inc.
+ * Copyright (C) 2011 The Libphonenumber Authors
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -71,8 +71,8 @@ public class PhoneNumberOfflineGeocoder {
}
private AreaCodeMap getPhonePrefixDescriptions(
- int countryCallingCode, String language, String script, String region) {
- String fileName = mappingFileProvider.getFileName(countryCallingCode, language, script, region);
+ int prefixMapKey, String language, String script, String region) {
+ String fileName = mappingFileProvider.getFileName(prefixMapKey, language, script, region);
if (fileName.length() == 0) {
return null;
}
@@ -98,7 +98,7 @@ public class PhoneNumberOfflineGeocoder {
}
}
- private void close(InputStream in) {
+ private static void close(InputStream in) {
if (in != null) {
try {
in.close();
@@ -193,6 +193,25 @@ public class PhoneNumberOfflineGeocoder {
countryCallingCode : (1000 + (int) (number.getNationalNumber() / 10000000));
AreaCodeMap phonePrefixDescriptions =
getPhonePrefixDescriptions(phonePrefix, lang, script, region);
- return (phonePrefixDescriptions != null) ? phonePrefixDescriptions.lookup(number) : "";
+ String description = (phonePrefixDescriptions != null)
+ ? phonePrefixDescriptions.lookup(number)
+ : null;
+ // When a location is not available in the requested language, fall back to English.
+ if ((description == null || description.length() == 0) && mayFallBackToEnglish(lang)) {
+ AreaCodeMap defaultMap = getPhonePrefixDescriptions(phonePrefix, "en", "", "");
+ if (defaultMap == null) {
+ return "";
+ }
+ description = defaultMap.lookup(number);
+ }
+ return description != null ? description : "";
+ }
+
+ private boolean mayFallBackToEnglish(String lang) {
+ // Don't fall back to English if the requested language is among the following:
+ // - Chinese
+ // - Japanese
+ // - Korean
+ return !lang.equals("zh") && !lang.equals("ja") && !lang.equals("ko");
}
}
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/20_en b/java/src/com/android/i18n/phonenumbers/geocoding/data/20_en
new file mode 100644
index 00000000..76b227e6
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/20_en
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/212_en b/java/src/com/android/i18n/phonenumbers/geocoding/data/212_en
new file mode 100644
index 00000000..ad7f9448
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/212_en
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/212_fr b/java/src/com/android/i18n/phonenumbers/geocoding/data/212_fr
new file mode 100644
index 00000000..9016b0d0
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/212_fr
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/213_en b/java/src/com/android/i18n/phonenumbers/geocoding/data/213_en
new file mode 100644
index 00000000..7a1379ca
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/213_en
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/216_en b/java/src/com/android/i18n/phonenumbers/geocoding/data/216_en
new file mode 100644
index 00000000..9af2d13e
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/216_en
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/220_en b/java/src/com/android/i18n/phonenumbers/geocoding/data/220_en
new file mode 100644
index 00000000..29941e6b
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/220_en
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/221_en b/java/src/com/android/i18n/phonenumbers/geocoding/data/221_en
new file mode 100644
index 00000000..b876d301
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/221_en
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/222_en b/java/src/com/android/i18n/phonenumbers/geocoding/data/222_en
new file mode 100644
index 00000000..7b4ec365
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/222_en
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/222_fr b/java/src/com/android/i18n/phonenumbers/geocoding/data/222_fr
new file mode 100644
index 00000000..ceb08709
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/222_fr
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/224_en b/java/src/com/android/i18n/phonenumbers/geocoding/data/224_en
new file mode 100644
index 00000000..e63507da
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/224_en
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/225_en b/java/src/com/android/i18n/phonenumbers/geocoding/data/225_en
new file mode 100644
index 00000000..e290e50a
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/225_en
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/225_fr b/java/src/com/android/i18n/phonenumbers/geocoding/data/225_fr
new file mode 100644
index 00000000..e290e50a
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/225_fr
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/226_en b/java/src/com/android/i18n/phonenumbers/geocoding/data/226_en
new file mode 100644
index 00000000..ed31886e
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/226_en
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/228_en b/java/src/com/android/i18n/phonenumbers/geocoding/data/228_en
new file mode 100644
index 00000000..192a5d76
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/228_en
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/228_es b/java/src/com/android/i18n/phonenumbers/geocoding/data/228_es
new file mode 100644
index 00000000..7c124ef8
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/228_es
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/228_fr b/java/src/com/android/i18n/phonenumbers/geocoding/data/228_fr
new file mode 100644
index 00000000..884ca420
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/228_fr
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/229_en b/java/src/com/android/i18n/phonenumbers/geocoding/data/229_en
new file mode 100644
index 00000000..21b5b826
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/229_en
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/229_fr b/java/src/com/android/i18n/phonenumbers/geocoding/data/229_fr
new file mode 100644
index 00000000..6002a86e
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/229_fr
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/230_en b/java/src/com/android/i18n/phonenumbers/geocoding/data/230_en
new file mode 100644
index 00000000..3cf32590
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/230_en
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/230_es b/java/src/com/android/i18n/phonenumbers/geocoding/data/230_es
new file mode 100644
index 00000000..49f20509
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/230_es
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/230_fr b/java/src/com/android/i18n/phonenumbers/geocoding/data/230_fr
new file mode 100644
index 00000000..bf51072e
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/230_fr
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/232_en b/java/src/com/android/i18n/phonenumbers/geocoding/data/232_en
new file mode 100644
index 00000000..9cb39963
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/232_en
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/233_en b/java/src/com/android/i18n/phonenumbers/geocoding/data/233_en
new file mode 100644
index 00000000..aca19278
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/233_en
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/238_en b/java/src/com/android/i18n/phonenumbers/geocoding/data/238_en
new file mode 100644
index 00000000..092d85a4
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/238_en
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/238_pt b/java/src/com/android/i18n/phonenumbers/geocoding/data/238_pt
new file mode 100644
index 00000000..092d85a4
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/238_pt
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/239_en b/java/src/com/android/i18n/phonenumbers/geocoding/data/239_en
new file mode 100644
index 00000000..37a5e898
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/239_en
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/239_pt b/java/src/com/android/i18n/phonenumbers/geocoding/data/239_pt
new file mode 100644
index 00000000..8610e0ae
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/239_pt
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/242_en b/java/src/com/android/i18n/phonenumbers/geocoding/data/242_en
new file mode 100644
index 00000000..86c316fa
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/242_en
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/242_fr b/java/src/com/android/i18n/phonenumbers/geocoding/data/242_fr
new file mode 100644
index 00000000..2ad2a1a1
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/242_fr
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/243_en b/java/src/com/android/i18n/phonenumbers/geocoding/data/243_en
new file mode 100644
index 00000000..14b51a0f
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/243_en
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/243_fr b/java/src/com/android/i18n/phonenumbers/geocoding/data/243_fr
new file mode 100644
index 00000000..ac48d421
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/243_fr
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/244_en b/java/src/com/android/i18n/phonenumbers/geocoding/data/244_en
new file mode 100644
index 00000000..59c00b9d
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/244_en
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/244_pt b/java/src/com/android/i18n/phonenumbers/geocoding/data/244_pt
new file mode 100644
index 00000000..34cf12b9
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/244_pt
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/245_en b/java/src/com/android/i18n/phonenumbers/geocoding/data/245_en
new file mode 100644
index 00000000..2738fe8b
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/245_en
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/245_pt b/java/src/com/android/i18n/phonenumbers/geocoding/data/245_pt
new file mode 100644
index 00000000..2738fe8b
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/245_pt
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/247_en b/java/src/com/android/i18n/phonenumbers/geocoding/data/247_en
new file mode 100644
index 00000000..259944a0
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/247_en
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/249_en b/java/src/com/android/i18n/phonenumbers/geocoding/data/249_en
new file mode 100644
index 00000000..d605df87
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/249_en
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/251_en b/java/src/com/android/i18n/phonenumbers/geocoding/data/251_en
new file mode 100644
index 00000000..e389d1c3
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/251_en
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/252_en b/java/src/com/android/i18n/phonenumbers/geocoding/data/252_en
new file mode 100644
index 00000000..241ed680
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/252_en
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/254_en b/java/src/com/android/i18n/phonenumbers/geocoding/data/254_en
new file mode 100644
index 00000000..b21858b0
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/254_en
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/256_en b/java/src/com/android/i18n/phonenumbers/geocoding/data/256_en
new file mode 100644
index 00000000..6043317b
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/256_en
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/258_en b/java/src/com/android/i18n/phonenumbers/geocoding/data/258_en
new file mode 100644
index 00000000..6f11df70
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/258_en
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/258_pt b/java/src/com/android/i18n/phonenumbers/geocoding/data/258_pt
new file mode 100644
index 00000000..18ddf2e4
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/258_pt
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/260_en b/java/src/com/android/i18n/phonenumbers/geocoding/data/260_en
new file mode 100644
index 00000000..b469b168
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/260_en
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/261_en b/java/src/com/android/i18n/phonenumbers/geocoding/data/261_en
new file mode 100644
index 00000000..af8affbf
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/261_en
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/263_en b/java/src/com/android/i18n/phonenumbers/geocoding/data/263_en
new file mode 100644
index 00000000..7ec8339e
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/263_en
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/264_en b/java/src/com/android/i18n/phonenumbers/geocoding/data/264_en
new file mode 100644
index 00000000..ef92fe51
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/264_en
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/266_en b/java/src/com/android/i18n/phonenumbers/geocoding/data/266_en
new file mode 100644
index 00000000..3fc9c6f4
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/266_en
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/267_en b/java/src/com/android/i18n/phonenumbers/geocoding/data/267_en
new file mode 100644
index 00000000..4c52bd27
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/267_en
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/268_en b/java/src/com/android/i18n/phonenumbers/geocoding/data/268_en
new file mode 100644
index 00000000..16067ff6
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/268_en
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/269_en b/java/src/com/android/i18n/phonenumbers/geocoding/data/269_en
new file mode 100644
index 00000000..bbc053b0
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/269_en
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/269_fr b/java/src/com/android/i18n/phonenumbers/geocoding/data/269_fr
new file mode 100644
index 00000000..bbc053b0
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/269_fr
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/27_en b/java/src/com/android/i18n/phonenumbers/geocoding/data/27_en
new file mode 100644
index 00000000..c86a27c7
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/27_en
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/290_en b/java/src/com/android/i18n/phonenumbers/geocoding/data/290_en
new file mode 100644
index 00000000..b65865d7
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/290_en
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/290_fr b/java/src/com/android/i18n/phonenumbers/geocoding/data/290_fr
new file mode 100644
index 00000000..a9df7876
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/290_fr
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/299_en b/java/src/com/android/i18n/phonenumbers/geocoding/data/299_en
new file mode 100644
index 00000000..2e0fee59
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/299_en
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/30_el b/java/src/com/android/i18n/phonenumbers/geocoding/data/30_el
new file mode 100644
index 00000000..3ae0b10c
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/30_el
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/30_en b/java/src/com/android/i18n/phonenumbers/geocoding/data/30_en
new file mode 100644
index 00000000..82115065
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/30_en
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/31_en b/java/src/com/android/i18n/phonenumbers/geocoding/data/31_en
new file mode 100644
index 00000000..7565cac2
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/31_en
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/31_nl b/java/src/com/android/i18n/phonenumbers/geocoding/data/31_nl
index c1807c8a..78768ba4 100644
--- a/java/src/com/android/i18n/phonenumbers/geocoding/data/31_nl
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/31_nl
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/33_en b/java/src/com/android/i18n/phonenumbers/geocoding/data/33_en
new file mode 100644
index 00000000..7e9655fc
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/33_en
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/33_fr b/java/src/com/android/i18n/phonenumbers/geocoding/data/33_fr
index c18f305f..85f2c6b5 100644
--- a/java/src/com/android/i18n/phonenumbers/geocoding/data/33_fr
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/33_fr
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/34_en b/java/src/com/android/i18n/phonenumbers/geocoding/data/34_en
new file mode 100644
index 00000000..3ec6b10a
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/34_en
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/34_es b/java/src/com/android/i18n/phonenumbers/geocoding/data/34_es
index e4719caa..749b1621 100644
--- a/java/src/com/android/i18n/phonenumbers/geocoding/data/34_es
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/34_es
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/351_en b/java/src/com/android/i18n/phonenumbers/geocoding/data/351_en
new file mode 100644
index 00000000..61f0da1e
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/351_en
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/351_pt b/java/src/com/android/i18n/phonenumbers/geocoding/data/351_pt
index 04dc74ea..eb08045e 100644
--- a/java/src/com/android/i18n/phonenumbers/geocoding/data/351_pt
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/351_pt
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/352_de b/java/src/com/android/i18n/phonenumbers/geocoding/data/352_de
new file mode 100644
index 00000000..d20ebcaa
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/352_de
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/352_en b/java/src/com/android/i18n/phonenumbers/geocoding/data/352_en
new file mode 100644
index 00000000..e510e7b7
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/352_en
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/354_en b/java/src/com/android/i18n/phonenumbers/geocoding/data/354_en
new file mode 100644
index 00000000..2e85aa2a
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/354_en
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/355_en b/java/src/com/android/i18n/phonenumbers/geocoding/data/355_en
new file mode 100644
index 00000000..b903bcdb
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/355_en
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/358_en b/java/src/com/android/i18n/phonenumbers/geocoding/data/358_en
new file mode 100644
index 00000000..3e9c6c30
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/358_en
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/358_fi b/java/src/com/android/i18n/phonenumbers/geocoding/data/358_fi
new file mode 100644
index 00000000..3824cfb6
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/358_fi
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/358_se b/java/src/com/android/i18n/phonenumbers/geocoding/data/358_se
new file mode 100644
index 00000000..3c497609
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/358_se
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/36_en b/java/src/com/android/i18n/phonenumbers/geocoding/data/36_en
new file mode 100644
index 00000000..d9f2a718
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/36_en
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/36_hu b/java/src/com/android/i18n/phonenumbers/geocoding/data/36_hu
new file mode 100644
index 00000000..6eaf1515
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/36_hu
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/370_en b/java/src/com/android/i18n/phonenumbers/geocoding/data/370_en
new file mode 100644
index 00000000..52b47bd3
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/370_en
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/371_en b/java/src/com/android/i18n/phonenumbers/geocoding/data/371_en
new file mode 100644
index 00000000..5273f0e7
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/371_en
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/372_en b/java/src/com/android/i18n/phonenumbers/geocoding/data/372_en
new file mode 100644
index 00000000..aaaa3388
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/372_en
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/373_en b/java/src/com/android/i18n/phonenumbers/geocoding/data/373_en
new file mode 100644
index 00000000..9ef1b6e4
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/373_en
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/373_ro b/java/src/com/android/i18n/phonenumbers/geocoding/data/373_ro
new file mode 100644
index 00000000..3ef4931d
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/373_ro
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/373_ru b/java/src/com/android/i18n/phonenumbers/geocoding/data/373_ru
new file mode 100644
index 00000000..b6438217
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/373_ru
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/374_en b/java/src/com/android/i18n/phonenumbers/geocoding/data/374_en
new file mode 100644
index 00000000..8bdf7641
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/374_en
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/381_en b/java/src/com/android/i18n/phonenumbers/geocoding/data/381_en
new file mode 100644
index 00000000..8cde57a4
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/381_en
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/381_sr b/java/src/com/android/i18n/phonenumbers/geocoding/data/381_sr
new file mode 100644
index 00000000..2a5deaaa
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/381_sr
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/39_it b/java/src/com/android/i18n/phonenumbers/geocoding/data/39_it
index 2bd7c5c7..db326827 100644
--- a/java/src/com/android/i18n/phonenumbers/geocoding/data/39_it
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/39_it
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/41_de b/java/src/com/android/i18n/phonenumbers/geocoding/data/41_de
index 86723f30..e62c7976 100644
--- a/java/src/com/android/i18n/phonenumbers/geocoding/data/41_de
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/41_de
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/41_fr b/java/src/com/android/i18n/phonenumbers/geocoding/data/41_fr
index b62ae33e..6fb2df85 100644
--- a/java/src/com/android/i18n/phonenumbers/geocoding/data/41_fr
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/41_fr
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/41_it b/java/src/com/android/i18n/phonenumbers/geocoding/data/41_it
index 847fc3f3..9cc1e5bb 100644
--- a/java/src/com/android/i18n/phonenumbers/geocoding/data/41_it
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/41_it
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/420_en b/java/src/com/android/i18n/phonenumbers/geocoding/data/420_en
new file mode 100644
index 00000000..6e39c435
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/420_en
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/421_en b/java/src/com/android/i18n/phonenumbers/geocoding/data/421_en
new file mode 100644
index 00000000..5a5dc092
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/421_en
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/43_de b/java/src/com/android/i18n/phonenumbers/geocoding/data/43_de
index 3143edeb..5687e970 100644
--- a/java/src/com/android/i18n/phonenumbers/geocoding/data/43_de
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/43_de
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/43_en b/java/src/com/android/i18n/phonenumbers/geocoding/data/43_en
new file mode 100644
index 00000000..050418d6
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/43_en
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/46_en b/java/src/com/android/i18n/phonenumbers/geocoding/data/46_en
new file mode 100644
index 00000000..934bb3ef
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/46_en
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/46_sv b/java/src/com/android/i18n/phonenumbers/geocoding/data/46_sv
index 016fd627..31a27a8d 100644
--- a/java/src/com/android/i18n/phonenumbers/geocoding/data/46_sv
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/46_sv
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/48_en b/java/src/com/android/i18n/phonenumbers/geocoding/data/48_en
new file mode 100644
index 00000000..969da0c5
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/48_en
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/48_pl b/java/src/com/android/i18n/phonenumbers/geocoding/data/48_pl
new file mode 100644
index 00000000..cd5eb5a9
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/48_pl
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/49_de b/java/src/com/android/i18n/phonenumbers/geocoding/data/49_de
index 2da69ea8..428b8bf3 100644
--- a/java/src/com/android/i18n/phonenumbers/geocoding/data/49_de
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/49_de
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/49_en b/java/src/com/android/i18n/phonenumbers/geocoding/data/49_en
new file mode 100644
index 00000000..40b37485
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/49_en
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/51_en b/java/src/com/android/i18n/phonenumbers/geocoding/data/51_en
new file mode 100644
index 00000000..7f84d3eb
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/51_en
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/53_en b/java/src/com/android/i18n/phonenumbers/geocoding/data/53_en
new file mode 100644
index 00000000..5d158674
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/53_en
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/54_en b/java/src/com/android/i18n/phonenumbers/geocoding/data/54_en
new file mode 100644
index 00000000..ae2fbddc
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/54_en
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/54_es b/java/src/com/android/i18n/phonenumbers/geocoding/data/54_es
index 7d89c05d..afd958be 100644
--- a/java/src/com/android/i18n/phonenumbers/geocoding/data/54_es
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/54_es
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/55_en b/java/src/com/android/i18n/phonenumbers/geocoding/data/55_en
new file mode 100644
index 00000000..753576a8
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/55_en
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/56_en b/java/src/com/android/i18n/phonenumbers/geocoding/data/56_en
new file mode 100644
index 00000000..9126f783
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/56_en
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/58_en b/java/src/com/android/i18n/phonenumbers/geocoding/data/58_en
new file mode 100644
index 00000000..9c7a7876
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/58_en
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/58_es b/java/src/com/android/i18n/phonenumbers/geocoding/data/58_es
new file mode 100644
index 00000000..84078161
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/58_es
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/81_en b/java/src/com/android/i18n/phonenumbers/geocoding/data/81_en
new file mode 100644
index 00000000..f9d096f9
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/81_en
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/84_en b/java/src/com/android/i18n/phonenumbers/geocoding/data/84_en
new file mode 100644
index 00000000..52217295
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/84_en
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/84_vi b/java/src/com/android/i18n/phonenumbers/geocoding/data/84_vi
new file mode 100644
index 00000000..1b0e2d77
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/84_vi
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/86_en b/java/src/com/android/i18n/phonenumbers/geocoding/data/86_en
new file mode 100644
index 00000000..b5b21b78
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/86_en
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/86_zh b/java/src/com/android/i18n/phonenumbers/geocoding/data/86_zh
index afa8d670..bbd76604 100644
--- a/java/src/com/android/i18n/phonenumbers/geocoding/data/86_zh
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/86_zh
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/90_tr b/java/src/com/android/i18n/phonenumbers/geocoding/data/90_tr
index 7ba238ed..cfcf99a0 100644
--- a/java/src/com/android/i18n/phonenumbers/geocoding/data/90_tr
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/90_tr
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/94_en b/java/src/com/android/i18n/phonenumbers/geocoding/data/94_en
new file mode 100644
index 00000000..0794d2a1
--- /dev/null
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/94_en
Binary files differ
diff --git a/java/src/com/android/i18n/phonenumbers/geocoding/data/config b/java/src/com/android/i18n/phonenumbers/geocoding/data/config
index b40fe26b..c7db9c8e 100644
--- a/java/src/com/android/i18n/phonenumbers/geocoding/data/config
+++ b/java/src/com/android/i18n/phonenumbers/geocoding/data/config
Binary files differ