,\n * \ttokens: typeof multi\n * }} ParserInit\n */\n\n/**\n * @typedef {(arg: { scanner: ScannerInit }) => void} TokenPlugin\n */\n\n/**\n * @typedef {(arg: { scanner: ScannerInit, parser: ParserInit }) => void} Plugin\n */\n\n/**\n * De-register all plugins and reset the internal state-machine. Used for\n * testing; not required in practice.\n * @private\n */\nfunction reset() {\n State.groups = {};\n INIT.scanner = null;\n INIT.parser = null;\n INIT.tokenQueue = [];\n INIT.pluginQueue = [];\n INIT.customSchemes = [];\n INIT.initialized = false;\n}\n\n/**\n * Register a token plugin to allow the scanner to recognize additional token\n * types before the parser state machine is constructed from the results.\n * @param {string} name of plugin to register\n * @param {TokenPlugin} plugin function that accepts the scanner state machine\n * and available scanner tokens and collections and extends the state machine to\n * recognize additional tokens or groups.\n */\nfunction registerTokenPlugin(name, plugin) {\n if (typeof plugin !== 'function') {\n throw new Error(`linkifyjs: Invalid token plugin ${plugin} (expects function)`);\n }\n for (let i = 0; i < INIT.tokenQueue.length; i++) {\n if (name === INIT.tokenQueue[i][0]) {\n warn(`linkifyjs: token plugin \"${name}\" already registered - will be overwritten`);\n INIT.tokenQueue[i] = [name, plugin];\n return;\n }\n }\n INIT.tokenQueue.push([name, plugin]);\n if (INIT.initialized) {\n warn(`linkifyjs: already initialized - will not register token plugin \"${name}\" ${warnAdvice}`);\n }\n}\n\n/**\n * Register a linkify plugin\n * @param {string} name of plugin to register\n * @param {Plugin} plugin function that accepts the parser state machine and\n * extends the parser to recognize additional link types\n */\nfunction registerPlugin(name, plugin) {\n if (typeof plugin !== 'function') {\n throw new Error(`linkifyjs: Invalid plugin ${plugin} (expects function)`);\n }\n for (let i = 0; i < INIT.pluginQueue.length; i++) {\n if (name === INIT.pluginQueue[i][0]) {\n warn(`linkifyjs: plugin \"${name}\" already registered - will be overwritten`);\n INIT.pluginQueue[i] = [name, plugin];\n return;\n }\n }\n INIT.pluginQueue.push([name, plugin]);\n if (INIT.initialized) {\n warn(`linkifyjs: already initialized - will not register plugin \"${name}\" ${warnAdvice}`);\n }\n}\n\n/**\n * Detect URLs with the following additional protocol. Anything with format\n * \"protocol://...\" will be considered a link. If `optionalSlashSlash` is set to\n * `true`, anything with format \"protocol:...\" will be considered a link.\n * @param {string} protocol\n * @param {boolean} [optionalSlashSlash]\n */\nfunction registerCustomProtocol(scheme, optionalSlashSlash) {\n if (optionalSlashSlash === void 0) {\n optionalSlashSlash = false;\n }\n if (INIT.initialized) {\n warn(`linkifyjs: already initialized - will not register custom scheme \"${scheme}\" ${warnAdvice}`);\n }\n if (!/^[0-9a-z]+(-[0-9a-z]+)*$/.test(scheme)) {\n throw new Error(`linkifyjs: incorrect scheme format.\n1. Must only contain digits, lowercase ASCII letters or \"-\"\n2. Cannot start or end with \"-\"\n3. \"-\" cannot repeat`);\n }\n INIT.customSchemes.push([scheme, optionalSlashSlash]);\n}\n\n/**\n * Initialize the linkify state machine. Called automatically the first time\n * linkify is called on a string, but may be called manually as well.\n */\nfunction init() {\n // Initialize scanner state machine and plugins\n INIT.scanner = init$2(INIT.customSchemes);\n for (let i = 0; i < INIT.tokenQueue.length; i++) {\n INIT.tokenQueue[i][1]({\n scanner: INIT.scanner\n });\n }\n\n // Initialize parser state machine and plugins\n INIT.parser = init$1(INIT.scanner.tokens);\n for (let i = 0; i < INIT.pluginQueue.length; i++) {\n INIT.pluginQueue[i][1]({\n scanner: INIT.scanner,\n parser: INIT.parser\n });\n }\n INIT.initialized = true;\n}\n\n/**\n * Parse a string into tokens that represent linkable and non-linkable sub-components\n * @param {string} str\n * @return {MultiToken[]} tokens\n */\nfunction tokenize(str) {\n if (!INIT.initialized) {\n init();\n }\n return run(INIT.parser.start, str, run$1(INIT.scanner.start, str));\n}\n\n/**\n * Find a list of linkable items in the given string.\n * @param {string} str string to find links in\n * @param {string | Opts} [type] either formatting options or specific type of\n * links to find, e.g., 'url' or 'email'\n * @param {Opts} [opts] formatting options for final output. Cannot be specified\n * if opts already provided in `type` argument\n */\nfunction find(str, type, opts) {\n if (type === void 0) {\n type = null;\n }\n if (opts === void 0) {\n opts = null;\n }\n if (type && typeof type === 'object') {\n if (opts) {\n throw Error(`linkifyjs: Invalid link type ${type}; must be a string`);\n }\n opts = type;\n type = null;\n }\n const options = new Options(opts);\n const tokens = tokenize(str);\n const filtered = [];\n for (let i = 0; i < tokens.length; i++) {\n const token = tokens[i];\n if (token.isLink && (!type || token.t === type) && options.check(token)) {\n filtered.push(token.toFormattedObject(options));\n }\n }\n return filtered;\n}\n\n/**\n * Is the given string valid linkable text of some sort. Note that this does not\n * trim the text for you.\n *\n * Optionally pass in a second `type` param, which is the type of link to test\n * for.\n *\n * For example,\n *\n * linkify.test(str, 'email');\n *\n * Returns `true` if str is a valid email.\n * @param {string} str string to test for links\n * @param {string} [type] optional specific link type to look for\n * @returns boolean true/false\n */\nfunction test(str, type) {\n if (type === void 0) {\n type = null;\n }\n const tokens = tokenize(str);\n return tokens.length === 1 && tokens[0].isLink && (!type || tokens[0].t === type);\n}\n\nexport { MultiToken, Options, State, createTokenClass, find, init, multi, options, regexp, registerCustomProtocol, registerPlugin, registerTokenPlugin, reset, stringToArray, test, tokenize };\n","import * as React from 'react';\nimport { Options, options, tokenize } from 'linkifyjs';\n\n/**\n * Given a string, converts to an array of valid React components\n * (which may include strings)\n * @param {string} str\n * @param {Options} opts\n * @param {{ [elementId: string]: number }} meta\n * @returns {React.ReactNodeArray}\n */\nfunction stringToElements(str, opts, meta) {\n const tokens = tokenize(str);\n const elements = [];\n for (let i = 0; i < tokens.length; i++) {\n const token = tokens[i];\n if (token.t === 'nl' && opts.get('nl2br')) {\n const key = `__linkify-el-${meta.elementId++}`;\n elements.push(React.createElement('br', {\n key\n }));\n } else if (!token.isLink || !opts.check(token)) {\n // Regular text\n elements.push(token.toString());\n } else {\n let rendered = opts.render(token);\n if (!('key' in rendered.props)) {\n // Ensure generated element has unique key\n const key = `__linkify-el-${meta.elementId++}`;\n const props = options.assign({\n key\n }, rendered.props);\n rendered = React.cloneElement(rendered, props);\n }\n elements.push(rendered);\n }\n }\n return elements;\n}\n\n// Recursively linkify the contents of the given React Element instance\n/**\n * @template P\n * @template {string | React.JSXElementConstructor} T\n * @param {React.ReactElement
} element\n * @param {Options} opts\n * @param {{ [elementId: string]: number }} meta\n * @returns {React.ReactElement
}\n */\nfunction linkifyReactElement(element, opts, meta) {\n if (React.Children.count(element.props.children) === 0) {\n // No need to clone if the element had no children\n return element;\n }\n const children = [];\n React.Children.forEach(element.props.children, child => {\n if (typeof child === 'string') {\n // ensure that we always generate unique element IDs for keys\n children.push.apply(children, stringToElements(child, opts, meta));\n } else if (React.isValidElement(child)) {\n if (typeof child.type === 'string' && opts.ignoreTags.indexOf(child.type.toUpperCase()) >= 0) {\n // Don't linkify this element\n children.push(child);\n } else {\n children.push(linkifyReactElement(child, opts, meta));\n }\n } else {\n // Unknown element type, just push\n children.push(child);\n }\n });\n\n // Set a default unique key, copy over remaining props\n const key = `__linkify-el-${meta.elementId++}`;\n const newProps = options.assign({\n key\n }, element.props);\n return React.cloneElement(element, newProps, children);\n}\n\n/**\n * @template P\n * @template {string | React.JSXElementConstructor
} T\n * @param {P & { as?: T, tagName?: T, options?: import('linkifyjs').Opts, children?: React.ReactNode}} props\n * @returns {React.ReactElement
}\n */\nconst Linkify = props => {\n // Copy over all non-linkify-specific props\n let linkId = 0;\n const defaultLinkRender = _ref => {\n let {\n tagName,\n attributes,\n content\n } = _ref;\n attributes.key = `__linkify-lnk-${linkId++}`;\n if (attributes.class) {\n attributes.className = attributes.class;\n delete attributes.class;\n }\n return React.createElement(tagName, attributes, content);\n };\n const newProps = {\n key: '__linkify-wrapper'\n };\n for (const prop in props) {\n if (prop !== 'options' && prop !== 'as' && prop !== 'tagName' && prop !== 'children') {\n newProps[prop] = props[prop];\n }\n }\n const opts = new Options(props.options, defaultLinkRender);\n const as = props.as || props.tagName || React.Fragment || 'span';\n const children = props.children;\n const element = React.createElement(as, newProps, children);\n return linkifyReactElement(element, opts, {\n elementId: 0\n });\n};\n\nexport { Linkify as default };\n","var getNative = require('./_getNative'),\n root = require('./_root');\n\n/* Built-in method references that are verified to be native. */\nvar DataView = getNative(root, 'DataView');\n\nmodule.exports = DataView;\n","var hashClear = require('./_hashClear'),\n hashDelete = require('./_hashDelete'),\n hashGet = require('./_hashGet'),\n hashHas = require('./_hashHas'),\n hashSet = require('./_hashSet');\n\n/**\n * Creates a hash object.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction Hash(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n// Add methods to `Hash`.\nHash.prototype.clear = hashClear;\nHash.prototype['delete'] = hashDelete;\nHash.prototype.get = hashGet;\nHash.prototype.has = hashHas;\nHash.prototype.set = hashSet;\n\nmodule.exports = Hash;\n","var listCacheClear = require('./_listCacheClear'),\n listCacheDelete = require('./_listCacheDelete'),\n listCacheGet = require('./_listCacheGet'),\n listCacheHas = require('./_listCacheHas'),\n listCacheSet = require('./_listCacheSet');\n\n/**\n * Creates an list cache object.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction ListCache(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n// Add methods to `ListCache`.\nListCache.prototype.clear = listCacheClear;\nListCache.prototype['delete'] = listCacheDelete;\nListCache.prototype.get = listCacheGet;\nListCache.prototype.has = listCacheHas;\nListCache.prototype.set = listCacheSet;\n\nmodule.exports = ListCache;\n","var getNative = require('./_getNative'),\n root = require('./_root');\n\n/* Built-in method references that are verified to be native. */\nvar Map = getNative(root, 'Map');\n\nmodule.exports = Map;\n","var mapCacheClear = require('./_mapCacheClear'),\n mapCacheDelete = require('./_mapCacheDelete'),\n mapCacheGet = require('./_mapCacheGet'),\n mapCacheHas = require('./_mapCacheHas'),\n mapCacheSet = require('./_mapCacheSet');\n\n/**\n * Creates a map cache object to store key-value pairs.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction MapCache(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n// Add methods to `MapCache`.\nMapCache.prototype.clear = mapCacheClear;\nMapCache.prototype['delete'] = mapCacheDelete;\nMapCache.prototype.get = mapCacheGet;\nMapCache.prototype.has = mapCacheHas;\nMapCache.prototype.set = mapCacheSet;\n\nmodule.exports = MapCache;\n","var getNative = require('./_getNative'),\n root = require('./_root');\n\n/* Built-in method references that are verified to be native. */\nvar Promise = getNative(root, 'Promise');\n\nmodule.exports = Promise;\n","var getNative = require('./_getNative'),\n root = require('./_root');\n\n/* Built-in method references that are verified to be native. */\nvar Set = getNative(root, 'Set');\n\nmodule.exports = Set;\n","var MapCache = require('./_MapCache'),\n setCacheAdd = require('./_setCacheAdd'),\n setCacheHas = require('./_setCacheHas');\n\n/**\n *\n * Creates an array cache object to store unique values.\n *\n * @private\n * @constructor\n * @param {Array} [values] The values to cache.\n */\nfunction SetCache(values) {\n var index = -1,\n length = values == null ? 0 : values.length;\n\n this.__data__ = new MapCache;\n while (++index < length) {\n this.add(values[index]);\n }\n}\n\n// Add methods to `SetCache`.\nSetCache.prototype.add = SetCache.prototype.push = setCacheAdd;\nSetCache.prototype.has = setCacheHas;\n\nmodule.exports = SetCache;\n","var ListCache = require('./_ListCache'),\n stackClear = require('./_stackClear'),\n stackDelete = require('./_stackDelete'),\n stackGet = require('./_stackGet'),\n stackHas = require('./_stackHas'),\n stackSet = require('./_stackSet');\n\n/**\n * Creates a stack cache object to store key-value pairs.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction Stack(entries) {\n var data = this.__data__ = new ListCache(entries);\n this.size = data.size;\n}\n\n// Add methods to `Stack`.\nStack.prototype.clear = stackClear;\nStack.prototype['delete'] = stackDelete;\nStack.prototype.get = stackGet;\nStack.prototype.has = stackHas;\nStack.prototype.set = stackSet;\n\nmodule.exports = Stack;\n","var root = require('./_root');\n\n/** Built-in value references. */\nvar Symbol = root.Symbol;\n\nmodule.exports = Symbol;\n","var root = require('./_root');\n\n/** Built-in value references. */\nvar Uint8Array = root.Uint8Array;\n\nmodule.exports = Uint8Array;\n","var getNative = require('./_getNative'),\n root = require('./_root');\n\n/* Built-in method references that are verified to be native. */\nvar WeakMap = getNative(root, 'WeakMap');\n\nmodule.exports = WeakMap;\n","/**\n * A specialized version of `_.filter` for arrays without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {Array} Returns the new filtered array.\n */\nfunction arrayFilter(array, predicate) {\n var index = -1,\n length = array == null ? 0 : array.length,\n resIndex = 0,\n result = [];\n\n while (++index < length) {\n var value = array[index];\n if (predicate(value, index, array)) {\n result[resIndex++] = value;\n }\n }\n return result;\n}\n\nmodule.exports = arrayFilter;\n","var baseTimes = require('./_baseTimes'),\n isArguments = require('./isArguments'),\n isArray = require('./isArray'),\n isBuffer = require('./isBuffer'),\n isIndex = require('./_isIndex'),\n isTypedArray = require('./isTypedArray');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Creates an array of the enumerable property names of the array-like `value`.\n *\n * @private\n * @param {*} value The value to query.\n * @param {boolean} inherited Specify returning inherited property names.\n * @returns {Array} Returns the array of property names.\n */\nfunction arrayLikeKeys(value, inherited) {\n var isArr = isArray(value),\n isArg = !isArr && isArguments(value),\n isBuff = !isArr && !isArg && isBuffer(value),\n isType = !isArr && !isArg && !isBuff && isTypedArray(value),\n skipIndexes = isArr || isArg || isBuff || isType,\n result = skipIndexes ? baseTimes(value.length, String) : [],\n length = result.length;\n\n for (var key in value) {\n if ((inherited || hasOwnProperty.call(value, key)) &&\n !(skipIndexes && (\n // Safari 9 has enumerable `arguments.length` in strict mode.\n key == 'length' ||\n // Node.js 0.10 has enumerable non-index properties on buffers.\n (isBuff && (key == 'offset' || key == 'parent')) ||\n // PhantomJS 2 has enumerable non-index properties on typed arrays.\n (isType && (key == 'buffer' || key == 'byteLength' || key == 'byteOffset')) ||\n // Skip index properties.\n isIndex(key, length)\n ))) {\n result.push(key);\n }\n }\n return result;\n}\n\nmodule.exports = arrayLikeKeys;\n","/**\n * Appends the elements of `values` to `array`.\n *\n * @private\n * @param {Array} array The array to modify.\n * @param {Array} values The values to append.\n * @returns {Array} Returns `array`.\n */\nfunction arrayPush(array, values) {\n var index = -1,\n length = values.length,\n offset = array.length;\n\n while (++index < length) {\n array[offset + index] = values[index];\n }\n return array;\n}\n\nmodule.exports = arrayPush;\n","/**\n * A specialized version of `_.some` for arrays without support for iteratee\n * shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {boolean} Returns `true` if any element passes the predicate check,\n * else `false`.\n */\nfunction arraySome(array, predicate) {\n var index = -1,\n length = array == null ? 0 : array.length;\n\n while (++index < length) {\n if (predicate(array[index], index, array)) {\n return true;\n }\n }\n return false;\n}\n\nmodule.exports = arraySome;\n","var eq = require('./eq');\n\n/**\n * Gets the index at which the `key` is found in `array` of key-value pairs.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {*} key The key to search for.\n * @returns {number} Returns the index of the matched value, else `-1`.\n */\nfunction assocIndexOf(array, key) {\n var length = array.length;\n while (length--) {\n if (eq(array[length][0], key)) {\n return length;\n }\n }\n return -1;\n}\n\nmodule.exports = assocIndexOf;\n","var arrayPush = require('./_arrayPush'),\n isArray = require('./isArray');\n\n/**\n * The base implementation of `getAllKeys` and `getAllKeysIn` which uses\n * `keysFunc` and `symbolsFunc` to get the enumerable property names and\n * symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Function} keysFunc The function to get the keys of `object`.\n * @param {Function} symbolsFunc The function to get the symbols of `object`.\n * @returns {Array} Returns the array of property names and symbols.\n */\nfunction baseGetAllKeys(object, keysFunc, symbolsFunc) {\n var result = keysFunc(object);\n return isArray(object) ? result : arrayPush(result, symbolsFunc(object));\n}\n\nmodule.exports = baseGetAllKeys;\n","var Symbol = require('./_Symbol'),\n getRawTag = require('./_getRawTag'),\n objectToString = require('./_objectToString');\n\n/** `Object#toString` result references. */\nvar nullTag = '[object Null]',\n undefinedTag = '[object Undefined]';\n\n/** Built-in value references. */\nvar symToStringTag = Symbol ? Symbol.toStringTag : undefined;\n\n/**\n * The base implementation of `getTag` without fallbacks for buggy environments.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the `toStringTag`.\n */\nfunction baseGetTag(value) {\n if (value == null) {\n return value === undefined ? undefinedTag : nullTag;\n }\n return (symToStringTag && symToStringTag in Object(value))\n ? getRawTag(value)\n : objectToString(value);\n}\n\nmodule.exports = baseGetTag;\n","var baseGetTag = require('./_baseGetTag'),\n isObjectLike = require('./isObjectLike');\n\n/** `Object#toString` result references. */\nvar argsTag = '[object Arguments]';\n\n/**\n * The base implementation of `_.isArguments`.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an `arguments` object,\n */\nfunction baseIsArguments(value) {\n return isObjectLike(value) && baseGetTag(value) == argsTag;\n}\n\nmodule.exports = baseIsArguments;\n","var baseIsEqualDeep = require('./_baseIsEqualDeep'),\n isObjectLike = require('./isObjectLike');\n\n/**\n * The base implementation of `_.isEqual` which supports partial comparisons\n * and tracks traversed objects.\n *\n * @private\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @param {boolean} bitmask The bitmask flags.\n * 1 - Unordered comparison\n * 2 - Partial comparison\n * @param {Function} [customizer] The function to customize comparisons.\n * @param {Object} [stack] Tracks traversed `value` and `other` objects.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n */\nfunction baseIsEqual(value, other, bitmask, customizer, stack) {\n if (value === other) {\n return true;\n }\n if (value == null || other == null || (!isObjectLike(value) && !isObjectLike(other))) {\n return value !== value && other !== other;\n }\n return baseIsEqualDeep(value, other, bitmask, customizer, baseIsEqual, stack);\n}\n\nmodule.exports = baseIsEqual;\n","var Stack = require('./_Stack'),\n equalArrays = require('./_equalArrays'),\n equalByTag = require('./_equalByTag'),\n equalObjects = require('./_equalObjects'),\n getTag = require('./_getTag'),\n isArray = require('./isArray'),\n isBuffer = require('./isBuffer'),\n isTypedArray = require('./isTypedArray');\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG = 1;\n\n/** `Object#toString` result references. */\nvar argsTag = '[object Arguments]',\n arrayTag = '[object Array]',\n objectTag = '[object Object]';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * A specialized version of `baseIsEqual` for arrays and objects which performs\n * deep comparisons and tracks traversed objects enabling objects with circular\n * references to be compared.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} [stack] Tracks traversed `object` and `other` objects.\n * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.\n */\nfunction baseIsEqualDeep(object, other, bitmask, customizer, equalFunc, stack) {\n var objIsArr = isArray(object),\n othIsArr = isArray(other),\n objTag = objIsArr ? arrayTag : getTag(object),\n othTag = othIsArr ? arrayTag : getTag(other);\n\n objTag = objTag == argsTag ? objectTag : objTag;\n othTag = othTag == argsTag ? objectTag : othTag;\n\n var objIsObj = objTag == objectTag,\n othIsObj = othTag == objectTag,\n isSameTag = objTag == othTag;\n\n if (isSameTag && isBuffer(object)) {\n if (!isBuffer(other)) {\n return false;\n }\n objIsArr = true;\n objIsObj = false;\n }\n if (isSameTag && !objIsObj) {\n stack || (stack = new Stack);\n return (objIsArr || isTypedArray(object))\n ? equalArrays(object, other, bitmask, customizer, equalFunc, stack)\n : equalByTag(object, other, objTag, bitmask, customizer, equalFunc, stack);\n }\n if (!(bitmask & COMPARE_PARTIAL_FLAG)) {\n var objIsWrapped = objIsObj && hasOwnProperty.call(object, '__wrapped__'),\n othIsWrapped = othIsObj && hasOwnProperty.call(other, '__wrapped__');\n\n if (objIsWrapped || othIsWrapped) {\n var objUnwrapped = objIsWrapped ? object.value() : object,\n othUnwrapped = othIsWrapped ? other.value() : other;\n\n stack || (stack = new Stack);\n return equalFunc(objUnwrapped, othUnwrapped, bitmask, customizer, stack);\n }\n }\n if (!isSameTag) {\n return false;\n }\n stack || (stack = new Stack);\n return equalObjects(object, other, bitmask, customizer, equalFunc, stack);\n}\n\nmodule.exports = baseIsEqualDeep;\n","var isFunction = require('./isFunction'),\n isMasked = require('./_isMasked'),\n isObject = require('./isObject'),\n toSource = require('./_toSource');\n\n/**\n * Used to match `RegExp`\n * [syntax characters](http://ecma-international.org/ecma-262/7.0/#sec-patterns).\n */\nvar reRegExpChar = /[\\\\^$.*+?()[\\]{}|]/g;\n\n/** Used to detect host constructors (Safari). */\nvar reIsHostCtor = /^\\[object .+?Constructor\\]$/;\n\n/** Used for built-in method references. */\nvar funcProto = Function.prototype,\n objectProto = Object.prototype;\n\n/** Used to resolve the decompiled source of functions. */\nvar funcToString = funcProto.toString;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/** Used to detect if a method is native. */\nvar reIsNative = RegExp('^' +\n funcToString.call(hasOwnProperty).replace(reRegExpChar, '\\\\$&')\n .replace(/hasOwnProperty|(function).*?(?=\\\\\\()| for .+?(?=\\\\\\])/g, '$1.*?') + '$'\n);\n\n/**\n * The base implementation of `_.isNative` without bad shim checks.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a native function,\n * else `false`.\n */\nfunction baseIsNative(value) {\n if (!isObject(value) || isMasked(value)) {\n return false;\n }\n var pattern = isFunction(value) ? reIsNative : reIsHostCtor;\n return pattern.test(toSource(value));\n}\n\nmodule.exports = baseIsNative;\n","var baseGetTag = require('./_baseGetTag'),\n isLength = require('./isLength'),\n isObjectLike = require('./isObjectLike');\n\n/** `Object#toString` result references. */\nvar argsTag = '[object Arguments]',\n arrayTag = '[object Array]',\n boolTag = '[object Boolean]',\n dateTag = '[object Date]',\n errorTag = '[object Error]',\n funcTag = '[object Function]',\n mapTag = '[object Map]',\n numberTag = '[object Number]',\n objectTag = '[object Object]',\n regexpTag = '[object RegExp]',\n setTag = '[object Set]',\n stringTag = '[object String]',\n weakMapTag = '[object WeakMap]';\n\nvar arrayBufferTag = '[object ArrayBuffer]',\n dataViewTag = '[object DataView]',\n float32Tag = '[object Float32Array]',\n float64Tag = '[object Float64Array]',\n int8Tag = '[object Int8Array]',\n int16Tag = '[object Int16Array]',\n int32Tag = '[object Int32Array]',\n uint8Tag = '[object Uint8Array]',\n uint8ClampedTag = '[object Uint8ClampedArray]',\n uint16Tag = '[object Uint16Array]',\n uint32Tag = '[object Uint32Array]';\n\n/** Used to identify `toStringTag` values of typed arrays. */\nvar typedArrayTags = {};\ntypedArrayTags[float32Tag] = typedArrayTags[float64Tag] =\ntypedArrayTags[int8Tag] = typedArrayTags[int16Tag] =\ntypedArrayTags[int32Tag] = typedArrayTags[uint8Tag] =\ntypedArrayTags[uint8ClampedTag] = typedArrayTags[uint16Tag] =\ntypedArrayTags[uint32Tag] = true;\ntypedArrayTags[argsTag] = typedArrayTags[arrayTag] =\ntypedArrayTags[arrayBufferTag] = typedArrayTags[boolTag] =\ntypedArrayTags[dataViewTag] = typedArrayTags[dateTag] =\ntypedArrayTags[errorTag] = typedArrayTags[funcTag] =\ntypedArrayTags[mapTag] = typedArrayTags[numberTag] =\ntypedArrayTags[objectTag] = typedArrayTags[regexpTag] =\ntypedArrayTags[setTag] = typedArrayTags[stringTag] =\ntypedArrayTags[weakMapTag] = false;\n\n/**\n * The base implementation of `_.isTypedArray` without Node.js optimizations.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.\n */\nfunction baseIsTypedArray(value) {\n return isObjectLike(value) &&\n isLength(value.length) && !!typedArrayTags[baseGetTag(value)];\n}\n\nmodule.exports = baseIsTypedArray;\n","var isPrototype = require('./_isPrototype'),\n nativeKeys = require('./_nativeKeys');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * The base implementation of `_.keys` which doesn't treat sparse arrays as dense.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\nfunction baseKeys(object) {\n if (!isPrototype(object)) {\n return nativeKeys(object);\n }\n var result = [];\n for (var key in Object(object)) {\n if (hasOwnProperty.call(object, key) && key != 'constructor') {\n result.push(key);\n }\n }\n return result;\n}\n\nmodule.exports = baseKeys;\n","/**\n * The base implementation of `_.times` without support for iteratee shorthands\n * or max array length checks.\n *\n * @private\n * @param {number} n The number of times to invoke `iteratee`.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns the array of results.\n */\nfunction baseTimes(n, iteratee) {\n var index = -1,\n result = Array(n);\n\n while (++index < n) {\n result[index] = iteratee(index);\n }\n return result;\n}\n\nmodule.exports = baseTimes;\n","/**\n * The base implementation of `_.unary` without support for storing metadata.\n *\n * @private\n * @param {Function} func The function to cap arguments for.\n * @returns {Function} Returns the new capped function.\n */\nfunction baseUnary(func) {\n return function(value) {\n return func(value);\n };\n}\n\nmodule.exports = baseUnary;\n","/**\n * Checks if a `cache` value for `key` exists.\n *\n * @private\n * @param {Object} cache The cache to query.\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction cacheHas(cache, key) {\n return cache.has(key);\n}\n\nmodule.exports = cacheHas;\n","var root = require('./_root');\n\n/** Used to detect overreaching core-js shims. */\nvar coreJsData = root['__core-js_shared__'];\n\nmodule.exports = coreJsData;\n","var SetCache = require('./_SetCache'),\n arraySome = require('./_arraySome'),\n cacheHas = require('./_cacheHas');\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG = 1,\n COMPARE_UNORDERED_FLAG = 2;\n\n/**\n * A specialized version of `baseIsEqualDeep` for arrays with support for\n * partial deep comparisons.\n *\n * @private\n * @param {Array} array The array to compare.\n * @param {Array} other The other array to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} stack Tracks traversed `array` and `other` objects.\n * @returns {boolean} Returns `true` if the arrays are equivalent, else `false`.\n */\nfunction equalArrays(array, other, bitmask, customizer, equalFunc, stack) {\n var isPartial = bitmask & COMPARE_PARTIAL_FLAG,\n arrLength = array.length,\n othLength = other.length;\n\n if (arrLength != othLength && !(isPartial && othLength > arrLength)) {\n return false;\n }\n // Check that cyclic values are equal.\n var arrStacked = stack.get(array);\n var othStacked = stack.get(other);\n if (arrStacked && othStacked) {\n return arrStacked == other && othStacked == array;\n }\n var index = -1,\n result = true,\n seen = (bitmask & COMPARE_UNORDERED_FLAG) ? new SetCache : undefined;\n\n stack.set(array, other);\n stack.set(other, array);\n\n // Ignore non-index properties.\n while (++index < arrLength) {\n var arrValue = array[index],\n othValue = other[index];\n\n if (customizer) {\n var compared = isPartial\n ? customizer(othValue, arrValue, index, other, array, stack)\n : customizer(arrValue, othValue, index, array, other, stack);\n }\n if (compared !== undefined) {\n if (compared) {\n continue;\n }\n result = false;\n break;\n }\n // Recursively compare arrays (susceptible to call stack limits).\n if (seen) {\n if (!arraySome(other, function(othValue, othIndex) {\n if (!cacheHas(seen, othIndex) &&\n (arrValue === othValue || equalFunc(arrValue, othValue, bitmask, customizer, stack))) {\n return seen.push(othIndex);\n }\n })) {\n result = false;\n break;\n }\n } else if (!(\n arrValue === othValue ||\n equalFunc(arrValue, othValue, bitmask, customizer, stack)\n )) {\n result = false;\n break;\n }\n }\n stack['delete'](array);\n stack['delete'](other);\n return result;\n}\n\nmodule.exports = equalArrays;\n","var Symbol = require('./_Symbol'),\n Uint8Array = require('./_Uint8Array'),\n eq = require('./eq'),\n equalArrays = require('./_equalArrays'),\n mapToArray = require('./_mapToArray'),\n setToArray = require('./_setToArray');\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG = 1,\n COMPARE_UNORDERED_FLAG = 2;\n\n/** `Object#toString` result references. */\nvar boolTag = '[object Boolean]',\n dateTag = '[object Date]',\n errorTag = '[object Error]',\n mapTag = '[object Map]',\n numberTag = '[object Number]',\n regexpTag = '[object RegExp]',\n setTag = '[object Set]',\n stringTag = '[object String]',\n symbolTag = '[object Symbol]';\n\nvar arrayBufferTag = '[object ArrayBuffer]',\n dataViewTag = '[object DataView]';\n\n/** Used to convert symbols to primitives and strings. */\nvar symbolProto = Symbol ? Symbol.prototype : undefined,\n symbolValueOf = symbolProto ? symbolProto.valueOf : undefined;\n\n/**\n * A specialized version of `baseIsEqualDeep` for comparing objects of\n * the same `toStringTag`.\n *\n * **Note:** This function only supports comparing values with tags of\n * `Boolean`, `Date`, `Error`, `Number`, `RegExp`, or `String`.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {string} tag The `toStringTag` of the objects to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} stack Tracks traversed `object` and `other` objects.\n * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.\n */\nfunction equalByTag(object, other, tag, bitmask, customizer, equalFunc, stack) {\n switch (tag) {\n case dataViewTag:\n if ((object.byteLength != other.byteLength) ||\n (object.byteOffset != other.byteOffset)) {\n return false;\n }\n object = object.buffer;\n other = other.buffer;\n\n case arrayBufferTag:\n if ((object.byteLength != other.byteLength) ||\n !equalFunc(new Uint8Array(object), new Uint8Array(other))) {\n return false;\n }\n return true;\n\n case boolTag:\n case dateTag:\n case numberTag:\n // Coerce booleans to `1` or `0` and dates to milliseconds.\n // Invalid dates are coerced to `NaN`.\n return eq(+object, +other);\n\n case errorTag:\n return object.name == other.name && object.message == other.message;\n\n case regexpTag:\n case stringTag:\n // Coerce regexes to strings and treat strings, primitives and objects,\n // as equal. See http://www.ecma-international.org/ecma-262/7.0/#sec-regexp.prototype.tostring\n // for more details.\n return object == (other + '');\n\n case mapTag:\n var convert = mapToArray;\n\n case setTag:\n var isPartial = bitmask & COMPARE_PARTIAL_FLAG;\n convert || (convert = setToArray);\n\n if (object.size != other.size && !isPartial) {\n return false;\n }\n // Assume cyclic values are equal.\n var stacked = stack.get(object);\n if (stacked) {\n return stacked == other;\n }\n bitmask |= COMPARE_UNORDERED_FLAG;\n\n // Recursively compare objects (susceptible to call stack limits).\n stack.set(object, other);\n var result = equalArrays(convert(object), convert(other), bitmask, customizer, equalFunc, stack);\n stack['delete'](object);\n return result;\n\n case symbolTag:\n if (symbolValueOf) {\n return symbolValueOf.call(object) == symbolValueOf.call(other);\n }\n }\n return false;\n}\n\nmodule.exports = equalByTag;\n","var getAllKeys = require('./_getAllKeys');\n\n/** Used to compose bitmasks for value comparisons. */\nvar COMPARE_PARTIAL_FLAG = 1;\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * A specialized version of `baseIsEqualDeep` for objects with support for\n * partial deep comparisons.\n *\n * @private\n * @param {Object} object The object to compare.\n * @param {Object} other The other object to compare.\n * @param {number} bitmask The bitmask flags. See `baseIsEqual` for more details.\n * @param {Function} customizer The function to customize comparisons.\n * @param {Function} equalFunc The function to determine equivalents of values.\n * @param {Object} stack Tracks traversed `object` and `other` objects.\n * @returns {boolean} Returns `true` if the objects are equivalent, else `false`.\n */\nfunction equalObjects(object, other, bitmask, customizer, equalFunc, stack) {\n var isPartial = bitmask & COMPARE_PARTIAL_FLAG,\n objProps = getAllKeys(object),\n objLength = objProps.length,\n othProps = getAllKeys(other),\n othLength = othProps.length;\n\n if (objLength != othLength && !isPartial) {\n return false;\n }\n var index = objLength;\n while (index--) {\n var key = objProps[index];\n if (!(isPartial ? key in other : hasOwnProperty.call(other, key))) {\n return false;\n }\n }\n // Check that cyclic values are equal.\n var objStacked = stack.get(object);\n var othStacked = stack.get(other);\n if (objStacked && othStacked) {\n return objStacked == other && othStacked == object;\n }\n var result = true;\n stack.set(object, other);\n stack.set(other, object);\n\n var skipCtor = isPartial;\n while (++index < objLength) {\n key = objProps[index];\n var objValue = object[key],\n othValue = other[key];\n\n if (customizer) {\n var compared = isPartial\n ? customizer(othValue, objValue, key, other, object, stack)\n : customizer(objValue, othValue, key, object, other, stack);\n }\n // Recursively compare objects (susceptible to call stack limits).\n if (!(compared === undefined\n ? (objValue === othValue || equalFunc(objValue, othValue, bitmask, customizer, stack))\n : compared\n )) {\n result = false;\n break;\n }\n skipCtor || (skipCtor = key == 'constructor');\n }\n if (result && !skipCtor) {\n var objCtor = object.constructor,\n othCtor = other.constructor;\n\n // Non `Object` object instances with different constructors are not equal.\n if (objCtor != othCtor &&\n ('constructor' in object && 'constructor' in other) &&\n !(typeof objCtor == 'function' && objCtor instanceof objCtor &&\n typeof othCtor == 'function' && othCtor instanceof othCtor)) {\n result = false;\n }\n }\n stack['delete'](object);\n stack['delete'](other);\n return result;\n}\n\nmodule.exports = equalObjects;\n","/** Detect free variable `global` from Node.js. */\nvar freeGlobal = typeof global == 'object' && global && global.Object === Object && global;\n\nmodule.exports = freeGlobal;\n","var baseGetAllKeys = require('./_baseGetAllKeys'),\n getSymbols = require('./_getSymbols'),\n keys = require('./keys');\n\n/**\n * Creates an array of own enumerable property names and symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names and symbols.\n */\nfunction getAllKeys(object) {\n return baseGetAllKeys(object, keys, getSymbols);\n}\n\nmodule.exports = getAllKeys;\n","var isKeyable = require('./_isKeyable');\n\n/**\n * Gets the data for `map`.\n *\n * @private\n * @param {Object} map The map to query.\n * @param {string} key The reference key.\n * @returns {*} Returns the map data.\n */\nfunction getMapData(map, key) {\n var data = map.__data__;\n return isKeyable(key)\n ? data[typeof key == 'string' ? 'string' : 'hash']\n : data.map;\n}\n\nmodule.exports = getMapData;\n","var baseIsNative = require('./_baseIsNative'),\n getValue = require('./_getValue');\n\n/**\n * Gets the native function at `key` of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {string} key The key of the method to get.\n * @returns {*} Returns the function if it's native, else `undefined`.\n */\nfunction getNative(object, key) {\n var value = getValue(object, key);\n return baseIsNative(value) ? value : undefined;\n}\n\nmodule.exports = getNative;\n","var Symbol = require('./_Symbol');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar nativeObjectToString = objectProto.toString;\n\n/** Built-in value references. */\nvar symToStringTag = Symbol ? Symbol.toStringTag : undefined;\n\n/**\n * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the raw `toStringTag`.\n */\nfunction getRawTag(value) {\n var isOwn = hasOwnProperty.call(value, symToStringTag),\n tag = value[symToStringTag];\n\n try {\n value[symToStringTag] = undefined;\n var unmasked = true;\n } catch (e) {}\n\n var result = nativeObjectToString.call(value);\n if (unmasked) {\n if (isOwn) {\n value[symToStringTag] = tag;\n } else {\n delete value[symToStringTag];\n }\n }\n return result;\n}\n\nmodule.exports = getRawTag;\n","var arrayFilter = require('./_arrayFilter'),\n stubArray = require('./stubArray');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Built-in value references. */\nvar propertyIsEnumerable = objectProto.propertyIsEnumerable;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeGetSymbols = Object.getOwnPropertySymbols;\n\n/**\n * Creates an array of the own enumerable symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of symbols.\n */\nvar getSymbols = !nativeGetSymbols ? stubArray : function(object) {\n if (object == null) {\n return [];\n }\n object = Object(object);\n return arrayFilter(nativeGetSymbols(object), function(symbol) {\n return propertyIsEnumerable.call(object, symbol);\n });\n};\n\nmodule.exports = getSymbols;\n","var DataView = require('./_DataView'),\n Map = require('./_Map'),\n Promise = require('./_Promise'),\n Set = require('./_Set'),\n WeakMap = require('./_WeakMap'),\n baseGetTag = require('./_baseGetTag'),\n toSource = require('./_toSource');\n\n/** `Object#toString` result references. */\nvar mapTag = '[object Map]',\n objectTag = '[object Object]',\n promiseTag = '[object Promise]',\n setTag = '[object Set]',\n weakMapTag = '[object WeakMap]';\n\nvar dataViewTag = '[object DataView]';\n\n/** Used to detect maps, sets, and weakmaps. */\nvar dataViewCtorString = toSource(DataView),\n mapCtorString = toSource(Map),\n promiseCtorString = toSource(Promise),\n setCtorString = toSource(Set),\n weakMapCtorString = toSource(WeakMap);\n\n/**\n * Gets the `toStringTag` of `value`.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the `toStringTag`.\n */\nvar getTag = baseGetTag;\n\n// Fallback for data views, maps, sets, and weak maps in IE 11 and promises in Node.js < 6.\nif ((DataView && getTag(new DataView(new ArrayBuffer(1))) != dataViewTag) ||\n (Map && getTag(new Map) != mapTag) ||\n (Promise && getTag(Promise.resolve()) != promiseTag) ||\n (Set && getTag(new Set) != setTag) ||\n (WeakMap && getTag(new WeakMap) != weakMapTag)) {\n getTag = function(value) {\n var result = baseGetTag(value),\n Ctor = result == objectTag ? value.constructor : undefined,\n ctorString = Ctor ? toSource(Ctor) : '';\n\n if (ctorString) {\n switch (ctorString) {\n case dataViewCtorString: return dataViewTag;\n case mapCtorString: return mapTag;\n case promiseCtorString: return promiseTag;\n case setCtorString: return setTag;\n case weakMapCtorString: return weakMapTag;\n }\n }\n return result;\n };\n}\n\nmodule.exports = getTag;\n","/**\n * Gets the value at `key` of `object`.\n *\n * @private\n * @param {Object} [object] The object to query.\n * @param {string} key The key of the property to get.\n * @returns {*} Returns the property value.\n */\nfunction getValue(object, key) {\n return object == null ? undefined : object[key];\n}\n\nmodule.exports = getValue;\n","var nativeCreate = require('./_nativeCreate');\n\n/**\n * Removes all key-value entries from the hash.\n *\n * @private\n * @name clear\n * @memberOf Hash\n */\nfunction hashClear() {\n this.__data__ = nativeCreate ? nativeCreate(null) : {};\n this.size = 0;\n}\n\nmodule.exports = hashClear;\n","/**\n * Removes `key` and its value from the hash.\n *\n * @private\n * @name delete\n * @memberOf Hash\n * @param {Object} hash The hash to modify.\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction hashDelete(key) {\n var result = this.has(key) && delete this.__data__[key];\n this.size -= result ? 1 : 0;\n return result;\n}\n\nmodule.exports = hashDelete;\n","var nativeCreate = require('./_nativeCreate');\n\n/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED = '__lodash_hash_undefined__';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Gets the hash value for `key`.\n *\n * @private\n * @name get\n * @memberOf Hash\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction hashGet(key) {\n var data = this.__data__;\n if (nativeCreate) {\n var result = data[key];\n return result === HASH_UNDEFINED ? undefined : result;\n }\n return hasOwnProperty.call(data, key) ? data[key] : undefined;\n}\n\nmodule.exports = hashGet;\n","var nativeCreate = require('./_nativeCreate');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Checks if a hash value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf Hash\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction hashHas(key) {\n var data = this.__data__;\n return nativeCreate ? (data[key] !== undefined) : hasOwnProperty.call(data, key);\n}\n\nmodule.exports = hashHas;\n","var nativeCreate = require('./_nativeCreate');\n\n/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED = '__lodash_hash_undefined__';\n\n/**\n * Sets the hash `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf Hash\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the hash instance.\n */\nfunction hashSet(key, value) {\n var data = this.__data__;\n this.size += this.has(key) ? 0 : 1;\n data[key] = (nativeCreate && value === undefined) ? HASH_UNDEFINED : value;\n return this;\n}\n\nmodule.exports = hashSet;\n","/** Used as references for various `Number` constants. */\nvar MAX_SAFE_INTEGER = 9007199254740991;\n\n/** Used to detect unsigned integer values. */\nvar reIsUint = /^(?:0|[1-9]\\d*)$/;\n\n/**\n * Checks if `value` is a valid array-like index.\n *\n * @private\n * @param {*} value The value to check.\n * @param {number} [length=MAX_SAFE_INTEGER] The upper bounds of a valid index.\n * @returns {boolean} Returns `true` if `value` is a valid index, else `false`.\n */\nfunction isIndex(value, length) {\n var type = typeof value;\n length = length == null ? MAX_SAFE_INTEGER : length;\n\n return !!length &&\n (type == 'number' ||\n (type != 'symbol' && reIsUint.test(value))) &&\n (value > -1 && value % 1 == 0 && value < length);\n}\n\nmodule.exports = isIndex;\n","/**\n * Checks if `value` is suitable for use as unique object key.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is suitable, else `false`.\n */\nfunction isKeyable(value) {\n var type = typeof value;\n return (type == 'string' || type == 'number' || type == 'symbol' || type == 'boolean')\n ? (value !== '__proto__')\n : (value === null);\n}\n\nmodule.exports = isKeyable;\n","var coreJsData = require('./_coreJsData');\n\n/** Used to detect methods masquerading as native. */\nvar maskSrcKey = (function() {\n var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || '');\n return uid ? ('Symbol(src)_1.' + uid) : '';\n}());\n\n/**\n * Checks if `func` has its source masked.\n *\n * @private\n * @param {Function} func The function to check.\n * @returns {boolean} Returns `true` if `func` is masked, else `false`.\n */\nfunction isMasked(func) {\n return !!maskSrcKey && (maskSrcKey in func);\n}\n\nmodule.exports = isMasked;\n","/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/**\n * Checks if `value` is likely a prototype object.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a prototype, else `false`.\n */\nfunction isPrototype(value) {\n var Ctor = value && value.constructor,\n proto = (typeof Ctor == 'function' && Ctor.prototype) || objectProto;\n\n return value === proto;\n}\n\nmodule.exports = isPrototype;\n","/**\n * Removes all key-value entries from the list cache.\n *\n * @private\n * @name clear\n * @memberOf ListCache\n */\nfunction listCacheClear() {\n this.__data__ = [];\n this.size = 0;\n}\n\nmodule.exports = listCacheClear;\n","var assocIndexOf = require('./_assocIndexOf');\n\n/** Used for built-in method references. */\nvar arrayProto = Array.prototype;\n\n/** Built-in value references. */\nvar splice = arrayProto.splice;\n\n/**\n * Removes `key` and its value from the list cache.\n *\n * @private\n * @name delete\n * @memberOf ListCache\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction listCacheDelete(key) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n if (index < 0) {\n return false;\n }\n var lastIndex = data.length - 1;\n if (index == lastIndex) {\n data.pop();\n } else {\n splice.call(data, index, 1);\n }\n --this.size;\n return true;\n}\n\nmodule.exports = listCacheDelete;\n","var assocIndexOf = require('./_assocIndexOf');\n\n/**\n * Gets the list cache value for `key`.\n *\n * @private\n * @name get\n * @memberOf ListCache\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction listCacheGet(key) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n return index < 0 ? undefined : data[index][1];\n}\n\nmodule.exports = listCacheGet;\n","var assocIndexOf = require('./_assocIndexOf');\n\n/**\n * Checks if a list cache value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf ListCache\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction listCacheHas(key) {\n return assocIndexOf(this.__data__, key) > -1;\n}\n\nmodule.exports = listCacheHas;\n","var assocIndexOf = require('./_assocIndexOf');\n\n/**\n * Sets the list cache `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf ListCache\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the list cache instance.\n */\nfunction listCacheSet(key, value) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n if (index < 0) {\n ++this.size;\n data.push([key, value]);\n } else {\n data[index][1] = value;\n }\n return this;\n}\n\nmodule.exports = listCacheSet;\n","var Hash = require('./_Hash'),\n ListCache = require('./_ListCache'),\n Map = require('./_Map');\n\n/**\n * Removes all key-value entries from the map.\n *\n * @private\n * @name clear\n * @memberOf MapCache\n */\nfunction mapCacheClear() {\n this.size = 0;\n this.__data__ = {\n 'hash': new Hash,\n 'map': new (Map || ListCache),\n 'string': new Hash\n };\n}\n\nmodule.exports = mapCacheClear;\n","var getMapData = require('./_getMapData');\n\n/**\n * Removes `key` and its value from the map.\n *\n * @private\n * @name delete\n * @memberOf MapCache\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction mapCacheDelete(key) {\n var result = getMapData(this, key)['delete'](key);\n this.size -= result ? 1 : 0;\n return result;\n}\n\nmodule.exports = mapCacheDelete;\n","var getMapData = require('./_getMapData');\n\n/**\n * Gets the map value for `key`.\n *\n * @private\n * @name get\n * @memberOf MapCache\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction mapCacheGet(key) {\n return getMapData(this, key).get(key);\n}\n\nmodule.exports = mapCacheGet;\n","var getMapData = require('./_getMapData');\n\n/**\n * Checks if a map value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf MapCache\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction mapCacheHas(key) {\n return getMapData(this, key).has(key);\n}\n\nmodule.exports = mapCacheHas;\n","var getMapData = require('./_getMapData');\n\n/**\n * Sets the map `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf MapCache\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the map cache instance.\n */\nfunction mapCacheSet(key, value) {\n var data = getMapData(this, key),\n size = data.size;\n\n data.set(key, value);\n this.size += data.size == size ? 0 : 1;\n return this;\n}\n\nmodule.exports = mapCacheSet;\n","/**\n * Converts `map` to its key-value pairs.\n *\n * @private\n * @param {Object} map The map to convert.\n * @returns {Array} Returns the key-value pairs.\n */\nfunction mapToArray(map) {\n var index = -1,\n result = Array(map.size);\n\n map.forEach(function(value, key) {\n result[++index] = [key, value];\n });\n return result;\n}\n\nmodule.exports = mapToArray;\n","var getNative = require('./_getNative');\n\n/* Built-in method references that are verified to be native. */\nvar nativeCreate = getNative(Object, 'create');\n\nmodule.exports = nativeCreate;\n","var overArg = require('./_overArg');\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeKeys = overArg(Object.keys, Object);\n\nmodule.exports = nativeKeys;\n","var freeGlobal = require('./_freeGlobal');\n\n/** Detect free variable `exports`. */\nvar freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;\n\n/** Detect free variable `module`. */\nvar freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;\n\n/** Detect the popular CommonJS extension `module.exports`. */\nvar moduleExports = freeModule && freeModule.exports === freeExports;\n\n/** Detect free variable `process` from Node.js. */\nvar freeProcess = moduleExports && freeGlobal.process;\n\n/** Used to access faster Node.js helpers. */\nvar nodeUtil = (function() {\n try {\n // Use `util.types` for Node.js 10+.\n var types = freeModule && freeModule.require && freeModule.require('util').types;\n\n if (types) {\n return types;\n }\n\n // Legacy `process.binding('util')` for Node.js < 10.\n return freeProcess && freeProcess.binding && freeProcess.binding('util');\n } catch (e) {}\n}());\n\nmodule.exports = nodeUtil;\n","/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/**\n * Used to resolve the\n * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)\n * of values.\n */\nvar nativeObjectToString = objectProto.toString;\n\n/**\n * Converts `value` to a string using `Object.prototype.toString`.\n *\n * @private\n * @param {*} value The value to convert.\n * @returns {string} Returns the converted string.\n */\nfunction objectToString(value) {\n return nativeObjectToString.call(value);\n}\n\nmodule.exports = objectToString;\n","/**\n * Creates a unary function that invokes `func` with its argument transformed.\n *\n * @private\n * @param {Function} func The function to wrap.\n * @param {Function} transform The argument transform.\n * @returns {Function} Returns the new function.\n */\nfunction overArg(func, transform) {\n return function(arg) {\n return func(transform(arg));\n };\n}\n\nmodule.exports = overArg;\n","var freeGlobal = require('./_freeGlobal');\n\n/** Detect free variable `self`. */\nvar freeSelf = typeof self == 'object' && self && self.Object === Object && self;\n\n/** Used as a reference to the global object. */\nvar root = freeGlobal || freeSelf || Function('return this')();\n\nmodule.exports = root;\n","/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED = '__lodash_hash_undefined__';\n\n/**\n * Adds `value` to the array cache.\n *\n * @private\n * @name add\n * @memberOf SetCache\n * @alias push\n * @param {*} value The value to cache.\n * @returns {Object} Returns the cache instance.\n */\nfunction setCacheAdd(value) {\n this.__data__.set(value, HASH_UNDEFINED);\n return this;\n}\n\nmodule.exports = setCacheAdd;\n","/**\n * Checks if `value` is in the array cache.\n *\n * @private\n * @name has\n * @memberOf SetCache\n * @param {*} value The value to search for.\n * @returns {number} Returns `true` if `value` is found, else `false`.\n */\nfunction setCacheHas(value) {\n return this.__data__.has(value);\n}\n\nmodule.exports = setCacheHas;\n","/**\n * Converts `set` to an array of its values.\n *\n * @private\n * @param {Object} set The set to convert.\n * @returns {Array} Returns the values.\n */\nfunction setToArray(set) {\n var index = -1,\n result = Array(set.size);\n\n set.forEach(function(value) {\n result[++index] = value;\n });\n return result;\n}\n\nmodule.exports = setToArray;\n","var ListCache = require('./_ListCache');\n\n/**\n * Removes all key-value entries from the stack.\n *\n * @private\n * @name clear\n * @memberOf Stack\n */\nfunction stackClear() {\n this.__data__ = new ListCache;\n this.size = 0;\n}\n\nmodule.exports = stackClear;\n","/**\n * Removes `key` and its value from the stack.\n *\n * @private\n * @name delete\n * @memberOf Stack\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction stackDelete(key) {\n var data = this.__data__,\n result = data['delete'](key);\n\n this.size = data.size;\n return result;\n}\n\nmodule.exports = stackDelete;\n","/**\n * Gets the stack value for `key`.\n *\n * @private\n * @name get\n * @memberOf Stack\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction stackGet(key) {\n return this.__data__.get(key);\n}\n\nmodule.exports = stackGet;\n","/**\n * Checks if a stack value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf Stack\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction stackHas(key) {\n return this.__data__.has(key);\n}\n\nmodule.exports = stackHas;\n","var ListCache = require('./_ListCache'),\n Map = require('./_Map'),\n MapCache = require('./_MapCache');\n\n/** Used as the size to enable large array optimizations. */\nvar LARGE_ARRAY_SIZE = 200;\n\n/**\n * Sets the stack `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf Stack\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the stack cache instance.\n */\nfunction stackSet(key, value) {\n var data = this.__data__;\n if (data instanceof ListCache) {\n var pairs = data.__data__;\n if (!Map || (pairs.length < LARGE_ARRAY_SIZE - 1)) {\n pairs.push([key, value]);\n this.size = ++data.size;\n return this;\n }\n data = this.__data__ = new MapCache(pairs);\n }\n data.set(key, value);\n this.size = data.size;\n return this;\n}\n\nmodule.exports = stackSet;\n","/** Used for built-in method references. */\nvar funcProto = Function.prototype;\n\n/** Used to resolve the decompiled source of functions. */\nvar funcToString = funcProto.toString;\n\n/**\n * Converts `func` to its source code.\n *\n * @private\n * @param {Function} func The function to convert.\n * @returns {string} Returns the source code.\n */\nfunction toSource(func) {\n if (func != null) {\n try {\n return funcToString.call(func);\n } catch (e) {}\n try {\n return (func + '');\n } catch (e) {}\n }\n return '';\n}\n\nmodule.exports = toSource;\n","/**\n * Performs a\n * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * comparison between two values to determine if they are equivalent.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n * @example\n *\n * var object = { 'a': 1 };\n * var other = { 'a': 1 };\n *\n * _.eq(object, object);\n * // => true\n *\n * _.eq(object, other);\n * // => false\n *\n * _.eq('a', 'a');\n * // => true\n *\n * _.eq('a', Object('a'));\n * // => false\n *\n * _.eq(NaN, NaN);\n * // => true\n */\nfunction eq(value, other) {\n return value === other || (value !== value && other !== other);\n}\n\nmodule.exports = eq;\n","var baseIsArguments = require('./_baseIsArguments'),\n isObjectLike = require('./isObjectLike');\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/** Built-in value references. */\nvar propertyIsEnumerable = objectProto.propertyIsEnumerable;\n\n/**\n * Checks if `value` is likely an `arguments` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an `arguments` object,\n * else `false`.\n * @example\n *\n * _.isArguments(function() { return arguments; }());\n * // => true\n *\n * _.isArguments([1, 2, 3]);\n * // => false\n */\nvar isArguments = baseIsArguments(function() { return arguments; }()) ? baseIsArguments : function(value) {\n return isObjectLike(value) && hasOwnProperty.call(value, 'callee') &&\n !propertyIsEnumerable.call(value, 'callee');\n};\n\nmodule.exports = isArguments;\n","/**\n * Checks if `value` is classified as an `Array` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an array, else `false`.\n * @example\n *\n * _.isArray([1, 2, 3]);\n * // => true\n *\n * _.isArray(document.body.children);\n * // => false\n *\n * _.isArray('abc');\n * // => false\n *\n * _.isArray(_.noop);\n * // => false\n */\nvar isArray = Array.isArray;\n\nmodule.exports = isArray;\n","var isFunction = require('./isFunction'),\n isLength = require('./isLength');\n\n/**\n * Checks if `value` is array-like. A value is considered array-like if it's\n * not a function and has a `value.length` that's an integer greater than or\n * equal to `0` and less than or equal to `Number.MAX_SAFE_INTEGER`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is array-like, else `false`.\n * @example\n *\n * _.isArrayLike([1, 2, 3]);\n * // => true\n *\n * _.isArrayLike(document.body.children);\n * // => true\n *\n * _.isArrayLike('abc');\n * // => true\n *\n * _.isArrayLike(_.noop);\n * // => false\n */\nfunction isArrayLike(value) {\n return value != null && isLength(value.length) && !isFunction(value);\n}\n\nmodule.exports = isArrayLike;\n","var root = require('./_root'),\n stubFalse = require('./stubFalse');\n\n/** Detect free variable `exports`. */\nvar freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;\n\n/** Detect free variable `module`. */\nvar freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;\n\n/** Detect the popular CommonJS extension `module.exports`. */\nvar moduleExports = freeModule && freeModule.exports === freeExports;\n\n/** Built-in value references. */\nvar Buffer = moduleExports ? root.Buffer : undefined;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeIsBuffer = Buffer ? Buffer.isBuffer : undefined;\n\n/**\n * Checks if `value` is a buffer.\n *\n * @static\n * @memberOf _\n * @since 4.3.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a buffer, else `false`.\n * @example\n *\n * _.isBuffer(new Buffer(2));\n * // => true\n *\n * _.isBuffer(new Uint8Array(2));\n * // => false\n */\nvar isBuffer = nativeIsBuffer || stubFalse;\n\nmodule.exports = isBuffer;\n","var baseIsEqual = require('./_baseIsEqual');\n\n/**\n * Performs a deep comparison between two values to determine if they are\n * equivalent.\n *\n * **Note:** This method supports comparing arrays, array buffers, booleans,\n * date objects, error objects, maps, numbers, `Object` objects, regexes,\n * sets, strings, symbols, and typed arrays. `Object` objects are compared\n * by their own, not inherited, enumerable properties. Functions and DOM\n * nodes are compared by strict equality, i.e. `===`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n * @example\n *\n * var object = { 'a': 1 };\n * var other = { 'a': 1 };\n *\n * _.isEqual(object, other);\n * // => true\n *\n * object === other;\n * // => false\n */\nfunction isEqual(value, other) {\n return baseIsEqual(value, other);\n}\n\nmodule.exports = isEqual;\n","var baseGetTag = require('./_baseGetTag'),\n isObject = require('./isObject');\n\n/** `Object#toString` result references. */\nvar asyncTag = '[object AsyncFunction]',\n funcTag = '[object Function]',\n genTag = '[object GeneratorFunction]',\n proxyTag = '[object Proxy]';\n\n/**\n * Checks if `value` is classified as a `Function` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a function, else `false`.\n * @example\n *\n * _.isFunction(_);\n * // => true\n *\n * _.isFunction(/abc/);\n * // => false\n */\nfunction isFunction(value) {\n if (!isObject(value)) {\n return false;\n }\n // The use of `Object#toString` avoids issues with the `typeof` operator\n // in Safari 9 which returns 'object' for typed arrays and other constructors.\n var tag = baseGetTag(value);\n return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag;\n}\n\nmodule.exports = isFunction;\n","/** Used as references for various `Number` constants. */\nvar MAX_SAFE_INTEGER = 9007199254740991;\n\n/**\n * Checks if `value` is a valid array-like length.\n *\n * **Note:** This method is loosely based on\n * [`ToLength`](http://ecma-international.org/ecma-262/7.0/#sec-tolength).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a valid length, else `false`.\n * @example\n *\n * _.isLength(3);\n * // => true\n *\n * _.isLength(Number.MIN_VALUE);\n * // => false\n *\n * _.isLength(Infinity);\n * // => false\n *\n * _.isLength('3');\n * // => false\n */\nfunction isLength(value) {\n return typeof value == 'number' &&\n value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER;\n}\n\nmodule.exports = isLength;\n","/**\n * Checks if `value` is the\n * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)\n * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an object, else `false`.\n * @example\n *\n * _.isObject({});\n * // => true\n *\n * _.isObject([1, 2, 3]);\n * // => true\n *\n * _.isObject(_.noop);\n * // => true\n *\n * _.isObject(null);\n * // => false\n */\nfunction isObject(value) {\n var type = typeof value;\n return value != null && (type == 'object' || type == 'function');\n}\n\nmodule.exports = isObject;\n","/**\n * Checks if `value` is object-like. A value is object-like if it's not `null`\n * and has a `typeof` result of \"object\".\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is object-like, else `false`.\n * @example\n *\n * _.isObjectLike({});\n * // => true\n *\n * _.isObjectLike([1, 2, 3]);\n * // => true\n *\n * _.isObjectLike(_.noop);\n * // => false\n *\n * _.isObjectLike(null);\n * // => false\n */\nfunction isObjectLike(value) {\n return value != null && typeof value == 'object';\n}\n\nmodule.exports = isObjectLike;\n","var baseIsTypedArray = require('./_baseIsTypedArray'),\n baseUnary = require('./_baseUnary'),\n nodeUtil = require('./_nodeUtil');\n\n/* Node.js helper references. */\nvar nodeIsTypedArray = nodeUtil && nodeUtil.isTypedArray;\n\n/**\n * Checks if `value` is classified as a typed array.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.\n * @example\n *\n * _.isTypedArray(new Uint8Array);\n * // => true\n *\n * _.isTypedArray([]);\n * // => false\n */\nvar isTypedArray = nodeIsTypedArray ? baseUnary(nodeIsTypedArray) : baseIsTypedArray;\n\nmodule.exports = isTypedArray;\n","var arrayLikeKeys = require('./_arrayLikeKeys'),\n baseKeys = require('./_baseKeys'),\n isArrayLike = require('./isArrayLike');\n\n/**\n * Creates an array of the own enumerable property names of `object`.\n *\n * **Note:** Non-object values are coerced to objects. See the\n * [ES spec](http://ecma-international.org/ecma-262/7.0/#sec-object.keys)\n * for more details.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.keys(new Foo);\n * // => ['a', 'b'] (iteration order is not guaranteed)\n *\n * _.keys('hi');\n * // => ['0', '1']\n */\nfunction keys(object) {\n return isArrayLike(object) ? arrayLikeKeys(object) : baseKeys(object);\n}\n\nmodule.exports = keys;\n","/**\n * This method returns a new empty array.\n *\n * @static\n * @memberOf _\n * @since 4.13.0\n * @category Util\n * @returns {Array} Returns the new empty array.\n * @example\n *\n * var arrays = _.times(2, _.stubArray);\n *\n * console.log(arrays);\n * // => [[], []]\n *\n * console.log(arrays[0] === arrays[1]);\n * // => false\n */\nfunction stubArray() {\n return [];\n}\n\nmodule.exports = stubArray;\n","/**\n * This method returns `false`.\n *\n * @static\n * @memberOf _\n * @since 4.13.0\n * @category Util\n * @returns {boolean} Returns `false`.\n * @example\n *\n * _.times(2, _.stubFalse);\n * // => [false, false]\n */\nfunction stubFalse() {\n return false;\n}\n\nmodule.exports = stubFalse;\n","import { jsxs as _, jsx as p, Fragment as Fe } from \"react/jsx-runtime\";\nimport y from \"react\";\nimport { styled as G } from \"@mui/material/styles\";\nimport Mt from \"@mui/material/IconButton\";\nimport { grey as sn } from \"@mui/material/colors\";\nimport we from \"@mui/material/Typography\";\nimport cn from \"@mui/material/MenuItem\";\nimport hn from \"@mui/material/ListItemIcon\";\nimport gn from \"@mui/material/ListItemText\";\nimport mn from \"@mui/material/Menu\";\nimport yn from \"@mui/material/InputAdornment\";\nimport pn from \"@mui/material/TextField\";\nconst vn = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACwAAAAeCAYAAABXNvynAAAMeGlDQ1BEaXNwbGF5AABIiZVXd1ST9xp+vpGEhBFGQEBG2EsQ2UNmmIKCbBBHSAIEQoghQcU9ahWtWxw40bqLViuodaJWrRbBbR1FLSqVWtQ6Ubl/JKD13nvuue85ye89z+95n3d838nJC3DfCBUKGWkIlMlVyrT4aH5Obh6f9RAU2ODAAG5CUYUiKjU1GQB6z8+MAF5dAwEAlz2FCoUM/58ZiyUVIoDIB1AgrhCVAcRxgF4jUihVADMfgMM4lUIFMKcB4ClzcvMA5jIAvCKNvw0Ar0DjHwbAU2akCQBmC6CjJxQqiwCD2wD4laIiFWDwHoC3XCyVA9wBAMJFxUIxwJUBGFBWVi4GuCsBuFaKihQA9ziAoILPNIv+oV/Qpy8UFvX5mr4AADox0gqFTDjh/xzN/7Yymbo3hzMAvWJlQhoAHkDcKC1PSgOgBxCd8oJhKQCMAeKNVKyZO0ByitUJmRo+aSWqEOQBMANIb7EwJgmAFUDGyWXDkrV4QaE0LhGAIUCOl6oSMwCYA+QcSUVsupazQVmeps1FNhQqBVFa/KxQCWhz3VWXZkZp9Z8XSxK1+pRBVXFGNgAOQDlWSrOGATAAKK+K0vQkLWdwVbFgWC9HqU7LBOAIUGkSeXy0Rp+qLFTGpWn51WUVvf1SG4qlicO0/l5VcUaCZj7UKZEwNl3TC9UikUdl9upIKnKSe3sRS2JiNb1TjyXyzHStzhuFKjpNE0tzFLJULZ+2l8ji0wDYA7RfRWW6NpbOUikztM+ILlSoUjM0ddJVJcIhqZp66EVIhgAx4EMNPgpQjhJImzsbO8HX3sRBCCWKIIGnFumNyIYQSsghRDqq8CfkkKCiLy4aQighQSXk+NCHar49UQghlKiEBBUoxUMoUYYkyCCBGkpIIO/LloXfoYT037ILwYcI5ZChHEpI/wvei35CoiBAshZR92bkc3uZzFhmDDOBGcd0oy3pcDqUTqbD6Ug6nPahg+jg3j4+8RkPGa2M+4yrjDbGzdHSGcovqhyKNqi1M5Sg4PNZ0M60D+1PR9NhdDgdDD5tRlvCk/ajg+goOoIOpf3pYAi0dauh/GKGX3Tw2dPQ8tjebJLdjx3Jdv0y0sDdwL9PRQL5P+ajqbWgb96Cvpsv8ws+m74Y5Uj6kknNofZRZ6gT1DnqMNUIPnWMOkBdoI5QjZ+9Xb9DiaK+bGmQQI5SyCD9t3xCbU4lJKjw3und4f1ec6eSjFcBgKBcMUEpLSpW8aMUCpmEnygXeQ3g+3j7+AA5uXl8zc/Xi+EgABBmFz5hM38Dwo719PT8+Akbcgz4PhDgHPyEuQYBRrrA2YMitbJSg9EAwAAHXPBgARs4wBWe8EEAQhGJWAxBCjKQi1EQoRhlUGIcJmE6ZmMeFmE5VmM9NmEbvsNeNOIwTuAnnEcLruIW2tCOJ+jCK3QTBMEi9AkTwoKwJZwID8KHCCLCiVgimUgjcokxRBEhJ9TEJGImMY9YQqwmNhLbie+Jg8QJ4hzRStwk7hEdxHPiHUmReiSPtCadyYFkEBlFJpEZ5EiyiBxLVpGzyAXkSrKO3EU2kCfI8+RVso18Qr6kQOlSZpQd5UkFUQIqhcqjCiklNYWqpmqoOqqeOkSdoS5TbVQn9ZZm0iY0n/akQ+kEOpMW0WPpKfR8ejW9jW6gT9GX6Xt0F/2Roc+wYngwQhiJjBxGEWMcYzajhrGFsZ9xmnGV0c54xWQyzZguzEBmAjOXWcKcyJzPXMvczTzObGU+YL5ksVgWLA9WGCuFJWSpWLNZq1i7WMdYl1jtrDc6ujq2Oj46cTp5OnKdGTo1Ojt0jupc0nmk0802ZDuxQ9gpbDF7AnshezP7EPsiu53dzTHiuHDCOBmcEs50zkpOPec05zbnha6urr1usO5wXanuNN2Vunt0z+re032rZ6znrifQy9dT6y3Q26p3XO+m3gt9fX1n/Uj9PH2V/gL97fon9e/qvzEwMfAySDQQG0w1qDVoMLhk8JTL5jpxo7ijuFXcGu4+7kVupyHb0NlQYCg0nGJYa3jQ8LrhSyMTo0FGKUZlRvONdhidM3pszDJ2No41FhvPMt5kfNL4gQll4mAiMBGZzDTZbHLapJ3H5LnwEnklvHm873jNvC5TY1M/0yzT8aa1pkdM28woM2ezRDOZ2UKzvWbXzN71s+4X1U/Sb26/+n6X+r02728eaS4xrzbfbX7V/J0F3yLWotRisUWjxR1L2tLdcrjlOMt1lqctO/vz+of2F/Wv7r+3/69WpJW7VZrVRKtNVhesXlrbWMdbK6xXWZ+07rQxs4m0KbFZZnPUpsPWxDbcVmq7zPaY7R98U34UX8ZfyT/F77KzskuwU9tttGu267Z3sc+0n2G/2/6OA8chyKHQYZlDk0OXo63jUMdJjjsdf3ViOwU5FTutcDrj9NrZxTnb+WvnRufHLuYuiS5VLjtdbrvqu0a4jnWtc73ixnQLcit1W+vW4k66+7sXu9e6X/QgPQI8pB5rPVoHMAYED5APqBtw3VPPM8qz0nOn5z0vM69krxlejV5PBzoOzBu4eOCZgR+9/b1l3pu9bw0yHjRk0IxBhwY993H3EfnU+lzx1feN853qe8D3mZ+Hn8Rvnd8NfxP/of5f+zf5fwgIDFAG1Ad0BDoGjglcE3g9iBeUGjQ/6GwwIzg6eGrw4eC3IQEhqpC9IX+FeoaWhu4IfTzYZbBk8ObBD8Lsw4RhG8PawvnhY8I3hLdF2EUII+oi7kc6RIojt0Q+inKLKonaFfU02jtaGb0/+rUgRDBZcDyGiomPqY5pjjWOzYxdHXs3zj6uKG5nXFe8f/zE+OMJjISkhMUJ1xOtE0WJ2xO7hgQOmTzkVJJeUnrS6qT7ye7JyuRDQ8mhQ4YuHXp7mNMw+bDGFKQkpixNuZPqkjo29cfhzOGpw2uHP0wblDYp7Uy6Sfro9B3przKiMxZm3Mp0zVRnNmVxs/Kztme9zo7JXpLdljMwZ3LO+VzLXGnugTxWXlbelryXI2JHLB/Rnu+fPzv/2kiXkeNHnhtlOUo26sho7mjh6H1jGGOyx+wY816YIqwTvixILFhT0CUSiFaInogjxcvEHZIwyRLJo8KwwiWFj4vCipYWdRRHFNcUd0oF0tXSZyUJJetLXpemlG4t7ZFly3aX6ZSNKTsoN5aXyk+V25SPL29VeChmK9rGhoxdPrZLmaTcUkFUjKw4oOKpFKoLalf1V+p7leGVtZVvxmWN2zfeaLx8/IUJ7hPmTnhUFVf17UR6omhi0yS7SdMn3ZscNXnjFGJKwZSmqQ5TZ01tnxY/bdt0zvTS6b/M8J6xZMbfM7NnHpplPWvarAdfxX+1c7bBbOXs61+Hfr1+Dj1HOqd5ru/cVXM/Vourf57nPa9m3vv5ovk/fzPom5Xf9CwoXNC8MGDhukXMRfJF1xZHLN62xGhJ1ZIHS4cubVjGX1a97O/lo5efq/GrWb+Cs0K9om1l8soDqxxXLVr1fnXx6qu10bW711itmbvm9Vrx2kvrItfVr7deP2/9uw3SDTc2xm9sqHOuq9nE3FS56eHmrM1nvg36dvsWyy3ztnzYKt/ati1t26ntgdu377DasXAnuVO9s2NX/q6W72K+O1DvWb9xt9nueXuwR73nj+/HfH9tb9Lepn1B++p/cPphzX6T/dUNRMOEhq7G4sa2A7kHWg8OOdh0KPTQ/h+9ftx62O5w7RHTIwuPco7OOtpzrOrYy+OK450nik48aBrddOtkzskrp4afaj6ddPrsT3E/nTwTdebY2bCzh8+FnDv4c9DPjecDzjdc8L+w/xf/X/Y3BzQ3XAy8eKAluOVQ6+DWo5ciLp24HHP5pyuJV85fHXa19VrmtRvX86+33RDfeHxTdvPZr5W/dt+adptxu/qO4Z2au1Z3635z+213W0DbkXsx9y7cT79/64HowZPfK35/3z7rof7Dmke2j7Y/9nl8uCOuo+WPEX+0P1E86e6c/afRn2ueuj794a/Ivy505XS1P1M+63k+/4XFi61/+/3d9DL15d1XZa+6X1e/sXiz7W3Q2zPvst896h73nvV+5Qe3D4c+Jn283VPW06MQKoUAAAoAWVgIPN8K6OcCJi0AZ4RmFwQAEJr9FdD8B/nPvmZfBAAEAPU8YHgnILgO7NkMOBcC3HwgVR/ICAbp69v30VpFoa+PRksvGmDc7el54QywlgIfFvX0dNf19HzYBFC3geNyzQ4KAExDYEPih4KyAvwH0+ynn/X45QmQvr5++PL8F6mCkLerjl90AAAACXBIWXMAAAsTAAALEwEAmpwYAAAE92lUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxNDUgNzkuMTYzNDk5LCAyMDE4LzA4LzEzLTE2OjQwOjIyICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIgeG1sbnM6cGhvdG9zaG9wPSJodHRwOi8vbnMuYWRvYmUuY29tL3Bob3Rvc2hvcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgMjAxOSAoTWFjaW50b3NoKSIgeG1wOkNyZWF0ZURhdGU9IjIwMjItMDMtMTJUMTQ6MTY6NTArMDE6MDAiIHhtcDpNb2RpZnlEYXRlPSIyMDIyLTAzLTIwVDEwOjIyOjUxKzAxOjAwIiB4bXA6TWV0YWRhdGFEYXRlPSIyMDIyLTAzLTIwVDEwOjIyOjUxKzAxOjAwIiBkYzpmb3JtYXQ9ImltYWdlL3BuZyIgcGhvdG9zaG9wOkNvbG9yTW9kZT0iMyIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpmZDY2ZDIzMC1mMDk3LTRhMjUtODkxNi1mN2YxMmQ2NTRhNjkiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6ZmQ2NmQyMzAtZjA5Ny00YTI1LTg5MTYtZjdmMTJkNjU0YTY5IiB4bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ9InhtcC5kaWQ6ZmQ2NmQyMzAtZjA5Ny00YTI1LTg5MTYtZjdmMTJkNjU0YTY5Ij4gPHhtcE1NOkhpc3Rvcnk+IDxyZGY6U2VxPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0iY3JlYXRlZCIgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDpmZDY2ZDIzMC1mMDk3LTRhMjUtODkxNi1mN2YxMmQ2NTRhNjkiIHN0RXZ0OndoZW49IjIwMjItMDMtMTJUMTQ6MTY6NTArMDE6MDAiIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkFkb2JlIFBob3Rvc2hvcCBDQyAyMDE5IChNYWNpbnRvc2gpIi8+IDwvcmRmOlNlcT4gPC94bXBNTTpIaXN0b3J5PiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PjHOcacAAAMOSURBVFiFzZixa1NBHMe/FxOIryWNNUkjJCYQkhJKU2oXsdJowU7t6KZroYNDB7eOgn+Dg0t10MmhrhUUEelm2hDaUmibQBtbQxuaI5JHn4O8cHe59/LuRY3fJbnj97vf5373vSOEzC8t4+W9mcUNzfcc/6mSw9H38U9rzx4d1ndJ9e27xa3Q0It+QznR1MbHjEfsbL1Bu35XjZflqtYBgPLMwgpZX/9gWEbYqN6gCAxofzVPjKWU1jyU0pos0MnYSddFBQa0rh1nY1lpmjbskSWJgbKOpBJJgy3OFmTjZcedSiQNuxyrDVBKaxxwt6R6g6LeoEglksZ4bozcvnO3PW91zOa8uVY6k8Z4boykM2lpvKxpLIenI8NmAwAwNTmB8dwYAQDN78Pcgznp5mQQU5MTiMdiAIB4LIbpfL4jT1bTnOMsIR6t1edZ7Zy7pCa06E0xbzqfb8OaOt4/4NbqVptSWlN+Jczjn529z83TZgtfv3zm7MHChgODXPxmoWjsHewT1ZeGFL5tXSplADg5/U7CoYhhWsOU3tJRKm1zDYgmE0SELVcq2N3ZRTgUUX5SXQGzsoNOZTJE8/s6YEVbqcj20rEyRjxENr9ZKHLFvT4vUpkMiSYTfxwWkACzYOx3Ur20LLRZKBp6S2+PNb+vw7PdYMWGWDWoZ0uwkllA5ute5NgSweEhaed7FbuubCxKCixLYo9TZg9Zd4HfnhYvptW6srHYHCmw6sXIZkc5WL2lgzZbXIwI7fSUxOY4toSVstlR4vV5ublSadvY29nhLiLAQ9tdYjvZAlu9GFawektHuVLhwGWd7uZTu+6Tw3LZ1U7F3wUAOFhWN0aiEE/BKrabXFlCBRYAjqrHEO0Rj8XgDwSVaysDXw+NdMw56ZYM+tpVv2p5deAfp1Wc1C/aY5WjZaFps4Wj6rFqefce9geCaNbP3KT2lOv6WXNbsNfcnt/hfy1POBJd7TeEU50fVlevPB3wFH/mbj3pN4wTRdbePCTzS8t4fTOQLs8srBiD/sf9hpKJXDRfmX8G/gKUwMkA3my/NwAAAABJRU5ErkJggg==\", Rt = {\n AC: \"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 513 342'%3e%3cpath fill='%230052B4' d='M0 0h513v342H0z'/%3e%3cpath fill='white' d='M440.1 181.1c-.1 39.2-6.4 81.4-57.4 101.5-51.1-20.1-57.3-62.3-57.4-101.5h114.8z'/%3e%3cpath fill='%2329DBFF' d='M439.6 197.7c-2.8 34.9-12.4 67.4-57 85-44.4-17.6-54.5-51.2-56.9-84.9'/%3e%3cpath fill='white' d='M437.8 214.1c-3.2 24.3-16.7 53.5-55.1 68.6-38.4-15.1-50.5-42.5-55.1-68.4'/%3e%3cpath fill='%2329DBFF' d='M434.2 230.3c-5.7 17.7-19.3 39.4-51.3 52.8-32-12.6-45.2-33.8-51.4-53'/%3e%3cpath fill='white' d='M426.7 246.9c-6.5 11.3-17.7 25.4-44 35.9-27.5-11.5-37.4-25.3-44-36.1'/%3e%3cpath fill='%2329DBFF' d='M412.4 265.1c-8.1 7.2-12 11.2-29.6 17.9-20.1-7.9-22.6-11.6-29.2-17.5'/%3e%3cpath fill='%235CC85C' d='M383.3 231.6c-.2-.2-27.9 35.7-27.9 35.7-1.8-1.3-10-9.5-13.3-15l41.3-50.1 40.2 49.7c-3.9 6.5-11.4 13.6-13.2 15M382.6 85.3l-26.5 45h53z'/%3e%3cellipse transform='rotate(-82.3 291.431 225.686)' fill='%23F7A226' cx='291.4' cy='225.7' rx='48.7' ry='15.7'/%3e%3cellipse transform='rotate(-68.099 303.087 164.67)' fill='%23DDC7AB' cx='303.1' cy='164.7' rx='11.7' ry='7.2'/%3e%3cellipse transform='rotate(-81.738 291.697 271.697)' fill='%23DDC7AB' cx='291.7' cy='271.7' rx='11.4' ry='3.3'/%3e%3cellipse transform='matrix(.9986 -.05353 .05353 .9986 -13.992 16.424)' fill='%23DDC7AB' cx='299.6' cy='269.4' rx='3.3' ry='11'/%3e%3cellipse transform='rotate(-21.518 314.54 201.06)' fill='%23DDC7AB' cx='314.5' cy='201.1' rx='4.1' ry='13.7'/%3e%3cellipse transform='rotate(-21.518 317.511 178.077)' fill='%23DDC7AB' cx='317.5' cy='178.1' rx='13.7' ry='4.1'/%3e%3cellipse transform='rotate(-7.7 473.781 225.857)' fill='%23F7A226' cx='473.6' cy='225.9' rx='15.7' ry='48.7'/%3e%3cellipse transform='rotate(-21.901 462.057 164.866)' fill='%23DDC7AB' cx='462' cy='164.9' rx='7.2' ry='11.7'/%3e%3cellipse transform='rotate(-8.27 473.27 271.908)' fill='%23DDC7AB' cx='473.4' cy='271.9' rx='3.3' ry='11.4'/%3e%3cellipse transform='matrix(.05353 -.9986 .9986 .05353 171.34 719.998)' fill='%23DDC7AB' cx='465.5' cy='269.6' rx='11' ry='3.3'/%3e%3cellipse transform='rotate(-68.482 450.552 201.247)' fill='%23DDC7AB' cx='450.6' cy='201.2' rx='13.7' ry='4.1'/%3e%3cellipse transform='rotate(-68.482 447.58 178.265)' fill='%23DDC7AB' cx='447.6' cy='178.3' rx='4.1' ry='13.7'/%3e%3cpath fill='%23B0C6CC' d='M373.3 130.3L356.1 155l17.8 26.1H396l4.7-25.4-5.4-25.4z'/%3e%3cpath fill='white' d='M256 0v117.4h-46.1l46.1 30.7v22.6h-22.6L160 121.8v48.9H96v-48.9l-73.4 48.9H0v-22.6l46.1-30.7H0v-64h46.1L0 22.7V0h22.6L96 48.9V0h64v48.9L233.4 0z'/%3e%3cpath fill='%23D80027' d='M144 0h-32v69.4H0v32h112v69.3h32v-69.3h112v-32H144z'/%3e%3cpath fill='%232E52B2' d='M256 22.7v30.7h-46.1z'/%3e%3cpath fill='%23D80027' d='M0 170.7v-11l62.5-42.3h22.6L7.3 170.7zM7.3.1l77.8 53.2H62.5L0 11.1V.1zM256 .1v11l-62.5 42.3h-22.6L248.7.1zm-7.3 170.6l-77.8-53.3h22.6l62.5 42.3v11z'/%3e%3c/svg%3e\",\n TA: \"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 341.3'%3e%3cpath fill='%230052B4' d='M0 0h512v341.3H0z'/%3e%3cpath fill='white' d='M256 0v117.4h-46.1l46.1 30.7v22.6h-22.6L160 121.8v48.9H96v-48.9l-73.4 48.9H0v-22.6l46.1-30.7H0v-64h46.1L0 22.7V0h22.6L96 48.9V0h64v48.9L233.4 0z'/%3e%3cg fill='%23D80027'%3e%3cpath d='M144 0h-32v69.4H0v32h112v69.3h32v-69.3h112v-32H144z'/%3e%3cpath d='M0 0v15.1l57.4 38.3H80zm256 0v15.1l-57.4 38.3H176z'/%3e%3c/g%3e%3cpath fill='%232E52B2' d='M256 22.7v30.7h-46.1z'/%3e%3cpath d='M0 0v15.1l57.4 38.3H80zm256 0v15.1l-57.4 38.3H176z' fill='%23D80027'/%3e%3cpath fill='%232E52B2' d='M256 22.7v30.7h-46.1z'/%3e%3cpath d='M0 170.7v-15.1l57.4-38.2H80zm256 0v-15.1l-57.4-38.2H176z' fill='%23D80027'/%3e%3cpath fill='%2329DBFF' d='M448.9 169.5c0 9.6-.3 29.6-1.4 39.2-4.1 34.9-23.5 68.8-62.1 85.9-45.3-17.9-60.8-51-64.9-85.9-1.1-9.6-1.5-19.4-1.5-29l.3-47.1h129.2l.4 36.9z'/%3e%3cpath fill='white' d='M447.5 208.7c-.2 1.6-.4 3.3-.6 4.9-4.8 33.1-22.9 65.4-61.5 81-43.2-17-59.4-47.9-64.2-81-.2-1.6-.4-3.2-.6-4.9'/%3e%3cpath fill='%2329DBFF' d='M385.4 251.7l-22.9-43h45.8z'/%3e%3cpath fill='white' d='M385.4 165.8l-22.9 42.9h45.8z'/%3e%3cellipse fill='%23FFBE57' cx='474.8' cy='236.8' rx='16.8' ry='43.3'/%3e%3cellipse fill='%23FFBE57' cx='295.3' cy='236.8' rx='16.8' ry='43.3'/%3e%3cpath fill='white' d='M385.4 31.5l-33.4 44h68.5zM315.5 280s33.8 29.5 69.9 29.5 67.1-29.5 67.1-29.5l8.5 14.6S439.2 326 385.4 326 307 294.6 307 294.6l8.5-14.6z'/%3e%3cellipse fill='%23A5A5A5' cx='386.3' cy='104.3' rx='34.3' ry='23.3'/%3e%3c/svg%3e\"\n}, $t = {\n Flag: G(\"span\")(() => ({\n display: \"flex\",\n alignItems: \"center\"\n })),\n Picture: G(\"picture\")(() => ({\n display: \"flex\",\n alignItems: \"center\"\n })),\n Span: G(\"span\")(() => ({\n width: \"1px\",\n clip: \"rect(0 0 0 0)\",\n clipPath: \"inset(100%)\",\n height: \"1px\",\n overflow: \"hidden\",\n position: \"absolute\",\n whiteSpace: \"nowrap\"\n }))\n}, Nn = (t) => t ? t === \"TA\" || t === \"AC\" ? {\n TA: Rt.TA,\n AC: Rt.AC\n}[t] : \"\" : vn, mt = ({ size: t = \"small\", isoCode: n, countryName: e = \"\" }) => {\n const r = n ? n.toLowerCase() : \"\", d = Nn(n), i = t === \"small\" ? 40 : 80;\n return /* @__PURE__ */ _($t.Flag, { \"data-testid\": n, className: \"MuiTelInput-Flag\", children: [\n d ? /* @__PURE__ */ p(\n \"img\",\n {\n src: d,\n alt: e || \"unknown\",\n width: i / 2\n }\n ) : /* @__PURE__ */ _($t.Picture, { children: [\n /* @__PURE__ */ p(\n \"source\",\n {\n type: \"image/webp\",\n srcSet: `https://flagcdn.com/w${i}/${r}.webp`\n }\n ),\n /* @__PURE__ */ p(\n \"source\",\n {\n type: \"image/png\",\n srcSet: `https://flagcdn.com/w${i}/${r}.png`\n }\n ),\n /* @__PURE__ */ p(\n \"img\",\n {\n src: `https://flagcdn.com/w${i}/${r}.png`,\n width: i / 2,\n alt: e || \"unknown\",\n loading: \"lazy\"\n }\n )\n ] }),\n n ? /* @__PURE__ */ p($t.Span, { children: n }) : null\n ] });\n}, Et = {\n EU: [\n \"AD\",\n \"AL\",\n \"AT\",\n \"AX\",\n \"BA\",\n \"BE\",\n \"BG\",\n \"BY\",\n \"CH\",\n \"CY\",\n \"CZ\",\n \"DE\",\n \"DK\",\n \"EE\",\n \"ES\",\n \"FI\",\n \"FO\",\n \"FR\",\n \"GB\",\n \"GG\",\n \"GI\",\n \"GR\",\n \"HR\",\n \"HU\",\n \"IE\",\n \"IM\",\n \"IS\",\n \"IT\",\n \"JE\",\n \"LI\",\n \"LT\",\n \"LU\",\n \"LV\",\n \"MC\",\n \"MD\",\n \"ME\",\n \"MK\",\n \"MT\",\n \"NL\",\n \"NO\",\n \"PL\",\n \"PT\",\n \"RO\",\n \"RS\",\n \"RU\",\n \"SE\",\n \"SI\",\n \"SJ\",\n \"SK\",\n \"SM\",\n \"UA\",\n \"VA\",\n \"XK\"\n ],\n AS: [\n \"AE\",\n \"AF\",\n \"AM\",\n \"AZ\",\n \"BD\",\n \"BH\",\n \"BN\",\n \"BT\",\n \"CC\",\n \"CN\",\n \"CX\",\n \"GE\",\n \"HK\",\n \"ID\",\n \"IL\",\n \"IN\",\n \"IO\",\n \"IQ\",\n \"IR\",\n \"JO\",\n \"JP\",\n \"KG\",\n \"KH\",\n \"KP\",\n \"KR\",\n \"KW\",\n \"KZ\",\n \"LA\",\n \"LB\",\n \"LK\",\n \"MM\",\n \"MN\",\n \"MO\",\n \"MV\",\n \"MY\",\n \"NP\",\n \"OM\",\n \"PH\",\n \"PK\",\n \"PS\",\n \"QA\",\n \"SA\",\n \"SG\",\n \"SY\",\n \"TH\",\n \"TJ\",\n \"TM\",\n \"TR\",\n \"TW\",\n \"UZ\",\n \"VN\",\n \"YE\"\n ],\n NA: [\n \"AG\",\n \"AI\",\n \"AW\",\n \"BB\",\n \"BL\",\n \"BM\",\n \"BQ\",\n \"BS\",\n \"BZ\",\n \"CA\",\n \"CR\",\n \"CU\",\n \"CW\",\n \"DM\",\n \"DO\",\n \"GD\",\n \"GL\",\n \"GP\",\n \"GT\",\n \"HN\",\n \"HT\",\n \"JM\",\n \"KN\",\n \"KY\",\n \"LC\",\n \"MF\",\n \"MQ\",\n \"MS\",\n \"MX\",\n \"NI\",\n \"PA\",\n \"PM\",\n \"PR\",\n \"SV\",\n \"SX\",\n \"TC\",\n \"TT\",\n \"US\",\n \"VC\",\n \"VG\",\n \"VI\"\n ],\n SA: [\n \"AR\",\n \"BO\",\n \"BR\",\n \"CL\",\n \"CO\",\n \"EC\",\n \"FK\",\n \"GF\",\n \"GY\",\n \"PE\",\n \"PY\",\n \"SR\",\n \"UY\",\n \"VE\"\n ],\n OC: [\n \"AS\",\n \"AU\",\n \"CK\",\n \"FJ\",\n \"FM\",\n \"GU\",\n \"KI\",\n \"MH\",\n \"MP\",\n \"NC\",\n \"NF\",\n \"NR\",\n \"NU\",\n \"NZ\",\n \"PF\",\n \"PG\",\n \"PW\",\n \"SB\",\n \"TK\",\n \"TL\",\n \"TO\",\n \"TV\",\n \"VU\",\n \"WF\",\n \"WS\"\n ],\n AF: [\n \"AO\",\n \"BF\",\n \"BI\",\n \"BJ\",\n \"BW\",\n \"CD\",\n \"CF\",\n \"CG\",\n \"CI\",\n \"CM\",\n \"CV\",\n \"DJ\",\n \"DZ\",\n \"EG\",\n \"EH\",\n \"ER\",\n \"ET\",\n \"GA\",\n \"GH\",\n \"GM\",\n \"GN\",\n \"GQ\",\n \"GW\",\n \"KE\",\n \"KM\",\n \"LR\",\n \"LS\",\n \"LY\",\n \"MA\",\n \"MG\",\n \"ML\",\n \"MR\",\n \"MU\",\n \"MW\",\n \"MZ\",\n \"NA\",\n \"NE\",\n \"NG\",\n \"RE\",\n \"RW\",\n \"SC\",\n \"SD\",\n \"SH\",\n \"SL\",\n \"SN\",\n \"SO\",\n \"SS\",\n \"ST\",\n \"SZ\",\n \"TD\",\n \"TG\",\n \"TN\",\n \"TZ\",\n \"UG\",\n \"YT\",\n \"ZA\",\n \"ZM\",\n \"ZW\"\n ]\n}, Tt = { version: 4, country_calling_codes: { 1: [\"US\", \"AG\", \"AI\", \"AS\", \"BB\", \"BM\", \"BS\", \"CA\", \"DM\", \"DO\", \"GD\", \"GU\", \"JM\", \"KN\", \"KY\", \"LC\", \"MP\", \"MS\", \"PR\", \"SX\", \"TC\", \"TT\", \"VC\", \"VG\", \"VI\"], 7: [\"RU\", \"KZ\"], 20: [\"EG\"], 27: [\"ZA\"], 30: [\"GR\"], 31: [\"NL\"], 32: [\"BE\"], 33: [\"FR\"], 34: [\"ES\"], 36: [\"HU\"], 39: [\"IT\", \"VA\"], 40: [\"RO\"], 41: [\"CH\"], 43: [\"AT\"], 44: [\"GB\", \"GG\", \"IM\", \"JE\"], 45: [\"DK\"], 46: [\"SE\"], 47: [\"NO\", \"SJ\"], 48: [\"PL\"], 49: [\"DE\"], 51: [\"PE\"], 52: [\"MX\"], 53: [\"CU\"], 54: [\"AR\"], 55: [\"BR\"], 56: [\"CL\"], 57: [\"CO\"], 58: [\"VE\"], 60: [\"MY\"], 61: [\"AU\", \"CC\", \"CX\"], 62: [\"ID\"], 63: [\"PH\"], 64: [\"NZ\"], 65: [\"SG\"], 66: [\"TH\"], 81: [\"JP\"], 82: [\"KR\"], 84: [\"VN\"], 86: [\"CN\"], 90: [\"TR\"], 91: [\"IN\"], 92: [\"PK\"], 93: [\"AF\"], 94: [\"LK\"], 95: [\"MM\"], 98: [\"IR\"], 211: [\"SS\"], 212: [\"MA\", \"EH\"], 213: [\"DZ\"], 216: [\"TN\"], 218: [\"LY\"], 220: [\"GM\"], 221: [\"SN\"], 222: [\"MR\"], 223: [\"ML\"], 224: [\"GN\"], 225: [\"CI\"], 226: [\"BF\"], 227: [\"NE\"], 228: [\"TG\"], 229: [\"BJ\"], 230: [\"MU\"], 231: [\"LR\"], 232: [\"SL\"], 233: [\"GH\"], 234: [\"NG\"], 235: [\"TD\"], 236: [\"CF\"], 237: [\"CM\"], 238: [\"CV\"], 239: [\"ST\"], 240: [\"GQ\"], 241: [\"GA\"], 242: [\"CG\"], 243: [\"CD\"], 244: [\"AO\"], 245: [\"GW\"], 246: [\"IO\"], 247: [\"AC\"], 248: [\"SC\"], 249: [\"SD\"], 250: [\"RW\"], 251: [\"ET\"], 252: [\"SO\"], 253: [\"DJ\"], 254: [\"KE\"], 255: [\"TZ\"], 256: [\"UG\"], 257: [\"BI\"], 258: [\"MZ\"], 260: [\"ZM\"], 261: [\"MG\"], 262: [\"RE\", \"YT\"], 263: [\"ZW\"], 264: [\"NA\"], 265: [\"MW\"], 266: [\"LS\"], 267: [\"BW\"], 268: [\"SZ\"], 269: [\"KM\"], 290: [\"SH\", \"TA\"], 291: [\"ER\"], 297: [\"AW\"], 298: [\"FO\"], 299: [\"GL\"], 350: [\"GI\"], 351: [\"PT\"], 352: [\"LU\"], 353: [\"IE\"], 354: [\"IS\"], 355: [\"AL\"], 356: [\"MT\"], 357: [\"CY\"], 358: [\"FI\", \"AX\"], 359: [\"BG\"], 370: [\"LT\"], 371: [\"LV\"], 372: [\"EE\"], 373: [\"MD\"], 374: [\"AM\"], 375: [\"BY\"], 376: [\"AD\"], 377: [\"MC\"], 378: [\"SM\"], 380: [\"UA\"], 381: [\"RS\"], 382: [\"ME\"], 383: [\"XK\"], 385: [\"HR\"], 386: [\"SI\"], 387: [\"BA\"], 389: [\"MK\"], 420: [\"CZ\"], 421: [\"SK\"], 423: [\"LI\"], 500: [\"FK\"], 501: [\"BZ\"], 502: [\"GT\"], 503: [\"SV\"], 504: [\"HN\"], 505: [\"NI\"], 506: [\"CR\"], 507: [\"PA\"], 508: [\"PM\"], 509: [\"HT\"], 590: [\"GP\", \"BL\", \"MF\"], 591: [\"BO\"], 592: [\"GY\"], 593: [\"EC\"], 594: [\"GF\"], 595: [\"PY\"], 596: [\"MQ\"], 597: [\"SR\"], 598: [\"UY\"], 599: [\"CW\", \"BQ\"], 670: [\"TL\"], 672: [\"NF\"], 673: [\"BN\"], 674: [\"NR\"], 675: [\"PG\"], 676: [\"TO\"], 677: [\"SB\"], 678: [\"VU\"], 679: [\"FJ\"], 680: [\"PW\"], 681: [\"WF\"], 682: [\"CK\"], 683: [\"NU\"], 685: [\"WS\"], 686: [\"KI\"], 687: [\"NC\"], 688: [\"TV\"], 689: [\"PF\"], 690: [\"TK\"], 691: [\"FM\"], 692: [\"MH\"], 850: [\"KP\"], 852: [\"HK\"], 853: [\"MO\"], 855: [\"KH\"], 856: [\"LA\"], 880: [\"BD\"], 886: [\"TW\"], 960: [\"MV\"], 961: [\"LB\"], 962: [\"JO\"], 963: [\"SY\"], 964: [\"IQ\"], 965: [\"KW\"], 966: [\"SA\"], 967: [\"YE\"], 968: [\"OM\"], 970: [\"PS\"], 971: [\"AE\"], 972: [\"IL\"], 973: [\"BH\"], 974: [\"QA\"], 975: [\"BT\"], 976: [\"MN\"], 977: [\"NP\"], 992: [\"TJ\"], 993: [\"TM\"], 994: [\"AZ\"], 995: [\"GE\"], 996: [\"KG\"], 998: [\"UZ\"] }, countries: { AC: [\"247\", \"00\", \"(?:[01589]\\\\d|[46])\\\\d{4}\", [5, 6]], AD: [\"376\", \"00\", \"(?:1|6\\\\d)\\\\d{7}|[135-9]\\\\d{5}\", [6, 8, 9], [[\"(\\\\d{3})(\\\\d{3})\", \"$1 $2\", [\"[135-9]\"]], [\"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"1\"]], [\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"6\"]]]], AE: [\"971\", \"00\", \"(?:[4-7]\\\\d|9[0-689])\\\\d{7}|800\\\\d{2,9}|[2-4679]\\\\d{7}\", [5, 6, 7, 8, 9, 10, 11, 12], [[\"(\\\\d{3})(\\\\d{2,9})\", \"$1 $2\", [\"60|8\"]], [\"(\\\\d)(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[236]|[479][2-8]\"], \"0$1\"], [\"(\\\\d{3})(\\\\d)(\\\\d{5})\", \"$1 $2 $3\", [\"[479]\"]], [\"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"5\"], \"0$1\"]], \"0\"], AF: [\"93\", \"00\", \"[2-7]\\\\d{8}\", [9], [[\"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[2-7]\"], \"0$1\"]], \"0\"], AG: [\"1\", \"011\", \"(?:268|[58]\\\\d\\\\d|900)\\\\d{7}\", [10], 0, \"1\", 0, \"([457]\\\\d{6})$|1\", \"268$1\", 0, \"268\"], AI: [\"1\", \"011\", \"(?:264|[58]\\\\d\\\\d|900)\\\\d{7}\", [10], 0, \"1\", 0, \"([2457]\\\\d{6})$|1\", \"264$1\", 0, \"264\"], AL: [\"355\", \"00\", \"(?:700\\\\d\\\\d|900)\\\\d{3}|8\\\\d{5,7}|(?:[2-5]|6\\\\d)\\\\d{7}\", [6, 7, 8, 9], [[\"(\\\\d{3})(\\\\d{3,4})\", \"$1 $2\", [\"80|9\"], \"0$1\"], [\"(\\\\d)(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"4[2-6]\"], \"0$1\"], [\"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[2358][2-5]|4\"], \"0$1\"], [\"(\\\\d{3})(\\\\d{5})\", \"$1 $2\", [\"[23578]\"], \"0$1\"], [\"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"6\"], \"0$1\"]], \"0\"], AM: [\"374\", \"00\", \"(?:[1-489]\\\\d|55|60|77)\\\\d{6}\", [8], [[\"(\\\\d{3})(\\\\d{2})(\\\\d{3})\", \"$1 $2 $3\", [\"[89]0\"], \"0 $1\"], [\"(\\\\d{3})(\\\\d{5})\", \"$1 $2\", [\"2|3[12]\"], \"(0$1)\"], [\"(\\\\d{2})(\\\\d{6})\", \"$1 $2\", [\"1|47\"], \"(0$1)\"], [\"(\\\\d{2})(\\\\d{6})\", \"$1 $2\", [\"[3-9]\"], \"0$1\"]], \"0\"], AO: [\"244\", \"00\", \"[29]\\\\d{8}\", [9], [[\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[29]\"]]]], AR: [\"54\", \"00\", \"(?:11|[89]\\\\d\\\\d)\\\\d{8}|[2368]\\\\d{9}\", [10, 11], [[\"(\\\\d{4})(\\\\d{2})(\\\\d{4})\", \"$1 $2-$3\", [\"2(?:2[024-9]|3[0-59]|47|6[245]|9[02-8])|3(?:3[28]|4[03-9]|5[2-46-8]|7[1-578]|8[2-9])\", \"2(?:[23]02|6(?:[25]|4[6-8])|9(?:[02356]|4[02568]|72|8[23]))|3(?:3[28]|4(?:[04679]|3[5-8]|5[4-68]|8[2379])|5(?:[2467]|3[237]|8[2-5])|7[1-578]|8(?:[2469]|3[2578]|5[4-8]|7[36-8]|8[5-8]))|2(?:2[24-9]|3[1-59]|47)\", \"2(?:[23]02|6(?:[25]|4(?:64|[78]))|9(?:[02356]|4(?:[0268]|5[2-6])|72|8[23]))|3(?:3[28]|4(?:[04679]|3[78]|5(?:4[46]|8)|8[2379])|5(?:[2467]|3[237]|8[23])|7[1-578]|8(?:[2469]|3[278]|5[56][46]|86[3-6]))|2(?:2[24-9]|3[1-59]|47)|38(?:[58][78]|7[378])|3(?:4[35][56]|58[45]|8(?:[38]5|54|76))[4-6]\", \"2(?:[23]02|6(?:[25]|4(?:64|[78]))|9(?:[02356]|4(?:[0268]|5[2-6])|72|8[23]))|3(?:3[28]|4(?:[04679]|3(?:5(?:4[0-25689]|[56])|[78])|58|8[2379])|5(?:[2467]|3[237]|8(?:[23]|4(?:[45]|60)|5(?:4[0-39]|5|64)))|7[1-578]|8(?:[2469]|3[278]|54(?:4|5[13-7]|6[89])|86[3-6]))|2(?:2[24-9]|3[1-59]|47)|38(?:[58][78]|7[378])|3(?:454|85[56])[46]|3(?:4(?:36|5[56])|8(?:[38]5|76))[4-6]\"], \"0$1\", 1], [\"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1 $2-$3\", [\"1\"], \"0$1\", 1], [\"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"[68]\"], \"0$1\"], [\"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2-$3\", [\"[23]\"], \"0$1\", 1], [\"(\\\\d)(\\\\d{4})(\\\\d{2})(\\\\d{4})\", \"$2 15-$3-$4\", [\"9(?:2[2-469]|3[3-578])\", \"9(?:2(?:2[024-9]|3[0-59]|47|6[245]|9[02-8])|3(?:3[28]|4[03-9]|5[2-46-8]|7[1-578]|8[2-9]))\", \"9(?:2(?:[23]02|6(?:[25]|4[6-8])|9(?:[02356]|4[02568]|72|8[23]))|3(?:3[28]|4(?:[04679]|3[5-8]|5[4-68]|8[2379])|5(?:[2467]|3[237]|8[2-5])|7[1-578]|8(?:[2469]|3[2578]|5[4-8]|7[36-8]|8[5-8])))|92(?:2[24-9]|3[1-59]|47)\", \"9(?:2(?:[23]02|6(?:[25]|4(?:64|[78]))|9(?:[02356]|4(?:[0268]|5[2-6])|72|8[23]))|3(?:3[28]|4(?:[04679]|3[78]|5(?:4[46]|8)|8[2379])|5(?:[2467]|3[237]|8[23])|7[1-578]|8(?:[2469]|3[278]|5(?:[56][46]|[78])|7[378]|8(?:6[3-6]|[78]))))|92(?:2[24-9]|3[1-59]|47)|93(?:4[35][56]|58[45]|8(?:[38]5|54|76))[4-6]\", \"9(?:2(?:[23]02|6(?:[25]|4(?:64|[78]))|9(?:[02356]|4(?:[0268]|5[2-6])|72|8[23]))|3(?:3[28]|4(?:[04679]|3(?:5(?:4[0-25689]|[56])|[78])|5(?:4[46]|8)|8[2379])|5(?:[2467]|3[237]|8(?:[23]|4(?:[45]|60)|5(?:4[0-39]|5|64)))|7[1-578]|8(?:[2469]|3[278]|5(?:4(?:4|5[13-7]|6[89])|[56][46]|[78])|7[378]|8(?:6[3-6]|[78]))))|92(?:2[24-9]|3[1-59]|47)|93(?:4(?:36|5[56])|8(?:[38]5|76))[4-6]\"], \"0$1\", 0, \"$1 $2 $3-$4\"], [\"(\\\\d)(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$2 15-$3-$4\", [\"91\"], \"0$1\", 0, \"$1 $2 $3-$4\"], [\"(\\\\d{3})(\\\\d{3})(\\\\d{5})\", \"$1-$2-$3\", [\"8\"], \"0$1\"], [\"(\\\\d)(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$2 15-$3-$4\", [\"9\"], \"0$1\", 0, \"$1 $2 $3-$4\"]], \"0\", 0, \"0?(?:(11|2(?:2(?:02?|[13]|2[13-79]|4[1-6]|5[2457]|6[124-8]|7[1-4]|8[13-6]|9[1267])|3(?:02?|1[467]|2[03-6]|3[13-8]|[49][2-6]|5[2-8]|[67])|4(?:7[3-578]|9)|6(?:[0136]|2[24-6]|4[6-8]?|5[15-8])|80|9(?:0[1-3]|[19]|2\\\\d|3[1-6]|4[02568]?|5[2-4]|6[2-46]|72?|8[23]?))|3(?:3(?:2[79]|6|8[2578])|4(?:0[0-24-9]|[12]|3[5-8]?|4[24-7]|5[4-68]?|6[02-9]|7[126]|8[2379]?|9[1-36-8])|5(?:1|2[1245]|3[237]?|4[1-46-9]|6[2-4]|7[1-6]|8[2-5]?)|6[24]|7(?:[069]|1[1568]|2[15]|3[145]|4[13]|5[14-8]|7[2-57]|8[126])|8(?:[01]|2[15-7]|3[2578]?|4[13-6]|5[4-8]?|6[1-357-9]|7[36-8]?|8[5-8]?|9[124])))15)?\", \"9$1\"], AS: [\"1\", \"011\", \"(?:[58]\\\\d\\\\d|684|900)\\\\d{7}\", [10], 0, \"1\", 0, \"([267]\\\\d{6})$|1\", \"684$1\", 0, \"684\"], AT: [\"43\", \"00\", \"1\\\\d{3,12}|2\\\\d{6,12}|43(?:(?:0\\\\d|5[02-9])\\\\d{3,9}|2\\\\d{4,5}|[3467]\\\\d{4}|8\\\\d{4,6}|9\\\\d{4,7})|5\\\\d{4,12}|8\\\\d{7,12}|9\\\\d{8,12}|(?:[367]\\\\d|4[0-24-9])\\\\d{4,11}\", [4, 5, 6, 7, 8, 9, 10, 11, 12, 13], [[\"(\\\\d)(\\\\d{3,12})\", \"$1 $2\", [\"1(?:11|[2-9])\"], \"0$1\"], [\"(\\\\d{3})(\\\\d{2})\", \"$1 $2\", [\"517\"], \"0$1\"], [\"(\\\\d{2})(\\\\d{3,5})\", \"$1 $2\", [\"5[079]\"], \"0$1\"], [\"(\\\\d{3})(\\\\d{3,10})\", \"$1 $2\", [\"(?:31|4)6|51|6(?:5[0-3579]|[6-9])|7(?:20|32|8)|[89]\"], \"0$1\"], [\"(\\\\d{4})(\\\\d{3,9})\", \"$1 $2\", [\"[2-467]|5[2-6]\"], \"0$1\"], [\"(\\\\d{2})(\\\\d{3})(\\\\d{3,4})\", \"$1 $2 $3\", [\"5\"], \"0$1\"], [\"(\\\\d{2})(\\\\d{4})(\\\\d{4,7})\", \"$1 $2 $3\", [\"5\"], \"0$1\"]], \"0\"], AU: [\"61\", \"001[14-689]|14(?:1[14]|34|4[17]|[56]6|7[47]|88)0011\", \"1(?:[0-79]\\\\d{7}(?:\\\\d(?:\\\\d{2})?)?|8[0-24-9]\\\\d{7})|[2-478]\\\\d{8}|1\\\\d{4,7}\", [5, 6, 7, 8, 9, 10, 12], [[\"(\\\\d{2})(\\\\d{3,4})\", \"$1 $2\", [\"16\"], \"0$1\"], [\"(\\\\d{2})(\\\\d{3})(\\\\d{2,4})\", \"$1 $2 $3\", [\"16\"], \"0$1\"], [\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"14|4\"], \"0$1\"], [\"(\\\\d)(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"[2378]\"], \"(0$1)\"], [\"(\\\\d{4})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"1(?:30|[89])\"]]], \"0\", 0, \"(183[12])|0\", 0, 0, 0, [[\"(?:(?:2(?:[0-26-9]\\\\d|3[0-8]|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(?:(?:79|94)[01]|83[0-389])\\\\d{5}|4(?:[0-3]\\\\d|4[047-9]|5[0-25-9]|6[0-26-9]|7[02-8]|8[0-24-9]|9[0-37-9])\\\\d{6}\", [9]], [\"180(?:0\\\\d{3}|2)\\\\d{3}\", [7, 10]], [\"190[0-26]\\\\d{6}\", [10]], 0, 0, 0, [\"163\\\\d{2,6}\", [5, 6, 7, 8, 9]], [\"14(?:5(?:1[0458]|[23][458])|71\\\\d)\\\\d{4}\", [9]], [\"13(?:00\\\\d{6}(?:\\\\d{2})?|45[0-4]\\\\d{3})|13\\\\d{4}\", [6, 8, 10, 12]]], \"0011\"], AW: [\"297\", \"00\", \"(?:[25-79]\\\\d\\\\d|800)\\\\d{4}\", [7], [[\"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[25-9]\"]]]], AX: [\"358\", \"00|99(?:[01469]|5(?:[14]1|3[23]|5[59]|77|88|9[09]))\", \"2\\\\d{4,9}|35\\\\d{4,5}|(?:60\\\\d\\\\d|800)\\\\d{4,6}|7\\\\d{5,11}|(?:[14]\\\\d|3[0-46-9]|50)\\\\d{4,8}\", [5, 6, 7, 8, 9, 10, 11, 12], 0, \"0\", 0, 0, 0, 0, \"18\", 0, \"00\"], AZ: [\"994\", \"00\", \"365\\\\d{6}|(?:[124579]\\\\d|60|88)\\\\d{7}\", [9], [[\"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"90\"], \"0$1\"], [\"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"1[28]|2|365|46\", \"1[28]|2|365[45]|46\", \"1[28]|2|365(?:4|5[02])|46\"], \"(0$1)\"], [\"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[13-9]\"], \"0$1\"]], \"0\"], BA: [\"387\", \"00\", \"6\\\\d{8}|(?:[35689]\\\\d|49|70)\\\\d{6}\", [8, 9], [[\"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"6[1-3]|[7-9]\"], \"0$1\"], [\"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2-$3\", [\"[3-5]|6[56]\"], \"0$1\"], [\"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{3})\", \"$1 $2 $3 $4\", [\"6\"], \"0$1\"]], \"0\"], BB: [\"1\", \"011\", \"(?:246|[58]\\\\d\\\\d|900)\\\\d{7}\", [10], 0, \"1\", 0, \"([2-9]\\\\d{6})$|1\", \"246$1\", 0, \"246\"], BD: [\"880\", \"00\", \"[1-469]\\\\d{9}|8[0-79]\\\\d{7,8}|[2-79]\\\\d{8}|[2-9]\\\\d{7}|[3-9]\\\\d{6}|[57-9]\\\\d{5}\", [6, 7, 8, 9, 10], [[\"(\\\\d{2})(\\\\d{4,6})\", \"$1-$2\", [\"31[5-8]|[459]1\"], \"0$1\"], [\"(\\\\d{3})(\\\\d{3,7})\", \"$1-$2\", [\"3(?:[67]|8[013-9])|4(?:6[168]|7|[89][18])|5(?:6[128]|9)|6(?:[15]|28|4[14])|7[2-589]|8(?:0[014-9]|[12])|9[358]|(?:3[2-5]|4[235]|5[2-578]|6[0389]|76|8[3-7]|9[24])1|(?:44|66)[01346-9]\"], \"0$1\"], [\"(\\\\d{4})(\\\\d{3,6})\", \"$1-$2\", [\"[13-9]|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\", \"00800\\\\d{7}|[2-7]\\\\d{6,7}|[89]\\\\d{6,8}|2\\\\d{5}\", [6, 7, 8, 9, 12], [[\"(\\\\d)(\\\\d)(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"2\"], \"0$1\"], [\"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"43[1-6]|70[1-9]\"], \"0$1\"], [\"(\\\\d)(\\\\d{3})(\\\\d{3,4})\", \"$1 $2 $3\", [\"2\"], \"0$1\"], [\"(\\\\d{2})(\\\\d{3})(\\\\d{2,3})\", \"$1 $2 $3\", [\"[356]|4[124-7]|7[1-9]|8[1-6]|9[1-7]\"], \"0$1\"], [\"(\\\\d{3})(\\\\d{2})(\\\\d{3})\", \"$1 $2 $3\", [\"(?:70|8)0\"], \"0$1\"], [\"(\\\\d{3})(\\\\d{3})(\\\\d{2})\", \"$1 $2 $3\", [\"43[1-7]|7\"], \"0$1\"], [\"(\\\\d{2})(\\\\d{3})(\\\\d{3,4})\", \"$1 $2 $3\", [\"[48]|9[08]\"], \"0$1\"], [\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"9\"], \"0$1\"]], \"0\"], BH: [\"973\", \"00\", \"[136-9]\\\\d{7}\", [8], [[\"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[13679]|8[02-4679]\"]]]], BI: [\"257\", \"00\", \"(?:[267]\\\\d|31)\\\\d{6}\", [8], [[\"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[2367]\"]]]], BJ: [\"229\", \"00\", \"[24-689]\\\\d{7}\", [8], [[\"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[24-689]\"]]]], BL: [\"590\", \"00\", \"590\\\\d{6}|(?:69|80|9\\\\d)\\\\d{7}\", [9], 0, \"0\", 0, 0, 0, 0, 0, [[\"590(?:2[7-9]|3[3-7]|5[12]|87)\\\\d{4}\"], [\"69(?:0\\\\d\\\\d|1(?:2[2-9]|3[0-5]))\\\\d{4}\"], [\"80[0-5]\\\\d{6}\"], 0, 0, 0, 0, 0, [\"9(?:(?:395|76[018])\\\\d|475[0-5])\\\\d{4}\"]]], BM: [\"1\", \"011\", \"(?:441|[58]\\\\d\\\\d|900)\\\\d{7}\", [10], 0, \"1\", 0, \"([2-9]\\\\d{6})$|1\", \"441$1\", 0, \"441\"], BN: [\"673\", \"00\", \"[2-578]\\\\d{6}\", [7], [[\"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[2-578]\"]]]], BO: [\"591\", \"00(?:1\\\\d)?\", \"(?:[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, \"([3-8]\\\\d{6})$|1\", \"242$1\", 0, \"242\"], BT: [\"975\", \"00\", \"[17]\\\\d{7}|[2-8]\\\\d{6}\", [7, 8], [[\"(\\\\d)(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[2-68]|7[246]\"]], [\"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"1[67]|7\"]]]], BW: [\"267\", \"00\", \"(?:0800|(?:[37]|800)\\\\d)\\\\d{6}|(?:[2-6]\\\\d|90)\\\\d{5}\", [7, 8, 10], [[\"(\\\\d{2})(\\\\d{5})\", \"$1 $2\", [\"90\"]], [\"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[24-6]|3[15-9]\"]], [\"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[37]\"]], [\"(\\\\d{4})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"0\"]], [\"(\\\\d{3})(\\\\d{4})(\\\\d{3})\", \"$1 $2 $3\", [\"8\"]]]], BY: [\"375\", \"810\", \"(?:[12]\\\\d|33|44|902)\\\\d{7}|8(?:0[0-79]\\\\d{5,7}|[1-7]\\\\d{9})|8(?:1[0-489]|[5-79]\\\\d)\\\\d{7}|8[1-79]\\\\d{6,7}|8[0-79]\\\\d{5}|8\\\\d{5}\", [6, 7, 8, 9, 10, 11], [[\"(\\\\d{3})(\\\\d{3})\", \"$1 $2\", [\"800\"], \"8 $1\"], [\"(\\\\d{3})(\\\\d{2})(\\\\d{2,4})\", \"$1 $2 $3\", [\"800\"], \"8 $1\"], [\"(\\\\d{4})(\\\\d{2})(\\\\d{3})\", \"$1 $2-$3\", [\"1(?:5[169]|6[3-5]|7[179])|2(?:1[35]|2[34]|3[3-5])\", \"1(?:5[169]|6(?:3[1-3]|4|5[125])|7(?:1[3-9]|7[0-24-6]|9[2-7]))|2(?:1[35]|2[34]|3[3-5])\"], \"8 0$1\"], [\"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2-$3-$4\", [\"1(?:[56]|7[467])|2[1-3]\"], \"8 0$1\"], [\"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2-$3-$4\", [\"[1-4]\"], \"8 0$1\"], [\"(\\\\d{3})(\\\\d{3,4})(\\\\d{4})\", \"$1 $2 $3\", [\"[89]\"], \"8 $1\"]], \"8\", 0, \"0|80?\", 0, 0, 0, 0, \"8~10\"], BZ: [\"501\", \"00\", \"(?:0800\\\\d|[2-8])\\\\d{6}\", [7, 11], [[\"(\\\\d{3})(\\\\d{4})\", \"$1-$2\", [\"[2-8]\"]], [\"(\\\\d)(\\\\d{3})(\\\\d{4})(\\\\d{3})\", \"$1-$2-$3-$4\", [\"0\"]]]], CA: [\"1\", \"011\", \"(?:[2-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|54|6[578]|82)|4(?:03|1[68]|[26]8|3[178]|50|74)|5(?:06|1[49]|48|79|8[147])|6(?:04|[18]3|39|47|72)|7(?:0[59]|42|53|78|8[02])|8(?:[06]7|19|25|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-9]|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, \"([59]\\\\d{7})$|0\", \"8$1\", 0, 0, [[\"8(?:51(?:0(?:02|31|60|89)|1(?:18|76)|223)|91(?:0(?:1[0-2]|29)|1(?:[28]2|50|79)|2(?:10|64)|3(?:[06]8|22)|4[29]8|62\\\\d|70[23]|959))\\\\d{3}\", [9]], [\"4(?:(?:79|94)[01]|83[0-389])\\\\d{5}|4(?:[0-3]\\\\d|4[047-9]|5[0-25-9]|6[0-26-9]|7[02-8]|8[0-24-9]|9[0-37-9])\\\\d{6}\", [9]], [\"180(?:0\\\\d{3}|2)\\\\d{3}\", [7, 10]], [\"190[0-26]\\\\d{6}\", [10]], 0, 0, 0, 0, [\"14(?:5(?:1[0458]|[23][458])|71\\\\d)\\\\d{4}\", [9]], [\"13(?:00\\\\d{6}(?:\\\\d{2})?|45[0-4]\\\\d{3})|13\\\\d{4}\", [6, 8, 10, 12]]], \"0011\"], CD: [\"243\", \"00\", \"[189]\\\\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(?:10|9[56])|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, \"(1(?:[12]\\\\d|79)\\\\d\\\\d)|0\", 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\", [\"3[0-357]|91\"]], [\"(\\\\d)(\\\\d{3})(\\\\d{7})\", \"$1-$2-$3\", [\"1\"], \"0$1\", 0, \"$1 $2 $3\"]], \"0\", 0, \"0([3579]|4(?:[14]4|56))?\"], CR: [\"506\", \"00\", \"(?:8\\\\d|90)\\\\d{8}|(?:[24-8]\\\\d{3}|3005)\\\\d{4}\", [8, 10], [[\"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[2-7]|8[3-9]\"]], [\"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"[89]\"]]], 0, 0, \"(19(?:0[0-2468]|1[09]|20|66|77|99))\"], CU: [\"53\", \"119\", \"[27]\\\\d{6,7}|[34]\\\\d{5,7}|63\\\\d{6}|(?: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\", [\"[56]\"], \"0$1\"], [\"(\\\\d{3})(\\\\d{7})\", \"$1 $2\", [\"8\"], \"0$1\"]], \"0\"], CV: [\"238\", \"0\", \"(?:[2-59]\\\\d\\\\d|800)\\\\d{4}\", [7], [[\"(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3\", [\"[2-589]\"]]]], CW: [\"599\", \"00\", \"(?:[34]1|60|(?:7|9\\\\d)\\\\d)\\\\d{5}\", [7, 8], [[\"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[3467]\"]], [\"(\\\\d)(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"9[4-8]\"]]], 0, 0, 0, 0, 0, \"[69]\"], CX: [\"61\", \"001[14-689]|14(?:1[14]|34|4[17]|[56]6|7[47]|88)0011\", \"1(?:[0-79]\\\\d{8}(?:\\\\d{2})?|8[0-24-9]\\\\d{7})|[148]\\\\d{8}|1\\\\d{5,7}\", [6, 7, 8, 9, 10, 12], 0, \"0\", 0, \"([59]\\\\d{7})$|0\", \"8$1\", 0, 0, [[\"8(?:51(?:0(?:01|30|59|88)|1(?:17|46|75)|2(?:22|35))|91(?:00[6-9]|1(?:[28]1|49|78)|2(?:09|63)|3(?:12|26|75)|4(?:56|97)|64\\\\d|7(?:0[01]|1[0-2])|958))\\\\d{3}\", [9]], [\"4(?:(?:79|94)[01]|83[0-389])\\\\d{5}|4(?:[0-3]\\\\d|4[047-9]|5[0-25-9]|6[0-26-9]|7[02-8]|8[0-24-9]|9[0-37-9])\\\\d{6}\", [9]], [\"180(?:0\\\\d{3}|2)\\\\d{3}\", [7, 10]], [\"190[0-26]\\\\d{6}\", [10]], 0, 0, 0, 0, [\"14(?:5(?:1[0458]|[23][458])|71\\\\d)\\\\d{4}\", [9]], [\"13(?:00\\\\d{6}(?:\\\\d{2})?|45[0-4]\\\\d{3})|13\\\\d{4}\", [6, 8, 10, 12]]], \"0011\"], CY: [\"357\", \"00\", \"(?:[279]\\\\d|[58]0)\\\\d{6}\", [8], [[\"(\\\\d{2})(\\\\d{6})\", \"$1 $2\", [\"[257-9]\"]]]], CZ: [\"420\", \"00\", \"(?:[2-578]\\\\d|60)\\\\d{7}|9\\\\d{8,11}\", [9], [[\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[2-8]|9[015-7]\"]], [\"(\\\\d{2})(\\\\d{3})(\\\\d{3})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"96\"]], [\"(\\\\d{2})(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3 $4\", [\"9\"]], [\"(\\\\d{3})(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3 $4\", [\"9\"]]]], DE: [\"49\", \"00\", \"[2579]\\\\d{5,14}|49(?:[34]0|69|8\\\\d)\\\\d\\\\d?|49(?:37|49|60|7[089]|9\\\\d)\\\\d{1,3}|49(?:2[024-9]|3[2-689]|7[1-7])\\\\d{1,8}|(?:1|[368]\\\\d|4[0-8])\\\\d{3,13}|49(?:[015]\\\\d|2[13]|31|[46][1-8])\\\\d{1,9}\", [4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15], [[\"(\\\\d{2})(\\\\d{3,13})\", \"$1 $2\", [\"3[02]|40|[68]9\"], \"0$1\"], [\"(\\\\d{3})(\\\\d{3,12})\", \"$1 $2\", [\"2(?:0[1-389]|1[124]|2[18]|3[14])|3(?:[35-9][15]|4[015])|906|(?:2[4-9]|4[2-9]|[579][1-9]|[68][1-8])1\", \"2(?:0[1-389]|12[0-8])|3(?:[35-9][15]|4[015])|906|2(?:[13][14]|2[18])|(?:2[4-9]|4[2-9]|[579][1-9]|[68][1-8])1\"], \"0$1\"], [\"(\\\\d{4})(\\\\d{2,11})\", \"$1 $2\", [\"[24-6]|3(?:[3569][02-46-9]|4[2-4679]|7[2-467]|8[2-46-8])|70[2-8]|8(?:0[2-9]|[1-8])|90[7-9]|[79][1-9]\", \"[24-6]|3(?:3(?:0[1-467]|2[127-9]|3[124578]|7[1257-9]|8[1256]|9[145])|4(?:2[135]|4[13578]|9[1346])|5(?:0[14]|2[1-3589]|6[1-4]|7[13468]|8[13568])|6(?:2[1-489]|3[124-6]|6[13]|7[12579]|8[1-356]|9[135])|7(?:2[1-7]|4[145]|6[1-5]|7[1-4])|8(?:21|3[1468]|6|7[1467]|8[136])|9(?:0[12479]|2[1358]|4[134679]|6[1-9]|7[136]|8[147]|9[1468]))|70[2-8]|8(?:0[2-9]|[1-8])|90[7-9]|[79][1-9]|3[68]4[1347]|3(?:47|60)[1356]|3(?:3[46]|46|5[49])[1246]|3[4579]3[1357]\"], \"0$1\"], [\"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"138\"], \"0$1\"], [\"(\\\\d{5})(\\\\d{2,10})\", \"$1 $2\", [\"3\"], \"0$1\"], [\"(\\\\d{3})(\\\\d{5,11})\", \"$1 $2\", [\"181\"], \"0$1\"], [\"(\\\\d{3})(\\\\d)(\\\\d{4,10})\", \"$1 $2 $3\", [\"1(?:3|80)|9\"], \"0$1\"], [\"(\\\\d{3})(\\\\d{7,8})\", \"$1 $2\", [\"1[67]\"], \"0$1\"], [\"(\\\\d{3})(\\\\d{7,12})\", \"$1 $2\", [\"8\"], \"0$1\"], [\"(\\\\d{5})(\\\\d{6})\", \"$1 $2\", [\"185\", \"1850\", \"18500\"], \"0$1\"], [\"(\\\\d{3})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"7\"], \"0$1\"], [\"(\\\\d{4})(\\\\d{7})\", \"$1 $2\", [\"18[68]\"], \"0$1\"], [\"(\\\\d{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, \"([2-7]\\\\d{6})$|1\", \"767$1\", 0, \"767\"], DO: [\"1\", \"011\", \"(?:[58]\\\\d\\\\d|900)\\\\d{7}\", [10], 0, \"1\", 0, 0, 0, 0, \"8001|8[024]9\"], DZ: [\"213\", \"00\", \"(?:[1-4]|[5-79]\\\\d|80)\\\\d{7}\", [8, 9], [[\"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[1-4]\"], \"0$1\"], [\"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"9\"], \"0$1\"], [\"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[5-8]\"], \"0$1\"]], \"0\"], EC: [\"593\", \"00\", \"1\\\\d{9,10}|(?:[2-7]|9\\\\d)\\\\d{7}\", [8, 9, 10, 11], [[\"(\\\\d)(\\\\d{3})(\\\\d{4})\", \"$1 $2-$3\", [\"[2-7]\"], \"(0$1)\", 0, \"$1-$2-$3\"], [\"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"9\"], \"0$1\"], [\"(\\\\d{4})(\\\\d{3})(\\\\d{3,4})\", \"$1 $2 $3\", [\"1\"]]], \"0\"], EE: [\"372\", \"00\", \"8\\\\d{9}|[4578]\\\\d{7}|(?:[3-8]\\\\d|90)\\\\d{5}\", [7, 8, 10], [[\"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[369]|4[3-8]|5(?:[0-2]|5[0-478]|6[45])|7[1-9]|88\", \"[369]|4[3-8]|5(?:[02]|1(?:[0-8]|95)|5[0-478]|6(?:4[0-4]|5[1-589]))|7[1-9]|88\"]], [\"(\\\\d{4})(\\\\d{3,4})\", \"$1 $2\", [\"[45]|8(?:00|[1-49])\", \"[45]|8(?:00[1-9]|[1-49])\"]], [\"(\\\\d{2})(\\\\d{2})(\\\\d{4})\", \"$1 $2 $3\", [\"7\"]], [\"(\\\\d{4})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"8\"]]]], EG: [\"20\", \"00\", \"[189]\\\\d{8,9}|[24-6]\\\\d{8}|[135]\\\\d{7}\", [8, 9, 10], [[\"(\\\\d)(\\\\d{7,8})\", \"$1 $2\", [\"[23]\"], \"0$1\"], [\"(\\\\d{2})(\\\\d{6,7})\", \"$1 $2\", [\"1[35]|[4-6]|8[2468]|9[235-7]\"], \"0$1\"], [\"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[89]\"], \"0$1\"], [\"(\\\\d{2})(\\\\d{8})\", \"$1 $2\", [\"1\"], \"0$1\"]], \"0\"], EH: [\"212\", \"00\", \"[5-8]\\\\d{8}\", [9], 0, \"0\", 0, 0, 0, 0, \"528[89]\"], ER: [\"291\", \"00\", \"[178]\\\\d{6}\", [7], [[\"(\\\\d)(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[178]\"], \"0$1\"]], \"0\"], ES: [\"34\", \"00\", \"[5-9]\\\\d{8}\", [9], [[\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[89]00\"]], [\"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[5-9]\"]]]], ET: [\"251\", \"00\", \"(?:11|[2-579]\\\\d)\\\\d{7}\", [9], [[\"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[1-579]\"], \"0$1\"]], \"0\"], FI: [\"358\", \"00|99(?:[01469]|5(?:[14]1|3[23]|5[59]|77|88|9[09]))\", \"[1-35689]\\\\d{4}|7\\\\d{10,11}|(?:[124-7]\\\\d|3[0-46-9])\\\\d{8}|[1-9]\\\\d{5,8}\", [5, 6, 7, 8, 9, 10, 11, 12], [[\"(\\\\d)(\\\\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[0-79])|(?:(?:5[0-26-9]|[78][0-49])\\\\d|6(?:[0-4]\\\\d|50))\\\\d)|(?:2(?:(?:0[024-9]|2[3-9]|3[3-79]|4[1-689]|[58][02-9]|6[0-47-9]|7[013-9]|9\\\\d)\\\\d|1(?:[0-7]\\\\d|8[0-2]))|(?:3(?:0\\\\d|1[0-8]|[25][02-9]|3[02-579]|[468][0-46-9]|7[1-35-79]|9[2-578])|4(?:0[03-9]|[137]\\\\d|[28][02-57-9]|4[02-69]|5[0-8]|[69][0-79])|5(?:0[1-35-9]|[16]\\\\d|2[024-9]|3[015689]|4[02-9]|5[03-9]|7[0-35-9]|8[0-468]|9[0-57-9])|6(?:0[034689]|1\\\\d|2[0-35689]|[38][013-9]|4[1-467]|5[0-69]|6[13-9]|7[0-8]|9[0-24578])|7(?:0[0246-9]|2\\\\d|3[0236-8]|4[03-9]|5[0-46-9]|6[013-9]|7[0-35-9]|8[024-9]|9[02-9])|8(?:0[35-9]|2[1-57-9]|3[02-578]|4[0-578]|5[124-9]|6[2-69]|7\\\\d|8[02-9]|9[02569])|9(?:0[02-589]|[18]\\\\d|2[02-689]|3[1-57-9]|4[2-9]|5[0-579]|6[2-47-9]|7[0-24578]|9[2-57]))\\\\d)\\\\d)|2(?:0[013478]|3[0189]|4[017]|8[0-46-9]|9[0-2])\\\\d{3})\\\\d{4}|1(?:2(?:0(?:46[1-4]|87[2-9])|545[1-79]|76(?:2\\\\d|3[1-8]|6[1-6])|9(?:7(?:2[0-4]|3[2-5])|8(?:2[2-8]|7[0-47-9]|8[3-5])))|3(?:6(?:38[2-5]|47[23])|8(?:47[04-9]|64[0157-9]))|4(?:044[1-7]|20(?:2[23]|8\\\\d)|6(?:0(?:30|5[2-57]|6[1-8]|7[2-8])|140)|8(?:052|87[1-3]))|5(?:2(?:4(?:3[2-79]|6\\\\d)|76\\\\d)|6(?:26[06-9]|686))|6(?:06(?:4\\\\d|7[4-79])|295[5-7]|35[34]\\\\d|47(?:24|61)|59(?:5[08]|6[67]|74)|9(?:55[0-4]|77[23]))|7(?:26(?:6[13-9]|7[0-7])|(?:442|688)\\\\d|50(?:2[0-3]|[3-68]2|76))|8(?:27[56]\\\\d|37(?:5[2-5]|8[239])|843[2-58])|9(?:0(?:0(?:6[1-8]|85)|52\\\\d)|3583|4(?:66[1-8]|9(?:2[01]|81))|63(?:23|3[1-4])|9561))\\\\d{3}\", [9, 10]], [\"7(?:457[0-57-9]|700[01]|911[028])\\\\d{5}|7(?:[1-3]\\\\d\\\\d|4(?:[0-46-9]\\\\d|5[0-689])|5(?:0[0-8]|[13-9]\\\\d|2[0-35-9])|7(?:0[1-9]|[1-7]\\\\d|8[02-9]|9[0-689])|8(?:[014-9]\\\\d|[23][0-8])|9(?:[024-9]\\\\d|1[02-9]|3[0-689]))\\\\d{6}\", [10]], [\"80[08]\\\\d{7}|800\\\\d{6}|8001111\"], [\"(?:8(?:4[2-5]|7[0-3])|9(?:[01]\\\\d|8[2-49]))\\\\d{7}|845464\\\\d\", [7, 10]], [\"70\\\\d{8}\", [10]], 0, [\"(?:3[0347]|55)\\\\d{8}\", [10]], [\"76(?:464|652)\\\\d{5}|76(?:0[0-28]|2[356]|34|4[01347]|5[49]|6[0-369]|77|8[14]|9[139])\\\\d{6}\", [10]], [\"56\\\\d{8}\", [10]]], 0, \" x\"], GD: [\"1\", \"011\", \"(?:473|[58]\\\\d\\\\d|900)\\\\d{7}\", [10], 0, \"1\", 0, \"([2-9]\\\\d{6})$|1\", \"473$1\", 0, \"473\"], GE: [\"995\", \"00\", \"(?:[3-57]\\\\d\\\\d|800)\\\\d{6}\", [9], [[\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"70\"], \"0$1\"], [\"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"32\"], \"0$1\"], [\"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[57]\"]], [\"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[348]\"], \"0$1\"]], \"0\"], GF: [\"594\", \"00\", \"[56]94\\\\d{6}|(?:80|9\\\\d)\\\\d{7}\", [9], [[\"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[56]|9[47]\"], \"0$1\"], [\"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[89]\"], \"0$1\"]], \"0\"], GG: [\"44\", \"00\", \"(?:1481|[357-9]\\\\d{3})\\\\d{6}|8\\\\d{6}(?:\\\\d{2})?\", [7, 9, 10], 0, \"0\", 0, \"([25-9]\\\\d{5})$|0\", \"1481$1\", 0, 0, [[\"1481[25-9]\\\\d{5}\", [10]], [\"7(?:(?:781|839)\\\\d|911[17])\\\\d{5}\", [10]], [\"80[08]\\\\d{7}|800\\\\d{6}|8001111\"], [\"(?:8(?:4[2-5]|7[0-3])|9(?:[01]\\\\d|8[0-3]))\\\\d{7}|845464\\\\d\", [7, 10]], [\"70\\\\d{8}\", [10]], 0, [\"(?:3[0347]|55)\\\\d{8}\", [10]], [\"76(?:464|652)\\\\d{5}|76(?:0[0-28]|2[356]|34|4[01347]|5[49]|6[0-369]|77|8[14]|9[139])\\\\d{6}\", [10]], [\"56\\\\d{8}\", [10]]]], GH: [\"233\", \"00\", \"(?:[235]\\\\d{3}|800)\\\\d{5}\", [8, 9], [[\"(\\\\d{3})(\\\\d{5})\", \"$1 $2\", [\"8\"], \"0$1\"], [\"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[235]\"], \"0$1\"]], \"0\"], GI: [\"350\", \"00\", \"(?:[25]\\\\d|60)\\\\d{6}\", [8], [[\"(\\\\d{3})(\\\\d{5})\", \"$1 $2\", [\"2\"]]]], GL: [\"299\", \"00\", \"(?:19|[2-689]\\\\d|70)\\\\d{4}\", [6], [[\"(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3\", [\"19|[2-9]\"]]]], GM: [\"220\", \"00\", \"[2-9]\\\\d{6}\", [7], [[\"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[2-9]\"]]]], GN: [\"224\", \"00\", \"722\\\\d{6}|(?:3|6\\\\d)\\\\d{7}\", [8, 9], [[\"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"3\"]], [\"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[67]\"]]]], GP: [\"590\", \"00\", \"590\\\\d{6}|(?:69|80|9\\\\d)\\\\d{7}\", [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[1-9]|5[3-579]|[68][0-689]|7[08]|9\\\\d)\\\\d{4}\"], [\"69(?:0\\\\d\\\\d|1(?:2[2-9]|3[0-5]))\\\\d{4}\"], [\"80[0-5]\\\\d{6}\"], 0, 0, 0, 0, 0, [\"9(?:(?:395|76[018])\\\\d|475[0-5])\\\\d{4}\"]]], GQ: [\"240\", \"00\", \"222\\\\d{6}|(?:3\\\\d|55|[89]0)\\\\d{7}\", [9], [[\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[235]\"]], [\"(\\\\d{3})(\\\\d{6})\", \"$1 $2\", [\"[89]\"]]]], GR: [\"30\", \"00\", \"5005000\\\\d{3}|8\\\\d{9,11}|(?:[269]\\\\d|70)\\\\d{8}\", [10, 11, 12], [[\"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"21|7\"]], [\"(\\\\d{4})(\\\\d{6})\", \"$1 $2\", [\"2(?:2|3[2-57-9]|4[2-469]|5[2-59]|6[2-9]|7[2-69]|8[2-49])|5\"]], [\"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[2689]\"]], [\"(\\\\d{3})(\\\\d{3,4})(\\\\d{5})\", \"$1 $2 $3\", [\"8\"]]]], GT: [\"502\", \"00\", \"(?: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, \"([3-9]\\\\d{6})$|1\", \"671$1\", 0, \"671\"], GW: [\"245\", \"00\", \"[49]\\\\d{8}|4\\\\d{6}\", [7, 9], [[\"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"40\"]], [\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[49]\"]]]], GY: [\"592\", \"001\", \"9008\\\\d{3}|(?:[2-467]\\\\d\\\\d|510|862)\\\\d{4}\", [7], [[\"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[2-9]\"]]]], HK: [\"852\", \"00(?:30|5[09]|[126-9]?)\", \"8[0-46-9]\\\\d{6,7}|9\\\\d{4,7}|(?:[2-7]|9\\\\d{3})\\\\d{7}\", [5, 6, 7, 8, 9, 11], [[\"(\\\\d{3})(\\\\d{2,5})\", \"$1 $2\", [\"900\", \"9003\"]], [\"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[2-7]|8[1-4]|9(?:0[1-9]|[1-8])\"]], [\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"8\"]], [\"(\\\\d{3})(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3 $4\", [\"9\"]]], 0, 0, 0, 0, 0, 0, 0, \"00\"], HN: [\"504\", \"00\", \"8\\\\d{10}|[237-9]\\\\d{7}\", [8, 11], [[\"(\\\\d{4})(\\\\d{4})\", \"$1-$2\", [\"[237-9]\"]]]], HR: [\"385\", \"00\", \"(?:[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|55)\\\\d{6}\", [8], [[\"(\\\\d{2})(\\\\d{2})(\\\\d{4})\", \"$1 $2 $3\", [\"[2-589]\"]]]], HU: [\"36\", \"00\", \"[235-7]\\\\d{8}|[1-9]\\\\d{7}\", [8, 9], [[\"(\\\\d)(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"1\"], \"(06 $1)\"], [\"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[27][2-9]|3[2-7]|4[24-9]|5[2-79]|6|8[2-57-9]|9[2-69]\"], \"(06 $1)\"], [\"(\\\\d{2})(\\\\d{3})(\\\\d{3,4})\", \"$1 $2 $3\", [\"[2-9]\"], \"06 $1\"]], \"06\"], ID: [\"62\", \"00[89]\", \"(?:(?:00[1-9]|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, \"([25-8]\\\\d{5})$|0\", \"1624$1\", 0, \"74576|(?:16|7[56])24\"], IN: [\"91\", \"00\", \"(?:000800|[2-9]\\\\d\\\\d)\\\\d{7}|1\\\\d{7,12}\", [8, 9, 10, 11, 12, 13], [[\"(\\\\d{8})\", \"$1\", [\"5(?:0|2[23]|3[03]|[67]1|88)\", \"5(?:0|2(?:21|3)|3(?:0|3[23])|616|717|888)\", \"5(?:0|2(?:21|3)|3(?:0|3[23])|616|717|8888)\"], 0, 1], [\"(\\\\d{4})(\\\\d{4,5})\", \"$1 $2\", [\"180\", \"1800\"], 0, 1], [\"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"140\"], 0, 1], [\"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"11|2[02]|33|4[04]|79[1-7]|80[2-46]\", \"11|2[02]|33|4[04]|79(?:[1-6]|7[19])|80(?:[2-4]|6[0-589])\", \"11|2[02]|33|4[04]|79(?:[124-6]|3(?:[02-9]|1[0-24-9])|7(?:1|9[1-6]))|80(?:[2-4]|6[0-589])\"], \"0$1\", 1], [\"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"1(?:2[0-249]|3[0-25]|4[145]|[68]|7[1257])|2(?:1[257]|3[013]|4[01]|5[0137]|6[0158]|78|8[1568])|3(?:26|4[1-3]|5[34]|6[01489]|7[02-46]|8[159])|4(?:1[36]|2[1-47]|5[12]|6[0-26-9]|7[0-24-9]|8[013-57]|9[014-7])|5(?:1[025]|22|[36][25]|4[28]|5[12]|[78]1)|6(?:12|[2-4]1|5[17]|6[13]|80)|7(?:12|3[134]|4[47]|61|88)|8(?:16|2[014]|3[126]|6[136]|7[078]|8[34]|91)|(?:43|59|75)[15]|(?:1[59]|29|67|72)[14]\", \"1(?:2[0-24]|3[0-25]|4[145]|[59][14]|6[1-9]|7[1257]|8[1-57-9])|2(?:1[257]|3[013]|4[01]|5[0137]|6[058]|78|8[1568]|9[14])|3(?:26|4[1-3]|5[34]|6[01489]|7[02-46]|8[159])|4(?:1[36]|2[1-47]|3[15]|5[12]|6[0-26-9]|7[0-24-9]|8[013-57]|9[014-7])|5(?:1[025]|22|[36][25]|4[28]|[578]1|9[15])|674|7(?:(?:2[14]|3[34]|5[15])[2-6]|61[346]|88[0-8])|8(?:70[2-6]|84[235-7]|91[3-7])|(?:1(?:29|60|8[06])|261|552|6(?:12|[2-47]1|5[17]|6[13]|80)|7(?:12|31|4[47])|8(?:16|2[014]|3[126]|6[136]|7[78]|83))[2-7]\", \"1(?:2[0-24]|3[0-25]|4[145]|[59][14]|6[1-9]|7[1257]|8[1-57-9])|2(?:1[257]|3[013]|4[01]|5[0137]|6[058]|78|8[1568]|9[14])|3(?:26|4[1-3]|5[34]|6[01489]|7[02-46]|8[159])|4(?:1[36]|2[1-47]|3[15]|5[12]|6[0-26-9]|7[0-24-9]|8[013-57]|9[014-7])|5(?:1[025]|22|[36][25]|4[28]|[578]1|9[15])|6(?:12(?:[2-6]|7[0-8])|74[2-7])|7(?:(?:2[14]|5[15])[2-6]|3171|61[346]|88(?:[2-7]|82))|8(?:70[2-6]|84(?:[2356]|7[19])|91(?:[3-6]|7[19]))|73[134][2-6]|(?:74[47]|8(?:16|2[014]|3[126]|6[136]|7[78]|83))(?:[2-6]|7[19])|(?:1(?:29|60|8[06])|261|552|6(?:[2-4]1|5[17]|6[13]|7(?:1|4[0189])|80)|7(?:12|88[01]))[2-7]\"], \"0$1\", 1], [\"(\\\\d{4})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"1(?:[2-479]|5[0235-9])|[2-5]|6(?:1[1358]|2[2457-9]|3[2-5]|4[235-7]|5[2-689]|6[24578]|7[235689]|8[1-6])|7(?:1[013-9]|28|3[129]|4[1-35689]|5[29]|6[02-5]|70)|807\", \"1(?:[2-479]|5[0235-9])|[2-5]|6(?:1[1358]|2(?:[2457]|84|95)|3(?:[2-4]|55)|4[235-7]|5[2-689]|6[24578]|7[235689]|8[1-6])|7(?:1(?:[013-8]|9[6-9])|28[6-8]|3(?:17|2[0-49]|9[2-57])|4(?:1[2-4]|[29][0-7]|3[0-8]|[56]|8[0-24-7])|5(?:2[1-3]|9[0-6])|6(?:0[5689]|2[5-9]|3[02-8]|4|5[0-367])|70[13-7])|807[19]\", \"1(?:[2-479]|5(?:[0236-9]|5[013-9]))|[2-5]|6(?:2(?:84|95)|355|83)|73179|807(?:1|9[1-3])|(?:1552|6(?:1[1358]|2[2457]|3[2-4]|4[235-7]|5[2-689]|6[24578]|7[235689]|8[124-6])\\\\d|7(?:1(?:[013-8]\\\\d|9[6-9])|28[6-8]|3(?:2[0-49]|9[2-57])|4(?:1[2-4]|[29][0-7]|3[0-8]|[56]\\\\d|8[0-24-7])|5(?:2[1-3]|9[0-6])|6(?:0[5689]|2[5-9]|3[02-8]|4\\\\d|5[0-367])|70[13-7]))[2-7]\"], \"0$1\", 1], [\"(\\\\d{5})(\\\\d{5})\", \"$1 $2\", [\"[6-9]\"], \"0$1\", 1], [\"(\\\\d{4})(\\\\d{2,4})(\\\\d{4})\", \"$1 $2 $3\", [\"1(?:6|8[06])\", \"1(?:6|8[06]0)\"], 0, 1], [\"(\\\\d{4})(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3 $4\", [\"18\"], 0, 1]], \"0\"], IO: [\"246\", \"00\", \"3\\\\d{6}\", [7], [[\"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"3\"]]]], IQ: [\"964\", \"00\", \"(?:1|7\\\\d\\\\d)\\\\d{7}|[2-6]\\\\d{7,8}\", [8, 9, 10], [[\"(\\\\d)(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"1\"], \"0$1\"], [\"(\\\\d{2})(\\\\d{3})(\\\\d{3,4})\", \"$1 $2 $3\", [\"[2-6]\"], \"0$1\"], [\"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"7\"], \"0$1\"]], \"0\"], IR: [\"98\", \"00\", \"[1-9]\\\\d{9}|(?:[1-8]\\\\d\\\\d|9)\\\\d{3,4}\", [4, 5, 6, 7, 10], [[\"(\\\\d{4,5})\", \"$1\", [\"96\"], \"0$1\"], [\"(\\\\d{2})(\\\\d{4,5})\", \"$1 $2\", [\"(?:1[137]|2[13-68]|3[1458]|4[145]|5[1468]|6[16]|7[1467]|8[13467])[12689]\"], \"0$1\"], [\"(\\\\d{3})(\\\\d{3})(\\\\d{3,4})\", \"$1 $2 $3\", [\"9\"], \"0$1\"], [\"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"[1-8]\"], \"0$1\"]], \"0\"], IS: [\"354\", \"00|1(?:0(?:01|[12]0)|100)\", \"(?:38\\\\d|[4-9])\\\\d{6}\", [7, 9], [[\"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[4-9]\"]], [\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"3\"]]], 0, 0, 0, 0, 0, 0, 0, \"00\"], IT: [\"39\", \"00\", \"0\\\\d{5,10}|1\\\\d{8,10}|3(?:[0-8]\\\\d{7,10}|9\\\\d{7,8})|(?: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-24-8]\\\\d{5})$|0\", \"1534$1\", 0, 0, [[\"1534[0-24-8]\\\\d{5}\"], [\"7(?:(?:(?:50|82)9|937)\\\\d|7(?:00[378]|97[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-28]|2[356]|34|4[01347]|5[49]|6[0-369]|77|8[14]|9[139])\\\\d{6}\"], [\"56\\\\d{8}\"]]], JM: [\"1\", \"011\", \"(?:[58]\\\\d\\\\d|658|900)\\\\d{7}\", [10], 0, \"1\", 0, 0, 0, 0, \"658|876\"], JO: [\"962\", \"00\", \"(?:(?:[2689]|7\\\\d)\\\\d|32|53)\\\\d{6}\", [8, 9], [[\"(\\\\d)(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[2356]|87\"], \"(0$1)\"], [\"(\\\\d{3})(\\\\d{5,6})\", \"$1 $2\", [\"[89]\"], \"0$1\"], [\"(\\\\d{2})(\\\\d{7})\", \"$1 $2\", [\"70\"], \"0$1\"], [\"(\\\\d)(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"7\"], \"0$1\"]], \"0\"], JP: [\"81\", \"010\", \"00[1-9]\\\\d{6,14}|[257-9]\\\\d{9}|(?:00|[1-9]\\\\d\\\\d)\\\\d{6}\", [8, 9, 10, 11, 12, 13, 14, 15, 16, 17], [[\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1-$2-$3\", [\"(?:12|57|99)0\"], \"0$1\"], [\"(\\\\d{4})(\\\\d)(\\\\d{4})\", \"$1-$2-$3\", [\"1(?:26|3[79]|4[56]|5[4-68]|6[3-5])|499|5(?:76|97)|746|8(?:3[89]|47|51)|9(?:80|9[16])\", \"1(?:267|3(?:7[247]|9[278])|466|5(?:47|58|64)|6(?:3[245]|48|5[4-68]))|499[2468]|5(?:76|97)9|7468|8(?:3(?:8[7-9]|96)|477|51[2-9])|9(?:802|9(?:1[23]|69))|1(?:45|58)[67]\", \"1(?:267|3(?:7[247]|9[278])|466|5(?:47|58|64)|6(?:3[245]|48|5[4-68]))|499[2468]|5(?:769|979[2-69])|7468|8(?:3(?:8[7-9]|96[2457-9])|477|51[2-9])|9(?:802|9(?:1[23]|69))|1(?:45|58)[67]\"], \"0$1\"], [\"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"60\"], \"0$1\"], [\"(\\\\d)(\\\\d{4})(\\\\d{4})\", \"$1-$2-$3\", [\"[36]|4(?:2[09]|7[01])\", \"[36]|4(?:2(?:0|9[02-69])|7(?:0[019]|1))\"], \"0$1\"], [\"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"1(?:1|5[45]|77|88|9[69])|2(?:2[1-37]|3[0-269]|4[59]|5|6[24]|7[1-358]|8[1369]|9[0-38])|4(?:[28][1-9]|3[0-57]|[45]|6[248]|7[2-579]|9[29])|5(?:2|3[0459]|4[0-369]|5[29]|8[02389]|9[0-389])|7(?:2[02-46-9]|34|[58]|6[0249]|7[57]|9[2-6])|8(?:2[124589]|3[26-9]|49|51|6|7[0-468]|8[68]|9[019])|9(?:[23][1-9]|4[15]|5[138]|6[1-3]|7[156]|8[189]|9[1-489])\", \"1(?:1|5(?:4[018]|5[017])|77|88|9[69])|2(?:2(?:[127]|3[014-9])|3[0-269]|4[59]|5(?:[1-3]|5[0-69]|9[19])|62|7(?:[1-35]|8[0189])|8(?:[16]|3[0134]|9[0-5])|9(?:[028]|17))|4(?:2(?:[13-79]|8[014-6])|3[0-57]|[45]|6[248]|7[2-47]|8[1-9]|9[29])|5(?:2|3(?:[045]|9[0-8])|4[0-369]|5[29]|8[02389]|9[0-3])|7(?:2[02-46-9]|34|[58]|6[0249]|7[57]|9(?:[23]|4[0-59]|5[01569]|6[0167]))|8(?:2(?:[1258]|4[0-39]|9[0-2469])|3(?:[29]|60)|49|51|6(?:[0-24]|36|5[0-3589]|7[23]|9[01459])|7[0-468]|8[68])|9(?:[23][1-9]|4[15]|5[138]|6[1-3]|7[156]|8[189]|9(?:[1289]|3[34]|4[0178]))|(?:264|837)[016-9]|2(?:57|93)[015-9]|(?:25[0468]|422|838)[01]|(?:47[59]|59[89]|8(?:6[68]|9))[019]\", \"1(?:1|5(?:4[018]|5[017])|77|88|9[69])|2(?:2[127]|3[0-269]|4[59]|5(?:[1-3]|5[0-69]|9(?:17|99))|6(?:2|4[016-9])|7(?:[1-35]|8[0189])|8(?:[16]|3[0134]|9[0-5])|9(?:[028]|17))|4(?:2(?:[13-79]|8[014-6])|3[0-57]|[45]|6[248]|7[2-47]|9[29])|5(?:2|3(?:[045]|9(?:[0-58]|6[4-9]|7[0-35689]))|4[0-369]|5[29]|8[02389]|9[0-3])|7(?:2[02-46-9]|34|[58]|6[0249]|7[57]|9(?:[23]|4[0-59]|5[01569]|6[0167]))|8(?:2(?:[1258]|4[0-39]|9[0169])|3(?:[29]|60|7(?:[017-9]|6[6-8]))|49|51|6(?:[0-24]|36[2-57-9]|5(?:[0-389]|5[23])|6(?:[01]|9[178])|7(?:2[2-468]|3[78])|9[0145])|7[0-468]|8[68])|9(?:4[15]|5[138]|7[156]|8[189]|9(?:[1289]|3(?:31|4[357])|4[0178]))|(?:8294|96)[1-3]|2(?:57|93)[015-9]|(?:223|8699)[014-9]|(?:25[0468]|422|838)[01]|(?:48|8292|9[23])[1-9]|(?:47[59]|59[89]|8(?:68|9))[019]\"], \"0$1\"], [\"(\\\\d{3})(\\\\d{2})(\\\\d{4})\", \"$1-$2-$3\", [\"[14]|[289][2-9]|5[3-9]|7[2-4679]\"], \"0$1\"], [\"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"800\"], \"0$1\"], [\"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1-$2-$3\", [\"[257-9]\"], \"0$1\"]], \"0\", 0, \"(000[259]\\\\d{6})$|(?:(?:003768)0?)|0\", \"$1\"], KE: [\"254\", \"000\", \"(?:[17]\\\\d\\\\d|900)\\\\d{6}|(?:2|80)0\\\\d{6,7}|[4-6]\\\\d{6,8}\", [7, 8, 9, 10], [[\"(\\\\d{2})(\\\\d{5,7})\", \"$1 $2\", [\"[24-6]\"], \"0$1\"], [\"(\\\\d{3})(\\\\d{6})\", \"$1 $2\", [\"[17]\"], \"0$1\"], [\"(\\\\d{3})(\\\\d{3})(\\\\d{3,4})\", \"$1 $2 $3\", [\"[89]\"], \"0$1\"]], \"0\"], KG: [\"996\", \"00\", \"8\\\\d{9}|[235-9]\\\\d{8}\", [9, 10], [[\"(\\\\d{4})(\\\\d{5})\", \"$1 $2\", [\"3(?:1[346]|[24-79])\"], \"0$1\"], [\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[235-79]|88\"], \"0$1\"], [\"(\\\\d{3})(\\\\d{3})(\\\\d)(\\\\d{2,3})\", \"$1 $2 $3 $4\", [\"8\"], \"0$1\"]], \"0\"], KH: [\"855\", \"00[14-9]\", \"1\\\\d{9}|[1-9]\\\\d{7,8}\", [8, 9, 10], [[\"(\\\\d{2})(\\\\d{3})(\\\\d{3,4})\", \"$1 $2 $3\", [\"[1-9]\"], \"0$1\"], [\"(\\\\d{4})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"1\"]]], \"0\"], KI: [\"686\", \"00\", \"(?:[37]\\\\d|6[0-79])\\\\d{6}|(?:[2-48]\\\\d|50)\\\\d{3}\", [5, 8], 0, \"0\"], KM: [\"269\", \"00\", \"[3478]\\\\d{6}\", [7], [[\"(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3\", [\"[3478]\"]]]], KN: [\"1\", \"011\", \"(?:[58]\\\\d\\\\d|900)\\\\d{7}\", [10], 0, \"1\", 0, \"([2-7]\\\\d{6})$|1\", \"869$1\", 0, \"869\"], KP: [\"850\", \"00|99\", \"85\\\\d{6}|(?:19\\\\d|[2-7])\\\\d{7}\", [8, 10], [[\"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"8\"], \"0$1\"], [\"(\\\\d)(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[2-7]\"], \"0$1\"], [\"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"1\"], \"0$1\"]], \"0\"], KR: [\"82\", \"00(?:[125689]|3(?:[46]5|91)|7(?:00|27|3|55|6[126]))\", \"00[1-9]\\\\d{8,11}|(?:[12]|5\\\\d{3})\\\\d{7}|[13-6]\\\\d{9}|(?:[1-6]\\\\d|80)\\\\d{7}|[3-6]\\\\d{4,5}|(?:00|7)0\\\\d{8}\", [5, 6, 8, 9, 10, 11, 12, 13, 14], [[\"(\\\\d{2})(\\\\d{3,4})\", \"$1-$2\", [\"(?:3[1-3]|[46][1-4]|5[1-5])1\"], \"0$1\"], [\"(\\\\d{4})(\\\\d{4})\", \"$1-$2\", [\"1\"]], [\"(\\\\d)(\\\\d{3,4})(\\\\d{4})\", \"$1-$2-$3\", [\"2\"], \"0$1\"], [\"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"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, \"([2-9]\\\\d{6})$|1\", \"345$1\", 0, \"345\"], KZ: [\"7\", \"810\", \"(?:33622|8\\\\d{8})\\\\d{5}|[78]\\\\d{9}\", [10, 14], 0, \"8\", 0, 0, 0, 0, \"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, \"([2-8]\\\\d{6})$|1\", \"758$1\", 0, \"758\"], LI: [\"423\", \"00\", \"[68]\\\\d{8}|(?:[2378]\\\\d|90)\\\\d{5}\", [7, 9], [[\"(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3\", [\"[2379]|8(?:0[09]|7)\", \"[2379]|8(?:0(?:02|9)|7)\"]], [\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"8\"]], [\"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"69\"]], [\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"6\"]]], \"0\", 0, \"(1001)|0\"], LK: [\"94\", \"00\", \"[1-9]\\\\d{8}\", [9], [[\"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"7\"], \"0$1\"], [\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[1-689]\"], \"0$1\"]], \"0\"], LR: [\"231\", \"00\", \"(?:[25]\\\\d|33|77|88)\\\\d{7}|(?:2\\\\d|[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\", [\"[23578]\"], \"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[1289]|389)\", \"529(?:1[1-46-9]|2[013-8]|90)|5(?:298|389)[0-46-9]\"], \"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, [[\"5293[01]\\\\d{4}|5(?:2(?:[0-25-7]\\\\d|3[1-578]|4[02-46-8]|8[0235-7]|9[0-289])|3(?:[0-47]\\\\d|5[02-9]|6[02-8]|8[0189]|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]|8[0-3]))\\\\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\\\\d{6}|(?:69|80|9\\\\d)\\\\d{7}\", [9], 0, \"0\", 0, 0, 0, 0, 0, [[\"590(?:0[079]|[14]3|[27][79]|3[03-7]|5[0-268]|87)\\\\d{4}\"], [\"69(?:0\\\\d\\\\d|1(?:2[2-9]|3[0-5]))\\\\d{4}\"], [\"80[0-5]\\\\d{6}\"], 0, 0, 0, 0, 0, [\"9(?:(?:395|76[018])\\\\d|475[0-5])\\\\d{4}\"]]], MG: [\"261\", \"00\", \"[23]\\\\d{8}\", [9], [[\"(\\\\d{2})(\\\\d{2})(\\\\d{3})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[23]\"], \"0$1\"]], \"0\", 0, \"([24-9]\\\\d{6})$|0\", \"20$1\"], MH: [\"692\", \"011\", \"329\\\\d{4}|(?:[256]\\\\d|45)\\\\d{5}\", [7], [[\"(\\\\d{3})(\\\\d{4})\", \"$1-$2\", [\"[2-6]\"]]], \"1\"], MK: [\"389\", \"00\", \"[2-578]\\\\d{7}\", [8], [[\"(\\\\d)(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"2|34[47]|4(?:[37]7|5[47]|64)\"], \"0$1\"], [\"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[347]\"], \"0$1\"], [\"(\\\\d{3})(\\\\d)(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[58]\"], \"0$1\"]], \"0\"], ML: [\"223\", \"00\", \"[24-9]\\\\d{7}\", [8], [[\"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[24-9]\"]]]], MM: [\"95\", \"00\", \"1\\\\d{5,7}|95\\\\d{6}|(?:[4-7]|9[0-46-9])\\\\d{6,8}|(?:2|8\\\\d)\\\\d{5,8}\", [6, 7, 8, 9, 10], [[\"(\\\\d)(\\\\d{2})(\\\\d{3})\", \"$1 $2 $3\", [\"16|2\"], \"0$1\"], [\"(\\\\d{2})(\\\\d{2})(\\\\d{3})\", \"$1 $2 $3\", [\"[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, \"([2-9]\\\\d{6})$|1\", \"670$1\", 0, \"670\"], MQ: [\"596\", \"00\", \"596\\\\d{6}|(?:69|80|9\\\\d)\\\\d{7}\", [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, \"([34]\\\\d{6})$|1\", \"664$1\", 0, \"664\"], MT: [\"356\", \"00\", \"3550\\\\d{4}|(?:[2579]\\\\d\\\\d|800)\\\\d{5}\", [8], [[\"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[2357-9]\"]]]], MU: [\"230\", \"0(?:0|[24-7]0|3[03])\", \"(?:[57]|8\\\\d\\\\d)\\\\d{7}|[2-468]\\\\d{6}\", [7, 8, 10], [[\"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[2-46]|8[013]\"]], [\"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[57]\"]], [\"(\\\\d{5})(\\\\d{5})\", \"$1 $2\", [\"8\"]]], 0, 0, 0, 0, 0, 0, 0, \"020\"], MV: [\"960\", \"0(?:0|19)\", \"(?:800|9[0-57-9]\\\\d)\\\\d{7}|[34679]\\\\d{6}\", [7, 10], [[\"(\\\\d{3})(\\\\d{4})\", \"$1-$2\", [\"[34679]\"]], [\"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[89]\"]]], 0, 0, 0, 0, 0, 0, 0, \"00\"], MW: [\"265\", \"00\", \"(?:[1289]\\\\d|31|77)\\\\d{7}|1\\\\d{6}\", [7, 9], [[\"(\\\\d)(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"1[2-9]\"], \"0$1\"], [\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"2\"], \"0$1\"], [\"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[137-9]\"], \"0$1\"]], \"0\"], MX: [\"52\", \"0[09]\", \"1(?:(?:[27]2|44|87|99)[1-9]|65[0-689])\\\\d{7}|(?:1(?:[01]\\\\d|2[13-9]|[35][1-9]|4[0-35-9]|6[0-46-9]|7[013-9]|8[1-69]|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[047]\"]]]], 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\", [\"8\"]], [\"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[2-79]\"]]], 0, 0, 0, 0, 0, \"[02-689]|7[0-8]\"], NP: [\"977\", \"00\", \"(?:1\\\\d|9)\\\\d{9}|[1-9]\\\\d{7}\", [8, 10, 11], [[\"(\\\\d)(\\\\d{7})\", \"$1-$2\", [\"1[2-6]\"], \"0$1\"], [\"(\\\\d{2})(\\\\d{6})\", \"$1-$2\", [\"1[01]|[2-8]|9(?:[1-59]|[67][2-6])\"], \"0$1\"], [\"(\\\\d{3})(\\\\d{7})\", \"$1-$2\", [\"9\"]]], \"0\"], NR: [\"674\", \"00\", \"(?: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)\", \"[1289]\\\\d{9}|50\\\\d{5}(?:\\\\d{2,3})?|[27-9]\\\\d{7,8}|(?:[34]\\\\d|6[0-35-9])\\\\d{6}|8\\\\d{4,6}\", [5, 6, 7, 8, 9, 10], [[\"(\\\\d{2})(\\\\d{3,8})\", \"$1 $2\", [\"8[1-79]\"], \"0$1\"], [\"(\\\\d{3})(\\\\d{2})(\\\\d{2,3})\", \"$1 $2 $3\", [\"50[036-8]|8|90\", \"50(?:[0367]|88)|8|90\"], \"0$1\"], [\"(\\\\d)(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"24|[346]|7[2-57-9]|9[2-9]\"], \"0$1\"], [\"(\\\\d{3})(\\\\d{3})(\\\\d{3,4})\", \"$1 $2 $3\", [\"2(?:10|74)|[589]\"], \"0$1\"], [\"(\\\\d{2})(\\\\d{3,4})(\\\\d{4})\", \"$1 $2 $3\", [\"1|2[028]\"], \"0$1\"], [\"(\\\\d{2})(\\\\d{3})(\\\\d{3,5})\", \"$1 $2 $3\", [\"2(?:[169]|7[0-35-9])|7\"], \"0$1\"]], \"0\", 0, 0, 0, 0, 0, 0, \"00\"], OM: [\"968\", \"00\", \"(?:1505|[279]\\\\d{3}|500)\\\\d{4}|800\\\\d{5,6}\", [7, 8, 9], [[\"(\\\\d{3})(\\\\d{4,6})\", \"$1 $2\", [\"[58]\"]], [\"(\\\\d{2})(\\\\d{6})\", \"$1 $2\", [\"2\"]], [\"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[179]\"]]]], PA: [\"507\", \"00\", \"(?:00800|8\\\\d{3})\\\\d{6}|[68]\\\\d{7}|[1-57-9]\\\\d{6}\", [7, 8, 10, 11], [[\"(\\\\d{3})(\\\\d{4})\", \"$1-$2\", [\"[1-57-9]\"]], [\"(\\\\d{4})(\\\\d{4})\", \"$1-$2\", [\"[68]\"]], [\"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"8\"]]]], PE: [\"51\", \"00|19(?:1[124]|77|90)00\", \"(?:[14-8]|9\\\\d)\\\\d{7}\", [8, 9], [[\"(\\\\d{3})(\\\\d{5})\", \"$1 $2\", [\"80\"], \"(0$1)\"], [\"(\\\\d)(\\\\d{7})\", \"$1 $2\", [\"1\"], \"(0$1)\"], [\"(\\\\d{2})(\\\\d{6})\", \"$1 $2\", [\"[4-8]\"], \"(0$1)\"], [\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"9\"]]], \"0\", 0, 0, 0, 0, 0, 0, \"00\", \" Anexo \"], PF: [\"689\", \"00\", \"4\\\\d{5}(?:\\\\d{2})?|8\\\\d{7,8}\", [6, 8, 9], [[\"(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3\", [\"44\"]], [\"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"4|8[7-9]\"]], [\"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"8\"]]]], PG: [\"675\", \"00|140[1-3]\", \"(?:180|[78]\\\\d{3})\\\\d{4}|(?:[2-589]\\\\d|64)\\\\d{5}\", [7, 8], [[\"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"18|[2-69]|85\"]], [\"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[78]\"]]], 0, 0, 0, 0, 0, 0, 0, \"00\"], PH: [\"63\", \"00\", \"(?:[2-7]|9\\\\d)\\\\d{8}|2\\\\d{5}|(?:1800|8)\\\\d{7,9}\", [6, 8, 9, 10, 11, 12, 13], [[\"(\\\\d)(\\\\d{5})\", \"$1 $2\", [\"2\"], \"(0$1)\"], [\"(\\\\d{4})(\\\\d{4,6})\", \"$1 $2\", [\"3(?:23|39|46)|4(?:2[3-6]|[35]9|4[26]|76)|544|88[245]|(?:52|64|86)2\", \"3(?:230|397|461)|4(?:2(?:35|[46]4|51)|396|4(?:22|63)|59[347]|76[15])|5(?:221|446)|642[23]|8(?:622|8(?:[24]2|5[13]))\"], \"(0$1)\"], [\"(\\\\d{5})(\\\\d{4})\", \"$1 $2\", [\"346|4(?:27|9[35])|883\", \"3469|4(?:279|9(?:30|56))|8834\"], \"(0$1)\"], [\"(\\\\d)(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"2\"], \"(0$1)\"], [\"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[3-7]|8[2-8]\"], \"(0$1)\"], [\"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[89]\"], \"0$1\"], [\"(\\\\d{4})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"1\"]], [\"(\\\\d{4})(\\\\d{1,2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3 $4\", [\"1\"]]], \"0\"], PK: [\"92\", \"00\", \"122\\\\d{6}|[24-8]\\\\d{10,11}|9(?:[013-9]\\\\d{8,10}|2(?:[01]\\\\d\\\\d|2(?:[06-8]\\\\d|1[01]))\\\\d{7})|(?:[2-8]\\\\d{3}|92(?:[0-7]\\\\d|8[1-9]))\\\\d{6}|[24-9]\\\\d{8}|[89]\\\\d{7}\", [8, 9, 10, 11, 12], [[\"(\\\\d{3})(\\\\d{3})(\\\\d{2,7})\", \"$1 $2 $3\", [\"[89]0\"], \"0$1\"], [\"(\\\\d{4})(\\\\d{5})\", \"$1 $2\", [\"1\"]], [\"(\\\\d{3})(\\\\d{6,7})\", \"$1 $2\", [\"2(?:3[2358]|4[2-4]|9[2-8])|45[3479]|54[2-467]|60[468]|72[236]|8(?:2[2-689]|3[23578]|4[3478]|5[2356])|9(?:2[2-8]|3[27-9]|4[2-6]|6[3569]|9[25-8])\", \"9(?:2[3-8]|98)|(?:2(?:3[2358]|4[2-4]|9[2-8])|45[3479]|54[2-467]|60[468]|72[236]|8(?:2[2-689]|3[23578]|4[3478]|5[2356])|9(?:22|3[27-9]|4[2-6]|6[3569]|9[25-7]))[2-9]\"], \"(0$1)\"], [\"(\\\\d{2})(\\\\d{7,8})\", \"$1 $2\", [\"(?:2[125]|4[0-246-9]|5[1-35-7]|6[1-8]|7[14]|8[16]|91)[2-9]\"], \"(0$1)\"], [\"(\\\\d{5})(\\\\d{5})\", \"$1 $2\", [\"58\"], \"(0$1)\"], [\"(\\\\d{3})(\\\\d{7})\", \"$1 $2\", [\"3\"], \"0$1\"], [\"(\\\\d{2})(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3 $4\", [\"2[125]|4[0-246-9]|5[1-35-7]|6[1-8]|7[14]|8[16]|91\"], \"(0$1)\"], [\"(\\\\d{3})(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3 $4\", [\"[24-9]\"], \"(0$1)\"]], \"0\"], PL: [\"48\", \"00\", \"(?:6|8\\\\d\\\\d)\\\\d{7}|[1-9]\\\\d{6}(?:\\\\d{2})?|[26]\\\\d{5}\", [6, 7, 8, 9, 10], [[\"(\\\\d{5})\", \"$1\", [\"19\"]], [\"(\\\\d{3})(\\\\d{3})\", \"$1 $2\", [\"11|20|64\"]], [\"(\\\\d{2})(\\\\d{2})(\\\\d{3})\", \"$1 $2 $3\", [\"(?:1[2-8]|2[2-69]|3[2-4]|4[1-468]|5[24-689]|6[1-3578]|7[14-7]|8[1-79]|9[145])1\", \"(?:1[2-8]|2[2-69]|3[2-4]|4[1-468]|5[24-689]|6[1-3578]|7[14-7]|8[1-79]|9[145])19\"]], [\"(\\\\d{3})(\\\\d{2})(\\\\d{2,3})\", \"$1 $2 $3\", [\"64\"]], [\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"21|39|45|5[0137]|6[0469]|7[02389]|8(?:0[14]|8)\"]], [\"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"1[2-8]|[2-7]|8[1-79]|9[145]\"]], [\"(\\\\d{3})(\\\\d{3})(\\\\d{3,4})\", \"$1 $2 $3\", [\"8\"]]]], PM: [\"508\", \"00\", \"[45]\\\\d{5}|(?:708|80\\\\d)\\\\d{6}\", [6, 9], [[\"(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3\", [\"[45]\"], \"0$1\"], [\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"7\"]], [\"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"8\"], \"0$1\"]], \"0\"], PR: [\"1\", \"011\", \"(?:[589]\\\\d\\\\d|787)\\\\d{7}\", [10], 0, \"1\", 0, 0, 0, 0, \"787|939\"], PS: [\"970\", \"00\", \"[2489]2\\\\d{6}|(?:1\\\\d|5)\\\\d{8}\", [8, 9, 10], [[\"(\\\\d)(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[2489]\"], \"0$1\"], [\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"5\"], \"0$1\"], [\"(\\\\d{4})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"1\"]]], \"0\"], PT: [\"351\", \"00\", \"1693\\\\d{5}|(?:[26-9]\\\\d|30)\\\\d{7}\", [9], [[\"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"2[12]\"]], [\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"16|[236-9]\"]]]], PW: [\"680\", \"01[12]\", \"(?:[24-8]\\\\d\\\\d|345|900)\\\\d{4}\", [7], [[\"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[2-9]\"]]]], PY: [\"595\", \"00\", \"59\\\\d{4,6}|9\\\\d{5,10}|(?:[2-46-8]\\\\d|5[0-8])\\\\d{4,7}\", [6, 7, 8, 9, 10, 11], [[\"(\\\\d{3})(\\\\d{3,6})\", \"$1 $2\", [\"[2-9]0\"], \"0$1\"], [\"(\\\\d{2})(\\\\d{5})\", \"$1 $2\", [\"[26]1|3[289]|4[1246-8]|7[1-3]|8[1-36]\"], \"(0$1)\"], [\"(\\\\d{3})(\\\\d{4,5})\", \"$1 $2\", [\"2[279]|3[13-5]|4[359]|5|6(?:[34]|7[1-46-8])|7[46-8]|85\"], \"(0$1)\"], [\"(\\\\d{2})(\\\\d{3})(\\\\d{3,4})\", \"$1 $2 $3\", [\"2[14-68]|3[26-9]|4[1246-8]|6(?:1|75)|7[1-35]|8[1-36]\"], \"(0$1)\"], [\"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"87\"]], [\"(\\\\d{3})(\\\\d{6})\", \"$1 $2\", [\"9(?:[5-79]|8[1-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\", \"800\\\\d{4}|(?:2|800)\\\\d{6}|(?:0080|[3-7])\\\\d{7}\", [7, 8, 9, 11], [[\"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"2[16]|8\"]], [\"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[3-7]\"]]]], RE: [\"262\", \"00\", \"(?:26|[689]\\\\d)\\\\d{7}\", [9], [[\"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[2689]\"], \"0$1\"]], \"0\", 0, 0, 0, 0, 0, [[\"26(?:2\\\\d\\\\d|3(?:0\\\\d|1[0-5]))\\\\d{4}\"], [\"69(?:2\\\\d\\\\d|3(?:[06][0-6]|1[013]|2[0-2]|3[0-39]|4\\\\d|5[0-5]|7[0-27]|8[0-8]|9[0-479]))\\\\d{4}\"], [\"80\\\\d{7}\"], [\"89[1-37-9]\\\\d{6}\"], 0, 0, 0, 0, [\"9(?:399[0-3]|479[0-5]|76(?:2[27]|3[0-37]))\\\\d{4}\"], [\"8(?:1[019]|2[0156]|84|90)\\\\d{6}\"]]], 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-356]2|4[29]|7|8[27])|2(?:1[23]|[2-9]2))\", \"7(?:1(?:[0-356]2|4[29]|7|8[27])|2(?:13[03-69]|62[013-9]))|72[1-57-9]2\"], \"8 ($1)\", 1], [\"(\\\\d{5})(\\\\d)(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"7(?:1[0-68]|2[1-9])\", \"7(?:1(?:[06][3-6]|[18]|2[35]|[3-5][3-5])|2(?:[13][3-5]|[24-689]|7[457]))\", \"7(?:1(?:0(?:[356]|4[023])|[18]|2(?:3[013-9]|5)|3[45]|43[013-79]|5(?:3[1-8]|4[1-7]|5)|6(?:3[0-35-9]|[4-6]))|2(?:1(?:3[178]|[45])|[24-689]|3[35]|7[457]))|7(?:14|23)4[0-8]|71(?:33|45)[1-79]\"], \"8 ($1)\", 1], [\"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"7\"], \"8 ($1)\", 1], [\"(\\\\d{3})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2-$3-$4\", [\"[349]|8(?:[02-7]|1[1-8])\"], \"8 ($1)\", 1], [\"(\\\\d{4})(\\\\d{4})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3 $4\", [\"8\"], \"8 ($1)\"]], \"8\", 0, 0, 0, 0, \"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\", [\"2\"]], [\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[7-9]\"], \"0$1\"]], \"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-8]|[1-9])\"]], [\"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"8\"]], [\"(\\\\d{4})(\\\\d{4})(\\\\d{3})\", \"$1 $2 $3\", [\"7\"]], [\"(\\\\d{4})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"1\"]]]], SH: [\"290\", \"00\", \"(?:[256]\\\\d|8)\\\\d{3}\", [4, 5], 0, 0, 0, 0, 0, 0, \"[256]\"], SI: [\"386\", \"00|10(?:22|66|88|99)\", \"[1-7]\\\\d{7}|8\\\\d{4,7}|90\\\\d{4,6}\", [5, 6, 7, 8], [[\"(\\\\d{2})(\\\\d{3,6})\", \"$1 $2\", [\"8[09]|9\"], \"0$1\"], [\"(\\\\d{3})(\\\\d{5})\", \"$1 $2\", [\"59|8\"], \"0$1\"], [\"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[37][01]|4[0139]|51|6\"], \"0$1\"], [\"(\\\\d)(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[1-57]\"], \"(0$1)\"]], \"0\", 0, 0, 0, 0, 0, 0, \"00\"], SJ: [\"47\", \"00\", \"0\\\\d{4}|(?:[489]\\\\d|79)\\\\d{6}\", [5, 8], 0, 0, 0, 0, 0, 0, \"79\"], SK: [\"421\", \"00\", \"[2-689]\\\\d{8}|[2-59]\\\\d{6}|[2-5]\\\\d{5}\", [6, 7, 9], [[\"(\\\\d)(\\\\d{2})(\\\\d{3,4})\", \"$1 $2 $3\", [\"21\"], \"0$1\"], [\"(\\\\d{2})(\\\\d{2})(\\\\d{2,3})\", \"$1 $2 $3\", [\"[3-5][1-8]1\", \"[3-5][1-8]1[67]\"], \"0$1\"], [\"(\\\\d)(\\\\d{3})(\\\\d{3})(\\\\d{2})\", \"$1/$2 $3 $4\", [\"2\"], \"0$1\"], [\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[689]\"], \"0$1\"], [\"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1/$2 $3 $4\", [\"[3-5]\"], \"0$1\"]], \"0\"], SL: [\"232\", \"00\", \"(?:[237-9]\\\\d|66)\\\\d{6}\", [8], [[\"(\\\\d{2})(\\\\d{6})\", \"$1 $2\", [\"[236-9]\"], \"(0$1)\"]], \"0\"], SM: [\"378\", \"00\", \"(?:0549|[5-7]\\\\d)\\\\d{6}\", [8, 10], [[\"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[5-7]\"]], [\"(\\\\d{4})(\\\\d{6})\", \"$1 $2\", [\"0\"]]], 0, 0, \"([89]\\\\d{5})$\", \"0549$1\"], SN: [\"221\", \"00\", \"(?:[378]\\\\d|93)\\\\d{7}\", [9], [[\"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"8\"]], [\"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[379]\"]]]], SO: [\"252\", \"00\", \"[346-9]\\\\d{8}|[12679]\\\\d{7}|[1-5]\\\\d{6}|[1348]\\\\d{5}\", [6, 7, 8, 9], [[\"(\\\\d{2})(\\\\d{4})\", \"$1 $2\", [\"8[125]\"]], [\"(\\\\d{6})\", \"$1\", [\"[134]\"]], [\"(\\\\d)(\\\\d{6})\", \"$1 $2\", [\"[15]|2[0-79]|3[0-46-8]|4[0-7]\"]], [\"(\\\\d)(\\\\d{7})\", \"$1 $2\", [\"(?:2|90)4|[67]\"]], [\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[348]|64|79|90\"]], [\"(\\\\d{2})(\\\\d{5,7})\", \"$1 $2\", [\"1|28|6[0-35-9]|77|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, \"(5\\\\d{6})$|1\", \"721$1\", 0, \"721\"], SY: [\"963\", \"00\", \"[1-39]\\\\d{8}|[1-5]\\\\d{7}\", [8, 9], [[\"(\\\\d{2})(\\\\d{3})(\\\\d{3,4})\", \"$1 $2 $3\", [\"[1-5]\"], \"0$1\", 1], [\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"9\"], \"0$1\", 1]], \"0\"], SZ: [\"268\", \"00\", \"0800\\\\d{4}|(?:[237]\\\\d|900)\\\\d{6}\", [8, 9], [[\"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[0237]\"]], [\"(\\\\d{5})(\\\\d{4})\", \"$1 $2\", [\"9\"]]]], TA: [\"290\", \"00\", \"8\\\\d{3}\", [4], 0, 0, 0, 0, 0, 0, \"8\"], TC: [\"1\", \"011\", \"(?:[58]\\\\d\\\\d|649|900)\\\\d{7}\", [10], 0, \"1\", 0, \"([2-479]\\\\d{6})$|1\", \"649$1\", 0, \"649\"], TD: [\"235\", \"00|16\", \"(?:22|[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\", \"[0-57-9]\\\\d{8}\", [9], [[\"(\\\\d{6})(\\\\d)(\\\\d{2})\", \"$1 $2 $3\", [\"331\", \"3317\"]], [\"(\\\\d{3})(\\\\d{2})(\\\\d{4})\", \"$1 $2 $3\", [\"44[04]|[34]7\"]], [\"(\\\\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]|61[06])\", \"5(?:[0-59]|61[06]1)\"], \"0$1\", 1], [\"(\\\\d{3})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[24][1-8]|3[1-9]\"], \"(0$1)\", 1], [\"(\\\\d{3})(\\\\d{3})(\\\\d{6,7})\", \"$1 $2 $3\", [\"80\"], \"0$1\", 1]], \"0\"], TT: [\"1\", \"011\", \"(?:[58]\\\\d\\\\d|900)\\\\d{7}\", [10], 0, \"1\", 0, \"([2-46-8]\\\\d{6})$|1\", \"868$1\", 0, \"868\"], TV: [\"688\", \"00\", \"(?:2|7\\\\d\\\\d|90)\\\\d{4}\", [5, 6, 7], [[\"(\\\\d{2})(\\\\d{3})\", \"$1 $2\", [\"2\"]], [\"(\\\\d{2})(\\\\d{4})\", \"$1 $2\", [\"90\"]], [\"(\\\\d{2})(\\\\d{5})\", \"$1 $2\", [\"7\"]]]], TW: [\"886\", \"0(?:0[25-79]|19)\", \"[2-689]\\\\d{8}|7\\\\d{9,10}|[2-8]\\\\d{7}|2\\\\d{6}\", [7, 8, 9, 10, 11], [[\"(\\\\d{2})(\\\\d)(\\\\d{4})\", \"$1 $2 $3\", [\"202\"], \"0$1\"], [\"(\\\\d{2})(\\\\d{3})(\\\\d{3,4})\", \"$1 $2 $3\", [\"[258]0\"], \"0$1\"], [\"(\\\\d)(\\\\d{3,4})(\\\\d{4})\", \"$1 $2 $3\", [\"[23568]|4(?:0[02-48]|[1-47-9])|7[1-9]\", \"[23568]|4(?:0[2-48]|[1-47-9])|(?:400|7)[1-9]\"], \"0$1\"], [\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[49]\"], \"0$1\"], [\"(\\\\d{2})(\\\\d{4})(\\\\d{4,5})\", \"$1 $2 $3\", [\"7\"], \"0$1\"]], \"0\", 0, 0, 0, 0, 0, 0, 0, \"#\"], TZ: [\"255\", \"00[056]\", \"(?:[25-8]\\\\d|41|90)\\\\d{7}\", [9], [[\"(\\\\d{3})(\\\\d{2})(\\\\d{4})\", \"$1 $2 $3\", [\"[89]\"], \"0$1\"], [\"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[24]\"], \"0$1\"], [\"(\\\\d{2})(\\\\d{7})\", \"$1 $2\", [\"5\"]], [\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[67]\"], \"0$1\"]], \"0\"], UA: [\"380\", \"00\", \"[89]\\\\d{9}|[3-9]\\\\d{8}\", [9, 10], [[\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"6[12][29]|(?:3[1-8]|4[136-8]|5[12457]|6[49])2|(?:56|65)[24]\", \"6[12][29]|(?:35|4[1378]|5[12457]|6[49])2|(?:56|65)[24]|(?:3[1-46-8]|46)2[013-9]\"], \"0$1\"], [\"(\\\\d{4})(\\\\d{5})\", \"$1 $2\", [\"3[1-8]|4(?:[1367]|[45][6-9]|8[4-6])|5(?:[1-5]|6[0135689]|7[4-6])|6(?:[12][3-7]|[459])\", \"3[1-8]|4(?:[1367]|[45][6-9]|8[4-6])|5(?:[1-5]|6(?:[015689]|3[02389])|7[4-6])|6(?:[12][3-7]|[459])\"], \"0$1\"], [\"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[3-7]|89|9[1-9]\"], \"0$1\"], [\"(\\\\d{3})(\\\\d{3})(\\\\d{3,4})\", \"$1 $2 $3\", [\"[89]\"], \"0$1\"]], \"0\", 0, 0, 0, 0, 0, 0, \"0~0\"], UG: [\"256\", \"00[057]\", \"800\\\\d{6}|(?:[29]0|[347]\\\\d)\\\\d{7}\", [9], [[\"(\\\\d{4})(\\\\d{5})\", \"$1 $2\", [\"202\", \"2024\"], \"0$1\"], [\"(\\\\d{3})(\\\\d{6})\", \"$1 $2\", [\"[27-9]|4(?:6[45]|[7-9])\"], \"0$1\"], [\"(\\\\d{2})(\\\\d{7})\", \"$1 $2\", [\"[34]\"], \"0$1\"]], \"0\"], US: [\"1\", \"011\", \"[2-9]\\\\d{9}|3\\\\d{6}\", [10], [[\"(\\\\d{3})(\\\\d{4})\", \"$1-$2\", [\"310\"], 0, 1], [\"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"($1) $2-$3\", [\"[2-9]\"], 0, 1, \"$1-$2-$3\"]], \"1\", 0, 0, 0, 0, 0, [[\"5056(?:[0-35-9]\\\\d|4[46])\\\\d{4}|(?:4722|505[2-57-9]|983[29])\\\\d{6}|(?: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[0-2]|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[179]|6[1-47]|7[0-5]|8[0256])|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-2589]|4[03578]|5[046-9]|6[02-5]|7[028])|9(?:0[1346-9]|1[02-9]|2[0589]|3[0146-8]|4[01357-9]|5[12469]|7[0-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-9]|33|44|66|77|88)[2-9]\\\\d{6}\"]]], UY: [\"598\", \"0(?:0|1[3-9]\\\\d)\", \"0004\\\\d{2,9}|[1249]\\\\d{7}|(?:[49]\\\\d|80)\\\\d{5}\", [6, 7, 8, 9, 10, 11, 12, 13], [[\"(\\\\d{3})(\\\\d{3,4})\", \"$1 $2\", [\"0\"]], [\"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[49]0|8\"], \"0$1\"], [\"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"9\"], \"0$1\"], [\"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[124]\"]], [\"(\\\\d{3})(\\\\d{3})(\\\\d{2,4})\", \"$1 $2 $3\", [\"0\"]], [\"(\\\\d{3})(\\\\d{3})(\\\\d{3})(\\\\d{2,4})\", \"$1 $2 $3 $4\", [\"0\"]]], \"0\", 0, 0, 0, 0, 0, 0, \"00\", \" int. \"], UZ: [\"998\", \"810\", \"200\\\\d{6}|(?:33|[5-79]\\\\d|88)\\\\d{7}\", [9], [[\"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[235-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, \"([2-7]\\\\d{6})$|1\", \"784$1\", 0, \"784\"], VE: [\"58\", \"00\", \"[68]00\\\\d{7}|(?:[24]\\\\d|[59]0)\\\\d{8}\", [10], [[\"(\\\\d{3})(\\\\d{7})\", \"$1-$2\", [\"[24-689]\"], \"0$1\"]], \"0\"], VG: [\"1\", \"011\", \"(?:284|[58]\\\\d\\\\d|900)\\\\d{7}\", [10], 0, \"1\", 0, \"([2-578]\\\\d{6})$|1\", \"284$1\", 0, \"284\"], VI: [\"1\", \"011\", \"[58]\\\\d{9}|(?:34|90)0\\\\d{7}\", [10], 0, \"1\", 0, \"([2-9]\\\\d{6})$|1\", \"340$1\", 0, \"340\"], VN: [\"84\", \"00\", \"[12]\\\\d{9}|[135-9]\\\\d{8}|[16]\\\\d{7}|[16-8]\\\\d{6}\", [7, 8, 9, 10], [[\"(\\\\d{2})(\\\\d{5})\", \"$1 $2\", [\"80\"], \"0$1\", 1], [\"(\\\\d{4})(\\\\d{4,6})\", \"$1 $2\", [\"1\"], 0, 1], [\"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"6\"], \"0$1\", 1], [\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[357-9]\"], \"0$1\", 1], [\"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"2[48]\"], \"0$1\", 1], [\"(\\\\d{3})(\\\\d{4})(\\\\d{3})\", \"$1 $2 $3\", [\"2\"], \"0$1\", 1]], \"0\"], VU: [\"678\", \"00\", \"[57-9]\\\\d{6}|(?:[238]\\\\d|48)\\\\d{3}\", [5, 7], [[\"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[57-9]\"]]]], WF: [\"681\", \"00\", \"(?:40|72)\\\\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-6]|8[0-7])\"], \"0$1\"], [\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"7\"], \"0$1\"]], \"0\"], YT: [\"262\", \"00\", \"(?:80|9\\\\d)\\\\d{7}|(?:26|63)9\\\\d{6}\", [9], 0, \"0\", 0, 0, 0, 0, 0, [[\"269(?:0[0-467]|5[0-4]|6\\\\d|[78]0)\\\\d{4}\"], [\"639(?:0[0-79]|1[019]|[267]\\\\d|3[09]|40|5[05-9]|9[04-79])\\\\d{4}\"], [\"80\\\\d{7}\"], 0, 0, 0, 0, 0, [\"9(?:(?:39|47)8[01]|769\\\\d)\\\\d{4}\"]]], ZA: [\"27\", \"00\", \"[1-79]\\\\d{8}|8\\\\d{4,9}\", [5, 6, 7, 8, 9, 10], [[\"(\\\\d{2})(\\\\d{3,4})\", \"$1 $2\", [\"8[1-4]\"], \"0$1\"], [\"(\\\\d{2})(\\\\d{3})(\\\\d{2,3})\", \"$1 $2 $3\", [\"8[1-4]\"], \"0$1\"], [\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"860\"], \"0$1\"], [\"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[1-9]\"], \"0$1\"], [\"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"8\"], \"0$1\"]], \"0\"], ZM: [\"260\", \"00\", \"800\\\\d{6}|(?:21|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, \"6\\\\d{9}|[0-36-9]\\\\d{8}\", [9, 10], [[\"(\\\\d)(\\\\d{3})(\\\\d{5})\", \"$1 $2 $3\", [\"[0-37-9]\"]], [\"(\\\\d)(\\\\d{3})(\\\\d{5,6})\", \"$1 $2 $3\", [\"6\"]]], 0, 0, 0, 0, 0, 0, [0, [\"6\\\\d{9}|[0-36-9]\\\\d{8}\"]]], 882: [\"882\", 0, \"[13]\\\\d{6}(?:\\\\d{2,5})?|[19]\\\\d{7}|(?:[25]\\\\d\\\\d|4)\\\\d{7}(?:\\\\d{2})?\", [7, 8, 9, 10, 11, 12], [[\"(\\\\d{2})(\\\\d{5})\", \"$1 $2\", [\"16|342\"]], [\"(\\\\d{2})(\\\\d{6})\", \"$1 $2\", [\"49\"]], [\"(\\\\d{2})(\\\\d{2})(\\\\d{4})\", \"$1 $2 $3\", [\"1[36]|9\"]], [\"(\\\\d{2})(\\\\d{4})(\\\\d{3})\", \"$1 $2 $3\", [\"3[23]\"]], [\"(\\\\d{2})(\\\\d{3,4})(\\\\d{4})\", \"$1 $2 $3\", [\"16\"]], [\"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"10|23|3(?:[15]|4[57])|4|51\"]], [\"(\\\\d{3})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"34\"]], [\"(\\\\d{2})(\\\\d{4,5})(\\\\d{5})\", \"$1 $2 $3\", [\"[1-35]\"]]], 0, 0, 0, 0, 0, 0, [0, [\"342\\\\d{4}|(?:337|49)\\\\d{6}|(?:3(?:2|47|7\\\\d{3})|50\\\\d{3})\\\\d{7}\", [7, 8, 9, 10, 12]], 0, 0, 0, 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})|(?:345\\\\d|9[89])\\\\d{6}|(?:10|2(?:3|85\\\\d)|3(?:[15]|[69]\\\\d\\\\d)|4[15-8]|51)\\\\d{8}\"]]], 883: [\"883\", 0, \"(?:[1-4]\\\\d|51)\\\\d{6,10}\", [8, 9, 10, 11, 12], [[\"(\\\\d{3})(\\\\d{3})(\\\\d{2,8})\", \"$1 $2 $3\", [\"[14]|2[24-689]|3[02-689]|51[24-9]\"]], [\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"510\"]], [\"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"21\"]], [\"(\\\\d{4})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"51[13]\"]], [\"(\\\\d{3})(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3 $4\", [\"[235]\"]]], 0, 0, 0, 0, 0, 0, [0, 0, 0, 0, 0, 0, 0, 0, [\"(?:2(?:00\\\\d\\\\d|10)|(?:370[1-9]|51\\\\d0)\\\\d)\\\\d{7}|51(?:00\\\\d{5}|[24-9]0\\\\d{4,7})|(?:1[013-79]|2[24-689]|3[02-689]|4[0-4])0\\\\d{5,9}\"]]], 888: [\"888\", 0, \"\\\\d{11}\", [11], [[\"(\\\\d{3})(\\\\d{3})(\\\\d{5})\", \"$1 $2 $3\"]], 0, 0, 0, 0, 0, 0, [0, 0, 0, 0, 0, 0, [\"\\\\d{11}\"]]], 979: [\"979\", 0, \"[1359]\\\\d{8}\", [9], [[\"(\\\\d)(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"[1359]\"]]], 0, 0, 0, 0, 0, 0, [0, 0, 0, [\"[1359]\\\\d{8}\"]]] } };\nfunction bn(t) {\n return typeof t == \"object\" && !Array.isArray(t) && t !== null;\n}\nconst Cn = Object.keys, B = Tt.countries, Pn = Cn(B), An = \"US\";\nfunction E(t, n) {\n const e = Array.isArray(t);\n return n ? e && t.length > 0 : e;\n}\nfunction In(t, n) {\n return t.find((e) => n.includes(e)) || null;\n}\nfunction J(t) {\n return B[t]?.[0];\n}\nfunction xn(t) {\n return t || An;\n}\nfunction _t(t, n) {\n return [...new Set(n.concat(t))];\n}\nfunction On(t) {\n return t.flatMap((n) => Et[n]);\n}\nfunction Sn(t, n) {\n return t.filter((e) => n.includes(e));\n}\nfunction En(t, n) {\n return E(n, !0) ? t.filter((e) => !n.includes(e)) : t;\n}\nfunction Tn(t, n) {\n const { onlyCountries: e, excludedCountries: r, continents: d, preferredCountries: i } = n;\n if (E(e, !0)) {\n const u = Sn(t, e);\n return E(i, !0) ? _t(u, i) : u;\n }\n const a = E(d, !0) ? On(d) : t, o = E(i, !0) ? _t(a, i) : a;\n return E(r, !0) ? En(o, r) : o;\n}\nfunction Fn(t, n) {\n return t.some((e) => Et[e].includes(n));\n}\nfunction wn(t, n) {\n return [...t].sort((e, r) => {\n const d = n.of(e), i = n.of(r);\n return d.localeCompare(i);\n });\n}\nconst Dn = {\n CallingCodeSplitted: G(we)({\n borderRight: `1px solid ${sn[300]}`,\n paddingRight: 10,\n cursor: \"default\",\n pointerEvents: \"none\"\n })\n}, Mn = ({\n disableDropdown: t = !1,\n forceCallingCode: n = !1,\n flagSize: e = \"small\",\n isFlagsMenuOpened: r = !1,\n isoCode: d,\n ...i\n}) => /* @__PURE__ */ _(Fe, { children: [\n t ? /* @__PURE__ */ p(\n Mt,\n {\n tabIndex: -1,\n className: \"MuiTelInput-IconButton\",\n role: \"\",\n disableRipple: !0,\n sx: { pointerEvents: \"none\", aspectRatio: \"1 / 1\" },\n component: \"span\",\n children: /* @__PURE__ */ p(mt, { size: e, isoCode: d })\n }\n ) : /* @__PURE__ */ p(\n Mt,\n {\n ...i,\n \"aria-label\": \"Select country\",\n className: \"MuiTelInput-IconButton\",\n \"aria-haspopup\": \"listbox\",\n sx: { aspectRatio: \"1 / 1\" },\n \"aria-controls\": r ? \"select-country\" : void 0,\n \"aria-expanded\": r ? \"true\" : \"false\",\n children: /* @__PURE__ */ p(mt, { size: e, isoCode: d })\n }\n ),\n n && d ? /* @__PURE__ */ _(Dn.CallingCodeSplitted, { children: [\n \"+\",\n J(d)\n ] }) : null\n] }), Lt = {\n ListItemIcon: G(hn)({\n marginRight: \"10px\"\n }),\n ListItemText: G(gn)({\n marginRight: \"10px\"\n })\n}, Rn = ({\n isoCode: t,\n onSelectCountry: n,\n countryName: e,\n flagSize: r = \"small\",\n ...d\n}) => /* @__PURE__ */ _(\n cn,\n {\n ...d,\n onClick: (a) => {\n a.preventDefault(), n(t);\n },\n role: \"option\",\n \"data-testid\": `option-${t}`,\n className: \"MuiTelInput-MenuItem\",\n children: [\n /* @__PURE__ */ p(Lt.ListItemIcon, { className: \"MuiTelInput-ListItemIcon-flag\", children: /* @__PURE__ */ p(mt, { size: r, isoCode: t, countryName: e }) }),\n /* @__PURE__ */ p(Lt.ListItemText, { className: \"MuiTelInput-ListItemText-country\", children: e }),\n /* @__PURE__ */ _(\n we,\n {\n variant: \"body2\",\n color: \"text.secondary\",\n className: \"MuiTelInput-Typography-calling-code\",\n children: [\n \"+\",\n B[t]?.[0]\n ]\n }\n )\n ]\n }\n), _n = y.memo(Rn), yt = \"en\";\nfunction k(...t) {\n process.env.NODE_ENV !== \"production\" && console.error(...t);\n}\nfunction Ln(t = yt) {\n try {\n return new Intl.DisplayNames(t, {\n type: \"region\"\n });\n } catch (n) {\n return k(n), new Intl.DisplayNames(yt, {\n type: \"region\"\n });\n }\n}\nconst kn = [], Gn = [], Bn = [], jn = [], Un = ({\n anchorEl: t,\n isoCode: n,\n onSelectCountry: e,\n excludedCountries: r = kn,\n onlyCountries: d = Gn,\n langOfCountryName: i = yt,\n continents: a = Bn,\n preferredCountries: o = jn,\n className: u,\n flagSize: $ = \"small\",\n ...l\n}) => {\n const c = y.useMemo(() => Ln(i), [i]), s = wn(\n Pn,\n c\n ), h = Tn(s, {\n onlyCountries: d,\n excludedCountries: r,\n continents: a,\n preferredCountries: o\n });\n return /* @__PURE__ */ p(\n mn,\n {\n anchorEl: t,\n open: !!t,\n id: \"select-country\",\n className: `MuiTelInput-Menu ${u || \"\"}`,\n MenuListProps: {\n role: \"listbox\",\n \"aria-activedescendant\": n ? `country-${n}` : \"\",\n \"aria-labelledby\": \"select-country\"\n },\n ...l,\n children: h.map((g) => /* @__PURE__ */ p(\n _n,\n {\n onSelectCountry: e,\n isoCode: g,\n countryName: c.of(g),\n selected: g === n,\n id: `country-${g}`,\n flagSize: $\n },\n g\n ))\n }\n );\n};\nfunction Wn(t) {\n t.focus();\n const { length: n } = t.value;\n t.setSelectionRange(n, n);\n}\nfunction lt(t, n) {\n typeof n == \"function\" ? n(t) : n && bn(n) && \"current\" in n && (n.current = t);\n}\nfunction De(t, n) {\n return t.replace(n, \"\");\n}\nfunction Hn(t) {\n const {\n defaultCountry: n,\n onlyCountries: e,\n excludedCountries: r,\n continents: d,\n forceCallingCode: i\n } = t;\n y.useEffect(() => {\n if (e && r) {\n const a = In(\n e,\n r\n );\n a && k(\n `[mui-tel-input] Not expected to have the country ${a} to be included in the 'onlyCountries' AND 'excludedCountries' props`\n );\n }\n }, [e, r]), y.useEffect(() => {\n n && r && r.includes(n) && k(\n `[mui-tel-input] Not expected to have the 'defaultCountry' (${n}) prop excluded by the 'excludedCountries' prop`\n );\n }, [n, r]), y.useEffect(() => {\n n && e && !e.includes(n) && k(\n `[mui-tel-input] Not expected to have a 'defaultCountry' prop (${n}) and a 'onlyCountries' prop but without included the 'defaultCountry' (${n})`\n );\n }, [n, e]), y.useEffect(() => {\n n && d && d.length > 0 && (d.some((o) => Et[o].includes(n)) || k(\n `[mui-tel-input] Not expected to have a 'defaultCountry' prop (${n}) and a 'continents' prop that are not contain the country (${n})`\n ));\n }, [n, d]), y.useEffect(() => {\n i && !n && k(\n \"[mui-tel-input] 'forceCallingCode' needs 'defaultCountry' defined. Will default to US.\"\n );\n }, [n, i]);\n}\nfunction Me(t, n) {\n var e = Array.prototype.slice.call(n);\n return e.push(Tt), t.apply(this, e);\n}\nfunction pt(t) {\n \"@babel/helpers - typeof\";\n return pt = typeof Symbol == \"function\" && typeof Symbol.iterator == \"symbol\" ? function(n) {\n return typeof n;\n } : function(n) {\n return n && typeof Symbol == \"function\" && n.constructor === Symbol && n !== Symbol.prototype ? \"symbol\" : typeof n;\n }, pt(t);\n}\nfunction kt(t, n) {\n for (var e = 0; e < n.length; e++) {\n var r = n[e];\n r.enumerable = r.enumerable || !1, r.configurable = !0, \"value\" in r && (r.writable = !0), Object.defineProperty(t, r.key, r);\n }\n}\nfunction Vn(t, n, e) {\n return n && kt(t.prototype, n), e && kt(t, e), Object.defineProperty(t, \"prototype\", { writable: !1 }), t;\n}\nfunction Zn(t, n) {\n if (!(t instanceof n))\n throw new TypeError(\"Cannot call a class as a function\");\n}\nfunction zn(t, n) {\n if (typeof n != \"function\" && n !== null)\n throw new TypeError(\"Super expression must either be null or a function\");\n t.prototype = Object.create(n && n.prototype, { constructor: { value: t, writable: !0, configurable: !0 } }), Object.defineProperty(t, \"prototype\", { writable: !1 }), n && V(t, n);\n}\nfunction Yn(t) {\n var n = _e();\n return function() {\n var r = Z(t), d;\n if (n) {\n var i = Z(this).constructor;\n d = Reflect.construct(r, arguments, i);\n } else\n d = r.apply(this, arguments);\n return Xn(this, d);\n };\n}\nfunction Xn(t, n) {\n if (n && (pt(n) === \"object\" || typeof n == \"function\"))\n return n;\n if (n !== void 0)\n throw new TypeError(\"Derived constructors may only return object or undefined\");\n return Re(t);\n}\nfunction Re(t) {\n if (t === void 0)\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n return t;\n}\nfunction vt(t) {\n var n = typeof Map == \"function\" ? /* @__PURE__ */ new Map() : void 0;\n return vt = function(r) {\n if (r === null || !Kn(r))\n return r;\n if (typeof r != \"function\")\n throw new TypeError(\"Super expression must either be null or a function\");\n if (typeof n < \"u\") {\n if (n.has(r))\n return n.get(r);\n n.set(r, d);\n }\n function d() {\n return K(r, arguments, Z(this).constructor);\n }\n return d.prototype = Object.create(r.prototype, { constructor: { value: d, enumerable: !1, writable: !0, configurable: !0 } }), V(d, r);\n }, vt(t);\n}\nfunction K(t, n, e) {\n return _e() ? K = Reflect.construct : K = function(d, i, a) {\n var o = [null];\n o.push.apply(o, i);\n var u = Function.bind.apply(d, o), $ = new u();\n return a && V($, a.prototype), $;\n }, K.apply(null, arguments);\n}\nfunction _e() {\n if (typeof Reflect > \"u\" || !Reflect.construct || Reflect.construct.sham)\n return !1;\n if (typeof Proxy == \"function\")\n return !0;\n try {\n return Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function() {\n })), !0;\n } catch {\n return !1;\n }\n}\nfunction Kn(t) {\n return Function.toString.call(t).indexOf(\"[native code]\") !== -1;\n}\nfunction V(t, n) {\n return V = Object.setPrototypeOf || function(r, d) {\n return r.__proto__ = d, r;\n }, V(t, n);\n}\nfunction Z(t) {\n return Z = Object.setPrototypeOf ? Object.getPrototypeOf : function(e) {\n return e.__proto__ || Object.getPrototypeOf(e);\n }, Z(t);\n}\nvar S = /* @__PURE__ */ function(t) {\n zn(e, t);\n var n = Yn(e);\n function e(r) {\n var d;\n return Zn(this, e), d = n.call(this, r), Object.setPrototypeOf(Re(d), e.prototype), d.name = d.constructor.name, d;\n }\n return Vn(e);\n}(/* @__PURE__ */ vt(Error)), Ft = 2, Qn = 17, Jn = 3, b = \"0-90-9٠-٩۰-۹\", qn = \"-‐-―−ー-\", tr = \"//\", er = \"..\", nr = \" \", rr = \"()()[]\\\\[\\\\]\", dr = \"~⁓∼~\", I = \"\".concat(qn).concat(tr).concat(er).concat(nr).concat(rr).concat(dr), et = \"++\";\nfunction Gt(t, n) {\n t = t.split(\"-\"), n = n.split(\"-\");\n for (var e = t[0].split(\".\"), r = n[0].split(\".\"), d = 0; d < 3; d++) {\n var i = Number(e[d]), a = Number(r[d]);\n if (i > a)\n return 1;\n if (a > i)\n return -1;\n if (!isNaN(i) && isNaN(a))\n return 1;\n if (isNaN(i) && !isNaN(a))\n return -1;\n }\n return t[1] && n[1] ? t[1] > n[1] ? 1 : t[1] < n[1] ? -1 : 0 : !t[1] && n[1] ? 1 : t[1] && !n[1] ? -1 : 0;\n}\nvar ir = {}.constructor;\nfunction R(t) {\n return t != null && t.constructor === ir;\n}\nfunction Nt(t) {\n \"@babel/helpers - typeof\";\n return Nt = typeof Symbol == \"function\" && typeof Symbol.iterator == \"symbol\" ? function(n) {\n return typeof n;\n } : function(n) {\n return n && typeof Symbol == \"function\" && n.constructor === Symbol && n !== Symbol.prototype ? \"symbol\" : typeof n;\n }, Nt(t);\n}\nfunction nt(t, n) {\n if (!(t instanceof n))\n throw new TypeError(\"Cannot call a class as a function\");\n}\nfunction Bt(t, n) {\n for (var e = 0; e < n.length; e++) {\n var r = n[e];\n r.enumerable = r.enumerable || !1, r.configurable = !0, \"value\" in r && (r.writable = !0), Object.defineProperty(t, r.key, r);\n }\n}\nfunction rt(t, n, e) {\n return n && Bt(t.prototype, n), e && Bt(t, e), Object.defineProperty(t, \"prototype\", { writable: !1 }), t;\n}\nvar ar = \"1.2.0\", or = \"1.7.35\", jt = \" ext. \", ur = /^\\d+$/, N = /* @__PURE__ */ function() {\n function t(n) {\n nt(this, t), sr(n), this.metadata = n, Le.call(this, n);\n }\n return rt(t, [{\n key: \"getCountries\",\n value: function() {\n return Object.keys(this.metadata.countries).filter(function(e) {\n return e !== \"001\";\n });\n }\n }, {\n key: \"getCountryMetadata\",\n value: function(e) {\n return this.metadata.countries[e];\n }\n }, {\n key: \"nonGeographic\",\n value: function() {\n if (!(this.v1 || this.v2 || this.v3))\n return this.metadata.nonGeographic || this.metadata.nonGeographical;\n }\n }, {\n key: \"hasCountry\",\n value: function(e) {\n return this.getCountryMetadata(e) !== void 0;\n }\n }, {\n key: \"hasCallingCode\",\n value: function(e) {\n if (this.getCountryCodesForCallingCode(e))\n return !0;\n if (this.nonGeographic()) {\n if (this.nonGeographic()[e])\n return !0;\n } else {\n var r = this.countryCallingCodes()[e];\n if (r && r.length === 1 && r[0] === \"001\")\n return !0;\n }\n }\n }, {\n key: \"isNonGeographicCallingCode\",\n value: function(e) {\n return this.nonGeographic() ? !!this.nonGeographic()[e] : !this.getCountryCodesForCallingCode(e);\n }\n // Deprecated.\n }, {\n key: \"country\",\n value: function(e) {\n return this.selectNumberingPlan(e);\n }\n }, {\n key: \"selectNumberingPlan\",\n value: function(e, r) {\n if (e && ur.test(e) && (r = e, e = null), e && e !== \"001\") {\n if (!this.hasCountry(e))\n throw new Error(\"Unknown country: \".concat(e));\n this.numberingPlan = new Ut(this.getCountryMetadata(e), this);\n } else if (r) {\n if (!this.hasCallingCode(r))\n throw new Error(\"Unknown calling code: \".concat(r));\n this.numberingPlan = new Ut(this.getNumberingPlanMetadata(r), this);\n } else\n this.numberingPlan = void 0;\n return this;\n }\n }, {\n key: \"getCountryCodesForCallingCode\",\n value: function(e) {\n var r = this.countryCallingCodes()[e];\n if (r)\n return r.length === 1 && r[0].length === 3 ? void 0 : r;\n }\n }, {\n key: \"getCountryCodeForCallingCode\",\n value: function(e) {\n var r = this.getCountryCodesForCallingCode(e);\n if (r)\n return r[0];\n }\n }, {\n key: \"getNumberingPlanMetadata\",\n value: function(e) {\n var r = this.getCountryCodeForCallingCode(e);\n if (r)\n return this.getCountryMetadata(r);\n if (this.nonGeographic()) {\n var d = this.nonGeographic()[e];\n if (d)\n return d;\n } else {\n var i = this.countryCallingCodes()[e];\n if (i && i.length === 1 && i[0] === \"001\")\n return this.metadata.countries[\"001\"];\n }\n }\n // Deprecated.\n }, {\n key: \"countryCallingCode\",\n value: function() {\n return this.numberingPlan.callingCode();\n }\n // Deprecated.\n }, {\n key: \"IDDPrefix\",\n value: function() {\n return this.numberingPlan.IDDPrefix();\n }\n // Deprecated.\n }, {\n key: \"defaultIDDPrefix\",\n value: function() {\n return this.numberingPlan.defaultIDDPrefix();\n }\n // Deprecated.\n }, {\n key: \"nationalNumberPattern\",\n value: function() {\n return this.numberingPlan.nationalNumberPattern();\n }\n // Deprecated.\n }, {\n key: \"possibleLengths\",\n value: function() {\n return this.numberingPlan.possibleLengths();\n }\n // Deprecated.\n }, {\n key: \"formats\",\n value: function() {\n return this.numberingPlan.formats();\n }\n // Deprecated.\n }, {\n key: \"nationalPrefixForParsing\",\n value: function() {\n return this.numberingPlan.nationalPrefixForParsing();\n }\n // Deprecated.\n }, {\n key: \"nationalPrefixTransformRule\",\n value: function() {\n return this.numberingPlan.nationalPrefixTransformRule();\n }\n // Deprecated.\n }, {\n key: \"leadingDigits\",\n value: function() {\n return this.numberingPlan.leadingDigits();\n }\n // Deprecated.\n }, {\n key: \"hasTypes\",\n value: function() {\n return this.numberingPlan.hasTypes();\n }\n // Deprecated.\n }, {\n key: \"type\",\n value: function(e) {\n return this.numberingPlan.type(e);\n }\n // Deprecated.\n }, {\n key: \"ext\",\n value: function() {\n return this.numberingPlan.ext();\n }\n }, {\n key: \"countryCallingCodes\",\n value: function() {\n return this.v1 ? this.metadata.country_phone_code_to_countries : this.metadata.country_calling_codes;\n }\n // Deprecated.\n }, {\n key: \"chooseCountryByCountryCallingCode\",\n value: function(e) {\n return this.selectNumberingPlan(e);\n }\n }, {\n key: \"hasSelectedNumberingPlan\",\n value: function() {\n return this.numberingPlan !== void 0;\n }\n }]), t;\n}(), Ut = /* @__PURE__ */ function() {\n function t(n, e) {\n nt(this, t), this.globalMetadataObject = e, this.metadata = n, Le.call(this, e.metadata);\n }\n return rt(t, [{\n key: \"callingCode\",\n value: function() {\n return this.metadata[0];\n }\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 key: \"getDefaultCountryMetadataForRegion\",\n value: function() {\n return this.globalMetadataObject.getNumberingPlanMetadata(this.callingCode());\n }\n // Is always present.\n }, {\n key: \"IDDPrefix\",\n value: function() {\n if (!(this.v1 || this.v2))\n return this.metadata[1];\n }\n // Is only present when a country supports multiple IDD prefixes.\n }, {\n key: \"defaultIDDPrefix\",\n value: function() {\n if (!(this.v1 || this.v2))\n return this.metadata[12];\n }\n }, {\n key: \"nationalNumberPattern\",\n value: function() {\n return this.v1 || this.v2 ? this.metadata[1] : this.metadata[2];\n }\n // \"possible length\" data is always present in Google's metadata.\n }, {\n key: \"possibleLengths\",\n value: function() {\n if (!this.v1)\n return this.metadata[this.v2 ? 2 : 3];\n }\n }, {\n key: \"_getFormats\",\n value: function(e) {\n return e[this.v1 ? 2 : this.v2 ? 3 : 4];\n }\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 key: \"formats\",\n value: function() {\n var e = this, r = this._getFormats(this.metadata) || this._getFormats(this.getDefaultCountryMetadataForRegion()) || [];\n return r.map(function(d) {\n return new $r(d, e);\n });\n }\n }, {\n key: \"nationalPrefix\",\n value: function() {\n return this.metadata[this.v1 ? 3 : this.v2 ? 4 : 5];\n }\n }, {\n key: \"_getNationalPrefixFormattingRule\",\n value: function(e) {\n return e[this.v1 ? 4 : this.v2 ? 5 : 6];\n }\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 key: \"nationalPrefixFormattingRule\",\n value: function() {\n return this._getNationalPrefixFormattingRule(this.metadata) || this._getNationalPrefixFormattingRule(this.getDefaultCountryMetadataForRegion());\n }\n }, {\n key: \"_nationalPrefixForParsing\",\n value: function() {\n return this.metadata[this.v1 ? 5 : this.v2 ? 6 : 7];\n }\n }, {\n key: \"nationalPrefixForParsing\",\n value: function() {\n return this._nationalPrefixForParsing() || this.nationalPrefix();\n }\n }, {\n key: \"nationalPrefixTransformRule\",\n value: function() {\n return this.metadata[this.v1 ? 6 : this.v2 ? 7 : 8];\n }\n }, {\n key: \"_getNationalPrefixIsOptionalWhenFormatting\",\n value: function() {\n return !!this.metadata[this.v1 ? 7 : this.v2 ? 8 : 9];\n }\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 key: \"nationalPrefixIsOptionalWhenFormattingInNationalFormat\",\n value: function() {\n return this._getNationalPrefixIsOptionalWhenFormatting(this.metadata) || this._getNationalPrefixIsOptionalWhenFormatting(this.getDefaultCountryMetadataForRegion());\n }\n }, {\n key: \"leadingDigits\",\n value: function() {\n return this.metadata[this.v1 ? 8 : this.v2 ? 9 : 10];\n }\n }, {\n key: \"types\",\n value: function() {\n return this.metadata[this.v1 ? 9 : this.v2 ? 10 : 11];\n }\n }, {\n key: \"hasTypes\",\n value: function() {\n return this.types() && this.types().length === 0 ? !1 : !!this.types();\n }\n }, {\n key: \"type\",\n value: function(e) {\n if (this.hasTypes() && Wt(this.types(), e))\n return new fr(Wt(this.types(), e), this);\n }\n }, {\n key: \"ext\",\n value: function() {\n return this.v1 || this.v2 ? jt : this.metadata[13] || jt;\n }\n }]), t;\n}(), $r = /* @__PURE__ */ function() {\n function t(n, e) {\n nt(this, t), this._format = n, this.metadata = e;\n }\n return rt(t, [{\n key: \"pattern\",\n value: function() {\n return this._format[0];\n }\n }, {\n key: \"format\",\n value: function() {\n return this._format[1];\n }\n }, {\n key: \"leadingDigitsPatterns\",\n value: function() {\n return this._format[2] || [];\n }\n }, {\n key: \"nationalPrefixFormattingRule\",\n value: function() {\n return this._format[3] || this.metadata.nationalPrefixFormattingRule();\n }\n }, {\n key: \"nationalPrefixIsOptionalWhenFormattingInNationalFormat\",\n value: function() {\n return !!this._format[4] || this.metadata.nationalPrefixIsOptionalWhenFormattingInNationalFormat();\n }\n }, {\n key: \"nationalPrefixIsMandatoryWhenFormattingInNationalFormat\",\n value: function() {\n return this.usesNationalPrefix() && !this.nationalPrefixIsOptionalWhenFormattingInNationalFormat();\n }\n // Checks whether national prefix formatting rule contains national prefix.\n }, {\n key: \"usesNationalPrefix\",\n value: function() {\n return !!(this.nationalPrefixFormattingRule() && // Check that national prefix formatting rule is not a \"dummy\" one.\n !lr.test(this.nationalPrefixFormattingRule()));\n }\n }, {\n key: \"internationalFormat\",\n value: function() {\n return this._format[5] || this.format();\n }\n }]), t;\n}(), lr = /^\\(?\\$1\\)?$/, fr = /* @__PURE__ */ function() {\n function t(n, e) {\n nt(this, t), this.type = n, this.metadata = e;\n }\n return rt(t, [{\n key: \"pattern\",\n value: function() {\n return this.metadata.v1 ? this.type : this.type[0];\n }\n }, {\n key: \"possibleLengths\",\n value: function() {\n if (!this.metadata.v1)\n return this.type[1] || this.metadata.possibleLengths();\n }\n }]), t;\n}();\nfunction Wt(t, n) {\n switch (n) {\n case \"FIXED_LINE\":\n return t[0];\n case \"MOBILE\":\n return t[1];\n case \"TOLL_FREE\":\n return t[2];\n case \"PREMIUM_RATE\":\n return t[3];\n case \"PERSONAL_NUMBER\":\n return t[4];\n case \"VOICEMAIL\":\n return t[5];\n case \"UAN\":\n return t[6];\n case \"PAGER\":\n return t[7];\n case \"VOIP\":\n return t[8];\n case \"SHARED_COST\":\n return t[9];\n }\n}\nfunction sr(t) {\n if (!t)\n throw new Error(\"[libphonenumber-js] `metadata` argument not passed. Check your arguments.\");\n if (!R(t) || !R(t.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(R(t) ? \"an object of shape: { \" + Object.keys(t).join(\", \") + \" }\" : \"a \" + cr(t) + \": \" + t, \".\"));\n}\nvar cr = function(n) {\n return Nt(n);\n};\nfunction wt(t, n) {\n if (n = new N(n), n.hasCountry(t))\n return n.country(t).countryCallingCode();\n throw new Error(\"Unknown country: \".concat(t));\n}\nfunction hr(t, n) {\n return n.countries.hasOwnProperty(t);\n}\nfunction Le(t) {\n var n = t.version;\n typeof n == \"number\" ? (this.v1 = n === 1, this.v2 = n === 2, this.v3 = n === 3, this.v4 = n === 4) : n ? Gt(n, ar) === -1 ? this.v2 = !0 : Gt(n, or) === -1 ? this.v3 = !0 : this.v4 = !0 : this.v1 = !0;\n}\nvar gr = \";ext=\", L = function(n) {\n return \"([\".concat(b, \"]{1,\").concat(n, \"})\");\n};\nfunction ke(t) {\n var n = \"20\", e = \"15\", r = \"9\", d = \"6\", i = \"[ \\\\t,]*\", a = \"[:\\\\..]?[ \\\\t,-]*\", o = \"#?\", u = \"(?:e?xt(?:ensi(?:ó?|ó))?n?|e?xtn?|доб|anexo)\", $ = \"(?:[xx##~~]|int|int)\", l = \"[- ]+\", c = \"[ \\\\t]*\", s = \"(?:,{2}|;)\", h = gr + L(n), g = i + u + a + L(n) + o, C = i + $ + a + L(r) + o, v = l + L(d) + \"#\", D = c + s + a + L(e) + o, U = c + \"(?:,)+\" + a + L(r) + o;\n return h + \"|\" + g + \"|\" + C + \"|\" + v + \"|\" + D + \"|\" + U;\n}\nvar mr = \"[\" + b + \"]{\" + Ft + \"}\", yr = \"[\" + et + \"]{0,1}(?:[\" + I + \"]*[\" + b + \"]){3,}[\" + I + b + \"]*\", pr = new RegExp(\"^[\" + et + \"]{0,1}(?:[\" + I + \"]*[\" + b + \"]){1,2}$\", \"i\"), vr = yr + // Phone number extensions\n\"(?:\" + ke() + \")?\", Nr = new RegExp(\n // Either a short two-digit-only phone number\n \"^\" + mr + \"$|^\" + vr + \"$\",\n \"i\"\n);\nfunction bt(t) {\n return t.length >= Ft && Nr.test(t);\n}\nfunction br(t) {\n return pr.test(t);\n}\nvar Ht = new RegExp(\"(?:\" + ke() + \")$\", \"i\");\nfunction Cr(t) {\n var n = t.search(Ht);\n if (n < 0)\n return {};\n for (var e = t.slice(0, n), r = t.match(Ht), d = 1; d < r.length; ) {\n if (r[d])\n return {\n number: e,\n ext: r[d]\n };\n d++;\n }\n}\nfunction Pr(t, n) {\n var e = typeof Symbol < \"u\" && t[Symbol.iterator] || t[\"@@iterator\"];\n if (e)\n return (e = e.call(t)).next.bind(e);\n if (Array.isArray(t) || (e = Ar(t)) || n && t && typeof t.length == \"number\") {\n e && (t = e);\n var r = 0;\n return function() {\n return r >= t.length ? { done: !0 } : { done: !1, value: t[r++] };\n };\n }\n 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 Ar(t, n) {\n if (t) {\n if (typeof t == \"string\")\n return Vt(t, n);\n var e = Object.prototype.toString.call(t).slice(8, -1);\n if (e === \"Object\" && t.constructor && (e = t.constructor.name), e === \"Map\" || e === \"Set\")\n return Array.from(t);\n if (e === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(e))\n return Vt(t, n);\n }\n}\nfunction Vt(t, n) {\n (n == null || n > t.length) && (n = t.length);\n for (var e = 0, r = new Array(n); e < n; e++)\n r[e] = t[e];\n return r;\n}\nvar Ir = {\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 \"0\": \"0\",\n // Fullwidth digit 0\n \"1\": \"1\",\n // Fullwidth digit 1\n \"2\": \"2\",\n // Fullwidth digit 2\n \"3\": \"3\",\n // Fullwidth digit 3\n \"4\": \"4\",\n // Fullwidth digit 4\n \"5\": \"5\",\n // Fullwidth digit 5\n \"6\": \"6\",\n // Fullwidth digit 6\n \"7\": \"7\",\n // Fullwidth digit 7\n \"8\": \"8\",\n // Fullwidth digit 8\n \"9\": \"9\",\n // Fullwidth digit 9\n \"٠\": \"0\",\n // Arabic-indic digit 0\n \"١\": \"1\",\n // Arabic-indic digit 1\n \"٢\": \"2\",\n // Arabic-indic digit 2\n \"٣\": \"3\",\n // Arabic-indic digit 3\n \"٤\": \"4\",\n // Arabic-indic digit 4\n \"٥\": \"5\",\n // Arabic-indic digit 5\n \"٦\": \"6\",\n // Arabic-indic digit 6\n \"٧\": \"7\",\n // Arabic-indic digit 7\n \"٨\": \"8\",\n // Arabic-indic digit 8\n \"٩\": \"9\",\n // Arabic-indic digit 9\n \"۰\": \"0\",\n // Eastern-Arabic digit 0\n \"۱\": \"1\",\n // Eastern-Arabic digit 1\n \"۲\": \"2\",\n // Eastern-Arabic digit 2\n \"۳\": \"3\",\n // Eastern-Arabic digit 3\n \"۴\": \"4\",\n // Eastern-Arabic digit 4\n \"۵\": \"5\",\n // Eastern-Arabic digit 5\n \"۶\": \"6\",\n // Eastern-Arabic digit 6\n \"۷\": \"7\",\n // Eastern-Arabic digit 7\n \"۸\": \"8\",\n // Eastern-Arabic digit 8\n \"۹\": \"9\"\n // Eastern-Arabic digit 9\n};\nfunction Ge(t) {\n return Ir[t];\n}\nfunction q(t) {\n for (var n = \"\", e = Pr(t.split(\"\")), r; !(r = e()).done; ) {\n var d = r.value, i = Ge(d);\n i && (n += i);\n }\n return n;\n}\nfunction xr(t, n) {\n var e = typeof Symbol < \"u\" && t[Symbol.iterator] || t[\"@@iterator\"];\n if (e)\n return (e = e.call(t)).next.bind(e);\n if (Array.isArray(t) || (e = Or(t)) || n && t && typeof t.length == \"number\") {\n e && (t = e);\n var r = 0;\n return function() {\n return r >= t.length ? { done: !0 } : { done: !1, value: t[r++] };\n };\n }\n 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 Or(t, n) {\n if (t) {\n if (typeof t == \"string\")\n return Zt(t, n);\n var e = Object.prototype.toString.call(t).slice(8, -1);\n if (e === \"Object\" && t.constructor && (e = t.constructor.name), e === \"Map\" || e === \"Set\")\n return Array.from(t);\n if (e === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(e))\n return Zt(t, n);\n }\n}\nfunction Zt(t, n) {\n (n == null || n > t.length) && (n = t.length);\n for (var e = 0, r = new Array(n); e < n; e++)\n r[e] = t[e];\n return r;\n}\nfunction zt(t) {\n for (var n = \"\", e = xr(t.split(\"\")), r; !(r = e()).done; ) {\n var d = r.value;\n n += Sr(d, n) || \"\";\n }\n return n;\n}\nfunction Sr(t, n) {\n return t === \"+\" ? n ? void 0 : \"+\" : Ge(t);\n}\nfunction Er(t, n) {\n var e = typeof Symbol < \"u\" && t[Symbol.iterator] || t[\"@@iterator\"];\n if (e)\n return (e = e.call(t)).next.bind(e);\n if (Array.isArray(t) || (e = Tr(t)) || n && t && typeof t.length == \"number\") {\n e && (t = e);\n var r = 0;\n return function() {\n return r >= t.length ? { done: !0 } : { done: !1, value: t[r++] };\n };\n }\n 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 Tr(t, n) {\n if (t) {\n if (typeof t == \"string\")\n return Yt(t, n);\n var e = Object.prototype.toString.call(t).slice(8, -1);\n if (e === \"Object\" && t.constructor && (e = t.constructor.name), e === \"Map\" || e === \"Set\")\n return Array.from(t);\n if (e === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(e))\n return Yt(t, n);\n }\n}\nfunction Yt(t, n) {\n (n == null || n > t.length) && (n = t.length);\n for (var e = 0, r = new Array(n); e < n; e++)\n r[e] = t[e];\n return r;\n}\nfunction Fr(t, n) {\n for (var e = t.slice(), r = Er(n), d; !(d = r()).done; ) {\n var i = d.value;\n t.indexOf(i) < 0 && e.push(i);\n }\n return e.sort(function(a, o) {\n return a - o;\n });\n}\nfunction dt(t, n) {\n return Be(t, void 0, n);\n}\nfunction Be(t, n, e) {\n var r = e.type(n), d = r && r.possibleLengths() || e.possibleLengths();\n if (!d)\n return \"IS_POSSIBLE\";\n if (n === \"FIXED_LINE_OR_MOBILE\") {\n if (!e.type(\"FIXED_LINE\"))\n return Be(t, \"MOBILE\", e);\n var i = e.type(\"MOBILE\");\n i && (d = Fr(d, i.possibleLengths()));\n } else if (n && !r)\n return \"INVALID_LENGTH\";\n var a = t.length, o = d[0];\n return o === a ? \"IS_POSSIBLE\" : o > a ? \"TOO_SHORT\" : d[d.length - 1] < a ? \"TOO_LONG\" : d.indexOf(a, 1) >= 0 ? \"IS_POSSIBLE\" : \"INVALID_LENGTH\";\n}\nfunction wr(t, n, e) {\n if (n === void 0 && (n = {}), e = new N(e), n.v2) {\n if (!t.countryCallingCode)\n throw new Error(\"Invalid phone number object passed\");\n e.selectNumberingPlan(t.countryCallingCode);\n } else {\n if (!t.phone)\n return !1;\n if (t.country) {\n if (!e.hasCountry(t.country))\n throw new Error(\"Unknown country: \".concat(t.country));\n e.country(t.country);\n } else {\n if (!t.countryCallingCode)\n throw new Error(\"Invalid phone number object passed\");\n e.selectNumberingPlan(t.countryCallingCode);\n }\n }\n if (e.possibleLengths())\n return je(t.phone || t.nationalNumber, e);\n if (t.countryCallingCode && e.isNonGeographicCallingCode(t.countryCallingCode))\n return !0;\n throw new Error('Missing \"possibleLengths\" in metadata. Perhaps the metadata has been generated before v1.0.18.');\n}\nfunction je(t, n) {\n switch (dt(t, n)) {\n case \"IS_POSSIBLE\":\n return !0;\n default:\n return !1;\n }\n}\nfunction T(t, n) {\n return t = t || \"\", new RegExp(\"^(?:\" + n + \")$\").test(t);\n}\nfunction Dr(t, n) {\n var e = typeof Symbol < \"u\" && t[Symbol.iterator] || t[\"@@iterator\"];\n if (e)\n return (e = e.call(t)).next.bind(e);\n if (Array.isArray(t) || (e = Mr(t)) || n && t && typeof t.length == \"number\") {\n e && (t = e);\n var r = 0;\n return function() {\n return r >= t.length ? { done: !0 } : { done: !1, value: t[r++] };\n };\n }\n 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 Mr(t, n) {\n if (t) {\n if (typeof t == \"string\")\n return Xt(t, n);\n var e = Object.prototype.toString.call(t).slice(8, -1);\n if (e === \"Object\" && t.constructor && (e = t.constructor.name), e === \"Map\" || e === \"Set\")\n return Array.from(t);\n if (e === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(e))\n return Xt(t, n);\n }\n}\nfunction Xt(t, n) {\n (n == null || n > t.length) && (n = t.length);\n for (var e = 0, r = new Array(n); e < n; e++)\n r[e] = t[e];\n return r;\n}\nvar Rr = [\"MOBILE\", \"PREMIUM_RATE\", \"TOLL_FREE\", \"SHARED_COST\", \"VOIP\", \"PERSONAL_NUMBER\", \"PAGER\", \"UAN\", \"VOICEMAIL\"];\nfunction it(t, n, e) {\n if (n = n || {}, !(!t.country && !t.countryCallingCode)) {\n e = new N(e), e.selectNumberingPlan(t.country, t.countryCallingCode);\n var r = n.v2 ? t.nationalNumber : t.phone;\n if (T(r, e.nationalNumberPattern())) {\n if (ft(r, \"FIXED_LINE\", e))\n return e.type(\"MOBILE\") && e.type(\"MOBILE\").pattern() === \"\" || !e.type(\"MOBILE\") || ft(r, \"MOBILE\", e) ? \"FIXED_LINE_OR_MOBILE\" : \"FIXED_LINE\";\n for (var d = Dr(Rr), i; !(i = d()).done; ) {\n var a = i.value;\n if (ft(r, a, e))\n return a;\n }\n }\n }\n}\nfunction ft(t, n, e) {\n return n = e.type(n), !n || !n.pattern() || n.possibleLengths() && n.possibleLengths().indexOf(t.length) < 0 ? !1 : T(t, n.pattern());\n}\nfunction _r(t, n, e) {\n if (n = n || {}, e = new N(e), e.selectNumberingPlan(t.country, t.countryCallingCode), e.hasTypes())\n return it(t, n, e.metadata) !== void 0;\n var r = n.v2 ? t.nationalNumber : t.phone;\n return T(r, e.nationalNumberPattern());\n}\nfunction Lr(t, n, e) {\n var r = new N(e), d = r.getCountryCodesForCallingCode(t);\n return d ? d.filter(function(i) {\n return kr(n, i, e);\n }) : [];\n}\nfunction kr(t, n, e) {\n var r = new N(e);\n return r.selectNumberingPlan(n), r.numberingPlan.possibleLengths().indexOf(t.length) >= 0;\n}\nfunction Ue(t) {\n return t.replace(new RegExp(\"[\".concat(I, \"]+\"), \"g\"), \" \").trim();\n}\nvar We = /(\\$\\d)/;\nfunction He(t, n, e) {\n var r = e.useInternationalFormat, d = e.withNationalPrefix;\n e.carrierCode, e.metadata;\n var i = t.replace(new RegExp(n.pattern()), r ? n.internationalFormat() : (\n // 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 d && n.nationalPrefixFormattingRule() ? n.format().replace(We, n.nationalPrefixFormattingRule()) : n.format()\n ));\n return r ? Ue(i) : i;\n}\nvar Gr = /^[\\d]+(?:[~\\u2053\\u223C\\uFF5E][\\d]+)?$/;\nfunction Br(t, n, e) {\n var r = new N(e);\n if (r.selectNumberingPlan(t, n), r.defaultIDDPrefix())\n return r.defaultIDDPrefix();\n if (Gr.test(r.IDDPrefix()))\n return r.IDDPrefix();\n}\nfunction jr(t) {\n var n = t.number, e = t.ext;\n if (!n)\n return \"\";\n if (n[0] !== \"+\")\n throw new Error('\"formatRFC3966()\" expects \"number\" to be in E.164 format.');\n return \"tel:\".concat(n).concat(e ? \";ext=\" + e : \"\");\n}\nfunction Ur(t, n) {\n var e = typeof Symbol < \"u\" && t[Symbol.iterator] || t[\"@@iterator\"];\n if (e)\n return (e = e.call(t)).next.bind(e);\n if (Array.isArray(t) || (e = Wr(t)) || n && t && typeof t.length == \"number\") {\n e && (t = e);\n var r = 0;\n return function() {\n return r >= t.length ? { done: !0 } : { done: !1, value: t[r++] };\n };\n }\n 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 Wr(t, n) {\n if (t) {\n if (typeof t == \"string\")\n return Kt(t, n);\n var e = Object.prototype.toString.call(t).slice(8, -1);\n if (e === \"Object\" && t.constructor && (e = t.constructor.name), e === \"Map\" || e === \"Set\")\n return Array.from(t);\n if (e === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(e))\n return Kt(t, n);\n }\n}\nfunction Kt(t, n) {\n (n == null || n > t.length) && (n = t.length);\n for (var e = 0, r = new Array(n); e < n; e++)\n r[e] = t[e];\n return r;\n}\nfunction Qt(t, n) {\n var e = Object.keys(t);\n if (Object.getOwnPropertySymbols) {\n var r = Object.getOwnPropertySymbols(t);\n n && (r = r.filter(function(d) {\n return Object.getOwnPropertyDescriptor(t, d).enumerable;\n })), e.push.apply(e, r);\n }\n return e;\n}\nfunction Jt(t) {\n for (var n = 1; n < arguments.length; n++) {\n var e = arguments[n] != null ? arguments[n] : {};\n n % 2 ? Qt(Object(e), !0).forEach(function(r) {\n Hr(t, r, e[r]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(t, Object.getOwnPropertyDescriptors(e)) : Qt(Object(e)).forEach(function(r) {\n Object.defineProperty(t, r, Object.getOwnPropertyDescriptor(e, r));\n });\n }\n return t;\n}\nfunction Hr(t, n, e) {\n return n in t ? Object.defineProperty(t, n, { value: e, enumerable: !0, configurable: !0, writable: !0 }) : t[n] = e, t;\n}\nvar qt = {\n formatExtension: function(n, e, r) {\n return \"\".concat(n).concat(r.ext()).concat(e);\n }\n};\nfunction Vr(t, n, e, r) {\n if (e ? e = Jt(Jt({}, qt), e) : e = qt, r = new N(r), t.country && t.country !== \"001\") {\n if (!r.hasCountry(t.country))\n throw new Error(\"Unknown country: \".concat(t.country));\n r.country(t.country);\n } else if (t.countryCallingCode)\n r.selectNumberingPlan(t.countryCallingCode);\n else\n return t.phone || \"\";\n var d = r.countryCallingCode(), i = e.v2 ? t.nationalNumber : t.phone, a;\n switch (n) {\n case \"NATIONAL\":\n return i ? (a = tt(i, t.carrierCode, \"NATIONAL\", r, e), st(a, t.ext, r, e.formatExtension)) : \"\";\n case \"INTERNATIONAL\":\n return i ? (a = tt(i, null, \"INTERNATIONAL\", r, e), a = \"+\".concat(d, \" \").concat(a), st(a, t.ext, r, e.formatExtension)) : \"+\".concat(d);\n case \"E.164\":\n return \"+\".concat(d).concat(i);\n case \"RFC3966\":\n return jr({\n number: \"+\".concat(d).concat(i),\n ext: t.ext\n });\n case \"IDD\":\n if (!e.fromCountry)\n return;\n var o = zr(i, t.carrierCode, d, e.fromCountry, r);\n return st(o, t.ext, r, e.formatExtension);\n default:\n throw new Error('Unknown \"format\" argument passed to \"formatNumber()\": \"'.concat(n, '\"'));\n }\n}\nfunction tt(t, n, e, r, d) {\n var i = Zr(r.formats(), t);\n return i ? He(t, i, {\n useInternationalFormat: e === \"INTERNATIONAL\",\n withNationalPrefix: !(i.nationalPrefixIsOptionalWhenFormattingInNationalFormat() && d && d.nationalPrefix === !1),\n carrierCode: n,\n metadata: r\n }) : t;\n}\nfunction Zr(t, n) {\n for (var e = Ur(t), r; !(r = e()).done; ) {\n var d = r.value;\n if (d.leadingDigitsPatterns().length > 0) {\n var i = d.leadingDigitsPatterns()[d.leadingDigitsPatterns().length - 1];\n if (n.search(i) !== 0)\n continue;\n }\n if (T(n, d.pattern()))\n return d;\n }\n}\nfunction st(t, n, e, r) {\n return n ? r(t, n, e) : t;\n}\nfunction zr(t, n, e, r, d) {\n var i = wt(r, d.metadata);\n if (i === e) {\n var a = tt(t, n, \"NATIONAL\", d);\n return e === \"1\" ? e + \" \" + a : a;\n }\n var o = Br(r, void 0, d.metadata);\n if (o)\n return \"\".concat(o, \" \").concat(e, \" \").concat(tt(t, null, \"INTERNATIONAL\", d));\n}\nfunction te(t, n) {\n var e = Object.keys(t);\n if (Object.getOwnPropertySymbols) {\n var r = Object.getOwnPropertySymbols(t);\n n && (r = r.filter(function(d) {\n return Object.getOwnPropertyDescriptor(t, d).enumerable;\n })), e.push.apply(e, r);\n }\n return e;\n}\nfunction ee(t) {\n for (var n = 1; n < arguments.length; n++) {\n var e = arguments[n] != null ? arguments[n] : {};\n n % 2 ? te(Object(e), !0).forEach(function(r) {\n Yr(t, r, e[r]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(t, Object.getOwnPropertyDescriptors(e)) : te(Object(e)).forEach(function(r) {\n Object.defineProperty(t, r, Object.getOwnPropertyDescriptor(e, r));\n });\n }\n return t;\n}\nfunction Yr(t, n, e) {\n return n in t ? Object.defineProperty(t, n, { value: e, enumerable: !0, configurable: !0, writable: !0 }) : t[n] = e, t;\n}\nfunction Xr(t, n) {\n if (!(t instanceof n))\n throw new TypeError(\"Cannot call a class as a function\");\n}\nfunction ne(t, n) {\n for (var e = 0; e < n.length; e++) {\n var r = n[e];\n r.enumerable = r.enumerable || !1, r.configurable = !0, \"value\" in r && (r.writable = !0), Object.defineProperty(t, r.key, r);\n }\n}\nfunction Kr(t, n, e) {\n return n && ne(t.prototype, n), e && ne(t, e), Object.defineProperty(t, \"prototype\", { writable: !1 }), t;\n}\nvar Ve = /* @__PURE__ */ function() {\n function t(n, e, r) {\n if (Xr(this, t), !n)\n throw new TypeError(\"`country` or `countryCallingCode` not passed\");\n if (!e)\n throw new TypeError(\"`nationalNumber` not passed\");\n if (!r)\n throw new TypeError(\"`metadata` not passed\");\n var d = Jr(n, r), i = d.country, a = d.countryCallingCode;\n this.country = i, this.countryCallingCode = a, this.nationalNumber = e, this.number = \"+\" + this.countryCallingCode + this.nationalNumber, this.getMetadata = function() {\n return r;\n };\n }\n return Kr(t, [{\n key: \"setExt\",\n value: function(e) {\n this.ext = e;\n }\n }, {\n key: \"getPossibleCountries\",\n value: function() {\n return this.country ? [this.country] : Lr(this.countryCallingCode, this.nationalNumber, this.getMetadata());\n }\n }, {\n key: \"isPossible\",\n value: function() {\n return wr(this, {\n v2: !0\n }, this.getMetadata());\n }\n }, {\n key: \"isValid\",\n value: function() {\n return _r(this, {\n v2: !0\n }, this.getMetadata());\n }\n }, {\n key: \"isNonGeographic\",\n value: function() {\n var e = new N(this.getMetadata());\n return e.isNonGeographicCallingCode(this.countryCallingCode);\n }\n }, {\n key: \"isEqual\",\n value: function(e) {\n return this.number === e.number && this.ext === e.ext;\n }\n // This function was originally meant to be an equivalent for `validatePhoneNumberLength()`,\n // but later it was found out that it doesn't include the possible `TOO_SHORT` result\n // returned from `parsePhoneNumberWithError()` in the original `validatePhoneNumberLength()`,\n // so eventually I simply commented out this method from the `PhoneNumber` class\n // and just left the `validatePhoneNumberLength()` function, even though that one would require\n // and additional step to also validate the actual country / calling code of the phone number.\n // validateLength() {\n // \tconst metadata = new Metadata(this.getMetadata())\n // \tmetadata.selectNumberingPlan(this.countryCallingCode)\n // \tconst result = checkNumberLength(this.nationalNumber, metadata)\n // \tif (result !== 'IS_POSSIBLE') {\n // \t\treturn result\n // \t}\n // }\n }, {\n key: \"getType\",\n value: function() {\n return it(this, {\n v2: !0\n }, this.getMetadata());\n }\n }, {\n key: \"format\",\n value: function(e, r) {\n return Vr(this, e, r ? ee(ee({}, r), {}, {\n v2: !0\n }) : {\n v2: !0\n }, this.getMetadata());\n }\n }, {\n key: \"formatNational\",\n value: function(e) {\n return this.format(\"NATIONAL\", e);\n }\n }, {\n key: \"formatInternational\",\n value: function(e) {\n return this.format(\"INTERNATIONAL\", e);\n }\n }, {\n key: \"getURI\",\n value: function(e) {\n return this.format(\"RFC3966\", e);\n }\n }]), t;\n}(), Qr = function(n) {\n return /^[A-Z]{2}$/.test(n);\n};\nfunction Jr(t, n) {\n var e, r, d = new N(n);\n return Qr(t) ? (e = t, d.selectNumberingPlan(e), r = d.countryCallingCode()) : r = t, {\n country: e,\n countryCallingCode: r\n };\n}\nvar qr = new RegExp(\"([\" + b + \"])\");\nfunction Ze(t, n, e, r) {\n if (n) {\n var d = new N(r);\n d.selectNumberingPlan(n, e);\n var i = new RegExp(d.IDDPrefix());\n if (t.search(i) === 0) {\n t = t.slice(t.match(i)[0].length);\n var a = t.match(qr);\n if (!(a && a[1] != null && a[1].length > 0 && a[1] === \"0\"))\n return t;\n }\n }\n}\nfunction Ct(t, n) {\n if (t && n.numberingPlan.nationalPrefixForParsing()) {\n var e = new RegExp(\"^(?:\" + n.numberingPlan.nationalPrefixForParsing() + \")\"), r = e.exec(t);\n if (r) {\n var d, i, a = r.length - 1, o = a > 0 && r[a];\n if (n.nationalPrefixTransformRule() && o)\n d = t.replace(e, n.nationalPrefixTransformRule()), a > 1 && (i = r[1]);\n else {\n var u = r[0];\n d = t.slice(u.length), o && (i = r[1]);\n }\n var $;\n if (o) {\n var l = t.indexOf(r[1]), c = t.slice(0, l);\n c === n.numberingPlan.nationalPrefix() && ($ = n.numberingPlan.nationalPrefix());\n } else\n $ = r[0];\n return {\n nationalNumber: d,\n nationalPrefix: $,\n carrierCode: i\n };\n }\n }\n return {\n nationalNumber: t\n };\n}\nfunction Pt(t, n) {\n var e = Ct(t, n), r = e.carrierCode, d = e.nationalNumber;\n if (d !== t) {\n if (!td(t, d, n))\n return {\n nationalNumber: t\n };\n if (n.possibleLengths() && !ed(d, n))\n return {\n nationalNumber: t\n };\n }\n return {\n nationalNumber: d,\n carrierCode: r\n };\n}\nfunction td(t, n, e) {\n return !(T(t, e.nationalNumberPattern()) && !T(n, e.nationalNumberPattern()));\n}\nfunction ed(t, n) {\n switch (dt(t, n)) {\n case \"TOO_SHORT\":\n case \"INVALID_LENGTH\":\n return !1;\n default:\n return !0;\n }\n}\nfunction ze(t, n, e, r) {\n var d = n ? wt(n, r) : e;\n if (t.indexOf(d) === 0) {\n r = new N(r), r.selectNumberingPlan(n, e);\n var i = t.slice(d.length), a = Pt(i, r), o = a.nationalNumber, u = Pt(t, r), $ = u.nationalNumber;\n if (!T($, r.nationalNumberPattern()) && T(o, r.nationalNumberPattern()) || dt($, r) === \"TOO_LONG\")\n return {\n countryCallingCode: d,\n number: i\n };\n }\n return {\n number: t\n };\n}\nfunction Ye(t, n, e, r) {\n if (!t)\n return {};\n var d;\n if (t[0] !== \"+\") {\n var i = Ze(t, n, e, r);\n if (i && i !== t)\n d = !0, t = \"+\" + i;\n else {\n if (n || e) {\n var a = ze(t, n, e, r), o = a.countryCallingCode, u = a.number;\n if (o)\n return {\n countryCallingCodeSource: \"FROM_NUMBER_WITHOUT_PLUS_SIGN\",\n countryCallingCode: o,\n number: u\n };\n }\n return {\n // No need to set it to `UNSPECIFIED`. It can be just `undefined`.\n // countryCallingCodeSource: 'UNSPECIFIED',\n number: t\n };\n }\n }\n if (t[1] === \"0\")\n return {};\n r = new N(r);\n for (var $ = 2; $ - 1 <= Jn && $ <= t.length; ) {\n var l = t.slice(1, $);\n if (r.hasCallingCode(l))\n return r.selectNumberingPlan(l), {\n countryCallingCodeSource: d ? \"FROM_NUMBER_WITH_IDD\" : \"FROM_NUMBER_WITH_PLUS_SIGN\",\n countryCallingCode: l,\n number: t.slice($)\n };\n $++;\n }\n return {};\n}\nfunction nd(t, n) {\n var e = typeof Symbol < \"u\" && t[Symbol.iterator] || t[\"@@iterator\"];\n if (e)\n return (e = e.call(t)).next.bind(e);\n if (Array.isArray(t) || (e = rd(t)) || n && t && typeof t.length == \"number\") {\n e && (t = e);\n var r = 0;\n return function() {\n return r >= t.length ? { done: !0 } : { done: !1, value: t[r++] };\n };\n }\n 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 rd(t, n) {\n if (t) {\n if (typeof t == \"string\")\n return re(t, n);\n var e = Object.prototype.toString.call(t).slice(8, -1);\n if (e === \"Object\" && t.constructor && (e = t.constructor.name), e === \"Map\" || e === \"Set\")\n return Array.from(t);\n if (e === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(e))\n return re(t, n);\n }\n}\nfunction re(t, n) {\n (n == null || n > t.length) && (n = t.length);\n for (var e = 0, r = new Array(n); e < n; e++)\n r[e] = t[e];\n return r;\n}\nfunction Xe(t, n) {\n var e = n.countries, r = n.defaultCountry, d = n.metadata;\n d = new N(d);\n for (var i = [], a = nd(e), o; !(o = a()).done; ) {\n var u = o.value;\n if (d.country(u), d.leadingDigits()) {\n if (t && t.search(d.leadingDigits()) === 0)\n return u;\n } else if (it({\n phone: t,\n country: u\n }, void 0, d.metadata))\n if (r) {\n if (u === r)\n return u;\n i.push(u);\n } else\n return u;\n }\n if (i.length > 0)\n return i[0];\n}\nvar dd = !1;\nfunction Ke(t, n) {\n var e = n.nationalNumber, r = n.defaultCountry, d = n.metadata;\n if (dd && d.isNonGeographicCallingCode(t))\n return \"001\";\n var i = d.getCountryCodesForCallingCode(t);\n if (i)\n return i.length === 1 ? i[0] : Xe(e, {\n countries: i,\n defaultCountry: r,\n metadata: d.metadata\n });\n}\nvar Qe = \"+\", id = \"[\\\\-\\\\.\\\\(\\\\)]?\", de = \"([\" + b + \"]|\" + id + \")\", ad = \"^\\\\\" + Qe + de + \"*[\" + b + \"]\" + de + \"*$\", od = new RegExp(ad, \"g\"), At = b, ud = \"[\" + At + \"]+((\\\\-)*[\" + At + \"])*\", $d = \"a-zA-Z\", ld = \"[\" + $d + \"]+((\\\\-)*[\" + At + \"])*\", fd = \"^(\" + ud + \"\\\\.)*\" + ld + \"\\\\.?$\", sd = new RegExp(fd, \"g\"), ie = \"tel:\", It = \";phone-context=\", cd = \";isub=\";\nfunction hd(t) {\n var n = t.indexOf(It);\n if (n < 0)\n return null;\n var e = n + It.length;\n if (e >= t.length)\n return \"\";\n var r = t.indexOf(\";\", e);\n return r >= 0 ? t.substring(e, r) : t.substring(e);\n}\nfunction gd(t) {\n return t === null ? !0 : t.length === 0 ? !1 : od.test(t) || sd.test(t);\n}\nfunction md(t, n) {\n var e = n.extractFormattedPhoneNumber, r = hd(t);\n if (!gd(r))\n throw new S(\"NOT_A_NUMBER\");\n var d;\n if (r === null)\n d = e(t) || \"\";\n else {\n d = \"\", r.charAt(0) === Qe && (d += r);\n var i = t.indexOf(ie), a;\n i >= 0 ? a = i + ie.length : a = 0;\n var o = t.indexOf(It);\n d += t.substring(a, o);\n }\n var u = d.indexOf(cd);\n if (u > 0 && (d = d.substring(0, u)), d !== \"\")\n return d;\n}\nvar yd = 250, pd = new RegExp(\"[\" + et + b + \"]\"), vd = new RegExp(\"[^\" + b + \"#]+$\");\nfunction xt(t, n, e) {\n if (n = n || {}, e = new N(e), n.defaultCountry && !e.hasCountry(n.defaultCountry))\n throw n.v2 ? new S(\"INVALID_COUNTRY\") : new Error(\"Unknown country: \".concat(n.defaultCountry));\n var r = bd(t, n.v2, n.extract), d = r.number, i = r.ext, a = r.error;\n if (!d) {\n if (n.v2)\n throw a === \"TOO_SHORT\" ? new S(\"TOO_SHORT\") : new S(\"NOT_A_NUMBER\");\n return {};\n }\n var o = Pd(d, n.defaultCountry, n.defaultCallingCode, e), u = o.country, $ = o.nationalNumber, l = o.countryCallingCode, c = o.countryCallingCodeSource, s = o.carrierCode;\n if (!e.hasSelectedNumberingPlan()) {\n if (n.v2)\n throw new S(\"INVALID_COUNTRY\");\n return {};\n }\n if (!$ || $.length < Ft) {\n if (n.v2)\n throw new S(\"TOO_SHORT\");\n return {};\n }\n if ($.length > Qn) {\n if (n.v2)\n throw new S(\"TOO_LONG\");\n return {};\n }\n if (n.v2) {\n var h = new Ve(l, $, e.metadata);\n return u && (h.country = u), s && (h.carrierCode = s), i && (h.ext = i), h.__countryCallingCodeSource = c, h;\n }\n var g = (n.extended ? e.hasSelectedNumberingPlan() : u) ? T($, e.nationalNumberPattern()) : !1;\n return n.extended ? {\n country: u,\n countryCallingCode: l,\n carrierCode: s,\n valid: g,\n possible: g ? !0 : !!(n.extended === !0 && e.possibleLengths() && je($, e)),\n phone: $,\n ext: i\n } : g ? Cd(u, $, i) : {};\n}\nfunction Nd(t, n, e) {\n if (t) {\n if (t.length > yd) {\n if (e)\n throw new S(\"TOO_LONG\");\n return;\n }\n if (n === !1)\n return t;\n var r = t.search(pd);\n if (!(r < 0))\n return t.slice(r).replace(vd, \"\");\n }\n}\nfunction bd(t, n, e) {\n var r = md(t, {\n extractFormattedPhoneNumber: function(a) {\n return Nd(a, e, n);\n }\n });\n if (!r)\n return {};\n if (!bt(r))\n return br(r) ? {\n error: \"TOO_SHORT\"\n } : {};\n var d = Cr(r);\n return d.ext ? d : {\n number: r\n };\n}\nfunction Cd(t, n, e) {\n var r = {\n country: t,\n phone: n\n };\n return e && (r.ext = e), r;\n}\nfunction Pd(t, n, e, r) {\n var d = Ye(zt(t), n, e, r.metadata), i = d.countryCallingCodeSource, a = d.countryCallingCode, o = d.number, u;\n if (a)\n r.selectNumberingPlan(a);\n else if (o && (n || e))\n r.selectNumberingPlan(n, e), n && (u = n), a = e || wt(n, r.metadata);\n else\n return {};\n if (!o)\n return {\n countryCallingCodeSource: i,\n countryCallingCode: a\n };\n var $ = Pt(zt(o), r), l = $.nationalNumber, c = $.carrierCode, s = Ke(a, {\n nationalNumber: l,\n defaultCountry: n,\n metadata: r\n });\n return s && (u = s, s === \"001\" || r.country(u)), {\n country: u,\n countryCallingCode: a,\n countryCallingCodeSource: i,\n nationalNumber: l,\n carrierCode: c\n };\n}\nfunction ae(t, n) {\n var e = Object.keys(t);\n if (Object.getOwnPropertySymbols) {\n var r = Object.getOwnPropertySymbols(t);\n n && (r = r.filter(function(d) {\n return Object.getOwnPropertyDescriptor(t, d).enumerable;\n })), e.push.apply(e, r);\n }\n return e;\n}\nfunction oe(t) {\n for (var n = 1; n < arguments.length; n++) {\n var e = arguments[n] != null ? arguments[n] : {};\n n % 2 ? ae(Object(e), !0).forEach(function(r) {\n Ad(t, r, e[r]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(t, Object.getOwnPropertyDescriptors(e)) : ae(Object(e)).forEach(function(r) {\n Object.defineProperty(t, r, Object.getOwnPropertyDescriptor(e, r));\n });\n }\n return t;\n}\nfunction Ad(t, n, e) {\n return n in t ? Object.defineProperty(t, n, { value: e, enumerable: !0, configurable: !0, writable: !0 }) : t[n] = e, t;\n}\nfunction Id(t, n, e) {\n return xt(t, oe(oe({}, n), {}, {\n v2: !0\n }), e);\n}\nfunction ue(t, n) {\n var e = Object.keys(t);\n if (Object.getOwnPropertySymbols) {\n var r = Object.getOwnPropertySymbols(t);\n n && (r = r.filter(function(d) {\n return Object.getOwnPropertyDescriptor(t, d).enumerable;\n })), e.push.apply(e, r);\n }\n return e;\n}\nfunction xd(t) {\n for (var n = 1; n < arguments.length; n++) {\n var e = arguments[n] != null ? arguments[n] : {};\n n % 2 ? ue(Object(e), !0).forEach(function(r) {\n Od(t, r, e[r]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(t, Object.getOwnPropertyDescriptors(e)) : ue(Object(e)).forEach(function(r) {\n Object.defineProperty(t, r, Object.getOwnPropertyDescriptor(e, r));\n });\n }\n return t;\n}\nfunction Od(t, n, e) {\n return n in t ? Object.defineProperty(t, n, { value: e, enumerable: !0, configurable: !0, writable: !0 }) : t[n] = e, t;\n}\nfunction Sd(t, n) {\n return wd(t) || Fd(t, n) || Td(t, n) || Ed();\n}\nfunction Ed() {\n 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 Td(t, n) {\n if (t) {\n if (typeof t == \"string\")\n return $e(t, n);\n var e = Object.prototype.toString.call(t).slice(8, -1);\n if (e === \"Object\" && t.constructor && (e = t.constructor.name), e === \"Map\" || e === \"Set\")\n return Array.from(t);\n if (e === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(e))\n return $e(t, n);\n }\n}\nfunction $e(t, n) {\n (n == null || n > t.length) && (n = t.length);\n for (var e = 0, r = new Array(n); e < n; e++)\n r[e] = t[e];\n return r;\n}\nfunction Fd(t, n) {\n var e = t == null ? null : typeof Symbol < \"u\" && t[Symbol.iterator] || t[\"@@iterator\"];\n if (e != null) {\n var r = [], d = !0, i = !1, a, o;\n try {\n for (e = e.call(t); !(d = (a = e.next()).done) && (r.push(a.value), !(n && r.length === n)); d = !0)\n ;\n } catch (u) {\n i = !0, o = u;\n } finally {\n try {\n !d && e.return != null && e.return();\n } finally {\n if (i)\n throw o;\n }\n }\n return r;\n }\n}\nfunction wd(t) {\n if (Array.isArray(t))\n return t;\n}\nfunction Dd(t) {\n var n = Array.prototype.slice.call(t), e = Sd(n, 4), r = e[0], d = e[1], i = e[2], a = e[3], o, u, $;\n if (typeof r == \"string\")\n o = r;\n else\n throw new TypeError(\"A text for parsing must be a string.\");\n if (!d || typeof d == \"string\")\n a ? (u = i, $ = a) : (u = void 0, $ = i), d && (u = xd({\n defaultCountry: d\n }, u));\n else if (R(d))\n i ? (u = d, $ = i) : $ = d;\n else\n throw new Error(\"Invalid second argument: \".concat(d));\n return {\n text: o,\n options: u,\n metadata: $\n };\n}\nfunction le(t, n) {\n var e = Object.keys(t);\n if (Object.getOwnPropertySymbols) {\n var r = Object.getOwnPropertySymbols(t);\n n && (r = r.filter(function(d) {\n return Object.getOwnPropertyDescriptor(t, d).enumerable;\n })), e.push.apply(e, r);\n }\n return e;\n}\nfunction fe(t) {\n for (var n = 1; n < arguments.length; n++) {\n var e = arguments[n] != null ? arguments[n] : {};\n n % 2 ? le(Object(e), !0).forEach(function(r) {\n Md(t, r, e[r]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(t, Object.getOwnPropertyDescriptors(e)) : le(Object(e)).forEach(function(r) {\n Object.defineProperty(t, r, Object.getOwnPropertyDescriptor(e, r));\n });\n }\n return t;\n}\nfunction Md(t, n, e) {\n return n in t ? Object.defineProperty(t, n, { value: e, enumerable: !0, configurable: !0, writable: !0 }) : t[n] = e, t;\n}\nfunction Rd(t, n, e) {\n n && n.defaultCountry && !hr(n.defaultCountry, e) && (n = fe(fe({}, n), {}, {\n defaultCountry: void 0\n }));\n try {\n return Id(t, n, e);\n } catch (r) {\n if (!(r instanceof S))\n throw r;\n }\n}\nfunction se(t, n) {\n var e = Object.keys(t);\n if (Object.getOwnPropertySymbols) {\n var r = Object.getOwnPropertySymbols(t);\n n && (r = r.filter(function(d) {\n return Object.getOwnPropertyDescriptor(t, d).enumerable;\n })), e.push.apply(e, r);\n }\n return e;\n}\nfunction ce(t) {\n for (var n = 1; n < arguments.length; n++) {\n var e = arguments[n] != null ? arguments[n] : {};\n n % 2 ? se(Object(e), !0).forEach(function(r) {\n _d(t, r, e[r]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(t, Object.getOwnPropertyDescriptors(e)) : se(Object(e)).forEach(function(r) {\n Object.defineProperty(t, r, Object.getOwnPropertyDescriptor(e, r));\n });\n }\n return t;\n}\nfunction _d(t, n, e) {\n return n in t ? Object.defineProperty(t, n, { value: e, enumerable: !0, configurable: !0, writable: !0 }) : t[n] = e, t;\n}\nfunction Ld() {\n var t = Dd(arguments), n = t.text, e = t.options, r = t.metadata;\n e = ce(ce({}, e), {}, {\n extract: !1\n });\n var d = Rd(n, e, r);\n return d && d.isValid() || !1;\n}\nfunction kd(t, n) {\n if (!(t instanceof n))\n throw new TypeError(\"Cannot call a class as a function\");\n}\nfunction he(t, n) {\n for (var e = 0; e < n.length; e++) {\n var r = n[e];\n r.enumerable = r.enumerable || !1, r.configurable = !0, \"value\" in r && (r.writable = !0), Object.defineProperty(t, r.key, r);\n }\n}\nfunction Gd(t, n, e) {\n return n && he(t.prototype, n), e && he(t, e), Object.defineProperty(t, \"prototype\", { writable: !1 }), t;\n}\nvar Bd = /* @__PURE__ */ function() {\n function t(n) {\n var e = n.onCountryChange, r = n.onCallingCodeChange;\n kd(this, t), this.onCountryChange = e, this.onCallingCodeChange = r;\n }\n return Gd(t, [{\n key: \"reset\",\n value: function(e) {\n var r = e.country, d = e.callingCode;\n this.international = !1, this.missingPlus = !1, this.IDDPrefix = void 0, this.callingCode = void 0, this.digits = \"\", this.resetNationalSignificantNumber(), this.initCountryAndCallingCode(r, d);\n }\n }, {\n key: \"resetNationalSignificantNumber\",\n value: function() {\n this.nationalSignificantNumber = this.getNationalDigits(), this.nationalSignificantNumberMatchesInput = !0, this.nationalPrefix = void 0, this.carrierCode = void 0, this.complexPrefixBeforeNationalSignificantNumber = void 0;\n }\n }, {\n key: \"update\",\n value: function(e) {\n for (var r = 0, d = Object.keys(e); r < d.length; r++) {\n var i = d[r];\n this[i] = e[i];\n }\n }\n }, {\n key: \"initCountryAndCallingCode\",\n value: function(e, r) {\n this.setCountry(e), this.setCallingCode(r);\n }\n }, {\n key: \"setCountry\",\n value: function(e) {\n this.country = e, this.onCountryChange(e);\n }\n }, {\n key: \"setCallingCode\",\n value: function(e) {\n this.callingCode = e, this.onCallingCodeChange(e, this.country);\n }\n }, {\n key: \"startInternationalNumber\",\n value: function(e, r) {\n this.international = !0, this.initCountryAndCallingCode(e, r);\n }\n }, {\n key: \"appendDigits\",\n value: function(e) {\n this.digits += e;\n }\n }, {\n key: \"appendNationalSignificantNumberDigits\",\n value: function(e) {\n this.nationalSignificantNumber += e;\n }\n /**\n * Returns the part of `this.digits` that corresponds to the national number.\n * Basically, all digits that have been input by the user, except for the\n * international prefix and the country calling code part\n * (if the number is an international one).\n * @return {string}\n */\n }, {\n key: \"getNationalDigits\",\n value: function() {\n return this.international ? this.digits.slice((this.IDDPrefix ? this.IDDPrefix.length : 0) + (this.callingCode ? this.callingCode.length : 0)) : this.digits;\n }\n }, {\n key: \"getDigitsWithoutInternationalPrefix\",\n value: function() {\n return this.international && this.IDDPrefix ? this.digits.slice(this.IDDPrefix.length) : this.digits;\n }\n }]), t;\n}();\nfunction jd(t, n) {\n var e = typeof Symbol < \"u\" && t[Symbol.iterator] || t[\"@@iterator\"];\n if (e)\n return (e = e.call(t)).next.bind(e);\n if (Array.isArray(t) || (e = Ud(t)) || n && t && typeof t.length == \"number\") {\n e && (t = e);\n var r = 0;\n return function() {\n return r >= t.length ? { done: !0 } : { done: !1, value: t[r++] };\n };\n }\n 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 Ud(t, n) {\n if (t) {\n if (typeof t == \"string\")\n return ge(t, n);\n var e = Object.prototype.toString.call(t).slice(8, -1);\n if (e === \"Object\" && t.constructor && (e = t.constructor.name), e === \"Map\" || e === \"Set\")\n return Array.from(t);\n if (e === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(e))\n return ge(t, n);\n }\n}\nfunction ge(t, n) {\n (n == null || n > t.length) && (n = t.length);\n for (var e = 0, r = new Array(n); e < n; e++)\n r[e] = t[e];\n return r;\n}\nvar A = \"x\", ct = new RegExp(A);\nfunction Q(t, n) {\n if (n < 1)\n return \"\";\n for (var e = \"\"; n > 1; )\n n & 1 && (e += t), n >>= 1, t += t;\n return e + t;\n}\nfunction me(t, n) {\n return t[n] === \")\" && n++, Wd(t.slice(0, n));\n}\nfunction Wd(t) {\n for (var n = [], e = 0; e < t.length; )\n t[e] === \"(\" ? n.push(e) : t[e] === \")\" && n.pop(), e++;\n var r = 0, d = \"\";\n n.push(t.length);\n for (var i = 0, a = n; i < a.length; i++) {\n var o = a[i];\n d += t.slice(r, o), r = o + 1;\n }\n return d;\n}\nfunction Hd(t, n, e) {\n for (var r = jd(e.split(\"\")), d; !(d = r()).done; ) {\n var i = d.value;\n if (t.slice(n + 1).search(ct) < 0)\n return;\n n = t.search(ct), t = t.replace(ct, i);\n }\n return [t, n];\n}\nfunction Vd(t, n, e) {\n var r = e.metadata, d = e.shouldTryNationalPrefixFormattingRule, i = e.getSeparatorAfterNationalPrefix, a = new RegExp(\"^(?:\".concat(n.pattern(), \")$\"));\n if (a.test(t.nationalSignificantNumber))\n return zd(t, n, {\n metadata: r,\n shouldTryNationalPrefixFormattingRule: d,\n getSeparatorAfterNationalPrefix: i\n });\n}\nfunction Zd(t, n) {\n return dt(t, n) === \"IS_POSSIBLE\";\n}\nfunction zd(t, n, e) {\n var r = e.metadata, d = e.shouldTryNationalPrefixFormattingRule, i = e.getSeparatorAfterNationalPrefix;\n if (t.nationalSignificantNumber, t.international, t.nationalPrefix, t.carrierCode, d(n)) {\n var a = ye(t, n, {\n useNationalPrefixFormattingRule: !0,\n getSeparatorAfterNationalPrefix: i,\n metadata: r\n });\n if (a)\n return a;\n }\n return ye(t, n, {\n useNationalPrefixFormattingRule: !1,\n getSeparatorAfterNationalPrefix: i,\n metadata: r\n });\n}\nfunction ye(t, n, e) {\n var r = e.metadata, d = e.useNationalPrefixFormattingRule, i = e.getSeparatorAfterNationalPrefix, a = He(t.nationalSignificantNumber, n, {\n carrierCode: t.carrierCode,\n useInternationalFormat: t.international,\n withNationalPrefix: d,\n metadata: r\n });\n if (d || (t.nationalPrefix ? a = t.nationalPrefix + i(n) + a : t.complexPrefixBeforeNationalSignificantNumber && (a = t.complexPrefixBeforeNationalSignificantNumber + \" \" + a)), Yd(a, t))\n return a;\n}\nfunction Yd(t, n) {\n return q(t) === n.getNationalDigits();\n}\nfunction Xd(t, n) {\n if (!(t instanceof n))\n throw new TypeError(\"Cannot call a class as a function\");\n}\nfunction pe(t, n) {\n for (var e = 0; e < n.length; e++) {\n var r = n[e];\n r.enumerable = r.enumerable || !1, r.configurable = !0, \"value\" in r && (r.writable = !0), Object.defineProperty(t, r.key, r);\n }\n}\nfunction Kd(t, n, e) {\n return n && pe(t.prototype, n), e && pe(t, e), Object.defineProperty(t, \"prototype\", { writable: !1 }), t;\n}\nvar Qd = /* @__PURE__ */ function() {\n function t() {\n Xd(this, t);\n }\n return Kd(t, [{\n key: \"parse\",\n value: function(e) {\n if (this.context = [{\n or: !0,\n instructions: []\n }], this.parsePattern(e), this.context.length !== 1)\n throw new Error(\"Non-finalized contexts left when pattern parse ended\");\n var r = this.context[0], d = r.branches, i = r.instructions;\n if (d)\n return {\n op: \"|\",\n args: d.concat([ht(i)])\n };\n if (i.length === 0)\n throw new Error(\"Pattern is required\");\n return i.length === 1 ? i[0] : i;\n }\n }, {\n key: \"startContext\",\n value: function(e) {\n this.context.push(e);\n }\n }, {\n key: \"endContext\",\n value: function() {\n this.context.pop();\n }\n }, {\n key: \"getContext\",\n value: function() {\n return this.context[this.context.length - 1];\n }\n }, {\n key: \"parsePattern\",\n value: function(e) {\n if (!e)\n throw new Error(\"Pattern is required\");\n var r = e.match(ti);\n if (!r) {\n if (qd.test(e))\n throw new Error(\"Illegal characters found in a pattern: \".concat(e));\n this.getContext().instructions = this.getContext().instructions.concat(e.split(\"\"));\n return;\n }\n var d = r[1], i = e.slice(0, r.index), a = e.slice(r.index + d.length);\n switch (d) {\n case \"(?:\":\n i && this.parsePattern(i), this.startContext({\n or: !0,\n instructions: [],\n branches: []\n });\n break;\n case \")\":\n if (!this.getContext().or)\n throw new Error('\")\" operator must be preceded by \"(?:\" operator');\n if (i && this.parsePattern(i), this.getContext().instructions.length === 0)\n throw new Error('No instructions found after \"|\" operator in an \"or\" group');\n var o = this.getContext(), u = o.branches;\n u.push(ht(this.getContext().instructions)), this.endContext(), this.getContext().instructions.push({\n op: \"|\",\n args: u\n });\n break;\n case \"|\":\n if (!this.getContext().or)\n throw new Error('\"|\" operator can only be used inside \"or\" groups');\n if (i && this.parsePattern(i), !this.getContext().branches)\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 this.getContext().branches.push(ht(this.getContext().instructions)), this.getContext().instructions = [];\n break;\n case \"[\":\n i && this.parsePattern(i), this.startContext({\n oneOfSet: !0\n });\n break;\n case \"]\":\n if (!this.getContext().oneOfSet)\n throw new Error('\"]\" operator must be preceded by \"[\" operator');\n this.endContext(), this.getContext().instructions.push({\n op: \"[]\",\n args: Jd(i)\n });\n break;\n default:\n throw new Error(\"Unknown operator: \".concat(d));\n }\n a && this.parsePattern(a);\n }\n }]), t;\n}();\nfunction Jd(t) {\n for (var n = [], e = 0; e < t.length; ) {\n if (t[e] === \"-\") {\n if (e === 0 || e === t.length - 1)\n throw new Error(\"Couldn't parse a one-of set pattern: \".concat(t));\n for (var r = t[e - 1].charCodeAt(0) + 1, d = t[e + 1].charCodeAt(0) - 1, i = r; i <= d; )\n n.push(String.fromCharCode(i)), i++;\n } else\n n.push(t[e]);\n e++;\n }\n return n;\n}\nvar qd = /[\\(\\)\\[\\]\\?\\:\\|]/, ti = new RegExp(\n // any of:\n \"(\\\\||\\\\(\\\\?\\\\:|\\\\)|\\\\[|\\\\])\"\n);\nfunction ht(t) {\n return t.length === 1 ? t[0] : t;\n}\nfunction ve(t, n) {\n var e = typeof Symbol < \"u\" && t[Symbol.iterator] || t[\"@@iterator\"];\n if (e)\n return (e = e.call(t)).next.bind(e);\n if (Array.isArray(t) || (e = ei(t)) || n && t && typeof t.length == \"number\") {\n e && (t = e);\n var r = 0;\n return function() {\n return r >= t.length ? { done: !0 } : { done: !1, value: t[r++] };\n };\n }\n 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 ei(t, n) {\n if (t) {\n if (typeof t == \"string\")\n return Ne(t, n);\n var e = Object.prototype.toString.call(t).slice(8, -1);\n if (e === \"Object\" && t.constructor && (e = t.constructor.name), e === \"Map\" || e === \"Set\")\n return Array.from(t);\n if (e === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(e))\n return Ne(t, n);\n }\n}\nfunction Ne(t, n) {\n (n == null || n > t.length) && (n = t.length);\n for (var e = 0, r = new Array(n); e < n; e++)\n r[e] = t[e];\n return r;\n}\nfunction ni(t, n) {\n if (!(t instanceof n))\n throw new TypeError(\"Cannot call a class as a function\");\n}\nfunction be(t, n) {\n for (var e = 0; e < n.length; e++) {\n var r = n[e];\n r.enumerable = r.enumerable || !1, r.configurable = !0, \"value\" in r && (r.writable = !0), Object.defineProperty(t, r.key, r);\n }\n}\nfunction ri(t, n, e) {\n return n && be(t.prototype, n), e && be(t, e), Object.defineProperty(t, \"prototype\", { writable: !1 }), t;\n}\nvar di = /* @__PURE__ */ function() {\n function t(n) {\n ni(this, t), this.matchTree = new Qd().parse(n);\n }\n return ri(t, [{\n key: \"match\",\n value: function(e) {\n var r = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}, d = r.allowOverflow;\n if (!e)\n throw new Error(\"String is required\");\n var i = Ot(e.split(\"\"), this.matchTree, !0);\n if (i && i.match && delete i.matchedChars, !(i && i.overflow && !d))\n return i;\n }\n }]), t;\n}();\nfunction Ot(t, n, e) {\n if (typeof n == \"string\") {\n var r = t.join(\"\");\n return n.indexOf(r) === 0 ? t.length === n.length ? {\n match: !0,\n matchedChars: t\n } : {\n partialMatch: !0\n // matchedChars: characters\n } : r.indexOf(n) === 0 ? e && t.length > n.length ? {\n overflow: !0\n } : {\n match: !0,\n matchedChars: t.slice(0, n.length)\n } : void 0;\n }\n if (Array.isArray(n)) {\n for (var d = t.slice(), i = 0; i < n.length; ) {\n var a = n[i], o = Ot(d, a, e && i === n.length - 1);\n if (o) {\n if (o.overflow)\n return o;\n if (o.match) {\n if (d = d.slice(o.matchedChars.length), d.length === 0)\n return i === n.length - 1 ? {\n match: !0,\n matchedChars: t\n } : {\n partialMatch: !0\n // matchedChars: characters\n };\n } else {\n if (o.partialMatch)\n return {\n partialMatch: !0\n // matchedChars: characters\n };\n throw new Error(`Unsupported match result:\n`.concat(JSON.stringify(o, null, 2)));\n }\n } else\n return;\n i++;\n }\n return e ? {\n overflow: !0\n } : {\n match: !0,\n matchedChars: t.slice(0, t.length - d.length)\n };\n }\n switch (n.op) {\n case \"|\":\n for (var u, $ = ve(n.args), l; !(l = $()).done; ) {\n var c = l.value, s = Ot(t, c, e);\n if (s) {\n if (s.overflow)\n return s;\n if (s.match)\n return {\n match: !0,\n matchedChars: s.matchedChars\n };\n if (s.partialMatch)\n u = !0;\n else\n throw new Error(`Unsupported match result:\n`.concat(JSON.stringify(s, null, 2)));\n }\n }\n return u ? {\n partialMatch: !0\n // matchedChars: ...\n } : void 0;\n case \"[]\":\n for (var h = ve(n.args), g; !(g = h()).done; ) {\n var C = g.value;\n if (t[0] === C)\n return t.length === 1 ? {\n match: !0,\n matchedChars: t\n } : e ? {\n overflow: !0\n } : {\n match: !0,\n matchedChars: [C]\n };\n }\n return;\n default:\n throw new Error(\"Unsupported instruction tree: \".concat(n));\n }\n}\nfunction Ce(t, n) {\n var e = typeof Symbol < \"u\" && t[Symbol.iterator] || t[\"@@iterator\"];\n if (e)\n return (e = e.call(t)).next.bind(e);\n if (Array.isArray(t) || (e = ii(t)) || n && t && typeof t.length == \"number\") {\n e && (t = e);\n var r = 0;\n return function() {\n return r >= t.length ? { done: !0 } : { done: !1, value: t[r++] };\n };\n }\n 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 ii(t, n) {\n if (t) {\n if (typeof t == \"string\")\n return Pe(t, n);\n var e = Object.prototype.toString.call(t).slice(8, -1);\n if (e === \"Object\" && t.constructor && (e = t.constructor.name), e === \"Map\" || e === \"Set\")\n return Array.from(t);\n if (e === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(e))\n return Pe(t, n);\n }\n}\nfunction Pe(t, n) {\n (n == null || n > t.length) && (n = t.length);\n for (var e = 0, r = new Array(n); e < n; e++)\n r[e] = t[e];\n return r;\n}\nfunction ai(t, n) {\n if (!(t instanceof n))\n throw new TypeError(\"Cannot call a class as a function\");\n}\nfunction Ae(t, n) {\n for (var e = 0; e < n.length; e++) {\n var r = n[e];\n r.enumerable = r.enumerable || !1, r.configurable = !0, \"value\" in r && (r.writable = !0), Object.defineProperty(t, r.key, r);\n }\n}\nfunction oi(t, n, e) {\n return n && Ae(t.prototype, n), e && Ae(t, e), Object.defineProperty(t, \"prototype\", { writable: !1 }), t;\n}\nvar St = \"9\", ui = 15, $i = Q(St, ui), li = /[- ]/, fi = function() {\n return /\\[([^\\[\\]])*\\]/g;\n}, si = function() {\n return /\\d(?=[^,}][^,}])/g;\n}, ci = new RegExp(\"[\" + I + \"]*\\\\$1[\" + I + \"]*(\\\\$\\\\d[\" + I + \"]*)*$\"), Ie = 3, hi = /* @__PURE__ */ function() {\n function t(n) {\n n.state;\n var e = n.metadata;\n ai(this, t), this.metadata = e, this.resetFormat();\n }\n return oi(t, [{\n key: \"resetFormat\",\n value: function() {\n this.chosenFormat = void 0, this.template = void 0, this.nationalNumberTemplate = void 0, this.populatedNationalNumberTemplate = void 0, this.populatedNationalNumberTemplatePosition = -1;\n }\n }, {\n key: \"reset\",\n value: function(e, r) {\n this.resetFormat(), e ? (this.isNANP = e.callingCode() === \"1\", this.matchingFormats = e.formats(), r.nationalSignificantNumber && this.narrowDownMatchingFormats(r)) : (this.isNANP = void 0, this.matchingFormats = []);\n }\n /**\n * Formats an updated phone number.\n * @param {string} nextDigits — Additional phone number digits.\n * @param {object} state — `AsYouType` state.\n * @return {[string]} Returns undefined if the updated phone number can't be formatted using any of the available formats.\n */\n }, {\n key: \"format\",\n value: function(e, r) {\n var d = this;\n if (Zd(r.nationalSignificantNumber, this.metadata))\n for (var i = Ce(this.matchingFormats), a; !(a = i()).done; ) {\n var o = a.value, u = Vd(r, o, {\n metadata: this.metadata,\n shouldTryNationalPrefixFormattingRule: function(l) {\n return d.shouldTryNationalPrefixFormattingRule(l, {\n international: r.international,\n nationalPrefix: r.nationalPrefix\n });\n },\n getSeparatorAfterNationalPrefix: function(l) {\n return d.getSeparatorAfterNationalPrefix(l);\n }\n });\n if (u)\n return this.resetFormat(), this.chosenFormat = o, this.setNationalNumberTemplate(u.replace(/\\d/g, A), r), this.populatedNationalNumberTemplate = u, this.populatedNationalNumberTemplatePosition = this.template.lastIndexOf(A), u;\n }\n return this.formatNationalNumberWithNextDigits(e, r);\n }\n // Formats the next phone number digits.\n }, {\n key: \"formatNationalNumberWithNextDigits\",\n value: function(e, r) {\n var d = this.chosenFormat, i = this.chooseFormat(r);\n if (i)\n return i === d ? this.formatNextNationalNumberDigits(e) : this.formatNextNationalNumberDigits(r.getNationalDigits());\n }\n }, {\n key: \"narrowDownMatchingFormats\",\n value: function(e) {\n var r = this, d = e.nationalSignificantNumber, i = e.nationalPrefix, a = e.international, o = d, u = o.length - Ie;\n u < 0 && (u = 0), this.matchingFormats = this.matchingFormats.filter(function($) {\n return r.formatSuits($, a, i) && r.formatMatches($, o, u);\n }), this.chosenFormat && this.matchingFormats.indexOf(this.chosenFormat) === -1 && this.resetFormat();\n }\n }, {\n key: \"formatSuits\",\n value: function(e, r, d) {\n return !(d && !e.usesNationalPrefix() && // !format.domesticCarrierCodeFormattingRule() &&\n !e.nationalPrefixIsOptionalWhenFormattingInNationalFormat() || !r && !d && e.nationalPrefixIsMandatoryWhenFormattingInNationalFormat());\n }\n }, {\n key: \"formatMatches\",\n value: function(e, r, d) {\n var i = e.leadingDigitsPatterns().length;\n if (i === 0)\n return !0;\n d = Math.min(d, i - 1);\n var a = e.leadingDigitsPatterns()[d];\n if (r.length < Ie)\n try {\n return new di(a).match(r, {\n allowOverflow: !0\n }) !== void 0;\n } catch (o) {\n return console.error(o), !0;\n }\n return new RegExp(\"^(\".concat(a, \")\")).test(r);\n }\n }, {\n key: \"getFormatFormat\",\n value: function(e, r) {\n return r ? e.internationalFormat() : e.format();\n }\n }, {\n key: \"chooseFormat\",\n value: function(e) {\n for (var r = this, d = function() {\n var $ = a.value;\n return r.chosenFormat === $ ? \"break\" : ci.test(r.getFormatFormat($, e.international)) ? r.createTemplateForFormat($, e) ? (r.chosenFormat = $, \"break\") : (r.matchingFormats = r.matchingFormats.filter(function(l) {\n return l !== $;\n }), \"continue\") : \"continue\";\n }, i = Ce(this.matchingFormats.slice()), a; !(a = i()).done; ) {\n var o = d();\n if (o === \"break\")\n break;\n }\n return this.chosenFormat || this.resetFormat(), this.chosenFormat;\n }\n }, {\n key: \"createTemplateForFormat\",\n value: function(e, r) {\n if (!(e.pattern().indexOf(\"|\") >= 0)) {\n var d = this.getTemplateForFormat(e, r);\n if (d)\n return this.setNationalNumberTemplate(d, r), !0;\n }\n }\n }, {\n key: \"getSeparatorAfterNationalPrefix\",\n value: function(e) {\n return this.isNANP || e && e.nationalPrefixFormattingRule() && li.test(e.nationalPrefixFormattingRule()) ? \" \" : \"\";\n }\n }, {\n key: \"getInternationalPrefixBeforeCountryCallingCode\",\n value: function(e, r) {\n var d = e.IDDPrefix, i = e.missingPlus;\n return d ? r && r.spacing === !1 ? d : d + \" \" : i ? \"\" : \"+\";\n }\n }, {\n key: \"getTemplate\",\n value: function(e) {\n if (this.template) {\n for (var r = -1, d = 0, i = e.international ? this.getInternationalPrefixBeforeCountryCallingCode(e, {\n spacing: !1\n }) : \"\"; d < i.length + e.getDigitsWithoutInternationalPrefix().length; )\n r = this.template.indexOf(A, r + 1), d++;\n return me(this.template, r + 1);\n }\n }\n }, {\n key: \"setNationalNumberTemplate\",\n value: function(e, r) {\n this.nationalNumberTemplate = e, this.populatedNationalNumberTemplate = e, this.populatedNationalNumberTemplatePosition = -1, r.international ? this.template = this.getInternationalPrefixBeforeCountryCallingCode(r).replace(/[\\d\\+]/g, A) + Q(A, r.callingCode.length) + \" \" + e : this.template = e;\n }\n /**\n * Generates formatting template for a national phone number,\n * optionally containing a national prefix, for a format.\n * @param {Format} format\n * @param {string} nationalPrefix\n * @return {string}\n */\n }, {\n key: \"getTemplateForFormat\",\n value: function(e, r) {\n var d = r.nationalSignificantNumber, i = r.international, a = r.nationalPrefix, o = r.complexPrefixBeforeNationalSignificantNumber, u = e.pattern();\n u = u.replace(fi(), \"\\\\d\").replace(si(), \"\\\\d\");\n var $ = $i.match(u)[0];\n if (!(d.length > $.length)) {\n var l = new RegExp(\"^\" + u + \"$\"), c = d.replace(/\\d/g, St);\n l.test(c) && ($ = c);\n var s = this.getFormatFormat(e, i), h;\n if (this.shouldTryNationalPrefixFormattingRule(e, {\n international: i,\n nationalPrefix: a\n })) {\n var g = s.replace(We, e.nationalPrefixFormattingRule());\n if (q(e.nationalPrefixFormattingRule()) === (a || \"\") + q(\"$1\") && (s = g, h = !0, a))\n for (var C = a.length; C > 0; )\n s = s.replace(/\\d/, A), C--;\n }\n var v = $.replace(new RegExp(u), s).replace(new RegExp(St, \"g\"), A);\n return h || (o ? v = Q(A, o.length) + \" \" + v : a && (v = Q(A, a.length) + this.getSeparatorAfterNationalPrefix(e) + v)), i && (v = Ue(v)), v;\n }\n }\n }, {\n key: \"formatNextNationalNumberDigits\",\n value: function(e) {\n var r = Hd(this.populatedNationalNumberTemplate, this.populatedNationalNumberTemplatePosition, e);\n if (!r) {\n this.resetFormat();\n return;\n }\n return this.populatedNationalNumberTemplate = r[0], this.populatedNationalNumberTemplatePosition = r[1], me(this.populatedNationalNumberTemplate, this.populatedNationalNumberTemplatePosition + 1);\n }\n }, {\n key: \"shouldTryNationalPrefixFormattingRule\",\n value: function(e, r) {\n var d = r.international, i = r.nationalPrefix;\n if (e.nationalPrefixFormattingRule()) {\n var a = e.usesNationalPrefix();\n if (a && i || !a && !d)\n return !0;\n }\n }\n }]), t;\n}();\nfunction Je(t, n) {\n return pi(t) || yi(t, n) || mi(t, n) || gi();\n}\nfunction gi() {\n 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 mi(t, n) {\n if (t) {\n if (typeof t == \"string\")\n return xe(t, n);\n var e = Object.prototype.toString.call(t).slice(8, -1);\n if (e === \"Object\" && t.constructor && (e = t.constructor.name), e === \"Map\" || e === \"Set\")\n return Array.from(t);\n if (e === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(e))\n return xe(t, n);\n }\n}\nfunction xe(t, n) {\n (n == null || n > t.length) && (n = t.length);\n for (var e = 0, r = new Array(n); e < n; e++)\n r[e] = t[e];\n return r;\n}\nfunction yi(t, n) {\n var e = t == null ? null : typeof Symbol < \"u\" && t[Symbol.iterator] || t[\"@@iterator\"];\n if (e != null) {\n var r = [], d = !0, i = !1, a, o;\n try {\n for (e = e.call(t); !(d = (a = e.next()).done) && (r.push(a.value), !(n && r.length === n)); d = !0)\n ;\n } catch (u) {\n i = !0, o = u;\n } finally {\n try {\n !d && e.return != null && e.return();\n } finally {\n if (i)\n throw o;\n }\n }\n return r;\n }\n}\nfunction pi(t) {\n if (Array.isArray(t))\n return t;\n}\nfunction vi(t, n) {\n if (!(t instanceof n))\n throw new TypeError(\"Cannot call a class as a function\");\n}\nfunction Oe(t, n) {\n for (var e = 0; e < n.length; e++) {\n var r = n[e];\n r.enumerable = r.enumerable || !1, r.configurable = !0, \"value\" in r && (r.writable = !0), Object.defineProperty(t, r.key, r);\n }\n}\nfunction Ni(t, n, e) {\n return n && Oe(t.prototype, n), e && Oe(t, e), Object.defineProperty(t, \"prototype\", { writable: !1 }), t;\n}\nvar bi = \"[\" + I + b + \"]+\", Ci = new RegExp(\"^\" + bi + \"$\", \"i\"), Pi = \"(?:[\" + et + \"][\" + I + b + \"]*|[\" + I + b + \"]+)\", Ai = new RegExp(\"[^\" + I + b + \"]+.*$\"), Ii = /[^\\d\\[\\]]/, xi = /* @__PURE__ */ function() {\n function t(n) {\n var e = n.defaultCountry, r = n.defaultCallingCode, d = n.metadata, i = n.onNationalSignificantNumberChange;\n vi(this, t), this.defaultCountry = e, this.defaultCallingCode = r, this.metadata = d, this.onNationalSignificantNumberChange = i;\n }\n return Ni(t, [{\n key: \"input\",\n value: function(e, r) {\n var d = Ei(e), i = Je(d, 2), a = i[0], o = i[1], u = q(a), $;\n return o && (r.digits || (r.startInternationalNumber(), u || ($ = !0))), u && this.inputDigits(u, r), {\n digits: u,\n justLeadingPlus: $\n };\n }\n /**\n * Inputs \"next\" phone number digits.\n * @param {string} digits\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\".\n */\n }, {\n key: \"inputDigits\",\n value: function(e, r) {\n var d = r.digits, i = d.length < 3 && d.length + e.length >= 3;\n if (r.appendDigits(e), i && this.extractIddPrefix(r), this.isWaitingForCountryCallingCode(r)) {\n if (!this.extractCountryCallingCode(r))\n return;\n } else\n r.appendNationalSignificantNumberDigits(e);\n r.international || this.hasExtractedNationalSignificantNumber || this.extractNationalSignificantNumber(r.getNationalDigits(), function(a) {\n return r.update(a);\n });\n }\n }, {\n key: \"isWaitingForCountryCallingCode\",\n value: function(e) {\n var r = e.international, d = e.callingCode;\n return r && !d;\n }\n // Extracts a country calling code from a number\n // being entered in internatonal format.\n }, {\n key: \"extractCountryCallingCode\",\n value: function(e) {\n var r = Ye(\"+\" + e.getDigitsWithoutInternationalPrefix(), this.defaultCountry, this.defaultCallingCode, this.metadata.metadata), d = r.countryCallingCode, i = r.number;\n if (d)\n return e.setCallingCode(d), e.update({\n nationalSignificantNumber: i\n }), !0;\n }\n }, {\n key: \"reset\",\n value: function(e) {\n if (e) {\n this.hasSelectedNumberingPlan = !0;\n var r = e._nationalPrefixForParsing();\n this.couldPossiblyExtractAnotherNationalSignificantNumber = r && Ii.test(r);\n } else\n this.hasSelectedNumberingPlan = void 0, this.couldPossiblyExtractAnotherNationalSignificantNumber = void 0;\n }\n /**\n * Extracts a national (significant) number from user input.\n * Google's library is different in that it only applies `national_prefix_for_parsing`\n * and doesn't apply `national_prefix_transform_rule` after that.\n * https://github.com/google/libphonenumber/blob/a3d70b0487875475e6ad659af404943211d26456/java/libphonenumber/src/com/google/i18n/phonenumbers/AsYouTypeFormatter.java#L539\n * @return {boolean} [extracted]\n */\n }, {\n key: \"extractNationalSignificantNumber\",\n value: function(e, r) {\n if (this.hasSelectedNumberingPlan) {\n var d = Ct(e, this.metadata), i = d.nationalPrefix, a = d.nationalNumber, o = d.carrierCode;\n if (a !== e)\n return this.onExtractedNationalNumber(i, o, a, e, r), !0;\n }\n }\n /**\n * In Google's code this function is called \"attempt to extract longer NDD\".\n * \"Some national prefixes are a substring of others\", they say.\n * @return {boolean} [result] — Returns `true` if extracting a national prefix produced different results from what they were.\n */\n }, {\n key: \"extractAnotherNationalSignificantNumber\",\n value: function(e, r, d) {\n if (!this.hasExtractedNationalSignificantNumber)\n return this.extractNationalSignificantNumber(e, d);\n if (this.couldPossiblyExtractAnotherNationalSignificantNumber) {\n var i = Ct(e, this.metadata), a = i.nationalPrefix, o = i.nationalNumber, u = i.carrierCode;\n if (o !== r)\n return this.onExtractedNationalNumber(a, u, o, e, d), !0;\n }\n }\n }, {\n key: \"onExtractedNationalNumber\",\n value: function(e, r, d, i, a) {\n var o, u, $ = i.lastIndexOf(d);\n if ($ >= 0 && $ === i.length - d.length) {\n u = !0;\n var l = i.slice(0, $);\n l !== e && (o = l);\n }\n a({\n nationalPrefix: e,\n carrierCode: r,\n nationalSignificantNumber: d,\n nationalSignificantNumberMatchesInput: u,\n complexPrefixBeforeNationalSignificantNumber: o\n }), this.hasExtractedNationalSignificantNumber = !0, this.onNationalSignificantNumberChange();\n }\n }, {\n key: \"reExtractNationalSignificantNumber\",\n value: function(e) {\n if (this.extractAnotherNationalSignificantNumber(e.getNationalDigits(), e.nationalSignificantNumber, function(r) {\n return e.update(r);\n }))\n return !0;\n if (this.extractIddPrefix(e))\n return this.extractCallingCodeAndNationalSignificantNumber(e), !0;\n if (this.fixMissingPlus(e))\n return this.extractCallingCodeAndNationalSignificantNumber(e), !0;\n }\n }, {\n key: \"extractIddPrefix\",\n value: function(e) {\n var r = e.international, d = e.IDDPrefix, i = e.digits;\n if (e.nationalSignificantNumber, !(r || d)) {\n var a = Ze(i, this.defaultCountry, this.defaultCallingCode, this.metadata.metadata);\n if (a !== void 0 && a !== i)\n return e.update({\n IDDPrefix: i.slice(0, i.length - a.length)\n }), this.startInternationalNumber(e, {\n country: void 0,\n callingCode: void 0\n }), !0;\n }\n }\n }, {\n key: \"fixMissingPlus\",\n value: function(e) {\n if (!e.international) {\n var r = ze(e.digits, this.defaultCountry, this.defaultCallingCode, this.metadata.metadata), d = r.countryCallingCode;\n if (r.number, d)\n return e.update({\n missingPlus: !0\n }), this.startInternationalNumber(e, {\n country: e.country,\n callingCode: d\n }), !0;\n }\n }\n }, {\n key: \"startInternationalNumber\",\n value: function(e, r) {\n var d = r.country, i = r.callingCode;\n e.startInternationalNumber(d, i), e.nationalSignificantNumber && (e.resetNationalSignificantNumber(), this.onNationalSignificantNumberChange(), this.hasExtractedNationalSignificantNumber = void 0);\n }\n }, {\n key: \"extractCallingCodeAndNationalSignificantNumber\",\n value: function(e) {\n this.extractCountryCallingCode(e) && this.extractNationalSignificantNumber(e.getNationalDigits(), function(r) {\n return e.update(r);\n });\n }\n }]), t;\n}();\nfunction Oi(t) {\n var n = t.search(Pi);\n if (!(n < 0)) {\n t = t.slice(n);\n var e;\n return t[0] === \"+\" && (e = !0, t = t.slice(1)), t = t.replace(Ai, \"\"), e && (t = \"+\" + t), t;\n }\n}\nfunction Si(t) {\n var n = Oi(t) || \"\";\n return n[0] === \"+\" ? [n.slice(1), !0] : [n];\n}\nfunction Ei(t) {\n var n = Si(t), e = Je(n, 2), r = e[0], d = e[1];\n return Ci.test(r) || (r = \"\"), [r, d];\n}\nfunction Ti(t, n) {\n return Mi(t) || Di(t, n) || wi(t, n) || Fi();\n}\nfunction Fi() {\n 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 wi(t, n) {\n if (t) {\n if (typeof t == \"string\")\n return Se(t, n);\n var e = Object.prototype.toString.call(t).slice(8, -1);\n if (e === \"Object\" && t.constructor && (e = t.constructor.name), e === \"Map\" || e === \"Set\")\n return Array.from(t);\n if (e === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(e))\n return Se(t, n);\n }\n}\nfunction Se(t, n) {\n (n == null || n > t.length) && (n = t.length);\n for (var e = 0, r = new Array(n); e < n; e++)\n r[e] = t[e];\n return r;\n}\nfunction Di(t, n) {\n var e = t == null ? null : typeof Symbol < \"u\" && t[Symbol.iterator] || t[\"@@iterator\"];\n if (e != null) {\n var r = [], d = !0, i = !1, a, o;\n try {\n for (e = e.call(t); !(d = (a = e.next()).done) && (r.push(a.value), !(n && r.length === n)); d = !0)\n ;\n } catch (u) {\n i = !0, o = u;\n } finally {\n try {\n !d && e.return != null && e.return();\n } finally {\n if (i)\n throw o;\n }\n }\n return r;\n }\n}\nfunction Mi(t) {\n if (Array.isArray(t))\n return t;\n}\nfunction Ri(t, n) {\n if (!(t instanceof n))\n throw new TypeError(\"Cannot call a class as a function\");\n}\nfunction Ee(t, n) {\n for (var e = 0; e < n.length; e++) {\n var r = n[e];\n r.enumerable = r.enumerable || !1, r.configurable = !0, \"value\" in r && (r.writable = !0), Object.defineProperty(t, r.key, r);\n }\n}\nfunction _i(t, n, e) {\n return n && Ee(t.prototype, n), e && Ee(t, e), Object.defineProperty(t, \"prototype\", { writable: !1 }), t;\n}\nvar qe = /* @__PURE__ */ function() {\n function t(n, e) {\n Ri(this, t), this.metadata = new N(e);\n var r = this.getCountryAndCallingCode(n), d = Ti(r, 2), i = d[0], a = d[1];\n this.defaultCountry = i, this.defaultCallingCode = a, this.reset();\n }\n return _i(t, [{\n key: \"getCountryAndCallingCode\",\n value: function(e) {\n var r, d;\n return e && (R(e) ? (r = e.defaultCountry, d = e.defaultCallingCode) : r = e), r && !this.metadata.hasCountry(r) && (r = void 0), [r, d];\n }\n /**\n * Inputs \"next\" phone number characters.\n * @param {string} text\n * @return {string} Formatted phone number characters that have been input so far.\n */\n }, {\n key: \"input\",\n value: function(e) {\n var r = this.parser.input(e, this.state), d = r.digits, i = r.justLeadingPlus;\n if (i)\n this.formattedOutput = \"+\";\n else if (d) {\n this.determineTheCountryIfNeeded(), this.state.nationalSignificantNumber && this.formatter.narrowDownMatchingFormats(this.state);\n var a;\n if (this.metadata.hasSelectedNumberingPlan() && (a = this.formatter.format(d, this.state)), a === void 0 && this.parser.reExtractNationalSignificantNumber(this.state)) {\n this.determineTheCountryIfNeeded();\n var o = this.state.getNationalDigits();\n o && (a = this.formatter.format(o, this.state));\n }\n this.formattedOutput = a ? this.getFullNumber(a) : this.getNonFormattedNumber();\n }\n return this.formattedOutput;\n }\n }, {\n key: \"reset\",\n value: function() {\n var e = this;\n return this.state = new Bd({\n onCountryChange: function(d) {\n e.country = d;\n },\n onCallingCodeChange: function(d, i) {\n e.metadata.selectNumberingPlan(i, d), e.formatter.reset(e.metadata.numberingPlan, e.state), e.parser.reset(e.metadata.numberingPlan);\n }\n }), this.formatter = new hi({\n state: this.state,\n metadata: this.metadata\n }), this.parser = new xi({\n defaultCountry: this.defaultCountry,\n defaultCallingCode: this.defaultCallingCode,\n metadata: this.metadata,\n state: this.state,\n onNationalSignificantNumberChange: function() {\n e.determineTheCountryIfNeeded(), e.formatter.reset(e.metadata.numberingPlan, e.state);\n }\n }), this.state.reset({\n country: this.defaultCountry,\n callingCode: this.defaultCallingCode\n }), this.formattedOutput = \"\", this;\n }\n /**\n * Returns `true` if the phone number is being input in international format.\n * In other words, returns `true` if and only if the parsed phone number starts with a `\"+\"`.\n * @return {boolean}\n */\n }, {\n key: \"isInternational\",\n value: function() {\n return this.state.international;\n }\n /**\n * Returns the \"calling code\" part of the phone number when it's being input\n * in an international format.\n * If no valid calling code has been entered so far, returns `undefined`.\n * @return {string} [callingCode]\n */\n }, {\n key: \"getCallingCode\",\n value: function() {\n if (this.isInternational())\n return this.state.callingCode;\n }\n // A legacy alias.\n }, {\n key: \"getCountryCallingCode\",\n value: function() {\n return this.getCallingCode();\n }\n /**\n * Returns a two-letter country code of the phone number.\n * Returns `undefined` for \"non-geographic\" phone numbering plans.\n * Returns `undefined` if no phone number has been input yet.\n * @return {string} [country]\n */\n }, {\n key: \"getCountry\",\n value: function() {\n var e = this.state.digits;\n if (e)\n return this._getCountry();\n }\n /**\n * Returns a two-letter country code of the phone number.\n * Returns `undefined` for \"non-geographic\" phone numbering plans.\n * @return {string} [country]\n */\n }, {\n key: \"_getCountry\",\n value: function() {\n var e = this.state.country;\n return e;\n }\n }, {\n key: \"determineTheCountryIfNeeded\",\n value: function() {\n (!this.state.country || this.isCountryCallingCodeAmbiguous()) && this.determineTheCountry();\n }\n // Prepends `+CountryCode ` in case of an international phone number\n }, {\n key: \"getFullNumber\",\n value: function(e) {\n var r = this;\n if (this.isInternational()) {\n var d = function(o) {\n return r.formatter.getInternationalPrefixBeforeCountryCallingCode(r.state, {\n spacing: !!o\n }) + o;\n }, i = this.state.callingCode;\n return d(i ? e ? \"\".concat(i, \" \").concat(e) : i : \"\".concat(this.state.getDigitsWithoutInternationalPrefix()));\n }\n return e;\n }\n }, {\n key: \"getNonFormattedNationalNumberWithPrefix\",\n value: function() {\n var e = this.state, r = e.nationalSignificantNumber, d = e.complexPrefixBeforeNationalSignificantNumber, i = e.nationalPrefix, a = r, o = d || i;\n return o && (a = o + a), a;\n }\n }, {\n key: \"getNonFormattedNumber\",\n value: function() {\n var e = this.state.nationalSignificantNumberMatchesInput;\n return this.getFullNumber(e ? this.getNonFormattedNationalNumberWithPrefix() : this.state.getNationalDigits());\n }\n }, {\n key: \"getNonFormattedTemplate\",\n value: function() {\n var e = this.getNonFormattedNumber();\n if (e)\n return e.replace(/[\\+\\d]/g, A);\n }\n }, {\n key: \"isCountryCallingCodeAmbiguous\",\n value: function() {\n var e = this.state.callingCode, r = this.metadata.getCountryCodesForCallingCode(e);\n return r && r.length > 1;\n }\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 key: \"determineTheCountry\",\n value: function() {\n this.state.setCountry(Ke(this.isInternational() ? this.state.callingCode : this.defaultCallingCode, {\n nationalNumber: this.state.nationalSignificantNumber,\n defaultCountry: this.defaultCountry,\n metadata: this.metadata\n }));\n }\n /**\n * Returns a E.164 phone number value for the user's input.\n *\n * For example, for country `\"US\"` and input `\"(222) 333-4444\"`\n * it will return `\"+12223334444\"`.\n *\n * For international phone number input, it will also auto-correct\n * some minor errors such as using a national prefix when writing\n * an international phone number. For example, if the user inputs\n * `\"+44 0 7400 000000\"` then it will return an auto-corrected\n * `\"+447400000000\"` phone number value.\n *\n * Will return `undefined` if no digits have been input,\n * or when inputting a phone number in national format and no\n * default country or default \"country calling code\" have been set.\n *\n * @return {string} [value]\n */\n }, {\n key: \"getNumberValue\",\n value: function() {\n var e = this.state, r = e.digits, d = e.callingCode, i = e.country, a = e.nationalSignificantNumber;\n if (r) {\n if (this.isInternational())\n return d ? \"+\" + d + a : \"+\" + r;\n if (i || d) {\n var o = i ? this.metadata.countryCallingCode() : d;\n return \"+\" + o + a;\n }\n }\n }\n /**\n * Returns an instance of `PhoneNumber` class.\n * Will return `undefined` if no national (significant) number\n * digits have been entered so far, or if no `defaultCountry` has been\n * set and the user enters a phone number not in international format.\n */\n }, {\n key: \"getNumber\",\n value: function() {\n var e = this.state, r = e.nationalSignificantNumber, d = e.carrierCode, i = e.callingCode, a = this._getCountry();\n if (r && !(!a && !i)) {\n if (a && a === this.defaultCountry) {\n var o = new N(this.metadata.metadata);\n o.selectNumberingPlan(a);\n var u = o.numberingPlan.callingCode(), $ = this.metadata.getCountryCodesForCallingCode(u);\n if ($.length > 1) {\n var l = Xe(r, {\n countries: $,\n defaultCountry: this.defaultCountry,\n metadata: this.metadata.metadata\n });\n l && (a = l);\n }\n }\n var c = new Ve(a || i, r, this.metadata.metadata);\n return d && (c.carrierCode = d), c;\n }\n }\n /**\n * Returns `true` if the phone number is \"possible\".\n * Is just a shortcut for `PhoneNumber.isPossible()`.\n * @return {boolean}\n */\n }, {\n key: \"isPossible\",\n value: function() {\n var e = this.getNumber();\n return e ? e.isPossible() : !1;\n }\n /**\n * Returns `true` if the phone number is \"valid\".\n * Is just a shortcut for `PhoneNumber.isValid()`.\n * @return {boolean}\n */\n }, {\n key: \"isValid\",\n value: function() {\n var e = this.getNumber();\n return e ? e.isValid() : !1;\n }\n /**\n * @deprecated\n * This method is used in `react-phone-number-input/source/input-control.js`\n * in versions before `3.0.16`.\n */\n }, {\n key: \"getNationalNumber\",\n value: function() {\n return this.state.nationalSignificantNumber;\n }\n /**\n * Returns the phone number characters entered by the user.\n * @return {string}\n */\n }, {\n key: \"getChars\",\n value: function() {\n return (this.state.international ? \"+\" : \"\") + this.state.digits;\n }\n /**\n * Returns the template for the formatted phone number.\n * @return {string}\n */\n }, {\n key: \"getTemplate\",\n value: function() {\n return this.formatter.getTemplate(this.state) || this.getNonFormattedTemplate() || \"\";\n }\n }]), t;\n}();\nfunction d1() {\n return Me(Ld, arguments);\n}\nfunction j(t) {\n return qe.call(this, t, Tt);\n}\nj.prototype = Object.create(qe.prototype, {});\nj.prototype.constructor = j;\nfunction Li(t, n) {\n return ji(t) || Bi(t, n) || Gi(t, n) || ki();\n}\nfunction ki() {\n 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 Gi(t, n) {\n if (t) {\n if (typeof t == \"string\")\n return Te(t, n);\n var e = Object.prototype.toString.call(t).slice(8, -1);\n if (e === \"Object\" && t.constructor && (e = t.constructor.name), e === \"Map\" || e === \"Set\")\n return Array.from(t);\n if (e === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(e))\n return Te(t, n);\n }\n}\nfunction Te(t, n) {\n (n == null || n > t.length) && (n = t.length);\n for (var e = 0, r = new Array(n); e < n; e++)\n r[e] = t[e];\n return r;\n}\nfunction Bi(t, n) {\n var e = t == null ? null : typeof Symbol < \"u\" && t[Symbol.iterator] || t[\"@@iterator\"];\n if (e != null) {\n var r = [], d = !0, i = !1, a, o;\n try {\n for (e = e.call(t); !(d = (a = e.next()).done) && (r.push(a.value), !(n && r.length === n)); d = !0)\n ;\n } catch (u) {\n i = !0, o = u;\n } finally {\n try {\n !d && e.return != null && e.return();\n } finally {\n if (i)\n throw o;\n }\n }\n return r;\n }\n}\nfunction ji(t) {\n if (Array.isArray(t))\n return t;\n}\nfunction Ui() {\n var t = Wi(arguments), n = t.input, e = t.options, r = t.metadata;\n if (n.phone)\n return it(n, e, r);\n}\nfunction Wi(t) {\n var n = Array.prototype.slice.call(t), e = Li(n, 4), r = e[0], d = e[1], i = e[2], a = e[3], o, u = {}, $;\n if (typeof r == \"string\")\n R(d) ? (i ? (u = d, $ = i) : $ = d, bt(r) ? o = xt(r, void 0, $) : o = {}) : (a ? (u = i, $ = a) : $ = i, bt(r) ? o = xt(r, {\n defaultCountry: d\n }, $) : o = {});\n else if (R(r))\n o = r, i ? (u = d, $ = i) : $ = d;\n else\n throw new TypeError(\"A phone number must either be a string or an object of shape { phone, [country] }.\");\n return {\n input: o,\n options: u,\n metadata: $\n };\n}\nfunction i1() {\n return Me(Ui, arguments);\n}\nfunction gt(t) {\n const { defaultCountry: n, initialValue: e, disableFormatting: r, forceCallingCode: d } = t, i = n ? `+${B[n]?.[0]}` : \"\", a = new j(n);\n let o = a.input(e);\n d && o === \"+\" && n && (o = `+${B[n]?.[0]}`);\n const u = a.getNumberValue();\n return r && u && (o = u), {\n inputValue: o || i,\n isoCode: a.getCountry() || n || null\n };\n}\nfunction Hi(t, n) {\n const { excludedCountries: e, onlyCountries: r, continents: d } = n;\n return !(E(e, !0) && e.includes(t) || E(r) && !r.includes(t) || E(d) && !Fn(d, t));\n}\nfunction Vi({\n value: t,\n onChange: n,\n defaultCountry: e,\n onlyCountries: r,\n excludedCountries: d,\n continents: i,\n disableFormatting: a,\n forceCallingCode: o\n}) {\n const u = y.useRef(\n e || null\n ), $ = y.useRef(new j(e)), l = y.useRef(null), [c, s] = y.useState(e), [h, g] = y.useState(() => gt({\n initialValue: t,\n defaultCountry: e,\n disableFormatting: a,\n forceCallingCode: o\n })), [C, v] = y.useState(t), D = (f) => ({\n countryCallingCode: $.current.getCallingCode() || null,\n countryCode: $.current.getCountry() || null,\n nationalNumber: $.current.getNationalNumber(),\n numberType: $.current.getNumber()?.getType() ?? null,\n numberValue: $.current.getNumberValue() || null,\n reason: f\n }), U = (f) => f && Hi(f, {\n onlyCountries: r,\n excludedCountries: d,\n continents: i\n }), W = (f) => ($.current.reset(), $.current.input(f)), at = (f) => f.startsWith(\"+\") || f === \"\" ? f : `+${f}`, ot = (f, x) => `+${J(x)}${f}`, ut = (f) => {\n const x = o ? ot(\n f.target.value,\n h.isoCode\n ) : at(f.target.value), M = W(x), F = $.current.getCountry(), w = o ? (\n // always the same country, can't change\n h.isoCode\n ) : F || u.current, P = $.current.getNumberValue() || \"\";\n u.current = w;\n const Y = D(\"input\");\n if (P && (!w || !U(w)))\n n?.(P, {\n ...Y,\n // we show the input value but without any formatting, or country..\n countryCode: null,\n countryCallingCode: null,\n nationalNumber: null\n }), v(P), g({\n isoCode: null,\n inputValue: P\n });\n else {\n const O = a ? P : M;\n n?.(O, Y), v(O), g({\n isoCode: w,\n inputValue: O\n });\n }\n };\n y.useEffect(() => {\n if (t !== C) {\n v(t);\n const f = gt({\n initialValue: t,\n defaultCountry: e,\n forceCallingCode: o,\n disableFormatting: a\n });\n u.current = f.isoCode, g(f);\n }\n }, [\n t,\n C,\n e,\n o,\n a\n ]), y.useEffect(() => {\n if (e !== c) {\n s(e), $.current = new j(e);\n const { inputValue: f, isoCode: x } = gt({\n initialValue: \"\",\n defaultCountry: e,\n forceCallingCode: o,\n disableFormatting: a\n });\n v(f), $.current.input(f), u.current = $.current.getCountry() || null, n?.(f, D(\"country\")), g({\n inputValue: f,\n isoCode: x\n });\n }\n }, [\n e,\n c,\n n,\n o,\n a\n ]);\n const z = (f) => {\n if (f === h.isoCode)\n return;\n const x = B[f]?.[0], { inputValue: M, isoCode: F } = h, w = F ? De(M, `+${J(F)}`) : M;\n let P = `+${x}${w}`;\n a || (P = W(P)), n?.(P, {\n ...D(\"country\"),\n // Some country have the same calling code, so we choose what the user has selected\n countryCode: f\n }), u.current = f, v(P), g({\n isoCode: f,\n inputValue: P\n });\n };\n return {\n inputValue: h.inputValue,\n isoCode: h.isoCode,\n onInputChange: ut,\n onCountryChange: z,\n inputRef: l\n };\n}\nconst a1 = y.forwardRef(\n (t, n) => {\n const {\n forceCallingCode: e = !1,\n onlyCountries: r,\n excludedCountries: d,\n defaultCountry: i,\n onDoubleClick: a,\n onFocus: o,\n onCopy: u,\n value: $ = \"\",\n inputProps: l,\n InputProps: c,\n inputRef: s,\n disabled: h,\n onChange: g,\n disableDropdown: C,\n disableFormatting: v = !1,\n focusOnSelectCountry: D,\n langOfCountryName: U,\n continents: W,\n preferredCountries: at,\n MenuProps: ot,\n className: ut,\n flagSize: z = \"small\",\n ...f\n } = t, x = y.useRef(null), [M, F] = y.useState(null), w = e ? xn(i) : i;\n Hn(t);\n const { onInputChange: P, onCountryChange: Y, inputRef: O, isoCode: X, inputValue: Dt } = Vi({\n forceCallingCode: e,\n defaultCountry: w,\n value: $ ?? \"\",\n onChange: g,\n excludedCountries: d,\n onlyCountries: r,\n disableFormatting: v,\n continents: W\n }), tn = (m) => {\n m.preventDefault(), (!h || !C) && F(x.current);\n }, en = (m) => {\n F(null), Y(m), D && O.current && O.current.focus();\n }, nn = (m) => {\n setTimeout(() => {\n O.current && Wn(O.current);\n }, 0), o?.(m);\n }, rn = (m) => {\n const H = O.current;\n H.setSelectionRange(0, H.value.length), a?.(m);\n }, dn = (m) => {\n if (u) {\n u(m);\n return;\n }\n const H = window.getSelection();\n if (H) {\n const fn = H.toString().replaceAll(\" \", \"\");\n m.clipboardData.setData(\"text/plain\", fn), m.preventDefault();\n }\n }, an = (m) => {\n O.current = m, c?.inputRef && lt(m, c.inputRef), s && lt(m, s);\n }, on = (m) => {\n x.current = m, n && lt(m, n);\n }, un = () => {\n F(null);\n }, $n = X ? `+${J(X)}` : \"\", ln = e ? (\n // We removed the isoCode but no necessarily the space after\n De(Dt, $n).trimStart()\n ) : Dt;\n return /* @__PURE__ */ _(Fe, { children: [\n /* @__PURE__ */ p(\n pn,\n {\n type: \"tel\",\n disabled: h,\n value: ln,\n ref: on,\n onDoubleClick: rn,\n inputRef: an,\n className: `MuiTelInput-TextField ${ut || \"\"}`,\n onChange: P,\n inputProps: {\n onCopy: dn,\n ...l\n },\n onFocus: nn,\n InputProps: {\n startAdornment: /* @__PURE__ */ p(yn, { position: \"start\", sx: { flexShrink: 0 }, children: /* @__PURE__ */ p(\n Mn,\n {\n isFlagsMenuOpened: !!M,\n isoCode: X,\n forceCallingCode: e,\n onClick: tn,\n disabled: h,\n flagSize: z,\n disableDropdown: !!C\n }\n ) }),\n ...c\n },\n ...f\n }\n ),\n C ? null : /* @__PURE__ */ p(\n Un,\n {\n onlyCountries: r,\n excludedCountries: d,\n continents: W,\n anchorEl: M,\n isoCode: X,\n preferredCountries: at,\n onClose: un,\n langOfCountryName: U,\n onSelectCountry: en,\n flagSize: z,\n ...ot\n }\n )\n ] });\n }\n);\nexport {\n j as AsYouType,\n a1 as MuiTelInput,\n i1 as getNumberType,\n d1 as matchIsValidTel\n};\n","'use strict'\n\n\nconst createScatter = require('regl-scatter2d')\nconst pick = require('pick-by-alias')\nconst getBounds = require('array-bounds')\nconst raf = require('raf')\nconst arrRange = require('array-range')\nconst rect = require('parse-rect')\nconst flatten = require('flatten-vertex-data')\n\n\nmodule.exports = SPLOM\n\n\n// @constructor\nfunction SPLOM (regl, options) {\n\tif (!(this instanceof SPLOM)) return new SPLOM(regl, options)\n\n\t// render passes\n\tthis.traces = []\n\n\t// passes for scatter, combined across traces\n\tthis.passes = {}\n\n\tthis.regl = regl\n\n\t// main scatter drawing instance\n\tthis.scatter = createScatter(regl)\n\n\tthis.canvas = this.scatter.canvas\n}\n\n\n// update & draw passes once per frame\nSPLOM.prototype.render = function (...args) {\n\tif (args.length) {\n\t\tthis.update(...args)\n\t}\n\n\tif (this.regl.attributes.preserveDrawingBuffer) return this.draw()\n\n\t// make sure draw is not called more often than once a frame\n\tif (this.dirty) {\n\t\tif (this.planned == null) {\n\t\t\tthis.planned = raf(() => {\n\t\t\t\tthis.draw()\n\t\t\t\tthis.dirty = true\n\t\t\t\tthis.planned = null\n\t\t\t})\n\t\t}\n\t}\n\telse {\n\t\tthis.draw()\n\t\tthis.dirty = true\n\t\traf(() => {\n\t\t\tthis.dirty = false\n\t\t})\n\t}\n\n\treturn this\n}\n\n\n// update passes\nSPLOM.prototype.update = function (...args) {\n\tif (!args.length) return\n\n\tfor (let i = 0; i < args.length; i++) {\n\t\tthis.updateItem(i, args[i])\n\t}\n\n\t// remove nulled passes\n\tthis.traces = this.traces.filter(Boolean)\n\n\t// FIXME: update passes independently\n\tlet passes = []\n\tlet offset = 0\n\tfor (let i = 0; i < this.traces.length; i++) {\n\t\tlet trace = this.traces[i]\n\t\tlet tracePasses = this.traces[i].passes\n\t\tfor (let j = 0; j < tracePasses.length; j++) {\n\t\t\tpasses.push(this.passes[tracePasses[j]])\n\t\t}\n\t\t// save offset of passes\n\t\ttrace.passOffset = offset\n\t\toffset += trace.passes.length\n\t}\n\n\tthis.scatter.update(...passes)\n\n\treturn this\n}\n\n\n// update trace by index, not supposed to be called directly\nSPLOM.prototype.updateItem = function (i, options) {\n\tlet { regl } = this\n\n\t// remove pass if null\n\tif (options === null) {\n\t\tthis.traces[i] = null\n\t\treturn this\n\t}\n\n\tif (!options) return this\n\n\tlet o = pick(options, {\n\t\tdata: 'data items columns rows values dimensions samples x',\n\t\tsnap: 'snap cluster',\n\t\tsize: 'sizes size radius',\n\t\tcolor: 'colors color fill fill-color fillColor',\n\t\topacity: 'opacity alpha transparency opaque',\n\t\tborderSize: 'borderSizes borderSize border-size bordersize borderWidth borderWidths border-width borderwidth stroke-width strokeWidth strokewidth outline',\n\t\tborderColor: 'borderColors borderColor bordercolor stroke stroke-color strokeColor',\n\t\tmarker: 'markers marker shape',\n\t\trange: 'range ranges databox dataBox',\n\t\tviewport: 'viewport viewBox viewbox',\n\t\tdomain: 'domain domains area areas',\n\t\tpadding: 'pad padding paddings pads margin margins',\n\t\ttranspose: 'transpose transposed',\n\t\tdiagonal: 'diagonal diag showDiagonal',\n\t\tupper: 'upper up top upperhalf upperHalf showupperhalf showUpper showUpperHalf',\n\t\tlower: 'lower low bottom lowerhalf lowerHalf showlowerhalf showLowerHalf showLower'\n\t})\n\n\t// we provide regl buffer per-trace, since trace data can be changed\n\tlet trace = (this.traces[i] || (this.traces[i] = {\n\t\tid: i,\n\t\tbuffer: regl.buffer({\n\t\t\tusage: 'dynamic',\n\t\t\ttype: 'float',\n\t\t\tdata: new Uint8Array()\n\t\t}),\n\t\tcolor: 'black',\n\t\tmarker: null,\n\t\tsize: 12,\n\t\tborderColor: 'transparent',\n\t\tborderSize: 1,\n\t\tviewport: rect([regl._gl.drawingBufferWidth, regl._gl.drawingBufferHeight]),\n\t\tpadding: [0, 0, 0, 0],\n\t\topacity: 1,\n\t\tdiagonal: true,\n\t\tupper: true,\n\t\tlower: true\n\t}))\n\n\n\t// save styles\n\tif (o.color != null) {\n\t\ttrace.color = o.color\n\t}\n\tif (o.size != null) {\n\t\ttrace.size = o.size\n\t}\n\tif (o.marker != null) {\n\t\ttrace.marker = o.marker\n\t}\n\tif (o.borderColor != null) {\n\t\ttrace.borderColor = o.borderColor\n\t}\n\tif (o.borderSize != null) {\n\t\ttrace.borderSize = o.borderSize\n\t}\n\tif (o.opacity != null) {\n\t\ttrace.opacity = o.opacity\n\t}\n\tif (o.viewport) {\n\t\ttrace.viewport = rect(o.viewport)\n\t}\n\tif (o.diagonal != null) trace.diagonal = o.diagonal\n\tif (o.upper != null) trace.upper = o.upper\n\tif (o.lower != null) trace.lower = o.lower\n\n\t// put flattened data into buffer\n\tif (o.data) {\n\t\ttrace.buffer(flatten(o.data))\n\t\ttrace.columns = o.data.length\n\t\ttrace.count = o.data[0].length\n\n\t\t// detect bounds per-column\n\t\ttrace.bounds = []\n\n\t\tfor (let i = 0; i < trace.columns; i++) {\n\t\t\ttrace.bounds[i] = getBounds(o.data[i], 1)\n\t\t}\n\t}\n\n\t// add proper range updating markers\n\tlet multirange\n\tif (o.range) {\n\t\ttrace.range = o.range\n\t\tmultirange = trace.range && typeof trace.range[0] !== 'number'\n\t}\n\n\tif (o.domain) {\n\t\ttrace.domain = o.domain\n\t}\n\tlet multipadding = false\n\tif (o.padding != null) {\n\t\t// multiple paddings\n\t\tif (Array.isArray(o.padding) && o.padding.length === trace.columns && typeof o.padding[o.padding.length - 1] === 'number') {\n\t\t\ttrace.padding = o.padding.map(getPad)\n\t\t\tmultipadding = true\n\t\t}\n\t\t// single padding\n\t\telse {\n\t\t\ttrace.padding = getPad(o.padding)\n\t\t}\n\t}\n\n\t// create passes\n\tlet m = trace.columns\n\tlet n = trace.count\n\n\tlet w = trace.viewport.width\n\tlet h = trace.viewport.height\n\tlet left = trace.viewport.x\n\tlet top = trace.viewport.y\n\tlet iw = w / m\n\tlet ih = h / m\n\n\ttrace.passes = []\n\n\tfor (let i = 0; i < m; i++) {\n\t\tfor (let j = 0; j < m; j++) {\n\t\t\tif (!trace.diagonal && j === i) continue\n\t\t\tif (!trace.upper && i > j) continue\n\t\t\tif (!trace.lower && i < j) continue\n\n\t\t\tlet key = passId(trace.id, i, j)\n\n\t\t\tlet pass = this.passes[key] || (this.passes[key] = {})\n\n\t\t\tif (o.data) {\n\t\t\t\tif (o.transpose) {\n\t\t\t\t\tpass.positions = {\n\t\t\t\t\t\tx: {buffer: trace.buffer, offset: j, count: n, stride: m},\n\t\t\t\t\t\ty: {buffer: trace.buffer, offset: i, count: n, stride: m}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tpass.positions = {\n\t\t\t\t\t\tx: {buffer: trace.buffer, offset: j * n, count: n},\n\t\t\t\t\t\ty: {buffer: trace.buffer, offset: i * n, count: n}\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tpass.bounds = getBox(trace.bounds, i, j)\n\t\t\t}\n\n\t\t\tif (o.domain || o.viewport || o.data) {\n\t\t\t\tlet pad = multipadding ? getBox(trace.padding, i, j) : trace.padding\n\t\t\t\tif (trace.domain) {\n\t\t\t\t\tlet [lox, loy, hix, hiy] = getBox(trace.domain, i, j)\n\n\t\t\t\t\tpass.viewport = [\n\t\t\t\t\t\tleft + lox * w + pad[0],\n\t\t\t\t\t\ttop + loy * h + pad[1],\n\t\t\t\t\t\tleft + hix * w - pad[2],\n\t\t\t\t\t\ttop + hiy * h - pad[3]\n\t\t\t\t\t]\n\t\t\t\t}\n\t\t\t\t// consider auto-domain equipartial\n\t\t\t\telse {\n\t\t\t\t\tpass.viewport = [\n\t\t\t\t\t\tleft + j * iw + iw * pad[0],\n\t\t\t\t\t\ttop + i * ih + ih * pad[1],\n\t\t\t\t\t\tleft + (j + 1) * iw - iw * pad[2],\n\t\t\t\t\t\ttop + (i + 1) * ih - ih * pad[3]\n\t\t\t\t\t]\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (o.color) pass.color = trace.color\n\t\t\tif (o.size) pass.size = trace.size\n\t\t\tif (o.marker) pass.marker = trace.marker\n\t\t\tif (o.borderSize) pass.borderSize = trace.borderSize\n\t\t\tif (o.borderColor) pass.borderColor = trace.borderColor\n\t\t\tif (o.opacity) pass.opacity = trace.opacity\n\n\t\t\tif (o.range) {\n\t\t\t\tpass.range = multirange ? getBox(trace.range, i, j) : trace.range || pass.bounds\n\t\t\t}\n\n\t\t\ttrace.passes.push(key)\n\t\t}\n\t}\n\n\treturn this\n}\n\n\n// draw all or passed passes\nSPLOM.prototype.draw = function (...args) {\n\tif (!args.length) {\n\t\tthis.scatter.draw()\n\t}\n\telse {\n\t\tlet idx = []\n\t\tfor (let i = 0; i < args.length; i++) {\n\t\t\t// draw(0, 2, 5) - draw traces\n\t\t\tif (typeof args[i] === 'number' ) {\n\t\t\t\tlet { passes, passOffset } = this.traces[args[i]]\n\t\t\t\tidx.push(...arrRange(passOffset, passOffset + passes.length))\n\t\t\t}\n\t\t\t// draw([0, 1, 2 ...], [3, 4, 5]) - draw points\n\t\t\telse if (args[i].length) {\n\t\t\t\tlet els = args[i]\n\t\t\t\tlet { passes, passOffset } = this.traces[i]\n\t\t\t\tpasses = passes.map((passId, i) => {\n\t\t\t\t\tidx[passOffset + i] = els\n\t\t\t\t})\n\t\t\t}\n\t\t}\n\t\tthis.scatter.draw(...idx)\n\t}\n\n\treturn this\n}\n\n\n// dispose resources\nSPLOM.prototype.destroy = function () {\n\tthis.traces.forEach(trace => {\n\t\tif (trace.buffer && trace.buffer.destroy) trace.buffer.destroy()\n\t})\n\tthis.traces = null\n\tthis.passes = null\n\n\tthis.scatter.destroy()\n\n\treturn this\n}\n\n\n// return pass corresponding to trace i- j- square\nfunction passId (trace, i, j) {\n\tlet id = (trace.id != null ? trace.id : trace)\n\tlet n = i\n\tlet m = j\n\tlet key = id << 16 | (n & 0xff) << 8 | m & 0xff\n\n\treturn key\n}\n\n\n// return bounding box corresponding to a pass\nfunction getBox (items, i, j) {\n\tlet ilox, iloy, ihix, ihiy, jlox, jloy, jhix, jhiy\n\tlet iitem = items[i], jitem = items[j]\n\n\tif (iitem.length > 2) {\n\t\tilox = iitem[0]\n\t\tihix = iitem[2]\n\t\tiloy = iitem[1]\n\t\tihiy = iitem[3]\n\t}\n\telse if (iitem.length) {\n\t\tilox = iloy = iitem[0]\n\t\tihix = ihiy = iitem[1]\n\t}\n\telse {\n\t\tilox = iitem.x\n\t\tiloy = iitem.y\n\t\tihix = iitem.x + iitem.width\n\t\tihiy = iitem.y + iitem.height\n\t}\n\n\tif (jitem.length > 2) {\n\t\tjlox = jitem[0]\n\t\tjhix = jitem[2]\n\t\tjloy = jitem[1]\n\t\tjhiy = jitem[3]\n\t}\n\telse if (jitem.length) {\n\t\tjlox = jloy = jitem[0]\n\t\tjhix = jhiy = jitem[1]\n\t}\n\telse {\n\t\tjlox = jitem.x\n\t\tjloy = jitem.y\n\t\tjhix = jitem.x + jitem.width\n\t\tjhiy = jitem.y + jitem.height\n\t}\n\n\treturn [ jlox, iloy, jhix, ihiy ]\n}\n\n\nfunction getPad (arg) {\n\tif (typeof arg === 'number') return [arg, arg, arg, arg]\n\telse if (arg.length === 2) return [arg[0], arg[1], arg[0], arg[1]]\n\telse {\n\t\tlet box = rect(arg)\n\t\treturn [box.x, box.y, box.x + box.width, box.y + box.height]\n\t}\n}\n","/*!\n * Quill Editor v1.3.7\n * https://quilljs.com/\n * Copyright (c) 2014, Jason Chen\n * Copyright (c) 2013, salesforce.com\n */\n(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"Quill\"] = factory();\n\telse\n\t\troot[\"Quill\"] = factory();\n})(typeof self !== 'undefined' ? self : this, function() {\nreturn /******/ (function(modules) { // webpackBootstrap\n/******/ \t// The module cache\n/******/ \tvar installedModules = {};\n/******/\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/\n/******/ \t\t// Check if module is in cache\n/******/ \t\tif(installedModules[moduleId]) {\n/******/ \t\t\treturn installedModules[moduleId].exports;\n/******/ \t\t}\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = installedModules[moduleId] = {\n/******/ \t\t\ti: moduleId,\n/******/ \t\t\tl: false,\n/******/ \t\t\texports: {}\n/******/ \t\t};\n/******/\n/******/ \t\t// Execute the module function\n/******/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/******/\n/******/ \t\t// Flag the module as loaded\n/******/ \t\tmodule.l = true;\n/******/\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/\n/******/\n/******/ \t// expose the modules object (__webpack_modules__)\n/******/ \t__webpack_require__.m = modules;\n/******/\n/******/ \t// expose the module cache\n/******/ \t__webpack_require__.c = installedModules;\n/******/\n/******/ \t// define getter function for harmony exports\n/******/ \t__webpack_require__.d = function(exports, name, getter) {\n/******/ \t\tif(!__webpack_require__.o(exports, name)) {\n/******/ \t\t\tObject.defineProperty(exports, name, {\n/******/ \t\t\t\tconfigurable: false,\n/******/ \t\t\t\tenumerable: true,\n/******/ \t\t\t\tget: getter\n/******/ \t\t\t});\n/******/ \t\t}\n/******/ \t};\n/******/\n/******/ \t// getDefaultExport function for compatibility with non-harmony modules\n/******/ \t__webpack_require__.n = function(module) {\n/******/ \t\tvar getter = module && module.__esModule ?\n/******/ \t\t\tfunction getDefault() { return module['default']; } :\n/******/ \t\t\tfunction getModuleExports() { return module; };\n/******/ \t\t__webpack_require__.d(getter, 'a', getter);\n/******/ \t\treturn getter;\n/******/ \t};\n/******/\n/******/ \t// Object.prototype.hasOwnProperty.call\n/******/ \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n/******/\n/******/ \t// __webpack_public_path__\n/******/ \t__webpack_require__.p = \"\";\n/******/\n/******/ \t// Load entry module and return exports\n/******/ \treturn __webpack_require__(__webpack_require__.s = 109);\n/******/ })\n/************************************************************************/\n/******/ ([\n/* 0 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar container_1 = __webpack_require__(17);\nvar format_1 = __webpack_require__(18);\nvar leaf_1 = __webpack_require__(19);\nvar scroll_1 = __webpack_require__(45);\nvar inline_1 = __webpack_require__(46);\nvar block_1 = __webpack_require__(47);\nvar embed_1 = __webpack_require__(48);\nvar text_1 = __webpack_require__(49);\nvar attributor_1 = __webpack_require__(12);\nvar class_1 = __webpack_require__(32);\nvar style_1 = __webpack_require__(33);\nvar store_1 = __webpack_require__(31);\nvar Registry = __webpack_require__(1);\nvar Parchment = {\n Scope: Registry.Scope,\n create: Registry.create,\n find: Registry.find,\n query: Registry.query,\n register: Registry.register,\n Container: container_1.default,\n Format: format_1.default,\n Leaf: leaf_1.default,\n Embed: embed_1.default,\n Scroll: scroll_1.default,\n Block: block_1.default,\n Inline: inline_1.default,\n Text: text_1.default,\n Attributor: {\n Attribute: attributor_1.default,\n Class: class_1.default,\n Style: style_1.default,\n Store: store_1.default,\n },\n};\nexports.default = Parchment;\n\n\n/***/ }),\n/* 1 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\n return function (d, b) {\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar ParchmentError = /** @class */ (function (_super) {\n __extends(ParchmentError, _super);\n function ParchmentError(message) {\n var _this = this;\n message = '[Parchment] ' + message;\n _this = _super.call(this, message) || this;\n _this.message = message;\n _this.name = _this.constructor.name;\n return _this;\n }\n return ParchmentError;\n}(Error));\nexports.ParchmentError = ParchmentError;\nvar attributes = {};\nvar classes = {};\nvar tags = {};\nvar types = {};\nexports.DATA_KEY = '__blot';\nvar Scope;\n(function (Scope) {\n Scope[Scope[\"TYPE\"] = 3] = \"TYPE\";\n Scope[Scope[\"LEVEL\"] = 12] = \"LEVEL\";\n Scope[Scope[\"ATTRIBUTE\"] = 13] = \"ATTRIBUTE\";\n Scope[Scope[\"BLOT\"] = 14] = \"BLOT\";\n Scope[Scope[\"INLINE\"] = 7] = \"INLINE\";\n Scope[Scope[\"BLOCK\"] = 11] = \"BLOCK\";\n Scope[Scope[\"BLOCK_BLOT\"] = 10] = \"BLOCK_BLOT\";\n Scope[Scope[\"INLINE_BLOT\"] = 6] = \"INLINE_BLOT\";\n Scope[Scope[\"BLOCK_ATTRIBUTE\"] = 9] = \"BLOCK_ATTRIBUTE\";\n Scope[Scope[\"INLINE_ATTRIBUTE\"] = 5] = \"INLINE_ATTRIBUTE\";\n Scope[Scope[\"ANY\"] = 15] = \"ANY\";\n})(Scope = exports.Scope || (exports.Scope = {}));\nfunction create(input, value) {\n var match = query(input);\n if (match == null) {\n throw new ParchmentError(\"Unable to create \" + input + \" blot\");\n }\n var BlotClass = match;\n var node = \n // @ts-ignore\n input instanceof Node || input['nodeType'] === Node.TEXT_NODE ? input : BlotClass.create(value);\n return new BlotClass(node, value);\n}\nexports.create = create;\nfunction find(node, bubble) {\n if (bubble === void 0) { bubble = false; }\n if (node == null)\n return null;\n // @ts-ignore\n if (node[exports.DATA_KEY] != null)\n return node[exports.DATA_KEY].blot;\n if (bubble)\n return find(node.parentNode, bubble);\n return null;\n}\nexports.find = find;\nfunction query(query, scope) {\n if (scope === void 0) { scope = Scope.ANY; }\n var match;\n if (typeof query === 'string') {\n match = types[query] || attributes[query];\n // @ts-ignore\n }\n else if (query instanceof Text || query['nodeType'] === Node.TEXT_NODE) {\n match = types['text'];\n }\n else if (typeof query === 'number') {\n if (query & Scope.LEVEL & Scope.BLOCK) {\n match = types['block'];\n }\n else if (query & Scope.LEVEL & Scope.INLINE) {\n match = types['inline'];\n }\n }\n else if (query instanceof HTMLElement) {\n var names = (query.getAttribute('class') || '').split(/\\s+/);\n for (var i in names) {\n match = classes[names[i]];\n if (match)\n break;\n }\n match = match || tags[query.tagName];\n }\n if (match == null)\n return null;\n // @ts-ignore\n if (scope & Scope.LEVEL & match.scope && scope & Scope.TYPE & match.scope)\n return match;\n return null;\n}\nexports.query = query;\nfunction register() {\n var Definitions = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n Definitions[_i] = arguments[_i];\n }\n if (Definitions.length > 1) {\n return Definitions.map(function (d) {\n return register(d);\n });\n }\n var Definition = Definitions[0];\n if (typeof Definition.blotName !== 'string' && typeof Definition.attrName !== 'string') {\n throw new ParchmentError('Invalid definition');\n }\n else if (Definition.blotName === 'abstract') {\n throw new ParchmentError('Cannot register abstract class');\n }\n types[Definition.blotName || Definition.attrName] = Definition;\n if (typeof Definition.keyName === 'string') {\n attributes[Definition.keyName] = Definition;\n }\n else {\n if (Definition.className != null) {\n classes[Definition.className] = Definition;\n }\n if (Definition.tagName != null) {\n if (Array.isArray(Definition.tagName)) {\n Definition.tagName = Definition.tagName.map(function (tagName) {\n return tagName.toUpperCase();\n });\n }\n else {\n Definition.tagName = Definition.tagName.toUpperCase();\n }\n var tagNames = Array.isArray(Definition.tagName) ? Definition.tagName : [Definition.tagName];\n tagNames.forEach(function (tag) {\n if (tags[tag] == null || Definition.className == null) {\n tags[tag] = Definition;\n }\n });\n }\n }\n return Definition;\n}\nexports.register = register;\n\n\n/***/ }),\n/* 2 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar diff = __webpack_require__(51);\nvar equal = __webpack_require__(11);\nvar extend = __webpack_require__(3);\nvar op = __webpack_require__(20);\n\n\nvar NULL_CHARACTER = String.fromCharCode(0); // Placeholder char for embed in diff()\n\n\nvar Delta = function (ops) {\n // Assume we are given a well formed ops\n if (Array.isArray(ops)) {\n this.ops = ops;\n } else if (ops != null && Array.isArray(ops.ops)) {\n this.ops = ops.ops;\n } else {\n this.ops = [];\n }\n};\n\n\nDelta.prototype.insert = function (text, attributes) {\n var newOp = {};\n if (text.length === 0) return this;\n newOp.insert = text;\n if (attributes != null && typeof attributes === 'object' && Object.keys(attributes).length > 0) {\n newOp.attributes = attributes;\n }\n return this.push(newOp);\n};\n\nDelta.prototype['delete'] = function (length) {\n if (length <= 0) return this;\n return this.push({ 'delete': length });\n};\n\nDelta.prototype.retain = function (length, attributes) {\n if (length <= 0) return this;\n var newOp = { retain: length };\n if (attributes != null && typeof attributes === 'object' && Object.keys(attributes).length > 0) {\n newOp.attributes = attributes;\n }\n return this.push(newOp);\n};\n\nDelta.prototype.push = function (newOp) {\n var index = this.ops.length;\n var lastOp = this.ops[index - 1];\n newOp = extend(true, {}, newOp);\n if (typeof lastOp === 'object') {\n if (typeof newOp['delete'] === 'number' && typeof lastOp['delete'] === 'number') {\n this.ops[index - 1] = { 'delete': lastOp['delete'] + newOp['delete'] };\n return this;\n }\n // Since it does not matter if we insert before or after deleting at the same index,\n // always prefer to insert first\n if (typeof lastOp['delete'] === 'number' && newOp.insert != null) {\n index -= 1;\n lastOp = this.ops[index - 1];\n if (typeof lastOp !== 'object') {\n this.ops.unshift(newOp);\n return this;\n }\n }\n if (equal(newOp.attributes, lastOp.attributes)) {\n if (typeof newOp.insert === 'string' && typeof lastOp.insert === 'string') {\n this.ops[index - 1] = { insert: lastOp.insert + newOp.insert };\n if (typeof newOp.attributes === 'object') this.ops[index - 1].attributes = newOp.attributes\n return this;\n } else if (typeof newOp.retain === 'number' && typeof lastOp.retain === 'number') {\n this.ops[index - 1] = { retain: lastOp.retain + newOp.retain };\n if (typeof newOp.attributes === 'object') this.ops[index - 1].attributes = newOp.attributes\n return this;\n }\n }\n }\n if (index === this.ops.length) {\n this.ops.push(newOp);\n } else {\n this.ops.splice(index, 0, newOp);\n }\n return this;\n};\n\nDelta.prototype.chop = function () {\n var lastOp = this.ops[this.ops.length - 1];\n if (lastOp && lastOp.retain && !lastOp.attributes) {\n this.ops.pop();\n }\n return this;\n};\n\nDelta.prototype.filter = function (predicate) {\n return this.ops.filter(predicate);\n};\n\nDelta.prototype.forEach = function (predicate) {\n this.ops.forEach(predicate);\n};\n\nDelta.prototype.map = function (predicate) {\n return this.ops.map(predicate);\n};\n\nDelta.prototype.partition = function (predicate) {\n var passed = [], failed = [];\n this.forEach(function(op) {\n var target = predicate(op) ? passed : failed;\n target.push(op);\n });\n return [passed, failed];\n};\n\nDelta.prototype.reduce = function (predicate, initial) {\n return this.ops.reduce(predicate, initial);\n};\n\nDelta.prototype.changeLength = function () {\n return this.reduce(function (length, elem) {\n if (elem.insert) {\n return length + op.length(elem);\n } else if (elem.delete) {\n return length - elem.delete;\n }\n return length;\n }, 0);\n};\n\nDelta.prototype.length = function () {\n return this.reduce(function (length, elem) {\n return length + op.length(elem);\n }, 0);\n};\n\nDelta.prototype.slice = function (start, end) {\n start = start || 0;\n if (typeof end !== 'number') end = Infinity;\n var ops = [];\n var iter = op.iterator(this.ops);\n var index = 0;\n while (index < end && iter.hasNext()) {\n var nextOp;\n if (index < start) {\n nextOp = iter.next(start - index);\n } else {\n nextOp = iter.next(end - index);\n ops.push(nextOp);\n }\n index += op.length(nextOp);\n }\n return new Delta(ops);\n};\n\n\nDelta.prototype.compose = function (other) {\n var thisIter = op.iterator(this.ops);\n var otherIter = op.iterator(other.ops);\n var ops = [];\n var firstOther = otherIter.peek();\n if (firstOther != null && typeof firstOther.retain === 'number' && firstOther.attributes == null) {\n var firstLeft = firstOther.retain;\n while (thisIter.peekType() === 'insert' && thisIter.peekLength() <= firstLeft) {\n firstLeft -= thisIter.peekLength();\n ops.push(thisIter.next());\n }\n if (firstOther.retain - firstLeft > 0) {\n otherIter.next(firstOther.retain - firstLeft);\n }\n }\n var delta = new Delta(ops);\n while (thisIter.hasNext() || otherIter.hasNext()) {\n if (otherIter.peekType() === 'insert') {\n delta.push(otherIter.next());\n } else if (thisIter.peekType() === 'delete') {\n delta.push(thisIter.next());\n } else {\n var length = Math.min(thisIter.peekLength(), otherIter.peekLength());\n var thisOp = thisIter.next(length);\n var otherOp = otherIter.next(length);\n if (typeof otherOp.retain === 'number') {\n var newOp = {};\n if (typeof thisOp.retain === 'number') {\n newOp.retain = length;\n } else {\n newOp.insert = thisOp.insert;\n }\n // Preserve null when composing with a retain, otherwise remove it for inserts\n var attributes = op.attributes.compose(thisOp.attributes, otherOp.attributes, typeof thisOp.retain === 'number');\n if (attributes) newOp.attributes = attributes;\n delta.push(newOp);\n\n // Optimization if rest of other is just retain\n if (!otherIter.hasNext() && equal(delta.ops[delta.ops.length - 1], newOp)) {\n var rest = new Delta(thisIter.rest());\n return delta.concat(rest).chop();\n }\n\n // Other op should be delete, we could be an insert or retain\n // Insert + delete cancels out\n } else if (typeof otherOp['delete'] === 'number' && typeof thisOp.retain === 'number') {\n delta.push(otherOp);\n }\n }\n }\n return delta.chop();\n};\n\nDelta.prototype.concat = function (other) {\n var delta = new Delta(this.ops.slice());\n if (other.ops.length > 0) {\n delta.push(other.ops[0]);\n delta.ops = delta.ops.concat(other.ops.slice(1));\n }\n return delta;\n};\n\nDelta.prototype.diff = function (other, index) {\n if (this.ops === other.ops) {\n return new Delta();\n }\n var strings = [this, other].map(function (delta) {\n return delta.map(function (op) {\n if (op.insert != null) {\n return typeof op.insert === 'string' ? op.insert : NULL_CHARACTER;\n }\n var prep = (delta === other) ? 'on' : 'with';\n throw new Error('diff() called ' + prep + ' non-document');\n }).join('');\n });\n var delta = new Delta();\n var diffResult = diff(strings[0], strings[1], index);\n var thisIter = op.iterator(this.ops);\n var otherIter = op.iterator(other.ops);\n diffResult.forEach(function (component) {\n var length = component[1].length;\n while (length > 0) {\n var opLength = 0;\n switch (component[0]) {\n case diff.INSERT:\n opLength = Math.min(otherIter.peekLength(), length);\n delta.push(otherIter.next(opLength));\n break;\n case diff.DELETE:\n opLength = Math.min(length, thisIter.peekLength());\n thisIter.next(opLength);\n delta['delete'](opLength);\n break;\n case diff.EQUAL:\n opLength = Math.min(thisIter.peekLength(), otherIter.peekLength(), length);\n var thisOp = thisIter.next(opLength);\n var otherOp = otherIter.next(opLength);\n if (equal(thisOp.insert, otherOp.insert)) {\n delta.retain(opLength, op.attributes.diff(thisOp.attributes, otherOp.attributes));\n } else {\n delta.push(otherOp)['delete'](opLength);\n }\n break;\n }\n length -= opLength;\n }\n });\n return delta.chop();\n};\n\nDelta.prototype.eachLine = function (predicate, newline) {\n newline = newline || '\\n';\n var iter = op.iterator(this.ops);\n var line = new Delta();\n var i = 0;\n while (iter.hasNext()) {\n if (iter.peekType() !== 'insert') return;\n var thisOp = iter.peek();\n var start = op.length(thisOp) - iter.peekLength();\n var index = typeof thisOp.insert === 'string' ?\n thisOp.insert.indexOf(newline, start) - start : -1;\n if (index < 0) {\n line.push(iter.next());\n } else if (index > 0) {\n line.push(iter.next(index));\n } else {\n if (predicate(line, iter.next(1).attributes || {}, i) === false) {\n return;\n }\n i += 1;\n line = new Delta();\n }\n }\n if (line.length() > 0) {\n predicate(line, {}, i);\n }\n};\n\nDelta.prototype.transform = function (other, priority) {\n priority = !!priority;\n if (typeof other === 'number') {\n return this.transformPosition(other, priority);\n }\n var thisIter = op.iterator(this.ops);\n var otherIter = op.iterator(other.ops);\n var delta = new Delta();\n while (thisIter.hasNext() || otherIter.hasNext()) {\n if (thisIter.peekType() === 'insert' && (priority || otherIter.peekType() !== 'insert')) {\n delta.retain(op.length(thisIter.next()));\n } else if (otherIter.peekType() === 'insert') {\n delta.push(otherIter.next());\n } else {\n var length = Math.min(thisIter.peekLength(), otherIter.peekLength());\n var thisOp = thisIter.next(length);\n var otherOp = otherIter.next(length);\n if (thisOp['delete']) {\n // Our delete either makes their delete redundant or removes their retain\n continue;\n } else if (otherOp['delete']) {\n delta.push(otherOp);\n } else {\n // We retain either their retain or insert\n delta.retain(length, op.attributes.transform(thisOp.attributes, otherOp.attributes, priority));\n }\n }\n }\n return delta.chop();\n};\n\nDelta.prototype.transformPosition = function (index, priority) {\n priority = !!priority;\n var thisIter = op.iterator(this.ops);\n var offset = 0;\n while (thisIter.hasNext() && offset <= index) {\n var length = thisIter.peekLength();\n var nextType = thisIter.peekType();\n thisIter.next();\n if (nextType === 'delete') {\n index -= Math.min(length, index - offset);\n continue;\n } else if (nextType === 'insert' && (offset < index || !priority)) {\n index += length;\n }\n offset += length;\n }\n return index;\n};\n\n\nmodule.exports = Delta;\n\n\n/***/ }),\n/* 3 */\n/***/ (function(module, exports) {\n\n'use strict';\n\nvar hasOwn = Object.prototype.hasOwnProperty;\nvar toStr = Object.prototype.toString;\nvar defineProperty = Object.defineProperty;\nvar gOPD = Object.getOwnPropertyDescriptor;\n\nvar isArray = function isArray(arr) {\n\tif (typeof Array.isArray === 'function') {\n\t\treturn Array.isArray(arr);\n\t}\n\n\treturn toStr.call(arr) === '[object Array]';\n};\n\nvar isPlainObject = function isPlainObject(obj) {\n\tif (!obj || toStr.call(obj) !== '[object Object]') {\n\t\treturn false;\n\t}\n\n\tvar hasOwnConstructor = hasOwn.call(obj, 'constructor');\n\tvar hasIsPrototypeOf = obj.constructor && obj.constructor.prototype && hasOwn.call(obj.constructor.prototype, 'isPrototypeOf');\n\t// Not own constructor property must be Object\n\tif (obj.constructor && !hasOwnConstructor && !hasIsPrototypeOf) {\n\t\treturn false;\n\t}\n\n\t// Own properties are enumerated firstly, so to speed up,\n\t// if last one is own, then all properties are own.\n\tvar key;\n\tfor (key in obj) { /**/ }\n\n\treturn typeof key === 'undefined' || hasOwn.call(obj, key);\n};\n\n// If name is '__proto__', and Object.defineProperty is available, define __proto__ as an own property on target\nvar setProperty = function setProperty(target, options) {\n\tif (defineProperty && options.name === '__proto__') {\n\t\tdefineProperty(target, options.name, {\n\t\t\tenumerable: true,\n\t\t\tconfigurable: true,\n\t\t\tvalue: options.newValue,\n\t\t\twritable: true\n\t\t});\n\t} else {\n\t\ttarget[options.name] = options.newValue;\n\t}\n};\n\n// Return undefined instead of __proto__ if '__proto__' is not an own property\nvar getProperty = function getProperty(obj, name) {\n\tif (name === '__proto__') {\n\t\tif (!hasOwn.call(obj, name)) {\n\t\t\treturn void 0;\n\t\t} else if (gOPD) {\n\t\t\t// In early versions of node, obj['__proto__'] is buggy when obj has\n\t\t\t// __proto__ as an own property. Object.getOwnPropertyDescriptor() works.\n\t\t\treturn gOPD(obj, name).value;\n\t\t}\n\t}\n\n\treturn obj[name];\n};\n\nmodule.exports = function extend() {\n\tvar options, name, src, copy, copyIsArray, clone;\n\tvar target = arguments[0];\n\tvar i = 1;\n\tvar length = arguments.length;\n\tvar deep = false;\n\n\t// Handle a deep copy situation\n\tif (typeof target === 'boolean') {\n\t\tdeep = target;\n\t\ttarget = arguments[1] || {};\n\t\t// skip the boolean and the target\n\t\ti = 2;\n\t}\n\tif (target == null || (typeof target !== 'object' && typeof target !== 'function')) {\n\t\ttarget = {};\n\t}\n\n\tfor (; i < length; ++i) {\n\t\toptions = arguments[i];\n\t\t// Only deal with non-null/undefined values\n\t\tif (options != null) {\n\t\t\t// Extend the base object\n\t\t\tfor (name in options) {\n\t\t\t\tsrc = getProperty(target, name);\n\t\t\t\tcopy = getProperty(options, name);\n\n\t\t\t\t// Prevent never-ending loop\n\t\t\t\tif (target !== copy) {\n\t\t\t\t\t// Recurse if we're merging plain objects or arrays\n\t\t\t\t\tif (deep && copy && (isPlainObject(copy) || (copyIsArray = isArray(copy)))) {\n\t\t\t\t\t\tif (copyIsArray) {\n\t\t\t\t\t\t\tcopyIsArray = false;\n\t\t\t\t\t\t\tclone = src && isArray(src) ? src : [];\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\tclone = src && isPlainObject(src) ? src : {};\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\t// Never move original objects, clone them\n\t\t\t\t\t\tsetProperty(target, { name: name, newValue: extend(deep, clone, copy) });\n\n\t\t\t\t\t// Don't bring in undefined values\n\t\t\t\t\t} else if (typeof copy !== 'undefined') {\n\t\t\t\t\t\tsetProperty(target, { name: name, newValue: copy });\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t// Return the modified object\n\treturn target;\n};\n\n\n/***/ }),\n/* 4 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = exports.BlockEmbed = exports.bubbleFormats = undefined;\n\nvar _createClass = function () { function 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); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _get = function get(object, property, receiver) { if (object === null) object = Function.prototype; var desc = Object.getOwnPropertyDescriptor(object, property); if (desc === undefined) { var parent = Object.getPrototypeOf(object); if (parent === null) { return undefined; } else { return get(parent, property, receiver); } } else if (\"value\" in desc) { return desc.value; } else { var getter = desc.get; if (getter === undefined) { return undefined; } return getter.call(receiver); } };\n\nvar _extend = __webpack_require__(3);\n\nvar _extend2 = _interopRequireDefault(_extend);\n\nvar _quillDelta = __webpack_require__(2);\n\nvar _quillDelta2 = _interopRequireDefault(_quillDelta);\n\nvar _parchment = __webpack_require__(0);\n\nvar _parchment2 = _interopRequireDefault(_parchment);\n\nvar _break = __webpack_require__(16);\n\nvar _break2 = _interopRequireDefault(_break);\n\nvar _inline = __webpack_require__(6);\n\nvar _inline2 = _interopRequireDefault(_inline);\n\nvar _text = __webpack_require__(7);\n\nvar _text2 = _interopRequireDefault(_text);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar NEWLINE_LENGTH = 1;\n\nvar BlockEmbed = function (_Parchment$Embed) {\n _inherits(BlockEmbed, _Parchment$Embed);\n\n function BlockEmbed() {\n _classCallCheck(this, BlockEmbed);\n\n return _possibleConstructorReturn(this, (BlockEmbed.__proto__ || Object.getPrototypeOf(BlockEmbed)).apply(this, arguments));\n }\n\n _createClass(BlockEmbed, [{\n key: 'attach',\n value: function attach() {\n _get(BlockEmbed.prototype.__proto__ || Object.getPrototypeOf(BlockEmbed.prototype), 'attach', this).call(this);\n this.attributes = new _parchment2.default.Attributor.Store(this.domNode);\n }\n }, {\n key: 'delta',\n value: function delta() {\n return new _quillDelta2.default().insert(this.value(), (0, _extend2.default)(this.formats(), this.attributes.values()));\n }\n }, {\n key: 'format',\n value: function format(name, value) {\n var attribute = _parchment2.default.query(name, _parchment2.default.Scope.BLOCK_ATTRIBUTE);\n if (attribute != null) {\n this.attributes.attribute(attribute, value);\n }\n }\n }, {\n key: 'formatAt',\n value: function formatAt(index, length, name, value) {\n this.format(name, value);\n }\n }, {\n key: 'insertAt',\n value: function insertAt(index, value, def) {\n if (typeof value === 'string' && value.endsWith('\\n')) {\n var block = _parchment2.default.create(Block.blotName);\n this.parent.insertBefore(block, index === 0 ? this : this.next);\n block.insertAt(0, value.slice(0, -1));\n } else {\n _get(BlockEmbed.prototype.__proto__ || Object.getPrototypeOf(BlockEmbed.prototype), 'insertAt', this).call(this, index, value, def);\n }\n }\n }]);\n\n return BlockEmbed;\n}(_parchment2.default.Embed);\n\nBlockEmbed.scope = _parchment2.default.Scope.BLOCK_BLOT;\n// It is important for cursor behavior BlockEmbeds use tags that are block level elements\n\n\nvar Block = function (_Parchment$Block) {\n _inherits(Block, _Parchment$Block);\n\n function Block(domNode) {\n _classCallCheck(this, Block);\n\n var _this2 = _possibleConstructorReturn(this, (Block.__proto__ || Object.getPrototypeOf(Block)).call(this, domNode));\n\n _this2.cache = {};\n return _this2;\n }\n\n _createClass(Block, [{\n key: 'delta',\n value: function delta() {\n if (this.cache.delta == null) {\n this.cache.delta = this.descendants(_parchment2.default.Leaf).reduce(function (delta, leaf) {\n if (leaf.length() === 0) {\n return delta;\n } else {\n return delta.insert(leaf.value(), bubbleFormats(leaf));\n }\n }, new _quillDelta2.default()).insert('\\n', bubbleFormats(this));\n }\n return this.cache.delta;\n }\n }, {\n key: 'deleteAt',\n value: function deleteAt(index, length) {\n _get(Block.prototype.__proto__ || Object.getPrototypeOf(Block.prototype), 'deleteAt', this).call(this, index, length);\n this.cache = {};\n }\n }, {\n key: 'formatAt',\n value: function formatAt(index, length, name, value) {\n if (length <= 0) return;\n if (_parchment2.default.query(name, _parchment2.default.Scope.BLOCK)) {\n if (index + length === this.length()) {\n this.format(name, value);\n }\n } else {\n _get(Block.prototype.__proto__ || Object.getPrototypeOf(Block.prototype), 'formatAt', this).call(this, index, Math.min(length, this.length() - index - 1), name, value);\n }\n this.cache = {};\n }\n }, {\n key: 'insertAt',\n value: function insertAt(index, value, def) {\n if (def != null) return _get(Block.prototype.__proto__ || Object.getPrototypeOf(Block.prototype), 'insertAt', this).call(this, index, value, def);\n if (value.length === 0) return;\n var lines = value.split('\\n');\n var text = lines.shift();\n if (text.length > 0) {\n if (index < this.length() - 1 || this.children.tail == null) {\n _get(Block.prototype.__proto__ || Object.getPrototypeOf(Block.prototype), 'insertAt', this).call(this, Math.min(index, this.length() - 1), text);\n } else {\n this.children.tail.insertAt(this.children.tail.length(), text);\n }\n this.cache = {};\n }\n var block = this;\n lines.reduce(function (index, line) {\n block = block.split(index, true);\n block.insertAt(0, line);\n return line.length;\n }, index + text.length);\n }\n }, {\n key: 'insertBefore',\n value: function insertBefore(blot, ref) {\n var head = this.children.head;\n _get(Block.prototype.__proto__ || Object.getPrototypeOf(Block.prototype), 'insertBefore', this).call(this, blot, ref);\n if (head instanceof _break2.default) {\n head.remove();\n }\n this.cache = {};\n }\n }, {\n key: 'length',\n value: function length() {\n if (this.cache.length == null) {\n this.cache.length = _get(Block.prototype.__proto__ || Object.getPrototypeOf(Block.prototype), 'length', this).call(this) + NEWLINE_LENGTH;\n }\n return this.cache.length;\n }\n }, {\n key: 'moveChildren',\n value: function moveChildren(target, ref) {\n _get(Block.prototype.__proto__ || Object.getPrototypeOf(Block.prototype), 'moveChildren', this).call(this, target, ref);\n this.cache = {};\n }\n }, {\n key: 'optimize',\n value: function optimize(context) {\n _get(Block.prototype.__proto__ || Object.getPrototypeOf(Block.prototype), 'optimize', this).call(this, context);\n this.cache = {};\n }\n }, {\n key: 'path',\n value: function path(index) {\n return _get(Block.prototype.__proto__ || Object.getPrototypeOf(Block.prototype), 'path', this).call(this, index, true);\n }\n }, {\n key: 'removeChild',\n value: function removeChild(child) {\n _get(Block.prototype.__proto__ || Object.getPrototypeOf(Block.prototype), 'removeChild', this).call(this, child);\n this.cache = {};\n }\n }, {\n key: 'split',\n value: function split(index) {\n var force = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\n if (force && (index === 0 || index >= this.length() - NEWLINE_LENGTH)) {\n var clone = this.clone();\n if (index === 0) {\n this.parent.insertBefore(clone, this);\n return this;\n } else {\n this.parent.insertBefore(clone, this.next);\n return clone;\n }\n } else {\n var next = _get(Block.prototype.__proto__ || Object.getPrototypeOf(Block.prototype), 'split', this).call(this, index, force);\n this.cache = {};\n return next;\n }\n }\n }]);\n\n return Block;\n}(_parchment2.default.Block);\n\nBlock.blotName = 'block';\nBlock.tagName = 'P';\nBlock.defaultChild = 'break';\nBlock.allowedChildren = [_inline2.default, _parchment2.default.Embed, _text2.default];\n\nfunction bubbleFormats(blot) {\n var formats = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n if (blot == null) return formats;\n if (typeof blot.formats === 'function') {\n formats = (0, _extend2.default)(formats, blot.formats());\n }\n if (blot.parent == null || blot.parent.blotName == 'scroll' || blot.parent.statics.scope !== blot.statics.scope) {\n return formats;\n }\n return bubbleFormats(blot.parent, formats);\n}\n\nexports.bubbleFormats = bubbleFormats;\nexports.BlockEmbed = BlockEmbed;\nexports.default = Block;\n\n/***/ }),\n/* 5 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = exports.overload = exports.expandConfig = undefined;\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\nvar _slicedToArray = function () { function sliceIterator(arr, i) { var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_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\"]) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; } return function (arr, i) { if (Array.isArray(arr)) { return arr; } else if (Symbol.iterator in Object(arr)) { return sliceIterator(arr, i); } else { throw new TypeError(\"Invalid attempt to destructure non-iterable instance\"); } }; }();\n\nvar _createClass = function () { function 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); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\n__webpack_require__(50);\n\nvar _quillDelta = __webpack_require__(2);\n\nvar _quillDelta2 = _interopRequireDefault(_quillDelta);\n\nvar _editor = __webpack_require__(14);\n\nvar _editor2 = _interopRequireDefault(_editor);\n\nvar _emitter3 = __webpack_require__(8);\n\nvar _emitter4 = _interopRequireDefault(_emitter3);\n\nvar _module = __webpack_require__(9);\n\nvar _module2 = _interopRequireDefault(_module);\n\nvar _parchment = __webpack_require__(0);\n\nvar _parchment2 = _interopRequireDefault(_parchment);\n\nvar _selection = __webpack_require__(15);\n\nvar _selection2 = _interopRequireDefault(_selection);\n\nvar _extend = __webpack_require__(3);\n\nvar _extend2 = _interopRequireDefault(_extend);\n\nvar _logger = __webpack_require__(10);\n\nvar _logger2 = _interopRequireDefault(_logger);\n\nvar _theme = __webpack_require__(34);\n\nvar _theme2 = _interopRequireDefault(_theme);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\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\nvar debug = (0, _logger2.default)('quill');\n\nvar Quill = function () {\n _createClass(Quill, null, [{\n key: 'debug',\n value: function debug(limit) {\n if (limit === true) {\n limit = 'log';\n }\n _logger2.default.level(limit);\n }\n }, {\n key: 'find',\n value: function find(node) {\n return node.__quill || _parchment2.default.find(node);\n }\n }, {\n key: 'import',\n value: function _import(name) {\n if (this.imports[name] == null) {\n debug.error('Cannot import ' + name + '. Are you sure it was registered?');\n }\n return this.imports[name];\n }\n }, {\n key: 'register',\n value: function register(path, target) {\n var _this = this;\n\n var overwrite = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n\n if (typeof path !== 'string') {\n var name = path.attrName || path.blotName;\n if (typeof name === 'string') {\n // register(Blot | Attributor, overwrite)\n this.register('formats/' + name, path, target);\n } else {\n Object.keys(path).forEach(function (key) {\n _this.register(key, path[key], target);\n });\n }\n } else {\n if (this.imports[path] != null && !overwrite) {\n debug.warn('Overwriting ' + path + ' with', target);\n }\n this.imports[path] = target;\n if ((path.startsWith('blots/') || path.startsWith('formats/')) && target.blotName !== 'abstract') {\n _parchment2.default.register(target);\n } else if (path.startsWith('modules') && typeof target.register === 'function') {\n target.register();\n }\n }\n }\n }]);\n\n function Quill(container) {\n var _this2 = this;\n\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n _classCallCheck(this, Quill);\n\n this.options = expandConfig(container, options);\n this.container = this.options.container;\n if (this.container == null) {\n return debug.error('Invalid Quill container', container);\n }\n if (this.options.debug) {\n Quill.debug(this.options.debug);\n }\n var html = this.container.innerHTML.trim();\n this.container.classList.add('ql-container');\n this.container.innerHTML = '';\n this.container.__quill = this;\n this.root = this.addContainer('ql-editor');\n this.root.classList.add('ql-blank');\n this.root.setAttribute('data-gramm', false);\n this.scrollingContainer = this.options.scrollingContainer || this.root;\n this.emitter = new _emitter4.default();\n this.scroll = _parchment2.default.create(this.root, {\n emitter: this.emitter,\n whitelist: this.options.formats\n });\n this.editor = new _editor2.default(this.scroll);\n this.selection = new _selection2.default(this.scroll, this.emitter);\n this.theme = new this.options.theme(this, this.options);\n this.keyboard = this.theme.addModule('keyboard');\n this.clipboard = this.theme.addModule('clipboard');\n this.history = this.theme.addModule('history');\n this.theme.init();\n this.emitter.on(_emitter4.default.events.EDITOR_CHANGE, function (type) {\n if (type === _emitter4.default.events.TEXT_CHANGE) {\n _this2.root.classList.toggle('ql-blank', _this2.editor.isBlank());\n }\n });\n this.emitter.on(_emitter4.default.events.SCROLL_UPDATE, function (source, mutations) {\n var range = _this2.selection.lastRange;\n var index = range && range.length === 0 ? range.index : undefined;\n modify.call(_this2, function () {\n return _this2.editor.update(null, mutations, index);\n }, source);\n });\n var contents = this.clipboard.convert('