@incodetech/web 2.0.0-alpha.1 → 2.0.0-alpha.10

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 (209) hide show
  1. package/dist/base.css +1071 -0
  2. package/dist/browser-ponyfill-B6W6hHVY.js +344 -0
  3. package/dist/email/email.es.js +145 -0
  4. package/dist/email/styles.css +123 -0
  5. package/dist/flow/flow.es.js +555 -0
  6. package/dist/flow/styles.css +1119 -0
  7. package/dist/incodeModule-Dv8Qllrv.js +254 -0
  8. package/dist/index.es.js +6 -0
  9. package/dist/instance-B-q0ZREN.js +2140 -0
  10. package/dist/otpInput-BtoZe0Wz.js +151 -0
  11. package/dist/page-Dh_Zw2ik.js +234 -0
  12. package/dist/phone/phone.es.js +3441 -0
  13. package/dist/phone/styles.css +305 -0
  14. package/dist/selfie/selfie.es.js +893 -0
  15. package/dist/selfie/styles.css +590 -0
  16. package/dist/selfieTutorial-C-u5GufD.js +29 -0
  17. package/dist/setup-wNL83jmW.js +20 -0
  18. package/dist/themes/dark.css +652 -0
  19. package/dist/themes/light.css +543 -0
  20. package/dist/title-BfO5Dlzk.js +25 -0
  21. package/dist/types/base.d.ts +1 -0
  22. package/dist/types/dark.d.ts +1 -0
  23. package/dist/types/email.d.ts +57 -0
  24. package/dist/types/flow.d.ts +69 -0
  25. package/dist/types/index.d.ts +38 -0
  26. package/dist/types/light.d.ts +1 -0
  27. package/dist/types/phone.d.ts +58 -0
  28. package/dist/types/selfie.d.ts +31 -0
  29. package/dist/types/styles.d.ts +1 -0
  30. package/dist/types/themes/dark.d.ts +1 -0
  31. package/dist/types/themes/light.d.ts +1 -0
  32. package/dist/uiConfig-CQ1W9cUD.js +23 -0
  33. package/dist/vendor-preact-CK0WeTOR.js +584 -0
  34. package/package.json +32 -26
  35. package/dev/README.md +0 -163
  36. package/dev/getToken.ts +0 -36
  37. package/dev/headless.html +0 -875
  38. package/dev/index.html +0 -366
  39. package/dev/main-headless.tsx +0 -1332
  40. package/dev/main-orchestrated-flow.tsx +0 -1158
  41. package/dev/main-preact.tsx +0 -323
  42. package/dev/main-simplified.tsx +0 -123
  43. package/dev/main-web-component.tsx +0 -256
  44. package/dev/main.tsx +0 -332
  45. package/dev/manual.html +0 -27
  46. package/dev/orchestrated-flow.html +0 -64
  47. package/dev/simplified.html +0 -64
  48. package/dev/tiktok-logo.svg +0 -7
  49. package/src/defineCustomElement.tsx +0 -30
  50. package/src/email/email.test.tsx +0 -368
  51. package/src/email/email.tsx +0 -255
  52. package/src/email/emailInput.test.tsx +0 -264
  53. package/src/email/emailInput.tsx +0 -85
  54. package/src/email/styles.css +0 -59
  55. package/src/flow/flow.test.tsx +0 -796
  56. package/src/flow/flow.tsx +0 -292
  57. package/src/flow/flowCompleted.css +0 -30
  58. package/src/flow/flowCompleted.test.tsx +0 -331
  59. package/src/flow/flowCompleted.tsx +0 -121
  60. package/src/flow/flowInit.test.ts +0 -264
  61. package/src/flow/flowInit.ts +0 -94
  62. package/src/flow/flowStart.css +0 -58
  63. package/src/flow/flowStart.test.tsx +0 -49
  64. package/src/flow/flowStart.tsx +0 -41
  65. package/src/flow/incode-logo.svg +0 -8
  66. package/src/flow/index.ts +0 -7
  67. package/src/flow/preloadFlow.test.ts +0 -421
  68. package/src/flow/preloadFlow.ts +0 -171
  69. package/src/flow/styles.css +0 -9
  70. package/src/flow/unsupportedModule.css +0 -21
  71. package/src/flow/unsupportedModule.tsx +0 -39
  72. package/src/flow/useFlowInitialization.test.tsx +0 -292
  73. package/src/flow/useFlowInitialization.ts +0 -128
  74. package/src/flow/useModuleLoader.test.tsx +0 -212
  75. package/src/flow/useModuleLoader.ts +0 -92
  76. package/src/hooks/index.ts +0 -1
  77. package/src/hooks/useManager.test.ts +0 -91
  78. package/src/hooks/useManager.ts +0 -40
  79. package/src/i18n/index.ts +0 -3
  80. package/src/i18n/instance.ts +0 -16
  81. package/src/i18n/setup.ts +0 -184
  82. package/src/i18n/useTranslation.ts +0 -42
  83. package/src/index.ts +0 -27
  84. package/src/permissions/assets/android-dots-icon.svg +0 -7
  85. package/src/permissions/assets/android-settings-icon.svg +0 -16
  86. package/src/permissions/assets/android-toggle-icon.svg +0 -20
  87. package/src/permissions/assets/bank-card-icon.svg +0 -14
  88. package/src/permissions/assets/camera-icon.svg +0 -12
  89. package/src/permissions/assets/camera-ios.svg +0 -53
  90. package/src/permissions/assets/check-icon.svg +0 -8
  91. package/src/permissions/assets/chrome-icon.svg +0 -43
  92. package/src/permissions/assets/password-icon.svg +0 -11
  93. package/src/permissions/assets/permissions-img.svg +0 -51
  94. package/src/permissions/assets/safari-icon.svg +0 -37
  95. package/src/permissions/assets/settings-icon.svg +0 -33
  96. package/src/permissions/assets/toggle-icon.svg +0 -19
  97. package/src/permissions/assets/warning-icon.svg +0 -6
  98. package/src/permissions/boldWithArrow.css +0 -9
  99. package/src/permissions/boldWithArrow.tsx +0 -41
  100. package/src/permissions/denied.css +0 -37
  101. package/src/permissions/denied.tsx +0 -29
  102. package/src/permissions/deniedAndroid.tsx +0 -56
  103. package/src/permissions/deniedDesktop.css +0 -9
  104. package/src/permissions/deniedDesktop.tsx +0 -64
  105. package/src/permissions/deniedIOS.tsx +0 -73
  106. package/src/permissions/deniedInstructions.tsx +0 -19
  107. package/src/permissions/iconWrapper.css +0 -9
  108. package/src/permissions/iconWrapper.tsx +0 -15
  109. package/src/permissions/learnMore.css +0 -37
  110. package/src/permissions/learnMore.tsx +0 -85
  111. package/src/permissions/numberedStep.css +0 -13
  112. package/src/permissions/numberedStep.tsx +0 -14
  113. package/src/permissions/permissions.css +0 -13
  114. package/src/permissions/permissions.tsx +0 -68
  115. package/src/phone/phone.tsx +0 -246
  116. package/src/phone/phoneInput.test.tsx +0 -275
  117. package/src/phone/phoneInput.tsx +0 -249
  118. package/src/phone/styles.css +0 -158
  119. package/src/selfie/cameraButton.css +0 -13
  120. package/src/selfie/cameraButton.tsx +0 -35
  121. package/src/selfie/capture.css +0 -57
  122. package/src/selfie/capture.tsx +0 -232
  123. package/src/selfie/errorModal.tsx +0 -218
  124. package/src/selfie/errorModalContent.css +0 -33
  125. package/src/selfie/errorModalContent.tsx +0 -44
  126. package/src/selfie/faceOutline.css +0 -5
  127. package/src/selfie/faceOutline.tsx +0 -22
  128. package/src/selfie/loadingBorder.css +0 -12
  129. package/src/selfie/loadingBorder.tsx +0 -77
  130. package/src/selfie/manualCaptureButton.css +0 -13
  131. package/src/selfie/manualCaptureButton.tsx +0 -35
  132. package/src/selfie/noMoreAttemptsModal.tsx +0 -44
  133. package/src/selfie/notification.css +0 -9
  134. package/src/selfie/notification.tsx +0 -36
  135. package/src/selfie/retryErrorModal.tsx +0 -56
  136. package/src/selfie/selfie.test.tsx +0 -458
  137. package/src/selfie/selfie.tsx +0 -83
  138. package/src/selfie/selfieTutorial.json +0 -2626
  139. package/src/selfie/styles.css +0 -1
  140. package/src/selfie/tutorial.test.tsx +0 -200
  141. package/src/selfie/tutorial.tsx +0 -43
  142. package/src/setup.ts +0 -33
  143. package/src/shared/baseTutorial/baseTutorial.css +0 -21
  144. package/src/shared/baseTutorial/baseTutorial.test.tsx +0 -184
  145. package/src/shared/baseTutorial/baseTutorial.tsx +0 -55
  146. package/src/shared/baseTutorial/replaceBaseTutorial.test.ts +0 -267
  147. package/src/shared/baseTutorial/replaceBaseTutorial.ts +0 -68
  148. package/src/shared/button/button.css +0 -55
  149. package/src/shared/button/button.test.tsx +0 -101
  150. package/src/shared/button/button.tsx +0 -47
  151. package/src/shared/componentRoot/incodeComponent.tsx +0 -12
  152. package/src/shared/countries/countries.test.ts +0 -75
  153. package/src/shared/countries/countries.ts +0 -139
  154. package/src/shared/countries/index.ts +0 -6
  155. package/src/shared/icons/chevronDown.tsx +0 -22
  156. package/src/shared/icons/index.ts +0 -2
  157. package/src/shared/icons/successIcon.css +0 -5
  158. package/src/shared/icons/successIcon.test.tsx +0 -40
  159. package/src/shared/icons/successIcon.tsx +0 -26
  160. package/src/shared/loader/loadingIcon.css +0 -28
  161. package/src/shared/loader/loadingIcon.tsx +0 -67
  162. package/src/shared/lottie/lottie.tsx +0 -108
  163. package/src/shared/otpInput/otpInput.css +0 -85
  164. package/src/shared/otpInput/otpInput.test.tsx +0 -356
  165. package/src/shared/otpInput/otpInput.tsx +0 -241
  166. package/src/shared/page/incode-logo.svg +0 -3
  167. package/src/shared/page/page.css +0 -47
  168. package/src/shared/page/page.test.tsx +0 -97
  169. package/src/shared/page/page.tsx +0 -91
  170. package/src/shared/page/pageUiConfig.test.ts +0 -112
  171. package/src/shared/page/pageUiConfig.ts +0 -64
  172. package/src/shared/page/verifiedByIncode.css +0 -5
  173. package/src/shared/page/verifiedByIncode.tsx +0 -75
  174. package/src/shared/spacer/spacer.css +0 -149
  175. package/src/shared/spacer/spacer.test.tsx +0 -143
  176. package/src/shared/spacer/spacer.tsx +0 -88
  177. package/src/shared/spinner/index.ts +0 -2
  178. package/src/shared/spinner/spinner.css +0 -28
  179. package/src/shared/spinner/spinner.test.tsx +0 -82
  180. package/src/shared/spinner/spinner.tsx +0 -65
  181. package/src/shared/title/title.css +0 -7
  182. package/src/shared/title/title.tsx +0 -12
  183. package/src/shared/uiConfig/uiConfig.ts +0 -36
  184. package/src/shared/webComponent/incodeModule.ts +0 -29
  185. package/src/shared/webComponent/registerIncodeElement.ts +0 -15
  186. package/src/styles/__mocks__/fetchTheme.ts +0 -19
  187. package/src/styles/applyTheme.ts +0 -37
  188. package/src/styles/cn.test.tsx +0 -57
  189. package/src/styles/cn.tsx +0 -21
  190. package/src/styles/core.css +0 -12
  191. package/src/styles/fetchTheme.test.ts +0 -390
  192. package/src/styles/fetchTheme.ts +0 -88
  193. package/src/styles/generatePalette.ts +0 -111
  194. package/src/styles/reset.css +0 -65
  195. package/src/styles/resolveCssVariableToHex.ts +0 -28
  196. package/src/styles/tailwind.css +0 -291
  197. package/src/styles/themeTypes.ts +0 -18
  198. package/src/styles/tokens/colors.css +0 -190
  199. package/src/styles/tokens/components.css +0 -174
  200. package/src/styles/tokens/index.css +0 -4
  201. package/src/styles/tokens/primitives.css +0 -129
  202. package/src/styles/tokens/semantic.css +0 -51
  203. package/src/svg.d.ts +0 -4
  204. package/src/types/assets.d.ts +0 -1
  205. package/src/types/custom-elements.d.ts +0 -104
  206. package/tsconfig.json +0 -22
  207. package/vite.config.ts +0 -260
  208. package/vitest.config.ts +0 -40
  209. package/vitest.setup.ts +0 -16
