@coinbase/cdp-react 0.0.18 → 0.0.19

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 (133) hide show
  1. package/dist/assets/Button.css +1 -1
  2. package/dist/assets/EmailForm.css +1 -0
  3. package/dist/assets/Error.css +1 -1
  4. package/dist/assets/Field.css +1 -1
  5. package/dist/assets/FlowEmailOTP.css +1 -0
  6. package/dist/assets/FlowPhoneNumberOTP.css +1 -0
  7. package/dist/assets/Input.css +1 -1
  8. package/dist/assets/Label.css +1 -0
  9. package/dist/assets/OTP.css +1 -1
  10. package/dist/assets/OTPForm.css +1 -0
  11. package/dist/assets/PhoneNumberForm.css +1 -0
  12. package/dist/assets/PhoneNumberInput.css +1 -0
  13. package/dist/assets/SignIn.css +1 -1
  14. package/dist/assets/SignInAuthMethodButtons.css +1 -0
  15. package/dist/assets/SignInBackButton.css +1 -0
  16. package/dist/assets/SignInCredentials.css +1 -0
  17. package/dist/assets/SignInDescription.css +1 -1
  18. package/dist/assets/SignInFooter.css +1 -0
  19. package/dist/assets/SignInForm.css +1 -1
  20. package/dist/assets/SignInImage.css +1 -1
  21. package/dist/assets/SignInModal.css +1 -1
  22. package/dist/assets/SignInTitle.css +1 -1
  23. package/dist/assets/SuccessMessage.css +1 -0
  24. package/dist/assets/SwitchFadeTransition.css +1 -0
  25. package/dist/assets/SwitchSlideTransition.css +1 -0
  26. package/dist/assets/SwitchTransition.css +1 -0
  27. package/dist/assets/ThemeProvider.css +1 -1
  28. package/dist/chunks/index.BzllgVaP.js +12 -0
  29. package/dist/components/AuthButton/index.js +1 -1
  30. package/dist/components/Button/index.d.ts +2 -1
  31. package/dist/components/Button/index.js +47 -22
  32. package/dist/components/CDPReactProvider/index.d.ts +3 -0
  33. package/dist/components/CDPReactProvider/index.js +20 -13
  34. package/dist/components/EmailForm/index.d.ts +11 -0
  35. package/dist/components/EmailForm/index.js +56 -0
  36. package/dist/components/Error/index.d.ts +2 -2
  37. package/dist/components/Error/index.js +11 -11
  38. package/dist/components/Field/index.d.ts +2 -1
  39. package/dist/components/Field/index.js +20 -18
  40. package/dist/components/FlowEmailOTP/index.d.ts +18 -0
  41. package/dist/components/FlowEmailOTP/index.js +70 -0
  42. package/dist/components/FlowPhoneNumberOTP/index.d.ts +18 -0
  43. package/dist/components/FlowPhoneNumberOTP/index.js +75 -0
  44. package/dist/components/Label/index.d.ts +7 -0
  45. package/dist/components/Label/index.js +13 -0
  46. package/dist/components/OTP/index.d.ts +3 -0
  47. package/dist/components/OTP/index.js +48 -33
  48. package/dist/components/OTPForm/index.d.ts +16 -0
  49. package/dist/components/OTPForm/index.js +76 -0
  50. package/dist/components/PhoneNumberForm/index.d.ts +14 -0
  51. package/dist/components/PhoneNumberForm/index.js +68 -0
  52. package/dist/components/PhoneNumberInput/PhoneNumberMetadata.d.ts +2 -0
  53. package/dist/components/PhoneNumberInput/PhoneNumberMetadata.js +5 -0
  54. package/dist/components/PhoneNumberInput/index.d.ts +10 -0
  55. package/dist/components/PhoneNumberInput/index.js +76 -0
  56. package/dist/components/PhoneNumberInput/maskOverride.d.ts +8 -0
  57. package/dist/components/PhoneNumberInput/maskOverride.js +61 -0
  58. package/dist/components/PhoneNumberInput/usePhoneNumberFormatter.d.ts +7 -0
  59. package/dist/components/PhoneNumberInput/usePhoneNumberFormatter.js +52 -0
  60. package/dist/components/ServerError/index.js +4 -4
  61. package/dist/components/SignIn/SignInAuthMethodButtons.d.ts +13 -0
  62. package/dist/components/SignIn/SignInAuthMethodButtons.js +57 -0
  63. package/dist/components/SignIn/SignInBackButton.d.ts +9 -0
  64. package/dist/components/SignIn/SignInBackButton.js +38 -0
  65. package/dist/components/SignIn/SignInCredentials.d.ts +2 -0
  66. package/dist/components/SignIn/SignInCredentials.js +8 -0
  67. package/dist/components/SignIn/SignInDescription.d.ts +4 -3
  68. package/dist/components/SignIn/SignInDescription.js +16 -23
  69. package/dist/components/SignIn/SignInFooter.d.ts +2 -0
  70. package/dist/components/SignIn/SignInFooter.js +18 -0
  71. package/dist/components/SignIn/SignInForm.d.ts +12 -4
  72. package/dist/components/SignIn/SignInForm.js +25 -196
  73. package/dist/components/SignIn/SignInImage.d.ts +2 -2
  74. package/dist/components/SignIn/SignInImage.js +11 -14
  75. package/dist/components/SignIn/SignInProvider.d.ts +1 -1
  76. package/dist/components/SignIn/SignInProvider.js +24 -16
  77. package/dist/components/SignIn/SignInTitle.d.ts +4 -3
  78. package/dist/components/SignIn/SignInTitle.js +18 -13
  79. package/dist/components/SignIn/flows/SignInWithEmail.d.ts +5 -0
  80. package/dist/components/SignIn/flows/SignInWithEmail.js +71 -0
  81. package/dist/components/SignIn/flows/SignInWithSms.d.ts +5 -0
  82. package/dist/components/SignIn/flows/SignInWithSms.js +2994 -0
  83. package/dist/components/SignIn/hooks/useEmailForm.d.ts +13 -0
  84. package/dist/components/SignIn/hooks/useEmailForm.js +42 -0
  85. package/dist/components/SignIn/hooks/useOTPForm.d.ts +16 -0
  86. package/dist/components/SignIn/hooks/useOTPForm.js +59 -0
  87. package/dist/components/SignIn/hooks/usePhoneNumberForm.d.ts +13 -0
  88. package/dist/components/SignIn/hooks/usePhoneNumberForm.js +42 -0
  89. package/dist/components/SignIn/index.d.ts +5 -2
  90. package/dist/components/SignIn/index.js +42 -24
  91. package/dist/components/SignIn/types.d.ts +106 -0
  92. package/dist/components/SignIn/types.js +3 -0
  93. package/dist/components/SignIn/useSignInReducer.d.ts +1 -57
  94. package/dist/components/SignIn/useSignInReducer.js +62 -20
  95. package/dist/components/SignInModal/index.d.ts +2 -2
  96. package/dist/components/SignInModal/index.js +62 -43
  97. package/dist/components/SuccessMessage/index.d.ts +7 -0
  98. package/dist/components/SuccessMessage/index.js +16 -0
  99. package/dist/components/SwitchFadeTransition/index.d.ts +5 -0
  100. package/dist/components/SwitchFadeTransition/index.js +24 -0
  101. package/dist/components/SwitchSlideTransition/index.d.ts +7 -0
  102. package/dist/components/SwitchSlideTransition/index.js +27 -0
  103. package/dist/components/SwitchTransition/index.d.ts +25 -0
  104. package/dist/components/SwitchTransition/index.js +155 -0
  105. package/dist/data/countries.d.ts +12 -0
  106. package/dist/data/countries.js +25 -0
  107. package/dist/data/countryNames.d.ts +1 -0
  108. package/dist/data/countryNames.js +6 -0
  109. package/dist/hooks/usePhoneNumberValidators.d.ts +14 -0
  110. package/dist/hooks/usePhoneNumberValidators.js +36 -0
  111. package/dist/hooks/useTimer.d.ts +5 -0
  112. package/dist/hooks/useTimer.js +24 -0
  113. package/dist/icons/IconArrowLeft.d.ts +2 -0
  114. package/dist/icons/IconArrowLeft.js +14 -0
  115. package/dist/icons/IconCheckCircle.js +2 -3
  116. package/dist/icons/IconCoinbaseWordmark.js +5 -5
  117. package/dist/icons/IconEnvelope.d.ts +2 -0
  118. package/dist/icons/IconEnvelope.js +7 -0
  119. package/dist/icons/IconExclamationCircle.js +3 -4
  120. package/dist/icons/IconPhone.d.ts +2 -0
  121. package/dist/icons/IconPhone.js +7 -0
  122. package/dist/icons/IconXMark.js +6 -5
  123. package/dist/icons/index.d.ts +3 -0
  124. package/dist/icons/index.js +14 -8
  125. package/dist/index.js +66 -53
  126. package/dist/theme/theme.d.ts +11 -2
  127. package/dist/theme/tokens.d.ts +30 -6
  128. package/dist/theme/tokens.js +7 -3
  129. package/dist/utils/parseValuesFromPhoneNumber.d.ts +6 -0
  130. package/dist/utils/parseValuesFromPhoneNumber.js +16 -0
  131. package/dist/utils/validatePhoneNumber.d.ts +1 -0
  132. package/dist/utils/validatePhoneNumber.js +1 -0
  133. package/package.json +11 -7
