@coinbase/cdp-react 0.0.58 → 0.0.60

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (116) hide show
  1. package/dist/assets/Banner.css +1 -0
  2. package/dist/assets/CopyAddress.css +1 -0
  3. package/dist/assets/ExportWallet.css +1 -0
  4. package/dist/assets/ExportWalletModal.css +1 -0
  5. package/dist/assets/IframeButton.css +1 -0
  6. package/dist/assets/Input.css +1 -1
  7. package/dist/assets/LinkAuth.css +1 -0
  8. package/dist/assets/LinkAuthFlow.css +1 -0
  9. package/dist/assets/LinkAuthFlowBackButton.css +1 -0
  10. package/dist/assets/LinkAuthItem.css +1 -0
  11. package/dist/assets/LinkAuthItems.css +1 -0
  12. package/dist/assets/LinkAuthModal.css +1 -0
  13. package/dist/assets/LinkAuthTitle.css +1 -0
  14. package/dist/assets/SwitchSlideTransition.css +1 -1
  15. package/dist/chunks/LinkAuthFlow.BZtyaLN-.js +111 -0
  16. package/dist/components/CDPReactProvider/index.js +68 -55
  17. package/dist/components/CopyAddress/index.d.ts +8 -0
  18. package/dist/components/CopyAddress/index.js +61 -0
  19. package/dist/components/CopyEvmKeyButton/index.d.ts +13 -0
  20. package/dist/components/CopyEvmKeyButton/index.js +62 -0
  21. package/dist/components/CopySolanaKeyButton/index.d.ts +13 -0
  22. package/dist/components/CopySolanaKeyButton/index.js +62 -0
  23. package/dist/components/ExportWallet/index.d.ts +21 -0
  24. package/dist/components/ExportWallet/index.js +110 -0
  25. package/dist/components/ExportWalletModal/index.d.ts +18 -0
  26. package/dist/components/ExportWalletModal/index.js +96 -0
  27. package/dist/components/LinkAuth/LinkAuthFlow.d.ts +13 -0
  28. package/dist/components/LinkAuth/LinkAuthFlow.js +19 -0
  29. package/dist/components/LinkAuth/LinkAuthFlowBackButton.d.ts +9 -0
  30. package/dist/components/LinkAuth/LinkAuthFlowBackButton.js +40 -0
  31. package/dist/components/LinkAuth/LinkAuthFlowProvider.d.ts +33 -0
  32. package/dist/components/LinkAuth/LinkAuthFlowProvider.js +9 -0
  33. package/dist/components/LinkAuth/LinkAuthItem.d.ts +13 -0
  34. package/dist/components/LinkAuth/LinkAuthItem.js +48 -0
  35. package/dist/components/LinkAuth/LinkAuthItems.d.ts +9 -0
  36. package/dist/components/LinkAuth/LinkAuthItems.js +47 -0
  37. package/dist/components/LinkAuth/LinkAuthProvider.d.ts +12 -0
  38. package/dist/components/LinkAuth/LinkAuthProvider.js +108 -0
  39. package/dist/components/LinkAuth/LinkAuthTitle.d.ts +9 -0
  40. package/dist/components/LinkAuth/LinkAuthTitle.js +19 -0
  41. package/dist/components/LinkAuth/index.d.ts +17 -0
  42. package/dist/components/LinkAuth/index.js +93 -0
  43. package/dist/components/LinkAuth/types.d.ts +32 -0
  44. package/dist/components/LinkAuth/types.js +5 -0
  45. package/dist/components/LinkAuth/utils.d.ts +4 -0
  46. package/dist/components/LinkAuth/utils.js +7 -0
  47. package/dist/components/LinkAuthModal/index.d.ts +21 -0
  48. package/dist/components/LinkAuthModal/index.js +69 -0
  49. package/dist/components/OAuthStatusModal/index.d.ts +7 -1
  50. package/dist/components/OAuthStatusModal/index.js +115 -93
  51. package/dist/components/SignIn/SignInAuthMethodButtons.js +36 -34
  52. package/dist/components/SignIn/SignInForm.d.ts +2 -1
  53. package/dist/components/SignIn/SignInForm.js +19 -18
  54. package/dist/components/SignIn/SignInProvider.d.ts +2 -1
  55. package/dist/components/SignIn/SignInProvider.js +22 -17
  56. package/dist/components/SignIn/flows/SignInWithEmail.d.ts +1 -1
  57. package/dist/components/SignIn/flows/SignInWithEmail.js +66 -61
  58. package/dist/components/SignIn/flows/SignInWithSms.d.ts +1 -1
  59. package/dist/components/SignIn/flows/SignInWithSms.js +90 -2987
  60. package/dist/components/SignIn/hooks/useSignInWithOAuth.d.ts +0 -1
  61. package/dist/components/SignIn/hooks/useSignInWithOAuth.js +19 -20
  62. package/dist/components/SignIn/index.d.ts +3 -1
  63. package/dist/components/SignIn/index.js +16 -11
  64. package/dist/components/SignIn/types.d.ts +2 -0
  65. package/dist/components/SignIn/useSignInReducer.js +1 -0
  66. package/dist/components/SignInModal/index.d.ts +3 -1
  67. package/dist/components/SignInModal/index.js +72 -65
  68. package/dist/components/forms/Label/index.d.ts +2 -2
  69. package/dist/components/forms/PhoneNumberInput/index.js +24 -22
  70. package/dist/components/ui/Banner/index.d.ts +7 -0
  71. package/dist/components/ui/Banner/index.js +27 -0
  72. package/dist/components/ui/IframeButton/index.d.ts +11 -0
  73. package/dist/components/ui/IframeButton/index.js +50 -0
  74. package/dist/components/ui/Modal/index.js +22 -22
  75. package/dist/components/ui/SwitchTransition/index.d.ts +3 -1
  76. package/dist/components/ui/SwitchTransition/index.js +1 -1
  77. package/dist/hooks/useKeyExportPostMessage.d.ts +37 -0
  78. package/dist/hooks/useKeyExportPostMessage.js +86 -0
  79. package/dist/hooks/useTransitionMap.d.ts +50 -0
  80. package/dist/hooks/useTransitionMap.js +92 -0
  81. package/dist/icons/IconCopy.d.ts +2 -0
  82. package/dist/icons/IconCopy.js +10 -0
  83. package/dist/icons/index.d.ts +1 -0
  84. package/dist/icons/index.js +20 -18
  85. package/dist/index.d.ts +2 -2
  86. package/dist/index.js +122 -107
  87. package/dist/theme/theme.d.ts +33 -4
  88. package/dist/theme/tokens.d.ts +99 -12
  89. package/dist/theme/tokens.js +29 -12
  90. package/dist/types/secureIframe.d.ts +30 -0
  91. package/dist/types/secureIframe.js +13 -0
  92. package/dist/utils/childrenHasComponent.d.ts +1 -1
  93. package/dist/utils/formatPhoneNumber.d.ts +1 -0
  94. package/dist/utils/formatPhoneNumber.js +2910 -0
  95. package/dist/utils/index.d.ts +1 -0
  96. package/dist/utils/index.js +8 -6
  97. package/dist/utils/sendIframeMessage.d.ts +1 -0
  98. package/dist/utils/sendIframeMessage.js +13 -0
  99. package/dist/utils/transition.d.ts +30 -0
  100. package/dist/utils/transition.js +43 -0
  101. package/dist/version.d.ts +1 -1
  102. package/dist/version.js +1 -1
  103. package/package.json +8 -9
  104. package/dist/assets/ManageAuth.css +0 -1
  105. package/dist/assets/ManageAuthItem.css +0 -1
  106. package/dist/assets/ManageAuthModal.css +0 -1
  107. package/dist/components/ManageAuth/ManageAuthItem.d.ts +0 -9
  108. package/dist/components/ManageAuth/ManageAuthItem.js +0 -77
  109. package/dist/components/ManageAuth/ManageAuthProvider.d.ts +0 -8
  110. package/dist/components/ManageAuth/ManageAuthProvider.js +0 -64
  111. package/dist/components/ManageAuth/index.d.ts +0 -9
  112. package/dist/components/ManageAuth/index.js +0 -51
  113. package/dist/components/ManageAuth/types.d.ts +0 -13
  114. package/dist/components/ManageAuth/types.js +0 -1
  115. package/dist/components/ManageAuthModal/index.d.ts +0 -20
  116. package/dist/components/ManageAuthModal/index.js +0 -53
