{"version":3,"file":"static/chunks/9298-7af7ca953825a0ba.js","mappings":"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AAoByP,EAA0B/U,EAH9CzC,EAAYmZ,EAAcA,EAAa,GAAGnZ,GAAA,GAAc,CACxD4X,QAAA,EACA,GAC8CjhB,GAC9C,OAAAoR,GAAAA,EAAAG,UAAA,MACA,gBCnBAkR,EAAe,CACf,WACA,+BACA,cACA,cACA,sBACA,aACA,0BACA,iBACA,yBACA,cACA,aACA,aACA,YACA,gBACA,eACA,oBACA,aACA,eACA,WACA,sBACA,gBACA,4BACA,cACA,gBACA,aACA,kBACA,cACA,aACA,aACA,WACA,yBACA,aACA,uBACA,aACA,sCACA,YACA,aACA,YACA,mBACA,cACA,aACA,YACA,YACA,6BACA,uCACA,8BACA,WACA,iBACA,mBACA,kBACA,WACA,cACA,WACA,cACA,gBACA,UACA,gBACA,gBACA,sBACA,YACA,oBACA,aACA,cACA,aACA,cACA,wBACA,aACA,aACA,aACA,WACA,oBACA,aACA,WACA,cACA,aACA,UACA,sBACA,oCACA,mBACA,YACA,WACA,oBACA,aACA,aACA,mBACA,cACA,WACA,eACA,eACA,YACA,YACA,gBACA,uBACA,YACA,kDACA,eACA,UACA,mBACA,YACA,eACA,uCACA,cACA,aACA,WACA,aACA,eACA,aACA,YACA,iBACA,WACA,oCACA,UACA,UACA,aACA,WACA,YACA,aACA,YACA,WACA,WACA,gBACA,cACA,cACA,aACA,2BACA,iBACA,iBACA,YACA,oBACA,gBACA,UACA,aACA,iBACA,mBACA,eACA,aACA,aACA,eACA,gBACA,YACA,WACA,aACA,YACA,aACA,gBACA,gCACA,gBACA,sBACA,qBACA,UACA,WACA,cACA,WACA,8BACA,gBACA,gBACA,gBACA,WACA,eACA,cACA,YACA,YACA,cACA,gBACA,aACA,mBACA,WACA,oBACA,aACA,eACA,iBACA,YACA,WACA,WACA,UACA,iBACA,UACA,mBACA,YACA,UACA,sBACA,sBACA,iBACA,cACA,YACA,+BACA,cACA,iBACA,eACA,cACA,WACA,cACA,WACA,aACA,aACA,YACA,YACA,YACA,k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","sources":["webpack://_N_E/./node_modules/classnames/index.js","webpack://_N_E/./node_modules/libphonenumber-js/es6/AsYouTypeState.js","webpack://_N_E/./node_modules/libphonenumber-js/es6/AsYouTypeFormatter.util.js","webpack://_N_E/./node_modules/libphonenumber-js/es6/AsYouTypeFormatter.complete.js","webpack://_N_E/./node_modules/libphonenumber-js/es6/AsYouTypeFormatter.PatternParser.js","webpack://_N_E/./node_modules/libphonenumber-js/es6/AsYouTypeFormatter.PatternMatcher.js","webpack://_N_E/./node_modules/libphonenumber-js/es6/AsYouTypeFormatter.js","webpack://_N_E/./node_modules/libphonenumber-js/es6/AsYouTypeParser.js","webpack://_N_E/./node_modules/libphonenumber-js/es6/AsYouType.js","webpack://_N_E/./node_modules/libphonenumber-js/es6/validate_.js","webpack://_N_E/./node_modules/libphonenumber-js/es6/helpers/getIddPrefix.js","webpack://_N_E/./node_modules/libphonenumber-js/es6/format_.js","webpack://_N_E/./node_modules/libphonenumber-js/es6/PhoneNumber.js","webpack://_N_E/./node_modules/libphonenumber-js/es6/constants.js","webpack://_N_E/./node_modules/libphonenumber-js/es6/helpers/RFC3966.js","webpack://_N_E/./node_modules/libphonenumber-js/es6/helpers/applyInternationalSeparatorStyle.js","webpack://_N_E/./node_modules/libphonenumber-js/es6/helpers/mergeArrays.js","webpack://_N_E/./node_modules/libphonenumber-js/es6/helpers/checkNumberLength.js","webpack://_N_E/./node_modules/libphonenumber-js/es6/helpers/extension/createExtensionPattern.js","webpack://_N_E/./node_modules/libphonenumber-js/es6/helpers/extractCountryCallingCode.js","webpack://_N_E/./node_modules/libphonenumber-js/es6/helpers/extractCountryCallingCodeFromInternationalNumberWithoutPlusSign.js","webpack://_N_E/./node_modules/libphonenumber-js/es6/helpers/extractNationalNumber.js","webpack://_N_E/./node_modules/libphonenumber-js/es6/helpers/extractNationalNumberFromPossiblyIncompleteNumber.js","webpack://_N_E/./node_modules/libphonenumber-js/es6/helpers/formatNationalNumberUsingFormat.js","webpack://_N_E/./node_modules/libphonenumber-js/es6/helpers/getCountryByCallingCode.js","webpack://_N_E/./node_modules/libphonenumber-js/es6/helpers/getNumberType.js","webpack://_N_E/./node_modules/libphonenumber-js/es6/helpers/isViablePhoneNumber.js","webpack://_N_E/./node_modules/libphonenumber-js/es6/helpers/matchesEntirely.js","webpack://_N_E/./node_modules/libphonenumber-js/es6/helpers/parseDigits.js","webpack://_N_E/./node_modules/libphonenumber-js/es6/helpers/stripIddPrefix.js","webpack://_N_E/./node_modules/libphonenumber-js/es6/isPossibleNumber_.js","webpack://_N_E/./node_modules/libphonenumber-js/es6/tools/semver-compare.js","webpack://_N_E/./node_modules/libphonenumber-js/es6/metadata.js","webpack://_N_E/./node_modules/libphonenumber-js/es6/parseIncompletePhoneNumber.js","webpack://_N_E/./node_modules/libphonenumber-js/metadata.min.json.js","webpack://_N_E/./node_modules/libphonenumber-js/es6/parsePhoneNumber.js","webpack://_N_E/./node_modules/libphonenumber-js/es6/ParseError.js","webpack://_N_E/./node_modules/libphonenumber-js/es6/helpers/extension/extractExtension.js","webpack://_N_E/./node_modules/libphonenumber-js/es6/parse_.js","webpack://_N_E/./node_modules/libphonenumber-js/es6/parsePhoneNumber_.js","webpack://_N_E/./node_modules/libphonenumber-js/es6/parsePhoneNumberFromString_.js","webpack://_N_E/./node_modules/libphonenumber-js/es6/parsePhoneNumberFromString.js","webpack://_N_E/./node_modules/react-phone-number-input/modules/libphonenumber/formatPhoneNumber.js","webpack://_N_E/./node_modules/libphonenumber-js/es6/isPossiblePhoneNumber.js","webpack://_N_E/./node_modules/react-phone-number-input/locale/en.json.js","webpack://_N_E/./node_modules/country-flag-icons/modules/unicode.js","webpack://_N_E/./node_modules/react-phone-number-input/modules/CountrySelect.js","webpack://_N_E/./node_modules/react-phone-number-input/modules/Flag.js","webpack://_N_E/./node_modules/react-phone-number-input/modules/InternationalIcon.js","webpack://_N_E/./node_modules/react-phone-number-input/modules/helpers/countries.js","webpack://_N_E/./node_modules/libphonenumber-js/es6/getCountries.js","webpack://_N_E/./node_modules/react-phone-number-input/modules/CountryIcon.js","webpack://_N_E/./node_modules/react-phone-number-input/modules/helpers/phoneInputHelpers.js","webpack://_N_E/./node_modules/react-phone-number-input/modules/helpers/getPhoneInputWithCountryStateUpdateFromNewProps.js","webpack://_N_E/./node_modules/react-phone-number-input/modules/PhoneInputWithCountry.js","webpack://_N_E/./node_modules/react-phone-number-input/modules/PhoneInputWithCountryDefault.js","webpack://_N_E/./node_modules/react-phone-number-input/min/index.js","webpack://_N_E/./node_modules/libphonenumber-js/es6/formatIncompletePhoneNumber.js","webpack://_N_E/./node_modules/react-phone-number-input/modules/InputBasic.js","webpack://_N_E/./node_modules/input-format/modules/edit.js","webpack://_N_E/./node_modules/input-format/modules/parse.js","webpack://_N_E/./node_modules/input-format/modules/helpers.js","webpack://_N_E/./node_modules/input-format/modules/closeBraces.js","webpack://_N_E/./node_modules/input-format/modules/templateFormatter.js","webpack://_N_E/./node_modules/input-format/modules/format.js","webpack://_N_E/./node_modules/input-format/modules/dom.js","webpack://_N_E/./node_modules/input-format/modules/inputControl.js","webpack://_N_E/./node_modules/input-format/modules/react/Input.js","webpack://_N_E/./node_modules/react-phone-number-input/modules/InputSmart.js","webpack://_N_E/./node_modules/react-phone-number-input/modules/PropTypes.js","webpack://_N_E/./node_modules/react-phone-number-input/modules/helpers/getInternationalPhoneNumberPrefix.js","webpack://_N_E/./node_modules/react-phone-number-input/modules/helpers/inputValuePrefix.js","webpack://_N_E/"],"sourcesContent":["/*!\n Copyright (c) 2018 Jed Watson.\n Licensed under the MIT License (MIT), see\n http://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\n\tfunction classNames() {\n\t\tvar classes = [];\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (!arg) continue;\n\n\t\t\tvar argType = typeof arg;\n\n\t\t\tif (argType === 'string' || argType === 'number') {\n\t\t\t\tclasses.push(arg);\n\t\t\t} else if (Array.isArray(arg)) {\n\t\t\t\tif (arg.length) {\n\t\t\t\t\tvar inner = classNames.apply(null, arg);\n\t\t\t\t\tif (inner) {\n\t\t\t\t\t\tclasses.push(inner);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else if (argType === 'object') {\n\t\t\t\tif (arg.toString === Object.prototype.toString) {\n\t\t\t\t\tfor (var key in arg) {\n\t\t\t\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\t\t\t\tclasses.push(key);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tclasses.push(arg.toString());\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn classes.join(' ');\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n","function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\n\nvar AsYouTypeState = /*#__PURE__*/function () {\n function AsYouTypeState(_ref) {\n var onCountryChange = _ref.onCountryChange,\n onCallingCodeChange = _ref.onCallingCodeChange;\n\n _classCallCheck(this, AsYouTypeState);\n\n this.onCountryChange = onCountryChange;\n this.onCallingCodeChange = onCallingCodeChange;\n }\n\n _createClass(AsYouTypeState, [{\n key: \"reset\",\n value: function reset(defaultCountry, defaultCallingCode) {\n this.international = false;\n this.IDDPrefix = undefined;\n this.missingPlus = undefined;\n this.callingCode = undefined;\n this.digits = '';\n this.resetNationalSignificantNumber();\n this.initCountryAndCallingCode(defaultCountry, defaultCallingCode);\n }\n }, {\n key: \"resetNationalSignificantNumber\",\n value: function resetNationalSignificantNumber() {\n this.nationalSignificantNumber = this.getNationalDigits();\n this.nationalSignificantNumberMatchesInput = true;\n this.nationalPrefix = undefined;\n this.carrierCode = undefined;\n this.complexPrefixBeforeNationalSignificantNumber = undefined;\n }\n }, {\n key: \"update\",\n value: function update(properties) {\n for (var _i = 0, _Object$keys = Object.keys(properties); _i < _Object$keys.length; _i++) {\n var key = _Object$keys[_i];\n this[key] = properties[key];\n }\n }\n }, {\n key: \"initCountryAndCallingCode\",\n value: function initCountryAndCallingCode(country, callingCode) {\n this.setCountry(country);\n this.setCallingCode(callingCode);\n }\n }, {\n key: \"setCountry\",\n value: function setCountry(country) {\n this.country = country;\n this.onCountryChange(country);\n }\n }, {\n key: \"setCallingCode\",\n value: function setCallingCode(callingCode) {\n this.callingCode = callingCode;\n this.onCallingCodeChange(callingCode, this.country);\n }\n }, {\n key: \"startInternationalNumber\",\n value: function startInternationalNumber(country, callingCode) {\n // Prepend the `+` to parsed input.\n this.international = true; // If a default country was set then reset it\n // because an explicitly international phone\n // number is being entered.\n\n this.initCountryAndCallingCode(country, callingCode);\n }\n }, {\n key: \"appendDigits\",\n value: function appendDigits(nextDigits) {\n this.digits += nextDigits;\n }\n }, {\n key: \"appendNationalSignificantNumberDigits\",\n value: function appendNationalSignificantNumberDigits(nextDigits) {\n this.nationalSignificantNumber += nextDigits;\n }\n /**\r\n * Returns the part of `this.digits` that corresponds to the national number.\r\n * Basically, all digits that have been input by the user, except for the\r\n * international prefix and the country calling code part\r\n * (if the number is an international one).\r\n * @return {string}\r\n */\n\n }, {\n key: \"getNationalDigits\",\n value: function getNationalDigits() {\n if (this.international) {\n return this.digits.slice((this.IDDPrefix ? this.IDDPrefix.length : 0) + (this.callingCode ? this.callingCode.length : 0));\n }\n\n return this.digits;\n }\n }, {\n key: \"getDigitsWithoutInternationalPrefix\",\n value: function getDigitsWithoutInternationalPrefix() {\n if (this.international) {\n if (this.IDDPrefix) {\n return this.digits.slice(this.IDDPrefix.length);\n }\n }\n\n return this.digits;\n }\n }]);\n\n return AsYouTypeState;\n}();\n\nexport { AsYouTypeState as default };\n//# sourceMappingURL=AsYouTypeState.js.map","function _createForOfIteratorHelperLoose(o, allowArrayLike) { var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"]; if (it) return (it = it.call(o)).next.bind(it); if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") { if (it) o = it; var i = 0; return function () { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\n// Should be the same as `DIGIT_PLACEHOLDER` in `libphonenumber-metadata-generator`.\nexport var DIGIT_PLACEHOLDER = 'x'; // '\\u2008' (punctuation space)\n\nvar DIGIT_PLACEHOLDER_MATCHER = new RegExp(DIGIT_PLACEHOLDER); // Counts all occurences of a symbol in a string.\n// Unicode-unsafe (because using `.split()`).\n\nexport function countOccurences(symbol, string) {\n var count = 0; // Using `.split('')` to iterate through a string here\n // to avoid requiring `Symbol.iterator` polyfill.\n // `.split('')` is generally not safe for Unicode,\n // but in this particular case for counting brackets it is safe.\n // for (const character of string)\n\n for (var _iterator = _createForOfIteratorHelperLoose(string.split('')), _step; !(_step = _iterator()).done;) {\n var character = _step.value;\n\n if (character === symbol) {\n count++;\n }\n }\n\n return count;\n} // Repeats a string (or a symbol) N times.\n// http://stackoverflow.com/questions/202605/repeat-string-javascript\n\nexport function repeat(string, times) {\n if (times < 1) {\n return '';\n }\n\n var result = '';\n\n while (times > 1) {\n if (times & 1) {\n result += string;\n }\n\n times >>= 1;\n string += string;\n }\n\n return result + string;\n}\nexport function cutAndStripNonPairedParens(string, cutBeforeIndex) {\n if (string[cutBeforeIndex] === ')') {\n cutBeforeIndex++;\n }\n\n return stripNonPairedParens(string.slice(0, cutBeforeIndex));\n}\nexport function closeNonPairedParens(template, cut_before) {\n var retained_template = template.slice(0, cut_before);\n var opening_braces = countOccurences('(', retained_template);\n var closing_braces = countOccurences(')', retained_template);\n var dangling_braces = opening_braces - closing_braces;\n\n while (dangling_braces > 0 && cut_before < template.length) {\n if (template[cut_before] === ')') {\n dangling_braces--;\n }\n\n cut_before++;\n }\n\n return template.slice(0, cut_before);\n}\nexport function stripNonPairedParens(string) {\n var dangling_braces = [];\n var i = 0;\n\n while (i < string.length) {\n if (string[i] === '(') {\n dangling_braces.push(i);\n } else if (string[i] === ')') {\n dangling_braces.pop();\n }\n\n i++;\n }\n\n var start = 0;\n var cleared_string = '';\n dangling_braces.push(string.length);\n\n for (var _i = 0, _dangling_braces = dangling_braces; _i < _dangling_braces.length; _i++) {\n var index = _dangling_braces[_i];\n cleared_string += string.slice(start, index);\n start = index + 1;\n }\n\n return cleared_string;\n}\nexport function populateTemplateWithDigits(template, position, digits) {\n // Using `.split('')` to iterate through a string here\n // to avoid requiring `Symbol.iterator` polyfill.\n // `.split('')` is generally not safe for Unicode,\n // but in this particular case for `digits` it is safe.\n // for (const digit of digits)\n for (var _iterator2 = _createForOfIteratorHelperLoose(digits.split('')), _step2; !(_step2 = _iterator2()).done;) {\n var digit = _step2.value;\n\n // If there is room for more digits in current `template`,\n // then set the next digit in the `template`,\n // and return the formatted digits so far.\n // If more digits are entered than the current format could handle.\n if (template.slice(position + 1).search(DIGIT_PLACEHOLDER_MATCHER) < 0) {\n return;\n }\n\n position = template.search(DIGIT_PLACEHOLDER_MATCHER);\n template = template.replace(DIGIT_PLACEHOLDER_MATCHER, digit);\n }\n\n return [template, position];\n}\n//# sourceMappingURL=AsYouTypeFormatter.util.js.map","import checkNumberLength from './helpers/checkNumberLength.js';\nimport parseDigits from './helpers/parseDigits.js';\nimport formatNationalNumberUsingFormat from './helpers/formatNationalNumberUsingFormat.js';\nexport default function formatCompleteNumber(state, format, _ref) {\n var metadata = _ref.metadata,\n shouldTryNationalPrefixFormattingRule = _ref.shouldTryNationalPrefixFormattingRule,\n getSeparatorAfterNationalPrefix = _ref.getSeparatorAfterNationalPrefix;\n var matcher = new RegExp(\"^(?:\".concat(format.pattern(), \")$\"));\n\n if (matcher.test(state.nationalSignificantNumber)) {\n return formatNationalNumberWithAndWithoutNationalPrefixFormattingRule(state, format, {\n metadata: metadata,\n shouldTryNationalPrefixFormattingRule: shouldTryNationalPrefixFormattingRule,\n getSeparatorAfterNationalPrefix: getSeparatorAfterNationalPrefix\n });\n }\n}\nexport function canFormatCompleteNumber(nationalSignificantNumber, metadata) {\n return checkNumberLength(nationalSignificantNumber, metadata) === 'IS_POSSIBLE';\n}\n\nfunction formatNationalNumberWithAndWithoutNationalPrefixFormattingRule(state, format, _ref2) {\n var metadata = _ref2.metadata,\n shouldTryNationalPrefixFormattingRule = _ref2.shouldTryNationalPrefixFormattingRule,\n getSeparatorAfterNationalPrefix = _ref2.getSeparatorAfterNationalPrefix;\n // `format` has already been checked for `nationalPrefix` requirement.\n var nationalSignificantNumber = state.nationalSignificantNumber,\n international = state.international,\n nationalPrefix = state.nationalPrefix,\n carrierCode = state.carrierCode; // Format the number with using `national_prefix_formatting_rule`.\n // If the resulting formatted number is a valid formatted number, then return it.\n //\n // Google's AsYouType formatter is different in a way that it doesn't try\n // to format using the \"national prefix formatting rule\", and instead it\n // simply prepends a national prefix followed by a \" \" character.\n // This code does that too, but as a fallback.\n // The reason is that \"national prefix formatting rule\" may use parentheses,\n // which wouldn't be included has it used the simpler Google's way.\n //\n\n if (shouldTryNationalPrefixFormattingRule(format)) {\n var formattedNumber = formatNationalNumber(state, format, {\n useNationalPrefixFormattingRule: true,\n getSeparatorAfterNationalPrefix: getSeparatorAfterNationalPrefix,\n metadata: metadata\n });\n\n if (formattedNumber) {\n return formattedNumber;\n }\n } // Format the number without using `national_prefix_formatting_rule`.\n\n\n return formatNationalNumber(state, format, {\n useNationalPrefixFormattingRule: false,\n getSeparatorAfterNationalPrefix: getSeparatorAfterNationalPrefix,\n metadata: metadata\n });\n}\n\nfunction formatNationalNumber(state, format, _ref3) {\n var metadata = _ref3.metadata,\n useNationalPrefixFormattingRule = _ref3.useNationalPrefixFormattingRule,\n getSeparatorAfterNationalPrefix = _ref3.getSeparatorAfterNationalPrefix;\n var formattedNationalNumber = formatNationalNumberUsingFormat(state.nationalSignificantNumber, format, {\n carrierCode: state.carrierCode,\n useInternationalFormat: state.international,\n withNationalPrefix: useNationalPrefixFormattingRule,\n metadata: metadata\n });\n\n if (!useNationalPrefixFormattingRule) {\n if (state.nationalPrefix) {\n // If a national prefix was extracted, then just prepend it,\n // followed by a \" \" character.\n formattedNationalNumber = state.nationalPrefix + getSeparatorAfterNationalPrefix(format) + formattedNationalNumber;\n } else if (state.complexPrefixBeforeNationalSignificantNumber) {\n formattedNationalNumber = state.complexPrefixBeforeNationalSignificantNumber + ' ' + formattedNationalNumber;\n }\n }\n\n if (isValidFormattedNationalNumber(formattedNationalNumber, state)) {\n return formattedNationalNumber;\n }\n} // Check that the formatted phone number contains exactly\n// the same digits that have been input by the user.\n// For example, when \"0111523456789\" is input for `AR` country,\n// the extracted `this.nationalSignificantNumber` is \"91123456789\",\n// which means that the national part of `this.digits` isn't simply equal to\n// `this.nationalPrefix` + `this.nationalSignificantNumber`.\n//\n// Also, a `format` can add extra digits to the `this.nationalSignificantNumber`\n// being formatted via `metadata[country].national_prefix_transform_rule`.\n// For example, for `VI` country, it prepends `340` to the national number,\n// and if this check hasn't been implemented, then there would be a bug\n// when `340` \"area coude\" is \"duplicated\" during input for `VI` country:\n// https://github.com/catamphetamine/libphonenumber-js/issues/318\n//\n// So, all these \"gotchas\" are filtered out.\n//\n// In the original Google's code, the comments say:\n// \"Check that we didn't remove nor add any extra digits when we matched\n// this formatting pattern. This usually happens after we entered the last\n// digit during AYTF. Eg: In case of MX, we swallow mobile token (1) when\n// formatted but AYTF should retain all the number entered and not change\n// in order to match a format (of same leading digits and length) display\n// in that way.\"\n// \"If it's the same (i.e entered number and format is same), then it's\n// safe to return this in formatted number as nothing is lost / added.\"\n// Otherwise, don't use this format.\n// https://github.com/google/libphonenumber/commit/3e7c1f04f5e7200f87fb131e6f85c6e99d60f510#diff-9149457fa9f5d608a11bb975c6ef4bc5\n// https://github.com/google/libphonenumber/commit/3ac88c7106e7dcb553bcc794b15f19185928a1c6#diff-2dcb77e833422ee304da348b905cde0b\n//\n\n\nfunction isValidFormattedNationalNumber(formattedNationalNumber, state) {\n return parseDigits(formattedNationalNumber) === state.getNationalDigits();\n}\n//# sourceMappingURL=AsYouTypeFormatter.complete.js.map","function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\n\nvar PatternParser = /*#__PURE__*/function () {\n function PatternParser() {\n _classCallCheck(this, PatternParser);\n }\n\n _createClass(PatternParser, [{\n key: \"parse\",\n value: function parse(pattern) {\n this.context = [{\n or: true,\n instructions: []\n }];\n this.parsePattern(pattern);\n\n if (this.context.length !== 1) {\n throw new Error('Non-finalized contexts left when pattern parse ended');\n }\n\n var _this$context$ = this.context[0],\n branches = _this$context$.branches,\n instructions = _this$context$.instructions;\n\n if (branches) {\n return {\n op: '|',\n args: branches.concat([expandSingleElementArray(instructions)])\n };\n }\n /* istanbul ignore if */\n\n\n if (instructions.length === 0) {\n throw new Error('Pattern is required');\n }\n\n if (instructions.length === 1) {\n return instructions[0];\n }\n\n return instructions;\n }\n }, {\n key: \"startContext\",\n value: function startContext(context) {\n this.context.push(context);\n }\n }, {\n key: \"endContext\",\n value: function endContext() {\n this.context.pop();\n }\n }, {\n key: \"getContext\",\n value: function getContext() {\n return this.context[this.context.length - 1];\n }\n }, {\n key: \"parsePattern\",\n value: function parsePattern(pattern) {\n if (!pattern) {\n throw new Error('Pattern is required');\n }\n\n var match = pattern.match(OPERATOR);\n\n if (!match) {\n if (ILLEGAL_CHARACTER_REGEXP.test(pattern)) {\n throw new Error(\"Illegal characters found in a pattern: \".concat(pattern));\n }\n\n this.getContext().instructions = this.getContext().instructions.concat(pattern.split(''));\n return;\n }\n\n var operator = match[1];\n var before = pattern.slice(0, match.index);\n var rightPart = pattern.slice(match.index + operator.length);\n\n switch (operator) {\n case '(?:':\n if (before) {\n this.parsePattern(before);\n }\n\n this.startContext({\n or: true,\n instructions: [],\n branches: []\n });\n break;\n\n case ')':\n if (!this.getContext().or) {\n throw new Error('\")\" operator must be preceded by \"(?:\" operator');\n }\n\n if (before) {\n this.parsePattern(before);\n }\n\n if (this.getContext().instructions.length === 0) {\n throw new Error('No instructions found after \"|\" operator in an \"or\" group');\n }\n\n var _this$getContext = this.getContext(),\n branches = _this$getContext.branches;\n\n branches.push(expandSingleElementArray(this.getContext().instructions));\n this.endContext();\n this.getContext().instructions.push({\n op: '|',\n args: branches\n });\n break;\n\n case '|':\n if (!this.getContext().or) {\n throw new Error('\"|\" operator can only be used inside \"or\" groups');\n }\n\n if (before) {\n this.parsePattern(before);\n } // The top-level is an implicit \"or\" group, if required.\n\n\n if (!this.getContext().branches) {\n // `branches` are not defined only for the root implicit \"or\" operator.\n\n /* istanbul ignore else */\n if (this.context.length === 1) {\n this.getContext().branches = [];\n } else {\n throw new Error('\"branches\" not found in an \"or\" group context');\n }\n }\n\n this.getContext().branches.push(expandSingleElementArray(this.getContext().instructions));\n this.getContext().instructions = [];\n break;\n\n case '[':\n if (before) {\n this.parsePattern(before);\n }\n\n this.startContext({\n oneOfSet: true\n });\n break;\n\n case ']':\n if (!this.getContext().oneOfSet) {\n throw new Error('\"]\" operator must be preceded by \"[\" operator');\n }\n\n this.endContext();\n this.getContext().instructions.push({\n op: '[]',\n args: parseOneOfSet(before)\n });\n break;\n\n /* istanbul ignore next */\n\n default:\n throw new Error(\"Unknown operator: \".concat(operator));\n }\n\n if (rightPart) {\n this.parsePattern(rightPart);\n }\n }\n }]);\n\n return PatternParser;\n}();\n\nexport { PatternParser as default };\n\nfunction parseOneOfSet(pattern) {\n var values = [];\n var i = 0;\n\n while (i < pattern.length) {\n if (pattern[i] === '-') {\n if (i === 0 || i === pattern.length - 1) {\n throw new Error(\"Couldn't parse a one-of set pattern: \".concat(pattern));\n }\n\n var prevValue = pattern[i - 1].charCodeAt(0) + 1;\n var nextValue = pattern[i + 1].charCodeAt(0) - 1;\n var value = prevValue;\n\n while (value <= nextValue) {\n values.push(String.fromCharCode(value));\n value++;\n }\n } else {\n values.push(pattern[i]);\n }\n\n i++;\n }\n\n return values;\n}\n\nvar ILLEGAL_CHARACTER_REGEXP = /[\\(\\)\\[\\]\\?\\:\\|]/;\nvar OPERATOR = new RegExp( // any of:\n'(' + // or operator\n'\\\\|' + // or\n'|' + // or group start\n'\\\\(\\\\?\\\\:' + // or\n'|' + // or group end\n'\\\\)' + // or\n'|' + // one-of set start\n'\\\\[' + // or\n'|' + // one-of set end\n'\\\\]' + ')');\n\nfunction expandSingleElementArray(array) {\n if (array.length === 1) {\n return array[0];\n }\n\n return array;\n}\n//# sourceMappingURL=AsYouTypeFormatter.PatternParser.js.map","function _createForOfIteratorHelperLoose(o, allowArrayLike) { var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"]; if (it) return (it = it.call(o)).next.bind(it); if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") { if (it) o = it; var i = 0; return function () { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\n\nimport PatternParser from './AsYouTypeFormatter.PatternParser.js';\n\nvar PatternMatcher = /*#__PURE__*/function () {\n function PatternMatcher(pattern) {\n _classCallCheck(this, PatternMatcher);\n\n this.matchTree = new PatternParser().parse(pattern);\n }\n\n _createClass(PatternMatcher, [{\n key: \"match\",\n value: function match(string) {\n var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},\n allowOverflow = _ref.allowOverflow;\n\n if (!string) {\n throw new Error('String is required');\n }\n\n var result = _match(string.split(''), this.matchTree, true);\n\n if (result && result.match) {\n delete result.matchedChars;\n }\n\n if (result && result.overflow) {\n if (!allowOverflow) {\n return;\n }\n }\n\n return result;\n }\n }]);\n\n return PatternMatcher;\n}();\n/**\r\n * Matches `characters` against a pattern compiled into a `tree`.\r\n * @param {string[]} characters\r\n * @param {Tree} tree — A pattern compiled into a `tree`. See the `*.d.ts` file for the description of the `tree` structure.\r\n * @param {boolean} last — Whether it's the last (rightmost) subtree on its level of the match tree.\r\n * @return {object} See the `*.d.ts` file for the description of the result object.\r\n */\n\n\nexport { PatternMatcher as default };\n\nfunction _match(characters, tree, last) {\n // If `tree` is a string, then `tree` is a single character.\n // That's because when a pattern is parsed, multi-character-string parts\n // of a pattern are compiled into arrays of single characters.\n // I still wrote this piece of code for a \"general\" hypothetical case\n // when `tree` could be a string of several characters, even though\n // such case is not possible with the current implementation.\n if (typeof tree === 'string') {\n var characterString = characters.join('');\n\n if (tree.indexOf(characterString) === 0) {\n // `tree` is always a single character.\n // If `tree.indexOf(characterString) === 0`\n // then `characters.length === tree.length`.\n\n /* istanbul ignore else */\n if (characters.length === tree.length) {\n return {\n match: true,\n matchedChars: characters\n };\n } // `tree` is always a single character.\n // If `tree.indexOf(characterString) === 0`\n // then `characters.length === tree.length`.\n\n /* istanbul ignore next */\n\n\n return {\n partialMatch: true // matchedChars: characters\n\n };\n }\n\n if (characterString.indexOf(tree) === 0) {\n if (last) {\n // The `else` path is not possible because `tree` is always a single character.\n // The `else` case for `characters.length > tree.length` would be\n // `characters.length <= tree.length` which means `characters.length <= 1`.\n // `characters` array can't be empty, so that means `characters === [tree]`,\n // which would also mean `tree.indexOf(characterString) === 0` and that'd mean\n // that the `if (tree.indexOf(characterString) === 0)` condition before this\n // `if` condition would be entered, and returned from there, not reaching this code.\n\n /* istanbul ignore else */\n if (characters.length > tree.length) {\n return {\n overflow: true\n };\n }\n }\n\n return {\n match: true,\n matchedChars: characters.slice(0, tree.length)\n };\n }\n\n return;\n }\n\n if (Array.isArray(tree)) {\n var restCharacters = characters.slice();\n var i = 0;\n\n while (i < tree.length) {\n var subtree = tree[i];\n\n var result = _match(restCharacters, subtree, last && i === tree.length - 1);\n\n if (!result) {\n return;\n } else if (result.overflow) {\n return result;\n } else if (result.match) {\n // Continue with the next subtree with the rest of the characters.\n restCharacters = restCharacters.slice(result.matchedChars.length);\n\n if (restCharacters.length === 0) {\n if (i === tree.length - 1) {\n return {\n match: true,\n matchedChars: characters\n };\n } else {\n return {\n partialMatch: true // matchedChars: characters\n\n };\n }\n }\n } else {\n /* istanbul ignore else */\n if (result.partialMatch) {\n return {\n partialMatch: true // matchedChars: characters\n\n };\n } else {\n throw new Error(\"Unsupported match result:\\n\".concat(JSON.stringify(result, null, 2)));\n }\n }\n\n i++;\n } // If `last` then overflow has already been checked\n // by the last element of the `tree` array.\n\n /* istanbul ignore if */\n\n\n if (last) {\n return {\n overflow: true\n };\n }\n\n return {\n match: true,\n matchedChars: characters.slice(0, characters.length - restCharacters.length)\n };\n }\n\n switch (tree.op) {\n case '|':\n var partialMatch;\n\n for (var _iterator = _createForOfIteratorHelperLoose(tree.args), _step; !(_step = _iterator()).done;) {\n var branch = _step.value;\n\n var _result = _match(characters, branch, last);\n\n if (_result) {\n if (_result.overflow) {\n return _result;\n } else if (_result.match) {\n return {\n match: true,\n matchedChars: _result.matchedChars\n };\n } else {\n /* istanbul ignore else */\n if (_result.partialMatch) {\n partialMatch = true;\n } else {\n throw new Error(\"Unsupported match result:\\n\".concat(JSON.stringify(_result, null, 2)));\n }\n }\n }\n }\n\n if (partialMatch) {\n return {\n partialMatch: true // matchedChars: ...\n\n };\n } // Not even a partial match.\n\n\n return;\n\n case '[]':\n for (var _iterator2 = _createForOfIteratorHelperLoose(tree.args), _step2; !(_step2 = _iterator2()).done;) {\n var _char = _step2.value;\n\n if (characters[0] === _char) {\n if (characters.length === 1) {\n return {\n match: true,\n matchedChars: characters\n };\n }\n\n if (last) {\n return {\n overflow: true\n };\n }\n\n return {\n match: true,\n matchedChars: [_char]\n };\n }\n } // No character matches.\n\n\n return;\n\n /* istanbul ignore next */\n\n default:\n throw new Error(\"Unsupported instruction tree: \".concat(tree));\n }\n}\n//# sourceMappingURL=AsYouTypeFormatter.PatternMatcher.js.map","function _createForOfIteratorHelperLoose(o, allowArrayLike) { var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"]; if (it) return (it = it.call(o)).next.bind(it); if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") { if (it) o = it; var i = 0; return function () { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\n\nimport { DIGIT_PLACEHOLDER, countOccurences, repeat, cutAndStripNonPairedParens, closeNonPairedParens, stripNonPairedParens, populateTemplateWithDigits } from './AsYouTypeFormatter.util.js';\nimport formatCompleteNumber, { canFormatCompleteNumber } from './AsYouTypeFormatter.complete.js';\nimport PatternMatcher from './AsYouTypeFormatter.PatternMatcher.js';\nimport parseDigits from './helpers/parseDigits.js';\nexport { DIGIT_PLACEHOLDER } from './AsYouTypeFormatter.util.js';\nimport { FIRST_GROUP_PATTERN } from './helpers/formatNationalNumberUsingFormat.js';\nimport { VALID_PUNCTUATION } from './constants.js';\nimport applyInternationalSeparatorStyle from './helpers/applyInternationalSeparatorStyle.js'; // Used in phone number format template creation.\n// Could be any digit, I guess.\n\nvar DUMMY_DIGIT = '9'; // I don't know why is it exactly `15`\n\nvar LONGEST_NATIONAL_PHONE_NUMBER_LENGTH = 15; // Create a phone number consisting only of the digit 9 that matches the\n// `number_pattern` by applying the pattern to the \"longest phone number\" string.\n\nvar LONGEST_DUMMY_PHONE_NUMBER = repeat(DUMMY_DIGIT, LONGEST_NATIONAL_PHONE_NUMBER_LENGTH); // A set of characters that, if found in a national prefix formatting rules, are an indicator to\n// us that we should separate the national prefix from the number when formatting.\n\nvar NATIONAL_PREFIX_SEPARATORS_PATTERN = /[- ]/; // Deprecated: Google has removed some formatting pattern related code from their repo.\n// https://github.com/googlei18n/libphonenumber/commit/a395b4fef3caf57c4bc5f082e1152a4d2bd0ba4c\n// \"We no longer have numbers in formatting matching patterns, only \\d.\"\n// Because this library supports generating custom metadata\n// some users may still be using old metadata so the relevant\n// code seems to stay until some next major version update.\n\nvar SUPPORT_LEGACY_FORMATTING_PATTERNS = true; // A pattern that is used to match character classes in regular expressions.\n// An example of a character class is \"[1-4]\".\n\nvar CREATE_CHARACTER_CLASS_PATTERN = SUPPORT_LEGACY_FORMATTING_PATTERNS && function () {\n return /\\[([^\\[\\]])*\\]/g;\n}; // Any digit in a regular expression that actually denotes a digit. For\n// example, in the regular expression \"80[0-2]\\d{6,10}\", the first 2 digits\n// (8 and 0) are standalone digits, but the rest are not.\n// Two look-aheads are needed because the number following \\\\d could be a\n// two-digit number, since the phone number can be as long as 15 digits.\n\n\nvar CREATE_STANDALONE_DIGIT_PATTERN = SUPPORT_LEGACY_FORMATTING_PATTERNS && function () {\n return /\\d(?=[^,}][^,}])/g;\n}; // A regular expression that is used to determine if a `format` is\n// suitable to be used in the \"as you type formatter\".\n// A `format` is suitable when the resulting formatted number has\n// the same digits as the user has entered.\n//\n// In the simplest case, that would mean that the format\n// doesn't add any additional digits when formatting a number.\n// Google says that it also shouldn't add \"star\" (`*`) characters,\n// like it does in some Israeli formats.\n// Such basic format would only contain \"valid punctuation\"\n// and \"captured group\" identifiers ($1, $2, etc).\n//\n// An example of a format that adds additional digits:\n//\n// Country: `AR` (Argentina).\n// Format:\n// {\n// \"pattern\": \"(\\\\d)(\\\\d{2})(\\\\d{4})(\\\\d{4})\",\n// \"leading_digits_patterns\": [\"91\"],\n// \"national_prefix_formatting_rule\": \"0$1\",\n// \"format\": \"$2 15-$3-$4\",\n// \"international_format\": \"$1 $2 $3-$4\"\n// }\n//\n// In the format above, the `format` adds `15` to the digits when formatting a number.\n// A sidenote: this format actually is suitable because `national_prefix_for_parsing`\n// has previously removed `15` from a national number, so re-adding `15` in `format`\n// doesn't actually result in any extra digits added to user's input.\n// But verifying that would be a complex procedure, so the code chooses a simpler path:\n// it simply filters out all `format`s that contain anything but \"captured group\" ids.\n//\n// This regular expression is called `ELIGIBLE_FORMAT_PATTERN` in Google's\n// `libphonenumber` code.\n//\n\n\nvar NON_ALTERING_FORMAT_REG_EXP = new RegExp('[' + VALID_PUNCTUATION + ']*' + // Google developers say:\n// \"We require that the first matching group is present in the\n// output pattern to ensure no data is lost while formatting.\"\n'\\\\$1' + '[' + VALID_PUNCTUATION + ']*' + '(\\\\$\\\\d[' + VALID_PUNCTUATION + ']*)*' + '$'); // This is the minimum length of the leading digits of a phone number\n// to guarantee the first \"leading digits pattern\" for a phone number format\n// to be preemptive.\n\nvar MIN_LEADING_DIGITS_LENGTH = 3;\n\nvar AsYouTypeFormatter = /*#__PURE__*/function () {\n function AsYouTypeFormatter(_ref) {\n var state = _ref.state,\n metadata = _ref.metadata;\n\n _classCallCheck(this, AsYouTypeFormatter);\n\n this.metadata = metadata;\n this.resetFormat();\n }\n\n _createClass(AsYouTypeFormatter, [{\n key: \"resetFormat\",\n value: function resetFormat() {\n this.chosenFormat = undefined;\n this.template = undefined;\n this.nationalNumberTemplate = undefined;\n this.populatedNationalNumberTemplate = undefined;\n this.populatedNationalNumberTemplatePosition = -1;\n }\n }, {\n key: \"reset\",\n value: function reset(numberingPlan, state) {\n this.resetFormat();\n\n if (numberingPlan) {\n this.isNANP = numberingPlan.callingCode() === '1';\n this.matchingFormats = numberingPlan.formats();\n\n if (state.nationalSignificantNumber) {\n this.narrowDownMatchingFormats(state);\n }\n } else {\n this.isNANP = undefined;\n this.matchingFormats = [];\n }\n }\n /**\r\n * Formats an updated phone number.\r\n * @param {string} nextDigits — Additional phone number digits.\r\n * @param {object} state — `AsYouType` state.\r\n * @return {[string]} Returns undefined if the updated phone number can't be formatted using any of the available formats.\r\n */\n\n }, {\n key: \"format\",\n value: function format(nextDigits, state) {\n var _this = this;\n\n // See if the phone number digits can be formatted as a complete phone number.\n // If not, use the results from `formatNationalNumberWithNextDigits()`,\n // which formats based on the chosen formatting pattern.\n //\n // Attempting to format complete phone number first is how it's done\n // in Google's `libphonenumber`, so this library just follows it.\n // Google's `libphonenumber` code doesn't explain in detail why does it\n // attempt to format digits as a complete phone number\n // instead of just going with a previoulsy (or newly) chosen `format`:\n //\n // \"Checks to see if there is an exact pattern match for these digits.\n // If so, we should use this instead of any other formatting template\n // whose leadingDigitsPattern also matches the input.\"\n //\n if (canFormatCompleteNumber(state.nationalSignificantNumber, this.metadata)) {\n for (var _iterator = _createForOfIteratorHelperLoose(this.matchingFormats), _step; !(_step = _iterator()).done;) {\n var format = _step.value;\n var formattedCompleteNumber = formatCompleteNumber(state, format, {\n metadata: this.metadata,\n shouldTryNationalPrefixFormattingRule: function shouldTryNationalPrefixFormattingRule(format) {\n return _this.shouldTryNationalPrefixFormattingRule(format, {\n international: state.international,\n nationalPrefix: state.nationalPrefix\n });\n },\n getSeparatorAfterNationalPrefix: function getSeparatorAfterNationalPrefix(format) {\n return _this.getSeparatorAfterNationalPrefix(format);\n }\n });\n\n if (formattedCompleteNumber) {\n this.resetFormat();\n this.chosenFormat = format;\n this.setNationalNumberTemplate(formattedCompleteNumber.replace(/\\d/g, DIGIT_PLACEHOLDER), state);\n this.populatedNationalNumberTemplate = formattedCompleteNumber; // With a new formatting template, the matched position\n // using the old template needs to be reset.\n\n this.populatedNationalNumberTemplatePosition = this.template.lastIndexOf(DIGIT_PLACEHOLDER);\n return formattedCompleteNumber;\n }\n }\n } // Format the digits as a partial (incomplete) phone number\n // using the previously chosen formatting pattern (or a newly chosen one).\n\n\n return this.formatNationalNumberWithNextDigits(nextDigits, state);\n } // Formats the next phone number digits.\n\n }, {\n key: \"formatNationalNumberWithNextDigits\",\n value: function formatNationalNumberWithNextDigits(nextDigits, state) {\n var previouslyChosenFormat = this.chosenFormat; // Choose a format from the list of matching ones.\n\n var newlyChosenFormat = this.chooseFormat(state);\n\n if (newlyChosenFormat) {\n if (newlyChosenFormat === previouslyChosenFormat) {\n // If it can format the next (current) digits\n // using the previously chosen phone number format\n // then return the updated formatted number.\n return this.formatNextNationalNumberDigits(nextDigits);\n } else {\n // If a more appropriate phone number format\n // has been chosen for these \"leading digits\",\n // then re-format the national phone number part\n // using the newly selected format.\n return this.formatNextNationalNumberDigits(state.getNationalDigits());\n }\n }\n }\n }, {\n key: \"narrowDownMatchingFormats\",\n value: function narrowDownMatchingFormats(_ref2) {\n var _this2 = this;\n\n var nationalSignificantNumber = _ref2.nationalSignificantNumber,\n nationalPrefix = _ref2.nationalPrefix,\n international = _ref2.international;\n var leadingDigits = nationalSignificantNumber; // \"leading digits\" pattern list starts with a\n // \"leading digits\" pattern fitting a maximum of 3 leading digits.\n // So, after a user inputs 3 digits of a national (significant) phone number\n // this national (significant) number can already be formatted.\n // The next \"leading digits\" pattern is for 4 leading digits max,\n // and the \"leading digits\" pattern after it is for 5 leading digits max, etc.\n // This implementation is different from Google's\n // in that it searches for a fitting format\n // even if the user has entered less than\n // `MIN_LEADING_DIGITS_LENGTH` digits of a national number.\n // Because some leading digit patterns already match for a single first digit.\n\n var leadingDigitsPatternIndex = leadingDigits.length - MIN_LEADING_DIGITS_LENGTH;\n\n if (leadingDigitsPatternIndex < 0) {\n leadingDigitsPatternIndex = 0;\n }\n\n this.matchingFormats = this.matchingFormats.filter(function (format) {\n return _this2.formatSuits(format, international, nationalPrefix) && _this2.formatMatches(format, leadingDigits, leadingDigitsPatternIndex);\n }); // If there was a phone number format chosen\n // and it no longer holds given the new leading digits then reset it.\n // The test for this `if` condition is marked as:\n // \"Reset a chosen format when it no longer holds given the new leading digits\".\n // To construct a valid test case for this one can find a country\n // in `PhoneNumberMetadata.xml` yielding one format for 3 ``\n // and yielding another format for 4 `` (Australia in this case).\n\n if (this.chosenFormat && this.matchingFormats.indexOf(this.chosenFormat) === -1) {\n this.resetFormat();\n }\n }\n }, {\n key: \"formatSuits\",\n value: function formatSuits(format, international, nationalPrefix) {\n // When a prefix before a national (significant) number is\n // simply a national prefix, then it's parsed as `this.nationalPrefix`.\n // In more complex cases, a prefix before national (significant) number\n // could include a national prefix as well as some \"capturing groups\",\n // and in that case there's no info whether a national prefix has been parsed.\n // If national prefix is not used when formatting a phone number\n // using this format, but a national prefix has been entered by the user,\n // and was extracted, then discard such phone number format.\n // In Google's \"AsYouType\" formatter code, the equivalent would be this part:\n // https://github.com/google/libphonenumber/blob/0a45cfd96e71cad8edb0e162a70fcc8bd9728933/java/libphonenumber/src/com/google/i18n/phonenumbers/AsYouTypeFormatter.java#L175-L184\n if (nationalPrefix && !format.usesNationalPrefix() && // !format.domesticCarrierCodeFormattingRule() &&\n !format.nationalPrefixIsOptionalWhenFormattingInNationalFormat()) {\n return false;\n } // If national prefix is mandatory for this phone number format\n // and there're no guarantees that a national prefix is present in user input\n // then discard this phone number format as not suitable.\n // In Google's \"AsYouType\" formatter code, the equivalent would be this part:\n // https://github.com/google/libphonenumber/blob/0a45cfd96e71cad8edb0e162a70fcc8bd9728933/java/libphonenumber/src/com/google/i18n/phonenumbers/AsYouTypeFormatter.java#L185-L193\n\n\n if (!international && !nationalPrefix && format.nationalPrefixIsMandatoryWhenFormattingInNationalFormat()) {\n return false;\n }\n\n return true;\n }\n }, {\n key: \"formatMatches\",\n value: function formatMatches(format, leadingDigits, leadingDigitsPatternIndex) {\n var leadingDigitsPatternsCount = format.leadingDigitsPatterns().length; // If this format is not restricted to a certain\n // leading digits pattern then it fits.\n // The test case could be found by searching for \"leadingDigitsPatternsCount === 0\".\n\n if (leadingDigitsPatternsCount === 0) {\n return true;\n } // Start narrowing down the list of possible formats based on the leading digits.\n // (only previously matched formats take part in the narrowing down process)\n // `leading_digits_patterns` start with 3 digits min\n // and then go up from there one digit at a time.\n\n\n leadingDigitsPatternIndex = Math.min(leadingDigitsPatternIndex, leadingDigitsPatternsCount - 1);\n var leadingDigitsPattern = format.leadingDigitsPatterns()[leadingDigitsPatternIndex]; // Google imposes a requirement on the leading digits\n // to be minimum 3 digits long in order to be eligible\n // for checking those with a leading digits pattern.\n //\n // Since `leading_digits_patterns` start with 3 digits min,\n // Google's original `libphonenumber` library only starts\n // excluding any non-matching formats only when the\n // national number entered so far is at least 3 digits long,\n // otherwise format matching would give false negatives.\n //\n // For example, when the digits entered so far are `2`\n // and the leading digits pattern is `21` –\n // it's quite obvious in this case that the format could be the one\n // but due to the absence of further digits it would give false negative.\n //\n // Also, `leading_digits_patterns` doesn't always correspond to a single\n // digits count. For example, `60|8` pattern would already match `8`\n // but the `60` part would require having at least two leading digits,\n // so the whole pattern would require inputting two digits first in order to\n // decide on whether it matches the input, even when the input is \"80\".\n //\n // This library — `libphonenumber-js` — allows filtering by `leading_digits_patterns`\n // even when there's only 1 or 2 digits of the national (significant) number.\n // To do that, it uses a non-strict pattern matcher written specifically for that.\n //\n\n if (leadingDigits.length < MIN_LEADING_DIGITS_LENGTH) {\n // Before leading digits < 3 matching was implemented:\n // return true\n //\n // After leading digits < 3 matching was implemented:\n try {\n return new PatternMatcher(leadingDigitsPattern).match(leadingDigits, {\n allowOverflow: true\n }) !== undefined;\n } catch (error)\n /* istanbul ignore next */\n {\n // There's a slight possibility that there could be some undiscovered bug\n // in the pattern matcher code. Since the \"leading digits < 3 matching\"\n // feature is not \"essential\" for operation, it can fall back to the old way\n // in case of any issues rather than halting the application's execution.\n console.error(error);\n return true;\n }\n } // If at least `MIN_LEADING_DIGITS_LENGTH` digits of a national number are\n // available then use the usual regular expression matching.\n //\n // The whole pattern is wrapped in round brackets (`()`) because\n // the pattern can use \"or\" operator (`|`) at the top level of the pattern.\n //\n\n\n return new RegExp(\"^(\".concat(leadingDigitsPattern, \")\")).test(leadingDigits);\n }\n }, {\n key: \"getFormatFormat\",\n value: function getFormatFormat(format, international) {\n return international ? format.internationalFormat() : format.format();\n }\n }, {\n key: \"chooseFormat\",\n value: function chooseFormat(state) {\n var _this3 = this;\n\n var _loop = function _loop() {\n var format = _step2.value;\n\n // If this format is currently being used\n // and is still suitable, then stick to it.\n if (_this3.chosenFormat === format) {\n return \"break\";\n } // Sometimes, a formatting rule inserts additional digits in a phone number,\n // and \"as you type\" formatter can't do that: it should only use the digits\n // that the user has input.\n //\n // For example, in Argentina, there's a format for mobile phone numbers:\n //\n // {\n // \"pattern\": \"(\\\\d)(\\\\d{2})(\\\\d{4})(\\\\d{4})\",\n // \"leading_digits_patterns\": [\"91\"],\n // \"national_prefix_formatting_rule\": \"0$1\",\n // \"format\": \"$2 15-$3-$4\",\n // \"international_format\": \"$1 $2 $3-$4\"\n // }\n //\n // In that format, `international_format` is used instead of `format`\n // because `format` inserts `15` in the formatted number,\n // and `AsYouType` formatter should only use the digits\n // the user has actually input, without adding any extra digits.\n // In this case, it wouldn't make a difference, because the `15`\n // is first stripped when applying `national_prefix_for_parsing`\n // and then re-added when using `format`, so in reality it doesn't\n // add any new digits to the number, but to detect that, the code\n // would have to be more complex: it would have to try formatting\n // the digits using the format and then see if any digits have\n // actually been added or removed, and then, every time a new digit\n // is input, it should re-check whether the chosen format doesn't\n // alter the digits.\n //\n // Google's code doesn't go that far, and so does this library:\n // it simply requires that a `format` doesn't add any additonal\n // digits to user's input.\n //\n // Also, people in general should move from inputting phone numbers\n // in national format (possibly with national prefixes)\n // and use international phone number format instead:\n // it's a logical thing in the modern age of mobile phones,\n // globalization and the internet.\n //\n\n /* istanbul ignore if */\n\n\n if (!NON_ALTERING_FORMAT_REG_EXP.test(_this3.getFormatFormat(format, state.international))) {\n return \"continue\";\n }\n\n if (!_this3.createTemplateForFormat(format, state)) {\n // Remove the format if it can't generate a template.\n _this3.matchingFormats = _this3.matchingFormats.filter(function (_) {\n return _ !== format;\n });\n return \"continue\";\n }\n\n _this3.chosenFormat = format;\n return \"break\";\n };\n\n // When there are multiple available formats, the formatter uses the first\n // format where a formatting template could be created.\n //\n // For some weird reason, `istanbul` says \"else path not taken\"\n // for the `for of` line below. Supposedly that means that\n // the loop doesn't ever go over the last element in the list.\n // That's true because there always is `this.chosenFormat`\n // when `this.matchingFormats` is non-empty.\n // And, for some weird reason, it doesn't think that the case\n // with empty `this.matchingFormats` qualifies for a valid \"else\" path.\n // So simply muting this `istanbul` warning.\n // It doesn't skip the contents of the `for of` loop,\n // it just skips the `for of` line.\n //\n\n /* istanbul ignore next */\n for (var _iterator2 = _createForOfIteratorHelperLoose(this.matchingFormats.slice()), _step2; !(_step2 = _iterator2()).done;) {\n var _ret = _loop();\n\n if (_ret === \"break\") break;\n if (_ret === \"continue\") continue;\n }\n\n if (!this.chosenFormat) {\n // No format matches the national (significant) phone number.\n this.resetFormat();\n }\n\n return this.chosenFormat;\n }\n }, {\n key: \"createTemplateForFormat\",\n value: function createTemplateForFormat(format, state) {\n // The formatter doesn't format numbers when numberPattern contains '|', e.g.\n // (20|3)\\d{4}. In those cases we quickly return.\n // (Though there's no such format in current metadata)\n\n /* istanbul ignore if */\n if (SUPPORT_LEGACY_FORMATTING_PATTERNS && format.pattern().indexOf('|') >= 0) {\n return;\n } // Get formatting template for this phone number format\n\n\n var template = this.getTemplateForFormat(format, state); // If the national number entered is too long\n // for any phone number format, then abort.\n\n if (template) {\n this.setNationalNumberTemplate(template, state);\n return true;\n }\n }\n }, {\n key: \"getSeparatorAfterNationalPrefix\",\n value: function getSeparatorAfterNationalPrefix(format) {\n // `US` metadata doesn't have a `national_prefix_formatting_rule`,\n // so the `if` condition below doesn't apply to `US`,\n // but in reality there shoudl be a separator\n // between a national prefix and a national (significant) number.\n // So `US` national prefix separator is a \"special\" \"hardcoded\" case.\n if (this.isNANP) {\n return ' ';\n } // If a `format` has a `national_prefix_formatting_rule`\n // and that rule has a separator after a national prefix,\n // then it means that there should be a separator\n // between a national prefix and a national (significant) number.\n\n\n if (format && format.nationalPrefixFormattingRule() && NATIONAL_PREFIX_SEPARATORS_PATTERN.test(format.nationalPrefixFormattingRule())) {\n return ' ';\n } // At this point, there seems to be no clear evidence that\n // there should be a separator between a national prefix\n // and a national (significant) number. So don't insert one.\n\n\n return '';\n }\n }, {\n key: \"getInternationalPrefixBeforeCountryCallingCode\",\n value: function getInternationalPrefixBeforeCountryCallingCode(_ref3, options) {\n var IDDPrefix = _ref3.IDDPrefix,\n missingPlus = _ref3.missingPlus;\n\n if (IDDPrefix) {\n return options && options.spacing === false ? IDDPrefix : IDDPrefix + ' ';\n }\n\n if (missingPlus) {\n return '';\n }\n\n return '+';\n }\n }, {\n key: \"getTemplate\",\n value: function getTemplate(state) {\n if (!this.template) {\n return;\n } // `this.template` holds the template for a \"complete\" phone number.\n // The currently entered phone number is most likely not \"complete\",\n // so trim all non-populated digits.\n\n\n var index = -1;\n var i = 0;\n var internationalPrefix = state.international ? this.getInternationalPrefixBeforeCountryCallingCode(state, {\n spacing: false\n }) : '';\n\n while (i < internationalPrefix.length + state.getDigitsWithoutInternationalPrefix().length) {\n index = this.template.indexOf(DIGIT_PLACEHOLDER, index + 1);\n i++;\n }\n\n return cutAndStripNonPairedParens(this.template, index + 1);\n }\n }, {\n key: \"setNationalNumberTemplate\",\n value: function setNationalNumberTemplate(template, state) {\n this.nationalNumberTemplate = template;\n this.populatedNationalNumberTemplate = template; // With a new formatting template, the matched position\n // using the old template needs to be reset.\n\n this.populatedNationalNumberTemplatePosition = -1; // For convenience, the public `.template` property\n // contains the whole international number\n // if the phone number being input is international:\n // 'x' for the '+' sign, 'x'es for the country phone code,\n // a spacebar and then the template for the formatted national number.\n\n if (state.international) {\n this.template = this.getInternationalPrefixBeforeCountryCallingCode(state).replace(/[\\d\\+]/g, DIGIT_PLACEHOLDER) + repeat(DIGIT_PLACEHOLDER, state.callingCode.length) + ' ' + template;\n } else {\n this.template = template;\n }\n }\n /**\r\n * Generates formatting template for a national phone number,\r\n * optionally containing a national prefix, for a format.\r\n * @param {Format} format\r\n * @param {string} nationalPrefix\r\n * @return {string}\r\n */\n\n }, {\n key: \"getTemplateForFormat\",\n value: function getTemplateForFormat(format, _ref4) {\n var nationalSignificantNumber = _ref4.nationalSignificantNumber,\n international = _ref4.international,\n nationalPrefix = _ref4.nationalPrefix,\n complexPrefixBeforeNationalSignificantNumber = _ref4.complexPrefixBeforeNationalSignificantNumber;\n var pattern = format.pattern();\n /* istanbul ignore else */\n\n if (SUPPORT_LEGACY_FORMATTING_PATTERNS) {\n pattern = pattern // Replace anything in the form of [..] with \\d\n .replace(CREATE_CHARACTER_CLASS_PATTERN(), '\\\\d') // Replace any standalone digit (not the one in `{}`) with \\d\n .replace(CREATE_STANDALONE_DIGIT_PATTERN(), '\\\\d');\n } // Generate a dummy national number (consisting of `9`s)\n // that fits this format's `pattern`.\n //\n // This match will always succeed,\n // because the \"longest dummy phone number\"\n // has enough length to accomodate any possible\n // national phone number format pattern.\n //\n\n\n var digits = LONGEST_DUMMY_PHONE_NUMBER.match(pattern)[0]; // If the national number entered is too long\n // for any phone number format, then abort.\n\n if (nationalSignificantNumber.length > digits.length) {\n return;\n } // Get a formatting template which can be used to efficiently format\n // a partial number where digits are added one by one.\n // Below `strictPattern` is used for the\n // regular expression (with `^` and `$`).\n // This wasn't originally in Google's `libphonenumber`\n // and I guess they don't really need it\n // because they're not using \"templates\" to format phone numbers\n // but I added `strictPattern` after encountering\n // South Korean phone number formatting bug.\n //\n // Non-strict regular expression bug demonstration:\n //\n // this.nationalSignificantNumber : `111111111` (9 digits)\n //\n // pattern : (\\d{2})(\\d{3,4})(\\d{4})\n // format : `$1 $2 $3`\n // digits : `9999999999` (10 digits)\n //\n // '9999999999'.replace(new RegExp(/(\\d{2})(\\d{3,4})(\\d{4})/g), '$1 $2 $3') = \"99 9999 9999\"\n //\n // template : xx xxxx xxxx\n //\n // But the correct template in this case is `xx xxx xxxx`.\n // The template was generated incorrectly because of the\n // `{3,4}` variability in the `pattern`.\n //\n // The fix is, if `this.nationalSignificantNumber` has already sufficient length\n // to satisfy the `pattern` completely then `this.nationalSignificantNumber`\n // is used instead of `digits`.\n\n\n var strictPattern = new RegExp('^' + pattern + '$');\n var nationalNumberDummyDigits = nationalSignificantNumber.replace(/\\d/g, DUMMY_DIGIT); // If `this.nationalSignificantNumber` has already sufficient length\n // to satisfy the `pattern` completely then use it\n // instead of `digits`.\n\n if (strictPattern.test(nationalNumberDummyDigits)) {\n digits = nationalNumberDummyDigits;\n }\n\n var numberFormat = this.getFormatFormat(format, international);\n var nationalPrefixIncludedInTemplate; // If a user did input a national prefix (and that's guaranteed),\n // and if a `format` does have a national prefix formatting rule,\n // then see if that national prefix formatting rule\n // prepends exactly the same national prefix the user has input.\n // If that's the case, then use the `format` with the national prefix formatting rule.\n // Otherwise, use the `format` without the national prefix formatting rule,\n // and prepend a national prefix manually to it.\n\n if (this.shouldTryNationalPrefixFormattingRule(format, {\n international: international,\n nationalPrefix: nationalPrefix\n })) {\n var numberFormatWithNationalPrefix = numberFormat.replace(FIRST_GROUP_PATTERN, format.nationalPrefixFormattingRule()); // If `national_prefix_formatting_rule` of a `format` simply prepends\n // national prefix at the start of a national (significant) number,\n // then such formatting can be used with `AsYouType` formatter.\n // There seems to be no `else` case: everywhere in metadata,\n // national prefix formatting rule is national prefix + $1,\n // or `($1)`, in which case such format isn't even considered\n // when the user has input a national prefix.\n\n /* istanbul ignore else */\n\n if (parseDigits(format.nationalPrefixFormattingRule()) === (nationalPrefix || '') + parseDigits('$1')) {\n numberFormat = numberFormatWithNationalPrefix;\n nationalPrefixIncludedInTemplate = true; // Replace all digits of the national prefix in the formatting template\n // with `DIGIT_PLACEHOLDER`s.\n\n if (nationalPrefix) {\n var i = nationalPrefix.length;\n\n while (i > 0) {\n numberFormat = numberFormat.replace(/\\d/, DIGIT_PLACEHOLDER);\n i--;\n }\n }\n }\n } // Generate formatting template for this phone number format.\n\n\n var template = digits // Format the dummy phone number according to the format.\n .replace(new RegExp(pattern), numberFormat) // Replace each dummy digit with a DIGIT_PLACEHOLDER.\n .replace(new RegExp(DUMMY_DIGIT, 'g'), DIGIT_PLACEHOLDER); // If a prefix of a national (significant) number is not as simple\n // as just a basic national prefix, then just prepend such prefix\n // before the national (significant) number, optionally spacing\n // the two with a whitespace.\n\n if (!nationalPrefixIncludedInTemplate) {\n if (complexPrefixBeforeNationalSignificantNumber) {\n // Prepend the prefix to the template manually.\n template = repeat(DIGIT_PLACEHOLDER, complexPrefixBeforeNationalSignificantNumber.length) + ' ' + template;\n } else if (nationalPrefix) {\n // Prepend national prefix to the template manually.\n template = repeat(DIGIT_PLACEHOLDER, nationalPrefix.length) + this.getSeparatorAfterNationalPrefix(format) + template;\n }\n }\n\n if (international) {\n template = applyInternationalSeparatorStyle(template);\n }\n\n return template;\n }\n }, {\n key: \"formatNextNationalNumberDigits\",\n value: function formatNextNationalNumberDigits(digits) {\n var result = populateTemplateWithDigits(this.populatedNationalNumberTemplate, this.populatedNationalNumberTemplatePosition, digits);\n\n if (!result) {\n // Reset the format.\n this.resetFormat();\n return;\n }\n\n this.populatedNationalNumberTemplate = result[0];\n this.populatedNationalNumberTemplatePosition = result[1]; // Return the formatted phone number so far.\n\n return cutAndStripNonPairedParens(this.populatedNationalNumberTemplate, this.populatedNationalNumberTemplatePosition + 1); // The old way which was good for `input-format` but is not so good\n // for `react-phone-number-input`'s default input (`InputBasic`).\n // return closeNonPairedParens(this.populatedNationalNumberTemplate, this.populatedNationalNumberTemplatePosition + 1)\n // \t.replace(new RegExp(DIGIT_PLACEHOLDER, 'g'), ' ')\n }\n }, {\n key: \"shouldTryNationalPrefixFormattingRule\",\n value: function shouldTryNationalPrefixFormattingRule(format, _ref5) {\n var international = _ref5.international,\n nationalPrefix = _ref5.nationalPrefix;\n\n if (format.nationalPrefixFormattingRule()) {\n // In some countries, `national_prefix_formatting_rule` is `($1)`,\n // so it applies even if the user hasn't input a national prefix.\n // `format.usesNationalPrefix()` detects such cases.\n var usesNationalPrefix = format.usesNationalPrefix();\n\n if (usesNationalPrefix && nationalPrefix || !usesNationalPrefix && !international) {\n return true;\n }\n }\n }\n }]);\n\n return AsYouTypeFormatter;\n}();\n\nexport { AsYouTypeFormatter as default };\n//# sourceMappingURL=AsYouTypeFormatter.js.map","function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\n\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== \"undefined\" && arr[Symbol.iterator] || arr[\"@@iterator\"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\n\nimport _extractCountryCallingCode from './helpers/extractCountryCallingCode.js';\nimport extractCountryCallingCodeFromInternationalNumberWithoutPlusSign from './helpers/extractCountryCallingCodeFromInternationalNumberWithoutPlusSign.js';\nimport extractNationalNumberFromPossiblyIncompleteNumber from './helpers/extractNationalNumberFromPossiblyIncompleteNumber.js';\nimport stripIddPrefix from './helpers/stripIddPrefix.js';\nimport parseDigits from './helpers/parseDigits.js';\nimport { VALID_DIGITS, VALID_PUNCTUATION, PLUS_CHARS } from './constants.js';\nvar VALID_FORMATTED_PHONE_NUMBER_DIGITS_PART = '[' + VALID_PUNCTUATION + VALID_DIGITS + ']+';\nvar VALID_FORMATTED_PHONE_NUMBER_DIGITS_PART_PATTERN = new RegExp('^' + VALID_FORMATTED_PHONE_NUMBER_DIGITS_PART + '$', 'i');\nvar VALID_FORMATTED_PHONE_NUMBER_PART = '(?:' + '[' + PLUS_CHARS + ']' + '[' + VALID_PUNCTUATION + VALID_DIGITS + ']*' + '|' + '[' + VALID_PUNCTUATION + VALID_DIGITS + ']+' + ')';\nvar AFTER_PHONE_NUMBER_DIGITS_END_PATTERN = new RegExp('[^' + VALID_PUNCTUATION + VALID_DIGITS + ']+' + '.*' + '$'); // Tests whether `national_prefix_for_parsing` could match\n// different national prefixes.\n// Matches anything that's not a digit or a square bracket.\n\nvar COMPLEX_NATIONAL_PREFIX = /[^\\d\\[\\]]/;\n\nvar AsYouTypeParser = /*#__PURE__*/function () {\n function AsYouTypeParser(_ref) {\n var defaultCountry = _ref.defaultCountry,\n defaultCallingCode = _ref.defaultCallingCode,\n metadata = _ref.metadata,\n onNationalSignificantNumberChange = _ref.onNationalSignificantNumberChange;\n\n _classCallCheck(this, AsYouTypeParser);\n\n this.defaultCountry = defaultCountry;\n this.defaultCallingCode = defaultCallingCode;\n this.metadata = metadata;\n this.onNationalSignificantNumberChange = onNationalSignificantNumberChange;\n }\n\n _createClass(AsYouTypeParser, [{\n key: \"input\",\n value: function input(text, state) {\n var _extractFormattedDigi = extractFormattedDigitsAndPlus(text),\n _extractFormattedDigi2 = _slicedToArray(_extractFormattedDigi, 2),\n formattedDigits = _extractFormattedDigi2[0],\n hasPlus = _extractFormattedDigi2[1];\n\n var digits = parseDigits(formattedDigits); // Checks for a special case: just a leading `+` has been entered.\n\n var justLeadingPlus;\n\n if (hasPlus) {\n if (!state.digits) {\n state.startInternationalNumber();\n\n if (!digits) {\n justLeadingPlus = true;\n }\n }\n }\n\n if (digits) {\n this.inputDigits(digits, state);\n }\n\n return {\n digits: digits,\n justLeadingPlus: justLeadingPlus\n };\n }\n /**\r\n * Inputs \"next\" phone number digits.\r\n * @param {string} digits\r\n * @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\".\r\n */\n\n }, {\n key: \"inputDigits\",\n value: function inputDigits(nextDigits, state) {\n var digits = state.digits;\n var hasReceivedThreeLeadingDigits = digits.length < 3 && digits.length + nextDigits.length >= 3; // Append phone number digits.\n\n state.appendDigits(nextDigits); // Attempt to extract IDD prefix:\n // Some users input their phone number in international format,\n // but in an \"out-of-country\" dialing format instead of using the leading `+`.\n // https://github.com/catamphetamine/libphonenumber-js/issues/185\n // Detect such numbers as soon as there're at least 3 digits.\n // Google's library attempts to extract IDD prefix at 3 digits,\n // so this library just copies that behavior.\n // I guess that's because the most commot IDD prefixes are\n // `00` (Europe) and `011` (US).\n // There exist really long IDD prefixes too:\n // for example, in Australia the default IDD prefix is `0011`,\n // and it could even be as long as `14880011`.\n // An IDD prefix is extracted here, and then every time when\n // there's a new digit and the number couldn't be formatted.\n\n if (hasReceivedThreeLeadingDigits) {\n this.extractIddPrefix(state);\n }\n\n if (this.isWaitingForCountryCallingCode(state)) {\n if (!this.extractCountryCallingCode(state)) {\n return;\n }\n } else {\n state.appendNationalSignificantNumberDigits(nextDigits);\n } // If a phone number is being input in international format,\n // then it's not valid for it to have a national prefix.\n // Still, some people incorrectly input such numbers with a national prefix.\n // In such cases, only attempt to strip a national prefix if the number becomes too long.\n // (but that is done later, not here)\n\n\n if (!state.international) {\n if (!this.hasExtractedNationalSignificantNumber) {\n this.extractNationalSignificantNumber(state.getNationalDigits(), function (stateUpdate) {\n return state.update(stateUpdate);\n });\n }\n }\n }\n }, {\n key: \"isWaitingForCountryCallingCode\",\n value: function isWaitingForCountryCallingCode(_ref2) {\n var international = _ref2.international,\n callingCode = _ref2.callingCode;\n return international && !callingCode;\n } // Extracts a country calling code from a number\n // being entered in internatonal format.\n\n }, {\n key: \"extractCountryCallingCode\",\n value: function extractCountryCallingCode(state) {\n var _extractCountryCallin = _extractCountryCallingCode('+' + state.getDigitsWithoutInternationalPrefix(), this.defaultCountry, this.defaultCallingCode, this.metadata.metadata),\n countryCallingCode = _extractCountryCallin.countryCallingCode,\n number = _extractCountryCallin.number;\n\n if (countryCallingCode) {\n state.setCallingCode(countryCallingCode);\n state.update({\n nationalSignificantNumber: number\n });\n return true;\n }\n }\n }, {\n key: \"reset\",\n value: function reset(numberingPlan) {\n if (numberingPlan) {\n this.hasSelectedNumberingPlan = true;\n\n var nationalPrefixForParsing = numberingPlan._nationalPrefixForParsing();\n\n this.couldPossiblyExtractAnotherNationalSignificantNumber = nationalPrefixForParsing && COMPLEX_NATIONAL_PREFIX.test(nationalPrefixForParsing);\n } else {\n this.hasSelectedNumberingPlan = undefined;\n this.couldPossiblyExtractAnotherNationalSignificantNumber = undefined;\n }\n }\n /**\r\n * Extracts a national (significant) number from user input.\r\n * Google's library is different in that it only applies `national_prefix_for_parsing`\r\n * and doesn't apply `national_prefix_transform_rule` after that.\r\n * https://github.com/google/libphonenumber/blob/a3d70b0487875475e6ad659af404943211d26456/java/libphonenumber/src/com/google/i18n/phonenumbers/AsYouTypeFormatter.java#L539\r\n * @return {boolean} [extracted]\r\n */\n\n }, {\n key: \"extractNationalSignificantNumber\",\n value: function extractNationalSignificantNumber(nationalDigits, setState) {\n if (!this.hasSelectedNumberingPlan) {\n return;\n }\n\n var _extractNationalNumbe = extractNationalNumberFromPossiblyIncompleteNumber(nationalDigits, this.metadata),\n nationalPrefix = _extractNationalNumbe.nationalPrefix,\n nationalNumber = _extractNationalNumbe.nationalNumber,\n carrierCode = _extractNationalNumbe.carrierCode;\n\n if (nationalNumber === nationalDigits) {\n return;\n }\n\n this.onExtractedNationalNumber(nationalPrefix, carrierCode, nationalNumber, nationalDigits, setState);\n return true;\n }\n /**\r\n * In Google's code this function is called \"attempt to extract longer NDD\".\r\n * \"Some national prefixes are a substring of others\", they say.\r\n * @return {boolean} [result] — Returns `true` if extracting a national prefix produced different results from what they were.\r\n */\n\n }, {\n key: \"extractAnotherNationalSignificantNumber\",\n value: function extractAnotherNationalSignificantNumber(nationalDigits, prevNationalSignificantNumber, setState) {\n if (!this.hasExtractedNationalSignificantNumber) {\n return this.extractNationalSignificantNumber(nationalDigits, setState);\n }\n\n if (!this.couldPossiblyExtractAnotherNationalSignificantNumber) {\n return;\n }\n\n var _extractNationalNumbe2 = extractNationalNumberFromPossiblyIncompleteNumber(nationalDigits, this.metadata),\n nationalPrefix = _extractNationalNumbe2.nationalPrefix,\n nationalNumber = _extractNationalNumbe2.nationalNumber,\n carrierCode = _extractNationalNumbe2.carrierCode; // If a national prefix has been extracted previously,\n // then it's always extracted as additional digits are added.\n // That's assuming `extractNationalNumberFromPossiblyIncompleteNumber()`\n // doesn't do anything different from what it currently does.\n // So, just in case, here's this check, though it doesn't occur.\n\n /* istanbul ignore if */\n\n\n if (nationalNumber === prevNationalSignificantNumber) {\n return;\n }\n\n this.onExtractedNationalNumber(nationalPrefix, carrierCode, nationalNumber, nationalDigits, setState);\n return true;\n }\n }, {\n key: \"onExtractedNationalNumber\",\n value: function onExtractedNationalNumber(nationalPrefix, carrierCode, nationalSignificantNumber, nationalDigits, setState) {\n var complexPrefixBeforeNationalSignificantNumber;\n var nationalSignificantNumberMatchesInput; // This check also works with empty `this.nationalSignificantNumber`.\n\n var nationalSignificantNumberIndex = nationalDigits.lastIndexOf(nationalSignificantNumber); // If the extracted national (significant) number is the\n // last substring of the `digits`, then it means that it hasn't been altered:\n // no digits have been removed from the national (significant) number\n // while applying `national_prefix_transform_rule`.\n // https://gitlab.com/catamphetamine/libphonenumber-js/-/blob/master/METADATA.md#national_prefix_for_parsing--national_prefix_transform_rule\n\n if (nationalSignificantNumberIndex >= 0 && nationalSignificantNumberIndex === nationalDigits.length - nationalSignificantNumber.length) {\n nationalSignificantNumberMatchesInput = true; // If a prefix of a national (significant) number is not as simple\n // as just a basic national prefix, then such prefix is stored in\n // `this.complexPrefixBeforeNationalSignificantNumber` property and will be\n // prepended \"as is\" to the national (significant) number to produce\n // a formatted result.\n\n var prefixBeforeNationalNumber = nationalDigits.slice(0, nationalSignificantNumberIndex); // `prefixBeforeNationalNumber` is always non-empty,\n // because `onExtractedNationalNumber()` isn't called\n // when a national (significant) number hasn't been actually \"extracted\":\n // when a national (significant) number is equal to the national part of `digits`,\n // then `onExtractedNationalNumber()` doesn't get called.\n\n if (prefixBeforeNationalNumber !== nationalPrefix) {\n complexPrefixBeforeNationalSignificantNumber = prefixBeforeNationalNumber;\n }\n }\n\n setState({\n nationalPrefix: nationalPrefix,\n carrierCode: carrierCode,\n nationalSignificantNumber: nationalSignificantNumber,\n nationalSignificantNumberMatchesInput: nationalSignificantNumberMatchesInput,\n complexPrefixBeforeNationalSignificantNumber: complexPrefixBeforeNationalSignificantNumber\n }); // `onExtractedNationalNumber()` is only called when\n // the national (significant) number actually did change.\n\n this.hasExtractedNationalSignificantNumber = true;\n this.onNationalSignificantNumberChange();\n }\n }, {\n key: \"reExtractNationalSignificantNumber\",\n value: function reExtractNationalSignificantNumber(state) {\n // Attempt to extract a national prefix.\n //\n // Some people incorrectly input national prefix\n // in an international phone number.\n // For example, some people write British phone numbers as `+44(0)...`.\n //\n // Also, in some rare cases, it is valid for a national prefix\n // to be a part of an international phone number.\n // For example, mobile phone numbers in Mexico are supposed to be\n // dialled internationally using a `1` national prefix,\n // so the national prefix will be part of an international number.\n //\n // Quote from:\n // https://www.mexperience.com/dialing-cell-phones-in-mexico/\n //\n // \"Dialing a Mexican cell phone from abroad\n // When you are calling a cell phone number in Mexico from outside Mexico,\n // it’s necessary to dial an additional “1” after Mexico’s country code\n // (which is “52”) and before the area code.\n // You also ignore the 045, and simply dial the area code and the\n // cell phone’s number.\n //\n // If you don’t add the “1”, you’ll receive a recorded announcement\n // asking you to redial using it.\n //\n // For example, if you are calling from the USA to a cell phone\n // in Mexico City, you would dial +52 – 1 – 55 – 1234 5678.\n // (Note that this is different to calling a land line in Mexico City\n // from abroad, where the number dialed would be +52 – 55 – 1234 5678)\".\n //\n // Google's demo output:\n // https://libphonenumber.appspot.com/phonenumberparser?number=%2b5215512345678&country=MX\n //\n if (this.extractAnotherNationalSignificantNumber(state.getNationalDigits(), state.nationalSignificantNumber, function (stateUpdate) {\n return state.update(stateUpdate);\n })) {\n return true;\n } // If no format matches the phone number, then it could be\n // \"a really long IDD\" (quote from a comment in Google's library).\n // An IDD prefix is first extracted when the user has entered at least 3 digits,\n // and then here — every time when there's a new digit and the number\n // couldn't be formatted.\n // For example, in Australia the default IDD prefix is `0011`,\n // and it could even be as long as `14880011`.\n //\n // Could also check `!hasReceivedThreeLeadingDigits` here\n // to filter out the case when this check duplicates the one\n // already performed when there're 3 leading digits,\n // but it's not a big deal, and in most cases there\n // will be a suitable `format` when there're 3 leading digits.\n //\n\n\n if (this.extractIddPrefix(state)) {\n this.extractCallingCodeAndNationalSignificantNumber(state);\n return true;\n } // Google's AsYouType formatter supports sort of an \"autocorrection\" feature\n // when it \"autocorrects\" numbers that have been input for a country\n // with that country's calling code.\n // Such \"autocorrection\" feature looks weird, but different people have been requesting it:\n // https://github.com/catamphetamine/libphonenumber-js/issues/376\n // https://github.com/catamphetamine/libphonenumber-js/issues/375\n // https://github.com/catamphetamine/libphonenumber-js/issues/316\n\n\n if (this.fixMissingPlus(state)) {\n this.extractCallingCodeAndNationalSignificantNumber(state);\n return true;\n }\n }\n }, {\n key: \"extractIddPrefix\",\n value: function extractIddPrefix(state) {\n // An IDD prefix can't be present in a number written with a `+`.\n // Also, don't re-extract an IDD prefix if has already been extracted.\n var international = state.international,\n IDDPrefix = state.IDDPrefix,\n digits = state.digits,\n nationalSignificantNumber = state.nationalSignificantNumber;\n\n if (international || IDDPrefix) {\n return;\n } // Some users input their phone number in \"out-of-country\"\n // dialing format instead of using the leading `+`.\n // https://github.com/catamphetamine/libphonenumber-js/issues/185\n // Detect such numbers.\n\n\n var numberWithoutIDD = stripIddPrefix(digits, this.defaultCountry, this.defaultCallingCode, this.metadata.metadata);\n\n if (numberWithoutIDD !== undefined && numberWithoutIDD !== digits) {\n // If an IDD prefix was stripped then convert the IDD-prefixed number\n // to international number for subsequent parsing.\n state.update({\n IDDPrefix: digits.slice(0, digits.length - numberWithoutIDD.length)\n });\n this.startInternationalNumber(state, {\n country: undefined,\n callingCode: undefined\n });\n return true;\n }\n }\n }, {\n key: \"fixMissingPlus\",\n value: function fixMissingPlus(state) {\n if (!state.international) {\n var _extractCountryCallin2 = extractCountryCallingCodeFromInternationalNumberWithoutPlusSign(state.digits, this.defaultCountry, this.defaultCallingCode, this.metadata.metadata),\n newCallingCode = _extractCountryCallin2.countryCallingCode,\n number = _extractCountryCallin2.number;\n\n if (newCallingCode) {\n state.update({\n missingPlus: true\n });\n this.startInternationalNumber(state, {\n country: state.country,\n callingCode: newCallingCode\n });\n return true;\n }\n }\n }\n }, {\n key: \"startInternationalNumber\",\n value: function startInternationalNumber(state, _ref3) {\n var country = _ref3.country,\n callingCode = _ref3.callingCode;\n state.startInternationalNumber(country, callingCode); // If a national (significant) number has been extracted before, reset it.\n\n if (state.nationalSignificantNumber) {\n state.resetNationalSignificantNumber();\n this.onNationalSignificantNumberChange();\n this.hasExtractedNationalSignificantNumber = undefined;\n }\n }\n }, {\n key: \"extractCallingCodeAndNationalSignificantNumber\",\n value: function extractCallingCodeAndNationalSignificantNumber(state) {\n if (this.extractCountryCallingCode(state)) {\n // `this.extractCallingCode()` is currently called when the number\n // couldn't be formatted during the standard procedure.\n // Normally, the national prefix would be re-extracted\n // for an international number if such number couldn't be formatted,\n // but since it's already not able to be formatted,\n // there won't be yet another retry, so also extract national prefix here.\n this.extractNationalSignificantNumber(state.getNationalDigits(), function (stateUpdate) {\n return state.update(stateUpdate);\n });\n }\n }\n }]);\n\n return AsYouTypeParser;\n}();\n/**\r\n * Extracts formatted phone number from text (if there's any).\r\n * @param {string} text\r\n * @return {string} [formattedPhoneNumber]\r\n */\n\n\nexport { AsYouTypeParser as default };\n\nfunction extractFormattedPhoneNumber(text) {\n // Attempt to extract a possible number from the string passed in.\n var startsAt = text.search(VALID_FORMATTED_PHONE_NUMBER_PART);\n\n if (startsAt < 0) {\n return;\n } // Trim everything to the left of the phone number.\n\n\n text = text.slice(startsAt); // Trim the `+`.\n\n var hasPlus;\n\n if (text[0] === '+') {\n hasPlus = true;\n text = text.slice('+'.length);\n } // Trim everything to the right of the phone number.\n\n\n text = text.replace(AFTER_PHONE_NUMBER_DIGITS_END_PATTERN, ''); // Re-add the previously trimmed `+`.\n\n if (hasPlus) {\n text = '+' + text;\n }\n\n return text;\n}\n/**\r\n * Extracts formatted phone number digits (and a `+`) from text (if there're any).\r\n * @param {string} text\r\n * @return {any[]}\r\n */\n\n\nfunction _extractFormattedDigitsAndPlus(text) {\n // Extract a formatted phone number part from text.\n var extractedNumber = extractFormattedPhoneNumber(text) || ''; // Trim a `+`.\n\n if (extractedNumber[0] === '+') {\n return [extractedNumber.slice('+'.length), true];\n }\n\n return [extractedNumber];\n}\n/**\r\n * Extracts formatted phone number digits (and a `+`) from text (if there're any).\r\n * @param {string} text\r\n * @return {any[]}\r\n */\n\n\nexport function extractFormattedDigitsAndPlus(text) {\n var _extractFormattedDigi3 = _extractFormattedDigitsAndPlus(text),\n _extractFormattedDigi4 = _slicedToArray(_extractFormattedDigi3, 2),\n formattedDigits = _extractFormattedDigi4[0],\n hasPlus = _extractFormattedDigi4[1]; // If the extracted phone number part\n // can possibly be a part of some valid phone number\n // then parse phone number characters from a formatted phone number.\n\n\n if (!VALID_FORMATTED_PHONE_NUMBER_DIGITS_PART_PATTERN.test(formattedDigits)) {\n formattedDigits = '';\n }\n\n return [formattedDigits, hasPlus];\n}\n//# sourceMappingURL=AsYouTypeParser.js.map","function _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\n\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\n\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== \"undefined\" && arr[Symbol.iterator] || arr[\"@@iterator\"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\n\nimport Metadata from './metadata.js';\nimport PhoneNumber from './PhoneNumber.js';\nimport AsYouTypeState from './AsYouTypeState.js';\nimport AsYouTypeFormatter, { DIGIT_PLACEHOLDER } from './AsYouTypeFormatter.js';\nimport AsYouTypeParser, { extractFormattedDigitsAndPlus } from './AsYouTypeParser.js';\nimport getCountryByCallingCode from './helpers/getCountryByCallingCode.js';\nvar USE_NON_GEOGRAPHIC_COUNTRY_CODE = false;\n\nvar AsYouType = /*#__PURE__*/function () {\n /**\r\n * @param {(string|object)?} [optionsOrDefaultCountry] - The default country used for parsing non-international phone numbers. Can also be an `options` object.\r\n * @param {Object} metadata\r\n */\n function AsYouType(optionsOrDefaultCountry, metadata) {\n _classCallCheck(this, AsYouType);\n\n this.metadata = new Metadata(metadata);\n\n var _this$getCountryAndCa = this.getCountryAndCallingCode(optionsOrDefaultCountry),\n _this$getCountryAndCa2 = _slicedToArray(_this$getCountryAndCa, 2),\n defaultCountry = _this$getCountryAndCa2[0],\n defaultCallingCode = _this$getCountryAndCa2[1];\n\n this.defaultCountry = defaultCountry;\n this.defaultCallingCode = defaultCallingCode;\n this.reset();\n }\n\n _createClass(AsYouType, [{\n key: \"getCountryAndCallingCode\",\n value: function getCountryAndCallingCode(optionsOrDefaultCountry) {\n // Set `defaultCountry` and `defaultCallingCode` options.\n var defaultCountry;\n var defaultCallingCode; // Turns out `null` also has type \"object\". Weird.\n\n if (optionsOrDefaultCountry) {\n if (_typeof(optionsOrDefaultCountry) === 'object') {\n defaultCountry = optionsOrDefaultCountry.defaultCountry;\n defaultCallingCode = optionsOrDefaultCountry.defaultCallingCode;\n } else {\n defaultCountry = optionsOrDefaultCountry;\n }\n }\n\n if (defaultCountry && !this.metadata.hasCountry(defaultCountry)) {\n defaultCountry = undefined;\n }\n\n if (defaultCallingCode) {\n /* istanbul ignore if */\n if (USE_NON_GEOGRAPHIC_COUNTRY_CODE) {\n if (this.metadata.isNonGeographicCallingCode(defaultCallingCode)) {\n defaultCountry = '001';\n }\n }\n }\n\n return [defaultCountry, defaultCallingCode];\n }\n /**\r\n * Inputs \"next\" phone number characters.\r\n * @param {string} text\r\n * @return {string} Formatted phone number characters that have been input so far.\r\n */\n\n }, {\n key: \"input\",\n value: function input(text) {\n var _this$parser$input = this.parser.input(text, this.state),\n digits = _this$parser$input.digits,\n justLeadingPlus = _this$parser$input.justLeadingPlus;\n\n if (justLeadingPlus) {\n this.formattedOutput = '+';\n } else if (digits) {\n this.determineTheCountryIfNeeded(); // Match the available formats by the currently available leading digits.\n\n if (this.state.nationalSignificantNumber) {\n this.formatter.narrowDownMatchingFormats(this.state);\n }\n\n var formattedNationalNumber;\n\n if (this.metadata.hasSelectedNumberingPlan()) {\n formattedNationalNumber = this.formatter.format(digits, this.state);\n }\n\n if (formattedNationalNumber === undefined) {\n // See if another national (significant) number could be re-extracted.\n if (this.parser.reExtractNationalSignificantNumber(this.state)) {\n this.determineTheCountryIfNeeded(); // If it could, then re-try formatting the new national (significant) number.\n\n var nationalDigits = this.state.getNationalDigits();\n\n if (nationalDigits) {\n formattedNationalNumber = this.formatter.format(nationalDigits, this.state);\n }\n }\n }\n\n this.formattedOutput = formattedNationalNumber ? this.getFullNumber(formattedNationalNumber) : this.getNonFormattedNumber();\n }\n\n return this.formattedOutput;\n }\n }, {\n key: \"reset\",\n value: function reset() {\n var _this = this;\n\n this.state = new AsYouTypeState({\n onCountryChange: function onCountryChange(country) {\n // Before version `1.6.0`, the official `AsYouType` formatter API\n // included the `.country` property of an `AsYouType` instance.\n // Since that property (along with the others) have been moved to\n // `this.state`, `this.country` property is emulated for compatibility\n // with the old versions.\n _this.country = country;\n },\n onCallingCodeChange: function onCallingCodeChange(callingCode, country) {\n _this.metadata.selectNumberingPlan(country, callingCode);\n\n _this.formatter.reset(_this.metadata.numberingPlan, _this.state);\n\n _this.parser.reset(_this.metadata.numberingPlan);\n }\n });\n this.formatter = new AsYouTypeFormatter({\n state: this.state,\n metadata: this.metadata\n });\n this.parser = new AsYouTypeParser({\n defaultCountry: this.defaultCountry,\n defaultCallingCode: this.defaultCallingCode,\n metadata: this.metadata,\n state: this.state,\n onNationalSignificantNumberChange: function onNationalSignificantNumberChange() {\n _this.determineTheCountryIfNeeded();\n\n _this.formatter.reset(_this.metadata.numberingPlan, _this.state);\n }\n });\n this.state.reset(this.defaultCountry, this.defaultCallingCode);\n this.formattedOutput = '';\n return this;\n }\n /**\r\n * Returns `true` if the phone number is being input in international format.\r\n * In other words, returns `true` if and only if the parsed phone number starts with a `\"+\"`.\r\n * @return {boolean}\r\n */\n\n }, {\n key: \"isInternational\",\n value: function isInternational() {\n return this.state.international;\n }\n /**\r\n * Returns the \"calling code\" part of the phone number when it's being input\r\n * in an international format.\r\n * If no valid calling code has been entered so far, returns `undefined`.\r\n * @return {string} [callingCode]\r\n */\n\n }, {\n key: \"getCallingCode\",\n value: function getCallingCode() {\n // If the number is being input in national format and some \"default calling code\"\n // has been passed to `AsYouType` constructor, then `this.state.callingCode`\n // is equal to that \"default calling code\".\n //\n // If the number is being input in national format and no \"default calling code\"\n // has been passed to `AsYouType` constructor, then returns `undefined`,\n // even if a \"default country\" has been passed to `AsYouType` constructor.\n //\n if (this.isInternational()) {\n return this.state.callingCode;\n }\n } // A legacy alias.\n\n }, {\n key: \"getCountryCallingCode\",\n value: function getCountryCallingCode() {\n return this.getCallingCode();\n }\n /**\r\n * Returns a two-letter country code of the phone number.\r\n * Returns `undefined` for \"non-geographic\" phone numbering plans.\r\n * Returns `undefined` if no phone number has been input yet.\r\n * @return {string} [country]\r\n */\n\n }, {\n key: \"getCountry\",\n value: function getCountry() {\n var digits = this.state.digits; // Return `undefined` if no digits have been input yet.\n\n if (digits) {\n return this._getCountry();\n }\n }\n /**\r\n * Returns a two-letter country code of the phone number.\r\n * Returns `undefined` for \"non-geographic\" phone numbering plans.\r\n * @return {string} [country]\r\n */\n\n }, {\n key: \"_getCountry\",\n value: function _getCountry() {\n var country = this.state.country;\n /* istanbul ignore if */\n\n if (USE_NON_GEOGRAPHIC_COUNTRY_CODE) {\n // `AsYouType.getCountry()` returns `undefined`\n // for \"non-geographic\" phone numbering plans.\n if (country === '001') {\n return;\n }\n }\n\n return country;\n }\n }, {\n key: \"determineTheCountryIfNeeded\",\n value: function determineTheCountryIfNeeded() {\n // Suppose a user enters a phone number in international format,\n // and there're several countries corresponding to that country calling code,\n // and a country has been derived from the number, and then\n // a user enters one more digit and the number is no longer\n // valid for the derived country, so the country should be re-derived\n // on every new digit in those cases.\n //\n // If the phone number is being input in national format,\n // then it could be a case when `defaultCountry` wasn't specified\n // when creating `AsYouType` instance, and just `defaultCallingCode` was specified,\n // and that \"calling code\" could correspond to a \"non-geographic entity\",\n // or there could be several countries corresponding to that country calling code.\n // In those cases, `this.country` is `undefined` and should be derived\n // from the number. Again, if country calling code is ambiguous, then\n // `this.country` should be re-derived with each new digit.\n //\n if (!this.state.country || this.isCountryCallingCodeAmbiguous()) {\n this.determineTheCountry();\n }\n } // Prepends `+CountryCode ` in case of an international phone number\n\n }, {\n key: \"getFullNumber\",\n value: function getFullNumber(formattedNationalNumber) {\n var _this2 = this;\n\n if (this.isInternational()) {\n var prefix = function prefix(text) {\n return _this2.formatter.getInternationalPrefixBeforeCountryCallingCode(_this2.state, {\n spacing: text ? true : false\n }) + text;\n };\n\n var callingCode = this.state.callingCode;\n\n if (!callingCode) {\n return prefix(\"\".concat(this.state.getDigitsWithoutInternationalPrefix()));\n }\n\n if (!formattedNationalNumber) {\n return prefix(callingCode);\n }\n\n return prefix(\"\".concat(callingCode, \" \").concat(formattedNationalNumber));\n }\n\n return formattedNationalNumber;\n }\n }, {\n key: \"getNonFormattedNationalNumberWithPrefix\",\n value: function getNonFormattedNationalNumberWithPrefix() {\n var _this$state = this.state,\n nationalSignificantNumber = _this$state.nationalSignificantNumber,\n complexPrefixBeforeNationalSignificantNumber = _this$state.complexPrefixBeforeNationalSignificantNumber,\n nationalPrefix = _this$state.nationalPrefix;\n var number = nationalSignificantNumber;\n var prefix = complexPrefixBeforeNationalSignificantNumber || nationalPrefix;\n\n if (prefix) {\n number = prefix + number;\n }\n\n return number;\n }\n }, {\n key: \"getNonFormattedNumber\",\n value: function getNonFormattedNumber() {\n var nationalSignificantNumberMatchesInput = this.state.nationalSignificantNumberMatchesInput;\n return this.getFullNumber(nationalSignificantNumberMatchesInput ? this.getNonFormattedNationalNumberWithPrefix() : this.state.getNationalDigits());\n }\n }, {\n key: \"getNonFormattedTemplate\",\n value: function getNonFormattedTemplate() {\n var number = this.getNonFormattedNumber();\n\n if (number) {\n return number.replace(/[\\+\\d]/g, DIGIT_PLACEHOLDER);\n }\n }\n }, {\n key: \"isCountryCallingCodeAmbiguous\",\n value: function isCountryCallingCodeAmbiguous() {\n var callingCode = this.state.callingCode;\n var countryCodes = this.metadata.getCountryCodesForCallingCode(callingCode);\n return countryCodes && countryCodes.length > 1;\n } // Determines the country of the phone number\n // entered so far based on the country phone code\n // and the national phone number.\n\n }, {\n key: \"determineTheCountry\",\n value: function determineTheCountry() {\n this.state.setCountry(getCountryByCallingCode(this.isInternational() ? this.state.callingCode : this.defaultCallingCode, this.state.nationalSignificantNumber, this.metadata));\n }\n /**\r\n * Returns a E.164 phone number value for the user's input.\r\n *\r\n * For example, for country `\"US\"` and input `\"(222) 333-4444\"`\r\n * it will return `\"+12223334444\"`.\r\n *\r\n * For international phone number input, it will also auto-correct\r\n * some minor errors such as using a national prefix when writing\r\n * an international phone number. For example, if the user inputs\r\n * `\"+44 0 7400 000000\"` then it will return an auto-corrected\r\n * `\"+447400000000\"` phone number value.\r\n *\r\n * Will return `undefined` if no digits have been input,\r\n * or when inputting a phone number in national format and no\r\n * default country or default \"country calling code\" have been set.\r\n *\r\n * @return {string} [value]\r\n */\n\n }, {\n key: \"getNumberValue\",\n value: function getNumberValue() {\n var _this$state2 = this.state,\n digits = _this$state2.digits,\n callingCode = _this$state2.callingCode,\n country = _this$state2.country,\n nationalSignificantNumber = _this$state2.nationalSignificantNumber; // Will return `undefined` if no digits have been input.\n\n if (!digits) {\n return;\n }\n\n if (this.isInternational()) {\n if (callingCode) {\n return '+' + callingCode + nationalSignificantNumber;\n } else {\n return '+' + digits;\n }\n } else {\n if (country || callingCode) {\n var callingCode_ = country ? this.metadata.countryCallingCode() : callingCode;\n return '+' + callingCode_ + nationalSignificantNumber;\n }\n }\n }\n /**\r\n * Returns an instance of `PhoneNumber` class.\r\n * Will return `undefined` if no national (significant) number\r\n * digits have been entered so far, or if no `defaultCountry` has been\r\n * set and the user enters a phone number not in international format.\r\n */\n\n }, {\n key: \"getNumber\",\n value: function getNumber() {\n var _this$state3 = this.state,\n nationalSignificantNumber = _this$state3.nationalSignificantNumber,\n carrierCode = _this$state3.carrierCode,\n callingCode = _this$state3.callingCode; // `this._getCountry()` is basically same as `this.state.country`\n // with the only change that it return `undefined` in case of a\n // \"non-geographic\" numbering plan instead of `\"001\"` \"internal use\" value.\n\n var country = this._getCountry();\n\n if (!nationalSignificantNumber) {\n return;\n }\n\n if (!country && !callingCode) {\n return;\n }\n\n var phoneNumber = new PhoneNumber(country || callingCode, nationalSignificantNumber, this.metadata.metadata);\n\n if (carrierCode) {\n phoneNumber.carrierCode = carrierCode;\n } // Phone number extensions are not supported by \"As You Type\" formatter.\n\n\n return phoneNumber;\n }\n /**\r\n * Returns `true` if the phone number is \"possible\".\r\n * Is just a shortcut for `PhoneNumber.isPossible()`.\r\n * @return {boolean}\r\n */\n\n }, {\n key: \"isPossible\",\n value: function isPossible() {\n var phoneNumber = this.getNumber();\n\n if (!phoneNumber) {\n return false;\n }\n\n return phoneNumber.isPossible();\n }\n /**\r\n * Returns `true` if the phone number is \"valid\".\r\n * Is just a shortcut for `PhoneNumber.isValid()`.\r\n * @return {boolean}\r\n */\n\n }, {\n key: \"isValid\",\n value: function isValid() {\n var phoneNumber = this.getNumber();\n\n if (!phoneNumber) {\n return false;\n }\n\n return phoneNumber.isValid();\n }\n /**\r\n * @deprecated\r\n * This method is used in `react-phone-number-input/source/input-control.js`\r\n * in versions before `3.0.16`.\r\n */\n\n }, {\n key: \"getNationalNumber\",\n value: function getNationalNumber() {\n return this.state.nationalSignificantNumber;\n }\n /**\r\n * Returns the phone number characters entered by the user.\r\n * @return {string}\r\n */\n\n }, {\n key: \"getChars\",\n value: function getChars() {\n return (this.state.international ? '+' : '') + this.state.digits;\n }\n /**\r\n * Returns the template for the formatted phone number.\r\n * @return {string}\r\n */\n\n }, {\n key: \"getTemplate\",\n value: function getTemplate() {\n return this.formatter.getTemplate(this.state) || this.getNonFormattedTemplate() || '';\n }\n }]);\n\n return AsYouType;\n}();\n\nexport { AsYouType as default };\n//# sourceMappingURL=AsYouType.js.map","import Metadata from './metadata.js';\nimport matchesEntirely from './helpers/matchesEntirely.js';\nimport getNumberType from './helpers/getNumberType.js';\n/**\r\n * Checks if a given phone number is valid.\r\n *\r\n * If the `number` is a string, it will be parsed to an object,\r\n * but only if it contains only valid phone number characters (including punctuation).\r\n * If the `number` is an object, it is used as is.\r\n *\r\n * The optional `defaultCountry` argument is the default country.\r\n * I.e. it does not restrict to just that country,\r\n * e.g. in those cases where several countries share\r\n * the same phone numbering rules (NANPA, Britain, etc).\r\n * For example, even though the number `07624 369230`\r\n * belongs to the Isle of Man (\"IM\" country code)\r\n * calling `isValidNumber('07624369230', 'GB', metadata)`\r\n * still returns `true` because the country is not restricted to `GB`,\r\n * it's just that `GB` is the default one for the phone numbering rules.\r\n * For restricting the country see `isValidNumberForRegion()`\r\n * though restricting a country might not be a good idea.\r\n * https://github.com/googlei18n/libphonenumber/blob/master/FAQ.md#when-should-i-use-isvalidnumberforregion\r\n *\r\n * Examples:\r\n *\r\n * ```js\r\n * isValidNumber('+78005553535', metadata)\r\n * isValidNumber('8005553535', 'RU', metadata)\r\n * isValidNumber('88005553535', 'RU', metadata)\r\n * isValidNumber({ phone: '8005553535', country: 'RU' }, metadata)\r\n * ```\r\n */\n\nexport default function isValidNumber(input, options, metadata) {\n // If assigning the `{}` default value is moved to the arguments above,\n // code coverage would decrease for some weird reason.\n options = options || {};\n metadata = new Metadata(metadata); // This is just to support `isValidNumber({})`\n // for cases when `parseNumber()` returns `{}`.\n\n if (!input.country) {\n return false;\n }\n\n metadata.selectNumberingPlan(input.country, input.countryCallingCode); // By default, countries only have type regexps when it's required for\n // distinguishing different countries having the same `countryCallingCode`.\n\n if (metadata.hasTypes()) {\n return getNumberType(input, options, metadata.metadata) !== undefined;\n } // If there are no type regexps for this country in metadata then use\n // `nationalNumberPattern` as a \"better than nothing\" replacement.\n\n\n var national_number = options.v2 ? input.nationalNumber : input.phone;\n return matchesEntirely(national_number, metadata.nationalNumberPattern());\n}\n//# sourceMappingURL=validate_.js.map","import Metadata from '../metadata.js';\n/**\r\n * Pattern that makes it easy to distinguish whether a region has a single\r\n * international dialing prefix or not. If a region has a single international\r\n * prefix (e.g. 011 in USA), it will be represented as a string that contains\r\n * a sequence of ASCII digits, and possibly a tilde, which signals waiting for\r\n * the tone. If there are multiple available international prefixes in a\r\n * region, they will be represented as a regex string that always contains one\r\n * or more characters that are not ASCII digits or a tilde.\r\n */\n\nvar SINGLE_IDD_PREFIX_REG_EXP = /^[\\d]+(?:[~\\u2053\\u223C\\uFF5E][\\d]+)?$/; // For regions that have multiple IDD prefixes\n// a preferred IDD prefix is returned.\n\nexport default function getIddPrefix(country, callingCode, metadata) {\n var countryMetadata = new Metadata(metadata);\n countryMetadata.selectNumberingPlan(country, callingCode);\n\n if (countryMetadata.defaultIDDPrefix()) {\n return countryMetadata.defaultIDDPrefix();\n }\n\n if (SINGLE_IDD_PREFIX_REG_EXP.test(countryMetadata.IDDPrefix())) {\n return countryMetadata.IDDPrefix();\n }\n}\n//# sourceMappingURL=getIddPrefix.js.map","function _createForOfIteratorHelperLoose(o, allowArrayLike) { var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"]; if (it) return (it = it.call(o)).next.bind(it); if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") { if (it) o = it; var i = 0; return function () { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n// This is a port of Google Android `libphonenumber`'s\n// `phonenumberutil.js` of December 31th, 2018.\n//\n// https://github.com/googlei18n/libphonenumber/commits/master/javascript/i18n/phonenumbers/phonenumberutil.js\nimport matchesEntirely from './helpers/matchesEntirely.js';\nimport formatNationalNumberUsingFormat from './helpers/formatNationalNumberUsingFormat.js';\nimport Metadata, { getCountryCallingCode } from './metadata.js';\nimport getIddPrefix from './helpers/getIddPrefix.js';\nimport { formatRFC3966 } from './helpers/RFC3966.js';\nvar DEFAULT_OPTIONS = {\n formatExtension: function formatExtension(formattedNumber, extension, metadata) {\n return \"\".concat(formattedNumber).concat(metadata.ext()).concat(extension);\n }\n}; // Formats a phone number\n//\n// Example use cases:\n//\n// ```js\n// formatNumber('8005553535', 'RU', 'INTERNATIONAL')\n// formatNumber('8005553535', 'RU', 'INTERNATIONAL', metadata)\n// formatNumber({ phone: '8005553535', country: 'RU' }, 'INTERNATIONAL')\n// formatNumber({ phone: '8005553535', country: 'RU' }, 'INTERNATIONAL', metadata)\n// formatNumber('+78005553535', 'NATIONAL')\n// formatNumber('+78005553535', 'NATIONAL', metadata)\n// ```\n//\n\nexport default function formatNumber(input, format, options, metadata) {\n // Apply default options.\n if (options) {\n options = _objectSpread(_objectSpread({}, DEFAULT_OPTIONS), options);\n } else {\n options = DEFAULT_OPTIONS;\n }\n\n metadata = new Metadata(metadata);\n\n if (input.country && input.country !== '001') {\n // Validate `input.country`.\n if (!metadata.hasCountry(input.country)) {\n throw new Error(\"Unknown country: \".concat(input.country));\n }\n\n metadata.country(input.country);\n } else if (input.countryCallingCode) {\n metadata.selectNumberingPlan(input.countryCallingCode);\n } else return input.phone || '';\n\n var countryCallingCode = metadata.countryCallingCode();\n var nationalNumber = options.v2 ? input.nationalNumber : input.phone; // This variable should have been declared inside `case`s\n // but Babel has a bug and it says \"duplicate variable declaration\".\n\n var number;\n\n switch (format) {\n case 'NATIONAL':\n // Legacy argument support.\n // (`{ country: ..., phone: '' }`)\n if (!nationalNumber) {\n return '';\n }\n\n number = formatNationalNumber(nationalNumber, input.carrierCode, 'NATIONAL', metadata, options);\n return addExtension(number, input.ext, metadata, options.formatExtension);\n\n case 'INTERNATIONAL':\n // Legacy argument support.\n // (`{ country: ..., phone: '' }`)\n if (!nationalNumber) {\n return \"+\".concat(countryCallingCode);\n }\n\n number = formatNationalNumber(nationalNumber, null, 'INTERNATIONAL', metadata, options);\n number = \"+\".concat(countryCallingCode, \" \").concat(number);\n return addExtension(number, input.ext, metadata, options.formatExtension);\n\n case 'E.164':\n // `E.164` doesn't define \"phone number extensions\".\n return \"+\".concat(countryCallingCode).concat(nationalNumber);\n\n case 'RFC3966':\n return formatRFC3966({\n number: \"+\".concat(countryCallingCode).concat(nationalNumber),\n ext: input.ext\n });\n // For reference, here's Google's IDD formatter:\n // https://github.com/google/libphonenumber/blob/32719cf74e68796788d1ca45abc85dcdc63ba5b9/java/libphonenumber/src/com/google/i18n/phonenumbers/PhoneNumberUtil.java#L1546\n // Not saying that this IDD formatter replicates it 1:1, but it seems to work.\n // Who would even need to format phone numbers in IDD format anyway?\n\n case 'IDD':\n if (!options.fromCountry) {\n return; // throw new Error('`fromCountry` option not passed for IDD-prefixed formatting.')\n }\n\n var formattedNumber = formatIDD(nationalNumber, input.carrierCode, countryCallingCode, options.fromCountry, metadata);\n return addExtension(formattedNumber, input.ext, metadata, options.formatExtension);\n\n default:\n throw new Error(\"Unknown \\\"format\\\" argument passed to \\\"formatNumber()\\\": \\\"\".concat(format, \"\\\"\"));\n }\n}\n\nfunction formatNationalNumber(number, carrierCode, formatAs, metadata, options) {\n var format = chooseFormatForNumber(metadata.formats(), number);\n\n if (!format) {\n return number;\n }\n\n return formatNationalNumberUsingFormat(number, format, {\n useInternationalFormat: formatAs === 'INTERNATIONAL',\n withNationalPrefix: format.nationalPrefixIsOptionalWhenFormattingInNationalFormat() && options && options.nationalPrefix === false ? false : true,\n carrierCode: carrierCode,\n metadata: metadata\n });\n}\n\nfunction chooseFormatForNumber(availableFormats, nationalNnumber) {\n for (var _iterator = _createForOfIteratorHelperLoose(availableFormats), _step; !(_step = _iterator()).done;) {\n var format = _step.value;\n\n // Validate leading digits.\n // The test case for \"else path\" could be found by searching for\n // \"format.leadingDigitsPatterns().length === 0\".\n if (format.leadingDigitsPatterns().length > 0) {\n // The last leading_digits_pattern is used here, as it is the most detailed\n var lastLeadingDigitsPattern = format.leadingDigitsPatterns()[format.leadingDigitsPatterns().length - 1]; // If leading digits don't match then move on to the next phone number format\n\n if (nationalNnumber.search(lastLeadingDigitsPattern) !== 0) {\n continue;\n }\n } // Check that the national number matches the phone number format regular expression\n\n\n if (matchesEntirely(nationalNnumber, format.pattern())) {\n return format;\n }\n }\n}\n\nfunction addExtension(formattedNumber, ext, metadata, formatExtension) {\n return ext ? formatExtension(formattedNumber, ext, metadata) : formattedNumber;\n}\n\nfunction formatIDD(nationalNumber, carrierCode, countryCallingCode, fromCountry, metadata) {\n var fromCountryCallingCode = getCountryCallingCode(fromCountry, metadata.metadata); // When calling within the same country calling code.\n\n if (fromCountryCallingCode === countryCallingCode) {\n var formattedNumber = formatNationalNumber(nationalNumber, carrierCode, 'NATIONAL', metadata); // For NANPA regions, return the national format for these regions\n // but prefix it with the country calling code.\n\n if (countryCallingCode === '1') {\n return countryCallingCode + ' ' + formattedNumber;\n } // If regions share a country calling code, the country calling code need\n // not be dialled. This also applies when dialling within a region, so this\n // if clause covers both these cases. Technically this is the case for\n // dialling from La Reunion to other overseas departments of France (French\n // Guiana, Martinique, Guadeloupe), but not vice versa - so we don't cover\n // this edge case for now and for those cases return the version including\n // country calling code. Details here:\n // http://www.petitfute.com/voyage/225-info-pratiques-reunion\n //\n\n\n return formattedNumber;\n }\n\n var iddPrefix = getIddPrefix(fromCountry, undefined, metadata.metadata);\n\n if (iddPrefix) {\n return \"\".concat(iddPrefix, \" \").concat(countryCallingCode, \" \").concat(formatNationalNumber(nationalNumber, null, 'INTERNATIONAL', metadata));\n }\n}\n//# sourceMappingURL=format_.js.map","function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\n\nimport Metadata from './metadata.js';\nimport isPossibleNumber from './isPossibleNumber_.js';\nimport isValidNumber from './validate_.js';\nimport isValidNumberForRegion from './isValidNumberForRegion_.js';\nimport getNumberType from './helpers/getNumberType.js';\nimport formatNumber from './format_.js';\nvar USE_NON_GEOGRAPHIC_COUNTRY_CODE = false;\n\nvar PhoneNumber = /*#__PURE__*/function () {\n function PhoneNumber(countryCallingCode, nationalNumber, metadata) {\n _classCallCheck(this, PhoneNumber);\n\n if (!countryCallingCode) {\n throw new TypeError('`country` or `countryCallingCode` not passed');\n }\n\n if (!nationalNumber) {\n throw new TypeError('`nationalNumber` not passed');\n }\n\n if (!metadata) {\n throw new TypeError('`metadata` not passed');\n }\n\n var _metadata = new Metadata(metadata); // If country code is passed then derive `countryCallingCode` from it.\n // Also store the country code as `.country`.\n\n\n if (isCountryCode(countryCallingCode)) {\n this.country = countryCallingCode;\n\n _metadata.country(countryCallingCode);\n\n countryCallingCode = _metadata.countryCallingCode();\n } else {\n /* istanbul ignore if */\n if (USE_NON_GEOGRAPHIC_COUNTRY_CODE) {\n if (_metadata.isNonGeographicCallingCode(countryCallingCode)) {\n this.country = '001';\n }\n }\n }\n\n this.countryCallingCode = countryCallingCode;\n this.nationalNumber = nationalNumber;\n this.number = '+' + this.countryCallingCode + this.nationalNumber;\n this.metadata = metadata;\n }\n\n _createClass(PhoneNumber, [{\n key: \"setExt\",\n value: function setExt(ext) {\n this.ext = ext;\n }\n }, {\n key: \"isPossible\",\n value: function isPossible() {\n return isPossibleNumber(this, {\n v2: true\n }, this.metadata);\n }\n }, {\n key: \"isValid\",\n value: function isValid() {\n return isValidNumber(this, {\n v2: true\n }, this.metadata);\n }\n }, {\n key: \"isNonGeographic\",\n value: function isNonGeographic() {\n var metadata = new Metadata(this.metadata);\n return metadata.isNonGeographicCallingCode(this.countryCallingCode);\n }\n }, {\n key: \"isEqual\",\n value: function isEqual(phoneNumber) {\n return this.number === phoneNumber.number && this.ext === phoneNumber.ext;\n } // // Is just an alias for `this.isValid() && this.country === country`.\n // // https://github.com/googlei18n/libphonenumber/blob/master/FAQ.md#when-should-i-use-isvalidnumberforregion\n // isValidForRegion(country) {\n // \treturn isValidNumberForRegion(this, country, { v2: true }, this.metadata)\n // }\n\n }, {\n key: \"getType\",\n value: function getType() {\n return getNumberType(this, {\n v2: true\n }, this.metadata);\n }\n }, {\n key: \"format\",\n value: function format(_format, options) {\n return formatNumber(this, _format, options ? _objectSpread(_objectSpread({}, options), {}, {\n v2: true\n }) : {\n v2: true\n }, this.metadata);\n }\n }, {\n key: \"formatNational\",\n value: function formatNational(options) {\n return this.format('NATIONAL', options);\n }\n }, {\n key: \"formatInternational\",\n value: function formatInternational(options) {\n return this.format('INTERNATIONAL', options);\n }\n }, {\n key: \"getURI\",\n value: function getURI(options) {\n return this.format('RFC3966', options);\n }\n }]);\n\n return PhoneNumber;\n}();\n\nexport { PhoneNumber as default };\n\nvar isCountryCode = function isCountryCode(value) {\n return /^[A-Z]{2}$/.test(value);\n};\n//# sourceMappingURL=PhoneNumber.js.map","// The minimum length of the national significant number.\nexport var MIN_LENGTH_FOR_NSN = 2; // The ITU says the maximum length should be 15,\n// but one can find longer numbers in Germany.\n\nexport var MAX_LENGTH_FOR_NSN = 17; // The maximum length of the country calling code.\n\nexport var MAX_LENGTH_COUNTRY_CODE = 3; // Digits accepted in phone numbers\n// (ascii, fullwidth, arabic-indic, and eastern arabic digits).\n\nexport var VALID_DIGITS = \"0-9\\uFF10-\\uFF19\\u0660-\\u0669\\u06F0-\\u06F9\"; // `DASHES` will be right after the opening square bracket of the \"character class\"\n\nvar DASHES = \"-\\u2010-\\u2015\\u2212\\u30FC\\uFF0D\";\nvar SLASHES = \"\\uFF0F/\";\nvar DOTS = \"\\uFF0E.\";\nexport var WHITESPACE = \" \\xA0\\xAD\\u200B\\u2060\\u3000\";\nvar BRACKETS = \"()\\uFF08\\uFF09\\uFF3B\\uFF3D\\\\[\\\\]\"; // export const OPENING_BRACKETS = '(\\uFF08\\uFF3B\\\\\\['\n\nvar TILDES = \"~\\u2053\\u223C\\uFF5E\"; // Regular expression of acceptable punctuation found in phone numbers. This\n// excludes punctuation found as a leading character only. This consists of dash\n// characters, white space characters, full stops, slashes, square brackets,\n// parentheses and tildes. Full-width variants are also present.\n\nexport var VALID_PUNCTUATION = \"\".concat(DASHES).concat(SLASHES).concat(DOTS).concat(WHITESPACE).concat(BRACKETS).concat(TILDES);\nexport var PLUS_CHARS = \"+\\uFF0B\"; // const LEADING_PLUS_CHARS_PATTERN = new RegExp('^[' + PLUS_CHARS + ']+')\n//# sourceMappingURL=constants.js.map","function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\n\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== \"undefined\" && arr[Symbol.iterator] || arr[\"@@iterator\"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n\nfunction _createForOfIteratorHelperLoose(o, allowArrayLike) { var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"]; if (it) return (it = it.call(o)).next.bind(it); if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") { if (it) o = it; var i = 0; return function () { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nimport isViablePhoneNumber from './isViablePhoneNumber.js'; // https://www.ietf.org/rfc/rfc3966.txt\n\n/**\r\n * @param {string} text - Phone URI (RFC 3966).\r\n * @return {object} `{ ?number, ?ext }`.\r\n */\n\nexport function parseRFC3966(text) {\n var number;\n var ext; // Replace \"tel:\" with \"tel=\" for parsing convenience.\n\n text = text.replace(/^tel:/, 'tel=');\n\n for (var _iterator = _createForOfIteratorHelperLoose(text.split(';')), _step; !(_step = _iterator()).done;) {\n var part = _step.value;\n\n var _part$split = part.split('='),\n _part$split2 = _slicedToArray(_part$split, 2),\n name = _part$split2[0],\n value = _part$split2[1];\n\n switch (name) {\n case 'tel':\n number = value;\n break;\n\n case 'ext':\n ext = value;\n break;\n\n case 'phone-context':\n // Only \"country contexts\" are supported.\n // \"Domain contexts\" are ignored.\n if (value[0] === '+') {\n number = value + number;\n }\n\n break;\n }\n } // If the phone number is not viable, then abort.\n\n\n if (!isViablePhoneNumber(number)) {\n return {};\n }\n\n var result = {\n number: number\n };\n\n if (ext) {\n result.ext = ext;\n }\n\n return result;\n}\n/**\r\n * @param {object} - `{ ?number, ?extension }`.\r\n * @return {string} Phone URI (RFC 3966).\r\n */\n\nexport function formatRFC3966(_ref) {\n var number = _ref.number,\n ext = _ref.ext;\n\n if (!number) {\n return '';\n }\n\n if (number[0] !== '+') {\n throw new Error(\"\\\"formatRFC3966()\\\" expects \\\"number\\\" to be in E.164 format.\");\n }\n\n return \"tel:\".concat(number).concat(ext ? ';ext=' + ext : '');\n}\n//# sourceMappingURL=RFC3966.js.map","import { VALID_PUNCTUATION } from '../constants.js'; // Removes brackets and replaces dashes with spaces.\n//\n// E.g. \"(999) 111-22-33\" -> \"999 111 22 33\"\n//\n// For some reason Google's metadata contains ``s with brackets and dashes.\n// Meanwhile, there's no single opinion about using punctuation in international phone numbers.\n//\n// For example, Google's `` for USA is `+1 213-373-4253`.\n// And here's a quote from WikiPedia's \"North American Numbering Plan\" page:\n// https://en.wikipedia.org/wiki/North_American_Numbering_Plan\n//\n// \"The country calling code for all countries participating in the NANP is 1.\n// In international format, an NANP number should be listed as +1 301 555 01 00,\n// where 301 is an area code (Maryland).\"\n//\n// I personally prefer the international format without any punctuation.\n// For example, brackets are remnants of the old age, meaning that the\n// phone number part in brackets (so called \"area code\") can be omitted\n// if dialing within the same \"area\".\n// And hyphens were clearly introduced for splitting local numbers into memorizable groups.\n// For example, remembering \"5553535\" is difficult but \"555-35-35\" is much simpler.\n// Imagine a man taking a bus from home to work and seeing an ad with a phone number.\n// He has a couple of seconds to memorize that number until it passes by.\n// If it were spaces instead of hyphens the man wouldn't necessarily get it,\n// but with hyphens instead of spaces the grouping is more explicit.\n// I personally think that hyphens introduce visual clutter,\n// so I prefer replacing them with spaces in international numbers.\n// In the modern age all output is done on displays where spaces are clearly distinguishable\n// so hyphens can be safely replaced with spaces without losing any legibility.\n//\n\nexport default function applyInternationalSeparatorStyle(formattedNumber) {\n return formattedNumber.replace(new RegExp(\"[\".concat(VALID_PUNCTUATION, \"]+\"), 'g'), ' ').trim();\n}\n//# sourceMappingURL=applyInternationalSeparatorStyle.js.map","function _createForOfIteratorHelperLoose(o, allowArrayLike) { var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"]; if (it) return (it = it.call(o)).next.bind(it); if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") { if (it) o = it; var i = 0; return function () { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\n/**\r\n * Merges two arrays.\r\n * @param {*} a\r\n * @param {*} b\r\n * @return {*}\r\n */\nexport default function mergeArrays(a, b) {\n var merged = a.slice();\n\n for (var _iterator = _createForOfIteratorHelperLoose(b), _step; !(_step = _iterator()).done;) {\n var element = _step.value;\n\n if (a.indexOf(element) < 0) {\n merged.push(element);\n }\n }\n\n return merged.sort(function (a, b) {\n return a - b;\n }); // ES6 version, requires Set polyfill.\n // let merged = new Set(a)\n // for (const element of b) {\n // \tmerged.add(i)\n // }\n // return Array.from(merged).sort((a, b) => a - b)\n}\n//# sourceMappingURL=mergeArrays.js.map","import mergeArrays from './mergeArrays.js';\nexport default function checkNumberLength(nationalNumber, metadata) {\n return checkNumberLengthForType(nationalNumber, undefined, metadata);\n} // Checks whether a number is possible for the country based on its length.\n// Should only be called for the \"new\" metadata which has \"possible lengths\".\n\nexport function checkNumberLengthForType(nationalNumber, type, metadata) {\n var type_info = metadata.type(type); // There should always be \"\" set for every type element.\n // This is declared in the XML schema.\n // For size efficiency, where a sub-description (e.g. fixed-line)\n // has the same \"\" as the \"general description\", this is missing,\n // so we fall back to the \"general description\". Where no numbers of the type\n // exist at all, there is one possible length (-1) which is guaranteed\n // not to match the length of any real phone number.\n\n var possible_lengths = type_info && type_info.possibleLengths() || metadata.possibleLengths(); // let local_lengths = type_info && type.possibleLengthsLocal() || metadata.possibleLengthsLocal()\n // Metadata before version `1.0.18` didn't contain `possible_lengths`.\n\n if (!possible_lengths) {\n return 'IS_POSSIBLE';\n }\n\n if (type === 'FIXED_LINE_OR_MOBILE') {\n // No such country in metadata.\n\n /* istanbul ignore next */\n if (!metadata.type('FIXED_LINE')) {\n // The rare case has been encountered where no fixedLine data is available\n // (true for some non-geographic entities), so we just check mobile.\n return checkNumberLengthForType(nationalNumber, 'MOBILE', metadata);\n }\n\n var mobile_type = metadata.type('MOBILE');\n\n if (mobile_type) {\n // Merge the mobile data in if there was any. \"Concat\" creates a new\n // array, it doesn't edit possible_lengths in place, so we don't need a copy.\n // Note that when adding the possible lengths from mobile, we have\n // to again check they aren't empty since if they are this indicates\n // they are the same as the general desc and should be obtained from there.\n possible_lengths = mergeArrays(possible_lengths, mobile_type.possibleLengths()); // The current list is sorted; we need to merge in the new list and\n // re-sort (duplicates are okay). Sorting isn't so expensive because\n // the lists are very small.\n // if (local_lengths) {\n // \tlocal_lengths = mergeArrays(local_lengths, mobile_type.possibleLengthsLocal())\n // } else {\n // \tlocal_lengths = mobile_type.possibleLengthsLocal()\n // }\n }\n } // If the type doesn't exist then return 'INVALID_LENGTH'.\n else if (type && !type_info) {\n return 'INVALID_LENGTH';\n }\n\n var actual_length = nationalNumber.length; // In `libphonenumber-js` all \"local-only\" formats are dropped for simplicity.\n // // This is safe because there is never an overlap beween the possible lengths\n // // and the local-only lengths; this is checked at build time.\n // if (local_lengths && local_lengths.indexOf(nationalNumber.length) >= 0)\n // {\n // \treturn 'IS_POSSIBLE_LOCAL_ONLY'\n // }\n\n var minimum_length = possible_lengths[0];\n\n if (minimum_length === actual_length) {\n return 'IS_POSSIBLE';\n }\n\n if (minimum_length > actual_length) {\n return 'TOO_SHORT';\n }\n\n if (possible_lengths[possible_lengths.length - 1] < actual_length) {\n return 'TOO_LONG';\n } // We skip the first element since we've already checked it.\n\n\n return possible_lengths.indexOf(actual_length, 1) >= 0 ? 'IS_POSSIBLE' : 'INVALID_LENGTH';\n}\n//# sourceMappingURL=checkNumberLength.js.map","import { VALID_DIGITS } from '../../constants.js'; // The RFC 3966 format for extensions.\n\nvar RFC3966_EXTN_PREFIX = ';ext=';\n/**\r\n * Helper method for constructing regular expressions for parsing. Creates\r\n * an expression that captures up to max_length digits.\r\n * @return {string} RegEx pattern to capture extension digits.\r\n */\n\nvar getExtensionDigitsPattern = function getExtensionDigitsPattern(maxLength) {\n return \"([\".concat(VALID_DIGITS, \"]{1,\").concat(maxLength, \"})\");\n};\n/**\r\n * Helper initialiser method to create the regular-expression pattern to match\r\n * extensions.\r\n * Copy-pasted from Google's `libphonenumber`:\r\n * https://github.com/google/libphonenumber/blob/55b2646ec9393f4d3d6661b9c82ef9e258e8b829/javascript/i18n/phonenumbers/phonenumberutil.js#L759-L766\r\n * @return {string} RegEx pattern to capture extensions.\r\n */\n\n\nexport default function createExtensionPattern(purpose) {\n // We cap the maximum length of an extension based on the ambiguity of the way\n // the extension is prefixed. As per ITU, the officially allowed length for\n // extensions is actually 40, but we don't support this since we haven't seen real\n // examples and this introduces many false interpretations as the extension labels\n // are not standardized.\n\n /** @type {string} */\n var extLimitAfterExplicitLabel = '20';\n /** @type {string} */\n\n var extLimitAfterLikelyLabel = '15';\n /** @type {string} */\n\n var extLimitAfterAmbiguousChar = '9';\n /** @type {string} */\n\n var extLimitWhenNotSure = '6';\n /** @type {string} */\n\n var possibleSeparatorsBetweenNumberAndExtLabel = \"[ \\xA0\\\\t,]*\"; // Optional full stop (.) or colon, followed by zero or more spaces/tabs/commas.\n\n /** @type {string} */\n\n var possibleCharsAfterExtLabel = \"[:\\\\.\\uFF0E]?[ \\xA0\\\\t,-]*\";\n /** @type {string} */\n\n var optionalExtnSuffix = \"#?\"; // Here the extension is called out in more explicit way, i.e mentioning it obvious\n // patterns like \"ext.\".\n\n /** @type {string} */\n\n var explicitExtLabels = \"(?:e?xt(?:ensi(?:o\\u0301?|\\xF3))?n?|\\uFF45?\\uFF58\\uFF54\\uFF4E?|\\u0434\\u043E\\u0431|anexo)\"; // One-character symbols that can be used to indicate an extension, and less\n // commonly used or more ambiguous extension labels.\n\n /** @type {string} */\n\n var ambiguousExtLabels = \"(?:[x\\uFF58#\\uFF03~\\uFF5E]|int|\\uFF49\\uFF4E\\uFF54)\"; // When extension is not separated clearly.\n\n /** @type {string} */\n\n var ambiguousSeparator = \"[- ]+\"; // This is the same as possibleSeparatorsBetweenNumberAndExtLabel, but not matching\n // comma as extension label may have it.\n\n /** @type {string} */\n\n var possibleSeparatorsNumberExtLabelNoComma = \"[ \\xA0\\\\t]*\"; // \",,\" is commonly used for auto dialling the extension when connected. First\n // comma is matched through possibleSeparatorsBetweenNumberAndExtLabel, so we do\n // not repeat it here. Semi-colon works in Iphone and Android also to pop up a\n // button with the extension number following.\n\n /** @type {string} */\n\n var autoDiallingAndExtLabelsFound = \"(?:,{2}|;)\";\n /** @type {string} */\n\n var rfcExtn = RFC3966_EXTN_PREFIX + getExtensionDigitsPattern(extLimitAfterExplicitLabel);\n /** @type {string} */\n\n var explicitExtn = possibleSeparatorsBetweenNumberAndExtLabel + explicitExtLabels + possibleCharsAfterExtLabel + getExtensionDigitsPattern(extLimitAfterExplicitLabel) + optionalExtnSuffix;\n /** @type {string} */\n\n var ambiguousExtn = possibleSeparatorsBetweenNumberAndExtLabel + ambiguousExtLabels + possibleCharsAfterExtLabel + getExtensionDigitsPattern(extLimitAfterAmbiguousChar) + optionalExtnSuffix;\n /** @type {string} */\n\n var americanStyleExtnWithSuffix = ambiguousSeparator + getExtensionDigitsPattern(extLimitWhenNotSure) + \"#\";\n /** @type {string} */\n\n var autoDiallingExtn = possibleSeparatorsNumberExtLabelNoComma + autoDiallingAndExtLabelsFound + possibleCharsAfterExtLabel + getExtensionDigitsPattern(extLimitAfterLikelyLabel) + optionalExtnSuffix;\n /** @type {string} */\n\n var onlyCommasExtn = possibleSeparatorsNumberExtLabelNoComma + \"(?:,)+\" + possibleCharsAfterExtLabel + getExtensionDigitsPattern(extLimitAfterAmbiguousChar) + optionalExtnSuffix; // The first regular expression covers RFC 3966 format, where the extension is added\n // using \";ext=\". The second more generic where extension is mentioned with explicit\n // labels like \"ext:\". In both the above cases we allow more numbers in extension than\n // any other extension labels. The third one captures when single character extension\n // labels or less commonly used labels are used. In such cases we capture fewer\n // extension digits in order to reduce the chance of falsely interpreting two\n // numbers beside each other as a number + extension. The fourth one covers the\n // special case of American numbers where the extension is written with a hash\n // at the end, such as \"- 503#\". The fifth one is exclusively for extension\n // autodialling formats which are used when dialling and in this case we accept longer\n // extensions. The last one is more liberal on the number of commas that acts as\n // extension labels, so we have a strict cap on the number of digits in such extensions.\n\n return rfcExtn + \"|\" + explicitExtn + \"|\" + ambiguousExtn + \"|\" + americanStyleExtnWithSuffix + \"|\" + autoDiallingExtn + \"|\" + onlyCommasExtn;\n}\n//# sourceMappingURL=createExtensionPattern.js.map","import stripIddPrefix from './stripIddPrefix.js';\nimport extractCountryCallingCodeFromInternationalNumberWithoutPlusSign from './extractCountryCallingCodeFromInternationalNumberWithoutPlusSign.js';\nimport Metadata from '../metadata.js';\nimport { MAX_LENGTH_COUNTRY_CODE } from '../constants.js';\n/**\r\n * Converts a phone number digits (possibly with a `+`)\r\n * into a calling code and the rest phone number digits.\r\n * The \"rest phone number digits\" could include\r\n * a national prefix, carrier code, and national\r\n * (significant) number.\r\n * @param {string} number — Phone number digits (possibly with a `+`).\r\n * @param {string} [country] — Default country.\r\n * @param {string} [callingCode] — Default calling code (some phone numbering plans are non-geographic).\r\n * @param {object} metadata\r\n * @return {object} `{ countryCallingCode: string?, number: string }`\r\n * @example\r\n * // Returns `{ countryCallingCode: \"1\", number: \"2133734253\" }`.\r\n * extractCountryCallingCode('2133734253', 'US', null, metadata)\r\n * extractCountryCallingCode('2133734253', null, '1', metadata)\r\n * extractCountryCallingCode('+12133734253', null, null, metadata)\r\n * extractCountryCallingCode('+12133734253', 'RU', null, metadata)\r\n */\n\nexport default function extractCountryCallingCode(number, country, callingCode, metadata) {\n if (!number) {\n return {};\n } // If this is not an international phone number,\n // then either extract an \"IDD\" prefix, or extract a\n // country calling code from a number by autocorrecting it\n // by prepending a leading `+` in cases when it starts\n // with the country calling code.\n // https://wikitravel.org/en/International_dialling_prefix\n // https://github.com/catamphetamine/libphonenumber-js/issues/376\n\n\n if (number[0] !== '+') {\n // Convert an \"out-of-country\" dialing phone number\n // to a proper international phone number.\n var numberWithoutIDD = stripIddPrefix(number, country, callingCode, metadata); // If an IDD prefix was stripped then\n // convert the number to international one\n // for subsequent parsing.\n\n if (numberWithoutIDD && numberWithoutIDD !== number) {\n number = '+' + numberWithoutIDD;\n } else {\n // Check to see if the number starts with the country calling code\n // for the default country. If so, we remove the country calling code,\n // and do some checks on the validity of the number before and after.\n // https://github.com/catamphetamine/libphonenumber-js/issues/376\n if (country || callingCode) {\n var _extractCountryCallin = extractCountryCallingCodeFromInternationalNumberWithoutPlusSign(number, country, callingCode, metadata),\n countryCallingCode = _extractCountryCallin.countryCallingCode,\n shorterNumber = _extractCountryCallin.number;\n\n if (countryCallingCode) {\n return {\n countryCallingCode: countryCallingCode,\n number: shorterNumber\n };\n }\n }\n\n return {\n number: number\n };\n }\n } // Fast abortion: country codes do not begin with a '0'\n\n\n if (number[1] === '0') {\n return {};\n }\n\n metadata = new Metadata(metadata); // The thing with country phone codes\n // is that they are orthogonal to each other\n // i.e. there's no such country phone code A\n // for which country phone code B exists\n // where B starts with A.\n // Therefore, while scanning digits,\n // if a valid country code is found,\n // that means that it is the country code.\n //\n\n var i = 2;\n\n while (i - 1 <= MAX_LENGTH_COUNTRY_CODE && i <= number.length) {\n var _countryCallingCode = number.slice(1, i);\n\n if (metadata.hasCallingCode(_countryCallingCode)) {\n metadata.selectNumberingPlan(_countryCallingCode);\n return {\n countryCallingCode: _countryCallingCode,\n number: number.slice(i)\n };\n }\n\n i++;\n }\n\n return {};\n}\n//# sourceMappingURL=extractCountryCallingCode.js.map","import Metadata from '../metadata.js';\nimport matchesEntirely from './matchesEntirely.js';\nimport extractNationalNumber from './extractNationalNumber.js';\nimport checkNumberLength from './checkNumberLength.js';\nimport getCountryCallingCode from '../getCountryCallingCode.js';\n/**\r\n * Sometimes some people incorrectly input international phone numbers\r\n * without the leading `+`. This function corrects such input.\r\n * @param {string} number — Phone number digits.\r\n * @param {string?} country\r\n * @param {string?} callingCode\r\n * @param {object} metadata\r\n * @return {object} `{ countryCallingCode: string?, number: string }`.\r\n */\n\nexport default function extractCountryCallingCodeFromInternationalNumberWithoutPlusSign(number, country, callingCode, metadata) {\n var countryCallingCode = country ? getCountryCallingCode(country, metadata) : callingCode;\n\n if (number.indexOf(countryCallingCode) === 0) {\n metadata = new Metadata(metadata);\n metadata.selectNumberingPlan(country, callingCode);\n var possibleShorterNumber = number.slice(countryCallingCode.length);\n\n var _extractNationalNumbe = extractNationalNumber(possibleShorterNumber, metadata),\n possibleShorterNationalNumber = _extractNationalNumbe.nationalNumber;\n\n var _extractNationalNumbe2 = extractNationalNumber(number, metadata),\n nationalNumber = _extractNationalNumbe2.nationalNumber; // If the number was not valid before but is valid now,\n // or if it was too long before, we consider the number\n // with the country calling code stripped to be a better result\n // and keep that instead.\n // For example, in Germany (+49), `49` is a valid area code,\n // so if a number starts with `49`, it could be both a valid\n // national German number or an international number without\n // a leading `+`.\n\n\n if (!matchesEntirely(nationalNumber, metadata.nationalNumberPattern()) && matchesEntirely(possibleShorterNationalNumber, metadata.nationalNumberPattern()) || checkNumberLength(nationalNumber, metadata) === 'TOO_LONG') {\n return {\n countryCallingCode: countryCallingCode,\n number: possibleShorterNumber\n };\n }\n }\n\n return {\n number: number\n };\n}\n//# sourceMappingURL=extractCountryCallingCodeFromInternationalNumberWithoutPlusSign.js.map","import extractNationalNumberFromPossiblyIncompleteNumber from './extractNationalNumberFromPossiblyIncompleteNumber.js';\nimport matchesEntirely from './matchesEntirely.js';\nimport checkNumberLength from './checkNumberLength.js';\n/**\r\n * Strips national prefix and carrier code from a complete phone number.\r\n * The difference from the non-\"FromCompleteNumber\" function is that\r\n * it won't extract national prefix if the resultant number is too short\r\n * to be a complete number for the selected phone numbering plan.\r\n * @param {string} number — Complete phone number digits.\r\n * @param {Metadata} metadata — Metadata with a phone numbering plan selected.\r\n * @return {object} `{ nationalNumber: string, carrierCode: string? }`.\r\n */\n\nexport default function extractNationalNumber(number, metadata) {\n // Parsing national prefixes and carrier codes\n // is only required for local phone numbers\n // but some people don't understand that\n // and sometimes write international phone numbers\n // with national prefixes (or maybe even carrier codes).\n // http://ucken.blogspot.ru/2016/03/trunk-prefixes-in-skype4b.html\n // Google's original library forgives such mistakes\n // and so does this library, because it has been requested:\n // https://github.com/catamphetamine/libphonenumber-js/issues/127\n var _extractNationalNumbe = extractNationalNumberFromPossiblyIncompleteNumber(number, metadata),\n carrierCode = _extractNationalNumbe.carrierCode,\n nationalNumber = _extractNationalNumbe.nationalNumber;\n\n if (nationalNumber !== number) {\n if (!shouldHaveExtractedNationalPrefix(number, nationalNumber, metadata)) {\n // Don't strip the national prefix.\n return {\n nationalNumber: number\n };\n } // Check the national (significant) number length after extracting national prefix and carrier code.\n // Legacy generated metadata (before `1.0.18`) didn't support the \"possible lengths\" feature.\n\n\n if (metadata.possibleLengths()) {\n // The number remaining after stripping the national prefix and carrier code\n // should be long enough to have a possible length for the country.\n // Otherwise, don't strip the national prefix and carrier code,\n // since the original number could be a valid number.\n // This check has been copy-pasted \"as is\" from Google's original library:\n // https://github.com/google/libphonenumber/blob/876268eb1ad6cdc1b7b5bef17fc5e43052702d57/java/libphonenumber/src/com/google/i18n/phonenumbers/PhoneNumberUtil.java#L3236-L3250\n // It doesn't check for the \"possibility\" of the original `number`.\n // I guess it's fine not checking that one. It works as is anyway.\n if (!isPossibleIncompleteNationalNumber(nationalNumber, metadata)) {\n // Don't strip the national prefix.\n return {\n nationalNumber: number\n };\n }\n }\n }\n\n return {\n nationalNumber: nationalNumber,\n carrierCode: carrierCode\n };\n} // In some countries, the same digit could be a national prefix\n// or a leading digit of a valid phone number.\n// For example, in Russia, national prefix is `8`,\n// and also `800 555 35 35` is a valid number\n// in which `8` is not a national prefix, but the first digit\n// of a national (significant) number.\n// Same's with Belarus:\n// `82004910060` is a valid national (significant) number,\n// but `2004910060` is not.\n// To support such cases (to prevent the code from always stripping\n// national prefix), a condition is imposed: a national prefix\n// is not extracted when the original number is \"viable\" and the\n// resultant number is not, a \"viable\" national number being the one\n// that matches `national_number_pattern`.\n\nfunction shouldHaveExtractedNationalPrefix(nationalNumberBefore, nationalNumberAfter, metadata) {\n // The equivalent in Google's code is:\n // https://github.com/google/libphonenumber/blob/e326fa1fc4283bb05eb35cb3c15c18f98a31af33/java/libphonenumber/src/com/google/i18n/phonenumbers/PhoneNumberUtil.java#L2969-L3004\n if (matchesEntirely(nationalNumberBefore, metadata.nationalNumberPattern()) && !matchesEntirely(nationalNumberAfter, metadata.nationalNumberPattern())) {\n return false;\n } // This \"is possible\" national number (length) check has been commented out\n // because it's superceded by the (effectively) same check done in the\n // `extractNationalNumber()` function after it calls `shouldHaveExtractedNationalPrefix()`.\n // In other words, why run the same check twice if it could only be run once.\n // // Check the national (significant) number length after extracting national prefix and carrier code.\n // // Fixes a minor \"weird behavior\" bug: https://gitlab.com/catamphetamine/libphonenumber-js/-/issues/57\n // // (Legacy generated metadata (before `1.0.18`) didn't support the \"possible lengths\" feature).\n // if (metadata.possibleLengths()) {\n // \tif (isPossibleIncompleteNationalNumber(nationalNumberBefore, metadata) &&\n // \t\t!isPossibleIncompleteNationalNumber(nationalNumberAfter, metadata)) {\n // \t\treturn false\n // \t}\n // }\n\n\n return true;\n}\n\nfunction isPossibleIncompleteNationalNumber(nationalNumber, metadata) {\n switch (checkNumberLength(nationalNumber, metadata)) {\n case 'TOO_SHORT':\n case 'INVALID_LENGTH':\n // This library ignores \"local-only\" phone numbers (for simplicity).\n // See the readme for more info on what are \"local-only\" phone numbers.\n // case 'IS_POSSIBLE_LOCAL_ONLY':\n return false;\n\n default:\n return true;\n }\n}\n//# sourceMappingURL=extractNationalNumber.js.map","/**\r\n * Strips any national prefix (such as 0, 1) present in a\r\n * (possibly incomplete) number provided.\r\n * \"Carrier codes\" are only used in Colombia and Brazil,\r\n * and only when dialing within those countries from a mobile phone to a fixed line number.\r\n * Sometimes it won't actually strip national prefix\r\n * and will instead prepend some digits to the `number`:\r\n * for example, when number `2345678` is passed with `VI` country selected,\r\n * it will return `{ number: \"3402345678\" }`, because `340` area code is prepended.\r\n * @param {string} number — National number digits.\r\n * @param {object} metadata — Metadata with country selected.\r\n * @return {object} `{ nationalNumber: string, nationalPrefix: string? carrierCode: string? }`. Even if a national prefix was extracted, it's not necessarily present in the returned object, so don't rely on its presence in the returned object in order to find out whether a national prefix has been extracted or not.\r\n */\nexport default function extractNationalNumberFromPossiblyIncompleteNumber(number, metadata) {\n if (number && metadata.numberingPlan.nationalPrefixForParsing()) {\n // See METADATA.md for the description of\n // `national_prefix_for_parsing` and `national_prefix_transform_rule`.\n // Attempt to parse the first digits as a national prefix.\n var prefixPattern = new RegExp('^(?:' + metadata.numberingPlan.nationalPrefixForParsing() + ')');\n var prefixMatch = prefixPattern.exec(number);\n\n if (prefixMatch) {\n var nationalNumber;\n var carrierCode; // https://gitlab.com/catamphetamine/libphonenumber-js/-/blob/master/METADATA.md#national_prefix_for_parsing--national_prefix_transform_rule\n // If a `national_prefix_for_parsing` has any \"capturing groups\"\n // then it means that the national (significant) number is equal to\n // those \"capturing groups\" transformed via `national_prefix_transform_rule`,\n // and nothing could be said about the actual national prefix:\n // what is it and was it even there.\n // If a `national_prefix_for_parsing` doesn't have any \"capturing groups\",\n // then everything it matches is a national prefix.\n // To determine whether `national_prefix_for_parsing` matched any\n // \"capturing groups\", the value of the result of calling `.exec()`\n // is looked at, and if it has non-undefined values where there're\n // \"capturing groups\" in the regular expression, then it means\n // that \"capturing groups\" have been matched.\n // It's not possible to tell whether there'll be any \"capturing gropus\"\n // before the matching process, because a `national_prefix_for_parsing`\n // could exhibit both behaviors.\n\n var capturedGroupsCount = prefixMatch.length - 1;\n var hasCapturedGroups = capturedGroupsCount > 0 && prefixMatch[capturedGroupsCount];\n\n if (metadata.nationalPrefixTransformRule() && hasCapturedGroups) {\n nationalNumber = number.replace(prefixPattern, metadata.nationalPrefixTransformRule()); // If there's more than one captured group,\n // then carrier code is the second one.\n\n if (capturedGroupsCount > 1) {\n carrierCode = prefixMatch[1];\n }\n } // If there're no \"capturing groups\",\n // or if there're \"capturing groups\" but no\n // `national_prefix_transform_rule`,\n // then just strip the national prefix from the number,\n // and possibly a carrier code.\n // Seems like there could be more.\n else {\n // `prefixBeforeNationalNumber` is the whole substring matched by\n // the `national_prefix_for_parsing` regular expression.\n // There seem to be no guarantees that it's just a national prefix.\n // For example, if there's a carrier code, it's gonna be a\n // part of `prefixBeforeNationalNumber` too.\n var prefixBeforeNationalNumber = prefixMatch[0];\n nationalNumber = number.slice(prefixBeforeNationalNumber.length); // If there's at least one captured group,\n // then carrier code is the first one.\n\n if (hasCapturedGroups) {\n carrierCode = prefixMatch[1];\n }\n } // Tries to guess whether a national prefix was present in the input.\n // This is not something copy-pasted from Google's library:\n // they don't seem to have an equivalent for that.\n // So this isn't an \"officially approved\" way of doing something like that.\n // But since there seems no other existing method, this library uses it.\n\n\n var nationalPrefix;\n\n if (hasCapturedGroups) {\n var possiblePositionOfTheFirstCapturedGroup = number.indexOf(prefixMatch[1]);\n var possibleNationalPrefix = number.slice(0, possiblePositionOfTheFirstCapturedGroup); // Example: an Argentinian (AR) phone number `0111523456789`.\n // `prefixMatch[0]` is `01115`, and `$1` is `11`,\n // and the rest of the phone number is `23456789`.\n // The national number is transformed via `9$1` to `91123456789`.\n // National prefix `0` is detected being present at the start.\n // if (possibleNationalPrefix.indexOf(metadata.numberingPlan.nationalPrefix()) === 0) {\n\n if (possibleNationalPrefix === metadata.numberingPlan.nationalPrefix()) {\n nationalPrefix = metadata.numberingPlan.nationalPrefix();\n }\n } else {\n nationalPrefix = prefixMatch[0];\n }\n\n return {\n nationalNumber: nationalNumber,\n nationalPrefix: nationalPrefix,\n carrierCode: carrierCode\n };\n }\n }\n\n return {\n nationalNumber: number\n };\n}\n//# sourceMappingURL=extractNationalNumberFromPossiblyIncompleteNumber.js.map","import applyInternationalSeparatorStyle from './applyInternationalSeparatorStyle.js'; // This was originally set to $1 but there are some countries for which the\n// first group is not used in the national pattern (e.g. Argentina) so the $1\n// group does not match correctly. Therefore, we use `\\d`, so that the first\n// group actually used in the pattern will be matched.\n\nexport var FIRST_GROUP_PATTERN = /(\\$\\d)/;\nexport default function formatNationalNumberUsingFormat(number, format, _ref) {\n var useInternationalFormat = _ref.useInternationalFormat,\n withNationalPrefix = _ref.withNationalPrefix,\n carrierCode = _ref.carrierCode,\n metadata = _ref.metadata;\n var formattedNumber = number.replace(new RegExp(format.pattern()), useInternationalFormat ? format.internationalFormat() : // This library doesn't use `domestic_carrier_code_formatting_rule`,\n // because that one is only used when formatting phone numbers\n // for dialing from a mobile phone, and this is not a dialing library.\n // carrierCode && format.domesticCarrierCodeFormattingRule()\n // \t// First, replace the $CC in the formatting rule with the desired carrier code.\n // \t// Then, replace the $FG in the formatting rule with the first group\n // \t// and the carrier code combined in the appropriate way.\n // \t? format.format().replace(FIRST_GROUP_PATTERN, format.domesticCarrierCodeFormattingRule().replace('$CC', carrierCode))\n // \t: (\n // \t\twithNationalPrefix && format.nationalPrefixFormattingRule()\n // \t\t\t? format.format().replace(FIRST_GROUP_PATTERN, format.nationalPrefixFormattingRule())\n // \t\t\t: format.format()\n // \t)\n withNationalPrefix && format.nationalPrefixFormattingRule() ? format.format().replace(FIRST_GROUP_PATTERN, format.nationalPrefixFormattingRule()) : format.format());\n\n if (useInternationalFormat) {\n return applyInternationalSeparatorStyle(formattedNumber);\n }\n\n return formattedNumber;\n}\n//# sourceMappingURL=formatNationalNumberUsingFormat.js.map","function _createForOfIteratorHelperLoose(o, allowArrayLike) { var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"]; if (it) return (it = it.call(o)).next.bind(it); if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") { if (it) o = it; var i = 0; return function () { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nimport Metadata from '../metadata.js';\nimport getNumberType from './getNumberType.js';\nvar USE_NON_GEOGRAPHIC_COUNTRY_CODE = false;\nexport default function getCountryByCallingCode(callingCode, nationalPhoneNumber, metadata) {\n /* istanbul ignore if */\n if (USE_NON_GEOGRAPHIC_COUNTRY_CODE) {\n if (metadata.isNonGeographicCallingCode(callingCode)) {\n return '001';\n }\n } // Is always non-empty, because `callingCode` is always valid\n\n\n var possibleCountries = metadata.getCountryCodesForCallingCode(callingCode);\n\n if (!possibleCountries) {\n return;\n } // If there's just one country corresponding to the country code,\n // then just return it, without further phone number digits validation.\n\n\n if (possibleCountries.length === 1) {\n return possibleCountries[0];\n }\n\n return selectCountryFromList(possibleCountries, nationalPhoneNumber, metadata.metadata);\n}\n\nfunction selectCountryFromList(possibleCountries, nationalPhoneNumber, metadata) {\n // Re-create `metadata` because it will be selecting a `country`.\n metadata = new Metadata(metadata);\n\n for (var _iterator = _createForOfIteratorHelperLoose(possibleCountries), _step; !(_step = _iterator()).done;) {\n var country = _step.value;\n metadata.country(country); // Leading digits check would be the simplest and fastest one.\n // Leading digits patterns are only defined for about 20% of all countries.\n // https://gitlab.com/catamphetamine/libphonenumber-js/blob/master/METADATA.md#leading_digits\n // Matching \"leading digits\" is a sufficient but not necessary condition.\n\n if (metadata.leadingDigits()) {\n if (nationalPhoneNumber && nationalPhoneNumber.search(metadata.leadingDigits()) === 0) {\n return country;\n }\n } // Else perform full validation with all of those\n // fixed-line/mobile/etc regular expressions.\n else if (getNumberType({\n phone: nationalPhoneNumber,\n country: country\n }, undefined, metadata.metadata)) {\n return country;\n }\n }\n}\n//# sourceMappingURL=getCountryByCallingCode.js.map","function _createForOfIteratorHelperLoose(o, allowArrayLike) { var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"]; if (it) return (it = it.call(o)).next.bind(it); if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") { if (it) o = it; var i = 0; return function () { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nimport Metadata from '../metadata.js';\nimport matchesEntirely from './matchesEntirely.js';\nvar NON_FIXED_LINE_PHONE_TYPES = ['MOBILE', 'PREMIUM_RATE', 'TOLL_FREE', 'SHARED_COST', 'VOIP', 'PERSONAL_NUMBER', 'PAGER', 'UAN', 'VOICEMAIL']; // Finds out national phone number type (fixed line, mobile, etc)\n\nexport default function getNumberType(input, options, metadata) {\n // If assigning the `{}` default value is moved to the arguments above,\n // code coverage would decrease for some weird reason.\n options = options || {}; // When `parse()` returned `{}`\n // meaning that the phone number is not a valid one.\n\n if (!input.country) {\n return;\n }\n\n metadata = new Metadata(metadata);\n metadata.selectNumberingPlan(input.country, input.countryCallingCode);\n var nationalNumber = options.v2 ? input.nationalNumber : input.phone; // The following is copy-pasted from the original function:\n // https://github.com/googlei18n/libphonenumber/blob/3ea547d4fbaa2d0b67588904dfa5d3f2557c27ff/javascript/i18n/phonenumbers/phonenumberutil.js#L2835\n // Is this national number even valid for this country\n\n if (!matchesEntirely(nationalNumber, metadata.nationalNumberPattern())) {\n return;\n } // Is it fixed line number\n\n\n if (isNumberTypeEqualTo(nationalNumber, 'FIXED_LINE', metadata)) {\n // Because duplicate regular expressions are removed\n // to reduce metadata size, if \"mobile\" pattern is \"\"\n // then it means it was removed due to being a duplicate of the fixed-line pattern.\n //\n if (metadata.type('MOBILE') && metadata.type('MOBILE').pattern() === '') {\n return 'FIXED_LINE_OR_MOBILE';\n } // `MOBILE` type pattern isn't included if it matched `FIXED_LINE` one.\n // For example, for \"US\" country.\n // Old metadata (< `1.0.18`) had a specific \"types\" data structure\n // that happened to be `undefined` for `MOBILE` in that case.\n // Newer metadata (>= `1.0.18`) has another data structure that is\n // not `undefined` for `MOBILE` in that case (it's just an empty array).\n // So this `if` is just for backwards compatibility with old metadata.\n\n\n if (!metadata.type('MOBILE')) {\n return 'FIXED_LINE_OR_MOBILE';\n } // Check if the number happens to qualify as both fixed line and mobile.\n // (no such country in the minimal metadata set)\n\n /* istanbul ignore if */\n\n\n if (isNumberTypeEqualTo(nationalNumber, 'MOBILE', metadata)) {\n return 'FIXED_LINE_OR_MOBILE';\n }\n\n return 'FIXED_LINE';\n }\n\n for (var _iterator = _createForOfIteratorHelperLoose(NON_FIXED_LINE_PHONE_TYPES), _step; !(_step = _iterator()).done;) {\n var type = _step.value;\n\n if (isNumberTypeEqualTo(nationalNumber, type, metadata)) {\n return type;\n }\n }\n}\nexport function isNumberTypeEqualTo(nationalNumber, type, metadata) {\n type = metadata.type(type);\n\n if (!type || !type.pattern()) {\n return false;\n } // Check if any possible number lengths are present;\n // if so, we use them to avoid checking\n // the validation pattern if they don't match.\n // If they are absent, this means they match\n // the general description, which we have\n // already checked before a specific number type.\n\n\n if (type.possibleLengths() && type.possibleLengths().indexOf(nationalNumber.length) < 0) {\n return false;\n }\n\n return matchesEntirely(nationalNumber, type.pattern());\n}\n//# sourceMappingURL=getNumberType.js.map","import { MIN_LENGTH_FOR_NSN, VALID_DIGITS, VALID_PUNCTUATION, PLUS_CHARS } from '../constants.js';\nimport createExtensionPattern from './extension/createExtensionPattern.js'; // Regular expression of viable phone numbers. This is location independent.\n// Checks we have at least three leading digits, and only valid punctuation,\n// alpha characters and digits in the phone number. Does not include extension\n// data. The symbol 'x' is allowed here as valid punctuation since it is often\n// used as a placeholder for carrier codes, for example in Brazilian phone\n// numbers. We also allow multiple '+' characters at the start.\n//\n// Corresponds to the following:\n// [digits]{minLengthNsn}|\n// plus_sign*\n// (([punctuation]|[star])*[digits]){3,}([punctuation]|[star]|[digits]|[alpha])*\n//\n// The first reg-ex is to allow short numbers (two digits long) to be parsed if\n// they are entered as \"15\" etc, but only if there is no punctuation in them.\n// The second expression restricts the number of digits to three or more, but\n// then allows them to be in international form, and to have alpha-characters\n// and punctuation. We split up the two reg-exes here and combine them when\n// creating the reg-ex VALID_PHONE_NUMBER_PATTERN itself so we can prefix it\n// with ^ and append $ to each branch.\n//\n// \"Note VALID_PUNCTUATION starts with a -,\n// so must be the first in the range\" (c) Google devs.\n// (wtf did they mean by saying that; probably nothing)\n//\n\nvar MIN_LENGTH_PHONE_NUMBER_PATTERN = '[' + VALID_DIGITS + ']{' + MIN_LENGTH_FOR_NSN + '}'; //\n// And this is the second reg-exp:\n// (see MIN_LENGTH_PHONE_NUMBER_PATTERN for a full description of this reg-exp)\n//\n\nexport var VALID_PHONE_NUMBER = '[' + PLUS_CHARS + ']{0,1}' + '(?:' + '[' + VALID_PUNCTUATION + ']*' + '[' + VALID_DIGITS + ']' + '){3,}' + '[' + VALID_PUNCTUATION + VALID_DIGITS + ']*'; // This regular expression isn't present in Google's `libphonenumber`\n// and is only used to determine whether the phone number being input\n// is too short for it to even consider it a \"valid\" number.\n// This is just a way to differentiate between a really invalid phone\n// number like \"abcde\" and a valid phone number that a user has just\n// started inputting, like \"+1\" or \"1\": both these cases would be\n// considered `NOT_A_NUMBER` by Google's `libphonenumber`, but this\n// library can provide a more detailed error message — whether it's\n// really \"not a number\", or is it just a start of a valid phone number.\n\nvar VALID_PHONE_NUMBER_START_REG_EXP = new RegExp('^' + '[' + PLUS_CHARS + ']{0,1}' + '(?:' + '[' + VALID_PUNCTUATION + ']*' + '[' + VALID_DIGITS + ']' + '){1,2}' + '$', 'i');\nexport var VALID_PHONE_NUMBER_WITH_EXTENSION = VALID_PHONE_NUMBER + // Phone number extensions\n'(?:' + createExtensionPattern() + ')?'; // The combined regular expression for valid phone numbers:\n//\n\nvar VALID_PHONE_NUMBER_PATTERN = new RegExp( // Either a short two-digit-only phone number\n'^' + MIN_LENGTH_PHONE_NUMBER_PATTERN + '$' + '|' + // Or a longer fully parsed phone number (min 3 characters)\n'^' + VALID_PHONE_NUMBER_WITH_EXTENSION + '$', 'i'); // Checks to see if the string of characters could possibly be a phone number at\n// all. At the moment, checks to see that the string begins with at least 2\n// digits, ignoring any punctuation commonly found in phone numbers. This method\n// does not require the number to be normalized in advance - but does assume\n// that leading non-number symbols have been removed, such as by the method\n// `extract_possible_number`.\n//\n\nexport default function isViablePhoneNumber(number) {\n return number.length >= MIN_LENGTH_FOR_NSN && VALID_PHONE_NUMBER_PATTERN.test(number);\n} // This is just a way to differentiate between a really invalid phone\n// number like \"abcde\" and a valid phone number that a user has just\n// started inputting, like \"+1\" or \"1\": both these cases would be\n// considered `NOT_A_NUMBER` by Google's `libphonenumber`, but this\n// library can provide a more detailed error message — whether it's\n// really \"not a number\", or is it just a start of a valid phone number.\n\nexport function isViablePhoneNumberStart(number) {\n return VALID_PHONE_NUMBER_START_REG_EXP.test(number);\n}\n//# sourceMappingURL=isViablePhoneNumber.js.map","/**\r\n * Checks whether the entire input sequence can be matched\r\n * against the regular expression.\r\n * @return {boolean}\r\n */\nexport default function matchesEntirely(text, regular_expression) {\n // If assigning the `''` default value is moved to the arguments above,\n // code coverage would decrease for some weird reason.\n text = text || '';\n return new RegExp('^(?:' + regular_expression + ')$').test(text);\n}\n//# sourceMappingURL=matchesEntirely.js.map","function _createForOfIteratorHelperLoose(o, allowArrayLike) { var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"]; if (it) return (it = it.call(o)).next.bind(it); if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") { if (it) o = it; var i = 0; return function () { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\n// These mappings map a character (key) to a specific digit that should\n// replace it for normalization purposes. Non-European digits that\n// may be used in phone numbers are mapped to a European equivalent.\n//\n// E.g. in Iraq they don't write `+442323234` but rather `+٤٤٢٣٢٣٢٣٤`.\n//\nexport var DIGITS = {\n '0': '0',\n '1': '1',\n '2': '2',\n '3': '3',\n '4': '4',\n '5': '5',\n '6': '6',\n '7': '7',\n '8': '8',\n '9': '9',\n \"\\uFF10\": '0',\n // Fullwidth digit 0\n \"\\uFF11\": '1',\n // Fullwidth digit 1\n \"\\uFF12\": '2',\n // Fullwidth digit 2\n \"\\uFF13\": '3',\n // Fullwidth digit 3\n \"\\uFF14\": '4',\n // Fullwidth digit 4\n \"\\uFF15\": '5',\n // Fullwidth digit 5\n \"\\uFF16\": '6',\n // Fullwidth digit 6\n \"\\uFF17\": '7',\n // Fullwidth digit 7\n \"\\uFF18\": '8',\n // Fullwidth digit 8\n \"\\uFF19\": '9',\n // Fullwidth digit 9\n \"\\u0660\": '0',\n // Arabic-indic digit 0\n \"\\u0661\": '1',\n // Arabic-indic digit 1\n \"\\u0662\": '2',\n // Arabic-indic digit 2\n \"\\u0663\": '3',\n // Arabic-indic digit 3\n \"\\u0664\": '4',\n // Arabic-indic digit 4\n \"\\u0665\": '5',\n // Arabic-indic digit 5\n \"\\u0666\": '6',\n // Arabic-indic digit 6\n \"\\u0667\": '7',\n // Arabic-indic digit 7\n \"\\u0668\": '8',\n // Arabic-indic digit 8\n \"\\u0669\": '9',\n // Arabic-indic digit 9\n \"\\u06F0\": '0',\n // Eastern-Arabic digit 0\n \"\\u06F1\": '1',\n // Eastern-Arabic digit 1\n \"\\u06F2\": '2',\n // Eastern-Arabic digit 2\n \"\\u06F3\": '3',\n // Eastern-Arabic digit 3\n \"\\u06F4\": '4',\n // Eastern-Arabic digit 4\n \"\\u06F5\": '5',\n // Eastern-Arabic digit 5\n \"\\u06F6\": '6',\n // Eastern-Arabic digit 6\n \"\\u06F7\": '7',\n // Eastern-Arabic digit 7\n \"\\u06F8\": '8',\n // Eastern-Arabic digit 8\n \"\\u06F9\": '9' // Eastern-Arabic digit 9\n\n};\nexport function parseDigit(character) {\n return DIGITS[character];\n}\n/**\r\n * Parses phone number digits from a string.\r\n * Drops all punctuation leaving only digits.\r\n * Also converts wide-ascii and arabic-indic numerals to conventional numerals.\r\n * E.g. in Iraq they don't write `+442323234` but rather `+٤٤٢٣٢٣٢٣٤`.\r\n * @param {string} string\r\n * @return {string}\r\n * @example\r\n * ```js\r\n * parseDigits('8 (800) 555')\r\n * // Outputs '8800555'.\r\n * ```\r\n */\n\nexport default function parseDigits(string) {\n var result = ''; // Using `.split('')` here instead of normal `for ... of`\n // because the importing application doesn't neccessarily include an ES6 polyfill.\n // The `.split('')` approach discards \"exotic\" UTF-8 characters\n // (the ones consisting of four bytes) but digits\n // (including non-European ones) don't fall into that range\n // so such \"exotic\" characters would be discarded anyway.\n\n for (var _iterator = _createForOfIteratorHelperLoose(string.split('')), _step; !(_step = _iterator()).done;) {\n var character = _step.value;\n var digit = parseDigit(character);\n\n if (digit) {\n result += digit;\n }\n }\n\n return result;\n}\n//# sourceMappingURL=parseDigits.js.map","import Metadata from '../metadata.js';\nimport { VALID_DIGITS } from '../constants.js';\nvar CAPTURING_DIGIT_PATTERN = new RegExp('([' + VALID_DIGITS + '])');\nexport default function stripIddPrefix(number, country, callingCode, metadata) {\n if (!country) {\n return;\n } // Check if the number is IDD-prefixed.\n\n\n var countryMetadata = new Metadata(metadata);\n countryMetadata.selectNumberingPlan(country, callingCode);\n var IDDPrefixPattern = new RegExp(countryMetadata.IDDPrefix());\n\n if (number.search(IDDPrefixPattern) !== 0) {\n return;\n } // Strip IDD prefix.\n\n\n number = number.slice(number.match(IDDPrefixPattern)[0].length); // If there're any digits after an IDD prefix,\n // then those digits are a country calling code.\n // Since no country code starts with a `0`,\n // the code below validates that the next digit (if present) is not `0`.\n\n var matchedGroups = number.match(CAPTURING_DIGIT_PATTERN);\n\n if (matchedGroups && matchedGroups[1] != null && matchedGroups[1].length > 0) {\n if (matchedGroups[1] === '0') {\n return;\n }\n }\n\n return number;\n}\n//# sourceMappingURL=stripIddPrefix.js.map","import Metadata from './metadata.js';\nimport checkNumberLength from './helpers/checkNumberLength.js';\nexport default function isPossiblePhoneNumber(input, options, metadata) {\n /* istanbul ignore if */\n if (options === undefined) {\n options = {};\n }\n\n metadata = new Metadata(metadata);\n\n if (options.v2) {\n if (!input.countryCallingCode) {\n throw new Error('Invalid phone number object passed');\n }\n\n metadata.selectNumberingPlan(input.countryCallingCode);\n } else {\n if (!input.phone) {\n return false;\n }\n\n if (input.country) {\n if (!metadata.hasCountry(input.country)) {\n throw new Error(\"Unknown country: \".concat(input.country));\n }\n\n metadata.country(input.country);\n } else {\n if (!input.countryCallingCode) {\n throw new Error('Invalid phone number object passed');\n }\n\n metadata.selectNumberingPlan(input.countryCallingCode);\n }\n } // Old metadata (< 1.0.18) had no \"possible length\" data.\n\n\n if (metadata.possibleLengths()) {\n return isPossibleNumber(input.phone || input.nationalNumber, metadata);\n } else {\n // There was a bug between `1.7.35` and `1.7.37` where \"possible_lengths\"\n // were missing for \"non-geographical\" numbering plans.\n // Just assume the number is possible in such cases:\n // it's unlikely that anyone generated their custom metadata\n // in that short period of time (one day).\n // This code can be removed in some future major version update.\n if (input.countryCallingCode && metadata.isNonGeographicCallingCode(input.countryCallingCode)) {\n // \"Non-geographic entities\" did't have `possibleLengths`\n // due to a bug in metadata generation process.\n return true;\n } else {\n throw new Error('Missing \"possibleLengths\" in metadata. Perhaps the metadata has been generated before v1.0.18.');\n }\n }\n}\nexport function isPossibleNumber(nationalNumber, metadata) {\n //, isInternational) {\n switch (checkNumberLength(nationalNumber, metadata)) {\n case 'IS_POSSIBLE':\n return true;\n // This library ignores \"local-only\" phone numbers (for simplicity).\n // See the readme for more info on what are \"local-only\" phone numbers.\n // case 'IS_POSSIBLE_LOCAL_ONLY':\n // \treturn !isInternational\n\n default:\n return false;\n }\n}\n//# sourceMappingURL=isPossibleNumber_.js.map","// Copy-pasted from:\n// https://github.com/substack/semver-compare/blob/master/index.js\n//\n// Inlining this function because some users reported issues with\n// importing from `semver-compare` in a browser with ES6 \"native\" modules.\n//\n// Fixes `semver-compare` not being able to compare versions with alpha/beta/etc \"tags\".\n// https://github.com/catamphetamine/libphonenumber-js/issues/381\nexport default function (a, b) {\n a = a.split('-');\n b = b.split('-');\n var pa = a[0].split('.');\n var pb = b[0].split('.');\n\n for (var i = 0; i < 3; i++) {\n var na = Number(pa[i]);\n var nb = Number(pb[i]);\n if (na > nb) return 1;\n if (nb > na) return -1;\n if (!isNaN(na) && isNaN(nb)) return 1;\n if (isNaN(na) && !isNaN(nb)) return -1;\n }\n\n if (a[1] && b[1]) {\n return a[1] > b[1] ? 1 : a[1] < b[1] ? -1 : 0;\n }\n\n return !a[1] && b[1] ? 1 : a[1] && !b[1] ? -1 : 0;\n}\n//# sourceMappingURL=semver-compare.js.map","function _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\n\nimport compare from './tools/semver-compare.js'; // Added \"possibleLengths\" and renamed\n// \"country_phone_code_to_countries\" to \"country_calling_codes\".\n\nvar V2 = '1.0.18'; // Added \"idd_prefix\" and \"default_idd_prefix\".\n\nvar V3 = '1.2.0'; // Moved `001` country code to \"nonGeographic\" section of metadata.\n\nvar V4 = '1.7.35';\nvar DEFAULT_EXT_PREFIX = ' ext. ';\nvar CALLING_CODE_REG_EXP = /^\\d+$/;\n/**\r\n * See: https://gitlab.com/catamphetamine/libphonenumber-js/blob/master/METADATA.md\r\n */\n\nvar Metadata = /*#__PURE__*/function () {\n function Metadata(metadata) {\n _classCallCheck(this, Metadata);\n\n validateMetadata(metadata);\n this.metadata = metadata;\n setVersion.call(this, metadata);\n }\n\n _createClass(Metadata, [{\n key: \"getCountries\",\n value: function getCountries() {\n return Object.keys(this.metadata.countries).filter(function (_) {\n return _ !== '001';\n });\n }\n }, {\n key: \"getCountryMetadata\",\n value: function getCountryMetadata(countryCode) {\n return this.metadata.countries[countryCode];\n }\n }, {\n key: \"nonGeographic\",\n value: function nonGeographic() {\n if (this.v1 || this.v2 || this.v3) return; // `nonGeographical` was a typo.\n // It's present in metadata generated from `1.7.35` to `1.7.37`.\n // The test case could be found by searching for \"nonGeographical\".\n\n return this.metadata.nonGeographic || this.metadata.nonGeographical;\n }\n }, {\n key: \"hasCountry\",\n value: function hasCountry(country) {\n return this.getCountryMetadata(country) !== undefined;\n }\n }, {\n key: \"hasCallingCode\",\n value: function hasCallingCode(callingCode) {\n if (this.getCountryCodesForCallingCode(callingCode)) {\n return true;\n }\n\n if (this.nonGeographic()) {\n if (this.nonGeographic()[callingCode]) {\n return true;\n }\n } else {\n // A hacky workaround for old custom metadata (generated before V4).\n var countryCodes = this.countryCallingCodes()[callingCode];\n\n if (countryCodes && countryCodes.length === 1 && countryCodes[0] === '001') {\n return true;\n }\n }\n }\n }, {\n key: \"isNonGeographicCallingCode\",\n value: function isNonGeographicCallingCode(callingCode) {\n if (this.nonGeographic()) {\n return this.nonGeographic()[callingCode] ? true : false;\n } else {\n return this.getCountryCodesForCallingCode(callingCode) ? false : true;\n }\n } // Deprecated.\n\n }, {\n key: \"country\",\n value: function country(countryCode) {\n return this.selectNumberingPlan(countryCode);\n }\n }, {\n key: \"selectNumberingPlan\",\n value: function selectNumberingPlan(countryCode, callingCode) {\n // Supports just passing `callingCode` as the first argument.\n if (countryCode && CALLING_CODE_REG_EXP.test(countryCode)) {\n callingCode = countryCode;\n countryCode = null;\n }\n\n if (countryCode && countryCode !== '001') {\n if (!this.hasCountry(countryCode)) {\n throw new Error(\"Unknown country: \".concat(countryCode));\n }\n\n this.numberingPlan = new NumberingPlan(this.getCountryMetadata(countryCode), this);\n } else if (callingCode) {\n if (!this.hasCallingCode(callingCode)) {\n throw new Error(\"Unknown calling code: \".concat(callingCode));\n }\n\n this.numberingPlan = new NumberingPlan(this.getNumberingPlanMetadata(callingCode), this);\n } else {\n this.numberingPlan = undefined;\n }\n\n return this;\n }\n }, {\n key: \"getCountryCodesForCallingCode\",\n value: function getCountryCodesForCallingCode(callingCode) {\n var countryCodes = this.countryCallingCodes()[callingCode];\n\n if (countryCodes) {\n // Metadata before V4 included \"non-geographic entity\" calling codes\n // inside `country_calling_codes` (for example, `\"881\":[\"001\"]`).\n // Now the semantics of `country_calling_codes` has changed:\n // it's specifically for \"countries\" now.\n // Older versions of custom metadata will simply skip parsing\n // \"non-geographic entity\" phone numbers with new versions\n // of this library: it's not considered a bug,\n // because such numbers are extremely rare,\n // and developers extremely rarely use custom metadata.\n if (countryCodes.length === 1 && countryCodes[0].length === 3) {\n return;\n }\n\n return countryCodes;\n }\n }\n }, {\n key: \"getCountryCodeForCallingCode\",\n value: function getCountryCodeForCallingCode(callingCode) {\n var countryCodes = this.getCountryCodesForCallingCode(callingCode);\n\n if (countryCodes) {\n return countryCodes[0];\n }\n }\n }, {\n key: \"getNumberingPlanMetadata\",\n value: function getNumberingPlanMetadata(callingCode) {\n var countryCode = this.getCountryCodeForCallingCode(callingCode);\n\n if (countryCode) {\n return this.getCountryMetadata(countryCode);\n }\n\n if (this.nonGeographic()) {\n var metadata = this.nonGeographic()[callingCode];\n\n if (metadata) {\n return metadata;\n }\n } else {\n // A hacky workaround for old custom metadata (generated before V4).\n // In that metadata, there was no concept of \"non-geographic\" metadata\n // so metadata for `001` country code was stored along with other countries.\n // The test case can be found by searching for:\n // \"should work around `nonGeographic` metadata not existing\".\n var countryCodes = this.countryCallingCodes()[callingCode];\n\n if (countryCodes && countryCodes.length === 1 && countryCodes[0] === '001') {\n return this.metadata.countries['001'];\n }\n }\n } // Deprecated.\n\n }, {\n key: \"countryCallingCode\",\n value: function countryCallingCode() {\n return this.numberingPlan.callingCode();\n } // Deprecated.\n\n }, {\n key: \"IDDPrefix\",\n value: function IDDPrefix() {\n return this.numberingPlan.IDDPrefix();\n } // Deprecated.\n\n }, {\n key: \"defaultIDDPrefix\",\n value: function defaultIDDPrefix() {\n return this.numberingPlan.defaultIDDPrefix();\n } // Deprecated.\n\n }, {\n key: \"nationalNumberPattern\",\n value: function nationalNumberPattern() {\n return this.numberingPlan.nationalNumberPattern();\n } // Deprecated.\n\n }, {\n key: \"possibleLengths\",\n value: function possibleLengths() {\n return this.numberingPlan.possibleLengths();\n } // Deprecated.\n\n }, {\n key: \"formats\",\n value: function formats() {\n return this.numberingPlan.formats();\n } // Deprecated.\n\n }, {\n key: \"nationalPrefixForParsing\",\n value: function nationalPrefixForParsing() {\n return this.numberingPlan.nationalPrefixForParsing();\n } // Deprecated.\n\n }, {\n key: \"nationalPrefixTransformRule\",\n value: function nationalPrefixTransformRule() {\n return this.numberingPlan.nationalPrefixTransformRule();\n } // Deprecated.\n\n }, {\n key: \"leadingDigits\",\n value: function leadingDigits() {\n return this.numberingPlan.leadingDigits();\n } // Deprecated.\n\n }, {\n key: \"hasTypes\",\n value: function hasTypes() {\n return this.numberingPlan.hasTypes();\n } // Deprecated.\n\n }, {\n key: \"type\",\n value: function type(_type) {\n return this.numberingPlan.type(_type);\n } // Deprecated.\n\n }, {\n key: \"ext\",\n value: function ext() {\n return this.numberingPlan.ext();\n }\n }, {\n key: \"countryCallingCodes\",\n value: function countryCallingCodes() {\n if (this.v1) return this.metadata.country_phone_code_to_countries;\n return this.metadata.country_calling_codes;\n } // Deprecated.\n\n }, {\n key: \"chooseCountryByCountryCallingCode\",\n value: function chooseCountryByCountryCallingCode(callingCode) {\n return this.selectNumberingPlan(callingCode);\n }\n }, {\n key: \"hasSelectedNumberingPlan\",\n value: function hasSelectedNumberingPlan() {\n return this.numberingPlan !== undefined;\n }\n }]);\n\n return Metadata;\n}();\n\nexport { Metadata as default };\n\nvar NumberingPlan = /*#__PURE__*/function () {\n function NumberingPlan(metadata, globalMetadataObject) {\n _classCallCheck(this, NumberingPlan);\n\n this.globalMetadataObject = globalMetadataObject;\n this.metadata = metadata;\n setVersion.call(this, globalMetadataObject.metadata);\n }\n\n _createClass(NumberingPlan, [{\n key: \"callingCode\",\n value: function callingCode() {\n return this.metadata[0];\n } // Formatting information for regions which share\n // a country calling code is contained by only one region\n // for performance reasons. For example, for NANPA region\n // (\"North American Numbering Plan Administration\",\n // which includes USA, Canada, Cayman Islands, Bahamas, etc)\n // it will be contained in the metadata for `US`.\n\n }, {\n key: \"getDefaultCountryMetadataForRegion\",\n value: function getDefaultCountryMetadataForRegion() {\n return this.globalMetadataObject.getNumberingPlanMetadata(this.callingCode());\n } // Is always present.\n\n }, {\n key: \"IDDPrefix\",\n value: function IDDPrefix() {\n if (this.v1 || this.v2) return;\n return this.metadata[1];\n } // Is only present when a country supports multiple IDD prefixes.\n\n }, {\n key: \"defaultIDDPrefix\",\n value: function defaultIDDPrefix() {\n if (this.v1 || this.v2) return;\n return this.metadata[12];\n }\n }, {\n key: \"nationalNumberPattern\",\n value: function nationalNumberPattern() {\n if (this.v1 || this.v2) return this.metadata[1];\n return this.metadata[2];\n } // \"possible length\" data is always present in Google's metadata.\n\n }, {\n key: \"possibleLengths\",\n value: function possibleLengths() {\n if (this.v1) return;\n return this.metadata[this.v2 ? 2 : 3];\n }\n }, {\n key: \"_getFormats\",\n value: function _getFormats(metadata) {\n return metadata[this.v1 ? 2 : this.v2 ? 3 : 4];\n } // For countries of the same region (e.g. NANPA)\n // formats are all stored in the \"main\" country for that region.\n // E.g. \"RU\" and \"KZ\", \"US\" and \"CA\".\n\n }, {\n key: \"formats\",\n value: function formats() {\n var _this = this;\n\n var formats = this._getFormats(this.metadata) || this._getFormats(this.getDefaultCountryMetadataForRegion()) || [];\n return formats.map(function (_) {\n return new Format(_, _this);\n });\n }\n }, {\n key: \"nationalPrefix\",\n value: function nationalPrefix() {\n return this.metadata[this.v1 ? 3 : this.v2 ? 4 : 5];\n }\n }, {\n key: \"_getNationalPrefixFormattingRule\",\n value: function _getNationalPrefixFormattingRule(metadata) {\n return metadata[this.v1 ? 4 : this.v2 ? 5 : 6];\n } // For countries of the same region (e.g. NANPA)\n // national prefix formatting rule is stored in the \"main\" country for that region.\n // E.g. \"RU\" and \"KZ\", \"US\" and \"CA\".\n\n }, {\n key: \"nationalPrefixFormattingRule\",\n value: function nationalPrefixFormattingRule() {\n return this._getNationalPrefixFormattingRule(this.metadata) || this._getNationalPrefixFormattingRule(this.getDefaultCountryMetadataForRegion());\n }\n }, {\n key: \"_nationalPrefixForParsing\",\n value: function _nationalPrefixForParsing() {\n return this.metadata[this.v1 ? 5 : this.v2 ? 6 : 7];\n }\n }, {\n key: \"nationalPrefixForParsing\",\n value: function nationalPrefixForParsing() {\n // If `national_prefix_for_parsing` is not set explicitly,\n // then infer it from `national_prefix` (if any)\n return this._nationalPrefixForParsing() || this.nationalPrefix();\n }\n }, {\n key: \"nationalPrefixTransformRule\",\n value: function nationalPrefixTransformRule() {\n return this.metadata[this.v1 ? 6 : this.v2 ? 7 : 8];\n }\n }, {\n key: \"_getNationalPrefixIsOptionalWhenFormatting\",\n value: function _getNationalPrefixIsOptionalWhenFormatting() {\n return !!this.metadata[this.v1 ? 7 : this.v2 ? 8 : 9];\n } // For countries of the same region (e.g. NANPA)\n // \"national prefix is optional when formatting\" flag is\n // stored in the \"main\" country for that region.\n // E.g. \"RU\" and \"KZ\", \"US\" and \"CA\".\n\n }, {\n key: \"nationalPrefixIsOptionalWhenFormattingInNationalFormat\",\n value: function nationalPrefixIsOptionalWhenFormattingInNationalFormat() {\n return this._getNationalPrefixIsOptionalWhenFormatting(this.metadata) || this._getNationalPrefixIsOptionalWhenFormatting(this.getDefaultCountryMetadataForRegion());\n }\n }, {\n key: \"leadingDigits\",\n value: function leadingDigits() {\n return this.metadata[this.v1 ? 8 : this.v2 ? 9 : 10];\n }\n }, {\n key: \"types\",\n value: function types() {\n return this.metadata[this.v1 ? 9 : this.v2 ? 10 : 11];\n }\n }, {\n key: \"hasTypes\",\n value: function hasTypes() {\n // Versions 1.2.0 - 1.2.4: can be `[]`.\n\n /* istanbul ignore next */\n if (this.types() && this.types().length === 0) {\n return false;\n } // Versions <= 1.2.4: can be `undefined`.\n // Version >= 1.2.5: can be `0`.\n\n\n return !!this.types();\n }\n }, {\n key: \"type\",\n value: function type(_type2) {\n if (this.hasTypes() && getType(this.types(), _type2)) {\n return new Type(getType(this.types(), _type2), this);\n }\n }\n }, {\n key: \"ext\",\n value: function ext() {\n if (this.v1 || this.v2) return DEFAULT_EXT_PREFIX;\n return this.metadata[13] || DEFAULT_EXT_PREFIX;\n }\n }]);\n\n return NumberingPlan;\n}();\n\nvar Format = /*#__PURE__*/function () {\n function Format(format, metadata) {\n _classCallCheck(this, Format);\n\n this._format = format;\n this.metadata = metadata;\n }\n\n _createClass(Format, [{\n key: \"pattern\",\n value: function pattern() {\n return this._format[0];\n }\n }, {\n key: \"format\",\n value: function format() {\n return this._format[1];\n }\n }, {\n key: \"leadingDigitsPatterns\",\n value: function leadingDigitsPatterns() {\n return this._format[2] || [];\n }\n }, {\n key: \"nationalPrefixFormattingRule\",\n value: function nationalPrefixFormattingRule() {\n return this._format[3] || this.metadata.nationalPrefixFormattingRule();\n }\n }, {\n key: \"nationalPrefixIsOptionalWhenFormattingInNationalFormat\",\n value: function nationalPrefixIsOptionalWhenFormattingInNationalFormat() {\n return !!this._format[4] || this.metadata.nationalPrefixIsOptionalWhenFormattingInNationalFormat();\n }\n }, {\n key: \"nationalPrefixIsMandatoryWhenFormattingInNationalFormat\",\n value: function nationalPrefixIsMandatoryWhenFormattingInNationalFormat() {\n // National prefix is omitted if there's no national prefix formatting rule\n // set for this country, or when the national prefix formatting rule\n // contains no national prefix itself, or when this rule is set but\n // national prefix is optional for this phone number format\n // (and it is not enforced explicitly)\n return this.usesNationalPrefix() && !this.nationalPrefixIsOptionalWhenFormattingInNationalFormat();\n } // Checks whether national prefix formatting rule contains national prefix.\n\n }, {\n key: \"usesNationalPrefix\",\n value: function usesNationalPrefix() {\n return this.nationalPrefixFormattingRule() && // Check that national prefix formatting rule is not a \"dummy\" one.\n !FIRST_GROUP_ONLY_PREFIX_PATTERN.test(this.nationalPrefixFormattingRule()) // In compressed metadata, `this.nationalPrefixFormattingRule()` is `0`\n // when `national_prefix_formatting_rule` is not present.\n // So, `true` or `false` are returned explicitly here, so that\n // `0` number isn't returned.\n ? true : false;\n }\n }, {\n key: \"internationalFormat\",\n value: function internationalFormat() {\n return this._format[5] || this.format();\n }\n }]);\n\n return Format;\n}();\n/**\r\n * A pattern that is used to determine if the national prefix formatting rule\r\n * has the first group only, i.e., does not start with the national prefix.\r\n * Note that the pattern explicitly allows for unbalanced parentheses.\r\n */\n\n\nvar FIRST_GROUP_ONLY_PREFIX_PATTERN = /^\\(?\\$1\\)?$/;\n\nvar Type = /*#__PURE__*/function () {\n function Type(type, metadata) {\n _classCallCheck(this, Type);\n\n this.type = type;\n this.metadata = metadata;\n }\n\n _createClass(Type, [{\n key: \"pattern\",\n value: function pattern() {\n if (this.metadata.v1) return this.type;\n return this.type[0];\n }\n }, {\n key: \"possibleLengths\",\n value: function possibleLengths() {\n if (this.metadata.v1) return;\n return this.type[1] || this.metadata.possibleLengths();\n }\n }]);\n\n return Type;\n}();\n\nfunction getType(types, type) {\n switch (type) {\n case 'FIXED_LINE':\n return types[0];\n\n case 'MOBILE':\n return types[1];\n\n case 'TOLL_FREE':\n return types[2];\n\n case 'PREMIUM_RATE':\n return types[3];\n\n case 'PERSONAL_NUMBER':\n return types[4];\n\n case 'VOICEMAIL':\n return types[5];\n\n case 'UAN':\n return types[6];\n\n case 'PAGER':\n return types[7];\n\n case 'VOIP':\n return types[8];\n\n case 'SHARED_COST':\n return types[9];\n }\n}\n\nexport function validateMetadata(metadata) {\n if (!metadata) {\n throw new Error('[libphonenumber-js] `metadata` argument not passed. Check your arguments.');\n } // `country_phone_code_to_countries` was renamed to\n // `country_calling_codes` in `1.0.18`.\n\n\n if (!is_object(metadata) || !is_object(metadata.countries)) {\n 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(is_object(metadata) ? 'an object of shape: { ' + Object.keys(metadata).join(', ') + ' }' : 'a ' + type_of(metadata) + ': ' + metadata, \".\"));\n }\n} // Babel transforms `typeof` into some \"branches\"\n// so istanbul will show this as \"branch not covered\".\n\n/* istanbul ignore next */\n\nvar is_object = function is_object(_) {\n return _typeof(_) === 'object';\n}; // Babel transforms `typeof` into some \"branches\"\n// so istanbul will show this as \"branch not covered\".\n\n/* istanbul ignore next */\n\n\nvar type_of = function type_of(_) {\n return _typeof(_);\n};\n/**\r\n * Returns extension prefix for a country.\r\n * @param {string} country\r\n * @param {object} metadata\r\n * @return {string?}\r\n * @example\r\n * // Returns \" ext. \"\r\n * getExtPrefix(\"US\")\r\n */\n\n\nexport function getExtPrefix(country, metadata) {\n metadata = new Metadata(metadata);\n\n if (metadata.hasCountry(country)) {\n return metadata.country(country).ext();\n }\n\n return DEFAULT_EXT_PREFIX;\n}\n/**\r\n * Returns \"country calling code\" for a country.\r\n * Throws an error if the country doesn't exist or isn't supported by this library.\r\n * @param {string} country\r\n * @param {object} metadata\r\n * @return {string}\r\n * @example\r\n * // Returns \"44\"\r\n * getCountryCallingCode(\"GB\")\r\n */\n\nexport function getCountryCallingCode(country, metadata) {\n metadata = new Metadata(metadata);\n\n if (metadata.hasCountry(country)) {\n return metadata.country(country).countryCallingCode();\n }\n\n throw new Error(\"Unknown country: \".concat(country));\n}\nexport function isSupportedCountry(country, metadata) {\n // metadata = new Metadata(metadata)\n // return metadata.hasCountry(country)\n return metadata.countries[country] !== undefined;\n}\n\nfunction setVersion(metadata) {\n var version = metadata.version;\n\n if (typeof version === 'number') {\n this.v1 = version === 1;\n this.v2 = version === 2;\n this.v3 = version === 3;\n this.v4 = version === 4;\n } else {\n if (!version) {\n this.v1 = true;\n } else if (compare(version, V3) === -1) {\n this.v2 = true;\n } else if (compare(version, V4) === -1) {\n this.v3 = true;\n } else {\n this.v4 = true;\n }\n }\n} // const ISO_COUNTRY_CODE = /^[A-Z]{2}$/\n// function isCountryCode(countryCode) {\n// \treturn ISO_COUNTRY_CODE.test(countryCodeOrCountryCallingCode)\n// }\n//# sourceMappingURL=metadata.js.map","function _createForOfIteratorHelperLoose(o, allowArrayLike) { var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"]; if (it) return (it = it.call(o)).next.bind(it); if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") { if (it) o = it; var i = 0; return function () { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nimport { parseDigit } from './helpers/parseDigits.js';\n/**\r\n * Parses phone number characters from a string.\r\n * Drops all punctuation leaving only digits and the leading `+` sign (if any).\r\n * Also converts wide-ascii and arabic-indic numerals to conventional numerals.\r\n * E.g. in Iraq they don't write `+442323234` but rather `+٤٤٢٣٢٣٢٣٤`.\r\n * @param {string} string\r\n * @return {string}\r\n * @example\r\n * ```js\r\n * // Outputs '8800555'.\r\n * parseIncompletePhoneNumber('8 (800) 555')\r\n * // Outputs '+7800555'.\r\n * parseIncompletePhoneNumber('+7 800 555')\r\n * ```\r\n */\n\nexport default function parseIncompletePhoneNumber(string) {\n var result = ''; // Using `.split('')` here instead of normal `for ... of`\n // because the importing application doesn't neccessarily include an ES6 polyfill.\n // The `.split('')` approach discards \"exotic\" UTF-8 characters\n // (the ones consisting of four bytes) but digits\n // (including non-European ones) don't fall into that range\n // so such \"exotic\" characters would be discarded anyway.\n\n for (var _iterator = _createForOfIteratorHelperLoose(string.split('')), _step; !(_step = _iterator()).done;) {\n var character = _step.value;\n result += parsePhoneNumberCharacter(character, result) || '';\n }\n\n return result;\n}\n/**\r\n * Parses next character while parsing phone number digits (including a `+`)\r\n * from text: discards everything except `+` and digits, and `+` is only allowed\r\n * at the start of a phone number.\r\n * For example, is used in `react-phone-number-input` where it uses\r\n * [`input-format`](https://gitlab.com/catamphetamine/input-format).\r\n * @param {string} character - Yet another character from raw input string.\r\n * @param {string?} prevParsedCharacters - Previous parsed characters.\r\n * @param {object} meta - Optional custom use-case-specific metadata.\r\n * @return {string?} The parsed character.\r\n */\n\nexport function parsePhoneNumberCharacter(character, prevParsedCharacters) {\n // Only allow a leading `+`.\n if (character === '+') {\n // If this `+` is not the first parsed character\n // then discard it.\n if (prevParsedCharacters) {\n return;\n }\n\n return '+';\n } // Allow digits.\n\n\n return parseDigit(character);\n}\n//# sourceMappingURL=parseIncompletePhoneNumber.js.map","// This file is a workaround for a bug in web browsers' \"native\"\n// ES6 importing system which is uncapable of importing \"*.json\" files.\n// https://github.com/catamphetamine/libphonenumber-js/issues/239\nexport default {\"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,\"1|([457]\\\\d{6})$\",\"268$1\",0,\"268\"],\"AI\":[\"1\",\"011\",\"(?:264|[58]\\\\d\\\\d|900)\\\\d{7}\",[10],0,\"1\",0,\"1|([2457]\\\\d{6})$\",\"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,\"1|([267]\\\\d{6})$\",\"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(?: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,\"0|(183[12])\",0,0,0,[[\"(?:(?: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]))\\\\d{3}|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]))|(?:6[0-8]|[78]\\\\d)\\\\d{3}|9(?:[02-9]\\\\d{3}|1(?:(?:[0-58]\\\\d|6[0135-9])\\\\d|7(?:0[0-24-9]|[1-9]\\\\d)|9(?:[0-46-9]\\\\d|5[0-79])))))\\\\d{3}\",[9]],[\"4(?:83[0-38]|93[0-6])\\\\d{5}|4(?:[0-3]\\\\d|4[047-9]|5[0-25-9]|6[06-9]|7[02-9]|8[0-24-9]|9[0-27-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,\"1|([2-9]\\\\d{6})$\",\"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(?:28|4[14]|5)|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]|22\"],\"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{7}\",[8],[[\"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"[025-7]\"]]]],\"BG\":[\"359\",\"00\",\"[2-7]\\\\d{6,7}|[89]\\\\d{6,8}|2\\\\d{5}\",[6,7,8,9],[[\"(\\\\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[047]\"]]]],\"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\",\"(?:[25689]\\\\d|40)\\\\d{6}\",[8],[[\"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"[24-689]\"]]]],\"BL\":[\"590\",\"00\",\"(?:590|(?:69|80)\\\\d|976)\\\\d{6}\",[9],0,\"0\",0,0,0,0,0,[[\"590(?:2[7-9]|5[12]|87)\\\\d{4}\"],[\"69(?:0\\\\d\\\\d|1(?:2[2-9]|3[0-5]))\\\\d{4}\"],[\"80[0-5]\\\\d{6}\"],0,0,0,0,0,[\"976[01]\\\\d{5}\"]]],\"BM\":[\"1\",\"011\",\"(?:441|[58]\\\\d\\\\d|900)\\\\d{7}\",[10],0,\"1\",0,\"1|([2-8]\\\\d{6})$\",\"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)?\",\"(?:[2-467]\\\\d\\\\d|8001)\\\\d{5}\",[8,9],[[\"(\\\\d)(\\\\d{7})\",\"$1 $2\",[\"[23]|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-46-9]\\\\d\\\\d|5(?:[0-46-9]\\\\d|5[0-46-9]))\\\\d{8}|[1-9]\\\\d{9}|[3589]\\\\d{8}|[34]\\\\d{7}\",[8,9,10,11],[[\"(\\\\d{4})(\\\\d{4})\",\"$1-$2\",[\"300|4(?:0[02]|37)\",\"4(?:02|37)0|[34]00\"]],[\"(\\\\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,\"1|([3-8]\\\\d{6})$\",\"242$1\",0,\"242\"],\"BT\":[\"975\",\"00\",\"[17]\\\\d{7}|[2-8]\\\\d{6}\",[7,8],[[\"(\\\\d)(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"[2-68]|7[246]\"]],[\"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"1[67]|7\"]]]],\"BW\":[\"267\",\"00\",\"(?:0800|(?:[37]|800)\\\\d)\\\\d{6}|(?:[2-6]\\\\d|90)\\\\d{5}\",[7,8,10],[[\"(\\\\d{2})(\\\\d{5})\",\"$1 $2\",[\"90\"]],[\"(\\\\d{3})(\\\\d{4})\",\"$1 $2\",[\"[24-6]|3[15-79]\"]],[\"(\\\\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-8]\\\\d|90)\\\\d{8}|3\\\\d{6}\",[7,10],0,\"1\",0,0,0,0,0,[[\"(?:2(?:04|[23]6|[48]9|50|63)|3(?:06|43|6[578])|4(?:03|1[68]|3[178]|50|68|74)|5(?:06|1[49]|48|79|8[147])|6(?:04|13|39|47|72)|7(?:0[59]|78|8[02])|8(?:[06]7|19|25|73)|90[25])[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(?:00|2[125-7]|33|44|66|77|88)|622)[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,\"0|([59]\\\\d{7})$\",\"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(?:83[0-38]|93[0-6])\\\\d{5}|4(?:[0-3]\\\\d|4[047-9]|5[0-25-9]|6[06-9]|7[02-9]|8[0-24-9]|9[0-27-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]\\\\d{8}|[1-68]\\\\d{6}\",[7,9],[[\"(\\\\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{3})(\\\\d{4})\",\"$1 $2 $3\",[\"1\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"[89]\"],\"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],[[\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"8[047]|90\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"[2-79]|81\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4 $5\",[\"8\"],\"0$1\"]],\"0\"],\"CI\":[\"225\",\"00\",\"[02]\\\\d{9}\",[10],[[\"(\\\\d{2})(\\\\d{2})(\\\\d)(\\\\d{5})\",\"$1 $2 $3 $4\",[\"2\"]],[\"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{4})\",\"$1 $2 $3 $4\",[\"0\"]]]],\"CK\":[\"682\",\"00\",\"[2-578]\\\\d{4}\",[5],[[\"(\\\\d{2})(\\\\d{3})\",\"$1 $2\",[\"[2-578]\"]]]],\"CL\":[\"56\",\"(?:0|1(?:1[0-69]|2[02-5]|5[13-58]|69|7[0167]|8[018]))0\",\"12300\\\\d{6}|6\\\\d{9,10}|[2-9]\\\\d{8}\",[9,10,11],[[\"(\\\\d{5})(\\\\d{4})\",\"$1 $2\",[\"219\",\"2196\"],\"($1)\"],[\"(\\\\d{2})(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"44\"]],[\"(\\\\d)(\\\\d{4})(\\\\d{4})\",\"$1 $2 $3\",[\"2[1-36]\"],\"($1)\"],[\"(\\\\d)(\\\\d{4})(\\\\d{4})\",\"$1 $2 $3\",[\"9[2-9]\"]],[\"(\\\\d{2})(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"3[2-5]|[47]|5[1-3578]|6[13-57]|8(?:0[1-9]|[1-9])\"],\"($1)\"],[\"(\\\\d{3})(\\\\d{3})(\\\\d{3,4})\",\"$1 $2 $3\",[\"60|8\"]],[\"(\\\\d{4})(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"1\"]],[\"(\\\\d{3})(\\\\d{3})(\\\\d{2})(\\\\d{3})\",\"$1 $2 $3 $4\",[\"60\"]]]],\"CM\":[\"237\",\"00\",\"[26]\\\\d{8}|88\\\\d{6,7}\",[8,9],[[\"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"88\"]],[\"(\\\\d)(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4 $5\",[\"[26]|88\"]]]],\"CN\":[\"86\",\"00|1(?:[12]\\\\d|79)\\\\d\\\\d00\",\"1[127]\\\\d{8,9}|2\\\\d{9}(?:\\\\d{2})?|[12]\\\\d{6,7}|86\\\\d{6}|(?:1[03-689]\\\\d|6)\\\\d{7,9}|(?:[3-579]\\\\d|8[0-57-9])\\\\d{6,9}\",[7,8,9,10,11,12],[[\"(\\\\d{2})(\\\\d{5,6})\",\"$1 $2\",[\"(?:10|2[0-57-9])[19]\",\"(?:10|2[0-57-9])(?:10|9[56])\",\"(?:10|2[0-57-9])(?:100|9[56])\"],\"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,\"0|(1(?:[12]\\\\d|79)\\\\d\\\\d)\",0,0,0,0,\"00\"],\"CO\":[\"57\",\"00(?:4(?:[14]4|56)|[579])\",\"(?:60\\\\d\\\\d|9101)\\\\d{6}|(?:1\\\\d|3)\\\\d{9}\",[10,11],[[\"(\\\\d{3})(\\\\d{7})\",\"$1 $2\",[\"6\"],\"($1)\"],[\"(\\\\d{3})(\\\\d{7})\",\"$1 $2\",[\"[39]\"]],[\"(\\\\d)(\\\\d{3})(\\\\d{7})\",\"$1-$2-$3\",[\"1\"],\"0$1\",0,\"$1 $2 $3\"]],\"0\",0,\"0(4(?:[14]4|56)|[579])?\"],\"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\",\"[27]\\\\d{6,7}|[34]\\\\d{5,7}|(?:5|8\\\\d\\\\d)\\\\d{7}\",[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\",[\"5\"],\"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,\"0|([59]\\\\d{7})$\",\"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(?:83[0-38]|93[0-6])\\\\d{5}|4(?:[0-3]\\\\d|4[047-9]|5[0-25-9]|6[06-9]|7[02-9]|8[0-24-9]|9[0-27-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],[[\"(\\\\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[02-9]|3[2-689]|7[1-7])\\\\d{1,8}|(?:1|[368]\\\\d|4[0-8])\\\\d{3,13}|49(?:[015]\\\\d|[23]1|[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{5})(\\\\d{6})\",\"$1 $2\",[\"15[0568]\"],\"0$1\"],[\"(\\\\d{4})(\\\\d{7})\",\"$1 $2\",[\"15[1279]\"],\"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,\"1|([2-7]\\\\d{6})$\",\"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\",[\"[189]\"],\"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)(\\\\d{4,9})\",\"$1 $2\",[\"[2568][1-8]|3(?:0[1-9]|[1-9])|9\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{3,7})\",\"$1 $2\",[\"[12]00|[368]|70[07-9]\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{4,8})\",\"$1 $2\",[\"[1245]|7[135]\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{6,10})\",\"$1 $2\",[\"7\"],\"0$1\"]],\"0\",0,0,0,0,\"1[03-79]|[2-9]\",0,\"00\"],\"FJ\":[\"679\",\"0(?:0|52)\",\"45\\\\d{5}|(?:0800\\\\d|[235-9])\\\\d{6}\",[7,11],[[\"(\\\\d{3})(\\\\d{4})\",\"$1 $2\",[\"[235-9]|45\"]],[\"(\\\\d{4})(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"0\"]]],0,0,0,0,0,0,0,\"00\"],\"FK\":[\"500\",\"00\",\"[2-7]\\\\d{4}\",[5]],\"FM\":[\"691\",\"00\",\"(?:[39]\\\\d\\\\d|820)\\\\d{4}\",[7],[[\"(\\\\d{3})(\\\\d{4})\",\"$1 $2\",[\"[389]\"]]]],\"FO\":[\"298\",\"00\",\"[2-9]\\\\d{5}\",[6],[[\"(\\\\d{6})\",\"$1\",[\"[2-9]\"]]],0,0,\"(10(?:01|[12]0|88))\"],\"FR\":[\"33\",\"00\",\"[1-9]\\\\d{8}\",[9],[[\"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"8\"],\"0 $1\"],[\"(\\\\d)(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4 $5\",[\"[1-79]\"],\"0$1\"]],\"0\"],\"GA\":[\"241\",\"00\",\"(?:[067]\\\\d|11)\\\\d{6}|[2-7]\\\\d{6}\",[7,8],[[\"(\\\\d)(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"[2-7]\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"0\"]],[\"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"11|[67]\"],\"0$1\"]],0,0,\"0(11\\\\d{6}|60\\\\d{6}|61\\\\d{6}|6[256]\\\\d{6}|7[467]\\\\d{6})\",\"$1\"],\"GB\":[\"44\",\"00\",\"[1-357-9]\\\\d{9}|[18]\\\\d{8}|8\\\\d{6}\",[7,9,10],[[\"(\\\\d{3})(\\\\d{4})\",\"$1 $2\",[\"800\",\"8001\",\"80011\",\"800111\",\"8001111\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3\",[\"845\",\"8454\",\"84546\",\"845464\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{6})\",\"$1 $2\",[\"800\"],\"0$1\"],[\"(\\\\d{5})(\\\\d{4,5})\",\"$1 $2\",[\"1(?:38|5[23]|69|76|94)\",\"1(?:(?:38|69)7|5(?:24|39)|768|946)\",\"1(?:3873|5(?:242|39[4-6])|(?:697|768)[347]|9467)\"],\"0$1\"],[\"(\\\\d{4})(\\\\d{5,6})\",\"$1 $2\",[\"1(?:[2-69][02-9]|[78])\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{4})(\\\\d{4})\",\"$1 $2 $3\",[\"[25]|7(?:0|6[02-9])\",\"[25]|7(?:0|6(?:[03-9]|2[356]))\"],\"0$1\"],[\"(\\\\d{4})(\\\\d{6})\",\"$1 $2\",[\"7\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"[1389]\"],\"0$1\"]],\"0\",0,0,0,0,0,[[\"(?:1(?:1(?:3(?:[0-58]\\\\d\\\\d|73[0235])|4(?:[0-5]\\\\d\\\\d|69[7-9]|70[01359])|(?:5[0-26-9]|[78][0-49])\\\\d\\\\d|6(?:[0-4]\\\\d\\\\d|50[0-79]))|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\\\\d|1(?:[0-7]\\\\d\\\\d|8(?:[02]\\\\d|1[0-26-9])))|(?: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-2]|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,\"1|([2-9]\\\\d{6})$\",\"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|80\\\\d|976)\\\\d{6}\",[9],[[\"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"[569]\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"8\"],\"0$1\"]],\"0\"],\"GG\":[\"44\",\"00\",\"(?:1481|[357-9]\\\\d{3})\\\\d{6}|8\\\\d{6}(?:\\\\d{2})?\",[7,9,10],0,\"0\",0,\"0|([25-9]\\\\d{5})$\",\"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-2]|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\\\\d|606)\\\\d{5}\",[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|(?:69|80)\\\\d|976)\\\\d{6}\",[9],[[\"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"[569]\"],\"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[1289]|5[3-579]|6[0-289]|7[08]|8[0-689]|9\\\\d)\\\\d{4}\"],[\"69(?:0\\\\d\\\\d|1(?:2[2-9]|3[0-5]))\\\\d{4}\"],[\"80[0-5]\\\\d{6}\"],0,0,0,0,0,[\"976[01]\\\\d{5}\"]]],\"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\",\"(?:1\\\\d{3}|[2-7])\\\\d{7}\",[8,11],[[\"(\\\\d{4})(\\\\d{4})\",\"$1 $2\",[\"[2-7]\"]],[\"(\\\\d{4})(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"1\"]]]],\"GU\":[\"1\",\"011\",\"(?:[58]\\\\d\\\\d|671|900)\\\\d{7}\",[10],0,\"1\",0,\"1|([3-9]\\\\d{6})$\",\"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\",\"9008\\\\d{3}|(?:[2-467]\\\\d\\\\d|862)\\\\d{4}\",[7],[[\"(\\\\d{3})(\\\\d{4})\",\"$1 $2\",[\"[2-46-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\",\"(?:[24-69]\\\\d|3[0-79])\\\\d{7}|80\\\\d{5,7}|[1-79]\\\\d{7}|6\\\\d{5,6}\",[6,7,8,9],[[\"(\\\\d{2})(\\\\d{2})(\\\\d{2,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\",[\"[67]\"],\"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-5]\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"8\"],\"0$1\"]],\"0\"],\"HT\":[\"509\",\"00\",\"[2-489]\\\\d{7}\",[8],[[\"(\\\\d{2})(\\\\d{2})(\\\\d{4})\",\"$1 $2 $3\",[\"[2-489]\"]]]],\"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]|8\\\\d)\\\\d{4}|[1-36])\\\\d{6}|00\\\\d{10}|[1-9]\\\\d{8,10}|[2-9]\\\\d{7}\",[7,8,9,10,11,12,13],[[\"(\\\\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,\"0|([25-8]\\\\d{5})$\",\"1624$1\",0,\"74576|(?:16|7[56])24\"],\"IN\":[\"91\",\"00\",\"(?:000800|[2-9]\\\\d\\\\d)\\\\d{7}|1\\\\d{7,12}\",[8,9,10,11,12,13],[[\"(\\\\d{8})\",\"$1\",[\"5(?:0|2[23]|3[03]|[67]1|88)\",\"5(?:0|2(?:21|3)|3(?:0|3[23])|616|717|888)\",\"5(?:0|2(?:21|3)|3(?:0|3[23])|616|717|8888)\"],0,1],[\"(\\\\d{4})(\\\\d{4,5})\",\"$1 $2\",[\"180\",\"1800\"],0,1],[\"(\\\\d{3})(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"140\"],0,1],[\"(\\\\d{2})(\\\\d{4})(\\\\d{4})\",\"$1 $2 $3\",[\"11|2[02]|33|4[04]|79[1-7]|80[2-46]\",\"11|2[02]|33|4[04]|79(?:[1-6]|7[19])|80(?:[2-4]|6[0-589])\",\"11|2[02]|33|4[04]|79(?:[124-6]|3(?:[02-9]|1[0-24-9])|7(?:1|9[1-6]))|80(?:[2-4]|6[0-589])\"],\"0$1\",1],[\"(\\\\d{3})(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"1(?:2[0-249]|3[0-25]|4[145]|[68]|7[1257])|2(?:1[257]|3[013]|4[01]|5[0137]|6[0158]|78|8[1568])|3(?:26|4[1-3]|5[34]|6[01489]|7[02-46]|8[159])|4(?:1[36]|2[1-47]|5[12]|6[0-26-9]|7[0-24-9]|8[013-57]|9[014-7])|5(?:1[025]|22|[36][25]|4[28]|5[12]|[78]1)|6(?:12|[2-4]1|5[17]|6[13]|80)|7(?:12|3[134]|4[47]|61|88)|8(?:16|2[014]|3[126]|6[136]|7[078]|8[34]|91)|(?:43|59|75)[15]|(?:1[59]|29|67|72)[14]\",\"1(?:2[0-24]|3[0-25]|4[145]|[59][14]|6[1-9]|7[1257]|8[1-57-9])|2(?:1[257]|3[013]|4[01]|5[0137]|6[058]|78|8[1568]|9[14])|3(?:26|4[1-3]|5[34]|6[01489]|7[02-46]|8[159])|4(?:1[36]|2[1-47]|3[15]|5[12]|6[0-26-9]|7[0-24-9]|8[013-57]|9[014-7])|5(?:1[025]|22|[36][25]|4[28]|[578]1|9[15])|674|7(?:(?:2[14]|3[34]|5[15])[2-6]|61[346]|88[0-8])|8(?:70[2-6]|84[235-7]|91[3-7])|(?:1(?:29|60|8[06])|261|552|6(?:12|[2-47]1|5[17]|6[13]|80)|7(?:12|31|4[47])|8(?:16|2[014]|3[126]|6[136]|7[78]|83))[2-7]\",\"1(?:2[0-24]|3[0-25]|4[145]|[59][14]|6[1-9]|7[1257]|8[1-57-9])|2(?:1[257]|3[013]|4[01]|5[0137]|6[058]|78|8[1568]|9[14])|3(?:26|4[1-3]|5[34]|6[01489]|7[02-46]|8[159])|4(?:1[36]|2[1-47]|3[15]|5[12]|6[0-26-9]|7[0-24-9]|8[013-57]|9[014-7])|5(?:1[025]|22|[36][25]|4[28]|[578]1|9[15])|6(?:12(?:[2-6]|7[0-8])|74[2-7])|7(?:(?:2[14]|5[15])[2-6]|3171|61[346]|88(?:[2-7]|82))|8(?:70[2-6]|84(?:[2356]|7[19])|91(?:[3-6]|7[19]))|73[134][2-6]|(?:74[47]|8(?:16|2[014]|3[126]|6[136]|7[78]|83))(?:[2-6]|7[19])|(?:1(?:29|60|8[06])|261|552|6(?:[2-4]1|5[17]|6[13]|7(?:1|4[0189])|80)|7(?:12|88[01]))[2-7]\"],\"0$1\",1],[\"(\\\\d{4})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"1(?:[2-479]|5[0235-9])|[2-5]|6(?:1[1358]|2[2457-9]|3[2-5]|4[235-7]|5[2-689]|6[24578]|7[235689]|8[1-6])|7(?:1[013-9]|28|3[129]|4[1-35689]|5[29]|6[02-5]|70)|807\",\"1(?:[2-479]|5[0235-9])|[2-5]|6(?:1[1358]|2(?:[2457]|84|95)|3(?:[2-4]|55)|4[235-7]|5[2-689]|6[24578]|7[235689]|8[1-6])|7(?:1(?:[013-8]|9[6-9])|28[6-8]|3(?:17|2[0-49]|9[2-57])|4(?:1[2-4]|[29][0-7]|3[0-8]|[56]|8[0-24-7])|5(?:2[1-3]|9[0-6])|6(?:0[5689]|2[5-9]|3[02-8]|4|5[0-367])|70[13-7])|807[19]\",\"1(?:[2-479]|5(?:[0236-9]|5[013-9]))|[2-5]|6(?:2(?:84|95)|355|83)|73179|807(?:1|9[1-3])|(?:1552|6(?:1[1358]|2[2457]|3[2-4]|4[235-7]|5[2-689]|6[24578]|7[235689]|8[124-6])\\\\d|7(?:1(?:[013-8]\\\\d|9[6-9])|28[6-8]|3(?:2[0-49]|9[2-57])|4(?:1[2-4]|[29][0-7]|3[0-8]|[56]\\\\d|8[0-24-7])|5(?:2[1-3]|9[0-6])|6(?:0[5689]|2[5-9]|3[02-8]|4\\\\d|5[0-367])|70[13-7]))[2-7]\"],\"0$1\",1],[\"(\\\\d{5})(\\\\d{5})\",\"$1 $2\",[\"[6-9]\"],\"0$1\",1],[\"(\\\\d{4})(\\\\d{2,4})(\\\\d{4})\",\"$1 $2 $3\",[\"1(?:6|8[06])\",\"1(?:6|8[06]0)\"],0,1],[\"(\\\\d{4})(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3 $4\",[\"18\"],0,1]],\"0\"],\"IO\":[\"246\",\"00\",\"3\\\\d{6}\",[7],[[\"(\\\\d{3})(\\\\d{4})\",\"$1 $2\",[\"3\"]]]],\"IQ\":[\"964\",\"00\",\"(?:1|7\\\\d\\\\d)\\\\d{7}|[2-6]\\\\d{7,8}\",[8,9,10],[[\"(\\\\d)(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"1\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{3})(\\\\d{3,4})\",\"$1 $2 $3\",[\"[2-6]\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"7\"],\"0$1\"]],\"0\"],\"IR\":[\"98\",\"00\",\"[1-9]\\\\d{9}|(?:[1-8]\\\\d\\\\d|9)\\\\d{3,4}\",[4,5,6,7,10],[[\"(\\\\d{4,5})\",\"$1\",[\"96\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{4,5})\",\"$1 $2\",[\"(?:1[137]|2[13-68]|3[1458]|4[145]|5[1468]|6[16]|7[1467]|8[13467])[12689]\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{3})(\\\\d{3,4})\",\"$1 $2 $3\",[\"9\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{4})(\\\\d{4})\",\"$1 $2 $3\",[\"[1-8]\"],\"0$1\"]],\"0\"],\"IS\":[\"354\",\"00|1(?:0(?:01|[12]0)|100)\",\"(?:38\\\\d|[4-9])\\\\d{6}\",[7,9],[[\"(\\\\d{3})(\\\\d{4})\",\"$1 $2\",[\"[4-9]\"]],[\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"3\"]]],0,0,0,0,0,0,0,\"00\"],\"IT\":[\"39\",\"00\",\"0\\\\d{5,10}|1\\\\d{8,10}|3(?:[0-8]\\\\d{7,10}|9\\\\d{7,8})|(?:55|70)\\\\d{8}|8\\\\d{5}(?:\\\\d{2,4})?\",[6,7,8,9,10,11],[[\"(\\\\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]\"]],[\"(\\\\d{3})(\\\\d{3,4})(\\\\d{4})\",\"$1 $2 $3\",[\"0[13-57-9][0159]|14\"]],[\"(\\\\d{2})(\\\\d{4})(\\\\d{5})\",\"$1 $2 $3\",[\"0[26]\"]],[\"(\\\\d{4})(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"0\"]],[\"(\\\\d{3})(\\\\d{4})(\\\\d{4,5})\",\"$1 $2 $3\",[\"3\"]]],0,0,0,0,0,0,[[\"0669[0-79]\\\\d{1,6}|0(?:1(?:[0159]\\\\d|[27][1-5]|31|4[1-4]|6[1356]|8[2-57])|2\\\\d\\\\d|3(?:[0159]\\\\d|2[1-4]|3[12]|[48][1-6]|6[2-59]|7[1-7])|4(?:[0159]\\\\d|[23][1-9]|4[245]|6[1-5]|7[1-4]|81)|5(?:[0159]\\\\d|2[1-5]|3[2-6]|4[1-79]|6[4-6]|7[1-578]|8[3-8])|6(?:[0-57-9]\\\\d|6[0-8])|7(?:[0159]\\\\d|2[12]|3[1-7]|4[2-46]|6[13569]|7[13-6]|8[1-59])|8(?:[0159]\\\\d|2[3-578]|3[1-356]|[6-8][1-5])|9(?:[0159]\\\\d|[238][1-5]|4[12]|6[1-8]|7[1-6]))\\\\d{2,7}\"],[\"3[1-9]\\\\d{8}|3[2-9]\\\\d{7}\",[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]],0,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|([0-24-8]\\\\d{5})$\",\"1534$1\",0,0,[[\"1534[0-24-8]\\\\d{5}\"],[\"7(?:(?:(?:50|82)9|937)\\\\d|7(?:00[378]|97[7-9]))\\\\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-2]|2[356]|34|4[01347]|5[49]|6[0-369]|77|8[14]|9[139])\\\\d{6}\"],[\"56\\\\d{8}\"]]],\"JM\":[\"1\",\"011\",\"(?:[58]\\\\d\\\\d|658|900)\\\\d{7}\",[10],0,\"1\",0,0,0,0,\"658|876\"],\"JO\":[\"962\",\"00\",\"(?:(?:[2689]|7\\\\d)\\\\d|32|53)\\\\d{6}\",[8,9],[[\"(\\\\d)(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"[2356]|87\"],\"(0$1)\"],[\"(\\\\d{3})(\\\\d{5,6})\",\"$1 $2\",[\"[89]\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{7})\",\"$1 $2\",[\"70\"],\"0$1\"],[\"(\\\\d)(\\\\d{4})(\\\\d{4})\",\"$1 $2 $3\",[\"7\"],\"0$1\"]],\"0\"],\"JP\":[\"81\",\"010\",\"00[1-9]\\\\d{6,14}|[257-9]\\\\d{9}|(?:00|[1-9]\\\\d\\\\d)\\\\d{6}\",[8,9,10,11,12,13,14,15,16,17],[[\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\"$1-$2-$3\",[\"(?:12|57|99)0\"],\"0$1\"],[\"(\\\\d{4})(\\\\d)(\\\\d{4})\",\"$1-$2-$3\",[\"1(?:26|3[79]|4[56]|5[4-68]|6[3-5])|499|5(?:76|97)|746|8(?:3[89]|47|51|63)|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]|636)|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]|636[457-9])|9(?:802|9(?:1[23]|69))|1(?:45|58)[67]\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{3})(\\\\d{4})\",\"$1-$2-$3\",[\"60\"],\"0$1\"],[\"(\\\\d)(\\\\d{4})(\\\\d{4})\",\"$1-$2-$3\",[\"[36]|4(?:2[09]|7[01])\",\"[36]|4(?:2(?:0|9[02-69])|7(?:0[019]|1))\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{3})(\\\\d{4})\",\"$1-$2-$3\",[\"1(?:1|5[45]|77|88|9[69])|2(?:2[1-37]|3[0-269]|4[59]|5|6[24]|7[1-358]|8[1369]|9[0-38])|4(?:[28][1-9]|3[0-57]|[45]|6[248]|7[2-579]|9[29])|5(?:2|3[045]|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[27-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])|5(?:2|3[045]|4[0-369]|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])|49|51|6(?:[0-24]|36|5[0-3589]|72|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]))|(?:49|55|83)[29]|(?: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]|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]|7(?:[017-9]|6[6-8]))|49|51|6(?:[0-24]|36[23]|5(?:[0-389]|5[23])|6(?:[01]|9[178])|72|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]\",\"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]|7[015-9]|9(?:17|99))|6(?:2|4[016-9])|7(?:[1-35]|8[0189])|8(?:[16]|3[0134]|9[0-5])|9(?:[028]|17|3[015-9]))|4(?:2(?:[13-79]|8[014-6])|3[0-57]|[45]|6[248]|7[2-47]|9[29])|5(?:2|3[045]|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(?:[019]|4[1-3]|6(?:[0-47-9]|5[01346-9])))|3(?:[29]|7(?:[017-9]|6[6-8]))|49|51|6(?:[0-24]|36[23]|5(?:[0-389]|5[23])|6(?:[01]|9[178])|72|9[0145])|7[0-468]|8[68])|9(?:4[15]|5[138]|6[1-3]|7[156]|8[189]|9(?:[1289]|3(?:31|4[357])|4[0178]))|(?:223|8699)[014-9]|(?:25[0468]|422|838)[01]|(?:48|829(?:2|66)|9[23])[1-9]|(?:47[59]|59[89]|8(?:68|9))[019]\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{2})(\\\\d{4})\",\"$1-$2-$3\",[\"[14]|[289][2-9]|5[3-9]|7[2-4679]\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{3})(\\\\d{4})\",\"$1-$2-$3\",[\"800\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{4})(\\\\d{4})\",\"$1-$2-$3\",[\"[257-9]\"],\"0$1\"]],\"0\"],\"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-8]\\\\d|99)\\\\d{7}\",[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,\"1|([2-7]\\\\d{6})$\",\"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\",[\"60|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,\"1|([2-9]\\\\d{6})$\",\"345$1\",0,\"345\"],\"KZ\":[\"7\",\"810\",\"(?:33622|8\\\\d{8})\\\\d{5}|[78]\\\\d{9}\",[10,14],0,\"8\",0,0,0,0,\"33|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\",[\"30[013-9]\"],\"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-7]|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,\"1|([2-8]\\\\d{6})$\",\"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,\"0|(1001)\"],\"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\",\"(?:2|33|5\\\\d|77|88)\\\\d{7}|[4-6]\\\\d{6}\",[7,8,9],[[\"(\\\\d)(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"[4-6]\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"2\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"[3578]\"],\"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]\"],\"(8-$1)\",1],[\"(\\\\d{3})(\\\\d{2})(\\\\d{3})\",\"$1 $2 $3\",[\"[7-9]\"],\"8 $1\",1],[\"(\\\\d{2})(\\\\d{6})\",\"$1 $2\",[\"37|4(?:[15]|6[1-8])\"],\"(8-$1)\",1],[\"(\\\\d{3})(\\\\d{5})\",\"$1 $2\",[\"[3-6]\"],\"(8-$1)\",1]],\"8\",0,\"[08]\"],\"LU\":[\"352\",\"00\",\"35[013-9]\\\\d{4,8}|6\\\\d{8}|35\\\\d{2,4}|(?:[2457-9]\\\\d|3[0-46-9])\\\\d{2,9}\",[4,5,6,7,8,9,10,11],[[\"(\\\\d{2})(\\\\d{3})\",\"$1 $2\",[\"2(?:0[2-689]|[2-9])|[3-57]|8(?:0[2-9]|[13-9])|9(?:0[89]|[2-579])\"]],[\"(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3\",[\"2(?:0[2-689]|[2-9])|[3-57]|8(?:0[2-9]|[13-9])|9(?:0[89]|[2-579])\"]],[\"(\\\\d{2})(\\\\d{2})(\\\\d{3})\",\"$1 $2 $3\",[\"20[2-689]\"]],[\"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{1,2})\",\"$1 $2 $3 $4\",[\"2(?:[0367]|4[3-8])\"]],[\"(\\\\d{3})(\\\\d{2})(\\\\d{3})\",\"$1 $2 $3\",[\"80[01]|90[015]\"]],[\"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{3})\",\"$1 $2 $3 $4\",[\"20\"]],[\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"6\"]],[\"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{1,2})\",\"$1 $2 $3 $4 $5\",[\"2(?:[0367]|4[3-8])\"]],[\"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{1,5})\",\"$1 $2 $3 $4\",[\"[3-57]|8[13-9]|9(?:0[89]|[2-579])|(?:2|80)[2-9]\"]]],0,0,\"(15(?:0[06]|1[12]|[35]5|4[04]|6[26]|77|88|99)\\\\d)\"],\"LV\":[\"371\",\"00\",\"(?:[268]\\\\d|90)\\\\d{6}\",[8],[[\"(\\\\d{2})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"[269]|8[01]\"]]]],\"LY\":[\"218\",\"00\",\"[2-9]\\\\d{8}\",[9],[[\"(\\\\d{2})(\\\\d{7})\",\"$1-$2\",[\"[2-9]\"],\"0$1\"]],\"0\"],\"MA\":[\"212\",\"00\",\"[5-8]\\\\d{8}\",[9],[[\"(\\\\d{5})(\\\\d{4})\",\"$1-$2\",[\"5(?:29|38)\",\"5(?:29[89]|389)\",\"5(?:29[89]|389)0\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"5[45]\"],\"0$1\"],[\"(\\\\d{4})(\\\\d{5})\",\"$1-$2\",[\"5(?:2[2-489]|3[5-9]|9)|892\",\"5(?:2(?:[2-49]|8[235-9])|3[5-9]|9)|892\"],\"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(?:29(?:[189][05]|2[29]|3[01])|389[05])\\\\d{4}|5(?:2(?:[0-25-7]\\\\d|3[1-578]|4[02-46-8]|8[0235-7]|90)|3(?:[0-47]\\\\d|5[02-9]|6[02-8]|8[08]|9[3-9])|(?:4[067]|5[03])\\\\d)\\\\d{5}\"],[\"(?:6(?:[0-79]\\\\d|8[0-247-9])|7(?:[017]\\\\d|2[0-2]|6[0-8]))\\\\d{6}\"],[\"80\\\\d{7}\"],[\"89\\\\d{7}\"],0,0,0,0,[\"592(?:4[0-2]|93)\\\\d{4}\"]]],\"MC\":[\"377\",\"00\",\"(?:[3489]|6\\\\d)\\\\d{7}\",[8,9],[[\"(\\\\d{2})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"4\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"[389]\"]],[\"(\\\\d)(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4 $5\",[\"6\"],\"0$1\"]],\"0\"],\"MD\":[\"373\",\"00\",\"(?:[235-7]\\\\d|[89]0)\\\\d{6}\",[8],[[\"(\\\\d{3})(\\\\d{5})\",\"$1 $2\",[\"[89]\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"22|3\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{2})(\\\\d{3})\",\"$1 $2 $3\",[\"[25-7]\"],\"0$1\"]],\"0\"],\"ME\":[\"382\",\"00\",\"(?:20|[3-79]\\\\d)\\\\d{6}|80\\\\d{6,7}\",[8,9],[[\"(\\\\d{2})(\\\\d{3})(\\\\d{3,4})\",\"$1 $2 $3\",[\"[2-9]\"],\"0$1\"]],\"0\"],\"MF\":[\"590\",\"00\",\"(?:590|(?:69|80)\\\\d|976)\\\\d{6}\",[9],0,\"0\",0,0,0,0,0,[[\"590(?:0[079]|[14]3|[27][79]|30|5[0-268]|87)\\\\d{4}\"],[\"69(?:0\\\\d\\\\d|1(?:2[2-9]|3[0-5]))\\\\d{4}\"],[\"80[0-5]\\\\d{6}\"],0,0,0,0,0,[\"976[01]\\\\d{5}\"]]],\"MG\":[\"261\",\"00\",\"[23]\\\\d{8}\",[9],[[\"(\\\\d{2})(\\\\d{2})(\\\\d{3})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"[23]\"],\"0$1\"]],\"0\",0,\"0|([24-9]\\\\d{6})$\",\"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\",[\"[45]|6(?:0[23]|[1-689]|7[235-7])|7(?:[0-4]|5[2-7])|8[1-6]\"],\"0$1\"],[\"(\\\\d)(\\\\d{3})(\\\\d{3,4})\",\"$1 $2 $3\",[\"[12]\"],\"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,\"1|([2-9]\\\\d{6})$\",\"670$1\",0,\"670\"],\"MQ\":[\"596\",\"00\",\"(?:69|80)\\\\d{7}|(?:59|97)6\\\\d{6}\",[9],[[\"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"[569]\"],\"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,\"1|([34]\\\\d{6})$\",\"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])\",\"(?:5|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\",[\"5\"]],[\"(\\\\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\",[\"[3467]|9[13-9]\"]],[\"(\\\\d{3})(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"[89]\"]]],0,0,0,0,0,0,0,\"00\"],\"MW\":[\"265\",\"00\",\"(?:[129]\\\\d|31|77|88)\\\\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]\",\"1(?:(?:44|99)[1-9]|65[0-689])\\\\d{7}|(?:1(?:[017]\\\\d|[235][1-9]|4[0-35-9]|6[0-46-9]|8[1-79]|9[1-8])|[2-9]\\\\d)\\\\d{8}\",[10,11],[[\"(\\\\d{2})(\\\\d{4})(\\\\d{4})\",\"$1 $2 $3\",[\"33|5[56]|81\"],0,1],[\"(\\\\d{3})(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"[2-9]\"],0,1],[\"(\\\\d)(\\\\d{2})(\\\\d{4})(\\\\d{4})\",\"$2 $3 $4\",[\"1(?:33|5[56]|81)\"],0,1],[\"(\\\\d)(\\\\d{3})(\\\\d{3})(\\\\d{4})\",\"$2 $3 $4\",[\"1\"],0,1]],\"01\",0,\"0(?:[12]|4[45])|1\",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[04]\"]]]],\"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\",\"(?:[124-7]|9\\\\d{3})\\\\d{6}|[1-9]\\\\d{7}|[78]\\\\d{9,13}\",[7,8,10,11,12,13,14],[[\"(\\\\d{2})(\\\\d{2})(\\\\d{3})\",\"$1 $2 $3\",[\"78\"],\"0$1\"],[\"(\\\\d)(\\\\d{3})(\\\\d{3,4})\",\"$1 $2 $3\",[\"[12]|9(?:0[3-9]|[1-9])\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{3})(\\\\d{2,3})\",\"$1 $2 $3\",[\"[3-7]|8[2-9]\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{3})(\\\\d{3,4})\",\"$1 $2 $3\",[\"[7-9]\"],\"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\",[\"[489]|59\"]],[\"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"[235-7]\"]]],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\",\"(?:444|(?:55|8\\\\d)\\\\d|666)\\\\d{4}\",[7],[[\"(\\\\d{3})(\\\\d{4})\",\"$1 $2\",[\"[4-68]\"]]]],\"NU\":[\"683\",\"00\",\"(?:[47]|888\\\\d)\\\\d{3}\",[4,7],[[\"(\\\\d{3})(\\\\d{4})\",\"$1 $2\",[\"8\"]]]],\"NZ\":[\"64\",\"0(?:0|161)\",\"[29]\\\\d{7,9}|50\\\\d{5}(?:\\\\d{2,3})?|6[0-35-9]\\\\d{6}|7\\\\d{7,8}|8\\\\d{4,9}|(?:11\\\\d|[34])\\\\d{7}\",[5,6,7,8,9,10],[[\"(\\\\d{2})(\\\\d{3,8})\",\"$1 $2\",[\"8[1-579]\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{2})(\\\\d{2,3})\",\"$1 $2 $3\",[\"50[036-8]|[89]0\",\"50(?:[0367]|88)|[89]0\"],\"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)|[59]|80\"],\"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|86\"],\"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\\\\d{5}(?:\\\\d{2})?|8\\\\d{9}|[1-9]\\\\d{6}(?:\\\\d{2})?\",[6,7,8,9,10],[[\"(\\\\d{5})\",\"$1\",[\"19\"]],[\"(\\\\d{3})(\\\\d{3})\",\"$1 $2\",[\"11|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]|80\\\\d\\\\d)\\\\d{5}\",[6,9],[[\"(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3\",[\"[45]\"],\"0$1\"],[\"(\\\\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-6])\"],\"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\",\"[2-7]\\\\d{7}|800\\\\d{4}(?:\\\\d{2})?|2\\\\d{6}\",[7,8,9],[[\"(\\\\d{3})(\\\\d{4})\",\"$1 $2\",[\"2[126]|8\"]],[\"(\\\\d{4})(\\\\d{4})\",\"$1 $2\",[\"[2-7]\"]]]],\"RE\":[\"262\",\"00\",\"976\\\\d{6}|(?:26|[68]\\\\d)\\\\d{7}\",[9],[[\"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"[2689]\"],\"0$1\"]],\"0\",0,0,0,0,\"26[23]|69|[89]\"],\"RO\":[\"40\",\"00\",\"(?:[2378]\\\\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\",[\"[237-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-6]2|7|8[27])|2(?:1[23]|[2-9]2))\",\"7(?:1(?:[0-6]2|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,\"3[04-689]|[489]\",0,\"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\",[\"[7-9]\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"2\"]]],\"0\"],\"SA\":[\"966\",\"00\",\"92\\\\d{7}|(?:[15]|8\\\\d)\\\\d{8}\",[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{3,4})\",\"$1 $2 $3\",[\"81\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"8\"]]],\"0\"],\"SB\":[\"677\",\"0[01]\",\"(?:[1-6]|[7-9]\\\\d\\\\d)\\\\d{4}\",[5,7],[[\"(\\\\d{2})(\\\\d{5})\",\"$1 $2\",[\"7|8[4-9]|9(?:[1-8]|9[0-8])\"]]]],\"SC\":[\"248\",\"010|0[0-2]\",\"800\\\\d{4}|(?:[249]\\\\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],[[\"(\\\\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-5]|[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|[57]9)\\\\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\",[\"24|[67]\"]],[\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"[3478]|64|90\"]],[\"(\\\\d{2})(\\\\d{5,7})\",\"$1 $2\",[\"1|28|6(?:0[5-7]|[1-35-9])|9[2-9]\"]]],\"0\"],\"SR\":[\"597\",\"00\",\"(?:[2-5]|68|[78]\\\\d)\\\\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-8]\"]]]],\"SS\":[\"211\",\"00\",\"[19]\\\\d{8}\",[9],[[\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"[19]\"],\"0$1\"]],\"0\"],\"ST\":[\"239\",\"00\",\"(?:22|9\\\\d)\\\\d{5}\",[7],[[\"(\\\\d{3})(\\\\d{4})\",\"$1 $2\",[\"[29]\"]]]],\"SV\":[\"503\",\"00\",\"[267]\\\\d{7}|[89]00\\\\d{4}(?:\\\\d{4})?\",[7,8,11],[[\"(\\\\d{3})(\\\\d{4})\",\"$1 $2\",[\"[89]\"]],[\"(\\\\d{4})(\\\\d{4})\",\"$1 $2\",[\"[267]\"]],[\"(\\\\d{3})(\\\\d{4})(\\\\d{4})\",\"$1 $2 $3\",[\"[89]\"]]]],\"SX\":[\"1\",\"011\",\"7215\\\\d{6}|(?:[58]\\\\d\\\\d|900)\\\\d{7}\",[10],0,\"1\",0,\"1|(5\\\\d{6})$\",\"721$1\",0,\"721\"],\"SY\":[\"963\",\"00\",\"[1-39]\\\\d{8}|[1-5]\\\\d{7}\",[8,9],[[\"(\\\\d{2})(\\\\d{3})(\\\\d{3,4})\",\"$1 $2 $3\",[\"[1-5]\"],\"0$1\",1],[\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"9\"],\"0$1\",1]],\"0\"],\"SZ\":[\"268\",\"00\",\"0800\\\\d{4}|(?:[237]\\\\d|900)\\\\d{6}\",[8,9],[[\"(\\\\d{4})(\\\\d{4})\",\"$1 $2\",[\"[0237]\"]],[\"(\\\\d{5})(\\\\d{4})\",\"$1 $2\",[\"9\"]]]],\"TA\":[\"290\",\"00\",\"8\\\\d{3}\",[4],0,0,0,0,0,0,\"8\"],\"TC\":[\"1\",\"011\",\"(?:[58]\\\\d\\\\d|649|900)\\\\d{7}\",[10],0,\"1\",0,\"1|([2-479]\\\\d{6})$\",\"649$1\",0,\"649\"],\"TD\":[\"235\",\"00|16\",\"(?:22|[69]\\\\d|77)\\\\d{6}\",[8],[[\"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"[2679]\"]]],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\",\"(?:00|[1-57-9]\\\\d)\\\\d{7}\",[9],[[\"(\\\\d{6})(\\\\d)(\\\\d{2})\",\"$1 $2 $3\",[\"331\",\"3317\"]],[\"(\\\\d{3})(\\\\d{2})(\\\\d{4})\",\"$1 $2 $3\",[\"[34]7|91[78]\"]],[\"(\\\\d{4})(\\\\d)(\\\\d{4})\",\"$1 $2 $3\",[\"3[1-5]\"]],[\"(\\\\d{2})(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"[0-57-9]\"]]],0,0,0,0,0,0,0,\"8~10\"],\"TK\":[\"690\",\"00\",\"[2-47]\\\\d{3,6}\",[4,5,6,7]],\"TL\":[\"670\",\"00\",\"7\\\\d{7}|(?:[2-47]\\\\d|[89]0)\\\\d{5}\",[7,8],[[\"(\\\\d{3})(\\\\d{4})\",\"$1 $2\",[\"[2-489]|70\"]],[\"(\\\\d{4})(\\\\d{4})\",\"$1 $2\",[\"7\"]]]],\"TM\":[\"993\",\"810\",\"[1-6]\\\\d{7}\",[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\",[\"6\"],\"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]|616)\",\"5(?:[0-59]|6161)\"],\"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,\"1|([2-46-8]\\\\d{6})$\",\"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]\",\"(?:[26-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{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,[[\"5(?:05(?:[2-57-9]\\\\d\\\\d|6(?:[0-35-9]\\\\d|44))|82(?:2(?:0[0-3]|[268]2)|3(?:0[02]|22|33)|4(?:00|4[24]|65|82)|5(?:00|29|58|83)|6(?:00|66|82)|7(?:58|77)|8(?:00|42|88)|9(?:00|9[89])))\\\\d{4}|(?:2(?:0[1-35-9]|1[02-9]|2[03-589]|3[149]|4[08]|5[1-46]|6[0279]|7[0269]|8[13])|3(?:0[1-57-9]|1[02-9]|2[01356]|3[0-24679]|4[167]|5[12]|6[014]|8[056])|4(?:0[124-9]|1[02-579]|2[3-5]|3[0245]|4[023578]|58|6[349]|7[0589]|8[04])|5(?:0[1-47-9]|1[0235-8]|20|3[0149]|4[01]|5[19]|6[1-47]|7[0-5]|8[056])|6(?:0[1-35-9]|1[024-9]|2[03689]|[34][016]|5[01679]|6[0-279]|78|8[0-29])|7(?:0[1-46-8]|1[2-9]|2[04-7]|3[1247]|4[037]|5[47]|6[02359]|7[0-59]|8[156])|8(?:0[1-68]|1[02-8]|2[068]|3[0-289]|4[03578]|5[046-9]|6[02-5]|7[028])|9(?:0[1346-9]|1[02-9]|2[0589]|3[0146-8]|4[0157-9]|5[12469]|7[0-389]|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-7]|33|44|66|77|88)[2-9]\\\\d{6}\"]]],\"UY\":[\"598\",\"0(?:0|1[3-9]\\\\d)\",\"4\\\\d{9}|[1249]\\\\d{7}|(?:[49]\\\\d|80)\\\\d{5}\",[7,8,10],[[\"(\\\\d{3})(\\\\d{4})\",\"$1 $2\",[\"405|8|90\"],\"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{4})\",\"$1 $2 $3\",[\"4\"],\"0$1\"]],\"0\",0,0,0,0,0,0,\"00\",\" int. \"],\"UZ\":[\"998\",\"810\",\"(?:33|55|[679]\\\\d|88)\\\\d{7}\",[9],[[\"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"[35-9]\"],\"8 $1\"]],\"8\",0,0,0,0,0,0,\"8~10\"],\"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],0,0,0,0,0,0,\"06698\"],\"VC\":[\"1\",\"011\",\"(?:[58]\\\\d\\\\d|784|900)\\\\d{7}\",[10],0,\"1\",0,\"1|([2-7]\\\\d{6})$\",\"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,\"1|([2-578]\\\\d{6})$\",\"284$1\",0,\"284\"],\"VI\":[\"1\",\"011\",\"[58]\\\\d{9}|(?:34|90)0\\\\d{7}\",[10],0,\"1\",0,\"1|([2-9]\\\\d{6})$\",\"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\",[\"[69]\"],\"0$1\",1],[\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"[3578]\"],\"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)\\\\d{4}|8\\\\d{5}(?:\\\\d{3})?\",[6,9],[[\"(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3\",[\"[478]\"]],[\"(\\\\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\",\"[23]\\\\d{7,8}|(?:4\\\\d\\\\d|[89]00)\\\\d{5}\",[8,9],[[\"(\\\\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\",[\"[23]\"],\"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-68]\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"7\"],\"0$1\"]],\"0\"],\"YT\":[\"262\",\"00\",\"80\\\\d{7}|(?:26|63)9\\\\d{6}\",[9],0,\"0\",0,0,0,0,\"269|63\"],\"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|63|[79]\\\\d)\\\\d{7}\",[9],[[\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"[28]\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{7})\",\"$1 $2\",[\"[79]\"],\"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}|[35-7]\\\\d{8}\",[9,12],[[\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"[35-7]\"]]],0,0,0,0,0,0,[0,[\"(?:[356]|774[45])\\\\d{8}|7[6-8]\\\\d{7}\"]]],\"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,\"[0-36-9]\\\\d{8}\",[9],[[\"(\\\\d)(\\\\d{3})(\\\\d{5})\",\"$1 $2 $3\",[\"[0-36-9]\"]]],0,0,0,0,0,0,[0,[\"[0-36-9]\\\\d{8}\"]]],\"882\":[\"882\",0,\"[13]\\\\d{6}(?:\\\\d{2,5})?|285\\\\d{9}|(?:[19]\\\\d|49)\\\\d{6}\",[7,8,9,10,11,12],[[\"(\\\\d{2})(\\\\d{5})\",\"$1 $2\",[\"16|342\"]],[\"(\\\\d{2})(\\\\d{6})\",\"$1 $2\",[\"4\"]],[\"(\\\\d{2})(\\\\d{2})(\\\\d{4})\",\"$1 $2 $3\",[\"[19]\"]],[\"(\\\\d{2})(\\\\d{4})(\\\\d{3})\",\"$1 $2 $3\",[\"3[23]\"]],[\"(\\\\d{2})(\\\\d{3,4})(\\\\d{4})\",\"$1 $2 $3\",[\"1\"]],[\"(\\\\d{2})(\\\\d{4})(\\\\d{4})\",\"$1 $2 $3\",[\"34[57]\"]],[\"(\\\\d{3})(\\\\d{4})(\\\\d{4})\",\"$1 $2 $3\",[\"34\"]],[\"(\\\\d{2})(\\\\d{4,5})(\\\\d{5})\",\"$1 $2 $3\",[\"[1-3]\"]]],0,0,0,0,0,0,[0,[\"342\\\\d{4}|(?:337|49)\\\\d{6}|3(?:2|47|7\\\\d{3})\\\\d{7}\",[7,8,9,10,12]],0,0,0,0,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})|(?:(?:285\\\\d\\\\d|3(?:45|[69]\\\\d{3}))\\\\d|9[89])\\\\d{6}\"]]],\"883\":[\"883\",0,\"(?:210|370\\\\d\\\\d)\\\\d{7}|51\\\\d{7}(?:\\\\d{3})?\",[9,10,12],[[\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"510\"]],[\"(\\\\d{3})(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"2\"]],[\"(\\\\d{4})(\\\\d{4})(\\\\d{4})\",\"$1 $2 $3\",[\"51[13]\"]],[\"(\\\\d{3})(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3 $4\",[\"[35]\"]]],0,0,0,0,0,0,[0,0,0,0,0,0,0,0,[\"(?:210|(?:370[1-9]|51[013]0)\\\\d)\\\\d{7}|5100\\\\d{5}\"]]],\"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}\"]]]}}","function _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\n\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== \"undefined\" && arr[Symbol.iterator] || arr[\"@@iterator\"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n\nimport parsePhoneNumber_ from './parsePhoneNumber_.js';\nexport default function parsePhoneNumber() {\n var _normalizeArguments = normalizeArguments(arguments),\n text = _normalizeArguments.text,\n options = _normalizeArguments.options,\n metadata = _normalizeArguments.metadata;\n\n return parsePhoneNumber_(text, options, metadata);\n}\nexport function normalizeArguments(args) {\n var _Array$prototype$slic = Array.prototype.slice.call(args),\n _Array$prototype$slic2 = _slicedToArray(_Array$prototype$slic, 4),\n arg_1 = _Array$prototype$slic2[0],\n arg_2 = _Array$prototype$slic2[1],\n arg_3 = _Array$prototype$slic2[2],\n arg_4 = _Array$prototype$slic2[3];\n\n var text;\n var options;\n var metadata; // If the phone number is passed as a string.\n // `parsePhoneNumber('88005553535', ...)`.\n\n if (typeof arg_1 === 'string') {\n text = arg_1;\n } else throw new TypeError('A text for parsing must be a string.'); // If \"default country\" argument is being passed then move it to `options`.\n // `parsePhoneNumber('88005553535', 'RU', [options], metadata)`.\n\n\n if (!arg_2 || typeof arg_2 === 'string') {\n if (arg_4) {\n options = arg_3;\n metadata = arg_4;\n } else {\n options = undefined;\n metadata = arg_3;\n }\n\n if (arg_2) {\n options = _objectSpread({\n defaultCountry: arg_2\n }, options);\n }\n } // `defaultCountry` is not passed.\n // Example: `parsePhoneNumber('+78005553535', [options], metadata)`.\n else if (isObject(arg_2)) {\n if (arg_3) {\n options = arg_2;\n metadata = arg_3;\n } else {\n metadata = arg_2;\n }\n } else throw new Error(\"Invalid second argument: \".concat(arg_2));\n\n return {\n text: text,\n options: options,\n metadata: metadata\n };\n} // Otherwise istanbul would show this as \"branch not covered\".\n\n/* istanbul ignore next */\n\nvar isObject = function isObject(_) {\n return _typeof(_) === 'object';\n};\n//# sourceMappingURL=parsePhoneNumber.js.map","function _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, \"prototype\", { writable: false }); return Constructor; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, \"prototype\", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } else if (call !== void 0) { throw new TypeError(\"Derived constructors may only return object or undefined\"); } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _wrapNativeSuper(Class) { var _cache = typeof Map === \"function\" ? new Map() : undefined; _wrapNativeSuper = function _wrapNativeSuper(Class) { if (Class === null || !_isNativeFunction(Class)) return Class; if (typeof Class !== \"function\") { throw new TypeError(\"Super expression must either be null or a function\"); } if (typeof _cache !== \"undefined\") { if (_cache.has(Class)) return _cache.get(Class); _cache.set(Class, Wrapper); } function Wrapper() { return _construct(Class, arguments, _getPrototypeOf(this).constructor); } Wrapper.prototype = Object.create(Class.prototype, { constructor: { value: Wrapper, enumerable: false, writable: true, configurable: true } }); return _setPrototypeOf(Wrapper, Class); }; return _wrapNativeSuper(Class); }\n\nfunction _construct(Parent, args, Class) { if (_isNativeReflectConstruct()) { _construct = Reflect.construct; } else { _construct = function _construct(Parent, args, Class) { var a = [null]; a.push.apply(a, args); var Constructor = Function.bind.apply(Parent, a); var instance = new Constructor(); if (Class) _setPrototypeOf(instance, Class.prototype); return instance; }; } return _construct.apply(null, arguments); }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction _isNativeFunction(fn) { return Function.toString.call(fn).indexOf(\"[native code]\") !== -1; }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n// https://stackoverflow.com/a/46971044/970769\n// \"Breaking changes in Typescript 2.1\"\n// \"Extending built-ins like Error, Array, and Map may no longer work.\"\n// \"As a recommendation, you can manually adjust the prototype immediately after any super(...) calls.\"\n// https://github.com/Microsoft/TypeScript-wiki/blob/main/Breaking-Changes.md#extending-built-ins-like-error-array-and-map-may-no-longer-work\nvar ParseError = /*#__PURE__*/function (_Error) {\n _inherits(ParseError, _Error);\n\n var _super = _createSuper(ParseError);\n\n function ParseError(code) {\n var _this;\n\n _classCallCheck(this, ParseError);\n\n _this = _super.call(this, code); // Set the prototype explicitly.\n // Any subclass of FooError will have to manually set the prototype as well.\n\n Object.setPrototypeOf(_assertThisInitialized(_this), ParseError.prototype);\n _this.name = _this.constructor.name;\n return _this;\n }\n\n return _createClass(ParseError);\n}( /*#__PURE__*/_wrapNativeSuper(Error));\n\nexport { ParseError as default };\n//# sourceMappingURL=ParseError.js.map","import createExtensionPattern from './createExtensionPattern.js'; // Regexp of all known extension prefixes used by different regions followed by\n// 1 or more valid digits, for use when parsing.\n\nvar EXTN_PATTERN = new RegExp('(?:' + createExtensionPattern() + ')$', 'i'); // Strips any extension (as in, the part of the number dialled after the call is\n// connected, usually indicated with extn, ext, x or similar) from the end of\n// the number, and returns it.\n\nexport default function extractExtension(number) {\n var start = number.search(EXTN_PATTERN);\n\n if (start < 0) {\n return {};\n } // If we find a potential extension, and the number preceding this is a viable\n // number, we assume it is an extension.\n\n\n var numberWithoutExtension = number.slice(0, start);\n var matches = number.match(EXTN_PATTERN);\n var i = 1;\n\n while (i < matches.length) {\n if (matches[i]) {\n return {\n number: numberWithoutExtension,\n ext: matches[i]\n };\n }\n\n i++;\n }\n}\n//# sourceMappingURL=extractExtension.js.map","// This is a port of Google Android `libphonenumber`'s\n// `phonenumberutil.js` of December 31th, 2018.\n//\n// https://github.com/googlei18n/libphonenumber/commits/master/javascript/i18n/phonenumbers/phonenumberutil.js\nimport { VALID_DIGITS, PLUS_CHARS, MIN_LENGTH_FOR_NSN, MAX_LENGTH_FOR_NSN } from './constants.js';\nimport ParseError from './ParseError.js';\nimport Metadata from './metadata.js';\nimport isViablePhoneNumber, { isViablePhoneNumberStart } from './helpers/isViablePhoneNumber.js';\nimport extractExtension from './helpers/extension/extractExtension.js';\nimport parseIncompletePhoneNumber from './parseIncompletePhoneNumber.js';\nimport getCountryCallingCode from './getCountryCallingCode.js';\nimport { isPossibleNumber } from './isPossibleNumber_.js';\nimport { parseRFC3966 } from './helpers/RFC3966.js';\nimport PhoneNumber from './PhoneNumber.js';\nimport matchesEntirely from './helpers/matchesEntirely.js';\nimport extractCountryCallingCode from './helpers/extractCountryCallingCode.js';\nimport extractCountryCallingCodeFromInternationalNumberWithoutPlusSign from './helpers/extractCountryCallingCodeFromInternationalNumberWithoutPlusSign.js';\nimport extractNationalNumber from './helpers/extractNationalNumber.js';\nimport stripIddPrefix from './helpers/stripIddPrefix.js';\nimport getCountryByCallingCode from './helpers/getCountryByCallingCode.js'; // We don't allow input strings for parsing to be longer than 250 chars.\n// This prevents malicious input from consuming CPU.\n\nvar MAX_INPUT_STRING_LENGTH = 250; // This consists of the plus symbol, digits, and arabic-indic digits.\n\nvar PHONE_NUMBER_START_PATTERN = new RegExp('[' + PLUS_CHARS + VALID_DIGITS + ']'); // Regular expression of trailing characters that we want to remove.\n// A trailing `#` is sometimes used when writing phone numbers with extensions in US.\n// Example: \"+1 (645) 123 1234-910#\" number has extension \"910\".\n\nvar AFTER_PHONE_NUMBER_END_PATTERN = new RegExp('[^' + VALID_DIGITS + '#' + ']+$');\nvar USE_NON_GEOGRAPHIC_COUNTRY_CODE = false; // Examples:\n//\n// ```js\n// parse('8 (800) 555-35-35', 'RU')\n// parse('8 (800) 555-35-35', 'RU', metadata)\n// parse('8 (800) 555-35-35', { country: { default: 'RU' } })\n// parse('8 (800) 555-35-35', { country: { default: 'RU' } }, metadata)\n// parse('+7 800 555 35 35')\n// parse('+7 800 555 35 35', metadata)\n// ```\n//\n\nexport default function parse(text, options, metadata) {\n // If assigning the `{}` default value is moved to the arguments above,\n // code coverage would decrease for some weird reason.\n options = options || {};\n metadata = new Metadata(metadata); // Validate `defaultCountry`.\n\n if (options.defaultCountry && !metadata.hasCountry(options.defaultCountry)) {\n if (options.v2) {\n throw new ParseError('INVALID_COUNTRY');\n }\n\n throw new Error(\"Unknown country: \".concat(options.defaultCountry));\n } // Parse the phone number.\n\n\n var _parseInput = parseInput(text, options.v2, options.extract),\n formattedPhoneNumber = _parseInput.number,\n ext = _parseInput.ext,\n error = _parseInput.error; // If the phone number is not viable then return nothing.\n\n\n if (!formattedPhoneNumber) {\n if (options.v2) {\n if (error === 'TOO_SHORT') {\n throw new ParseError('TOO_SHORT');\n }\n\n throw new ParseError('NOT_A_NUMBER');\n }\n\n return {};\n }\n\n var _parsePhoneNumber = parsePhoneNumber(formattedPhoneNumber, options.defaultCountry, options.defaultCallingCode, metadata),\n country = _parsePhoneNumber.country,\n nationalNumber = _parsePhoneNumber.nationalNumber,\n countryCallingCode = _parsePhoneNumber.countryCallingCode,\n carrierCode = _parsePhoneNumber.carrierCode;\n\n if (!metadata.hasSelectedNumberingPlan()) {\n if (options.v2) {\n throw new ParseError('INVALID_COUNTRY');\n }\n\n return {};\n } // Validate national (significant) number length.\n\n\n if (!nationalNumber || nationalNumber.length < MIN_LENGTH_FOR_NSN) {\n // Won't throw here because the regexp already demands length > 1.\n\n /* istanbul ignore if */\n if (options.v2) {\n throw new ParseError('TOO_SHORT');\n } // Google's demo just throws an error in this case.\n\n\n return {};\n } // Validate national (significant) number length.\n //\n // A sidenote:\n //\n // They say that sometimes national (significant) numbers\n // can be longer than `MAX_LENGTH_FOR_NSN` (e.g. in Germany).\n // https://github.com/googlei18n/libphonenumber/blob/7e1748645552da39c4e1ba731e47969d97bdb539/resources/phonenumber.proto#L36\n // Such numbers will just be discarded.\n //\n\n\n if (nationalNumber.length > MAX_LENGTH_FOR_NSN) {\n if (options.v2) {\n throw new ParseError('TOO_LONG');\n } // Google's demo just throws an error in this case.\n\n\n return {};\n }\n\n if (options.v2) {\n var phoneNumber = new PhoneNumber(countryCallingCode, nationalNumber, metadata.metadata);\n\n if (country) {\n phoneNumber.country = country;\n }\n\n if (carrierCode) {\n phoneNumber.carrierCode = carrierCode;\n }\n\n if (ext) {\n phoneNumber.ext = ext;\n }\n\n return phoneNumber;\n } // Check if national phone number pattern matches the number.\n // National number pattern is different for each country,\n // even for those ones which are part of the \"NANPA\" group.\n\n\n var valid = (options.extended ? metadata.hasSelectedNumberingPlan() : country) ? matchesEntirely(nationalNumber, metadata.nationalNumberPattern()) : false;\n\n if (!options.extended) {\n return valid ? result(country, nationalNumber, ext) : {};\n } // isInternational: countryCallingCode !== undefined\n\n\n return {\n country: country,\n countryCallingCode: countryCallingCode,\n carrierCode: carrierCode,\n valid: valid,\n possible: valid ? true : options.extended === true && metadata.possibleLengths() && isPossibleNumber(nationalNumber, metadata) ? true : false,\n phone: nationalNumber,\n ext: ext\n };\n}\n/**\r\n * Extracts a formatted phone number from text.\r\n * Doesn't guarantee that the extracted phone number\r\n * is a valid phone number (for example, doesn't validate its length).\r\n * @param {string} text\r\n * @param {boolean} [extract] — If `false`, then will parse the entire `text` as a phone number.\r\n * @param {boolean} [throwOnError] — By default, it won't throw if the text is too long.\r\n * @return {string}\r\n * @example\r\n * // Returns \"(213) 373-4253\".\r\n * extractFormattedPhoneNumber(\"Call (213) 373-4253 for assistance.\")\r\n */\n\nfunction extractFormattedPhoneNumber(text, extract, throwOnError) {\n if (!text) {\n return;\n }\n\n if (text.length > MAX_INPUT_STRING_LENGTH) {\n if (throwOnError) {\n throw new ParseError('TOO_LONG');\n }\n\n return;\n }\n\n if (extract === false) {\n return text;\n } // Attempt to extract a possible number from the string passed in\n\n\n var startsAt = text.search(PHONE_NUMBER_START_PATTERN);\n\n if (startsAt < 0) {\n return;\n }\n\n return text // Trim everything to the left of the phone number\n .slice(startsAt) // Remove trailing non-numerical characters\n .replace(AFTER_PHONE_NUMBER_END_PATTERN, '');\n}\n/**\r\n * @param {string} text - Input.\r\n * @param {boolean} v2 - Legacy API functions don't pass `v2: true` flag.\r\n * @param {boolean} [extract] - Whether to extract a phone number from `text`, or attempt to parse the entire text as a phone number.\r\n * @return {object} `{ ?number, ?ext }`.\r\n */\n\n\nfunction parseInput(text, v2, extract) {\n // Parse RFC 3966 phone number URI.\n if (text && text.indexOf('tel:') === 0) {\n return parseRFC3966(text);\n }\n\n var number = extractFormattedPhoneNumber(text, extract, v2); // If the phone number is not viable, then abort.\n\n if (!number) {\n return {};\n }\n\n if (!isViablePhoneNumber(number)) {\n if (isViablePhoneNumberStart(number)) {\n return {\n error: 'TOO_SHORT'\n };\n }\n\n return {};\n } // Attempt to parse extension first, since it doesn't require region-specific\n // data and we want to have the non-normalised number here.\n\n\n var withExtensionStripped = extractExtension(number);\n\n if (withExtensionStripped.ext) {\n return withExtensionStripped;\n }\n\n return {\n number: number\n };\n}\n/**\r\n * Creates `parse()` result object.\r\n */\n\n\nfunction result(country, nationalNumber, ext) {\n var result = {\n country: country,\n phone: nationalNumber\n };\n\n if (ext) {\n result.ext = ext;\n }\n\n return result;\n}\n/**\r\n * Parses a viable phone number.\r\n * @param {string} formattedPhoneNumber — Example: \"(213) 373-4253\".\r\n * @param {string} [defaultCountry]\r\n * @param {string} [defaultCallingCode]\r\n * @param {Metadata} metadata\r\n * @return {object} Returns `{ country: string?, countryCallingCode: string?, nationalNumber: string? }`.\r\n */\n\n\nfunction parsePhoneNumber(formattedPhoneNumber, defaultCountry, defaultCallingCode, metadata) {\n // Extract calling code from phone number.\n var _extractCountryCallin = extractCountryCallingCode(parseIncompletePhoneNumber(formattedPhoneNumber), defaultCountry, defaultCallingCode, metadata.metadata),\n countryCallingCode = _extractCountryCallin.countryCallingCode,\n number = _extractCountryCallin.number; // Choose a country by `countryCallingCode`.\n\n\n var country;\n\n if (countryCallingCode) {\n metadata.selectNumberingPlan(countryCallingCode);\n } // If `formattedPhoneNumber` is in \"national\" format\n // then `number` is defined and `countryCallingCode` isn't.\n else if (number && (defaultCountry || defaultCallingCode)) {\n metadata.selectNumberingPlan(defaultCountry, defaultCallingCode);\n\n if (defaultCountry) {\n country = defaultCountry;\n } else {\n /* istanbul ignore if */\n if (USE_NON_GEOGRAPHIC_COUNTRY_CODE) {\n if (metadata.isNonGeographicCallingCode(defaultCallingCode)) {\n country = '001';\n }\n }\n }\n\n countryCallingCode = defaultCallingCode || getCountryCallingCode(defaultCountry, metadata.metadata);\n } else return {};\n\n if (!number) {\n return {\n countryCallingCode: countryCallingCode\n };\n }\n\n var _extractNationalNumbe = extractNationalNumber(parseIncompletePhoneNumber(number), metadata),\n nationalNumber = _extractNationalNumbe.nationalNumber,\n carrierCode = _extractNationalNumbe.carrierCode; // Sometimes there are several countries\n // corresponding to the same country phone code\n // (e.g. NANPA countries all having `1` country phone code).\n // Therefore, to reliably determine the exact country,\n // national (significant) number should have been parsed first.\n //\n // When `metadata.json` is generated, all \"ambiguous\" country phone codes\n // get their countries populated with the full set of\n // \"phone number type\" regular expressions.\n //\n\n\n var exactCountry = getCountryByCallingCode(countryCallingCode, nationalNumber, metadata);\n\n if (exactCountry) {\n country = exactCountry;\n /* istanbul ignore if */\n\n if (exactCountry === '001') {// Can't happen with `USE_NON_GEOGRAPHIC_COUNTRY_CODE` being `false`.\n // If `USE_NON_GEOGRAPHIC_COUNTRY_CODE` is set to `true` for some reason,\n // then remove the \"istanbul ignore if\".\n } else {\n metadata.country(country);\n }\n }\n\n return {\n country: country,\n countryCallingCode: countryCallingCode,\n nationalNumber: nationalNumber,\n carrierCode: carrierCode\n };\n}\n//# sourceMappingURL=parse_.js.map","function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport parseNumber from './parse_.js';\nexport default function parsePhoneNumber(text, options, metadata) {\n return parseNumber(text, _objectSpread(_objectSpread({}, options), {}, {\n v2: true\n }), metadata);\n}\n//# sourceMappingURL=parsePhoneNumber_.js.map","function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport parsePhoneNumber from './parsePhoneNumber_.js';\nimport ParseError from './ParseError.js';\nimport { isSupportedCountry } from './metadata.js';\nexport default function parsePhoneNumberFromString(text, options, metadata) {\n // Validate `defaultCountry`.\n if (options && options.defaultCountry && !isSupportedCountry(options.defaultCountry, metadata)) {\n options = _objectSpread(_objectSpread({}, options), {}, {\n defaultCountry: undefined\n });\n } // Parse phone number.\n\n\n try {\n return parsePhoneNumber(text, options, metadata);\n } catch (error) {\n /* istanbul ignore else */\n if (error instanceof ParseError) {//\n } else {\n throw error;\n }\n }\n}\n//# sourceMappingURL=parsePhoneNumberFromString_.js.map","import { normalizeArguments } from './parsePhoneNumber.js';\nimport parsePhoneNumberFromString_ from './parsePhoneNumberFromString_.js';\nexport default function parsePhoneNumberFromString() {\n var _normalizeArguments = normalizeArguments(arguments),\n text = _normalizeArguments.text,\n options = _normalizeArguments.options,\n metadata = _normalizeArguments.metadata;\n\n return parsePhoneNumberFromString_(text, options, metadata);\n}\n//# sourceMappingURL=parsePhoneNumberFromString.js.map","function _typeof(obj) { \"@babel/helpers - typeof\"; return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }, _typeof(obj); }\n\nimport parsePhoneNumber from 'libphonenumber-js/core';\n/**\r\n * Formats a phone number.\r\n * Is a proxy for `libphonenumber-js`'s `.format()` function of a parsed `PhoneNumber`.\r\n * @param {string} value\r\n * @param {string} [format]\r\n * @param {object} metadata\r\n * @return {string}\r\n */\n\nexport default function formatPhoneNumber(value, format, metadata) {\n if (!metadata) {\n if (_typeof(format) === 'object') {\n metadata = format;\n format = 'NATIONAL';\n }\n }\n\n if (!value) {\n return '';\n }\n\n var phoneNumber = parsePhoneNumber(value, metadata);\n\n if (!phoneNumber) {\n return '';\n } // Deprecated.\n // Legacy `format`s.\n\n\n switch (format) {\n case 'National':\n format = 'NATIONAL';\n break;\n\n case 'International':\n format = 'INTERNATIONAL';\n break;\n }\n\n return phoneNumber.format(format);\n}\nexport function formatPhoneNumberIntl(value, metadata) {\n return formatPhoneNumber(value, 'INTERNATIONAL', metadata);\n}\n//# sourceMappingURL=formatPhoneNumber.js.map","function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { normalizeArguments } from './parsePhoneNumber.js';\nimport parsePhoneNumberFromString from './parsePhoneNumberFromString_.js';\nexport default function isPossiblePhoneNumber() {\n var _normalizeArguments = normalizeArguments(arguments),\n text = _normalizeArguments.text,\n options = _normalizeArguments.options,\n metadata = _normalizeArguments.metadata;\n\n options = _objectSpread(_objectSpread({}, options), {}, {\n extract: false\n });\n var phoneNumber = parsePhoneNumberFromString(text, options, metadata);\n return phoneNumber && phoneNumber.isPossible() || false;\n}\n//# sourceMappingURL=isPossiblePhoneNumber.js.map","export default {\n \"ext\": \"ext.\",\n \"country\": \"Phone number country\",\n \"phone\": \"Phone\",\n \"AB\": \"Abkhazia\",\n \"AC\": \"Ascension Island\",\n \"AD\": \"Andorra\",\n \"AE\": \"United Arab Emirates\",\n \"AF\": \"Afghanistan\",\n \"AG\": \"Antigua and Barbuda\",\n \"AI\": \"Anguilla\",\n \"AL\": \"Albania\",\n \"AM\": \"Armenia\",\n \"AO\": \"Angola\",\n \"AQ\": \"Antarctica\",\n \"AR\": \"Argentina\",\n \"AS\": \"American Samoa\",\n \"AT\": \"Austria\",\n \"AU\": \"Australia\",\n \"AW\": \"Aruba\",\n \"AX\": \"Åland Islands\",\n \"AZ\": \"Azerbaijan\",\n \"BA\": \"Bosnia and Herzegovina\",\n \"BB\": \"Barbados\",\n \"BD\": \"Bangladesh\",\n \"BE\": \"Belgium\",\n \"BF\": \"Burkina Faso\",\n \"BG\": \"Bulgaria\",\n \"BH\": \"Bahrain\",\n \"BI\": \"Burundi\",\n \"BJ\": \"Benin\",\n \"BL\": \"Saint Barthélemy\",\n \"BM\": \"Bermuda\",\n \"BN\": \"Brunei Darussalam\",\n \"BO\": \"Bolivia\",\n \"BQ\": \"Bonaire, Sint Eustatius and Saba\",\n \"BR\": \"Brazil\",\n \"BS\": \"Bahamas\",\n \"BT\": \"Bhutan\",\n \"BV\": \"Bouvet Island\",\n \"BW\": \"Botswana\",\n \"BY\": \"Belarus\",\n \"BZ\": \"Belize\",\n \"CA\": \"Canada\",\n \"CC\": \"Cocos (Keeling) Islands\",\n \"CD\": \"Congo, Democratic Republic of the\",\n \"CF\": \"Central African Republic\",\n \"CG\": \"Congo\",\n \"CH\": \"Switzerland\",\n \"CI\": \"Cote d'Ivoire\",\n \"CK\": \"Cook Islands\",\n \"CL\": \"Chile\",\n \"CM\": \"Cameroon\",\n \"CN\": \"China\",\n \"CO\": \"Colombia\",\n \"CR\": \"Costa Rica\",\n \"CU\": \"Cuba\",\n \"CV\": \"Cape Verde\",\n \"CW\": \"Curaçao\",\n \"CX\": \"Christmas Island\",\n \"CY\": \"Cyprus\",\n \"CZ\": \"Czech Republic\",\n \"DE\": \"Germany\",\n \"DJ\": \"Djibouti\",\n \"DK\": \"Denmark\",\n \"DM\": \"Dominica\",\n \"DO\": \"Dominican Republic\",\n \"DZ\": \"Algeria\",\n \"EC\": \"Ecuador\",\n \"EE\": \"Estonia\",\n \"EG\": \"Egypt\",\n \"EH\": \"Western Sahara\",\n \"ER\": \"Eritrea\",\n \"ES\": \"Spain\",\n \"ET\": \"Ethiopia\",\n \"FI\": \"Finland\",\n \"FJ\": \"Fiji\",\n \"FK\": \"Falkland Islands\",\n \"FM\": \"Federated States of Micronesia\",\n \"FO\": \"Faroe Islands\",\n \"FR\": \"France\",\n \"GA\": \"Gabon\",\n \"GB\": \"United Kingdom\",\n \"GD\": \"Grenada\",\n \"GE\": \"Georgia\",\n \"GF\": \"French Guiana\",\n \"GG\": \"Guernsey\",\n \"GH\": \"Ghana\",\n \"GI\": \"Gibraltar\",\n \"GL\": \"Greenland\",\n \"GM\": \"Gambia\",\n \"GN\": \"Guinea\",\n \"GP\": \"Guadeloupe\",\n \"GQ\": \"Equatorial Guinea\",\n \"GR\": \"Greece\",\n \"GS\": \"South Georgia and the South Sandwich Islands\",\n \"GT\": \"Guatemala\",\n \"GU\": \"Guam\",\n \"GW\": \"Guinea-Bissau\",\n \"GY\": \"Guyana\",\n \"HK\": \"Hong Kong\",\n \"HM\": \"Heard Island and McDonald Islands\",\n \"HN\": \"Honduras\",\n \"HR\": \"Croatia\",\n \"HT\": \"Haiti\",\n \"HU\": \"Hungary\",\n \"ID\": \"Indonesia\",\n \"IE\": \"Ireland\",\n \"IL\": \"Israel\",\n \"IM\": \"Isle of Man\",\n \"IN\": \"India\",\n \"IO\": \"British Indian Ocean Territory\",\n \"IQ\": \"Iraq\",\n \"IR\": \"Iran\",\n \"IS\": \"Iceland\",\n \"IT\": \"Italy\",\n \"JE\": \"Jersey\",\n \"JM\": \"Jamaica\",\n \"JO\": \"Jordan\",\n \"JP\": \"Japan\",\n \"KE\": \"Kenya\",\n \"KG\": \"Kyrgyzstan\",\n \"KH\": \"Cambodia\",\n \"KI\": \"Kiribati\",\n \"KM\": \"Comoros\",\n \"KN\": \"Saint Kitts and Nevis\",\n \"KP\": \"North Korea\",\n \"KR\": \"South Korea\",\n \"KW\": \"Kuwait\",\n \"KY\": \"Cayman Islands\",\n \"KZ\": \"Kazakhstan\",\n \"LA\": \"Laos\",\n \"LB\": \"Lebanon\",\n \"LC\": \"Saint Lucia\",\n \"LI\": \"Liechtenstein\",\n \"LK\": \"Sri Lanka\",\n \"LR\": \"Liberia\",\n \"LS\": \"Lesotho\",\n \"LT\": \"Lithuania\",\n \"LU\": \"Luxembourg\",\n \"LV\": \"Latvia\",\n \"LY\": \"Libya\",\n \"MA\": \"Morocco\",\n \"MC\": \"Monaco\",\n \"MD\": \"Moldova\",\n \"ME\": \"Montenegro\",\n \"MF\": \"Saint Martin (French Part)\",\n \"MG\": \"Madagascar\",\n \"MH\": \"Marshall Islands\",\n \"MK\": \"North Macedonia\",\n \"ML\": \"Mali\",\n \"MM\": \"Burma\",\n \"MN\": \"Mongolia\",\n \"MO\": \"Macao\",\n \"MP\": \"Northern Mariana Islands\",\n \"MQ\": \"Martinique\",\n \"MR\": \"Mauritania\",\n \"MS\": \"Montserrat\",\n \"MT\": \"Malta\",\n \"MU\": \"Mauritius\",\n \"MV\": \"Maldives\",\n \"MW\": \"Malawi\",\n \"MX\": \"Mexico\",\n \"MY\": \"Malaysia\",\n \"MZ\": \"Mozambique\",\n \"NA\": \"Namibia\",\n \"NC\": \"New Caledonia\",\n \"NE\": \"Niger\",\n \"NF\": \"Norfolk Island\",\n \"NG\": \"Nigeria\",\n \"NI\": \"Nicaragua\",\n \"NL\": \"Netherlands\",\n \"NO\": \"Norway\",\n \"NP\": \"Nepal\",\n \"NR\": \"Nauru\",\n \"NU\": \"Niue\",\n \"NZ\": \"New Zealand\",\n \"OM\": \"Oman\",\n \"OS\": \"South Ossetia\",\n \"PA\": \"Panama\",\n \"PE\": \"Peru\",\n \"PF\": \"French Polynesia\",\n \"PG\": \"Papua New Guinea\",\n \"PH\": \"Philippines\",\n \"PK\": \"Pakistan\",\n \"PL\": \"Poland\",\n \"PM\": \"Saint Pierre and Miquelon\",\n \"PN\": \"Pitcairn\",\n \"PR\": \"Puerto Rico\",\n \"PS\": \"Palestine\",\n \"PT\": \"Portugal\",\n \"PW\": \"Palau\",\n \"PY\": \"Paraguay\",\n \"QA\": \"Qatar\",\n \"RE\": \"Reunion\",\n \"RO\": \"Romania\",\n \"RS\": \"Serbia\",\n \"RU\": \"Russia\",\n \"RW\": \"Rwanda\",\n \"SA\": \"Saudi Arabia\",\n \"SB\": \"Solomon Islands\",\n \"SC\": \"Seychelles\",\n \"SD\": \"Sudan\",\n \"SE\": \"Sweden\",\n \"SG\": \"Singapore\",\n \"SH\": \"Saint Helena\",\n \"SI\": \"Slovenia\",\n \"SJ\": \"Svalbard and Jan Mayen\",\n \"SK\": \"Slovakia\",\n \"SL\": \"Sierra Leone\",\n \"SM\": \"San Marino\",\n \"SN\": \"Senegal\",\n \"SO\": \"Somalia\",\n \"SR\": \"Suriname\",\n \"SS\": \"South Sudan\",\n \"ST\": \"Sao Tome and Principe\",\n \"SV\": \"El Salvador\",\n \"SX\": \"Sint Maarten\",\n \"SY\": \"Syria\",\n \"SZ\": \"Swaziland\",\n \"TA\": \"Tristan da Cunha\",\n \"TC\": \"Turks and Caicos Islands\",\n \"TD\": \"Chad\",\n \"TF\": \"French Southern Territories\",\n \"TG\": \"Togo\",\n \"TH\": \"Thailand\",\n \"TJ\": \"Tajikistan\",\n \"TK\": \"Tokelau\",\n \"TL\": \"Timor-Leste\",\n \"TM\": \"Turkmenistan\",\n \"TN\": \"Tunisia\",\n \"TO\": \"Tonga\",\n \"TR\": \"Turkey\",\n \"TT\": \"Trinidad and Tobago\",\n \"TV\": \"Tuvalu\",\n \"TW\": \"Taiwan\",\n \"TZ\": \"Tanzania\",\n \"UA\": \"Ukraine\",\n \"UG\": \"Uganda\",\n \"UM\": \"United States Minor Outlying Islands\",\n \"US\": \"United States\",\n \"UY\": \"Uruguay\",\n \"UZ\": \"Uzbekistan\",\n \"VA\": \"Holy See (Vatican City State)\",\n \"VC\": \"Saint Vincent and the Grenadines\",\n \"VE\": \"Venezuela\",\n \"VG\": \"Virgin Islands, British\",\n \"VI\": \"Virgin Islands, U.S.\",\n \"VN\": \"Vietnam\",\n \"VU\": \"Vanuatu\",\n \"WF\": \"Wallis and Futuna\",\n \"WS\": \"Samoa\",\n \"XK\": \"Kosovo\",\n \"YE\": \"Yemen\",\n \"YT\": \"Mayotte\",\n \"ZA\": \"South Africa\",\n \"ZM\": \"Zambia\",\n \"ZW\": \"Zimbabwe\",\n \"ZZ\": \"International\"\n}","/**\r\n * Creates Unicode flag from a two-letter ISO country code.\r\n * https://stackoverflow.com/questions/24050671/how-to-put-japan-flag-character-in-a-string\r\n * @param {string} country — A two-letter ISO country code (case-insensitive).\r\n * @return {string}\r\n */\nexport default function getCountryFlag(country) {\n return getRegionalIndicatorSymbol(country[0]) + getRegionalIndicatorSymbol(country[1]);\n}\n/**\r\n * Converts a letter to a Regional Indicator Symbol.\r\n * @param {string} letter\r\n * @return {string}\r\n */\n\nfunction getRegionalIndicatorSymbol(letter) {\n return String.fromCodePoint(0x1F1E6 - 65 + letter.toUpperCase().charCodeAt(0));\n}\n//# sourceMappingURL=unicode.js.map","var _excluded = [\"value\", \"onChange\", \"options\"],\n _excluded2 = [\"value\", \"options\", \"className\", \"iconComponent\", \"getIconAspectRatio\", \"arrowComponent\", \"unicodeFlags\"];\n\nfunction _createForOfIteratorHelperLoose(o, allowArrayLike) { var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"]; if (it) return (it = it.call(o)).next.bind(it); if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") { if (it) o = it; var i = 0; return function () { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }; } throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport React, { useCallback, useMemo } from 'react';\nimport PropTypes from 'prop-types';\nimport classNames from 'classnames';\nimport getUnicodeFlagIcon from 'country-flag-icons/unicode';\nexport default function CountrySelect(_ref) {\n var value = _ref.value,\n onChange = _ref.onChange,\n options = _ref.options,\n rest = _objectWithoutProperties(_ref, _excluded);\n\n var onChange_ = useCallback(function (event) {\n var value = event.target.value;\n onChange(value === 'ZZ' ? undefined : value);\n }, [onChange]);\n var selectedOption = useMemo(function () {\n return getSelectedOption(options, value);\n }, [options, value]); // \"ZZ\" means \"International\".\n // (HTML requires each `