@@ -0,0 +1,2994 @@
1
+ import { jsx as Gt, jsxs as U, Fragment as H } from "react/jsx-runtime";
2
+ import { useSignInWithSms as fe, useVerifySmsOTP as ce } from "@coinbase/cdp-hooks";
3
+ import "libphonenumber-js";
4
+ import { useRef as it, useState as at, useEffect as he, useLayoutEffect as ge, useMemo as me } from "react";
5
+ import { FlowPhoneNumberOTP as ye } from "../../FlowPhoneNumberOTP/index.js";
6
+ import "react-transition-state";
7
+ import { parseValuesFromPhoneNumber as ve } from "../../../utils/parseValuesFromPhoneNumber.js";
8
+ import { useOTPForm as Ne } from "../hooks/useOTPForm.js";
9
+ import { usePhoneNumberForm as be } from "../hooks/usePhoneNumberForm.js";
10
+ import { SignInCredentials as pe } from "../SignInCredentials.js";
11
+ import { useSignInContext as Bt } from "../SignInProvider.js";
12
+ import "../../CDPReactProvider/index.js";
13
+ const Ce = { 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}"]]] } };
14
+ function jt(e, r) {
15
+ var t = Array.prototype.slice.call(r);
16
+ return t.push(Ce), e.apply(this, t);
17
+ }
18
+ function $t(e, r) {
19
+ e = e.split("-"), r = r.split("-");
20
+ for (var t = e[0].split("."), n = r[0].split("."), d = 0; d < 3; d++) {
21
+ var i = Number(t[d]), a = Number(n[d]);
22
+ if (i > a) return 1;
23
+ if (a > i) return -1;
24
+ if (!isNaN(i) && isNaN(a)) return 1;
25
+ if (isNaN(i) && !isNaN(a)) return -1;
26
+ }
27
+ 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;
28
+ }
29
+ var Pe = {}.constructor;
30
+ function x(e) {
31
+ return e != null && e.constructor === Pe;
32
+ }
33
+ function W(e) {
34
+ "@babel/helpers - typeof";
35
+ return W = typeof Symbol == "function" && typeof Symbol.iterator == "symbol" ? function(r) {
36
+ return typeof r;
37
+ } : function(r) {
38
+ return r && typeof Symbol == "function" && r.constructor === Symbol && r !== Symbol.prototype ? "symbol" : typeof r;
39
+ }, W(e);
40
+ }
41
+ function O(e, r) {
42
+ if (!(e instanceof r))
43
+ throw new TypeError("Cannot call a class as a function");
44
+ }
45
+ function xe(e, r) {
46
+ for (var t = 0; t < r.length; t++) {
47
+ var n = r[t];
48
+ n.enumerable = n.enumerable || !1, n.configurable = !0, "value" in n && (n.writable = !0), Object.defineProperty(e, n.key, n);
49
+ }
50
+ }
51
+ function w(e, r, t) {
52
+ return r && xe(e.prototype, r), Object.defineProperty(e, "prototype", { writable: !1 }), e;
53
+ }
54
+ var Ee = "1.2.0", Se = "1.7.35", ot = " ext. ", Fe = /^\d+$/, h = /* @__PURE__ */ function() {
55
+ function e(r) {
56
+ O(this, e), Ut(r), this.metadata = r, Ht.call(this, r);
57
+ }
58
+ return w(e, [{
59
+ key: "getCountries",
60
+ value: function() {
61
+ return Object.keys(this.metadata.countries).filter(function(t) {
62
+ return t !== "001";
63
+ });
64
+ }
65
+ }, {
66
+ key: "getCountryMetadata",
67
+ value: function(t) {
68
+ return this.metadata.countries[t];
69
+ }
70
+ }, {
71
+ key: "nonGeographic",
72
+ value: function() {
73
+ if (!(this.v1 || this.v2 || this.v3))
74
+ return this.metadata.nonGeographic || this.metadata.nonGeographical;
75
+ }
76
+ }, {
77
+ key: "hasCountry",
78
+ value: function(t) {
79
+ return this.getCountryMetadata(t) !== void 0;
80
+ }
81
+ }, {
82
+ key: "hasCallingCode",
83
+ value: function(t) {
84
+ if (this.getCountryCodesForCallingCode(t))
85
+ return !0;
86
+ if (this.nonGeographic()) {
87
+ if (this.nonGeographic()[t])
88
+ return !0;
89
+ } else {
90
+ var n = this.countryCallingCodes()[t];
91
+ if (n && n.length === 1 && n[0] === "001")
92
+ return !0;
93
+ }
94
+ }
95
+ }, {
96
+ key: "isNonGeographicCallingCode",
97
+ value: function(t) {
98
+ return this.nonGeographic() ? !!this.nonGeographic()[t] : !this.getCountryCodesForCallingCode(t);
99
+ }
100
+ // Deprecated.
101
+ }, {
102
+ key: "country",
103
+ value: function(t) {
104
+ return this.selectNumberingPlan(t);
105
+ }
106
+ }, {
107
+ key: "selectNumberingPlan",
108
+ value: function(t, n) {
109
+ if (t && Fe.test(t) && (n = t, t = null), t && t !== "001") {
110
+ if (!this.hasCountry(t))
111
+ throw new Error("Unknown country: ".concat(t));
112
+ this.numberingPlan = new ut(this.getCountryMetadata(t), this);
113
+ } else if (n) {
114
+ if (!this.hasCallingCode(n))
115
+ throw new Error("Unknown calling code: ".concat(n));
116
+ this.numberingPlan = new ut(this.getNumberingPlanMetadata(n), this);
117
+ } else
118
+ this.numberingPlan = void 0;
119
+ return this;
120
+ }
121
+ }, {
122
+ key: "getCountryCodesForCallingCode",
123
+ value: function(t) {
124
+ var n = this.countryCallingCodes()[t];
125
+ if (n)
126
+ return n.length === 1 && n[0].length === 3 ? void 0 : n;
127
+ }
128
+ }, {
129
+ key: "getCountryCodeForCallingCode",
130
+ value: function(t) {
131
+ var n = this.getCountryCodesForCallingCode(t);
132
+ if (n)
133
+ return n[0];
134
+ }
135
+ }, {
136
+ key: "getNumberingPlanMetadata",
137
+ value: function(t) {
138
+ var n = this.getCountryCodeForCallingCode(t);
139
+ if (n)
140
+ return this.getCountryMetadata(n);
141
+ if (this.nonGeographic()) {
142
+ var d = this.nonGeographic()[t];
143
+ if (d)
144
+ return d;
145
+ } else {
146
+ var i = this.countryCallingCodes()[t];
147
+ if (i && i.length === 1 && i[0] === "001")
148
+ return this.metadata.countries["001"];
149
+ }
150
+ }
151
+ // Deprecated.
152
+ }, {
153
+ key: "countryCallingCode",
154
+ value: function() {
155
+ return this.numberingPlan.callingCode();
156
+ }
157
+ // Deprecated.
158
+ }, {
159
+ key: "IDDPrefix",
160
+ value: function() {
161
+ return this.numberingPlan.IDDPrefix();
162
+ }
163
+ // Deprecated.
164
+ }, {
165
+ key: "defaultIDDPrefix",
166
+ value: function() {
167
+ return this.numberingPlan.defaultIDDPrefix();
168
+ }
169
+ // Deprecated.
170
+ }, {
171
+ key: "nationalNumberPattern",
172
+ value: function() {
173
+ return this.numberingPlan.nationalNumberPattern();
174
+ }
175
+ // Deprecated.
176
+ }, {
177
+ key: "possibleLengths",
178
+ value: function() {
179
+ return this.numberingPlan.possibleLengths();
180
+ }
181
+ // Deprecated.
182
+ }, {
183
+ key: "formats",
184
+ value: function() {
185
+ return this.numberingPlan.formats();
186
+ }
187
+ // Deprecated.
188
+ }, {
189
+ key: "nationalPrefixForParsing",
190
+ value: function() {
191
+ return this.numberingPlan.nationalPrefixForParsing();
192
+ }
193
+ // Deprecated.
194
+ }, {
195
+ key: "nationalPrefixTransformRule",
196
+ value: function() {
197
+ return this.numberingPlan.nationalPrefixTransformRule();
198
+ }
199
+ // Deprecated.
200
+ }, {
201
+ key: "leadingDigits",
202
+ value: function() {
203
+ return this.numberingPlan.leadingDigits();
204
+ }
205
+ // Deprecated.
206
+ }, {
207
+ key: "hasTypes",
208
+ value: function() {
209
+ return this.numberingPlan.hasTypes();
210
+ }
211
+ // Deprecated.
212
+ }, {
213
+ key: "type",
214
+ value: function(t) {
215
+ return this.numberingPlan.type(t);
216
+ }
217
+ // Deprecated.
218
+ }, {
219
+ key: "ext",
220
+ value: function() {
221
+ return this.numberingPlan.ext();
222
+ }
223
+ }, {
224
+ key: "countryCallingCodes",
225
+ value: function() {
226
+ return this.v1 ? this.metadata.country_phone_code_to_countries : this.metadata.country_calling_codes;
227
+ }
228
+ // Deprecated.
229
+ }, {
230
+ key: "chooseCountryByCountryCallingCode",
231
+ value: function(t) {
232
+ return this.selectNumberingPlan(t);
233
+ }
234
+ }, {
235
+ key: "hasSelectedNumberingPlan",
236
+ value: function() {
237
+ return this.numberingPlan !== void 0;
238
+ }
239
+ }]), e;
240
+ }(), ut = /* @__PURE__ */ function() {
241
+ function e(r, t) {
242
+ O(this, e), this.globalMetadataObject = t, this.metadata = r, Ht.call(this, t.metadata);
243
+ }
244
+ return w(e, [{
245
+ key: "callingCode",
246
+ value: function() {
247
+ return this.metadata[0];
248
+ }
249
+ // Formatting information for regions which share
250
+ // a country calling code is contained by only one region
251
+ // for performance reasons. For example, for NANPA region
252
+ // ("North American Numbering Plan Administration",
253
+ // which includes USA, Canada, Cayman Islands, Bahamas, etc)
254
+ // it will be contained in the metadata for `US`.
255
+ }, {
256
+ key: "getDefaultCountryMetadataForRegion",
257
+ value: function() {
258
+ return this.globalMetadataObject.getNumberingPlanMetadata(this.callingCode());
259
+ }
260
+ // Is always present.
261
+ }, {
262
+ key: "IDDPrefix",
263
+ value: function() {
264
+ if (!(this.v1 || this.v2))
265
+ return this.metadata[1];
266
+ }
267
+ // Is only present when a country supports multiple IDD prefixes.
268
+ }, {
269
+ key: "defaultIDDPrefix",
270
+ value: function() {
271
+ if (!(this.v1 || this.v2))
272
+ return this.metadata[12];
273
+ }
274
+ }, {
275
+ key: "nationalNumberPattern",
276
+ value: function() {
277
+ return this.v1 || this.v2 ? this.metadata[1] : this.metadata[2];
278
+ }
279
+ // "possible length" data is always present in Google's metadata.
280
+ }, {
281
+ key: "possibleLengths",
282
+ value: function() {
283
+ if (!this.v1)
284
+ return this.metadata[this.v2 ? 2 : 3];
285
+ }
286
+ }, {
287
+ key: "_getFormats",
288
+ value: function(t) {
289
+ return t[this.v1 ? 2 : this.v2 ? 3 : 4];
290
+ }
291
+ // For countries of the same region (e.g. NANPA)
292
+ // formats are all stored in the "main" country for that region.
293
+ // E.g. "RU" and "KZ", "US" and "CA".
294
+ }, {
295
+ key: "formats",
296
+ value: function() {
297
+ var t = this, n = this._getFormats(this.metadata) || this._getFormats(this.getDefaultCountryMetadataForRegion()) || [];
298
+ return n.map(function(d) {
299
+ return new Ie(d, t);
300
+ });
301
+ }
302
+ }, {
303
+ key: "nationalPrefix",
304
+ value: function() {
305
+ return this.metadata[this.v1 ? 3 : this.v2 ? 4 : 5];
306
+ }
307
+ }, {
308
+ key: "_getNationalPrefixFormattingRule",
309
+ value: function(t) {
310
+ return t[this.v1 ? 4 : this.v2 ? 5 : 6];
311
+ }
312
+ // For countries of the same region (e.g. NANPA)
313
+ // national prefix formatting rule is stored in the "main" country for that region.
314
+ // E.g. "RU" and "KZ", "US" and "CA".
315
+ }, {
316
+ key: "nationalPrefixFormattingRule",
317
+ value: function() {
318
+ return this._getNationalPrefixFormattingRule(this.metadata) || this._getNationalPrefixFormattingRule(this.getDefaultCountryMetadataForRegion());
319
+ }
320
+ }, {
321
+ key: "_nationalPrefixForParsing",
322
+ value: function() {
323
+ return this.metadata[this.v1 ? 5 : this.v2 ? 6 : 7];
324
+ }
325
+ }, {
326
+ key: "nationalPrefixForParsing",
327
+ value: function() {
328
+ return this._nationalPrefixForParsing() || this.nationalPrefix();
329
+ }
330
+ }, {
331
+ key: "nationalPrefixTransformRule",
332
+ value: function() {
333
+ return this.metadata[this.v1 ? 6 : this.v2 ? 7 : 8];
334
+ }
335
+ }, {
336
+ key: "_getNationalPrefixIsOptionalWhenFormatting",
337
+ value: function() {
338
+ return !!this.metadata[this.v1 ? 7 : this.v2 ? 8 : 9];
339
+ }
340
+ // For countries of the same region (e.g. NANPA)
341
+ // "national prefix is optional when formatting" flag is
342
+ // stored in the "main" country for that region.
343
+ // E.g. "RU" and "KZ", "US" and "CA".
344
+ }, {
345
+ key: "nationalPrefixIsOptionalWhenFormattingInNationalFormat",
346
+ value: function() {
347
+ return this._getNationalPrefixIsOptionalWhenFormatting(this.metadata) || this._getNationalPrefixIsOptionalWhenFormatting(this.getDefaultCountryMetadataForRegion());
348
+ }
349
+ }, {
350
+ key: "leadingDigits",
351
+ value: function() {
352
+ return this.metadata[this.v1 ? 8 : this.v2 ? 9 : 10];
353
+ }
354
+ }, {
355
+ key: "types",
356
+ value: function() {
357
+ return this.metadata[this.v1 ? 9 : this.v2 ? 10 : 11];
358
+ }
359
+ }, {
360
+ key: "hasTypes",
361
+ value: function() {
362
+ return this.types() && this.types().length === 0 ? !1 : !!this.types();
363
+ }
364
+ }, {
365
+ key: "type",
366
+ value: function(t) {
367
+ if (this.hasTypes() && lt(this.types(), t))
368
+ return new Te(lt(this.types(), t), this);
369
+ }
370
+ }, {
371
+ key: "ext",
372
+ value: function() {
373
+ return this.v1 || this.v2 ? ot : this.metadata[13] || ot;
374
+ }
375
+ }]), e;
376
+ }(), Ie = /* @__PURE__ */ function() {
377
+ function e(r, t) {
378
+ O(this, e), this._format = r, this.metadata = t;
379
+ }
380
+ return w(e, [{
381
+ key: "pattern",
382
+ value: function() {
383
+ return this._format[0];
384
+ }
385
+ }, {
386
+ key: "format",
387
+ value: function() {
388
+ return this._format[1];
389
+ }
390
+ }, {
391
+ key: "leadingDigitsPatterns",
392
+ value: function() {
393
+ return this._format[2] || [];
394
+ }
395
+ }, {
396
+ key: "nationalPrefixFormattingRule",
397
+ value: function() {
398
+ return this._format[3] || this.metadata.nationalPrefixFormattingRule();
399
+ }
400
+ }, {
401
+ key: "nationalPrefixIsOptionalWhenFormattingInNationalFormat",
402
+ value: function() {
403
+ return !!this._format[4] || this.metadata.nationalPrefixIsOptionalWhenFormattingInNationalFormat();
404
+ }
405
+ }, {
406
+ key: "nationalPrefixIsMandatoryWhenFormattingInNationalFormat",
407
+ value: function() {
408
+ return this.usesNationalPrefix() && !this.nationalPrefixIsOptionalWhenFormattingInNationalFormat();
409
+ }
410
+ // Checks whether national prefix formatting rule contains national prefix.
411
+ }, {
412
+ key: "usesNationalPrefix",
413
+ value: function() {
414
+ return !!(this.nationalPrefixFormattingRule() && // Check that national prefix formatting rule is not a "dummy" one.
415
+ !Ae.test(this.nationalPrefixFormattingRule()));
416
+ }
417
+ }, {
418
+ key: "internationalFormat",
419
+ value: function() {
420
+ return this._format[5] || this.format();
421
+ }
422
+ }]), e;
423
+ }(), Ae = /^\(?\$1\)?$/, Te = /* @__PURE__ */ function() {
424
+ function e(r, t) {
425
+ O(this, e), this.type = r, this.metadata = t;
426
+ }
427
+ return w(e, [{
428
+ key: "pattern",
429
+ value: function() {
430
+ return this.metadata.v1 ? this.type : this.type[0];
431
+ }
432
+ }, {
433
+ key: "possibleLengths",
434
+ value: function() {
435
+ if (!this.metadata.v1)
436
+ return this.type[1] || this.metadata.possibleLengths();
437
+ }
438
+ }]), e;
439
+ }();
440
+ function lt(e, r) {
441
+ switch (r) {
442
+ case "FIXED_LINE":
443
+ return e[0];
444
+ case "MOBILE":
445
+ return e[1];
446
+ case "TOLL_FREE":
447
+ return e[2];
448
+ case "PREMIUM_RATE":
449
+ return e[3];
450
+ case "PERSONAL_NUMBER":
451
+ return e[4];
452
+ case "VOICEMAIL":
453
+ return e[5];
454
+ case "UAN":
455
+ return e[6];
456
+ case "PAGER":
457
+ return e[7];
458
+ case "VOIP":
459
+ return e[8];
460
+ case "SHARED_COST":
461
+ return e[9];
462
+ }
463
+ }
464
+ function Ut(e) {
465
+ if (!e)
466
+ throw new Error("[libphonenumber-js] `metadata` argument not passed. Check your arguments.");
467
+ if (!x(e) || !x(e.countries))
468
+ 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(x(e) ? "an object of shape: { " + Object.keys(e).join(", ") + " }" : "a " + _e(e) + ": " + e, "."));
469
+ }
470
+ var _e = function(r) {
471
+ return W(r);
472
+ };
473
+ function z(e, r) {
474
+ if (r = new h(r), r.hasCountry(e))
475
+ return r.country(e).countryCallingCode();
476
+ throw new Error("Unknown country: ".concat(e));
477
+ }
478
+ function Ht(e) {
479
+ var r = e.version;
480
+ typeof r == "number" ? (this.v1 = r === 1, this.v2 = r === 2, this.v3 = r === 3, this.v4 = r === 4) : r ? $t(r, Ee) === -1 ? this.v2 = !0 : $t(r, Se) === -1 ? this.v3 = !0 : this.v4 = !0 : this.v1 = !0;
481
+ }
482
+ function R(e, r) {
483
+ return Oe(e, void 0, r);
484
+ }
485
+ function Oe(e, r, t) {
486
+ var n = t.type(r), d = n && n.possibleLengths() || t.possibleLengths();
487
+ if (!d)
488
+ return "IS_POSSIBLE";
489
+ var i = e.length, a = d[0];
490
+ 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";
491
+ }
492
+ function we(e, r, t) {
493
+ if (r === void 0 && (r = {}), t = new h(t), r.v2) {
494
+ if (!e.countryCallingCode)
495
+ throw new Error("Invalid phone number object passed");
496
+ t.selectNumberingPlan(e.countryCallingCode);
497
+ } else {
498
+ if (!e.phone)
499
+ return !1;
500
+ if (e.country) {
501
+ if (!t.hasCountry(e.country))
502
+ throw new Error("Unknown country: ".concat(e.country));
503
+ t.country(e.country);
504
+ } else {
505
+ if (!e.countryCallingCode)
506
+ throw new Error("Invalid phone number object passed");
507
+ t.selectNumberingPlan(e.countryCallingCode);
508
+ }
509
+ }
510
+ if (t.possibleLengths())
511
+ return Wt(e.phone || e.nationalNumber, t);
512
+ if (e.countryCallingCode && t.isNonGeographicCallingCode(e.countryCallingCode))
513
+ return !0;
514
+ throw new Error('Missing "possibleLengths" in metadata. Perhaps the metadata has been generated before v1.0.18.');
515
+ }
516
+ function Wt(e, r) {
517
+ switch (R(e, r)) {
518
+ case "IS_POSSIBLE":
519
+ return !0;
520
+ // This library ignores "local-only" phone numbers (for simplicity).
521
+ // See the readme for more info on what are "local-only" phone numbers.
522
+ // case 'IS_POSSIBLE_LOCAL_ONLY':
523
+ // return !isInternational
524
+ default:
525
+ return !1;
526
+ }
527
+ }
528
+ function C(e, r) {
529
+ return e = e || "", new RegExp("^(?:" + r + ")$").test(e);
530
+ }
531
+ function Re(e, r) {
532
+ var t = typeof Symbol < "u" && e[Symbol.iterator] || e["@@iterator"];
533
+ if (t) return (t = t.call(e)).next.bind(t);
534
+ if (Array.isArray(e) || (t = De(e)) || r) {
535
+ t && (e = t);
536
+ var n = 0;
537
+ return function() {
538
+ return n >= e.length ? { done: !0 } : { done: !1, value: e[n++] };
539
+ };
540
+ }
541
+ throw new TypeError(`Invalid attempt to iterate non-iterable instance.
542
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`);
543
+ }
544
+ function De(e, r) {
545
+ if (e) {
546
+ if (typeof e == "string") return st(e, r);
547
+ var t = Object.prototype.toString.call(e).slice(8, -1);
548
+ if (t === "Object" && e.constructor && (t = e.constructor.name), t === "Map" || t === "Set") return Array.from(e);
549
+ if (t === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)) return st(e, r);
550
+ }
551
+ }
552
+ function st(e, r) {
553
+ (r == null || r > e.length) && (r = e.length);
554
+ for (var t = 0, n = new Array(r); t < r; t++)
555
+ n[t] = e[t];
556
+ return n;
557
+ }
558
+ var Me = ["MOBILE", "PREMIUM_RATE", "TOLL_FREE", "SHARED_COST", "VOIP", "PERSONAL_NUMBER", "PAGER", "UAN", "VOICEMAIL"];
559
+ function tt(e, r, t) {
560
+ if (r = r || {}, !(!e.country && !e.countryCallingCode)) {
561
+ t = new h(t), t.selectNumberingPlan(e.country, e.countryCallingCode);
562
+ var n = r.v2 ? e.nationalNumber : e.phone;
563
+ if (C(n, t.nationalNumberPattern())) {
564
+ if (k(n, "FIXED_LINE", t))
565
+ return t.type("MOBILE") && t.type("MOBILE").pattern() === "" || !t.type("MOBILE") || k(n, "MOBILE", t) ? "FIXED_LINE_OR_MOBILE" : "FIXED_LINE";
566
+ for (var d = Re(Me), i; !(i = d()).done; ) {
567
+ var a = i.value;
568
+ if (k(n, a, t))
569
+ return a;
570
+ }
571
+ }
572
+ }
573
+ }
574
+ function k(e, r, t) {
575
+ return r = t.type(r), !r || !r.pattern() || r.possibleLengths() && r.possibleLengths().indexOf(e.length) < 0 ? !1 : C(e, r.pattern());
576
+ }
577
+ function Le(e, r, t) {
578
+ if (r = r || {}, t = new h(t), t.selectNumberingPlan(e.country, e.countryCallingCode), t.hasTypes())
579
+ return tt(e, r, t.metadata) !== void 0;
580
+ var n = r.v2 ? e.nationalNumber : e.phone;
581
+ return C(n, t.nationalNumberPattern());
582
+ }
583
+ function ke(e, r, t) {
584
+ var n = new h(t), d = n.getCountryCodesForCallingCode(e);
585
+ return d ? d.filter(function(i) {
586
+ return Ge(r, i, t);
587
+ }) : [];
588
+ }
589
+ function Ge(e, r, t) {
590
+ var n = new h(t);
591
+ return n.selectNumberingPlan(r), n.numberingPlan.possibleLengths().indexOf(e.length) >= 0;
592
+ }
593
+ var et = 2, Be = 17, je = 3, g = "0-90-9٠-٩۰-۹", Ue = "-‐-―−ー-", He = "//", We = "..", Ve = "  ­​⁠ ", Ke = "()()[]\\[\\]", Xe = "~⁓∼~", b = "".concat(Ue).concat(He).concat(We).concat(Ve).concat(Ke).concat(Xe), D = "++", Ye = new RegExp("([" + g + "])");
594
+ function Vt(e, r, t, n) {
595
+ if (r) {
596
+ var d = new h(n);
597
+ d.selectNumberingPlan(r, t);
598
+ var i = new RegExp(d.IDDPrefix());
599
+ if (e.search(i) === 0) {
600
+ e = e.slice(e.match(i)[0].length);
601
+ var a = e.match(Ye);
602
+ if (!(a && a[1] != null && a[1].length > 0 && a[1] === "0"))
603
+ return e;
604
+ }
605
+ }
606
+ }
607
+ function V(e, r) {
608
+ if (e && r.numberingPlan.nationalPrefixForParsing()) {
609
+ var t = new RegExp("^(?:" + r.numberingPlan.nationalPrefixForParsing() + ")"), n = t.exec(e);
610
+ if (n) {
611
+ var d, i, a = n.length - 1, $ = a > 0 && n[a];
612
+ if (r.nationalPrefixTransformRule() && $)
613
+ d = e.replace(t, r.nationalPrefixTransformRule()), a > 1 && (i = n[1]);
614
+ else {
615
+ var o = n[0];
616
+ d = e.slice(o.length), $ && (i = n[1]);
617
+ }
618
+ var u;
619
+ if ($) {
620
+ var l = e.indexOf(n[1]), f = e.slice(0, l);
621
+ f === r.numberingPlan.nationalPrefix() && (u = r.numberingPlan.nationalPrefix());
622
+ } else
623
+ u = n[0];
624
+ return {
625
+ nationalNumber: d,
626
+ nationalPrefix: u,
627
+ carrierCode: i
628
+ };
629
+ }
630
+ }
631
+ return {
632
+ nationalNumber: e
633
+ };
634
+ }
635
+ function K(e, r) {
636
+ var t = V(e, r), n = t.carrierCode, d = t.nationalNumber;
637
+ if (d !== e) {
638
+ if (!Ze(e, d, r))
639
+ return {
640
+ nationalNumber: e
641
+ };
642
+ if (r.possibleLengths() && !Je(d, r))
643
+ return {
644
+ nationalNumber: e
645
+ };
646
+ }
647
+ return {
648
+ nationalNumber: d,
649
+ carrierCode: n
650
+ };
651
+ }
652
+ function Ze(e, r, t) {
653
+ return !(C(e, t.nationalNumberPattern()) && !C(r, t.nationalNumberPattern()));
654
+ }
655
+ function Je(e, r) {
656
+ switch (R(e, r)) {
657
+ case "TOO_SHORT":
658
+ case "INVALID_LENGTH":
659
+ return !1;
660
+ default:
661
+ return !0;
662
+ }
663
+ }
664
+ function Kt(e, r, t, n) {
665
+ var d = r ? z(r, n) : t;
666
+ if (e.indexOf(d) === 0) {
667
+ n = new h(n), n.selectNumberingPlan(r, t);
668
+ var i = e.slice(d.length), a = K(i, n), $ = a.nationalNumber, o = K(e, n), u = o.nationalNumber;
669
+ if (!C(u, n.nationalNumberPattern()) && C($, n.nationalNumberPattern()) || R(u, n) === "TOO_LONG")
670
+ return {
671
+ countryCallingCode: d,
672
+ number: i
673
+ };
674
+ }
675
+ return {
676
+ number: e
677
+ };
678
+ }
679
+ function rt(e, r, t, n) {
680
+ if (!e)
681
+ return {};
682
+ var d;
683
+ if (e[0] !== "+") {
684
+ var i = Vt(e, r, t, n);
685
+ if (i && i !== e)
686
+ d = !0, e = "+" + i;
687
+ else {
688
+ if (r || t) {
689
+ var a = Kt(e, r, t, n), $ = a.countryCallingCode, o = a.number;
690
+ if ($)
691
+ return {
692
+ countryCallingCodeSource: "FROM_NUMBER_WITHOUT_PLUS_SIGN",
693
+ countryCallingCode: $,
694
+ number: o
695
+ };
696
+ }
697
+ return {
698
+ // No need to set it to `UNSPECIFIED`. It can be just `undefined`.
699
+ // countryCallingCodeSource: 'UNSPECIFIED',
700
+ number: e
701
+ };
702
+ }
703
+ }
704
+ if (e[1] === "0")
705
+ return {};
706
+ n = new h(n);
707
+ for (var u = 2; u - 1 <= je && u <= e.length; ) {
708
+ var l = e.slice(1, u);
709
+ if (n.hasCallingCode(l))
710
+ return n.selectNumberingPlan(l), {
711
+ countryCallingCodeSource: d ? "FROM_NUMBER_WITH_IDD" : "FROM_NUMBER_WITH_PLUS_SIGN",
712
+ countryCallingCode: l,
713
+ number: e.slice(u)
714
+ };
715
+ u++;
716
+ }
717
+ return {};
718
+ }
719
+ function Xt(e) {
720
+ return e.replace(new RegExp("[".concat(b, "]+"), "g"), " ").trim();
721
+ }
722
+ var Yt = /(\$\d)/;
723
+ function Zt(e, r, t) {
724
+ var n = t.useInternationalFormat, d = t.withNationalPrefix;
725
+ t.carrierCode, t.metadata;
726
+ var i = e.replace(new RegExp(r.pattern()), n ? r.internationalFormat() : (
727
+ // This library doesn't use `domestic_carrier_code_formatting_rule`,
728
+ // because that one is only used when formatting phone numbers
729
+ // for dialing from a mobile phone, and this is not a dialing library.
730
+ // carrierCode && format.domesticCarrierCodeFormattingRule()
731
+ // // First, replace the $CC in the formatting rule with the desired carrier code.
732
+ // // Then, replace the $FG in the formatting rule with the first group
733
+ // // and the carrier code combined in the appropriate way.
734
+ // ? format.format().replace(FIRST_GROUP_PATTERN, format.domesticCarrierCodeFormattingRule().replace('$CC', carrierCode))
735
+ // : (
736
+ // withNationalPrefix && format.nationalPrefixFormattingRule()
737
+ // ? format.format().replace(FIRST_GROUP_PATTERN, format.nationalPrefixFormattingRule())
738
+ // : format.format()
739
+ // )
740
+ d && r.nationalPrefixFormattingRule() ? r.format().replace(Yt, r.nationalPrefixFormattingRule()) : r.format()
741
+ ));
742
+ return n ? Xt(i) : i;
743
+ }
744
+ var Qe = /^[\d]+(?:[~\u2053\u223C\uFF5E][\d]+)?$/;
745
+ function qe(e, r, t) {
746
+ var n = new h(t);
747
+ if (n.selectNumberingPlan(e, r), n.defaultIDDPrefix())
748
+ return n.defaultIDDPrefix();
749
+ if (Qe.test(n.IDDPrefix()))
750
+ return n.IDDPrefix();
751
+ }
752
+ var ze = ";ext=", E = function(r) {
753
+ return "([".concat(g, "]{1,").concat(r, "})");
754
+ };
755
+ function Jt(e) {
756
+ 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 = "[- ]+", f = "[  \\t]*", s = "(?:,{2}|;)", c = ze + E(r), y = i + o + a + E(r) + $, p = i + u + a + E(n) + $, v = l + E(d) + "#", M = f + s + a + E(t) + $, L = f + "(?:,)+" + a + E(n) + $;
757
+ return c + "|" + y + "|" + p + "|" + v + "|" + M + "|" + L;
758
+ }
759
+ var tr = "[" + g + "]{" + et + "}", er = "[" + D + "]{0,1}(?:[" + b + "]*[" + g + "]){3,}[" + b + g + "]*", rr = new RegExp("^[" + D + "]{0,1}(?:[" + b + "]*[" + g + "]){1,2}$", "i"), nr = er + // Phone number extensions
760
+ "(?:" + Jt() + ")?", dr = new RegExp(
761
+ // Either a short two-digit-only phone number
762
+ "^" + tr + "$|^" + nr + "$",
763
+ "i"
764
+ );
765
+ function ir(e) {
766
+ return e.length >= et && dr.test(e);
767
+ }
768
+ function ar(e) {
769
+ return rr.test(e);
770
+ }
771
+ function $r(e) {
772
+ var r = e.number, t = e.ext;
773
+ if (!r)
774
+ return "";
775
+ if (r[0] !== "+")
776
+ throw new Error('"formatRFC3966()" expects "number" to be in E.164 format.');
777
+ return "tel:".concat(r).concat(t ? ";ext=" + t : "");
778
+ }
779
+ function or(e, r) {
780
+ var t = typeof Symbol < "u" && e[Symbol.iterator] || e["@@iterator"];
781
+ if (t) return (t = t.call(e)).next.bind(t);
782
+ if (Array.isArray(e) || (t = ur(e)) || r) {
783
+ t && (e = t);
784
+ var n = 0;
785
+ return function() {
786
+ return n >= e.length ? { done: !0 } : { done: !1, value: e[n++] };
787
+ };
788
+ }
789
+ throw new TypeError(`Invalid attempt to iterate non-iterable instance.
790
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`);
791
+ }
792
+ function ur(e, r) {
793
+ if (e) {
794
+ if (typeof e == "string") return ft(e, r);
795
+ var t = Object.prototype.toString.call(e).slice(8, -1);
796
+ if (t === "Object" && e.constructor && (t = e.constructor.name), t === "Map" || t === "Set") return Array.from(e);
797
+ if (t === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)) return ft(e, r);
798
+ }
799
+ }
800
+ function ft(e, r) {
801
+ (r == null || r > e.length) && (r = e.length);
802
+ for (var t = 0, n = new Array(r); t < r; t++)
803
+ n[t] = e[t];
804
+ return n;
805
+ }
806
+ function ct(e, r) {
807
+ var t = Object.keys(e);
808
+ if (Object.getOwnPropertySymbols) {
809
+ var n = Object.getOwnPropertySymbols(e);
810
+ r && (n = n.filter(function(d) {
811
+ return Object.getOwnPropertyDescriptor(e, d).enumerable;
812
+ })), t.push.apply(t, n);
813
+ }
814
+ return t;
815
+ }
816
+ function ht(e) {
817
+ for (var r = 1; r < arguments.length; r++) {
818
+ var t = arguments[r] != null ? arguments[r] : {};
819
+ r % 2 ? ct(Object(t), !0).forEach(function(n) {
820
+ lr(e, n, t[n]);
821
+ }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ct(Object(t)).forEach(function(n) {
822
+ Object.defineProperty(e, n, Object.getOwnPropertyDescriptor(t, n));
823
+ });
824
+ }
825
+ return e;
826
+ }
827
+ function lr(e, r, t) {
828
+ return r in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e;
829
+ }
830
+ var gt = {
831
+ formatExtension: function(r, t, n) {
832
+ return "".concat(r).concat(n.ext()).concat(t);
833
+ }
834
+ };
835
+ function sr(e, r, t, n) {
836
+ if (t ? t = ht(ht({}, gt), t) : t = gt, n = new h(n), e.country && e.country !== "001") {
837
+ if (!n.hasCountry(e.country))
838
+ throw new Error("Unknown country: ".concat(e.country));
839
+ n.country(e.country);
840
+ } else if (e.countryCallingCode)
841
+ n.selectNumberingPlan(e.countryCallingCode);
842
+ else return e.phone || "";
843
+ var d = n.countryCallingCode(), i = t.v2 ? e.nationalNumber : e.phone, a;
844
+ switch (r) {
845
+ case "NATIONAL":
846
+ return i ? (a = T(i, e.carrierCode, "NATIONAL", n, t), G(a, e.ext, n, t.formatExtension)) : "";
847
+ case "INTERNATIONAL":
848
+ return i ? (a = T(i, null, "INTERNATIONAL", n, t), a = "+".concat(d, " ").concat(a), G(a, e.ext, n, t.formatExtension)) : "+".concat(d);
849
+ case "E.164":
850
+ return "+".concat(d).concat(i);
851
+ case "RFC3966":
852
+ return $r({
853
+ number: "+".concat(d).concat(i),
854
+ ext: e.ext
855
+ });
856
+ // For reference, here's Google's IDD formatter:
857
+ // https://github.com/google/libphonenumber/blob/32719cf74e68796788d1ca45abc85dcdc63ba5b9/java/libphonenumber/src/com/google/i18n/phonenumbers/PhoneNumberUtil.java#L1546
858
+ // Not saying that this IDD formatter replicates it 1:1, but it seems to work.
859
+ // Who would even need to format phone numbers in IDD format anyway?
860
+ case "IDD":
861
+ if (!t.fromCountry)
862
+ return;
863
+ var $ = cr(i, e.carrierCode, d, t.fromCountry, n);
864
+ return G($, e.ext, n, t.formatExtension);
865
+ default:
866
+ throw new Error('Unknown "format" argument passed to "formatNumber()": "'.concat(r, '"'));
867
+ }
868
+ }
869
+ function T(e, r, t, n, d) {
870
+ var i = fr(n.formats(), e);
871
+ return i ? Zt(e, i, {
872
+ useInternationalFormat: t === "INTERNATIONAL",
873
+ withNationalPrefix: !(i.nationalPrefixIsOptionalWhenFormattingInNationalFormat() && d && d.nationalPrefix === !1),
874
+ carrierCode: r,
875
+ metadata: n
876
+ }) : e;
877
+ }
878
+ function fr(e, r) {
879
+ for (var t = or(e), n; !(n = t()).done; ) {
880
+ var d = n.value;
881
+ if (d.leadingDigitsPatterns().length > 0) {
882
+ var i = d.leadingDigitsPatterns()[d.leadingDigitsPatterns().length - 1];
883
+ if (r.search(i) !== 0)
884
+ continue;
885
+ }
886
+ if (C(r, d.pattern()))
887
+ return d;
888
+ }
889
+ }
890
+ function G(e, r, t, n) {
891
+ return r ? n(e, r, t) : e;
892
+ }
893
+ function cr(e, r, t, n, d) {
894
+ var i = z(n, d.metadata);
895
+ if (i === t) {
896
+ var a = T(e, r, "NATIONAL", d);
897
+ return t === "1" ? t + " " + a : a;
898
+ }
899
+ var $ = qe(n, void 0, d.metadata);
900
+ if ($)
901
+ return "".concat($, " ").concat(t, " ").concat(T(e, null, "INTERNATIONAL", d));
902
+ }
903
+ function mt(e, r) {
904
+ var t = Object.keys(e);
905
+ if (Object.getOwnPropertySymbols) {
906
+ var n = Object.getOwnPropertySymbols(e);
907
+ r && (n = n.filter(function(d) {
908
+ return Object.getOwnPropertyDescriptor(e, d).enumerable;
909
+ })), t.push.apply(t, n);
910
+ }
911
+ return t;
912
+ }
913
+ function yt(e) {
914
+ for (var r = 1; r < arguments.length; r++) {
915
+ var t = arguments[r] != null ? arguments[r] : {};
916
+ r % 2 ? mt(Object(t), !0).forEach(function(n) {
917
+ hr(e, n, t[n]);
918
+ }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : mt(Object(t)).forEach(function(n) {
919
+ Object.defineProperty(e, n, Object.getOwnPropertyDescriptor(t, n));
920
+ });
921
+ }
922
+ return e;
923
+ }
924
+ function hr(e, r, t) {
925
+ return r in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e;
926
+ }
927
+ function gr(e, r) {
928
+ if (!(e instanceof r))
929
+ throw new TypeError("Cannot call a class as a function");
930
+ }
931
+ function mr(e, r) {
932
+ for (var t = 0; t < r.length; t++) {
933
+ var n = r[t];
934
+ n.enumerable = n.enumerable || !1, n.configurable = !0, "value" in n && (n.writable = !0), Object.defineProperty(e, n.key, n);
935
+ }
936
+ }
937
+ function yr(e, r, t) {
938
+ return r && mr(e.prototype, r), Object.defineProperty(e, "prototype", { writable: !1 }), e;
939
+ }
940
+ var Qt = /* @__PURE__ */ function() {
941
+ function e(r, t, n) {
942
+ if (gr(this, e), !r)
943
+ throw new TypeError("First argument is required");
944
+ if (typeof r != "string")
945
+ throw new TypeError("First argument must be a string");
946
+ if (r[0] === "+" && !t)
947
+ throw new TypeError("`metadata` argument not passed");
948
+ if (x(t) && x(t.countries)) {
949
+ n = t;
950
+ var d = r;
951
+ if (!br.test(d))
952
+ throw new Error('Invalid `number` argument passed: must consist of a "+" followed by digits');
953
+ var i = rt(d, void 0, void 0, n), a = i.countryCallingCode, $ = i.number;
954
+ if (t = $, r = a, !t)
955
+ throw new Error("Invalid `number` argument passed: too short");
956
+ }
957
+ if (!t)
958
+ throw new TypeError("`nationalNumber` argument is required");
959
+ if (typeof t != "string")
960
+ throw new TypeError("`nationalNumber` argument must be a string");
961
+ Ut(n);
962
+ var o = Nr(r, n), u = o.country, l = o.countryCallingCode;
963
+ this.country = u, this.countryCallingCode = l, this.nationalNumber = t, this.number = "+" + this.countryCallingCode + this.nationalNumber, this.getMetadata = function() {
964
+ return n;
965
+ };
966
+ }
967
+ return yr(e, [{
968
+ key: "setExt",
969
+ value: function(t) {
970
+ this.ext = t;
971
+ }
972
+ }, {
973
+ key: "getPossibleCountries",
974
+ value: function() {
975
+ return this.country ? [this.country] : ke(this.countryCallingCode, this.nationalNumber, this.getMetadata());
976
+ }
977
+ }, {
978
+ key: "isPossible",
979
+ value: function() {
980
+ return we(this, {
981
+ v2: !0
982
+ }, this.getMetadata());
983
+ }
984
+ }, {
985
+ key: "isValid",
986
+ value: function() {
987
+ return Le(this, {
988
+ v2: !0
989
+ }, this.getMetadata());
990
+ }
991
+ }, {
992
+ key: "isNonGeographic",
993
+ value: function() {
994
+ var t = new h(this.getMetadata());
995
+ return t.isNonGeographicCallingCode(this.countryCallingCode);
996
+ }
997
+ }, {
998
+ key: "isEqual",
999
+ value: function(t) {
1000
+ return this.number === t.number && this.ext === t.ext;
1001
+ }
1002
+ // This function was originally meant to be an equivalent for `validatePhoneNumberLength()`,
1003
+ // but later it was found out that it doesn't include the possible `TOO_SHORT` result
1004
+ // returned from `parsePhoneNumberWithError()` in the original `validatePhoneNumberLength()`,
1005
+ // so eventually I simply commented out this method from the `PhoneNumber` class
1006
+ // and just left the `validatePhoneNumberLength()` function, even though that one would require
1007
+ // and additional step to also validate the actual country / calling code of the phone number.
1008
+ // validateLength() {
1009
+ // const metadata = new Metadata(this.getMetadata())
1010
+ // metadata.selectNumberingPlan(this.countryCallingCode)
1011
+ // const result = checkNumberLength(this.nationalNumber, metadata)
1012
+ // if (result !== 'IS_POSSIBLE') {
1013
+ // return result
1014
+ // }
1015
+ // }
1016
+ }, {
1017
+ key: "getType",
1018
+ value: function() {
1019
+ return tt(this, {
1020
+ v2: !0
1021
+ }, this.getMetadata());
1022
+ }
1023
+ }, {
1024
+ key: "format",
1025
+ value: function(t, n) {
1026
+ return sr(this, t, n ? yt(yt({}, n), {}, {
1027
+ v2: !0
1028
+ }) : {
1029
+ v2: !0
1030
+ }, this.getMetadata());
1031
+ }
1032
+ }, {
1033
+ key: "formatNational",
1034
+ value: function(t) {
1035
+ return this.format("NATIONAL", t);
1036
+ }
1037
+ }, {
1038
+ key: "formatInternational",
1039
+ value: function(t) {
1040
+ return this.format("INTERNATIONAL", t);
1041
+ }
1042
+ }, {
1043
+ key: "getURI",
1044
+ value: function(t) {
1045
+ return this.format("RFC3966", t);
1046
+ }
1047
+ }]), e;
1048
+ }(), vr = function(r) {
1049
+ return /^[A-Z]{2}$/.test(r);
1050
+ };
1051
+ function Nr(e, r) {
1052
+ var t, n, d = new h(r);
1053
+ return vr(e) ? (t = e, d.selectNumberingPlan(t), n = d.countryCallingCode()) : n = e, {
1054
+ country: t,
1055
+ countryCallingCode: n
1056
+ };
1057
+ }
1058
+ var br = /^\+\d+$/;
1059
+ function X(e) {
1060
+ "@babel/helpers - typeof";
1061
+ return X = typeof Symbol == "function" && typeof Symbol.iterator == "symbol" ? function(r) {
1062
+ return typeof r;
1063
+ } : function(r) {
1064
+ return r && typeof Symbol == "function" && r.constructor === Symbol && r !== Symbol.prototype ? "symbol" : typeof r;
1065
+ }, X(e);
1066
+ }
1067
+ function pr(e, r, t) {
1068
+ return Object.defineProperty(e, "prototype", { writable: !1 }), e;
1069
+ }
1070
+ function Cr(e, r) {
1071
+ if (!(e instanceof r))
1072
+ throw new TypeError("Cannot call a class as a function");
1073
+ }
1074
+ function Pr(e, r) {
1075
+ if (typeof r != "function" && r !== null)
1076
+ throw new TypeError("Super expression must either be null or a function");
1077
+ e.prototype = Object.create(r && r.prototype, { constructor: { value: e, writable: !0, configurable: !0 } }), Object.defineProperty(e, "prototype", { writable: !1 }), r && S(e, r);
1078
+ }
1079
+ function xr(e) {
1080
+ var r = zt();
1081
+ return function() {
1082
+ var n = F(e), d;
1083
+ if (r) {
1084
+ var i = F(this).constructor;
1085
+ d = Reflect.construct(n, arguments, i);
1086
+ } else
1087
+ d = n.apply(this, arguments);
1088
+ return Er(this, d);
1089
+ };
1090
+ }
1091
+ function Er(e, r) {
1092
+ if (r && (X(r) === "object" || typeof r == "function"))
1093
+ return r;
1094
+ if (r !== void 0)
1095
+ throw new TypeError("Derived constructors may only return object or undefined");
1096
+ return qt(e);
1097
+ }
1098
+ function qt(e) {
1099
+ if (e === void 0)
1100
+ throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
1101
+ return e;
1102
+ }
1103
+ function Y(e) {
1104
+ var r = typeof Map == "function" ? /* @__PURE__ */ new Map() : void 0;
1105
+ return Y = function(n) {
1106
+ if (n === null || !Sr(n)) return n;
1107
+ if (typeof n != "function")
1108
+ throw new TypeError("Super expression must either be null or a function");
1109
+ if (typeof r < "u") {
1110
+ if (r.has(n)) return r.get(n);
1111
+ r.set(n, d);
1112
+ }
1113
+ function d() {
1114
+ return I(n, arguments, F(this).constructor);
1115
+ }
1116
+ return d.prototype = Object.create(n.prototype, { constructor: { value: d, enumerable: !1, writable: !0, configurable: !0 } }), S(d, n);
1117
+ }, Y(e);
1118
+ }
1119
+ function I(e, r, t) {
1120
+ return zt() ? I = Reflect.construct : I = function(d, i, a) {
1121
+ var $ = [null];
1122
+ $.push.apply($, i);
1123
+ var o = Function.bind.apply(d, $), u = new o();
1124
+ return a && S(u, a.prototype), u;
1125
+ }, I.apply(null, arguments);
1126
+ }
1127
+ function zt() {
1128
+ if (typeof Reflect > "u" || !Reflect.construct || Reflect.construct.sham) return !1;
1129
+ if (typeof Proxy == "function") return !0;
1130
+ try {
1131
+ return Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {
1132
+ })), !0;
1133
+ } catch {
1134
+ return !1;
1135
+ }
1136
+ }
1137
+ function Sr(e) {
1138
+ return Function.toString.call(e).indexOf("[native code]") !== -1;
1139
+ }
1140
+ function S(e, r) {
1141
+ return S = Object.setPrototypeOf || function(n, d) {
1142
+ return n.__proto__ = d, n;
1143
+ }, S(e, r);
1144
+ }
1145
+ function F(e) {
1146
+ return F = Object.setPrototypeOf ? Object.getPrototypeOf : function(t) {
1147
+ return t.__proto__ || Object.getPrototypeOf(t);
1148
+ }, F(e);
1149
+ }
1150
+ var P = /* @__PURE__ */ function(e) {
1151
+ Pr(t, e);
1152
+ var r = xr(t);
1153
+ function t(n) {
1154
+ var d;
1155
+ return Cr(this, t), d = r.call(this, n), Object.setPrototypeOf(qt(d), t.prototype), d.name = d.constructor.name, d;
1156
+ }
1157
+ return pr(t);
1158
+ }(/* @__PURE__ */ Y(Error)), vt = new RegExp("(?:" + Jt() + ")$", "i");
1159
+ function Fr(e) {
1160
+ var r = e.search(vt);
1161
+ if (r < 0)
1162
+ return {};
1163
+ for (var t = e.slice(0, r), n = e.match(vt), d = 1; d < n.length; ) {
1164
+ if (n[d])
1165
+ return {
1166
+ number: t,
1167
+ ext: n[d]
1168
+ };
1169
+ d++;
1170
+ }
1171
+ }
1172
+ function Ir(e, r) {
1173
+ var t = typeof Symbol < "u" && e[Symbol.iterator] || e["@@iterator"];
1174
+ if (t) return (t = t.call(e)).next.bind(t);
1175
+ if (Array.isArray(e) || (t = Ar(e)) || r) {
1176
+ t && (e = t);
1177
+ var n = 0;
1178
+ return function() {
1179
+ return n >= e.length ? { done: !0 } : { done: !1, value: e[n++] };
1180
+ };
1181
+ }
1182
+ throw new TypeError(`Invalid attempt to iterate non-iterable instance.
1183
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`);
1184
+ }
1185
+ function Ar(e, r) {
1186
+ if (e) {
1187
+ if (typeof e == "string") return Nt(e, r);
1188
+ var t = Object.prototype.toString.call(e).slice(8, -1);
1189
+ if (t === "Object" && e.constructor && (t = e.constructor.name), t === "Map" || t === "Set") return Array.from(e);
1190
+ if (t === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)) return Nt(e, r);
1191
+ }
1192
+ }
1193
+ function Nt(e, r) {
1194
+ (r == null || r > e.length) && (r = e.length);
1195
+ for (var t = 0, n = new Array(r); t < r; t++)
1196
+ n[t] = e[t];
1197
+ return n;
1198
+ }
1199
+ var Tr = {
1200
+ 0: "0",
1201
+ 1: "1",
1202
+ 2: "2",
1203
+ 3: "3",
1204
+ 4: "4",
1205
+ 5: "5",
1206
+ 6: "6",
1207
+ 7: "7",
1208
+ 8: "8",
1209
+ 9: "9",
1210
+ "0": "0",
1211
+ // Fullwidth digit 0
1212
+ "1": "1",
1213
+ // Fullwidth digit 1
1214
+ "2": "2",
1215
+ // Fullwidth digit 2
1216
+ "3": "3",
1217
+ // Fullwidth digit 3
1218
+ "4": "4",
1219
+ // Fullwidth digit 4
1220
+ "5": "5",
1221
+ // Fullwidth digit 5
1222
+ "6": "6",
1223
+ // Fullwidth digit 6
1224
+ "7": "7",
1225
+ // Fullwidth digit 7
1226
+ "8": "8",
1227
+ // Fullwidth digit 8
1228
+ "9": "9",
1229
+ // Fullwidth digit 9
1230
+ "٠": "0",
1231
+ // Arabic-indic digit 0
1232
+ "١": "1",
1233
+ // Arabic-indic digit 1
1234
+ "٢": "2",
1235
+ // Arabic-indic digit 2
1236
+ "٣": "3",
1237
+ // Arabic-indic digit 3
1238
+ "٤": "4",
1239
+ // Arabic-indic digit 4
1240
+ "٥": "5",
1241
+ // Arabic-indic digit 5
1242
+ "٦": "6",
1243
+ // Arabic-indic digit 6
1244
+ "٧": "7",
1245
+ // Arabic-indic digit 7
1246
+ "٨": "8",
1247
+ // Arabic-indic digit 8
1248
+ "٩": "9",
1249
+ // Arabic-indic digit 9
1250
+ "۰": "0",
1251
+ // Eastern-Arabic digit 0
1252
+ "۱": "1",
1253
+ // Eastern-Arabic digit 1
1254
+ "۲": "2",
1255
+ // Eastern-Arabic digit 2
1256
+ "۳": "3",
1257
+ // Eastern-Arabic digit 3
1258
+ "۴": "4",
1259
+ // Eastern-Arabic digit 4
1260
+ "۵": "5",
1261
+ // Eastern-Arabic digit 5
1262
+ "۶": "6",
1263
+ // Eastern-Arabic digit 6
1264
+ "۷": "7",
1265
+ // Eastern-Arabic digit 7
1266
+ "۸": "8",
1267
+ // Eastern-Arabic digit 8
1268
+ "۹": "9"
1269
+ // Eastern-Arabic digit 9
1270
+ };
1271
+ function te(e) {
1272
+ return Tr[e];
1273
+ }
1274
+ function _(e) {
1275
+ for (var r = "", t = Ir(e.split("")), n; !(n = t()).done; ) {
1276
+ var d = n.value, i = te(d);
1277
+ i && (r += i);
1278
+ }
1279
+ return r;
1280
+ }
1281
+ function _r(e, r) {
1282
+ var t = typeof Symbol < "u" && e[Symbol.iterator] || e["@@iterator"];
1283
+ if (t) return (t = t.call(e)).next.bind(t);
1284
+ if (Array.isArray(e) || (t = Or(e)) || r) {
1285
+ t && (e = t);
1286
+ var n = 0;
1287
+ return function() {
1288
+ return n >= e.length ? { done: !0 } : { done: !1, value: e[n++] };
1289
+ };
1290
+ }
1291
+ throw new TypeError(`Invalid attempt to iterate non-iterable instance.
1292
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`);
1293
+ }
1294
+ function Or(e, r) {
1295
+ if (e) {
1296
+ if (typeof e == "string") return bt(e, r);
1297
+ var t = Object.prototype.toString.call(e).slice(8, -1);
1298
+ if (t === "Object" && e.constructor && (t = e.constructor.name), t === "Map" || t === "Set") return Array.from(e);
1299
+ if (t === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)) return bt(e, r);
1300
+ }
1301
+ }
1302
+ function bt(e, r) {
1303
+ (r == null || r > e.length) && (r = e.length);
1304
+ for (var t = 0, n = new Array(r); t < r; t++)
1305
+ n[t] = e[t];
1306
+ return n;
1307
+ }
1308
+ function pt(e) {
1309
+ for (var r = "", t = _r(e.split("")), n; !(n = t()).done; ) {
1310
+ var d = n.value;
1311
+ r += wr(d, r) || "";
1312
+ }
1313
+ return r;
1314
+ }
1315
+ function wr(e, r, t) {
1316
+ return e === "+" ? r ? void 0 : "+" : te(e);
1317
+ }
1318
+ function Rr(e, r) {
1319
+ var t = typeof Symbol < "u" && e[Symbol.iterator] || e["@@iterator"];
1320
+ if (t) return (t = t.call(e)).next.bind(t);
1321
+ if (Array.isArray(e) || (t = Dr(e)) || r) {
1322
+ t && (e = t);
1323
+ var n = 0;
1324
+ return function() {
1325
+ return n >= e.length ? { done: !0 } : { done: !1, value: e[n++] };
1326
+ };
1327
+ }
1328
+ throw new TypeError(`Invalid attempt to iterate non-iterable instance.
1329
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`);
1330
+ }
1331
+ function Dr(e, r) {
1332
+ if (e) {
1333
+ if (typeof e == "string") return Ct(e, r);
1334
+ var t = Object.prototype.toString.call(e).slice(8, -1);
1335
+ if (t === "Object" && e.constructor && (t = e.constructor.name), t === "Map" || t === "Set") return Array.from(e);
1336
+ if (t === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)) return Ct(e, r);
1337
+ }
1338
+ }
1339
+ function Ct(e, r) {
1340
+ (r == null || r > e.length) && (r = e.length);
1341
+ for (var t = 0, n = new Array(r); t < r; t++)
1342
+ n[t] = e[t];
1343
+ return n;
1344
+ }
1345
+ function ee(e, r) {
1346
+ var t = r.countries;
1347
+ r.defaultCountry;
1348
+ var n = r.metadata;
1349
+ n = new h(n);
1350
+ for (var d = Rr(t), i; !(i = d()).done; ) {
1351
+ var a = i.value;
1352
+ if (n.country(a), n.leadingDigits()) {
1353
+ if (e && e.search(n.leadingDigits()) === 0)
1354
+ return a;
1355
+ } else if (tt({
1356
+ phone: e,
1357
+ country: a
1358
+ }, void 0, n.metadata))
1359
+ return a;
1360
+ }
1361
+ }
1362
+ function re(e, r) {
1363
+ var t = r.nationalNumber, n = r.defaultCountry, d = r.metadata, i = d.getCountryCodesForCallingCode(e);
1364
+ if (i)
1365
+ return i.length === 1 ? i[0] : ee(t, {
1366
+ countries: i,
1367
+ defaultCountry: n,
1368
+ metadata: d.metadata
1369
+ });
1370
+ }
1371
+ var ne = "+", Mr = "[\\-\\.\\(\\)]?", Pt = "([" + g + "]|" + Mr + ")", Lr = "^\\" + ne + Pt + "*[" + g + "]" + Pt + "*$", kr = new RegExp(Lr, "g"), Z = g, Gr = "[" + Z + "]+((\\-)*[" + Z + "])*", Br = "a-zA-Z", jr = "[" + Br + "]+((\\-)*[" + Z + "])*", Ur = "^(" + Gr + "\\.)*" + jr + "\\.?$", Hr = new RegExp(Ur, "g"), xt = "tel:", J = ";phone-context=", Wr = ";isub=";
1372
+ function Vr(e) {
1373
+ var r = e.indexOf(J);
1374
+ if (r < 0)
1375
+ return null;
1376
+ var t = r + J.length;
1377
+ if (t >= e.length)
1378
+ return "";
1379
+ var n = e.indexOf(";", t);
1380
+ return n >= 0 ? e.substring(t, n) : e.substring(t);
1381
+ }
1382
+ function Kr(e) {
1383
+ return e === null ? !0 : e.length === 0 ? !1 : kr.test(e) || Hr.test(e);
1384
+ }
1385
+ function Xr(e, r) {
1386
+ var t = r.extractFormattedPhoneNumber, n = Vr(e);
1387
+ if (!Kr(n))
1388
+ throw new P("NOT_A_NUMBER");
1389
+ var d;
1390
+ if (n === null)
1391
+ d = t(e) || "";
1392
+ else {
1393
+ d = "", n.charAt(0) === ne && (d += n);
1394
+ var i = e.indexOf(xt), a;
1395
+ i >= 0 ? a = i + xt.length : a = 0;
1396
+ var $ = e.indexOf(J);
1397
+ d += e.substring(a, $);
1398
+ }
1399
+ var o = d.indexOf(Wr);
1400
+ if (o > 0 && (d = d.substring(0, o)), d !== "")
1401
+ return d;
1402
+ }
1403
+ var Yr = 250, Zr = new RegExp("[" + D + g + "]"), Jr = new RegExp("[^" + g + "#]+$");
1404
+ function Qr(e, r, t) {
1405
+ if (r = r || {}, t = new h(t), r.defaultCountry && !t.hasCountry(r.defaultCountry))
1406
+ throw r.v2 ? new P("INVALID_COUNTRY") : new Error("Unknown country: ".concat(r.defaultCountry));
1407
+ var n = zr(e, r.v2, r.extract), d = n.number, i = n.ext, a = n.error;
1408
+ if (!d) {
1409
+ if (r.v2)
1410
+ throw a === "TOO_SHORT" ? new P("TOO_SHORT") : new P("NOT_A_NUMBER");
1411
+ return {};
1412
+ }
1413
+ var $ = en(d, r.defaultCountry, r.defaultCallingCode, t), o = $.country, u = $.nationalNumber, l = $.countryCallingCode, f = $.countryCallingCodeSource, s = $.carrierCode;
1414
+ if (!t.hasSelectedNumberingPlan()) {
1415
+ if (r.v2)
1416
+ throw new P("INVALID_COUNTRY");
1417
+ return {};
1418
+ }
1419
+ if (!u || u.length < et) {
1420
+ if (r.v2)
1421
+ throw new P("TOO_SHORT");
1422
+ return {};
1423
+ }
1424
+ if (u.length > Be) {
1425
+ if (r.v2)
1426
+ throw new P("TOO_LONG");
1427
+ return {};
1428
+ }
1429
+ if (r.v2) {
1430
+ var c = new Qt(l, u, t.metadata);
1431
+ return o && (c.country = o), s && (c.carrierCode = s), i && (c.ext = i), c.__countryCallingCodeSource = f, c;
1432
+ }
1433
+ var y = (r.extended ? t.hasSelectedNumberingPlan() : o) ? C(u, t.nationalNumberPattern()) : !1;
1434
+ return r.extended ? {
1435
+ country: o,
1436
+ countryCallingCode: l,
1437
+ carrierCode: s,
1438
+ valid: y,
1439
+ possible: y ? !0 : !!(r.extended === !0 && t.possibleLengths() && Wt(u, t)),
1440
+ phone: u,
1441
+ ext: i
1442
+ } : y ? tn(o, u, i) : {};
1443
+ }
1444
+ function qr(e, r, t) {
1445
+ if (e) {
1446
+ if (e.length > Yr) {
1447
+ if (t)
1448
+ throw new P("TOO_LONG");
1449
+ return;
1450
+ }
1451
+ if (r === !1)
1452
+ return e;
1453
+ var n = e.search(Zr);
1454
+ if (!(n < 0))
1455
+ return e.slice(n).replace(Jr, "");
1456
+ }
1457
+ }
1458
+ function zr(e, r, t) {
1459
+ var n = Xr(e, {
1460
+ extractFormattedPhoneNumber: function(a) {
1461
+ return qr(a, t, r);
1462
+ }
1463
+ });
1464
+ if (!n)
1465
+ return {};
1466
+ if (!ir(n))
1467
+ return ar(n) ? {
1468
+ error: "TOO_SHORT"
1469
+ } : {};
1470
+ var d = Fr(n);
1471
+ return d.ext ? d : {
1472
+ number: n
1473
+ };
1474
+ }
1475
+ function tn(e, r, t) {
1476
+ var n = {
1477
+ country: e,
1478
+ phone: r
1479
+ };
1480
+ return t && (n.ext = t), n;
1481
+ }
1482
+ function en(e, r, t, n) {
1483
+ var d = rt(pt(e), r, t, n.metadata), i = d.countryCallingCodeSource, a = d.countryCallingCode, $ = d.number, o;
1484
+ if (a)
1485
+ n.selectNumberingPlan(a);
1486
+ else if ($ && (r || t))
1487
+ n.selectNumberingPlan(r, t), r && (o = r), a = t || z(r, n.metadata);
1488
+ else return {};
1489
+ if (!$)
1490
+ return {
1491
+ countryCallingCodeSource: i,
1492
+ countryCallingCode: a
1493
+ };
1494
+ var u = K(pt($), n), l = u.nationalNumber, f = u.carrierCode, s = re(a, {
1495
+ nationalNumber: l,
1496
+ defaultCountry: r,
1497
+ metadata: n
1498
+ });
1499
+ return s && (o = s, s === "001" || n.country(o)), {
1500
+ country: o,
1501
+ countryCallingCode: a,
1502
+ countryCallingCodeSource: i,
1503
+ nationalNumber: l,
1504
+ carrierCode: f
1505
+ };
1506
+ }
1507
+ function Et(e, r) {
1508
+ var t = Object.keys(e);
1509
+ if (Object.getOwnPropertySymbols) {
1510
+ var n = Object.getOwnPropertySymbols(e);
1511
+ r && (n = n.filter(function(d) {
1512
+ return Object.getOwnPropertyDescriptor(e, d).enumerable;
1513
+ })), t.push.apply(t, n);
1514
+ }
1515
+ return t;
1516
+ }
1517
+ function St(e) {
1518
+ for (var r = 1; r < arguments.length; r++) {
1519
+ var t = arguments[r] != null ? arguments[r] : {};
1520
+ r % 2 ? Et(Object(t), !0).forEach(function(n) {
1521
+ rn(e, n, t[n]);
1522
+ }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : Et(Object(t)).forEach(function(n) {
1523
+ Object.defineProperty(e, n, Object.getOwnPropertyDescriptor(t, n));
1524
+ });
1525
+ }
1526
+ return e;
1527
+ }
1528
+ function rn(e, r, t) {
1529
+ return r in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e;
1530
+ }
1531
+ function nn(e, r, t) {
1532
+ return Qr(e, St(St({}, r), {}, {
1533
+ v2: !0
1534
+ }), t);
1535
+ }
1536
+ function Ft(e, r) {
1537
+ var t = Object.keys(e);
1538
+ if (Object.getOwnPropertySymbols) {
1539
+ var n = Object.getOwnPropertySymbols(e);
1540
+ r && (n = n.filter(function(d) {
1541
+ return Object.getOwnPropertyDescriptor(e, d).enumerable;
1542
+ })), t.push.apply(t, n);
1543
+ }
1544
+ return t;
1545
+ }
1546
+ function dn(e) {
1547
+ for (var r = 1; r < arguments.length; r++) {
1548
+ var t = arguments[r] != null ? arguments[r] : {};
1549
+ r % 2 ? Ft(Object(t), !0).forEach(function(n) {
1550
+ an(e, n, t[n]);
1551
+ }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : Ft(Object(t)).forEach(function(n) {
1552
+ Object.defineProperty(e, n, Object.getOwnPropertyDescriptor(t, n));
1553
+ });
1554
+ }
1555
+ return e;
1556
+ }
1557
+ function an(e, r, t) {
1558
+ return r in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e;
1559
+ }
1560
+ function $n(e, r) {
1561
+ return sn(e) || ln(e, r) || un(e, r) || on();
1562
+ }
1563
+ function on() {
1564
+ throw new TypeError(`Invalid attempt to destructure non-iterable instance.
1565
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`);
1566
+ }
1567
+ function un(e, r) {
1568
+ if (e) {
1569
+ if (typeof e == "string") return It(e, r);
1570
+ var t = Object.prototype.toString.call(e).slice(8, -1);
1571
+ if (t === "Object" && e.constructor && (t = e.constructor.name), t === "Map" || t === "Set") return Array.from(e);
1572
+ if (t === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)) return It(e, r);
1573
+ }
1574
+ }
1575
+ function It(e, r) {
1576
+ (r == null || r > e.length) && (r = e.length);
1577
+ for (var t = 0, n = new Array(r); t < r; t++)
1578
+ n[t] = e[t];
1579
+ return n;
1580
+ }
1581
+ function ln(e, r) {
1582
+ var t = e == null ? null : typeof Symbol < "u" && e[Symbol.iterator] || e["@@iterator"];
1583
+ if (t != null) {
1584
+ var n = [], d = !0, i = !1, a, $;
1585
+ try {
1586
+ for (t = t.call(e); !(d = (a = t.next()).done) && (n.push(a.value), !(r && n.length === r)); d = !0)
1587
+ ;
1588
+ } catch (o) {
1589
+ i = !0, $ = o;
1590
+ } finally {
1591
+ try {
1592
+ !d && t.return != null && t.return();
1593
+ } finally {
1594
+ if (i) throw $;
1595
+ }
1596
+ }
1597
+ return n;
1598
+ }
1599
+ }
1600
+ function sn(e) {
1601
+ if (Array.isArray(e)) return e;
1602
+ }
1603
+ function fn(e) {
1604
+ var r = Array.prototype.slice.call(e), t = $n(r, 4), n = t[0], d = t[1], i = t[2], a = t[3], $, o, u;
1605
+ if (typeof n == "string")
1606
+ $ = n;
1607
+ else throw new TypeError("A text for parsing must be a string.");
1608
+ if (!d || typeof d == "string")
1609
+ a ? (o = i, u = a) : (o = void 0, u = i), d && (o = dn({
1610
+ defaultCountry: d
1611
+ }, o));
1612
+ else if (x(d))
1613
+ i ? (o = d, u = i) : u = d;
1614
+ else throw new Error("Invalid second argument: ".concat(d));
1615
+ return {
1616
+ text: $,
1617
+ options: o,
1618
+ metadata: u
1619
+ };
1620
+ }
1621
+ function cn() {
1622
+ var e = fn(arguments), r = e.text, t = e.options, n = e.metadata;
1623
+ return nn(r, t, n);
1624
+ }
1625
+ function hn(e, r) {
1626
+ if (!(e instanceof r))
1627
+ throw new TypeError("Cannot call a class as a function");
1628
+ }
1629
+ function gn(e, r) {
1630
+ for (var t = 0; t < r.length; t++) {
1631
+ var n = r[t];
1632
+ n.enumerable = n.enumerable || !1, n.configurable = !0, "value" in n && (n.writable = !0), Object.defineProperty(e, n.key, n);
1633
+ }
1634
+ }
1635
+ function mn(e, r, t) {
1636
+ return r && gn(e.prototype, r), Object.defineProperty(e, "prototype", { writable: !1 }), e;
1637
+ }
1638
+ var yn = /* @__PURE__ */ function() {
1639
+ function e(r) {
1640
+ var t = r.onCountryChange, n = r.onCallingCodeChange;
1641
+ hn(this, e), this.onCountryChange = t, this.onCallingCodeChange = n;
1642
+ }
1643
+ return mn(e, [{
1644
+ key: "reset",
1645
+ value: function(t) {
1646
+ var n = t.country, d = t.callingCode;
1647
+ this.international = !1, this.missingPlus = !1, this.IDDPrefix = void 0, this.callingCode = void 0, this.digits = "", this.resetNationalSignificantNumber(), this.initCountryAndCallingCode(n, d);
1648
+ }
1649
+ }, {
1650
+ key: "resetNationalSignificantNumber",
1651
+ value: function() {
1652
+ this.nationalSignificantNumber = this.getNationalDigits(), this.nationalSignificantNumberMatchesInput = !0, this.nationalPrefix = void 0, this.carrierCode = void 0, this.complexPrefixBeforeNationalSignificantNumber = void 0;
1653
+ }
1654
+ }, {
1655
+ key: "update",
1656
+ value: function(t) {
1657
+ for (var n = 0, d = Object.keys(t); n < d.length; n++) {
1658
+ var i = d[n];
1659
+ this[i] = t[i];
1660
+ }
1661
+ }
1662
+ }, {
1663
+ key: "initCountryAndCallingCode",
1664
+ value: function(t, n) {
1665
+ this.setCountry(t), this.setCallingCode(n);
1666
+ }
1667
+ }, {
1668
+ key: "setCountry",
1669
+ value: function(t) {
1670
+ this.country = t, this.onCountryChange(t);
1671
+ }
1672
+ }, {
1673
+ key: "setCallingCode",
1674
+ value: function(t) {
1675
+ this.callingCode = t, this.onCallingCodeChange(t, this.country);
1676
+ }
1677
+ }, {
1678
+ key: "startInternationalNumber",
1679
+ value: function(t, n) {
1680
+ this.international = !0, this.initCountryAndCallingCode(t, n);
1681
+ }
1682
+ }, {
1683
+ key: "appendDigits",
1684
+ value: function(t) {
1685
+ this.digits += t;
1686
+ }
1687
+ }, {
1688
+ key: "appendNationalSignificantNumberDigits",
1689
+ value: function(t) {
1690
+ this.nationalSignificantNumber += t;
1691
+ }
1692
+ /**
1693
+ * Returns the part of `this.digits` that corresponds to the national number.
1694
+ * Basically, all digits that have been input by the user, except for the
1695
+ * international prefix and the country calling code part
1696
+ * (if the number is an international one).
1697
+ * @return {string}
1698
+ */
1699
+ }, {
1700
+ key: "getNationalDigits",
1701
+ value: function() {
1702
+ return this.international ? this.digits.slice((this.IDDPrefix ? this.IDDPrefix.length : 0) + (this.callingCode ? this.callingCode.length : 0)) : this.digits;
1703
+ }
1704
+ }, {
1705
+ key: "getDigitsWithoutInternationalPrefix",
1706
+ value: function() {
1707
+ return this.international && this.IDDPrefix ? this.digits.slice(this.IDDPrefix.length) : this.digits;
1708
+ }
1709
+ }]), e;
1710
+ }();
1711
+ function vn(e, r) {
1712
+ var t = typeof Symbol < "u" && e[Symbol.iterator] || e["@@iterator"];
1713
+ if (t) return (t = t.call(e)).next.bind(t);
1714
+ if (Array.isArray(e) || (t = Nn(e)) || r) {
1715
+ t && (e = t);
1716
+ var n = 0;
1717
+ return function() {
1718
+ return n >= e.length ? { done: !0 } : { done: !1, value: e[n++] };
1719
+ };
1720
+ }
1721
+ throw new TypeError(`Invalid attempt to iterate non-iterable instance.
1722
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`);
1723
+ }
1724
+ function Nn(e, r) {
1725
+ if (e) {
1726
+ if (typeof e == "string") return At(e, r);
1727
+ var t = Object.prototype.toString.call(e).slice(8, -1);
1728
+ if (t === "Object" && e.constructor && (t = e.constructor.name), t === "Map" || t === "Set") return Array.from(e);
1729
+ if (t === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)) return At(e, r);
1730
+ }
1731
+ }
1732
+ function At(e, r) {
1733
+ (r == null || r > e.length) && (r = e.length);
1734
+ for (var t = 0, n = new Array(r); t < r; t++)
1735
+ n[t] = e[t];
1736
+ return n;
1737
+ }
1738
+ var N = "x", B = new RegExp(N);
1739
+ function A(e, r) {
1740
+ if (r < 1)
1741
+ return "";
1742
+ for (var t = ""; r > 1; )
1743
+ r & 1 && (t += e), r >>= 1, e += e;
1744
+ return t + e;
1745
+ }
1746
+ function Tt(e, r) {
1747
+ return e[r] === ")" && r++, bn(e.slice(0, r));
1748
+ }
1749
+ function bn(e) {
1750
+ for (var r = [], t = 0; t < e.length; )
1751
+ e[t] === "(" ? r.push(t) : e[t] === ")" && r.pop(), t++;
1752
+ var n = 0, d = "";
1753
+ r.push(e.length);
1754
+ for (var i = 0, a = r; i < a.length; i++) {
1755
+ var $ = a[i];
1756
+ d += e.slice(n, $), n = $ + 1;
1757
+ }
1758
+ return d;
1759
+ }
1760
+ function pn(e, r, t) {
1761
+ for (var n = vn(t.split("")), d; !(d = n()).done; ) {
1762
+ var i = d.value;
1763
+ if (e.slice(r + 1).search(B) < 0)
1764
+ return;
1765
+ r = e.search(B), e = e.replace(B, i);
1766
+ }
1767
+ return [e, r];
1768
+ }
1769
+ function Cn(e, r, t) {
1770
+ var n = t.metadata, d = t.shouldTryNationalPrefixFormattingRule, i = t.getSeparatorAfterNationalPrefix, a = new RegExp("^(?:".concat(r.pattern(), ")$"));
1771
+ if (a.test(e.nationalSignificantNumber))
1772
+ return xn(e, r, {
1773
+ metadata: n,
1774
+ shouldTryNationalPrefixFormattingRule: d,
1775
+ getSeparatorAfterNationalPrefix: i
1776
+ });
1777
+ }
1778
+ function Pn(e, r) {
1779
+ return R(e, r) === "IS_POSSIBLE";
1780
+ }
1781
+ function xn(e, r, t) {
1782
+ var n = t.metadata, d = t.shouldTryNationalPrefixFormattingRule, i = t.getSeparatorAfterNationalPrefix;
1783
+ if (e.nationalSignificantNumber, e.international, e.nationalPrefix, e.carrierCode, d(r)) {
1784
+ var a = _t(e, r, {
1785
+ useNationalPrefixFormattingRule: !0,
1786
+ getSeparatorAfterNationalPrefix: i,
1787
+ metadata: n
1788
+ });
1789
+ if (a)
1790
+ return a;
1791
+ }
1792
+ return _t(e, r, {
1793
+ useNationalPrefixFormattingRule: !1,
1794
+ getSeparatorAfterNationalPrefix: i,
1795
+ metadata: n
1796
+ });
1797
+ }
1798
+ function _t(e, r, t) {
1799
+ var n = t.metadata, d = t.useNationalPrefixFormattingRule, i = t.getSeparatorAfterNationalPrefix, a = Zt(e.nationalSignificantNumber, r, {
1800
+ carrierCode: e.carrierCode,
1801
+ useInternationalFormat: e.international,
1802
+ withNationalPrefix: d,
1803
+ metadata: n
1804
+ });
1805
+ if (d || (e.nationalPrefix ? a = e.nationalPrefix + i(r) + a : e.complexPrefixBeforeNationalSignificantNumber && (a = e.complexPrefixBeforeNationalSignificantNumber + " " + a)), En(a, e))
1806
+ return a;
1807
+ }
1808
+ function En(e, r) {
1809
+ return _(e) === r.getNationalDigits();
1810
+ }
1811
+ function Sn(e, r) {
1812
+ if (!(e instanceof r))
1813
+ throw new TypeError("Cannot call a class as a function");
1814
+ }
1815
+ function Fn(e, r) {
1816
+ for (var t = 0; t < r.length; t++) {
1817
+ var n = r[t];
1818
+ n.enumerable = n.enumerable || !1, n.configurable = !0, "value" in n && (n.writable = !0), Object.defineProperty(e, n.key, n);
1819
+ }
1820
+ }
1821
+ function In(e, r, t) {
1822
+ return r && Fn(e.prototype, r), Object.defineProperty(e, "prototype", { writable: !1 }), e;
1823
+ }
1824
+ var An = /* @__PURE__ */ function() {
1825
+ function e() {
1826
+ Sn(this, e);
1827
+ }
1828
+ return In(e, [{
1829
+ key: "parse",
1830
+ value: function(t) {
1831
+ if (this.context = [{
1832
+ or: !0,
1833
+ instructions: []
1834
+ }], this.parsePattern(t), this.context.length !== 1)
1835
+ throw new Error("Non-finalized contexts left when pattern parse ended");
1836
+ var n = this.context[0], d = n.branches, i = n.instructions;
1837
+ if (d)
1838
+ return {
1839
+ op: "|",
1840
+ args: d.concat([j(i)])
1841
+ };
1842
+ if (i.length === 0)
1843
+ throw new Error("Pattern is required");
1844
+ return i.length === 1 ? i[0] : i;
1845
+ }
1846
+ }, {
1847
+ key: "startContext",
1848
+ value: function(t) {
1849
+ this.context.push(t);
1850
+ }
1851
+ }, {
1852
+ key: "endContext",
1853
+ value: function() {
1854
+ this.context.pop();
1855
+ }
1856
+ }, {
1857
+ key: "getContext",
1858
+ value: function() {
1859
+ return this.context[this.context.length - 1];
1860
+ }
1861
+ }, {
1862
+ key: "parsePattern",
1863
+ value: function(t) {
1864
+ if (!t)
1865
+ throw new Error("Pattern is required");
1866
+ var n = t.match(On);
1867
+ if (!n) {
1868
+ if (_n.test(t))
1869
+ throw new Error("Illegal characters found in a pattern: ".concat(t));
1870
+ this.getContext().instructions = this.getContext().instructions.concat(t.split(""));
1871
+ return;
1872
+ }
1873
+ var d = n[1], i = t.slice(0, n.index), a = t.slice(n.index + d.length);
1874
+ switch (d) {
1875
+ case "(?:":
1876
+ i && this.parsePattern(i), this.startContext({
1877
+ or: !0,
1878
+ instructions: [],
1879
+ branches: []
1880
+ });
1881
+ break;
1882
+ case ")":
1883
+ if (!this.getContext().or)
1884
+ throw new Error('")" operator must be preceded by "(?:" operator');
1885
+ if (i && this.parsePattern(i), this.getContext().instructions.length === 0)
1886
+ throw new Error('No instructions found after "|" operator in an "or" group');
1887
+ var $ = this.getContext(), o = $.branches;
1888
+ o.push(j(this.getContext().instructions)), this.endContext(), this.getContext().instructions.push({
1889
+ op: "|",
1890
+ args: o
1891
+ });
1892
+ break;
1893
+ case "|":
1894
+ if (!this.getContext().or)
1895
+ throw new Error('"|" operator can only be used inside "or" groups');
1896
+ if (i && this.parsePattern(i), !this.getContext().branches)
1897
+ if (this.context.length === 1)
1898
+ this.getContext().branches = [];
1899
+ else
1900
+ throw new Error('"branches" not found in an "or" group context');
1901
+ this.getContext().branches.push(j(this.getContext().instructions)), this.getContext().instructions = [];
1902
+ break;
1903
+ case "[":
1904
+ i && this.parsePattern(i), this.startContext({
1905
+ oneOfSet: !0
1906
+ });
1907
+ break;
1908
+ case "]":
1909
+ if (!this.getContext().oneOfSet)
1910
+ throw new Error('"]" operator must be preceded by "[" operator');
1911
+ this.endContext(), this.getContext().instructions.push({
1912
+ op: "[]",
1913
+ args: Tn(i)
1914
+ });
1915
+ break;
1916
+ /* istanbul ignore next */
1917
+ default:
1918
+ throw new Error("Unknown operator: ".concat(d));
1919
+ }
1920
+ a && this.parsePattern(a);
1921
+ }
1922
+ }]), e;
1923
+ }();
1924
+ function Tn(e) {
1925
+ for (var r = [], t = 0; t < e.length; ) {
1926
+ if (e[t] === "-") {
1927
+ if (t === 0 || t === e.length - 1)
1928
+ throw new Error("Couldn't parse a one-of set pattern: ".concat(e));
1929
+ for (var n = e[t - 1].charCodeAt(0) + 1, d = e[t + 1].charCodeAt(0) - 1, i = n; i <= d; )
1930
+ r.push(String.fromCharCode(i)), i++;
1931
+ } else
1932
+ r.push(e[t]);
1933
+ t++;
1934
+ }
1935
+ return r;
1936
+ }
1937
+ var _n = /[\(\)\[\]\?\:\|]/, On = new RegExp(
1938
+ // any of:
1939
+ "(\\||\\(\\?\\:|\\)|\\[|\\])"
1940
+ );
1941
+ function j(e) {
1942
+ return e.length === 1 ? e[0] : e;
1943
+ }
1944
+ function Ot(e, r) {
1945
+ var t = typeof Symbol < "u" && e[Symbol.iterator] || e["@@iterator"];
1946
+ if (t) return (t = t.call(e)).next.bind(t);
1947
+ if (Array.isArray(e) || (t = wn(e)) || r) {
1948
+ t && (e = t);
1949
+ var n = 0;
1950
+ return function() {
1951
+ return n >= e.length ? { done: !0 } : { done: !1, value: e[n++] };
1952
+ };
1953
+ }
1954
+ throw new TypeError(`Invalid attempt to iterate non-iterable instance.
1955
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`);
1956
+ }
1957
+ function wn(e, r) {
1958
+ if (e) {
1959
+ if (typeof e == "string") return wt(e, r);
1960
+ var t = Object.prototype.toString.call(e).slice(8, -1);
1961
+ if (t === "Object" && e.constructor && (t = e.constructor.name), t === "Map" || t === "Set") return Array.from(e);
1962
+ if (t === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)) return wt(e, r);
1963
+ }
1964
+ }
1965
+ function wt(e, r) {
1966
+ (r == null || r > e.length) && (r = e.length);
1967
+ for (var t = 0, n = new Array(r); t < r; t++)
1968
+ n[t] = e[t];
1969
+ return n;
1970
+ }
1971
+ function Rn(e, r) {
1972
+ if (!(e instanceof r))
1973
+ throw new TypeError("Cannot call a class as a function");
1974
+ }
1975
+ function Dn(e, r) {
1976
+ for (var t = 0; t < r.length; t++) {
1977
+ var n = r[t];
1978
+ n.enumerable = n.enumerable || !1, n.configurable = !0, "value" in n && (n.writable = !0), Object.defineProperty(e, n.key, n);
1979
+ }
1980
+ }
1981
+ function Mn(e, r, t) {
1982
+ return r && Dn(e.prototype, r), Object.defineProperty(e, "prototype", { writable: !1 }), e;
1983
+ }
1984
+ var Ln = /* @__PURE__ */ function() {
1985
+ function e(r) {
1986
+ Rn(this, e), this.matchTree = new An().parse(r);
1987
+ }
1988
+ return Mn(e, [{
1989
+ key: "match",
1990
+ value: function(t) {
1991
+ var n = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}, d = n.allowOverflow;
1992
+ if (!t)
1993
+ throw new Error("String is required");
1994
+ var i = Q(t.split(""), this.matchTree, !0);
1995
+ if (i && i.match && delete i.matchedChars, !(i && i.overflow && !d))
1996
+ return i;
1997
+ }
1998
+ }]), e;
1999
+ }();
2000
+ function Q(e, r, t) {
2001
+ if (typeof r == "string") {
2002
+ var n = e.join("");
2003
+ return r.indexOf(n) === 0 ? e.length === r.length ? {
2004
+ match: !0,
2005
+ matchedChars: e
2006
+ } : {
2007
+ partialMatch: !0
2008
+ // matchedChars: characters
2009
+ } : n.indexOf(r) === 0 ? t && e.length > r.length ? {
2010
+ overflow: !0
2011
+ } : {
2012
+ match: !0,
2013
+ matchedChars: e.slice(0, r.length)
2014
+ } : void 0;
2015
+ }
2016
+ if (Array.isArray(r)) {
2017
+ for (var d = e.slice(), i = 0; i < r.length; ) {
2018
+ var a = r[i], $ = Q(d, a, t && i === r.length - 1);
2019
+ if ($) {
2020
+ if ($.overflow)
2021
+ return $;
2022
+ if ($.match) {
2023
+ if (d = d.slice($.matchedChars.length), d.length === 0)
2024
+ return i === r.length - 1 ? {
2025
+ match: !0,
2026
+ matchedChars: e
2027
+ } : {
2028
+ partialMatch: !0
2029
+ // matchedChars: characters
2030
+ };
2031
+ } else {
2032
+ if ($.partialMatch)
2033
+ return {
2034
+ partialMatch: !0
2035
+ // matchedChars: characters
2036
+ };
2037
+ throw new Error(`Unsupported match result:
2038
+ `.concat(JSON.stringify($, null, 2)));
2039
+ }
2040
+ } else return;
2041
+ i++;
2042
+ }
2043
+ return t ? {
2044
+ overflow: !0
2045
+ } : {
2046
+ match: !0,
2047
+ matchedChars: e.slice(0, e.length - d.length)
2048
+ };
2049
+ }
2050
+ switch (r.op) {
2051
+ case "|":
2052
+ for (var o, u = Ot(r.args), l; !(l = u()).done; ) {
2053
+ var f = l.value, s = Q(e, f, t);
2054
+ if (s) {
2055
+ if (s.overflow)
2056
+ return s;
2057
+ if (s.match)
2058
+ return {
2059
+ match: !0,
2060
+ matchedChars: s.matchedChars
2061
+ };
2062
+ if (s.partialMatch)
2063
+ o = !0;
2064
+ else
2065
+ throw new Error(`Unsupported match result:
2066
+ `.concat(JSON.stringify(s, null, 2)));
2067
+ }
2068
+ }
2069
+ return o ? {
2070
+ partialMatch: !0
2071
+ // matchedChars: ...
2072
+ } : void 0;
2073
+ case "[]":
2074
+ for (var c = Ot(r.args), y; !(y = c()).done; ) {
2075
+ var p = y.value;
2076
+ if (e[0] === p)
2077
+ return e.length === 1 ? {
2078
+ match: !0,
2079
+ matchedChars: e
2080
+ } : t ? {
2081
+ overflow: !0
2082
+ } : {
2083
+ match: !0,
2084
+ matchedChars: [p]
2085
+ };
2086
+ }
2087
+ return;
2088
+ /* istanbul ignore next */
2089
+ default:
2090
+ throw new Error("Unsupported instruction tree: ".concat(r));
2091
+ }
2092
+ }
2093
+ function Rt(e, r) {
2094
+ var t = typeof Symbol < "u" && e[Symbol.iterator] || e["@@iterator"];
2095
+ if (t) return (t = t.call(e)).next.bind(t);
2096
+ if (Array.isArray(e) || (t = kn(e)) || r) {
2097
+ t && (e = t);
2098
+ var n = 0;
2099
+ return function() {
2100
+ return n >= e.length ? { done: !0 } : { done: !1, value: e[n++] };
2101
+ };
2102
+ }
2103
+ throw new TypeError(`Invalid attempt to iterate non-iterable instance.
2104
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`);
2105
+ }
2106
+ function kn(e, r) {
2107
+ if (e) {
2108
+ if (typeof e == "string") return Dt(e, r);
2109
+ var t = Object.prototype.toString.call(e).slice(8, -1);
2110
+ if (t === "Object" && e.constructor && (t = e.constructor.name), t === "Map" || t === "Set") return Array.from(e);
2111
+ if (t === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)) return Dt(e, r);
2112
+ }
2113
+ }
2114
+ function Dt(e, r) {
2115
+ (r == null || r > e.length) && (r = e.length);
2116
+ for (var t = 0, n = new Array(r); t < r; t++)
2117
+ n[t] = e[t];
2118
+ return n;
2119
+ }
2120
+ function Gn(e, r) {
2121
+ if (!(e instanceof r))
2122
+ throw new TypeError("Cannot call a class as a function");
2123
+ }
2124
+ function Bn(e, r) {
2125
+ for (var t = 0; t < r.length; t++) {
2126
+ var n = r[t];
2127
+ n.enumerable = n.enumerable || !1, n.configurable = !0, "value" in n && (n.writable = !0), Object.defineProperty(e, n.key, n);
2128
+ }
2129
+ }
2130
+ function jn(e, r, t) {
2131
+ return r && Bn(e.prototype, r), Object.defineProperty(e, "prototype", { writable: !1 }), e;
2132
+ }
2133
+ var q = "9", Un = 15, Hn = A(q, Un), Wn = /[- ]/, Vn = function() {
2134
+ return /\[([^\[\]])*\]/g;
2135
+ }, Kn = function() {
2136
+ return /\d(?=[^,}][^,}])/g;
2137
+ }, Xn = new RegExp("[" + b + "]*\\$1[" + b + "]*(\\$\\d[" + b + "]*)*$"), Mt = 3, Yn = /* @__PURE__ */ function() {
2138
+ function e(r) {
2139
+ r.state;
2140
+ var t = r.metadata;
2141
+ Gn(this, e), this.metadata = t, this.resetFormat();
2142
+ }
2143
+ return jn(e, [{
2144
+ key: "resetFormat",
2145
+ value: function() {
2146
+ this.chosenFormat = void 0, this.template = void 0, this.nationalNumberTemplate = void 0, this.populatedNationalNumberTemplate = void 0, this.populatedNationalNumberTemplatePosition = -1;
2147
+ }
2148
+ }, {
2149
+ key: "reset",
2150
+ value: function(t, n) {
2151
+ this.resetFormat(), t ? (this.isNANP = t.callingCode() === "1", this.matchingFormats = t.formats(), n.nationalSignificantNumber && this.narrowDownMatchingFormats(n)) : (this.isNANP = void 0, this.matchingFormats = []);
2152
+ }
2153
+ /**
2154
+ * Formats an updated phone number.
2155
+ * @param {string} nextDigits — Additional phone number digits.
2156
+ * @param {object} state — `AsYouType` state.
2157
+ * @return {[string]} Returns undefined if the updated phone number can't be formatted using any of the available formats.
2158
+ */
2159
+ }, {
2160
+ key: "format",
2161
+ value: function(t, n) {
2162
+ var d = this;
2163
+ if (Pn(n.nationalSignificantNumber, this.metadata))
2164
+ for (var i = Rt(this.matchingFormats), a; !(a = i()).done; ) {
2165
+ var $ = a.value, o = Cn(n, $, {
2166
+ metadata: this.metadata,
2167
+ shouldTryNationalPrefixFormattingRule: function(l) {
2168
+ return d.shouldTryNationalPrefixFormattingRule(l, {
2169
+ international: n.international,
2170
+ nationalPrefix: n.nationalPrefix
2171
+ });
2172
+ },
2173
+ getSeparatorAfterNationalPrefix: function(l) {
2174
+ return d.getSeparatorAfterNationalPrefix(l);
2175
+ }
2176
+ });
2177
+ if (o)
2178
+ return this.resetFormat(), this.chosenFormat = $, this.setNationalNumberTemplate(o.replace(/\d/g, N), n), this.populatedNationalNumberTemplate = o, this.populatedNationalNumberTemplatePosition = this.template.lastIndexOf(N), o;
2179
+ }
2180
+ return this.formatNationalNumberWithNextDigits(t, n);
2181
+ }
2182
+ // Formats the next phone number digits.
2183
+ }, {
2184
+ key: "formatNationalNumberWithNextDigits",
2185
+ value: function(t, n) {
2186
+ var d = this.chosenFormat, i = this.chooseFormat(n);
2187
+ if (i)
2188
+ return i === d ? this.formatNextNationalNumberDigits(t) : this.formatNextNationalNumberDigits(n.getNationalDigits());
2189
+ }
2190
+ }, {
2191
+ key: "narrowDownMatchingFormats",
2192
+ value: function(t) {
2193
+ var n = this, d = t.nationalSignificantNumber, i = t.nationalPrefix, a = t.international, $ = d, o = $.length - Mt;
2194
+ o < 0 && (o = 0), this.matchingFormats = this.matchingFormats.filter(function(u) {
2195
+ return n.formatSuits(u, a, i) && n.formatMatches(u, $, o);
2196
+ }), this.chosenFormat && this.matchingFormats.indexOf(this.chosenFormat) === -1 && this.resetFormat();
2197
+ }
2198
+ }, {
2199
+ key: "formatSuits",
2200
+ value: function(t, n, d) {
2201
+ return !(d && !t.usesNationalPrefix() && // !format.domesticCarrierCodeFormattingRule() &&
2202
+ !t.nationalPrefixIsOptionalWhenFormattingInNationalFormat() || !n && !d && t.nationalPrefixIsMandatoryWhenFormattingInNationalFormat());
2203
+ }
2204
+ }, {
2205
+ key: "formatMatches",
2206
+ value: function(t, n, d) {
2207
+ var i = t.leadingDigitsPatterns().length;
2208
+ if (i === 0)
2209
+ return !0;
2210
+ d = Math.min(d, i - 1);
2211
+ var a = t.leadingDigitsPatterns()[d];
2212
+ if (n.length < Mt)
2213
+ try {
2214
+ return new Ln(a).match(n, {
2215
+ allowOverflow: !0
2216
+ }) !== void 0;
2217
+ } catch ($) {
2218
+ return console.error($), !0;
2219
+ }
2220
+ return new RegExp("^(".concat(a, ")")).test(n);
2221
+ }
2222
+ }, {
2223
+ key: "getFormatFormat",
2224
+ value: function(t, n) {
2225
+ return n ? t.internationalFormat() : t.format();
2226
+ }
2227
+ }, {
2228
+ key: "chooseFormat",
2229
+ value: function(t) {
2230
+ for (var n = this, d = function() {
2231
+ var u = a.value;
2232
+ return n.chosenFormat === u ? "break" : Xn.test(n.getFormatFormat(u, t.international)) ? n.createTemplateForFormat(u, t) ? (n.chosenFormat = u, "break") : (n.matchingFormats = n.matchingFormats.filter(function(l) {
2233
+ return l !== u;
2234
+ }), "continue") : "continue";
2235
+ }, i = Rt(this.matchingFormats.slice()), a; !(a = i()).done; ) {
2236
+ var $ = d();
2237
+ if ($ === "break") break;
2238
+ }
2239
+ return this.chosenFormat || this.resetFormat(), this.chosenFormat;
2240
+ }
2241
+ }, {
2242
+ key: "createTemplateForFormat",
2243
+ value: function(t, n) {
2244
+ if (!(t.pattern().indexOf("|") >= 0)) {
2245
+ var d = this.getTemplateForFormat(t, n);
2246
+ if (d)
2247
+ return this.setNationalNumberTemplate(d, n), !0;
2248
+ }
2249
+ }
2250
+ }, {
2251
+ key: "getSeparatorAfterNationalPrefix",
2252
+ value: function(t) {
2253
+ return this.isNANP || t && t.nationalPrefixFormattingRule() && Wn.test(t.nationalPrefixFormattingRule()) ? " " : "";
2254
+ }
2255
+ }, {
2256
+ key: "getInternationalPrefixBeforeCountryCallingCode",
2257
+ value: function(t, n) {
2258
+ var d = t.IDDPrefix, i = t.missingPlus;
2259
+ return d ? n && n.spacing === !1 ? d : d + " " : i ? "" : "+";
2260
+ }
2261
+ }, {
2262
+ key: "getTemplate",
2263
+ value: function(t) {
2264
+ if (this.template) {
2265
+ for (var n = -1, d = 0, i = t.international ? this.getInternationalPrefixBeforeCountryCallingCode(t, {
2266
+ spacing: !1
2267
+ }) : ""; d < i.length + t.getDigitsWithoutInternationalPrefix().length; )
2268
+ n = this.template.indexOf(N, n + 1), d++;
2269
+ return Tt(this.template, n + 1);
2270
+ }
2271
+ }
2272
+ }, {
2273
+ key: "setNationalNumberTemplate",
2274
+ value: function(t, n) {
2275
+ this.nationalNumberTemplate = t, this.populatedNationalNumberTemplate = t, this.populatedNationalNumberTemplatePosition = -1, n.international ? this.template = this.getInternationalPrefixBeforeCountryCallingCode(n).replace(/[\d\+]/g, N) + A(N, n.callingCode.length) + " " + t : this.template = t;
2276
+ }
2277
+ /**
2278
+ * Generates formatting template for a national phone number,
2279
+ * optionally containing a national prefix, for a format.
2280
+ * @param {Format} format
2281
+ * @param {string} nationalPrefix
2282
+ * @return {string}
2283
+ */
2284
+ }, {
2285
+ key: "getTemplateForFormat",
2286
+ value: function(t, n) {
2287
+ var d = n.nationalSignificantNumber, i = n.international, a = n.nationalPrefix, $ = n.complexPrefixBeforeNationalSignificantNumber, o = t.pattern();
2288
+ o = o.replace(Vn(), "\\d").replace(Kn(), "\\d");
2289
+ var u = Hn.match(o)[0];
2290
+ if (!(d.length > u.length)) {
2291
+ var l = new RegExp("^" + o + "$"), f = d.replace(/\d/g, q);
2292
+ l.test(f) && (u = f);
2293
+ var s = this.getFormatFormat(t, i), c;
2294
+ if (this.shouldTryNationalPrefixFormattingRule(t, {
2295
+ international: i,
2296
+ nationalPrefix: a
2297
+ })) {
2298
+ var y = s.replace(Yt, t.nationalPrefixFormattingRule());
2299
+ if (_(t.nationalPrefixFormattingRule()) === (a || "") + _("$1") && (s = y, c = !0, a))
2300
+ for (var p = a.length; p > 0; )
2301
+ s = s.replace(/\d/, N), p--;
2302
+ }
2303
+ var v = u.replace(new RegExp(o), s).replace(new RegExp(q, "g"), N);
2304
+ return c || ($ ? v = A(N, $.length) + " " + v : a && (v = A(N, a.length) + this.getSeparatorAfterNationalPrefix(t) + v)), i && (v = Xt(v)), v;
2305
+ }
2306
+ }
2307
+ }, {
2308
+ key: "formatNextNationalNumberDigits",
2309
+ value: function(t) {
2310
+ var n = pn(this.populatedNationalNumberTemplate, this.populatedNationalNumberTemplatePosition, t);
2311
+ if (!n) {
2312
+ this.resetFormat();
2313
+ return;
2314
+ }
2315
+ return this.populatedNationalNumberTemplate = n[0], this.populatedNationalNumberTemplatePosition = n[1], Tt(this.populatedNationalNumberTemplate, this.populatedNationalNumberTemplatePosition + 1);
2316
+ }
2317
+ }, {
2318
+ key: "shouldTryNationalPrefixFormattingRule",
2319
+ value: function(t, n) {
2320
+ var d = n.international, i = n.nationalPrefix;
2321
+ if (t.nationalPrefixFormattingRule()) {
2322
+ var a = t.usesNationalPrefix();
2323
+ if (a && i || !a && !d)
2324
+ return !0;
2325
+ }
2326
+ }
2327
+ }]), e;
2328
+ }();
2329
+ function de(e, r) {
2330
+ return qn(e) || Qn(e, r) || Jn(e, r) || Zn();
2331
+ }
2332
+ function Zn() {
2333
+ throw new TypeError(`Invalid attempt to destructure non-iterable instance.
2334
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`);
2335
+ }
2336
+ function Jn(e, r) {
2337
+ if (e) {
2338
+ if (typeof e == "string") return Lt(e, r);
2339
+ var t = Object.prototype.toString.call(e).slice(8, -1);
2340
+ if (t === "Object" && e.constructor && (t = e.constructor.name), t === "Map" || t === "Set") return Array.from(e);
2341
+ if (t === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)) return Lt(e, r);
2342
+ }
2343
+ }
2344
+ function Lt(e, r) {
2345
+ (r == null || r > e.length) && (r = e.length);
2346
+ for (var t = 0, n = new Array(r); t < r; t++)
2347
+ n[t] = e[t];
2348
+ return n;
2349
+ }
2350
+ function Qn(e, r) {
2351
+ var t = e == null ? null : typeof Symbol < "u" && e[Symbol.iterator] || e["@@iterator"];
2352
+ if (t != null) {
2353
+ var n = [], d = !0, i = !1, a, $;
2354
+ try {
2355
+ for (t = t.call(e); !(d = (a = t.next()).done) && (n.push(a.value), !(r && n.length === r)); d = !0)
2356
+ ;
2357
+ } catch (o) {
2358
+ i = !0, $ = o;
2359
+ } finally {
2360
+ try {
2361
+ !d && t.return != null && t.return();
2362
+ } finally {
2363
+ if (i) throw $;
2364
+ }
2365
+ }
2366
+ return n;
2367
+ }
2368
+ }
2369
+ function qn(e) {
2370
+ if (Array.isArray(e)) return e;
2371
+ }
2372
+ function zn(e, r) {
2373
+ if (!(e instanceof r))
2374
+ throw new TypeError("Cannot call a class as a function");
2375
+ }
2376
+ function td(e, r) {
2377
+ for (var t = 0; t < r.length; t++) {
2378
+ var n = r[t];
2379
+ n.enumerable = n.enumerable || !1, n.configurable = !0, "value" in n && (n.writable = !0), Object.defineProperty(e, n.key, n);
2380
+ }
2381
+ }
2382
+ function ed(e, r, t) {
2383
+ return r && td(e.prototype, r), Object.defineProperty(e, "prototype", { writable: !1 }), e;
2384
+ }
2385
+ var rd = "[" + b + g + "]+", nd = new RegExp("^" + rd + "$", "i"), dd = "(?:[" + D + "][" + b + g + "]*|[" + b + g + "]+)", id = new RegExp("[^" + b + g + "]+.*$"), ad = /[^\d\[\]]/, $d = /* @__PURE__ */ function() {
2386
+ function e(r) {
2387
+ var t = r.defaultCountry, n = r.defaultCallingCode, d = r.metadata, i = r.onNationalSignificantNumberChange;
2388
+ zn(this, e), this.defaultCountry = t, this.defaultCallingCode = n, this.metadata = d, this.onNationalSignificantNumberChange = i;
2389
+ }
2390
+ return ed(e, [{
2391
+ key: "input",
2392
+ value: function(t, n) {
2393
+ var d = ld(t), i = de(d, 2), a = i[0], $ = i[1], o = _(a), u;
2394
+ return $ && (n.digits || (n.startInternationalNumber(), o || (u = !0))), o && this.inputDigits(o, n), {
2395
+ digits: o,
2396
+ justLeadingPlus: u
2397
+ };
2398
+ }
2399
+ /**
2400
+ * Inputs "next" phone number digits.
2401
+ * @param {string} digits
2402
+ * @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".
2403
+ */
2404
+ }, {
2405
+ key: "inputDigits",
2406
+ value: function(t, n) {
2407
+ var d = n.digits, i = d.length < 3 && d.length + t.length >= 3;
2408
+ if (n.appendDigits(t), i && this.extractIddPrefix(n), this.isWaitingForCountryCallingCode(n)) {
2409
+ if (!this.extractCountryCallingCode(n))
2410
+ return;
2411
+ } else
2412
+ n.appendNationalSignificantNumberDigits(t);
2413
+ n.international || this.hasExtractedNationalSignificantNumber || this.extractNationalSignificantNumber(n.getNationalDigits(), function(a) {
2414
+ return n.update(a);
2415
+ });
2416
+ }
2417
+ }, {
2418
+ key: "isWaitingForCountryCallingCode",
2419
+ value: function(t) {
2420
+ var n = t.international, d = t.callingCode;
2421
+ return n && !d;
2422
+ }
2423
+ // Extracts a country calling code from a number
2424
+ // being entered in internatonal format.
2425
+ }, {
2426
+ key: "extractCountryCallingCode",
2427
+ value: function(t) {
2428
+ var n = rt("+" + t.getDigitsWithoutInternationalPrefix(), this.defaultCountry, this.defaultCallingCode, this.metadata.metadata), d = n.countryCallingCode, i = n.number;
2429
+ if (d)
2430
+ return t.setCallingCode(d), t.update({
2431
+ nationalSignificantNumber: i
2432
+ }), !0;
2433
+ }
2434
+ }, {
2435
+ key: "reset",
2436
+ value: function(t) {
2437
+ if (t) {
2438
+ this.hasSelectedNumberingPlan = !0;
2439
+ var n = t._nationalPrefixForParsing();
2440
+ this.couldPossiblyExtractAnotherNationalSignificantNumber = n && ad.test(n);
2441
+ } else
2442
+ this.hasSelectedNumberingPlan = void 0, this.couldPossiblyExtractAnotherNationalSignificantNumber = void 0;
2443
+ }
2444
+ /**
2445
+ * Extracts a national (significant) number from user input.
2446
+ * Google's library is different in that it only applies `national_prefix_for_parsing`
2447
+ * and doesn't apply `national_prefix_transform_rule` after that.
2448
+ * https://github.com/google/libphonenumber/blob/a3d70b0487875475e6ad659af404943211d26456/java/libphonenumber/src/com/google/i18n/phonenumbers/AsYouTypeFormatter.java#L539
2449
+ * @return {boolean} [extracted]
2450
+ */
2451
+ }, {
2452
+ key: "extractNationalSignificantNumber",
2453
+ value: function(t, n) {
2454
+ if (this.hasSelectedNumberingPlan) {
2455
+ var d = V(t, this.metadata), i = d.nationalPrefix, a = d.nationalNumber, $ = d.carrierCode;
2456
+ if (a !== t)
2457
+ return this.onExtractedNationalNumber(i, $, a, t, n), !0;
2458
+ }
2459
+ }
2460
+ /**
2461
+ * In Google's code this function is called "attempt to extract longer NDD".
2462
+ * "Some national prefixes are a substring of others", they say.
2463
+ * @return {boolean} [result] — Returns `true` if extracting a national prefix produced different results from what they were.
2464
+ */
2465
+ }, {
2466
+ key: "extractAnotherNationalSignificantNumber",
2467
+ value: function(t, n, d) {
2468
+ if (!this.hasExtractedNationalSignificantNumber)
2469
+ return this.extractNationalSignificantNumber(t, d);
2470
+ if (this.couldPossiblyExtractAnotherNationalSignificantNumber) {
2471
+ var i = V(t, this.metadata), a = i.nationalPrefix, $ = i.nationalNumber, o = i.carrierCode;
2472
+ if ($ !== n)
2473
+ return this.onExtractedNationalNumber(a, o, $, t, d), !0;
2474
+ }
2475
+ }
2476
+ }, {
2477
+ key: "onExtractedNationalNumber",
2478
+ value: function(t, n, d, i, a) {
2479
+ var $, o, u = i.lastIndexOf(d);
2480
+ if (u >= 0 && u === i.length - d.length) {
2481
+ o = !0;
2482
+ var l = i.slice(0, u);
2483
+ l !== t && ($ = l);
2484
+ }
2485
+ a({
2486
+ nationalPrefix: t,
2487
+ carrierCode: n,
2488
+ nationalSignificantNumber: d,
2489
+ nationalSignificantNumberMatchesInput: o,
2490
+ complexPrefixBeforeNationalSignificantNumber: $
2491
+ }), this.hasExtractedNationalSignificantNumber = !0, this.onNationalSignificantNumberChange();
2492
+ }
2493
+ }, {
2494
+ key: "reExtractNationalSignificantNumber",
2495
+ value: function(t) {
2496
+ if (this.extractAnotherNationalSignificantNumber(t.getNationalDigits(), t.nationalSignificantNumber, function(n) {
2497
+ return t.update(n);
2498
+ }))
2499
+ return !0;
2500
+ if (this.extractIddPrefix(t))
2501
+ return this.extractCallingCodeAndNationalSignificantNumber(t), !0;
2502
+ if (this.fixMissingPlus(t))
2503
+ return this.extractCallingCodeAndNationalSignificantNumber(t), !0;
2504
+ }
2505
+ }, {
2506
+ key: "extractIddPrefix",
2507
+ value: function(t) {
2508
+ var n = t.international, d = t.IDDPrefix, i = t.digits;
2509
+ if (t.nationalSignificantNumber, !(n || d)) {
2510
+ var a = Vt(i, this.defaultCountry, this.defaultCallingCode, this.metadata.metadata);
2511
+ if (a !== void 0 && a !== i)
2512
+ return t.update({
2513
+ IDDPrefix: i.slice(0, i.length - a.length)
2514
+ }), this.startInternationalNumber(t, {
2515
+ country: void 0,
2516
+ callingCode: void 0
2517
+ }), !0;
2518
+ }
2519
+ }
2520
+ }, {
2521
+ key: "fixMissingPlus",
2522
+ value: function(t) {
2523
+ if (!t.international) {
2524
+ var n = Kt(t.digits, this.defaultCountry, this.defaultCallingCode, this.metadata.metadata), d = n.countryCallingCode;
2525
+ if (n.number, d)
2526
+ return t.update({
2527
+ missingPlus: !0
2528
+ }), this.startInternationalNumber(t, {
2529
+ country: t.country,
2530
+ callingCode: d
2531
+ }), !0;
2532
+ }
2533
+ }
2534
+ }, {
2535
+ key: "startInternationalNumber",
2536
+ value: function(t, n) {
2537
+ var d = n.country, i = n.callingCode;
2538
+ t.startInternationalNumber(d, i), t.nationalSignificantNumber && (t.resetNationalSignificantNumber(), this.onNationalSignificantNumberChange(), this.hasExtractedNationalSignificantNumber = void 0);
2539
+ }
2540
+ }, {
2541
+ key: "extractCallingCodeAndNationalSignificantNumber",
2542
+ value: function(t) {
2543
+ this.extractCountryCallingCode(t) && this.extractNationalSignificantNumber(t.getNationalDigits(), function(n) {
2544
+ return t.update(n);
2545
+ });
2546
+ }
2547
+ }]), e;
2548
+ }();
2549
+ function od(e) {
2550
+ var r = e.search(dd);
2551
+ if (!(r < 0)) {
2552
+ e = e.slice(r);
2553
+ var t;
2554
+ return e[0] === "+" && (t = !0, e = e.slice(1)), e = e.replace(id, ""), t && (e = "+" + e), e;
2555
+ }
2556
+ }
2557
+ function ud(e) {
2558
+ var r = od(e) || "";
2559
+ return r[0] === "+" ? [r.slice(1), !0] : [r];
2560
+ }
2561
+ function ld(e) {
2562
+ var r = ud(e), t = de(r, 2), n = t[0], d = t[1];
2563
+ return nd.test(n) || (n = ""), [n, d];
2564
+ }
2565
+ function sd(e, r) {
2566
+ return gd(e) || hd(e, r) || cd(e, r) || fd();
2567
+ }
2568
+ function fd() {
2569
+ throw new TypeError(`Invalid attempt to destructure non-iterable instance.
2570
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`);
2571
+ }
2572
+ function cd(e, r) {
2573
+ if (e) {
2574
+ if (typeof e == "string") return kt(e, r);
2575
+ var t = Object.prototype.toString.call(e).slice(8, -1);
2576
+ if (t === "Object" && e.constructor && (t = e.constructor.name), t === "Map" || t === "Set") return Array.from(e);
2577
+ if (t === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)) return kt(e, r);
2578
+ }
2579
+ }
2580
+ function kt(e, r) {
2581
+ (r == null || r > e.length) && (r = e.length);
2582
+ for (var t = 0, n = new Array(r); t < r; t++)
2583
+ n[t] = e[t];
2584
+ return n;
2585
+ }
2586
+ function hd(e, r) {
2587
+ var t = e == null ? null : typeof Symbol < "u" && e[Symbol.iterator] || e["@@iterator"];
2588
+ if (t != null) {
2589
+ var n = [], d = !0, i = !1, a, $;
2590
+ try {
2591
+ for (t = t.call(e); !(d = (a = t.next()).done) && (n.push(a.value), !(r && n.length === r)); d = !0)
2592
+ ;
2593
+ } catch (o) {
2594
+ i = !0, $ = o;
2595
+ } finally {
2596
+ try {
2597
+ !d && t.return != null && t.return();
2598
+ } finally {
2599
+ if (i) throw $;
2600
+ }
2601
+ }
2602
+ return n;
2603
+ }
2604
+ }
2605
+ function gd(e) {
2606
+ if (Array.isArray(e)) return e;
2607
+ }
2608
+ function md(e, r) {
2609
+ if (!(e instanceof r))
2610
+ throw new TypeError("Cannot call a class as a function");
2611
+ }
2612
+ function yd(e, r) {
2613
+ for (var t = 0; t < r.length; t++) {
2614
+ var n = r[t];
2615
+ n.enumerable = n.enumerable || !1, n.configurable = !0, "value" in n && (n.writable = !0), Object.defineProperty(e, n.key, n);
2616
+ }
2617
+ }
2618
+ function vd(e, r, t) {
2619
+ return r && yd(e.prototype, r), Object.defineProperty(e, "prototype", { writable: !1 }), e;
2620
+ }
2621
+ var Nd = /* @__PURE__ */ function() {
2622
+ function e(r, t) {
2623
+ md(this, e), this.metadata = new h(t);
2624
+ var n = this.getCountryAndCallingCode(r), d = sd(n, 2), i = d[0], a = d[1];
2625
+ this.defaultCountry = i, this.defaultCallingCode = a, this.reset();
2626
+ }
2627
+ return vd(e, [{
2628
+ key: "getCountryAndCallingCode",
2629
+ value: function(t) {
2630
+ var n, d;
2631
+ return t && (x(t) ? (n = t.defaultCountry, d = t.defaultCallingCode) : n = t), n && !this.metadata.hasCountry(n) && (n = void 0), [n, d];
2632
+ }
2633
+ /**
2634
+ * Inputs "next" phone number characters.
2635
+ * @param {string} text
2636
+ * @return {string} Formatted phone number characters that have been input so far.
2637
+ */
2638
+ }, {
2639
+ key: "input",
2640
+ value: function(t) {
2641
+ var n = this.parser.input(t, this.state), d = n.digits, i = n.justLeadingPlus;
2642
+ if (i)
2643
+ this.formattedOutput = "+";
2644
+ else if (d) {
2645
+ this.determineTheCountryIfNeeded(), this.state.nationalSignificantNumber && this.formatter.narrowDownMatchingFormats(this.state);
2646
+ var a;
2647
+ if (this.metadata.hasSelectedNumberingPlan() && (a = this.formatter.format(d, this.state)), a === void 0 && this.parser.reExtractNationalSignificantNumber(this.state)) {
2648
+ this.determineTheCountryIfNeeded();
2649
+ var $ = this.state.getNationalDigits();
2650
+ $ && (a = this.formatter.format($, this.state));
2651
+ }
2652
+ this.formattedOutput = a ? this.getFullNumber(a) : this.getNonFormattedNumber();
2653
+ }
2654
+ return this.formattedOutput;
2655
+ }
2656
+ }, {
2657
+ key: "reset",
2658
+ value: function() {
2659
+ var t = this;
2660
+ return this.state = new yn({
2661
+ onCountryChange: function(d) {
2662
+ t.country = d;
2663
+ },
2664
+ onCallingCodeChange: function(d, i) {
2665
+ t.metadata.selectNumberingPlan(i, d), t.formatter.reset(t.metadata.numberingPlan, t.state), t.parser.reset(t.metadata.numberingPlan);
2666
+ }
2667
+ }), this.formatter = new Yn({
2668
+ state: this.state,
2669
+ metadata: this.metadata
2670
+ }), this.parser = new $d({
2671
+ defaultCountry: this.defaultCountry,
2672
+ defaultCallingCode: this.defaultCallingCode,
2673
+ metadata: this.metadata,
2674
+ state: this.state,
2675
+ onNationalSignificantNumberChange: function() {
2676
+ t.determineTheCountryIfNeeded(), t.formatter.reset(t.metadata.numberingPlan, t.state);
2677
+ }
2678
+ }), this.state.reset({
2679
+ country: this.defaultCountry,
2680
+ callingCode: this.defaultCallingCode
2681
+ }), this.formattedOutput = "", this;
2682
+ }
2683
+ /**
2684
+ * Returns `true` if the phone number is being input in international format.
2685
+ * In other words, returns `true` if and only if the parsed phone number starts with a `"+"`.
2686
+ * @return {boolean}
2687
+ */
2688
+ }, {
2689
+ key: "isInternational",
2690
+ value: function() {
2691
+ return this.state.international;
2692
+ }
2693
+ /**
2694
+ * Returns the "calling code" part of the phone number when it's being input
2695
+ * in an international format.
2696
+ * If no valid calling code has been entered so far, returns `undefined`.
2697
+ * @return {string} [callingCode]
2698
+ */
2699
+ }, {
2700
+ key: "getCallingCode",
2701
+ value: function() {
2702
+ if (this.isInternational())
2703
+ return this.state.callingCode;
2704
+ }
2705
+ // A legacy alias.
2706
+ }, {
2707
+ key: "getCountryCallingCode",
2708
+ value: function() {
2709
+ return this.getCallingCode();
2710
+ }
2711
+ /**
2712
+ * Returns a two-letter country code of the phone number.
2713
+ * Returns `undefined` for "non-geographic" phone numbering plans.
2714
+ * Returns `undefined` if no phone number has been input yet.
2715
+ * @return {string} [country]
2716
+ */
2717
+ }, {
2718
+ key: "getCountry",
2719
+ value: function() {
2720
+ var t = this.state.digits;
2721
+ if (t)
2722
+ return this._getCountry();
2723
+ }
2724
+ /**
2725
+ * Returns a two-letter country code of the phone number.
2726
+ * Returns `undefined` for "non-geographic" phone numbering plans.
2727
+ * @return {string} [country]
2728
+ */
2729
+ }, {
2730
+ key: "_getCountry",
2731
+ value: function() {
2732
+ var t = this.state.country;
2733
+ return t;
2734
+ }
2735
+ }, {
2736
+ key: "determineTheCountryIfNeeded",
2737
+ value: function() {
2738
+ (!this.state.country || this.isCountryCallingCodeAmbiguous()) && this.determineTheCountry();
2739
+ }
2740
+ // Prepends `+CountryCode ` in case of an international phone number
2741
+ }, {
2742
+ key: "getFullNumber",
2743
+ value: function(t) {
2744
+ var n = this;
2745
+ if (this.isInternational()) {
2746
+ var d = function($) {
2747
+ return n.formatter.getInternationalPrefixBeforeCountryCallingCode(n.state, {
2748
+ spacing: !!$
2749
+ }) + $;
2750
+ }, i = this.state.callingCode;
2751
+ return d(i ? t ? "".concat(i, " ").concat(t) : i : "".concat(this.state.getDigitsWithoutInternationalPrefix()));
2752
+ }
2753
+ return t;
2754
+ }
2755
+ }, {
2756
+ key: "getNonFormattedNationalNumberWithPrefix",
2757
+ value: function() {
2758
+ var t = this.state, n = t.nationalSignificantNumber, d = t.complexPrefixBeforeNationalSignificantNumber, i = t.nationalPrefix, a = n, $ = d || i;
2759
+ return $ && (a = $ + a), a;
2760
+ }
2761
+ }, {
2762
+ key: "getNonFormattedNumber",
2763
+ value: function() {
2764
+ var t = this.state.nationalSignificantNumberMatchesInput;
2765
+ return this.getFullNumber(t ? this.getNonFormattedNationalNumberWithPrefix() : this.state.getNationalDigits());
2766
+ }
2767
+ }, {
2768
+ key: "getNonFormattedTemplate",
2769
+ value: function() {
2770
+ var t = this.getNonFormattedNumber();
2771
+ if (t)
2772
+ return t.replace(/[\+\d]/g, N);
2773
+ }
2774
+ }, {
2775
+ key: "isCountryCallingCodeAmbiguous",
2776
+ value: function() {
2777
+ var t = this.state.callingCode, n = this.metadata.getCountryCodesForCallingCode(t);
2778
+ return n && n.length > 1;
2779
+ }
2780
+ // Determines the country of the phone number
2781
+ // entered so far based on the country phone code
2782
+ // and the national phone number.
2783
+ }, {
2784
+ key: "determineTheCountry",
2785
+ value: function() {
2786
+ this.state.setCountry(re(this.isInternational() ? this.state.callingCode : this.defaultCallingCode, {
2787
+ nationalNumber: this.state.nationalSignificantNumber,
2788
+ defaultCountry: this.defaultCountry,
2789
+ metadata: this.metadata
2790
+ }));
2791
+ }
2792
+ /**
2793
+ * Returns a E.164 phone number value for the user's input.
2794
+ *
2795
+ * For example, for country `"US"` and input `"(222) 333-4444"`
2796
+ * it will return `"+12223334444"`.
2797
+ *
2798
+ * For international phone number input, it will also auto-correct
2799
+ * some minor errors such as using a national prefix when writing
2800
+ * an international phone number. For example, if the user inputs
2801
+ * `"+44 0 7400 000000"` then it will return an auto-corrected
2802
+ * `"+447400000000"` phone number value.
2803
+ *
2804
+ * Will return `undefined` if no digits have been input,
2805
+ * or when inputting a phone number in national format and no
2806
+ * default country or default "country calling code" have been set.
2807
+ *
2808
+ * @return {string} [value]
2809
+ */
2810
+ }, {
2811
+ key: "getNumberValue",
2812
+ value: function() {
2813
+ var t = this.state, n = t.digits, d = t.callingCode, i = t.country, a = t.nationalSignificantNumber;
2814
+ if (n) {
2815
+ if (this.isInternational())
2816
+ return d ? "+" + d + a : "+" + n;
2817
+ if (i || d) {
2818
+ var $ = i ? this.metadata.countryCallingCode() : d;
2819
+ return "+" + $ + a;
2820
+ }
2821
+ }
2822
+ }
2823
+ /**
2824
+ * Returns an instance of `PhoneNumber` class.
2825
+ * Will return `undefined` if no national (significant) number
2826
+ * digits have been entered so far, or if no `defaultCountry` has been
2827
+ * set and the user enters a phone number not in international format.
2828
+ */
2829
+ }, {
2830
+ key: "getNumber",
2831
+ value: function() {
2832
+ var t = this.state, n = t.nationalSignificantNumber, d = t.carrierCode, i = t.callingCode, a = this._getCountry();
2833
+ if (n && !(!a && !i)) {
2834
+ if (a && a === this.defaultCountry) {
2835
+ var $ = new h(this.metadata.metadata);
2836
+ $.selectNumberingPlan(a);
2837
+ var o = $.numberingPlan.callingCode(), u = this.metadata.getCountryCodesForCallingCode(o);
2838
+ if (u.length > 1) {
2839
+ var l = ee(n, {
2840
+ countries: u,
2841
+ defaultCountry: this.defaultCountry,
2842
+ metadata: this.metadata.metadata
2843
+ });
2844
+ l && (a = l);
2845
+ }
2846
+ }
2847
+ var f = new Qt(a || i, n, this.metadata.metadata);
2848
+ return d && (f.carrierCode = d), f;
2849
+ }
2850
+ }
2851
+ /**
2852
+ * Returns `true` if the phone number is "possible".
2853
+ * Is just a shortcut for `PhoneNumber.isPossible()`.
2854
+ * @return {boolean}
2855
+ */
2856
+ }, {
2857
+ key: "isPossible",
2858
+ value: function() {
2859
+ var t = this.getNumber();
2860
+ return t ? t.isPossible() : !1;
2861
+ }
2862
+ /**
2863
+ * Returns `true` if the phone number is "valid".
2864
+ * Is just a shortcut for `PhoneNumber.isValid()`.
2865
+ * @return {boolean}
2866
+ */
2867
+ }, {
2868
+ key: "isValid",
2869
+ value: function() {
2870
+ var t = this.getNumber();
2871
+ return t ? t.isValid() : !1;
2872
+ }
2873
+ /**
2874
+ * @deprecated
2875
+ * This method is used in `react-phone-number-input/source/input-control.js`
2876
+ * in versions before `3.0.16`.
2877
+ */
2878
+ }, {
2879
+ key: "getNationalNumber",
2880
+ value: function() {
2881
+ return this.state.nationalSignificantNumber;
2882
+ }
2883
+ /**
2884
+ * Returns the phone number characters entered by the user.
2885
+ * @return {string}
2886
+ */
2887
+ }, {
2888
+ key: "getChars",
2889
+ value: function() {
2890
+ return (this.state.international ? "+" : "") + this.state.digits;
2891
+ }
2892
+ /**
2893
+ * Returns the template for the formatted phone number.
2894
+ * @return {string}
2895
+ */
2896
+ }, {
2897
+ key: "getTemplate",
2898
+ value: function() {
2899
+ return this.formatter.getTemplate(this.state) || this.getNonFormattedTemplate() || "";
2900
+ }
2901
+ }]), e;
2902
+ }();
2903
+ function bd(e, r, t) {
2904
+ return t || (t = r, r = void 0), new Nd(r, t).input(e);
2905
+ }
2906
+ function pd() {
2907
+ return jt(cn, arguments);
2908
+ }
2909
+ function Cd() {
2910
+ return jt(bd, arguments);
2911
+ }
2912
+ const Pd = ({ step: e, onSuccess: r, children: t }) => {
2913
+ const n = it(null), d = 6, { state: i } = Bt(), { signInWithSms: a } = fe(), { verifySmsOTP: $ } = ce(), [o, u] = at("US"), [l, f] = at({
2914
+ value: "",
2915
+ e164: ""
2916
+ }), s = e || i.step, c = s === "credentials" ? "phoneNumber" : "otp", y = it(c), { setPhoneNumber: p, submitPhoneNumber: v } = be({
2917
+ submit: (m) => a({ phoneNumber: m })
2918
+ }), { resendCountdown: M, resetOTP: L, setOTP: ie, startResendTimer: ae, submitOtp: $e } = Ne({
2919
+ passwordLength: d,
2920
+ submit: (m) => $({ flowId: i.flowId, otp: m })
2921
+ }), oe = (m) => {
2922
+ m.value !== l.value && (f(m), p(m.e164));
2923
+ };
2924
+ he(() => {
2925
+ if (i.phoneNumber === l.e164)
2926
+ return;
2927
+ const m = ve(i.phoneNumber, o);
2928
+ f(m);
2929
+ }, [i.phoneNumber, o, l.e164]);
2930
+ const nt = () => {
2931
+ ae(60);
2932
+ }, ue = () => {
2933
+ L(), v({ phoneNumber: i.phoneNumber, onSuccess: nt });
2934
+ }, le = (m) => {
2935
+ m.preventDefault(), v({ phoneNumber: i.phoneNumber, onSuccess: nt });
2936
+ }, se = (m) => {
2937
+ m.preventDefault(), $e({ otp: i.otp, onSuccess: r });
2938
+ };
2939
+ return ge(() => {
2940
+ y.current !== c && (n.current?.transition.toggle(c), y.current = c);
2941
+ }, [c]), /* @__PURE__ */ Gt(
2942
+ ye,
2943
+ {
2944
+ animateHeight: !1,
2945
+ canResetOTP: i.canResetOTP,
2946
+ phoneNumber: l,
2947
+ countryCode: o,
2948
+ onCountryCodeChange: u,
2949
+ error: i.error || "",
2950
+ isPending: i.isPending,
2951
+ onPhoneNumberChange: oe,
2952
+ onOTPChange: ie,
2953
+ onResendOTP: ue,
2954
+ onSubmitPhoneNumber: le,
2955
+ onSubmitOTP: se,
2956
+ otp: i.otp,
2957
+ resendCountdown: M,
2958
+ step: c,
2959
+ successMessage: i.isSuccess ? "Success!" : void 0,
2960
+ transitionRef: n,
2961
+ children: ({ step: m, Form: dt }) => t?.({ step: s, Form: dt }) || dt
2962
+ }
2963
+ );
2964
+ }, xd = ({ step: e }) => /* @__PURE__ */ U(H, { children: [
2965
+ e === "credentials" && "Sign in",
2966
+ e === "verification" && "Enter verification code"
2967
+ ] }), Ed = ({ step: e }) => {
2968
+ const { state: r } = Bt(), t = me(() => {
2969
+ try {
2970
+ const n = pd(r.phoneNumber), d = n?.formatNational();
2971
+ return `+${n?.countryCallingCode} ${d}`;
2972
+ } catch {
2973
+ return Cd(r.phoneNumber);
2974
+ }
2975
+ }, [r.phoneNumber]);
2976
+ return /* @__PURE__ */ U(H, { children: [
2977
+ e === "credentials" && "We’ll send you a verification code via text.",
2978
+ e === "verification" && /* @__PURE__ */ U(H, { children: [
2979
+ "Enter the 6 digit code sent to",
2980
+ " ",
2981
+ t ? /* @__PURE__ */ Gt(pe, { children: t }) : "your phone number"
2982
+ ] })
2983
+ ] });
2984
+ }, kd = {
2985
+ description: Ed,
2986
+ forms: Pd,
2987
+ title: xd
2988
+ };
2989
+ export {
2990
+ Pd as SignInWithSms,
2991
+ Ed as SignInWithSmsDescription,
2992
+ xd as SignInWithSmsTitle,
2993
+ kd as config
2994
+ };