From ca1e43d6e1fac07c7fc29c66c7da1fa9d7cf50f2 Mon Sep 17 00:00:00 2001 From: Shaopeng Jia Date: Tue, 25 Oct 2011 20:38:42 +0200 Subject: Upgrade libphonenumber to v4.1 Bug: 5247602 Change-Id: Icf2965f85efb70b92919931b4a4029ac5a634475 --- .../i18n/phonenumbers/AsYouTypeFormatter.java | 82 +++++-- .../phonenumbers/CountryCodeToRegionCodeMap.java | 2 +- .../i18n/phonenumbers/NumberParseException.java | 2 +- .../i18n/phonenumbers/PhoneNumberMatch.java | 2 +- .../i18n/phonenumbers/PhoneNumberMatcher.java | 2 +- .../android/i18n/phonenumbers/PhoneNumberUtil.java | 118 +++++++--- .../android/i18n/phonenumbers/Phonemetadata.java | 26 ++- .../com/android/i18n/phonenumbers/Phonenumber.java | 2 +- .../com/android/i18n/phonenumbers/RegexCache.java | 2 +- .../android/i18n/phonenumbers/ShortNumberUtil.java | 77 +++++++ .../phonenumbers/data/PhoneNumberMetadataProto_AC | Bin 219 -> 231 bytes .../phonenumbers/data/PhoneNumberMetadataProto_AD | Bin 352 -> 364 bytes .../phonenumbers/data/PhoneNumberMetadataProto_AE | Bin 564 -> 593 bytes .../phonenumbers/data/PhoneNumberMetadataProto_AF | Bin 320 -> 348 bytes .../phonenumbers/data/PhoneNumberMetadataProto_AG | Bin 491 -> 503 bytes .../phonenumbers/data/PhoneNumberMetadataProto_AI | Bin 425 -> 437 bytes .../phonenumbers/data/PhoneNumberMetadataProto_AL | Bin 707 -> 732 bytes .../phonenumbers/data/PhoneNumberMetadataProto_AM | Bin 586 -> 608 bytes .../phonenumbers/data/PhoneNumberMetadataProto_AN | Bin 556 -> 568 bytes .../phonenumbers/data/PhoneNumberMetadataProto_AO | Bin 291 -> 303 bytes .../phonenumbers/data/PhoneNumberMetadataProto_AR | Bin 2550 -> 2604 bytes .../phonenumbers/data/PhoneNumberMetadataProto_AS | Bin 407 -> 419 bytes .../phonenumbers/data/PhoneNumberMetadataProto_AT | Bin 1054 -> 1088 bytes .../phonenumbers/data/PhoneNumberMetadataProto_AU | Bin 1066 -> 1150 bytes .../phonenumbers/data/PhoneNumberMetadataProto_AW | Bin 397 -> 409 bytes .../phonenumbers/data/PhoneNumberMetadataProto_AX | Bin 513 -> 525 bytes .../phonenumbers/data/PhoneNumberMetadataProto_AZ | Bin 972 -> 984 bytes .../phonenumbers/data/PhoneNumberMetadataProto_BA | Bin 380 -> 405 bytes .../phonenumbers/data/PhoneNumberMetadataProto_BB | Bin 403 -> 428 bytes .../phonenumbers/data/PhoneNumberMetadataProto_BD | Bin 1032 -> 1055 bytes .../phonenumbers/data/PhoneNumberMetadataProto_BE | Bin 686 -> 720 bytes .../phonenumbers/data/PhoneNumberMetadataProto_BF | Bin 369 -> 383 bytes .../phonenumbers/data/PhoneNumberMetadataProto_BG | Bin 849 -> 883 bytes .../phonenumbers/data/PhoneNumberMetadataProto_BH | Bin 436 -> 458 bytes .../phonenumbers/data/PhoneNumberMetadataProto_BI | Bin 317 -> 329 bytes .../phonenumbers/data/PhoneNumberMetadataProto_BJ | Bin 389 -> 376 bytes .../phonenumbers/data/PhoneNumberMetadataProto_BL | Bin 273 -> 285 bytes .../phonenumbers/data/PhoneNumberMetadataProto_BM | Bin 441 -> 453 bytes .../phonenumbers/data/PhoneNumberMetadataProto_BN | Bin 275 -> 278 bytes .../phonenumbers/data/PhoneNumberMetadataProto_BO | Bin 531 -> 556 bytes .../phonenumbers/data/PhoneNumberMetadataProto_BR | Bin 684 -> 808 bytes .../phonenumbers/data/PhoneNumberMetadataProto_BS | Bin 583 -> 595 bytes .../phonenumbers/data/PhoneNumberMetadataProto_BT | Bin 381 -> 405 bytes .../phonenumbers/data/PhoneNumberMetadataProto_BW | Bin 568 -> 580 bytes .../phonenumbers/data/PhoneNumberMetadataProto_BY | Bin 715 -> 752 bytes .../phonenumbers/data/PhoneNumberMetadataProto_BZ | Bin 380 -> 392 bytes .../phonenumbers/data/PhoneNumberMetadataProto_CA | Bin 689 -> 714 bytes .../phonenumbers/data/PhoneNumberMetadataProto_CC | Bin 476 -> 488 bytes .../phonenumbers/data/PhoneNumberMetadataProto_CD | Bin 361 -> 373 bytes .../phonenumbers/data/PhoneNumberMetadataProto_CF | Bin 302 -> 314 bytes .../phonenumbers/data/PhoneNumberMetadataProto_CG | Bin 348 -> 360 bytes .../phonenumbers/data/PhoneNumberMetadataProto_CH | Bin 501 -> 533 bytes .../phonenumbers/data/PhoneNumberMetadataProto_CI | Bin 384 -> 397 bytes .../phonenumbers/data/PhoneNumberMetadataProto_CK | Bin 282 -> 294 bytes .../phonenumbers/data/PhoneNumberMetadataProto_CL | Bin 885 -> 937 bytes .../phonenumbers/data/PhoneNumberMetadataProto_CM | Bin 382 -> 394 bytes .../phonenumbers/data/PhoneNumberMetadataProto_CN | Bin 2586 -> 2672 bytes .../phonenumbers/data/PhoneNumberMetadataProto_CO | Bin 828 -> 865 bytes .../phonenumbers/data/PhoneNumberMetadataProto_CR | Bin 478 -> 503 bytes .../phonenumbers/data/PhoneNumberMetadataProto_CU | Bin 436 -> 448 bytes .../phonenumbers/data/PhoneNumberMetadataProto_CV | Bin 317 -> 329 bytes .../phonenumbers/data/PhoneNumberMetadataProto_CX | Bin 476 -> 488 bytes .../phonenumbers/data/PhoneNumberMetadataProto_CY | Bin 373 -> 401 bytes .../phonenumbers/data/PhoneNumberMetadataProto_CZ | Bin 456 -> 501 bytes .../phonenumbers/data/PhoneNumberMetadataProto_DE | Bin 1640 -> 1674 bytes .../phonenumbers/data/PhoneNumberMetadataProto_DJ | Bin 278 -> 300 bytes .../phonenumbers/data/PhoneNumberMetadataProto_DK | Bin 411 -> 381 bytes .../phonenumbers/data/PhoneNumberMetadataProto_DM | Bin 450 -> 464 bytes .../phonenumbers/data/PhoneNumberMetadataProto_DO | Bin 398 -> 749 bytes .../phonenumbers/data/PhoneNumberMetadataProto_DZ | Bin 590 -> 614 bytes .../phonenumbers/data/PhoneNumberMetadataProto_EC | Bin 565 -> 631 bytes .../phonenumbers/data/PhoneNumberMetadataProto_EE | Bin 806 -> 830 bytes .../phonenumbers/data/PhoneNumberMetadataProto_EG | Bin 610 -> 794 bytes .../phonenumbers/data/PhoneNumberMetadataProto_ER | Bin 318 -> 330 bytes .../phonenumbers/data/PhoneNumberMetadataProto_ES | Bin 488 -> 529 bytes .../phonenumbers/data/PhoneNumberMetadataProto_ET | Bin 934 -> 946 bytes .../phonenumbers/data/PhoneNumberMetadataProto_FI | Bin 727 -> 748 bytes .../phonenumbers/data/PhoneNumberMetadataProto_FJ | Bin 398 -> 434 bytes .../phonenumbers/data/PhoneNumberMetadataProto_FK | Bin 218 -> 230 bytes .../phonenumbers/data/PhoneNumberMetadataProto_FM | Bin 297 -> 309 bytes .../phonenumbers/data/PhoneNumberMetadataProto_FO | Bin 400 -> 421 bytes .../phonenumbers/data/PhoneNumberMetadataProto_FR | Bin 495 -> 587 bytes .../phonenumbers/data/PhoneNumberMetadataProto_GA | Bin 546 -> 558 bytes .../phonenumbers/data/PhoneNumberMetadataProto_GB | Bin 2818 -> 2843 bytes .../phonenumbers/data/PhoneNumberMetadataProto_GD | Bin 500 -> 515 bytes .../phonenumbers/data/PhoneNumberMetadataProto_GE | Bin 490 -> 541 bytes .../phonenumbers/data/PhoneNumberMetadataProto_GF | Bin 379 -> 402 bytes .../phonenumbers/data/PhoneNumberMetadataProto_GG | Bin 582 -> 594 bytes .../phonenumbers/data/PhoneNumberMetadataProto_GH | Bin 421 -> 450 bytes .../phonenumbers/data/PhoneNumberMetadataProto_GI | Bin 317 -> 348 bytes .../phonenumbers/data/PhoneNumberMetadataProto_GL | Bin 338 -> 359 bytes .../phonenumbers/data/PhoneNumberMetadataProto_GM | Bin 354 -> 366 bytes .../phonenumbers/data/PhoneNumberMetadataProto_GN | Bin 388 -> 400 bytes .../phonenumbers/data/PhoneNumberMetadataProto_GP | Bin 390 -> 402 bytes .../phonenumbers/data/PhoneNumberMetadataProto_GQ | Bin 418 -> 430 bytes .../phonenumbers/data/PhoneNumberMetadataProto_GR | Bin 827 -> 865 bytes .../phonenumbers/data/PhoneNumberMetadataProto_GT | Bin 387 -> 418 bytes .../phonenumbers/data/PhoneNumberMetadataProto_GU | Bin 785 -> 797 bytes .../phonenumbers/data/PhoneNumberMetadataProto_GW | Bin 299 -> 311 bytes .../phonenumbers/data/PhoneNumberMetadataProto_GY | Bin 397 -> 422 bytes .../phonenumbers/data/PhoneNumberMetadataProto_HK | Bin 481 -> 509 bytes .../phonenumbers/data/PhoneNumberMetadataProto_HN | Bin 465 -> 486 bytes .../phonenumbers/data/PhoneNumberMetadataProto_HR | Bin 885 -> 957 bytes .../phonenumbers/data/PhoneNumberMetadataProto_HT | Bin 336 -> 348 bytes .../phonenumbers/data/PhoneNumberMetadataProto_HU | Bin 493 -> 525 bytes .../phonenumbers/data/PhoneNumberMetadataProto_ID | Bin 1058 -> 1085 bytes .../phonenumbers/data/PhoneNumberMetadataProto_IE | Bin 1190 -> 1241 bytes .../phonenumbers/data/PhoneNumberMetadataProto_IL | Bin 844 -> 869 bytes .../phonenumbers/data/PhoneNumberMetadataProto_IM | Bin 501 -> 513 bytes .../phonenumbers/data/PhoneNumberMetadataProto_IN | Bin 3702 -> 3974 bytes .../phonenumbers/data/PhoneNumberMetadataProto_IO | Bin 245 -> 257 bytes .../phonenumbers/data/PhoneNumberMetadataProto_IQ | Bin 442 -> 452 bytes .../phonenumbers/data/PhoneNumberMetadataProto_IR | Bin 865 -> 897 bytes .../phonenumbers/data/PhoneNumberMetadataProto_IS | Bin 654 -> 673 bytes .../phonenumbers/data/PhoneNumberMetadataProto_IT | Bin 947 -> 973 bytes .../phonenumbers/data/PhoneNumberMetadataProto_JE | Bin 680 -> 692 bytes .../phonenumbers/data/PhoneNumberMetadataProto_JM | Bin 628 -> 673 bytes .../phonenumbers/data/PhoneNumberMetadataProto_JO | Bin 539 -> 564 bytes .../phonenumbers/data/PhoneNumberMetadataProto_JP | Bin 4932 -> 4956 bytes .../phonenumbers/data/PhoneNumberMetadataProto_KE | Bin 449 -> 461 bytes .../phonenumbers/data/PhoneNumberMetadataProto_KG | Bin 670 -> 687 bytes .../phonenumbers/data/PhoneNumberMetadataProto_KH | Bin 549 -> 586 bytes .../phonenumbers/data/PhoneNumberMetadataProto_KI | Bin 270 -> 250 bytes .../phonenumbers/data/PhoneNumberMetadataProto_KM | Bin 316 -> 328 bytes .../phonenumbers/data/PhoneNumberMetadataProto_KN | Bin 436 -> 448 bytes .../phonenumbers/data/PhoneNumberMetadataProto_KP | Bin 462 -> 474 bytes .../phonenumbers/data/PhoneNumberMetadataProto_KR | Bin 1569 -> 1592 bytes .../phonenumbers/data/PhoneNumberMetadataProto_KW | Bin 466 -> 486 bytes .../phonenumbers/data/PhoneNumberMetadataProto_KY | Bin 533 -> 554 bytes .../phonenumbers/data/PhoneNumberMetadataProto_KZ | Bin 818 -> 855 bytes .../phonenumbers/data/PhoneNumberMetadataProto_LA | Bin 392 -> 409 bytes .../phonenumbers/data/PhoneNumberMetadataProto_LB | Bin 496 -> 535 bytes .../phonenumbers/data/PhoneNumberMetadataProto_LC | Bin 478 -> 490 bytes .../phonenumbers/data/PhoneNumberMetadataProto_LI | Bin 756 -> 768 bytes .../phonenumbers/data/PhoneNumberMetadataProto_LK | Bin 396 -> 422 bytes .../phonenumbers/data/PhoneNumberMetadataProto_LR | Bin 482 -> 561 bytes .../phonenumbers/data/PhoneNumberMetadataProto_LS | Bin 280 -> 292 bytes .../phonenumbers/data/PhoneNumberMetadataProto_LT | Bin 528 -> 579 bytes .../phonenumbers/data/PhoneNumberMetadataProto_LU | Bin 1461 -> 1485 bytes .../phonenumbers/data/PhoneNumberMetadataProto_LV | Bin 302 -> 332 bytes .../phonenumbers/data/PhoneNumberMetadataProto_LY | Bin 309 -> 321 bytes .../phonenumbers/data/PhoneNumberMetadataProto_MA | Bin 716 -> 753 bytes .../phonenumbers/data/PhoneNumberMetadataProto_MC | Bin 457 -> 489 bytes .../phonenumbers/data/PhoneNumberMetadataProto_MD | Bin 610 -> 646 bytes .../phonenumbers/data/PhoneNumberMetadataProto_ME | Bin 649 -> 681 bytes .../phonenumbers/data/PhoneNumberMetadataProto_MF | Bin 279 -> 291 bytes .../phonenumbers/data/PhoneNumberMetadataProto_MG | Bin 370 -> 382 bytes .../phonenumbers/data/PhoneNumberMetadataProto_MH | Bin 310 -> 322 bytes .../phonenumbers/data/PhoneNumberMetadataProto_MK | Bin 585 -> 617 bytes .../phonenumbers/data/PhoneNumberMetadataProto_ML | Bin 416 -> 437 bytes .../phonenumbers/data/PhoneNumberMetadataProto_MM | Bin 585 -> 606 bytes .../phonenumbers/data/PhoneNumberMetadataProto_MN | Bin 691 -> 716 bytes .../phonenumbers/data/PhoneNumberMetadataProto_MO | Bin 286 -> 308 bytes .../phonenumbers/data/PhoneNumberMetadataProto_MP | Bin 571 -> 583 bytes .../phonenumbers/data/PhoneNumberMetadataProto_MQ | Bin 365 -> 377 bytes .../phonenumbers/data/PhoneNumberMetadataProto_MR | Bin 385 -> 397 bytes .../phonenumbers/data/PhoneNumberMetadataProto_MS | Bin 374 -> 386 bytes .../phonenumbers/data/PhoneNumberMetadataProto_MT | Bin 429 -> 450 bytes .../phonenumbers/data/PhoneNumberMetadataProto_MU | Bin 488 -> 517 bytes .../phonenumbers/data/PhoneNumberMetadataProto_MV | Bin 465 -> 493 bytes .../phonenumbers/data/PhoneNumberMetadataProto_MW | Bin 509 -> 521 bytes .../phonenumbers/data/PhoneNumberMetadataProto_MX | Bin 1764 -> 1793 bytes .../phonenumbers/data/PhoneNumberMetadataProto_MY | Bin 639 -> 730 bytes .../phonenumbers/data/PhoneNumberMetadataProto_MZ | Bin 379 -> 391 bytes .../phonenumbers/data/PhoneNumberMetadataProto_NA | Bin 829 -> 841 bytes .../phonenumbers/data/PhoneNumberMetadataProto_NC | Bin 309 -> 321 bytes .../phonenumbers/data/PhoneNumberMetadataProto_NE | Bin 456 -> 470 bytes .../phonenumbers/data/PhoneNumberMetadataProto_NF | Bin 318 -> 330 bytes .../phonenumbers/data/PhoneNumberMetadataProto_NG | Bin 836 -> 859 bytes .../phonenumbers/data/PhoneNumberMetadataProto_NI | Bin 272 -> 293 bytes .../phonenumbers/data/PhoneNumberMetadataProto_NL | Bin 622 -> 647 bytes .../phonenumbers/data/PhoneNumberMetadataProto_NO | Bin 576 -> 601 bytes .../phonenumbers/data/PhoneNumberMetadataProto_NP | Bin 530 -> 562 bytes .../phonenumbers/data/PhoneNumberMetadataProto_NR | Bin 266 -> 278 bytes .../phonenumbers/data/PhoneNumberMetadataProto_NU | Bin 215 -> 227 bytes .../phonenumbers/data/PhoneNumberMetadataProto_NZ | Bin 771 -> 792 bytes .../phonenumbers/data/PhoneNumberMetadataProto_OM | Bin 402 -> 425 bytes .../phonenumbers/data/PhoneNumberMetadataProto_PA | Bin 858 -> 873 bytes .../phonenumbers/data/PhoneNumberMetadataProto_PE | Bin 564 -> 595 bytes .../phonenumbers/data/PhoneNumberMetadataProto_PF | Bin 356 -> 368 bytes .../phonenumbers/data/PhoneNumberMetadataProto_PG | Bin 443 -> 445 bytes .../phonenumbers/data/PhoneNumberMetadataProto_PH | Bin 963 -> 992 bytes .../phonenumbers/data/PhoneNumberMetadataProto_PK | Bin 1725 -> 1765 bytes .../phonenumbers/data/PhoneNumberMetadataProto_PL | Bin 586 -> 615 bytes .../phonenumbers/data/PhoneNumberMetadataProto_PM | Bin 269 -> 292 bytes .../phonenumbers/data/PhoneNumberMetadataProto_PR | Bin 407 -> 419 bytes .../phonenumbers/data/PhoneNumberMetadataProto_PS | Bin 536 -> 548 bytes .../phonenumbers/data/PhoneNumberMetadataProto_PT | Bin 465 -> 486 bytes .../phonenumbers/data/PhoneNumberMetadataProto_PW | Bin 352 -> 364 bytes .../phonenumbers/data/PhoneNumberMetadataProto_PY | Bin 834 -> 856 bytes .../phonenumbers/data/PhoneNumberMetadataProto_QA | Bin 344 -> 391 bytes .../phonenumbers/data/PhoneNumberMetadataProto_RE | Bin 403 -> 415 bytes .../phonenumbers/data/PhoneNumberMetadataProto_RO | Bin 454 -> 475 bytes .../phonenumbers/data/PhoneNumberMetadataProto_RS | Bin 680 -> 710 bytes .../phonenumbers/data/PhoneNumberMetadataProto_RU | Bin 566 -> 601 bytes .../phonenumbers/data/PhoneNumberMetadataProto_RW | Bin 454 -> 475 bytes .../phonenumbers/data/PhoneNumberMetadataProto_SA | Bin 602 -> 628 bytes .../phonenumbers/data/PhoneNumberMetadataProto_SB | Bin 322 -> 389 bytes .../phonenumbers/data/PhoneNumberMetadataProto_SC | Bin 523 -> 535 bytes .../phonenumbers/data/PhoneNumberMetadataProto_SD | Bin 296 -> 319 bytes .../phonenumbers/data/PhoneNumberMetadataProto_SE | Bin 2278 -> 2307 bytes .../phonenumbers/data/PhoneNumberMetadataProto_SG | Bin 560 -> 595 bytes .../phonenumbers/data/PhoneNumberMetadataProto_SH | Bin 242 -> 254 bytes .../phonenumbers/data/PhoneNumberMetadataProto_SI | Bin 656 -> 680 bytes .../phonenumbers/data/PhoneNumberMetadataProto_SJ | Bin 411 -> 423 bytes .../phonenumbers/data/PhoneNumberMetadataProto_SK | Bin 551 -> 583 bytes .../phonenumbers/data/PhoneNumberMetadataProto_SL | Bin 322 -> 350 bytes .../phonenumbers/data/PhoneNumberMetadataProto_SM | Bin 578 -> 603 bytes .../phonenumbers/data/PhoneNumberMetadataProto_SN | Bin 427 -> 430 bytes .../phonenumbers/data/PhoneNumberMetadataProto_SO | Bin 335 -> 467 bytes .../phonenumbers/data/PhoneNumberMetadataProto_SR | Bin 423 -> 444 bytes .../phonenumbers/data/PhoneNumberMetadataProto_ST | Bin 251 -> 266 bytes .../phonenumbers/data/PhoneNumberMetadataProto_SV | Bin 455 -> 476 bytes .../phonenumbers/data/PhoneNumberMetadataProto_SY | Bin 435 -> 460 bytes .../phonenumbers/data/PhoneNumberMetadataProto_SZ | Bin 417 -> 429 bytes .../phonenumbers/data/PhoneNumberMetadataProto_TC | Bin 467 -> 479 bytes .../phonenumbers/data/PhoneNumberMetadataProto_TD | Bin 344 -> 358 bytes .../phonenumbers/data/PhoneNumberMetadataProto_TG | Bin 393 -> 318 bytes .../phonenumbers/data/PhoneNumberMetadataProto_TH | Bin 538 -> 580 bytes .../phonenumbers/data/PhoneNumberMetadataProto_TJ | Bin 619 -> 656 bytes .../phonenumbers/data/PhoneNumberMetadataProto_TK | Bin 222 -> 234 bytes .../phonenumbers/data/PhoneNumberMetadataProto_TL | Bin 332 -> 344 bytes .../phonenumbers/data/PhoneNumberMetadataProto_TM | Bin 310 -> 327 bytes .../phonenumbers/data/PhoneNumberMetadataProto_TN | Bin 305 -> 337 bytes .../phonenumbers/data/PhoneNumberMetadataProto_TO | Bin 432 -> 444 bytes .../phonenumbers/data/PhoneNumberMetadataProto_TR | Bin 684 -> 733 bytes .../phonenumbers/data/PhoneNumberMetadataProto_TT | Bin 529 -> 556 bytes .../phonenumbers/data/PhoneNumberMetadataProto_TV | Bin 221 -> 233 bytes .../phonenumbers/data/PhoneNumberMetadataProto_TW | Bin 413 -> 438 bytes .../phonenumbers/data/PhoneNumberMetadataProto_TZ | Bin 508 -> 520 bytes .../phonenumbers/data/PhoneNumberMetadataProto_UA | Bin 1052 -> 1088 bytes .../phonenumbers/data/PhoneNumberMetadataProto_UG | Bin 526 -> 546 bytes .../phonenumbers/data/PhoneNumberMetadataProto_US | Bin 1605 -> 1630 bytes .../phonenumbers/data/PhoneNumberMetadataProto_UY | Bin 454 -> 479 bytes .../phonenumbers/data/PhoneNumberMetadataProto_UZ | Bin 321 -> 1796 bytes .../phonenumbers/data/PhoneNumberMetadataProto_VA | Bin 246 -> 275 bytes .../phonenumbers/data/PhoneNumberMetadataProto_VC | Bin 491 -> 503 bytes .../phonenumbers/data/PhoneNumberMetadataProto_VE | Bin 401 -> 422 bytes .../phonenumbers/data/PhoneNumberMetadataProto_VG | Bin 495 -> 507 bytes .../phonenumbers/data/PhoneNumberMetadataProto_VI | Bin 603 -> 615 bytes .../phonenumbers/data/PhoneNumberMetadataProto_VN | Bin 955 -> 980 bytes .../phonenumbers/data/PhoneNumberMetadataProto_VU | Bin 365 -> 386 bytes .../phonenumbers/data/PhoneNumberMetadataProto_WF | Bin 280 -> 292 bytes .../phonenumbers/data/PhoneNumberMetadataProto_WS | Bin 376 -> 363 bytes .../phonenumbers/data/PhoneNumberMetadataProto_YE | Bin 423 -> 435 bytes .../phonenumbers/data/PhoneNumberMetadataProto_YT | Bin 261 -> 276 bytes .../phonenumbers/data/PhoneNumberMetadataProto_ZA | Bin 505 -> 701 bytes .../phonenumbers/data/PhoneNumberMetadataProto_ZM | Bin 363 -> 400 bytes .../phonenumbers/data/PhoneNumberMetadataProto_ZW | Bin 1543 -> 1577 bytes .../i18n/phonenumbers/geocoding/AreaCodeMap.java | 15 +- .../geocoding/AreaCodeMapStorageStrategy.java | 52 ++--- .../phonenumbers/geocoding/DefaultMapStorage.java | 7 +- .../geocoding/FlyweightMapStorage.java | 237 +++++++++++---------- .../geocoding/MappingFileProvider.java | 2 +- .../geocoding/PhoneNumberOfflineGeocoder.java | 29 ++- .../android/i18n/phonenumbers/geocoding/data/20_en | Bin 0 -> 408 bytes .../i18n/phonenumbers/geocoding/data/212_en | Bin 0 -> 1233 bytes .../i18n/phonenumbers/geocoding/data/212_fr | Bin 0 -> 604 bytes .../i18n/phonenumbers/geocoding/data/213_en | Bin 0 -> 250 bytes .../i18n/phonenumbers/geocoding/data/216_en | Bin 0 -> 321 bytes .../i18n/phonenumbers/geocoding/data/220_en | Bin 0 -> 96 bytes .../i18n/phonenumbers/geocoding/data/221_en | Bin 0 -> 49 bytes .../i18n/phonenumbers/geocoding/data/222_en | Bin 0 -> 181 bytes .../i18n/phonenumbers/geocoding/data/222_fr | Bin 0 -> 31 bytes .../i18n/phonenumbers/geocoding/data/224_en | Bin 0 -> 303 bytes .../i18n/phonenumbers/geocoding/data/225_en | Bin 0 -> 174 bytes .../i18n/phonenumbers/geocoding/data/225_fr | Bin 0 -> 174 bytes .../i18n/phonenumbers/geocoding/data/226_en | Bin 0 -> 280 bytes .../i18n/phonenumbers/geocoding/data/228_en | Bin 0 -> 129 bytes .../i18n/phonenumbers/geocoding/data/228_es | Bin 0 -> 142 bytes .../i18n/phonenumbers/geocoding/data/228_fr | Bin 0 -> 149 bytes .../i18n/phonenumbers/geocoding/data/229_en | Bin 0 -> 639 bytes .../i18n/phonenumbers/geocoding/data/229_fr | Bin 0 -> 161 bytes .../i18n/phonenumbers/geocoding/data/230_en | Bin 0 -> 126 bytes .../i18n/phonenumbers/geocoding/data/230_es | Bin 0 -> 76 bytes .../i18n/phonenumbers/geocoding/data/230_fr | Bin 0 -> 76 bytes .../i18n/phonenumbers/geocoding/data/232_en | Bin 0 -> 66 bytes .../i18n/phonenumbers/geocoding/data/233_en | Bin 0 -> 772 bytes .../i18n/phonenumbers/geocoding/data/238_en | Bin 0 -> 1047 bytes .../i18n/phonenumbers/geocoding/data/238_pt | Bin 0 -> 1047 bytes .../i18n/phonenumbers/geocoding/data/239_en | Bin 0 -> 315 bytes .../i18n/phonenumbers/geocoding/data/239_pt | Bin 0 -> 54 bytes .../i18n/phonenumbers/geocoding/data/242_en | Bin 0 -> 140 bytes .../i18n/phonenumbers/geocoding/data/242_fr | Bin 0 -> 140 bytes .../i18n/phonenumbers/geocoding/data/243_en | Bin 0 -> 184 bytes .../i18n/phonenumbers/geocoding/data/243_fr | Bin 0 -> 94 bytes .../i18n/phonenumbers/geocoding/data/244_en | Bin 0 -> 488 bytes .../i18n/phonenumbers/geocoding/data/244_pt | Bin 0 -> 95 bytes .../i18n/phonenumbers/geocoding/data/245_en | Bin 0 -> 325 bytes .../i18n/phonenumbers/geocoding/data/245_pt | Bin 0 -> 325 bytes .../i18n/phonenumbers/geocoding/data/247_en | Bin 0 -> 118 bytes .../i18n/phonenumbers/geocoding/data/249_en | Bin 0 -> 171 bytes .../i18n/phonenumbers/geocoding/data/251_en | Bin 0 -> 10810 bytes .../i18n/phonenumbers/geocoding/data/252_en | Bin 0 -> 66 bytes .../i18n/phonenumbers/geocoding/data/254_en | Bin 0 -> 373 bytes .../i18n/phonenumbers/geocoding/data/256_en | Bin 0 -> 198 bytes .../i18n/phonenumbers/geocoding/data/258_en | Bin 0 -> 161 bytes .../i18n/phonenumbers/geocoding/data/258_pt | Bin 0 -> 32 bytes .../i18n/phonenumbers/geocoding/data/260_en | Bin 0 -> 274 bytes .../i18n/phonenumbers/geocoding/data/261_en | Bin 0 -> 394 bytes .../i18n/phonenumbers/geocoding/data/263_en | Bin 0 -> 924 bytes .../i18n/phonenumbers/geocoding/data/264_en | Bin 0 -> 349 bytes .../i18n/phonenumbers/geocoding/data/266_en | Bin 0 -> 31 bytes .../i18n/phonenumbers/geocoding/data/267_en | Bin 0 -> 310 bytes .../i18n/phonenumbers/geocoding/data/268_en | Bin 0 -> 995 bytes .../i18n/phonenumbers/geocoding/data/269_en | Bin 0 -> 195 bytes .../i18n/phonenumbers/geocoding/data/269_fr | Bin 0 -> 195 bytes .../android/i18n/phonenumbers/geocoding/data/27_en | Bin 0 -> 601 bytes .../i18n/phonenumbers/geocoding/data/290_en | Bin 0 -> 96 bytes .../i18n/phonenumbers/geocoding/data/290_fr | Bin 0 -> 64 bytes .../i18n/phonenumbers/geocoding/data/299_en | Bin 0 -> 376 bytes .../android/i18n/phonenumbers/geocoding/data/30_el | Bin 0 -> 5597 bytes .../android/i18n/phonenumbers/geocoding/data/30_en | Bin 0 -> 2303 bytes .../android/i18n/phonenumbers/geocoding/data/31_en | Bin 0 -> 1735 bytes .../android/i18n/phonenumbers/geocoding/data/31_nl | Bin 1734 -> 33 bytes .../android/i18n/phonenumbers/geocoding/data/33_en | Bin 0 -> 63146 bytes .../android/i18n/phonenumbers/geocoding/data/33_fr | Bin 63148 -> 132 bytes .../android/i18n/phonenumbers/geocoding/data/34_en | Bin 0 -> 1018 bytes .../android/i18n/phonenumbers/geocoding/data/34_es | Bin 1020 -> 124 bytes .../i18n/phonenumbers/geocoding/data/351_en | Bin 0 -> 823 bytes .../i18n/phonenumbers/geocoding/data/351_pt | Bin 823 -> 31 bytes .../i18n/phonenumbers/geocoding/data/352_de | Bin 0 -> 326 bytes .../i18n/phonenumbers/geocoding/data/352_en | Bin 0 -> 669 bytes .../i18n/phonenumbers/geocoding/data/354_en | Bin 0 -> 123 bytes .../i18n/phonenumbers/geocoding/data/355_en | Bin 0 -> 893 bytes .../i18n/phonenumbers/geocoding/data/358_en | Bin 0 -> 210 bytes .../i18n/phonenumbers/geocoding/data/358_fi | Bin 0 -> 112 bytes .../i18n/phonenumbers/geocoding/data/358_se | Bin 0 -> 211 bytes .../android/i18n/phonenumbers/geocoding/data/36_en | Bin 0 -> 799 bytes .../android/i18n/phonenumbers/geocoding/data/36_hu | Bin 0 -> 433 bytes .../i18n/phonenumbers/geocoding/data/370_en | Bin 0 -> 746 bytes .../i18n/phonenumbers/geocoding/data/371_en | Bin 0 -> 495 bytes .../i18n/phonenumbers/geocoding/data/372_en | Bin 0 -> 276 bytes .../i18n/phonenumbers/geocoding/data/373_en | Bin 0 -> 637 bytes .../i18n/phonenumbers/geocoding/data/373_ro | Bin 0 -> 331 bytes .../i18n/phonenumbers/geocoding/data/373_ru | Bin 0 -> 965 bytes .../i18n/phonenumbers/geocoding/data/374_en | Bin 0 -> 1949 bytes .../i18n/phonenumbers/geocoding/data/381_en | Bin 0 -> 495 bytes .../i18n/phonenumbers/geocoding/data/381_sr | Bin 0 -> 188 bytes .../android/i18n/phonenumbers/geocoding/data/39_it | Bin 3319 -> 2506 bytes .../android/i18n/phonenumbers/geocoding/data/41_de | Bin 318 -> 138 bytes .../android/i18n/phonenumbers/geocoding/data/41_fr | Bin 322 -> 97 bytes .../android/i18n/phonenumbers/geocoding/data/41_it | Bin 322 -> 183 bytes .../i18n/phonenumbers/geocoding/data/420_en | Bin 0 -> 431 bytes .../i18n/phonenumbers/geocoding/data/421_en | Bin 0 -> 422 bytes .../android/i18n/phonenumbers/geocoding/data/43_de | Bin 18893 -> 3003 bytes .../android/i18n/phonenumbers/geocoding/data/43_en | Bin 0 -> 18727 bytes .../android/i18n/phonenumbers/geocoding/data/46_en | Bin 0 -> 4010 bytes .../android/i18n/phonenumbers/geocoding/data/46_sv | Bin 4009 -> 34 bytes .../android/i18n/phonenumbers/geocoding/data/48_en | Bin 0 -> 725 bytes .../android/i18n/phonenumbers/geocoding/data/48_pl | Bin 0 -> 242 bytes .../android/i18n/phonenumbers/geocoding/data/49_de | Bin 66574 -> 1164 bytes .../android/i18n/phonenumbers/geocoding/data/49_en | Bin 0 -> 98456 bytes .../android/i18n/phonenumbers/geocoding/data/51_en | Bin 0 -> 354 bytes .../android/i18n/phonenumbers/geocoding/data/53_en | Bin 0 -> 396 bytes .../android/i18n/phonenumbers/geocoding/data/54_en | Bin 0 -> 5536 bytes .../android/i18n/phonenumbers/geocoding/data/54_es | Bin 5330 -> 179 bytes .../android/i18n/phonenumbers/geocoding/data/55_en | Bin 0 -> 1385 bytes .../android/i18n/phonenumbers/geocoding/data/56_en | Bin 0 -> 342 bytes .../android/i18n/phonenumbers/geocoding/data/58_en | Bin 0 -> 809 bytes .../android/i18n/phonenumbers/geocoding/data/58_es | Bin 0 -> 84 bytes .../android/i18n/phonenumbers/geocoding/data/81_en | Bin 0 -> 16654 bytes .../android/i18n/phonenumbers/geocoding/data/84_en | Bin 0 -> 1477 bytes .../android/i18n/phonenumbers/geocoding/data/84_vi | Bin 0 -> 1125 bytes .../android/i18n/phonenumbers/geocoding/data/86_en | Bin 0 -> 7147 bytes .../android/i18n/phonenumbers/geocoding/data/86_zh | Bin 9120 -> 8472 bytes .../android/i18n/phonenumbers/geocoding/data/90_tr | Bin 1804 -> 882 bytes .../android/i18n/phonenumbers/geocoding/data/94_en | Bin 0 -> 510 bytes .../i18n/phonenumbers/geocoding/data/config | Bin 4014 -> 4863 bytes 369 files changed, 445 insertions(+), 212 deletions(-) create mode 100644 java/src/com/android/i18n/phonenumbers/ShortNumberUtil.java create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/20_en create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/212_en create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/212_fr create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/213_en create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/216_en create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/220_en create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/221_en create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/222_en create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/222_fr create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/224_en create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/225_en create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/225_fr create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/226_en create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/228_en create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/228_es create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/228_fr create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/229_en create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/229_fr create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/230_en create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/230_es create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/230_fr create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/232_en create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/233_en create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/238_en create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/238_pt create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/239_en create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/239_pt create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/242_en create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/242_fr create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/243_en create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/243_fr create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/244_en create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/244_pt create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/245_en create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/245_pt create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/247_en create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/249_en create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/251_en create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/252_en create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/254_en create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/256_en create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/258_en create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/258_pt create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/260_en create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/261_en create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/263_en create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/264_en create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/266_en create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/267_en create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/268_en create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/269_en create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/269_fr create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/27_en create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/290_en create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/290_fr create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/299_en create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/30_el create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/30_en create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/31_en create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/33_en create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/34_en create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/351_en create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/352_de create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/352_en create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/354_en create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/355_en create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/358_en create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/358_fi create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/358_se create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/36_en create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/36_hu create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/370_en create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/371_en create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/372_en create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/373_en create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/373_ro create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/373_ru create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/374_en create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/381_en create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/381_sr create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/420_en create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/421_en create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/43_en create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/46_en create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/48_en create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/48_pl create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/49_en create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/51_en create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/53_en create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/54_en create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/55_en create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/56_en create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/58_en create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/58_es create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/81_en create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/84_en create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/84_vi create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/86_en create mode 100644 java/src/com/android/i18n/phonenumbers/geocoding/data/94_en (limited to 'java/src/com') 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 possibleFormats = new ArrayList(); @@ -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 nanpaRegions = new HashSet(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 getSupportedRegions() { return supportedRegions; @@ -1152,6 +1158,52 @@ public class PhoneNumberUtil { : fallbackCarrierCode); } + /** + * 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 @@ -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); @@ -780,6 +798,12 @@ public final class Phonemetadata { setUan(desc); } hasDesc = objectInput.readBoolean(); + if (hasDesc) { + PhoneNumberDesc desc = new PhoneNumberDesc(); + desc.readExternal(objectInput); + setEmergency(desc); + } + hasDesc = objectInput.readBoolean(); if (hasDesc) { PhoneNumberDesc desc = new PhoneNumberDesc(); desc.readExternal(objectInput); 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AC and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AC 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AD and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AD 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AE and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AE 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AF and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AF 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AG and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AG 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AI and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AI 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AL and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AL 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AM and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AM 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AN and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AN 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AO and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AO 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AR and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AR 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AS and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AS 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AT and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AT 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AU and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AU 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AW and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AW 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AX and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AX 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AZ and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_AZ 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BA and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BA 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BB and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BB 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BD and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BD 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BE and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BE 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BF and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BF 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BG and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BG 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BH and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BH 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BI and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BI 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BJ and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BJ 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BL and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BL 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BM and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BM 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BN and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BN 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BO and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BO 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BR and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BR 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BS and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BS 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BT and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BT 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BW and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BW 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BY and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BY 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BZ and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_BZ 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CA and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CA 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CC and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CC 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CD and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CD 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CF and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CF 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CG and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CG 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CH and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CH 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CI and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CI 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CK and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CK 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CL and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CL 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CM and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CM 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CN and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CN 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CO and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CO 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CR and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CR 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CU and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CU 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CV and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CV 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CX and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CX 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CY and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CY 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CZ and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_CZ 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_DE and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_DE 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_DJ and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_DJ 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_DK and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_DK 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_DM and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_DM 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_DO and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_DO 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_DZ and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_DZ 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_EC and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_EC 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_EE and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_EE 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_EG and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_EG 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ER and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ER 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ES and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ES 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ET and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ET 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_FI and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_FI 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_FJ and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_FJ 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_FK and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_FK 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_FM and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_FM 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_FO and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_FO 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_FR and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_FR 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GA and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GA 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GB and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GB 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GD and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GD 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GE and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GE 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GF and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GF 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GG and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GG 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GH and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GH 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GI and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GI 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GL and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GL 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GM and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GM 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GN and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GN 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GP and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GP 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GQ and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GQ 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GR and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GR 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GT and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GT 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GU and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GU 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GW and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GW 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GY and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_GY 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_HK and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_HK 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_HN and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_HN 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_HR and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_HR 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_HT and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_HT 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_HU and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_HU 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ID and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ID 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_IE and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_IE 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_IL and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_IL 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_IM and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_IM 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_IN and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_IN 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_IO and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_IO 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_IQ and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_IQ 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_IR and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_IR 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_IS and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_IS 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_IT and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_IT 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_JE and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_JE 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_JM and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_JM 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_JO and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_JO 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_JP and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_JP 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KE and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KE 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KG and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KG 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KH and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KH 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KI and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KI 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KM and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KM 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KN and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KN 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KP and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KP 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KR and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KR 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KW and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KW 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KY and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KY 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KZ and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_KZ 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LA and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LA 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LB and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LB 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LC and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LC 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LI and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LI 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LK and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LK 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LR and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LR 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LS and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LS 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LT and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LT 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LU and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LU 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LV and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LV 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LY and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_LY 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MA and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MA 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MC and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MC 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MD and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MD 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ME and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ME 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MF and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MF 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MG and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MG 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MH and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MH 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MK and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MK 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ML and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ML 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MM and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MM 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MN and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MN 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MO and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MO 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MP and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MP 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MQ and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MQ 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MR and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MR 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MS and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MS 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MT and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MT 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MU and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MU 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MV and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MV 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MW and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MW 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MX and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MX 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MY and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MY 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MZ and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_MZ 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NA and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NA 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NC and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NC 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NE and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NE 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NF and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NF 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NG and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NG 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NI and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NI 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NL and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NL 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NO and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NO 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NP and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NP 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NR and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NR 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NU and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NU 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NZ and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_NZ 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_OM and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_OM 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PA and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PA 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PE and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PE 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PF and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PF 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PG and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PG 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PH and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PH 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PK and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PK 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PL and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PL 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PM and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PM 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PR and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PR 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PS and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PS 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PT and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PT 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PW and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PW 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PY and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_PY 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_QA and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_QA 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_RE and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_RE 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_RO and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_RO 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_RS and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_RS 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_RU and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_RU 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_RW and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_RW 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SA and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SA 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SB and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SB 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SC and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SC 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SD and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SD 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SE and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SE 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SG and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SG 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SH and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SH 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SI and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SI 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SJ and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SJ 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SK and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SK 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SL and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SL 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SM and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SM 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SN and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SN 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SO and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SO 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SR and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SR 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ST and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ST 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SV and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SV 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SY and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SY 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SZ and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_SZ 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TC and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TC 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TD and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TD 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TG and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TG 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TH and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TH 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TJ and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TJ 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TK and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TK 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TL and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TL 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TM and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TM 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TN and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TN 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TO and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TO 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TR and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TR 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TT and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TT 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TV and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TV 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TW and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TW 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TZ and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_TZ 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_UA and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_UA 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_UG and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_UG 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_US and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_US 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_UY and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_UY 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_UZ and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_UZ 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_VA and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_VA 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_VC and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_VC 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_VE and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_VE 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_VG and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_VG 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_VI and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_VI 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_VN and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_VN 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_VU and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_VU 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_WF and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_WF 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_WS and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_WS 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_YE and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_YE 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_YT and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_YT 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ZA and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ZA 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ZM and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ZM 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 Binary files a/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ZW and b/java/src/com/android/i18n/phonenumbers/data/PhoneNumberMetadataProto_ZW 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 possibleLengths = new TreeSet(); - 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 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 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. @@ -35,11 +35,6 @@ class DefaultMapStorage extends AreaCodeMapStorageStrategy { private int[] phoneNumberPrefixes; 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 sortedAreaCodeMap) { + public void readFromSortedMap(SortedMap areaCodeMap) { SortedSet descriptionsSet = new TreeSet(); - 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 entry : sortedAreaCodeMap.entrySet()) { + for (Entry 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 descriptionsSet, + SortedMap 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() { - 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/20_en 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/212_en 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/212_fr 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/213_en 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/216_en 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/220_en 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/221_en 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/222_en 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/222_fr 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/224_en 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/225_en 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/225_fr 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/226_en 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/228_en 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/228_es 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/228_fr 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/229_en 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/229_fr 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/230_en 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/230_es 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/230_fr 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/232_en 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/233_en 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/238_en 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/238_pt 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/239_en 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/239_pt 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/242_en 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/242_fr 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/243_en 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/243_fr 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/244_en 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/244_pt 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/245_en 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/245_pt 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/247_en 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/249_en 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/251_en 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/252_en 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/254_en 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/256_en 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/258_en 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/258_pt 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/260_en 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/261_en 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/263_en 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/264_en 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/266_en 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/267_en 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/268_en 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/269_en 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/269_fr 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/27_en 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/290_en 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/290_fr 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/299_en 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/30_el 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/30_en 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/31_en 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 Binary files a/java/src/com/android/i18n/phonenumbers/geocoding/data/31_nl and b/java/src/com/android/i18n/phonenumbers/geocoding/data/31_nl 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/33_en 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 Binary files a/java/src/com/android/i18n/phonenumbers/geocoding/data/33_fr and b/java/src/com/android/i18n/phonenumbers/geocoding/data/33_fr 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/34_en 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 Binary files a/java/src/com/android/i18n/phonenumbers/geocoding/data/34_es and b/java/src/com/android/i18n/phonenumbers/geocoding/data/34_es 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/351_en 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 Binary files a/java/src/com/android/i18n/phonenumbers/geocoding/data/351_pt and b/java/src/com/android/i18n/phonenumbers/geocoding/data/351_pt 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/352_de 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/352_en 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/354_en 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/355_en 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/358_en 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/358_fi 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/358_se 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/36_en 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/36_hu 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/370_en 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/371_en 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/372_en 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/373_en 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/373_ro 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/373_ru 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/374_en 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/381_en 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/381_sr 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 Binary files a/java/src/com/android/i18n/phonenumbers/geocoding/data/39_it and b/java/src/com/android/i18n/phonenumbers/geocoding/data/39_it 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 Binary files a/java/src/com/android/i18n/phonenumbers/geocoding/data/41_de and b/java/src/com/android/i18n/phonenumbers/geocoding/data/41_de 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 Binary files a/java/src/com/android/i18n/phonenumbers/geocoding/data/41_fr and b/java/src/com/android/i18n/phonenumbers/geocoding/data/41_fr 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 Binary files a/java/src/com/android/i18n/phonenumbers/geocoding/data/41_it and b/java/src/com/android/i18n/phonenumbers/geocoding/data/41_it 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/420_en 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/421_en 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 Binary files a/java/src/com/android/i18n/phonenumbers/geocoding/data/43_de and b/java/src/com/android/i18n/phonenumbers/geocoding/data/43_de 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/43_en 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/46_en 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 Binary files a/java/src/com/android/i18n/phonenumbers/geocoding/data/46_sv and b/java/src/com/android/i18n/phonenumbers/geocoding/data/46_sv 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/48_en 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/48_pl 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 Binary files a/java/src/com/android/i18n/phonenumbers/geocoding/data/49_de and b/java/src/com/android/i18n/phonenumbers/geocoding/data/49_de 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/49_en 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/51_en 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/53_en 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/54_en 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 Binary files a/java/src/com/android/i18n/phonenumbers/geocoding/data/54_es and b/java/src/com/android/i18n/phonenumbers/geocoding/data/54_es 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/55_en 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/56_en 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/58_en 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/58_es 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/81_en 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/84_en 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/84_vi 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/86_en 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 Binary files a/java/src/com/android/i18n/phonenumbers/geocoding/data/86_zh and b/java/src/com/android/i18n/phonenumbers/geocoding/data/86_zh 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 Binary files a/java/src/com/android/i18n/phonenumbers/geocoding/data/90_tr and b/java/src/com/android/i18n/phonenumbers/geocoding/data/90_tr 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 Binary files /dev/null and b/java/src/com/android/i18n/phonenumbers/geocoding/data/94_en 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 Binary files a/java/src/com/android/i18n/phonenumbers/geocoding/data/config and b/java/src/com/android/i18n/phonenumbers/geocoding/data/config differ -- cgit v1.2.3