@@ -0,0 +1,2910 @@
1
+ const Jt = { version: 4, country_calling_codes: { 1: ["US", "AG", "AI", "AS", "BB", "BM", "BS", "CA", "DM", "DO", "GD", "GU", "JM", "KN", "KY", "LC", "MP", "MS", "PR", "SX", "TC", "TT", "VC", "VG", "VI"], 7: ["RU", "KZ"], 20: ["EG"], 27: ["ZA"], 30: ["GR"], 31: ["NL"], 32: ["BE"], 33: ["FR"], 34: ["ES"], 36: ["HU"], 39: ["IT", "VA"], 40: ["RO"], 41: ["CH"], 43: ["AT"], 44: ["GB", "GG", "IM", "JE"], 45: ["DK"], 46: ["SE"], 47: ["NO", "SJ"], 48: ["PL"], 49: ["DE"], 51: ["PE"], 52: ["MX"], 53: ["CU"], 54: ["AR"], 55: ["BR"], 56: ["CL"], 57: ["CO"], 58: ["VE"], 60: ["MY"], 61: ["AU", "CC", "CX"], 62: ["ID"], 63: ["PH"], 64: ["NZ"], 65: ["SG"], 66: ["TH"], 81: ["JP"], 82: ["KR"], 84: ["VN"], 86: ["CN"], 90: ["TR"], 91: ["IN"], 92: ["PK"], 93: ["AF"], 94: ["LK"], 95: ["MM"], 98: ["IR"], 211: ["SS"], 212: ["MA", "EH"], 213: ["DZ"], 216: ["TN"], 218: ["LY"], 220: ["GM"], 221: ["SN"], 222: ["MR"], 223: ["ML"], 224: ["GN"], 225: ["CI"], 226: ["BF"], 227: ["NE"], 228: ["TG"], 229: ["BJ"], 230: ["MU"], 231: ["LR"], 232: ["SL"], 233: ["GH"], 234: ["NG"], 235: ["TD"], 236: ["CF"], 237: ["CM"], 238: ["CV"], 239: ["ST"], 240: ["GQ"], 241: ["GA"], 242: ["CG"], 243: ["CD"], 244: ["AO"], 245: ["GW"], 246: ["IO"], 247: ["AC"], 248: ["SC"], 249: ["SD"], 250: ["RW"], 251: ["ET"], 252: ["SO"], 253: ["DJ"], 254: ["KE"], 255: ["TZ"], 256: ["UG"], 257: ["BI"], 258: ["MZ"], 260: ["ZM"], 261: ["MG"], 262: ["RE", "YT"], 263: ["ZW"], 264: ["NA"], 265: ["MW"], 266: ["LS"], 267: ["BW"], 268: ["SZ"], 269: ["KM"], 290: ["SH", "TA"], 291: ["ER"], 297: ["AW"], 298: ["FO"], 299: ["GL"], 350: ["GI"], 351: ["PT"], 352: ["LU"], 353: ["IE"], 354: ["IS"], 355: ["AL"], 356: ["MT"], 357: ["CY"], 358: ["FI", "AX"], 359: ["BG"], 370: ["LT"], 371: ["LV"], 372: ["EE"], 373: ["MD"], 374: ["AM"], 375: ["BY"], 376: ["AD"], 377: ["MC"], 378: ["SM"], 380: ["UA"], 381: ["RS"], 382: ["ME"], 383: ["XK"], 385: ["HR"], 386: ["SI"], 387: ["BA"], 389: ["MK"], 420: ["CZ"], 421: ["SK"], 423: ["LI"], 500: ["FK"], 501: ["BZ"], 502: ["GT"], 503: ["SV"], 504: ["HN"], 505: ["NI"], 506: ["CR"], 507: ["PA"], 508: ["PM"], 509: ["HT"], 590: ["GP", "BL", "MF"], 591: ["BO"], 592: ["GY"], 593: ["EC"], 594: ["GF"], 595: ["PY"], 596: ["MQ"], 597: ["SR"], 598: ["UY"], 599: ["CW", "BQ"], 670: ["TL"], 672: ["NF"], 673: ["BN"], 674: ["NR"], 675: ["PG"], 676: ["TO"], 677: ["SB"], 678: ["VU"], 679: ["FJ"], 680: ["PW"], 681: ["WF"], 682: ["CK"], 683: ["NU"], 685: ["WS"], 686: ["KI"], 687: ["NC"], 688: ["TV"], 689: ["PF"], 690: ["TK"], 691: ["FM"], 692: ["MH"], 850: ["KP"], 852: ["HK"], 853: ["MO"], 855: ["KH"], 856: ["LA"], 880: ["BD"], 886: ["TW"], 960: ["MV"], 961: ["LB"], 962: ["JO"], 963: ["SY"], 964: ["IQ"], 965: ["KW"], 966: ["SA"], 967: ["YE"], 968: ["OM"], 970: ["PS"], 971: ["AE"], 972: ["IL"], 973: ["BH"], 974: ["QA"], 975: ["BT"], 976: ["MN"], 977: ["NP"], 992: ["TJ"], 993: ["TM"], 994: ["AZ"], 995: ["GE"], 996: ["KG"], 998: ["UZ"] }, countries: { AC: ["247", "00", "(?:[01589]\\d|[46])\\d{4}", [5, 6]], AD: ["376", "00", "(?:1|6\\d)\\d{7}|[135-9]\\d{5}", [6, 8, 9], [["(\\d{3})(\\d{3})", "$1 $2", ["[135-9]"]], ["(\\d{4})(\\d{4})", "$1 $2", ["1"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["6"]]]], AE: ["971", "00", "(?:[4-7]\\d|9[0-689])\\d{7}|800\\d{2,9}|[2-4679]\\d{7}", [5, 6, 7, 8, 9, 10, 11, 12], [["(\\d{3})(\\d{2,9})", "$1 $2", ["60|8"]], ["(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["[236]|[479][2-8]"], "0$1"], ["(\\d{3})(\\d)(\\d{5})", "$1 $2 $3", ["[479]"]], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["5"], "0$1"]], "0"], AF: ["93", "00", "[2-7]\\d{8}", [9], [["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[2-7]"], "0$1"]], "0"], AG: ["1", "011", "(?:268|[58]\\d\\d|900)\\d{7}", [10], 0, "1", 0, "([457]\\d{6})$|1", "268$1", 0, "268"], AI: ["1", "011", "(?:264|[58]\\d\\d|900)\\d{7}", [10], 0, "1", 0, "([2457]\\d{6})$|1", "264$1", 0, "264"], AL: ["355", "00", "(?:700\\d\\d|900)\\d{3}|8\\d{5,7}|(?:[2-5]|6\\d)\\d{7}", [6, 7, 8, 9], [["(\\d{3})(\\d{3,4})", "$1 $2", ["80|9"], "0$1"], ["(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["4[2-6]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["[2358][2-5]|4"], "0$1"], ["(\\d{3})(\\d{5})", "$1 $2", ["[23578]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["6"], "0$1"]], "0"], AM: ["374", "00", "(?:[1-489]\\d|55|60|77)\\d{6}", [8], [["(\\d{3})(\\d{2})(\\d{3})", "$1 $2 $3", ["[89]0"], "0 $1"], ["(\\d{3})(\\d{5})", "$1 $2", ["2|3[12]"], "(0$1)"], ["(\\d{2})(\\d{6})", "$1 $2", ["1|47"], "(0$1)"], ["(\\d{2})(\\d{6})", "$1 $2", ["[3-9]"], "0$1"]], "0"], AO: ["244", "00", "[29]\\d{8}", [9], [["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[29]"]]]], AR: ["54", "00", "(?:11|[89]\\d\\d)\\d{8}|[2368]\\d{9}", [10, 11], [["(\\d{4})(\\d{2})(\\d{4})", "$1 $2-$3", ["2(?:2[024-9]|3[0-59]|47|6[245]|9[02-8])|3(?:3[28]|4[03-9]|5[2-46-8]|7[1-578]|8[2-9])", "2(?:[23]02|6(?:[25]|4[6-8])|9(?:[02356]|4[02568]|72|8[23]))|3(?:3[28]|4(?:[04679]|3[5-8]|5[4-68]|8[2379])|5(?:[2467]|3[237]|8[2-5])|7[1-578]|8(?:[2469]|3[2578]|5[4-8]|7[36-8]|8[5-8]))|2(?:2[24-9]|3[1-59]|47)", "2(?:[23]02|6(?:[25]|4(?:64|[78]))|9(?:[02356]|4(?:[0268]|5[2-6])|72|8[23]))|3(?:3[28]|4(?:[04679]|3[78]|5(?:4[46]|8)|8[2379])|5(?:[2467]|3[237]|8[23])|7[1-578]|8(?:[2469]|3[278]|5[56][46]|86[3-6]))|2(?:2[24-9]|3[1-59]|47)|38(?:[58][78]|7[378])|3(?:4[35][56]|58[45]|8(?:[38]5|54|76))[4-6]", "2(?:[23]02|6(?:[25]|4(?:64|[78]))|9(?:[02356]|4(?:[0268]|5[2-6])|72|8[23]))|3(?:3[28]|4(?:[04679]|3(?:5(?:4[0-25689]|[56])|[78])|58|8[2379])|5(?:[2467]|3[237]|8(?:[23]|4(?:[45]|60)|5(?:4[0-39]|5|64)))|7[1-578]|8(?:[2469]|3[278]|54(?:4|5[13-7]|6[89])|86[3-6]))|2(?:2[24-9]|3[1-59]|47)|38(?:[58][78]|7[378])|3(?:454|85[56])[46]|3(?:4(?:36|5[56])|8(?:[38]5|76))[4-6]"], "0$1", 1], ["(\\d{2})(\\d{4})(\\d{4})", "$1 $2-$3", ["1"], "0$1", 1], ["(\\d{3})(\\d{3})(\\d{4})", "$1-$2-$3", ["[68]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2-$3", ["[23]"], "0$1", 1], ["(\\d)(\\d{4})(\\d{2})(\\d{4})", "$2 15-$3-$4", ["9(?:2[2-469]|3[3-578])", "9(?:2(?:2[024-9]|3[0-59]|47|6[245]|9[02-8])|3(?:3[28]|4[03-9]|5[2-46-8]|7[1-578]|8[2-9]))", "9(?:2(?:[23]02|6(?:[25]|4[6-8])|9(?:[02356]|4[02568]|72|8[23]))|3(?:3[28]|4(?:[04679]|3[5-8]|5[4-68]|8[2379])|5(?:[2467]|3[237]|8[2-5])|7[1-578]|8(?:[2469]|3[2578]|5[4-8]|7[36-8]|8[5-8])))|92(?:2[24-9]|3[1-59]|47)", "9(?:2(?:[23]02|6(?:[25]|4(?:64|[78]))|9(?:[02356]|4(?:[0268]|5[2-6])|72|8[23]))|3(?:3[28]|4(?:[04679]|3[78]|5(?:4[46]|8)|8[2379])|5(?:[2467]|3[237]|8[23])|7[1-578]|8(?:[2469]|3[278]|5(?:[56][46]|[78])|7[378]|8(?:6[3-6]|[78]))))|92(?:2[24-9]|3[1-59]|47)|93(?:4[35][56]|58[45]|8(?:[38]5|54|76))[4-6]", "9(?:2(?:[23]02|6(?:[25]|4(?:64|[78]))|9(?:[02356]|4(?:[0268]|5[2-6])|72|8[23]))|3(?:3[28]|4(?:[04679]|3(?:5(?:4[0-25689]|[56])|[78])|5(?:4[46]|8)|8[2379])|5(?:[2467]|3[237]|8(?:[23]|4(?:[45]|60)|5(?:4[0-39]|5|64)))|7[1-578]|8(?:[2469]|3[278]|5(?:4(?:4|5[13-7]|6[89])|[56][46]|[78])|7[378]|8(?:6[3-6]|[78]))))|92(?:2[24-9]|3[1-59]|47)|93(?:4(?:36|5[56])|8(?:[38]5|76))[4-6]"], "0$1", 0, "$1 $2 $3-$4"], ["(\\d)(\\d{2})(\\d{4})(\\d{4})", "$2 15-$3-$4", ["91"], "0$1", 0, "$1 $2 $3-$4"], ["(\\d{3})(\\d{3})(\\d{5})", "$1-$2-$3", ["8"], "0$1"], ["(\\d)(\\d{3})(\\d{3})(\\d{4})", "$2 15-$3-$4", ["9"], "0$1", 0, "$1 $2 $3-$4"]], "0", 0, "0?(?:(11|2(?:2(?:02?|[13]|2[13-79]|4[1-6]|5[2457]|6[124-8]|7[1-4]|8[13-6]|9[1267])|3(?:02?|1[467]|2[03-6]|3[13-8]|[49][2-6]|5[2-8]|[67])|4(?:7[3-578]|9)|6(?:[0136]|2[24-6]|4[6-8]?|5[15-8])|80|9(?:0[1-3]|[19]|2\\d|3[1-6]|4[02568]?|5[2-4]|6[2-46]|72?|8[23]?))|3(?:3(?:2[79]|6|8[2578])|4(?:0[0-24-9]|[12]|3[5-8]?|4[24-7]|5[4-68]?|6[02-9]|7[126]|8[2379]?|9[1-36-8])|5(?:1|2[1245]|3[237]?|4[1-46-9]|6[2-4]|7[1-6]|8[2-5]?)|6[24]|7(?:[069]|1[1568]|2[15]|3[145]|4[13]|5[14-8]|7[2-57]|8[126])|8(?:[01]|2[15-7]|3[2578]?|4[13-6]|5[4-8]?|6[1-357-9]|7[36-8]?|8[5-8]?|9[124])))15)?", "9$1"], AS: ["1", "011", "(?:[58]\\d\\d|684|900)\\d{7}", [10], 0, "1", 0, "([267]\\d{6})$|1", "684$1", 0, "684"], AT: ["43", "00", "1\\d{3,12}|2\\d{6,12}|43(?:(?:0\\d|5[02-9])\\d{3,9}|2\\d{4,5}|[3467]\\d{4}|8\\d{4,6}|9\\d{4,7})|5\\d{4,12}|8\\d{7,12}|9\\d{8,12}|(?:[367]\\d|4[0-24-9])\\d{4,11}", [4, 5, 6, 7, 8, 9, 10, 11, 12, 13], [["(\\d)(\\d{3,12})", "$1 $2", ["1(?:11|[2-9])"], "0$1"], ["(\\d{3})(\\d{2})", "$1 $2", ["517"], "0$1"], ["(\\d{2})(\\d{3,5})", "$1 $2", ["5[079]"], "0$1"], ["(\\d{3})(\\d{3,10})", "$1 $2", ["(?:31|4)6|51|6(?:48|5[0-3579]|[6-9])|7(?:20|32|8)|[89]", "(?:31|4)6|51|6(?:485|5[0-3579]|[6-9])|7(?:20|32|8)|[89]"], "0$1"], ["(\\d{4})(\\d{3,9})", "$1 $2", ["[2-467]|5[2-6]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["5"], "0$1"], ["(\\d{2})(\\d{4})(\\d{4,7})", "$1 $2 $3", ["5"], "0$1"]], "0"], AU: ["61", "001[14-689]|14(?:1[14]|34|4[17]|[56]6|7[47]|88)0011", "1(?:[0-79]\\d{7}(?:\\d(?:\\d{2})?)?|8[0-24-9]\\d{7})|[2-478]\\d{8}|1\\d{4,7}", [5, 6, 7, 8, 9, 10, 12], [["(\\d{2})(\\d{3,4})", "$1 $2", ["16"], "0$1"], ["(\\d{2})(\\d{3})(\\d{2,4})", "$1 $2 $3", ["16"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["14|4"], "0$1"], ["(\\d)(\\d{4})(\\d{4})", "$1 $2 $3", ["[2378]"], "(0$1)"], ["(\\d{4})(\\d{3})(\\d{3})", "$1 $2 $3", ["1(?:30|[89])"]]], "0", 0, "(183[12])|0", 0, 0, 0, [["(?:(?:2(?:(?:[0-26-9]\\d|3[0-8]|5[0135-9])\\d|4(?:[02-9]\\d|10))|3(?:(?:[0-3589]\\d|6[1-9]|7[0-35-9])\\d|4(?:[0-578]\\d|90))|7(?:[013-57-9]\\d|2[0-8])\\d)\\d\\d|8(?:51(?:0(?:0[03-9]|[12479]\\d|3[2-9]|5[0-8]|6[1-9]|8[0-7])|1(?:[0235689]\\d|1[0-69]|4[0-589]|7[0-47-9])|2(?:0[0-79]|[18][13579]|2[14-9]|3[0-46-9]|[4-6]\\d|7[89]|9[0-4])|[34]\\d\\d)|(?:6[0-8]|[78]\\d)\\d{3}|9(?:[02-9]\\d{3}|1(?:(?:[0-58]\\d|6[0135-9])\\d|7(?:0[0-24-9]|[1-9]\\d)|9(?:[0-46-9]\\d|5[0-79])))))\\d{3}", [9]], ["4(?:79[01]|83[0-389]|94[0-478])\\d{5}|4(?:[0-36]\\d|4[047-9]|5[0-25-9]|7[02-8]|8[0-24-9]|9[0-37-9])\\d{6}", [9]], ["180(?:0\\d{3}|2)\\d{3}", [7, 10]], ["190[0-26]\\d{6}", [10]], 0, 0, 0, ["163\\d{2,6}", [5, 6, 7, 8, 9]], ["14(?:5(?:1[0458]|[23][458])|71\\d)\\d{4}", [9]], ["13(?:00\\d{6}(?:\\d{2})?|45[0-4]\\d{3})|13\\d{4}", [6, 8, 10, 12]]], "0011"], AW: ["297", "00", "(?:[25-79]\\d\\d|800)\\d{4}", [7], [["(\\d{3})(\\d{4})", "$1 $2", ["[25-9]"]]]], AX: ["358", "00|99(?:[01469]|5(?:[14]1|3[23]|5[59]|77|88|9[09]))", "2\\d{4,9}|35\\d{4,5}|(?:60\\d\\d|800)\\d{4,6}|7\\d{5,11}|(?:[14]\\d|3[0-46-9]|50)\\d{4,8}", [5, 6, 7, 8, 9, 10, 11, 12], 0, "0", 0, 0, 0, 0, "18", 0, "00"], AZ: ["994", "00", "365\\d{6}|(?:[124579]\\d|60|88)\\d{7}", [9], [["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["90"], "0$1"], ["(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["1[28]|2|365|46", "1[28]|2|365[45]|46", "1[28]|2|365(?:4|5[02])|46"], "(0$1)"], ["(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[13-9]"], "0$1"]], "0"], BA: ["387", "00", "6\\d{8}|(?:[35689]\\d|49|70)\\d{6}", [8, 9], [["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["6[1-3]|[7-9]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3})", "$1 $2-$3", ["[3-5]|6[56]"], "0$1"], ["(\\d{2})(\\d{2})(\\d{2})(\\d{3})", "$1 $2 $3 $4", ["6"], "0$1"]], "0"], BB: ["1", "011", "(?:246|[58]\\d\\d|900)\\d{7}", [10], 0, "1", 0, "([2-9]\\d{6})$|1", "246$1", 0, "246"], BD: ["880", "00", "[1-469]\\d{9}|8[0-79]\\d{7,8}|[2-79]\\d{8}|[2-9]\\d{7}|[3-9]\\d{6}|[57-9]\\d{5}", [6, 7, 8, 9, 10], [["(\\d{2})(\\d{4,6})", "$1-$2", ["31[5-8]|[459]1"], "0$1"], ["(\\d{3})(\\d{3,7})", "$1-$2", ["3(?:[67]|8[013-9])|4(?:6[168]|7|[89][18])|5(?:6[128]|9)|6(?:[15]|28|4[14])|7[2-589]|8(?:0[014-9]|[12])|9[358]|(?:3[2-5]|4[235]|5[2-578]|6[0389]|76|8[3-7]|9[24])1|(?:44|66)[01346-9]"], "0$1"], ["(\\d{4})(\\d{3,6})", "$1-$2", ["[13-9]|2[23]"], "0$1"], ["(\\d)(\\d{7,8})", "$1-$2", ["2"], "0$1"]], "0"], BE: ["32", "00", "4\\d{8}|[1-9]\\d{7}", [8, 9], [["(\\d{3})(\\d{2})(\\d{3})", "$1 $2 $3", ["(?:80|9)0"], "0$1"], ["(\\d)(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[239]|4[23]"], "0$1"], ["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[15-8]"], "0$1"], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["4"], "0$1"]], "0"], BF: ["226", "00", "(?:[025-7]\\d|44)\\d{6}", [8], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[024-7]"]]]], BG: ["359", "00", "00800\\d{7}|[2-7]\\d{6,7}|[89]\\d{6,8}|2\\d{5}", [6, 7, 8, 9, 12], [["(\\d)(\\d)(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["2"], "0$1"], ["(\\d{3})(\\d{4})", "$1 $2", ["43[1-6]|70[1-9]"], "0$1"], ["(\\d)(\\d{3})(\\d{3,4})", "$1 $2 $3", ["2"], "0$1"], ["(\\d{2})(\\d{3})(\\d{2,3})", "$1 $2 $3", ["[356]|4[124-7]|7[1-9]|8[1-6]|9[1-7]"], "0$1"], ["(\\d{3})(\\d{2})(\\d{3})", "$1 $2 $3", ["(?:70|8)0"], "0$1"], ["(\\d{3})(\\d{3})(\\d{2})", "$1 $2 $3", ["43[1-7]|7"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[48]|9[08]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["9"], "0$1"]], "0"], BH: ["973", "00", "[136-9]\\d{7}", [8], [["(\\d{4})(\\d{4})", "$1 $2", ["[13679]|8[02-4679]"]]]], BI: ["257", "00", "(?:[267]\\d|31)\\d{6}", [8], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[2367]"]]]], BJ: ["229", "00", "(?:01\\d|[24-689])\\d{7}", [8, 10], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[24-689]"]], ["(\\d{2})(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4 $5", ["0"]]]], BL: ["590", "00", "(?:590\\d|7090)\\d{5}|(?:69|80|9\\d)\\d{7}", [9], 0, "0", 0, 0, 0, 0, 0, [["590(?:2[7-9]|3[3-7]|5[12]|87)\\d{4}"], ["(?:69(?:0\\d\\d|1(?:2[2-9]|3[0-5])|4(?:0[89]|1[2-6]|9\\d)|6(?:1[016-9]|5[0-4]|[67]\\d))|7090[0-4])\\d{4}"], ["80[0-5]\\d{6}"], 0, 0, 0, 0, 0, ["9(?:(?:39[5-7]|76[018])\\d|475[0-6])\\d{4}"]]], BM: ["1", "011", "(?:441|[58]\\d\\d|900)\\d{7}", [10], 0, "1", 0, "([2-9]\\d{6})$|1", "441$1", 0, "441"], BN: ["673", "00", "[2-578]\\d{6}", [7], [["(\\d{3})(\\d{4})", "$1 $2", ["[2-578]"]]]], BO: ["591", "00(?:1\\d)?", "8001\\d{5}|(?:[2-467]\\d|50)\\d{6}", [8, 9], [["(\\d)(\\d{7})", "$1 $2", ["[235]|4[46]"]], ["(\\d{8})", "$1", ["[67]"]], ["(\\d{3})(\\d{2})(\\d{4})", "$1 $2 $3", ["8"]]], "0", 0, "0(1\\d)?"], BQ: ["599", "00", "(?:[34]1|7\\d)\\d{5}", [7], 0, 0, 0, 0, 0, 0, "[347]"], BR: ["55", "00(?:1[245]|2[1-35]|31|4[13]|[56]5|99)", "[1-467]\\d{9,10}|55[0-46-9]\\d{8}|[34]\\d{7}|55\\d{7,8}|(?:5[0-46-9]|[89]\\d)\\d{7,9}", [8, 9, 10, 11], [["(\\d{4})(\\d{4})", "$1-$2", ["300|4(?:0[02]|37|86)", "300|4(?:0(?:0|20)|370|864)"]], ["(\\d{3})(\\d{2,3})(\\d{4})", "$1 $2 $3", ["(?:[358]|90)0"], "0$1"], ["(\\d{2})(\\d{4})(\\d{4})", "$1 $2-$3", ["(?:[14689][1-9]|2[12478]|3[1-578]|5[13-5]|7[13-579])[2-57]"], "($1)"], ["(\\d{2})(\\d{5})(\\d{4})", "$1 $2-$3", ["[16][1-9]|[2-57-9]"], "($1)"]], "0", 0, "(?:0|90)(?:(1[245]|2[1-35]|31|4[13]|[56]5|99)(\\d{10,11}))?", "$2"], BS: ["1", "011", "(?:242|[58]\\d\\d|900)\\d{7}", [10], 0, "1", 0, "([3-8]\\d{6})$|1", "242$1", 0, "242"], BT: ["975", "00", "[17]\\d{7}|[2-8]\\d{6}", [7, 8], [["(\\d)(\\d{3})(\\d{3})", "$1 $2 $3", ["[2-68]|7[246]"]], ["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["1[67]|7"]]]], BW: ["267", "00", "(?:0800|(?:[37]|800)\\d)\\d{6}|(?:[2-6]\\d|90)\\d{5}", [7, 8, 10], [["(\\d{2})(\\d{5})", "$1 $2", ["90"]], ["(\\d{3})(\\d{4})", "$1 $2", ["[24-6]|3[15-9]"]], ["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["[37]"]], ["(\\d{4})(\\d{3})(\\d{3})", "$1 $2 $3", ["0"]], ["(\\d{3})(\\d{4})(\\d{3})", "$1 $2 $3", ["8"]]]], BY: ["375", "810", "(?:[12]\\d|33|44|902)\\d{7}|8(?:0[0-79]\\d{5,7}|[1-7]\\d{9})|8(?:1[0-489]|[5-79]\\d)\\d{7}|8[1-79]\\d{6,7}|8[0-79]\\d{5}|8\\d{5}", [6, 7, 8, 9, 10, 11], [["(\\d{3})(\\d{3})", "$1 $2", ["800"], "8 $1"], ["(\\d{3})(\\d{2})(\\d{2,4})", "$1 $2 $3", ["800"], "8 $1"], ["(\\d{4})(\\d{2})(\\d{3})", "$1 $2-$3", ["1(?:5[169]|6[3-5]|7[179])|2(?:1[35]|2[34]|3[3-5])", "1(?:5[169]|6(?:3[1-3]|4|5[125])|7(?:1[3-9]|7[0-24-6]|9[2-7]))|2(?:1[35]|2[34]|3[3-5])"], "8 0$1"], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2-$3-$4", ["1(?:[56]|7[467])|2[1-3]"], "8 0$1"], ["(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2-$3-$4", ["[1-4]"], "8 0$1"], ["(\\d{3})(\\d{3,4})(\\d{4})", "$1 $2 $3", ["[89]"], "8 $1"]], "8", 0, "0|80?", 0, 0, 0, 0, "8~10"], BZ: ["501", "00", "(?:0800\\d|[2-8])\\d{6}", [7, 11], [["(\\d{3})(\\d{4})", "$1-$2", ["[2-8]"]], ["(\\d)(\\d{3})(\\d{4})(\\d{3})", "$1-$2-$3-$4", ["0"]]]], CA: ["1", "011", "[2-9]\\d{9}|3\\d{6}", [7, 10], 0, "1", 0, 0, 0, 0, 0, [["(?:2(?:04|[23]6|[48]9|5[07]|63)|3(?:06|43|54|6[578]|82)|4(?:03|1[68]|[26]8|3[178]|50|74)|5(?:06|1[49]|48|79|8[147])|6(?:04|[18]3|39|47|72)|7(?:0[59]|42|53|78|8[02])|8(?:[06]7|19|25|7[39])|9(?:0[25]|42))[2-9]\\d{6}", [10]], ["", [10]], ["8(?:00|33|44|55|66|77|88)[2-9]\\d{6}", [10]], ["900[2-9]\\d{6}", [10]], ["52(?:3(?:[2-46-9][02-9]\\d|5(?:[02-46-9]\\d|5[0-46-9]))|4(?:[2-478][02-9]\\d|5(?:[034]\\d|2[024-9]|5[0-46-9])|6(?:0[1-9]|[2-9]\\d)|9(?:[05-9]\\d|2[0-5]|49)))\\d{4}|52[34][2-9]1[02-9]\\d{4}|(?:5(?:2[125-9]|33|44|66|77|88)|6(?:22|33))[2-9]\\d{6}", [10]], 0, ["310\\d{4}", [7]], 0, ["600[2-9]\\d{6}", [10]]]], CC: ["61", "001[14-689]|14(?:1[14]|34|4[17]|[56]6|7[47]|88)0011", "1(?:[0-79]\\d{8}(?:\\d{2})?|8[0-24-9]\\d{7})|[148]\\d{8}|1\\d{5,7}", [6, 7, 8, 9, 10, 12], 0, "0", 0, "([59]\\d{7})$|0", "8$1", 0, 0, [["8(?:51(?:0(?:02|31|60|89)|1(?:18|76)|223)|91(?:0(?:1[0-2]|29)|1(?:[28]2|50|79)|2(?:10|64)|3(?:[06]8|22)|4[29]8|62\\d|70[23]|959))\\d{3}", [9]], ["4(?:79[01]|83[0-389]|94[0-478])\\d{5}|4(?:[0-36]\\d|4[047-9]|5[0-25-9]|7[02-8]|8[0-24-9]|9[0-37-9])\\d{6}", [9]], ["180(?:0\\d{3}|2)\\d{3}", [7, 10]], ["190[0-26]\\d{6}", [10]], 0, 0, 0, 0, ["14(?:5(?:1[0458]|[23][458])|71\\d)\\d{4}", [9]], ["13(?:00\\d{6}(?:\\d{2})?|45[0-4]\\d{3})|13\\d{4}", [6, 8, 10, 12]]], "0011"], CD: ["243", "00", "(?:(?:[189]|5\\d)\\d|2)\\d{7}|[1-68]\\d{6}", [7, 8, 9, 10], [["(\\d{2})(\\d{2})(\\d{3})", "$1 $2 $3", ["88"], "0$1"], ["(\\d{2})(\\d{5})", "$1 $2", ["[1-6]"], "0$1"], ["(\\d{2})(\\d{2})(\\d{4})", "$1 $2 $3", ["2"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["1"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[89]"], "0$1"], ["(\\d{2})(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["5"], "0$1"]], "0"], CF: ["236", "00", "(?:[27]\\d{3}|8776)\\d{4}", [8], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[278]"]]]], CG: ["242", "00", "222\\d{6}|(?:0\\d|80)\\d{7}", [9], [["(\\d)(\\d{4})(\\d{4})", "$1 $2 $3", ["8"]], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[02]"]]]], CH: ["41", "00", "8\\d{11}|[2-9]\\d{8}", [9, 12], [["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["8[047]|90"], "0$1"], ["(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[2-79]|81"], "0$1"], ["(\\d{3})(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4 $5", ["8"], "0$1"]], "0"], CI: ["225", "00", "[02]\\d{9}", [10], [["(\\d{2})(\\d{2})(\\d)(\\d{5})", "$1 $2 $3 $4", ["2"]], ["(\\d{2})(\\d{2})(\\d{2})(\\d{4})", "$1 $2 $3 $4", ["0"]]]], CK: ["682", "00", "[2-578]\\d{4}", [5], [["(\\d{2})(\\d{3})", "$1 $2", ["[2-578]"]]]], CL: ["56", "(?:0|1(?:1[0-69]|2[02-5]|5[13-58]|69|7[0167]|8[018]))0", "12300\\d{6}|6\\d{9,10}|[2-9]\\d{8}", [9, 10, 11], [["(\\d{5})(\\d{4})", "$1 $2", ["219", "2196"], "($1)"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["44"]], ["(\\d)(\\d{4})(\\d{4})", "$1 $2 $3", ["2[1-36]"], "($1)"], ["(\\d)(\\d{4})(\\d{4})", "$1 $2 $3", ["9[2-9]"]], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["3[2-5]|[47]|5[1-3578]|6[13-57]|8(?:0[1-9]|[1-9])"], "($1)"], ["(\\d{3})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["60|8"]], ["(\\d{4})(\\d{3})(\\d{4})", "$1 $2 $3", ["1"]], ["(\\d{3})(\\d{3})(\\d{2})(\\d{3})", "$1 $2 $3 $4", ["60"]]]], CM: ["237", "00", "[26]\\d{8}|88\\d{6,7}", [8, 9], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["88"]], ["(\\d)(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4 $5", ["[26]|88"]]]], CN: ["86", "00|1(?:[12]\\d|79)\\d\\d00", "(?:(?:1[03-689]|2\\d)\\d\\d|6)\\d{8}|1\\d{10}|[126]\\d{6}(?:\\d(?:\\d{2})?)?|86\\d{5,6}|(?:[3-579]\\d|8[0-57-9])\\d{5,9}", [7, 8, 9, 10, 11, 12], [["(\\d{2})(\\d{5,6})", "$1 $2", ["(?:10|2[0-57-9])[19]|3(?:[157]|35|49|9[1-68])|4(?:1[124-9]|2[179]|6[47-9]|7|8[23])|5(?:[1357]|2[37]|4[36]|6[1-46]|80)|6(?:3[1-5]|6[0238]|9[12])|7(?:01|[1579]|2[248]|3[014-9]|4[3-6]|6[023689])|8(?:07|1[236-8]|2[5-7]|[37]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|3|4[13]|5[1-5]|7[0-79]|9[0-35-9])|(?:4[35]|59|85)[1-9]", "(?:10|2[0-57-9])(?:1[02]|9[56])|8078|(?:3(?:[157]\\d|35|49|9[1-68])|4(?:1[124-9]|2[179]|[35][1-9]|6[47-9]|7\\d|8[23])|5(?:[1357]\\d|2[37]|4[36]|6[1-46]|80|9[1-9])|6(?:3[1-5]|6[0238]|9[12])|7(?:01|[1579]\\d|2[248]|3[014-9]|4[3-6]|6[023689])|8(?:1[236-8]|2[5-7]|[37]\\d|5[1-9]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|3\\d|4[13]|5[1-5]|7[0-79]|9[0-35-9]))1", "10(?:1(?:0|23)|9[56])|2[0-57-9](?:1(?:00|23)|9[56])|80781|(?:3(?:[157]\\d|35|49|9[1-68])|4(?:1[124-9]|2[179]|[35][1-9]|6[47-9]|7\\d|8[23])|5(?:[1357]\\d|2[37]|4[36]|6[1-46]|80|9[1-9])|6(?:3[1-5]|6[0238]|9[12])|7(?:01|[1579]\\d|2[248]|3[014-9]|4[3-6]|6[023689])|8(?:1[236-8]|2[5-7]|[37]\\d|5[1-9]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|3\\d|4[13]|5[1-5]|7[0-79]|9[0-35-9]))12", "10(?:1(?:0|23)|9[56])|2[0-57-9](?:1(?:00|23)|9[56])|807812|(?:3(?:[157]\\d|35|49|9[1-68])|4(?:1[124-9]|2[179]|[35][1-9]|6[47-9]|7\\d|8[23])|5(?:[1357]\\d|2[37]|4[36]|6[1-46]|80|9[1-9])|6(?:3[1-5]|6[0238]|9[12])|7(?:01|[1579]\\d|2[248]|3[014-9]|4[3-6]|6[023689])|8(?:1[236-8]|2[5-7]|[37]\\d|5[1-9]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|3\\d|4[13]|5[1-5]|7[0-79]|9[0-35-9]))123", "10(?:1(?:0|23)|9[56])|2[0-57-9](?:1(?:00|23)|9[56])|(?:3(?:[157]\\d|35|49|9[1-68])|4(?:1[124-9]|2[179]|[35][1-9]|6[47-9]|7\\d|8[23])|5(?:[1357]\\d|2[37]|4[36]|6[1-46]|80|9[1-9])|6(?:3[1-5]|6[0238]|9[12])|7(?:01|[1579]\\d|2[248]|3[014-9]|4[3-6]|6[023689])|8(?:078|1[236-8]|2[5-7]|[37]\\d|5[1-9]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|3\\d|4[13]|5[1-5]|7[0-79]|9[0-35-9]))123"], "0$1"], ["(\\d{3})(\\d{5,6})", "$1 $2", ["3(?:[157]|35|49|9[1-68])|4(?:[17]|2[179]|6[47-9]|8[23])|5(?:[1357]|2[37]|4[36]|6[1-46]|80)|6(?:3[1-5]|6[0238]|9[12])|7(?:01|[1579]|2[248]|3[014-9]|4[3-6]|6[023689])|8(?:1[236-8]|2[5-7]|[37]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|[379]|4[13]|5[1-5])|(?:4[35]|59|85)[1-9]", "(?:3(?:[157]\\d|35|49|9[1-68])|4(?:[17]\\d|2[179]|[35][1-9]|6[47-9]|8[23])|5(?:[1357]\\d|2[37]|4[36]|6[1-46]|80|9[1-9])|6(?:3[1-5]|6[0238]|9[12])|7(?:01|[1579]\\d|2[248]|3[014-9]|4[3-6]|6[023689])|8(?:1[236-8]|2[5-7]|[37]\\d|5[1-9]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|[379]\\d|4[13]|5[1-5]))[19]", "85[23](?:10|95)|(?:3(?:[157]\\d|35|49|9[1-68])|4(?:[17]\\d|2[179]|[35][1-9]|6[47-9]|8[23])|5(?:[1357]\\d|2[37]|4[36]|6[1-46]|80|9[1-9])|6(?:3[1-5]|6[0238]|9[12])|7(?:01|[1579]\\d|2[248]|3[014-9]|4[3-6]|6[023689])|8(?:1[236-8]|2[5-7]|[37]\\d|5[14-9]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|[379]\\d|4[13]|5[1-5]))(?:10|9[56])", "85[23](?:100|95)|(?:3(?:[157]\\d|35|49|9[1-68])|4(?:[17]\\d|2[179]|[35][1-9]|6[47-9]|8[23])|5(?:[1357]\\d|2[37]|4[36]|6[1-46]|80|9[1-9])|6(?:3[1-5]|6[0238]|9[12])|7(?:01|[1579]\\d|2[248]|3[014-9]|4[3-6]|6[023689])|8(?:1[236-8]|2[5-7]|[37]\\d|5[14-9]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|[379]\\d|4[13]|5[1-5]))(?:100|9[56])"], "0$1"], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["(?:4|80)0"]], ["(\\d{2})(\\d{4})(\\d{4})", "$1 $2 $3", ["10|2(?:[02-57-9]|1[1-9])", "10|2(?:[02-57-9]|1[1-9])", "10[0-79]|2(?:[02-57-9]|1[1-79])|(?:10|21)8(?:0[1-9]|[1-9])"], "0$1", 1], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["3(?:[3-59]|7[02-68])|4(?:[26-8]|3[3-9]|5[2-9])|5(?:3[03-9]|[468]|7[028]|9[2-46-9])|6|7(?:[0-247]|3[04-9]|5[0-4689]|6[2368])|8(?:[1-358]|9[1-7])|9(?:[013479]|5[1-5])|(?:[34]1|55|79|87)[02-9]"], "0$1", 1], ["(\\d{3})(\\d{7,8})", "$1 $2", ["9"]], ["(\\d{4})(\\d{3})(\\d{4})", "$1 $2 $3", ["80"], "0$1", 1], ["(\\d{3})(\\d{4})(\\d{4})", "$1 $2 $3", ["[3-578]"], "0$1", 1], ["(\\d{3})(\\d{4})(\\d{4})", "$1 $2 $3", ["1[3-9]"]], ["(\\d{2})(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3 $4", ["[12]"], "0$1", 1]], "0", 0, "(1(?:[12]\\d|79)\\d\\d)|0", 0, 0, 0, 0, "00"], CO: ["57", "00(?:4(?:[14]4|56)|[579])", "(?:46|60\\d\\d)\\d{6}|(?:1\\d|[39])\\d{9}", [8, 10, 11], [["(\\d{4})(\\d{4})", "$1 $2", ["46"]], ["(\\d{3})(\\d{7})", "$1 $2", ["6|90"], "($1)"], ["(\\d{3})(\\d{7})", "$1 $2", ["3[0-357]|9[14]"]], ["(\\d)(\\d{3})(\\d{7})", "$1-$2-$3", ["1"], "0$1", 0, "$1 $2 $3"]], "0", 0, "0([3579]|4(?:[14]4|56))?"], CR: ["506", "00", "(?:8\\d|90)\\d{8}|(?:[24-8]\\d{3}|3005)\\d{4}", [8, 10], [["(\\d{4})(\\d{4})", "$1 $2", ["[2-7]|8[3-9]"]], ["(\\d{3})(\\d{3})(\\d{4})", "$1-$2-$3", ["[89]"]]], 0, 0, "(19(?:0[0-2468]|1[09]|20|66|77|99))"], CU: ["53", "119", "(?:[2-7]|8\\d\\d)\\d{7}|[2-47]\\d{6}|[34]\\d{5}", [6, 7, 8, 10], [["(\\d{2})(\\d{4,6})", "$1 $2", ["2[1-4]|[34]"], "(0$1)"], ["(\\d)(\\d{6,7})", "$1 $2", ["7"], "(0$1)"], ["(\\d)(\\d{7})", "$1 $2", ["[56]"], "0$1"], ["(\\d{3})(\\d{7})", "$1 $2", ["8"], "0$1"]], "0"], CV: ["238", "0", "(?:[2-59]\\d\\d|800)\\d{4}", [7], [["(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3", ["[2-589]"]]]], CW: ["599", "00", "(?:[34]1|60|(?:7|9\\d)\\d)\\d{5}", [7, 8], [["(\\d{3})(\\d{4})", "$1 $2", ["[3467]"]], ["(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["9[4-8]"]]], 0, 0, 0, 0, 0, "[69]"], CX: ["61", "001[14-689]|14(?:1[14]|34|4[17]|[56]6|7[47]|88)0011", "1(?:[0-79]\\d{8}(?:\\d{2})?|8[0-24-9]\\d{7})|[148]\\d{8}|1\\d{5,7}", [6, 7, 8, 9, 10, 12], 0, "0", 0, "([59]\\d{7})$|0", "8$1", 0, 0, [["8(?:51(?:0(?:01|30|59|88)|1(?:17|46|75)|2(?:22|35))|91(?:00[6-9]|1(?:[28]1|49|78)|2(?:09|63)|3(?:12|26|75)|4(?:56|97)|64\\d|7(?:0[01]|1[0-2])|958))\\d{3}", [9]], ["4(?:79[01]|83[0-389]|94[0-478])\\d{5}|4(?:[0-36]\\d|4[047-9]|5[0-25-9]|7[02-8]|8[0-24-9]|9[0-37-9])\\d{6}", [9]], ["180(?:0\\d{3}|2)\\d{3}", [7, 10]], ["190[0-26]\\d{6}", [10]], 0, 0, 0, 0, ["14(?:5(?:1[0458]|[23][458])|71\\d)\\d{4}", [9]], ["13(?:00\\d{6}(?:\\d{2})?|45[0-4]\\d{3})|13\\d{4}", [6, 8, 10, 12]]], "0011"], CY: ["357", "00", "(?:[279]\\d|[58]0)\\d{6}", [8], [["(\\d{2})(\\d{6})", "$1 $2", ["[257-9]"]]]], CZ: ["420", "00", "(?:[2-578]\\d|60)\\d{7}|9\\d{8,11}", [9, 10, 11, 12], [["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[2-8]|9[015-7]"]], ["(\\d{2})(\\d{3})(\\d{3})(\\d{2})", "$1 $2 $3 $4", ["96"]], ["(\\d{2})(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["9"]], ["(\\d{3})(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["9"]]]], DE: ["49", "00", "[2579]\\d{5,14}|49(?:[34]0|69|8\\d)\\d\\d?|49(?:37|49|60|7[089]|9\\d)\\d{1,3}|49(?:2[024-9]|3[2-689]|7[1-7])\\d{1,8}|(?:1|[368]\\d|4[0-8])\\d{3,13}|49(?:[015]\\d|2[13]|31|[46][1-8])\\d{1,9}", [4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15], [["(\\d{2})(\\d{3,13})", "$1 $2", ["3[02]|40|[68]9"], "0$1"], ["(\\d{3})(\\d{3,12})", "$1 $2", ["2(?:0[1-389]|1[124]|2[18]|3[14])|3(?:[35-9][15]|4[015])|906|(?:2[4-9]|4[2-9]|[579][1-9]|[68][1-8])1", "2(?:0[1-389]|12[0-8])|3(?:[35-9][15]|4[015])|906|2(?:[13][14]|2[18])|(?:2[4-9]|4[2-9]|[579][1-9]|[68][1-8])1"], "0$1"], ["(\\d{4})(\\d{2,11})", "$1 $2", ["[24-6]|3(?:[3569][02-46-9]|4[2-4679]|7[2-467]|8[2-46-8])|70[2-8]|8(?:0[2-9]|[1-8])|90[7-9]|[79][1-9]", "[24-6]|3(?:3(?:0[1-467]|2[127-9]|3[124578]|7[1257-9]|8[1256]|9[145])|4(?:2[135]|4[13578]|9[1346])|5(?:0[14]|2[1-3589]|6[1-4]|7[13468]|8[13568])|6(?:2[1-489]|3[124-6]|6[13]|7[12579]|8[1-356]|9[135])|7(?:2[1-7]|4[145]|6[1-5]|7[1-4])|8(?:21|3[1468]|6|7[1467]|8[136])|9(?:0[12479]|2[1358]|4[134679]|6[1-9]|7[136]|8[147]|9[1468]))|70[2-8]|8(?:0[2-9]|[1-8])|90[7-9]|[79][1-9]|3[68]4[1347]|3(?:47|60)[1356]|3(?:3[46]|46|5[49])[1246]|3[4579]3[1357]"], "0$1"], ["(\\d{3})(\\d{4})", "$1 $2", ["138"], "0$1"], ["(\\d{5})(\\d{2,10})", "$1 $2", ["3"], "0$1"], ["(\\d{3})(\\d{5,11})", "$1 $2", ["181"], "0$1"], ["(\\d{3})(\\d)(\\d{4,10})", "$1 $2 $3", ["1(?:3|80)|9"], "0$1"], ["(\\d{3})(\\d{7,8})", "$1 $2", ["1[67]"], "0$1"], ["(\\d{3})(\\d{7,12})", "$1 $2", ["8"], "0$1"], ["(\\d{5})(\\d{6})", "$1 $2", ["185", "1850", "18500"], "0$1"], ["(\\d{3})(\\d{4})(\\d{4})", "$1 $2 $3", ["7"], "0$1"], ["(\\d{4})(\\d{7})", "$1 $2", ["18[68]"], "0$1"], ["(\\d{4})(\\d{7})", "$1 $2", ["15[1279]"], "0$1"], ["(\\d{5})(\\d{6})", "$1 $2", ["15[03568]", "15(?:[0568]|31)"], "0$1"], ["(\\d{3})(\\d{8})", "$1 $2", ["18"], "0$1"], ["(\\d{3})(\\d{2})(\\d{7,8})", "$1 $2 $3", ["1(?:6[023]|7)"], "0$1"], ["(\\d{4})(\\d{2})(\\d{7})", "$1 $2 $3", ["15[279]"], "0$1"], ["(\\d{3})(\\d{2})(\\d{8})", "$1 $2 $3", ["15"], "0$1"]], "0"], DJ: ["253", "00", "(?:2\\d|77)\\d{6}", [8], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[27]"]]]], DK: ["45", "00", "[2-9]\\d{7}", [8], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[2-9]"]]]], DM: ["1", "011", "(?:[58]\\d\\d|767|900)\\d{7}", [10], 0, "1", 0, "([2-7]\\d{6})$|1", "767$1", 0, "767"], DO: ["1", "011", "(?:[58]\\d\\d|900)\\d{7}", [10], 0, "1", 0, 0, 0, 0, "8001|8[024]9"], DZ: ["213", "00", "(?:[1-4]|[5-79]\\d|80)\\d{7}", [8, 9], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[1-4]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["9"], "0$1"], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[5-8]"], "0$1"]], "0"], EC: ["593", "00", "1\\d{9,10}|(?:[2-7]|9\\d)\\d{7}", [8, 9, 10, 11], [["(\\d)(\\d{3})(\\d{4})", "$1 $2-$3", ["[2-7]"], "(0$1)", 0, "$1-$2-$3"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["9"], "0$1"], ["(\\d{4})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["1"]]], "0"], EE: ["372", "00", "8\\d{9}|[4578]\\d{7}|(?:[3-8]\\d|90)\\d{5}", [7, 8, 10], [["(\\d{3})(\\d{4})", "$1 $2", ["[369]|4[3-8]|5(?:[0-2]|5[0-478]|6[45])|7[1-9]|88", "[369]|4[3-8]|5(?:[02]|1(?:[0-8]|95)|5[0-478]|6(?:4[0-4]|5[1-589]))|7[1-9]|88"]], ["(\\d{4})(\\d{3,4})", "$1 $2", ["[45]|8(?:00|[1-49])", "[45]|8(?:00[1-9]|[1-49])"]], ["(\\d{2})(\\d{2})(\\d{4})", "$1 $2 $3", ["7"]], ["(\\d{4})(\\d{3})(\\d{3})", "$1 $2 $3", ["8"]]]], EG: ["20", "00", "[189]\\d{8,9}|[24-6]\\d{8}|[135]\\d{7}", [8, 9, 10], [["(\\d)(\\d{7,8})", "$1 $2", ["[23]"], "0$1"], ["(\\d{2})(\\d{6,7})", "$1 $2", ["1[35]|[4-6]|8[2468]|9[235-7]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["[89]"], "0$1"], ["(\\d{2})(\\d{8})", "$1 $2", ["1"], "0$1"]], "0"], EH: ["212", "00", "[5-8]\\d{8}", [9], 0, "0", 0, 0, 0, 0, "528[89]"], ER: ["291", "00", "[178]\\d{6}", [7], [["(\\d)(\\d{3})(\\d{3})", "$1 $2 $3", ["[178]"], "0$1"]], "0"], ES: ["34", "00", "[5-9]\\d{8}", [9], [["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[89]00"]], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[5-9]"]]]], ET: ["251", "00", "(?:11|[2-579]\\d)\\d{7}", [9], [["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[1-579]"], "0$1"]], "0"], FI: ["358", "00|99(?:[01469]|5(?:[14]1|3[23]|5[59]|77|88|9[09]))", "[1-35689]\\d{4}|7\\d{10,11}|(?:[124-7]\\d|3[0-46-9])\\d{8}|[1-9]\\d{5,8}", [5, 6, 7, 8, 9, 10, 11, 12], [["(\\d{5})", "$1", ["20[2-59]"], "0$1"], ["(\\d{3})(\\d{3,7})", "$1 $2", ["(?:[1-3]0|[68])0|70[07-9]"], "0$1"], ["(\\d{2})(\\d{4,8})", "$1 $2", ["[14]|2[09]|50|7[135]"], "0$1"], ["(\\d{2})(\\d{6,10})", "$1 $2", ["7"], "0$1"], ["(\\d)(\\d{4,9})", "$1 $2", ["(?:19|[2568])[1-8]|3(?:0[1-9]|[1-9])|9"], "0$1"]], "0", 0, 0, 0, 0, "1[03-79]|[2-9]", 0, "00"], FJ: ["679", "0(?:0|52)", "45\\d{5}|(?:0800\\d|[235-9])\\d{6}", [7, 11], [["(\\d{3})(\\d{4})", "$1 $2", ["[235-9]|45"]], ["(\\d{4})(\\d{3})(\\d{4})", "$1 $2 $3", ["0"]]], 0, 0, 0, 0, 0, 0, 0, "00"], FK: ["500", "00", "[2-7]\\d{4}", [5]], FM: ["691", "00", "(?:[39]\\d\\d|820)\\d{4}", [7], [["(\\d{3})(\\d{4})", "$1 $2", ["[389]"]]]], FO: ["298", "00", "[2-9]\\d{5}", [6], [["(\\d{6})", "$1", ["[2-9]"]]], 0, 0, "(10(?:01|[12]0|88))"], FR: ["33", "00", "[1-9]\\d{8}", [9], [["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["8"], "0 $1"], ["(\\d)(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4 $5", ["[1-79]"], "0$1"]], "0"], GA: ["241", "00", "(?:[067]\\d|11)\\d{6}|[2-7]\\d{6}", [7, 8], [["(\\d)(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[2-7]"], "0$1"], ["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["0"]], ["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["11|[67]"], "0$1"]], 0, 0, "0(11\\d{6}|60\\d{6}|61\\d{6}|6[256]\\d{6}|7[467]\\d{6})", "$1"], GB: ["44", "00", "[1-357-9]\\d{9}|[18]\\d{8}|8\\d{6}", [7, 9, 10], [["(\\d{3})(\\d{4})", "$1 $2", ["800", "8001", "80011", "800111", "8001111"], "0$1"], ["(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3", ["845", "8454", "84546", "845464"], "0$1"], ["(\\d{3})(\\d{6})", "$1 $2", ["800"], "0$1"], ["(\\d{5})(\\d{4,5})", "$1 $2", ["1(?:38|5[23]|69|76|94)", "1(?:(?:38|69)7|5(?:24|39)|768|946)", "1(?:3873|5(?:242|39[4-6])|(?:697|768)[347]|9467)"], "0$1"], ["(\\d{4})(\\d{5,6})", "$1 $2", ["1(?:[2-69][02-9]|[78])"], "0$1"], ["(\\d{2})(\\d{4})(\\d{4})", "$1 $2 $3", ["[25]|7(?:0|6[02-9])", "[25]|7(?:0|6(?:[03-9]|2[356]))"], "0$1"], ["(\\d{4})(\\d{6})", "$1 $2", ["7"], "0$1"], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["[1389]"], "0$1"]], "0", 0, 0, 0, 0, 0, [["(?:1(?:1(?:3(?:[0-58]\\d\\d|73[0-35])|4(?:(?:[0-5]\\d|70)\\d|69[7-9])|(?:(?:5[0-26-9]|[78][0-49])\\d|6(?:[0-4]\\d|50))\\d)|(?:2(?:(?:0[024-9]|2[3-9]|3[3-79]|4[1-689]|[58][02-9]|6[0-47-9]|7[013-9]|9\\d)\\d|1(?:[0-7]\\d|8[0-3]))|(?:3(?:0\\d|1[0-8]|[25][02-9]|3[02-579]|[468][0-46-9]|7[1-35-79]|9[2-578])|4(?:0[03-9]|[137]\\d|[28][02-57-9]|4[02-69]|5[0-8]|[69][0-79])|5(?:0[1-35-9]|[16]\\d|2[024-9]|3[015689]|4[02-9]|5[03-9]|7[0-35-9]|8[0-468]|9[0-57-9])|6(?:0[034689]|1\\d|2[0-35689]|[38][013-9]|4[1-467]|5[0-69]|6[13-9]|7[0-8]|9[0-24578])|7(?:0[0246-9]|2\\d|3[0236-8]|4[03-9]|5[0-46-9]|6[013-9]|7[0-35-9]|8[024-9]|9[02-9])|8(?:0[35-9]|2[1-57-9]|3[02-578]|4[0-578]|5[124-9]|6[2-69]|7\\d|8[02-9]|9[02569])|9(?:0[02-589]|[18]\\d|2[02-689]|3[1-57-9]|4[2-9]|5[0-579]|6[2-47-9]|7[0-24578]|9[2-57]))\\d)\\d)|2(?:0[013478]|3[0189]|4[017]|8[0-46-9]|9[0-2])\\d{3})\\d{4}|1(?:2(?:0(?:46[1-4]|87[2-9])|545[1-79]|76(?:2\\d|3[1-8]|6[1-6])|9(?:7(?:2[0-4]|3[2-5])|8(?:2[2-8]|7[0-47-9]|8[3-5])))|3(?:6(?:38[2-5]|47[23])|8(?:47[04-9]|64[0157-9]))|4(?:044[1-7]|20(?:2[23]|8\\d)|6(?:0(?:30|5[2-57]|6[1-8]|7[2-8])|140)|8(?:052|87[1-3]))|5(?:2(?:4(?:3[2-79]|6\\d)|76\\d)|6(?:26[06-9]|686))|6(?:06(?:4\\d|7[4-79])|295[5-7]|35[34]\\d|47(?:24|61)|59(?:5[08]|6[67]|74)|9(?:55[0-4]|77[23]))|7(?:26(?:6[13-9]|7[0-7])|(?:442|688)\\d|50(?:2[0-3]|[3-68]2|76))|8(?:27[56]\\d|37(?:5[2-5]|8[239])|843[2-58])|9(?:0(?:0(?:6[1-8]|85)|52\\d)|3583|4(?:66[1-8]|9(?:2[01]|81))|63(?:23|3[1-4])|9561))\\d{3}", [9, 10]], ["7(?:457[0-57-9]|700[01]|911[028])\\d{5}|7(?:[1-3]\\d\\d|4(?:[0-46-9]\\d|5[0-689])|5(?:0[0-8]|[13-9]\\d|2[0-35-9])|7(?:0[1-9]|[1-7]\\d|8[02-9]|9[0-689])|8(?:[014-9]\\d|[23][0-8])|9(?:[024-9]\\d|1[02-9]|3[0-689]))\\d{6}", [10]], ["80[08]\\d{7}|800\\d{6}|8001111"], ["(?:8(?:4[2-5]|7[0-3])|9(?:[01]\\d|8[2-49]))\\d{7}|845464\\d", [7, 10]], ["70\\d{8}", [10]], 0, ["(?:3[0347]|55)\\d{8}", [10]], ["76(?:464|652)\\d{5}|76(?:0[0-28]|2[356]|34|4[01347]|5[49]|6[0-369]|77|8[14]|9[139])\\d{6}", [10]], ["56\\d{8}", [10]]], 0, " x"], GD: ["1", "011", "(?:473|[58]\\d\\d|900)\\d{7}", [10], 0, "1", 0, "([2-9]\\d{6})$|1", "473$1", 0, "473"], GE: ["995", "00", "(?:[3-57]\\d\\d|800)\\d{6}", [9], [["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["70"], "0$1"], ["(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["32"], "0$1"], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[57]"]], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[348]"], "0$1"]], "0"], GF: ["594", "00", "(?:[56]94\\d|7093)\\d{5}|(?:80|9\\d)\\d{7}", [9], [["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[5-7]|9[47]"], "0$1"], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[89]"], "0$1"]], "0"], GG: ["44", "00", "(?:1481|[357-9]\\d{3})\\d{6}|8\\d{6}(?:\\d{2})?", [7, 9, 10], 0, "0", 0, "([25-9]\\d{5})$|0", "1481$1", 0, 0, [["1481[25-9]\\d{5}", [10]], ["7(?:(?:781|839)\\d|911[17])\\d{5}", [10]], ["80[08]\\d{7}|800\\d{6}|8001111"], ["(?:8(?:4[2-5]|7[0-3])|9(?:[01]\\d|8[0-3]))\\d{7}|845464\\d", [7, 10]], ["70\\d{8}", [10]], 0, ["(?:3[0347]|55)\\d{8}", [10]], ["76(?:464|652)\\d{5}|76(?:0[0-28]|2[356]|34|4[01347]|5[49]|6[0-369]|77|8[14]|9[139])\\d{6}", [10]], ["56\\d{8}", [10]]]], GH: ["233", "00", "(?:[235]\\d{3}|800)\\d{5}", [8, 9], [["(\\d{3})(\\d{5})", "$1 $2", ["8"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[235]"], "0$1"]], "0"], GI: ["350", "00", "(?:[25]\\d|60)\\d{6}", [8], [["(\\d{3})(\\d{5})", "$1 $2", ["2"]]]], GL: ["299", "00", "(?:19|[2-689]\\d|70)\\d{4}", [6], [["(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3", ["19|[2-9]"]]]], GM: ["220", "00", "[2-9]\\d{6}", [7], [["(\\d{3})(\\d{4})", "$1 $2", ["[2-9]"]]]], GN: ["224", "00", "722\\d{6}|(?:3|6\\d)\\d{7}", [8, 9], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["3"]], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[67]"]]]], GP: ["590", "00", "(?:590\\d|7090)\\d{5}|(?:69|80|9\\d)\\d{7}", [9], [["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[5-79]"], "0$1"], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["8"], "0$1"]], "0", 0, 0, 0, 0, 0, [["590(?:0[1-68]|[14][0-24-9]|2[0-68]|3[1-9]|5[3-579]|[68][0-689]|7[08]|9\\d)\\d{4}"], ["(?:69(?:0\\d\\d|1(?:2[2-9]|3[0-5])|4(?:0[89]|1[2-6]|9\\d)|6(?:1[016-9]|5[0-4]|[67]\\d))|7090[0-4])\\d{4}"], ["80[0-5]\\d{6}"], 0, 0, 0, 0, 0, ["9(?:(?:39[5-7]|76[018])\\d|475[0-6])\\d{4}"]]], GQ: ["240", "00", "222\\d{6}|(?:3\\d|55|[89]0)\\d{7}", [9], [["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[235]"]], ["(\\d{3})(\\d{6})", "$1 $2", ["[89]"]]]], GR: ["30", "00", "5005000\\d{3}|8\\d{9,11}|(?:[269]\\d|70)\\d{8}", [10, 11, 12], [["(\\d{2})(\\d{4})(\\d{4})", "$1 $2 $3", ["21|7"]], ["(\\d{4})(\\d{6})", "$1 $2", ["2(?:2|3[2-57-9]|4[2-469]|5[2-59]|6[2-9]|7[2-69]|8[2-49])|5"]], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["[2689]"]], ["(\\d{3})(\\d{3,4})(\\d{5})", "$1 $2 $3", ["8"]]]], GT: ["502", "00", "80\\d{6}|(?:1\\d{3}|[2-7])\\d{7}", [8, 11], [["(\\d{4})(\\d{4})", "$1 $2", ["[2-8]"]], ["(\\d{4})(\\d{3})(\\d{4})", "$1 $2 $3", ["1"]]]], GU: ["1", "011", "(?:[58]\\d\\d|671|900)\\d{7}", [10], 0, "1", 0, "([2-9]\\d{6})$|1", "671$1", 0, "671"], GW: ["245", "00", "[49]\\d{8}|4\\d{6}", [7, 9], [["(\\d{3})(\\d{4})", "$1 $2", ["40"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[49]"]]]], GY: ["592", "001", "(?:[2-8]\\d{3}|9008)\\d{3}", [7], [["(\\d{3})(\\d{4})", "$1 $2", ["[2-9]"]]]], HK: ["852", "00(?:30|5[09]|[126-9]?)", "8[0-46-9]\\d{6,7}|9\\d{4,7}|(?:[2-7]|9\\d{3})\\d{7}", [5, 6, 7, 8, 9, 11], [["(\\d{3})(\\d{2,5})", "$1 $2", ["900", "9003"]], ["(\\d{4})(\\d{4})", "$1 $2", ["[2-7]|8[1-4]|9(?:0[1-9]|[1-8])"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["8"]], ["(\\d{3})(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["9"]]], 0, 0, 0, 0, 0, 0, 0, "00"], HN: ["504", "00", "8\\d{10}|[237-9]\\d{7}", [8, 11], [["(\\d{4})(\\d{4})", "$1-$2", ["[237-9]"]]]], HR: ["385", "00", "[2-69]\\d{8}|80\\d{5,7}|[1-79]\\d{7}|6\\d{6}", [7, 8, 9], [["(\\d{2})(\\d{2})(\\d{3})", "$1 $2 $3", ["6[01]"], "0$1"], ["(\\d{3})(\\d{2})(\\d{2,3})", "$1 $2 $3", ["8"], "0$1"], ["(\\d)(\\d{4})(\\d{3})", "$1 $2 $3", ["1"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["6|7[245]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["9"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[2-57]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["8"], "0$1"]], "0"], HT: ["509", "00", "[2-589]\\d{7}", [8], [["(\\d{2})(\\d{2})(\\d{4})", "$1 $2 $3", ["[2-589]"]]]], HU: ["36", "00", "[235-7]\\d{8}|[1-9]\\d{7}", [8, 9], [["(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["1"], "(06 $1)"], ["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["[27][2-9]|3[2-7]|4[24-9]|5[2-79]|6|8[2-57-9]|9[2-69]"], "(06 $1)"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[2-9]"], "06 $1"]], "06"], ID: ["62", "00[89]", "00[1-9]\\d{9,14}|(?:[1-36]|8\\d{5})\\d{6}|00\\d{9}|[1-9]\\d{8,10}|[2-9]\\d{7}", [7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17], [["(\\d)(\\d{3})(\\d{3})", "$1 $2 $3", ["15"]], ["(\\d{2})(\\d{5,9})", "$1 $2", ["2[124]|[36]1"], "(0$1)"], ["(\\d{3})(\\d{5,7})", "$1 $2", ["800"], "0$1"], ["(\\d{3})(\\d{5,8})", "$1 $2", ["[2-79]"], "(0$1)"], ["(\\d{3})(\\d{3,4})(\\d{3})", "$1-$2-$3", ["8[1-35-9]"], "0$1"], ["(\\d{3})(\\d{6,8})", "$1 $2", ["1"], "0$1"], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["804"], "0$1"], ["(\\d{3})(\\d)(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["80"], "0$1"], ["(\\d{3})(\\d{4})(\\d{4,5})", "$1-$2-$3", ["8"], "0$1"]], "0"], IE: ["353", "00", "(?:1\\d|[2569])\\d{6,8}|4\\d{6,9}|7\\d{8}|8\\d{8,9}", [7, 8, 9, 10], [["(\\d{2})(\\d{5})", "$1 $2", ["2[24-9]|47|58|6[237-9]|9[35-9]"], "(0$1)"], ["(\\d{3})(\\d{5})", "$1 $2", ["[45]0"], "(0$1)"], ["(\\d)(\\d{3,4})(\\d{4})", "$1 $2 $3", ["1"], "(0$1)"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[2569]|4[1-69]|7[14]"], "(0$1)"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["70"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["81"], "(0$1)"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[78]"], "0$1"], ["(\\d{4})(\\d{3})(\\d{3})", "$1 $2 $3", ["1"]], ["(\\d{2})(\\d{4})(\\d{4})", "$1 $2 $3", ["4"], "(0$1)"], ["(\\d{2})(\\d)(\\d{3})(\\d{4})", "$1 $2 $3 $4", ["8"], "0$1"]], "0"], IL: ["972", "0(?:0|1[2-9])", "1\\d{6}(?:\\d{3,5})?|[57]\\d{8}|[1-489]\\d{7}", [7, 8, 9, 10, 11, 12], [["(\\d{4})(\\d{3})", "$1-$2", ["125"]], ["(\\d{4})(\\d{2})(\\d{2})", "$1-$2-$3", ["121"]], ["(\\d)(\\d{3})(\\d{4})", "$1-$2-$3", ["[2-489]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1-$2-$3", ["[57]"], "0$1"], ["(\\d{4})(\\d{3})(\\d{3})", "$1-$2-$3", ["12"]], ["(\\d{4})(\\d{6})", "$1-$2", ["159"]], ["(\\d)(\\d{3})(\\d{3})(\\d{3})", "$1-$2-$3-$4", ["1[7-9]"]], ["(\\d{3})(\\d{1,2})(\\d{3})(\\d{4})", "$1-$2 $3-$4", ["15"]]], "0"], IM: ["44", "00", "1624\\d{6}|(?:[3578]\\d|90)\\d{8}", [10], 0, "0", 0, "([25-8]\\d{5})$|0", "1624$1", 0, "74576|(?:16|7[56])24"], IN: ["91", "00", "(?:000800|[2-9]\\d\\d)\\d{7}|1\\d{7,12}", [8, 9, 10, 11, 12, 13], [["(\\d{8})", "$1", ["5(?:0|2[23]|3[03]|[67]1|88)", "5(?:0|2(?:21|3)|3(?:0|3[23])|616|717|888)", "5(?:0|2(?:21|3)|3(?:0|3[23])|616|717|8888)"], 0, 1], ["(\\d{4})(\\d{4,5})", "$1 $2", ["180", "1800"], 0, 1], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["140"], 0, 1], ["(\\d{2})(\\d{4})(\\d{4})", "$1 $2 $3", ["11|2[02]|33|4[04]|79[1-7]|80[2-46]", "11|2[02]|33|4[04]|79(?:[1-6]|7[19])|80(?:[2-4]|6[0-589])", "11|2[02]|33|4[04]|79(?:[124-6]|3(?:[02-9]|1[0-24-9])|7(?:1|9[1-6]))|80(?:[2-4]|6[0-589])"], "0$1", 1], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["1(?:2[0-249]|3[0-25]|4[145]|[68]|7[1257])|2(?:1[257]|3[013]|4[01]|5[0137]|6[0158]|78|8[1568])|3(?:26|4[1-3]|5[34]|6[01489]|7[02-46]|8[159])|4(?:1[36]|2[1-47]|5[12]|6[0-26-9]|7[0-24-9]|8[013-57]|9[014-7])|5(?:1[025]|22|[36][25]|4[28]|5[12]|[78]1)|6(?:12|[2-4]1|5[17]|6[13]|80)|7(?:12|3[134]|4[47]|61|88)|8(?:16|2[014]|3[126]|6[136]|7[078]|8[34]|91)|(?:43|59|75)[15]|(?:1[59]|29|67|72)[14]", "1(?:2[0-24]|3[0-25]|4[145]|[59][14]|6[1-9]|7[1257]|8[1-57-9])|2(?:1[257]|3[013]|4[01]|5[0137]|6[058]|78|8[1568]|9[14])|3(?:26|4[1-3]|5[34]|6[01489]|7[02-46]|8[159])|4(?:1[36]|2[1-47]|3[15]|5[12]|6[0-26-9]|7[0-24-9]|8[013-57]|9[014-7])|5(?:1[025]|22|[36][25]|4[28]|[578]1|9[15])|674|7(?:(?:2[14]|3[34]|5[15])[2-6]|61[346]|88[0-8])|8(?:70[2-6]|84[235-7]|91[3-7])|(?:1(?:29|60|8[06])|261|552|6(?:12|[2-47]1|5[17]|6[13]|80)|7(?:12|31|4[47])|8(?:16|2[014]|3[126]|6[136]|7[78]|83))[2-7]", "1(?:2[0-24]|3[0-25]|4[145]|[59][14]|6[1-9]|7[1257]|8[1-57-9])|2(?:1[257]|3[013]|4[01]|5[0137]|6[058]|78|8[1568]|9[14])|3(?:26|4[1-3]|5[34]|6[01489]|7[02-46]|8[159])|4(?:1[36]|2[1-47]|3[15]|5[12]|6[0-26-9]|7[0-24-9]|8[013-57]|9[014-7])|5(?:1[025]|22|[36][25]|4[28]|[578]1|9[15])|6(?:12(?:[2-6]|7[0-8])|74[2-7])|7(?:(?:2[14]|5[15])[2-6]|3171|61[346]|88(?:[2-7]|82))|8(?:70[2-6]|84(?:[2356]|7[19])|91(?:[3-6]|7[19]))|73[134][2-6]|(?:74[47]|8(?:16|2[014]|3[126]|6[136]|7[78]|83))(?:[2-6]|7[19])|(?:1(?:29|60|8[06])|261|552|6(?:[2-4]1|5[17]|6[13]|7(?:1|4[0189])|80)|7(?:12|88[01]))[2-7]"], "0$1", 1], ["(\\d{4})(\\d{3})(\\d{3})", "$1 $2 $3", ["1(?:[2-479]|5[0235-9])|[2-5]|6(?:1[1358]|2[2457-9]|3[2-5]|4[235-7]|5[2-689]|6[24578]|7[235689]|8[1-6])|7(?:1[013-9]|28|3[129]|4[1-35689]|5[29]|6[02-5]|70)|807", "1(?:[2-479]|5[0235-9])|[2-5]|6(?:1[1358]|2(?:[2457]|84|95)|3(?:[2-4]|55)|4[235-7]|5[2-689]|6[24578]|7[235689]|8[1-6])|7(?:1(?:[013-8]|9[6-9])|28[6-8]|3(?:17|2[0-49]|9[2-57])|4(?:1[2-4]|[29][0-7]|3[0-8]|[56]|8[0-24-7])|5(?:2[1-3]|9[0-6])|6(?:0[5689]|2[5-9]|3[02-8]|4|5[0-367])|70[13-7])|807[19]", "1(?:[2-479]|5(?:[0236-9]|5[013-9]))|[2-5]|6(?:2(?:84|95)|355|83)|73179|807(?:1|9[1-3])|(?:1552|6(?:1[1358]|2[2457]|3[2-4]|4[235-7]|5[2-689]|6[24578]|7[235689]|8[124-6])\\d|7(?:1(?:[013-8]\\d|9[6-9])|28[6-8]|3(?:2[0-49]|9[2-57])|4(?:1[2-4]|[29][0-7]|3[0-8]|[56]\\d|8[0-24-7])|5(?:2[1-3]|9[0-6])|6(?:0[5689]|2[5-9]|3[02-8]|4\\d|5[0-367])|70[13-7]))[2-7]"], "0$1", 1], ["(\\d{5})(\\d{5})", "$1 $2", ["[6-9]"], "0$1", 1], ["(\\d{4})(\\d{2,4})(\\d{4})", "$1 $2 $3", ["1(?:6|8[06])", "1(?:6|8[06]0)"], 0, 1], ["(\\d{4})(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["18"], 0, 1]], "0"], IO: ["246", "00", "3\\d{6}", [7], [["(\\d{3})(\\d{4})", "$1 $2", ["3"]]]], IQ: ["964", "00", "(?:1|7\\d\\d)\\d{7}|[2-6]\\d{7,8}", [8, 9, 10], [["(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["1"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[2-6]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["7"], "0$1"]], "0"], IR: ["98", "00", "[1-9]\\d{9}|(?:[1-8]\\d\\d|9)\\d{3,4}", [4, 5, 6, 7, 10], [["(\\d{4,5})", "$1", ["96"], "0$1"], ["(\\d{2})(\\d{4,5})", "$1 $2", ["(?:1[137]|2[13-68]|3[1458]|4[145]|5[1468]|6[16]|7[1467]|8[13467])[12689]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["9"], "0$1"], ["(\\d{2})(\\d{4})(\\d{4})", "$1 $2 $3", ["[1-8]"], "0$1"]], "0"], IS: ["354", "00|1(?:0(?:01|[12]0)|100)", "(?:38\\d|[4-9])\\d{6}", [7, 9], [["(\\d{3})(\\d{4})", "$1 $2", ["[4-9]"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["3"]]], 0, 0, 0, 0, 0, 0, 0, "00"], IT: ["39", "00", "0\\d{5,10}|1\\d{8,10}|3(?:[0-8]\\d{7,10}|9\\d{7,8})|(?:43|55|70)\\d{8}|8\\d{5}(?:\\d{2,4})?", [6, 7, 8, 9, 10, 11, 12], [["(\\d{2})(\\d{4,6})", "$1 $2", ["0[26]"]], ["(\\d{3})(\\d{3,6})", "$1 $2", ["0[13-57-9][0159]|8(?:03|4[17]|9[2-5])", "0[13-57-9][0159]|8(?:03|4[17]|9(?:2|3[04]|[45][0-4]))"]], ["(\\d{4})(\\d{2,6})", "$1 $2", ["0(?:[13-579][2-46-8]|8[236-8])"]], ["(\\d{4})(\\d{4})", "$1 $2", ["894"]], ["(\\d{2})(\\d{3,4})(\\d{4})", "$1 $2 $3", ["0[26]|5"]], ["(\\d{3})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["1(?:44|[679])|[378]|43"]], ["(\\d{3})(\\d{3,4})(\\d{4})", "$1 $2 $3", ["0[13-57-9][0159]|14"]], ["(\\d{2})(\\d{4})(\\d{5})", "$1 $2 $3", ["0[26]"]], ["(\\d{4})(\\d{3})(\\d{4})", "$1 $2 $3", ["0"]], ["(\\d{3})(\\d{4})(\\d{4,5})", "$1 $2 $3", ["3"]]], 0, 0, 0, 0, 0, 0, [["0669[0-79]\\d{1,6}|0(?:1(?:[0159]\\d|[27][1-5]|31|4[1-4]|6[1356]|8[2-57])|2\\d\\d|3(?:[0159]\\d|2[1-4]|3[12]|[48][1-6]|6[2-59]|7[1-7])|4(?:[0159]\\d|[23][1-9]|4[245]|6[1-5]|7[1-4]|81)|5(?:[0159]\\d|2[1-5]|3[2-6]|4[1-79]|6[4-6]|7[1-578]|8[3-8])|6(?:[0-57-9]\\d|6[0-8])|7(?:[0159]\\d|2[12]|3[1-7]|4[2-46]|6[13569]|7[13-6]|8[1-59])|8(?:[0159]\\d|2[3-578]|3[1-356]|[6-8][1-5])|9(?:[0159]\\d|[238][1-5]|4[12]|6[1-8]|7[1-6]))\\d{2,7}", [6, 7, 8, 9, 10, 11]], ["3[2-9]\\d{7,8}|(?:31|43)\\d{8}", [9, 10]], ["80(?:0\\d{3}|3)\\d{3}", [6, 9]], ["(?:0878\\d{3}|89(?:2\\d|3[04]|4(?:[0-4]|[5-9]\\d\\d)|5[0-4]))\\d\\d|(?:1(?:44|6[346])|89(?:38|5[5-9]|9))\\d{6}", [6, 8, 9, 10]], ["1(?:78\\d|99)\\d{6}", [9, 10]], ["3[2-8]\\d{9,10}", [11, 12]], 0, 0, ["55\\d{8}", [10]], ["84(?:[08]\\d{3}|[17])\\d{3}", [6, 9]]]], JE: ["44", "00", "1534\\d{6}|(?:[3578]\\d|90)\\d{8}", [10], 0, "0", 0, "([0-24-8]\\d{5})$|0", "1534$1", 0, 0, [["1534[0-24-8]\\d{5}"], ["7(?:(?:(?:50|82)9|937)\\d|7(?:00[378]|97\\d))\\d{5}"], ["80(?:07(?:35|81)|8901)\\d{4}"], ["(?:8(?:4(?:4(?:4(?:05|42|69)|703)|5(?:041|800))|7(?:0002|1206))|90(?:066[59]|1810|71(?:07|55)))\\d{4}"], ["701511\\d{4}"], 0, ["(?:3(?:0(?:07(?:35|81)|8901)|3\\d{4}|4(?:4(?:4(?:05|42|69)|703)|5(?:041|800))|7(?:0002|1206))|55\\d{4})\\d{4}"], ["76(?:464|652)\\d{5}|76(?:0[0-28]|2[356]|34|4[01347]|5[49]|6[0-369]|77|8[14]|9[139])\\d{6}"], ["56\\d{8}"]]], JM: ["1", "011", "(?:[58]\\d\\d|658|900)\\d{7}", [10], 0, "1", 0, 0, 0, 0, "658|876"], JO: ["962", "00", "(?:(?:[2689]|7\\d)\\d|32|53)\\d{6}", [8, 9], [["(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["[2356]|87"], "(0$1)"], ["(\\d{3})(\\d{5,6})", "$1 $2", ["[89]"], "0$1"], ["(\\d{2})(\\d{7})", "$1 $2", ["70"], "0$1"], ["(\\d)(\\d{4})(\\d{4})", "$1 $2 $3", ["7"], "0$1"]], "0"], JP: ["81", "010", "00[1-9]\\d{6,14}|[257-9]\\d{9}|(?:00|[1-9]\\d\\d)\\d{6}", [8, 9, 10, 11, 12, 13, 14, 15, 16, 17], [["(\\d{3})(\\d{3})(\\d{3})", "$1-$2-$3", ["(?:12|57|99)0"], "0$1"], ["(\\d{4})(\\d)(\\d{4})", "$1-$2-$3", ["1(?:26|3[79]|4[56]|5[4-68]|6[3-5])|499|5(?:76|97)|746|8(?:3[89]|47|51)|9(?:80|9[16])", "1(?:267|3(?:7[247]|9[278])|466|5(?:47|58|64)|6(?:3[245]|48|5[4-68]))|499[2468]|5(?:76|97)9|7468|8(?:3(?:8[7-9]|96)|477|51[2-9])|9(?:802|9(?:1[23]|69))|1(?:45|58)[67]", "1(?:267|3(?:7[247]|9[278])|466|5(?:47|58|64)|6(?:3[245]|48|5[4-68]))|499[2468]|5(?:769|979[2-69])|7468|8(?:3(?:8[7-9]|96[2457-9])|477|51[2-9])|9(?:802|9(?:1[23]|69))|1(?:45|58)[67]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1-$2-$3", ["60"], "0$1"], ["(\\d)(\\d{4})(\\d{4})", "$1-$2-$3", ["[36]|4(?:2[09]|7[01])", "[36]|4(?:2(?:0|9[02-69])|7(?:0[019]|1))"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1-$2-$3", ["1(?:1|5[45]|77|88|9[69])|2(?:2[1-37]|3[0-269]|4[59]|5|6[24]|7[1-358]|8[1369]|9[0-38])|4(?:[28][1-9]|3[0-57]|[45]|6[248]|7[2-579]|9[29])|5(?:2|3[0459]|4[0-369]|5[29]|8[02389]|9[0-389])|7(?:2[02-46-9]|34|[58]|6[0249]|7[57]|9[2-6])|8(?:2[124589]|3[26-9]|49|51|6|7[0-468]|8[68]|9[019])|9(?:[23][1-9]|4[15]|5[138]|6[1-3]|7[156]|8[189]|9[1-489])", "1(?:1|5(?:4[018]|5[017])|77|88|9[69])|2(?:2(?:[127]|3[014-9])|3[0-269]|4[59]|5(?:[1-3]|5[0-69]|9[19])|62|7(?:[1-35]|8[0189])|8(?:[16]|3[0134]|9[0-5])|9(?:[028]|17))|4(?:2(?:[13-79]|8[014-6])|3[0-57]|[45]|6[248]|7[2-47]|8[1-9]|9[29])|5(?:2|3(?:[045]|9[0-8])|4[0-369]|5[29]|8[02389]|9[0-3])|7(?:2[02-46-9]|34|[58]|6[0249]|7[57]|9(?:[23]|4[0-59]|5[01569]|6[0167]))|8(?:2(?:[1258]|4[0-39]|9[0-2469])|3(?:[29]|60)|49|51|6(?:[0-24]|36|5[0-3589]|7[23]|9[01459])|7[0-468]|8[68])|9(?:[23][1-9]|4[15]|5[138]|6[1-3]|7[156]|8[189]|9(?:[1289]|3[34]|4[0178]))|(?:264|837)[016-9]|2(?:57|93)[015-9]|(?:25[0468]|422|838)[01]|(?:47[59]|59[89]|8(?:6[68]|9))[019]", "1(?:1|5(?:4[018]|5[017])|77|88|9[69])|2(?:2[127]|3[0-269]|4[59]|5(?:[1-3]|5[0-69]|9(?:17|99))|6(?:2|4[016-9])|7(?:[1-35]|8[0189])|8(?:[16]|3[0134]|9[0-5])|9(?:[028]|17))|4(?:2(?:[13-79]|8[014-6])|3[0-57]|[45]|6[248]|7[2-47]|9[29])|5(?:2|3(?:[045]|9(?:[0-58]|6[4-9]|7[0-35689]))|4[0-369]|5[29]|8[02389]|9[0-3])|7(?:2[02-46-9]|34|[58]|6[0249]|7[57]|9(?:[23]|4[0-59]|5[01569]|6[0167]))|8(?:2(?:[1258]|4[0-39]|9[0169])|3(?:[29]|60|7(?:[017-9]|6[6-8]))|49|51|6(?:[0-24]|36[2-57-9]|5(?:[0-389]|5[23])|6(?:[01]|9[178])|7(?:2[2-468]|3[78])|9[0145])|7[0-468]|8[68])|9(?:4[15]|5[138]|7[156]|8[189]|9(?:[1289]|3(?:31|4[357])|4[0178]))|(?:8294|96)[1-3]|2(?:57|93)[015-9]|(?:223|8699)[014-9]|(?:25[0468]|422|838)[01]|(?:48|8292|9[23])[1-9]|(?:47[59]|59[89]|8(?:68|9))[019]"], "0$1"], ["(\\d{3})(\\d{2})(\\d{4})", "$1-$2-$3", ["[14]|[289][2-9]|5[3-9]|7[2-4679]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{4})", "$1-$2-$3", ["800"], "0$1"], ["(\\d{2})(\\d{4})(\\d{4})", "$1-$2-$3", ["[257-9]"], "0$1"]], "0", 0, "(000[259]\\d{6})$|(?:(?:003768)0?)|0", "$1"], KE: ["254", "000", "(?:[17]\\d\\d|900)\\d{6}|(?:2|80)0\\d{6,7}|[4-6]\\d{6,8}", [7, 8, 9, 10], [["(\\d{2})(\\d{5,7})", "$1 $2", ["[24-6]"], "0$1"], ["(\\d{3})(\\d{6})", "$1 $2", ["[17]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[89]"], "0$1"]], "0"], KG: ["996", "00", "8\\d{9}|[235-9]\\d{8}", [9, 10], [["(\\d{4})(\\d{5})", "$1 $2", ["3(?:1[346]|[24-79])"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[235-79]|88"], "0$1"], ["(\\d{3})(\\d{3})(\\d)(\\d{2,3})", "$1 $2 $3 $4", ["8"], "0$1"]], "0"], KH: ["855", "00[14-9]", "1\\d{9}|[1-9]\\d{7,8}", [8, 9, 10], [["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[1-9]"], "0$1"], ["(\\d{4})(\\d{3})(\\d{3})", "$1 $2 $3", ["1"]]], "0"], KI: ["686", "00", "(?:[37]\\d|6[0-79])\\d{6}|(?:[2-48]\\d|50)\\d{3}", [5, 8], 0, "0"], KM: ["269", "00", "[3478]\\d{6}", [7], [["(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3", ["[3478]"]]]], KN: ["1", "011", "(?:[58]\\d\\d|900)\\d{7}", [10], 0, "1", 0, "([2-7]\\d{6})$|1", "869$1", 0, "869"], KP: ["850", "00|99", "85\\d{6}|(?:19\\d|[2-7])\\d{7}", [8, 10], [["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["8"], "0$1"], ["(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["[2-7]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["1"], "0$1"]], "0"], KR: ["82", "00(?:[125689]|3(?:[46]5|91)|7(?:00|27|3|55|6[126]))", "00[1-9]\\d{8,11}|(?:[12]|5\\d{3})\\d{7}|[13-6]\\d{9}|(?:[1-6]\\d|80)\\d{7}|[3-6]\\d{4,5}|(?:00|7)0\\d{8}", [5, 6, 8, 9, 10, 11, 12, 13, 14], [["(\\d{2})(\\d{3,4})", "$1-$2", ["(?:3[1-3]|[46][1-4]|5[1-5])1"], "0$1"], ["(\\d{4})(\\d{4})", "$1-$2", ["1"]], ["(\\d)(\\d{3,4})(\\d{4})", "$1-$2-$3", ["2"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1-$2-$3", ["[36]0|8"], "0$1"], ["(\\d{2})(\\d{3,4})(\\d{4})", "$1-$2-$3", ["[1346]|5[1-5]"], "0$1"], ["(\\d{2})(\\d{4})(\\d{4})", "$1-$2-$3", ["[57]"], "0$1"], ["(\\d{2})(\\d{5})(\\d{4})", "$1-$2-$3", ["5"], "0$1"]], "0", 0, "0(8(?:[1-46-8]|5\\d\\d))?"], KW: ["965", "00", "18\\d{5}|(?:[2569]\\d|41)\\d{6}", [7, 8], [["(\\d{4})(\\d{3,4})", "$1 $2", ["[169]|2(?:[235]|4[1-35-9])|52"]], ["(\\d{3})(\\d{5})", "$1 $2", ["[245]"]]]], KY: ["1", "011", "(?:345|[58]\\d\\d|900)\\d{7}", [10], 0, "1", 0, "([2-9]\\d{6})$|1", "345$1", 0, "345"], KZ: ["7", "810", "(?:33622|8\\d{8})\\d{5}|[78]\\d{9}", [10, 14], 0, "8", 0, 0, 0, 0, "33622|7", 0, "8~10"], LA: ["856", "00", "[23]\\d{9}|3\\d{8}|(?:[235-8]\\d|41)\\d{6}", [8, 9, 10], [["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["2[13]|3[14]|[4-8]"], "0$1"], ["(\\d{2})(\\d{2})(\\d{2})(\\d{3})", "$1 $2 $3 $4", ["3"], "0$1"], ["(\\d{2})(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["[23]"], "0$1"]], "0"], LB: ["961", "00", "[27-9]\\d{7}|[13-9]\\d{6}", [7, 8], [["(\\d)(\\d{3})(\\d{3})", "$1 $2 $3", ["[13-69]|7(?:[2-57]|62|8[0-6]|9[04-9])|8[02-9]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["[27-9]"]]], "0"], LC: ["1", "011", "(?:[58]\\d\\d|758|900)\\d{7}", [10], 0, "1", 0, "([2-8]\\d{6})$|1", "758$1", 0, "758"], LI: ["423", "00", "[68]\\d{8}|(?:[2378]\\d|90)\\d{5}", [7, 9], [["(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3", ["[2379]|8(?:0[09]|7)", "[2379]|8(?:0(?:02|9)|7)"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["8"]], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["69"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["6"]]], "0", 0, "(1001)|0"], LK: ["94", "00", "[1-9]\\d{8}", [9], [["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["7"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[1-689]"], "0$1"]], "0"], LR: ["231", "00", "(?:[2457]\\d|33|88)\\d{7}|(?:2\\d|[4-6])\\d{6}", [7, 8, 9], [["(\\d)(\\d{3})(\\d{3})", "$1 $2 $3", ["4[67]|[56]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["2"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[2-578]"], "0$1"]], "0"], LS: ["266", "00", "(?:[256]\\d\\d|800)\\d{5}", [8], [["(\\d{4})(\\d{4})", "$1 $2", ["[2568]"]]]], LT: ["370", "00", "(?:[3469]\\d|52|[78]0)\\d{6}", [8], [["(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["52[0-7]"], "(0-$1)", 1], ["(\\d{3})(\\d{2})(\\d{3})", "$1 $2 $3", ["[7-9]"], "0 $1", 1], ["(\\d{2})(\\d{6})", "$1 $2", ["37|4(?:[15]|6[1-8])"], "(0-$1)", 1], ["(\\d{3})(\\d{5})", "$1 $2", ["[3-6]"], "(0-$1)", 1]], "0", 0, "[08]"], LU: ["352", "00", "35[013-9]\\d{4,8}|6\\d{8}|35\\d{2,4}|(?:[2457-9]\\d|3[0-46-9])\\d{2,9}", [4, 5, 6, 7, 8, 9, 10, 11], [["(\\d{2})(\\d{3})", "$1 $2", ["2(?:0[2-689]|[2-9])|[3-57]|8(?:0[2-9]|[13-9])|9(?:0[89]|[2-579])"]], ["(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3", ["2(?:0[2-689]|[2-9])|[3-57]|8(?:0[2-9]|[13-9])|9(?:0[89]|[2-579])"]], ["(\\d{2})(\\d{2})(\\d{3})", "$1 $2 $3", ["20[2-689]"]], ["(\\d{2})(\\d{2})(\\d{2})(\\d{1,2})", "$1 $2 $3 $4", ["2(?:[0367]|4[3-8])"]], ["(\\d{3})(\\d{2})(\\d{3})", "$1 $2 $3", ["80[01]|90[015]"]], ["(\\d{2})(\\d{2})(\\d{2})(\\d{3})", "$1 $2 $3 $4", ["20"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["6"]], ["(\\d{2})(\\d{2})(\\d{2})(\\d{2})(\\d{1,2})", "$1 $2 $3 $4 $5", ["2(?:[0367]|4[3-8])"]], ["(\\d{2})(\\d{2})(\\d{2})(\\d{1,5})", "$1 $2 $3 $4", ["[3-57]|8[13-9]|9(?:0[89]|[2-579])|(?:2|80)[2-9]"]]], 0, 0, "(15(?:0[06]|1[12]|[35]5|4[04]|6[26]|77|88|99)\\d)"], LV: ["371", "00", "(?:[268]\\d|90)\\d{6}", [8], [["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["[269]|8[01]"]]]], LY: ["218", "00", "[2-9]\\d{8}", [9], [["(\\d{2})(\\d{7})", "$1-$2", ["[2-9]"], "0$1"]], "0"], MA: ["212", "00", "[5-8]\\d{8}", [9], [["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["5[45]"], "0$1"], ["(\\d{4})(\\d{5})", "$1-$2", ["5(?:2[2-46-9]|3[3-9]|9)|8(?:0[89]|92)"], "0$1"], ["(\\d{2})(\\d{7})", "$1-$2", ["8"], "0$1"], ["(\\d{3})(\\d{6})", "$1-$2", ["[5-7]"], "0$1"]], "0", 0, 0, 0, 0, 0, [["5(?:2(?:[0-25-79]\\d|3[1-578]|4[02-46-8]|8[0235-7])|3(?:[0-47]\\d|5[02-9]|6[02-8]|8[014-9]|9[3-9])|(?:4[067]|5[03])\\d)\\d{5}"], ["(?:6(?:[0-79]\\d|8[0-247-9])|7(?:[0167]\\d|2[0-8]|5[0-3]|8[0-7]))\\d{6}"], ["80[0-7]\\d{6}"], ["89\\d{7}"], 0, 0, 0, 0, ["(?:592(?:4[0-2]|93)|80[89]\\d\\d)\\d{4}"]]], MC: ["377", "00", "(?:[3489]|6\\d)\\d{7}", [8, 9], [["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["4"], "0$1"], ["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[389]"]], ["(\\d)(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4 $5", ["6"], "0$1"]], "0"], MD: ["373", "00", "(?:[235-7]\\d|[89]0)\\d{6}", [8], [["(\\d{3})(\\d{5})", "$1 $2", ["[89]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["22|3"], "0$1"], ["(\\d{3})(\\d{2})(\\d{3})", "$1 $2 $3", ["[25-7]"], "0$1"]], "0"], ME: ["382", "00", "(?:20|[3-79]\\d)\\d{6}|80\\d{6,7}", [8, 9], [["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[2-9]"], "0$1"]], "0"], MF: ["590", "00", "(?:590\\d|7090)\\d{5}|(?:69|80|9\\d)\\d{7}", [9], 0, "0", 0, 0, 0, 0, 0, [["590(?:0[079]|[14]3|[27][79]|3[03-7]|5[0-268]|87)\\d{4}"], ["(?:69(?:0\\d\\d|1(?:2[2-9]|3[0-5])|4(?:0[89]|1[2-6]|9\\d)|6(?:1[016-9]|5[0-4]|[67]\\d))|7090[0-4])\\d{4}"], ["80[0-5]\\d{6}"], 0, 0, 0, 0, 0, ["9(?:(?:39[5-7]|76[018])\\d|475[0-6])\\d{4}"]]], MG: ["261", "00", "[23]\\d{8}", [9], [["(\\d{2})(\\d{2})(\\d{3})(\\d{2})", "$1 $2 $3 $4", ["[23]"], "0$1"]], "0", 0, "([24-9]\\d{6})$|0", "20$1"], MH: ["692", "011", "329\\d{4}|(?:[256]\\d|45)\\d{5}", [7], [["(\\d{3})(\\d{4})", "$1-$2", ["[2-6]"]]], "1"], MK: ["389", "00", "[2-578]\\d{7}", [8], [["(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["2|34[47]|4(?:[37]7|5[47]|64)"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["[347]"], "0$1"], ["(\\d{3})(\\d)(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[58]"], "0$1"]], "0"], ML: ["223", "00", "[24-9]\\d{7}", [8], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[24-9]"]]]], MM: ["95", "00", "1\\d{5,7}|95\\d{6}|(?:[4-7]|9[0-46-9])\\d{6,8}|(?:2|8\\d)\\d{5,8}", [6, 7, 8, 9, 10], [["(\\d)(\\d{2})(\\d{3})", "$1 $2 $3", ["16|2"], "0$1"], ["(\\d{2})(\\d{2})(\\d{3})", "$1 $2 $3", ["4(?:[2-46]|5[3-5])|5|6(?:[1-689]|7[235-7])|7(?:[0-4]|5[2-7])|8[1-5]|(?:60|86)[23]"], "0$1"], ["(\\d)(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[12]|452|678|86", "[12]|452|6788|86"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[4-7]|8[1-35]"], "0$1"], ["(\\d)(\\d{3})(\\d{4,6})", "$1 $2 $3", ["9(?:2[0-4]|[35-9]|4[137-9])"], "0$1"], ["(\\d)(\\d{4})(\\d{4})", "$1 $2 $3", ["2"], "0$1"], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["8"], "0$1"], ["(\\d)(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["92"], "0$1"], ["(\\d)(\\d{5})(\\d{4})", "$1 $2 $3", ["9"], "0$1"]], "0"], MN: ["976", "001", "[12]\\d{7,9}|[5-9]\\d{7}", [8, 9, 10], [["(\\d{2})(\\d{2})(\\d{4})", "$1 $2 $3", ["[12]1"], "0$1"], ["(\\d{4})(\\d{4})", "$1 $2", ["[5-9]"]], ["(\\d{3})(\\d{5,6})", "$1 $2", ["[12]2[1-3]"], "0$1"], ["(\\d{4})(\\d{5,6})", "$1 $2", ["[12](?:27|3[2-8]|4[2-68]|5[1-4689])", "[12](?:27|3[2-8]|4[2-68]|5[1-4689])[0-3]"], "0$1"], ["(\\d{5})(\\d{4,5})", "$1 $2", ["[12]"], "0$1"]], "0"], MO: ["853", "00", "0800\\d{3}|(?:28|[68]\\d)\\d{6}", [7, 8], [["(\\d{4})(\\d{3})", "$1 $2", ["0"]], ["(\\d{4})(\\d{4})", "$1 $2", ["[268]"]]]], MP: ["1", "011", "[58]\\d{9}|(?:67|90)0\\d{7}", [10], 0, "1", 0, "([2-9]\\d{6})$|1", "670$1", 0, "670"], MQ: ["596", "00", "(?:596\\d|7091)\\d{5}|(?:69|[89]\\d)\\d{7}", [9], [["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[5-79]|8(?:0[6-9]|[36])"], "0$1"], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["8"], "0$1"]], "0"], MR: ["222", "00", "(?:[2-4]\\d\\d|800)\\d{5}", [8], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[2-48]"]]]], MS: ["1", "011", "(?:[58]\\d\\d|664|900)\\d{7}", [10], 0, "1", 0, "([34]\\d{6})$|1", "664$1", 0, "664"], MT: ["356", "00", "3550\\d{4}|(?:[2579]\\d\\d|800)\\d{5}", [8], [["(\\d{4})(\\d{4})", "$1 $2", ["[2357-9]"]]]], MU: ["230", "0(?:0|[24-7]0|3[03])", "(?:[57]|8\\d\\d)\\d{7}|[2-468]\\d{6}", [7, 8, 10], [["(\\d{3})(\\d{4})", "$1 $2", ["[2-46]|8[013]"]], ["(\\d{4})(\\d{4})", "$1 $2", ["[57]"]], ["(\\d{5})(\\d{5})", "$1 $2", ["8"]]], 0, 0, 0, 0, 0, 0, 0, "020"], MV: ["960", "0(?:0|19)", "(?:800|9[0-57-9]\\d)\\d{7}|[34679]\\d{6}", [7, 10], [["(\\d{3})(\\d{4})", "$1-$2", ["[34679]"]], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["[89]"]]], 0, 0, 0, 0, 0, 0, 0, "00"], MW: ["265", "00", "(?:[1289]\\d|31|77)\\d{7}|1\\d{6}", [7, 9], [["(\\d)(\\d{3})(\\d{3})", "$1 $2 $3", ["1[2-9]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["2"], "0$1"], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[137-9]"], "0$1"]], "0"], MX: ["52", "0[09]", "[2-9]\\d{9}", [10], [["(\\d{2})(\\d{4})(\\d{4})", "$1 $2 $3", ["33|5[56]|81"]], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["[2-9]"]]], 0, 0, 0, 0, 0, 0, 0, "00"], MY: ["60", "00", "1\\d{8,9}|(?:3\\d|[4-9])\\d{7}", [8, 9, 10], [["(\\d)(\\d{3})(\\d{4})", "$1-$2 $3", ["[4-79]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1-$2 $3", ["1(?:[02469]|[378][1-9]|53)|8", "1(?:[02469]|[37][1-9]|53|8(?:[1-46-9]|5[7-9]))|8"], "0$1"], ["(\\d)(\\d{4})(\\d{4})", "$1-$2 $3", ["3"], "0$1"], ["(\\d)(\\d{3})(\\d{2})(\\d{4})", "$1-$2-$3-$4", ["1(?:[367]|80)"]], ["(\\d{3})(\\d{3})(\\d{4})", "$1-$2 $3", ["15"], "0$1"], ["(\\d{2})(\\d{4})(\\d{4})", "$1-$2 $3", ["1"], "0$1"]], "0"], MZ: ["258", "00", "(?:2|8\\d)\\d{7}", [8, 9], [["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["2|8[2-79]"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["8"]]]], NA: ["264", "00", "[68]\\d{7,8}", [8, 9], [["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["88"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["6"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["87"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["8"], "0$1"]], "0"], NC: ["687", "00", "(?:050|[2-57-9]\\d\\d)\\d{3}", [6], [["(\\d{2})(\\d{2})(\\d{2})", "$1.$2.$3", ["[02-57-9]"]]]], NE: ["227", "00", "[027-9]\\d{7}", [8], [["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["08"]], ["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[089]|2[013]|7[0467]"]]]], NF: ["672", "00", "[13]\\d{5}", [6], [["(\\d{2})(\\d{4})", "$1 $2", ["1[0-3]"]], ["(\\d)(\\d{5})", "$1 $2", ["[13]"]]], 0, 0, "([0-258]\\d{4})$", "3$1"], NG: ["234", "009", "(?:20|9\\d)\\d{8}|[78]\\d{9,13}", [10, 11, 12, 13, 14], [["(\\d{3})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[7-9]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["20[129]"], "0$1"], ["(\\d{4})(\\d{2})(\\d{4})", "$1 $2 $3", ["2"], "0$1"], ["(\\d{3})(\\d{4})(\\d{4,5})", "$1 $2 $3", ["[78]"], "0$1"], ["(\\d{3})(\\d{5})(\\d{5,6})", "$1 $2 $3", ["[78]"], "0$1"]], "0"], NI: ["505", "00", "(?:1800|[25-8]\\d{3})\\d{4}", [8], [["(\\d{4})(\\d{4})", "$1 $2", ["[125-8]"]]]], NL: ["31", "00", "(?:[124-7]\\d\\d|3(?:[02-9]\\d|1[0-8]))\\d{6}|8\\d{6,9}|9\\d{6,10}|1\\d{4,5}", [5, 6, 7, 8, 9, 10, 11], [["(\\d{3})(\\d{4,7})", "$1 $2", ["[89]0"], "0$1"], ["(\\d{2})(\\d{7})", "$1 $2", ["66"], "0$1"], ["(\\d)(\\d{8})", "$1 $2", ["6"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["1[16-8]|2[259]|3[124]|4[17-9]|5[124679]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[1-578]|91"], "0$1"], ["(\\d{3})(\\d{3})(\\d{5})", "$1 $2 $3", ["9"], "0$1"]], "0"], NO: ["47", "00", "(?:0|[2-9]\\d{3})\\d{4}", [5, 8], [["(\\d{3})(\\d{2})(\\d{3})", "$1 $2 $3", ["8"]], ["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[2-79]"]]], 0, 0, 0, 0, 0, "[02-689]|7[0-8]"], NP: ["977", "00", "(?:1\\d|9)\\d{9}|[1-9]\\d{7}", [8, 10, 11], [["(\\d)(\\d{7})", "$1-$2", ["1[2-6]"], "0$1"], ["(\\d{2})(\\d{6})", "$1-$2", ["1[01]|[2-8]|9(?:[1-59]|[67][2-6])"], "0$1"], ["(\\d{3})(\\d{7})", "$1-$2", ["9"]]], "0"], NR: ["674", "00", "(?:222|444|(?:55|8\\d)\\d|666|777|999)\\d{4}", [7], [["(\\d{3})(\\d{4})", "$1 $2", ["[24-9]"]]]], NU: ["683", "00", "(?:[4-7]|888\\d)\\d{3}", [4, 7], [["(\\d{3})(\\d{4})", "$1 $2", ["8"]]]], NZ: ["64", "0(?:0|161)", "[1289]\\d{9}|50\\d{5}(?:\\d{2,3})?|[27-9]\\d{7,8}|(?:[34]\\d|6[0-35-9])\\d{6}|8\\d{4,6}", [5, 6, 7, 8, 9, 10], [["(\\d{2})(\\d{3,8})", "$1 $2", ["8[1-79]"], "0$1"], ["(\\d{3})(\\d{2})(\\d{2,3})", "$1 $2 $3", ["50[036-8]|8|90", "50(?:[0367]|88)|8|90"], "0$1"], ["(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["24|[346]|7[2-57-9]|9[2-9]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["2(?:10|74)|[589]"], "0$1"], ["(\\d{2})(\\d{3,4})(\\d{4})", "$1 $2 $3", ["1|2[028]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,5})", "$1 $2 $3", ["2(?:[169]|7[0-35-9])|7"], "0$1"]], "0", 0, 0, 0, 0, 0, 0, "00"], OM: ["968", "00", "(?:1505|[279]\\d{3}|500)\\d{4}|800\\d{5,6}", [7, 8, 9], [["(\\d{3})(\\d{4,6})", "$1 $2", ["[58]"]], ["(\\d{2})(\\d{6})", "$1 $2", ["2"]], ["(\\d{4})(\\d{4})", "$1 $2", ["[179]"]]]], PA: ["507", "00", "(?:00800|8\\d{3})\\d{6}|[68]\\d{7}|[1-57-9]\\d{6}", [7, 8, 10, 11], [["(\\d{3})(\\d{4})", "$1-$2", ["[1-57-9]"]], ["(\\d{4})(\\d{4})", "$1-$2", ["[68]"]], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["8"]]]], PE: ["51", "00|19(?:1[124]|77|90)00", "(?:[14-8]|9\\d)\\d{7}", [8, 9], [["(\\d{3})(\\d{5})", "$1 $2", ["80"], "(0$1)"], ["(\\d)(\\d{7})", "$1 $2", ["1"], "(0$1)"], ["(\\d{2})(\\d{6})", "$1 $2", ["[4-8]"], "(0$1)"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["9"]]], "0", 0, 0, 0, 0, 0, 0, "00", " Anexo "], PF: ["689", "00", "4\\d{5}(?:\\d{2})?|8\\d{7,8}", [6, 8, 9], [["(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3", ["44"]], ["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["4|8[7-9]"]], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["8"]]]], PG: ["675", "00|140[1-3]", "(?:180|[78]\\d{3})\\d{4}|(?:[2-589]\\d|64)\\d{5}", [7, 8], [["(\\d{3})(\\d{4})", "$1 $2", ["18|[2-69]|85"]], ["(\\d{4})(\\d{4})", "$1 $2", ["[78]"]]], 0, 0, 0, 0, 0, 0, 0, "00"], PH: ["63", "00", "(?:[2-7]|9\\d)\\d{8}|2\\d{5}|(?:1800|8)\\d{7,9}", [6, 8, 9, 10, 11, 12, 13], [["(\\d)(\\d{5})", "$1 $2", ["2"], "(0$1)"], ["(\\d{4})(\\d{4,6})", "$1 $2", ["3(?:23|39|46)|4(?:2[3-6]|[35]9|4[26]|76)|544|88[245]|(?:52|64|86)2", "3(?:230|397|461)|4(?:2(?:35|[46]4|51)|396|4(?:22|63)|59[347]|76[15])|5(?:221|446)|642[23]|8(?:622|8(?:[24]2|5[13]))"], "(0$1)"], ["(\\d{5})(\\d{4})", "$1 $2", ["346|4(?:27|9[35])|883", "3469|4(?:279|9(?:30|56))|8834"], "(0$1)"], ["(\\d)(\\d{4})(\\d{4})", "$1 $2 $3", ["2"], "(0$1)"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[3-7]|8[2-8]"], "(0$1)"], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["[89]"], "0$1"], ["(\\d{4})(\\d{3})(\\d{4})", "$1 $2 $3", ["1"]], ["(\\d{4})(\\d{1,2})(\\d{3})(\\d{4})", "$1 $2 $3 $4", ["1"]]], "0"], PK: ["92", "00", "122\\d{6}|[24-8]\\d{10,11}|9(?:[013-9]\\d{8,10}|2(?:[01]\\d\\d|2(?:[06-8]\\d|1[01]))\\d{7})|(?:[2-8]\\d{3}|92(?:[0-7]\\d|8[1-9]))\\d{6}|[24-9]\\d{8}|[89]\\d{7}", [8, 9, 10, 11, 12], [["(\\d{3})(\\d{3})(\\d{2,7})", "$1 $2 $3", ["[89]0"], "0$1"], ["(\\d{4})(\\d{5})", "$1 $2", ["1"]], ["(\\d{3})(\\d{6,7})", "$1 $2", ["2(?:3[2358]|4[2-4]|9[2-8])|45[3479]|54[2-467]|60[468]|72[236]|8(?:2[2-689]|3[23578]|4[3478]|5[2356])|9(?:2[2-8]|3[27-9]|4[2-6]|6[3569]|9[25-8])", "9(?:2[3-8]|98)|(?:2(?:3[2358]|4[2-4]|9[2-8])|45[3479]|54[2-467]|60[468]|72[236]|8(?:2[2-689]|3[23578]|4[3478]|5[2356])|9(?:22|3[27-9]|4[2-6]|6[3569]|9[25-7]))[2-9]"], "(0$1)"], ["(\\d{2})(\\d{7,8})", "$1 $2", ["(?:2[125]|4[0-246-9]|5[1-35-7]|6[1-8]|7[14]|8[16]|91)[2-9]"], "(0$1)"], ["(\\d{5})(\\d{5})", "$1 $2", ["58"], "(0$1)"], ["(\\d{3})(\\d{7})", "$1 $2", ["3"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["2[125]|4[0-246-9]|5[1-35-7]|6[1-8]|7[14]|8[16]|91"], "(0$1)"], ["(\\d{3})(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["[24-9]"], "(0$1)"]], "0"], PL: ["48", "00", "(?:6|8\\d\\d)\\d{7}|[1-9]\\d{6}(?:\\d{2})?|[26]\\d{5}", [6, 7, 8, 9, 10], [["(\\d{5})", "$1", ["19"]], ["(\\d{3})(\\d{3})", "$1 $2", ["11|20|64"]], ["(\\d{2})(\\d{2})(\\d{3})", "$1 $2 $3", ["(?:1[2-8]|2[2-69]|3[2-4]|4[1-468]|5[24-689]|6[1-3578]|7[14-7]|8[1-79]|9[145])1", "(?:1[2-8]|2[2-69]|3[2-4]|4[1-468]|5[24-689]|6[1-3578]|7[14-7]|8[1-79]|9[145])19"]], ["(\\d{3})(\\d{2})(\\d{2,3})", "$1 $2 $3", ["64"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["21|39|45|5[0137]|6[0469]|7[02389]|8(?:0[14]|8)"]], ["(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["1[2-8]|[2-7]|8[1-79]|9[145]"]], ["(\\d{3})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["8"]]]], PM: ["508", "00", "[45]\\d{5}|(?:708|8\\d\\d)\\d{6}", [6, 9], [["(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3", ["[45]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["7"]], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["8"], "0$1"]], "0"], PR: ["1", "011", "(?:[589]\\d\\d|787)\\d{7}", [10], 0, "1", 0, 0, 0, 0, "787|939"], PS: ["970", "00", "[2489]2\\d{6}|(?:1\\d|5)\\d{8}", [8, 9, 10], [["(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["[2489]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["5"], "0$1"], ["(\\d{4})(\\d{3})(\\d{3})", "$1 $2 $3", ["1"]]], "0"], PT: ["351", "00", "1693\\d{5}|(?:[26-9]\\d|30)\\d{7}", [9], [["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["2[12]"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["16|[236-9]"]]]], PW: ["680", "01[12]", "(?:[24-8]\\d\\d|345|900)\\d{4}", [7], [["(\\d{3})(\\d{4})", "$1 $2", ["[2-9]"]]]], PY: ["595", "00", "59\\d{4,6}|9\\d{5,10}|(?:[2-46-8]\\d|5[0-8])\\d{4,7}", [6, 7, 8, 9, 10, 11], [["(\\d{3})(\\d{3,6})", "$1 $2", ["[2-9]0"], "0$1"], ["(\\d{2})(\\d{5})", "$1 $2", ["[26]1|3[289]|4[1246-8]|7[1-3]|8[1-36]"], "(0$1)"], ["(\\d{3})(\\d{4,5})", "$1 $2", ["2[279]|3[13-5]|4[359]|5|6(?:[34]|7[1-46-8])|7[46-8]|85"], "(0$1)"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["2[14-68]|3[26-9]|4[1246-8]|6(?:1|75)|7[1-35]|8[1-36]"], "(0$1)"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["87"]], ["(\\d{3})(\\d{6})", "$1 $2", ["9(?:[5-79]|8[1-7])"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[2-8]"], "0$1"], ["(\\d{4})(\\d{3})(\\d{4})", "$1 $2 $3", ["9"]]], "0"], QA: ["974", "00", "800\\d{4}|(?:2|800)\\d{6}|(?:0080|[3-7])\\d{7}", [7, 8, 9, 11], [["(\\d{3})(\\d{4})", "$1 $2", ["2[136]|8"]], ["(\\d{4})(\\d{4})", "$1 $2", ["[3-7]"]]]], RE: ["262", "00", "709\\d{6}|(?:26|[689]\\d)\\d{7}", [9], [["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[26-9]"], "0$1"]], "0", 0, 0, 0, 0, 0, [["26(?:2\\d\\d|3(?:0\\d|1[0-6]))\\d{4}"], ["(?:69(?:2\\d\\d|3(?:[06][0-6]|1[0-3]|2[0-2]|3[0-39]|4\\d|5[0-5]|7[0-37]|8[0-8]|9[0-479]))|7092[0-3])\\d{4}"], ["80\\d{7}"], ["89[1-37-9]\\d{6}"], 0, 0, 0, 0, ["9(?:399[0-3]|479[0-6]|76(?:2[278]|3[0-37]))\\d{4}"], ["8(?:1[019]|2[0156]|84|90)\\d{6}"]]], RO: ["40", "00", "(?:[236-8]\\d|90)\\d{7}|[23]\\d{5}", [6, 9], [["(\\d{3})(\\d{3})", "$1 $2", ["2[3-6]", "2[3-6]\\d9"], "0$1"], ["(\\d{2})(\\d{4})", "$1 $2", ["219|31"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[23]1"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[236-9]"], "0$1"]], "0", 0, 0, 0, 0, 0, 0, 0, " int "], RS: ["381", "00", "38[02-9]\\d{6,9}|6\\d{7,9}|90\\d{4,8}|38\\d{5,6}|(?:7\\d\\d|800)\\d{3,9}|(?:[12]\\d|3[0-79])\\d{5,10}", [6, 7, 8, 9, 10, 11, 12], [["(\\d{3})(\\d{3,9})", "$1 $2", ["(?:2[389]|39)0|[7-9]"], "0$1"], ["(\\d{2})(\\d{5,10})", "$1 $2", ["[1-36]"], "0$1"]], "0"], RU: ["7", "810", "8\\d{13}|[347-9]\\d{9}", [10, 14], [["(\\d{4})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["7(?:1[0-8]|2[1-9])", "7(?:1(?:[0-356]2|4[29]|7|8[27])|2(?:1[23]|[2-9]2))", "7(?:1(?:[0-356]2|4[29]|7|8[27])|2(?:13[03-69]|62[013-9]))|72[1-57-9]2"], "8 ($1)", 1], ["(\\d{5})(\\d)(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["7(?:1[0-68]|2[1-9])", "7(?:1(?:[06][3-6]|[18]|2[35]|[3-5][3-5])|2(?:[13][3-5]|[24-689]|7[457]))", "7(?:1(?:0(?:[356]|4[023])|[18]|2(?:3[013-9]|5)|3[45]|43[013-79]|5(?:3[1-8]|4[1-7]|5)|6(?:3[0-35-9]|[4-6]))|2(?:1(?:3[178]|[45])|[24-689]|3[35]|7[457]))|7(?:14|23)4[0-8]|71(?:33|45)[1-79]"], "8 ($1)", 1], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["7"], "8 ($1)", 1], ["(\\d{3})(\\d{3})(\\d{2})(\\d{2})", "$1 $2-$3-$4", ["[349]|8(?:[02-7]|1[1-8])"], "8 ($1)", 1], ["(\\d{4})(\\d{4})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["8"], "8 ($1)"]], "8", 0, 0, 0, 0, 0, [["336(?:[013-9]\\d|2[013-9])\\d{5}|(?:3(?:0[12]|4[1-35-79]|5[1-3]|65|8[1-58]|9[0145])|4(?:01|1[1356]|2[13467]|7[1-5]|8[1-7]|9[1-689])|8(?:1[1-8]|2[01]|3[13-6]|4[0-8]|5[15-7]|6[0-35-79]|7[1-37-9]))\\d{7}", [10]], ["9\\d{9}", [10]], ["8(?:0[04]|108\\d{3})\\d{7}"], ["80[39]\\d{7}", [10]], ["808\\d{7}", [10]]], "8~10"], RW: ["250", "00", "(?:06|[27]\\d\\d|[89]00)\\d{6}", [8, 9], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["0"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["2"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[7-9]"], "0$1"]], "0"], SA: ["966", "00", "(?:[15]\\d|800|92)\\d{7}", [9, 10], [["(\\d{4})(\\d{5})", "$1 $2", ["9"]], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["1"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["5"], "0$1"], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["8"]]], "0"], SB: ["677", "0[01]", "[6-9]\\d{6}|[1-6]\\d{4}", [5, 7], [["(\\d{2})(\\d{5})", "$1 $2", ["6[89]|7|8[4-9]|9(?:[1-8]|9[0-8])"]]]], SC: ["248", "010|0[0-2]", "(?:[2489]\\d|64)\\d{5}", [7], [["(\\d)(\\d{3})(\\d{3})", "$1 $2 $3", ["[246]|9[57]"]]], 0, 0, 0, 0, 0, 0, 0, "00"], SD: ["249", "00", "[19]\\d{8}", [9], [["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[19]"], "0$1"]], "0"], SE: ["46", "00", "(?:[26]\\d\\d|9)\\d{9}|[1-9]\\d{8}|[1-689]\\d{7}|[1-4689]\\d{6}|2\\d{5}", [6, 7, 8, 9, 10, 12], [["(\\d{2})(\\d{2,3})(\\d{2})", "$1-$2 $3", ["20"], "0$1", 0, "$1 $2 $3"], ["(\\d{3})(\\d{4})", "$1-$2", ["9(?:00|39|44|9)"], "0$1", 0, "$1 $2"], ["(\\d{2})(\\d{3})(\\d{2})", "$1-$2 $3", ["[12][136]|3[356]|4[0246]|6[03]|90[1-9]"], "0$1", 0, "$1 $2 $3"], ["(\\d)(\\d{2,3})(\\d{2})(\\d{2})", "$1-$2 $3 $4", ["8"], "0$1", 0, "$1 $2 $3 $4"], ["(\\d{3})(\\d{2,3})(\\d{2})", "$1-$2 $3", ["1[2457]|2(?:[247-9]|5[0138])|3[0247-9]|4[1357-9]|5[0-35-9]|6(?:[125689]|4[02-57]|7[0-2])|9(?:[125-8]|3[02-5]|4[0-3])"], "0$1", 0, "$1 $2 $3"], ["(\\d{3})(\\d{2,3})(\\d{3})", "$1-$2 $3", ["9(?:00|39|44)"], "0$1", 0, "$1 $2 $3"], ["(\\d{2})(\\d{2,3})(\\d{2})(\\d{2})", "$1-$2 $3 $4", ["1[13689]|2[0136]|3[1356]|4[0246]|54|6[03]|90[1-9]"], "0$1", 0, "$1 $2 $3 $4"], ["(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1-$2 $3 $4", ["10|7"], "0$1", 0, "$1 $2 $3 $4"], ["(\\d)(\\d{3})(\\d{3})(\\d{2})", "$1-$2 $3 $4", ["8"], "0$1", 0, "$1 $2 $3 $4"], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1-$2 $3 $4", ["[13-5]|2(?:[247-9]|5[0138])|6(?:[124-689]|7[0-2])|9(?:[125-8]|3[02-5]|4[0-3])"], "0$1", 0, "$1 $2 $3 $4"], ["(\\d{3})(\\d{2})(\\d{2})(\\d{3})", "$1-$2 $3 $4", ["9"], "0$1", 0, "$1 $2 $3 $4"], ["(\\d{3})(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1-$2 $3 $4 $5", ["[26]"], "0$1", 0, "$1 $2 $3 $4 $5"]], "0"], SG: ["65", "0[0-3]\\d", "(?:(?:1\\d|8)\\d\\d|7000)\\d{7}|[3689]\\d{7}", [8, 10, 11], [["(\\d{4})(\\d{4})", "$1 $2", ["[369]|8(?:0[1-9]|[1-9])"]], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["8"]], ["(\\d{4})(\\d{4})(\\d{3})", "$1 $2 $3", ["7"]], ["(\\d{4})(\\d{3})(\\d{4})", "$1 $2 $3", ["1"]]]], SH: ["290", "00", "(?:[256]\\d|8)\\d{3}", [4, 5], 0, 0, 0, 0, 0, 0, "[256]"], SI: ["386", "00|10(?:22|66|88|99)", "[1-7]\\d{7}|8\\d{4,7}|90\\d{4,6}", [5, 6, 7, 8], [["(\\d{2})(\\d{3,6})", "$1 $2", ["8[09]|9"], "0$1"], ["(\\d{3})(\\d{5})", "$1 $2", ["59|8"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["[37][01]|4[0139]|51|6"], "0$1"], ["(\\d)(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[1-57]"], "(0$1)"]], "0", 0, 0, 0, 0, 0, 0, "00"], SJ: ["47", "00", "0\\d{4}|(?:[489]\\d|79)\\d{6}", [5, 8], 0, 0, 0, 0, 0, 0, "79"], SK: ["421", "00", "[2-689]\\d{8}|[2-59]\\d{6}|[2-5]\\d{5}", [6, 7, 9], [["(\\d)(\\d{2})(\\d{3,4})", "$1 $2 $3", ["21"], "0$1"], ["(\\d{2})(\\d{2})(\\d{2,3})", "$1 $2 $3", ["[3-5][1-8]1", "[3-5][1-8]1[67]"], "0$1"], ["(\\d)(\\d{3})(\\d{3})(\\d{2})", "$1/$2 $3 $4", ["2"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[689]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1/$2 $3 $4", ["[3-5]"], "0$1"]], "0"], SL: ["232", "00", "(?:[237-9]\\d|66)\\d{6}", [8], [["(\\d{2})(\\d{6})", "$1 $2", ["[236-9]"], "(0$1)"]], "0"], SM: ["378", "00", "(?:0549|[5-7]\\d)\\d{6}", [8, 10], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[5-7]"]], ["(\\d{4})(\\d{6})", "$1 $2", ["0"]]], 0, 0, "([89]\\d{5})$", "0549$1"], SN: ["221", "00", "(?:[378]\\d|93)\\d{7}", [9], [["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["8"]], ["(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[379]"]]]], SO: ["252", "00", "[346-9]\\d{8}|[12679]\\d{7}|[1-5]\\d{6}|[1348]\\d{5}", [6, 7, 8, 9], [["(\\d{2})(\\d{4})", "$1 $2", ["8[125]"]], ["(\\d{6})", "$1", ["[134]"]], ["(\\d)(\\d{6})", "$1 $2", ["[15]|2[0-79]|3[0-46-8]|4[0-7]"]], ["(\\d)(\\d{7})", "$1 $2", ["(?:2|90)4|[67]"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[348]|64|79|90"]], ["(\\d{2})(\\d{5,7})", "$1 $2", ["1|28|6[0-35-9]|7[67]|9[2-9]"]]], "0"], SR: ["597", "00", "(?:[2-5]|68|[78]\\d|90)\\d{5}", [6, 7], [["(\\d{2})(\\d{2})(\\d{2})", "$1-$2-$3", ["56"]], ["(\\d{3})(\\d{3})", "$1-$2", ["[2-5]"]], ["(\\d{3})(\\d{4})", "$1-$2", ["[6-9]"]]]], SS: ["211", "00", "[19]\\d{8}", [9], [["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[19]"], "0$1"]], "0"], ST: ["239", "00", "(?:22|9\\d)\\d{5}", [7], [["(\\d{3})(\\d{4})", "$1 $2", ["[29]"]]]], SV: ["503", "00", "[267]\\d{7}|(?:80\\d|900)\\d{4}(?:\\d{4})?", [7, 8, 11], [["(\\d{3})(\\d{4})", "$1 $2", ["[89]"]], ["(\\d{4})(\\d{4})", "$1 $2", ["[267]"]], ["(\\d{3})(\\d{4})(\\d{4})", "$1 $2 $3", ["[89]"]]]], SX: ["1", "011", "7215\\d{6}|(?:[58]\\d\\d|900)\\d{7}", [10], 0, "1", 0, "(5\\d{6})$|1", "721$1", 0, "721"], SY: ["963", "00", "[1-39]\\d{8}|[1-5]\\d{7}", [8, 9], [["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[1-5]"], "0$1", 1], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["9"], "0$1", 1]], "0"], SZ: ["268", "00", "0800\\d{4}|(?:[237]\\d|900)\\d{6}", [8, 9], [["(\\d{4})(\\d{4})", "$1 $2", ["[0237]"]], ["(\\d{5})(\\d{4})", "$1 $2", ["9"]]]], TA: ["290", "00", "8\\d{3}", [4], 0, 0, 0, 0, 0, 0, "8"], TC: ["1", "011", "(?:[58]\\d\\d|649|900)\\d{7}", [10], 0, "1", 0, "([2-479]\\d{6})$|1", "649$1", 0, "649"], TD: ["235", "00|16", "(?:22|30|[689]\\d|77)\\d{6}", [8], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[236-9]"]]], 0, 0, 0, 0, 0, 0, 0, "00"], TG: ["228", "00", "[279]\\d{7}", [8], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[279]"]]]], TH: ["66", "00[1-9]", "(?:001800|[2-57]|[689]\\d)\\d{7}|1\\d{7,9}", [8, 9, 10, 13], [["(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["2"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[13-9]"], "0$1"], ["(\\d{4})(\\d{3})(\\d{3})", "$1 $2 $3", ["1"]]], "0"], TJ: ["992", "810", "[0-57-9]\\d{8}", [9], [["(\\d{6})(\\d)(\\d{2})", "$1 $2 $3", ["331", "3317"]], ["(\\d{3})(\\d{2})(\\d{4})", "$1 $2 $3", ["44[02-479]|[34]7"]], ["(\\d{4})(\\d)(\\d{4})", "$1 $2 $3", ["3(?:[1245]|3[12])"]], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[0-57-9]"]]], 0, 0, 0, 0, 0, 0, 0, "8~10"], TK: ["690", "00", "[2-47]\\d{3,6}", [4, 5, 6, 7]], TL: ["670", "00", "7\\d{7}|(?:[2-47]\\d|[89]0)\\d{5}", [7, 8], [["(\\d{3})(\\d{4})", "$1 $2", ["[2-489]|70"]], ["(\\d{4})(\\d{4})", "$1 $2", ["7"]]]], TM: ["993", "810", "(?:[1-6]\\d|71)\\d{6}", [8], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2-$3-$4", ["12"], "(8 $1)"], ["(\\d{3})(\\d)(\\d{2})(\\d{2})", "$1 $2-$3-$4", ["[1-5]"], "(8 $1)"], ["(\\d{2})(\\d{6})", "$1 $2", ["[67]"], "8 $1"]], "8", 0, 0, 0, 0, 0, 0, "8~10"], TN: ["216", "00", "[2-57-9]\\d{7}", [8], [["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["[2-57-9]"]]]], TO: ["676", "00", "(?:0800|(?:[5-8]\\d\\d|999)\\d)\\d{3}|[2-8]\\d{4}", [5, 7], [["(\\d{2})(\\d{3})", "$1-$2", ["[2-4]|50|6[09]|7[0-24-69]|8[05]"]], ["(\\d{4})(\\d{3})", "$1 $2", ["0"]], ["(\\d{3})(\\d{4})", "$1 $2", ["[5-9]"]]]], TR: ["90", "00", "4\\d{6}|8\\d{11,12}|(?:[2-58]\\d\\d|900)\\d{7}", [7, 10, 12, 13], [["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["512|8[01589]|90"], "0$1", 1], ["(\\d{3})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["5(?:[0-59]|61)", "5(?:[0-59]|61[06])", "5(?:[0-59]|61[06]1)"], "0$1", 1], ["(\\d{3})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[24][1-8]|3[1-9]"], "(0$1)", 1], ["(\\d{3})(\\d{3})(\\d{6,7})", "$1 $2 $3", ["80"], "0$1", 1]], "0"], TT: ["1", "011", "(?:[58]\\d\\d|900)\\d{7}", [10], 0, "1", 0, "([2-46-8]\\d{6})$|1", "868$1", 0, "868"], TV: ["688", "00", "(?:2|7\\d\\d|90)\\d{4}", [5, 6, 7], [["(\\d{2})(\\d{3})", "$1 $2", ["2"]], ["(\\d{2})(\\d{4})", "$1 $2", ["90"]], ["(\\d{2})(\\d{5})", "$1 $2", ["7"]]]], TW: ["886", "0(?:0[25-79]|19)", "[2-689]\\d{8}|7\\d{9,10}|[2-8]\\d{7}|2\\d{6}", [7, 8, 9, 10, 11], [["(\\d{2})(\\d)(\\d{4})", "$1 $2 $3", ["202"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[258]0"], "0$1"], ["(\\d)(\\d{3,4})(\\d{4})", "$1 $2 $3", ["[23568]|4(?:0[02-48]|[1-47-9])|7[1-9]", "[23568]|4(?:0[2-48]|[1-47-9])|(?:400|7)[1-9]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[49]"], "0$1"], ["(\\d{2})(\\d{4})(\\d{4,5})", "$1 $2 $3", ["7"], "0$1"]], "0", 0, 0, 0, 0, 0, 0, 0, "#"], TZ: ["255", "00[056]", "(?:[25-8]\\d|41|90)\\d{7}", [9], [["(\\d{3})(\\d{2})(\\d{4})", "$1 $2 $3", ["[89]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[24]"], "0$1"], ["(\\d{2})(\\d{7})", "$1 $2", ["5"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[67]"], "0$1"]], "0"], UA: ["380", "00", "[89]\\d{9}|[3-9]\\d{8}", [9, 10], [["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["6[12][29]|(?:3[1-8]|4[136-8]|5[12457]|6[49])2|(?:56|65)[24]", "6[12][29]|(?:35|4[1378]|5[12457]|6[49])2|(?:56|65)[24]|(?:3[1-46-8]|46)2[013-9]"], "0$1"], ["(\\d{4})(\\d{5})", "$1 $2", ["3[1-8]|4(?:[1367]|[45][6-9]|8[4-6])|5(?:[1-5]|6[0135689]|7[4-6])|6(?:[12][3-7]|[459])", "3[1-8]|4(?:[1367]|[45][6-9]|8[4-6])|5(?:[1-5]|6(?:[015689]|3[02389])|7[4-6])|6(?:[12][3-7]|[459])"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[3-7]|89|9[1-9]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[89]"], "0$1"]], "0", 0, 0, 0, 0, 0, 0, "0~0"], UG: ["256", "00[057]", "800\\d{6}|(?:[29]0|[347]\\d)\\d{7}", [9], [["(\\d{4})(\\d{5})", "$1 $2", ["202", "2024"], "0$1"], ["(\\d{3})(\\d{6})", "$1 $2", ["[27-9]|4(?:6[45]|[7-9])"], "0$1"], ["(\\d{2})(\\d{7})", "$1 $2", ["[34]"], "0$1"]], "0"], US: ["1", "011", "[2-9]\\d{9}|3\\d{6}", [10], [["(\\d{3})(\\d{4})", "$1-$2", ["310"], 0, 1], ["(\\d{3})(\\d{3})(\\d{4})", "($1) $2-$3", ["[2-9]"], 0, 1, "$1-$2-$3"]], "1", 0, 0, 0, 0, 0, [["(?:3052(?:0[0-8]|[1-9]\\d)|5056(?:[0-35-9]\\d|4[0-68]))\\d{4}|(?:2742|305[3-9]|472[247-9]|505[2-57-9]|983[2-47-9])\\d{6}|(?:2(?:0[1-35-9]|1[02-9]|2[03-57-9]|3[1459]|4[08]|5[1-46]|6[0279]|7[0269]|8[13])|3(?:0[1-47-9]|1[02-9]|2[0135-79]|3[0-24679]|4[167]|5[0-2]|6[01349]|8[056])|4(?:0[124-9]|1[02-579]|2[3-5]|3[0245]|4[023578]|58|6[349]|7[0589]|8[04])|5(?:0[1-47-9]|1[0235-8]|20|3[0149]|4[01]|5[179]|6[1-47]|7[0-5]|8[0256])|6(?:0[1-35-9]|1[024-9]|2[03689]|3[016]|4[0156]|5[01679]|6[0-279]|78|8[0-29])|7(?:0[1-46-8]|1[2-9]|2[04-8]|3[0-247]|4[0378]|5[47]|6[02359]|7[0-59]|8[156])|8(?:0[1-68]|1[02-8]|2[0168]|3[0-2589]|4[03578]|5[046-9]|6[02-5]|7[028])|9(?:0[1346-9]|1[02-9]|2[0589]|3[0146-8]|4[01357-9]|5[12469]|7[0-3589]|8[04-69]))[2-9]\\d{6}"], [""], ["8(?:00|33|44|55|66|77|88)[2-9]\\d{6}"], ["900[2-9]\\d{6}"], ["52(?:3(?:[2-46-9][02-9]\\d|5(?:[02-46-9]\\d|5[0-46-9]))|4(?:[2-478][02-9]\\d|5(?:[034]\\d|2[024-9]|5[0-46-9])|6(?:0[1-9]|[2-9]\\d)|9(?:[05-9]\\d|2[0-5]|49)))\\d{4}|52[34][2-9]1[02-9]\\d{4}|5(?:00|2[125-9]|33|44|66|77|88)[2-9]\\d{6}"], 0, 0, 0, ["305209\\d{4}"]]], UY: ["598", "0(?:0|1[3-9]\\d)", "0004\\d{2,9}|[1249]\\d{7}|(?:[49]\\d|80)\\d{5}", [6, 7, 8, 9, 10, 11, 12, 13], [["(\\d{3})(\\d{3,4})", "$1 $2", ["0"]], ["(\\d{3})(\\d{4})", "$1 $2", ["[49]0|8"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["9"], "0$1"], ["(\\d{4})(\\d{4})", "$1 $2", ["[124]"]], ["(\\d{3})(\\d{3})(\\d{2,4})", "$1 $2 $3", ["0"]], ["(\\d{3})(\\d{3})(\\d{3})(\\d{2,4})", "$1 $2 $3 $4", ["0"]]], "0", 0, 0, 0, 0, 0, 0, "00", " int. "], UZ: ["998", "00", "(?:20|33|[5-9]\\d)\\d{7}", [9], [["(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[235-9]"]]]], VA: ["39", "00", "0\\d{5,10}|3[0-8]\\d{7,10}|55\\d{8}|8\\d{5}(?:\\d{2,4})?|(?:1\\d|39)\\d{7,8}", [6, 7, 8, 9, 10, 11, 12], 0, 0, 0, 0, 0, 0, "06698"], VC: ["1", "011", "(?:[58]\\d\\d|784|900)\\d{7}", [10], 0, "1", 0, "([2-7]\\d{6})$|1", "784$1", 0, "784"], VE: ["58", "00", "[68]00\\d{7}|(?:[24]\\d|[59]0)\\d{8}", [10], [["(\\d{3})(\\d{7})", "$1-$2", ["[24-689]"], "0$1"]], "0"], VG: ["1", "011", "(?:284|[58]\\d\\d|900)\\d{7}", [10], 0, "1", 0, "([2-578]\\d{6})$|1", "284$1", 0, "284"], VI: ["1", "011", "[58]\\d{9}|(?:34|90)0\\d{7}", [10], 0, "1", 0, "([2-9]\\d{6})$|1", "340$1", 0, "340"], VN: ["84", "00", "[12]\\d{9}|[135-9]\\d{8}|[16]\\d{7}|[16-8]\\d{6}", [7, 8, 9, 10], [["(\\d{2})(\\d{5})", "$1 $2", ["80"], "0$1", 1], ["(\\d{4})(\\d{4,6})", "$1 $2", ["1"], 0, 1], ["(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["6"], "0$1", 1], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[357-9]"], "0$1", 1], ["(\\d{2})(\\d{4})(\\d{4})", "$1 $2 $3", ["2[48]"], "0$1", 1], ["(\\d{3})(\\d{4})(\\d{3})", "$1 $2 $3", ["2"], "0$1", 1]], "0"], VU: ["678", "00", "[57-9]\\d{6}|(?:[238]\\d|48)\\d{3}", [5, 7], [["(\\d{3})(\\d{4})", "$1 $2", ["[57-9]"]]]], WF: ["681", "00", "(?:40|72|8\\d{4})\\d{4}|[89]\\d{5}", [6, 9], [["(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3", ["[47-9]"]], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["8"]]]], WS: ["685", "0", "(?:[2-6]|8\\d{5})\\d{4}|[78]\\d{6}|[68]\\d{5}", [5, 6, 7, 10], [["(\\d{5})", "$1", ["[2-5]|6[1-9]"]], ["(\\d{3})(\\d{3,7})", "$1 $2", ["[68]"]], ["(\\d{2})(\\d{5})", "$1 $2", ["7"]]]], XK: ["383", "00", "2\\d{7,8}|3\\d{7,11}|(?:4\\d\\d|[89]00)\\d{5}", [8, 9, 10, 11, 12], [["(\\d{3})(\\d{5})", "$1 $2", ["[89]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["[2-4]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["2|39"], "0$1"], ["(\\d{2})(\\d{7,10})", "$1 $2", ["3"], "0$1"]], "0"], YE: ["967", "00", "(?:1|7\\d)\\d{7}|[1-7]\\d{6}", [7, 8, 9], [["(\\d)(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[1-6]|7(?:[24-6]|8[0-7])"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["7"], "0$1"]], "0"], YT: ["262", "00", "7093\\d{5}|(?:80|9\\d)\\d{7}|(?:26|63)9\\d{6}", [9], 0, "0", 0, 0, 0, 0, 0, [["269(?:0[0-467]|15|5[0-4]|6\\d|[78]0)\\d{4}"], ["(?:639(?:0[0-79]|1[019]|[267]\\d|3[09]|40|5[05-9]|9[04-79])|7093[5-7])\\d{4}"], ["80\\d{7}"], 0, 0, 0, 0, 0, ["9(?:(?:39|47)8[01]|769\\d)\\d{4}"]]], ZA: ["27", "00", "[1-79]\\d{8}|8\\d{4,9}", [5, 6, 7, 8, 9, 10], [["(\\d{2})(\\d{3,4})", "$1 $2", ["8[1-4]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{2,3})", "$1 $2 $3", ["8[1-4]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["860"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[1-9]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["8"], "0$1"]], "0"], ZM: ["260", "00", "800\\d{6}|(?:21|[579]\\d|63)\\d{7}", [9], [["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[28]"], "0$1"], ["(\\d{2})(\\d{7})", "$1 $2", ["[579]"], "0$1"]], "0"], ZW: ["263", "00", "2(?:[0-57-9]\\d{6,8}|6[0-24-9]\\d{6,7})|[38]\\d{9}|[35-8]\\d{8}|[3-6]\\d{7}|[1-689]\\d{6}|[1-3569]\\d{5}|[1356]\\d{4}", [5, 6, 7, 8, 9, 10], [["(\\d{3})(\\d{3,5})", "$1 $2", ["2(?:0[45]|2[278]|[49]8)|3(?:[09]8|17)|6(?:[29]8|37|75)|[23][78]|(?:33|5[15]|6[68])[78]"], "0$1"], ["(\\d)(\\d{3})(\\d{2,4})", "$1 $2 $3", ["[49]"], "0$1"], ["(\\d{3})(\\d{4})", "$1 $2", ["80"], "0$1"], ["(\\d{2})(\\d{7})", "$1 $2", ["24|8[13-59]|(?:2[05-79]|39|5[45]|6[15-8])2", "2(?:02[014]|4|[56]20|[79]2)|392|5(?:42|525)|6(?:[16-8]21|52[013])|8[13-59]"], "(0$1)"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["7"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["2(?:1[39]|2[0157]|[378]|[56][14])|3(?:12|29)", "2(?:1[39]|2[0157]|[378]|[56][14])|3(?:123|29)"], "0$1"], ["(\\d{4})(\\d{6})", "$1 $2", ["8"], "0$1"], ["(\\d{2})(\\d{3,5})", "$1 $2", ["1|2(?:0[0-36-9]|12|29|[56])|3(?:1[0-689]|[24-6])|5(?:[0236-9]|1[2-4])|6(?:[013-59]|7[0-46-9])|(?:33|55|6[68])[0-69]|(?:29|3[09]|62)[0-79]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["29[013-9]|39|54"], "0$1"], ["(\\d{4})(\\d{3,5})", "$1 $2", ["(?:25|54)8", "258|5483"], "0$1"]], "0"] }, nonGeographic: { 800: ["800", 0, "(?:00|[1-9]\\d)\\d{6}", [8], [["(\\d{4})(\\d{4})", "$1 $2", ["\\d"]]], 0, 0, 0, 0, 0, 0, [0, 0, ["(?:00|[1-9]\\d)\\d{6}"]]], 808: ["808", 0, "[1-9]\\d{7}", [8], [["(\\d{4})(\\d{4})", "$1 $2", ["[1-9]"]]], 0, 0, 0, 0, 0, 0, [0, 0, 0, 0, 0, 0, 0, 0, 0, ["[1-9]\\d{7}"]]], 870: ["870", 0, "7\\d{11}|[235-7]\\d{8}", [9, 12], [["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[235-7]"]]], 0, 0, 0, 0, 0, 0, [0, ["(?:[356]|774[45])\\d{8}|7[6-8]\\d{7}"], 0, 0, 0, 0, 0, 0, ["2\\d{8}", [9]]]], 878: ["878", 0, "10\\d{10}", [12], [["(\\d{2})(\\d{5})(\\d{5})", "$1 $2 $3", ["1"]]], 0, 0, 0, 0, 0, 0, [0, 0, 0, 0, 0, 0, 0, 0, ["10\\d{10}"]]], 881: ["881", 0, "6\\d{9}|[0-36-9]\\d{8}", [9, 10], [["(\\d)(\\d{3})(\\d{5})", "$1 $2 $3", ["[0-37-9]"]], ["(\\d)(\\d{3})(\\d{5,6})", "$1 $2 $3", ["6"]]], 0, 0, 0, 0, 0, 0, [0, ["6\\d{9}|[0-36-9]\\d{8}"]]], 882: ["882", 0, "[13]\\d{6}(?:\\d{2,5})?|[19]\\d{7}|(?:[25]\\d\\d|4)\\d{7}(?:\\d{2})?", [7, 8, 9, 10, 11, 12], [["(\\d{2})(\\d{5})", "$1 $2", ["16|342"]], ["(\\d{2})(\\d{6})", "$1 $2", ["49"]], ["(\\d{2})(\\d{2})(\\d{4})", "$1 $2 $3", ["1[36]|9"]], ["(\\d{2})(\\d{4})(\\d{3})", "$1 $2 $3", ["3[23]"]], ["(\\d{2})(\\d{3,4})(\\d{4})", "$1 $2 $3", ["16"]], ["(\\d{2})(\\d{4})(\\d{4})", "$1 $2 $3", ["10|23|3(?:[15]|4[57])|4|51"]], ["(\\d{3})(\\d{4})(\\d{4})", "$1 $2 $3", ["34"]], ["(\\d{2})(\\d{4,5})(\\d{5})", "$1 $2 $3", ["[1-35]"]]], 0, 0, 0, 0, 0, 0, [0, ["342\\d{4}|(?:337|49)\\d{6}|(?:3(?:2|47|7\\d{3})|50\\d{3})\\d{7}", [7, 8, 9, 10, 12]], 0, 0, 0, ["348[57]\\d{7}", [11]], 0, 0, ["1(?:3(?:0[0347]|[13][0139]|2[035]|4[013568]|6[0459]|7[06]|8[15-8]|9[0689])\\d{4}|6\\d{5,10})|(?:345\\d|9[89])\\d{6}|(?:10|2(?:3|85\\d)|3(?:[15]|[69]\\d\\d)|4[15-8]|51)\\d{8}"]]], 883: ["883", 0, "(?:[1-4]\\d|51)\\d{6,10}", [8, 9, 10, 11, 12], [["(\\d{3})(\\d{3})(\\d{2,8})", "$1 $2 $3", ["[14]|2[24-689]|3[02-689]|51[24-9]"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["510"]], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["21"]], ["(\\d{4})(\\d{4})(\\d{4})", "$1 $2 $3", ["51[13]"]], ["(\\d{3})(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["[235]"]]], 0, 0, 0, 0, 0, 0, [0, 0, 0, 0, 0, 0, 0, 0, ["(?:2(?:00\\d\\d|10)|(?:370[1-9]|51\\d0)\\d)\\d{7}|51(?:00\\d{5}|[24-9]0\\d{4,7})|(?:1[0-79]|2[24-689]|3[02-689]|4[0-4])0\\d{5,9}"]]], 888: ["888", 0, "\\d{11}", [11], [["(\\d{3})(\\d{3})(\\d{5})", "$1 $2 $3"]], 0, 0, 0, 0, 0, 0, [0, 0, 0, 0, 0, 0, ["\\d{11}"]]], 979: ["979", 0, "[1359]\\d{8}", [9], [["(\\d)(\\d{4})(\\d{4})", "$1 $2 $3", ["[1359]"]]], 0, 0, 0, 0, 0, 0, [0, 0, 0, ["[1359]\\d{8}"]]] } };
2
+ function _t(e, r) {
3
+ var t = Array.prototype.slice.call(r);
4
+ return t.push(Jt), e.apply(this, t);
5
+ }
6
+ function q(e, r) {
7
+ e = e.split("-"), r = r.split("-");
8
+ for (var t = e[0].split("."), n = r[0].split("."), d = 0; d < 3; d++) {
9
+ var i = Number(t[d]), a = Number(n[d]);
10
+ if (i > a) return 1;
11
+ if (a > i) return -1;
12
+ if (!isNaN(i) && isNaN(a)) return 1;
13
+ if (isNaN(i) && !isNaN(a)) return -1;
14
+ }
15
+ return e[1] && r[1] ? e[1] > r[1] ? 1 : e[1] < r[1] ? -1 : 0 : !e[1] && r[1] ? 1 : e[1] && !r[1] ? -1 : 0;
16
+ }
17
+ var Qt = {}.constructor;
18
+ function P(e) {
19
+ return e != null && e.constructor === Qt;
20
+ }
21
+ function G(e) {
22
+ "@babel/helpers - typeof";
23
+ return G = typeof Symbol == "function" && typeof Symbol.iterator == "symbol" ? function(r) {
24
+ return typeof r;
25
+ } : function(r) {
26
+ return r && typeof Symbol == "function" && r.constructor === Symbol && r !== Symbol.prototype ? "symbol" : typeof r;
27
+ }, G(e);
28
+ }
29
+ function T(e, r) {
30
+ if (!(e instanceof r))
31
+ throw new TypeError("Cannot call a class as a function");
32
+ }
33
+ function qt(e, r) {
34
+ for (var t = 0; t < r.length; t++) {
35
+ var n = r[t];
36
+ n.enumerable = n.enumerable || !1, n.configurable = !0, "value" in n && (n.writable = !0), Object.defineProperty(e, n.key, n);
37
+ }
38
+ }
39
+ function O(e, r, t) {
40
+ return r && qt(e.prototype, r), Object.defineProperty(e, "prototype", { writable: !1 }), e;
41
+ }
42
+ var zt = "1.2.0", te = "1.7.35", z = " ext. ", ee = /^\d+$/, s = /* @__PURE__ */ function() {
43
+ function e(r) {
44
+ T(this, e), Tt(r), this.metadata = r, Ot.call(this, r);
45
+ }
46
+ return O(e, [{
47
+ key: "getCountries",
48
+ value: function() {
49
+ return Object.keys(this.metadata.countries).filter(function(t) {
50
+ return t !== "001";
51
+ });
52
+ }
53
+ }, {
54
+ key: "getCountryMetadata",
55
+ value: function(t) {
56
+ return this.metadata.countries[t];
57
+ }
58
+ }, {
59
+ key: "nonGeographic",
60
+ value: function() {
61
+ if (!(this.v1 || this.v2 || this.v3))
62
+ return this.metadata.nonGeographic || this.metadata.nonGeographical;
63
+ }
64
+ }, {
65
+ key: "hasCountry",
66
+ value: function(t) {
67
+ return this.getCountryMetadata(t) !== void 0;
68
+ }
69
+ }, {
70
+ key: "hasCallingCode",
71
+ value: function(t) {
72
+ if (this.getCountryCodesForCallingCode(t))
73
+ return !0;
74
+ if (this.nonGeographic()) {
75
+ if (this.nonGeographic()[t])
76
+ return !0;
77
+ } else {
78
+ var n = this.countryCallingCodes()[t];
79
+ if (n && n.length === 1 && n[0] === "001")
80
+ return !0;
81
+ }
82
+ }
83
+ }, {
84
+ key: "isNonGeographicCallingCode",
85
+ value: function(t) {
86
+ return this.nonGeographic() ? !!this.nonGeographic()[t] : !this.getCountryCodesForCallingCode(t);
87
+ }
88
+ // Deprecated.
89
+ }, {
90
+ key: "country",
91
+ value: function(t) {
92
+ return this.selectNumberingPlan(t);
93
+ }
94
+ }, {
95
+ key: "selectNumberingPlan",
96
+ value: function(t, n) {
97
+ if (t && ee.test(t) && (n = t, t = null), t && t !== "001") {
98
+ if (!this.hasCountry(t))
99
+ throw new Error("Unknown country: ".concat(t));
100
+ this.numberingPlan = new tt(this.getCountryMetadata(t), this);
101
+ } else if (n) {
102
+ if (!this.hasCallingCode(n))
103
+ throw new Error("Unknown calling code: ".concat(n));
104
+ this.numberingPlan = new tt(this.getNumberingPlanMetadata(n), this);
105
+ } else
106
+ this.numberingPlan = void 0;
107
+ return this;
108
+ }
109
+ }, {
110
+ key: "getCountryCodesForCallingCode",
111
+ value: function(t) {
112
+ var n = this.countryCallingCodes()[t];
113
+ if (n)
114
+ return n.length === 1 && n[0].length === 3 ? void 0 : n;
115
+ }
116
+ }, {
117
+ key: "getCountryCodeForCallingCode",
118
+ value: function(t) {
119
+ var n = this.getCountryCodesForCallingCode(t);
120
+ if (n)
121
+ return n[0];
122
+ }
123
+ }, {
124
+ key: "getNumberingPlanMetadata",
125
+ value: function(t) {
126
+ var n = this.getCountryCodeForCallingCode(t);
127
+ if (n)
128
+ return this.getCountryMetadata(n);
129
+ if (this.nonGeographic()) {
130
+ var d = this.nonGeographic()[t];
131
+ if (d)
132
+ return d;
133
+ } else {
134
+ var i = this.countryCallingCodes()[t];
135
+ if (i && i.length === 1 && i[0] === "001")
136
+ return this.metadata.countries["001"];
137
+ }
138
+ }
139
+ // Deprecated.
140
+ }, {
141
+ key: "countryCallingCode",
142
+ value: function() {
143
+ return this.numberingPlan.callingCode();
144
+ }
145
+ // Deprecated.
146
+ }, {
147
+ key: "IDDPrefix",
148
+ value: function() {
149
+ return this.numberingPlan.IDDPrefix();
150
+ }
151
+ // Deprecated.
152
+ }, {
153
+ key: "defaultIDDPrefix",
154
+ value: function() {
155
+ return this.numberingPlan.defaultIDDPrefix();
156
+ }
157
+ // Deprecated.
158
+ }, {
159
+ key: "nationalNumberPattern",
160
+ value: function() {
161
+ return this.numberingPlan.nationalNumberPattern();
162
+ }
163
+ // Deprecated.
164
+ }, {
165
+ key: "possibleLengths",
166
+ value: function() {
167
+ return this.numberingPlan.possibleLengths();
168
+ }
169
+ // Deprecated.
170
+ }, {
171
+ key: "formats",
172
+ value: function() {
173
+ return this.numberingPlan.formats();
174
+ }
175
+ // Deprecated.
176
+ }, {
177
+ key: "nationalPrefixForParsing",
178
+ value: function() {
179
+ return this.numberingPlan.nationalPrefixForParsing();
180
+ }
181
+ // Deprecated.
182
+ }, {
183
+ key: "nationalPrefixTransformRule",
184
+ value: function() {
185
+ return this.numberingPlan.nationalPrefixTransformRule();
186
+ }
187
+ // Deprecated.
188
+ }, {
189
+ key: "leadingDigits",
190
+ value: function() {
191
+ return this.numberingPlan.leadingDigits();
192
+ }
193
+ // Deprecated.
194
+ }, {
195
+ key: "hasTypes",
196
+ value: function() {
197
+ return this.numberingPlan.hasTypes();
198
+ }
199
+ // Deprecated.
200
+ }, {
201
+ key: "type",
202
+ value: function(t) {
203
+ return this.numberingPlan.type(t);
204
+ }
205
+ // Deprecated.
206
+ }, {
207
+ key: "ext",
208
+ value: function() {
209
+ return this.numberingPlan.ext();
210
+ }
211
+ }, {
212
+ key: "countryCallingCodes",
213
+ value: function() {
214
+ return this.v1 ? this.metadata.country_phone_code_to_countries : this.metadata.country_calling_codes;
215
+ }
216
+ // Deprecated.
217
+ }, {
218
+ key: "chooseCountryByCountryCallingCode",
219
+ value: function(t) {
220
+ return this.selectNumberingPlan(t);
221
+ }
222
+ }, {
223
+ key: "hasSelectedNumberingPlan",
224
+ value: function() {
225
+ return this.numberingPlan !== void 0;
226
+ }
227
+ }]), e;
228
+ }(), tt = /* @__PURE__ */ function() {
229
+ function e(r, t) {
230
+ T(this, e), this.globalMetadataObject = t, this.metadata = r, Ot.call(this, t.metadata);
231
+ }
232
+ return O(e, [{
233
+ key: "callingCode",
234
+ value: function() {
235
+ return this.metadata[0];
236
+ }
237
+ // Formatting information for regions which share
238
+ // a country calling code is contained by only one region
239
+ // for performance reasons. For example, for NANPA region
240
+ // ("North American Numbering Plan Administration",
241
+ // which includes USA, Canada, Cayman Islands, Bahamas, etc)
242
+ // it will be contained in the metadata for `US`.
243
+ }, {
244
+ key: "getDefaultCountryMetadataForRegion",
245
+ value: function() {
246
+ return this.globalMetadataObject.getNumberingPlanMetadata(this.callingCode());
247
+ }
248
+ // Is always present.
249
+ }, {
250
+ key: "IDDPrefix",
251
+ value: function() {
252
+ if (!(this.v1 || this.v2))
253
+ return this.metadata[1];
254
+ }
255
+ // Is only present when a country supports multiple IDD prefixes.
256
+ }, {
257
+ key: "defaultIDDPrefix",
258
+ value: function() {
259
+ if (!(this.v1 || this.v2))
260
+ return this.metadata[12];
261
+ }
262
+ }, {
263
+ key: "nationalNumberPattern",
264
+ value: function() {
265
+ return this.v1 || this.v2 ? this.metadata[1] : this.metadata[2];
266
+ }
267
+ // "possible length" data is always present in Google's metadata.
268
+ }, {
269
+ key: "possibleLengths",
270
+ value: function() {
271
+ if (!this.v1)
272
+ return this.metadata[this.v2 ? 2 : 3];
273
+ }
274
+ }, {
275
+ key: "_getFormats",
276
+ value: function(t) {
277
+ return t[this.v1 ? 2 : this.v2 ? 3 : 4];
278
+ }
279
+ // For countries of the same region (e.g. NANPA)
280
+ // formats are all stored in the "main" country for that region.
281
+ // E.g. "RU" and "KZ", "US" and "CA".
282
+ }, {
283
+ key: "formats",
284
+ value: function() {
285
+ var t = this, n = this._getFormats(this.metadata) || this._getFormats(this.getDefaultCountryMetadataForRegion()) || [];
286
+ return n.map(function(d) {
287
+ return new re(d, t);
288
+ });
289
+ }
290
+ }, {
291
+ key: "nationalPrefix",
292
+ value: function() {
293
+ return this.metadata[this.v1 ? 3 : this.v2 ? 4 : 5];
294
+ }
295
+ }, {
296
+ key: "_getNationalPrefixFormattingRule",
297
+ value: function(t) {
298
+ return t[this.v1 ? 4 : this.v2 ? 5 : 6];
299
+ }
300
+ // For countries of the same region (e.g. NANPA)
301
+ // national prefix formatting rule is stored in the "main" country for that region.
302
+ // E.g. "RU" and "KZ", "US" and "CA".
303
+ }, {
304
+ key: "nationalPrefixFormattingRule",
305
+ value: function() {
306
+ return this._getNationalPrefixFormattingRule(this.metadata) || this._getNationalPrefixFormattingRule(this.getDefaultCountryMetadataForRegion());
307
+ }
308
+ }, {
309
+ key: "_nationalPrefixForParsing",
310
+ value: function() {
311
+ return this.metadata[this.v1 ? 5 : this.v2 ? 6 : 7];
312
+ }
313
+ }, {
314
+ key: "nationalPrefixForParsing",
315
+ value: function() {
316
+ return this._nationalPrefixForParsing() || this.nationalPrefix();
317
+ }
318
+ }, {
319
+ key: "nationalPrefixTransformRule",
320
+ value: function() {
321
+ return this.metadata[this.v1 ? 6 : this.v2 ? 7 : 8];
322
+ }
323
+ }, {
324
+ key: "_getNationalPrefixIsOptionalWhenFormatting",
325
+ value: function() {
326
+ return !!this.metadata[this.v1 ? 7 : this.v2 ? 8 : 9];
327
+ }
328
+ // For countries of the same region (e.g. NANPA)
329
+ // "national prefix is optional when formatting" flag is
330
+ // stored in the "main" country for that region.
331
+ // E.g. "RU" and "KZ", "US" and "CA".
332
+ }, {
333
+ key: "nationalPrefixIsOptionalWhenFormattingInNationalFormat",
334
+ value: function() {
335
+ return this._getNationalPrefixIsOptionalWhenFormatting(this.metadata) || this._getNationalPrefixIsOptionalWhenFormatting(this.getDefaultCountryMetadataForRegion());
336
+ }
337
+ }, {
338
+ key: "leadingDigits",
339
+ value: function() {
340
+ return this.metadata[this.v1 ? 8 : this.v2 ? 9 : 10];
341
+ }
342
+ }, {
343
+ key: "types",
344
+ value: function() {
345
+ return this.metadata[this.v1 ? 9 : this.v2 ? 10 : 11];
346
+ }
347
+ }, {
348
+ key: "hasTypes",
349
+ value: function() {
350
+ return this.types() && this.types().length === 0 ? !1 : !!this.types();
351
+ }
352
+ }, {
353
+ key: "type",
354
+ value: function(t) {
355
+ if (this.hasTypes() && et(this.types(), t))
356
+ return new de(et(this.types(), t), this);
357
+ }
358
+ }, {
359
+ key: "ext",
360
+ value: function() {
361
+ return this.v1 || this.v2 ? z : this.metadata[13] || z;
362
+ }
363
+ }]), e;
364
+ }(), re = /* @__PURE__ */ function() {
365
+ function e(r, t) {
366
+ T(this, e), this._format = r, this.metadata = t;
367
+ }
368
+ return O(e, [{
369
+ key: "pattern",
370
+ value: function() {
371
+ return this._format[0];
372
+ }
373
+ }, {
374
+ key: "format",
375
+ value: function() {
376
+ return this._format[1];
377
+ }
378
+ }, {
379
+ key: "leadingDigitsPatterns",
380
+ value: function() {
381
+ return this._format[2] || [];
382
+ }
383
+ }, {
384
+ key: "nationalPrefixFormattingRule",
385
+ value: function() {
386
+ return this._format[3] || this.metadata.nationalPrefixFormattingRule();
387
+ }
388
+ }, {
389
+ key: "nationalPrefixIsOptionalWhenFormattingInNationalFormat",
390
+ value: function() {
391
+ return !!this._format[4] || this.metadata.nationalPrefixIsOptionalWhenFormattingInNationalFormat();
392
+ }
393
+ }, {
394
+ key: "nationalPrefixIsMandatoryWhenFormattingInNationalFormat",
395
+ value: function() {
396
+ return this.usesNationalPrefix() && !this.nationalPrefixIsOptionalWhenFormattingInNationalFormat();
397
+ }
398
+ // Checks whether national prefix formatting rule contains national prefix.
399
+ }, {
400
+ key: "usesNationalPrefix",
401
+ value: function() {
402
+ return !!(this.nationalPrefixFormattingRule() && // Check that national prefix formatting rule is not a "dummy" one.
403
+ !ne.test(this.nationalPrefixFormattingRule()));
404
+ }
405
+ }, {
406
+ key: "internationalFormat",
407
+ value: function() {
408
+ return this._format[5] || this.format();
409
+ }
410
+ }]), e;
411
+ }(), ne = /^\(?\$1\)?$/, de = /* @__PURE__ */ function() {
412
+ function e(r, t) {
413
+ T(this, e), this.type = r, this.metadata = t;
414
+ }
415
+ return O(e, [{
416
+ key: "pattern",
417
+ value: function() {
418
+ return this.metadata.v1 ? this.type : this.type[0];
419
+ }
420
+ }, {
421
+ key: "possibleLengths",
422
+ value: function() {
423
+ if (!this.metadata.v1)
424
+ return this.type[1] || this.metadata.possibleLengths();
425
+ }
426
+ }]), e;
427
+ }();
428
+ function et(e, r) {
429
+ switch (r) {
430
+ case "FIXED_LINE":
431
+ return e[0];
432
+ case "MOBILE":
433
+ return e[1];
434
+ case "TOLL_FREE":
435
+ return e[2];
436
+ case "PREMIUM_RATE":
437
+ return e[3];
438
+ case "PERSONAL_NUMBER":
439
+ return e[4];
440
+ case "VOICEMAIL":
441
+ return e[5];
442
+ case "UAN":
443
+ return e[6];
444
+ case "PAGER":
445
+ return e[7];
446
+ case "VOIP":
447
+ return e[8];
448
+ case "SHARED_COST":
449
+ return e[9];
450
+ }
451
+ }
452
+ function Tt(e) {
453
+ if (!e)
454
+ throw new Error("[libphonenumber-js] `metadata` argument not passed. Check your arguments.");
455
+ if (!P(e) || !P(e.countries))
456
+ throw new Error("[libphonenumber-js] `metadata` argument was passed but it's not a valid metadata. Must be an object having `.countries` child object property. Got ".concat(P(e) ? "an object of shape: { " + Object.keys(e).join(", ") + " }" : "a " + ie(e) + ": " + e, "."));
457
+ }
458
+ var ie = function(r) {
459
+ return G(r);
460
+ };
461
+ function Y(e, r) {
462
+ if (r = new s(r), r.hasCountry(e))
463
+ return r.country(e).countryCallingCode();
464
+ throw new Error("Unknown country: ".concat(e));
465
+ }
466
+ function Ot(e) {
467
+ var r = e.version;
468
+ typeof r == "number" ? (this.v1 = r === 1, this.v2 = r === 2, this.v3 = r === 3, this.v4 = r === 4) : r ? q(r, zt) === -1 ? this.v2 = !0 : q(r, te) === -1 ? this.v3 = !0 : this.v4 = !0 : this.v1 = !0;
469
+ }
470
+ function w(e, r) {
471
+ return ae(e, void 0, r);
472
+ }
473
+ function ae(e, r, t) {
474
+ var n = t.type(r), d = n && n.possibleLengths() || t.possibleLengths();
475
+ if (!d)
476
+ return "IS_POSSIBLE";
477
+ var i = e.length, a = d[0];
478
+ return a === i ? "IS_POSSIBLE" : a > i ? "TOO_SHORT" : d[d.length - 1] < i ? "TOO_LONG" : d.indexOf(i, 1) >= 0 ? "IS_POSSIBLE" : "INVALID_LENGTH";
479
+ }
480
+ function $e(e, r, t) {
481
+ if (r === void 0 && (r = {}), t = new s(t), r.v2) {
482
+ if (!e.countryCallingCode)
483
+ throw new Error("Invalid phone number object passed");
484
+ t.selectNumberingPlan(e.countryCallingCode);
485
+ } else {
486
+ if (!e.phone)
487
+ return !1;
488
+ if (e.country) {
489
+ if (!t.hasCountry(e.country))
490
+ throw new Error("Unknown country: ".concat(e.country));
491
+ t.country(e.country);
492
+ } else {
493
+ if (!e.countryCallingCode)
494
+ throw new Error("Invalid phone number object passed");
495
+ t.selectNumberingPlan(e.countryCallingCode);
496
+ }
497
+ }
498
+ if (t.possibleLengths())
499
+ return wt(e.phone || e.nationalNumber, t);
500
+ if (e.countryCallingCode && t.isNonGeographicCallingCode(e.countryCallingCode))
501
+ return !0;
502
+ throw new Error('Missing "possibleLengths" in metadata. Perhaps the metadata has been generated before v1.0.18.');
503
+ }
504
+ function wt(e, r) {
505
+ switch (w(e, r)) {
506
+ case "IS_POSSIBLE":
507
+ return !0;
508
+ // This library ignores "local-only" phone numbers (for simplicity).
509
+ // See the readme for more info on what are "local-only" phone numbers.
510
+ // case 'IS_POSSIBLE_LOCAL_ONLY':
511
+ // return !isInternational
512
+ default:
513
+ return !1;
514
+ }
515
+ }
516
+ function b(e, r) {
517
+ return e = e || "", new RegExp("^(?:" + r + ")$").test(e);
518
+ }
519
+ function oe(e, r) {
520
+ var t = typeof Symbol < "u" && e[Symbol.iterator] || e["@@iterator"];
521
+ if (t) return (t = t.call(e)).next.bind(t);
522
+ if (Array.isArray(e) || (t = ue(e)) || r) {
523
+ t && (e = t);
524
+ var n = 0;
525
+ return function() {
526
+ return n >= e.length ? { done: !0 } : { done: !1, value: e[n++] };
527
+ };
528
+ }
529
+ throw new TypeError(`Invalid attempt to iterate non-iterable instance.
530
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`);
531
+ }
532
+ function ue(e, r) {
533
+ if (e) {
534
+ if (typeof e == "string") return rt(e, r);
535
+ var t = Object.prototype.toString.call(e).slice(8, -1);
536
+ if (t === "Object" && e.constructor && (t = e.constructor.name), t === "Map" || t === "Set") return Array.from(e);
537
+ if (t === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)) return rt(e, r);
538
+ }
539
+ }
540
+ function rt(e, r) {
541
+ (r == null || r > e.length) && (r = e.length);
542
+ for (var t = 0, n = new Array(r); t < r; t++)
543
+ n[t] = e[t];
544
+ return n;
545
+ }
546
+ var le = ["MOBILE", "PREMIUM_RATE", "TOLL_FREE", "SHARED_COST", "VOIP", "PERSONAL_NUMBER", "PAGER", "UAN", "VOICEMAIL"];
547
+ function Z(e, r, t) {
548
+ if (r = r || {}, !(!e.country && !e.countryCallingCode)) {
549
+ t = new s(t), t.selectNumberingPlan(e.country, e.countryCallingCode);
550
+ var n = r.v2 ? e.nationalNumber : e.phone;
551
+ if (b(n, t.nationalNumberPattern())) {
552
+ if (D(n, "FIXED_LINE", t))
553
+ return t.type("MOBILE") && t.type("MOBILE").pattern() === "" || !t.type("MOBILE") || D(n, "MOBILE", t) ? "FIXED_LINE_OR_MOBILE" : "FIXED_LINE";
554
+ for (var d = oe(le), i; !(i = d()).done; ) {
555
+ var a = i.value;
556
+ if (D(n, a, t))
557
+ return a;
558
+ }
559
+ }
560
+ }
561
+ }
562
+ function D(e, r, t) {
563
+ return r = t.type(r), !r || !r.pattern() || r.possibleLengths() && r.possibleLengths().indexOf(e.length) < 0 ? !1 : b(e, r.pattern());
564
+ }
565
+ function fe(e, r, t) {
566
+ if (r = r || {}, t = new s(t), t.selectNumberingPlan(e.country, e.countryCallingCode), t.hasTypes())
567
+ return Z(e, r, t.metadata) !== void 0;
568
+ var n = r.v2 ? e.nationalNumber : e.phone;
569
+ return b(n, t.nationalNumberPattern());
570
+ }
571
+ function se(e, r, t) {
572
+ var n = new s(t), d = n.getCountryCodesForCallingCode(e);
573
+ return d ? d.filter(function(i) {
574
+ return ce(r, i, t);
575
+ }) : [];
576
+ }
577
+ function ce(e, r, t) {
578
+ var n = new s(t);
579
+ return n.selectNumberingPlan(r), n.numberingPlan.possibleLengths().indexOf(e.length) >= 0;
580
+ }
581
+ var J = 2, he = 17, ge = 3, h = "0-90-9٠-٩۰-۹", me = "-‐-―−ー-", ye = "//", ve = "..", Ne = "  ­​⁠ ", be = "()()[]\\[\\]", Ce = "~⁓∼~", y = "".concat(me).concat(ye).concat(ve).concat(Ne).concat(be).concat(Ce), R = "++", pe = new RegExp("([" + h + "])");
582
+ function Rt(e, r, t, n) {
583
+ if (r) {
584
+ var d = new s(n);
585
+ d.selectNumberingPlan(r, t);
586
+ var i = new RegExp(d.IDDPrefix());
587
+ if (e.search(i) === 0) {
588
+ e = e.slice(e.match(i)[0].length);
589
+ var a = e.match(pe);
590
+ if (!(a && a[1] != null && a[1].length > 0 && a[1] === "0"))
591
+ return e;
592
+ }
593
+ }
594
+ }
595
+ function B(e, r) {
596
+ if (e && r.numberingPlan.nationalPrefixForParsing()) {
597
+ var t = new RegExp("^(?:" + r.numberingPlan.nationalPrefixForParsing() + ")"), n = t.exec(e);
598
+ if (n) {
599
+ var d, i, a = n.length - 1, $ = a > 0 && n[a];
600
+ if (r.nationalPrefixTransformRule() && $)
601
+ d = e.replace(t, r.nationalPrefixTransformRule()), a > 1 && (i = n[1]);
602
+ else {
603
+ var o = n[0];
604
+ d = e.slice(o.length), $ && (i = n[1]);
605
+ }
606
+ var u;
607
+ if ($) {
608
+ var l = e.indexOf(n[1]), c = e.slice(0, l);
609
+ c === r.numberingPlan.nationalPrefix() && (u = r.numberingPlan.nationalPrefix());
610
+ } else
611
+ u = n[0];
612
+ return {
613
+ nationalNumber: d,
614
+ nationalPrefix: u,
615
+ carrierCode: i
616
+ };
617
+ }
618
+ }
619
+ return {
620
+ nationalNumber: e
621
+ };
622
+ }
623
+ function j(e, r) {
624
+ var t = B(e, r), n = t.carrierCode, d = t.nationalNumber;
625
+ if (d !== e) {
626
+ if (!Pe(e, d, r))
627
+ return {
628
+ nationalNumber: e
629
+ };
630
+ if (r.possibleLengths() && !xe(d, r))
631
+ return {
632
+ nationalNumber: e
633
+ };
634
+ }
635
+ return {
636
+ nationalNumber: d,
637
+ carrierCode: n
638
+ };
639
+ }
640
+ function Pe(e, r, t) {
641
+ return !(b(e, t.nationalNumberPattern()) && !b(r, t.nationalNumberPattern()));
642
+ }
643
+ function xe(e, r) {
644
+ switch (w(e, r)) {
645
+ case "TOO_SHORT":
646
+ case "INVALID_LENGTH":
647
+ return !1;
648
+ default:
649
+ return !0;
650
+ }
651
+ }
652
+ function Dt(e, r, t, n) {
653
+ var d = r ? Y(r, n) : t;
654
+ if (e.indexOf(d) === 0) {
655
+ n = new s(n), n.selectNumberingPlan(r, t);
656
+ var i = e.slice(d.length), a = j(i, n), $ = a.nationalNumber, o = j(e, n), u = o.nationalNumber;
657
+ if (!b(u, n.nationalNumberPattern()) && b($, n.nationalNumberPattern()) || w(u, n) === "TOO_LONG")
658
+ return {
659
+ countryCallingCode: d,
660
+ number: i
661
+ };
662
+ }
663
+ return {
664
+ number: e
665
+ };
666
+ }
667
+ function Q(e, r, t, n) {
668
+ if (!e)
669
+ return {};
670
+ var d;
671
+ if (e[0] !== "+") {
672
+ var i = Rt(e, r, t, n);
673
+ if (i && i !== e)
674
+ d = !0, e = "+" + i;
675
+ else {
676
+ if (r || t) {
677
+ var a = Dt(e, r, t, n), $ = a.countryCallingCode, o = a.number;
678
+ if ($)
679
+ return {
680
+ countryCallingCodeSource: "FROM_NUMBER_WITHOUT_PLUS_SIGN",
681
+ countryCallingCode: $,
682
+ number: o
683
+ };
684
+ }
685
+ return {
686
+ // No need to set it to `UNSPECIFIED`. It can be just `undefined`.
687
+ // countryCallingCodeSource: 'UNSPECIFIED',
688
+ number: e
689
+ };
690
+ }
691
+ }
692
+ if (e[1] === "0")
693
+ return {};
694
+ n = new s(n);
695
+ for (var u = 2; u - 1 <= ge && u <= e.length; ) {
696
+ var l = e.slice(1, u);
697
+ if (n.hasCallingCode(l))
698
+ return n.selectNumberingPlan(l), {
699
+ countryCallingCodeSource: d ? "FROM_NUMBER_WITH_IDD" : "FROM_NUMBER_WITH_PLUS_SIGN",
700
+ countryCallingCode: l,
701
+ number: e.slice(u)
702
+ };
703
+ u++;
704
+ }
705
+ return {};
706
+ }
707
+ function Mt(e) {
708
+ return e.replace(new RegExp("[".concat(y, "]+"), "g"), " ").trim();
709
+ }
710
+ var Lt = /(\$\d)/;
711
+ function kt(e, r, t) {
712
+ var n = t.useInternationalFormat, d = t.withNationalPrefix;
713
+ t.carrierCode, t.metadata;
714
+ var i = e.replace(new RegExp(r.pattern()), n ? r.internationalFormat() : (
715
+ // This library doesn't use `domestic_carrier_code_formatting_rule`,
716
+ // because that one is only used when formatting phone numbers
717
+ // for dialing from a mobile phone, and this is not a dialing library.
718
+ // carrierCode && format.domesticCarrierCodeFormattingRule()
719
+ // // First, replace the $CC in the formatting rule with the desired carrier code.
720
+ // // Then, replace the $FG in the formatting rule with the first group
721
+ // // and the carrier code combined in the appropriate way.
722
+ // ? format.format().replace(FIRST_GROUP_PATTERN, format.domesticCarrierCodeFormattingRule().replace('$CC', carrierCode))
723
+ // : (
724
+ // withNationalPrefix && format.nationalPrefixFormattingRule()
725
+ // ? format.format().replace(FIRST_GROUP_PATTERN, format.nationalPrefixFormattingRule())
726
+ // : format.format()
727
+ // )
728
+ d && r.nationalPrefixFormattingRule() ? r.format().replace(Lt, r.nationalPrefixFormattingRule()) : r.format()
729
+ ));
730
+ return n ? Mt(i) : i;
731
+ }
732
+ var Ee = /^[\d]+(?:[~\u2053\u223C\uFF5E][\d]+)?$/;
733
+ function Fe(e, r, t) {
734
+ var n = new s(t);
735
+ if (n.selectNumberingPlan(e, r), n.defaultIDDPrefix())
736
+ return n.defaultIDDPrefix();
737
+ if (Ee.test(n.IDDPrefix()))
738
+ return n.IDDPrefix();
739
+ }
740
+ var Ae = ";ext=", x = function(r) {
741
+ return "([".concat(h, "]{1,").concat(r, "})");
742
+ };
743
+ function Gt(e) {
744
+ var r = "20", t = "15", n = "9", d = "6", i = "[  \\t,]*", a = "[:\\..]?[  \\t,-]*", $ = "#?", o = "(?:e?xt(?:ensi(?:ó?|ó))?n?|e?xtn?|доб|anexo)", u = "(?:[xx##~~]|int|int)", l = "[- ]+", c = "[  \\t]*", f = "(?:,{2}|;)", g = Ae + x(r), v = i + o + a + x(r) + $, p = i + u + a + x(n) + $, N = l + x(d) + "#", Yt = c + f + a + x(t) + $, Zt = c + "(?:,)+" + a + x(n) + $;
745
+ return g + "|" + v + "|" + p + "|" + N + "|" + Yt + "|" + Zt;
746
+ }
747
+ var Ie = "[" + h + "]{" + J + "}", Se = "[" + R + "]{0,1}(?:[" + y + "]*[" + h + "]){3,}[" + y + h + "]*", _e = new RegExp("^[" + R + "]{0,1}(?:[" + y + "]*[" + h + "]){1,2}$", "i"), Te = Se + // Phone number extensions
748
+ "(?:" + Gt() + ")?", Oe = new RegExp(
749
+ // Either a short two-digit-only phone number
750
+ "^" + Ie + "$|^" + Te + "$",
751
+ "i"
752
+ );
753
+ function we(e) {
754
+ return e.length >= J && Oe.test(e);
755
+ }
756
+ function Re(e) {
757
+ return _e.test(e);
758
+ }
759
+ function De(e) {
760
+ var r = e.number, t = e.ext;
761
+ if (!r)
762
+ return "";
763
+ if (r[0] !== "+")
764
+ throw new Error('"formatRFC3966()" expects "number" to be in E.164 format.');
765
+ return "tel:".concat(r).concat(t ? ";ext=" + t : "");
766
+ }
767
+ function Me(e, r) {
768
+ var t = typeof Symbol < "u" && e[Symbol.iterator] || e["@@iterator"];
769
+ if (t) return (t = t.call(e)).next.bind(t);
770
+ if (Array.isArray(e) || (t = Le(e)) || r) {
771
+ t && (e = t);
772
+ var n = 0;
773
+ return function() {
774
+ return n >= e.length ? { done: !0 } : { done: !1, value: e[n++] };
775
+ };
776
+ }
777
+ throw new TypeError(`Invalid attempt to iterate non-iterable instance.
778
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`);
779
+ }
780
+ function Le(e, r) {
781
+ if (e) {
782
+ if (typeof e == "string") return nt(e, r);
783
+ var t = Object.prototype.toString.call(e).slice(8, -1);
784
+ if (t === "Object" && e.constructor && (t = e.constructor.name), t === "Map" || t === "Set") return Array.from(e);
785
+ if (t === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)) return nt(e, r);
786
+ }
787
+ }
788
+ function nt(e, r) {
789
+ (r == null || r > e.length) && (r = e.length);
790
+ for (var t = 0, n = new Array(r); t < r; t++)
791
+ n[t] = e[t];
792
+ return n;
793
+ }
794
+ function dt(e, r) {
795
+ var t = Object.keys(e);
796
+ if (Object.getOwnPropertySymbols) {
797
+ var n = Object.getOwnPropertySymbols(e);
798
+ r && (n = n.filter(function(d) {
799
+ return Object.getOwnPropertyDescriptor(e, d).enumerable;
800
+ })), t.push.apply(t, n);
801
+ }
802
+ return t;
803
+ }
804
+ function it(e) {
805
+ for (var r = 1; r < arguments.length; r++) {
806
+ var t = arguments[r] != null ? arguments[r] : {};
807
+ r % 2 ? dt(Object(t), !0).forEach(function(n) {
808
+ ke(e, n, t[n]);
809
+ }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : dt(Object(t)).forEach(function(n) {
810
+ Object.defineProperty(e, n, Object.getOwnPropertyDescriptor(t, n));
811
+ });
812
+ }
813
+ return e;
814
+ }
815
+ function ke(e, r, t) {
816
+ return r in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e;
817
+ }
818
+ var at = {
819
+ formatExtension: function(r, t, n) {
820
+ return "".concat(r).concat(n.ext()).concat(t);
821
+ }
822
+ };
823
+ function Ge(e, r, t, n) {
824
+ if (t ? t = it(it({}, at), t) : t = at, n = new s(n), e.country && e.country !== "001") {
825
+ if (!n.hasCountry(e.country))
826
+ throw new Error("Unknown country: ".concat(e.country));
827
+ n.country(e.country);
828
+ } else if (e.countryCallingCode)
829
+ n.selectNumberingPlan(e.countryCallingCode);
830
+ else return e.phone || "";
831
+ var d = n.countryCallingCode(), i = t.v2 ? e.nationalNumber : e.phone, a;
832
+ switch (r) {
833
+ case "NATIONAL":
834
+ return i ? (a = S(i, e.carrierCode, "NATIONAL", n, t), M(a, e.ext, n, t.formatExtension)) : "";
835
+ case "INTERNATIONAL":
836
+ return i ? (a = S(i, null, "INTERNATIONAL", n, t), a = "+".concat(d, " ").concat(a), M(a, e.ext, n, t.formatExtension)) : "+".concat(d);
837
+ case "E.164":
838
+ return "+".concat(d).concat(i);
839
+ case "RFC3966":
840
+ return De({
841
+ number: "+".concat(d).concat(i),
842
+ ext: e.ext
843
+ });
844
+ // For reference, here's Google's IDD formatter:
845
+ // https://github.com/google/libphonenumber/blob/32719cf74e68796788d1ca45abc85dcdc63ba5b9/java/libphonenumber/src/com/google/i18n/phonenumbers/PhoneNumberUtil.java#L1546
846
+ // Not saying that this IDD formatter replicates it 1:1, but it seems to work.
847
+ // Who would even need to format phone numbers in IDD format anyway?
848
+ case "IDD":
849
+ if (!t.fromCountry)
850
+ return;
851
+ var $ = je(i, e.carrierCode, d, t.fromCountry, n);
852
+ return M($, e.ext, n, t.formatExtension);
853
+ default:
854
+ throw new Error('Unknown "format" argument passed to "formatNumber()": "'.concat(r, '"'));
855
+ }
856
+ }
857
+ function S(e, r, t, n, d) {
858
+ var i = Be(n.formats(), e);
859
+ return i ? kt(e, i, {
860
+ useInternationalFormat: t === "INTERNATIONAL",
861
+ withNationalPrefix: !(i.nationalPrefixIsOptionalWhenFormattingInNationalFormat() && d && d.nationalPrefix === !1),
862
+ carrierCode: r,
863
+ metadata: n
864
+ }) : e;
865
+ }
866
+ function Be(e, r) {
867
+ for (var t = Me(e), n; !(n = t()).done; ) {
868
+ var d = n.value;
869
+ if (d.leadingDigitsPatterns().length > 0) {
870
+ var i = d.leadingDigitsPatterns()[d.leadingDigitsPatterns().length - 1];
871
+ if (r.search(i) !== 0)
872
+ continue;
873
+ }
874
+ if (b(r, d.pattern()))
875
+ return d;
876
+ }
877
+ }
878
+ function M(e, r, t, n) {
879
+ return r ? n(e, r, t) : e;
880
+ }
881
+ function je(e, r, t, n, d) {
882
+ var i = Y(n, d.metadata);
883
+ if (i === t) {
884
+ var a = S(e, r, "NATIONAL", d);
885
+ return t === "1" ? t + " " + a : a;
886
+ }
887
+ var $ = Fe(n, void 0, d.metadata);
888
+ if ($)
889
+ return "".concat($, " ").concat(t, " ").concat(S(e, null, "INTERNATIONAL", d));
890
+ }
891
+ function $t(e, r) {
892
+ var t = Object.keys(e);
893
+ if (Object.getOwnPropertySymbols) {
894
+ var n = Object.getOwnPropertySymbols(e);
895
+ r && (n = n.filter(function(d) {
896
+ return Object.getOwnPropertyDescriptor(e, d).enumerable;
897
+ })), t.push.apply(t, n);
898
+ }
899
+ return t;
900
+ }
901
+ function ot(e) {
902
+ for (var r = 1; r < arguments.length; r++) {
903
+ var t = arguments[r] != null ? arguments[r] : {};
904
+ r % 2 ? $t(Object(t), !0).forEach(function(n) {
905
+ Ue(e, n, t[n]);
906
+ }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : $t(Object(t)).forEach(function(n) {
907
+ Object.defineProperty(e, n, Object.getOwnPropertyDescriptor(t, n));
908
+ });
909
+ }
910
+ return e;
911
+ }
912
+ function Ue(e, r, t) {
913
+ return r in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e;
914
+ }
915
+ function He(e, r) {
916
+ if (!(e instanceof r))
917
+ throw new TypeError("Cannot call a class as a function");
918
+ }
919
+ function We(e, r) {
920
+ for (var t = 0; t < r.length; t++) {
921
+ var n = r[t];
922
+ n.enumerable = n.enumerable || !1, n.configurable = !0, "value" in n && (n.writable = !0), Object.defineProperty(e, n.key, n);
923
+ }
924
+ }
925
+ function Ve(e, r, t) {
926
+ return r && We(e.prototype, r), Object.defineProperty(e, "prototype", { writable: !1 }), e;
927
+ }
928
+ var Bt = /* @__PURE__ */ function() {
929
+ function e(r, t, n) {
930
+ if (He(this, e), !r)
931
+ throw new TypeError("First argument is required");
932
+ if (typeof r != "string")
933
+ throw new TypeError("First argument must be a string");
934
+ if (r[0] === "+" && !t)
935
+ throw new TypeError("`metadata` argument not passed");
936
+ if (P(t) && P(t.countries)) {
937
+ n = t;
938
+ var d = r;
939
+ if (!Ye.test(d))
940
+ throw new Error('Invalid `number` argument passed: must consist of a "+" followed by digits');
941
+ var i = Q(d, void 0, void 0, n), a = i.countryCallingCode, $ = i.number;
942
+ if (t = $, r = a, !t)
943
+ throw new Error("Invalid `number` argument passed: too short");
944
+ }
945
+ if (!t)
946
+ throw new TypeError("`nationalNumber` argument is required");
947
+ if (typeof t != "string")
948
+ throw new TypeError("`nationalNumber` argument must be a string");
949
+ Tt(n);
950
+ var o = Xe(r, n), u = o.country, l = o.countryCallingCode;
951
+ this.country = u, this.countryCallingCode = l, this.nationalNumber = t, this.number = "+" + this.countryCallingCode + this.nationalNumber, this.getMetadata = function() {
952
+ return n;
953
+ };
954
+ }
955
+ return Ve(e, [{
956
+ key: "setExt",
957
+ value: function(t) {
958
+ this.ext = t;
959
+ }
960
+ }, {
961
+ key: "getPossibleCountries",
962
+ value: function() {
963
+ return this.country ? [this.country] : se(this.countryCallingCode, this.nationalNumber, this.getMetadata());
964
+ }
965
+ }, {
966
+ key: "isPossible",
967
+ value: function() {
968
+ return $e(this, {
969
+ v2: !0
970
+ }, this.getMetadata());
971
+ }
972
+ }, {
973
+ key: "isValid",
974
+ value: function() {
975
+ return fe(this, {
976
+ v2: !0
977
+ }, this.getMetadata());
978
+ }
979
+ }, {
980
+ key: "isNonGeographic",
981
+ value: function() {
982
+ var t = new s(this.getMetadata());
983
+ return t.isNonGeographicCallingCode(this.countryCallingCode);
984
+ }
985
+ }, {
986
+ key: "isEqual",
987
+ value: function(t) {
988
+ return this.number === t.number && this.ext === t.ext;
989
+ }
990
+ // This function was originally meant to be an equivalent for `validatePhoneNumberLength()`,
991
+ // but later it was found out that it doesn't include the possible `TOO_SHORT` result
992
+ // returned from `parsePhoneNumberWithError()` in the original `validatePhoneNumberLength()`,
993
+ // so eventually I simply commented out this method from the `PhoneNumber` class
994
+ // and just left the `validatePhoneNumberLength()` function, even though that one would require
995
+ // and additional step to also validate the actual country / calling code of the phone number.
996
+ // validateLength() {
997
+ // const metadata = new Metadata(this.getMetadata())
998
+ // metadata.selectNumberingPlan(this.countryCallingCode)
999
+ // const result = checkNumberLength(this.nationalNumber, metadata)
1000
+ // if (result !== 'IS_POSSIBLE') {
1001
+ // return result
1002
+ // }
1003
+ // }
1004
+ }, {
1005
+ key: "getType",
1006
+ value: function() {
1007
+ return Z(this, {
1008
+ v2: !0
1009
+ }, this.getMetadata());
1010
+ }
1011
+ }, {
1012
+ key: "format",
1013
+ value: function(t, n) {
1014
+ return Ge(this, t, n ? ot(ot({}, n), {}, {
1015
+ v2: !0
1016
+ }) : {
1017
+ v2: !0
1018
+ }, this.getMetadata());
1019
+ }
1020
+ }, {
1021
+ key: "formatNational",
1022
+ value: function(t) {
1023
+ return this.format("NATIONAL", t);
1024
+ }
1025
+ }, {
1026
+ key: "formatInternational",
1027
+ value: function(t) {
1028
+ return this.format("INTERNATIONAL", t);
1029
+ }
1030
+ }, {
1031
+ key: "getURI",
1032
+ value: function(t) {
1033
+ return this.format("RFC3966", t);
1034
+ }
1035
+ }]), e;
1036
+ }(), Ke = function(r) {
1037
+ return /^[A-Z]{2}$/.test(r);
1038
+ };
1039
+ function Xe(e, r) {
1040
+ var t, n, d = new s(r);
1041
+ return Ke(e) ? (t = e, d.selectNumberingPlan(t), n = d.countryCallingCode()) : n = e, {
1042
+ country: t,
1043
+ countryCallingCode: n
1044
+ };
1045
+ }
1046
+ var Ye = /^\+\d+$/;
1047
+ function U(e) {
1048
+ "@babel/helpers - typeof";
1049
+ return U = typeof Symbol == "function" && typeof Symbol.iterator == "symbol" ? function(r) {
1050
+ return typeof r;
1051
+ } : function(r) {
1052
+ return r && typeof Symbol == "function" && r.constructor === Symbol && r !== Symbol.prototype ? "symbol" : typeof r;
1053
+ }, U(e);
1054
+ }
1055
+ function Ze(e, r, t) {
1056
+ return Object.defineProperty(e, "prototype", { writable: !1 }), e;
1057
+ }
1058
+ function Je(e, r) {
1059
+ if (!(e instanceof r))
1060
+ throw new TypeError("Cannot call a class as a function");
1061
+ }
1062
+ function Qe(e, r) {
1063
+ if (typeof r != "function" && r !== null)
1064
+ throw new TypeError("Super expression must either be null or a function");
1065
+ e.prototype = Object.create(r && r.prototype, { constructor: { value: e, writable: !0, configurable: !0 } }), Object.defineProperty(e, "prototype", { writable: !1 }), r && E(e, r);
1066
+ }
1067
+ function qe(e) {
1068
+ var r = Ut();
1069
+ return function() {
1070
+ var n = F(e), d;
1071
+ if (r) {
1072
+ var i = F(this).constructor;
1073
+ d = Reflect.construct(n, arguments, i);
1074
+ } else
1075
+ d = n.apply(this, arguments);
1076
+ return ze(this, d);
1077
+ };
1078
+ }
1079
+ function ze(e, r) {
1080
+ if (r && (U(r) === "object" || typeof r == "function"))
1081
+ return r;
1082
+ if (r !== void 0)
1083
+ throw new TypeError("Derived constructors may only return object or undefined");
1084
+ return jt(e);
1085
+ }
1086
+ function jt(e) {
1087
+ if (e === void 0)
1088
+ throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
1089
+ return e;
1090
+ }
1091
+ function H(e) {
1092
+ var r = typeof Map == "function" ? /* @__PURE__ */ new Map() : void 0;
1093
+ return H = function(n) {
1094
+ if (n === null || !tr(n)) return n;
1095
+ if (typeof n != "function")
1096
+ throw new TypeError("Super expression must either be null or a function");
1097
+ if (typeof r < "u") {
1098
+ if (r.has(n)) return r.get(n);
1099
+ r.set(n, d);
1100
+ }
1101
+ function d() {
1102
+ return A(n, arguments, F(this).constructor);
1103
+ }
1104
+ return d.prototype = Object.create(n.prototype, { constructor: { value: d, enumerable: !1, writable: !0, configurable: !0 } }), E(d, n);
1105
+ }, H(e);
1106
+ }
1107
+ function A(e, r, t) {
1108
+ return Ut() ? A = Reflect.construct : A = function(d, i, a) {
1109
+ var $ = [null];
1110
+ $.push.apply($, i);
1111
+ var o = Function.bind.apply(d, $), u = new o();
1112
+ return a && E(u, a.prototype), u;
1113
+ }, A.apply(null, arguments);
1114
+ }
1115
+ function Ut() {
1116
+ if (typeof Reflect > "u" || !Reflect.construct || Reflect.construct.sham) return !1;
1117
+ if (typeof Proxy == "function") return !0;
1118
+ try {
1119
+ return Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {
1120
+ })), !0;
1121
+ } catch {
1122
+ return !1;
1123
+ }
1124
+ }
1125
+ function tr(e) {
1126
+ return Function.toString.call(e).indexOf("[native code]") !== -1;
1127
+ }
1128
+ function E(e, r) {
1129
+ return E = Object.setPrototypeOf || function(n, d) {
1130
+ return n.__proto__ = d, n;
1131
+ }, E(e, r);
1132
+ }
1133
+ function F(e) {
1134
+ return F = Object.setPrototypeOf ? Object.getPrototypeOf : function(t) {
1135
+ return t.__proto__ || Object.getPrototypeOf(t);
1136
+ }, F(e);
1137
+ }
1138
+ var C = /* @__PURE__ */ function(e) {
1139
+ Qe(t, e);
1140
+ var r = qe(t);
1141
+ function t(n) {
1142
+ var d;
1143
+ return Je(this, t), d = r.call(this, n), Object.setPrototypeOf(jt(d), t.prototype), d.name = d.constructor.name, d;
1144
+ }
1145
+ return Ze(t);
1146
+ }(/* @__PURE__ */ H(Error)), ut = new RegExp("(?:" + Gt() + ")$", "i");
1147
+ function er(e) {
1148
+ var r = e.search(ut);
1149
+ if (r < 0)
1150
+ return {};
1151
+ for (var t = e.slice(0, r), n = e.match(ut), d = 1; d < n.length; ) {
1152
+ if (n[d])
1153
+ return {
1154
+ number: t,
1155
+ ext: n[d]
1156
+ };
1157
+ d++;
1158
+ }
1159
+ }
1160
+ function rr(e, r) {
1161
+ var t = typeof Symbol < "u" && e[Symbol.iterator] || e["@@iterator"];
1162
+ if (t) return (t = t.call(e)).next.bind(t);
1163
+ if (Array.isArray(e) || (t = nr(e)) || r) {
1164
+ t && (e = t);
1165
+ var n = 0;
1166
+ return function() {
1167
+ return n >= e.length ? { done: !0 } : { done: !1, value: e[n++] };
1168
+ };
1169
+ }
1170
+ throw new TypeError(`Invalid attempt to iterate non-iterable instance.
1171
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`);
1172
+ }
1173
+ function nr(e, r) {
1174
+ if (e) {
1175
+ if (typeof e == "string") return lt(e, r);
1176
+ var t = Object.prototype.toString.call(e).slice(8, -1);
1177
+ if (t === "Object" && e.constructor && (t = e.constructor.name), t === "Map" || t === "Set") return Array.from(e);
1178
+ if (t === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)) return lt(e, r);
1179
+ }
1180
+ }
1181
+ function lt(e, r) {
1182
+ (r == null || r > e.length) && (r = e.length);
1183
+ for (var t = 0, n = new Array(r); t < r; t++)
1184
+ n[t] = e[t];
1185
+ return n;
1186
+ }
1187
+ var dr = {
1188
+ 0: "0",
1189
+ 1: "1",
1190
+ 2: "2",
1191
+ 3: "3",
1192
+ 4: "4",
1193
+ 5: "5",
1194
+ 6: "6",
1195
+ 7: "7",
1196
+ 8: "8",
1197
+ 9: "9",
1198
+ "0": "0",
1199
+ // Fullwidth digit 0
1200
+ "1": "1",
1201
+ // Fullwidth digit 1
1202
+ "2": "2",
1203
+ // Fullwidth digit 2
1204
+ "3": "3",
1205
+ // Fullwidth digit 3
1206
+ "4": "4",
1207
+ // Fullwidth digit 4
1208
+ "5": "5",
1209
+ // Fullwidth digit 5
1210
+ "6": "6",
1211
+ // Fullwidth digit 6
1212
+ "7": "7",
1213
+ // Fullwidth digit 7
1214
+ "8": "8",
1215
+ // Fullwidth digit 8
1216
+ "9": "9",
1217
+ // Fullwidth digit 9
1218
+ "٠": "0",
1219
+ // Arabic-indic digit 0
1220
+ "١": "1",
1221
+ // Arabic-indic digit 1
1222
+ "٢": "2",
1223
+ // Arabic-indic digit 2
1224
+ "٣": "3",
1225
+ // Arabic-indic digit 3
1226
+ "٤": "4",
1227
+ // Arabic-indic digit 4
1228
+ "٥": "5",
1229
+ // Arabic-indic digit 5
1230
+ "٦": "6",
1231
+ // Arabic-indic digit 6
1232
+ "٧": "7",
1233
+ // Arabic-indic digit 7
1234
+ "٨": "8",
1235
+ // Arabic-indic digit 8
1236
+ "٩": "9",
1237
+ // Arabic-indic digit 9
1238
+ "۰": "0",
1239
+ // Eastern-Arabic digit 0
1240
+ "۱": "1",
1241
+ // Eastern-Arabic digit 1
1242
+ "۲": "2",
1243
+ // Eastern-Arabic digit 2
1244
+ "۳": "3",
1245
+ // Eastern-Arabic digit 3
1246
+ "۴": "4",
1247
+ // Eastern-Arabic digit 4
1248
+ "۵": "5",
1249
+ // Eastern-Arabic digit 5
1250
+ "۶": "6",
1251
+ // Eastern-Arabic digit 6
1252
+ "۷": "7",
1253
+ // Eastern-Arabic digit 7
1254
+ "۸": "8",
1255
+ // Eastern-Arabic digit 8
1256
+ "۹": "9"
1257
+ // Eastern-Arabic digit 9
1258
+ };
1259
+ function Ht(e) {
1260
+ return dr[e];
1261
+ }
1262
+ function _(e) {
1263
+ for (var r = "", t = rr(e.split("")), n; !(n = t()).done; ) {
1264
+ var d = n.value, i = Ht(d);
1265
+ i && (r += i);
1266
+ }
1267
+ return r;
1268
+ }
1269
+ function ir(e, r) {
1270
+ var t = typeof Symbol < "u" && e[Symbol.iterator] || e["@@iterator"];
1271
+ if (t) return (t = t.call(e)).next.bind(t);
1272
+ if (Array.isArray(e) || (t = ar(e)) || r) {
1273
+ t && (e = t);
1274
+ var n = 0;
1275
+ return function() {
1276
+ return n >= e.length ? { done: !0 } : { done: !1, value: e[n++] };
1277
+ };
1278
+ }
1279
+ throw new TypeError(`Invalid attempt to iterate non-iterable instance.
1280
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`);
1281
+ }
1282
+ function ar(e, r) {
1283
+ if (e) {
1284
+ if (typeof e == "string") return ft(e, r);
1285
+ var t = Object.prototype.toString.call(e).slice(8, -1);
1286
+ if (t === "Object" && e.constructor && (t = e.constructor.name), t === "Map" || t === "Set") return Array.from(e);
1287
+ if (t === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)) return ft(e, r);
1288
+ }
1289
+ }
1290
+ function ft(e, r) {
1291
+ (r == null || r > e.length) && (r = e.length);
1292
+ for (var t = 0, n = new Array(r); t < r; t++)
1293
+ n[t] = e[t];
1294
+ return n;
1295
+ }
1296
+ function st(e) {
1297
+ for (var r = "", t = ir(e.split("")), n; !(n = t()).done; ) {
1298
+ var d = n.value;
1299
+ r += $r(d, r) || "";
1300
+ }
1301
+ return r;
1302
+ }
1303
+ function $r(e, r, t) {
1304
+ return e === "+" ? r ? void 0 : "+" : Ht(e);
1305
+ }
1306
+ function or(e, r) {
1307
+ var t = typeof Symbol < "u" && e[Symbol.iterator] || e["@@iterator"];
1308
+ if (t) return (t = t.call(e)).next.bind(t);
1309
+ if (Array.isArray(e) || (t = ur(e)) || r) {
1310
+ t && (e = t);
1311
+ var n = 0;
1312
+ return function() {
1313
+ return n >= e.length ? { done: !0 } : { done: !1, value: e[n++] };
1314
+ };
1315
+ }
1316
+ throw new TypeError(`Invalid attempt to iterate non-iterable instance.
1317
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`);
1318
+ }
1319
+ function ur(e, r) {
1320
+ if (e) {
1321
+ if (typeof e == "string") return ct(e, r);
1322
+ var t = Object.prototype.toString.call(e).slice(8, -1);
1323
+ if (t === "Object" && e.constructor && (t = e.constructor.name), t === "Map" || t === "Set") return Array.from(e);
1324
+ if (t === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)) return ct(e, r);
1325
+ }
1326
+ }
1327
+ function ct(e, r) {
1328
+ (r == null || r > e.length) && (r = e.length);
1329
+ for (var t = 0, n = new Array(r); t < r; t++)
1330
+ n[t] = e[t];
1331
+ return n;
1332
+ }
1333
+ function Wt(e, r) {
1334
+ var t = r.countries;
1335
+ r.defaultCountry;
1336
+ var n = r.metadata;
1337
+ n = new s(n);
1338
+ for (var d = or(t), i; !(i = d()).done; ) {
1339
+ var a = i.value;
1340
+ if (n.country(a), n.leadingDigits()) {
1341
+ if (e && e.search(n.leadingDigits()) === 0)
1342
+ return a;
1343
+ } else if (Z({
1344
+ phone: e,
1345
+ country: a
1346
+ }, void 0, n.metadata))
1347
+ return a;
1348
+ }
1349
+ }
1350
+ function Vt(e, r) {
1351
+ var t = r.nationalNumber, n = r.defaultCountry, d = r.metadata, i = d.getCountryCodesForCallingCode(e);
1352
+ if (i)
1353
+ return i.length === 1 ? i[0] : Wt(t, {
1354
+ countries: i,
1355
+ defaultCountry: n,
1356
+ metadata: d.metadata
1357
+ });
1358
+ }
1359
+ var Kt = "+", lr = "[\\-\\.\\(\\)]?", ht = "([" + h + "]|" + lr + ")", fr = "^\\" + Kt + ht + "*[" + h + "]" + ht + "*$", sr = new RegExp(fr, "g"), W = h, cr = "[" + W + "]+((\\-)*[" + W + "])*", hr = "a-zA-Z", gr = "[" + hr + "]+((\\-)*[" + W + "])*", mr = "^(" + cr + "\\.)*" + gr + "\\.?$", yr = new RegExp(mr, "g"), gt = "tel:", V = ";phone-context=", vr = ";isub=";
1360
+ function Nr(e) {
1361
+ var r = e.indexOf(V);
1362
+ if (r < 0)
1363
+ return null;
1364
+ var t = r + V.length;
1365
+ if (t >= e.length)
1366
+ return "";
1367
+ var n = e.indexOf(";", t);
1368
+ return n >= 0 ? e.substring(t, n) : e.substring(t);
1369
+ }
1370
+ function br(e) {
1371
+ return e === null ? !0 : e.length === 0 ? !1 : sr.test(e) || yr.test(e);
1372
+ }
1373
+ function Cr(e, r) {
1374
+ var t = r.extractFormattedPhoneNumber, n = Nr(e);
1375
+ if (!br(n))
1376
+ throw new C("NOT_A_NUMBER");
1377
+ var d;
1378
+ if (n === null)
1379
+ d = t(e) || "";
1380
+ else {
1381
+ d = "", n.charAt(0) === Kt && (d += n);
1382
+ var i = e.indexOf(gt), a;
1383
+ i >= 0 ? a = i + gt.length : a = 0;
1384
+ var $ = e.indexOf(V);
1385
+ d += e.substring(a, $);
1386
+ }
1387
+ var o = d.indexOf(vr);
1388
+ if (o > 0 && (d = d.substring(0, o)), d !== "")
1389
+ return d;
1390
+ }
1391
+ var pr = 250, Pr = new RegExp("[" + R + h + "]"), xr = new RegExp("[^" + h + "#]+$");
1392
+ function Er(e, r, t) {
1393
+ if (r = r || {}, t = new s(t), r.defaultCountry && !t.hasCountry(r.defaultCountry))
1394
+ throw r.v2 ? new C("INVALID_COUNTRY") : new Error("Unknown country: ".concat(r.defaultCountry));
1395
+ var n = Ar(e, r.v2, r.extract), d = n.number, i = n.ext, a = n.error;
1396
+ if (!d) {
1397
+ if (r.v2)
1398
+ throw a === "TOO_SHORT" ? new C("TOO_SHORT") : new C("NOT_A_NUMBER");
1399
+ return {};
1400
+ }
1401
+ var $ = Sr(d, r.defaultCountry, r.defaultCallingCode, t), o = $.country, u = $.nationalNumber, l = $.countryCallingCode, c = $.countryCallingCodeSource, f = $.carrierCode;
1402
+ if (!t.hasSelectedNumberingPlan()) {
1403
+ if (r.v2)
1404
+ throw new C("INVALID_COUNTRY");
1405
+ return {};
1406
+ }
1407
+ if (!u || u.length < J) {
1408
+ if (r.v2)
1409
+ throw new C("TOO_SHORT");
1410
+ return {};
1411
+ }
1412
+ if (u.length > he) {
1413
+ if (r.v2)
1414
+ throw new C("TOO_LONG");
1415
+ return {};
1416
+ }
1417
+ if (r.v2) {
1418
+ var g = new Bt(l, u, t.metadata);
1419
+ return o && (g.country = o), f && (g.carrierCode = f), i && (g.ext = i), g.__countryCallingCodeSource = c, g;
1420
+ }
1421
+ var v = (r.extended ? t.hasSelectedNumberingPlan() : o) ? b(u, t.nationalNumberPattern()) : !1;
1422
+ return r.extended ? {
1423
+ country: o,
1424
+ countryCallingCode: l,
1425
+ carrierCode: f,
1426
+ valid: v,
1427
+ possible: v ? !0 : !!(r.extended === !0 && t.possibleLengths() && wt(u, t)),
1428
+ phone: u,
1429
+ ext: i
1430
+ } : v ? Ir(o, u, i) : {};
1431
+ }
1432
+ function Fr(e, r, t) {
1433
+ if (e) {
1434
+ if (e.length > pr) {
1435
+ if (t)
1436
+ throw new C("TOO_LONG");
1437
+ return;
1438
+ }
1439
+ if (r === !1)
1440
+ return e;
1441
+ var n = e.search(Pr);
1442
+ if (!(n < 0))
1443
+ return e.slice(n).replace(xr, "");
1444
+ }
1445
+ }
1446
+ function Ar(e, r, t) {
1447
+ var n = Cr(e, {
1448
+ extractFormattedPhoneNumber: function(a) {
1449
+ return Fr(a, t, r);
1450
+ }
1451
+ });
1452
+ if (!n)
1453
+ return {};
1454
+ if (!we(n))
1455
+ return Re(n) ? {
1456
+ error: "TOO_SHORT"
1457
+ } : {};
1458
+ var d = er(n);
1459
+ return d.ext ? d : {
1460
+ number: n
1461
+ };
1462
+ }
1463
+ function Ir(e, r, t) {
1464
+ var n = {
1465
+ country: e,
1466
+ phone: r
1467
+ };
1468
+ return t && (n.ext = t), n;
1469
+ }
1470
+ function Sr(e, r, t, n) {
1471
+ var d = Q(st(e), r, t, n.metadata), i = d.countryCallingCodeSource, a = d.countryCallingCode, $ = d.number, o;
1472
+ if (a)
1473
+ n.selectNumberingPlan(a);
1474
+ else if ($ && (r || t))
1475
+ n.selectNumberingPlan(r, t), r && (o = r), a = t || Y(r, n.metadata);
1476
+ else return {};
1477
+ if (!$)
1478
+ return {
1479
+ countryCallingCodeSource: i,
1480
+ countryCallingCode: a
1481
+ };
1482
+ var u = j(st($), n), l = u.nationalNumber, c = u.carrierCode, f = Vt(a, {
1483
+ nationalNumber: l,
1484
+ defaultCountry: r,
1485
+ metadata: n
1486
+ });
1487
+ return f && (o = f, f === "001" || n.country(o)), {
1488
+ country: o,
1489
+ countryCallingCode: a,
1490
+ countryCallingCodeSource: i,
1491
+ nationalNumber: l,
1492
+ carrierCode: c
1493
+ };
1494
+ }
1495
+ function mt(e, r) {
1496
+ var t = Object.keys(e);
1497
+ if (Object.getOwnPropertySymbols) {
1498
+ var n = Object.getOwnPropertySymbols(e);
1499
+ r && (n = n.filter(function(d) {
1500
+ return Object.getOwnPropertyDescriptor(e, d).enumerable;
1501
+ })), t.push.apply(t, n);
1502
+ }
1503
+ return t;
1504
+ }
1505
+ function yt(e) {
1506
+ for (var r = 1; r < arguments.length; r++) {
1507
+ var t = arguments[r] != null ? arguments[r] : {};
1508
+ r % 2 ? mt(Object(t), !0).forEach(function(n) {
1509
+ _r(e, n, t[n]);
1510
+ }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : mt(Object(t)).forEach(function(n) {
1511
+ Object.defineProperty(e, n, Object.getOwnPropertyDescriptor(t, n));
1512
+ });
1513
+ }
1514
+ return e;
1515
+ }
1516
+ function _r(e, r, t) {
1517
+ return r in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e;
1518
+ }
1519
+ function Tr(e, r, t) {
1520
+ return Er(e, yt(yt({}, r), {}, {
1521
+ v2: !0
1522
+ }), t);
1523
+ }
1524
+ function vt(e, r) {
1525
+ var t = Object.keys(e);
1526
+ if (Object.getOwnPropertySymbols) {
1527
+ var n = Object.getOwnPropertySymbols(e);
1528
+ r && (n = n.filter(function(d) {
1529
+ return Object.getOwnPropertyDescriptor(e, d).enumerable;
1530
+ })), t.push.apply(t, n);
1531
+ }
1532
+ return t;
1533
+ }
1534
+ function Or(e) {
1535
+ for (var r = 1; r < arguments.length; r++) {
1536
+ var t = arguments[r] != null ? arguments[r] : {};
1537
+ r % 2 ? vt(Object(t), !0).forEach(function(n) {
1538
+ wr(e, n, t[n]);
1539
+ }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : vt(Object(t)).forEach(function(n) {
1540
+ Object.defineProperty(e, n, Object.getOwnPropertyDescriptor(t, n));
1541
+ });
1542
+ }
1543
+ return e;
1544
+ }
1545
+ function wr(e, r, t) {
1546
+ return r in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e;
1547
+ }
1548
+ function Rr(e, r) {
1549
+ return kr(e) || Lr(e, r) || Mr(e, r) || Dr();
1550
+ }
1551
+ function Dr() {
1552
+ throw new TypeError(`Invalid attempt to destructure non-iterable instance.
1553
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`);
1554
+ }
1555
+ function Mr(e, r) {
1556
+ if (e) {
1557
+ if (typeof e == "string") return Nt(e, r);
1558
+ var t = Object.prototype.toString.call(e).slice(8, -1);
1559
+ if (t === "Object" && e.constructor && (t = e.constructor.name), t === "Map" || t === "Set") return Array.from(e);
1560
+ if (t === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)) return Nt(e, r);
1561
+ }
1562
+ }
1563
+ function Nt(e, r) {
1564
+ (r == null || r > e.length) && (r = e.length);
1565
+ for (var t = 0, n = new Array(r); t < r; t++)
1566
+ n[t] = e[t];
1567
+ return n;
1568
+ }
1569
+ function Lr(e, r) {
1570
+ var t = e == null ? null : typeof Symbol < "u" && e[Symbol.iterator] || e["@@iterator"];
1571
+ if (t != null) {
1572
+ var n = [], d = !0, i = !1, a, $;
1573
+ try {
1574
+ for (t = t.call(e); !(d = (a = t.next()).done) && (n.push(a.value), !(r && n.length === r)); d = !0)
1575
+ ;
1576
+ } catch (o) {
1577
+ i = !0, $ = o;
1578
+ } finally {
1579
+ try {
1580
+ !d && t.return != null && t.return();
1581
+ } finally {
1582
+ if (i) throw $;
1583
+ }
1584
+ }
1585
+ return n;
1586
+ }
1587
+ }
1588
+ function kr(e) {
1589
+ if (Array.isArray(e)) return e;
1590
+ }
1591
+ function Gr(e) {
1592
+ var r = Array.prototype.slice.call(e), t = Rr(r, 4), n = t[0], d = t[1], i = t[2], a = t[3], $, o, u;
1593
+ if (typeof n == "string")
1594
+ $ = n;
1595
+ else throw new TypeError("A text for parsing must be a string.");
1596
+ if (!d || typeof d == "string")
1597
+ a ? (o = i, u = a) : (o = void 0, u = i), d && (o = Or({
1598
+ defaultCountry: d
1599
+ }, o));
1600
+ else if (P(d))
1601
+ i ? (o = d, u = i) : u = d;
1602
+ else throw new Error("Invalid second argument: ".concat(d));
1603
+ return {
1604
+ text: $,
1605
+ options: o,
1606
+ metadata: u
1607
+ };
1608
+ }
1609
+ function Br() {
1610
+ var e = Gr(arguments), r = e.text, t = e.options, n = e.metadata;
1611
+ return Tr(r, t, n);
1612
+ }
1613
+ function jr(e, r) {
1614
+ if (!(e instanceof r))
1615
+ throw new TypeError("Cannot call a class as a function");
1616
+ }
1617
+ function Ur(e, r) {
1618
+ for (var t = 0; t < r.length; t++) {
1619
+ var n = r[t];
1620
+ n.enumerable = n.enumerable || !1, n.configurable = !0, "value" in n && (n.writable = !0), Object.defineProperty(e, n.key, n);
1621
+ }
1622
+ }
1623
+ function Hr(e, r, t) {
1624
+ return r && Ur(e.prototype, r), Object.defineProperty(e, "prototype", { writable: !1 }), e;
1625
+ }
1626
+ var Wr = /* @__PURE__ */ function() {
1627
+ function e(r) {
1628
+ var t = r.onCountryChange, n = r.onCallingCodeChange;
1629
+ jr(this, e), this.onCountryChange = t, this.onCallingCodeChange = n;
1630
+ }
1631
+ return Hr(e, [{
1632
+ key: "reset",
1633
+ value: function(t) {
1634
+ var n = t.country, d = t.callingCode;
1635
+ this.international = !1, this.missingPlus = !1, this.IDDPrefix = void 0, this.callingCode = void 0, this.digits = "", this.resetNationalSignificantNumber(), this.initCountryAndCallingCode(n, d);
1636
+ }
1637
+ }, {
1638
+ key: "resetNationalSignificantNumber",
1639
+ value: function() {
1640
+ this.nationalSignificantNumber = this.getNationalDigits(), this.nationalSignificantNumberMatchesInput = !0, this.nationalPrefix = void 0, this.carrierCode = void 0, this.complexPrefixBeforeNationalSignificantNumber = void 0;
1641
+ }
1642
+ }, {
1643
+ key: "update",
1644
+ value: function(t) {
1645
+ for (var n = 0, d = Object.keys(t); n < d.length; n++) {
1646
+ var i = d[n];
1647
+ this[i] = t[i];
1648
+ }
1649
+ }
1650
+ }, {
1651
+ key: "initCountryAndCallingCode",
1652
+ value: function(t, n) {
1653
+ this.setCountry(t), this.setCallingCode(n);
1654
+ }
1655
+ }, {
1656
+ key: "setCountry",
1657
+ value: function(t) {
1658
+ this.country = t, this.onCountryChange(t);
1659
+ }
1660
+ }, {
1661
+ key: "setCallingCode",
1662
+ value: function(t) {
1663
+ this.callingCode = t, this.onCallingCodeChange(t, this.country);
1664
+ }
1665
+ }, {
1666
+ key: "startInternationalNumber",
1667
+ value: function(t, n) {
1668
+ this.international = !0, this.initCountryAndCallingCode(t, n);
1669
+ }
1670
+ }, {
1671
+ key: "appendDigits",
1672
+ value: function(t) {
1673
+ this.digits += t;
1674
+ }
1675
+ }, {
1676
+ key: "appendNationalSignificantNumberDigits",
1677
+ value: function(t) {
1678
+ this.nationalSignificantNumber += t;
1679
+ }
1680
+ /**
1681
+ * Returns the part of `this.digits` that corresponds to the national number.
1682
+ * Basically, all digits that have been input by the user, except for the
1683
+ * international prefix and the country calling code part
1684
+ * (if the number is an international one).
1685
+ * @return {string}
1686
+ */
1687
+ }, {
1688
+ key: "getNationalDigits",
1689
+ value: function() {
1690
+ return this.international ? this.digits.slice((this.IDDPrefix ? this.IDDPrefix.length : 0) + (this.callingCode ? this.callingCode.length : 0)) : this.digits;
1691
+ }
1692
+ }, {
1693
+ key: "getDigitsWithoutInternationalPrefix",
1694
+ value: function() {
1695
+ return this.international && this.IDDPrefix ? this.digits.slice(this.IDDPrefix.length) : this.digits;
1696
+ }
1697
+ }]), e;
1698
+ }();
1699
+ function Vr(e, r) {
1700
+ var t = typeof Symbol < "u" && e[Symbol.iterator] || e["@@iterator"];
1701
+ if (t) return (t = t.call(e)).next.bind(t);
1702
+ if (Array.isArray(e) || (t = Kr(e)) || r) {
1703
+ t && (e = t);
1704
+ var n = 0;
1705
+ return function() {
1706
+ return n >= e.length ? { done: !0 } : { done: !1, value: e[n++] };
1707
+ };
1708
+ }
1709
+ throw new TypeError(`Invalid attempt to iterate non-iterable instance.
1710
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`);
1711
+ }
1712
+ function Kr(e, r) {
1713
+ if (e) {
1714
+ if (typeof e == "string") return bt(e, r);
1715
+ var t = Object.prototype.toString.call(e).slice(8, -1);
1716
+ if (t === "Object" && e.constructor && (t = e.constructor.name), t === "Map" || t === "Set") return Array.from(e);
1717
+ if (t === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)) return bt(e, r);
1718
+ }
1719
+ }
1720
+ function bt(e, r) {
1721
+ (r == null || r > e.length) && (r = e.length);
1722
+ for (var t = 0, n = new Array(r); t < r; t++)
1723
+ n[t] = e[t];
1724
+ return n;
1725
+ }
1726
+ var m = "x", L = new RegExp(m);
1727
+ function I(e, r) {
1728
+ if (r < 1)
1729
+ return "";
1730
+ for (var t = ""; r > 1; )
1731
+ r & 1 && (t += e), r >>= 1, e += e;
1732
+ return t + e;
1733
+ }
1734
+ function Ct(e, r) {
1735
+ return e[r] === ")" && r++, Xr(e.slice(0, r));
1736
+ }
1737
+ function Xr(e) {
1738
+ for (var r = [], t = 0; t < e.length; )
1739
+ e[t] === "(" ? r.push(t) : e[t] === ")" && r.pop(), t++;
1740
+ var n = 0, d = "";
1741
+ r.push(e.length);
1742
+ for (var i = 0, a = r; i < a.length; i++) {
1743
+ var $ = a[i];
1744
+ d += e.slice(n, $), n = $ + 1;
1745
+ }
1746
+ return d;
1747
+ }
1748
+ function Yr(e, r, t) {
1749
+ for (var n = Vr(t.split("")), d; !(d = n()).done; ) {
1750
+ var i = d.value;
1751
+ if (e.slice(r + 1).search(L) < 0)
1752
+ return;
1753
+ r = e.search(L), e = e.replace(L, i);
1754
+ }
1755
+ return [e, r];
1756
+ }
1757
+ function Zr(e, r, t) {
1758
+ var n = t.metadata, d = t.shouldTryNationalPrefixFormattingRule, i = t.getSeparatorAfterNationalPrefix, a = new RegExp("^(?:".concat(r.pattern(), ")$"));
1759
+ if (a.test(e.nationalSignificantNumber))
1760
+ return Qr(e, r, {
1761
+ metadata: n,
1762
+ shouldTryNationalPrefixFormattingRule: d,
1763
+ getSeparatorAfterNationalPrefix: i
1764
+ });
1765
+ }
1766
+ function Jr(e, r) {
1767
+ return w(e, r) === "IS_POSSIBLE";
1768
+ }
1769
+ function Qr(e, r, t) {
1770
+ var n = t.metadata, d = t.shouldTryNationalPrefixFormattingRule, i = t.getSeparatorAfterNationalPrefix;
1771
+ if (e.nationalSignificantNumber, e.international, e.nationalPrefix, e.carrierCode, d(r)) {
1772
+ var a = pt(e, r, {
1773
+ useNationalPrefixFormattingRule: !0,
1774
+ getSeparatorAfterNationalPrefix: i,
1775
+ metadata: n
1776
+ });
1777
+ if (a)
1778
+ return a;
1779
+ }
1780
+ return pt(e, r, {
1781
+ useNationalPrefixFormattingRule: !1,
1782
+ getSeparatorAfterNationalPrefix: i,
1783
+ metadata: n
1784
+ });
1785
+ }
1786
+ function pt(e, r, t) {
1787
+ var n = t.metadata, d = t.useNationalPrefixFormattingRule, i = t.getSeparatorAfterNationalPrefix, a = kt(e.nationalSignificantNumber, r, {
1788
+ carrierCode: e.carrierCode,
1789
+ useInternationalFormat: e.international,
1790
+ withNationalPrefix: d,
1791
+ metadata: n
1792
+ });
1793
+ if (d || (e.nationalPrefix ? a = e.nationalPrefix + i(r) + a : e.complexPrefixBeforeNationalSignificantNumber && (a = e.complexPrefixBeforeNationalSignificantNumber + " " + a)), qr(a, e))
1794
+ return a;
1795
+ }
1796
+ function qr(e, r) {
1797
+ return _(e) === r.getNationalDigits();
1798
+ }
1799
+ function zr(e, r) {
1800
+ if (!(e instanceof r))
1801
+ throw new TypeError("Cannot call a class as a function");
1802
+ }
1803
+ function tn(e, r) {
1804
+ for (var t = 0; t < r.length; t++) {
1805
+ var n = r[t];
1806
+ n.enumerable = n.enumerable || !1, n.configurable = !0, "value" in n && (n.writable = !0), Object.defineProperty(e, n.key, n);
1807
+ }
1808
+ }
1809
+ function en(e, r, t) {
1810
+ return r && tn(e.prototype, r), Object.defineProperty(e, "prototype", { writable: !1 }), e;
1811
+ }
1812
+ var rn = /* @__PURE__ */ function() {
1813
+ function e() {
1814
+ zr(this, e);
1815
+ }
1816
+ return en(e, [{
1817
+ key: "parse",
1818
+ value: function(t) {
1819
+ if (this.context = [{
1820
+ or: !0,
1821
+ instructions: []
1822
+ }], this.parsePattern(t), this.context.length !== 1)
1823
+ throw new Error("Non-finalized contexts left when pattern parse ended");
1824
+ var n = this.context[0], d = n.branches, i = n.instructions;
1825
+ if (d)
1826
+ return {
1827
+ op: "|",
1828
+ args: d.concat([k(i)])
1829
+ };
1830
+ if (i.length === 0)
1831
+ throw new Error("Pattern is required");
1832
+ return i.length === 1 ? i[0] : i;
1833
+ }
1834
+ }, {
1835
+ key: "startContext",
1836
+ value: function(t) {
1837
+ this.context.push(t);
1838
+ }
1839
+ }, {
1840
+ key: "endContext",
1841
+ value: function() {
1842
+ this.context.pop();
1843
+ }
1844
+ }, {
1845
+ key: "getContext",
1846
+ value: function() {
1847
+ return this.context[this.context.length - 1];
1848
+ }
1849
+ }, {
1850
+ key: "parsePattern",
1851
+ value: function(t) {
1852
+ if (!t)
1853
+ throw new Error("Pattern is required");
1854
+ var n = t.match(an);
1855
+ if (!n) {
1856
+ if (dn.test(t))
1857
+ throw new Error("Illegal characters found in a pattern: ".concat(t));
1858
+ this.getContext().instructions = this.getContext().instructions.concat(t.split(""));
1859
+ return;
1860
+ }
1861
+ var d = n[1], i = t.slice(0, n.index), a = t.slice(n.index + d.length);
1862
+ switch (d) {
1863
+ case "(?:":
1864
+ i && this.parsePattern(i), this.startContext({
1865
+ or: !0,
1866
+ instructions: [],
1867
+ branches: []
1868
+ });
1869
+ break;
1870
+ case ")":
1871
+ if (!this.getContext().or)
1872
+ throw new Error('")" operator must be preceded by "(?:" operator');
1873
+ if (i && this.parsePattern(i), this.getContext().instructions.length === 0)
1874
+ throw new Error('No instructions found after "|" operator in an "or" group');
1875
+ var $ = this.getContext(), o = $.branches;
1876
+ o.push(k(this.getContext().instructions)), this.endContext(), this.getContext().instructions.push({
1877
+ op: "|",
1878
+ args: o
1879
+ });
1880
+ break;
1881
+ case "|":
1882
+ if (!this.getContext().or)
1883
+ throw new Error('"|" operator can only be used inside "or" groups');
1884
+ if (i && this.parsePattern(i), !this.getContext().branches)
1885
+ if (this.context.length === 1)
1886
+ this.getContext().branches = [];
1887
+ else
1888
+ throw new Error('"branches" not found in an "or" group context');
1889
+ this.getContext().branches.push(k(this.getContext().instructions)), this.getContext().instructions = [];
1890
+ break;
1891
+ case "[":
1892
+ i && this.parsePattern(i), this.startContext({
1893
+ oneOfSet: !0
1894
+ });
1895
+ break;
1896
+ case "]":
1897
+ if (!this.getContext().oneOfSet)
1898
+ throw new Error('"]" operator must be preceded by "[" operator');
1899
+ this.endContext(), this.getContext().instructions.push({
1900
+ op: "[]",
1901
+ args: nn(i)
1902
+ });
1903
+ break;
1904
+ /* istanbul ignore next */
1905
+ default:
1906
+ throw new Error("Unknown operator: ".concat(d));
1907
+ }
1908
+ a && this.parsePattern(a);
1909
+ }
1910
+ }]), e;
1911
+ }();
1912
+ function nn(e) {
1913
+ for (var r = [], t = 0; t < e.length; ) {
1914
+ if (e[t] === "-") {
1915
+ if (t === 0 || t === e.length - 1)
1916
+ throw new Error("Couldn't parse a one-of set pattern: ".concat(e));
1917
+ for (var n = e[t - 1].charCodeAt(0) + 1, d = e[t + 1].charCodeAt(0) - 1, i = n; i <= d; )
1918
+ r.push(String.fromCharCode(i)), i++;
1919
+ } else
1920
+ r.push(e[t]);
1921
+ t++;
1922
+ }
1923
+ return r;
1924
+ }
1925
+ var dn = /[\(\)\[\]\?\:\|]/, an = new RegExp(
1926
+ // any of:
1927
+ "(\\||\\(\\?\\:|\\)|\\[|\\])"
1928
+ );
1929
+ function k(e) {
1930
+ return e.length === 1 ? e[0] : e;
1931
+ }
1932
+ function Pt(e, r) {
1933
+ var t = typeof Symbol < "u" && e[Symbol.iterator] || e["@@iterator"];
1934
+ if (t) return (t = t.call(e)).next.bind(t);
1935
+ if (Array.isArray(e) || (t = $n(e)) || r) {
1936
+ t && (e = t);
1937
+ var n = 0;
1938
+ return function() {
1939
+ return n >= e.length ? { done: !0 } : { done: !1, value: e[n++] };
1940
+ };
1941
+ }
1942
+ throw new TypeError(`Invalid attempt to iterate non-iterable instance.
1943
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`);
1944
+ }
1945
+ function $n(e, r) {
1946
+ if (e) {
1947
+ if (typeof e == "string") return xt(e, r);
1948
+ var t = Object.prototype.toString.call(e).slice(8, -1);
1949
+ if (t === "Object" && e.constructor && (t = e.constructor.name), t === "Map" || t === "Set") return Array.from(e);
1950
+ if (t === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)) return xt(e, r);
1951
+ }
1952
+ }
1953
+ function xt(e, r) {
1954
+ (r == null || r > e.length) && (r = e.length);
1955
+ for (var t = 0, n = new Array(r); t < r; t++)
1956
+ n[t] = e[t];
1957
+ return n;
1958
+ }
1959
+ function on(e, r) {
1960
+ if (!(e instanceof r))
1961
+ throw new TypeError("Cannot call a class as a function");
1962
+ }
1963
+ function un(e, r) {
1964
+ for (var t = 0; t < r.length; t++) {
1965
+ var n = r[t];
1966
+ n.enumerable = n.enumerable || !1, n.configurable = !0, "value" in n && (n.writable = !0), Object.defineProperty(e, n.key, n);
1967
+ }
1968
+ }
1969
+ function ln(e, r, t) {
1970
+ return r && un(e.prototype, r), Object.defineProperty(e, "prototype", { writable: !1 }), e;
1971
+ }
1972
+ var fn = /* @__PURE__ */ function() {
1973
+ function e(r) {
1974
+ on(this, e), this.matchTree = new rn().parse(r);
1975
+ }
1976
+ return ln(e, [{
1977
+ key: "match",
1978
+ value: function(t) {
1979
+ var n = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}, d = n.allowOverflow;
1980
+ if (!t)
1981
+ throw new Error("String is required");
1982
+ var i = K(t.split(""), this.matchTree, !0);
1983
+ if (i && i.match && delete i.matchedChars, !(i && i.overflow && !d))
1984
+ return i;
1985
+ }
1986
+ }]), e;
1987
+ }();
1988
+ function K(e, r, t) {
1989
+ if (typeof r == "string") {
1990
+ var n = e.join("");
1991
+ return r.indexOf(n) === 0 ? e.length === r.length ? {
1992
+ match: !0,
1993
+ matchedChars: e
1994
+ } : {
1995
+ partialMatch: !0
1996
+ // matchedChars: characters
1997
+ } : n.indexOf(r) === 0 ? t && e.length > r.length ? {
1998
+ overflow: !0
1999
+ } : {
2000
+ match: !0,
2001
+ matchedChars: e.slice(0, r.length)
2002
+ } : void 0;
2003
+ }
2004
+ if (Array.isArray(r)) {
2005
+ for (var d = e.slice(), i = 0; i < r.length; ) {
2006
+ var a = r[i], $ = K(d, a, t && i === r.length - 1);
2007
+ if ($) {
2008
+ if ($.overflow)
2009
+ return $;
2010
+ if ($.match) {
2011
+ if (d = d.slice($.matchedChars.length), d.length === 0)
2012
+ return i === r.length - 1 ? {
2013
+ match: !0,
2014
+ matchedChars: e
2015
+ } : {
2016
+ partialMatch: !0
2017
+ // matchedChars: characters
2018
+ };
2019
+ } else {
2020
+ if ($.partialMatch)
2021
+ return {
2022
+ partialMatch: !0
2023
+ // matchedChars: characters
2024
+ };
2025
+ throw new Error(`Unsupported match result:
2026
+ `.concat(JSON.stringify($, null, 2)));
2027
+ }
2028
+ } else return;
2029
+ i++;
2030
+ }
2031
+ return t ? {
2032
+ overflow: !0
2033
+ } : {
2034
+ match: !0,
2035
+ matchedChars: e.slice(0, e.length - d.length)
2036
+ };
2037
+ }
2038
+ switch (r.op) {
2039
+ case "|":
2040
+ for (var o, u = Pt(r.args), l; !(l = u()).done; ) {
2041
+ var c = l.value, f = K(e, c, t);
2042
+ if (f) {
2043
+ if (f.overflow)
2044
+ return f;
2045
+ if (f.match)
2046
+ return {
2047
+ match: !0,
2048
+ matchedChars: f.matchedChars
2049
+ };
2050
+ if (f.partialMatch)
2051
+ o = !0;
2052
+ else
2053
+ throw new Error(`Unsupported match result:
2054
+ `.concat(JSON.stringify(f, null, 2)));
2055
+ }
2056
+ }
2057
+ return o ? {
2058
+ partialMatch: !0
2059
+ // matchedChars: ...
2060
+ } : void 0;
2061
+ case "[]":
2062
+ for (var g = Pt(r.args), v; !(v = g()).done; ) {
2063
+ var p = v.value;
2064
+ if (e[0] === p)
2065
+ return e.length === 1 ? {
2066
+ match: !0,
2067
+ matchedChars: e
2068
+ } : t ? {
2069
+ overflow: !0
2070
+ } : {
2071
+ match: !0,
2072
+ matchedChars: [p]
2073
+ };
2074
+ }
2075
+ return;
2076
+ /* istanbul ignore next */
2077
+ default:
2078
+ throw new Error("Unsupported instruction tree: ".concat(r));
2079
+ }
2080
+ }
2081
+ function Et(e, r) {
2082
+ var t = typeof Symbol < "u" && e[Symbol.iterator] || e["@@iterator"];
2083
+ if (t) return (t = t.call(e)).next.bind(t);
2084
+ if (Array.isArray(e) || (t = sn(e)) || r) {
2085
+ t && (e = t);
2086
+ var n = 0;
2087
+ return function() {
2088
+ return n >= e.length ? { done: !0 } : { done: !1, value: e[n++] };
2089
+ };
2090
+ }
2091
+ throw new TypeError(`Invalid attempt to iterate non-iterable instance.
2092
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`);
2093
+ }
2094
+ function sn(e, r) {
2095
+ if (e) {
2096
+ if (typeof e == "string") return Ft(e, r);
2097
+ var t = Object.prototype.toString.call(e).slice(8, -1);
2098
+ if (t === "Object" && e.constructor && (t = e.constructor.name), t === "Map" || t === "Set") return Array.from(e);
2099
+ if (t === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)) return Ft(e, r);
2100
+ }
2101
+ }
2102
+ function Ft(e, r) {
2103
+ (r == null || r > e.length) && (r = e.length);
2104
+ for (var t = 0, n = new Array(r); t < r; t++)
2105
+ n[t] = e[t];
2106
+ return n;
2107
+ }
2108
+ function cn(e, r) {
2109
+ if (!(e instanceof r))
2110
+ throw new TypeError("Cannot call a class as a function");
2111
+ }
2112
+ function hn(e, r) {
2113
+ for (var t = 0; t < r.length; t++) {
2114
+ var n = r[t];
2115
+ n.enumerable = n.enumerable || !1, n.configurable = !0, "value" in n && (n.writable = !0), Object.defineProperty(e, n.key, n);
2116
+ }
2117
+ }
2118
+ function gn(e, r, t) {
2119
+ return r && hn(e.prototype, r), Object.defineProperty(e, "prototype", { writable: !1 }), e;
2120
+ }
2121
+ var X = "9", mn = 15, yn = I(X, mn), vn = /[- ]/, Nn = function() {
2122
+ return /\[([^\[\]])*\]/g;
2123
+ }, bn = function() {
2124
+ return /\d(?=[^,}][^,}])/g;
2125
+ }, Cn = new RegExp("[" + y + "]*\\$1[" + y + "]*(\\$\\d[" + y + "]*)*$"), At = 3, pn = /* @__PURE__ */ function() {
2126
+ function e(r) {
2127
+ r.state;
2128
+ var t = r.metadata;
2129
+ cn(this, e), this.metadata = t, this.resetFormat();
2130
+ }
2131
+ return gn(e, [{
2132
+ key: "resetFormat",
2133
+ value: function() {
2134
+ this.chosenFormat = void 0, this.template = void 0, this.nationalNumberTemplate = void 0, this.populatedNationalNumberTemplate = void 0, this.populatedNationalNumberTemplatePosition = -1;
2135
+ }
2136
+ }, {
2137
+ key: "reset",
2138
+ value: function(t, n) {
2139
+ this.resetFormat(), t ? (this.isNANP = t.callingCode() === "1", this.matchingFormats = t.formats(), n.nationalSignificantNumber && this.narrowDownMatchingFormats(n)) : (this.isNANP = void 0, this.matchingFormats = []);
2140
+ }
2141
+ /**
2142
+ * Formats an updated phone number.
2143
+ * @param {string} nextDigits — Additional phone number digits.
2144
+ * @param {object} state — `AsYouType` state.
2145
+ * @return {[string]} Returns undefined if the updated phone number can't be formatted using any of the available formats.
2146
+ */
2147
+ }, {
2148
+ key: "format",
2149
+ value: function(t, n) {
2150
+ var d = this;
2151
+ if (Jr(n.nationalSignificantNumber, this.metadata))
2152
+ for (var i = Et(this.matchingFormats), a; !(a = i()).done; ) {
2153
+ var $ = a.value, o = Zr(n, $, {
2154
+ metadata: this.metadata,
2155
+ shouldTryNationalPrefixFormattingRule: function(l) {
2156
+ return d.shouldTryNationalPrefixFormattingRule(l, {
2157
+ international: n.international,
2158
+ nationalPrefix: n.nationalPrefix
2159
+ });
2160
+ },
2161
+ getSeparatorAfterNationalPrefix: function(l) {
2162
+ return d.getSeparatorAfterNationalPrefix(l);
2163
+ }
2164
+ });
2165
+ if (o)
2166
+ return this.resetFormat(), this.chosenFormat = $, this.setNationalNumberTemplate(o.replace(/\d/g, m), n), this.populatedNationalNumberTemplate = o, this.populatedNationalNumberTemplatePosition = this.template.lastIndexOf(m), o;
2167
+ }
2168
+ return this.formatNationalNumberWithNextDigits(t, n);
2169
+ }
2170
+ // Formats the next phone number digits.
2171
+ }, {
2172
+ key: "formatNationalNumberWithNextDigits",
2173
+ value: function(t, n) {
2174
+ var d = this.chosenFormat, i = this.chooseFormat(n);
2175
+ if (i)
2176
+ return i === d ? this.formatNextNationalNumberDigits(t) : this.formatNextNationalNumberDigits(n.getNationalDigits());
2177
+ }
2178
+ }, {
2179
+ key: "narrowDownMatchingFormats",
2180
+ value: function(t) {
2181
+ var n = this, d = t.nationalSignificantNumber, i = t.nationalPrefix, a = t.international, $ = d, o = $.length - At;
2182
+ o < 0 && (o = 0), this.matchingFormats = this.matchingFormats.filter(function(u) {
2183
+ return n.formatSuits(u, a, i) && n.formatMatches(u, $, o);
2184
+ }), this.chosenFormat && this.matchingFormats.indexOf(this.chosenFormat) === -1 && this.resetFormat();
2185
+ }
2186
+ }, {
2187
+ key: "formatSuits",
2188
+ value: function(t, n, d) {
2189
+ return !(d && !t.usesNationalPrefix() && // !format.domesticCarrierCodeFormattingRule() &&
2190
+ !t.nationalPrefixIsOptionalWhenFormattingInNationalFormat() || !n && !d && t.nationalPrefixIsMandatoryWhenFormattingInNationalFormat());
2191
+ }
2192
+ }, {
2193
+ key: "formatMatches",
2194
+ value: function(t, n, d) {
2195
+ var i = t.leadingDigitsPatterns().length;
2196
+ if (i === 0)
2197
+ return !0;
2198
+ d = Math.min(d, i - 1);
2199
+ var a = t.leadingDigitsPatterns()[d];
2200
+ if (n.length < At)
2201
+ try {
2202
+ return new fn(a).match(n, {
2203
+ allowOverflow: !0
2204
+ }) !== void 0;
2205
+ } catch ($) {
2206
+ return console.error($), !0;
2207
+ }
2208
+ return new RegExp("^(".concat(a, ")")).test(n);
2209
+ }
2210
+ }, {
2211
+ key: "getFormatFormat",
2212
+ value: function(t, n) {
2213
+ return n ? t.internationalFormat() : t.format();
2214
+ }
2215
+ }, {
2216
+ key: "chooseFormat",
2217
+ value: function(t) {
2218
+ for (var n = this, d = function() {
2219
+ var u = a.value;
2220
+ return n.chosenFormat === u ? "break" : Cn.test(n.getFormatFormat(u, t.international)) ? n.createTemplateForFormat(u, t) ? (n.chosenFormat = u, "break") : (n.matchingFormats = n.matchingFormats.filter(function(l) {
2221
+ return l !== u;
2222
+ }), "continue") : "continue";
2223
+ }, i = Et(this.matchingFormats.slice()), a; !(a = i()).done; ) {
2224
+ var $ = d();
2225
+ if ($ === "break") break;
2226
+ }
2227
+ return this.chosenFormat || this.resetFormat(), this.chosenFormat;
2228
+ }
2229
+ }, {
2230
+ key: "createTemplateForFormat",
2231
+ value: function(t, n) {
2232
+ if (!(t.pattern().indexOf("|") >= 0)) {
2233
+ var d = this.getTemplateForFormat(t, n);
2234
+ if (d)
2235
+ return this.setNationalNumberTemplate(d, n), !0;
2236
+ }
2237
+ }
2238
+ }, {
2239
+ key: "getSeparatorAfterNationalPrefix",
2240
+ value: function(t) {
2241
+ return this.isNANP || t && t.nationalPrefixFormattingRule() && vn.test(t.nationalPrefixFormattingRule()) ? " " : "";
2242
+ }
2243
+ }, {
2244
+ key: "getInternationalPrefixBeforeCountryCallingCode",
2245
+ value: function(t, n) {
2246
+ var d = t.IDDPrefix, i = t.missingPlus;
2247
+ return d ? n && n.spacing === !1 ? d : d + " " : i ? "" : "+";
2248
+ }
2249
+ }, {
2250
+ key: "getTemplate",
2251
+ value: function(t) {
2252
+ if (this.template) {
2253
+ for (var n = -1, d = 0, i = t.international ? this.getInternationalPrefixBeforeCountryCallingCode(t, {
2254
+ spacing: !1
2255
+ }) : ""; d < i.length + t.getDigitsWithoutInternationalPrefix().length; )
2256
+ n = this.template.indexOf(m, n + 1), d++;
2257
+ return Ct(this.template, n + 1);
2258
+ }
2259
+ }
2260
+ }, {
2261
+ key: "setNationalNumberTemplate",
2262
+ value: function(t, n) {
2263
+ this.nationalNumberTemplate = t, this.populatedNationalNumberTemplate = t, this.populatedNationalNumberTemplatePosition = -1, n.international ? this.template = this.getInternationalPrefixBeforeCountryCallingCode(n).replace(/[\d\+]/g, m) + I(m, n.callingCode.length) + " " + t : this.template = t;
2264
+ }
2265
+ /**
2266
+ * Generates formatting template for a national phone number,
2267
+ * optionally containing a national prefix, for a format.
2268
+ * @param {Format} format
2269
+ * @param {string} nationalPrefix
2270
+ * @return {string}
2271
+ */
2272
+ }, {
2273
+ key: "getTemplateForFormat",
2274
+ value: function(t, n) {
2275
+ var d = n.nationalSignificantNumber, i = n.international, a = n.nationalPrefix, $ = n.complexPrefixBeforeNationalSignificantNumber, o = t.pattern();
2276
+ o = o.replace(Nn(), "\\d").replace(bn(), "\\d");
2277
+ var u = yn.match(o)[0];
2278
+ if (!(d.length > u.length)) {
2279
+ var l = new RegExp("^" + o + "$"), c = d.replace(/\d/g, X);
2280
+ l.test(c) && (u = c);
2281
+ var f = this.getFormatFormat(t, i), g;
2282
+ if (this.shouldTryNationalPrefixFormattingRule(t, {
2283
+ international: i,
2284
+ nationalPrefix: a
2285
+ })) {
2286
+ var v = f.replace(Lt, t.nationalPrefixFormattingRule());
2287
+ if (_(t.nationalPrefixFormattingRule()) === (a || "") + _("$1") && (f = v, g = !0, a))
2288
+ for (var p = a.length; p > 0; )
2289
+ f = f.replace(/\d/, m), p--;
2290
+ }
2291
+ var N = u.replace(new RegExp(o), f).replace(new RegExp(X, "g"), m);
2292
+ return g || ($ ? N = I(m, $.length) + " " + N : a && (N = I(m, a.length) + this.getSeparatorAfterNationalPrefix(t) + N)), i && (N = Mt(N)), N;
2293
+ }
2294
+ }
2295
+ }, {
2296
+ key: "formatNextNationalNumberDigits",
2297
+ value: function(t) {
2298
+ var n = Yr(this.populatedNationalNumberTemplate, this.populatedNationalNumberTemplatePosition, t);
2299
+ if (!n) {
2300
+ this.resetFormat();
2301
+ return;
2302
+ }
2303
+ return this.populatedNationalNumberTemplate = n[0], this.populatedNationalNumberTemplatePosition = n[1], Ct(this.populatedNationalNumberTemplate, this.populatedNationalNumberTemplatePosition + 1);
2304
+ }
2305
+ }, {
2306
+ key: "shouldTryNationalPrefixFormattingRule",
2307
+ value: function(t, n) {
2308
+ var d = n.international, i = n.nationalPrefix;
2309
+ if (t.nationalPrefixFormattingRule()) {
2310
+ var a = t.usesNationalPrefix();
2311
+ if (a && i || !a && !d)
2312
+ return !0;
2313
+ }
2314
+ }
2315
+ }]), e;
2316
+ }();
2317
+ function Xt(e, r) {
2318
+ return Fn(e) || En(e, r) || xn(e, r) || Pn();
2319
+ }
2320
+ function Pn() {
2321
+ throw new TypeError(`Invalid attempt to destructure non-iterable instance.
2322
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`);
2323
+ }
2324
+ function xn(e, r) {
2325
+ if (e) {
2326
+ if (typeof e == "string") return It(e, r);
2327
+ var t = Object.prototype.toString.call(e).slice(8, -1);
2328
+ if (t === "Object" && e.constructor && (t = e.constructor.name), t === "Map" || t === "Set") return Array.from(e);
2329
+ if (t === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)) return It(e, r);
2330
+ }
2331
+ }
2332
+ function It(e, r) {
2333
+ (r == null || r > e.length) && (r = e.length);
2334
+ for (var t = 0, n = new Array(r); t < r; t++)
2335
+ n[t] = e[t];
2336
+ return n;
2337
+ }
2338
+ function En(e, r) {
2339
+ var t = e == null ? null : typeof Symbol < "u" && e[Symbol.iterator] || e["@@iterator"];
2340
+ if (t != null) {
2341
+ var n = [], d = !0, i = !1, a, $;
2342
+ try {
2343
+ for (t = t.call(e); !(d = (a = t.next()).done) && (n.push(a.value), !(r && n.length === r)); d = !0)
2344
+ ;
2345
+ } catch (o) {
2346
+ i = !0, $ = o;
2347
+ } finally {
2348
+ try {
2349
+ !d && t.return != null && t.return();
2350
+ } finally {
2351
+ if (i) throw $;
2352
+ }
2353
+ }
2354
+ return n;
2355
+ }
2356
+ }
2357
+ function Fn(e) {
2358
+ if (Array.isArray(e)) return e;
2359
+ }
2360
+ function An(e, r) {
2361
+ if (!(e instanceof r))
2362
+ throw new TypeError("Cannot call a class as a function");
2363
+ }
2364
+ function In(e, r) {
2365
+ for (var t = 0; t < r.length; t++) {
2366
+ var n = r[t];
2367
+ n.enumerable = n.enumerable || !1, n.configurable = !0, "value" in n && (n.writable = !0), Object.defineProperty(e, n.key, n);
2368
+ }
2369
+ }
2370
+ function Sn(e, r, t) {
2371
+ return r && In(e.prototype, r), Object.defineProperty(e, "prototype", { writable: !1 }), e;
2372
+ }
2373
+ var _n = "[" + y + h + "]+", Tn = new RegExp("^" + _n + "$", "i"), On = "(?:[" + R + "][" + y + h + "]*|[" + y + h + "]+)", wn = new RegExp("[^" + y + h + "]+.*$"), Rn = /[^\d\[\]]/, Dn = /* @__PURE__ */ function() {
2374
+ function e(r) {
2375
+ var t = r.defaultCountry, n = r.defaultCallingCode, d = r.metadata, i = r.onNationalSignificantNumberChange;
2376
+ An(this, e), this.defaultCountry = t, this.defaultCallingCode = n, this.metadata = d, this.onNationalSignificantNumberChange = i;
2377
+ }
2378
+ return Sn(e, [{
2379
+ key: "input",
2380
+ value: function(t, n) {
2381
+ var d = kn(t), i = Xt(d, 2), a = i[0], $ = i[1], o = _(a), u;
2382
+ return $ && (n.digits || (n.startInternationalNumber(), o || (u = !0))), o && this.inputDigits(o, n), {
2383
+ digits: o,
2384
+ justLeadingPlus: u
2385
+ };
2386
+ }
2387
+ /**
2388
+ * Inputs "next" phone number digits.
2389
+ * @param {string} digits
2390
+ * @return {string} [formattedNumber] Formatted national phone number (if it can be formatted at this stage). Returning `undefined` means "don't format the national phone number at this stage".
2391
+ */
2392
+ }, {
2393
+ key: "inputDigits",
2394
+ value: function(t, n) {
2395
+ var d = n.digits, i = d.length < 3 && d.length + t.length >= 3;
2396
+ if (n.appendDigits(t), i && this.extractIddPrefix(n), this.isWaitingForCountryCallingCode(n)) {
2397
+ if (!this.extractCountryCallingCode(n))
2398
+ return;
2399
+ } else
2400
+ n.appendNationalSignificantNumberDigits(t);
2401
+ n.international || this.hasExtractedNationalSignificantNumber || this.extractNationalSignificantNumber(n.getNationalDigits(), function(a) {
2402
+ return n.update(a);
2403
+ });
2404
+ }
2405
+ }, {
2406
+ key: "isWaitingForCountryCallingCode",
2407
+ value: function(t) {
2408
+ var n = t.international, d = t.callingCode;
2409
+ return n && !d;
2410
+ }
2411
+ // Extracts a country calling code from a number
2412
+ // being entered in internatonal format.
2413
+ }, {
2414
+ key: "extractCountryCallingCode",
2415
+ value: function(t) {
2416
+ var n = Q("+" + t.getDigitsWithoutInternationalPrefix(), this.defaultCountry, this.defaultCallingCode, this.metadata.metadata), d = n.countryCallingCode, i = n.number;
2417
+ if (d)
2418
+ return t.setCallingCode(d), t.update({
2419
+ nationalSignificantNumber: i
2420
+ }), !0;
2421
+ }
2422
+ }, {
2423
+ key: "reset",
2424
+ value: function(t) {
2425
+ if (t) {
2426
+ this.hasSelectedNumberingPlan = !0;
2427
+ var n = t._nationalPrefixForParsing();
2428
+ this.couldPossiblyExtractAnotherNationalSignificantNumber = n && Rn.test(n);
2429
+ } else
2430
+ this.hasSelectedNumberingPlan = void 0, this.couldPossiblyExtractAnotherNationalSignificantNumber = void 0;
2431
+ }
2432
+ /**
2433
+ * Extracts a national (significant) number from user input.
2434
+ * Google's library is different in that it only applies `national_prefix_for_parsing`
2435
+ * and doesn't apply `national_prefix_transform_rule` after that.
2436
+ * https://github.com/google/libphonenumber/blob/a3d70b0487875475e6ad659af404943211d26456/java/libphonenumber/src/com/google/i18n/phonenumbers/AsYouTypeFormatter.java#L539
2437
+ * @return {boolean} [extracted]
2438
+ */
2439
+ }, {
2440
+ key: "extractNationalSignificantNumber",
2441
+ value: function(t, n) {
2442
+ if (this.hasSelectedNumberingPlan) {
2443
+ var d = B(t, this.metadata), i = d.nationalPrefix, a = d.nationalNumber, $ = d.carrierCode;
2444
+ if (a !== t)
2445
+ return this.onExtractedNationalNumber(i, $, a, t, n), !0;
2446
+ }
2447
+ }
2448
+ /**
2449
+ * In Google's code this function is called "attempt to extract longer NDD".
2450
+ * "Some national prefixes are a substring of others", they say.
2451
+ * @return {boolean} [result] — Returns `true` if extracting a national prefix produced different results from what they were.
2452
+ */
2453
+ }, {
2454
+ key: "extractAnotherNationalSignificantNumber",
2455
+ value: function(t, n, d) {
2456
+ if (!this.hasExtractedNationalSignificantNumber)
2457
+ return this.extractNationalSignificantNumber(t, d);
2458
+ if (this.couldPossiblyExtractAnotherNationalSignificantNumber) {
2459
+ var i = B(t, this.metadata), a = i.nationalPrefix, $ = i.nationalNumber, o = i.carrierCode;
2460
+ if ($ !== n)
2461
+ return this.onExtractedNationalNumber(a, o, $, t, d), !0;
2462
+ }
2463
+ }
2464
+ }, {
2465
+ key: "onExtractedNationalNumber",
2466
+ value: function(t, n, d, i, a) {
2467
+ var $, o, u = i.lastIndexOf(d);
2468
+ if (u >= 0 && u === i.length - d.length) {
2469
+ o = !0;
2470
+ var l = i.slice(0, u);
2471
+ l !== t && ($ = l);
2472
+ }
2473
+ a({
2474
+ nationalPrefix: t,
2475
+ carrierCode: n,
2476
+ nationalSignificantNumber: d,
2477
+ nationalSignificantNumberMatchesInput: o,
2478
+ complexPrefixBeforeNationalSignificantNumber: $
2479
+ }), this.hasExtractedNationalSignificantNumber = !0, this.onNationalSignificantNumberChange();
2480
+ }
2481
+ }, {
2482
+ key: "reExtractNationalSignificantNumber",
2483
+ value: function(t) {
2484
+ if (this.extractAnotherNationalSignificantNumber(t.getNationalDigits(), t.nationalSignificantNumber, function(n) {
2485
+ return t.update(n);
2486
+ }))
2487
+ return !0;
2488
+ if (this.extractIddPrefix(t))
2489
+ return this.extractCallingCodeAndNationalSignificantNumber(t), !0;
2490
+ if (this.fixMissingPlus(t))
2491
+ return this.extractCallingCodeAndNationalSignificantNumber(t), !0;
2492
+ }
2493
+ }, {
2494
+ key: "extractIddPrefix",
2495
+ value: function(t) {
2496
+ var n = t.international, d = t.IDDPrefix, i = t.digits;
2497
+ if (t.nationalSignificantNumber, !(n || d)) {
2498
+ var a = Rt(i, this.defaultCountry, this.defaultCallingCode, this.metadata.metadata);
2499
+ if (a !== void 0 && a !== i)
2500
+ return t.update({
2501
+ IDDPrefix: i.slice(0, i.length - a.length)
2502
+ }), this.startInternationalNumber(t, {
2503
+ country: void 0,
2504
+ callingCode: void 0
2505
+ }), !0;
2506
+ }
2507
+ }
2508
+ }, {
2509
+ key: "fixMissingPlus",
2510
+ value: function(t) {
2511
+ if (!t.international) {
2512
+ var n = Dt(t.digits, this.defaultCountry, this.defaultCallingCode, this.metadata.metadata), d = n.countryCallingCode;
2513
+ if (n.number, d)
2514
+ return t.update({
2515
+ missingPlus: !0
2516
+ }), this.startInternationalNumber(t, {
2517
+ country: t.country,
2518
+ callingCode: d
2519
+ }), !0;
2520
+ }
2521
+ }
2522
+ }, {
2523
+ key: "startInternationalNumber",
2524
+ value: function(t, n) {
2525
+ var d = n.country, i = n.callingCode;
2526
+ t.startInternationalNumber(d, i), t.nationalSignificantNumber && (t.resetNationalSignificantNumber(), this.onNationalSignificantNumberChange(), this.hasExtractedNationalSignificantNumber = void 0);
2527
+ }
2528
+ }, {
2529
+ key: "extractCallingCodeAndNationalSignificantNumber",
2530
+ value: function(t) {
2531
+ this.extractCountryCallingCode(t) && this.extractNationalSignificantNumber(t.getNationalDigits(), function(n) {
2532
+ return t.update(n);
2533
+ });
2534
+ }
2535
+ }]), e;
2536
+ }();
2537
+ function Mn(e) {
2538
+ var r = e.search(On);
2539
+ if (!(r < 0)) {
2540
+ e = e.slice(r);
2541
+ var t;
2542
+ return e[0] === "+" && (t = !0, e = e.slice(1)), e = e.replace(wn, ""), t && (e = "+" + e), e;
2543
+ }
2544
+ }
2545
+ function Ln(e) {
2546
+ var r = Mn(e) || "";
2547
+ return r[0] === "+" ? [r.slice(1), !0] : [r];
2548
+ }
2549
+ function kn(e) {
2550
+ var r = Ln(e), t = Xt(r, 2), n = t[0], d = t[1];
2551
+ return Tn.test(n) || (n = ""), [n, d];
2552
+ }
2553
+ function Gn(e, r) {
2554
+ return Hn(e) || Un(e, r) || jn(e, r) || Bn();
2555
+ }
2556
+ function Bn() {
2557
+ throw new TypeError(`Invalid attempt to destructure non-iterable instance.
2558
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`);
2559
+ }
2560
+ function jn(e, r) {
2561
+ if (e) {
2562
+ if (typeof e == "string") return St(e, r);
2563
+ var t = Object.prototype.toString.call(e).slice(8, -1);
2564
+ if (t === "Object" && e.constructor && (t = e.constructor.name), t === "Map" || t === "Set") return Array.from(e);
2565
+ if (t === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)) return St(e, r);
2566
+ }
2567
+ }
2568
+ function St(e, r) {
2569
+ (r == null || r > e.length) && (r = e.length);
2570
+ for (var t = 0, n = new Array(r); t < r; t++)
2571
+ n[t] = e[t];
2572
+ return n;
2573
+ }
2574
+ function Un(e, r) {
2575
+ var t = e == null ? null : typeof Symbol < "u" && e[Symbol.iterator] || e["@@iterator"];
2576
+ if (t != null) {
2577
+ var n = [], d = !0, i = !1, a, $;
2578
+ try {
2579
+ for (t = t.call(e); !(d = (a = t.next()).done) && (n.push(a.value), !(r && n.length === r)); d = !0)
2580
+ ;
2581
+ } catch (o) {
2582
+ i = !0, $ = o;
2583
+ } finally {
2584
+ try {
2585
+ !d && t.return != null && t.return();
2586
+ } finally {
2587
+ if (i) throw $;
2588
+ }
2589
+ }
2590
+ return n;
2591
+ }
2592
+ }
2593
+ function Hn(e) {
2594
+ if (Array.isArray(e)) return e;
2595
+ }
2596
+ function Wn(e, r) {
2597
+ if (!(e instanceof r))
2598
+ throw new TypeError("Cannot call a class as a function");
2599
+ }
2600
+ function Vn(e, r) {
2601
+ for (var t = 0; t < r.length; t++) {
2602
+ var n = r[t];
2603
+ n.enumerable = n.enumerable || !1, n.configurable = !0, "value" in n && (n.writable = !0), Object.defineProperty(e, n.key, n);
2604
+ }
2605
+ }
2606
+ function Kn(e, r, t) {
2607
+ return r && Vn(e.prototype, r), Object.defineProperty(e, "prototype", { writable: !1 }), e;
2608
+ }
2609
+ var Xn = /* @__PURE__ */ function() {
2610
+ function e(r, t) {
2611
+ Wn(this, e), this.metadata = new s(t);
2612
+ var n = this.getCountryAndCallingCode(r), d = Gn(n, 2), i = d[0], a = d[1];
2613
+ this.defaultCountry = i, this.defaultCallingCode = a, this.reset();
2614
+ }
2615
+ return Kn(e, [{
2616
+ key: "getCountryAndCallingCode",
2617
+ value: function(t) {
2618
+ var n, d;
2619
+ return t && (P(t) ? (n = t.defaultCountry, d = t.defaultCallingCode) : n = t), n && !this.metadata.hasCountry(n) && (n = void 0), [n, d];
2620
+ }
2621
+ /**
2622
+ * Inputs "next" phone number characters.
2623
+ * @param {string} text
2624
+ * @return {string} Formatted phone number characters that have been input so far.
2625
+ */
2626
+ }, {
2627
+ key: "input",
2628
+ value: function(t) {
2629
+ var n = this.parser.input(t, this.state), d = n.digits, i = n.justLeadingPlus;
2630
+ if (i)
2631
+ this.formattedOutput = "+";
2632
+ else if (d) {
2633
+ this.determineTheCountryIfNeeded(), this.state.nationalSignificantNumber && this.formatter.narrowDownMatchingFormats(this.state);
2634
+ var a;
2635
+ if (this.metadata.hasSelectedNumberingPlan() && (a = this.formatter.format(d, this.state)), a === void 0 && this.parser.reExtractNationalSignificantNumber(this.state)) {
2636
+ this.determineTheCountryIfNeeded();
2637
+ var $ = this.state.getNationalDigits();
2638
+ $ && (a = this.formatter.format($, this.state));
2639
+ }
2640
+ this.formattedOutput = a ? this.getFullNumber(a) : this.getNonFormattedNumber();
2641
+ }
2642
+ return this.formattedOutput;
2643
+ }
2644
+ }, {
2645
+ key: "reset",
2646
+ value: function() {
2647
+ var t = this;
2648
+ return this.state = new Wr({
2649
+ onCountryChange: function(d) {
2650
+ t.country = d;
2651
+ },
2652
+ onCallingCodeChange: function(d, i) {
2653
+ t.metadata.selectNumberingPlan(i, d), t.formatter.reset(t.metadata.numberingPlan, t.state), t.parser.reset(t.metadata.numberingPlan);
2654
+ }
2655
+ }), this.formatter = new pn({
2656
+ state: this.state,
2657
+ metadata: this.metadata
2658
+ }), this.parser = new Dn({
2659
+ defaultCountry: this.defaultCountry,
2660
+ defaultCallingCode: this.defaultCallingCode,
2661
+ metadata: this.metadata,
2662
+ state: this.state,
2663
+ onNationalSignificantNumberChange: function() {
2664
+ t.determineTheCountryIfNeeded(), t.formatter.reset(t.metadata.numberingPlan, t.state);
2665
+ }
2666
+ }), this.state.reset({
2667
+ country: this.defaultCountry,
2668
+ callingCode: this.defaultCallingCode
2669
+ }), this.formattedOutput = "", this;
2670
+ }
2671
+ /**
2672
+ * Returns `true` if the phone number is being input in international format.
2673
+ * In other words, returns `true` if and only if the parsed phone number starts with a `"+"`.
2674
+ * @return {boolean}
2675
+ */
2676
+ }, {
2677
+ key: "isInternational",
2678
+ value: function() {
2679
+ return this.state.international;
2680
+ }
2681
+ /**
2682
+ * Returns the "calling code" part of the phone number when it's being input
2683
+ * in an international format.
2684
+ * If no valid calling code has been entered so far, returns `undefined`.
2685
+ * @return {string} [callingCode]
2686
+ */
2687
+ }, {
2688
+ key: "getCallingCode",
2689
+ value: function() {
2690
+ if (this.isInternational())
2691
+ return this.state.callingCode;
2692
+ }
2693
+ // A legacy alias.
2694
+ }, {
2695
+ key: "getCountryCallingCode",
2696
+ value: function() {
2697
+ return this.getCallingCode();
2698
+ }
2699
+ /**
2700
+ * Returns a two-letter country code of the phone number.
2701
+ * Returns `undefined` for "non-geographic" phone numbering plans.
2702
+ * Returns `undefined` if no phone number has been input yet.
2703
+ * @return {string} [country]
2704
+ */
2705
+ }, {
2706
+ key: "getCountry",
2707
+ value: function() {
2708
+ var t = this.state.digits;
2709
+ if (t)
2710
+ return this._getCountry();
2711
+ }
2712
+ /**
2713
+ * Returns a two-letter country code of the phone number.
2714
+ * Returns `undefined` for "non-geographic" phone numbering plans.
2715
+ * @return {string} [country]
2716
+ */
2717
+ }, {
2718
+ key: "_getCountry",
2719
+ value: function() {
2720
+ var t = this.state.country;
2721
+ return t;
2722
+ }
2723
+ }, {
2724
+ key: "determineTheCountryIfNeeded",
2725
+ value: function() {
2726
+ (!this.state.country || this.isCountryCallingCodeAmbiguous()) && this.determineTheCountry();
2727
+ }
2728
+ // Prepends `+CountryCode ` in case of an international phone number
2729
+ }, {
2730
+ key: "getFullNumber",
2731
+ value: function(t) {
2732
+ var n = this;
2733
+ if (this.isInternational()) {
2734
+ var d = function($) {
2735
+ return n.formatter.getInternationalPrefixBeforeCountryCallingCode(n.state, {
2736
+ spacing: !!$
2737
+ }) + $;
2738
+ }, i = this.state.callingCode;
2739
+ return d(i ? t ? "".concat(i, " ").concat(t) : i : "".concat(this.state.getDigitsWithoutInternationalPrefix()));
2740
+ }
2741
+ return t;
2742
+ }
2743
+ }, {
2744
+ key: "getNonFormattedNationalNumberWithPrefix",
2745
+ value: function() {
2746
+ var t = this.state, n = t.nationalSignificantNumber, d = t.complexPrefixBeforeNationalSignificantNumber, i = t.nationalPrefix, a = n, $ = d || i;
2747
+ return $ && (a = $ + a), a;
2748
+ }
2749
+ }, {
2750
+ key: "getNonFormattedNumber",
2751
+ value: function() {
2752
+ var t = this.state.nationalSignificantNumberMatchesInput;
2753
+ return this.getFullNumber(t ? this.getNonFormattedNationalNumberWithPrefix() : this.state.getNationalDigits());
2754
+ }
2755
+ }, {
2756
+ key: "getNonFormattedTemplate",
2757
+ value: function() {
2758
+ var t = this.getNonFormattedNumber();
2759
+ if (t)
2760
+ return t.replace(/[\+\d]/g, m);
2761
+ }
2762
+ }, {
2763
+ key: "isCountryCallingCodeAmbiguous",
2764
+ value: function() {
2765
+ var t = this.state.callingCode, n = this.metadata.getCountryCodesForCallingCode(t);
2766
+ return n && n.length > 1;
2767
+ }
2768
+ // Determines the country of the phone number
2769
+ // entered so far based on the country phone code
2770
+ // and the national phone number.
2771
+ }, {
2772
+ key: "determineTheCountry",
2773
+ value: function() {
2774
+ this.state.setCountry(Vt(this.isInternational() ? this.state.callingCode : this.defaultCallingCode, {
2775
+ nationalNumber: this.state.nationalSignificantNumber,
2776
+ defaultCountry: this.defaultCountry,
2777
+ metadata: this.metadata
2778
+ }));
2779
+ }
2780
+ /**
2781
+ * Returns a E.164 phone number value for the user's input.
2782
+ *
2783
+ * For example, for country `"US"` and input `"(222) 333-4444"`
2784
+ * it will return `"+12223334444"`.
2785
+ *
2786
+ * For international phone number input, it will also auto-correct
2787
+ * some minor errors such as using a national prefix when writing
2788
+ * an international phone number. For example, if the user inputs
2789
+ * `"+44 0 7400 000000"` then it will return an auto-corrected
2790
+ * `"+447400000000"` phone number value.
2791
+ *
2792
+ * Will return `undefined` if no digits have been input,
2793
+ * or when inputting a phone number in national format and no
2794
+ * default country or default "country calling code" have been set.
2795
+ *
2796
+ * @return {string} [value]
2797
+ */
2798
+ }, {
2799
+ key: "getNumberValue",
2800
+ value: function() {
2801
+ var t = this.state, n = t.digits, d = t.callingCode, i = t.country, a = t.nationalSignificantNumber;
2802
+ if (n) {
2803
+ if (this.isInternational())
2804
+ return d ? "+" + d + a : "+" + n;
2805
+ if (i || d) {
2806
+ var $ = i ? this.metadata.countryCallingCode() : d;
2807
+ return "+" + $ + a;
2808
+ }
2809
+ }
2810
+ }
2811
+ /**
2812
+ * Returns an instance of `PhoneNumber` class.
2813
+ * Will return `undefined` if no national (significant) number
2814
+ * digits have been entered so far, or if no `defaultCountry` has been
2815
+ * set and the user enters a phone number not in international format.
2816
+ */
2817
+ }, {
2818
+ key: "getNumber",
2819
+ value: function() {
2820
+ var t = this.state, n = t.nationalSignificantNumber, d = t.carrierCode, i = t.callingCode, a = this._getCountry();
2821
+ if (n && !(!a && !i)) {
2822
+ if (a && a === this.defaultCountry) {
2823
+ var $ = new s(this.metadata.metadata);
2824
+ $.selectNumberingPlan(a);
2825
+ var o = $.numberingPlan.callingCode(), u = this.metadata.getCountryCodesForCallingCode(o);
2826
+ if (u.length > 1) {
2827
+ var l = Wt(n, {
2828
+ countries: u,
2829
+ defaultCountry: this.defaultCountry,
2830
+ metadata: this.metadata.metadata
2831
+ });
2832
+ l && (a = l);
2833
+ }
2834
+ }
2835
+ var c = new Bt(a || i, n, this.metadata.metadata);
2836
+ return d && (c.carrierCode = d), c;
2837
+ }
2838
+ }
2839
+ /**
2840
+ * Returns `true` if the phone number is "possible".
2841
+ * Is just a shortcut for `PhoneNumber.isPossible()`.
2842
+ * @return {boolean}
2843
+ */
2844
+ }, {
2845
+ key: "isPossible",
2846
+ value: function() {
2847
+ var t = this.getNumber();
2848
+ return t ? t.isPossible() : !1;
2849
+ }
2850
+ /**
2851
+ * Returns `true` if the phone number is "valid".
2852
+ * Is just a shortcut for `PhoneNumber.isValid()`.
2853
+ * @return {boolean}
2854
+ */
2855
+ }, {
2856
+ key: "isValid",
2857
+ value: function() {
2858
+ var t = this.getNumber();
2859
+ return t ? t.isValid() : !1;
2860
+ }
2861
+ /**
2862
+ * @deprecated
2863
+ * This method is used in `react-phone-number-input/source/input-control.js`
2864
+ * in versions before `3.0.16`.
2865
+ */
2866
+ }, {
2867
+ key: "getNationalNumber",
2868
+ value: function() {
2869
+ return this.state.nationalSignificantNumber;
2870
+ }
2871
+ /**
2872
+ * Returns the phone number characters entered by the user.
2873
+ * @return {string}
2874
+ */
2875
+ }, {
2876
+ key: "getChars",
2877
+ value: function() {
2878
+ return (this.state.international ? "+" : "") + this.state.digits;
2879
+ }
2880
+ /**
2881
+ * Returns the template for the formatted phone number.
2882
+ * @return {string}
2883
+ */
2884
+ }, {
2885
+ key: "getTemplate",
2886
+ value: function() {
2887
+ return this.formatter.getTemplate(this.state) || this.getNonFormattedTemplate() || "";
2888
+ }
2889
+ }]), e;
2890
+ }();
2891
+ function Yn(e, r, t) {
2892
+ return t || (t = r, r = void 0), new Xn(r, t).input(e);
2893
+ }
2894
+ function Zn() {
2895
+ return _t(Br, arguments);
2896
+ }
2897
+ function Jn() {
2898
+ return _t(Yn, arguments);
2899
+ }
2900
+ const Qn = (e) => {
2901
+ try {
2902
+ const r = Zn(e), t = r?.formatNational();
2903
+ return `+${r?.countryCallingCode} ${t}`;
2904
+ } catch {
2905
+ return Jn(e);
2906
+ }
2907
+ };
2908
+ export {
2909
+ Qn as formatPhoneNumber
2910
+ };