@@ -0,0 +1,3441 @@
1
+ import { u as s, S as $e, r as Ct, a as Pt, B as St } from "../incodeModule-Dv8Qllrv.js";
2
+ import { createPhoneManager as It } from "@incodetech/core/phone";
3
+ import { d as w, A as Et, y as re, k as Ce } from "../vendor-preact-CK0WeTOR.js";
4
+ import { I as xt, P as Pe } from "../page-Dh_Zw2ik.js";
5
+ import { O as Tt } from "../otpInput-BtoZe0Wz.js";
6
+ const rt = { 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, [["(?:(?:241|349)0\\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)|91(?:(?:[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}|(?:2(?:[0-26-9]\\d|3[0-8]|4[02-9]|5[0135-9])|3(?:[0-3589]\\d|4[0-578]|6[1-9]|7[0-35-9])|7(?:[013-57-9]\\d|2[0-8])|8(?:55|6[0-8]|[78]\\d|9[02-9]))\\d{6}", [9]], ["4(?:79[01]|83[0-36-9]|95[0-3])\\d{5}|4(?:[0-36]\\d|4[047-9]|[58][0-24-9]|7[02-8]|9[0-47-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|8)\\d{7}", [8, 10], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["8"]], ["(\\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", "[178]\\d{7}|[2-8]\\d{6}", [7, 8], [["(\\d)(\\d{3})(\\d{3})", "$1 $2 $3", ["[2-6]|7[246]|8[2-4]"]], ["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["1[67]|[78]"]]]], 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-36-9]|95[0-3])\\d{5}|4(?:[0-36]\\d|4[047-9]|[58][0-24-9]|7[02-8]|9[0-47-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{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["60|809"]], ["(\\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(?:10|[2-9])"]], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["3[2-5]|[47]|5[1-3578]|6[13-57]|8(?:0[1-8]|[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-36-9]|95[0-3])\\d{5}|4(?:[0-36]\\d|4[047-9]|[58][0-24-9]|7[02-8]|9[0-47-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]|3[13])"], "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|180020", 0, 0, 0, [["(?:1(?:1(?:3(?:[0-58]\\d\\d|73[0-5])|4(?:(?:[0-5]\\d|70)\\d|69[7-9])|(?:(?:5[0-26-9]|[78][0-49])\\d|6(?:[0-4]\\d|5[01]))\\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|180020", "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|180020", "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|8(?:28[235-7]|3))|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])\\d|8(?:[14-6]\\d|2[0-79]))|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,11}|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", ["[03]"]]], 0, 0, 0, 0, 0, 0, [["0(?:669[0-79]\\d{1,6}|831\\d{2,8})|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[2356]|[6-8][1-5])|9(?:[0159]\\d|[238][1-5]|4[12]|6[1-8]|7[1-6]))\\d{2,7}"], ["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|180020", "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|427|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", ["[47]"], "0$1"]], "0"], JP: ["81", "010", "00[1-9]\\d{6,14}|[25-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", ["3|4(?:2[09]|7[01])|6[1-9]", "3|4(?:2(?:0|9[02-69])|7(?:0[019]|1))|6[1-9]"], "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", ["[25-9]"], "0$1"]], "0", 0, "(000[2569]\\d{4,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|78|90)\\d{6}", [8], [["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["[2679]|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(?:[19]|2[2-46-9]|3[3-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(?:(?:18|4[0679]|5[03])\\d|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]))\\d{5}"], ["(?:6(?:[0-79]\\d|8[0-247-9])|7(?:[016-8]\\d|2[0-8]|5[0-5]))\\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]|[67]\\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", ["[67]"], "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]|[6-8]\\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", "[25-7]\\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", ["[25-7]"]], ["(\\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-359]\\d{8}|[1-5]\\d{7}", [8, 9], [["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[1-4]|5[1-3]"], "0$1", 1], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[59]"], "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|66)\\d{7}", [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", ["\\d"]]], 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)\\d{4}|(?:2742|305[3-9])\\d{6}|(?:472|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[013-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-57-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-269])|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}|2\\d{3,4}|(?:[49]\\d|80)\\d{5}", [4, 5, 6, 7, 8, 9, 10, 11, 12, 13], [["(\\d{4,5})", "$1", ["21"]], ["(\\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}"]]] } };
7
+ function dt(e, t) {
8
+ var n = Array.prototype.slice.call(t);
9
+ return n.push(rt), e.apply(this, n);
10
+ }
11
+ function Se(e, t) {
12
+ e = e.split("-"), t = t.split("-");
13
+ for (var n = e[0].split("."), r = t[0].split("."), d = 0; d < 3; d++) {
14
+ var i = Number(n[d]), a = Number(r[d]);
15
+ if (i > a) return 1;
16
+ if (a > i) return -1;
17
+ if (!isNaN(i) && isNaN(a)) return 1;
18
+ if (isNaN(i) && !isNaN(a)) return -1;
19
+ }
20
+ return e[1] && t[1] ? e[1] > t[1] ? 1 : e[1] < t[1] ? -1 : 0 : !e[1] && t[1] ? 1 : e[1] && !t[1] ? -1 : 0;
21
+ }
22
+ var At = {}.constructor;
23
+ function x(e) {
24
+ return e != null && e.constructor === At;
25
+ }
26
+ function F(e) {
27
+ "@babel/helpers - typeof";
28
+ return F = typeof Symbol == "function" && typeof Symbol.iterator == "symbol" ? function(t) {
29
+ return typeof t;
30
+ } : function(t) {
31
+ return t && typeof Symbol == "function" && t.constructor === Symbol && t !== Symbol.prototype ? "symbol" : typeof t;
32
+ }, F(e);
33
+ }
34
+ function Z(e, t) {
35
+ if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function");
36
+ }
37
+ function Ft(e, t) {
38
+ for (var n = 0; n < t.length; n++) {
39
+ var r = t[n];
40
+ r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, wt(r.key), r);
41
+ }
42
+ }
43
+ function J(e, t, n) {
44
+ return t && Ft(e.prototype, t), Object.defineProperty(e, "prototype", { writable: !1 }), e;
45
+ }
46
+ function wt(e) {
47
+ var t = _t(e, "string");
48
+ return F(t) == "symbol" ? t : t + "";
49
+ }
50
+ function _t(e, t) {
51
+ if (F(e) != "object" || !e) return e;
52
+ var n = e[Symbol.toPrimitive];
53
+ if (n !== void 0) {
54
+ var r = n.call(e, t);
55
+ if (F(r) != "object") return r;
56
+ throw new TypeError("@@toPrimitive must return a primitive value.");
57
+ }
58
+ return String(e);
59
+ }
60
+ var Ot = "1.2.0", Rt = "1.7.35", Ie = " ext. ", Dt = /^\d+$/, g = /* @__PURE__ */ (function() {
61
+ function e(t) {
62
+ Z(this, e), it(t), this.metadata = t, at.call(this, t);
63
+ }
64
+ return J(e, [{
65
+ key: "getCountries",
66
+ value: function() {
67
+ return Object.keys(this.metadata.countries).filter(function(n) {
68
+ return n !== "001";
69
+ });
70
+ }
71
+ }, {
72
+ key: "getCountryMetadata",
73
+ value: function(n) {
74
+ return this.metadata.countries[n];
75
+ }
76
+ }, {
77
+ key: "nonGeographic",
78
+ value: function() {
79
+ if (!(this.v1 || this.v2 || this.v3))
80
+ return this.metadata.nonGeographic || this.metadata.nonGeographical;
81
+ }
82
+ }, {
83
+ key: "hasCountry",
84
+ value: function(n) {
85
+ return this.getCountryMetadata(n) !== void 0;
86
+ }
87
+ }, {
88
+ key: "hasCallingCode",
89
+ value: function(n) {
90
+ if (this.getCountryCodesForCallingCode(n))
91
+ return !0;
92
+ if (this.nonGeographic()) {
93
+ if (this.nonGeographic()[n])
94
+ return !0;
95
+ } else {
96
+ var r = this.countryCallingCodes()[n];
97
+ if (r && r.length === 1 && r[0] === "001")
98
+ return !0;
99
+ }
100
+ }
101
+ }, {
102
+ key: "isNonGeographicCallingCode",
103
+ value: function(n) {
104
+ return this.nonGeographic() ? !!this.nonGeographic()[n] : !this.getCountryCodesForCallingCode(n);
105
+ }
106
+ // Deprecated.
107
+ }, {
108
+ key: "country",
109
+ value: function(n) {
110
+ return this.selectNumberingPlan(n);
111
+ }
112
+ }, {
113
+ key: "selectNumberingPlan",
114
+ value: function(n, r) {
115
+ if (n && Dt.test(n) && (r = n, n = null), n && n !== "001") {
116
+ if (!this.hasCountry(n))
117
+ throw new Error("Unknown country: ".concat(n));
118
+ this.numberingPlan = new Ee(this.getCountryMetadata(n), this);
119
+ } else if (r) {
120
+ if (!this.hasCallingCode(r))
121
+ throw new Error("Unknown calling code: ".concat(r));
122
+ this.numberingPlan = new Ee(this.getNumberingPlanMetadata(r), this);
123
+ } else
124
+ this.numberingPlan = void 0;
125
+ return this;
126
+ }
127
+ }, {
128
+ key: "getCountryCodesForCallingCode",
129
+ value: function(n) {
130
+ var r = this.countryCallingCodes()[n];
131
+ if (r)
132
+ return r.length === 1 && r[0].length === 3 ? void 0 : r;
133
+ }
134
+ }, {
135
+ key: "getCountryCodeForCallingCode",
136
+ value: function(n) {
137
+ var r = this.getCountryCodesForCallingCode(n);
138
+ if (r)
139
+ return r[0];
140
+ }
141
+ }, {
142
+ key: "getNumberingPlanMetadata",
143
+ value: function(n) {
144
+ var r = this.getCountryCodeForCallingCode(n);
145
+ if (r)
146
+ return this.getCountryMetadata(r);
147
+ if (this.nonGeographic()) {
148
+ var d = this.nonGeographic()[n];
149
+ if (d)
150
+ return d;
151
+ } else {
152
+ var i = this.countryCallingCodes()[n];
153
+ if (i && i.length === 1 && i[0] === "001")
154
+ return this.metadata.countries["001"];
155
+ }
156
+ }
157
+ // Deprecated.
158
+ }, {
159
+ key: "countryCallingCode",
160
+ value: function() {
161
+ return this.numberingPlan.callingCode();
162
+ }
163
+ // Deprecated.
164
+ }, {
165
+ key: "IDDPrefix",
166
+ value: function() {
167
+ return this.numberingPlan.IDDPrefix();
168
+ }
169
+ // Deprecated.
170
+ }, {
171
+ key: "defaultIDDPrefix",
172
+ value: function() {
173
+ return this.numberingPlan.defaultIDDPrefix();
174
+ }
175
+ // Deprecated.
176
+ }, {
177
+ key: "nationalNumberPattern",
178
+ value: function() {
179
+ return this.numberingPlan.nationalNumberPattern();
180
+ }
181
+ // Deprecated.
182
+ }, {
183
+ key: "possibleLengths",
184
+ value: function() {
185
+ return this.numberingPlan.possibleLengths();
186
+ }
187
+ // Deprecated.
188
+ }, {
189
+ key: "formats",
190
+ value: function() {
191
+ return this.numberingPlan.formats();
192
+ }
193
+ // Deprecated.
194
+ }, {
195
+ key: "nationalPrefixForParsing",
196
+ value: function() {
197
+ return this.numberingPlan.nationalPrefixForParsing();
198
+ }
199
+ // Deprecated.
200
+ }, {
201
+ key: "nationalPrefixTransformRule",
202
+ value: function() {
203
+ return this.numberingPlan.nationalPrefixTransformRule();
204
+ }
205
+ // Deprecated.
206
+ }, {
207
+ key: "leadingDigits",
208
+ value: function() {
209
+ return this.numberingPlan.leadingDigits();
210
+ }
211
+ // Deprecated.
212
+ }, {
213
+ key: "hasTypes",
214
+ value: function() {
215
+ return this.numberingPlan.hasTypes();
216
+ }
217
+ // Deprecated.
218
+ }, {
219
+ key: "type",
220
+ value: function(n) {
221
+ return this.numberingPlan.type(n);
222
+ }
223
+ // Deprecated.
224
+ }, {
225
+ key: "ext",
226
+ value: function() {
227
+ return this.numberingPlan.ext();
228
+ }
229
+ }, {
230
+ key: "countryCallingCodes",
231
+ value: function() {
232
+ return this.v1 ? this.metadata.country_phone_code_to_countries : this.metadata.country_calling_codes;
233
+ }
234
+ // Deprecated.
235
+ }, {
236
+ key: "chooseCountryByCountryCallingCode",
237
+ value: function(n) {
238
+ return this.selectNumberingPlan(n);
239
+ }
240
+ }, {
241
+ key: "hasSelectedNumberingPlan",
242
+ value: function() {
243
+ return this.numberingPlan !== void 0;
244
+ }
245
+ }]);
246
+ })(), Ee = /* @__PURE__ */ (function() {
247
+ function e(t, n) {
248
+ Z(this, e), this.globalMetadataObject = n, this.metadata = t, at.call(this, n.metadata);
249
+ }
250
+ return J(e, [{
251
+ key: "callingCode",
252
+ value: function() {
253
+ return this.metadata[0];
254
+ }
255
+ // Formatting information for regions which share
256
+ // a country calling code is contained by only one region
257
+ // for performance reasons. For example, for NANPA region
258
+ // ("North American Numbering Plan Administration",
259
+ // which includes USA, Canada, Cayman Islands, Bahamas, etc)
260
+ // it will be contained in the metadata for `US`.
261
+ }, {
262
+ key: "getDefaultCountryMetadataForRegion",
263
+ value: function() {
264
+ return this.globalMetadataObject.getNumberingPlanMetadata(this.callingCode());
265
+ }
266
+ // Is always present.
267
+ }, {
268
+ key: "IDDPrefix",
269
+ value: function() {
270
+ if (!(this.v1 || this.v2))
271
+ return this.metadata[1];
272
+ }
273
+ // Is only present when a country supports multiple IDD prefixes.
274
+ }, {
275
+ key: "defaultIDDPrefix",
276
+ value: function() {
277
+ if (!(this.v1 || this.v2))
278
+ return this.metadata[12];
279
+ }
280
+ }, {
281
+ key: "nationalNumberPattern",
282
+ value: function() {
283
+ return this.v1 || this.v2 ? this.metadata[1] : this.metadata[2];
284
+ }
285
+ // "possible length" data is always present in Google's metadata.
286
+ }, {
287
+ key: "possibleLengths",
288
+ value: function() {
289
+ if (!this.v1)
290
+ return this.metadata[this.v2 ? 2 : 3];
291
+ }
292
+ }, {
293
+ key: "_getFormats",
294
+ value: function(n) {
295
+ return n[this.v1 ? 2 : this.v2 ? 3 : 4];
296
+ }
297
+ // For countries of the same region (e.g. NANPA)
298
+ // formats are all stored in the "main" country for that region.
299
+ // E.g. "RU" and "KZ", "US" and "CA".
300
+ }, {
301
+ key: "formats",
302
+ value: function() {
303
+ var n = this, r = this._getFormats(this.metadata) || this._getFormats(this.getDefaultCountryMetadataForRegion()) || [];
304
+ return r.map(function(d) {
305
+ return new jt(d, n);
306
+ });
307
+ }
308
+ }, {
309
+ key: "nationalPrefix",
310
+ value: function() {
311
+ return this.metadata[this.v1 ? 3 : this.v2 ? 4 : 5];
312
+ }
313
+ }, {
314
+ key: "_getNationalPrefixFormattingRule",
315
+ value: function(n) {
316
+ return n[this.v1 ? 4 : this.v2 ? 5 : 6];
317
+ }
318
+ // For countries of the same region (e.g. NANPA)
319
+ // national prefix formatting rule is stored in the "main" country for that region.
320
+ // E.g. "RU" and "KZ", "US" and "CA".
321
+ }, {
322
+ key: "nationalPrefixFormattingRule",
323
+ value: function() {
324
+ return this._getNationalPrefixFormattingRule(this.metadata) || this._getNationalPrefixFormattingRule(this.getDefaultCountryMetadataForRegion());
325
+ }
326
+ }, {
327
+ key: "_nationalPrefixForParsing",
328
+ value: function() {
329
+ return this.metadata[this.v1 ? 5 : this.v2 ? 6 : 7];
330
+ }
331
+ }, {
332
+ key: "nationalPrefixForParsing",
333
+ value: function() {
334
+ return this._nationalPrefixForParsing() || this.nationalPrefix();
335
+ }
336
+ }, {
337
+ key: "nationalPrefixTransformRule",
338
+ value: function() {
339
+ return this.metadata[this.v1 ? 6 : this.v2 ? 7 : 8];
340
+ }
341
+ }, {
342
+ key: "_getNationalPrefixIsOptionalWhenFormatting",
343
+ value: function() {
344
+ return !!this.metadata[this.v1 ? 7 : this.v2 ? 8 : 9];
345
+ }
346
+ // For countries of the same region (e.g. NANPA)
347
+ // "national prefix is optional when formatting" flag is
348
+ // stored in the "main" country for that region.
349
+ // E.g. "RU" and "KZ", "US" and "CA".
350
+ }, {
351
+ key: "nationalPrefixIsOptionalWhenFormattingInNationalFormat",
352
+ value: function() {
353
+ return this._getNationalPrefixIsOptionalWhenFormatting(this.metadata) || this._getNationalPrefixIsOptionalWhenFormatting(this.getDefaultCountryMetadataForRegion());
354
+ }
355
+ }, {
356
+ key: "leadingDigits",
357
+ value: function() {
358
+ return this.metadata[this.v1 ? 8 : this.v2 ? 9 : 10];
359
+ }
360
+ }, {
361
+ key: "types",
362
+ value: function() {
363
+ return this.metadata[this.v1 ? 9 : this.v2 ? 10 : 11];
364
+ }
365
+ }, {
366
+ key: "hasTypes",
367
+ value: function() {
368
+ return this.types() && this.types().length === 0 ? !1 : !!this.types();
369
+ }
370
+ }, {
371
+ key: "type",
372
+ value: function(n) {
373
+ if (this.hasTypes() && xe(this.types(), n))
374
+ return new Mt(xe(this.types(), n), this);
375
+ }
376
+ }, {
377
+ key: "ext",
378
+ value: function() {
379
+ return this.v1 || this.v2 ? Ie : this.metadata[13] || Ie;
380
+ }
381
+ }]);
382
+ })(), jt = /* @__PURE__ */ (function() {
383
+ function e(t, n) {
384
+ Z(this, e), this._format = t, this.metadata = n;
385
+ }
386
+ return J(e, [{
387
+ key: "pattern",
388
+ value: function() {
389
+ return this._format[0];
390
+ }
391
+ }, {
392
+ key: "format",
393
+ value: function() {
394
+ return this._format[1];
395
+ }
396
+ }, {
397
+ key: "leadingDigitsPatterns",
398
+ value: function() {
399
+ return this._format[2] || [];
400
+ }
401
+ }, {
402
+ key: "nationalPrefixFormattingRule",
403
+ value: function() {
404
+ return this._format[3] || this.metadata.nationalPrefixFormattingRule();
405
+ }
406
+ }, {
407
+ key: "nationalPrefixIsOptionalWhenFormattingInNationalFormat",
408
+ value: function() {
409
+ return !!this._format[4] || this.metadata.nationalPrefixIsOptionalWhenFormattingInNationalFormat();
410
+ }
411
+ }, {
412
+ key: "nationalPrefixIsMandatoryWhenFormattingInNationalFormat",
413
+ value: function() {
414
+ return this.usesNationalPrefix() && !this.nationalPrefixIsOptionalWhenFormattingInNationalFormat();
415
+ }
416
+ // Checks whether national prefix formatting rule contains national prefix.
417
+ }, {
418
+ key: "usesNationalPrefix",
419
+ value: function() {
420
+ return !!(this.nationalPrefixFormattingRule() && // Check that national prefix formatting rule is not a "dummy" one.
421
+ !Lt.test(this.nationalPrefixFormattingRule()));
422
+ }
423
+ }, {
424
+ key: "internationalFormat",
425
+ value: function() {
426
+ return this._format[5] || this.format();
427
+ }
428
+ }]);
429
+ })(), Lt = /^\(?\$1\)?$/, Mt = /* @__PURE__ */ (function() {
430
+ function e(t, n) {
431
+ Z(this, e), this.type = t, this.metadata = n;
432
+ }
433
+ return J(e, [{
434
+ key: "pattern",
435
+ value: function() {
436
+ return this.metadata.v1 ? this.type : this.type[0];
437
+ }
438
+ }, {
439
+ key: "possibleLengths",
440
+ value: function() {
441
+ if (!this.metadata.v1)
442
+ return this.type[1] || this.metadata.possibleLengths();
443
+ }
444
+ }]);
445
+ })();
446
+ function xe(e, t) {
447
+ switch (t) {
448
+ case "FIXED_LINE":
449
+ return e[0];
450
+ case "MOBILE":
451
+ return e[1];
452
+ case "TOLL_FREE":
453
+ return e[2];
454
+ case "PREMIUM_RATE":
455
+ return e[3];
456
+ case "PERSONAL_NUMBER":
457
+ return e[4];
458
+ case "VOICEMAIL":
459
+ return e[5];
460
+ case "UAN":
461
+ return e[6];
462
+ case "PAGER":
463
+ return e[7];
464
+ case "VOIP":
465
+ return e[8];
466
+ case "SHARED_COST":
467
+ return e[9];
468
+ }
469
+ }
470
+ function it(e) {
471
+ if (!e)
472
+ throw new Error("[libphonenumber-js] `metadata` argument not passed. Check your arguments.");
473
+ if (!x(e) || !x(e.countries))
474
+ 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 " + kt(e) + ": " + e, "."));
475
+ }
476
+ var kt = function(t) {
477
+ return F(t);
478
+ };
479
+ function Q(e, t) {
480
+ if (t = new g(t), t.hasCountry(e))
481
+ return t.selectNumberingPlan(e).countryCallingCode();
482
+ throw new Error("Unknown country: ".concat(e));
483
+ }
484
+ function Gt(e, t) {
485
+ return t.countries.hasOwnProperty(e);
486
+ }
487
+ function at(e) {
488
+ var t = e.version;
489
+ typeof t == "number" ? (this.v1 = t === 1, this.v2 = t === 2, this.v3 = t === 3, this.v4 = t === 4) : t ? Se(t, Ot) === -1 ? this.v2 = !0 : Se(t, Rt) === -1 ? this.v3 = !0 : this.v4 = !0 : this.v1 = !0;
490
+ }
491
+ function z(e, t, n) {
492
+ return Bt(e, t, void 0, n);
493
+ }
494
+ function Bt(e, t, n, r) {
495
+ t && (r = new g(r.metadata), r.selectNumberingPlan(t));
496
+ var d = r.type(n), i = d && d.possibleLengths() || r.possibleLengths();
497
+ if (!i)
498
+ return "IS_POSSIBLE";
499
+ var a = e.length, o = i[0];
500
+ return o === a ? "IS_POSSIBLE" : o > a ? "TOO_SHORT" : i[i.length - 1] < a ? "TOO_LONG" : i.indexOf(a, 1) >= 0 ? "IS_POSSIBLE" : "INVALID_LENGTH";
501
+ }
502
+ function Ut(e, t, n) {
503
+ if (t === void 0 && (t = {}), n = new g(n), t.v2) {
504
+ if (!e.countryCallingCode)
505
+ throw new Error("Invalid phone number object passed");
506
+ n.selectNumberingPlan(e.countryCallingCode);
507
+ } else {
508
+ if (!e.phone)
509
+ return !1;
510
+ if (e.country) {
511
+ if (!n.hasCountry(e.country))
512
+ throw new Error("Unknown country: ".concat(e.country));
513
+ n.selectNumberingPlan(e.country);
514
+ } else {
515
+ if (!e.countryCallingCode)
516
+ throw new Error("Invalid phone number object passed");
517
+ n.selectNumberingPlan(e.countryCallingCode);
518
+ }
519
+ }
520
+ if (n.possibleLengths())
521
+ return ot(e.phone || e.nationalNumber, e.country, n);
522
+ if (e.countryCallingCode && n.isNonGeographicCallingCode(e.countryCallingCode))
523
+ return !0;
524
+ throw new Error('Missing "possibleLengths" in metadata. Perhaps the metadata has been generated before v1.0.18.');
525
+ }
526
+ function ot(e, t, n) {
527
+ switch (z(e, t, n)) {
528
+ case "IS_POSSIBLE":
529
+ return !0;
530
+ // This library ignores "local-only" phone numbers (for simplicity).
531
+ // See the readme for more info on what are "local-only" phone numbers.
532
+ // case 'IS_POSSIBLE_LOCAL_ONLY':
533
+ // return !isInternational
534
+ default:
535
+ return !1;
536
+ }
537
+ }
538
+ function E(e, t) {
539
+ return e = e || "", new RegExp("^(?:" + t + ")$").test(e);
540
+ }
541
+ function Ht(e, t) {
542
+ var n = typeof Symbol < "u" && e[Symbol.iterator] || e["@@iterator"];
543
+ if (n) return (n = n.call(e)).next.bind(n);
544
+ if (Array.isArray(e) || (n = Wt(e)) || t) {
545
+ n && (e = n);
546
+ var r = 0;
547
+ return function() {
548
+ return r >= e.length ? { done: !0 } : { done: !1, value: e[r++] };
549
+ };
550
+ }
551
+ throw new TypeError(`Invalid attempt to iterate non-iterable instance.
552
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`);
553
+ }
554
+ function Wt(e, t) {
555
+ if (e) {
556
+ if (typeof e == "string") return Te(e, t);
557
+ var n = {}.toString.call(e).slice(8, -1);
558
+ return n === "Object" && e.constructor && (n = e.constructor.name), n === "Map" || n === "Set" ? Array.from(e) : n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n) ? Te(e, t) : void 0;
559
+ }
560
+ }
561
+ function Te(e, t) {
562
+ (t == null || t > e.length) && (t = e.length);
563
+ for (var n = 0, r = Array(t); n < t; n++) r[n] = e[n];
564
+ return r;
565
+ }
566
+ var Vt = ["MOBILE", "PREMIUM_RATE", "TOLL_FREE", "SHARED_COST", "VOIP", "PERSONAL_NUMBER", "PAGER", "UAN", "VOICEMAIL"];
567
+ function ye(e, t, n) {
568
+ if (t = t || {}, !(!e.country && !e.countryCallingCode)) {
569
+ n = new g(n), n.selectNumberingPlan(e.country, e.countryCallingCode);
570
+ var r = t.v2 ? e.nationalNumber : e.phone;
571
+ if (E(r, n.nationalNumberPattern())) {
572
+ if (de(r, "FIXED_LINE", n))
573
+ return n.type("MOBILE") && n.type("MOBILE").pattern() === "" || !n.type("MOBILE") || de(r, "MOBILE", n) ? "FIXED_LINE_OR_MOBILE" : "FIXED_LINE";
574
+ for (var d = Ht(Vt), i; !(i = d()).done; ) {
575
+ var a = i.value;
576
+ if (de(r, a, n))
577
+ return a;
578
+ }
579
+ }
580
+ }
581
+ }
582
+ function de(e, t, n) {
583
+ return t = n.type(t), !t || !t.pattern() || t.possibleLengths() && t.possibleLengths().indexOf(e.length) < 0 ? !1 : E(e, t.pattern());
584
+ }
585
+ function Kt(e, t, n) {
586
+ if (t = t || {}, n = new g(n), n.selectNumberingPlan(e.country, e.countryCallingCode), n.hasTypes())
587
+ return ye(e, t, n.metadata) !== void 0;
588
+ var r = t.v2 ? e.nationalNumber : e.phone;
589
+ return E(r, n.nationalNumberPattern());
590
+ }
591
+ function Yt(e, t, n) {
592
+ var r = new g(n), d = r.getCountryCodesForCallingCode(e);
593
+ return d ? d.filter(function(i) {
594
+ return Xt(t, i, n);
595
+ }) : [];
596
+ }
597
+ function Xt(e, t, n) {
598
+ var r = new g(n);
599
+ return r.selectNumberingPlan(t), r.numberingPlan.possibleLengths().indexOf(e.length) >= 0;
600
+ }
601
+ var pe = 2, Zt = 17, Jt = 3, v = "0-90-9٠-٩۰-۹", Qt = "-‐-―−ー-", zt = "//", qt = "..", en = "  ­​⁠ ", tn = "()()[]\\[\\]", nn = "~⁓∼~", S = "".concat(Qt).concat(zt).concat(qt).concat(en).concat(tn).concat(nn), q = "++", rn = new RegExp("([" + v + "])");
602
+ function $t(e, t, n, r) {
603
+ if (t) {
604
+ var d = new g(r);
605
+ d.selectNumberingPlan(t, n);
606
+ var i = new RegExp(d.IDDPrefix());
607
+ if (e.search(i) === 0) {
608
+ e = e.slice(e.match(i)[0].length);
609
+ var a = e.match(rn);
610
+ if (!(a && a[1] != null && a[1].length > 0 && a[1] === "0"))
611
+ return e;
612
+ }
613
+ }
614
+ }
615
+ function ue(e, t) {
616
+ if (e && t.numberingPlan.nationalPrefixForParsing()) {
617
+ var n = new RegExp("^(?:" + t.numberingPlan.nationalPrefixForParsing() + ")"), r = n.exec(e);
618
+ if (r) {
619
+ var d, i, a = r.length - 1, o = a > 0 && r[a];
620
+ if (t.nationalPrefixTransformRule() && o)
621
+ d = e.replace(n, t.nationalPrefixTransformRule()), a > 1 && (i = r[1]);
622
+ else {
623
+ var $ = r[0];
624
+ d = e.slice($.length), o && (i = r[1]);
625
+ }
626
+ var u;
627
+ if (o) {
628
+ var l = e.indexOf(r[1]), c = e.slice(0, l);
629
+ c === t.numberingPlan.nationalPrefix() && (u = t.numberingPlan.nationalPrefix());
630
+ } else
631
+ u = r[0];
632
+ return {
633
+ nationalNumber: d,
634
+ nationalPrefix: u,
635
+ carrierCode: i
636
+ };
637
+ }
638
+ }
639
+ return {
640
+ nationalNumber: e
641
+ };
642
+ }
643
+ function dn(e, t) {
644
+ var n = typeof Symbol < "u" && e[Symbol.iterator] || e["@@iterator"];
645
+ if (n) return (n = n.call(e)).next.bind(n);
646
+ if (Array.isArray(e) || (n = an(e)) || t) {
647
+ n && (e = n);
648
+ var r = 0;
649
+ return function() {
650
+ return r >= e.length ? { done: !0 } : { done: !1, value: e[r++] };
651
+ };
652
+ }
653
+ throw new TypeError(`Invalid attempt to iterate non-iterable instance.
654
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`);
655
+ }
656
+ function an(e, t) {
657
+ if (e) {
658
+ if (typeof e == "string") return Ae(e, t);
659
+ var n = {}.toString.call(e).slice(8, -1);
660
+ return n === "Object" && e.constructor && (n = e.constructor.name), n === "Map" || n === "Set" ? Array.from(e) : n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n) ? Ae(e, t) : void 0;
661
+ }
662
+ }
663
+ function Ae(e, t) {
664
+ (t == null || t > e.length) && (t = e.length);
665
+ for (var n = 0, r = Array(t); n < t; n++) r[n] = e[n];
666
+ return r;
667
+ }
668
+ function ut(e, t) {
669
+ var n = t.countries, r = t.metadata;
670
+ r = new g(r);
671
+ for (var d = dn(n), i; !(i = d()).done; ) {
672
+ var a = i.value;
673
+ if (r.selectNumberingPlan(a), r.leadingDigits()) {
674
+ if (e && e.search(r.leadingDigits()) === 0)
675
+ return a;
676
+ } else if (ye({
677
+ phone: e,
678
+ country: a
679
+ }, void 0, r.metadata))
680
+ return a;
681
+ }
682
+ }
683
+ function ve(e, t) {
684
+ var n = t.nationalNumber, r = t.metadata, d = r.getCountryCodesForCallingCode(e);
685
+ if (d)
686
+ return d.length === 1 ? d[0] : ut(n, {
687
+ countries: d,
688
+ metadata: r.metadata
689
+ });
690
+ }
691
+ function le(e, t, n) {
692
+ var r = ue(e, n), d = r.carrierCode, i = r.nationalNumber;
693
+ if (i !== e) {
694
+ if (!on(e, i, n))
695
+ return {
696
+ nationalNumber: e
697
+ };
698
+ if (n.numberingPlan.possibleLengths() && (t || (t = ve(n.numberingPlan.callingCode(), {
699
+ nationalNumber: i,
700
+ metadata: n
701
+ })), !$n(i, t, n)))
702
+ return {
703
+ nationalNumber: e
704
+ };
705
+ }
706
+ return {
707
+ nationalNumber: i,
708
+ carrierCode: d
709
+ };
710
+ }
711
+ function on(e, t, n) {
712
+ return !(E(e, n.nationalNumberPattern()) && !E(t, n.nationalNumberPattern()));
713
+ }
714
+ function $n(e, t, n) {
715
+ switch (z(e, t, n)) {
716
+ case "TOO_SHORT":
717
+ case "INVALID_LENGTH":
718
+ return !1;
719
+ default:
720
+ return !0;
721
+ }
722
+ }
723
+ function lt(e, t, n, r, d) {
724
+ var i = t || n ? Q(t || n, d) : r;
725
+ if (e.indexOf(i) === 0) {
726
+ d = new g(d), d.selectNumberingPlan(t || n, i);
727
+ var a = e.slice(i.length), o = le(a, t, d), $ = o.nationalNumber, u = le(e, t, d), l = u.nationalNumber;
728
+ if (!E(l, d.nationalNumberPattern()) && E($, d.nationalNumberPattern()) || z(l, t, d) === "TOO_LONG")
729
+ return {
730
+ countryCallingCode: i,
731
+ number: a
732
+ };
733
+ }
734
+ return {
735
+ number: e
736
+ };
737
+ }
738
+ function be(e, t, n, r, d) {
739
+ if (!e)
740
+ return {};
741
+ var i;
742
+ if (e[0] !== "+") {
743
+ var a = $t(e, t || n, r, d);
744
+ if (a && a !== e)
745
+ i = !0, e = "+" + a;
746
+ else {
747
+ if (t || n || r) {
748
+ var o = lt(e, t, n, r, d), $ = o.countryCallingCode, u = o.number;
749
+ if ($)
750
+ return {
751
+ countryCallingCodeSource: "FROM_NUMBER_WITHOUT_PLUS_SIGN",
752
+ countryCallingCode: $,
753
+ number: u
754
+ };
755
+ }
756
+ return {
757
+ // No need to set it to `UNSPECIFIED`. It can be just `undefined`.
758
+ // countryCallingCodeSource: 'UNSPECIFIED',
759
+ number: e
760
+ };
761
+ }
762
+ }
763
+ if (e[1] === "0")
764
+ return {};
765
+ d = new g(d);
766
+ for (var l = 2; l - 1 <= Jt && l <= e.length; ) {
767
+ var c = e.slice(1, l);
768
+ if (d.hasCallingCode(c))
769
+ return d.selectNumberingPlan(c), {
770
+ countryCallingCodeSource: i ? "FROM_NUMBER_WITH_IDD" : "FROM_NUMBER_WITH_PLUS_SIGN",
771
+ countryCallingCode: c,
772
+ number: e.slice(l)
773
+ };
774
+ l++;
775
+ }
776
+ return {};
777
+ }
778
+ function st(e) {
779
+ return e.replace(new RegExp("[".concat(S, "]+"), "g"), " ").trim();
780
+ }
781
+ var ft = /(\$\d)/;
782
+ function ct(e, t, n) {
783
+ var r = n.useInternationalFormat, d = n.withNationalPrefix;
784
+ n.carrierCode, n.metadata;
785
+ var i = e.replace(new RegExp(t.pattern()), r ? t.internationalFormat() : (
786
+ // This library doesn't use `domestic_carrier_code_formatting_rule`,
787
+ // because that one is only used when formatting phone numbers
788
+ // for dialing from a mobile phone, and this is not a dialing library.
789
+ // carrierCode && format.domesticCarrierCodeFormattingRule()
790
+ // // First, replace the $CC in the formatting rule with the desired carrier code.
791
+ // // Then, replace the $FG in the formatting rule with the first group
792
+ // // and the carrier code combined in the appropriate way.
793
+ // ? format.format().replace(FIRST_GROUP_PATTERN, format.domesticCarrierCodeFormattingRule().replace('$CC', carrierCode))
794
+ // : (
795
+ // withNationalPrefix && format.nationalPrefixFormattingRule()
796
+ // ? format.format().replace(FIRST_GROUP_PATTERN, format.nationalPrefixFormattingRule())
797
+ // : format.format()
798
+ // )
799
+ d && t.nationalPrefixFormattingRule() ? t.format().replace(ft, t.nationalPrefixFormattingRule()) : t.format()
800
+ ));
801
+ return r ? st(i) : i;
802
+ }
803
+ var un = /^[\d]+(?:[~\u2053\u223C\uFF5E][\d]+)?$/;
804
+ function ln(e, t, n) {
805
+ var r = new g(n);
806
+ if (r.selectNumberingPlan(e, t), r.defaultIDDPrefix())
807
+ return r.defaultIDDPrefix();
808
+ if (un.test(r.IDDPrefix()))
809
+ return r.IDDPrefix();
810
+ }
811
+ var sn = ";ext=", A = function(t) {
812
+ return "([".concat(v, "]{1,").concat(t, "})");
813
+ };
814
+ function ht(e) {
815
+ var t = "20", n = "15", r = "9", d = "6", i = "[  \\t,]*", a = "[:\\..]?[  \\t,-]*", o = "#?", $ = "(?:e?xt(?:ensi(?:ó?|ó))?n?|e?xtn?|доб|anexo)", u = "(?:[xx##~~]|int|int)", l = "[- ]+", c = "[  \\t]*", f = "(?:,{2}|;)", m = sn + A(t), y = i + $ + a + A(t) + o, N = i + u + a + A(r) + o, b = l + A(d) + "#", ee = c + f + a + A(n) + o, te = c + "(?:,)+" + a + A(r) + o;
816
+ return m + "|" + y + "|" + N + "|" + b + "|" + ee + "|" + te;
817
+ }
818
+ var fn = "[" + v + "]{" + pe + "}", cn = "[" + q + "]{0,1}(?:[" + S + "]*[" + v + "]){3,}[" + S + v + "]*", hn = new RegExp("^[" + q + "]{0,1}(?:[" + S + "]*[" + v + "]){1,2}$", "i"), mn = cn + // Phone number extensions
819
+ "(?:" + ht() + ")?", gn = new RegExp(
820
+ // Either a short two-digit-only phone number
821
+ "^" + fn + "$|^" + mn + "$",
822
+ "i"
823
+ );
824
+ function yn(e) {
825
+ return e.length >= pe && gn.test(e);
826
+ }
827
+ function pn(e) {
828
+ return hn.test(e);
829
+ }
830
+ function vn(e) {
831
+ var t = e.number, n = e.ext;
832
+ if (!t)
833
+ return "";
834
+ if (t[0] !== "+")
835
+ throw new Error('"formatRFC3966()" expects "number" to be in E.164 format.');
836
+ return "tel:".concat(t).concat(n ? ";ext=" + n : "");
837
+ }
838
+ var Fe = {
839
+ formatExtension: function(t, n, r) {
840
+ return "".concat(t).concat(r.ext()).concat(n);
841
+ }
842
+ };
843
+ function bn(e, t, n, r) {
844
+ if (n ? n = Pn({}, Fe, n) : n = Fe, r = new g(r), e.country && e.country !== "001") {
845
+ if (!r.hasCountry(e.country))
846
+ throw new Error("Unknown country: ".concat(e.country));
847
+ r.selectNumberingPlan(e.country);
848
+ } else if (e.countryCallingCode)
849
+ r.selectNumberingPlan(e.countryCallingCode);
850
+ else return e.phone || "";
851
+ var d = r.countryCallingCode(), i = n.v2 ? e.nationalNumber : e.phone, a;
852
+ switch (t) {
853
+ case "NATIONAL":
854
+ return i ? (a = Y(i, e.carrierCode, "NATIONAL", r, n), ie(a, e.ext, r, n.formatExtension)) : "";
855
+ case "INTERNATIONAL":
856
+ return i ? (a = Y(i, null, "INTERNATIONAL", r, n), a = "+".concat(d, " ").concat(a), ie(a, e.ext, r, n.formatExtension)) : "+".concat(d);
857
+ case "E.164":
858
+ return "+".concat(d).concat(i);
859
+ case "RFC3966":
860
+ return vn({
861
+ number: "+".concat(d).concat(i),
862
+ ext: e.ext
863
+ });
864
+ // For reference, here's Google's IDD formatter:
865
+ // https://github.com/google/libphonenumber/blob/32719cf74e68796788d1ca45abc85dcdc63ba5b9/java/libphonenumber/src/com/google/i18n/phonenumbers/PhoneNumberUtil.java#L1546
866
+ // Not saying that this IDD formatter replicates it 1:1, but it seems to work.
867
+ // Who would even need to format phone numbers in IDD format anyway?
868
+ case "IDD":
869
+ if (!n.fromCountry)
870
+ return;
871
+ var o = Cn(i, e.carrierCode, d, n.fromCountry, r);
872
+ return ie(o, e.ext, r, n.formatExtension);
873
+ default:
874
+ throw new Error('Unknown "format" argument passed to "formatNumber()": "'.concat(t, '"'));
875
+ }
876
+ }
877
+ function Y(e, t, n, r, d) {
878
+ var i = Nn(r.formats(), e);
879
+ return i ? ct(e, i, {
880
+ useInternationalFormat: n === "INTERNATIONAL",
881
+ withNationalPrefix: !(i.nationalPrefixIsOptionalWhenFormattingInNationalFormat() && d && d.nationalPrefix === !1),
882
+ carrierCode: t,
883
+ metadata: r
884
+ }) : e;
885
+ }
886
+ function Nn(e, t) {
887
+ return Sn(e, function(n) {
888
+ if (n.leadingDigitsPatterns().length > 0) {
889
+ var r = n.leadingDigitsPatterns()[n.leadingDigitsPatterns().length - 1];
890
+ if (t.search(r) !== 0)
891
+ return !1;
892
+ }
893
+ return E(t, n.pattern());
894
+ });
895
+ }
896
+ function ie(e, t, n, r) {
897
+ return t ? r(e, t, n) : e;
898
+ }
899
+ function Cn(e, t, n, r, d) {
900
+ var i = Q(r, d.metadata);
901
+ if (i === n) {
902
+ var a = Y(e, t, "NATIONAL", d);
903
+ return n === "1" ? n + " " + a : a;
904
+ }
905
+ var o = ln(r, void 0, d.metadata);
906
+ if (o)
907
+ return "".concat(o, " ").concat(n, " ").concat(Y(e, null, "INTERNATIONAL", d));
908
+ }
909
+ function Pn() {
910
+ for (var e = 1, t = arguments.length, n = new Array(t), r = 0; r < t; r++)
911
+ n[r] = arguments[r];
912
+ for (; e < n.length; ) {
913
+ if (n[e])
914
+ for (var d in n[e])
915
+ n[0][d] = n[e][d];
916
+ e++;
917
+ }
918
+ return n[0];
919
+ }
920
+ function Sn(e, t) {
921
+ for (var n = 0; n < e.length; ) {
922
+ if (t(e[n]))
923
+ return e[n];
924
+ n++;
925
+ }
926
+ }
927
+ function _(e) {
928
+ "@babel/helpers - typeof";
929
+ return _ = typeof Symbol == "function" && typeof Symbol.iterator == "symbol" ? function(t) {
930
+ return typeof t;
931
+ } : function(t) {
932
+ return t && typeof Symbol == "function" && t.constructor === Symbol && t !== Symbol.prototype ? "symbol" : typeof t;
933
+ }, _(e);
934
+ }
935
+ function we(e, t) {
936
+ var n = Object.keys(e);
937
+ if (Object.getOwnPropertySymbols) {
938
+ var r = Object.getOwnPropertySymbols(e);
939
+ t && (r = r.filter(function(d) {
940
+ return Object.getOwnPropertyDescriptor(e, d).enumerable;
941
+ })), n.push.apply(n, r);
942
+ }
943
+ return n;
944
+ }
945
+ function _e(e) {
946
+ for (var t = 1; t < arguments.length; t++) {
947
+ var n = arguments[t] != null ? arguments[t] : {};
948
+ t % 2 ? we(Object(n), !0).forEach(function(r) {
949
+ In(e, r, n[r]);
950
+ }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(n)) : we(Object(n)).forEach(function(r) {
951
+ Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(n, r));
952
+ });
953
+ }
954
+ return e;
955
+ }
956
+ function In(e, t, n) {
957
+ return (t = mt(t)) in e ? Object.defineProperty(e, t, { value: n, enumerable: !0, configurable: !0, writable: !0 }) : e[t] = n, e;
958
+ }
959
+ function En(e, t) {
960
+ if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function");
961
+ }
962
+ function xn(e, t) {
963
+ for (var n = 0; n < t.length; n++) {
964
+ var r = t[n];
965
+ r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, mt(r.key), r);
966
+ }
967
+ }
968
+ function Tn(e, t, n) {
969
+ return t && xn(e.prototype, t), Object.defineProperty(e, "prototype", { writable: !1 }), e;
970
+ }
971
+ function mt(e) {
972
+ var t = An(e, "string");
973
+ return _(t) == "symbol" ? t : t + "";
974
+ }
975
+ function An(e, t) {
976
+ if (_(e) != "object" || !e) return e;
977
+ var n = e[Symbol.toPrimitive];
978
+ if (n !== void 0) {
979
+ var r = n.call(e, t);
980
+ if (_(r) != "object") return r;
981
+ throw new TypeError("@@toPrimitive must return a primitive value.");
982
+ }
983
+ return String(e);
984
+ }
985
+ var gt = /* @__PURE__ */ (function() {
986
+ function e(t, n, r) {
987
+ if (En(this, e), !t)
988
+ throw new TypeError("First argument is required");
989
+ if (typeof t != "string")
990
+ throw new TypeError("First argument must be a string");
991
+ if (t[0] === "+" && !n)
992
+ throw new TypeError("`metadata` argument not passed");
993
+ if (x(n) && x(n.countries)) {
994
+ r = n;
995
+ var d = t;
996
+ if (!_n.test(d))
997
+ throw new Error('Invalid `number` argument passed: must consist of a "+" followed by digits');
998
+ var i = be(d, void 0, void 0, void 0, r), a = i.countryCallingCode, o = i.number;
999
+ if (n = o, t = a, !n)
1000
+ throw new Error("Invalid `number` argument passed: too short");
1001
+ }
1002
+ if (!n)
1003
+ throw new TypeError("`nationalNumber` argument is required");
1004
+ if (typeof n != "string")
1005
+ throw new TypeError("`nationalNumber` argument must be a string");
1006
+ it(r);
1007
+ var $ = wn(t, r), u = $.country, l = $.countryCallingCode;
1008
+ this.country = u, this.countryCallingCode = l, this.nationalNumber = n, this.number = "+" + this.countryCallingCode + this.nationalNumber, this.getMetadata = function() {
1009
+ return r;
1010
+ };
1011
+ }
1012
+ return Tn(e, [{
1013
+ key: "setExt",
1014
+ value: function(n) {
1015
+ this.ext = n;
1016
+ }
1017
+ }, {
1018
+ key: "getPossibleCountries",
1019
+ value: function() {
1020
+ return this.country ? [this.country] : Yt(this.countryCallingCode, this.nationalNumber, this.getMetadata());
1021
+ }
1022
+ }, {
1023
+ key: "isPossible",
1024
+ value: function() {
1025
+ return Ut(this, {
1026
+ v2: !0
1027
+ }, this.getMetadata());
1028
+ }
1029
+ }, {
1030
+ key: "isValid",
1031
+ value: function() {
1032
+ return Kt(this, {
1033
+ v2: !0
1034
+ }, this.getMetadata());
1035
+ }
1036
+ }, {
1037
+ key: "isNonGeographic",
1038
+ value: function() {
1039
+ var n = new g(this.getMetadata());
1040
+ return n.isNonGeographicCallingCode(this.countryCallingCode);
1041
+ }
1042
+ }, {
1043
+ key: "isEqual",
1044
+ value: function(n) {
1045
+ return this.number === n.number && this.ext === n.ext;
1046
+ }
1047
+ // This function was originally meant to be an equivalent for `validatePhoneNumberLength()`,
1048
+ // but later it was found out that it doesn't include the possible `TOO_SHORT` result
1049
+ // returned from `parsePhoneNumberWithError()` in the original `validatePhoneNumberLength()`,
1050
+ // so eventually I simply commented out this method from the `PhoneNumber` class
1051
+ // and just left the `validatePhoneNumberLength()` function, even though that one would require
1052
+ // and additional step to also validate the actual country / calling code of the phone number.
1053
+ // validateLength() {
1054
+ // const metadata = new Metadata(this.getMetadata())
1055
+ // metadata.selectNumberingPlan(this.countryCallingCode)
1056
+ // const result = checkNumberLength(this.nationalNumber, metadata)
1057
+ // if (result !== 'IS_POSSIBLE') {
1058
+ // return result
1059
+ // }
1060
+ // }
1061
+ }, {
1062
+ key: "getType",
1063
+ value: function() {
1064
+ return ye(this, {
1065
+ v2: !0
1066
+ }, this.getMetadata());
1067
+ }
1068
+ }, {
1069
+ key: "format",
1070
+ value: function(n, r) {
1071
+ return bn(this, n, r ? _e(_e({}, r), {}, {
1072
+ v2: !0
1073
+ }) : {
1074
+ v2: !0
1075
+ }, this.getMetadata());
1076
+ }
1077
+ }, {
1078
+ key: "formatNational",
1079
+ value: function(n) {
1080
+ return this.format("NATIONAL", n);
1081
+ }
1082
+ }, {
1083
+ key: "formatInternational",
1084
+ value: function(n) {
1085
+ return this.format("INTERNATIONAL", n);
1086
+ }
1087
+ }, {
1088
+ key: "getURI",
1089
+ value: function(n) {
1090
+ return this.format("RFC3966", n);
1091
+ }
1092
+ }]);
1093
+ })(), Fn = function(t) {
1094
+ return /^[A-Z]{2}$/.test(t);
1095
+ };
1096
+ function wn(e, t) {
1097
+ var n, r, d = new g(t);
1098
+ return Fn(e) ? (n = e, d.selectNumberingPlan(n), r = d.countryCallingCode()) : r = e, {
1099
+ country: n,
1100
+ countryCallingCode: r
1101
+ };
1102
+ }
1103
+ var _n = /^\+\d+$/;
1104
+ function se(e) {
1105
+ "@babel/helpers - typeof";
1106
+ return se = typeof Symbol == "function" && typeof Symbol.iterator == "symbol" ? function(t) {
1107
+ return typeof t;
1108
+ } : function(t) {
1109
+ return t && typeof Symbol == "function" && t.constructor === Symbol && t !== Symbol.prototype ? "symbol" : typeof t;
1110
+ }, se(e);
1111
+ }
1112
+ function On(e, t, n) {
1113
+ return Object.defineProperty(e, "prototype", { writable: !1 }), e;
1114
+ }
1115
+ function Rn(e, t) {
1116
+ if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function");
1117
+ }
1118
+ function Dn(e, t, n) {
1119
+ return t = R(t), jn(e, Ne() ? Reflect.construct(t, n || [], R(e).constructor) : t.apply(e, n));
1120
+ }
1121
+ function jn(e, t) {
1122
+ if (t && (se(t) == "object" || typeof t == "function")) return t;
1123
+ if (t !== void 0) throw new TypeError("Derived constructors may only return object or undefined");
1124
+ return Ln(e);
1125
+ }
1126
+ function Ln(e) {
1127
+ if (e === void 0) throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
1128
+ return e;
1129
+ }
1130
+ function Mn(e, t) {
1131
+ if (typeof t != "function" && t !== null) throw new TypeError("Super expression must either be null or a function");
1132
+ e.prototype = Object.create(t && t.prototype, { constructor: { value: e, writable: !0, configurable: !0 } }), Object.defineProperty(e, "prototype", { writable: !1 }), t && O(e, t);
1133
+ }
1134
+ function fe(e) {
1135
+ var t = typeof Map == "function" ? /* @__PURE__ */ new Map() : void 0;
1136
+ return fe = function(r) {
1137
+ if (r === null || !Gn(r)) return r;
1138
+ if (typeof r != "function") throw new TypeError("Super expression must either be null or a function");
1139
+ if (t !== void 0) {
1140
+ if (t.has(r)) return t.get(r);
1141
+ t.set(r, d);
1142
+ }
1143
+ function d() {
1144
+ return kn(r, arguments, R(this).constructor);
1145
+ }
1146
+ return d.prototype = Object.create(r.prototype, { constructor: { value: d, enumerable: !1, writable: !0, configurable: !0 } }), O(d, r);
1147
+ }, fe(e);
1148
+ }
1149
+ function kn(e, t, n) {
1150
+ if (Ne()) return Reflect.construct.apply(null, arguments);
1151
+ var r = [null];
1152
+ r.push.apply(r, t);
1153
+ var d = new (e.bind.apply(e, r))();
1154
+ return n && O(d, n.prototype), d;
1155
+ }
1156
+ function Ne() {
1157
+ try {
1158
+ var e = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {
1159
+ }));
1160
+ } catch {
1161
+ }
1162
+ return (Ne = function() {
1163
+ return !!e;
1164
+ })();
1165
+ }
1166
+ function Gn(e) {
1167
+ try {
1168
+ return Function.toString.call(e).indexOf("[native code]") !== -1;
1169
+ } catch {
1170
+ return typeof e == "function";
1171
+ }
1172
+ }
1173
+ function O(e, t) {
1174
+ return O = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function(n, r) {
1175
+ return n.__proto__ = r, n;
1176
+ }, O(e, t);
1177
+ }
1178
+ function R(e) {
1179
+ return R = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function(t) {
1180
+ return t.__proto__ || Object.getPrototypeOf(t);
1181
+ }, R(e);
1182
+ }
1183
+ var I = /* @__PURE__ */ (function(e) {
1184
+ function t(n) {
1185
+ var r;
1186
+ return Rn(this, t), r = Dn(this, t, [n]), Object.setPrototypeOf(r, t.prototype), r.name = r.constructor.name, r;
1187
+ }
1188
+ return Mn(t, e), On(t);
1189
+ })(/* @__PURE__ */ fe(Error)), Oe = new RegExp("(?:" + ht() + ")$", "i");
1190
+ function Bn(e) {
1191
+ var t = e.search(Oe);
1192
+ if (t < 0)
1193
+ return {};
1194
+ for (var n = e.slice(0, t), r = e.match(Oe), d = 1; d < r.length; ) {
1195
+ if (r[d])
1196
+ return {
1197
+ number: n,
1198
+ ext: r[d]
1199
+ };
1200
+ d++;
1201
+ }
1202
+ }
1203
+ function Un(e, t) {
1204
+ var n = typeof Symbol < "u" && e[Symbol.iterator] || e["@@iterator"];
1205
+ if (n) return (n = n.call(e)).next.bind(n);
1206
+ if (Array.isArray(e) || (n = Hn(e)) || t) {
1207
+ n && (e = n);
1208
+ var r = 0;
1209
+ return function() {
1210
+ return r >= e.length ? { done: !0 } : { done: !1, value: e[r++] };
1211
+ };
1212
+ }
1213
+ throw new TypeError(`Invalid attempt to iterate non-iterable instance.
1214
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`);
1215
+ }
1216
+ function Hn(e, t) {
1217
+ if (e) {
1218
+ if (typeof e == "string") return Re(e, t);
1219
+ var n = {}.toString.call(e).slice(8, -1);
1220
+ return n === "Object" && e.constructor && (n = e.constructor.name), n === "Map" || n === "Set" ? Array.from(e) : n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n) ? Re(e, t) : void 0;
1221
+ }
1222
+ }
1223
+ function Re(e, t) {
1224
+ (t == null || t > e.length) && (t = e.length);
1225
+ for (var n = 0, r = Array(t); n < t; n++) r[n] = e[n];
1226
+ return r;
1227
+ }
1228
+ var Wn = {
1229
+ 0: "0",
1230
+ 1: "1",
1231
+ 2: "2",
1232
+ 3: "3",
1233
+ 4: "4",
1234
+ 5: "5",
1235
+ 6: "6",
1236
+ 7: "7",
1237
+ 8: "8",
1238
+ 9: "9",
1239
+ "0": "0",
1240
+ // Fullwidth digit 0
1241
+ "1": "1",
1242
+ // Fullwidth digit 1
1243
+ "2": "2",
1244
+ // Fullwidth digit 2
1245
+ "3": "3",
1246
+ // Fullwidth digit 3
1247
+ "4": "4",
1248
+ // Fullwidth digit 4
1249
+ "5": "5",
1250
+ // Fullwidth digit 5
1251
+ "6": "6",
1252
+ // Fullwidth digit 6
1253
+ "7": "7",
1254
+ // Fullwidth digit 7
1255
+ "8": "8",
1256
+ // Fullwidth digit 8
1257
+ "9": "9",
1258
+ // Fullwidth digit 9
1259
+ "٠": "0",
1260
+ // Arabic-indic digit 0
1261
+ "١": "1",
1262
+ // Arabic-indic digit 1
1263
+ "٢": "2",
1264
+ // Arabic-indic digit 2
1265
+ "٣": "3",
1266
+ // Arabic-indic digit 3
1267
+ "٤": "4",
1268
+ // Arabic-indic digit 4
1269
+ "٥": "5",
1270
+ // Arabic-indic digit 5
1271
+ "٦": "6",
1272
+ // Arabic-indic digit 6
1273
+ "٧": "7",
1274
+ // Arabic-indic digit 7
1275
+ "٨": "8",
1276
+ // Arabic-indic digit 8
1277
+ "٩": "9",
1278
+ // Arabic-indic digit 9
1279
+ "۰": "0",
1280
+ // Eastern-Arabic digit 0
1281
+ "۱": "1",
1282
+ // Eastern-Arabic digit 1
1283
+ "۲": "2",
1284
+ // Eastern-Arabic digit 2
1285
+ "۳": "3",
1286
+ // Eastern-Arabic digit 3
1287
+ "۴": "4",
1288
+ // Eastern-Arabic digit 4
1289
+ "۵": "5",
1290
+ // Eastern-Arabic digit 5
1291
+ "۶": "6",
1292
+ // Eastern-Arabic digit 6
1293
+ "۷": "7",
1294
+ // Eastern-Arabic digit 7
1295
+ "۸": "8",
1296
+ // Eastern-Arabic digit 8
1297
+ "۹": "9"
1298
+ // Eastern-Arabic digit 9
1299
+ };
1300
+ function yt(e) {
1301
+ return Wn[e];
1302
+ }
1303
+ function X(e) {
1304
+ for (var t = "", n = Un(e.split("")), r; !(r = n()).done; ) {
1305
+ var d = r.value, i = yt(d);
1306
+ i && (t += i);
1307
+ }
1308
+ return t;
1309
+ }
1310
+ function Vn(e, t) {
1311
+ var n = typeof Symbol < "u" && e[Symbol.iterator] || e["@@iterator"];
1312
+ if (n) return (n = n.call(e)).next.bind(n);
1313
+ if (Array.isArray(e) || (n = Kn(e)) || t) {
1314
+ n && (e = n);
1315
+ var r = 0;
1316
+ return function() {
1317
+ return r >= e.length ? { done: !0 } : { done: !1, value: e[r++] };
1318
+ };
1319
+ }
1320
+ throw new TypeError(`Invalid attempt to iterate non-iterable instance.
1321
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`);
1322
+ }
1323
+ function Kn(e, t) {
1324
+ if (e) {
1325
+ if (typeof e == "string") return De(e, t);
1326
+ var n = {}.toString.call(e).slice(8, -1);
1327
+ return n === "Object" && e.constructor && (n = e.constructor.name), n === "Map" || n === "Set" ? Array.from(e) : n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n) ? De(e, t) : void 0;
1328
+ }
1329
+ }
1330
+ function De(e, t) {
1331
+ (t == null || t > e.length) && (t = e.length);
1332
+ for (var n = 0, r = Array(t); n < t; n++) r[n] = e[n];
1333
+ return r;
1334
+ }
1335
+ function je(e) {
1336
+ for (var t = "", n = Vn(e.split("")), r; !(r = n()).done; ) {
1337
+ var d = r.value;
1338
+ t += Yn(d, t) || "";
1339
+ }
1340
+ return t;
1341
+ }
1342
+ function Yn(e, t, n) {
1343
+ return e === "+" ? t ? void 0 : "+" : yt(e);
1344
+ }
1345
+ var pt = "+", Xn = "[\\-\\.\\(\\)]?", Le = "([" + v + "]|" + Xn + ")", Zn = "^\\" + pt + Le + "*[" + v + "]" + Le + "*$", Jn = new RegExp(Zn, "g"), ce = v, Qn = "[" + ce + "]+((\\-)*[" + ce + "])*", zn = "a-zA-Z", qn = "[" + zn + "]+((\\-)*[" + ce + "])*", er = "^(" + Qn + "\\.)*" + qn + "\\.?$", tr = new RegExp(er, "g"), Me = "tel:", he = ";phone-context=", nr = ";isub=";
1346
+ function rr(e) {
1347
+ var t = e.indexOf(he);
1348
+ if (t < 0)
1349
+ return null;
1350
+ var n = t + he.length;
1351
+ if (n >= e.length)
1352
+ return "";
1353
+ var r = e.indexOf(";", n);
1354
+ return r >= 0 ? e.substring(n, r) : e.substring(n);
1355
+ }
1356
+ function dr(e) {
1357
+ return e === null ? !0 : e.length === 0 ? !1 : Jn.test(e) || tr.test(e);
1358
+ }
1359
+ function ir(e, t) {
1360
+ var n = t.extractFormattedPhoneNumber, r = rr(e);
1361
+ if (!dr(r))
1362
+ throw new I("NOT_A_NUMBER");
1363
+ var d;
1364
+ if (r === null)
1365
+ d = n(e) || "";
1366
+ else {
1367
+ d = "", r.charAt(0) === pt && (d += r);
1368
+ var i = e.indexOf(Me), a;
1369
+ i >= 0 ? a = i + Me.length : a = 0;
1370
+ var o = e.indexOf(he);
1371
+ d += e.substring(a, o);
1372
+ }
1373
+ var $ = d.indexOf(nr);
1374
+ if ($ > 0 && (d = d.substring(0, $)), d !== "")
1375
+ return d;
1376
+ }
1377
+ var ar = 250, or = new RegExp("[" + q + v + "]"), $r = new RegExp("[^" + v + "#]+$");
1378
+ function ur(e, t, n) {
1379
+ if (t = t || {}, n = new g(n), t.defaultCountry && !n.hasCountry(t.defaultCountry))
1380
+ throw t.v2 ? new I("INVALID_COUNTRY") : new Error("Unknown country: ".concat(t.defaultCountry));
1381
+ var r = sr(e, t.v2, t.extract), d = r.number, i = r.ext, a = r.error;
1382
+ if (!d) {
1383
+ if (t.v2)
1384
+ throw a === "TOO_SHORT" ? new I("TOO_SHORT") : new I("NOT_A_NUMBER");
1385
+ return {};
1386
+ }
1387
+ var o = cr(d, t.defaultCountry, t.defaultCallingCode, n), $ = o.country, u = o.nationalNumber, l = o.countryCallingCode, c = o.countryCallingCodeSource, f = o.carrierCode;
1388
+ if (!n.hasSelectedNumberingPlan()) {
1389
+ if (t.v2)
1390
+ throw new I("INVALID_COUNTRY");
1391
+ return {};
1392
+ }
1393
+ if (!u || u.length < pe) {
1394
+ if (t.v2)
1395
+ throw new I("TOO_SHORT");
1396
+ return {};
1397
+ }
1398
+ if (u.length > Zt) {
1399
+ if (t.v2)
1400
+ throw new I("TOO_LONG");
1401
+ return {};
1402
+ }
1403
+ if (t.v2) {
1404
+ var m = new gt(l, u, n.metadata);
1405
+ return $ && (m.country = $), f && (m.carrierCode = f), i && (m.ext = i), m.__countryCallingCodeSource = c, m;
1406
+ }
1407
+ var y = (t.extended ? n.hasSelectedNumberingPlan() : $) ? E(u, n.nationalNumberPattern()) : !1;
1408
+ return t.extended ? {
1409
+ country: $,
1410
+ countryCallingCode: l,
1411
+ carrierCode: f,
1412
+ valid: y,
1413
+ possible: y ? !0 : !!(t.extended === !0 && n.possibleLengths() && ot(u, $, n)),
1414
+ phone: u,
1415
+ ext: i
1416
+ } : y ? fr($, u, i) : {};
1417
+ }
1418
+ function lr(e, t, n) {
1419
+ if (e) {
1420
+ if (e.length > ar) {
1421
+ if (n)
1422
+ throw new I("TOO_LONG");
1423
+ return;
1424
+ }
1425
+ if (t === !1)
1426
+ return e;
1427
+ var r = e.search(or);
1428
+ if (!(r < 0))
1429
+ return e.slice(r).replace($r, "");
1430
+ }
1431
+ }
1432
+ function sr(e, t, n) {
1433
+ var r = ir(e, {
1434
+ extractFormattedPhoneNumber: function(a) {
1435
+ return lr(a, n, t);
1436
+ }
1437
+ });
1438
+ if (!r)
1439
+ return {};
1440
+ if (!yn(r))
1441
+ return pn(r) ? {
1442
+ error: "TOO_SHORT"
1443
+ } : {};
1444
+ var d = Bn(r);
1445
+ return d.ext ? d : {
1446
+ number: r
1447
+ };
1448
+ }
1449
+ function fr(e, t, n) {
1450
+ var r = {
1451
+ country: e,
1452
+ phone: t
1453
+ };
1454
+ return n && (r.ext = n), r;
1455
+ }
1456
+ function cr(e, t, n, r) {
1457
+ var d = be(je(e), void 0, t, n, r.metadata), i = d.countryCallingCodeSource, a = d.countryCallingCode, o = d.number, $;
1458
+ if (a)
1459
+ r.selectNumberingPlan(a);
1460
+ else if (o && (t || n))
1461
+ r.selectNumberingPlan(t, n), t && ($ = t), a = n || Q(t, r.metadata);
1462
+ else return {};
1463
+ if (!o)
1464
+ return {
1465
+ countryCallingCodeSource: i,
1466
+ countryCallingCode: a
1467
+ };
1468
+ var u = le(je(o), $, r), l = u.nationalNumber, c = u.carrierCode, f = ve(a, {
1469
+ nationalNumber: l,
1470
+ metadata: r
1471
+ });
1472
+ return f && ($ = f, f === "001" || r.selectNumberingPlan($)), {
1473
+ country: $,
1474
+ countryCallingCode: a,
1475
+ countryCallingCodeSource: i,
1476
+ nationalNumber: l,
1477
+ carrierCode: c
1478
+ };
1479
+ }
1480
+ function D(e) {
1481
+ "@babel/helpers - typeof";
1482
+ return D = typeof Symbol == "function" && typeof Symbol.iterator == "symbol" ? function(t) {
1483
+ return typeof t;
1484
+ } : function(t) {
1485
+ return t && typeof Symbol == "function" && t.constructor === Symbol && t !== Symbol.prototype ? "symbol" : typeof t;
1486
+ }, D(e);
1487
+ }
1488
+ function ke(e, t) {
1489
+ var n = Object.keys(e);
1490
+ if (Object.getOwnPropertySymbols) {
1491
+ var r = Object.getOwnPropertySymbols(e);
1492
+ t && (r = r.filter(function(d) {
1493
+ return Object.getOwnPropertyDescriptor(e, d).enumerable;
1494
+ })), n.push.apply(n, r);
1495
+ }
1496
+ return n;
1497
+ }
1498
+ function Ge(e) {
1499
+ for (var t = 1; t < arguments.length; t++) {
1500
+ var n = arguments[t] != null ? arguments[t] : {};
1501
+ t % 2 ? ke(Object(n), !0).forEach(function(r) {
1502
+ hr(e, r, n[r]);
1503
+ }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(n)) : ke(Object(n)).forEach(function(r) {
1504
+ Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(n, r));
1505
+ });
1506
+ }
1507
+ return e;
1508
+ }
1509
+ function hr(e, t, n) {
1510
+ return (t = mr(t)) in e ? Object.defineProperty(e, t, { value: n, enumerable: !0, configurable: !0, writable: !0 }) : e[t] = n, e;
1511
+ }
1512
+ function mr(e) {
1513
+ var t = gr(e, "string");
1514
+ return D(t) == "symbol" ? t : t + "";
1515
+ }
1516
+ function gr(e, t) {
1517
+ if (D(e) != "object" || !e) return e;
1518
+ var n = e[Symbol.toPrimitive];
1519
+ if (n !== void 0) {
1520
+ var r = n.call(e, t);
1521
+ if (D(r) != "object") return r;
1522
+ throw new TypeError("@@toPrimitive must return a primitive value.");
1523
+ }
1524
+ return (t === "string" ? String : Number)(e);
1525
+ }
1526
+ function yr(e, t, n) {
1527
+ return ur(e, Ge(Ge({}, t), {}, {
1528
+ v2: !0
1529
+ }), n);
1530
+ }
1531
+ function j(e) {
1532
+ "@babel/helpers - typeof";
1533
+ return j = typeof Symbol == "function" && typeof Symbol.iterator == "symbol" ? function(t) {
1534
+ return typeof t;
1535
+ } : function(t) {
1536
+ return t && typeof Symbol == "function" && t.constructor === Symbol && t !== Symbol.prototype ? "symbol" : typeof t;
1537
+ }, j(e);
1538
+ }
1539
+ function Be(e, t) {
1540
+ var n = Object.keys(e);
1541
+ if (Object.getOwnPropertySymbols) {
1542
+ var r = Object.getOwnPropertySymbols(e);
1543
+ t && (r = r.filter(function(d) {
1544
+ return Object.getOwnPropertyDescriptor(e, d).enumerable;
1545
+ })), n.push.apply(n, r);
1546
+ }
1547
+ return n;
1548
+ }
1549
+ function pr(e) {
1550
+ for (var t = 1; t < arguments.length; t++) {
1551
+ var n = arguments[t] != null ? arguments[t] : {};
1552
+ t % 2 ? Be(Object(n), !0).forEach(function(r) {
1553
+ vr(e, r, n[r]);
1554
+ }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(n)) : Be(Object(n)).forEach(function(r) {
1555
+ Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(n, r));
1556
+ });
1557
+ }
1558
+ return e;
1559
+ }
1560
+ function vr(e, t, n) {
1561
+ return (t = br(t)) in e ? Object.defineProperty(e, t, { value: n, enumerable: !0, configurable: !0, writable: !0 }) : e[t] = n, e;
1562
+ }
1563
+ function br(e) {
1564
+ var t = Nr(e, "string");
1565
+ return j(t) == "symbol" ? t : t + "";
1566
+ }
1567
+ function Nr(e, t) {
1568
+ if (j(e) != "object" || !e) return e;
1569
+ var n = e[Symbol.toPrimitive];
1570
+ if (n !== void 0) {
1571
+ var r = n.call(e, t);
1572
+ if (j(r) != "object") return r;
1573
+ throw new TypeError("@@toPrimitive must return a primitive value.");
1574
+ }
1575
+ return (t === "string" ? String : Number)(e);
1576
+ }
1577
+ function Cr(e, t) {
1578
+ return Er(e) || Ir(e, t) || Sr(e, t) || Pr();
1579
+ }
1580
+ function Pr() {
1581
+ throw new TypeError(`Invalid attempt to destructure non-iterable instance.
1582
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`);
1583
+ }
1584
+ function Sr(e, t) {
1585
+ if (e) {
1586
+ if (typeof e == "string") return Ue(e, t);
1587
+ var n = {}.toString.call(e).slice(8, -1);
1588
+ return n === "Object" && e.constructor && (n = e.constructor.name), n === "Map" || n === "Set" ? Array.from(e) : n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n) ? Ue(e, t) : void 0;
1589
+ }
1590
+ }
1591
+ function Ue(e, t) {
1592
+ (t == null || t > e.length) && (t = e.length);
1593
+ for (var n = 0, r = Array(t); n < t; n++) r[n] = e[n];
1594
+ return r;
1595
+ }
1596
+ function Ir(e, t) {
1597
+ var n = e == null ? null : typeof Symbol < "u" && e[Symbol.iterator] || e["@@iterator"];
1598
+ if (n != null) {
1599
+ var r, d, i, a, o = [], $ = !0, u = !1;
1600
+ try {
1601
+ if (i = (n = n.call(e)).next, t !== 0) for (; !($ = (r = i.call(n)).done) && (o.push(r.value), o.length !== t); $ = !0) ;
1602
+ } catch (l) {
1603
+ u = !0, d = l;
1604
+ } finally {
1605
+ try {
1606
+ if (!$ && n.return != null && (a = n.return(), Object(a) !== a)) return;
1607
+ } finally {
1608
+ if (u) throw d;
1609
+ }
1610
+ }
1611
+ return o;
1612
+ }
1613
+ }
1614
+ function Er(e) {
1615
+ if (Array.isArray(e)) return e;
1616
+ }
1617
+ function xr(e) {
1618
+ var t = Array.prototype.slice.call(e), n = Cr(t, 4), r = n[0], d = n[1], i = n[2], a = n[3], o, $, u;
1619
+ if (typeof r == "string")
1620
+ o = r;
1621
+ else throw new TypeError("A text for parsing must be a string.");
1622
+ if (!d || typeof d == "string")
1623
+ a ? ($ = i, u = a) : ($ = void 0, u = i), d && ($ = pr({
1624
+ defaultCountry: d
1625
+ }, $));
1626
+ else if (x(d))
1627
+ i ? ($ = d, u = i) : u = d;
1628
+ else throw new Error("Invalid second argument: ".concat(d));
1629
+ return {
1630
+ text: o,
1631
+ options: $,
1632
+ metadata: u
1633
+ };
1634
+ }
1635
+ function L(e) {
1636
+ "@babel/helpers - typeof";
1637
+ return L = typeof Symbol == "function" && typeof Symbol.iterator == "symbol" ? function(t) {
1638
+ return typeof t;
1639
+ } : function(t) {
1640
+ return t && typeof Symbol == "function" && t.constructor === Symbol && t !== Symbol.prototype ? "symbol" : typeof t;
1641
+ }, L(e);
1642
+ }
1643
+ function He(e, t) {
1644
+ var n = Object.keys(e);
1645
+ if (Object.getOwnPropertySymbols) {
1646
+ var r = Object.getOwnPropertySymbols(e);
1647
+ t && (r = r.filter(function(d) {
1648
+ return Object.getOwnPropertyDescriptor(e, d).enumerable;
1649
+ })), n.push.apply(n, r);
1650
+ }
1651
+ return n;
1652
+ }
1653
+ function We(e) {
1654
+ for (var t = 1; t < arguments.length; t++) {
1655
+ var n = arguments[t] != null ? arguments[t] : {};
1656
+ t % 2 ? He(Object(n), !0).forEach(function(r) {
1657
+ Tr(e, r, n[r]);
1658
+ }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(n)) : He(Object(n)).forEach(function(r) {
1659
+ Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(n, r));
1660
+ });
1661
+ }
1662
+ return e;
1663
+ }
1664
+ function Tr(e, t, n) {
1665
+ return (t = Ar(t)) in e ? Object.defineProperty(e, t, { value: n, enumerable: !0, configurable: !0, writable: !0 }) : e[t] = n, e;
1666
+ }
1667
+ function Ar(e) {
1668
+ var t = Fr(e, "string");
1669
+ return L(t) == "symbol" ? t : t + "";
1670
+ }
1671
+ function Fr(e, t) {
1672
+ if (L(e) != "object" || !e) return e;
1673
+ var n = e[Symbol.toPrimitive];
1674
+ if (n !== void 0) {
1675
+ var r = n.call(e, t);
1676
+ if (L(r) != "object") return r;
1677
+ throw new TypeError("@@toPrimitive must return a primitive value.");
1678
+ }
1679
+ return (t === "string" ? String : Number)(e);
1680
+ }
1681
+ function wr(e, t, n) {
1682
+ t && t.defaultCountry && !Gt(t.defaultCountry, n) && (t = We(We({}, t), {}, {
1683
+ defaultCountry: void 0
1684
+ }));
1685
+ try {
1686
+ return yr(e, t, n);
1687
+ } catch (r) {
1688
+ if (!(r instanceof I)) throw r;
1689
+ }
1690
+ }
1691
+ function _r() {
1692
+ var e = xr(arguments), t = e.text, n = e.options, r = e.metadata;
1693
+ return wr(t, n, r);
1694
+ }
1695
+ function M(e) {
1696
+ "@babel/helpers - typeof";
1697
+ return M = typeof Symbol == "function" && typeof Symbol.iterator == "symbol" ? function(t) {
1698
+ return typeof t;
1699
+ } : function(t) {
1700
+ return t && typeof Symbol == "function" && t.constructor === Symbol && t !== Symbol.prototype ? "symbol" : typeof t;
1701
+ }, M(e);
1702
+ }
1703
+ function Or(e, t) {
1704
+ if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function");
1705
+ }
1706
+ function Rr(e, t) {
1707
+ for (var n = 0; n < t.length; n++) {
1708
+ var r = t[n];
1709
+ r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, jr(r.key), r);
1710
+ }
1711
+ }
1712
+ function Dr(e, t, n) {
1713
+ return t && Rr(e.prototype, t), Object.defineProperty(e, "prototype", { writable: !1 }), e;
1714
+ }
1715
+ function jr(e) {
1716
+ var t = Lr(e, "string");
1717
+ return M(t) == "symbol" ? t : t + "";
1718
+ }
1719
+ function Lr(e, t) {
1720
+ if (M(e) != "object" || !e) return e;
1721
+ var n = e[Symbol.toPrimitive];
1722
+ if (n !== void 0) {
1723
+ var r = n.call(e, t);
1724
+ if (M(r) != "object") return r;
1725
+ throw new TypeError("@@toPrimitive must return a primitive value.");
1726
+ }
1727
+ return String(e);
1728
+ }
1729
+ var Mr = /* @__PURE__ */ (function() {
1730
+ function e(t) {
1731
+ var n = t.onCountryChange, r = t.onCallingCodeChange;
1732
+ Or(this, e), this.onCountryChange = n, this.onCallingCodeChange = r;
1733
+ }
1734
+ return Dr(e, [{
1735
+ key: "reset",
1736
+ value: function(n) {
1737
+ var r = n.country, d = n.callingCode;
1738
+ this.international = !1, this.missingPlus = !1, this.IDDPrefix = void 0, this.callingCode = void 0, this.digits = "", this.resetNationalSignificantNumber(), this.initCountryAndCallingCode(r, d);
1739
+ }
1740
+ }, {
1741
+ key: "resetNationalSignificantNumber",
1742
+ value: function() {
1743
+ this.nationalSignificantNumber = this.getNationalDigits(), this.nationalSignificantNumberIsModified = !1, this.nationalPrefix = void 0, this.carrierCode = void 0, this.prefixBeforeNationalSignificantNumberThatIsNotNationalPrefix = void 0;
1744
+ }
1745
+ }, {
1746
+ key: "update",
1747
+ value: function(n) {
1748
+ for (var r = 0, d = Object.keys(n); r < d.length; r++) {
1749
+ var i = d[r];
1750
+ this[i] = n[i];
1751
+ }
1752
+ }
1753
+ }, {
1754
+ key: "initCountryAndCallingCode",
1755
+ value: function(n, r) {
1756
+ this.setCountry(n), this.setCallingCode(r);
1757
+ }
1758
+ }, {
1759
+ key: "setCountry",
1760
+ value: function(n) {
1761
+ this.country = n, this.onCountryChange(n);
1762
+ }
1763
+ }, {
1764
+ key: "setCallingCode",
1765
+ value: function(n) {
1766
+ this.callingCode = n, this.onCallingCodeChange(n, this.country);
1767
+ }
1768
+ }, {
1769
+ key: "startInternationalNumber",
1770
+ value: function(n, r) {
1771
+ this.international = !0, this.initCountryAndCallingCode(n, r);
1772
+ }
1773
+ }, {
1774
+ key: "appendDigits",
1775
+ value: function(n) {
1776
+ this.digits += n;
1777
+ }
1778
+ }, {
1779
+ key: "appendNationalSignificantNumberDigits",
1780
+ value: function(n) {
1781
+ this.nationalSignificantNumber += n;
1782
+ }
1783
+ /**
1784
+ * Returns the part of `this.digits` that corresponds to the national number.
1785
+ * Basically, all digits that have been input by the user, except for the
1786
+ * international prefix and the country calling code part
1787
+ * (if the number is an international one).
1788
+ * @return {string}
1789
+ */
1790
+ }, {
1791
+ key: "getNationalDigits",
1792
+ value: function() {
1793
+ return this.international ? this.digits.slice((this.IDDPrefix ? this.IDDPrefix.length : 0) + (this.callingCode ? this.callingCode.length : 0)) : this.digits;
1794
+ }
1795
+ }, {
1796
+ key: "getDigitsWithoutInternationalPrefix",
1797
+ value: function() {
1798
+ return this.international && this.IDDPrefix ? this.digits.slice(this.IDDPrefix.length) : this.digits;
1799
+ }
1800
+ }]);
1801
+ })();
1802
+ function kr(e, t) {
1803
+ var n = typeof Symbol < "u" && e[Symbol.iterator] || e["@@iterator"];
1804
+ if (n) return (n = n.call(e)).next.bind(n);
1805
+ if (Array.isArray(e) || (n = Gr(e)) || t) {
1806
+ n && (e = n);
1807
+ var r = 0;
1808
+ return function() {
1809
+ return r >= e.length ? { done: !0 } : { done: !1, value: e[r++] };
1810
+ };
1811
+ }
1812
+ throw new TypeError(`Invalid attempt to iterate non-iterable instance.
1813
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`);
1814
+ }
1815
+ function Gr(e, t) {
1816
+ if (e) {
1817
+ if (typeof e == "string") return Ve(e, t);
1818
+ var n = {}.toString.call(e).slice(8, -1);
1819
+ return n === "Object" && e.constructor && (n = e.constructor.name), n === "Map" || n === "Set" ? Array.from(e) : n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n) ? Ve(e, t) : void 0;
1820
+ }
1821
+ }
1822
+ function Ve(e, t) {
1823
+ (t == null || t > e.length) && (t = e.length);
1824
+ for (var n = 0, r = Array(t); n < t; n++) r[n] = e[n];
1825
+ return r;
1826
+ }
1827
+ var P = "x", ae = new RegExp(P);
1828
+ function V(e, t) {
1829
+ if (t < 1)
1830
+ return "";
1831
+ for (var n = ""; t > 1; )
1832
+ t & 1 && (n += e), t >>= 1, e += e;
1833
+ return n + e;
1834
+ }
1835
+ function Ke(e, t) {
1836
+ return e[t] === ")" && t++, Br(e.slice(0, t));
1837
+ }
1838
+ function Br(e) {
1839
+ for (var t = [], n = 0; n < e.length; )
1840
+ e[n] === "(" ? t.push(n) : e[n] === ")" && t.pop(), n++;
1841
+ var r = 0, d = "";
1842
+ t.push(e.length);
1843
+ for (var i = 0, a = t; i < a.length; i++) {
1844
+ var o = a[i];
1845
+ d += e.slice(r, o), r = o + 1;
1846
+ }
1847
+ return d;
1848
+ }
1849
+ function Ur(e, t, n) {
1850
+ for (var r = kr(n.split("")), d; !(d = r()).done; ) {
1851
+ var i = d.value;
1852
+ if (e.slice(t + 1).search(ae) < 0)
1853
+ return;
1854
+ t = e.search(ae), e = e.replace(ae, i);
1855
+ }
1856
+ return [e, t];
1857
+ }
1858
+ function Hr(e, t, n) {
1859
+ var r = n.metadata, d = n.shouldTryNationalPrefixFormattingRule, i = n.getSeparatorAfterNationalPrefix, a = new RegExp("^(?:".concat(t.pattern(), ")$"));
1860
+ if (a.test(e.nationalSignificantNumber))
1861
+ return Vr(e, t, {
1862
+ metadata: r,
1863
+ shouldTryNationalPrefixFormattingRule: d,
1864
+ getSeparatorAfterNationalPrefix: i
1865
+ });
1866
+ }
1867
+ function Wr(e, t, n) {
1868
+ return z(e, t, n) === "IS_POSSIBLE";
1869
+ }
1870
+ function Vr(e, t, n) {
1871
+ var r = n.metadata, d = n.shouldTryNationalPrefixFormattingRule, i = n.getSeparatorAfterNationalPrefix;
1872
+ if (e.nationalSignificantNumber, e.international, e.nationalPrefix, e.carrierCode, d(t)) {
1873
+ var a = Ye(e, t, {
1874
+ useNationalPrefixFormattingRule: !0,
1875
+ getSeparatorAfterNationalPrefix: i,
1876
+ metadata: r
1877
+ });
1878
+ if (a)
1879
+ return a;
1880
+ }
1881
+ return Ye(e, t, {
1882
+ useNationalPrefixFormattingRule: !1,
1883
+ getSeparatorAfterNationalPrefix: i,
1884
+ metadata: r
1885
+ });
1886
+ }
1887
+ function Ye(e, t, n) {
1888
+ var r = n.metadata, d = n.useNationalPrefixFormattingRule, i = n.getSeparatorAfterNationalPrefix, a = ct(e.nationalSignificantNumber, t, {
1889
+ carrierCode: e.carrierCode,
1890
+ useInternationalFormat: e.international,
1891
+ withNationalPrefix: d,
1892
+ metadata: r
1893
+ });
1894
+ if (d || (e.nationalPrefix ? a = e.nationalPrefix + i(t) + a : e.prefixBeforeNationalSignificantNumberThatIsNotNationalPrefix && (a = e.prefixBeforeNationalSignificantNumberThatIsNotNationalPrefix + " " + a)), Kr(a, e))
1895
+ return a;
1896
+ }
1897
+ function Kr(e, t) {
1898
+ return X(e) === t.getNationalDigits();
1899
+ }
1900
+ function k(e) {
1901
+ "@babel/helpers - typeof";
1902
+ return k = typeof Symbol == "function" && typeof Symbol.iterator == "symbol" ? function(t) {
1903
+ return typeof t;
1904
+ } : function(t) {
1905
+ return t && typeof Symbol == "function" && t.constructor === Symbol && t !== Symbol.prototype ? "symbol" : typeof t;
1906
+ }, k(e);
1907
+ }
1908
+ function Yr(e, t) {
1909
+ if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function");
1910
+ }
1911
+ function Xr(e, t) {
1912
+ for (var n = 0; n < t.length; n++) {
1913
+ var r = t[n];
1914
+ r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, Jr(r.key), r);
1915
+ }
1916
+ }
1917
+ function Zr(e, t, n) {
1918
+ return t && Xr(e.prototype, t), Object.defineProperty(e, "prototype", { writable: !1 }), e;
1919
+ }
1920
+ function Jr(e) {
1921
+ var t = Qr(e, "string");
1922
+ return k(t) == "symbol" ? t : t + "";
1923
+ }
1924
+ function Qr(e, t) {
1925
+ if (k(e) != "object" || !e) return e;
1926
+ var n = e[Symbol.toPrimitive];
1927
+ if (n !== void 0) {
1928
+ var r = n.call(e, t);
1929
+ if (k(r) != "object") return r;
1930
+ throw new TypeError("@@toPrimitive must return a primitive value.");
1931
+ }
1932
+ return String(e);
1933
+ }
1934
+ var zr = /* @__PURE__ */ (function() {
1935
+ function e() {
1936
+ Yr(this, e);
1937
+ }
1938
+ return Zr(e, [{
1939
+ key: "parse",
1940
+ value: function(n) {
1941
+ if (this.context = [{
1942
+ or: !0,
1943
+ instructions: []
1944
+ }], this.parsePattern(n), this.context.length !== 1)
1945
+ throw new Error("Non-finalized contexts left when pattern parse ended");
1946
+ var r = this.context[0], d = r.branches, i = r.instructions;
1947
+ if (d)
1948
+ return {
1949
+ op: "|",
1950
+ args: d.concat([oe(i)])
1951
+ };
1952
+ if (i.length === 0)
1953
+ throw new Error("Pattern is required");
1954
+ return i.length === 1 ? i[0] : i;
1955
+ }
1956
+ }, {
1957
+ key: "startContext",
1958
+ value: function(n) {
1959
+ this.context.push(n);
1960
+ }
1961
+ }, {
1962
+ key: "endContext",
1963
+ value: function() {
1964
+ this.context.pop();
1965
+ }
1966
+ }, {
1967
+ key: "getContext",
1968
+ value: function() {
1969
+ return this.context[this.context.length - 1];
1970
+ }
1971
+ }, {
1972
+ key: "parsePattern",
1973
+ value: function(n) {
1974
+ if (!n)
1975
+ throw new Error("Pattern is required");
1976
+ var r = n.match(td);
1977
+ if (!r) {
1978
+ if (ed.test(n))
1979
+ throw new Error("Illegal characters found in a pattern: ".concat(n));
1980
+ this.getContext().instructions = this.getContext().instructions.concat(n.split(""));
1981
+ return;
1982
+ }
1983
+ var d = r[1], i = n.slice(0, r.index), a = n.slice(r.index + d.length);
1984
+ switch (d) {
1985
+ case "(?:":
1986
+ i && this.parsePattern(i), this.startContext({
1987
+ or: !0,
1988
+ instructions: [],
1989
+ branches: []
1990
+ });
1991
+ break;
1992
+ case ")":
1993
+ if (!this.getContext().or)
1994
+ throw new Error('")" operator must be preceded by "(?:" operator');
1995
+ if (i && this.parsePattern(i), this.getContext().instructions.length === 0)
1996
+ throw new Error('No instructions found after "|" operator in an "or" group');
1997
+ var o = this.getContext(), $ = o.branches;
1998
+ $.push(oe(this.getContext().instructions)), this.endContext(), this.getContext().instructions.push({
1999
+ op: "|",
2000
+ args: $
2001
+ });
2002
+ break;
2003
+ case "|":
2004
+ if (!this.getContext().or)
2005
+ throw new Error('"|" operator can only be used inside "or" groups');
2006
+ if (i && this.parsePattern(i), !this.getContext().branches)
2007
+ if (this.context.length === 1)
2008
+ this.getContext().branches = [];
2009
+ else
2010
+ throw new Error('"branches" not found in an "or" group context');
2011
+ this.getContext().branches.push(oe(this.getContext().instructions)), this.getContext().instructions = [];
2012
+ break;
2013
+ case "[":
2014
+ i && this.parsePattern(i), this.startContext({
2015
+ oneOfSet: !0
2016
+ });
2017
+ break;
2018
+ case "]":
2019
+ if (!this.getContext().oneOfSet)
2020
+ throw new Error('"]" operator must be preceded by "[" operator');
2021
+ this.endContext(), this.getContext().instructions.push({
2022
+ op: "[]",
2023
+ args: qr(i)
2024
+ });
2025
+ break;
2026
+ /* istanbul ignore next */
2027
+ default:
2028
+ throw new Error("Unknown operator: ".concat(d));
2029
+ }
2030
+ a && this.parsePattern(a);
2031
+ }
2032
+ }]);
2033
+ })();
2034
+ function qr(e) {
2035
+ for (var t = [], n = 0; n < e.length; ) {
2036
+ if (e[n] === "-") {
2037
+ if (n === 0 || n === e.length - 1)
2038
+ throw new Error("Couldn't parse a one-of set pattern: ".concat(e));
2039
+ for (var r = e[n - 1].charCodeAt(0) + 1, d = e[n + 1].charCodeAt(0) - 1, i = r; i <= d; )
2040
+ t.push(String.fromCharCode(i)), i++;
2041
+ } else
2042
+ t.push(e[n]);
2043
+ n++;
2044
+ }
2045
+ return t;
2046
+ }
2047
+ var ed = /[\(\)\[\]\?\:\|]/, td = new RegExp(
2048
+ // any of:
2049
+ "(\\||\\(\\?\\:|\\)|\\[|\\])"
2050
+ );
2051
+ function oe(e) {
2052
+ return e.length === 1 ? e[0] : e;
2053
+ }
2054
+ function Xe(e, t) {
2055
+ var n = typeof Symbol < "u" && e[Symbol.iterator] || e["@@iterator"];
2056
+ if (n) return (n = n.call(e)).next.bind(n);
2057
+ if (Array.isArray(e) || (n = nd(e)) || t) {
2058
+ n && (e = n);
2059
+ var r = 0;
2060
+ return function() {
2061
+ return r >= e.length ? { done: !0 } : { done: !1, value: e[r++] };
2062
+ };
2063
+ }
2064
+ throw new TypeError(`Invalid attempt to iterate non-iterable instance.
2065
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`);
2066
+ }
2067
+ function nd(e, t) {
2068
+ if (e) {
2069
+ if (typeof e == "string") return Ze(e, t);
2070
+ var n = {}.toString.call(e).slice(8, -1);
2071
+ return n === "Object" && e.constructor && (n = e.constructor.name), n === "Map" || n === "Set" ? Array.from(e) : n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n) ? Ze(e, t) : void 0;
2072
+ }
2073
+ }
2074
+ function Ze(e, t) {
2075
+ (t == null || t > e.length) && (t = e.length);
2076
+ for (var n = 0, r = Array(t); n < t; n++) r[n] = e[n];
2077
+ return r;
2078
+ }
2079
+ function G(e) {
2080
+ "@babel/helpers - typeof";
2081
+ return G = typeof Symbol == "function" && typeof Symbol.iterator == "symbol" ? function(t) {
2082
+ return typeof t;
2083
+ } : function(t) {
2084
+ return t && typeof Symbol == "function" && t.constructor === Symbol && t !== Symbol.prototype ? "symbol" : typeof t;
2085
+ }, G(e);
2086
+ }
2087
+ function rd(e, t) {
2088
+ if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function");
2089
+ }
2090
+ function dd(e, t) {
2091
+ for (var n = 0; n < t.length; n++) {
2092
+ var r = t[n];
2093
+ r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, ad(r.key), r);
2094
+ }
2095
+ }
2096
+ function id(e, t, n) {
2097
+ return t && dd(e.prototype, t), Object.defineProperty(e, "prototype", { writable: !1 }), e;
2098
+ }
2099
+ function ad(e) {
2100
+ var t = od(e, "string");
2101
+ return G(t) == "symbol" ? t : t + "";
2102
+ }
2103
+ function od(e, t) {
2104
+ if (G(e) != "object" || !e) return e;
2105
+ var n = e[Symbol.toPrimitive];
2106
+ if (n !== void 0) {
2107
+ var r = n.call(e, t);
2108
+ if (G(r) != "object") return r;
2109
+ throw new TypeError("@@toPrimitive must return a primitive value.");
2110
+ }
2111
+ return String(e);
2112
+ }
2113
+ var $d = /* @__PURE__ */ (function() {
2114
+ function e(t) {
2115
+ rd(this, e), this.matchTree = new zr().parse(t);
2116
+ }
2117
+ return id(e, [{
2118
+ key: "match",
2119
+ value: function(n) {
2120
+ var r = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}, d = r.allowOverflow;
2121
+ if (!n)
2122
+ throw new Error("String is required");
2123
+ var i = me(n.split(""), this.matchTree, !0);
2124
+ if (i && i.match && delete i.matchedChars, !(i && i.overflow && !d))
2125
+ return i;
2126
+ }
2127
+ }]);
2128
+ })();
2129
+ function me(e, t, n) {
2130
+ if (typeof t == "string") {
2131
+ var r = e.join("");
2132
+ return t.indexOf(r) === 0 ? e.length === t.length ? {
2133
+ match: !0,
2134
+ matchedChars: e
2135
+ } : {
2136
+ partialMatch: !0
2137
+ // matchedChars: characters
2138
+ } : r.indexOf(t) === 0 ? n && e.length > t.length ? {
2139
+ overflow: !0
2140
+ } : {
2141
+ match: !0,
2142
+ matchedChars: e.slice(0, t.length)
2143
+ } : void 0;
2144
+ }
2145
+ if (Array.isArray(t)) {
2146
+ for (var d = e.slice(), i = 0; i < t.length; ) {
2147
+ var a = t[i], o = me(d, a, n && i === t.length - 1);
2148
+ if (o) {
2149
+ if (o.overflow)
2150
+ return o;
2151
+ if (o.match) {
2152
+ if (d = d.slice(o.matchedChars.length), d.length === 0)
2153
+ return i === t.length - 1 ? {
2154
+ match: !0,
2155
+ matchedChars: e
2156
+ } : {
2157
+ partialMatch: !0
2158
+ // matchedChars: characters
2159
+ };
2160
+ } else {
2161
+ if (o.partialMatch)
2162
+ return {
2163
+ partialMatch: !0
2164
+ // matchedChars: characters
2165
+ };
2166
+ throw new Error(`Unsupported match result:
2167
+ `.concat(JSON.stringify(o, null, 2)));
2168
+ }
2169
+ } else return;
2170
+ i++;
2171
+ }
2172
+ return n ? {
2173
+ overflow: !0
2174
+ } : {
2175
+ match: !0,
2176
+ matchedChars: e.slice(0, e.length - d.length)
2177
+ };
2178
+ }
2179
+ switch (t.op) {
2180
+ case "|":
2181
+ for (var $, u = Xe(t.args), l; !(l = u()).done; ) {
2182
+ var c = l.value, f = me(e, c, n);
2183
+ if (f) {
2184
+ if (f.overflow)
2185
+ return f;
2186
+ if (f.match)
2187
+ return {
2188
+ match: !0,
2189
+ matchedChars: f.matchedChars
2190
+ };
2191
+ if (f.partialMatch)
2192
+ $ = !0;
2193
+ else
2194
+ throw new Error(`Unsupported match result:
2195
+ `.concat(JSON.stringify(f, null, 2)));
2196
+ }
2197
+ }
2198
+ return $ ? {
2199
+ partialMatch: !0
2200
+ // matchedChars: ...
2201
+ } : void 0;
2202
+ case "[]":
2203
+ for (var m = Xe(t.args), y; !(y = m()).done; ) {
2204
+ var N = y.value;
2205
+ if (e[0] === N)
2206
+ return e.length === 1 ? {
2207
+ match: !0,
2208
+ matchedChars: e
2209
+ } : n ? {
2210
+ overflow: !0
2211
+ } : {
2212
+ match: !0,
2213
+ matchedChars: [N]
2214
+ };
2215
+ }
2216
+ return;
2217
+ /* istanbul ignore next */
2218
+ default:
2219
+ throw new Error("Unsupported instruction tree: ".concat(t));
2220
+ }
2221
+ }
2222
+ function B(e) {
2223
+ "@babel/helpers - typeof";
2224
+ return B = typeof Symbol == "function" && typeof Symbol.iterator == "symbol" ? function(t) {
2225
+ return typeof t;
2226
+ } : function(t) {
2227
+ return t && typeof Symbol == "function" && t.constructor === Symbol && t !== Symbol.prototype ? "symbol" : typeof t;
2228
+ }, B(e);
2229
+ }
2230
+ function Je(e, t) {
2231
+ var n = typeof Symbol < "u" && e[Symbol.iterator] || e["@@iterator"];
2232
+ if (n) return (n = n.call(e)).next.bind(n);
2233
+ if (Array.isArray(e) || (n = ud(e)) || t) {
2234
+ n && (e = n);
2235
+ var r = 0;
2236
+ return function() {
2237
+ return r >= e.length ? { done: !0 } : { done: !1, value: e[r++] };
2238
+ };
2239
+ }
2240
+ throw new TypeError(`Invalid attempt to iterate non-iterable instance.
2241
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`);
2242
+ }
2243
+ function ud(e, t) {
2244
+ if (e) {
2245
+ if (typeof e == "string") return Qe(e, t);
2246
+ var n = {}.toString.call(e).slice(8, -1);
2247
+ return n === "Object" && e.constructor && (n = e.constructor.name), n === "Map" || n === "Set" ? Array.from(e) : n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n) ? Qe(e, t) : void 0;
2248
+ }
2249
+ }
2250
+ function Qe(e, t) {
2251
+ (t == null || t > e.length) && (t = e.length);
2252
+ for (var n = 0, r = Array(t); n < t; n++) r[n] = e[n];
2253
+ return r;
2254
+ }
2255
+ function ld(e, t) {
2256
+ if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function");
2257
+ }
2258
+ function sd(e, t) {
2259
+ for (var n = 0; n < t.length; n++) {
2260
+ var r = t[n];
2261
+ r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, cd(r.key), r);
2262
+ }
2263
+ }
2264
+ function fd(e, t, n) {
2265
+ return t && sd(e.prototype, t), Object.defineProperty(e, "prototype", { writable: !1 }), e;
2266
+ }
2267
+ function cd(e) {
2268
+ var t = hd(e, "string");
2269
+ return B(t) == "symbol" ? t : t + "";
2270
+ }
2271
+ function hd(e, t) {
2272
+ if (B(e) != "object" || !e) return e;
2273
+ var n = e[Symbol.toPrimitive];
2274
+ if (n !== void 0) {
2275
+ var r = n.call(e, t);
2276
+ if (B(r) != "object") return r;
2277
+ throw new TypeError("@@toPrimitive must return a primitive value.");
2278
+ }
2279
+ return String(e);
2280
+ }
2281
+ var ge = "9", md = 15, gd = V(ge, md), yd = /[- ]/, pd = function() {
2282
+ return /\[([^\[\]])*\]/g;
2283
+ }, vd = function() {
2284
+ return /\d(?=[^,}][^,}])/g;
2285
+ }, bd = new RegExp("[" + S + "]*\\$1[" + S + "]*(\\$\\d[" + S + "]*)*$"), ze = 3, Nd = /* @__PURE__ */ (function() {
2286
+ function e(t) {
2287
+ t.state;
2288
+ var n = t.metadata;
2289
+ ld(this, e), this.metadata = n, this.resetFormat();
2290
+ }
2291
+ return fd(e, [{
2292
+ key: "resetFormat",
2293
+ value: function() {
2294
+ this.chosenFormat = void 0, this.template = void 0, this.nationalNumberTemplate = void 0, this.populatedNationalNumberTemplate = void 0, this.populatedNationalNumberTemplatePosition = -1;
2295
+ }
2296
+ }, {
2297
+ key: "reset",
2298
+ value: function(n, r) {
2299
+ this.resetFormat(), n ? (this.isNANP = n.callingCode() === "1", this.matchingFormats = n.formats(), r.nationalSignificantNumber && this.narrowDownMatchingFormats(r)) : (this.isNANP = void 0, this.matchingFormats = []);
2300
+ }
2301
+ /**
2302
+ * Formats an updated phone number.
2303
+ * @param {string} nextDigits — Additional phone number digits.
2304
+ * @param {object} state — `AsYouType` state.
2305
+ * @return {[string]} Returns undefined if the updated phone number can't be formatted using any of the available formats.
2306
+ */
2307
+ }, {
2308
+ key: "format",
2309
+ value: function(n, r) {
2310
+ var d = this;
2311
+ if (Wr(r.nationalSignificantNumber, r.country, this.metadata))
2312
+ for (var i = Je(this.matchingFormats), a; !(a = i()).done; ) {
2313
+ var o = a.value, $ = Hr(r, o, {
2314
+ metadata: this.metadata,
2315
+ shouldTryNationalPrefixFormattingRule: function(l) {
2316
+ return d.shouldTryNationalPrefixFormattingRule(l, {
2317
+ international: r.international,
2318
+ nationalPrefix: r.nationalPrefix
2319
+ });
2320
+ },
2321
+ getSeparatorAfterNationalPrefix: function(l) {
2322
+ return d.getSeparatorAfterNationalPrefix(l);
2323
+ }
2324
+ });
2325
+ if ($)
2326
+ return this.resetFormat(), this.chosenFormat = o, this.setNationalNumberTemplate($.replace(/\d/g, P), r), this.populatedNationalNumberTemplate = $, this.populatedNationalNumberTemplatePosition = this.template.lastIndexOf(P), $;
2327
+ }
2328
+ return this.formatNationalNumberWithNextDigits(n, r);
2329
+ }
2330
+ // Formats the next phone number digits.
2331
+ }, {
2332
+ key: "formatNationalNumberWithNextDigits",
2333
+ value: function(n, r) {
2334
+ var d = this.chosenFormat, i = this.chooseFormat(r);
2335
+ if (i)
2336
+ return i === d ? this.formatNextNationalNumberDigits(n) : this.formatNextNationalNumberDigits(r.getNationalDigits());
2337
+ }
2338
+ }, {
2339
+ key: "narrowDownMatchingFormats",
2340
+ value: function(n) {
2341
+ var r = this, d = n.nationalSignificantNumber, i = n.nationalPrefix, a = n.international, o = d, $ = o.length - ze;
2342
+ $ < 0 && ($ = 0), this.matchingFormats = this.matchingFormats.filter(function(u) {
2343
+ return r.formatSuits(u, a, i) && r.formatMatches(u, o, $);
2344
+ }), this.chosenFormat && this.matchingFormats.indexOf(this.chosenFormat) === -1 && this.resetFormat();
2345
+ }
2346
+ }, {
2347
+ key: "formatSuits",
2348
+ value: function(n, r, d) {
2349
+ return !(d && !n.usesNationalPrefix() && // !format.domesticCarrierCodeFormattingRule() &&
2350
+ !n.nationalPrefixIsOptionalWhenFormattingInNationalFormat() || !r && !d && n.nationalPrefixIsMandatoryWhenFormattingInNationalFormat());
2351
+ }
2352
+ }, {
2353
+ key: "formatMatches",
2354
+ value: function(n, r, d) {
2355
+ var i = n.leadingDigitsPatterns().length;
2356
+ if (i === 0)
2357
+ return !0;
2358
+ d = Math.min(d, i - 1);
2359
+ var a = n.leadingDigitsPatterns()[d];
2360
+ if (r.length < ze)
2361
+ try {
2362
+ return new $d(a).match(r, {
2363
+ allowOverflow: !0
2364
+ }) !== void 0;
2365
+ } catch (o) {
2366
+ return console.error(o), !0;
2367
+ }
2368
+ return new RegExp("^(".concat(a, ")")).test(r);
2369
+ }
2370
+ }, {
2371
+ key: "getFormatFormat",
2372
+ value: function(n, r) {
2373
+ return r ? n.internationalFormat() : n.format();
2374
+ }
2375
+ }, {
2376
+ key: "chooseFormat",
2377
+ value: function(n) {
2378
+ for (var r = this, d = function() {
2379
+ var u = o.value;
2380
+ return r.chosenFormat === u ? 0 : bd.test(r.getFormatFormat(u, n.international)) ? r.createTemplateForFormat(u, n) ? (r.chosenFormat = u, 0) : (r.matchingFormats = r.matchingFormats.filter(function(l) {
2381
+ return l !== u;
2382
+ }), 1) : 1;
2383
+ }, i, a = Je(this.matchingFormats.slice()), o; !(o = a()).done && (i = d(), i !== 0); )
2384
+ ;
2385
+ return this.chosenFormat || this.resetFormat(), this.chosenFormat;
2386
+ }
2387
+ }, {
2388
+ key: "createTemplateForFormat",
2389
+ value: function(n, r) {
2390
+ if (!(n.pattern().indexOf("|") >= 0)) {
2391
+ var d = this.getTemplateForFormat(n, r);
2392
+ if (d)
2393
+ return this.setNationalNumberTemplate(d, r), !0;
2394
+ }
2395
+ }
2396
+ }, {
2397
+ key: "getSeparatorAfterNationalPrefix",
2398
+ value: function(n) {
2399
+ return this.isNANP || n && n.nationalPrefixFormattingRule() && yd.test(n.nationalPrefixFormattingRule()) ? " " : "";
2400
+ }
2401
+ }, {
2402
+ key: "getInternationalPrefixBeforeCountryCallingCode",
2403
+ value: function(n, r) {
2404
+ var d = n.IDDPrefix, i = n.missingPlus;
2405
+ return d ? r && r.spacing === !1 ? d : d + " " : i ? "" : "+";
2406
+ }
2407
+ }, {
2408
+ key: "getTemplate",
2409
+ value: function(n) {
2410
+ if (this.template) {
2411
+ for (var r = -1, d = 0, i = n.international ? this.getInternationalPrefixBeforeCountryCallingCode(n, {
2412
+ spacing: !1
2413
+ }) : ""; d < i.length + n.getDigitsWithoutInternationalPrefix().length; )
2414
+ r = this.template.indexOf(P, r + 1), d++;
2415
+ return Ke(this.template, r + 1);
2416
+ }
2417
+ }
2418
+ }, {
2419
+ key: "setNationalNumberTemplate",
2420
+ value: function(n, r) {
2421
+ this.nationalNumberTemplate = n, this.populatedNationalNumberTemplate = n, this.populatedNationalNumberTemplatePosition = -1, r.international ? this.template = this.getInternationalPrefixBeforeCountryCallingCode(r).replace(/[\d\+]/g, P) + V(P, r.callingCode.length) + " " + n : this.template = n;
2422
+ }
2423
+ /**
2424
+ * Generates formatting template for a national phone number,
2425
+ * optionally containing a national prefix, for a format.
2426
+ * @param {Format} format
2427
+ * @param {string} nationalPrefix
2428
+ * @return {string}
2429
+ */
2430
+ }, {
2431
+ key: "getTemplateForFormat",
2432
+ value: function(n, r) {
2433
+ var d = r.nationalSignificantNumber, i = r.international, a = r.nationalPrefix, o = r.prefixBeforeNationalSignificantNumberThatIsNotNationalPrefix, $ = n.pattern();
2434
+ $ = $.replace(pd(), "\\d").replace(vd(), "\\d");
2435
+ var u = gd.match($)[0];
2436
+ if (!(d.length > u.length)) {
2437
+ var l = new RegExp("^" + $ + "$"), c = d.replace(/\d/g, ge);
2438
+ l.test(c) && (u = c);
2439
+ var f = this.getFormatFormat(n, i), m;
2440
+ if (this.shouldTryNationalPrefixFormattingRule(n, {
2441
+ international: i,
2442
+ nationalPrefix: a
2443
+ })) {
2444
+ var y = f.replace(ft, n.nationalPrefixFormattingRule());
2445
+ if (X(n.nationalPrefixFormattingRule()) === (a || "") + X("$1") && (f = y, m = !0, a))
2446
+ for (var N = a.length; N > 0; )
2447
+ f = f.replace(/\d/, P), N--;
2448
+ }
2449
+ var b = u.replace(new RegExp($), f).replace(new RegExp(ge, "g"), P);
2450
+ return m || (o ? b = V(P, o.length) + " " + b : a && (b = V(P, a.length) + this.getSeparatorAfterNationalPrefix(n) + b)), i && (b = st(b)), b;
2451
+ }
2452
+ }
2453
+ }, {
2454
+ key: "formatNextNationalNumberDigits",
2455
+ value: function(n) {
2456
+ var r = Ur(this.populatedNationalNumberTemplate, this.populatedNationalNumberTemplatePosition, n);
2457
+ if (!r) {
2458
+ this.resetFormat();
2459
+ return;
2460
+ }
2461
+ return this.populatedNationalNumberTemplate = r[0], this.populatedNationalNumberTemplatePosition = r[1], Ke(this.populatedNationalNumberTemplate, this.populatedNationalNumberTemplatePosition + 1);
2462
+ }
2463
+ }, {
2464
+ key: "shouldTryNationalPrefixFormattingRule",
2465
+ value: function(n, r) {
2466
+ var d = r.international, i = r.nationalPrefix;
2467
+ if (n.nationalPrefixFormattingRule()) {
2468
+ var a = n.usesNationalPrefix();
2469
+ if (a && i || !a && !d)
2470
+ return !0;
2471
+ }
2472
+ }
2473
+ }]);
2474
+ })();
2475
+ function U(e) {
2476
+ "@babel/helpers - typeof";
2477
+ return U = typeof Symbol == "function" && typeof Symbol.iterator == "symbol" ? function(t) {
2478
+ return typeof t;
2479
+ } : function(t) {
2480
+ return t && typeof Symbol == "function" && t.constructor === Symbol && t !== Symbol.prototype ? "symbol" : typeof t;
2481
+ }, U(e);
2482
+ }
2483
+ function vt(e, t) {
2484
+ return Id(e) || Sd(e, t) || Pd(e, t) || Cd();
2485
+ }
2486
+ function Cd() {
2487
+ throw new TypeError(`Invalid attempt to destructure non-iterable instance.
2488
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`);
2489
+ }
2490
+ function Pd(e, t) {
2491
+ if (e) {
2492
+ if (typeof e == "string") return qe(e, t);
2493
+ var n = {}.toString.call(e).slice(8, -1);
2494
+ return n === "Object" && e.constructor && (n = e.constructor.name), n === "Map" || n === "Set" ? Array.from(e) : n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n) ? qe(e, t) : void 0;
2495
+ }
2496
+ }
2497
+ function qe(e, t) {
2498
+ (t == null || t > e.length) && (t = e.length);
2499
+ for (var n = 0, r = Array(t); n < t; n++) r[n] = e[n];
2500
+ return r;
2501
+ }
2502
+ function Sd(e, t) {
2503
+ var n = e == null ? null : typeof Symbol < "u" && e[Symbol.iterator] || e["@@iterator"];
2504
+ if (n != null) {
2505
+ var r, d, i, a, o = [], $ = !0, u = !1;
2506
+ try {
2507
+ if (i = (n = n.call(e)).next, t !== 0) for (; !($ = (r = i.call(n)).done) && (o.push(r.value), o.length !== t); $ = !0) ;
2508
+ } catch (l) {
2509
+ u = !0, d = l;
2510
+ } finally {
2511
+ try {
2512
+ if (!$ && n.return != null && (a = n.return(), Object(a) !== a)) return;
2513
+ } finally {
2514
+ if (u) throw d;
2515
+ }
2516
+ }
2517
+ return o;
2518
+ }
2519
+ }
2520
+ function Id(e) {
2521
+ if (Array.isArray(e)) return e;
2522
+ }
2523
+ function Ed(e, t) {
2524
+ if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function");
2525
+ }
2526
+ function xd(e, t) {
2527
+ for (var n = 0; n < t.length; n++) {
2528
+ var r = t[n];
2529
+ r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, Ad(r.key), r);
2530
+ }
2531
+ }
2532
+ function Td(e, t, n) {
2533
+ return t && xd(e.prototype, t), Object.defineProperty(e, "prototype", { writable: !1 }), e;
2534
+ }
2535
+ function Ad(e) {
2536
+ var t = Fd(e, "string");
2537
+ return U(t) == "symbol" ? t : t + "";
2538
+ }
2539
+ function Fd(e, t) {
2540
+ if (U(e) != "object" || !e) return e;
2541
+ var n = e[Symbol.toPrimitive];
2542
+ if (n !== void 0) {
2543
+ var r = n.call(e, t);
2544
+ if (U(r) != "object") return r;
2545
+ throw new TypeError("@@toPrimitive must return a primitive value.");
2546
+ }
2547
+ return String(e);
2548
+ }
2549
+ var wd = "[" + S + v + "]+", _d = new RegExp("^" + wd + "$", "i"), Od = "(?:[" + q + "][" + S + v + "]*|[" + S + v + "]+)", Rd = new RegExp("[^" + S + v + "]+.*$"), Dd = /[^\d\[\]]/, jd = /* @__PURE__ */ (function() {
2550
+ function e(t) {
2551
+ var n = t.defaultCountry, r = t.defaultCallingCode, d = t.metadata, i = t.onNationalSignificantNumberChange;
2552
+ Ed(this, e), this.defaultCountry = n, this.defaultCallingCode = r, this.metadata = d, this.onNationalSignificantNumberChange = i;
2553
+ }
2554
+ return Td(e, [{
2555
+ key: "input",
2556
+ value: function(n, r) {
2557
+ var d = kd(n), i = vt(d, 2), a = i[0], o = i[1], $ = X(a), u;
2558
+ return o && (r.digits || (r.startInternationalNumber(void 0, void 0), $ || (u = !0))), $ && this.inputDigits($, r), {
2559
+ digits: $,
2560
+ justLeadingPlus: u
2561
+ };
2562
+ }
2563
+ /**
2564
+ * Inputs "next" phone number digits.
2565
+ * @param {string} digits
2566
+ * @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".
2567
+ */
2568
+ }, {
2569
+ key: "inputDigits",
2570
+ value: function(n, r) {
2571
+ var d = r.digits, i = d.length < 3 && d.length + n.length >= 3;
2572
+ if (r.appendDigits(n), i && this.extractIddPrefix(r), this.isWaitingForCountryCallingCode(r)) {
2573
+ if (!this.extractCountryCallingCode(r))
2574
+ return;
2575
+ } else
2576
+ r.appendNationalSignificantNumberDigits(n);
2577
+ r.international || this.hasExtractedNationalSignificantNumber || this.extractNationalSignificantNumber(r.getNationalDigits(), function(a) {
2578
+ return r.update(a);
2579
+ });
2580
+ }
2581
+ }, {
2582
+ key: "isWaitingForCountryCallingCode",
2583
+ value: function(n) {
2584
+ var r = n.international, d = n.callingCode;
2585
+ return r && !d;
2586
+ }
2587
+ // Extracts a country calling code from a number
2588
+ // being entered in internatonal format.
2589
+ }, {
2590
+ key: "extractCountryCallingCode",
2591
+ value: function(n) {
2592
+ var r = be("+" + n.getDigitsWithoutInternationalPrefix(), n.country, this.defaultCountry, this.defaultCallingCode, this.metadata.metadata), d = r.countryCallingCode, i = r.number;
2593
+ if (d)
2594
+ return n.setCallingCode(d), n.update({
2595
+ nationalSignificantNumber: i
2596
+ }), !0;
2597
+ }
2598
+ }, {
2599
+ key: "reset",
2600
+ value: function(n) {
2601
+ if (n) {
2602
+ this.hasSelectedNumberingPlan = !0;
2603
+ var r = n._nationalPrefixForParsing();
2604
+ this.couldPossiblyExtractAnotherNationalSignificantNumber = r && Dd.test(r);
2605
+ } else
2606
+ this.hasSelectedNumberingPlan = void 0, this.couldPossiblyExtractAnotherNationalSignificantNumber = void 0;
2607
+ }
2608
+ /**
2609
+ * Extracts a national (significant) number from user input.
2610
+ * Google's library is different in that it only applies `national_prefix_for_parsing`
2611
+ * and doesn't apply `national_prefix_transform_rule` after that.
2612
+ * https://github.com/google/libphonenumber/blob/a3d70b0487875475e6ad659af404943211d26456/java/libphonenumber/src/com/google/i18n/phonenumbers/AsYouTypeFormatter.java#L539
2613
+ * @return {boolean} [extracted]
2614
+ */
2615
+ }, {
2616
+ key: "extractNationalSignificantNumber",
2617
+ value: function(n, r) {
2618
+ if (this.hasSelectedNumberingPlan) {
2619
+ var d = ue(n, this.metadata), i = d.nationalPrefix, a = d.nationalNumber, o = d.carrierCode;
2620
+ if (a !== n)
2621
+ return this.onExtractedNationalNumber(i, o, a, n, r), !0;
2622
+ }
2623
+ }
2624
+ /**
2625
+ * In Google's code this function is called "attempt to extract longer NDD".
2626
+ * "Some national prefixes are a substring of others", they say.
2627
+ * @return {boolean} [result] — Returns `true` if extracting a national prefix produced different results from what they were.
2628
+ */
2629
+ }, {
2630
+ key: "extractAnotherNationalSignificantNumber",
2631
+ value: function(n, r, d) {
2632
+ if (!this.hasExtractedNationalSignificantNumber)
2633
+ return this.extractNationalSignificantNumber(n, d);
2634
+ if (this.couldPossiblyExtractAnotherNationalSignificantNumber) {
2635
+ var i = ue(n, this.metadata), a = i.nationalPrefix, o = i.nationalNumber, $ = i.carrierCode;
2636
+ if (o !== r)
2637
+ return this.onExtractedNationalNumber(a, $, o, n, d), !0;
2638
+ }
2639
+ }
2640
+ }, {
2641
+ key: "onExtractedNationalNumber",
2642
+ value: function(n, r, d, i, a) {
2643
+ var o = !1, $, u = i.lastIndexOf(d);
2644
+ if (u < 0 || u !== i.length - d.length)
2645
+ o = !0;
2646
+ else {
2647
+ var l = i.slice(0, u);
2648
+ l && l !== n && ($ = l);
2649
+ }
2650
+ a({
2651
+ nationalPrefix: n,
2652
+ carrierCode: r,
2653
+ nationalSignificantNumber: d,
2654
+ nationalSignificantNumberIsModified: o,
2655
+ prefixBeforeNationalSignificantNumberThatIsNotNationalPrefix: $
2656
+ }), this.hasExtractedNationalSignificantNumber = !0, this.onNationalSignificantNumberChange();
2657
+ }
2658
+ }, {
2659
+ key: "reExtractNationalSignificantNumber",
2660
+ value: function(n) {
2661
+ if (this.extractAnotherNationalSignificantNumber(n.getNationalDigits(), n.nationalSignificantNumber, function(r) {
2662
+ return n.update(r);
2663
+ }))
2664
+ return !0;
2665
+ if (this.extractIddPrefix(n))
2666
+ return this.extractCallingCodeAndNationalSignificantNumber(n), !0;
2667
+ if (this.fixMissingPlus(n))
2668
+ return this.extractCallingCodeAndNationalSignificantNumber(n), !0;
2669
+ }
2670
+ }, {
2671
+ key: "extractIddPrefix",
2672
+ value: function(n) {
2673
+ var r = n.international, d = n.IDDPrefix, i = n.digits;
2674
+ if (n.nationalSignificantNumber, !(r || d)) {
2675
+ var a = $t(i, this.defaultCountry, this.defaultCallingCode, this.metadata.metadata);
2676
+ if (a !== void 0 && a !== i)
2677
+ return n.update({
2678
+ IDDPrefix: i.slice(0, i.length - a.length)
2679
+ }), this.startInternationalNumber(n, {
2680
+ country: void 0,
2681
+ callingCode: void 0
2682
+ }), !0;
2683
+ }
2684
+ }
2685
+ }, {
2686
+ key: "fixMissingPlus",
2687
+ value: function(n) {
2688
+ if (!n.international) {
2689
+ var r = lt(n.digits, n.country, this.defaultCountry, this.defaultCallingCode, this.metadata.metadata), d = r.countryCallingCode;
2690
+ if (d)
2691
+ return n.update({
2692
+ missingPlus: !0
2693
+ }), this.startInternationalNumber(n, {
2694
+ country: n.country,
2695
+ callingCode: d
2696
+ }), !0;
2697
+ }
2698
+ }
2699
+ }, {
2700
+ key: "startInternationalNumber",
2701
+ value: function(n, r) {
2702
+ var d = r.country, i = r.callingCode;
2703
+ n.startInternationalNumber(d, i), n.nationalSignificantNumber && (n.resetNationalSignificantNumber(), this.onNationalSignificantNumberChange(), this.hasExtractedNationalSignificantNumber = void 0);
2704
+ }
2705
+ }, {
2706
+ key: "extractCallingCodeAndNationalSignificantNumber",
2707
+ value: function(n) {
2708
+ this.extractCountryCallingCode(n) && this.extractNationalSignificantNumber(n.getNationalDigits(), function(r) {
2709
+ return n.update(r);
2710
+ });
2711
+ }
2712
+ }]);
2713
+ })();
2714
+ function Ld(e) {
2715
+ var t = e.search(Od);
2716
+ if (!(t < 0)) {
2717
+ e = e.slice(t);
2718
+ var n;
2719
+ return e[0] === "+" && (n = !0, e = e.slice(1)), e = e.replace(Rd, ""), n && (e = "+" + e), e;
2720
+ }
2721
+ }
2722
+ function Md(e) {
2723
+ var t = Ld(e) || "";
2724
+ return t[0] === "+" ? [t.slice(1), !0] : [t];
2725
+ }
2726
+ function kd(e) {
2727
+ var t = Md(e), n = vt(t, 2), r = n[0], d = n[1];
2728
+ return _d.test(r) || (r = ""), [r, d];
2729
+ }
2730
+ function H(e) {
2731
+ "@babel/helpers - typeof";
2732
+ return H = typeof Symbol == "function" && typeof Symbol.iterator == "symbol" ? function(t) {
2733
+ return typeof t;
2734
+ } : function(t) {
2735
+ return t && typeof Symbol == "function" && t.constructor === Symbol && t !== Symbol.prototype ? "symbol" : typeof t;
2736
+ }, H(e);
2737
+ }
2738
+ function Gd(e, t) {
2739
+ return Wd(e) || Hd(e, t) || Ud(e, t) || Bd();
2740
+ }
2741
+ function Bd() {
2742
+ throw new TypeError(`Invalid attempt to destructure non-iterable instance.
2743
+ In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`);
2744
+ }
2745
+ function Ud(e, t) {
2746
+ if (e) {
2747
+ if (typeof e == "string") return et(e, t);
2748
+ var n = {}.toString.call(e).slice(8, -1);
2749
+ return n === "Object" && e.constructor && (n = e.constructor.name), n === "Map" || n === "Set" ? Array.from(e) : n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n) ? et(e, t) : void 0;
2750
+ }
2751
+ }
2752
+ function et(e, t) {
2753
+ (t == null || t > e.length) && (t = e.length);
2754
+ for (var n = 0, r = Array(t); n < t; n++) r[n] = e[n];
2755
+ return r;
2756
+ }
2757
+ function Hd(e, t) {
2758
+ var n = e == null ? null : typeof Symbol < "u" && e[Symbol.iterator] || e["@@iterator"];
2759
+ if (n != null) {
2760
+ var r, d, i, a, o = [], $ = !0, u = !1;
2761
+ try {
2762
+ if (i = (n = n.call(e)).next, t !== 0) for (; !($ = (r = i.call(n)).done) && (o.push(r.value), o.length !== t); $ = !0) ;
2763
+ } catch (l) {
2764
+ u = !0, d = l;
2765
+ } finally {
2766
+ try {
2767
+ if (!$ && n.return != null && (a = n.return(), Object(a) !== a)) return;
2768
+ } finally {
2769
+ if (u) throw d;
2770
+ }
2771
+ }
2772
+ return o;
2773
+ }
2774
+ }
2775
+ function Wd(e) {
2776
+ if (Array.isArray(e)) return e;
2777
+ }
2778
+ function Vd(e, t) {
2779
+ if (!(e instanceof t)) throw new TypeError("Cannot call a class as a function");
2780
+ }
2781
+ function Kd(e, t) {
2782
+ for (var n = 0; n < t.length; n++) {
2783
+ var r = t[n];
2784
+ r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, Xd(r.key), r);
2785
+ }
2786
+ }
2787
+ function Yd(e, t, n) {
2788
+ return t && Kd(e.prototype, t), Object.defineProperty(e, "prototype", { writable: !1 }), e;
2789
+ }
2790
+ function Xd(e) {
2791
+ var t = Zd(e, "string");
2792
+ return H(t) == "symbol" ? t : t + "";
2793
+ }
2794
+ function Zd(e, t) {
2795
+ if (H(e) != "object" || !e) return e;
2796
+ var n = e[Symbol.toPrimitive];
2797
+ if (n !== void 0) {
2798
+ var r = n.call(e, t);
2799
+ if (H(r) != "object") return r;
2800
+ throw new TypeError("@@toPrimitive must return a primitive value.");
2801
+ }
2802
+ return String(e);
2803
+ }
2804
+ var bt = /* @__PURE__ */ (function() {
2805
+ function e(t, n) {
2806
+ Vd(this, e), this.metadata = new g(n);
2807
+ var r = this.getCountryAndCallingCode(t), d = Gd(r, 2), i = d[0], a = d[1];
2808
+ this.defaultCountry = i, this.defaultCallingCode = a, this.reset();
2809
+ }
2810
+ return Yd(e, [{
2811
+ key: "getCountryAndCallingCode",
2812
+ value: function(n) {
2813
+ var r, d;
2814
+ return n && (x(n) ? (r = n.defaultCountry, d = n.defaultCallingCode) : r = n), r && !this.metadata.hasCountry(r) && (r = void 0), [r, d];
2815
+ }
2816
+ /**
2817
+ * Inputs "next" phone number characters.
2818
+ * @param {string} text
2819
+ * @return {string} Formatted phone number characters that have been input so far.
2820
+ */
2821
+ }, {
2822
+ key: "input",
2823
+ value: function(n) {
2824
+ var r = this.parser.input(n, this.state), d = r.digits, i = r.justLeadingPlus;
2825
+ if (i)
2826
+ this.formattedOutput = "+";
2827
+ else if (d) {
2828
+ this.determineTheCountryIfNeeded(), this.state.nationalSignificantNumber && this.formatter.narrowDownMatchingFormats(this.state);
2829
+ var a;
2830
+ if (this.metadata.hasSelectedNumberingPlan() && (a = this.formatter.format(d, this.state)), a === void 0 && this.parser.reExtractNationalSignificantNumber(this.state)) {
2831
+ this.determineTheCountryIfNeeded();
2832
+ var o = this.state.getNationalDigits();
2833
+ o && (a = this.formatter.format(o, this.state));
2834
+ }
2835
+ this.formattedOutput = a ? this.getFullNumber(a) : this.getNonFormattedNumber();
2836
+ }
2837
+ return this.formattedOutput;
2838
+ }
2839
+ }, {
2840
+ key: "reset",
2841
+ value: function() {
2842
+ var n = this;
2843
+ return this.state = new Mr({
2844
+ onCountryChange: function(d) {
2845
+ n.country = d;
2846
+ },
2847
+ onCallingCodeChange: function(d, i) {
2848
+ n.metadata.selectNumberingPlan(i, d), n.formatter.reset(n.metadata.numberingPlan, n.state), n.parser.reset(n.metadata.numberingPlan);
2849
+ }
2850
+ }), this.formatter = new Nd({
2851
+ state: this.state,
2852
+ metadata: this.metadata
2853
+ }), this.parser = new jd({
2854
+ defaultCountry: this.defaultCountry,
2855
+ defaultCallingCode: this.defaultCallingCode,
2856
+ metadata: this.metadata,
2857
+ state: this.state,
2858
+ onNationalSignificantNumberChange: function() {
2859
+ n.determineTheCountryIfNeeded(), n.formatter.reset(n.metadata.numberingPlan, n.state);
2860
+ }
2861
+ }), this.state.reset({
2862
+ country: this.defaultCountry,
2863
+ callingCode: this.defaultCallingCode
2864
+ }), this.formattedOutput = "", this;
2865
+ }
2866
+ /**
2867
+ * Returns `true` if the phone number is being input in international format.
2868
+ * In other words, returns `true` if and only if the parsed phone number starts with a `"+"`.
2869
+ * @return {boolean}
2870
+ */
2871
+ }, {
2872
+ key: "isInternational",
2873
+ value: function() {
2874
+ return this.state.international;
2875
+ }
2876
+ /**
2877
+ * Returns the "calling code" part of the phone number when it's being input
2878
+ * in an international format.
2879
+ * If no valid calling code has been entered so far, returns `undefined`.
2880
+ * @return {string} [callingCode]
2881
+ */
2882
+ }, {
2883
+ key: "getCallingCode",
2884
+ value: function() {
2885
+ if (this.isInternational())
2886
+ return this.state.callingCode;
2887
+ }
2888
+ // A legacy alias.
2889
+ }, {
2890
+ key: "getCountryCallingCode",
2891
+ value: function() {
2892
+ return this.getCallingCode();
2893
+ }
2894
+ /**
2895
+ * Returns a two-letter country code of the phone number.
2896
+ * Returns `undefined` for "non-geographic" phone numbering plans.
2897
+ * Returns `undefined` if no phone number has been input yet.
2898
+ * @return {string} [country]
2899
+ */
2900
+ }, {
2901
+ key: "getCountry",
2902
+ value: function() {
2903
+ var n = this.state.digits;
2904
+ if (n)
2905
+ return this._getCountry();
2906
+ }
2907
+ /**
2908
+ * Returns a two-letter country code of the phone number.
2909
+ * Returns `undefined` for "non-geographic" phone numbering plans.
2910
+ * @return {string} [country]
2911
+ */
2912
+ }, {
2913
+ key: "_getCountry",
2914
+ value: function() {
2915
+ var n = this.state.country;
2916
+ return n;
2917
+ }
2918
+ }, {
2919
+ key: "determineTheCountryIfNeeded",
2920
+ value: function() {
2921
+ (!this.state.country || this.isCountryCallingCodeAmbiguous()) && this.determineTheCountry();
2922
+ }
2923
+ // Prepends `+CountryCode ` in case of an international phone number
2924
+ }, {
2925
+ key: "getFullNumber",
2926
+ value: function(n) {
2927
+ var r = this;
2928
+ if (this.isInternational()) {
2929
+ var d = function(o) {
2930
+ return r.formatter.getInternationalPrefixBeforeCountryCallingCode(r.state, {
2931
+ spacing: !!o
2932
+ }) + o;
2933
+ }, i = this.state.callingCode;
2934
+ return d(i ? n ? "".concat(i, " ").concat(n) : i : "".concat(this.state.getDigitsWithoutInternationalPrefix()));
2935
+ }
2936
+ return n;
2937
+ }
2938
+ }, {
2939
+ key: "getNonFormattedNationalNumberWithPrefix",
2940
+ value: function() {
2941
+ var n = this.state, r = n.nationalSignificantNumber, d = n.prefixBeforeNationalSignificantNumberThatIsNotNationalPrefix, i = n.nationalPrefix, a = r, o = d || i;
2942
+ return o && (a = o + a), a;
2943
+ }
2944
+ }, {
2945
+ key: "getNonFormattedNumber",
2946
+ value: function() {
2947
+ var n = this.state.nationalSignificantNumberIsModified;
2948
+ return this.getFullNumber(n ? this.state.getNationalDigits() : this.getNonFormattedNationalNumberWithPrefix());
2949
+ }
2950
+ }, {
2951
+ key: "getNonFormattedTemplate",
2952
+ value: function() {
2953
+ var n = this.getNonFormattedNumber();
2954
+ if (n)
2955
+ return n.replace(/[\+\d]/g, P);
2956
+ }
2957
+ }, {
2958
+ key: "isCountryCallingCodeAmbiguous",
2959
+ value: function() {
2960
+ var n = this.state.callingCode, r = this.metadata.getCountryCodesForCallingCode(n);
2961
+ return r && r.length > 1;
2962
+ }
2963
+ // Determines the exact country of the phone number
2964
+ // entered so far based on the country phone code
2965
+ // and the national phone number.
2966
+ }, {
2967
+ key: "determineTheCountry",
2968
+ value: function() {
2969
+ this.state.setCountry(ve(this.isInternational() ? this.state.callingCode : this.defaultCallingCode, {
2970
+ nationalNumber: this.state.nationalSignificantNumber,
2971
+ metadata: this.metadata
2972
+ }));
2973
+ }
2974
+ /**
2975
+ * Returns a E.164 phone number value for the user's input.
2976
+ *
2977
+ * For example, for country `"US"` and input `"(222) 333-4444"`
2978
+ * it will return `"+12223334444"`.
2979
+ *
2980
+ * For international phone number input, it will also auto-correct
2981
+ * some minor errors such as using a national prefix when writing
2982
+ * an international phone number. For example, if the user inputs
2983
+ * `"+44 0 7400 000000"` then it will return an auto-corrected
2984
+ * `"+447400000000"` phone number value.
2985
+ *
2986
+ * Will return `undefined` if no digits have been input,
2987
+ * or when inputting a phone number in national format and no
2988
+ * default country or default "country calling code" have been set.
2989
+ *
2990
+ * @return {string} [value]
2991
+ */
2992
+ }, {
2993
+ key: "getNumberValue",
2994
+ value: function() {
2995
+ var n = this.state, r = n.digits, d = n.callingCode, i = n.country, a = n.nationalSignificantNumber;
2996
+ if (r) {
2997
+ if (this.isInternational())
2998
+ return d ? "+" + d + a : "+" + r;
2999
+ if (i || d) {
3000
+ var o = i ? this.metadata.countryCallingCode() : d;
3001
+ return "+" + o + a;
3002
+ }
3003
+ }
3004
+ }
3005
+ /**
3006
+ * Returns an instance of `PhoneNumber` class.
3007
+ * Will return `undefined` if no national (significant) number
3008
+ * digits have been entered so far, or if no `defaultCountry` has been
3009
+ * set and the user enters a phone number not in international format.
3010
+ */
3011
+ }, {
3012
+ key: "getNumber",
3013
+ value: function() {
3014
+ var n = this.state, r = n.nationalSignificantNumber, d = n.carrierCode, i = n.callingCode, a = this._getCountry();
3015
+ if (r && !(!a && !i)) {
3016
+ if (a && a === this.defaultCountry) {
3017
+ var o = new g(this.metadata.metadata);
3018
+ o.selectNumberingPlan(a);
3019
+ var $ = o.numberingPlan.callingCode(), u = this.metadata.getCountryCodesForCallingCode($);
3020
+ if (u.length > 1) {
3021
+ var l = ut(r, {
3022
+ countries: u,
3023
+ metadata: this.metadata.metadata
3024
+ });
3025
+ l && (a = l);
3026
+ }
3027
+ }
3028
+ var c = new gt(a || i, r, this.metadata.metadata);
3029
+ return d && (c.carrierCode = d), c;
3030
+ }
3031
+ }
3032
+ /**
3033
+ * Returns `true` if the phone number is "possible".
3034
+ * Is just a shortcut for `PhoneNumber.isPossible()`.
3035
+ * @return {boolean}
3036
+ */
3037
+ }, {
3038
+ key: "isPossible",
3039
+ value: function() {
3040
+ var n = this.getNumber();
3041
+ return n ? n.isPossible() : !1;
3042
+ }
3043
+ /**
3044
+ * Returns `true` if the phone number is "valid".
3045
+ * Is just a shortcut for `PhoneNumber.isValid()`.
3046
+ * @return {boolean}
3047
+ */
3048
+ }, {
3049
+ key: "isValid",
3050
+ value: function() {
3051
+ var n = this.getNumber();
3052
+ return n ? n.isValid() : !1;
3053
+ }
3054
+ /**
3055
+ * @deprecated
3056
+ * This method is used in `react-phone-number-input/source/input-control.js`
3057
+ * in versions before `3.0.16`.
3058
+ */
3059
+ }, {
3060
+ key: "getNationalNumber",
3061
+ value: function() {
3062
+ return this.state.nationalSignificantNumber;
3063
+ }
3064
+ /**
3065
+ * Returns the phone number characters entered by the user.
3066
+ * @return {string}
3067
+ */
3068
+ }, {
3069
+ key: "getChars",
3070
+ value: function() {
3071
+ return (this.state.international ? "+" : "") + this.state.digits;
3072
+ }
3073
+ /**
3074
+ * Returns the template for the formatted phone number.
3075
+ * @return {string}
3076
+ */
3077
+ }, {
3078
+ key: "getTemplate",
3079
+ value: function() {
3080
+ return this.formatter.getTemplate(this.state) || this.getNonFormattedTemplate() || "";
3081
+ }
3082
+ }]);
3083
+ })();
3084
+ function tt() {
3085
+ return dt(_r, arguments);
3086
+ }
3087
+ function W(e) {
3088
+ return bt.call(this, e, rt);
3089
+ }
3090
+ W.prototype = Object.create(bt.prototype, {});
3091
+ W.prototype.constructor = W;
3092
+ function Jd() {
3093
+ return dt(Q, arguments);
3094
+ }
3095
+ const Qd = {
3096
+ MX: { emoji: "🇲🇽", name: "Mexico" },
3097
+ US: { emoji: "🇺🇸", name: "United States" },
3098
+ CA: { emoji: "🇨🇦", name: "Canada" },
3099
+ GB: { emoji: "🇬🇧", name: "United Kingdom" },
3100
+ DE: { emoji: "🇩🇪", name: "Germany" },
3101
+ FR: { emoji: "🇫🇷", name: "France" },
3102
+ ES: { emoji: "🇪🇸", name: "Spain" },
3103
+ IT: { emoji: "🇮🇹", name: "Italy" },
3104
+ BR: { emoji: "🇧🇷", name: "Brazil" },
3105
+ AR: { emoji: "🇦🇷", name: "Argentina" },
3106
+ CO: { emoji: "🇨🇴", name: "Colombia" },
3107
+ CL: { emoji: "🇨🇱", name: "Chile" },
3108
+ PE: { emoji: "🇵🇪", name: "Peru" },
3109
+ AU: { emoji: "🇦🇺", name: "Australia" },
3110
+ NZ: { emoji: "🇳🇿", name: "New Zealand" },
3111
+ JP: { emoji: "🇯🇵", name: "Japan" },
3112
+ KR: { emoji: "🇰🇷", name: "South Korea" },
3113
+ CN: { emoji: "🇨🇳", name: "China" },
3114
+ IN: { emoji: "🇮🇳", name: "India" },
3115
+ RU: { emoji: "🇷🇺", name: "Russia" },
3116
+ ZA: { emoji: "🇿🇦", name: "South Africa" },
3117
+ NG: { emoji: "🇳🇬", name: "Nigeria" },
3118
+ EG: { emoji: "🇪🇬", name: "Egypt" },
3119
+ AE: { emoji: "🇦🇪", name: "United Arab Emirates" },
3120
+ SA: { emoji: "🇸🇦", name: "Saudi Arabia" },
3121
+ IL: { emoji: "🇮🇱", name: "Israel" },
3122
+ TR: { emoji: "🇹🇷", name: "Turkey" },
3123
+ NL: { emoji: "🇳🇱", name: "Netherlands" },
3124
+ BE: { emoji: "🇧🇪", name: "Belgium" },
3125
+ CH: { emoji: "🇨🇭", name: "Switzerland" },
3126
+ AT: { emoji: "🇦🇹", name: "Austria" },
3127
+ SE: { emoji: "🇸🇪", name: "Sweden" },
3128
+ NO: { emoji: "🇳🇴", name: "Norway" },
3129
+ DK: { emoji: "🇩🇰", name: "Denmark" },
3130
+ FI: { emoji: "🇫🇮", name: "Finland" },
3131
+ PL: { emoji: "🇵🇱", name: "Poland" },
3132
+ PT: { emoji: "🇵🇹", name: "Portugal" },
3133
+ IE: { emoji: "🇮🇪", name: "Ireland" },
3134
+ GR: { emoji: "🇬🇷", name: "Greece" },
3135
+ CZ: { emoji: "🇨🇿", name: "Czechia" },
3136
+ HU: { emoji: "🇭🇺", name: "Hungary" },
3137
+ RO: { emoji: "🇷🇴", name: "Romania" },
3138
+ UA: { emoji: "🇺🇦", name: "Ukraine" },
3139
+ PH: { emoji: "🇵🇭", name: "Philippines" },
3140
+ ID: { emoji: "🇮🇩", name: "Indonesia" },
3141
+ MY: { emoji: "🇲🇾", name: "Malaysia" },
3142
+ SG: { emoji: "🇸🇬", name: "Singapore" },
3143
+ TH: { emoji: "🇹🇭", name: "Thailand" },
3144
+ VN: { emoji: "🇻🇳", name: "Vietnam" },
3145
+ PK: { emoji: "🇵🇰", name: "Pakistan" },
3146
+ BD: { emoji: "🇧🇩", name: "Bangladesh" },
3147
+ HK: { emoji: "🇭🇰", name: "Hong Kong" },
3148
+ TW: { emoji: "🇹🇼", name: "Taiwan" },
3149
+ VE: { emoji: "🇻🇪", name: "Venezuela" },
3150
+ EC: { emoji: "🇪🇨", name: "Ecuador" },
3151
+ GT: { emoji: "🇬🇹", name: "Guatemala" },
3152
+ CR: { emoji: "🇨🇷", name: "Costa Rica" },
3153
+ PA: { emoji: "🇵🇦", name: "Panama" },
3154
+ DO: { emoji: "🇩🇴", name: "Dominican Republic" },
3155
+ PR: { emoji: "🇵🇷", name: "Puerto Rico" },
3156
+ CU: { emoji: "🇨🇺", name: "Cuba" },
3157
+ JM: { emoji: "🇯🇲", name: "Jamaica" },
3158
+ HN: { emoji: "🇭🇳", name: "Honduras" },
3159
+ SV: { emoji: "🇸🇻", name: "El Salvador" },
3160
+ NI: { emoji: "🇳🇮", name: "Nicaragua" },
3161
+ BO: { emoji: "🇧🇴", name: "Bolivia" },
3162
+ PY: { emoji: "🇵🇾", name: "Paraguay" },
3163
+ UY: { emoji: "🇺🇾", name: "Uruguay" },
3164
+ KE: { emoji: "🇰🇪", name: "Kenya" },
3165
+ GH: { emoji: "🇬🇭", name: "Ghana" },
3166
+ MA: { emoji: "🇲🇦", name: "Morocco" },
3167
+ TN: { emoji: "🇹🇳", name: "Tunisia" },
3168
+ KW: { emoji: "🇰🇼", name: "Kuwait" },
3169
+ QA: { emoji: "🇶🇦", name: "Qatar" },
3170
+ BH: { emoji: "🇧🇭", name: "Bahrain" },
3171
+ OM: { emoji: "🇴🇲", name: "Oman" },
3172
+ JO: { emoji: "🇯🇴", name: "Jordan" },
3173
+ LB: { emoji: "🇱🇧", name: "Lebanon" },
3174
+ RS: { emoji: "🇷🇸", name: "Serbia" },
3175
+ HR: { emoji: "🇭🇷", name: "Croatia" },
3176
+ SK: { emoji: "🇸🇰", name: "Slovakia" },
3177
+ SI: { emoji: "🇸🇮", name: "Slovenia" },
3178
+ BG: { emoji: "🇧🇬", name: "Bulgaria" },
3179
+ LT: { emoji: "🇱🇹", name: "Lithuania" },
3180
+ LV: { emoji: "🇱🇻", name: "Latvia" },
3181
+ EE: { emoji: "🇪🇪", name: "Estonia" },
3182
+ IS: { emoji: "🇮🇸", name: "Iceland" },
3183
+ LU: { emoji: "🇱🇺", name: "Luxembourg" },
3184
+ MT: { emoji: "🇲🇹", name: "Malta" },
3185
+ CY: { emoji: "🇨🇾", name: "Cyprus" }
3186
+ };
3187
+ function zd(e) {
3188
+ try {
3189
+ return `+${Jd(e)}`;
3190
+ } catch {
3191
+ return "";
3192
+ }
3193
+ }
3194
+ const K = Object.entries(Qd).map(([e, t]) => ({
3195
+ code: e,
3196
+ emoji: t.emoji,
3197
+ name: t.name,
3198
+ callingCode: zd(e)
3199
+ })).filter((e) => e.callingCode !== "").sort((e, t) => e.name.localeCompare(t.name));
3200
+ function nt(e) {
3201
+ if (e)
3202
+ return K.find(
3203
+ (t) => t.code === e || t.code === e.toUpperCase()
3204
+ );
3205
+ }
3206
+ const qd = ({ class: e }) => /* @__PURE__ */ s(
3207
+ "svg",
3208
+ {
3209
+ width: "24",
3210
+ height: "24",
3211
+ viewBox: "0 0 24 24",
3212
+ fill: "none",
3213
+ xmlns: "http://www.w3.org/2000/svg",
3214
+ class: e,
3215
+ "aria-hidden": "true",
3216
+ children: /* @__PURE__ */ s(
3217
+ "path",
3218
+ {
3219
+ d: "M4.76734 9.18066C4.39163 8.77605 4.41468 8.14342 4.8191 7.76758C5.22371 7.39187 5.85635 7.41491 6.23219 7.81934L11.9998 14.0312L17.7673 7.81934L17.8406 7.74805C18.2212 7.41355 18.8011 7.41532 19.1804 7.76758C19.5849 8.14341 19.6079 8.77605 19.2322 9.18066L12.7322 16.1807C12.543 16.3842 12.2777 16.5 11.9998 16.5C11.7218 16.5 11.4565 16.3842 11.2673 16.1807L4.76734 9.18066Z",
3220
+ fill: "currentColor"
3221
+ }
3222
+ )
3223
+ }
3224
+ ), ei = ({
3225
+ countryCode: e,
3226
+ prefilledPhone: t,
3227
+ phoneError: n,
3228
+ optinEnabled: r = !1,
3229
+ disabled: d = !1,
3230
+ onPhoneChange: i,
3231
+ onOptInChange: a
3232
+ }) => {
3233
+ const [o, $] = w(
3234
+ null
3235
+ ), [u, l] = w(!1), [c, f] = w(""), [m, y] = w(!1), N = Et(null);
3236
+ re(() => {
3237
+ const h = nt(e);
3238
+ $(h || K.find((p) => p.code === "US") || K[0]);
3239
+ }, [e]), re(() => {
3240
+ if (t && o) {
3241
+ const h = t.startsWith("+") ? t : `+${t}`, p = tt(h);
3242
+ if (p?.isValid()) {
3243
+ if (p.country && p.country !== o.code) {
3244
+ const T = nt(p.country);
3245
+ T && $(T);
3246
+ }
3247
+ const ne = new W(p.country).input(p.nationalNumber);
3248
+ f(ne), i(h, !0);
3249
+ }
3250
+ }
3251
+ }, [t, o, i]), re(() => {
3252
+ const h = (p) => {
3253
+ N.current && !N.current.contains(p.target) && l(!1);
3254
+ };
3255
+ return u && document.addEventListener("mousedown", h), () => document.removeEventListener("mousedown", h);
3256
+ }, [u]);
3257
+ const b = (h, p) => {
3258
+ const C = `${p.callingCode}${h.replace(/\D/g, "")}`;
3259
+ try {
3260
+ const T = tt(
3261
+ C,
3262
+ p.code
3263
+ )?.isValid() ?? !1;
3264
+ i(C, T);
3265
+ } catch {
3266
+ i(C, !1);
3267
+ }
3268
+ }, ee = (h) => {
3269
+ const C = h.target.value;
3270
+ if (o) {
3271
+ const T = new W(o.code).input(C);
3272
+ f(T), b(C, o);
3273
+ } else
3274
+ f(C);
3275
+ }, te = (h) => {
3276
+ $(h), l(!1), c && b(c, h);
3277
+ }, Nt = (h) => {
3278
+ const C = h.target.checked;
3279
+ y(C), a?.(C);
3280
+ };
3281
+ return /* @__PURE__ */ s("div", { class: "IncodePhoneInput", children: /* @__PURE__ */ s("div", { class: "IncodePhoneInputContainer", children: [
3282
+ /* @__PURE__ */ s("div", { class: "IncodePhoneInputRow", children: [
3283
+ /* @__PURE__ */ s(
3284
+ "div",
3285
+ {
3286
+ class: `IncodePhoneCountrySelector ${u ? "IncodePhoneCountrySelectorOpen" : ""} ${d ? "IncodePhoneCountrySelectorDisabled" : ""}`,
3287
+ ref: N,
3288
+ children: [
3289
+ /* @__PURE__ */ s(
3290
+ "button",
3291
+ {
3292
+ type: "button",
3293
+ class: "IncodePhoneCountryButton",
3294
+ onClick: () => {
3295
+ d || l(!u);
3296
+ },
3297
+ disabled: d,
3298
+ "aria-expanded": u,
3299
+ "aria-haspopup": "listbox",
3300
+ "data-testid": "phone-country-selector",
3301
+ children: [
3302
+ /* @__PURE__ */ s("span", { class: "IncodePhoneCountryFlag", "aria-hidden": "true", children: o?.emoji }),
3303
+ /* @__PURE__ */ s("span", { class: "IncodePhoneCountryCode", children: o?.callingCode }),
3304
+ /* @__PURE__ */ s(
3305
+ qd,
3306
+ {
3307
+ class: `IncodePhoneCountryArrow ${u ? "IncodePhoneCountryArrowUp" : ""}`
3308
+ }
3309
+ )
3310
+ ]
3311
+ }
3312
+ ),
3313
+ u && /* @__PURE__ */ s("div", { class: "IncodePhoneCountryDropdown", children: K.map((h) => /* @__PURE__ */ s(
3314
+ "button",
3315
+ {
3316
+ type: "button",
3317
+ class: `IncodePhoneCountryOption ${o?.code === h.code ? "IncodePhoneCountryOptionSelected" : ""}`,
3318
+ onClick: () => te(h),
3319
+ children: [
3320
+ /* @__PURE__ */ s("span", { class: "IncodePhoneCountryFlag", "aria-hidden": "true", children: h.emoji }),
3321
+ /* @__PURE__ */ s("span", { class: "IncodePhoneCountryOptionCode", children: h.callingCode }),
3322
+ /* @__PURE__ */ s("span", { class: "IncodePhoneCountryOptionName", children: h.name })
3323
+ ]
3324
+ },
3325
+ h.code
3326
+ )) })
3327
+ ]
3328
+ }
3329
+ ),
3330
+ /* @__PURE__ */ s(
3331
+ "div",
3332
+ {
3333
+ class: `IncodePhoneInputWrapper ${n ? "IncodePhoneInputWrapperError" : ""} ${d ? "IncodePhoneInputWrapperDisabled" : ""}`,
3334
+ children: /* @__PURE__ */ s(
3335
+ "input",
3336
+ {
3337
+ type: "tel",
3338
+ value: c,
3339
+ onInput: ee,
3340
+ placeholder: "(123) 456-7890",
3341
+ disabled: d,
3342
+ class: "IncodePhoneInputField",
3343
+ "data-testid": "phone-input"
3344
+ }
3345
+ )
3346
+ }
3347
+ )
3348
+ ] }),
3349
+ n && /* @__PURE__ */ s(Ce, { children: [
3350
+ /* @__PURE__ */ s($e, { size: 8 }),
3351
+ /* @__PURE__ */ s("p", { class: "IncodePhoneInputError", "data-testid": "phone-error", children: n })
3352
+ ] }),
3353
+ r && /* @__PURE__ */ s(Ce, { children: [
3354
+ /* @__PURE__ */ s($e, { size: 16 }),
3355
+ /* @__PURE__ */ s("label", { class: "IncodePhoneInputOptIn", children: [
3356
+ /* @__PURE__ */ s(
3357
+ "input",
3358
+ {
3359
+ type: "checkbox",
3360
+ checked: m,
3361
+ onChange: Nt,
3362
+ "data-testid": "phone-optin"
3363
+ }
3364
+ ),
3365
+ /* @__PURE__ */ s("span", { children: "I agree to receive SMS notifications" })
3366
+ ] })
3367
+ ] })
3368
+ ] }) });
3369
+ }, ti = ({ config: e, onFinish: t, onError: n }) => {
3370
+ const [r, d] = Pt(() => {
3371
+ if (!e)
3372
+ throw new Error("Phone config is required");
3373
+ return It({ config: e });
3374
+ }), [i, a] = w(!1);
3375
+ if (r.status === "idle" || r.status === "loadingPrefill" || r.status === "inputting" || r.status === "submitting" || r.status === "sendingOtp") {
3376
+ const $ = r.status === "idle" || r.status === "loadingPrefill" || r.status === "submitting" || r.status === "sendingOtp", u = r.status === "inputting" ? r.countryCode : "US", l = r.status === "inputting" ? r.phonePrefix : "+1", c = r.status === "inputting" ? r.prefilledPhone : void 0, f = r.status === "inputting" ? r.phoneError : void 0;
3377
+ return /* @__PURE__ */ s(
3378
+ Pe,
3379
+ {
3380
+ className: "IncodePhonePage",
3381
+ title: "Verify Phone",
3382
+ subtitle: e.otpVerification ? "We will send you a verification code" : void 0,
3383
+ children: [
3384
+ /* @__PURE__ */ s(
3385
+ ei,
3386
+ {
3387
+ countryCode: u,
3388
+ phonePrefix: l,
3389
+ prefilledPhone: c,
3390
+ phoneError: f,
3391
+ optinEnabled: e.optinEnabled,
3392
+ disabled: $,
3393
+ onPhoneChange: (m, y) => {
3394
+ d.setPhoneNumber(m, y), a(y);
3395
+ },
3396
+ onOptInChange: (m) => d.setOptInGranted(m)
3397
+ }
3398
+ ),
3399
+ /* @__PURE__ */ s($e, {}),
3400
+ /* @__PURE__ */ s(
3401
+ St,
3402
+ {
3403
+ onClick: () => d.submit(),
3404
+ disabled: !i,
3405
+ isLoading: $,
3406
+ "data-testid": "phone-submit",
3407
+ children: "Continue"
3408
+ }
3409
+ )
3410
+ ]
3411
+ }
3412
+ );
3413
+ }
3414
+ if (r.status === "awaitingOtp" || r.status === "verifyingOtp" || r.status === "otpError") {
3415
+ const $ = r.status === "verifyingOtp";
3416
+ return /* @__PURE__ */ s(
3417
+ Pe,
3418
+ {
3419
+ className: "IncodePhonePage IncodePhoneOtpPage",
3420
+ title: "Enter Verification Code",
3421
+ children: /* @__PURE__ */ s(
3422
+ Tt,
3423
+ {
3424
+ resendTimer: r.status === "awaitingOtp" ? r.resendTimer : 0,
3425
+ canResend: r.status === "awaitingOtp" ? r.canResend : !1,
3426
+ error: r.status === "otpError" ? r.error : void 0,
3427
+ onSubmit: (u) => d.submitOtp(u),
3428
+ onResend: () => d.resendOtp(),
3429
+ onBack: () => d.back(),
3430
+ isLoading: $
3431
+ }
3432
+ )
3433
+ }
3434
+ );
3435
+ }
3436
+ return r.status === "success" ? (t?.(), null) : (r.status === "error" && n?.(r.error), null);
3437
+ }, ni = ({ config: e, onFinish: t, onError: n }) => /* @__PURE__ */ s(xt, { children: e ? /* @__PURE__ */ s(ti, { config: e, onFinish: t, onError: n }) : null });
3438
+ Ct(ni, "incode-phone");
3439
+ export {
3440
+ ni as Phone
3441
+ };