1 June 21st, 2012: libphonenumber-4.9 2 * Bug fix 3 - formatInOriginalFormat fixed not to add a star sign if it was not present 4 originally. 5 * Metadata changes 6 - BF, CZ, ES, KW 7 - Non-geographical entities with calling code 882 (BebbiCell, Maritime 8 Communications, Oration Technologies, Telespazio and Thuraya) 9 - Geocoding data updates for country calling codes 221, 224, 226, 242, 244, 245 10 * Functionality changes: 11 - Minimum allowed length for a national significant number (NSN) when parsing 12 changed from 3 to 2. 13 - Support parsing of RFC3966-formatted strings with an isdn-subaddress or extra 14 parameters specified. 15 - Allow soft hyphen to appear in phone numbers (\u00AD) 16 * Testing changes: 17 - Add extra unit tests for non-geographical phone number entities 18 - ExampleNumbersTest testEmergency tests now uses ShortNumberUtil 19 20 June 14th, 2012: libphonenumber-4.8.5 21 * Metadata update only: 22 - AC, CR, DE, DK, IL, IN, IS, KH, LI, LR, MA, MD, MK, PA, SA, SG, SS 23 24 June 6th, 2012: libphonenumber-4.8.4 25 * Metadata update only: 26 - AE, RO 27 - Non-geographical entity with calling code 881 (Iridium) 28 29 May 30th, 2012: libphonenumber-4.8.3 30 * Metadata update only: 31 - AN, ET, KW, MN, SX, TC, TL 32 33 May 16th, 2012: libphonenumber-4.8.2 34 * Metadata update only: 35 - BH, CR, EE, JO, KW, LA, QA, SI, TH 36 - Non-geographical entity with calling code 878 (VISIONng) 37 38 May 8th, 2012: libphonenumber-4.8.1 39 * Metadata update only: 40 - CA, CI, EG, HK, IN, IR, LB, MA, ME, MM 41 - Non-geographical entity with calling code 870 (Inmarsat) 42 - Geocoding updates for country calling codes 1 for new area codes 43 44 April 24th, 2012: libphonenumber-4.8 45 * Functionality changes 46 - RFC format now outputs a number starting with "tel:" 47 - Parsing support for numbers in RFC format that contain the country info in the "phone-context" 48 part 49 - Support for obtaining area codes for Italy, Vatican City, San Marino 50 * Metadata changes 51 - AM, AO, AR, BE, BF, CD, EG, GH, GM, GN, IN, IR, IT, JO, LA, LC, MD, MS, NO, PA, PK, SI, SJ, SO, 52 SY, TC, TN, UZ, VN, ZW 53 - Geocoding updates for country calling codes 1, 20, 233, 31, 33, 352, 374, 54, 56, 86 54 * Refactoring of matching functions, including moving them to PhoneNumberMatcher. 55 56 March 16th, 2012: libphonenumber-4.7 57 * Bug fixes 58 - Now return "too long" for input that is longer than 250 chars when parsing 59 * Metadata changes 60 - AC,AM,AT,AZ,BF,BR,BY,BZ,CR,CU,DE,DJ,EE,EG,ET,GA,GH,HK,HN,ID,IN,JP,KE,KG,KH,KR,KW,KY,LB,LU,MA,MD, 61 MK,NA,NE,NZ,SA,SB,SC,SE,SL,SN,UZ 62 * Refactoring of test classes so that tests requiring the test metadata to be loaded have a common 63 base class which handles this. 64 65 February 9th, 2012: libphonenumber-4.6 66 * Bug fixes 67 - Fix for formatByPattern to enable RFC formatting to work 68 - Fix for RFC formatting to work even when the international formatting rule starts with 69 punctuation 70 - Logging consistency changes - some warnings are no longer printed, others have become only 71 WARNINGS 72 - Fix for isValidNumberForRegion potentially throwing a NPE 73 - Parsing Israeli * numbers written in international format now works 74 - PhoneNumberMatcher doesn't match timestamps as phone-numbers 75 * Metadata changes 76 - Updates for AN, AX, BF, BJ, BR, BS, DJ, FI, IN, LV, MW, RS, SC, VN 77 - New countries supported: SS (South Sudan), CW (Curaao) and BQ (Bonaire, Sint Eustatius and Saba) 78 * Refactoring of the private formatting functions in PhoneNumberUtil to ensure names are more 79 descriptive and to reduce code duplication. 80 81 January 19th, 2012: libphonenumber-4.5 82 * Code changes 83 - Support for non-geographical country calling codes (e.g. +800). 84 - Modify formatInOriginalFormat to not insert/remove/modify digits in the original number passed 85 in. 86 - Fix formatOutOfCountryKeepingAlphaChars to not throw a NPE. 87 88 * Metadata changes 89 - Updates for AR, BH, CI, CN, CR, DE, GA, IL, JO, JP, KE, KZ, LB, LK, LT, MV, MW, MZ, NA, NL, NZ, 90 PL, RO, SA, SV, TM, UG, US 91 - New country calling codes: 800, 808, 883, 888, 979 92 - Geocoding data updates: AR, US 93 94 December 9th, 2011: libphonenumber-4.4 95 * Code changes 96 - Support for Voicemail numbers 97 - Support prefixes "xt" and "xtn" to indicate extensions of phone numbers 98 - Change formatInOriginalFormat to use raw_input for numbers with incorrect leading zeroes, instead 99 of all invalid numbers. 100 101 * Metadata changes 102 - Updates for AR, BD, CH, CI, IL, IR, IS, IT, JP, KW, LR, MM, NG, SA, SC, UZ 103 104 November 24th, 2011: libphonenumber-4.3 105 * Code changes 106 - Fix the problems with AYTF crashing for longer numbers entered with +CountryCode, and incorrectly 107 removing national prefix for some numbers. 108 - Improve PhoneNumberMatcher to not match numbers ending with '%'. 109 - Fix formatNumberForMobileDialing to handle Israeli star numbers, Peruvian and Colombian numbers. 110 - Modify formatInOriginalFormat to use the raw input if we don't have a formatting pattern for a 111 number. 112 - Simple offline geocoding function which takes into account the user's region. 113 114 * Metadata changes 115 - Updates for CR, GN, JP, KE, PL, SG, SR, SX, TH, TK 116 117 November 10th, 2011: libphonenumber-4.2 118 * Code changes 119 - Providing an "exact match" isEmergencyNumber method 120 - Improvement to PhoneNumberMatcher: requires national prefix to be present 121 when matching national-format numbers, unless matching for a region where it 122 is explicitly marked in the metadata that they may be omitted. Applies to 123 leniency level VALID and higher. 124 - Change formatNumberForMobileDialing not to modify the phoneNumber passed in. 125 126 * Metadata changes 127 - Emergency numbers added for all remaining countries 128 - Collected data on which numbers we format with a national prefix are 129 commonly written without one and added this 130 - Updates for AR, AT, BH, CZ, GR, IR, KM, LT, MX, PT, SE, SO, UG 131 - Addition of SX (Sint Maarten) 132 133 October 19th, 2011: libphonenumber-4.1 134 * Code changes 135 - Update code and metadata for countries with IDD "8~10" to accept phone 136 numbers where the "~" is omitted. 137 - Modify formatInOriginalFormat to use raw_input (when present) when the number 138 is considered as invalid by the library. 139 - Add ShortNumberUtil to deal with international short phone numbers, such as 140 short codes and emergency numbers. 141 - Increase the maximum phone-number length accepted when parsing (now set to 142 16). 143 144 * Metadata changes 145 - Updates: BF, BN, CN, DE, DK, DO, FR, IN, KI, KW, MC, MD, ML, PA, QA, SB, UK, 146 WS 147 - Emergency number information also added to: AE, AF, AL, AM, AR, AT, AU, BA, 148 BB, BD, BE, BG, BH, BO, BR, BY, CA, CH, CL, CN, CO, CR, CY, CZ, DE, DJ, DK, 149 DO, DZ, EC, EE, EG, ES, FI, FJ, FO, FR, GB, GE, GF, GH, GI, GL, GR, GT, GY, 150 HK, HN, HR, HU, ID, IE, IL, IN, IR, IS, IT, JM, JO, JP, KR, KW, KY, KZ, LB, 151 LK, LT, LU, LV, MA, MC, MD, ME, MK, ML, MM, MN, MO, MT, MU, MV, MX, MY, NG, 152 NI, NL, NO, NP, OM, PA, PE, PH, PK, PL, PM, PT, PY, QA, RO, RS, RU, RW, SA, 153 SB, SD, SE, SG, SI, SK, SL, SM, SR, SV, SY, TD, TH, TJ, TM, TN, TR, TT, TW, 154 UA, UG, US, UY, UZ, VA, VE, VN, VU, ZA, ZM, ZW 155 156 October 6th, 2011: libphonenumber-4.0 157 * Code changes 158 - New function formatNumberForMobileDialing, which attempts to format a number in 159 such a way that the call can be connected from a mobile phone. If this is 160 impossible, for example for numbers that cannot be internationally dialled, 161 then an empty string is returned. 162 - Fallback functionality to English for non-CJK languages for geocoding 163 164 * Metadata changes 165 - Collecting data for emergency numbers 166 - Updates: AR, AU, BR, CN, CZ, EG, GD, IE, IL, JM, KW, KH, SD, SO, TR, UG, UZ 167 - Geocoding data changes: AO, AR, AT, BJ, BR, CD, CG, CI, CL, CN, CV, DE, ES, 168 FR, GR, GW, HU, KM, MR, MZ, NL, PL, PT, SE, ST, SZ 169 170 September 13th, 2011: libphonenumber-3.9 171 * Code changes 172 - Enable AsYouTypeFormatter to handle long IDD and NDD. 173 - Allow the presence of an IDD following a +. 174 - Fix formatting of phone numbers which contain only 0s in the national number. 175 - Refactored some code in geocoding including AreaCodeMap and the storage 176 strategies. 177 178 * Metadata changes 179 - Updates: AM, BE, BH, BJ, BR, BT, BZ, CI, CL, CN, DE, DK, DM, DZ, EC, EG, FJ, 180 GR, HR, HT, IN, IQ, IS, JM, KE, KG, KH, KR, LA, LB, LR, MA, MD, ML, MO, MX, 181 MY, NE, NG, PG, PH, PK, PY, QA, SA, SD, SG, SN, TD, TG, TH, TN, TT, UG, YE, 182 ZA, ZM 183 - New geocoding data for: AC, CG, CU, CV, EG, ET, FI, FI, FI, GL, JP, KM, MA, 184 MA, MU, MU, MU, MZ, RS, SH, SH, SL, SO, ST, TG, TG, TG, UG, ZM 185 - Updated geocoding data for: AR, DE 186 187 August 11th, 2011: libphonenumber-3.8 188 * Code changes 189 - Fix to demo to not throw null-ptr exceptions for invalid NANPA numbers 190 - Fixed AYTF to not accept plus signs in the middle of input 191 - PhoneNumberMatcher improvements - added STRICT_GROUPING and EXACT_GROUPING 192 levels, numbers followed/preceded by a currency symbol will not match, 193 multiple numbers separated by phone-number punctuation will now match. ", " 194 is no longer accepted as an extension symbol when matching, only when 195 parsing. "x" is only accepted as a carrier code or extension marker, not 196 otherwise. 197 - Changes to handling of leading zeroes - these will not be silently ignored 198 anymore, but will be stored as part of the number. 199 - PhoneNumberOfflineGeocoder - new method to get the description of a number that assumes 200 the validity of the number has already been checked and will not re-verify it. 201 - Split geocoding US binary data into multiple files. 202 203 * Metadata changes 204 - Updates: AR, AT, AU, AZ, BE, BF, BH, BY, CA, CN, CO, CR, HT, HU, IT, KG, KH, 205 LB, LI, ME, NC, RS, SE, TT, US, VG, ZA 206 - New geocoding data for: AL, AM, AO, BF, BJ, BW, CD, CI, CZ, DZ, EE, GH, GM, 207 GN, GR, GW, HU, IS, KE, LK, LS, LT, LU, LV, MD, MG, MR, NA, PE, QN, SD, SK, 208 SN, SZ, TN, VE, VN, ZA, ZW 209 - Updated geocoding data for: GB, PT, US 210 - Revised sorting of geocoding data 211 212 July 5th, 2011 213 * Code changes 214 - Refactored AreaCodeMap to minimize binary and memory footprint by using 2 different strategies. 215 - Refactored BuildMetadataFromXml.java and added unittests. 216 217 * Metadata changes 218 - Regenerate binaries for all existing area code mapping data with smaller sizes. 219 - Added city-level area code data mapping for US and Canada. 220 221 June 29th, 2011 222 * Code changes 223 - Fixed issue 38, issue 39, issue 41 and issue 43 224 225 * Metadata changes 226 - Added phone number area mapping files for 227 - JP in Japanese 228 - FR in French 229 - TW in English, Simplified and Traditional Chinese 230 - RU in English 231 - IT in English and Italian 232 - PT in Portuguese 233 - TR in English and Turkish 234 - CH in English, German, French and Italian 235 - Updates: CR, GE, IT, JP, KW, MH, MP, MU, PE, PM, RW, TG, TJ, TK 236 237 June 14th, 2011 238 * Code changes 239 - Added PhoneNumberOfflineGeocoder, supporting classes and their unittests. 240 - Added GenerateAreaCodeData to transform phone number area mapping files from text files to binary 241 files. 242 - Modified PhoneNumberParserServlet.java and phonenumberparser.jsp to incorporate 243 PhoneNumberOfflineGeocoding in the appengine demo. 244 245 * Metadata changes 246 - Added phone number area mapping files for NANPA countries and GB in English, NL in Dutch, AR, CL 247 and ES in Spanish, AT and DE in German, SE in Swedish, BR in Portuguese, KR in English, Korean, 248 Simplified and Traditional Chinese, and CN in Simplified Chinese. 249 250 June 10th, 2011 251 * Code changes: 252 - Fixes for PhoneNumberMatcher to be more restrictive in valid mode and not match numbers 253 surrounded by Latin characters. This ensures, for example, the string abc123456789acg will not be 254 marked as a phone numbers. 255 - Enable PhoneNumberUtil to handle all digits, rather than a subset 256 - Fix for AYTF issue36 and improvement for US AYTF behaviour. 257 * Metadata changes: 258 - Updates: BG, EG, ES, GH, PF, SC, SY, VA 259 260 May 24th, 2011 261 * Code changes: 262 - Phonenumber now implements Serializable. 263 - findNumbers doesn't accept numbers with mis-matched brackets as phone-numbers 264 - An offline phone number geocoder has been added. The current implementation just returns the 265 region name for the phone number; more detailed geocoding will be added later. 266 * Metadata changes: 267 - New countries: GF, KP, NC, PA, PF, PW, PY, SB, SR, TO, UY, VU 268 - Updates: CY, CZ, ES, GB, GQ, JM, MQ, TN, VI 269 270 May 9th, 2011 271 * Code changes: 272 - Fixed potential for a null-ptr exception in getExampleNumber 273 - Potential speed improvement with replacement of StringBuffer with StringBuilder 274 * Metadata changes 275 - Changed way that international formats are specified to make it easier to do so 276 - New countries: AX, CC, CX, WF 277 - Updates: AM, AR, AU, AW, CN, CO, CR, DM, EC, ET, FI, FJ, GH, IN, JP, KE, KM, 278 KN, LR, MD, MQ, MX, NP, PH, SC, SE, SM, SN, SY, UG, US, VC, VI, ZM 279 280 Apr 26th, 2011 281 * Code changes: 282 - Improved PhoneNumberMatcher for cases with other numbers before or after the phone number. 283 - Improved AsYouTypeFormatter not to use formatting rules containing non-formatting characters 284 (e.g. '*' in Israeli star numbers). 285 * Metadata changes: 286 - New countries: FJ, FM, GY, NF, NI, NR, TV. 287 - Updates: AM, AZ, BF, BW, BZ, CI, CR, GB, GP, HK, JM, KH, LB, LY, MV, PE, PK, SZ, TJ, US. 288 * Minor documentation updates 289 290 Apr 11th, 2011 291 * Bug fixes: 292 - Adding date exclusion pattern in PhoneNumberMatcher. 293 - Fixing bug with selecting a suitable region for numbers with leading zeros where mutiple regions 294 for that country code are possible. 295 * Metadata changes: 296 - Updates: AG, AI, AS, BB, BM, BS, CA, DM, DO, ET, FO, GD, GE, GU, IN, JM, KN, KY, LC, MN, MP, MR, 297 MS, NO, PR, TC, TR, TT, US, VC, VG, VI 298 - New countries: CK, FK, GT, IO, KI, SJ, SV 299 * Documentation updates and some small refactoring to AsYouTypeFormatter 300 301 Mar 31st, 2011 302 * New functionality: 303 - Can parse and format numbers in RFC-3966 format. 304 - Added isAlphaNumber to check to see if a number is a "vanity" or "alpha" number 305 - Can format a number made up of alpha-characters in an "out-of-country" format (e.g. 0011 1 306 800-SIX-FLAG to dial an American alpha-number from Australia). 307 * Code changes: 308 - Renamed private vars, private methods and fixed comments to try and differentiate between country 309 (calling) codes and region codes. 310 == Non-backwards-compatible API changes: == 311 - Renamed getSupportedCountries to getSupportedRegions, as this more accurately reflects that the 312 library is based around region codes. 313 - getNationalSignificantNumber is no longer a static method, but is instead an instance method. 314 * Metadata changes: 315 - Bug-fixes and updates for AU, AZ, EE, FI, IN, JO, KW, KZ, MV, RU, RR, VA 316 - New country: ME 317 318 Mar 22nd, 2011 319 * Metadata changes: 320 - New mobile-number pattern for AU 321 322 Mar 10th, 2011 323 * New functionality: 324 - New function to format a number with the preferred domestic carrier code used when parsing, 325 falling back to a default calling code otherwise (formatNationalNumberWithPreferredCarrierCode). 326 - We now store the preferred domestic carrier code used when the user calls parseAndKeepRawInput 327 - New functionality to extract phone-numbers from text (findNumbers). This is just the first 328 version - it does not extract ALPHA numbers such as 0800 CALL ME, or numbers where alternate 329 endings are specified (such as 03-331 6005/6006). 330 * Code changes: 331 - Tidying up the test file to use several pre-defined phone number constants 332 - Fixing several lint errors 333 - Added javadoc to formatNationalNumberWithCarrierCode 334 - Fixed bug where a null pointer exception was thrown when getAsYouTypeFormatter was called with an 335 invalid region code 336 - Improved AsYouTypeFormatter to deal with countries with variable-length patterns such as LU 337 * Metadata changes: 338 - Bug-fixes and updates for the following countries: BF, BO, BR, CL, CO, CR, DK, FO, GE, KR, KW, 339 LA, LU, MU, SC, SH, TR, VE 340 - New country: SH 341 342 Mar 10th, 2011 343 * Code changes: 344 - releasing the code to run the demo on localhost or appengine. 345 346 Mar 7th, 2011 347 * Metadata changes: 348 - Adding support for AC 349 350 Feb 11th, 2011 351 * Metadata changes: 352 - Update UAN number ranges for IM and JE. 353 354 Feb 9th, 2011 355 * Code changes: 356 - Better isNumberMatch method. This will now recognise numbers starting with a national prefix as 357 an NSN_MATCH, instead of SHORT_NSN_MATCH. 358 == Note Non-backwards-compatible API change here! == 359 This will no longer throw a NumberParseException - instead we will return NOT_A_NUMBER if one 360 or other of the numbers provided do not match. 361 - New number-type UAN now supported in the code. This represents Company Numbers or Universally 362 Accessible Numbers. 363 * Metadata changes: 364 - Bug-fixes and updates for the following countries: AG, AZ, BA, BE, CA, CU, ES, FI, GB, GD, GG, 365 IE, IL, IM, IN, IR, IT, JE, JP, KR, KW, NG, NZ, PK, PS, PT, RU, SE, SG, SY, US 366 - New countries: CO, LU, LY, MC, SM 367 - Addition of "Personal Number" ranges to all NANPA countries 368 369 Jan 31st, 2011 370 * Code changes: 371 - Introducing equals() and hashCode() methods for the Phonenumber.PhoneNumber class 372 373 Jan 28th, 2011 374 * Code changes: 375 - Fixing critical bug with non-Android-compatible code. isEmpty() was being used and CANON_EQ in 376 reg-ex matches. 377 378 Jan 20th, 2011 379 * Code improvements: 380 - Handle null phone-numbers when parsing by throwing a NumberParseException. 381 - Handle extension written with an accented "o", as per Spanish, when parsing. 382 - Handle U+30FC dashes as phone-number punctuation. 383 - Allow "ZZ" or null regions to be specified for numbers starting with a full-width "+" symbol, or 384 with other characters (such as whitespace) before the leading +. 385 - new getLengthOfNationalDestinationCode function 386 * Metadata changes: 387 - New types of numbers introduced: UAN (universal or "company" numbers) and short codes. Note that 388 "generalDesc" patterns do not encompass short-codes. No code-support for these has been 389 introduced as of yet. We are also now enabling the collection of data for information such as 390 area-code-optional, and no-international-dialling ranges. 391 - Data updates as per ITU notifications/bug fixes for the following countries: AM, BH, CD, CG, CR, 392 DE, DJ, EE, GB, GN, HU, IE, JO, JP, LB, LR, MA, MK, MN, MR, NA, PG, SC, SG, SO, SZ, VN, ZA, ZW 393 - Data added for the following countries: BZ, CU, EC, FO, GI, HN, HT, LK, MT, MV, NU, PS, SD 394 - Indentation fixes in reg-exes for the following countries: BG, GB 395 - Allow nationalPrefixForParsing to be specified for countries with no national prefix, to handle 396 possible carrier prefixes 397 398 Jan 3rd, 2011 399 * Metadata changes: 400 - Updates to JE 401 - Updated comments for GB/GG/IM/JE 402 403 November 25th, 2010 404 * Metadata changes: 405 - Updates to existing countries: AD, AG, AI, AN, AS, BB, BG, BM, BS, BW, CA, DM, DO, GD, GH, GM, 406 GU, IN, JM, KN, KY, KZ, LB, LC, MP, MS, PR, SY, TC, TT, TZ, US, VC, VG, VI. 407 - Reorganize reg-exes for better readability. 408 - Updated comments. 409 410 October 22nd, 2010 411 * Metadata changes: 412 - Updates to existing countries: AE, GB, GG, IM, JE 413 414 October 15th, 2010 415 * Code improvements: 416 - Allowed parsing of numbers that start with "++" or a full-width "+" symbol 417 - Allowed reg-exes for national and possible number patterns to have white space in them in the 418 source XML file 419 - Added a more useful toString method for the phone number proto class 420 * Metadata changes: 421 - Updates to existing countries: AF, BF, BO, ES, GB, GG, IM, IS, JE, JE, JP, KR, PE, PT, RU, SE, 422 TT, ZW 423 * Bug fixes: 424 - Parsing empty strings with invalid region codes no longer throws a null pointer exception 425 426 September 4th, 2010 427 * Code improvement: 428 - Added new phone number type: pager 429 * Metadata change: 430 - update to existing country: GG, IM, JE, RS, RU 431 * Bug fixes: 432 - ArrayOutOfBoundException in AsYouTypeFormatter.getRememberedPosition() 433 - AsYouTypeFormatter for UK childline number 434 435 September 1st, 2010 436 * Bug fix on KZ metadata. 437 438 August 17th, 2010 439 * Code improvement: 440 - Refactored BuildMetadataProtoFromXml.java into BuildMetadataFromXml.java and 441 BuildMetadataProtoFromXml.java 442 - Added BuildMetadataProtoFromXml.java and JSArrayBuilder.java 443 - Refactored CountryCodeToRegionCodeMap and CountryCodeToRegionCodeMapForTesting into separate 444 files. 445 446 August 16th, 2010 447 * Bug fixes 448 - AsYouTypeFormatter for formatting Chinese geographical numbers entered in national format. 449 - AsYouTypeFormatter for formatting Chinese 400/800 numbers entered in national format. 450 * Metadata change: 451 - new countries: AM, AN, BH, GL, IS 452 - adding national prefix 1 to all NANPA countries. 453 - update to existing countries: BF, FR, UK, PK, RE 454 455 August 4th, 2010 456 * Further improve startup performance 457 - Preload no country specific metadata at startup. 458 - Stop creating the file containing mapping from country calling code to region code 459 and loading it at startup; instead, do the initialization in PhoneNumberUtil. 460 461 July 31th, 2010 462 463 * Improve startup performance 464 - Separate generated metadata binary file to one file per region 465 - Preload US at start up, and load other region at the time when needed 466 - Create a file containing mapping from country calling code to region code, 467 and load it at startup 468 - Same change also applied to unittests 469 470 July 30th, 2010 471 * Metadata change: 472 - new country: TL 473 - update to existing country: AZ, CN, FR, GH, JO, LA, PG, PK, QA, SZ, UA, VN 474 475 * Code improvement 476 - China local number formatting for AsYouTypeFormatter 477 - improve extension parsing to handle number in the form of +1 (645) 123 1234 ext. 910# 478