[
  {
    "path": ".gitignore",
    "content": "*.DS_Store\n*.pyc\n\nnode_modules\n"
  },
  {
    "path": "Gruntfile.js",
    "content": "  module.exports = function(grunt) {\n\n  grunt.initConfig({\n\n    // AMD definitions\n    autowrap: {\n      amd: {\n        options: {\n          wrapType:'amd'\n        },\n        files: {\n          'dist/phone-format-amd.js': ['dist/phone-format-amd.js']\n        }\n      },\n      exports: {\n        options: {\n          wrapType:'exports'\n        },\n        files: {\n          'dist/phone-format-exports.js': ['dist/phone-format-exports.js']\n        }\n      }\n    },\n\n\n    // Use replace workaround to avoid the following error when running autowrap task\n    // Warning: Parse error on line 48:\n    // ...g.SINGLE_QUOTE_RE_=/'/g;goog.string.NULL...\n    // -----------------------^\n    // Expecting 'REGEXP_BODY', got 'STRING' Use --force to continue.\n    replace: {\n      addWorkaround: {\n        src: ['dist/phone-format-amd.js', 'dist/phone-format-exports.js'],\n        overwrite: true,\n        replacements: [{\n          from: \"/'/g\",\n          to: \"/(')/g\"\n        }]\n      },\n      removeWorkaround: {\n        src: ['dist/phone-format-amd.js', 'dist/phone-format-exports.js'],\n        overwrite: true,\n        replacements: [{\n          from: \"/(')/g\",\n          to: \"/'/g\"\n        }]\n      }\n    },\n\n    // Concat definitions\n    concat: {\n      amd: {\n        src: ['lib/google-libraries.js', 'lib/phone-format-interface.js'],\n        dest: 'dist/phone-format-amd.js'\n      },\n      exports: {\n        src: ['lib/google-libraries.js', 'lib/phone-format-interface.js'],\n        dest: 'dist/phone-format-exports.js'\n      },\n      global: {\n        src: ['lib/global-wrap-start.js', 'dist/phone-format.js', 'lib/global-wrap-end.js'],\n        dest: 'dist/phone-format-global.js'\n      },\n      original: {\n        src: ['lib/google-libraries.js', 'lib/phone-format-interface.js'],\n        dest: 'dist/phone-format.js'\n      }\n    },\n\n    // Minify definitions\n    uglify: {\n      options: {\n        mangle: false,\n        sourceMap: true\n      },\n      amd: {\n        src: ['dist/phone-format-amd.js'],\n        dest: 'dist/phone-format-amd.min.js'\n      },\n      exports: {\n        src: ['dist/phone-format-exports.js'],\n        dest: 'dist/phone-format-exports.min.js'\n      },\n      global: {\n        src: ['dist/phone-format-global.js'],\n        dest: 'dist/phone-format-global.min.js'\n      },\n      original: {\n        src: ['dist/phone-format.js'],\n        dest: 'dist/phone-format.min.js'\n      }\n    },\n\n    copy: {\n      main: {\n        src: 'dist/phone-format-amd.js',\n        dest: 'tests/phone-format-amd.js',\n      }\n    }\n\n  });\n\n  grunt.loadNpmTasks('grunt-autowrap');\n  grunt.loadNpmTasks('grunt-contrib-concat');\n  grunt.loadNpmTasks('grunt-contrib-uglify');\n  grunt.loadNpmTasks('grunt-text-replace');\n  grunt.loadNpmTasks('grunt-contrib-copy');\n\n  grunt.registerTask('default', [\n    'concat',\n    'replace:addWorkaround', // Workaroung to avoid autowrap Parse error\n    'autowrap',\n    'replace:removeWorkaround', // Workaroung to avoid autowrap Parse error\n    'uglify',\n    'copy'\n  ]);\n\n};\n"
  },
  {
    "path": "LICENSE",
    "content": "The MIT License (MIT)\n\nCopyright (c) 2017 Matti Salokangas\n\nPermission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the \"Software\"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:\n\nThe above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\n"
  },
  {
    "path": "README.md",
    "content": "# PhoneFormat.js\n\n#### A javascript phone formatter\n\n## Install\n\n### via Bower\n`bower install phoneformat.js`\n\n### via NPM\n`npm install phoneformat.js`\n\nAll files for usage are in the /dist directory.\n\n- **Amd**:\n  - phone-format-amd.js or phone-format-amd.min.js\n- **Exports**:\n  - phone-format-exports.js or phone-format-amd.min.js\n- **Global**:\n  - phone-format-global.js or phone-format-global.min.js\n- **Original Blend**:\n  - phone-format.js or phone-format.min.js\n\n## API\n\n| Function                     \t| Parameters                                 \t| Example                                                                  \t|   \t|   \t|\n|------------------------------\t|--------------------------------------------\t|--------------------------------------------------------------------------\t|---\t|---\t|\n| countryForE164Number         \t| phoneNumber : string                       \t| phoneFormat.countryForE164Number(validInternationalPhoneNumber);         \t|   \t|   \t|\n| formatNumberForMobileDialing \t| countryCode : string, phoneNumber : string \t| phoneFormat.formatNumberForMobileDialing(countryCode, validPhoneNumber); \t|   \t|   \t|\n| isValidNumber                \t| phoneNumber : string, countryCode : string \t| phoneFormat.isValidNumber(validPhoneNumber, countryCode);                \t|   \t|   \t|\n| formatE164                   \t| countryCode: string, phoneNumber : string  \t| phoneFormat.formatE164(countryCode, validPhoneNumber);                   \t|   \t|   \t|\n| formatInternational          \t| countryCode : string, phoneNumber : string \t| phoneFormat.formatInternational(countryCode, validPhoneNumber);          \t|   \t|   \t|\n| formatLocal                  \t| countryCode : string, phoneNumber : string \t| phoneFormat.formatLocal(countryCode, validPhoneNumber);                  \t|   \t|   \t|\n| exampleLandlineNumber        \t| countryCode : string                       \t| phoneFormat.exampleLandlineNumber(countryCode);                          \t|   \t|   \t|\n| exampleMobileNumber          \t| countryCode : string                       \t| phoneFormat.exampleMobileNumber(countryCode);                            \t|   \t|   \t|\n| cleanPhone                   \t| phoneNumber : string                       \t| phoneFormat.cleanPhone(validPhoneNumber);                                \t|   \t|   \t|\n| countryCodeToName            \t| countryCode : string                       \t| phoneFormat.countryCodeToName(countryCode);                              \t|   \t|   \t|\n\n\n## FAQ\n\n**Is PhoneFormat.js in sync with the latest libphonenumber?**\n\nMore often then not PhoneFormat.js will NOT be using the [latest version](https://code.google.com/p/libphonenumber/source/browse/#svn%2Ftrunk%2Fjavascript%2Fi18n%2Fphonenumbers) of libphonenumber.\n\nIt was last synced v8.10.6\n\nIf this is causing you any headaches, please follow the instructions below to update the source files in /lib.\n\n  * Step 1\n\n    * Copy to your clipboard, the contents of [closure.txt](https://github.com/albeebe/phoneformat.js/blob/master/closure.txt) at the top of this page\n\n  * Step 2\n\n    * Go to Googles [Closure Compiler Service](http://closure-compiler.appspot.com/home)\n\n  * Step 3\n\n    * Paste the contents of [closure.txt](https://github.com/albeebe/phoneformat.js/blob/master/closure.txt) into the big textarea on the left side of the screen under the **Compile** button.\n    * Make sure you delete whatever text is already the textarea!\n    * After you've pasted it press the **Compile** button\n    * If everything works correctly, on the right side of the screen will be a freshly compiled google-libraries.js\n\n  * Step 4\n\n    * Update `lib/google-libraries.js` with the compiled libraries from the compiler service.\n    * Run `npm run build`\n    * Commit your change, push it up and submit a pull request.\n    * Thank you!\n\n## Questions?\n\n* [@sturdynut](http://twitter.com/sturdynut)\n* [@albeebe](http://twitter.com/albeebe)\n\n\nThis project was created by [@albeebe](http://twitter.com/albeebe).\n"
  },
  {
    "path": "bower.json",
    "content": "{\n  \"name\": \"phoneformat\",\n  \"main\": \"./dist/phone-format.js\",\n  \"version\": \"1.0.9\",\n  \"homepage\": \"https://github.com/albeebe/phoneformat.js\",\n  \"authors\": [\n    \"Al Cheetah\",\n    \"Matti Salokangas <matti.salokangas@gmail.com>\"\n  ],\n  \"description\": \"Javascript phone number formatter based on libphonenumber.\",\n  \"moduleType\": [\n    \"amd\",\n    \"globals\",\n    \"node\"\n  ],\n  \"keywords\": [\n    \"PhoneFormatter\",\n    \"PhoneValidator\"\n  ],\n  \"license\": \"MIT\",\n  \"ignore\": [\n    \"**/.*\",\n    \"node_modules\",\n    \"bower_components\",\n    \"test\",\n    \"tests\"\n  ]\n}\n"
  },
  {
    "path": "closure.txt",
    "content": "// ==ClosureCompiler==\n// @compilation_level SIMPLE_OPTIMIZATIONS\n// @output_file_name phoneformat.js\n// @use_closure_library true\n// @code_url https://raw.githubusercontent.com/googlei18n/libphonenumber/master/javascript/i18n/phonenumbers/asyoutypeformatter.js\n// @code_url https://raw.githubusercontent.com/googlei18n/libphonenumber/master/javascript/i18n/phonenumbers/phonenumberutil.js\n// @code_url https://raw.githubusercontent.com/googlei18n/libphonenumber/master/javascript/i18n/phonenumbers/regioncodefortesting.js\n// @code_url https://raw.githubusercontent.com/googlei18n/libphonenumber/master/javascript/i18n/phonenumbers/phonemetadata.pb.js\n// @code_url https://raw.githubusercontent.com/googlei18n/libphonenumber/master/javascript/i18n/phonenumbers/metadata.js\n// @code_url https://raw.githubusercontent.com/googlei18n/libphonenumber/master/javascript/i18n/phonenumbers/phonenumber.pb.js\n// @formatting pretty_print\n// ==/ClosureCompiler==\n\ngoog.require('goog.dom');\ngoog.require('goog.json');\ngoog.require('goog.proto2.ObjectSerializer');\ngoog.require('goog.string.StringBuffer');\ngoog.require('i18n.phonenumbers.AsYouTypeFormatter');\ngoog.require('i18n.phonenumbers.PhoneNumberFormat');\ngoog.require('i18n.phonenumbers.PhoneNumberType');\ngoog.require('i18n.phonenumbers.PhoneNumberUtil');\ngoog.require('i18n.phonenumbers.PhoneNumberUtil.ValidationResult');\n"
  },
  {
    "path": "dist/phone-format-amd.js",
    "content": "define(function(require, exports, module){\nvar COMPILED = !0, goog = goog || {};\ngoog.global = this || self;\ngoog.isDef = function(a) {\n  return void 0 !== a;\n};\ngoog.isString = function(a) {\n  return \"string\" == typeof a;\n};\ngoog.isBoolean = function(a) {\n  return \"boolean\" == typeof a;\n};\ngoog.isNumber = function(a) {\n  return \"number\" == typeof a;\n};\ngoog.exportPath_ = function(a, b, c) {\n  a = a.split(\".\");\n  c = c || goog.global;\n  a[0] in c || \"undefined\" == typeof c.execScript || c.execScript(\"var \" + a[0]);\n  for (var d; a.length && (d = a.shift());) {\n    a.length || void 0 === b ? c = c[d] && c[d] !== Object.prototype[d] ? c[d] : c[d] = {} : c[d] = b;\n  }\n};\ngoog.define = function(a, b) {\n  var c = b;\n  if (!COMPILED) {\n    var d = goog.global.CLOSURE_UNCOMPILED_DEFINES, e = goog.global.CLOSURE_DEFINES;\n    d && void 0 === d.nodeType && Object.prototype.hasOwnProperty.call(d, a) ? c = d[a] : e && void 0 === e.nodeType && Object.prototype.hasOwnProperty.call(e, a) && (c = e[a]);\n  }\n  return c;\n};\ngoog.FEATURESET_YEAR = 2012;\ngoog.DEBUG = !0;\ngoog.LOCALE = \"en\";\ngoog.TRUSTED_SITE = !0;\ngoog.STRICT_MODE_COMPATIBLE = !1;\ngoog.DISALLOW_TEST_ONLY_CODE = COMPILED && !goog.DEBUG;\ngoog.ENABLE_CHROME_APP_SAFE_SCRIPT_LOADING = !1;\ngoog.provide = function(a) {\n  if (goog.isInModuleLoader_()) {\n    throw Error(\"goog.provide cannot be used within a module.\");\n  }\n  if (!COMPILED && goog.isProvided_(a)) {\n    throw Error('Namespace \"' + a + '\" already declared.');\n  }\n  goog.constructNamespace_(a);\n};\ngoog.constructNamespace_ = function(a, b) {\n  if (!COMPILED) {\n    delete goog.implicitNamespaces_[a];\n    for (var c = a; (c = c.substring(0, c.lastIndexOf(\".\"))) && !goog.getObjectByName(c);) {\n      goog.implicitNamespaces_[c] = !0;\n    }\n  }\n  goog.exportPath_(a, b);\n};\ngoog.getScriptNonce = function(a) {\n  if (a && a != goog.global) {\n    return goog.getScriptNonce_(a.document);\n  }\n  null === goog.cspNonce_ && (goog.cspNonce_ = goog.getScriptNonce_(goog.global.document));\n  return goog.cspNonce_;\n};\ngoog.NONCE_PATTERN_ = /^[\\w+/_-]+[=]{0,2}$/;\ngoog.cspNonce_ = null;\ngoog.getScriptNonce_ = function(a) {\n  return (a = a.querySelector && a.querySelector(\"script[nonce]\")) && (a = a.nonce || a.getAttribute(\"nonce\")) && goog.NONCE_PATTERN_.test(a) ? a : \"\";\n};\ngoog.VALID_MODULE_RE_ = /^[a-zA-Z_$][a-zA-Z0-9._$]*$/;\ngoog.module = function(a) {\n  if (\"string\" !== typeof a || !a || -1 == a.search(goog.VALID_MODULE_RE_)) {\n    throw Error(\"Invalid module identifier\");\n  }\n  if (!goog.isInGoogModuleLoader_()) {\n    throw Error(\"Module \" + a + \" has been loaded incorrectly. Note, modules cannot be loaded as normal scripts. They require some kind of pre-processing step. You're likely trying to load a module via a script tag or as a part of a concatenated bundle without rewriting the module. For more info see: https://github.com/google/closure-library/wiki/goog.module:-an-ES6-module-like-alternative-to-goog.provide.\");\n  }\n  if (goog.moduleLoaderState_.moduleName) {\n    throw Error(\"goog.module may only be called once per module.\");\n  }\n  goog.moduleLoaderState_.moduleName = a;\n  if (!COMPILED) {\n    if (goog.isProvided_(a)) {\n      throw Error('Namespace \"' + a + '\" already declared.');\n    }\n    delete goog.implicitNamespaces_[a];\n  }\n};\ngoog.module.get = function(a) {\n  return goog.module.getInternal_(a);\n};\ngoog.module.getInternal_ = function(a) {\n  if (!COMPILED) {\n    if (a in goog.loadedModules_) {\n      return goog.loadedModules_[a].exports;\n    }\n    if (!goog.implicitNamespaces_[a]) {\n      return a = goog.getObjectByName(a), null != a ? a : null;\n    }\n  }\n  return null;\n};\ngoog.ModuleType = {ES6:\"es6\", GOOG:\"goog\"};\ngoog.moduleLoaderState_ = null;\ngoog.isInModuleLoader_ = function() {\n  return goog.isInGoogModuleLoader_() || goog.isInEs6ModuleLoader_();\n};\ngoog.isInGoogModuleLoader_ = function() {\n  return !!goog.moduleLoaderState_ && goog.moduleLoaderState_.type == goog.ModuleType.GOOG;\n};\ngoog.isInEs6ModuleLoader_ = function() {\n  if (goog.moduleLoaderState_ && goog.moduleLoaderState_.type == goog.ModuleType.ES6) {\n    return !0;\n  }\n  var a = goog.global.$jscomp;\n  return a ? \"function\" != typeof a.getCurrentModulePath ? !1 : !!a.getCurrentModulePath() : !1;\n};\ngoog.module.declareLegacyNamespace = function() {\n  if (!COMPILED && !goog.isInGoogModuleLoader_()) {\n    throw Error(\"goog.module.declareLegacyNamespace must be called from within a goog.module\");\n  }\n  if (!COMPILED && !goog.moduleLoaderState_.moduleName) {\n    throw Error(\"goog.module must be called prior to goog.module.declareLegacyNamespace.\");\n  }\n  goog.moduleLoaderState_.declareLegacyNamespace = !0;\n};\ngoog.declareModuleId = function(a) {\n  if (!COMPILED) {\n    if (!goog.isInEs6ModuleLoader_()) {\n      throw Error(\"goog.declareModuleId may only be called from within an ES6 module\");\n    }\n    if (goog.moduleLoaderState_ && goog.moduleLoaderState_.moduleName) {\n      throw Error(\"goog.declareModuleId may only be called once per module.\");\n    }\n    if (a in goog.loadedModules_) {\n      throw Error('Module with namespace \"' + a + '\" already exists.');\n    }\n  }\n  if (goog.moduleLoaderState_) {\n    goog.moduleLoaderState_.moduleName = a;\n  } else {\n    var b = goog.global.$jscomp;\n    if (!b || \"function\" != typeof b.getCurrentModulePath) {\n      throw Error('Module with namespace \"' + a + '\" has been loaded incorrectly.');\n    }\n    b = b.require(b.getCurrentModulePath());\n    goog.loadedModules_[a] = {exports:b, type:goog.ModuleType.ES6, moduleId:a};\n  }\n};\ngoog.setTestOnly = function(a) {\n  if (goog.DISALLOW_TEST_ONLY_CODE) {\n    throw a = a || \"\", Error(\"Importing test-only code into non-debug environment\" + (a ? \": \" + a : \".\"));\n  }\n};\ngoog.forwardDeclare = function(a) {\n};\nCOMPILED || (goog.isProvided_ = function(a) {\n  return a in goog.loadedModules_ || !goog.implicitNamespaces_[a] && null != goog.getObjectByName(a);\n}, goog.implicitNamespaces_ = {\"goog.module\":!0});\ngoog.getObjectByName = function(a, b) {\n  for (var c = a.split(\".\"), d = b || goog.global, e = 0; e < c.length; e++) {\n    if (d = d[c[e]], null == d) {\n      return null;\n    }\n  }\n  return d;\n};\ngoog.globalize = function(a, b) {\n  var c = b || goog.global, d;\n  for (d in a) {\n    c[d] = a[d];\n  }\n};\ngoog.addDependency = function(a, b, c, d) {\n  !COMPILED && goog.DEPENDENCIES_ENABLED && goog.debugLoader_.addDependency(a, b, c, d);\n};\ngoog.ENABLE_DEBUG_LOADER = !0;\ngoog.logToConsole_ = function(a) {\n  goog.global.console && goog.global.console.error(a);\n};\ngoog.require = function(a) {\n  if (!COMPILED) {\n    goog.ENABLE_DEBUG_LOADER && goog.debugLoader_.requested(a);\n    if (goog.isProvided_(a)) {\n      if (goog.isInModuleLoader_()) {\n        return goog.module.getInternal_(a);\n      }\n    } else {\n      if (goog.ENABLE_DEBUG_LOADER) {\n        var b = goog.moduleLoaderState_;\n        goog.moduleLoaderState_ = null;\n        try {\n          goog.debugLoader_.load_(a);\n        } finally {\n          goog.moduleLoaderState_ = b;\n        }\n      }\n    }\n    return null;\n  }\n};\ngoog.requireType = function(a) {\n  return {};\n};\ngoog.basePath = \"\";\ngoog.nullFunction = function() {\n};\ngoog.abstractMethod = function() {\n  throw Error(\"unimplemented abstract method\");\n};\ngoog.addSingletonGetter = function(a) {\n  a.instance_ = void 0;\n  a.getInstance = function() {\n    if (a.instance_) {\n      return a.instance_;\n    }\n    goog.DEBUG && (goog.instantiatedSingletons_[goog.instantiatedSingletons_.length] = a);\n    return a.instance_ = new a;\n  };\n};\ngoog.instantiatedSingletons_ = [];\ngoog.LOAD_MODULE_USING_EVAL = !0;\ngoog.SEAL_MODULE_EXPORTS = goog.DEBUG;\ngoog.loadedModules_ = {};\ngoog.DEPENDENCIES_ENABLED = !COMPILED && goog.ENABLE_DEBUG_LOADER;\ngoog.TRANSPILE = \"detect\";\ngoog.ASSUME_ES_MODULES_TRANSPILED = !1;\ngoog.TRANSPILE_TO_LANGUAGE = \"\";\ngoog.TRANSPILER = \"transpile.js\";\ngoog.hasBadLetScoping = null;\ngoog.useSafari10Workaround = function() {\n  if (null == goog.hasBadLetScoping) {\n    try {\n      var a = !eval('\"use strict\";let x = 1; function f() { return typeof x; };f() == \"number\";');\n    } catch (b) {\n      a = !1;\n    }\n    goog.hasBadLetScoping = a;\n  }\n  return goog.hasBadLetScoping;\n};\ngoog.workaroundSafari10EvalBug = function(a) {\n  return \"(function(){\" + a + \"\\n;})();\\n\";\n};\ngoog.loadModule = function(a) {\n  var b = goog.moduleLoaderState_;\n  try {\n    goog.moduleLoaderState_ = {moduleName:\"\", declareLegacyNamespace:!1, type:goog.ModuleType.GOOG};\n    if (goog.isFunction(a)) {\n      var c = a.call(void 0, {});\n    } else {\n      if (\"string\" === typeof a) {\n        goog.useSafari10Workaround() && (a = goog.workaroundSafari10EvalBug(a)), c = goog.loadModuleFromSource_.call(void 0, a);\n      } else {\n        throw Error(\"Invalid module definition\");\n      }\n    }\n    var d = goog.moduleLoaderState_.moduleName;\n    if (\"string\" === typeof d && d) {\n      goog.moduleLoaderState_.declareLegacyNamespace ? goog.constructNamespace_(d, c) : goog.SEAL_MODULE_EXPORTS && Object.seal && \"object\" == typeof c && null != c && Object.seal(c), goog.loadedModules_[d] = {exports:c, type:goog.ModuleType.GOOG, moduleId:goog.moduleLoaderState_.moduleName};\n    } else {\n      throw Error('Invalid module name \"' + d + '\"');\n    }\n  } finally {\n    goog.moduleLoaderState_ = b;\n  }\n};\ngoog.loadModuleFromSource_ = function(a) {\n  eval(a);\n  return {};\n};\ngoog.normalizePath_ = function(a) {\n  a = a.split(\"/\");\n  for (var b = 0; b < a.length;) {\n    \".\" == a[b] ? a.splice(b, 1) : b && \"..\" == a[b] && a[b - 1] && \"..\" != a[b - 1] ? a.splice(--b, 2) : b++;\n  }\n  return a.join(\"/\");\n};\ngoog.loadFileSync_ = function(a) {\n  if (goog.global.CLOSURE_LOAD_FILE_SYNC) {\n    return goog.global.CLOSURE_LOAD_FILE_SYNC(a);\n  }\n  try {\n    var b = new goog.global.XMLHttpRequest;\n    b.open(\"get\", a, !1);\n    b.send();\n    return 0 == b.status || 200 == b.status ? b.responseText : null;\n  } catch (c) {\n    return null;\n  }\n};\ngoog.transpile_ = function(a, b, c) {\n  var d = goog.global.$jscomp;\n  d || (goog.global.$jscomp = d = {});\n  var e = d.transpile;\n  if (!e) {\n    var f = goog.basePath + goog.TRANSPILER, g = goog.loadFileSync_(f);\n    if (g) {\n      (function() {\n        (0,eval)(g + \"\\n//# sourceURL=\" + f);\n      }).call(goog.global);\n      if (goog.global.$gwtExport && goog.global.$gwtExport.$jscomp && !goog.global.$gwtExport.$jscomp.transpile) {\n        throw Error('The transpiler did not properly export the \"transpile\" method. $gwtExport: ' + JSON.stringify(goog.global.$gwtExport));\n      }\n      goog.global.$jscomp.transpile = goog.global.$gwtExport.$jscomp.transpile;\n      d = goog.global.$jscomp;\n      e = d.transpile;\n    }\n  }\n  e || (e = d.transpile = function(a, b) {\n    goog.logToConsole_(b + \" requires transpilation but no transpiler was found.\");\n    return a;\n  });\n  return e(a, b, c);\n};\ngoog.typeOf = function(a) {\n  var b = typeof a;\n  if (\"object\" == b) {\n    if (a) {\n      if (a instanceof Array) {\n        return \"array\";\n      }\n      if (a instanceof Object) {\n        return b;\n      }\n      var c = Object.prototype.toString.call(a);\n      if (\"[object Window]\" == c) {\n        return \"object\";\n      }\n      if (\"[object Array]\" == c || \"number\" == typeof a.length && \"undefined\" != typeof a.splice && \"undefined\" != typeof a.propertyIsEnumerable && !a.propertyIsEnumerable(\"splice\")) {\n        return \"array\";\n      }\n      if (\"[object Function]\" == c || \"undefined\" != typeof a.call && \"undefined\" != typeof a.propertyIsEnumerable && !a.propertyIsEnumerable(\"call\")) {\n        return \"function\";\n      }\n    } else {\n      return \"null\";\n    }\n  } else {\n    if (\"function\" == b && \"undefined\" == typeof a.call) {\n      return \"object\";\n    }\n  }\n  return b;\n};\ngoog.isNull = function(a) {\n  return null === a;\n};\ngoog.isDefAndNotNull = function(a) {\n  return null != a;\n};\ngoog.isArray = function(a) {\n  return \"array\" == goog.typeOf(a);\n};\ngoog.isArrayLike = function(a) {\n  var b = goog.typeOf(a);\n  return \"array\" == b || \"object\" == b && \"number\" == typeof a.length;\n};\ngoog.isDateLike = function(a) {\n  return goog.isObject(a) && \"function\" == typeof a.getFullYear;\n};\ngoog.isFunction = function(a) {\n  return \"function\" == goog.typeOf(a);\n};\ngoog.isObject = function(a) {\n  var b = typeof a;\n  return \"object\" == b && null != a || \"function\" == b;\n};\ngoog.getUid = function(a) {\n  return a[goog.UID_PROPERTY_] || (a[goog.UID_PROPERTY_] = ++goog.uidCounter_);\n};\ngoog.hasUid = function(a) {\n  return !!a[goog.UID_PROPERTY_];\n};\ngoog.removeUid = function(a) {\n  null !== a && \"removeAttribute\" in a && a.removeAttribute(goog.UID_PROPERTY_);\n  try {\n    delete a[goog.UID_PROPERTY_];\n  } catch (b) {\n  }\n};\ngoog.UID_PROPERTY_ = \"closure_uid_\" + (1e9 * Math.random() >>> 0);\ngoog.uidCounter_ = 0;\ngoog.getHashCode = goog.getUid;\ngoog.removeHashCode = goog.removeUid;\ngoog.cloneObject = function(a) {\n  var b = goog.typeOf(a);\n  if (\"object\" == b || \"array\" == b) {\n    if (\"function\" === typeof a.clone) {\n      return a.clone();\n    }\n    b = \"array\" == b ? [] : {};\n    for (var c in a) {\n      b[c] = goog.cloneObject(a[c]);\n    }\n    return b;\n  }\n  return a;\n};\ngoog.bindNative_ = function(a, b, c) {\n  return a.call.apply(a.bind, arguments);\n};\ngoog.bindJs_ = function(a, b, c) {\n  if (!a) {\n    throw Error();\n  }\n  if (2 < arguments.length) {\n    var d = Array.prototype.slice.call(arguments, 2);\n    return function() {\n      var c = Array.prototype.slice.call(arguments);\n      Array.prototype.unshift.apply(c, d);\n      return a.apply(b, c);\n    };\n  }\n  return function() {\n    return a.apply(b, arguments);\n  };\n};\ngoog.bind = function(a, b, c) {\n  Function.prototype.bind && -1 != Function.prototype.bind.toString().indexOf(\"native code\") ? goog.bind = goog.bindNative_ : goog.bind = goog.bindJs_;\n  return goog.bind.apply(null, arguments);\n};\ngoog.partial = function(a, b) {\n  var c = Array.prototype.slice.call(arguments, 1);\n  return function() {\n    var b = c.slice();\n    b.push.apply(b, arguments);\n    return a.apply(this, b);\n  };\n};\ngoog.mixin = function(a, b) {\n  for (var c in b) {\n    a[c] = b[c];\n  }\n};\ngoog.now = goog.TRUSTED_SITE && Date.now || function() {\n  return +new Date;\n};\ngoog.globalEval = function(a) {\n  if (goog.global.execScript) {\n    goog.global.execScript(a, \"JavaScript\");\n  } else {\n    if (goog.global.eval) {\n      if (null == goog.evalWorksForGlobals_) {\n        try {\n          goog.global.eval(\"var _evalTest_ = 1;\");\n        } catch (d) {\n        }\n        if (\"undefined\" != typeof goog.global._evalTest_) {\n          try {\n            delete goog.global._evalTest_;\n          } catch (d) {\n          }\n          goog.evalWorksForGlobals_ = !0;\n        } else {\n          goog.evalWorksForGlobals_ = !1;\n        }\n      }\n      if (goog.evalWorksForGlobals_) {\n        goog.global.eval(a);\n      } else {\n        var b = goog.global.document, c = b.createElement(\"script\");\n        c.type = \"text/javascript\";\n        c.defer = !1;\n        c.appendChild(b.createTextNode(a));\n        b.head.appendChild(c);\n        b.head.removeChild(c);\n      }\n    } else {\n      throw Error(\"goog.globalEval not available\");\n    }\n  }\n};\ngoog.evalWorksForGlobals_ = null;\ngoog.getCssName = function(a, b) {\n  if (\".\" == String(a).charAt(0)) {\n    throw Error('className passed in goog.getCssName must not start with \".\". You passed: ' + a);\n  }\n  var c = function(a) {\n    return goog.cssNameMapping_[a] || a;\n  }, d = function(a) {\n    a = a.split(\"-\");\n    for (var b = [], d = 0; d < a.length; d++) {\n      b.push(c(a[d]));\n    }\n    return b.join(\"-\");\n  };\n  d = goog.cssNameMapping_ ? \"BY_WHOLE\" == goog.cssNameMappingStyle_ ? c : d : function(a) {\n    return a;\n  };\n  d = b ? a + \"-\" + d(b) : d(a);\n  return goog.global.CLOSURE_CSS_NAME_MAP_FN ? goog.global.CLOSURE_CSS_NAME_MAP_FN(d) : d;\n};\ngoog.setCssNameMapping = function(a, b) {\n  goog.cssNameMapping_ = a;\n  goog.cssNameMappingStyle_ = b;\n};\n!COMPILED && goog.global.CLOSURE_CSS_NAME_MAPPING && (goog.cssNameMapping_ = goog.global.CLOSURE_CSS_NAME_MAPPING);\ngoog.getMsg = function(a, b, c) {\n  c && c.html && (a = a.replace(/</g, \"&lt;\"));\n  b && (a = a.replace(/\\{\\$([^}]+)}/g, function(a, c) {\n    return null != b && c in b ? b[c] : a;\n  }));\n  return a;\n};\ngoog.getMsgWithFallback = function(a, b) {\n  return a;\n};\ngoog.exportSymbol = function(a, b, c) {\n  goog.exportPath_(a, b, c);\n};\ngoog.exportProperty = function(a, b, c) {\n  a[b] = c;\n};\ngoog.inherits = function(a, b) {\n  function c() {\n  }\n  c.prototype = b.prototype;\n  a.superClass_ = b.prototype;\n  a.prototype = new c;\n  a.prototype.constructor = a;\n  a.base = function(a, c, f) {\n    for (var d = Array(arguments.length - 2), e = 2; e < arguments.length; e++) {\n      d[e - 2] = arguments[e];\n    }\n    return b.prototype[c].apply(a, d);\n  };\n};\ngoog.base = function(a, b, c) {\n  var d = arguments.callee.caller;\n  if (goog.STRICT_MODE_COMPATIBLE || goog.DEBUG && !d) {\n    throw Error(\"arguments.caller not defined.  goog.base() cannot be used with strict mode code. See http://www.ecma-international.org/ecma-262/5.1/#sec-C\");\n  }\n  if (\"undefined\" !== typeof d.superClass_) {\n    for (var e = Array(arguments.length - 1), f = 1; f < arguments.length; f++) {\n      e[f - 1] = arguments[f];\n    }\n    return d.superClass_.constructor.apply(a, e);\n  }\n  if (\"string\" != typeof b && \"symbol\" != typeof b) {\n    throw Error(\"method names provided to goog.base must be a string or a symbol\");\n  }\n  e = Array(arguments.length - 2);\n  for (f = 2; f < arguments.length; f++) {\n    e[f - 2] = arguments[f];\n  }\n  f = !1;\n  for (var g = a.constructor.prototype; g; g = Object.getPrototypeOf(g)) {\n    if (g[b] === d) {\n      f = !0;\n    } else {\n      if (f) {\n        return g[b].apply(a, e);\n      }\n    }\n  }\n  if (a[b] === d) {\n    return a.constructor.prototype[b].apply(a, e);\n  }\n  throw Error(\"goog.base called from a method of one name to a method of a different name\");\n};\ngoog.scope = function(a) {\n  if (goog.isInModuleLoader_()) {\n    throw Error(\"goog.scope is not supported within a module.\");\n  }\n  a.call(goog.global);\n};\nCOMPILED || (goog.global.COMPILED = COMPILED);\ngoog.defineClass = function(a, b) {\n  var c = b.constructor, d = b.statics;\n  c && c != Object.prototype.constructor || (c = function() {\n    throw Error(\"cannot instantiate an interface (no constructor defined).\");\n  });\n  c = goog.defineClass.createSealingConstructor_(c, a);\n  a && goog.inherits(c, a);\n  delete b.constructor;\n  delete b.statics;\n  goog.defineClass.applyProperties_(c.prototype, b);\n  null != d && (d instanceof Function ? d(c) : goog.defineClass.applyProperties_(c, d));\n  return c;\n};\ngoog.defineClass.SEAL_CLASS_INSTANCES = goog.DEBUG;\ngoog.defineClass.createSealingConstructor_ = function(a, b) {\n  if (!goog.defineClass.SEAL_CLASS_INSTANCES) {\n    return a;\n  }\n  var c = !goog.defineClass.isUnsealable_(b), d = function() {\n    var b = a.apply(this, arguments) || this;\n    b[goog.UID_PROPERTY_] = b[goog.UID_PROPERTY_];\n    this.constructor === d && c && Object.seal instanceof Function && Object.seal(b);\n    return b;\n  };\n  return d;\n};\ngoog.defineClass.isUnsealable_ = function(a) {\n  return a && a.prototype && a.prototype[goog.UNSEALABLE_CONSTRUCTOR_PROPERTY_];\n};\ngoog.defineClass.OBJECT_PROTOTYPE_FIELDS_ = \"constructor hasOwnProperty isPrototypeOf propertyIsEnumerable toLocaleString toString valueOf\".split(\" \");\ngoog.defineClass.applyProperties_ = function(a, b) {\n  for (var c in b) {\n    Object.prototype.hasOwnProperty.call(b, c) && (a[c] = b[c]);\n  }\n  for (var d = 0; d < goog.defineClass.OBJECT_PROTOTYPE_FIELDS_.length; d++) {\n    c = goog.defineClass.OBJECT_PROTOTYPE_FIELDS_[d], Object.prototype.hasOwnProperty.call(b, c) && (a[c] = b[c]);\n  }\n};\ngoog.tagUnsealableClass = function(a) {\n  !COMPILED && goog.defineClass.SEAL_CLASS_INSTANCES && (a.prototype[goog.UNSEALABLE_CONSTRUCTOR_PROPERTY_] = !0);\n};\ngoog.UNSEALABLE_CONSTRUCTOR_PROPERTY_ = \"goog_defineClass_legacy_unsealable\";\n!COMPILED && goog.DEPENDENCIES_ENABLED && (goog.inHtmlDocument_ = function() {\n  var a = goog.global.document;\n  return null != a && \"write\" in a;\n}, goog.isDocumentLoading_ = function() {\n  var a = goog.global.document;\n  return a.attachEvent ? \"complete\" != a.readyState : \"loading\" == a.readyState;\n}, goog.findBasePath_ = function() {\n  if (void 0 != goog.global.CLOSURE_BASE_PATH && \"string\" === typeof goog.global.CLOSURE_BASE_PATH) {\n    goog.basePath = goog.global.CLOSURE_BASE_PATH;\n  } else {\n    if (goog.inHtmlDocument_()) {\n      var a = goog.global.document, b = a.currentScript;\n      a = b ? [b] : a.getElementsByTagName(\"SCRIPT\");\n      for (b = a.length - 1; 0 <= b; --b) {\n        var c = a[b].src, d = c.lastIndexOf(\"?\");\n        d = -1 == d ? c.length : d;\n        if (\"base.js\" == c.substr(d - 7, 7)) {\n          goog.basePath = c.substr(0, d - 7);\n          break;\n        }\n      }\n    }\n  }\n}, goog.findBasePath_(), goog.Transpiler = function() {\n  this.requiresTranspilation_ = null;\n  this.transpilationTarget_ = goog.TRANSPILE_TO_LANGUAGE;\n}, goog.Transpiler.prototype.createRequiresTranspilation_ = function() {\n  function a(a, b) {\n    e ? d[a] = !0 : b() ? (c = a, d[a] = !1) : e = d[a] = !0;\n  }\n  function b(a) {\n    try {\n      return !!eval(a);\n    } catch (h) {\n      return !1;\n    }\n  }\n  var c = \"es3\", d = {es3:!1}, e = !1, f = goog.global.navigator && goog.global.navigator.userAgent ? goog.global.navigator.userAgent : \"\";\n  a(\"es5\", function() {\n    return b(\"[1,].length==1\");\n  });\n  a(\"es6\", function() {\n    return f.match(/Edge\\/(\\d+)(\\.\\d)*/i) ? !1 : b('(()=>{\"use strict\";class X{constructor(){if(new.target!=String)throw 1;this.x=42}}let q=Reflect.construct(X,[],String);if(q.x!=42||!(q instanceof String))throw 1;for(const a of[2,3]){if(a==2)continue;function f(z={a}){let a=0;return z.a}{function f(){return 0;}}return f()==3}})()');\n  });\n  a(\"es7\", function() {\n    return b(\"2 ** 2 == 4\");\n  });\n  a(\"es8\", function() {\n    return b(\"async () => 1, true\");\n  });\n  a(\"es9\", function() {\n    return b(\"({...rest} = {}), true\");\n  });\n  a(\"es_next\", function() {\n    return !1;\n  });\n  return {target:c, map:d};\n}, goog.Transpiler.prototype.needsTranspile = function(a, b) {\n  if (\"always\" == goog.TRANSPILE) {\n    return !0;\n  }\n  if (\"never\" == goog.TRANSPILE) {\n    return !1;\n  }\n  if (!this.requiresTranspilation_) {\n    var c = this.createRequiresTranspilation_();\n    this.requiresTranspilation_ = c.map;\n    this.transpilationTarget_ = this.transpilationTarget_ || c.target;\n  }\n  if (a in this.requiresTranspilation_) {\n    return this.requiresTranspilation_[a] ? !0 : !goog.inHtmlDocument_() || \"es6\" != b || \"noModule\" in goog.global.document.createElement(\"script\") ? !1 : !0;\n  }\n  throw Error(\"Unknown language mode: \" + a);\n}, goog.Transpiler.prototype.transpile = function(a, b) {\n  return goog.transpile_(a, b, this.transpilationTarget_);\n}, goog.transpiler_ = new goog.Transpiler, goog.protectScriptTag_ = function(a) {\n  return a.replace(/<\\/(SCRIPT)/ig, \"\\\\x3c/$1\");\n}, goog.DebugLoader_ = function() {\n  this.dependencies_ = {};\n  this.idToPath_ = {};\n  this.written_ = {};\n  this.loadingDeps_ = [];\n  this.depsToLoad_ = [];\n  this.paused_ = !1;\n  this.factory_ = new goog.DependencyFactory(goog.transpiler_);\n  this.deferredCallbacks_ = {};\n  this.deferredQueue_ = [];\n}, goog.DebugLoader_.prototype.bootstrap = function(a, b) {\n  function c() {\n    d && (goog.global.setTimeout(d, 0), d = null);\n  }\n  var d = b;\n  if (a.length) {\n    for (var e = [], f = 0; f < a.length; f++) {\n      var g = this.getPathFromDeps_(a[f]);\n      if (!g) {\n        throw Error(\"Unregonized namespace: \" + a[f]);\n      }\n      e.push(this.dependencies_[g]);\n    }\n    g = goog.require;\n    var h = 0;\n    for (f = 0; f < a.length; f++) {\n      g(a[f]), e[f].onLoad(function() {\n        ++h == a.length && c();\n      });\n    }\n  } else {\n    c();\n  }\n}, goog.DebugLoader_.prototype.loadClosureDeps = function() {\n  this.depsToLoad_.push(this.factory_.createDependency(goog.normalizePath_(goog.basePath + \"deps.js\"), \"deps.js\", [], [], {}, !1));\n  this.loadDeps_();\n}, goog.DebugLoader_.prototype.requested = function(a, b) {\n  var c = this.getPathFromDeps_(a);\n  if (c && (b || this.areDepsLoaded_(this.dependencies_[c].requires))) {\n    var d = this.deferredCallbacks_[c];\n    d && (delete this.deferredCallbacks_[c], d());\n  }\n}, goog.DebugLoader_.prototype.setDependencyFactory = function(a) {\n  this.factory_ = a;\n}, goog.DebugLoader_.prototype.load_ = function(a) {\n  if (this.getPathFromDeps_(a)) {\n    var b = this, c = [], d = function(a) {\n      var e = b.getPathFromDeps_(a);\n      if (!e) {\n        throw Error(\"Bad dependency path or symbol: \" + a);\n      }\n      if (!b.written_[e]) {\n        b.written_[e] = !0;\n        a = b.dependencies_[e];\n        for (e = 0; e < a.requires.length; e++) {\n          goog.isProvided_(a.requires[e]) || d(a.requires[e]);\n        }\n        c.push(a);\n      }\n    };\n    d(a);\n    a = !!this.depsToLoad_.length;\n    this.depsToLoad_ = this.depsToLoad_.concat(c);\n    this.paused_ || a || this.loadDeps_();\n  } else {\n    throw a = \"goog.require could not find: \" + a, goog.logToConsole_(a), Error(a);\n  }\n}, goog.DebugLoader_.prototype.loadDeps_ = function() {\n  for (var a = this, b = this.paused_; this.depsToLoad_.length && !b;) {\n    (function() {\n      var c = !1, d = a.depsToLoad_.shift(), e = !1;\n      a.loading_(d);\n      var f = {pause:function() {\n        if (c) {\n          throw Error(\"Cannot call pause after the call to load.\");\n        }\n        b = !0;\n      }, resume:function() {\n        c ? a.resume_() : b = !1;\n      }, loaded:function() {\n        if (e) {\n          throw Error(\"Double call to loaded.\");\n        }\n        e = !0;\n        a.loaded_(d);\n      }, pending:function() {\n        for (var b = [], c = 0; c < a.loadingDeps_.length; c++) {\n          b.push(a.loadingDeps_[c]);\n        }\n        return b;\n      }, setModuleState:function(a) {\n        goog.moduleLoaderState_ = {type:a, moduleName:\"\", declareLegacyNamespace:!1};\n      }, registerEs6ModuleExports:function(a, b, c) {\n        c && (goog.loadedModules_[c] = {exports:b, type:goog.ModuleType.ES6, moduleId:c || \"\"});\n      }, registerGoogModuleExports:function(a, b) {\n        goog.loadedModules_[a] = {exports:b, type:goog.ModuleType.GOOG, moduleId:a};\n      }, clearModuleState:function() {\n        goog.moduleLoaderState_ = null;\n      }, defer:function(b) {\n        if (c) {\n          throw Error(\"Cannot register with defer after the call to load.\");\n        }\n        a.defer_(d, b);\n      }, areDepsLoaded:function() {\n        return a.areDepsLoaded_(d.requires);\n      }};\n      try {\n        d.load(f);\n      } finally {\n        c = !0;\n      }\n    })();\n  }\n  b && this.pause_();\n}, goog.DebugLoader_.prototype.pause_ = function() {\n  this.paused_ = !0;\n}, goog.DebugLoader_.prototype.resume_ = function() {\n  this.paused_ && (this.paused_ = !1, this.loadDeps_());\n}, goog.DebugLoader_.prototype.loading_ = function(a) {\n  this.loadingDeps_.push(a);\n}, goog.DebugLoader_.prototype.loaded_ = function(a) {\n  for (var b = 0; b < this.loadingDeps_.length; b++) {\n    if (this.loadingDeps_[b] == a) {\n      this.loadingDeps_.splice(b, 1);\n      break;\n    }\n  }\n  for (b = 0; b < this.deferredQueue_.length; b++) {\n    if (this.deferredQueue_[b] == a.path) {\n      this.deferredQueue_.splice(b, 1);\n      break;\n    }\n  }\n  if (this.loadingDeps_.length == this.deferredQueue_.length && !this.depsToLoad_.length) {\n    for (; this.deferredQueue_.length;) {\n      this.requested(this.deferredQueue_.shift(), !0);\n    }\n  }\n  a.loaded();\n}, goog.DebugLoader_.prototype.areDepsLoaded_ = function(a) {\n  for (var b = 0; b < a.length; b++) {\n    var c = this.getPathFromDeps_(a[b]);\n    if (!c || !(c in this.deferredCallbacks_ || goog.isProvided_(a[b]))) {\n      return !1;\n    }\n  }\n  return !0;\n}, goog.DebugLoader_.prototype.getPathFromDeps_ = function(a) {\n  return a in this.idToPath_ ? this.idToPath_[a] : a in this.dependencies_ ? a : null;\n}, goog.DebugLoader_.prototype.defer_ = function(a, b) {\n  this.deferredCallbacks_[a.path] = b;\n  this.deferredQueue_.push(a.path);\n}, goog.LoadController = function() {\n}, goog.LoadController.prototype.pause = function() {\n}, goog.LoadController.prototype.resume = function() {\n}, goog.LoadController.prototype.loaded = function() {\n}, goog.LoadController.prototype.pending = function() {\n}, goog.LoadController.prototype.registerEs6ModuleExports = function(a, b, c) {\n}, goog.LoadController.prototype.setModuleState = function(a) {\n}, goog.LoadController.prototype.clearModuleState = function() {\n}, goog.LoadController.prototype.defer = function(a) {\n}, goog.LoadController.prototype.areDepsLoaded = function() {\n}, goog.Dependency = function(a, b, c, d, e) {\n  this.path = a;\n  this.relativePath = b;\n  this.provides = c;\n  this.requires = d;\n  this.loadFlags = e;\n  this.loaded_ = !1;\n  this.loadCallbacks_ = [];\n}, goog.Dependency.prototype.getPathName = function() {\n  var a = this.path, b = a.indexOf(\"://\");\n  0 <= b && (a = a.substring(b + 3), b = a.indexOf(\"/\"), 0 <= b && (a = a.substring(b + 1)));\n  return a;\n}, goog.Dependency.prototype.onLoad = function(a) {\n  this.loaded_ ? a() : this.loadCallbacks_.push(a);\n}, goog.Dependency.prototype.loaded = function() {\n  this.loaded_ = !0;\n  var a = this.loadCallbacks_;\n  this.loadCallbacks_ = [];\n  for (var b = 0; b < a.length; b++) {\n    a[b]();\n  }\n}, goog.Dependency.defer_ = !1, goog.Dependency.callbackMap_ = {}, goog.Dependency.registerCallback_ = function(a) {\n  var b = Math.random().toString(32);\n  goog.Dependency.callbackMap_[b] = a;\n  return b;\n}, goog.Dependency.unregisterCallback_ = function(a) {\n  delete goog.Dependency.callbackMap_[a];\n}, goog.Dependency.callback_ = function(a, b) {\n  if (a in goog.Dependency.callbackMap_) {\n    for (var c = goog.Dependency.callbackMap_[a], d = [], e = 1; e < arguments.length; e++) {\n      d.push(arguments[e]);\n    }\n    c.apply(void 0, d);\n  } else {\n    throw Error(\"Callback key \" + a + \" does not exist (was base.js loaded more than once?).\");\n  }\n}, goog.Dependency.prototype.load = function(a) {\n  if (goog.global.CLOSURE_IMPORT_SCRIPT) {\n    goog.global.CLOSURE_IMPORT_SCRIPT(this.path) ? a.loaded() : a.pause();\n  } else {\n    if (goog.inHtmlDocument_()) {\n      var b = goog.global.document;\n      if (\"complete\" == b.readyState && !goog.ENABLE_CHROME_APP_SAFE_SCRIPT_LOADING) {\n        if (/\\bdeps.js$/.test(this.path)) {\n          a.loaded();\n          return;\n        }\n        throw Error('Cannot write \"' + this.path + '\" after document load');\n      }\n      if (!goog.ENABLE_CHROME_APP_SAFE_SCRIPT_LOADING && goog.isDocumentLoading_()) {\n        var c = goog.Dependency.registerCallback_(function(b) {\n          goog.DebugLoader_.IS_OLD_IE_ && \"complete\" != b.readyState || (goog.Dependency.unregisterCallback_(c), a.loaded());\n        }), d = !goog.DebugLoader_.IS_OLD_IE_ && goog.getScriptNonce() ? ' nonce=\"' + goog.getScriptNonce() + '\"' : \"\";\n        d = '<script src=\"' + this.path + '\" ' + (goog.DebugLoader_.IS_OLD_IE_ ? \"onreadystatechange\" : \"onload\") + \"=\\\"goog.Dependency.callback_('\" + c + '\\', this)\" type=\"text/javascript\" ' + (goog.Dependency.defer_ ? \"defer\" : \"\") + d + \">\\x3c/script>\";\n        b.write(goog.TRUSTED_TYPES_POLICY_ ? goog.TRUSTED_TYPES_POLICY_.createHTML(d) : d);\n      } else {\n        var e = b.createElement(\"script\");\n        e.defer = goog.Dependency.defer_;\n        e.async = !1;\n        e.type = \"text/javascript\";\n        (d = goog.getScriptNonce()) && e.setAttribute(\"nonce\", d);\n        goog.DebugLoader_.IS_OLD_IE_ ? (a.pause(), e.onreadystatechange = function() {\n          if (\"loaded\" == e.readyState || \"complete\" == e.readyState) {\n            a.loaded(), a.resume();\n          }\n        }) : e.onload = function() {\n          e.onload = null;\n          a.loaded();\n        };\n        e.src = goog.TRUSTED_TYPES_POLICY_ ? goog.TRUSTED_TYPES_POLICY_.createScriptURL(this.path) : this.path;\n        b.head.appendChild(e);\n      }\n    } else {\n      goog.logToConsole_(\"Cannot use default debug loader outside of HTML documents.\"), \"deps.js\" == this.relativePath ? (goog.logToConsole_(\"Consider setting CLOSURE_IMPORT_SCRIPT before loading base.js, or setting CLOSURE_NO_DEPS to true.\"), a.loaded()) : a.pause();\n    }\n  }\n}, goog.Es6ModuleDependency = function(a, b, c, d, e) {\n  goog.Dependency.call(this, a, b, c, d, e);\n}, goog.inherits(goog.Es6ModuleDependency, goog.Dependency), goog.Es6ModuleDependency.prototype.load = function(a) {\n  function b(a, b) {\n    var c = b ? '<script type=\"module\" crossorigin>' + b + \"\\x3c/script>\" : '<script type=\"module\" crossorigin src=\"' + a + '\">\\x3c/script>';\n    d.write(goog.TRUSTED_TYPES_POLICY_ ? goog.TRUSTED_TYPES_POLICY_.createHTML(c) : c);\n  }\n  function c(a, b) {\n    var c = d.createElement(\"script\");\n    c.defer = !0;\n    c.async = !1;\n    c.type = \"module\";\n    c.setAttribute(\"crossorigin\", !0);\n    var e = goog.getScriptNonce();\n    e && c.setAttribute(\"nonce\", e);\n    b ? c.textContent = goog.TRUSTED_TYPES_POLICY_ ? goog.TRUSTED_TYPES_POLICY_.createScript(b) : b : c.src = goog.TRUSTED_TYPES_POLICY_ ? goog.TRUSTED_TYPES_POLICY_.createScriptURL(a) : a;\n    d.head.appendChild(c);\n  }\n  if (goog.global.CLOSURE_IMPORT_SCRIPT) {\n    goog.global.CLOSURE_IMPORT_SCRIPT(this.path) ? a.loaded() : a.pause();\n  } else {\n    if (goog.inHtmlDocument_()) {\n      var d = goog.global.document, e = this;\n      if (goog.isDocumentLoading_()) {\n        var f = b;\n        goog.Dependency.defer_ = !0;\n      } else {\n        f = c;\n      }\n      var g = goog.Dependency.registerCallback_(function() {\n        goog.Dependency.unregisterCallback_(g);\n        a.setModuleState(goog.ModuleType.ES6);\n      });\n      f(void 0, 'goog.Dependency.callback_(\"' + g + '\")');\n      f(this.path, void 0);\n      var h = goog.Dependency.registerCallback_(function(b) {\n        goog.Dependency.unregisterCallback_(h);\n        a.registerEs6ModuleExports(e.path, b, goog.moduleLoaderState_.moduleName);\n      });\n      f(void 0, 'import * as m from \"' + this.path + '\"; goog.Dependency.callback_(\"' + h + '\", m)');\n      var k = goog.Dependency.registerCallback_(function() {\n        goog.Dependency.unregisterCallback_(k);\n        a.clearModuleState();\n        a.loaded();\n      });\n      f(void 0, 'goog.Dependency.callback_(\"' + k + '\")');\n    } else {\n      goog.logToConsole_(\"Cannot use default debug loader outside of HTML documents.\"), a.pause();\n    }\n  }\n}, goog.TransformedDependency = function(a, b, c, d, e) {\n  goog.Dependency.call(this, a, b, c, d, e);\n  this.contents_ = null;\n  this.lazyFetch_ = !goog.inHtmlDocument_() || !(\"noModule\" in goog.global.document.createElement(\"script\"));\n}, goog.inherits(goog.TransformedDependency, goog.Dependency), goog.TransformedDependency.prototype.load = function(a) {\n  function b() {\n    e.contents_ = goog.loadFileSync_(e.path);\n    e.contents_ && (e.contents_ = e.transform(e.contents_), e.contents_ && (e.contents_ += \"\\n//# sourceURL=\" + e.path));\n  }\n  function c() {\n    e.lazyFetch_ && b();\n    if (e.contents_) {\n      f && a.setModuleState(goog.ModuleType.ES6);\n      try {\n        var c = e.contents_;\n        e.contents_ = null;\n        goog.globalEval(c);\n        if (f) {\n          var d = goog.moduleLoaderState_.moduleName;\n        }\n      } finally {\n        f && a.clearModuleState();\n      }\n      f && goog.global.$jscomp.require.ensure([e.getPathName()], function() {\n        a.registerEs6ModuleExports(e.path, goog.global.$jscomp.require(e.getPathName()), d);\n      });\n      a.loaded();\n    }\n  }\n  function d() {\n    var a = goog.global.document, b = goog.Dependency.registerCallback_(function() {\n      goog.Dependency.unregisterCallback_(b);\n      c();\n    }), d = '<script type=\"text/javascript\">' + goog.protectScriptTag_('goog.Dependency.callback_(\"' + b + '\");') + \"\\x3c/script>\";\n    a.write(goog.TRUSTED_TYPES_POLICY_ ? goog.TRUSTED_TYPES_POLICY_.createHTML(d) : d);\n  }\n  var e = this;\n  if (goog.global.CLOSURE_IMPORT_SCRIPT) {\n    b(), this.contents_ && goog.global.CLOSURE_IMPORT_SCRIPT(\"\", this.contents_) ? (this.contents_ = null, a.loaded()) : a.pause();\n  } else {\n    var f = this.loadFlags.module == goog.ModuleType.ES6;\n    this.lazyFetch_ || b();\n    var g = 1 < a.pending().length, h = g && goog.DebugLoader_.IS_OLD_IE_;\n    g = goog.Dependency.defer_ && (g || goog.isDocumentLoading_());\n    if (h || g) {\n      a.defer(function() {\n        c();\n      });\n    } else {\n      var k = goog.global.document;\n      h = goog.inHtmlDocument_() && \"ActiveXObject\" in goog.global;\n      if (f && goog.inHtmlDocument_() && goog.isDocumentLoading_() && !h) {\n        goog.Dependency.defer_ = !0;\n        a.pause();\n        var l = k.onreadystatechange;\n        k.onreadystatechange = function() {\n          \"interactive\" == k.readyState && (k.onreadystatechange = l, c(), a.resume());\n          goog.isFunction(l) && l.apply(void 0, arguments);\n        };\n      } else {\n        !goog.DebugLoader_.IS_OLD_IE_ && goog.inHtmlDocument_() && goog.isDocumentLoading_() ? d() : c();\n      }\n    }\n  }\n}, goog.TransformedDependency.prototype.transform = function(a) {\n}, goog.TranspiledDependency = function(a, b, c, d, e, f) {\n  goog.TransformedDependency.call(this, a, b, c, d, e);\n  this.transpiler = f;\n}, goog.inherits(goog.TranspiledDependency, goog.TransformedDependency), goog.TranspiledDependency.prototype.transform = function(a) {\n  return this.transpiler.transpile(a, this.getPathName());\n}, goog.PreTranspiledEs6ModuleDependency = function(a, b, c, d, e) {\n  goog.TransformedDependency.call(this, a, b, c, d, e);\n}, goog.inherits(goog.PreTranspiledEs6ModuleDependency, goog.TransformedDependency), goog.PreTranspiledEs6ModuleDependency.prototype.transform = function(a) {\n  return a;\n}, goog.GoogModuleDependency = function(a, b, c, d, e, f, g) {\n  goog.TransformedDependency.call(this, a, b, c, d, e);\n  this.needsTranspile_ = f;\n  this.transpiler_ = g;\n}, goog.inherits(goog.GoogModuleDependency, goog.TransformedDependency), goog.GoogModuleDependency.prototype.transform = function(a) {\n  this.needsTranspile_ && (a = this.transpiler_.transpile(a, this.getPathName()));\n  return goog.LOAD_MODULE_USING_EVAL && void 0 !== goog.global.JSON ? \"goog.loadModule(\" + goog.global.JSON.stringify(a + \"\\n//# sourceURL=\" + this.path + \"\\n\") + \");\" : 'goog.loadModule(function(exports) {\"use strict\";' + a + \"\\n;return exports});\\n//# sourceURL=\" + this.path + \"\\n\";\n}, goog.DebugLoader_.IS_OLD_IE_ = !(goog.global.atob || !goog.global.document || !goog.global.document.all), goog.DebugLoader_.prototype.addDependency = function(a, b, c, d) {\n  b = b || [];\n  a = a.replace(/\\\\/g, \"/\");\n  var e = goog.normalizePath_(goog.basePath + a);\n  d && \"boolean\" !== typeof d || (d = d ? {module:goog.ModuleType.GOOG} : {});\n  c = this.factory_.createDependency(e, a, b, c, d, goog.transpiler_.needsTranspile(d.lang || \"es3\", d.module));\n  this.dependencies_[e] = c;\n  for (c = 0; c < b.length; c++) {\n    this.idToPath_[b[c]] = e;\n  }\n  this.idToPath_[a] = e;\n}, goog.DependencyFactory = function(a) {\n  this.transpiler = a;\n}, goog.DependencyFactory.prototype.createDependency = function(a, b, c, d, e, f) {\n  return e.module == goog.ModuleType.GOOG ? new goog.GoogModuleDependency(a, b, c, d, e, f, this.transpiler) : f ? new goog.TranspiledDependency(a, b, c, d, e, this.transpiler) : e.module == goog.ModuleType.ES6 ? \"never\" == goog.TRANSPILE && goog.ASSUME_ES_MODULES_TRANSPILED ? new goog.PreTranspiledEs6ModuleDependency(a, b, c, d, e) : new goog.Es6ModuleDependency(a, b, c, d, e) : new goog.Dependency(a, b, c, d, e);\n}, goog.debugLoader_ = new goog.DebugLoader_, goog.loadClosureDeps = function() {\n  goog.debugLoader_.loadClosureDeps();\n}, goog.setDependencyFactory = function(a) {\n  goog.debugLoader_.setDependencyFactory(a);\n}, goog.global.CLOSURE_NO_DEPS || goog.debugLoader_.loadClosureDeps(), goog.bootstrap = function(a, b) {\n  goog.debugLoader_.bootstrap(a, b);\n});\ngoog.TRUSTED_TYPES_POLICY_NAME = \"\";\ngoog.identity_ = function(a) {\n  return a;\n};\ngoog.createTrustedTypesPolicy = function(a) {\n  var b = null, c = goog.global.trustedTypes || goog.global.TrustedTypes;\n  if (!c || !c.createPolicy) {\n    return b;\n  }\n  try {\n    b = c.createPolicy(a, {createHTML:goog.identity_, createScript:goog.identity_, createScriptURL:goog.identity_, createURL:goog.identity_});\n  } catch (d) {\n    goog.logToConsole_(d.message);\n  }\n  return b;\n};\ngoog.TRUSTED_TYPES_POLICY_ = goog.TRUSTED_TYPES_POLICY_NAME ? goog.createTrustedTypesPolicy(goog.TRUSTED_TYPES_POLICY_NAME + \"#base\") : null;\ngoog.string = {};\ngoog.string.StringBuffer = function(a, b) {\n  null != a && this.append.apply(this, arguments);\n};\ngoog.string.StringBuffer.prototype.buffer_ = \"\";\ngoog.string.StringBuffer.prototype.set = function(a) {\n  this.buffer_ = \"\" + a;\n};\ngoog.string.StringBuffer.prototype.append = function(a, b, c) {\n  this.buffer_ += String(a);\n  if (null != b) {\n    for (var d = 1; d < arguments.length; d++) {\n      this.buffer_ += arguments[d];\n    }\n  }\n  return this;\n};\ngoog.string.StringBuffer.prototype.clear = function() {\n  this.buffer_ = \"\";\n};\ngoog.string.StringBuffer.prototype.getLength = function() {\n  return this.buffer_.length;\n};\ngoog.string.StringBuffer.prototype.toString = function() {\n  return this.buffer_;\n};\ngoog.debug = {};\ngoog.debug.Error = function(a) {\n  if (Error.captureStackTrace) {\n    Error.captureStackTrace(this, goog.debug.Error);\n  } else {\n    var b = Error().stack;\n    b && (this.stack = b);\n  }\n  a && (this.message = String(a));\n  this.reportErrorToServer = !0;\n};\ngoog.inherits(goog.debug.Error, Error);\ngoog.debug.Error.prototype.name = \"CustomError\";\ngoog.dom = {};\ngoog.dom.NodeType = {ELEMENT:1, ATTRIBUTE:2, TEXT:3, CDATA_SECTION:4, ENTITY_REFERENCE:5, ENTITY:6, PROCESSING_INSTRUCTION:7, COMMENT:8, DOCUMENT:9, DOCUMENT_TYPE:10, DOCUMENT_FRAGMENT:11, NOTATION:12};\ngoog.asserts = {};\ngoog.asserts.ENABLE_ASSERTS = goog.DEBUG;\ngoog.asserts.AssertionError = function(a, b) {\n  goog.debug.Error.call(this, goog.asserts.subs_(a, b));\n  this.messagePattern = a;\n};\ngoog.inherits(goog.asserts.AssertionError, goog.debug.Error);\ngoog.asserts.AssertionError.prototype.name = \"AssertionError\";\ngoog.asserts.DEFAULT_ERROR_HANDLER = function(a) {\n  throw a;\n};\ngoog.asserts.errorHandler_ = goog.asserts.DEFAULT_ERROR_HANDLER;\ngoog.asserts.subs_ = function(a, b) {\n  for (var c = a.split(\"%s\"), d = \"\", e = c.length - 1, f = 0; f < e; f++) {\n    d += c[f] + (f < b.length ? b[f] : \"%s\");\n  }\n  return d + c[e];\n};\ngoog.asserts.doAssertFailure_ = function(a, b, c, d) {\n  var e = \"Assertion failed\";\n  if (c) {\n    e += \": \" + c;\n    var f = d;\n  } else {\n    a && (e += \": \" + a, f = b);\n  }\n  a = new goog.asserts.AssertionError(\"\" + e, f || []);\n  goog.asserts.errorHandler_(a);\n};\ngoog.asserts.setErrorHandler = function(a) {\n  goog.asserts.ENABLE_ASSERTS && (goog.asserts.errorHandler_ = a);\n};\ngoog.asserts.assert = function(a, b, c) {\n  goog.asserts.ENABLE_ASSERTS && !a && goog.asserts.doAssertFailure_(\"\", null, b, Array.prototype.slice.call(arguments, 2));\n  return a;\n};\ngoog.asserts.assertExists = function(a, b, c) {\n  goog.asserts.ENABLE_ASSERTS && null == a && goog.asserts.doAssertFailure_(\"Expected to exist: %s.\", [a], b, Array.prototype.slice.call(arguments, 2));\n  return a;\n};\ngoog.asserts.fail = function(a, b) {\n  goog.asserts.ENABLE_ASSERTS && goog.asserts.errorHandler_(new goog.asserts.AssertionError(\"Failure\" + (a ? \": \" + a : \"\"), Array.prototype.slice.call(arguments, 1)));\n};\ngoog.asserts.assertNumber = function(a, b, c) {\n  goog.asserts.ENABLE_ASSERTS && \"number\" !== typeof a && goog.asserts.doAssertFailure_(\"Expected number but got %s: %s.\", [goog.typeOf(a), a], b, Array.prototype.slice.call(arguments, 2));\n  return a;\n};\ngoog.asserts.assertString = function(a, b, c) {\n  goog.asserts.ENABLE_ASSERTS && \"string\" !== typeof a && goog.asserts.doAssertFailure_(\"Expected string but got %s: %s.\", [goog.typeOf(a), a], b, Array.prototype.slice.call(arguments, 2));\n  return a;\n};\ngoog.asserts.assertFunction = function(a, b, c) {\n  goog.asserts.ENABLE_ASSERTS && !goog.isFunction(a) && goog.asserts.doAssertFailure_(\"Expected function but got %s: %s.\", [goog.typeOf(a), a], b, Array.prototype.slice.call(arguments, 2));\n  return a;\n};\ngoog.asserts.assertObject = function(a, b, c) {\n  goog.asserts.ENABLE_ASSERTS && !goog.isObject(a) && goog.asserts.doAssertFailure_(\"Expected object but got %s: %s.\", [goog.typeOf(a), a], b, Array.prototype.slice.call(arguments, 2));\n  return a;\n};\ngoog.asserts.assertArray = function(a, b, c) {\n  goog.asserts.ENABLE_ASSERTS && !goog.isArray(a) && goog.asserts.doAssertFailure_(\"Expected array but got %s: %s.\", [goog.typeOf(a), a], b, Array.prototype.slice.call(arguments, 2));\n  return a;\n};\ngoog.asserts.assertBoolean = function(a, b, c) {\n  goog.asserts.ENABLE_ASSERTS && \"boolean\" !== typeof a && goog.asserts.doAssertFailure_(\"Expected boolean but got %s: %s.\", [goog.typeOf(a), a], b, Array.prototype.slice.call(arguments, 2));\n  return a;\n};\ngoog.asserts.assertElement = function(a, b, c) {\n  !goog.asserts.ENABLE_ASSERTS || goog.isObject(a) && a.nodeType == goog.dom.NodeType.ELEMENT || goog.asserts.doAssertFailure_(\"Expected Element but got %s: %s.\", [goog.typeOf(a), a], b, Array.prototype.slice.call(arguments, 2));\n  return a;\n};\ngoog.asserts.assertInstanceof = function(a, b, c, d) {\n  !goog.asserts.ENABLE_ASSERTS || a instanceof b || goog.asserts.doAssertFailure_(\"Expected instanceof %s but got %s.\", [goog.asserts.getType_(b), goog.asserts.getType_(a)], c, Array.prototype.slice.call(arguments, 3));\n  return a;\n};\ngoog.asserts.assertFinite = function(a, b, c) {\n  !goog.asserts.ENABLE_ASSERTS || \"number\" == typeof a && isFinite(a) || goog.asserts.doAssertFailure_(\"Expected %s to be a finite number but it is not.\", [a], b, Array.prototype.slice.call(arguments, 2));\n  return a;\n};\ngoog.asserts.assertObjectPrototypeIsIntact = function() {\n  for (var a in Object.prototype) {\n    goog.asserts.fail(a + \" should not be enumerable in Object.prototype.\");\n  }\n};\ngoog.asserts.getType_ = function(a) {\n  return a instanceof Function ? a.displayName || a.name || \"unknown type name\" : a instanceof Object ? a.constructor.displayName || a.constructor.name || Object.prototype.toString.call(a) : null === a ? \"null\" : typeof a;\n};\ngoog.array = {};\ngoog.NATIVE_ARRAY_PROTOTYPES = goog.TRUSTED_SITE;\ngoog.array.ASSUME_NATIVE_FUNCTIONS = 2012 < goog.FEATURESET_YEAR;\ngoog.array.peek = function(a) {\n  return a[a.length - 1];\n};\ngoog.array.last = goog.array.peek;\ngoog.array.indexOf = goog.NATIVE_ARRAY_PROTOTYPES && (goog.array.ASSUME_NATIVE_FUNCTIONS || Array.prototype.indexOf) ? function(a, b, c) {\n  goog.asserts.assert(null != a.length);\n  return Array.prototype.indexOf.call(a, b, c);\n} : function(a, b, c) {\n  c = null == c ? 0 : 0 > c ? Math.max(0, a.length + c) : c;\n  if (\"string\" === typeof a) {\n    return \"string\" !== typeof b || 1 != b.length ? -1 : a.indexOf(b, c);\n  }\n  for (; c < a.length; c++) {\n    if (c in a && a[c] === b) {\n      return c;\n    }\n  }\n  return -1;\n};\ngoog.array.lastIndexOf = goog.NATIVE_ARRAY_PROTOTYPES && (goog.array.ASSUME_NATIVE_FUNCTIONS || Array.prototype.lastIndexOf) ? function(a, b, c) {\n  goog.asserts.assert(null != a.length);\n  return Array.prototype.lastIndexOf.call(a, b, null == c ? a.length - 1 : c);\n} : function(a, b, c) {\n  c = null == c ? a.length - 1 : c;\n  0 > c && (c = Math.max(0, a.length + c));\n  if (\"string\" === typeof a) {\n    return \"string\" !== typeof b || 1 != b.length ? -1 : a.lastIndexOf(b, c);\n  }\n  for (; 0 <= c; c--) {\n    if (c in a && a[c] === b) {\n      return c;\n    }\n  }\n  return -1;\n};\ngoog.array.forEach = goog.NATIVE_ARRAY_PROTOTYPES && (goog.array.ASSUME_NATIVE_FUNCTIONS || Array.prototype.forEach) ? function(a, b, c) {\n  goog.asserts.assert(null != a.length);\n  Array.prototype.forEach.call(a, b, c);\n} : function(a, b, c) {\n  for (var d = a.length, e = \"string\" === typeof a ? a.split(\"\") : a, f = 0; f < d; f++) {\n    f in e && b.call(c, e[f], f, a);\n  }\n};\ngoog.array.forEachRight = function(a, b, c) {\n  var d = a.length, e = \"string\" === typeof a ? a.split(\"\") : a;\n  for (--d; 0 <= d; --d) {\n    d in e && b.call(c, e[d], d, a);\n  }\n};\ngoog.array.filter = goog.NATIVE_ARRAY_PROTOTYPES && (goog.array.ASSUME_NATIVE_FUNCTIONS || Array.prototype.filter) ? function(a, b, c) {\n  goog.asserts.assert(null != a.length);\n  return Array.prototype.filter.call(a, b, c);\n} : function(a, b, c) {\n  for (var d = a.length, e = [], f = 0, g = \"string\" === typeof a ? a.split(\"\") : a, h = 0; h < d; h++) {\n    if (h in g) {\n      var k = g[h];\n      b.call(c, k, h, a) && (e[f++] = k);\n    }\n  }\n  return e;\n};\ngoog.array.map = goog.NATIVE_ARRAY_PROTOTYPES && (goog.array.ASSUME_NATIVE_FUNCTIONS || Array.prototype.map) ? function(a, b, c) {\n  goog.asserts.assert(null != a.length);\n  return Array.prototype.map.call(a, b, c);\n} : function(a, b, c) {\n  for (var d = a.length, e = Array(d), f = \"string\" === typeof a ? a.split(\"\") : a, g = 0; g < d; g++) {\n    g in f && (e[g] = b.call(c, f[g], g, a));\n  }\n  return e;\n};\ngoog.array.reduce = goog.NATIVE_ARRAY_PROTOTYPES && (goog.array.ASSUME_NATIVE_FUNCTIONS || Array.prototype.reduce) ? function(a, b, c, d) {\n  goog.asserts.assert(null != a.length);\n  d && (b = goog.bind(b, d));\n  return Array.prototype.reduce.call(a, b, c);\n} : function(a, b, c, d) {\n  var e = c;\n  goog.array.forEach(a, function(c, g) {\n    e = b.call(d, e, c, g, a);\n  });\n  return e;\n};\ngoog.array.reduceRight = goog.NATIVE_ARRAY_PROTOTYPES && (goog.array.ASSUME_NATIVE_FUNCTIONS || Array.prototype.reduceRight) ? function(a, b, c, d) {\n  goog.asserts.assert(null != a.length);\n  goog.asserts.assert(null != b);\n  d && (b = goog.bind(b, d));\n  return Array.prototype.reduceRight.call(a, b, c);\n} : function(a, b, c, d) {\n  var e = c;\n  goog.array.forEachRight(a, function(c, g) {\n    e = b.call(d, e, c, g, a);\n  });\n  return e;\n};\ngoog.array.some = goog.NATIVE_ARRAY_PROTOTYPES && (goog.array.ASSUME_NATIVE_FUNCTIONS || Array.prototype.some) ? function(a, b, c) {\n  goog.asserts.assert(null != a.length);\n  return Array.prototype.some.call(a, b, c);\n} : function(a, b, c) {\n  for (var d = a.length, e = \"string\" === typeof a ? a.split(\"\") : a, f = 0; f < d; f++) {\n    if (f in e && b.call(c, e[f], f, a)) {\n      return !0;\n    }\n  }\n  return !1;\n};\ngoog.array.every = goog.NATIVE_ARRAY_PROTOTYPES && (goog.array.ASSUME_NATIVE_FUNCTIONS || Array.prototype.every) ? function(a, b, c) {\n  goog.asserts.assert(null != a.length);\n  return Array.prototype.every.call(a, b, c);\n} : function(a, b, c) {\n  for (var d = a.length, e = \"string\" === typeof a ? a.split(\"\") : a, f = 0; f < d; f++) {\n    if (f in e && !b.call(c, e[f], f, a)) {\n      return !1;\n    }\n  }\n  return !0;\n};\ngoog.array.count = function(a, b, c) {\n  var d = 0;\n  goog.array.forEach(a, function(a, f, g) {\n    b.call(c, a, f, g) && ++d;\n  }, c);\n  return d;\n};\ngoog.array.find = function(a, b, c) {\n  b = goog.array.findIndex(a, b, c);\n  return 0 > b ? null : \"string\" === typeof a ? a.charAt(b) : a[b];\n};\ngoog.array.findIndex = function(a, b, c) {\n  for (var d = a.length, e = \"string\" === typeof a ? a.split(\"\") : a, f = 0; f < d; f++) {\n    if (f in e && b.call(c, e[f], f, a)) {\n      return f;\n    }\n  }\n  return -1;\n};\ngoog.array.findRight = function(a, b, c) {\n  b = goog.array.findIndexRight(a, b, c);\n  return 0 > b ? null : \"string\" === typeof a ? a.charAt(b) : a[b];\n};\ngoog.array.findIndexRight = function(a, b, c) {\n  var d = a.length, e = \"string\" === typeof a ? a.split(\"\") : a;\n  for (--d; 0 <= d; d--) {\n    if (d in e && b.call(c, e[d], d, a)) {\n      return d;\n    }\n  }\n  return -1;\n};\ngoog.array.contains = function(a, b) {\n  return 0 <= goog.array.indexOf(a, b);\n};\ngoog.array.isEmpty = function(a) {\n  return 0 == a.length;\n};\ngoog.array.clear = function(a) {\n  if (!goog.isArray(a)) {\n    for (var b = a.length - 1; 0 <= b; b--) {\n      delete a[b];\n    }\n  }\n  a.length = 0;\n};\ngoog.array.insert = function(a, b) {\n  goog.array.contains(a, b) || a.push(b);\n};\ngoog.array.insertAt = function(a, b, c) {\n  goog.array.splice(a, c, 0, b);\n};\ngoog.array.insertArrayAt = function(a, b, c) {\n  goog.partial(goog.array.splice, a, c, 0).apply(null, b);\n};\ngoog.array.insertBefore = function(a, b, c) {\n  var d;\n  2 == arguments.length || 0 > (d = goog.array.indexOf(a, c)) ? a.push(b) : goog.array.insertAt(a, b, d);\n};\ngoog.array.remove = function(a, b) {\n  var c = goog.array.indexOf(a, b), d;\n  (d = 0 <= c) && goog.array.removeAt(a, c);\n  return d;\n};\ngoog.array.removeLast = function(a, b) {\n  var c = goog.array.lastIndexOf(a, b);\n  return 0 <= c ? (goog.array.removeAt(a, c), !0) : !1;\n};\ngoog.array.removeAt = function(a, b) {\n  goog.asserts.assert(null != a.length);\n  return 1 == Array.prototype.splice.call(a, b, 1).length;\n};\ngoog.array.removeIf = function(a, b, c) {\n  b = goog.array.findIndex(a, b, c);\n  return 0 <= b ? (goog.array.removeAt(a, b), !0) : !1;\n};\ngoog.array.removeAllIf = function(a, b, c) {\n  var d = 0;\n  goog.array.forEachRight(a, function(e, f) {\n    b.call(c, e, f, a) && goog.array.removeAt(a, f) && d++;\n  });\n  return d;\n};\ngoog.array.concat = function(a) {\n  return Array.prototype.concat.apply([], arguments);\n};\ngoog.array.join = function(a) {\n  return Array.prototype.concat.apply([], arguments);\n};\ngoog.array.toArray = function(a) {\n  var b = a.length;\n  if (0 < b) {\n    for (var c = Array(b), d = 0; d < b; d++) {\n      c[d] = a[d];\n    }\n    return c;\n  }\n  return [];\n};\ngoog.array.clone = goog.array.toArray;\ngoog.array.extend = function(a, b) {\n  for (var c = 1; c < arguments.length; c++) {\n    var d = arguments[c];\n    if (goog.isArrayLike(d)) {\n      var e = a.length || 0, f = d.length || 0;\n      a.length = e + f;\n      for (var g = 0; g < f; g++) {\n        a[e + g] = d[g];\n      }\n    } else {\n      a.push(d);\n    }\n  }\n};\ngoog.array.splice = function(a, b, c, d) {\n  goog.asserts.assert(null != a.length);\n  return Array.prototype.splice.apply(a, goog.array.slice(arguments, 1));\n};\ngoog.array.slice = function(a, b, c) {\n  goog.asserts.assert(null != a.length);\n  return 2 >= arguments.length ? Array.prototype.slice.call(a, b) : Array.prototype.slice.call(a, b, c);\n};\ngoog.array.removeDuplicates = function(a, b, c) {\n  b = b || a;\n  var d = function(a) {\n    return goog.isObject(a) ? \"o\" + goog.getUid(a) : (typeof a).charAt(0) + a;\n  };\n  c = c || d;\n  d = {};\n  for (var e = 0, f = 0; f < a.length;) {\n    var g = a[f++], h = c(g);\n    Object.prototype.hasOwnProperty.call(d, h) || (d[h] = !0, b[e++] = g);\n  }\n  b.length = e;\n};\ngoog.array.binarySearch = function(a, b, c) {\n  return goog.array.binarySearch_(a, c || goog.array.defaultCompare, !1, b);\n};\ngoog.array.binarySelect = function(a, b, c) {\n  return goog.array.binarySearch_(a, b, !0, void 0, c);\n};\ngoog.array.binarySearch_ = function(a, b, c, d, e) {\n  for (var f = 0, g = a.length, h; f < g;) {\n    var k = f + (g - f >>> 1);\n    var l = c ? b.call(e, a[k], k, a) : b(d, a[k]);\n    0 < l ? f = k + 1 : (g = k, h = !l);\n  }\n  return h ? f : -f - 1;\n};\ngoog.array.sort = function(a, b) {\n  a.sort(b || goog.array.defaultCompare);\n};\ngoog.array.stableSort = function(a, b) {\n  for (var c = Array(a.length), d = 0; d < a.length; d++) {\n    c[d] = {index:d, value:a[d]};\n  }\n  var e = b || goog.array.defaultCompare;\n  goog.array.sort(c, function(a, b) {\n    return e(a.value, b.value) || a.index - b.index;\n  });\n  for (d = 0; d < a.length; d++) {\n    a[d] = c[d].value;\n  }\n};\ngoog.array.sortByKey = function(a, b, c) {\n  var d = c || goog.array.defaultCompare;\n  goog.array.sort(a, function(a, c) {\n    return d(b(a), b(c));\n  });\n};\ngoog.array.sortObjectsByKey = function(a, b, c) {\n  goog.array.sortByKey(a, function(a) {\n    return a[b];\n  }, c);\n};\ngoog.array.isSorted = function(a, b, c) {\n  b = b || goog.array.defaultCompare;\n  for (var d = 1; d < a.length; d++) {\n    var e = b(a[d - 1], a[d]);\n    if (0 < e || 0 == e && c) {\n      return !1;\n    }\n  }\n  return !0;\n};\ngoog.array.equals = function(a, b, c) {\n  if (!goog.isArrayLike(a) || !goog.isArrayLike(b) || a.length != b.length) {\n    return !1;\n  }\n  var d = a.length;\n  c = c || goog.array.defaultCompareEquality;\n  for (var e = 0; e < d; e++) {\n    if (!c(a[e], b[e])) {\n      return !1;\n    }\n  }\n  return !0;\n};\ngoog.array.compare3 = function(a, b, c) {\n  c = c || goog.array.defaultCompare;\n  for (var d = Math.min(a.length, b.length), e = 0; e < d; e++) {\n    var f = c(a[e], b[e]);\n    if (0 != f) {\n      return f;\n    }\n  }\n  return goog.array.defaultCompare(a.length, b.length);\n};\ngoog.array.defaultCompare = function(a, b) {\n  return a > b ? 1 : a < b ? -1 : 0;\n};\ngoog.array.inverseDefaultCompare = function(a, b) {\n  return -goog.array.defaultCompare(a, b);\n};\ngoog.array.defaultCompareEquality = function(a, b) {\n  return a === b;\n};\ngoog.array.binaryInsert = function(a, b, c) {\n  c = goog.array.binarySearch(a, b, c);\n  return 0 > c ? (goog.array.insertAt(a, b, -(c + 1)), !0) : !1;\n};\ngoog.array.binaryRemove = function(a, b, c) {\n  b = goog.array.binarySearch(a, b, c);\n  return 0 <= b ? goog.array.removeAt(a, b) : !1;\n};\ngoog.array.bucket = function(a, b, c) {\n  for (var d = {}, e = 0; e < a.length; e++) {\n    var f = a[e], g = b.call(c, f, e, a);\n    void 0 !== g && (d[g] || (d[g] = [])).push(f);\n  }\n  return d;\n};\ngoog.array.toObject = function(a, b, c) {\n  var d = {};\n  goog.array.forEach(a, function(e, f) {\n    d[b.call(c, e, f, a)] = e;\n  });\n  return d;\n};\ngoog.array.range = function(a, b, c) {\n  var d = [], e = 0, f = a;\n  c = c || 1;\n  void 0 !== b && (e = a, f = b);\n  if (0 > c * (f - e)) {\n    return [];\n  }\n  if (0 < c) {\n    for (a = e; a < f; a += c) {\n      d.push(a);\n    }\n  } else {\n    for (a = e; a > f; a += c) {\n      d.push(a);\n    }\n  }\n  return d;\n};\ngoog.array.repeat = function(a, b) {\n  for (var c = [], d = 0; d < b; d++) {\n    c[d] = a;\n  }\n  return c;\n};\ngoog.array.flatten = function(a) {\n  for (var b = [], c = 0; c < arguments.length; c++) {\n    var d = arguments[c];\n    if (goog.isArray(d)) {\n      for (var e = 0; e < d.length; e += 8192) {\n        var f = goog.array.slice(d, e, e + 8192);\n        f = goog.array.flatten.apply(null, f);\n        for (var g = 0; g < f.length; g++) {\n          b.push(f[g]);\n        }\n      }\n    } else {\n      b.push(d);\n    }\n  }\n  return b;\n};\ngoog.array.rotate = function(a, b) {\n  goog.asserts.assert(null != a.length);\n  a.length && (b %= a.length, 0 < b ? Array.prototype.unshift.apply(a, a.splice(-b, b)) : 0 > b && Array.prototype.push.apply(a, a.splice(0, -b)));\n  return a;\n};\ngoog.array.moveItem = function(a, b, c) {\n  goog.asserts.assert(0 <= b && b < a.length);\n  goog.asserts.assert(0 <= c && c < a.length);\n  b = Array.prototype.splice.call(a, b, 1);\n  Array.prototype.splice.call(a, c, 0, b[0]);\n};\ngoog.array.zip = function(a) {\n  if (!arguments.length) {\n    return [];\n  }\n  for (var b = [], c = arguments[0].length, d = 1; d < arguments.length; d++) {\n    arguments[d].length < c && (c = arguments[d].length);\n  }\n  for (d = 0; d < c; d++) {\n    for (var e = [], f = 0; f < arguments.length; f++) {\n      e.push(arguments[f][d]);\n    }\n    b.push(e);\n  }\n  return b;\n};\ngoog.array.shuffle = function(a, b) {\n  for (var c = b || Math.random, d = a.length - 1; 0 < d; d--) {\n    var e = Math.floor(c() * (d + 1)), f = a[d];\n    a[d] = a[e];\n    a[e] = f;\n  }\n};\ngoog.array.copyByIndex = function(a, b) {\n  var c = [];\n  goog.array.forEach(b, function(b) {\n    c.push(a[b]);\n  });\n  return c;\n};\ngoog.array.concatMap = function(a, b, c) {\n  return goog.array.concat.apply([], goog.array.map(a, b, c));\n};\ngoog.object = {};\ngoog.object.is = function(a, b) {\n  return a === b ? 0 !== a || 1 / a === 1 / b : a !== a && b !== b;\n};\ngoog.object.forEach = function(a, b, c) {\n  for (var d in a) {\n    b.call(c, a[d], d, a);\n  }\n};\ngoog.object.filter = function(a, b, c) {\n  var d = {}, e;\n  for (e in a) {\n    b.call(c, a[e], e, a) && (d[e] = a[e]);\n  }\n  return d;\n};\ngoog.object.map = function(a, b, c) {\n  var d = {}, e;\n  for (e in a) {\n    d[e] = b.call(c, a[e], e, a);\n  }\n  return d;\n};\ngoog.object.some = function(a, b, c) {\n  for (var d in a) {\n    if (b.call(c, a[d], d, a)) {\n      return !0;\n    }\n  }\n  return !1;\n};\ngoog.object.every = function(a, b, c) {\n  for (var d in a) {\n    if (!b.call(c, a[d], d, a)) {\n      return !1;\n    }\n  }\n  return !0;\n};\ngoog.object.getCount = function(a) {\n  var b = 0, c;\n  for (c in a) {\n    b++;\n  }\n  return b;\n};\ngoog.object.getAnyKey = function(a) {\n  for (var b in a) {\n    return b;\n  }\n};\ngoog.object.getAnyValue = function(a) {\n  for (var b in a) {\n    return a[b];\n  }\n};\ngoog.object.contains = function(a, b) {\n  return goog.object.containsValue(a, b);\n};\ngoog.object.getValues = function(a) {\n  var b = [], c = 0, d;\n  for (d in a) {\n    b[c++] = a[d];\n  }\n  return b;\n};\ngoog.object.getKeys = function(a) {\n  var b = [], c = 0, d;\n  for (d in a) {\n    b[c++] = d;\n  }\n  return b;\n};\ngoog.object.getValueByKeys = function(a, b) {\n  var c = goog.isArrayLike(b), d = c ? b : arguments;\n  for (c = c ? 0 : 1; c < d.length; c++) {\n    if (null == a) {\n      return;\n    }\n    a = a[d[c]];\n  }\n  return a;\n};\ngoog.object.containsKey = function(a, b) {\n  return null !== a && b in a;\n};\ngoog.object.containsValue = function(a, b) {\n  for (var c in a) {\n    if (a[c] == b) {\n      return !0;\n    }\n  }\n  return !1;\n};\ngoog.object.findKey = function(a, b, c) {\n  for (var d in a) {\n    if (b.call(c, a[d], d, a)) {\n      return d;\n    }\n  }\n};\ngoog.object.findValue = function(a, b, c) {\n  return (b = goog.object.findKey(a, b, c)) && a[b];\n};\ngoog.object.isEmpty = function(a) {\n  for (var b in a) {\n    return !1;\n  }\n  return !0;\n};\ngoog.object.clear = function(a) {\n  for (var b in a) {\n    delete a[b];\n  }\n};\ngoog.object.remove = function(a, b) {\n  var c;\n  (c = b in a) && delete a[b];\n  return c;\n};\ngoog.object.add = function(a, b, c) {\n  if (null !== a && b in a) {\n    throw Error('The object already contains the key \"' + b + '\"');\n  }\n  goog.object.set(a, b, c);\n};\ngoog.object.get = function(a, b, c) {\n  return null !== a && b in a ? a[b] : c;\n};\ngoog.object.set = function(a, b, c) {\n  a[b] = c;\n};\ngoog.object.setIfUndefined = function(a, b, c) {\n  return b in a ? a[b] : a[b] = c;\n};\ngoog.object.setWithReturnValueIfNotSet = function(a, b, c) {\n  if (b in a) {\n    return a[b];\n  }\n  c = c();\n  return a[b] = c;\n};\ngoog.object.equals = function(a, b) {\n  for (var c in a) {\n    if (!(c in b) || a[c] !== b[c]) {\n      return !1;\n    }\n  }\n  for (var d in b) {\n    if (!(d in a)) {\n      return !1;\n    }\n  }\n  return !0;\n};\ngoog.object.clone = function(a) {\n  var b = {}, c;\n  for (c in a) {\n    b[c] = a[c];\n  }\n  return b;\n};\ngoog.object.unsafeClone = function(a) {\n  var b = goog.typeOf(a);\n  if (\"object\" == b || \"array\" == b) {\n    if (goog.isFunction(a.clone)) {\n      return a.clone();\n    }\n    b = \"array\" == b ? [] : {};\n    for (var c in a) {\n      b[c] = goog.object.unsafeClone(a[c]);\n    }\n    return b;\n  }\n  return a;\n};\ngoog.object.transpose = function(a) {\n  var b = {}, c;\n  for (c in a) {\n    b[a[c]] = c;\n  }\n  return b;\n};\ngoog.object.PROTOTYPE_FIELDS_ = \"constructor hasOwnProperty isPrototypeOf propertyIsEnumerable toLocaleString toString valueOf\".split(\" \");\ngoog.object.extend = function(a, b) {\n  for (var c, d, e = 1; e < arguments.length; e++) {\n    d = arguments[e];\n    for (c in d) {\n      a[c] = d[c];\n    }\n    for (var f = 0; f < goog.object.PROTOTYPE_FIELDS_.length; f++) {\n      c = goog.object.PROTOTYPE_FIELDS_[f], Object.prototype.hasOwnProperty.call(d, c) && (a[c] = d[c]);\n    }\n  }\n};\ngoog.object.create = function(a) {\n  var b = arguments.length;\n  if (1 == b && goog.isArray(arguments[0])) {\n    return goog.object.create.apply(null, arguments[0]);\n  }\n  if (b % 2) {\n    throw Error(\"Uneven number of arguments\");\n  }\n  for (var c = {}, d = 0; d < b; d += 2) {\n    c[arguments[d]] = arguments[d + 1];\n  }\n  return c;\n};\ngoog.object.createSet = function(a) {\n  var b = arguments.length;\n  if (1 == b && goog.isArray(arguments[0])) {\n    return goog.object.createSet.apply(null, arguments[0]);\n  }\n  for (var c = {}, d = 0; d < b; d++) {\n    c[arguments[d]] = !0;\n  }\n  return c;\n};\ngoog.object.createImmutableView = function(a) {\n  var b = a;\n  Object.isFrozen && !Object.isFrozen(a) && (b = Object.create(a), Object.freeze(b));\n  return b;\n};\ngoog.object.isImmutableView = function(a) {\n  return !!Object.isFrozen && Object.isFrozen(a);\n};\ngoog.object.getAllPropertyNames = function(a, b, c) {\n  if (!a) {\n    return [];\n  }\n  if (!Object.getOwnPropertyNames || !Object.getPrototypeOf) {\n    return goog.object.getKeys(a);\n  }\n  for (var d = {}; a && (a !== Object.prototype || b) && (a !== Function.prototype || c);) {\n    for (var e = Object.getOwnPropertyNames(a), f = 0; f < e.length; f++) {\n      d[e[f]] = !0;\n    }\n    a = Object.getPrototypeOf(a);\n  }\n  return goog.object.getKeys(d);\n};\ngoog.object.getSuperClass = function(a) {\n  return (a = Object.getPrototypeOf(a.prototype)) && a.constructor;\n};\ngoog.dom.asserts = {};\ngoog.dom.asserts.assertIsLocation = function(a) {\n  if (goog.asserts.ENABLE_ASSERTS) {\n    var b = goog.dom.asserts.getWindow_(a);\n    b && (!a || !(a instanceof b.Location) && a instanceof b.Element) && goog.asserts.fail(\"Argument is not a Location (or a non-Element mock); got: %s\", goog.dom.asserts.debugStringForType_(a));\n  }\n  return a;\n};\ngoog.dom.asserts.assertIsElementType_ = function(a, b) {\n  if (goog.asserts.ENABLE_ASSERTS) {\n    var c = goog.dom.asserts.getWindow_(a);\n    c && \"undefined\" != typeof c[b] && (a && (a instanceof c[b] || !(a instanceof c.Location || a instanceof c.Element)) || goog.asserts.fail(\"Argument is not a %s (or a non-Element, non-Location mock); got: %s\", b, goog.dom.asserts.debugStringForType_(a)));\n  }\n  return a;\n};\ngoog.dom.asserts.assertIsHTMLAnchorElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLAnchorElement\");\n};\ngoog.dom.asserts.assertIsHTMLButtonElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLButtonElement\");\n};\ngoog.dom.asserts.assertIsHTMLLinkElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLLinkElement\");\n};\ngoog.dom.asserts.assertIsHTMLImageElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLImageElement\");\n};\ngoog.dom.asserts.assertIsHTMLAudioElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLAudioElement\");\n};\ngoog.dom.asserts.assertIsHTMLVideoElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLVideoElement\");\n};\ngoog.dom.asserts.assertIsHTMLInputElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLInputElement\");\n};\ngoog.dom.asserts.assertIsHTMLTextAreaElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLTextAreaElement\");\n};\ngoog.dom.asserts.assertIsHTMLCanvasElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLCanvasElement\");\n};\ngoog.dom.asserts.assertIsHTMLEmbedElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLEmbedElement\");\n};\ngoog.dom.asserts.assertIsHTMLFormElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLFormElement\");\n};\ngoog.dom.asserts.assertIsHTMLFrameElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLFrameElement\");\n};\ngoog.dom.asserts.assertIsHTMLIFrameElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLIFrameElement\");\n};\ngoog.dom.asserts.assertIsHTMLObjectElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLObjectElement\");\n};\ngoog.dom.asserts.assertIsHTMLScriptElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLScriptElement\");\n};\ngoog.dom.asserts.debugStringForType_ = function(a) {\n  if (goog.isObject(a)) {\n    try {\n      return a.constructor.displayName || a.constructor.name || Object.prototype.toString.call(a);\n    } catch (b) {\n      return \"<object could not be stringified>\";\n    }\n  } else {\n    return void 0 === a ? \"undefined\" : null === a ? \"null\" : typeof a;\n  }\n};\ngoog.dom.asserts.getWindow_ = function(a) {\n  try {\n    var b = a && a.ownerDocument, c = b && (b.defaultView || b.parentWindow);\n    c = c || goog.global;\n    if (c.Element && c.Location) {\n      return c;\n    }\n  } catch (d) {\n  }\n  return null;\n};\ngoog.functions = {};\ngoog.functions.constant = function(a) {\n  return function() {\n    return a;\n  };\n};\ngoog.functions.FALSE = function() {\n  return !1;\n};\ngoog.functions.TRUE = function() {\n  return !0;\n};\ngoog.functions.NULL = function() {\n  return null;\n};\ngoog.functions.identity = function(a, b) {\n  return a;\n};\ngoog.functions.error = function(a) {\n  return function() {\n    throw Error(a);\n  };\n};\ngoog.functions.fail = function(a) {\n  return function() {\n    throw a;\n  };\n};\ngoog.functions.lock = function(a, b) {\n  b = b || 0;\n  return function() {\n    return a.apply(this, Array.prototype.slice.call(arguments, 0, b));\n  };\n};\ngoog.functions.nth = function(a) {\n  return function() {\n    return arguments[a];\n  };\n};\ngoog.functions.partialRight = function(a, b) {\n  var c = Array.prototype.slice.call(arguments, 1);\n  return function() {\n    var b = Array.prototype.slice.call(arguments);\n    b.push.apply(b, c);\n    return a.apply(this, b);\n  };\n};\ngoog.functions.withReturnValue = function(a, b) {\n  return goog.functions.sequence(a, goog.functions.constant(b));\n};\ngoog.functions.equalTo = function(a, b) {\n  return function(c) {\n    return b ? a == c : a === c;\n  };\n};\ngoog.functions.compose = function(a, b) {\n  var c = arguments, d = c.length;\n  return function() {\n    var a;\n    d && (a = c[d - 1].apply(this, arguments));\n    for (var b = d - 2; 0 <= b; b--) {\n      a = c[b].call(this, a);\n    }\n    return a;\n  };\n};\ngoog.functions.sequence = function(a) {\n  var b = arguments, c = b.length;\n  return function() {\n    for (var a, e = 0; e < c; e++) {\n      a = b[e].apply(this, arguments);\n    }\n    return a;\n  };\n};\ngoog.functions.and = function(a) {\n  var b = arguments, c = b.length;\n  return function() {\n    for (var a = 0; a < c; a++) {\n      if (!b[a].apply(this, arguments)) {\n        return !1;\n      }\n    }\n    return !0;\n  };\n};\ngoog.functions.or = function(a) {\n  var b = arguments, c = b.length;\n  return function() {\n    for (var a = 0; a < c; a++) {\n      if (b[a].apply(this, arguments)) {\n        return !0;\n      }\n    }\n    return !1;\n  };\n};\ngoog.functions.not = function(a) {\n  return function() {\n    return !a.apply(this, arguments);\n  };\n};\ngoog.functions.create = function(a, b) {\n  var c = function() {\n  };\n  c.prototype = a.prototype;\n  c = new c;\n  a.apply(c, Array.prototype.slice.call(arguments, 1));\n  return c;\n};\ngoog.functions.CACHE_RETURN_VALUE = !0;\ngoog.functions.cacheReturnValue = function(a) {\n  var b = !1, c;\n  return function() {\n    if (!goog.functions.CACHE_RETURN_VALUE) {\n      return a();\n    }\n    b || (c = a(), b = !0);\n    return c;\n  };\n};\ngoog.functions.once = function(a) {\n  var b = a;\n  return function() {\n    if (b) {\n      var a = b;\n      b = null;\n      a();\n    }\n  };\n};\ngoog.functions.debounce = function(a, b, c) {\n  var d = 0;\n  return function(e) {\n    goog.global.clearTimeout(d);\n    var f = arguments;\n    d = goog.global.setTimeout(function() {\n      a.apply(c, f);\n    }, b);\n  };\n};\ngoog.functions.throttle = function(a, b, c) {\n  var d = 0, e = !1, f = [], g = function() {\n    d = 0;\n    e && (e = !1, h());\n  }, h = function() {\n    d = goog.global.setTimeout(g, b);\n    a.apply(c, f);\n  };\n  return function(a) {\n    f = arguments;\n    d ? e = !0 : h();\n  };\n};\ngoog.functions.rateLimit = function(a, b, c) {\n  var d = 0, e = function() {\n    d = 0;\n  };\n  return function(f) {\n    d || (d = goog.global.setTimeout(e, b), a.apply(c, arguments));\n  };\n};\ngoog.dom.HtmlElement = function() {\n};\ngoog.dom.TagName = function(a) {\n  this.tagName_ = a;\n};\ngoog.dom.TagName.prototype.toString = function() {\n  return this.tagName_;\n};\ngoog.dom.TagName.A = new goog.dom.TagName(\"A\");\ngoog.dom.TagName.ABBR = new goog.dom.TagName(\"ABBR\");\ngoog.dom.TagName.ACRONYM = new goog.dom.TagName(\"ACRONYM\");\ngoog.dom.TagName.ADDRESS = new goog.dom.TagName(\"ADDRESS\");\ngoog.dom.TagName.APPLET = new goog.dom.TagName(\"APPLET\");\ngoog.dom.TagName.AREA = new goog.dom.TagName(\"AREA\");\ngoog.dom.TagName.ARTICLE = new goog.dom.TagName(\"ARTICLE\");\ngoog.dom.TagName.ASIDE = new goog.dom.TagName(\"ASIDE\");\ngoog.dom.TagName.AUDIO = new goog.dom.TagName(\"AUDIO\");\ngoog.dom.TagName.B = new goog.dom.TagName(\"B\");\ngoog.dom.TagName.BASE = new goog.dom.TagName(\"BASE\");\ngoog.dom.TagName.BASEFONT = new goog.dom.TagName(\"BASEFONT\");\ngoog.dom.TagName.BDI = new goog.dom.TagName(\"BDI\");\ngoog.dom.TagName.BDO = new goog.dom.TagName(\"BDO\");\ngoog.dom.TagName.BIG = new goog.dom.TagName(\"BIG\");\ngoog.dom.TagName.BLOCKQUOTE = new goog.dom.TagName(\"BLOCKQUOTE\");\ngoog.dom.TagName.BODY = new goog.dom.TagName(\"BODY\");\ngoog.dom.TagName.BR = new goog.dom.TagName(\"BR\");\ngoog.dom.TagName.BUTTON = new goog.dom.TagName(\"BUTTON\");\ngoog.dom.TagName.CANVAS = new goog.dom.TagName(\"CANVAS\");\ngoog.dom.TagName.CAPTION = new goog.dom.TagName(\"CAPTION\");\ngoog.dom.TagName.CENTER = new goog.dom.TagName(\"CENTER\");\ngoog.dom.TagName.CITE = new goog.dom.TagName(\"CITE\");\ngoog.dom.TagName.CODE = new goog.dom.TagName(\"CODE\");\ngoog.dom.TagName.COL = new goog.dom.TagName(\"COL\");\ngoog.dom.TagName.COLGROUP = new goog.dom.TagName(\"COLGROUP\");\ngoog.dom.TagName.COMMAND = new goog.dom.TagName(\"COMMAND\");\ngoog.dom.TagName.DATA = new goog.dom.TagName(\"DATA\");\ngoog.dom.TagName.DATALIST = new goog.dom.TagName(\"DATALIST\");\ngoog.dom.TagName.DD = new goog.dom.TagName(\"DD\");\ngoog.dom.TagName.DEL = new goog.dom.TagName(\"DEL\");\ngoog.dom.TagName.DETAILS = new goog.dom.TagName(\"DETAILS\");\ngoog.dom.TagName.DFN = new goog.dom.TagName(\"DFN\");\ngoog.dom.TagName.DIALOG = new goog.dom.TagName(\"DIALOG\");\ngoog.dom.TagName.DIR = new goog.dom.TagName(\"DIR\");\ngoog.dom.TagName.DIV = new goog.dom.TagName(\"DIV\");\ngoog.dom.TagName.DL = new goog.dom.TagName(\"DL\");\ngoog.dom.TagName.DT = new goog.dom.TagName(\"DT\");\ngoog.dom.TagName.EM = new goog.dom.TagName(\"EM\");\ngoog.dom.TagName.EMBED = new goog.dom.TagName(\"EMBED\");\ngoog.dom.TagName.FIELDSET = new goog.dom.TagName(\"FIELDSET\");\ngoog.dom.TagName.FIGCAPTION = new goog.dom.TagName(\"FIGCAPTION\");\ngoog.dom.TagName.FIGURE = new goog.dom.TagName(\"FIGURE\");\ngoog.dom.TagName.FONT = new goog.dom.TagName(\"FONT\");\ngoog.dom.TagName.FOOTER = new goog.dom.TagName(\"FOOTER\");\ngoog.dom.TagName.FORM = new goog.dom.TagName(\"FORM\");\ngoog.dom.TagName.FRAME = new goog.dom.TagName(\"FRAME\");\ngoog.dom.TagName.FRAMESET = new goog.dom.TagName(\"FRAMESET\");\ngoog.dom.TagName.H1 = new goog.dom.TagName(\"H1\");\ngoog.dom.TagName.H2 = new goog.dom.TagName(\"H2\");\ngoog.dom.TagName.H3 = new goog.dom.TagName(\"H3\");\ngoog.dom.TagName.H4 = new goog.dom.TagName(\"H4\");\ngoog.dom.TagName.H5 = new goog.dom.TagName(\"H5\");\ngoog.dom.TagName.H6 = new goog.dom.TagName(\"H6\");\ngoog.dom.TagName.HEAD = new goog.dom.TagName(\"HEAD\");\ngoog.dom.TagName.HEADER = new goog.dom.TagName(\"HEADER\");\ngoog.dom.TagName.HGROUP = new goog.dom.TagName(\"HGROUP\");\ngoog.dom.TagName.HR = new goog.dom.TagName(\"HR\");\ngoog.dom.TagName.HTML = new goog.dom.TagName(\"HTML\");\ngoog.dom.TagName.I = new goog.dom.TagName(\"I\");\ngoog.dom.TagName.IFRAME = new goog.dom.TagName(\"IFRAME\");\ngoog.dom.TagName.IMG = new goog.dom.TagName(\"IMG\");\ngoog.dom.TagName.INPUT = new goog.dom.TagName(\"INPUT\");\ngoog.dom.TagName.INS = new goog.dom.TagName(\"INS\");\ngoog.dom.TagName.ISINDEX = new goog.dom.TagName(\"ISINDEX\");\ngoog.dom.TagName.KBD = new goog.dom.TagName(\"KBD\");\ngoog.dom.TagName.KEYGEN = new goog.dom.TagName(\"KEYGEN\");\ngoog.dom.TagName.LABEL = new goog.dom.TagName(\"LABEL\");\ngoog.dom.TagName.LEGEND = new goog.dom.TagName(\"LEGEND\");\ngoog.dom.TagName.LI = new goog.dom.TagName(\"LI\");\ngoog.dom.TagName.LINK = new goog.dom.TagName(\"LINK\");\ngoog.dom.TagName.MAIN = new goog.dom.TagName(\"MAIN\");\ngoog.dom.TagName.MAP = new goog.dom.TagName(\"MAP\");\ngoog.dom.TagName.MARK = new goog.dom.TagName(\"MARK\");\ngoog.dom.TagName.MATH = new goog.dom.TagName(\"MATH\");\ngoog.dom.TagName.MENU = new goog.dom.TagName(\"MENU\");\ngoog.dom.TagName.MENUITEM = new goog.dom.TagName(\"MENUITEM\");\ngoog.dom.TagName.META = new goog.dom.TagName(\"META\");\ngoog.dom.TagName.METER = new goog.dom.TagName(\"METER\");\ngoog.dom.TagName.NAV = new goog.dom.TagName(\"NAV\");\ngoog.dom.TagName.NOFRAMES = new goog.dom.TagName(\"NOFRAMES\");\ngoog.dom.TagName.NOSCRIPT = new goog.dom.TagName(\"NOSCRIPT\");\ngoog.dom.TagName.OBJECT = new goog.dom.TagName(\"OBJECT\");\ngoog.dom.TagName.OL = new goog.dom.TagName(\"OL\");\ngoog.dom.TagName.OPTGROUP = new goog.dom.TagName(\"OPTGROUP\");\ngoog.dom.TagName.OPTION = new goog.dom.TagName(\"OPTION\");\ngoog.dom.TagName.OUTPUT = new goog.dom.TagName(\"OUTPUT\");\ngoog.dom.TagName.P = new goog.dom.TagName(\"P\");\ngoog.dom.TagName.PARAM = new goog.dom.TagName(\"PARAM\");\ngoog.dom.TagName.PICTURE = new goog.dom.TagName(\"PICTURE\");\ngoog.dom.TagName.PRE = new goog.dom.TagName(\"PRE\");\ngoog.dom.TagName.PROGRESS = new goog.dom.TagName(\"PROGRESS\");\ngoog.dom.TagName.Q = new goog.dom.TagName(\"Q\");\ngoog.dom.TagName.RP = new goog.dom.TagName(\"RP\");\ngoog.dom.TagName.RT = new goog.dom.TagName(\"RT\");\ngoog.dom.TagName.RTC = new goog.dom.TagName(\"RTC\");\ngoog.dom.TagName.RUBY = new goog.dom.TagName(\"RUBY\");\ngoog.dom.TagName.S = new goog.dom.TagName(\"S\");\ngoog.dom.TagName.SAMP = new goog.dom.TagName(\"SAMP\");\ngoog.dom.TagName.SCRIPT = new goog.dom.TagName(\"SCRIPT\");\ngoog.dom.TagName.SECTION = new goog.dom.TagName(\"SECTION\");\ngoog.dom.TagName.SELECT = new goog.dom.TagName(\"SELECT\");\ngoog.dom.TagName.SMALL = new goog.dom.TagName(\"SMALL\");\ngoog.dom.TagName.SOURCE = new goog.dom.TagName(\"SOURCE\");\ngoog.dom.TagName.SPAN = new goog.dom.TagName(\"SPAN\");\ngoog.dom.TagName.STRIKE = new goog.dom.TagName(\"STRIKE\");\ngoog.dom.TagName.STRONG = new goog.dom.TagName(\"STRONG\");\ngoog.dom.TagName.STYLE = new goog.dom.TagName(\"STYLE\");\ngoog.dom.TagName.SUB = new goog.dom.TagName(\"SUB\");\ngoog.dom.TagName.SUMMARY = new goog.dom.TagName(\"SUMMARY\");\ngoog.dom.TagName.SUP = new goog.dom.TagName(\"SUP\");\ngoog.dom.TagName.SVG = new goog.dom.TagName(\"SVG\");\ngoog.dom.TagName.TABLE = new goog.dom.TagName(\"TABLE\");\ngoog.dom.TagName.TBODY = new goog.dom.TagName(\"TBODY\");\ngoog.dom.TagName.TD = new goog.dom.TagName(\"TD\");\ngoog.dom.TagName.TEMPLATE = new goog.dom.TagName(\"TEMPLATE\");\ngoog.dom.TagName.TEXTAREA = new goog.dom.TagName(\"TEXTAREA\");\ngoog.dom.TagName.TFOOT = new goog.dom.TagName(\"TFOOT\");\ngoog.dom.TagName.TH = new goog.dom.TagName(\"TH\");\ngoog.dom.TagName.THEAD = new goog.dom.TagName(\"THEAD\");\ngoog.dom.TagName.TIME = new goog.dom.TagName(\"TIME\");\ngoog.dom.TagName.TITLE = new goog.dom.TagName(\"TITLE\");\ngoog.dom.TagName.TR = new goog.dom.TagName(\"TR\");\ngoog.dom.TagName.TRACK = new goog.dom.TagName(\"TRACK\");\ngoog.dom.TagName.TT = new goog.dom.TagName(\"TT\");\ngoog.dom.TagName.U = new goog.dom.TagName(\"U\");\ngoog.dom.TagName.UL = new goog.dom.TagName(\"UL\");\ngoog.dom.TagName.VAR = new goog.dom.TagName(\"VAR\");\ngoog.dom.TagName.VIDEO = new goog.dom.TagName(\"VIDEO\");\ngoog.dom.TagName.WBR = new goog.dom.TagName(\"WBR\");\ngoog.dom.tags = {};\ngoog.dom.tags.VOID_TAGS_ = {area:!0, base:!0, br:!0, col:!0, command:!0, embed:!0, hr:!0, img:!0, input:!0, keygen:!0, link:!0, meta:!0, param:!0, source:!0, track:!0, wbr:!0};\ngoog.dom.tags.isVoidTag = function(a) {\n  return !0 === goog.dom.tags.VOID_TAGS_[a];\n};\ngoog.html = {};\ngoog.html.trustedtypes = {};\ngoog.html.trustedtypes.PRIVATE_DO_NOT_ACCESS_OR_ELSE_POLICY = goog.TRUSTED_TYPES_POLICY_NAME ? goog.createTrustedTypesPolicy(goog.TRUSTED_TYPES_POLICY_NAME + \"#html\") : null;\ngoog.string.TypedString = function() {\n};\ngoog.string.Const = function(a, b) {\n  this.stringConstValueWithSecurityContract__googStringSecurityPrivate_ = a === goog.string.Const.GOOG_STRING_CONSTRUCTOR_TOKEN_PRIVATE_ && b || \"\";\n  this.STRING_CONST_TYPE_MARKER__GOOG_STRING_SECURITY_PRIVATE_ = goog.string.Const.TYPE_MARKER_;\n};\ngoog.string.Const.prototype.implementsGoogStringTypedString = !0;\ngoog.string.Const.prototype.getTypedStringValue = function() {\n  return this.stringConstValueWithSecurityContract__googStringSecurityPrivate_;\n};\ngoog.DEBUG && (goog.string.Const.prototype.toString = function() {\n  return \"Const{\" + this.stringConstValueWithSecurityContract__googStringSecurityPrivate_ + \"}\";\n});\ngoog.string.Const.unwrap = function(a) {\n  if (a instanceof goog.string.Const && a.constructor === goog.string.Const && a.STRING_CONST_TYPE_MARKER__GOOG_STRING_SECURITY_PRIVATE_ === goog.string.Const.TYPE_MARKER_) {\n    return a.stringConstValueWithSecurityContract__googStringSecurityPrivate_;\n  }\n  goog.asserts.fail(\"expected object of type Const, got '\" + a + \"'\");\n  return \"type_error:Const\";\n};\ngoog.string.Const.from = function(a) {\n  return new goog.string.Const(goog.string.Const.GOOG_STRING_CONSTRUCTOR_TOKEN_PRIVATE_, a);\n};\ngoog.string.Const.TYPE_MARKER_ = {};\ngoog.string.Const.GOOG_STRING_CONSTRUCTOR_TOKEN_PRIVATE_ = {};\ngoog.string.Const.EMPTY = goog.string.Const.from(\"\");\ngoog.html.SafeScript = function() {\n  this.privateDoNotAccessOrElseSafeScriptWrappedValue_ = \"\";\n  this.SAFE_SCRIPT_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ = goog.html.SafeScript.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_;\n};\ngoog.html.SafeScript.prototype.implementsGoogStringTypedString = !0;\ngoog.html.SafeScript.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ = {};\ngoog.html.SafeScript.fromConstant = function(a) {\n  a = goog.string.Const.unwrap(a);\n  return 0 === a.length ? goog.html.SafeScript.EMPTY : goog.html.SafeScript.createSafeScriptSecurityPrivateDoNotAccessOrElse(a);\n};\ngoog.html.SafeScript.fromConstantAndArgs = function(a, b) {\n  for (var c = [], d = 1; d < arguments.length; d++) {\n    c.push(goog.html.SafeScript.stringify_(arguments[d]));\n  }\n  return goog.html.SafeScript.createSafeScriptSecurityPrivateDoNotAccessOrElse(\"(\" + goog.string.Const.unwrap(a) + \")(\" + c.join(\", \") + \");\");\n};\ngoog.html.SafeScript.fromJson = function(a) {\n  return goog.html.SafeScript.createSafeScriptSecurityPrivateDoNotAccessOrElse(goog.html.SafeScript.stringify_(a));\n};\ngoog.html.SafeScript.prototype.getTypedStringValue = function() {\n  return this.privateDoNotAccessOrElseSafeScriptWrappedValue_.toString();\n};\ngoog.DEBUG && (goog.html.SafeScript.prototype.toString = function() {\n  return \"SafeScript{\" + this.privateDoNotAccessOrElseSafeScriptWrappedValue_ + \"}\";\n});\ngoog.html.SafeScript.unwrap = function(a) {\n  return goog.html.SafeScript.unwrapTrustedScript(a).toString();\n};\ngoog.html.SafeScript.unwrapTrustedScript = function(a) {\n  if (a instanceof goog.html.SafeScript && a.constructor === goog.html.SafeScript && a.SAFE_SCRIPT_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ === goog.html.SafeScript.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_) {\n    return a.privateDoNotAccessOrElseSafeScriptWrappedValue_;\n  }\n  goog.asserts.fail(\"expected object of type SafeScript, got '\" + a + \"' of type \" + goog.typeOf(a));\n  return \"type_error:SafeScript\";\n};\ngoog.html.SafeScript.stringify_ = function(a) {\n  return JSON.stringify(a).replace(/</g, \"\\\\x3c\");\n};\ngoog.html.SafeScript.createSafeScriptSecurityPrivateDoNotAccessOrElse = function(a) {\n  return (new goog.html.SafeScript).initSecurityPrivateDoNotAccessOrElse_(a);\n};\ngoog.html.SafeScript.prototype.initSecurityPrivateDoNotAccessOrElse_ = function(a) {\n  this.privateDoNotAccessOrElseSafeScriptWrappedValue_ = goog.html.trustedtypes.PRIVATE_DO_NOT_ACCESS_OR_ELSE_POLICY ? goog.html.trustedtypes.PRIVATE_DO_NOT_ACCESS_OR_ELSE_POLICY.createScript(a) : a;\n  return this;\n};\ngoog.html.SafeScript.EMPTY = goog.html.SafeScript.createSafeScriptSecurityPrivateDoNotAccessOrElse(\"\");\ngoog.fs = {};\ngoog.fs.url = {};\ngoog.fs.url.createObjectUrl = function(a) {\n  return goog.fs.url.getUrlObject_().createObjectURL(a);\n};\ngoog.fs.url.revokeObjectUrl = function(a) {\n  goog.fs.url.getUrlObject_().revokeObjectURL(a);\n};\ngoog.fs.url.getUrlObject_ = function() {\n  var a = goog.fs.url.findUrlObject_();\n  if (null != a) {\n    return a;\n  }\n  throw Error(\"This browser doesn't seem to support blob URLs\");\n};\ngoog.fs.url.findUrlObject_ = function() {\n  return void 0 !== goog.global.URL && void 0 !== goog.global.URL.createObjectURL ? goog.global.URL : void 0 !== goog.global.webkitURL && void 0 !== goog.global.webkitURL.createObjectURL ? goog.global.webkitURL : void 0 !== goog.global.createObjectURL ? goog.global : null;\n};\ngoog.fs.url.browserSupportsObjectUrls = function() {\n  return null != goog.fs.url.findUrlObject_();\n};\ngoog.i18n = {};\ngoog.i18n.bidi = {};\ngoog.i18n.bidi.FORCE_RTL = !1;\ngoog.i18n.bidi.IS_RTL = goog.i18n.bidi.FORCE_RTL || (\"ar\" == goog.LOCALE.substring(0, 2).toLowerCase() || \"fa\" == goog.LOCALE.substring(0, 2).toLowerCase() || \"he\" == goog.LOCALE.substring(0, 2).toLowerCase() || \"iw\" == goog.LOCALE.substring(0, 2).toLowerCase() || \"ps\" == goog.LOCALE.substring(0, 2).toLowerCase() || \"sd\" == goog.LOCALE.substring(0, 2).toLowerCase() || \"ug\" == goog.LOCALE.substring(0, 2).toLowerCase() || \"ur\" == goog.LOCALE.substring(0, 2).toLowerCase() || \"yi\" == goog.LOCALE.substring(0,\n2).toLowerCase()) && (2 == goog.LOCALE.length || \"-\" == goog.LOCALE.substring(2, 3) || \"_\" == goog.LOCALE.substring(2, 3)) || 3 <= goog.LOCALE.length && \"ckb\" == goog.LOCALE.substring(0, 3).toLowerCase() && (3 == goog.LOCALE.length || \"-\" == goog.LOCALE.substring(3, 4) || \"_\" == goog.LOCALE.substring(3, 4)) || 7 <= goog.LOCALE.length && (\"-\" == goog.LOCALE.substring(2, 3) || \"_\" == goog.LOCALE.substring(2, 3)) && (\"adlm\" == goog.LOCALE.substring(3, 7).toLowerCase() || \"arab\" == goog.LOCALE.substring(3,\n7).toLowerCase() || \"hebr\" == goog.LOCALE.substring(3, 7).toLowerCase() || \"nkoo\" == goog.LOCALE.substring(3, 7).toLowerCase() || \"rohg\" == goog.LOCALE.substring(3, 7).toLowerCase() || \"thaa\" == goog.LOCALE.substring(3, 7).toLowerCase()) || 8 <= goog.LOCALE.length && (\"-\" == goog.LOCALE.substring(3, 4) || \"_\" == goog.LOCALE.substring(3, 4)) && (\"adlm\" == goog.LOCALE.substring(4, 8).toLowerCase() || \"arab\" == goog.LOCALE.substring(4, 8).toLowerCase() || \"hebr\" == goog.LOCALE.substring(4, 8).toLowerCase() ||\n\"nkoo\" == goog.LOCALE.substring(4, 8).toLowerCase() || \"rohg\" == goog.LOCALE.substring(4, 8).toLowerCase() || \"thaa\" == goog.LOCALE.substring(4, 8).toLowerCase());\ngoog.i18n.bidi.Format = {LRE:\"\\u202a\", RLE:\"\\u202b\", PDF:\"\\u202c\", LRM:\"\\u200e\", RLM:\"\\u200f\"};\ngoog.i18n.bidi.Dir = {LTR:1, RTL:-1, NEUTRAL:0};\ngoog.i18n.bidi.RIGHT = \"right\";\ngoog.i18n.bidi.LEFT = \"left\";\ngoog.i18n.bidi.I18N_RIGHT = goog.i18n.bidi.IS_RTL ? goog.i18n.bidi.LEFT : goog.i18n.bidi.RIGHT;\ngoog.i18n.bidi.I18N_LEFT = goog.i18n.bidi.IS_RTL ? goog.i18n.bidi.RIGHT : goog.i18n.bidi.LEFT;\ngoog.i18n.bidi.toDir = function(a, b) {\n  return \"number\" == typeof a ? 0 < a ? goog.i18n.bidi.Dir.LTR : 0 > a ? goog.i18n.bidi.Dir.RTL : b ? null : goog.i18n.bidi.Dir.NEUTRAL : null == a ? null : a ? goog.i18n.bidi.Dir.RTL : goog.i18n.bidi.Dir.LTR;\n};\ngoog.i18n.bidi.ltrChars_ = \"A-Za-z\\u00c0-\\u00d6\\u00d8-\\u00f6\\u00f8-\\u02b8\\u0300-\\u0590\\u0900-\\u1fff\\u200e\\u2c00-\\ud801\\ud804-\\ud839\\ud83c-\\udbff\\uf900-\\ufb1c\\ufe00-\\ufe6f\\ufefd-\\uffff\";\ngoog.i18n.bidi.rtlChars_ = \"\\u0591-\\u06ef\\u06fa-\\u08ff\\u200f\\ud802-\\ud803\\ud83a-\\ud83b\\ufb1d-\\ufdff\\ufe70-\\ufefc\";\ngoog.i18n.bidi.htmlSkipReg_ = /<[^>]*>|&[^;]+;/g;\ngoog.i18n.bidi.stripHtmlIfNeeded_ = function(a, b) {\n  return b ? a.replace(goog.i18n.bidi.htmlSkipReg_, \"\") : a;\n};\ngoog.i18n.bidi.rtlCharReg_ = new RegExp(\"[\" + goog.i18n.bidi.rtlChars_ + \"]\");\ngoog.i18n.bidi.ltrCharReg_ = new RegExp(\"[\" + goog.i18n.bidi.ltrChars_ + \"]\");\ngoog.i18n.bidi.hasAnyRtl = function(a, b) {\n  return goog.i18n.bidi.rtlCharReg_.test(goog.i18n.bidi.stripHtmlIfNeeded_(a, b));\n};\ngoog.i18n.bidi.hasRtlChar = goog.i18n.bidi.hasAnyRtl;\ngoog.i18n.bidi.hasAnyLtr = function(a, b) {\n  return goog.i18n.bidi.ltrCharReg_.test(goog.i18n.bidi.stripHtmlIfNeeded_(a, b));\n};\ngoog.i18n.bidi.ltrRe_ = new RegExp(\"^[\" + goog.i18n.bidi.ltrChars_ + \"]\");\ngoog.i18n.bidi.rtlRe_ = new RegExp(\"^[\" + goog.i18n.bidi.rtlChars_ + \"]\");\ngoog.i18n.bidi.isRtlChar = function(a) {\n  return goog.i18n.bidi.rtlRe_.test(a);\n};\ngoog.i18n.bidi.isLtrChar = function(a) {\n  return goog.i18n.bidi.ltrRe_.test(a);\n};\ngoog.i18n.bidi.isNeutralChar = function(a) {\n  return !goog.i18n.bidi.isLtrChar(a) && !goog.i18n.bidi.isRtlChar(a);\n};\ngoog.i18n.bidi.ltrDirCheckRe_ = new RegExp(\"^[^\" + goog.i18n.bidi.rtlChars_ + \"]*[\" + goog.i18n.bidi.ltrChars_ + \"]\");\ngoog.i18n.bidi.rtlDirCheckRe_ = new RegExp(\"^[^\" + goog.i18n.bidi.ltrChars_ + \"]*[\" + goog.i18n.bidi.rtlChars_ + \"]\");\ngoog.i18n.bidi.startsWithRtl = function(a, b) {\n  return goog.i18n.bidi.rtlDirCheckRe_.test(goog.i18n.bidi.stripHtmlIfNeeded_(a, b));\n};\ngoog.i18n.bidi.isRtlText = goog.i18n.bidi.startsWithRtl;\ngoog.i18n.bidi.startsWithLtr = function(a, b) {\n  return goog.i18n.bidi.ltrDirCheckRe_.test(goog.i18n.bidi.stripHtmlIfNeeded_(a, b));\n};\ngoog.i18n.bidi.isLtrText = goog.i18n.bidi.startsWithLtr;\ngoog.i18n.bidi.isRequiredLtrRe_ = /^http:\\/\\/.*/;\ngoog.i18n.bidi.isNeutralText = function(a, b) {\n  a = goog.i18n.bidi.stripHtmlIfNeeded_(a, b);\n  return goog.i18n.bidi.isRequiredLtrRe_.test(a) || !goog.i18n.bidi.hasAnyLtr(a) && !goog.i18n.bidi.hasAnyRtl(a);\n};\ngoog.i18n.bidi.ltrExitDirCheckRe_ = new RegExp(\"[\" + goog.i18n.bidi.ltrChars_ + \"][^\" + goog.i18n.bidi.rtlChars_ + \"]*$\");\ngoog.i18n.bidi.rtlExitDirCheckRe_ = new RegExp(\"[\" + goog.i18n.bidi.rtlChars_ + \"][^\" + goog.i18n.bidi.ltrChars_ + \"]*$\");\ngoog.i18n.bidi.endsWithLtr = function(a, b) {\n  return goog.i18n.bidi.ltrExitDirCheckRe_.test(goog.i18n.bidi.stripHtmlIfNeeded_(a, b));\n};\ngoog.i18n.bidi.isLtrExitText = goog.i18n.bidi.endsWithLtr;\ngoog.i18n.bidi.endsWithRtl = function(a, b) {\n  return goog.i18n.bidi.rtlExitDirCheckRe_.test(goog.i18n.bidi.stripHtmlIfNeeded_(a, b));\n};\ngoog.i18n.bidi.isRtlExitText = goog.i18n.bidi.endsWithRtl;\ngoog.i18n.bidi.rtlLocalesRe_ = /^(ar|ckb|dv|he|iw|fa|nqo|ps|sd|ug|ur|yi|.*[-_](Adlm|Arab|Hebr|Nkoo|Rohg|Thaa))(?!.*[-_](Latn|Cyrl)($|-|_))($|-|_)/i;\ngoog.i18n.bidi.isRtlLanguage = function(a) {\n  return goog.i18n.bidi.rtlLocalesRe_.test(a);\n};\ngoog.i18n.bidi.bracketGuardTextRe_ = /(\\(.*?\\)+)|(\\[.*?\\]+)|(\\{.*?\\}+)|(<.*?>+)/g;\ngoog.i18n.bidi.guardBracketInText = function(a, b) {\n  var c = (void 0 === b ? goog.i18n.bidi.hasAnyRtl(a) : b) ? goog.i18n.bidi.Format.RLM : goog.i18n.bidi.Format.LRM;\n  return a.replace(goog.i18n.bidi.bracketGuardTextRe_, c + \"$&\" + c);\n};\ngoog.i18n.bidi.enforceRtlInHtml = function(a) {\n  return \"<\" == a.charAt(0) ? a.replace(/<\\w+/, \"$& dir=rtl\") : \"\\n<span dir=rtl>\" + a + \"</span>\";\n};\ngoog.i18n.bidi.enforceRtlInText = function(a) {\n  return goog.i18n.bidi.Format.RLE + a + goog.i18n.bidi.Format.PDF;\n};\ngoog.i18n.bidi.enforceLtrInHtml = function(a) {\n  return \"<\" == a.charAt(0) ? a.replace(/<\\w+/, \"$& dir=ltr\") : \"\\n<span dir=ltr>\" + a + \"</span>\";\n};\ngoog.i18n.bidi.enforceLtrInText = function(a) {\n  return goog.i18n.bidi.Format.LRE + a + goog.i18n.bidi.Format.PDF;\n};\ngoog.i18n.bidi.dimensionsRe_ = /:\\s*([.\\d][.\\w]*)\\s+([.\\d][.\\w]*)\\s+([.\\d][.\\w]*)\\s+([.\\d][.\\w]*)/g;\ngoog.i18n.bidi.leftRe_ = /left/gi;\ngoog.i18n.bidi.rightRe_ = /right/gi;\ngoog.i18n.bidi.tempRe_ = /%%%%/g;\ngoog.i18n.bidi.mirrorCSS = function(a) {\n  return a.replace(goog.i18n.bidi.dimensionsRe_, \":$1 $4 $3 $2\").replace(goog.i18n.bidi.leftRe_, \"%%%%\").replace(goog.i18n.bidi.rightRe_, goog.i18n.bidi.LEFT).replace(goog.i18n.bidi.tempRe_, goog.i18n.bidi.RIGHT);\n};\ngoog.i18n.bidi.doubleQuoteSubstituteRe_ = /([\\u0591-\\u05f2])\"/g;\ngoog.i18n.bidi.singleQuoteSubstituteRe_ = /([\\u0591-\\u05f2])'/g;\ngoog.i18n.bidi.normalizeHebrewQuote = function(a) {\n  return a.replace(goog.i18n.bidi.doubleQuoteSubstituteRe_, \"$1\\u05f4\").replace(goog.i18n.bidi.singleQuoteSubstituteRe_, \"$1\\u05f3\");\n};\ngoog.i18n.bidi.wordSeparatorRe_ = /\\s+/;\ngoog.i18n.bidi.hasNumeralsRe_ = /[\\d\\u06f0-\\u06f9]/;\ngoog.i18n.bidi.rtlDetectionThreshold_ = 0.40;\ngoog.i18n.bidi.estimateDirection = function(a, b) {\n  for (var c = 0, d = 0, e = !1, f = goog.i18n.bidi.stripHtmlIfNeeded_(a, b).split(goog.i18n.bidi.wordSeparatorRe_), g = 0; g < f.length; g++) {\n    var h = f[g];\n    goog.i18n.bidi.startsWithRtl(h) ? (c++, d++) : goog.i18n.bidi.isRequiredLtrRe_.test(h) ? e = !0 : goog.i18n.bidi.hasAnyLtr(h) ? d++ : goog.i18n.bidi.hasNumeralsRe_.test(h) && (e = !0);\n  }\n  return 0 == d ? e ? goog.i18n.bidi.Dir.LTR : goog.i18n.bidi.Dir.NEUTRAL : c / d > goog.i18n.bidi.rtlDetectionThreshold_ ? goog.i18n.bidi.Dir.RTL : goog.i18n.bidi.Dir.LTR;\n};\ngoog.i18n.bidi.detectRtlDirectionality = function(a, b) {\n  return goog.i18n.bidi.estimateDirection(a, b) == goog.i18n.bidi.Dir.RTL;\n};\ngoog.i18n.bidi.setElementDirAndAlign = function(a, b) {\n  a && (b = goog.i18n.bidi.toDir(b)) && (a.style.textAlign = b == goog.i18n.bidi.Dir.RTL ? goog.i18n.bidi.RIGHT : goog.i18n.bidi.LEFT, a.dir = b == goog.i18n.bidi.Dir.RTL ? \"rtl\" : \"ltr\");\n};\ngoog.i18n.bidi.setElementDirByTextDirectionality = function(a, b) {\n  switch(goog.i18n.bidi.estimateDirection(b)) {\n    case goog.i18n.bidi.Dir.LTR:\n      a.dir = \"ltr\";\n      break;\n    case goog.i18n.bidi.Dir.RTL:\n      a.dir = \"rtl\";\n      break;\n    default:\n      a.removeAttribute(\"dir\");\n  }\n};\ngoog.i18n.bidi.DirectionalString = function() {\n};\ngoog.html.TrustedResourceUrl = function(a, b, c) {\n  this.privateDoNotAccessOrElseTrustedResourceUrlWrappedValue_ = a === goog.html.TrustedResourceUrl.CONSTRUCTOR_TOKEN_PRIVATE_ && b || \"\";\n  this.trustedURL_ = a === goog.html.TrustedResourceUrl.CONSTRUCTOR_TOKEN_PRIVATE_ && c || null;\n  this.TRUSTED_RESOURCE_URL_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ = goog.html.TrustedResourceUrl.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_;\n};\ngoog.html.TrustedResourceUrl.prototype.implementsGoogStringTypedString = !0;\ngoog.html.TrustedResourceUrl.prototype.getTypedStringValue = function() {\n  return this.privateDoNotAccessOrElseTrustedResourceUrlWrappedValue_.toString();\n};\ngoog.html.TrustedResourceUrl.prototype.implementsGoogI18nBidiDirectionalString = !0;\ngoog.html.TrustedResourceUrl.prototype.getDirection = function() {\n  return goog.i18n.bidi.Dir.LTR;\n};\ngoog.html.TrustedResourceUrl.prototype.cloneWithParams = function(a, b) {\n  var c = goog.html.TrustedResourceUrl.unwrap(this);\n  c = goog.html.TrustedResourceUrl.URL_PARAM_PARSER_.exec(c);\n  var d = c[3] || \"\";\n  return goog.html.TrustedResourceUrl.createTrustedResourceUrlSecurityPrivateDoNotAccessOrElse(c[1] + goog.html.TrustedResourceUrl.stringifyParams_(\"?\", c[2] || \"\", a) + goog.html.TrustedResourceUrl.stringifyParams_(\"#\", d, b));\n};\ngoog.DEBUG && (goog.html.TrustedResourceUrl.prototype.toString = function() {\n  return \"TrustedResourceUrl{\" + this.privateDoNotAccessOrElseTrustedResourceUrlWrappedValue_ + \"}\";\n});\ngoog.html.TrustedResourceUrl.unwrap = function(a) {\n  return goog.html.TrustedResourceUrl.unwrapTrustedScriptURL(a).toString();\n};\ngoog.html.TrustedResourceUrl.unwrapTrustedScriptURL = function(a) {\n  if (a instanceof goog.html.TrustedResourceUrl && a.constructor === goog.html.TrustedResourceUrl && a.TRUSTED_RESOURCE_URL_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ === goog.html.TrustedResourceUrl.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_) {\n    return a.privateDoNotAccessOrElseTrustedResourceUrlWrappedValue_;\n  }\n  goog.asserts.fail(\"expected object of type TrustedResourceUrl, got '\" + a + \"' of type \" + goog.typeOf(a));\n  return \"type_error:TrustedResourceUrl\";\n};\ngoog.html.TrustedResourceUrl.unwrapTrustedURL = function(a) {\n  return a.trustedURL_ ? a.trustedURL_ : goog.html.TrustedResourceUrl.unwrap(a);\n};\ngoog.html.TrustedResourceUrl.format = function(a, b) {\n  var c = goog.string.Const.unwrap(a);\n  if (!goog.html.TrustedResourceUrl.BASE_URL_.test(c)) {\n    throw Error(\"Invalid TrustedResourceUrl format: \" + c);\n  }\n  var d = c.replace(goog.html.TrustedResourceUrl.FORMAT_MARKER_, function(a, d) {\n    if (!Object.prototype.hasOwnProperty.call(b, d)) {\n      throw Error('Found marker, \"' + d + '\", in format string, \"' + c + '\", but no valid label mapping found in args: ' + JSON.stringify(b));\n    }\n    var e = b[d];\n    return e instanceof goog.string.Const ? goog.string.Const.unwrap(e) : encodeURIComponent(String(e));\n  });\n  return goog.html.TrustedResourceUrl.createTrustedResourceUrlSecurityPrivateDoNotAccessOrElse(d);\n};\ngoog.html.TrustedResourceUrl.FORMAT_MARKER_ = /%{(\\w+)}/g;\ngoog.html.TrustedResourceUrl.BASE_URL_ = /^((https:)?\\/\\/[0-9a-z.:[\\]-]+\\/|\\/[^/\\\\]|[^:/\\\\%]+\\/|[^:/\\\\%]*[?#]|about:blank#)/i;\ngoog.html.TrustedResourceUrl.URL_PARAM_PARSER_ = /^([^?#]*)(\\?[^#]*)?(#[\\s\\S]*)?/;\ngoog.html.TrustedResourceUrl.formatWithParams = function(a, b, c, d) {\n  return goog.html.TrustedResourceUrl.format(a, b).cloneWithParams(c, d);\n};\ngoog.html.TrustedResourceUrl.fromConstant = function(a) {\n  return goog.html.TrustedResourceUrl.createTrustedResourceUrlSecurityPrivateDoNotAccessOrElse(goog.string.Const.unwrap(a));\n};\ngoog.html.TrustedResourceUrl.fromConstants = function(a) {\n  for (var b = \"\", c = 0; c < a.length; c++) {\n    b += goog.string.Const.unwrap(a[c]);\n  }\n  return goog.html.TrustedResourceUrl.createTrustedResourceUrlSecurityPrivateDoNotAccessOrElse(b);\n};\ngoog.html.TrustedResourceUrl.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ = {};\ngoog.html.TrustedResourceUrl.createTrustedResourceUrlSecurityPrivateDoNotAccessOrElse = function(a) {\n  var b = goog.html.trustedtypes.PRIVATE_DO_NOT_ACCESS_OR_ELSE_POLICY ? goog.html.trustedtypes.PRIVATE_DO_NOT_ACCESS_OR_ELSE_POLICY.createScriptURL(a) : a;\n  a = goog.html.trustedtypes.PRIVATE_DO_NOT_ACCESS_OR_ELSE_POLICY ? goog.html.trustedtypes.PRIVATE_DO_NOT_ACCESS_OR_ELSE_POLICY.createURL(a) : null;\n  return new goog.html.TrustedResourceUrl(goog.html.TrustedResourceUrl.CONSTRUCTOR_TOKEN_PRIVATE_, b, a);\n};\ngoog.html.TrustedResourceUrl.stringifyParams_ = function(a, b, c) {\n  if (null == c) {\n    return b;\n  }\n  if (\"string\" === typeof c) {\n    return c ? a + encodeURIComponent(c) : \"\";\n  }\n  for (var d in c) {\n    var e = c[d];\n    e = goog.isArray(e) ? e : [e];\n    for (var f = 0; f < e.length; f++) {\n      var g = e[f];\n      null != g && (b || (b = a), b += (b.length > a.length ? \"&\" : \"\") + encodeURIComponent(d) + \"=\" + encodeURIComponent(String(g)));\n    }\n  }\n  return b;\n};\ngoog.html.TrustedResourceUrl.CONSTRUCTOR_TOKEN_PRIVATE_ = {};\ngoog.string.internal = {};\ngoog.string.internal.startsWith = function(a, b) {\n  return 0 == a.lastIndexOf(b, 0);\n};\ngoog.string.internal.endsWith = function(a, b) {\n  var c = a.length - b.length;\n  return 0 <= c && a.indexOf(b, c) == c;\n};\ngoog.string.internal.caseInsensitiveStartsWith = function(a, b) {\n  return 0 == goog.string.internal.caseInsensitiveCompare(b, a.substr(0, b.length));\n};\ngoog.string.internal.caseInsensitiveEndsWith = function(a, b) {\n  return 0 == goog.string.internal.caseInsensitiveCompare(b, a.substr(a.length - b.length, b.length));\n};\ngoog.string.internal.caseInsensitiveEquals = function(a, b) {\n  return a.toLowerCase() == b.toLowerCase();\n};\ngoog.string.internal.isEmptyOrWhitespace = function(a) {\n  return /^[\\s\\xa0]*$/.test(a);\n};\ngoog.string.internal.trim = goog.TRUSTED_SITE && String.prototype.trim ? function(a) {\n  return a.trim();\n} : function(a) {\n  return /^[\\s\\xa0]*([\\s\\S]*?)[\\s\\xa0]*$/.exec(a)[1];\n};\ngoog.string.internal.caseInsensitiveCompare = function(a, b) {\n  var c = String(a).toLowerCase(), d = String(b).toLowerCase();\n  return c < d ? -1 : c == d ? 0 : 1;\n};\ngoog.string.internal.newLineToBr = function(a, b) {\n  return a.replace(/(\\r\\n|\\r|\\n)/g, b ? \"<br />\" : \"<br>\");\n};\ngoog.string.internal.htmlEscape = function(a, b) {\n  if (b) {\n    a = a.replace(goog.string.internal.AMP_RE_, \"&amp;\").replace(goog.string.internal.LT_RE_, \"&lt;\").replace(goog.string.internal.GT_RE_, \"&gt;\").replace(goog.string.internal.QUOT_RE_, \"&quot;\").replace(goog.string.internal.SINGLE_QUOTE_RE_, \"&#39;\").replace(goog.string.internal.NULL_RE_, \"&#0;\");\n  } else {\n    if (!goog.string.internal.ALL_RE_.test(a)) {\n      return a;\n    }\n    -1 != a.indexOf(\"&\") && (a = a.replace(goog.string.internal.AMP_RE_, \"&amp;\"));\n    -1 != a.indexOf(\"<\") && (a = a.replace(goog.string.internal.LT_RE_, \"&lt;\"));\n    -1 != a.indexOf(\">\") && (a = a.replace(goog.string.internal.GT_RE_, \"&gt;\"));\n    -1 != a.indexOf('\"') && (a = a.replace(goog.string.internal.QUOT_RE_, \"&quot;\"));\n    -1 != a.indexOf(\"'\") && (a = a.replace(goog.string.internal.SINGLE_QUOTE_RE_, \"&#39;\"));\n    -1 != a.indexOf(\"\\x00\") && (a = a.replace(goog.string.internal.NULL_RE_, \"&#0;\"));\n  }\n  return a;\n};\ngoog.string.internal.AMP_RE_ = /&/g;\ngoog.string.internal.LT_RE_ = /</g;\ngoog.string.internal.GT_RE_ = />/g;\ngoog.string.internal.QUOT_RE_ = /\"/g;\ngoog.string.internal.SINGLE_QUOTE_RE_ = /'/g;\ngoog.string.internal.NULL_RE_ = /\\x00/g;\ngoog.string.internal.ALL_RE_ = /[\\x00&<>\"']/;\ngoog.string.internal.whitespaceEscape = function(a, b) {\n  return goog.string.internal.newLineToBr(a.replace(/  /g, \" &#160;\"), b);\n};\ngoog.string.internal.contains = function(a, b) {\n  return -1 != a.indexOf(b);\n};\ngoog.string.internal.caseInsensitiveContains = function(a, b) {\n  return goog.string.internal.contains(a.toLowerCase(), b.toLowerCase());\n};\ngoog.string.internal.compareVersions = function(a, b) {\n  for (var c = 0, d = goog.string.internal.trim(String(a)).split(\".\"), e = goog.string.internal.trim(String(b)).split(\".\"), f = Math.max(d.length, e.length), g = 0; 0 == c && g < f; g++) {\n    var h = d[g] || \"\", k = e[g] || \"\";\n    do {\n      h = /(\\d*)(\\D*)(.*)/.exec(h) || [\"\", \"\", \"\", \"\"];\n      k = /(\\d*)(\\D*)(.*)/.exec(k) || [\"\", \"\", \"\", \"\"];\n      if (0 == h[0].length && 0 == k[0].length) {\n        break;\n      }\n      c = 0 == h[1].length ? 0 : parseInt(h[1], 10);\n      var l = 0 == k[1].length ? 0 : parseInt(k[1], 10);\n      c = goog.string.internal.compareElements_(c, l) || goog.string.internal.compareElements_(0 == h[2].length, 0 == k[2].length) || goog.string.internal.compareElements_(h[2], k[2]);\n      h = h[3];\n      k = k[3];\n    } while (0 == c);\n  }\n  return c;\n};\ngoog.string.internal.compareElements_ = function(a, b) {\n  return a < b ? -1 : a > b ? 1 : 0;\n};\ngoog.html.SafeUrl = function(a, b) {\n  this.privateDoNotAccessOrElseSafeUrlWrappedValue_ = a === goog.html.SafeUrl.CONSTRUCTOR_TOKEN_PRIVATE_ && b || \"\";\n  this.SAFE_URL_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ = goog.html.SafeUrl.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_;\n};\ngoog.html.SafeUrl.INNOCUOUS_STRING = \"about:invalid#zClosurez\";\ngoog.html.SafeUrl.prototype.implementsGoogStringTypedString = !0;\ngoog.html.SafeUrl.prototype.getTypedStringValue = function() {\n  return this.privateDoNotAccessOrElseSafeUrlWrappedValue_.toString();\n};\ngoog.html.SafeUrl.prototype.implementsGoogI18nBidiDirectionalString = !0;\ngoog.html.SafeUrl.prototype.getDirection = function() {\n  return goog.i18n.bidi.Dir.LTR;\n};\ngoog.DEBUG && (goog.html.SafeUrl.prototype.toString = function() {\n  return \"SafeUrl{\" + this.privateDoNotAccessOrElseSafeUrlWrappedValue_ + \"}\";\n});\ngoog.html.SafeUrl.unwrap = function(a) {\n  return goog.html.SafeUrl.unwrapTrustedURL(a).toString();\n};\ngoog.html.SafeUrl.unwrapTrustedURL = function(a) {\n  if (a instanceof goog.html.SafeUrl && a.constructor === goog.html.SafeUrl && a.SAFE_URL_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ === goog.html.SafeUrl.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_) {\n    return a.privateDoNotAccessOrElseSafeUrlWrappedValue_;\n  }\n  goog.asserts.fail(\"expected object of type SafeUrl, got '\" + a + \"' of type \" + goog.typeOf(a));\n  return \"type_error:SafeUrl\";\n};\ngoog.html.SafeUrl.fromConstant = function(a) {\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(goog.string.Const.unwrap(a));\n};\ngoog.html.SAFE_MIME_TYPE_PATTERN_ = /^(?:audio\\/(?:3gpp2|3gpp|aac|L16|midi|mp3|mp4|mpeg|oga|ogg|opus|x-m4a|x-wav|wav|webm)|image\\/(?:bmp|gif|jpeg|jpg|png|tiff|webp|x-icon)|text\\/csv|video\\/(?:mpeg|mp4|ogg|webm|quicktime))(?:;\\w+=(?:\\w+|\"[\\w;=]+\"))*$/i;\ngoog.html.SafeUrl.isSafeMimeType = function(a) {\n  return goog.html.SAFE_MIME_TYPE_PATTERN_.test(a);\n};\ngoog.html.SafeUrl.fromBlob = function(a) {\n  a = goog.html.SAFE_MIME_TYPE_PATTERN_.test(a.type) ? goog.fs.url.createObjectUrl(a) : goog.html.SafeUrl.INNOCUOUS_STRING;\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(a);\n};\ngoog.html.DATA_URL_PATTERN_ = /^data:([^,]*);base64,[a-z0-9+\\/]+=*$/i;\ngoog.html.SafeUrl.fromDataUrl = function(a) {\n  a = a.replace(/(%0A|%0D)/g, \"\");\n  var b = a.match(goog.html.DATA_URL_PATTERN_);\n  b = b && goog.html.SAFE_MIME_TYPE_PATTERN_.test(b[1]);\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(b ? a : goog.html.SafeUrl.INNOCUOUS_STRING);\n};\ngoog.html.SafeUrl.fromTelUrl = function(a) {\n  goog.string.internal.caseInsensitiveStartsWith(a, \"tel:\") || (a = goog.html.SafeUrl.INNOCUOUS_STRING);\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(a);\n};\ngoog.html.SIP_URL_PATTERN_ = /^sip[s]?:[+a-z0-9_.!$%&'*\\/=^`{|}~-]+@([a-z0-9-]+\\.)+[a-z0-9]{2,63}$/i;\ngoog.html.SafeUrl.fromSipUrl = function(a) {\n  goog.html.SIP_URL_PATTERN_.test(decodeURIComponent(a)) || (a = goog.html.SafeUrl.INNOCUOUS_STRING);\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(a);\n};\ngoog.html.SafeUrl.fromFacebookMessengerUrl = function(a) {\n  goog.string.internal.caseInsensitiveStartsWith(a, \"fb-messenger://share\") || (a = goog.html.SafeUrl.INNOCUOUS_STRING);\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(a);\n};\ngoog.html.SafeUrl.fromWhatsAppUrl = function(a) {\n  goog.string.internal.caseInsensitiveStartsWith(a, \"whatsapp://send\") || (a = goog.html.SafeUrl.INNOCUOUS_STRING);\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(a);\n};\ngoog.html.SafeUrl.fromSmsUrl = function(a) {\n  goog.string.internal.caseInsensitiveStartsWith(a, \"sms:\") && goog.html.SafeUrl.isSmsUrlBodyValid_(a) || (a = goog.html.SafeUrl.INNOCUOUS_STRING);\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(a);\n};\ngoog.html.SafeUrl.isSmsUrlBodyValid_ = function(a) {\n  var b = a.indexOf(\"#\");\n  0 < b && (a = a.substring(0, b));\n  b = a.match(/[?&]body=/gi);\n  if (!b) {\n    return !0;\n  }\n  if (1 < b.length) {\n    return !1;\n  }\n  a = a.match(/[?&]body=([^&]*)/)[1];\n  if (!a) {\n    return !0;\n  }\n  try {\n    decodeURIComponent(a);\n  } catch (c) {\n    return !1;\n  }\n  return /^(?:[a-z0-9\\-_.~]|%[0-9a-f]{2})+$/i.test(a);\n};\ngoog.html.SafeUrl.fromSshUrl = function(a) {\n  goog.string.internal.caseInsensitiveStartsWith(a, \"ssh://\") || (a = goog.html.SafeUrl.INNOCUOUS_STRING);\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(a);\n};\ngoog.html.SafeUrl.sanitizeChromeExtensionUrl = function(a, b) {\n  return goog.html.SafeUrl.sanitizeExtensionUrl_(/^chrome-extension:\\/\\/([^\\/]+)\\//, a, b);\n};\ngoog.html.SafeUrl.sanitizeFirefoxExtensionUrl = function(a, b) {\n  return goog.html.SafeUrl.sanitizeExtensionUrl_(/^moz-extension:\\/\\/([^\\/]+)\\//, a, b);\n};\ngoog.html.SafeUrl.sanitizeEdgeExtensionUrl = function(a, b) {\n  return goog.html.SafeUrl.sanitizeExtensionUrl_(/^ms-browser-extension:\\/\\/([^\\/]+)\\//, a, b);\n};\ngoog.html.SafeUrl.sanitizeExtensionUrl_ = function(a, b, c) {\n  (a = a.exec(b)) ? (a = a[1], -1 == (c instanceof goog.string.Const ? [goog.string.Const.unwrap(c)] : c.map(function(a) {\n    return goog.string.Const.unwrap(a);\n  })).indexOf(a) && (b = goog.html.SafeUrl.INNOCUOUS_STRING)) : b = goog.html.SafeUrl.INNOCUOUS_STRING;\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(b);\n};\ngoog.html.SafeUrl.fromTrustedResourceUrl = function(a) {\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(goog.html.TrustedResourceUrl.unwrap(a));\n};\ngoog.html.SAFE_URL_PATTERN_ = /^(?:(?:https?|mailto|ftp):|[^:/?#]*(?:[/?#]|$))/i;\ngoog.html.SafeUrl.SAFE_URL_PATTERN = goog.html.SAFE_URL_PATTERN_;\ngoog.html.SafeUrl.sanitize = function(a) {\n  if (a instanceof goog.html.SafeUrl) {\n    return a;\n  }\n  a = \"object\" == typeof a && a.implementsGoogStringTypedString ? a.getTypedStringValue() : String(a);\n  goog.html.SAFE_URL_PATTERN_.test(a) || (a = goog.html.SafeUrl.INNOCUOUS_STRING);\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(a);\n};\ngoog.html.SafeUrl.sanitizeAssertUnchanged = function(a, b) {\n  if (a instanceof goog.html.SafeUrl) {\n    return a;\n  }\n  a = \"object\" == typeof a && a.implementsGoogStringTypedString ? a.getTypedStringValue() : String(a);\n  if (b && /^data:/i.test(a)) {\n    var c = goog.html.SafeUrl.fromDataUrl(a);\n    if (c.getTypedStringValue() == a) {\n      return c;\n    }\n  }\n  goog.asserts.assert(goog.html.SAFE_URL_PATTERN_.test(a), \"%s does not match the safe URL pattern\", a) || (a = goog.html.SafeUrl.INNOCUOUS_STRING);\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(a);\n};\ngoog.html.SafeUrl.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ = {};\ngoog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse = function(a) {\n  return new goog.html.SafeUrl(goog.html.SafeUrl.CONSTRUCTOR_TOKEN_PRIVATE_, goog.html.trustedtypes.PRIVATE_DO_NOT_ACCESS_OR_ELSE_POLICY ? goog.html.trustedtypes.PRIVATE_DO_NOT_ACCESS_OR_ELSE_POLICY.createURL(a) : a);\n};\ngoog.html.SafeUrl.ABOUT_BLANK = goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(\"about:blank\");\ngoog.html.SafeUrl.CONSTRUCTOR_TOKEN_PRIVATE_ = {};\ngoog.html.SafeStyle = function() {\n  this.privateDoNotAccessOrElseSafeStyleWrappedValue_ = \"\";\n  this.SAFE_STYLE_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ = goog.html.SafeStyle.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_;\n};\ngoog.html.SafeStyle.prototype.implementsGoogStringTypedString = !0;\ngoog.html.SafeStyle.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ = {};\ngoog.html.SafeStyle.fromConstant = function(a) {\n  a = goog.string.Const.unwrap(a);\n  if (0 === a.length) {\n    return goog.html.SafeStyle.EMPTY;\n  }\n  goog.asserts.assert(goog.string.internal.endsWith(a, \";\"), \"Last character of style string is not ';': \" + a);\n  goog.asserts.assert(goog.string.internal.contains(a, \":\"), \"Style string must contain at least one ':', to specify a \\\"name: value\\\" pair: \" + a);\n  return goog.html.SafeStyle.createSafeStyleSecurityPrivateDoNotAccessOrElse(a);\n};\ngoog.html.SafeStyle.prototype.getTypedStringValue = function() {\n  return this.privateDoNotAccessOrElseSafeStyleWrappedValue_;\n};\ngoog.DEBUG && (goog.html.SafeStyle.prototype.toString = function() {\n  return \"SafeStyle{\" + this.privateDoNotAccessOrElseSafeStyleWrappedValue_ + \"}\";\n});\ngoog.html.SafeStyle.unwrap = function(a) {\n  if (a instanceof goog.html.SafeStyle && a.constructor === goog.html.SafeStyle && a.SAFE_STYLE_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ === goog.html.SafeStyle.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_) {\n    return a.privateDoNotAccessOrElseSafeStyleWrappedValue_;\n  }\n  goog.asserts.fail(\"expected object of type SafeStyle, got '\" + a + \"' of type \" + goog.typeOf(a));\n  return \"type_error:SafeStyle\";\n};\ngoog.html.SafeStyle.createSafeStyleSecurityPrivateDoNotAccessOrElse = function(a) {\n  return (new goog.html.SafeStyle).initSecurityPrivateDoNotAccessOrElse_(a);\n};\ngoog.html.SafeStyle.prototype.initSecurityPrivateDoNotAccessOrElse_ = function(a) {\n  this.privateDoNotAccessOrElseSafeStyleWrappedValue_ = a;\n  return this;\n};\ngoog.html.SafeStyle.EMPTY = goog.html.SafeStyle.createSafeStyleSecurityPrivateDoNotAccessOrElse(\"\");\ngoog.html.SafeStyle.INNOCUOUS_STRING = \"zClosurez\";\ngoog.html.SafeStyle.create = function(a) {\n  var b = \"\", c;\n  for (c in a) {\n    if (!/^[-_a-zA-Z0-9]+$/.test(c)) {\n      throw Error(\"Name allows only [-_a-zA-Z0-9], got: \" + c);\n    }\n    var d = a[c];\n    null != d && (d = goog.isArray(d) ? goog.array.map(d, goog.html.SafeStyle.sanitizePropertyValue_).join(\" \") : goog.html.SafeStyle.sanitizePropertyValue_(d), b += c + \":\" + d + \";\");\n  }\n  return b ? goog.html.SafeStyle.createSafeStyleSecurityPrivateDoNotAccessOrElse(b) : goog.html.SafeStyle.EMPTY;\n};\ngoog.html.SafeStyle.sanitizePropertyValue_ = function(a) {\n  if (a instanceof goog.html.SafeUrl) {\n    return 'url(\"' + goog.html.SafeUrl.unwrap(a).replace(/</g, \"%3c\").replace(/[\\\\\"]/g, \"\\\\$&\") + '\")';\n  }\n  a = a instanceof goog.string.Const ? goog.string.Const.unwrap(a) : goog.html.SafeStyle.sanitizePropertyValueString_(String(a));\n  if (/[{;}]/.test(a)) {\n    throw new goog.asserts.AssertionError(\"Value does not allow [{;}], got: %s.\", [a]);\n  }\n  return a;\n};\ngoog.html.SafeStyle.sanitizePropertyValueString_ = function(a) {\n  var b = a.replace(goog.html.SafeStyle.FUNCTIONS_RE_, \"$1\").replace(goog.html.SafeStyle.FUNCTIONS_RE_, \"$1\").replace(goog.html.SafeStyle.URL_RE_, \"url\");\n  if (goog.html.SafeStyle.VALUE_RE_.test(b)) {\n    if (goog.html.SafeStyle.COMMENT_RE_.test(a)) {\n      return goog.asserts.fail(\"String value disallows comments, got: \" + a), goog.html.SafeStyle.INNOCUOUS_STRING;\n    }\n    if (!goog.html.SafeStyle.hasBalancedQuotes_(a)) {\n      return goog.asserts.fail(\"String value requires balanced quotes, got: \" + a), goog.html.SafeStyle.INNOCUOUS_STRING;\n    }\n    if (!goog.html.SafeStyle.hasBalancedSquareBrackets_(a)) {\n      return goog.asserts.fail(\"String value requires balanced square brackets and one identifier per pair of brackets, got: \" + a), goog.html.SafeStyle.INNOCUOUS_STRING;\n    }\n  } else {\n    return goog.asserts.fail(\"String value allows only \" + goog.html.SafeStyle.VALUE_ALLOWED_CHARS_ + \" and simple functions, got: \" + a), goog.html.SafeStyle.INNOCUOUS_STRING;\n  }\n  return goog.html.SafeStyle.sanitizeUrl_(a);\n};\ngoog.html.SafeStyle.hasBalancedQuotes_ = function(a) {\n  for (var b = !0, c = !0, d = 0; d < a.length; d++) {\n    var e = a.charAt(d);\n    \"'\" == e && c ? b = !b : '\"' == e && b && (c = !c);\n  }\n  return b && c;\n};\ngoog.html.SafeStyle.hasBalancedSquareBrackets_ = function(a) {\n  for (var b = !0, c = /^[-_a-zA-Z0-9]$/, d = 0; d < a.length; d++) {\n    var e = a.charAt(d);\n    if (\"]\" == e) {\n      if (b) {\n        return !1;\n      }\n      b = !0;\n    } else {\n      if (\"[\" == e) {\n        if (!b) {\n          return !1;\n        }\n        b = !1;\n      } else {\n        if (!b && !c.test(e)) {\n          return !1;\n        }\n      }\n    }\n  }\n  return b;\n};\ngoog.html.SafeStyle.VALUE_ALLOWED_CHARS_ = \"[-,.\\\"'%_!# a-zA-Z0-9\\\\[\\\\]]\";\ngoog.html.SafeStyle.VALUE_RE_ = new RegExp(\"^\" + goog.html.SafeStyle.VALUE_ALLOWED_CHARS_ + \"+$\");\ngoog.html.SafeStyle.URL_RE_ = RegExp(\"\\\\b(url\\\\([ \\t\\n]*)('[ -&(-\\\\[\\\\]-~]*'|\\\"[ !#-\\\\[\\\\]-~]*\\\"|[!#-&*-\\\\[\\\\]-~]*)([ \\t\\n]*\\\\))\", \"g\");\ngoog.html.SafeStyle.ALLOWED_FUNCTIONS_ = \"calc cubic-bezier fit-content hsl hsla matrix minmax repeat rgb rgba (rotate|scale|translate)(X|Y|Z|3d)?\".split(\" \");\ngoog.html.SafeStyle.FUNCTIONS_RE_ = new RegExp(\"\\\\b(\" + goog.html.SafeStyle.ALLOWED_FUNCTIONS_.join(\"|\") + \")\\\\([-+*/0-9a-z.%\\\\[\\\\], ]+\\\\)\", \"g\");\ngoog.html.SafeStyle.COMMENT_RE_ = /\\/\\*/;\ngoog.html.SafeStyle.sanitizeUrl_ = function(a) {\n  return a.replace(goog.html.SafeStyle.URL_RE_, function(a, c, d, e) {\n    var b = \"\";\n    d = d.replace(/^(['\"])(.*)\\1$/, function(a, c, d) {\n      b = c;\n      return d;\n    });\n    a = goog.html.SafeUrl.sanitize(d).getTypedStringValue();\n    return c + b + a + b + e;\n  });\n};\ngoog.html.SafeStyle.concat = function(a) {\n  var b = \"\", c = function(a) {\n    goog.isArray(a) ? goog.array.forEach(a, c) : b += goog.html.SafeStyle.unwrap(a);\n  };\n  goog.array.forEach(arguments, c);\n  return b ? goog.html.SafeStyle.createSafeStyleSecurityPrivateDoNotAccessOrElse(b) : goog.html.SafeStyle.EMPTY;\n};\ngoog.html.SafeStyleSheet = function() {\n  this.privateDoNotAccessOrElseSafeStyleSheetWrappedValue_ = \"\";\n  this.SAFE_STYLE_SHEET_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ = goog.html.SafeStyleSheet.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_;\n};\ngoog.html.SafeStyleSheet.prototype.implementsGoogStringTypedString = !0;\ngoog.html.SafeStyleSheet.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ = {};\ngoog.html.SafeStyleSheet.createRule = function(a, b) {\n  if (goog.string.internal.contains(a, \"<\")) {\n    throw Error(\"Selector does not allow '<', got: \" + a);\n  }\n  var c = a.replace(/('|\")((?!\\1)[^\\r\\n\\f\\\\]|\\\\[\\s\\S])*\\1/g, \"\");\n  if (!/^[-_a-zA-Z0-9#.:* ,>+~[\\]()=^$|]+$/.test(c)) {\n    throw Error(\"Selector allows only [-_a-zA-Z0-9#.:* ,>+~[\\\\]()=^$|] and strings, got: \" + a);\n  }\n  if (!goog.html.SafeStyleSheet.hasBalancedBrackets_(c)) {\n    throw Error(\"() and [] in selector must be balanced, got: \" + a);\n  }\n  b instanceof goog.html.SafeStyle || (b = goog.html.SafeStyle.create(b));\n  c = a + \"{\" + goog.html.SafeStyle.unwrap(b).replace(/</g, \"\\\\3C \") + \"}\";\n  return goog.html.SafeStyleSheet.createSafeStyleSheetSecurityPrivateDoNotAccessOrElse(c);\n};\ngoog.html.SafeStyleSheet.hasBalancedBrackets_ = function(a) {\n  for (var b = {\"(\":\")\", \"[\":\"]\"}, c = [], d = 0; d < a.length; d++) {\n    var e = a[d];\n    if (b[e]) {\n      c.push(b[e]);\n    } else {\n      if (goog.object.contains(b, e) && c.pop() != e) {\n        return !1;\n      }\n    }\n  }\n  return 0 == c.length;\n};\ngoog.html.SafeStyleSheet.concat = function(a) {\n  var b = \"\", c = function(a) {\n    goog.isArray(a) ? goog.array.forEach(a, c) : b += goog.html.SafeStyleSheet.unwrap(a);\n  };\n  goog.array.forEach(arguments, c);\n  return goog.html.SafeStyleSheet.createSafeStyleSheetSecurityPrivateDoNotAccessOrElse(b);\n};\ngoog.html.SafeStyleSheet.fromConstant = function(a) {\n  a = goog.string.Const.unwrap(a);\n  if (0 === a.length) {\n    return goog.html.SafeStyleSheet.EMPTY;\n  }\n  goog.asserts.assert(!goog.string.internal.contains(a, \"<\"), \"Forbidden '<' character in style sheet string: \" + a);\n  return goog.html.SafeStyleSheet.createSafeStyleSheetSecurityPrivateDoNotAccessOrElse(a);\n};\ngoog.html.SafeStyleSheet.prototype.getTypedStringValue = function() {\n  return this.privateDoNotAccessOrElseSafeStyleSheetWrappedValue_;\n};\ngoog.DEBUG && (goog.html.SafeStyleSheet.prototype.toString = function() {\n  return \"SafeStyleSheet{\" + this.privateDoNotAccessOrElseSafeStyleSheetWrappedValue_ + \"}\";\n});\ngoog.html.SafeStyleSheet.unwrap = function(a) {\n  if (a instanceof goog.html.SafeStyleSheet && a.constructor === goog.html.SafeStyleSheet && a.SAFE_STYLE_SHEET_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ === goog.html.SafeStyleSheet.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_) {\n    return a.privateDoNotAccessOrElseSafeStyleSheetWrappedValue_;\n  }\n  goog.asserts.fail(\"expected object of type SafeStyleSheet, got '\" + a + \"' of type \" + goog.typeOf(a));\n  return \"type_error:SafeStyleSheet\";\n};\ngoog.html.SafeStyleSheet.createSafeStyleSheetSecurityPrivateDoNotAccessOrElse = function(a) {\n  return (new goog.html.SafeStyleSheet).initSecurityPrivateDoNotAccessOrElse_(a);\n};\ngoog.html.SafeStyleSheet.prototype.initSecurityPrivateDoNotAccessOrElse_ = function(a) {\n  this.privateDoNotAccessOrElseSafeStyleSheetWrappedValue_ = a;\n  return this;\n};\ngoog.html.SafeStyleSheet.EMPTY = goog.html.SafeStyleSheet.createSafeStyleSheetSecurityPrivateDoNotAccessOrElse(\"\");\ngoog.labs = {};\ngoog.labs.userAgent = {};\ngoog.labs.userAgent.util = {};\ngoog.labs.userAgent.util.getNativeUserAgentString_ = function() {\n  var a = goog.labs.userAgent.util.getNavigator_();\n  return a && (a = a.userAgent) ? a : \"\";\n};\ngoog.labs.userAgent.util.getNavigator_ = function() {\n  return goog.global.navigator;\n};\ngoog.labs.userAgent.util.userAgent_ = goog.labs.userAgent.util.getNativeUserAgentString_();\ngoog.labs.userAgent.util.setUserAgent = function(a) {\n  goog.labs.userAgent.util.userAgent_ = a || goog.labs.userAgent.util.getNativeUserAgentString_();\n};\ngoog.labs.userAgent.util.getUserAgent = function() {\n  return goog.labs.userAgent.util.userAgent_;\n};\ngoog.labs.userAgent.util.matchUserAgent = function(a) {\n  var b = goog.labs.userAgent.util.getUserAgent();\n  return goog.string.internal.contains(b, a);\n};\ngoog.labs.userAgent.util.matchUserAgentIgnoreCase = function(a) {\n  var b = goog.labs.userAgent.util.getUserAgent();\n  return goog.string.internal.caseInsensitiveContains(b, a);\n};\ngoog.labs.userAgent.util.extractVersionTuples = function(a) {\n  for (var b = RegExp(\"(\\\\w[\\\\w ]+)/([^\\\\s]+)\\\\s*(?:\\\\((.*?)\\\\))?\", \"g\"), c = [], d; d = b.exec(a);) {\n    c.push([d[1], d[2], d[3] || void 0]);\n  }\n  return c;\n};\ngoog.labs.userAgent.browser = {};\ngoog.labs.userAgent.browser.matchOpera_ = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Opera\");\n};\ngoog.labs.userAgent.browser.matchIE_ = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Trident\") || goog.labs.userAgent.util.matchUserAgent(\"MSIE\");\n};\ngoog.labs.userAgent.browser.matchEdgeHtml_ = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Edge\");\n};\ngoog.labs.userAgent.browser.matchEdgeChromium_ = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Edg/\");\n};\ngoog.labs.userAgent.browser.matchOperaChromium_ = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"OPR\");\n};\ngoog.labs.userAgent.browser.matchFirefox_ = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Firefox\") || goog.labs.userAgent.util.matchUserAgent(\"FxiOS\");\n};\ngoog.labs.userAgent.browser.matchSafari_ = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Safari\") && !(goog.labs.userAgent.browser.matchChrome_() || goog.labs.userAgent.browser.matchCoast_() || goog.labs.userAgent.browser.matchOpera_() || goog.labs.userAgent.browser.matchEdgeHtml_() || goog.labs.userAgent.browser.matchEdgeChromium_() || goog.labs.userAgent.browser.matchOperaChromium_() || goog.labs.userAgent.browser.matchFirefox_() || goog.labs.userAgent.browser.isSilk() || goog.labs.userAgent.util.matchUserAgent(\"Android\"));\n};\ngoog.labs.userAgent.browser.matchCoast_ = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Coast\");\n};\ngoog.labs.userAgent.browser.matchIosWebview_ = function() {\n  return (goog.labs.userAgent.util.matchUserAgent(\"iPad\") || goog.labs.userAgent.util.matchUserAgent(\"iPhone\")) && !goog.labs.userAgent.browser.matchSafari_() && !goog.labs.userAgent.browser.matchChrome_() && !goog.labs.userAgent.browser.matchCoast_() && !goog.labs.userAgent.browser.matchFirefox_() && goog.labs.userAgent.util.matchUserAgent(\"AppleWebKit\");\n};\ngoog.labs.userAgent.browser.matchChrome_ = function() {\n  return (goog.labs.userAgent.util.matchUserAgent(\"Chrome\") || goog.labs.userAgent.util.matchUserAgent(\"CriOS\")) && !goog.labs.userAgent.browser.matchEdgeHtml_();\n};\ngoog.labs.userAgent.browser.matchAndroidBrowser_ = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Android\") && !(goog.labs.userAgent.browser.isChrome() || goog.labs.userAgent.browser.isFirefox() || goog.labs.userAgent.browser.isOpera() || goog.labs.userAgent.browser.isSilk());\n};\ngoog.labs.userAgent.browser.isOpera = goog.labs.userAgent.browser.matchOpera_;\ngoog.labs.userAgent.browser.isIE = goog.labs.userAgent.browser.matchIE_;\ngoog.labs.userAgent.browser.isEdge = goog.labs.userAgent.browser.matchEdgeHtml_;\ngoog.labs.userAgent.browser.isEdgeChromium = goog.labs.userAgent.browser.matchEdgeChromium_;\ngoog.labs.userAgent.browser.isOperaChromium = goog.labs.userAgent.browser.matchOperaChromium_;\ngoog.labs.userAgent.browser.isFirefox = goog.labs.userAgent.browser.matchFirefox_;\ngoog.labs.userAgent.browser.isSafari = goog.labs.userAgent.browser.matchSafari_;\ngoog.labs.userAgent.browser.isCoast = goog.labs.userAgent.browser.matchCoast_;\ngoog.labs.userAgent.browser.isIosWebview = goog.labs.userAgent.browser.matchIosWebview_;\ngoog.labs.userAgent.browser.isChrome = goog.labs.userAgent.browser.matchChrome_;\ngoog.labs.userAgent.browser.isAndroidBrowser = goog.labs.userAgent.browser.matchAndroidBrowser_;\ngoog.labs.userAgent.browser.isSilk = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Silk\");\n};\ngoog.labs.userAgent.browser.getVersion = function() {\n  function a(a) {\n    a = goog.array.find(a, d);\n    return c[a] || \"\";\n  }\n  var b = goog.labs.userAgent.util.getUserAgent();\n  if (goog.labs.userAgent.browser.isIE()) {\n    return goog.labs.userAgent.browser.getIEVersion_(b);\n  }\n  b = goog.labs.userAgent.util.extractVersionTuples(b);\n  var c = {};\n  goog.array.forEach(b, function(a) {\n    c[a[0]] = a[1];\n  });\n  var d = goog.partial(goog.object.containsKey, c);\n  return goog.labs.userAgent.browser.isOpera() ? a([\"Version\", \"Opera\"]) : goog.labs.userAgent.browser.isEdge() ? a([\"Edge\"]) : goog.labs.userAgent.browser.isEdgeChromium() ? a([\"Edg\"]) : goog.labs.userAgent.browser.isChrome() ? a([\"Chrome\", \"CriOS\"]) : (b = b[2]) && b[1] || \"\";\n};\ngoog.labs.userAgent.browser.isVersionOrHigher = function(a) {\n  return 0 <= goog.string.internal.compareVersions(goog.labs.userAgent.browser.getVersion(), a);\n};\ngoog.labs.userAgent.browser.getIEVersion_ = function(a) {\n  var b = /rv: *([\\d\\.]*)/.exec(a);\n  if (b && b[1]) {\n    return b[1];\n  }\n  b = \"\";\n  var c = /MSIE +([\\d\\.]+)/.exec(a);\n  if (c && c[1]) {\n    if (a = /Trident\\/(\\d.\\d)/.exec(a), \"7.0\" == c[1]) {\n      if (a && a[1]) {\n        switch(a[1]) {\n          case \"4.0\":\n            b = \"8.0\";\n            break;\n          case \"5.0\":\n            b = \"9.0\";\n            break;\n          case \"6.0\":\n            b = \"10.0\";\n            break;\n          case \"7.0\":\n            b = \"11.0\";\n        }\n      } else {\n        b = \"7.0\";\n      }\n    } else {\n      b = c[1];\n    }\n  }\n  return b;\n};\ngoog.html.SafeHtml = function() {\n  this.privateDoNotAccessOrElseSafeHtmlWrappedValue_ = \"\";\n  this.SAFE_HTML_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ = goog.html.SafeHtml.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_;\n  this.dir_ = null;\n};\ngoog.html.SafeHtml.ENABLE_ERROR_MESSAGES = goog.DEBUG;\ngoog.html.SafeHtml.SUPPORT_STYLE_ATTRIBUTE = !0;\ngoog.html.SafeHtml.prototype.implementsGoogI18nBidiDirectionalString = !0;\ngoog.html.SafeHtml.prototype.getDirection = function() {\n  return this.dir_;\n};\ngoog.html.SafeHtml.prototype.implementsGoogStringTypedString = !0;\ngoog.html.SafeHtml.prototype.getTypedStringValue = function() {\n  return this.privateDoNotAccessOrElseSafeHtmlWrappedValue_.toString();\n};\ngoog.DEBUG && (goog.html.SafeHtml.prototype.toString = function() {\n  return \"SafeHtml{\" + this.privateDoNotAccessOrElseSafeHtmlWrappedValue_ + \"}\";\n});\ngoog.html.SafeHtml.unwrap = function(a) {\n  return goog.html.SafeHtml.unwrapTrustedHTML(a).toString();\n};\ngoog.html.SafeHtml.unwrapTrustedHTML = function(a) {\n  if (a instanceof goog.html.SafeHtml && a.constructor === goog.html.SafeHtml && a.SAFE_HTML_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ === goog.html.SafeHtml.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_) {\n    return a.privateDoNotAccessOrElseSafeHtmlWrappedValue_;\n  }\n  goog.asserts.fail(\"expected object of type SafeHtml, got '\" + a + \"' of type \" + goog.typeOf(a));\n  return \"type_error:SafeHtml\";\n};\ngoog.html.SafeHtml.htmlEscape = function(a) {\n  if (a instanceof goog.html.SafeHtml) {\n    return a;\n  }\n  var b = \"object\" == typeof a, c = null;\n  b && a.implementsGoogI18nBidiDirectionalString && (c = a.getDirection());\n  a = b && a.implementsGoogStringTypedString ? a.getTypedStringValue() : String(a);\n  return goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(goog.string.internal.htmlEscape(a), c);\n};\ngoog.html.SafeHtml.htmlEscapePreservingNewlines = function(a) {\n  if (a instanceof goog.html.SafeHtml) {\n    return a;\n  }\n  a = goog.html.SafeHtml.htmlEscape(a);\n  return goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(goog.string.internal.newLineToBr(goog.html.SafeHtml.unwrap(a)), a.getDirection());\n};\ngoog.html.SafeHtml.htmlEscapePreservingNewlinesAndSpaces = function(a) {\n  if (a instanceof goog.html.SafeHtml) {\n    return a;\n  }\n  a = goog.html.SafeHtml.htmlEscape(a);\n  return goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(goog.string.internal.whitespaceEscape(goog.html.SafeHtml.unwrap(a)), a.getDirection());\n};\ngoog.html.SafeHtml.from = goog.html.SafeHtml.htmlEscape;\ngoog.html.SafeHtml.VALID_NAMES_IN_TAG_ = /^[a-zA-Z0-9-]+$/;\ngoog.html.SafeHtml.URL_ATTRIBUTES_ = {action:!0, cite:!0, data:!0, formaction:!0, href:!0, manifest:!0, poster:!0, src:!0};\ngoog.html.SafeHtml.NOT_ALLOWED_TAG_NAMES_ = {APPLET:!0, BASE:!0, EMBED:!0, IFRAME:!0, LINK:!0, MATH:!0, META:!0, OBJECT:!0, SCRIPT:!0, STYLE:!0, SVG:!0, TEMPLATE:!0};\ngoog.html.SafeHtml.create = function(a, b, c) {\n  goog.html.SafeHtml.verifyTagName(String(a));\n  return goog.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse(String(a), b, c);\n};\ngoog.html.SafeHtml.verifyTagName = function(a) {\n  if (!goog.html.SafeHtml.VALID_NAMES_IN_TAG_.test(a)) {\n    throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES ? \"Invalid tag name <\" + a + \">.\" : \"\");\n  }\n  if (a.toUpperCase() in goog.html.SafeHtml.NOT_ALLOWED_TAG_NAMES_) {\n    throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES ? \"Tag name <\" + a + \"> is not allowed for SafeHtml.\" : \"\");\n  }\n};\ngoog.html.SafeHtml.createIframe = function(a, b, c, d) {\n  a && goog.html.TrustedResourceUrl.unwrap(a);\n  var e = {};\n  e.src = a || null;\n  e.srcdoc = b && goog.html.SafeHtml.unwrap(b);\n  a = goog.html.SafeHtml.combineAttributes(e, {sandbox:\"\"}, c);\n  return goog.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse(\"iframe\", a, d);\n};\ngoog.html.SafeHtml.createSandboxIframe = function(a, b, c, d) {\n  if (!goog.html.SafeHtml.canUseSandboxIframe()) {\n    throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES ? \"The browser does not support sandboxed iframes.\" : \"\");\n  }\n  var e = {};\n  e.src = a ? goog.html.SafeUrl.unwrap(goog.html.SafeUrl.sanitize(a)) : null;\n  e.srcdoc = b || null;\n  e.sandbox = \"\";\n  a = goog.html.SafeHtml.combineAttributes(e, {}, c);\n  return goog.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse(\"iframe\", a, d);\n};\ngoog.html.SafeHtml.canUseSandboxIframe = function() {\n  return goog.global.HTMLIFrameElement && \"sandbox\" in goog.global.HTMLIFrameElement.prototype;\n};\ngoog.html.SafeHtml.createScriptSrc = function(a, b) {\n  goog.html.TrustedResourceUrl.unwrap(a);\n  var c = goog.html.SafeHtml.combineAttributes({src:a}, {}, b);\n  return goog.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse(\"script\", c);\n};\ngoog.html.SafeHtml.createScript = function(a, b) {\n  for (var c in b) {\n    var d = c.toLowerCase();\n    if (\"language\" == d || \"src\" == d || \"text\" == d || \"type\" == d) {\n      throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES ? 'Cannot set \"' + d + '\" attribute' : \"\");\n    }\n  }\n  c = \"\";\n  a = goog.array.concat(a);\n  for (d = 0; d < a.length; d++) {\n    c += goog.html.SafeScript.unwrap(a[d]);\n  }\n  c = goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(c, goog.i18n.bidi.Dir.NEUTRAL);\n  return goog.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse(\"script\", b, c);\n};\ngoog.html.SafeHtml.createStyle = function(a, b) {\n  var c = goog.html.SafeHtml.combineAttributes({type:\"text/css\"}, {}, b), d = \"\";\n  a = goog.array.concat(a);\n  for (var e = 0; e < a.length; e++) {\n    d += goog.html.SafeStyleSheet.unwrap(a[e]);\n  }\n  d = goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(d, goog.i18n.bidi.Dir.NEUTRAL);\n  return goog.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse(\"style\", c, d);\n};\ngoog.html.SafeHtml.createMetaRefresh = function(a, b) {\n  var c = goog.html.SafeUrl.unwrap(goog.html.SafeUrl.sanitize(a));\n  (goog.labs.userAgent.browser.isIE() || goog.labs.userAgent.browser.isEdge()) && goog.string.internal.contains(c, \";\") && (c = \"'\" + c.replace(/'/g, \"%27\") + \"'\");\n  return goog.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse(\"meta\", {\"http-equiv\":\"refresh\", content:(b || 0) + \"; url=\" + c});\n};\ngoog.html.SafeHtml.getAttrNameAndValue_ = function(a, b, c) {\n  if (c instanceof goog.string.Const) {\n    c = goog.string.Const.unwrap(c);\n  } else {\n    if (\"style\" == b.toLowerCase()) {\n      if (goog.html.SafeHtml.SUPPORT_STYLE_ATTRIBUTE) {\n        c = goog.html.SafeHtml.getStyleValue_(c);\n      } else {\n        throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES ? 'Attribute \"style\" not supported.' : \"\");\n      }\n    } else {\n      if (/^on/i.test(b)) {\n        throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES ? 'Attribute \"' + b + '\" requires goog.string.Const value, \"' + c + '\" given.' : \"\");\n      }\n      if (b.toLowerCase() in goog.html.SafeHtml.URL_ATTRIBUTES_) {\n        if (c instanceof goog.html.TrustedResourceUrl) {\n          c = goog.html.TrustedResourceUrl.unwrap(c);\n        } else {\n          if (c instanceof goog.html.SafeUrl) {\n            c = goog.html.SafeUrl.unwrap(c);\n          } else {\n            if (\"string\" === typeof c) {\n              c = goog.html.SafeUrl.sanitize(c).getTypedStringValue();\n            } else {\n              throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES ? 'Attribute \"' + b + '\" on tag \"' + a + '\" requires goog.html.SafeUrl, goog.string.Const, or string, value \"' + c + '\" given.' : \"\");\n            }\n          }\n        }\n      }\n    }\n  }\n  c.implementsGoogStringTypedString && (c = c.getTypedStringValue());\n  goog.asserts.assert(\"string\" === typeof c || \"number\" === typeof c, \"String or number value expected, got \" + typeof c + \" with value: \" + c);\n  return b + '=\"' + goog.string.internal.htmlEscape(String(c)) + '\"';\n};\ngoog.html.SafeHtml.getStyleValue_ = function(a) {\n  if (!goog.isObject(a)) {\n    throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES ? 'The \"style\" attribute requires goog.html.SafeStyle or map of style properties, ' + typeof a + \" given: \" + a : \"\");\n  }\n  a instanceof goog.html.SafeStyle || (a = goog.html.SafeStyle.create(a));\n  return goog.html.SafeStyle.unwrap(a);\n};\ngoog.html.SafeHtml.createWithDir = function(a, b, c, d) {\n  b = goog.html.SafeHtml.create(b, c, d);\n  b.dir_ = a;\n  return b;\n};\ngoog.html.SafeHtml.join = function(a, b) {\n  var c = goog.html.SafeHtml.htmlEscape(a), d = c.getDirection(), e = [], f = function(a) {\n    goog.isArray(a) ? goog.array.forEach(a, f) : (a = goog.html.SafeHtml.htmlEscape(a), e.push(goog.html.SafeHtml.unwrap(a)), a = a.getDirection(), d == goog.i18n.bidi.Dir.NEUTRAL ? d = a : a != goog.i18n.bidi.Dir.NEUTRAL && d != a && (d = null));\n  };\n  goog.array.forEach(b, f);\n  return goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(e.join(goog.html.SafeHtml.unwrap(c)), d);\n};\ngoog.html.SafeHtml.concat = function(a) {\n  return goog.html.SafeHtml.join(goog.html.SafeHtml.EMPTY, Array.prototype.slice.call(arguments));\n};\ngoog.html.SafeHtml.concatWithDir = function(a, b) {\n  var c = goog.html.SafeHtml.concat(goog.array.slice(arguments, 1));\n  c.dir_ = a;\n  return c;\n};\ngoog.html.SafeHtml.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ = {};\ngoog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse = function(a, b) {\n  return (new goog.html.SafeHtml).initSecurityPrivateDoNotAccessOrElse_(a, b);\n};\ngoog.html.SafeHtml.prototype.initSecurityPrivateDoNotAccessOrElse_ = function(a, b) {\n  this.privateDoNotAccessOrElseSafeHtmlWrappedValue_ = goog.html.trustedtypes.PRIVATE_DO_NOT_ACCESS_OR_ELSE_POLICY ? goog.html.trustedtypes.PRIVATE_DO_NOT_ACCESS_OR_ELSE_POLICY.createHTML(a) : a;\n  this.dir_ = b;\n  return this;\n};\ngoog.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse = function(a, b, c) {\n  var d = null;\n  var e = \"<\" + a + goog.html.SafeHtml.stringifyAttributes(a, b);\n  null == c ? c = [] : goog.isArray(c) || (c = [c]);\n  goog.dom.tags.isVoidTag(a.toLowerCase()) ? (goog.asserts.assert(!c.length, \"Void tag <\" + a + \"> does not allow content.\"), e += \">\") : (d = goog.html.SafeHtml.concat(c), e += \">\" + goog.html.SafeHtml.unwrap(d) + \"</\" + a + \">\", d = d.getDirection());\n  (a = b && b.dir) && (d = /^(ltr|rtl|auto)$/i.test(a) ? goog.i18n.bidi.Dir.NEUTRAL : null);\n  return goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(e, d);\n};\ngoog.html.SafeHtml.stringifyAttributes = function(a, b) {\n  var c = \"\";\n  if (b) {\n    for (var d in b) {\n      if (!goog.html.SafeHtml.VALID_NAMES_IN_TAG_.test(d)) {\n        throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES ? 'Invalid attribute name \"' + d + '\".' : \"\");\n      }\n      var e = b[d];\n      null != e && (c += \" \" + goog.html.SafeHtml.getAttrNameAndValue_(a, d, e));\n    }\n  }\n  return c;\n};\ngoog.html.SafeHtml.combineAttributes = function(a, b, c) {\n  var d = {}, e;\n  for (e in a) {\n    goog.asserts.assert(e.toLowerCase() == e, \"Must be lower case\"), d[e] = a[e];\n  }\n  for (e in b) {\n    goog.asserts.assert(e.toLowerCase() == e, \"Must be lower case\"), d[e] = b[e];\n  }\n  if (c) {\n    for (e in c) {\n      var f = e.toLowerCase();\n      if (f in a) {\n        throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES ? 'Cannot override \"' + f + '\" attribute, got \"' + e + '\" with value \"' + c[e] + '\"' : \"\");\n      }\n      f in b && delete d[f];\n      d[e] = c[e];\n    }\n  }\n  return d;\n};\ngoog.html.SafeHtml.DOCTYPE_HTML = goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(\"<!DOCTYPE html>\", goog.i18n.bidi.Dir.NEUTRAL);\ngoog.html.SafeHtml.EMPTY = goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(\"\", goog.i18n.bidi.Dir.NEUTRAL);\ngoog.html.SafeHtml.BR = goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(\"<br>\", goog.i18n.bidi.Dir.NEUTRAL);\ngoog.html.uncheckedconversions = {};\ngoog.html.uncheckedconversions.safeHtmlFromStringKnownToSatisfyTypeContract = function(a, b, c) {\n  goog.asserts.assertString(goog.string.Const.unwrap(a), \"must provide justification\");\n  goog.asserts.assert(!goog.string.internal.isEmptyOrWhitespace(goog.string.Const.unwrap(a)), \"must provide non-empty justification\");\n  return goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(b, c || null);\n};\ngoog.html.uncheckedconversions.safeScriptFromStringKnownToSatisfyTypeContract = function(a, b) {\n  goog.asserts.assertString(goog.string.Const.unwrap(a), \"must provide justification\");\n  goog.asserts.assert(!goog.string.internal.isEmptyOrWhitespace(goog.string.Const.unwrap(a)), \"must provide non-empty justification\");\n  return goog.html.SafeScript.createSafeScriptSecurityPrivateDoNotAccessOrElse(b);\n};\ngoog.html.uncheckedconversions.safeStyleFromStringKnownToSatisfyTypeContract = function(a, b) {\n  goog.asserts.assertString(goog.string.Const.unwrap(a), \"must provide justification\");\n  goog.asserts.assert(!goog.string.internal.isEmptyOrWhitespace(goog.string.Const.unwrap(a)), \"must provide non-empty justification\");\n  return goog.html.SafeStyle.createSafeStyleSecurityPrivateDoNotAccessOrElse(b);\n};\ngoog.html.uncheckedconversions.safeStyleSheetFromStringKnownToSatisfyTypeContract = function(a, b) {\n  goog.asserts.assertString(goog.string.Const.unwrap(a), \"must provide justification\");\n  goog.asserts.assert(!goog.string.internal.isEmptyOrWhitespace(goog.string.Const.unwrap(a)), \"must provide non-empty justification\");\n  return goog.html.SafeStyleSheet.createSafeStyleSheetSecurityPrivateDoNotAccessOrElse(b);\n};\ngoog.html.uncheckedconversions.safeUrlFromStringKnownToSatisfyTypeContract = function(a, b) {\n  goog.asserts.assertString(goog.string.Const.unwrap(a), \"must provide justification\");\n  goog.asserts.assert(!goog.string.internal.isEmptyOrWhitespace(goog.string.Const.unwrap(a)), \"must provide non-empty justification\");\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(b);\n};\ngoog.html.uncheckedconversions.trustedResourceUrlFromStringKnownToSatisfyTypeContract = function(a, b) {\n  goog.asserts.assertString(goog.string.Const.unwrap(a), \"must provide justification\");\n  goog.asserts.assert(!goog.string.internal.isEmptyOrWhitespace(goog.string.Const.unwrap(a)), \"must provide non-empty justification\");\n  return goog.html.TrustedResourceUrl.createTrustedResourceUrlSecurityPrivateDoNotAccessOrElse(b);\n};\ngoog.dom.safe = {};\ngoog.dom.safe.InsertAdjacentHtmlPosition = {AFTERBEGIN:\"afterbegin\", AFTEREND:\"afterend\", BEFOREBEGIN:\"beforebegin\", BEFOREEND:\"beforeend\"};\ngoog.dom.safe.insertAdjacentHtml = function(a, b, c) {\n  a.insertAdjacentHTML(b, goog.html.SafeHtml.unwrapTrustedHTML(c));\n};\ngoog.dom.safe.SET_INNER_HTML_DISALLOWED_TAGS_ = {MATH:!0, SCRIPT:!0, STYLE:!0, SVG:!0, TEMPLATE:!0};\ngoog.dom.safe.isInnerHtmlCleanupRecursive_ = goog.functions.cacheReturnValue(function() {\n  if (goog.DEBUG && \"undefined\" === typeof document) {\n    return !1;\n  }\n  var a = document.createElement(\"div\"), b = document.createElement(\"div\");\n  b.appendChild(document.createElement(\"div\"));\n  a.appendChild(b);\n  if (goog.DEBUG && !a.firstChild) {\n    return !1;\n  }\n  b = a.firstChild.firstChild;\n  a.innerHTML = goog.html.SafeHtml.unwrapTrustedHTML(goog.html.SafeHtml.EMPTY);\n  return !b.parentElement;\n});\ngoog.dom.safe.unsafeSetInnerHtmlDoNotUseOrElse = function(a, b) {\n  if (goog.dom.safe.isInnerHtmlCleanupRecursive_()) {\n    for (; a.lastChild;) {\n      a.removeChild(a.lastChild);\n    }\n  }\n  a.innerHTML = goog.html.SafeHtml.unwrapTrustedHTML(b);\n};\ngoog.dom.safe.setInnerHtml = function(a, b) {\n  if (goog.asserts.ENABLE_ASSERTS) {\n    var c = a.tagName.toUpperCase();\n    if (goog.dom.safe.SET_INNER_HTML_DISALLOWED_TAGS_[c]) {\n      throw Error(\"goog.dom.safe.setInnerHtml cannot be used to set content of \" + a.tagName + \".\");\n    }\n  }\n  goog.dom.safe.unsafeSetInnerHtmlDoNotUseOrElse(a, b);\n};\ngoog.dom.safe.setOuterHtml = function(a, b) {\n  a.outerHTML = goog.html.SafeHtml.unwrapTrustedHTML(b);\n};\ngoog.dom.safe.setFormElementAction = function(a, b) {\n  var c = b instanceof goog.html.SafeUrl ? b : goog.html.SafeUrl.sanitizeAssertUnchanged(b);\n  goog.dom.asserts.assertIsHTMLFormElement(a).action = goog.html.SafeUrl.unwrapTrustedURL(c);\n};\ngoog.dom.safe.setButtonFormAction = function(a, b) {\n  var c = b instanceof goog.html.SafeUrl ? b : goog.html.SafeUrl.sanitizeAssertUnchanged(b);\n  goog.dom.asserts.assertIsHTMLButtonElement(a).formAction = goog.html.SafeUrl.unwrapTrustedURL(c);\n};\ngoog.dom.safe.setInputFormAction = function(a, b) {\n  var c = b instanceof goog.html.SafeUrl ? b : goog.html.SafeUrl.sanitizeAssertUnchanged(b);\n  goog.dom.asserts.assertIsHTMLInputElement(a).formAction = goog.html.SafeUrl.unwrapTrustedURL(c);\n};\ngoog.dom.safe.setStyle = function(a, b) {\n  a.style.cssText = goog.html.SafeStyle.unwrap(b);\n};\ngoog.dom.safe.documentWrite = function(a, b) {\n  a.write(goog.html.SafeHtml.unwrapTrustedHTML(b));\n};\ngoog.dom.safe.setAnchorHref = function(a, b) {\n  goog.dom.asserts.assertIsHTMLAnchorElement(a);\n  var c = b instanceof goog.html.SafeUrl ? b : goog.html.SafeUrl.sanitizeAssertUnchanged(b);\n  a.href = goog.html.SafeUrl.unwrapTrustedURL(c);\n};\ngoog.dom.safe.setImageSrc = function(a, b) {\n  goog.dom.asserts.assertIsHTMLImageElement(a);\n  if (b instanceof goog.html.SafeUrl) {\n    var c = b;\n  } else {\n    c = /^data:image\\//i.test(b), c = goog.html.SafeUrl.sanitizeAssertUnchanged(b, c);\n  }\n  a.src = goog.html.SafeUrl.unwrapTrustedURL(c);\n};\ngoog.dom.safe.setAudioSrc = function(a, b) {\n  goog.dom.asserts.assertIsHTMLAudioElement(a);\n  if (b instanceof goog.html.SafeUrl) {\n    var c = b;\n  } else {\n    c = /^data:audio\\//i.test(b), c = goog.html.SafeUrl.sanitizeAssertUnchanged(b, c);\n  }\n  a.src = goog.html.SafeUrl.unwrapTrustedURL(c);\n};\ngoog.dom.safe.setVideoSrc = function(a, b) {\n  goog.dom.asserts.assertIsHTMLVideoElement(a);\n  if (b instanceof goog.html.SafeUrl) {\n    var c = b;\n  } else {\n    c = /^data:video\\//i.test(b), c = goog.html.SafeUrl.sanitizeAssertUnchanged(b, c);\n  }\n  a.src = goog.html.SafeUrl.unwrapTrustedURL(c);\n};\ngoog.dom.safe.setEmbedSrc = function(a, b) {\n  goog.dom.asserts.assertIsHTMLEmbedElement(a);\n  a.src = goog.html.TrustedResourceUrl.unwrapTrustedScriptURL(b);\n};\ngoog.dom.safe.setFrameSrc = function(a, b) {\n  goog.dom.asserts.assertIsHTMLFrameElement(a);\n  a.src = goog.html.TrustedResourceUrl.unwrapTrustedURL(b);\n};\ngoog.dom.safe.setIframeSrc = function(a, b) {\n  goog.dom.asserts.assertIsHTMLIFrameElement(a);\n  a.src = goog.html.TrustedResourceUrl.unwrapTrustedURL(b);\n};\ngoog.dom.safe.setIframeSrcdoc = function(a, b) {\n  goog.dom.asserts.assertIsHTMLIFrameElement(a);\n  a.srcdoc = goog.html.SafeHtml.unwrapTrustedHTML(b);\n};\ngoog.dom.safe.setLinkHrefAndRel = function(a, b, c) {\n  goog.dom.asserts.assertIsHTMLLinkElement(a);\n  a.rel = c;\n  goog.string.internal.caseInsensitiveContains(c, \"stylesheet\") ? (goog.asserts.assert(b instanceof goog.html.TrustedResourceUrl, 'URL must be TrustedResourceUrl because \"rel\" contains \"stylesheet\"'), a.href = goog.html.TrustedResourceUrl.unwrapTrustedURL(b)) : a.href = b instanceof goog.html.TrustedResourceUrl ? goog.html.TrustedResourceUrl.unwrapTrustedURL(b) : b instanceof goog.html.SafeUrl ? goog.html.SafeUrl.unwrapTrustedURL(b) : goog.html.SafeUrl.unwrapTrustedURL(goog.html.SafeUrl.sanitizeAssertUnchanged(b));\n};\ngoog.dom.safe.setObjectData = function(a, b) {\n  goog.dom.asserts.assertIsHTMLObjectElement(a);\n  a.data = goog.html.TrustedResourceUrl.unwrapTrustedScriptURL(b);\n};\ngoog.dom.safe.setScriptSrc = function(a, b) {\n  goog.dom.asserts.assertIsHTMLScriptElement(a);\n  a.src = goog.html.TrustedResourceUrl.unwrapTrustedScriptURL(b);\n  var c = goog.getScriptNonce();\n  c && a.setAttribute(\"nonce\", c);\n};\ngoog.dom.safe.setScriptContent = function(a, b) {\n  goog.dom.asserts.assertIsHTMLScriptElement(a);\n  a.text = goog.html.SafeScript.unwrapTrustedScript(b);\n  var c = goog.getScriptNonce();\n  c && a.setAttribute(\"nonce\", c);\n};\ngoog.dom.safe.setLocationHref = function(a, b) {\n  goog.dom.asserts.assertIsLocation(a);\n  var c = b instanceof goog.html.SafeUrl ? b : goog.html.SafeUrl.sanitizeAssertUnchanged(b);\n  a.href = goog.html.SafeUrl.unwrapTrustedURL(c);\n};\ngoog.dom.safe.assignLocation = function(a, b) {\n  goog.dom.asserts.assertIsLocation(a);\n  var c = b instanceof goog.html.SafeUrl ? b : goog.html.SafeUrl.sanitizeAssertUnchanged(b);\n  a.assign(goog.html.SafeUrl.unwrapTrustedURL(c));\n};\ngoog.dom.safe.replaceLocation = function(a, b) {\n  goog.dom.asserts.assertIsLocation(a);\n  var c = b instanceof goog.html.SafeUrl ? b : goog.html.SafeUrl.sanitizeAssertUnchanged(b);\n  a.replace(goog.html.SafeUrl.unwrapTrustedURL(c));\n};\ngoog.dom.safe.openInWindow = function(a, b, c, d, e) {\n  a = a instanceof goog.html.SafeUrl ? a : goog.html.SafeUrl.sanitizeAssertUnchanged(a);\n  return (b || goog.global).open(goog.html.SafeUrl.unwrapTrustedURL(a), c ? goog.string.Const.unwrap(c) : \"\", d, e);\n};\ngoog.dom.safe.parseFromStringHtml = function(a, b) {\n  return goog.dom.safe.parseFromString(a, b, \"text/html\");\n};\ngoog.dom.safe.parseFromString = function(a, b, c) {\n  return a.parseFromString(goog.html.SafeHtml.unwrapTrustedHTML(b), c);\n};\ngoog.dom.safe.createImageFromBlob = function(a) {\n  if (!/^image\\/.*/g.test(a.type)) {\n    throw Error(\"goog.dom.safe.createImageFromBlob only accepts MIME type image/.*.\");\n  }\n  var b = goog.global.URL.createObjectURL(a);\n  a = new goog.global.Image;\n  a.onload = function() {\n    goog.global.URL.revokeObjectURL(b);\n  };\n  goog.dom.safe.setImageSrc(a, goog.html.uncheckedconversions.safeUrlFromStringKnownToSatisfyTypeContract(goog.string.Const.from(\"Image blob URL.\"), b));\n  return a;\n};\ngoog.string.DETECT_DOUBLE_ESCAPING = !1;\ngoog.string.FORCE_NON_DOM_HTML_UNESCAPING = !1;\ngoog.string.Unicode = {NBSP:\"\\u00a0\"};\ngoog.string.startsWith = goog.string.internal.startsWith;\ngoog.string.endsWith = goog.string.internal.endsWith;\ngoog.string.caseInsensitiveStartsWith = goog.string.internal.caseInsensitiveStartsWith;\ngoog.string.caseInsensitiveEndsWith = goog.string.internal.caseInsensitiveEndsWith;\ngoog.string.caseInsensitiveEquals = goog.string.internal.caseInsensitiveEquals;\ngoog.string.subs = function(a, b) {\n  for (var c = a.split(\"%s\"), d = \"\", e = Array.prototype.slice.call(arguments, 1); e.length && 1 < c.length;) {\n    d += c.shift() + e.shift();\n  }\n  return d + c.join(\"%s\");\n};\ngoog.string.collapseWhitespace = function(a) {\n  return a.replace(/[\\s\\xa0]+/g, \" \").replace(/^\\s+|\\s+$/g, \"\");\n};\ngoog.string.isEmptyOrWhitespace = goog.string.internal.isEmptyOrWhitespace;\ngoog.string.isEmptyString = function(a) {\n  return 0 == a.length;\n};\ngoog.string.isEmpty = goog.string.isEmptyOrWhitespace;\ngoog.string.isEmptyOrWhitespaceSafe = function(a) {\n  return goog.string.isEmptyOrWhitespace(goog.string.makeSafe(a));\n};\ngoog.string.isEmptySafe = goog.string.isEmptyOrWhitespaceSafe;\ngoog.string.isBreakingWhitespace = function(a) {\n  return !/[^\\t\\n\\r ]/.test(a);\n};\ngoog.string.isAlpha = function(a) {\n  return !/[^a-zA-Z]/.test(a);\n};\ngoog.string.isNumeric = function(a) {\n  return !/[^0-9]/.test(a);\n};\ngoog.string.isAlphaNumeric = function(a) {\n  return !/[^a-zA-Z0-9]/.test(a);\n};\ngoog.string.isSpace = function(a) {\n  return \" \" == a;\n};\ngoog.string.isUnicodeChar = function(a) {\n  return 1 == a.length && \" \" <= a && \"~\" >= a || \"\\u0080\" <= a && \"\\ufffd\" >= a;\n};\ngoog.string.stripNewlines = function(a) {\n  return a.replace(/(\\r\\n|\\r|\\n)+/g, \" \");\n};\ngoog.string.canonicalizeNewlines = function(a) {\n  return a.replace(/(\\r\\n|\\r|\\n)/g, \"\\n\");\n};\ngoog.string.normalizeWhitespace = function(a) {\n  return a.replace(/\\xa0|\\s/g, \" \");\n};\ngoog.string.normalizeSpaces = function(a) {\n  return a.replace(/\\xa0|[ \\t]+/g, \" \");\n};\ngoog.string.collapseBreakingSpaces = function(a) {\n  return a.replace(/[\\t\\r\\n ]+/g, \" \").replace(/^[\\t\\r\\n ]+|[\\t\\r\\n ]+$/g, \"\");\n};\ngoog.string.trim = goog.string.internal.trim;\ngoog.string.trimLeft = function(a) {\n  return a.replace(/^[\\s\\xa0]+/, \"\");\n};\ngoog.string.trimRight = function(a) {\n  return a.replace(/[\\s\\xa0]+$/, \"\");\n};\ngoog.string.caseInsensitiveCompare = goog.string.internal.caseInsensitiveCompare;\ngoog.string.numberAwareCompare_ = function(a, b, c) {\n  if (a == b) {\n    return 0;\n  }\n  if (!a) {\n    return -1;\n  }\n  if (!b) {\n    return 1;\n  }\n  for (var d = a.toLowerCase().match(c), e = b.toLowerCase().match(c), f = Math.min(d.length, e.length), g = 0; g < f; g++) {\n    c = d[g];\n    var h = e[g];\n    if (c != h) {\n      return a = parseInt(c, 10), !isNaN(a) && (b = parseInt(h, 10), !isNaN(b) && a - b) ? a - b : c < h ? -1 : 1;\n    }\n  }\n  return d.length != e.length ? d.length - e.length : a < b ? -1 : 1;\n};\ngoog.string.intAwareCompare = function(a, b) {\n  return goog.string.numberAwareCompare_(a, b, /\\d+|\\D+/g);\n};\ngoog.string.floatAwareCompare = function(a, b) {\n  return goog.string.numberAwareCompare_(a, b, /\\d+|\\.\\d+|\\D+/g);\n};\ngoog.string.numerateCompare = goog.string.floatAwareCompare;\ngoog.string.urlEncode = function(a) {\n  return encodeURIComponent(String(a));\n};\ngoog.string.urlDecode = function(a) {\n  return decodeURIComponent(a.replace(/\\+/g, \" \"));\n};\ngoog.string.newLineToBr = goog.string.internal.newLineToBr;\ngoog.string.htmlEscape = function(a, b) {\n  a = goog.string.internal.htmlEscape(a, b);\n  goog.string.DETECT_DOUBLE_ESCAPING && (a = a.replace(goog.string.E_RE_, \"&#101;\"));\n  return a;\n};\ngoog.string.E_RE_ = /e/g;\ngoog.string.unescapeEntities = function(a) {\n  return goog.string.contains(a, \"&\") ? !goog.string.FORCE_NON_DOM_HTML_UNESCAPING && \"document\" in goog.global ? goog.string.unescapeEntitiesUsingDom_(a) : goog.string.unescapePureXmlEntities_(a) : a;\n};\ngoog.string.unescapeEntitiesWithDocument = function(a, b) {\n  return goog.string.contains(a, \"&\") ? goog.string.unescapeEntitiesUsingDom_(a, b) : a;\n};\ngoog.string.unescapeEntitiesUsingDom_ = function(a, b) {\n  var c = {\"&amp;\":\"&\", \"&lt;\":\"<\", \"&gt;\":\">\", \"&quot;\":'\"'};\n  var d = b ? b.createElement(\"div\") : goog.global.document.createElement(\"div\");\n  return a.replace(goog.string.HTML_ENTITY_PATTERN_, function(a, b) {\n    var e = c[a];\n    if (e) {\n      return e;\n    }\n    if (\"#\" == b.charAt(0)) {\n      var f = Number(\"0\" + b.substr(1));\n      isNaN(f) || (e = String.fromCharCode(f));\n    }\n    e || (goog.dom.safe.setInnerHtml(d, goog.html.uncheckedconversions.safeHtmlFromStringKnownToSatisfyTypeContract(goog.string.Const.from(\"Single HTML entity.\"), a + \" \")), e = d.firstChild.nodeValue.slice(0, -1));\n    return c[a] = e;\n  });\n};\ngoog.string.unescapePureXmlEntities_ = function(a) {\n  return a.replace(/&([^;]+);/g, function(a, c) {\n    switch(c) {\n      case \"amp\":\n        return \"&\";\n      case \"lt\":\n        return \"<\";\n      case \"gt\":\n        return \">\";\n      case \"quot\":\n        return '\"';\n      default:\n        if (\"#\" == c.charAt(0)) {\n          var b = Number(\"0\" + c.substr(1));\n          if (!isNaN(b)) {\n            return String.fromCharCode(b);\n          }\n        }\n        return a;\n    }\n  });\n};\ngoog.string.HTML_ENTITY_PATTERN_ = /&([^;\\s<&]+);?/g;\ngoog.string.whitespaceEscape = function(a, b) {\n  return goog.string.newLineToBr(a.replace(/  /g, \" &#160;\"), b);\n};\ngoog.string.preserveSpaces = function(a) {\n  return a.replace(/(^|[\\n ]) /g, \"$1\" + goog.string.Unicode.NBSP);\n};\ngoog.string.stripQuotes = function(a, b) {\n  for (var c = b.length, d = 0; d < c; d++) {\n    var e = 1 == c ? b : b.charAt(d);\n    if (a.charAt(0) == e && a.charAt(a.length - 1) == e) {\n      return a.substring(1, a.length - 1);\n    }\n  }\n  return a;\n};\ngoog.string.truncate = function(a, b, c) {\n  c && (a = goog.string.unescapeEntities(a));\n  a.length > b && (a = a.substring(0, b - 3) + \"...\");\n  c && (a = goog.string.htmlEscape(a));\n  return a;\n};\ngoog.string.truncateMiddle = function(a, b, c, d) {\n  c && (a = goog.string.unescapeEntities(a));\n  if (d && a.length > b) {\n    d > b && (d = b);\n    var e = a.length - d;\n    a = a.substring(0, b - d) + \"...\" + a.substring(e);\n  } else {\n    a.length > b && (d = Math.floor(b / 2), e = a.length - d, a = a.substring(0, d + b % 2) + \"...\" + a.substring(e));\n  }\n  c && (a = goog.string.htmlEscape(a));\n  return a;\n};\ngoog.string.specialEscapeChars_ = {\"\\x00\":\"\\\\0\", \"\\b\":\"\\\\b\", \"\\f\":\"\\\\f\", \"\\n\":\"\\\\n\", \"\\r\":\"\\\\r\", \"\\t\":\"\\\\t\", \"\\x0B\":\"\\\\x0B\", '\"':'\\\\\"', \"\\\\\":\"\\\\\\\\\", \"<\":\"\\\\u003C\"};\ngoog.string.jsEscapeCache_ = {\"'\":\"\\\\'\"};\ngoog.string.quote = function(a) {\n  a = String(a);\n  for (var b = ['\"'], c = 0; c < a.length; c++) {\n    var d = a.charAt(c), e = d.charCodeAt(0);\n    b[c + 1] = goog.string.specialEscapeChars_[d] || (31 < e && 127 > e ? d : goog.string.escapeChar(d));\n  }\n  b.push('\"');\n  return b.join(\"\");\n};\ngoog.string.escapeString = function(a) {\n  for (var b = [], c = 0; c < a.length; c++) {\n    b[c] = goog.string.escapeChar(a.charAt(c));\n  }\n  return b.join(\"\");\n};\ngoog.string.escapeChar = function(a) {\n  if (a in goog.string.jsEscapeCache_) {\n    return goog.string.jsEscapeCache_[a];\n  }\n  if (a in goog.string.specialEscapeChars_) {\n    return goog.string.jsEscapeCache_[a] = goog.string.specialEscapeChars_[a];\n  }\n  var b = a.charCodeAt(0);\n  if (31 < b && 127 > b) {\n    var c = a;\n  } else {\n    if (256 > b) {\n      if (c = \"\\\\x\", 16 > b || 256 < b) {\n        c += \"0\";\n      }\n    } else {\n      c = \"\\\\u\", 4096 > b && (c += \"0\");\n    }\n    c += b.toString(16).toUpperCase();\n  }\n  return goog.string.jsEscapeCache_[a] = c;\n};\ngoog.string.contains = goog.string.internal.contains;\ngoog.string.caseInsensitiveContains = goog.string.internal.caseInsensitiveContains;\ngoog.string.countOf = function(a, b) {\n  return a && b ? a.split(b).length - 1 : 0;\n};\ngoog.string.removeAt = function(a, b, c) {\n  var d = a;\n  0 <= b && b < a.length && 0 < c && (d = a.substr(0, b) + a.substr(b + c, a.length - b - c));\n  return d;\n};\ngoog.string.remove = function(a, b) {\n  return a.replace(b, \"\");\n};\ngoog.string.removeAll = function(a, b) {\n  var c = new RegExp(goog.string.regExpEscape(b), \"g\");\n  return a.replace(c, \"\");\n};\ngoog.string.replaceAll = function(a, b, c) {\n  b = new RegExp(goog.string.regExpEscape(b), \"g\");\n  return a.replace(b, c.replace(/\\$/g, \"$$$$\"));\n};\ngoog.string.regExpEscape = function(a) {\n  return String(a).replace(/([-()\\[\\]{}+?*.$\\^|,:#<!\\\\])/g, \"\\\\$1\").replace(/\\x08/g, \"\\\\x08\");\n};\ngoog.string.repeat = String.prototype.repeat ? function(a, b) {\n  return a.repeat(b);\n} : function(a, b) {\n  return Array(b + 1).join(a);\n};\ngoog.string.padNumber = function(a, b, c) {\n  a = void 0 !== c ? a.toFixed(c) : String(a);\n  c = a.indexOf(\".\");\n  -1 == c && (c = a.length);\n  return goog.string.repeat(\"0\", Math.max(0, b - c)) + a;\n};\ngoog.string.makeSafe = function(a) {\n  return null == a ? \"\" : String(a);\n};\ngoog.string.buildString = function(a) {\n  return Array.prototype.join.call(arguments, \"\");\n};\ngoog.string.getRandomString = function() {\n  return Math.floor(2147483648 * Math.random()).toString(36) + Math.abs(Math.floor(2147483648 * Math.random()) ^ goog.now()).toString(36);\n};\ngoog.string.compareVersions = goog.string.internal.compareVersions;\ngoog.string.hashCode = function(a) {\n  for (var b = 0, c = 0; c < a.length; ++c) {\n    b = 31 * b + a.charCodeAt(c) >>> 0;\n  }\n  return b;\n};\ngoog.string.uniqueStringCounter_ = 2147483648 * Math.random() | 0;\ngoog.string.createUniqueString = function() {\n  return \"goog_\" + goog.string.uniqueStringCounter_++;\n};\ngoog.string.toNumber = function(a) {\n  var b = Number(a);\n  return 0 == b && goog.string.isEmptyOrWhitespace(a) ? NaN : b;\n};\ngoog.string.isLowerCamelCase = function(a) {\n  return /^[a-z]+([A-Z][a-z]*)*$/.test(a);\n};\ngoog.string.isUpperCamelCase = function(a) {\n  return /^([A-Z][a-z]*)+$/.test(a);\n};\ngoog.string.toCamelCase = function(a) {\n  return String(a).replace(/\\-([a-z])/g, function(a, c) {\n    return c.toUpperCase();\n  });\n};\ngoog.string.toSelectorCase = function(a) {\n  return String(a).replace(/([A-Z])/g, \"-$1\").toLowerCase();\n};\ngoog.string.toTitleCase = function(a, b) {\n  var c = \"string\" === typeof b ? goog.string.regExpEscape(b) : \"\\\\s\";\n  return a.replace(new RegExp(\"(^\" + (c ? \"|[\" + c + \"]+\" : \"\") + \")([a-z])\", \"g\"), function(a, b, c) {\n    return b + c.toUpperCase();\n  });\n};\ngoog.string.capitalize = function(a) {\n  return String(a.charAt(0)).toUpperCase() + String(a.substr(1)).toLowerCase();\n};\ngoog.string.parseInt = function(a) {\n  isFinite(a) && (a = String(a));\n  return \"string\" === typeof a ? /^\\s*-?0x/i.test(a) ? parseInt(a, 16) : parseInt(a, 10) : NaN;\n};\ngoog.string.splitLimit = function(a, b, c) {\n  a = a.split(b);\n  for (var d = []; 0 < c && a.length;) {\n    d.push(a.shift()), c--;\n  }\n  a.length && d.push(a.join(b));\n  return d;\n};\ngoog.string.lastComponent = function(a, b) {\n  if (b) {\n    \"string\" == typeof b && (b = [b]);\n  } else {\n    return a;\n  }\n  for (var c = -1, d = 0; d < b.length; d++) {\n    if (\"\" != b[d]) {\n      var e = a.lastIndexOf(b[d]);\n      e > c && (c = e);\n    }\n  }\n  return -1 == c ? a : a.slice(c + 1);\n};\ngoog.string.editDistance = function(a, b) {\n  var c = [], d = [];\n  if (a == b) {\n    return 0;\n  }\n  if (!a.length || !b.length) {\n    return Math.max(a.length, b.length);\n  }\n  for (var e = 0; e < b.length + 1; e++) {\n    c[e] = e;\n  }\n  for (e = 0; e < a.length; e++) {\n    d[0] = e + 1;\n    for (var f = 0; f < b.length; f++) {\n      d[f + 1] = Math.min(d[f] + 1, c[f + 1] + 1, c[f] + Number(a[e] != b[f]));\n    }\n    for (f = 0; f < c.length; f++) {\n      c[f] = d[f];\n    }\n  }\n  return d[b.length];\n};\ngoog.proto2 = {};\ngoog.proto2.FieldDescriptor = function(a, b, c) {\n  this.parent_ = a;\n  goog.asserts.assert(goog.string.isNumeric(b));\n  this.tag_ = b;\n  this.name_ = c.name;\n  this.isPacked_ = !!c.packed;\n  this.isRepeated_ = !!c.repeated;\n  this.isRequired_ = !!c.required;\n  this.fieldType_ = c.fieldType;\n  this.nativeType_ = c.type;\n  this.deserializationConversionPermitted_ = !1;\n  switch(this.fieldType_) {\n    case goog.proto2.FieldDescriptor.FieldType.INT64:\n    case goog.proto2.FieldDescriptor.FieldType.UINT64:\n    case goog.proto2.FieldDescriptor.FieldType.FIXED64:\n    case goog.proto2.FieldDescriptor.FieldType.SFIXED64:\n    case goog.proto2.FieldDescriptor.FieldType.SINT64:\n    case goog.proto2.FieldDescriptor.FieldType.FLOAT:\n    case goog.proto2.FieldDescriptor.FieldType.DOUBLE:\n      this.deserializationConversionPermitted_ = !0;\n  }\n  this.defaultValue_ = c.defaultValue;\n};\ngoog.proto2.FieldDescriptor.FieldType = {DOUBLE:1, FLOAT:2, INT64:3, UINT64:4, INT32:5, FIXED64:6, FIXED32:7, BOOL:8, STRING:9, GROUP:10, MESSAGE:11, BYTES:12, UINT32:13, ENUM:14, SFIXED32:15, SFIXED64:16, SINT32:17, SINT64:18};\ngoog.proto2.FieldDescriptor.prototype.getTag = function() {\n  return this.tag_;\n};\ngoog.proto2.FieldDescriptor.prototype.getContainingType = function() {\n  return this.parent_.prototype.getDescriptor();\n};\ngoog.proto2.FieldDescriptor.prototype.getName = function() {\n  return this.name_;\n};\ngoog.proto2.FieldDescriptor.prototype.getDefaultValue = function() {\n  if (void 0 === this.defaultValue_) {\n    var a = this.nativeType_;\n    if (a === Boolean) {\n      this.defaultValue_ = !1;\n    } else {\n      if (a === Number) {\n        this.defaultValue_ = 0;\n      } else {\n        if (a === String) {\n          this.defaultValue_ = this.deserializationConversionPermitted_ ? \"0\" : \"\";\n        } else {\n          return new a;\n        }\n      }\n    }\n  }\n  return this.defaultValue_;\n};\ngoog.proto2.FieldDescriptor.prototype.getFieldType = function() {\n  return this.fieldType_;\n};\ngoog.proto2.FieldDescriptor.prototype.getNativeType = function() {\n  return this.nativeType_;\n};\ngoog.proto2.FieldDescriptor.prototype.deserializationConversionPermitted = function() {\n  return this.deserializationConversionPermitted_;\n};\ngoog.proto2.FieldDescriptor.prototype.getFieldMessageType = function() {\n  return this.nativeType_.prototype.getDescriptor();\n};\ngoog.proto2.FieldDescriptor.prototype.isCompositeType = function() {\n  return this.fieldType_ == goog.proto2.FieldDescriptor.FieldType.MESSAGE || this.fieldType_ == goog.proto2.FieldDescriptor.FieldType.GROUP;\n};\ngoog.proto2.FieldDescriptor.prototype.isPacked = function() {\n  return this.isPacked_;\n};\ngoog.proto2.FieldDescriptor.prototype.isRepeated = function() {\n  return this.isRepeated_;\n};\ngoog.proto2.FieldDescriptor.prototype.isRequired = function() {\n  return this.isRequired_;\n};\ngoog.proto2.FieldDescriptor.prototype.isOptional = function() {\n  return !this.isRepeated_ && !this.isRequired_;\n};\ngoog.proto2.Descriptor = function(a, b, c) {\n  this.messageType_ = a;\n  this.name_ = b.name || null;\n  this.fullName_ = b.fullName || null;\n  this.containingType_ = b.containingType;\n  this.fields_ = {};\n  for (a = 0; a < c.length; a++) {\n    b = c[a], this.fields_[b.getTag()] = b;\n  }\n};\ngoog.proto2.Descriptor.prototype.getName = function() {\n  return this.name_;\n};\ngoog.proto2.Descriptor.prototype.getFullName = function() {\n  return this.fullName_;\n};\ngoog.proto2.Descriptor.prototype.getContainingType = function() {\n  return this.containingType_ ? this.containingType_.getDescriptor() : null;\n};\ngoog.proto2.Descriptor.prototype.getFields = function() {\n  var a = goog.object.getValues(this.fields_);\n  goog.array.sort(a, function(a, c) {\n    return a.getTag() - c.getTag();\n  });\n  return a;\n};\ngoog.proto2.Descriptor.prototype.getFieldsMap = function() {\n  return this.fields_;\n};\ngoog.proto2.Descriptor.prototype.findFieldByName = function(a) {\n  return goog.object.findValue(this.fields_, function(b, c, d) {\n    return b.getName() == a;\n  }) || null;\n};\ngoog.proto2.Descriptor.prototype.findFieldByTag = function(a) {\n  goog.asserts.assert(goog.string.isNumeric(a));\n  return this.fields_[parseInt(a, 10)] || null;\n};\ngoog.proto2.Descriptor.prototype.createMessageInstance = function() {\n  return new this.messageType_;\n};\ngoog.proto2.Message = function() {\n  this.values_ = {};\n  this.fields_ = this.getDescriptor().getFieldsMap();\n  this.deserializedFields_ = this.lazyDeserializer_ = null;\n};\ngoog.proto2.Message.FieldType = {DOUBLE:1, FLOAT:2, INT64:3, UINT64:4, INT32:5, FIXED64:6, FIXED32:7, BOOL:8, STRING:9, GROUP:10, MESSAGE:11, BYTES:12, UINT32:13, ENUM:14, SFIXED32:15, SFIXED64:16, SINT32:17, SINT64:18};\ngoog.proto2.Message.prototype.initializeForLazyDeserializer = function(a, b) {\n  this.lazyDeserializer_ = a;\n  this.values_ = b;\n  this.deserializedFields_ = {};\n};\ngoog.proto2.Message.prototype.setUnknown = function(a, b) {\n  goog.asserts.assert(!this.fields_[a], \"Field is not unknown in this message\");\n  goog.asserts.assert(1 <= a, \"Tag \" + a + ' has value \"' + b + '\" in descriptor ' + this.getDescriptor().getName());\n  goog.asserts.assert(null !== b, \"Value cannot be null\");\n  this.values_[a] = b;\n  this.deserializedFields_ && delete this.deserializedFields_[a];\n};\ngoog.proto2.Message.prototype.forEachUnknown = function(a, b) {\n  var c = b || this, d;\n  for (d in this.values_) {\n    var e = Number(d);\n    this.fields_[e] || a.call(c, e, this.values_[d]);\n  }\n};\ngoog.proto2.Message.prototype.getDescriptor = goog.abstractMethod;\ngoog.proto2.Message.prototype.has = function(a) {\n  goog.asserts.assert(a.getContainingType() == this.getDescriptor(), \"The current message does not contain the given field\");\n  return this.has$Value(a.getTag());\n};\ngoog.proto2.Message.prototype.arrayOf = function(a) {\n  goog.asserts.assert(a.getContainingType() == this.getDescriptor(), \"The current message does not contain the given field\");\n  return this.array$Values(a.getTag());\n};\ngoog.proto2.Message.prototype.countOf = function(a) {\n  goog.asserts.assert(a.getContainingType() == this.getDescriptor(), \"The current message does not contain the given field\");\n  return this.count$Values(a.getTag());\n};\ngoog.proto2.Message.prototype.get = function(a, b) {\n  goog.asserts.assert(a.getContainingType() == this.getDescriptor(), \"The current message does not contain the given field\");\n  return this.get$Value(a.getTag(), b);\n};\ngoog.proto2.Message.prototype.getOrDefault = function(a, b) {\n  goog.asserts.assert(a.getContainingType() == this.getDescriptor(), \"The current message does not contain the given field\");\n  return this.get$ValueOrDefault(a.getTag(), b);\n};\ngoog.proto2.Message.prototype.set = function(a, b) {\n  goog.asserts.assert(a.getContainingType() == this.getDescriptor(), \"The current message does not contain the given field\");\n  this.set$Value(a.getTag(), b);\n};\ngoog.proto2.Message.prototype.add = function(a, b) {\n  goog.asserts.assert(a.getContainingType() == this.getDescriptor(), \"The current message does not contain the given field\");\n  this.add$Value(a.getTag(), b);\n};\ngoog.proto2.Message.prototype.clear = function(a) {\n  goog.asserts.assert(a.getContainingType() == this.getDescriptor(), \"The current message does not contain the given field\");\n  this.clear$Field(a.getTag());\n};\ngoog.proto2.Message.prototype.equals = function(a) {\n  if (!a || this.constructor != a.constructor) {\n    return !1;\n  }\n  for (var b = this.getDescriptor().getFields(), c = 0; c < b.length; c++) {\n    var d = b[c], e = d.getTag();\n    if (this.has$Value(e) != a.has$Value(e)) {\n      return !1;\n    }\n    if (this.has$Value(e)) {\n      var f = d.isCompositeType(), g = this.getValueForTag_(e);\n      e = a.getValueForTag_(e);\n      if (d.isRepeated()) {\n        if (g.length != e.length) {\n          return !1;\n        }\n        for (d = 0; d < g.length; d++) {\n          var h = g[d], k = e[d];\n          if (f ? !h.equals(k) : h != k) {\n            return !1;\n          }\n        }\n      } else {\n        if (f ? !g.equals(e) : g != e) {\n          return !1;\n        }\n      }\n    }\n  }\n  return !0;\n};\ngoog.proto2.Message.prototype.copyFrom = function(a) {\n  goog.asserts.assert(this.constructor == a.constructor, \"The source message must have the same type.\");\n  this != a && (this.values_ = {}, this.deserializedFields_ && (this.deserializedFields_ = {}), this.mergeFrom(a));\n};\ngoog.proto2.Message.prototype.mergeFrom = function(a) {\n  goog.asserts.assert(this.constructor == a.constructor, \"The source message must have the same type.\");\n  for (var b = this.getDescriptor().getFields(), c = 0; c < b.length; c++) {\n    var d = b[c], e = d.getTag();\n    if (a.has$Value(e)) {\n      this.deserializedFields_ && delete this.deserializedFields_[d.getTag()];\n      var f = d.isCompositeType();\n      if (d.isRepeated()) {\n        d = a.array$Values(e);\n        for (var g = 0; g < d.length; g++) {\n          this.add$Value(e, f ? d[g].clone() : d[g]);\n        }\n      } else {\n        d = a.getValueForTag_(e), f ? (f = this.getValueForTag_(e)) ? f.mergeFrom(d) : this.set$Value(e, d.clone()) : this.set$Value(e, d);\n      }\n    }\n  }\n};\ngoog.proto2.Message.prototype.clone = function() {\n  var a = new this.constructor;\n  a.copyFrom(this);\n  return a;\n};\ngoog.proto2.Message.prototype.initDefaults = function(a) {\n  for (var b = this.getDescriptor().getFields(), c = 0; c < b.length; c++) {\n    var d = b[c], e = d.getTag(), f = d.isCompositeType();\n    this.has$Value(e) || d.isRepeated() || (f ? this.values_[e] = new (d.getNativeType()) : a && (this.values_[e] = d.getDefaultValue()));\n    if (f) {\n      if (d.isRepeated()) {\n        for (d = this.array$Values(e), e = 0; e < d.length; e++) {\n          d[e].initDefaults(a);\n        }\n      } else {\n        this.get$Value(e).initDefaults(a);\n      }\n    }\n  }\n};\ngoog.proto2.Message.prototype.has$Value = function(a) {\n  return null != this.values_[a];\n};\ngoog.proto2.Message.prototype.getValueForTag_ = function(a) {\n  var b = this.values_[a];\n  return null == b ? null : this.lazyDeserializer_ ? a in this.deserializedFields_ ? this.deserializedFields_[a] : (b = this.lazyDeserializer_.deserializeField(this, this.fields_[a], b), this.deserializedFields_[a] = b) : b;\n};\ngoog.proto2.Message.prototype.get$Value = function(a, b) {\n  var c = this.getValueForTag_(a);\n  if (this.fields_[a].isRepeated()) {\n    var d = b || 0;\n    goog.asserts.assert(0 <= d && d < c.length, \"Given index %s is out of bounds.  Repeated field length: %s\", d, c.length);\n    return c[d];\n  }\n  return c;\n};\ngoog.proto2.Message.prototype.get$ValueOrDefault = function(a, b) {\n  return this.has$Value(a) ? this.get$Value(a, b) : this.fields_[a].getDefaultValue();\n};\ngoog.proto2.Message.prototype.array$Values = function(a) {\n  return this.getValueForTag_(a) || [];\n};\ngoog.proto2.Message.prototype.count$Values = function(a) {\n  return this.fields_[a].isRepeated() ? this.has$Value(a) ? this.values_[a].length : 0 : this.has$Value(a) ? 1 : 0;\n};\ngoog.proto2.Message.prototype.set$Value = function(a, b) {\n  goog.asserts.ENABLE_ASSERTS && this.checkFieldType_(this.fields_[a], b);\n  this.values_[a] = b;\n  this.deserializedFields_ && (this.deserializedFields_[a] = b);\n};\ngoog.proto2.Message.prototype.add$Value = function(a, b) {\n  goog.asserts.ENABLE_ASSERTS && this.checkFieldType_(this.fields_[a], b);\n  this.values_[a] || (this.values_[a] = []);\n  this.values_[a].push(b);\n  this.deserializedFields_ && delete this.deserializedFields_[a];\n};\ngoog.proto2.Message.prototype.checkFieldType_ = function(a, b) {\n  a.getFieldType() == goog.proto2.FieldDescriptor.FieldType.ENUM ? goog.asserts.assertNumber(b) : goog.asserts.assert(Object(b).constructor == a.getNativeType());\n};\ngoog.proto2.Message.prototype.clear$Field = function(a) {\n  delete this.values_[a];\n  this.deserializedFields_ && delete this.deserializedFields_[a];\n};\ngoog.proto2.Message.createDescriptor = function(a, b) {\n  var c = [], d = b[0], e;\n  for (e in b) {\n    0 != e && c.push(new goog.proto2.FieldDescriptor(a, e, b[e]));\n  }\n  return new goog.proto2.Descriptor(a, d, c);\n};\ngoog.proto2.Serializer = function() {\n};\ngoog.proto2.Serializer.DECODE_SYMBOLIC_ENUMS = !1;\ngoog.proto2.Serializer.prototype.serialize = goog.abstractMethod;\ngoog.proto2.Serializer.prototype.getSerializedValue = function(a, b) {\n  return a.isCompositeType() ? this.serialize(b) : \"number\" !== typeof b || isFinite(b) ? b : b.toString();\n};\ngoog.proto2.Serializer.prototype.deserialize = function(a, b) {\n  var c = a.createMessageInstance();\n  this.deserializeTo(c, b);\n  goog.asserts.assert(c instanceof goog.proto2.Message);\n  return c;\n};\ngoog.proto2.Serializer.prototype.deserializeTo = goog.abstractMethod;\ngoog.proto2.Serializer.prototype.getDeserializedValue = function(a, b) {\n  if (a.isCompositeType()) {\n    return b instanceof goog.proto2.Message ? b : this.deserialize(a.getFieldMessageType(), b);\n  }\n  if (a.getFieldType() == goog.proto2.FieldDescriptor.FieldType.ENUM) {\n    if (goog.proto2.Serializer.DECODE_SYMBOLIC_ENUMS && \"string\" === typeof b) {\n      var c = a.getNativeType();\n      if (c.hasOwnProperty(b)) {\n        return c[b];\n      }\n    }\n    return \"string\" === typeof b && goog.proto2.Serializer.INTEGER_REGEX.test(b) && (c = Number(b), 0 < c) ? c : b;\n  }\n  if (!a.deserializationConversionPermitted()) {\n    return b;\n  }\n  c = a.getNativeType();\n  if (c === String) {\n    if (\"number\" === typeof b) {\n      return String(b);\n    }\n  } else {\n    if (c === Number && \"string\" === typeof b && (\"Infinity\" === b || \"-Infinity\" === b || \"NaN\" === b || goog.proto2.Serializer.INTEGER_REGEX.test(b))) {\n      return Number(b);\n    }\n  }\n  return b;\n};\ngoog.proto2.Serializer.INTEGER_REGEX = /^-?[0-9]+$/;\ngoog.proto2.LazyDeserializer = function() {\n};\ngoog.inherits(goog.proto2.LazyDeserializer, goog.proto2.Serializer);\ngoog.proto2.LazyDeserializer.prototype.deserialize = function(a, b) {\n  var c = a.createMessageInstance();\n  c.initializeForLazyDeserializer(this, b);\n  goog.asserts.assert(c instanceof goog.proto2.Message);\n  return c;\n};\ngoog.proto2.LazyDeserializer.prototype.deserializeTo = function(a, b) {\n  throw Error(\"Unimplemented\");\n};\ngoog.proto2.LazyDeserializer.prototype.deserializeField = goog.abstractMethod;\ngoog.proto2.PbLiteSerializer = function() {\n};\ngoog.inherits(goog.proto2.PbLiteSerializer, goog.proto2.LazyDeserializer);\ngoog.proto2.PbLiteSerializer.prototype.zeroIndexing_ = !1;\ngoog.proto2.PbLiteSerializer.prototype.setZeroIndexed = function(a) {\n  this.zeroIndexing_ = a;\n};\ngoog.proto2.PbLiteSerializer.prototype.serialize = function(a) {\n  for (var b = a.getDescriptor().getFields(), c = [], d = this.zeroIndexing_, e = 0; e < b.length; e++) {\n    var f = b[e];\n    if (a.has(f)) {\n      var g = f.getTag();\n      g = d ? g - 1 : g;\n      if (f.isRepeated()) {\n        c[g] = [];\n        for (var h = 0; h < a.countOf(f); h++) {\n          c[g][h] = this.getSerializedValue(f, a.get(f, h));\n        }\n      } else {\n        c[g] = this.getSerializedValue(f, a.get(f));\n      }\n    }\n  }\n  a.forEachUnknown(function(a, b) {\n    c[d ? a - 1 : a] = b;\n  });\n  return c;\n};\ngoog.proto2.PbLiteSerializer.prototype.deserializeField = function(a, b, c) {\n  if (null == c) {\n    return c;\n  }\n  if (b.isRepeated()) {\n    a = [];\n    goog.asserts.assert(goog.isArray(c), \"Value must be array: %s\", c);\n    for (var d = 0; d < c.length; d++) {\n      a[d] = this.getDeserializedValue(b, c[d]);\n    }\n    return a;\n  }\n  return this.getDeserializedValue(b, c);\n};\ngoog.proto2.PbLiteSerializer.prototype.getSerializedValue = function(a, b) {\n  return a.getFieldType() == goog.proto2.FieldDescriptor.FieldType.BOOL ? b ? 1 : 0 : goog.proto2.Serializer.prototype.getSerializedValue.apply(this, arguments);\n};\ngoog.proto2.PbLiteSerializer.prototype.getDeserializedValue = function(a, b) {\n  return a.getFieldType() == goog.proto2.FieldDescriptor.FieldType.BOOL ? (goog.asserts.assert(\"number\" === typeof b || \"boolean\" === typeof b, \"Value is expected to be a number or boolean\"), !!b) : goog.proto2.Serializer.prototype.getDeserializedValue.apply(this, arguments);\n};\ngoog.proto2.PbLiteSerializer.prototype.deserialize = function(a, b) {\n  var c = b;\n  if (this.zeroIndexing_) {\n    c = [];\n    for (var d in b) {\n      c[parseInt(d, 10) + 1] = b[d];\n    }\n  }\n  return goog.proto2.PbLiteSerializer.superClass_.deserialize.call(this, a, c);\n};\ngoog.labs.userAgent.engine = {};\ngoog.labs.userAgent.engine.isPresto = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Presto\");\n};\ngoog.labs.userAgent.engine.isTrident = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Trident\") || goog.labs.userAgent.util.matchUserAgent(\"MSIE\");\n};\ngoog.labs.userAgent.engine.isEdge = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Edge\");\n};\ngoog.labs.userAgent.engine.isWebKit = function() {\n  return goog.labs.userAgent.util.matchUserAgentIgnoreCase(\"WebKit\") && !goog.labs.userAgent.engine.isEdge();\n};\ngoog.labs.userAgent.engine.isGecko = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Gecko\") && !goog.labs.userAgent.engine.isWebKit() && !goog.labs.userAgent.engine.isTrident() && !goog.labs.userAgent.engine.isEdge();\n};\ngoog.labs.userAgent.engine.getVersion = function() {\n  var a = goog.labs.userAgent.util.getUserAgent();\n  if (a) {\n    a = goog.labs.userAgent.util.extractVersionTuples(a);\n    var b = goog.labs.userAgent.engine.getEngineTuple_(a);\n    if (b) {\n      return \"Gecko\" == b[0] ? goog.labs.userAgent.engine.getVersionForKey_(a, \"Firefox\") : b[1];\n    }\n    a = a[0];\n    var c;\n    if (a && (c = a[2]) && (c = /Trident\\/([^\\s;]+)/.exec(c))) {\n      return c[1];\n    }\n  }\n  return \"\";\n};\ngoog.labs.userAgent.engine.getEngineTuple_ = function(a) {\n  if (!goog.labs.userAgent.engine.isEdge()) {\n    return a[1];\n  }\n  for (var b = 0; b < a.length; b++) {\n    var c = a[b];\n    if (\"Edge\" == c[0]) {\n      return c;\n    }\n  }\n};\ngoog.labs.userAgent.engine.isVersionOrHigher = function(a) {\n  return 0 <= goog.string.compareVersions(goog.labs.userAgent.engine.getVersion(), a);\n};\ngoog.labs.userAgent.engine.getVersionForKey_ = function(a, b) {\n  var c = goog.array.find(a, function(a) {\n    return b == a[0];\n  });\n  return c && c[1] || \"\";\n};\ngoog.labs.userAgent.platform = {};\ngoog.labs.userAgent.platform.isAndroid = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Android\");\n};\ngoog.labs.userAgent.platform.isIpod = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"iPod\");\n};\ngoog.labs.userAgent.platform.isIphone = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"iPhone\") && !goog.labs.userAgent.util.matchUserAgent(\"iPod\") && !goog.labs.userAgent.util.matchUserAgent(\"iPad\");\n};\ngoog.labs.userAgent.platform.isIpad = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"iPad\");\n};\ngoog.labs.userAgent.platform.isIos = function() {\n  return goog.labs.userAgent.platform.isIphone() || goog.labs.userAgent.platform.isIpad() || goog.labs.userAgent.platform.isIpod();\n};\ngoog.labs.userAgent.platform.isMacintosh = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Macintosh\");\n};\ngoog.labs.userAgent.platform.isLinux = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Linux\");\n};\ngoog.labs.userAgent.platform.isWindows = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Windows\");\n};\ngoog.labs.userAgent.platform.isChromeOS = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"CrOS\");\n};\ngoog.labs.userAgent.platform.isChromecast = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"CrKey\");\n};\ngoog.labs.userAgent.platform.isKaiOS = function() {\n  return goog.labs.userAgent.util.matchUserAgentIgnoreCase(\"KaiOS\");\n};\ngoog.labs.userAgent.platform.isGo2Phone = function() {\n  return goog.labs.userAgent.util.matchUserAgentIgnoreCase(\"GAFP\");\n};\ngoog.labs.userAgent.platform.getVersion = function() {\n  var a = goog.labs.userAgent.util.getUserAgent(), b = \"\";\n  goog.labs.userAgent.platform.isWindows() ? (b = /Windows (?:NT|Phone) ([0-9.]+)/, b = (a = b.exec(a)) ? a[1] : \"0.0\") : goog.labs.userAgent.platform.isIos() ? (b = /(?:iPhone|iPod|iPad|CPU)\\s+OS\\s+(\\S+)/, b = (a = b.exec(a)) && a[1].replace(/_/g, \".\")) : goog.labs.userAgent.platform.isMacintosh() ? (b = /Mac OS X ([0-9_.]+)/, b = (a = b.exec(a)) ? a[1].replace(/_/g, \".\") : \"10\") : goog.labs.userAgent.platform.isKaiOS() ? (b = /(?:KaiOS)\\/(\\S+)/i, b = (a = b.exec(a)) && a[1]) : goog.labs.userAgent.platform.isAndroid() ?\n  (b = /Android\\s+([^\\);]+)(\\)|;)/, b = (a = b.exec(a)) && a[1]) : goog.labs.userAgent.platform.isChromeOS() && (b = /(?:CrOS\\s+(?:i686|x86_64)\\s+([0-9.]+))/, b = (a = b.exec(a)) && a[1]);\n  return b || \"\";\n};\ngoog.labs.userAgent.platform.isVersionOrHigher = function(a) {\n  return 0 <= goog.string.compareVersions(goog.labs.userAgent.platform.getVersion(), a);\n};\ngoog.reflect = {};\ngoog.reflect.object = function(a, b) {\n  return b;\n};\ngoog.reflect.objectProperty = function(a, b) {\n  return a;\n};\ngoog.reflect.sinkValue = function(a) {\n  goog.reflect.sinkValue[\" \"](a);\n  return a;\n};\ngoog.reflect.sinkValue[\" \"] = goog.nullFunction;\ngoog.reflect.canAccessProperty = function(a, b) {\n  try {\n    return goog.reflect.sinkValue(a[b]), !0;\n  } catch (c) {\n  }\n  return !1;\n};\ngoog.reflect.cache = function(a, b, c, d) {\n  d = d ? d(b) : b;\n  return Object.prototype.hasOwnProperty.call(a, d) ? a[d] : a[d] = c(b);\n};\ngoog.userAgent = {};\ngoog.userAgent.ASSUME_IE = !1;\ngoog.userAgent.ASSUME_EDGE = !1;\ngoog.userAgent.ASSUME_GECKO = !1;\ngoog.userAgent.ASSUME_WEBKIT = !1;\ngoog.userAgent.ASSUME_MOBILE_WEBKIT = !1;\ngoog.userAgent.ASSUME_OPERA = !1;\ngoog.userAgent.ASSUME_ANY_VERSION = !1;\ngoog.userAgent.BROWSER_KNOWN_ = goog.userAgent.ASSUME_IE || goog.userAgent.ASSUME_EDGE || goog.userAgent.ASSUME_GECKO || goog.userAgent.ASSUME_MOBILE_WEBKIT || goog.userAgent.ASSUME_WEBKIT || goog.userAgent.ASSUME_OPERA;\ngoog.userAgent.getUserAgentString = function() {\n  return goog.labs.userAgent.util.getUserAgent();\n};\ngoog.userAgent.getNavigatorTyped = function() {\n  return goog.global.navigator || null;\n};\ngoog.userAgent.getNavigator = function() {\n  return goog.userAgent.getNavigatorTyped();\n};\ngoog.userAgent.OPERA = goog.userAgent.BROWSER_KNOWN_ ? goog.userAgent.ASSUME_OPERA : goog.labs.userAgent.browser.isOpera();\ngoog.userAgent.IE = goog.userAgent.BROWSER_KNOWN_ ? goog.userAgent.ASSUME_IE : goog.labs.userAgent.browser.isIE();\ngoog.userAgent.EDGE = goog.userAgent.BROWSER_KNOWN_ ? goog.userAgent.ASSUME_EDGE : goog.labs.userAgent.engine.isEdge();\ngoog.userAgent.EDGE_OR_IE = goog.userAgent.EDGE || goog.userAgent.IE;\ngoog.userAgent.GECKO = goog.userAgent.BROWSER_KNOWN_ ? goog.userAgent.ASSUME_GECKO : goog.labs.userAgent.engine.isGecko();\ngoog.userAgent.WEBKIT = goog.userAgent.BROWSER_KNOWN_ ? goog.userAgent.ASSUME_WEBKIT || goog.userAgent.ASSUME_MOBILE_WEBKIT : goog.labs.userAgent.engine.isWebKit();\ngoog.userAgent.isMobile_ = function() {\n  return goog.userAgent.WEBKIT && goog.labs.userAgent.util.matchUserAgent(\"Mobile\");\n};\ngoog.userAgent.MOBILE = goog.userAgent.ASSUME_MOBILE_WEBKIT || goog.userAgent.isMobile_();\ngoog.userAgent.SAFARI = goog.userAgent.WEBKIT;\ngoog.userAgent.determinePlatform_ = function() {\n  var a = goog.userAgent.getNavigatorTyped();\n  return a && a.platform || \"\";\n};\ngoog.userAgent.PLATFORM = goog.userAgent.determinePlatform_();\ngoog.userAgent.ASSUME_MAC = !1;\ngoog.userAgent.ASSUME_WINDOWS = !1;\ngoog.userAgent.ASSUME_LINUX = !1;\ngoog.userAgent.ASSUME_X11 = !1;\ngoog.userAgent.ASSUME_ANDROID = !1;\ngoog.userAgent.ASSUME_IPHONE = !1;\ngoog.userAgent.ASSUME_IPAD = !1;\ngoog.userAgent.ASSUME_IPOD = !1;\ngoog.userAgent.ASSUME_KAIOS = !1;\ngoog.userAgent.ASSUME_GO2PHONE = !1;\ngoog.userAgent.PLATFORM_KNOWN_ = goog.userAgent.ASSUME_MAC || goog.userAgent.ASSUME_WINDOWS || goog.userAgent.ASSUME_LINUX || goog.userAgent.ASSUME_X11 || goog.userAgent.ASSUME_ANDROID || goog.userAgent.ASSUME_IPHONE || goog.userAgent.ASSUME_IPAD || goog.userAgent.ASSUME_IPOD;\ngoog.userAgent.MAC = goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_MAC : goog.labs.userAgent.platform.isMacintosh();\ngoog.userAgent.WINDOWS = goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_WINDOWS : goog.labs.userAgent.platform.isWindows();\ngoog.userAgent.isLegacyLinux_ = function() {\n  return goog.labs.userAgent.platform.isLinux() || goog.labs.userAgent.platform.isChromeOS();\n};\ngoog.userAgent.LINUX = goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_LINUX : goog.userAgent.isLegacyLinux_();\ngoog.userAgent.isX11_ = function() {\n  var a = goog.userAgent.getNavigatorTyped();\n  return !!a && goog.string.contains(a.appVersion || \"\", \"X11\");\n};\ngoog.userAgent.X11 = goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_X11 : goog.userAgent.isX11_();\ngoog.userAgent.ANDROID = goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_ANDROID : goog.labs.userAgent.platform.isAndroid();\ngoog.userAgent.IPHONE = goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_IPHONE : goog.labs.userAgent.platform.isIphone();\ngoog.userAgent.IPAD = goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_IPAD : goog.labs.userAgent.platform.isIpad();\ngoog.userAgent.IPOD = goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_IPOD : goog.labs.userAgent.platform.isIpod();\ngoog.userAgent.IOS = goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_IPHONE || goog.userAgent.ASSUME_IPAD || goog.userAgent.ASSUME_IPOD : goog.labs.userAgent.platform.isIos();\ngoog.userAgent.KAIOS = goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_KAIOS : goog.labs.userAgent.platform.isKaiOS();\ngoog.userAgent.GO2PHONE = goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_GO2PHONE : goog.labs.userAgent.platform.isGo2Phone();\ngoog.userAgent.determineVersion_ = function() {\n  var a = \"\", b = goog.userAgent.getVersionRegexResult_();\n  b && (a = b ? b[1] : \"\");\n  return goog.userAgent.IE && (b = goog.userAgent.getDocumentMode_(), null != b && b > parseFloat(a)) ? String(b) : a;\n};\ngoog.userAgent.getVersionRegexResult_ = function() {\n  var a = goog.userAgent.getUserAgentString();\n  if (goog.userAgent.GECKO) {\n    return /rv:([^\\);]+)(\\)|;)/.exec(a);\n  }\n  if (goog.userAgent.EDGE) {\n    return /Edge\\/([\\d\\.]+)/.exec(a);\n  }\n  if (goog.userAgent.IE) {\n    return /\\b(?:MSIE|rv)[: ]([^\\);]+)(\\)|;)/.exec(a);\n  }\n  if (goog.userAgent.WEBKIT) {\n    return /WebKit\\/(\\S+)/.exec(a);\n  }\n  if (goog.userAgent.OPERA) {\n    return /(?:Version)[ \\/]?(\\S+)/.exec(a);\n  }\n};\ngoog.userAgent.getDocumentMode_ = function() {\n  var a = goog.global.document;\n  return a ? a.documentMode : void 0;\n};\ngoog.userAgent.VERSION = goog.userAgent.determineVersion_();\ngoog.userAgent.compare = function(a, b) {\n  return goog.string.compareVersions(a, b);\n};\ngoog.userAgent.isVersionOrHigherCache_ = {};\ngoog.userAgent.isVersionOrHigher = function(a) {\n  return goog.userAgent.ASSUME_ANY_VERSION || goog.reflect.cache(goog.userAgent.isVersionOrHigherCache_, a, function() {\n    return 0 <= goog.string.compareVersions(goog.userAgent.VERSION, a);\n  });\n};\ngoog.userAgent.isVersion = goog.userAgent.isVersionOrHigher;\ngoog.userAgent.isDocumentModeOrHigher = function(a) {\n  return Number(goog.userAgent.DOCUMENT_MODE) >= a;\n};\ngoog.userAgent.isDocumentMode = goog.userAgent.isDocumentModeOrHigher;\ngoog.userAgent.DOCUMENT_MODE = function() {\n  if (goog.global.document && goog.userAgent.IE) {\n    return goog.userAgent.getDocumentMode_();\n  }\n}();\ngoog.dom.BrowserFeature = {};\ngoog.dom.BrowserFeature.ASSUME_NO_OFFSCREEN_CANVAS = !1;\ngoog.dom.BrowserFeature.ASSUME_OFFSCREEN_CANVAS = !1;\ngoog.dom.BrowserFeature.detectOffscreenCanvas_ = function(a) {\n  try {\n    return !!(new self.OffscreenCanvas(0, 0)).getContext(a);\n  } catch (b) {\n  }\n  return !1;\n};\ngoog.dom.BrowserFeature.OFFSCREEN_CANVAS_2D = !goog.dom.BrowserFeature.ASSUME_NO_OFFSCREEN_CANVAS && (goog.dom.BrowserFeature.ASSUME_OFFSCREEN_CANVAS || goog.dom.BrowserFeature.detectOffscreenCanvas_(\"2d\"));\ngoog.dom.BrowserFeature.CAN_ADD_NAME_OR_TYPE_ATTRIBUTES = !goog.userAgent.IE || goog.userAgent.isDocumentModeOrHigher(9);\ngoog.dom.BrowserFeature.CAN_USE_CHILDREN_ATTRIBUTE = !goog.userAgent.GECKO && !goog.userAgent.IE || goog.userAgent.IE && goog.userAgent.isDocumentModeOrHigher(9) || goog.userAgent.GECKO && goog.userAgent.isVersionOrHigher(\"1.9.1\");\ngoog.dom.BrowserFeature.CAN_USE_INNER_TEXT = goog.userAgent.IE && !goog.userAgent.isVersionOrHigher(\"9\");\ngoog.dom.BrowserFeature.CAN_USE_PARENT_ELEMENT_PROPERTY = goog.userAgent.IE || goog.userAgent.OPERA || goog.userAgent.WEBKIT;\ngoog.dom.BrowserFeature.INNER_HTML_NEEDS_SCOPED_ELEMENT = goog.userAgent.IE;\ngoog.dom.BrowserFeature.LEGACY_IE_RANGES = goog.userAgent.IE && !goog.userAgent.isDocumentModeOrHigher(9);\ngoog.math = {};\ngoog.math.randomInt = function(a) {\n  return Math.floor(Math.random() * a);\n};\ngoog.math.uniformRandom = function(a, b) {\n  return a + Math.random() * (b - a);\n};\ngoog.math.clamp = function(a, b, c) {\n  return Math.min(Math.max(a, b), c);\n};\ngoog.math.modulo = function(a, b) {\n  var c = a % b;\n  return 0 > c * b ? c + b : c;\n};\ngoog.math.lerp = function(a, b, c) {\n  return a + c * (b - a);\n};\ngoog.math.nearlyEquals = function(a, b, c) {\n  return Math.abs(a - b) <= (c || 0.000001);\n};\ngoog.math.standardAngle = function(a) {\n  return goog.math.modulo(a, 360);\n};\ngoog.math.standardAngleInRadians = function(a) {\n  return goog.math.modulo(a, 2 * Math.PI);\n};\ngoog.math.toRadians = function(a) {\n  return a * Math.PI / 180;\n};\ngoog.math.toDegrees = function(a) {\n  return 180 * a / Math.PI;\n};\ngoog.math.angleDx = function(a, b) {\n  return b * Math.cos(goog.math.toRadians(a));\n};\ngoog.math.angleDy = function(a, b) {\n  return b * Math.sin(goog.math.toRadians(a));\n};\ngoog.math.angle = function(a, b, c, d) {\n  return goog.math.standardAngle(goog.math.toDegrees(Math.atan2(d - b, c - a)));\n};\ngoog.math.angleDifference = function(a, b) {\n  var c = goog.math.standardAngle(b) - goog.math.standardAngle(a);\n  180 < c ? c -= 360 : -180 >= c && (c = 360 + c);\n  return c;\n};\ngoog.math.sign = function(a) {\n  return 0 < a ? 1 : 0 > a ? -1 : a;\n};\ngoog.math.longestCommonSubsequence = function(a, b, c, d) {\n  c = c || function(a, b) {\n    return a == b;\n  };\n  d = d || function(b, c) {\n    return a[b];\n  };\n  for (var e = a.length, f = b.length, g = [], h = 0; h < e + 1; h++) {\n    g[h] = [], g[h][0] = 0;\n  }\n  for (var k = 0; k < f + 1; k++) {\n    g[0][k] = 0;\n  }\n  for (h = 1; h <= e; h++) {\n    for (k = 1; k <= f; k++) {\n      c(a[h - 1], b[k - 1]) ? g[h][k] = g[h - 1][k - 1] + 1 : g[h][k] = Math.max(g[h - 1][k], g[h][k - 1]);\n    }\n  }\n  var l = [];\n  h = e;\n  for (k = f; 0 < h && 0 < k;) {\n    c(a[h - 1], b[k - 1]) ? (l.unshift(d(h - 1, k - 1)), h--, k--) : g[h - 1][k] > g[h][k - 1] ? h-- : k--;\n  }\n  return l;\n};\ngoog.math.sum = function(a) {\n  return goog.array.reduce(arguments, function(a, c) {\n    return a + c;\n  }, 0);\n};\ngoog.math.average = function(a) {\n  return goog.math.sum.apply(null, arguments) / arguments.length;\n};\ngoog.math.sampleVariance = function(a) {\n  var b = arguments.length;\n  if (2 > b) {\n    return 0;\n  }\n  var c = goog.math.average.apply(null, arguments);\n  return goog.math.sum.apply(null, goog.array.map(arguments, function(a) {\n    return Math.pow(a - c, 2);\n  })) / (b - 1);\n};\ngoog.math.standardDeviation = function(a) {\n  return Math.sqrt(goog.math.sampleVariance.apply(null, arguments));\n};\ngoog.math.isInt = function(a) {\n  return isFinite(a) && 0 == a % 1;\n};\ngoog.math.isFiniteNumber = function(a) {\n  return isFinite(a);\n};\ngoog.math.isNegativeZero = function(a) {\n  return 0 == a && 0 > 1 / a;\n};\ngoog.math.log10Floor = function(a) {\n  if (0 < a) {\n    var b = Math.round(Math.log(a) * Math.LOG10E);\n    return b - (parseFloat(\"1e\" + b) > a ? 1 : 0);\n  }\n  return 0 == a ? -Infinity : NaN;\n};\ngoog.math.safeFloor = function(a, b) {\n  goog.asserts.assert(void 0 === b || 0 < b);\n  return Math.floor(a + (b || 2e-15));\n};\ngoog.math.safeCeil = function(a, b) {\n  goog.asserts.assert(void 0 === b || 0 < b);\n  return Math.ceil(a - (b || 2e-15));\n};\ngoog.math.Coordinate = function(a, b) {\n  this.x = void 0 !== a ? a : 0;\n  this.y = void 0 !== b ? b : 0;\n};\ngoog.math.Coordinate.prototype.clone = function() {\n  return new goog.math.Coordinate(this.x, this.y);\n};\ngoog.DEBUG && (goog.math.Coordinate.prototype.toString = function() {\n  return \"(\" + this.x + \", \" + this.y + \")\";\n});\ngoog.math.Coordinate.prototype.equals = function(a) {\n  return a instanceof goog.math.Coordinate && goog.math.Coordinate.equals(this, a);\n};\ngoog.math.Coordinate.equals = function(a, b) {\n  return a == b ? !0 : a && b ? a.x == b.x && a.y == b.y : !1;\n};\ngoog.math.Coordinate.distance = function(a, b) {\n  var c = a.x - b.x, d = a.y - b.y;\n  return Math.sqrt(c * c + d * d);\n};\ngoog.math.Coordinate.magnitude = function(a) {\n  return Math.sqrt(a.x * a.x + a.y * a.y);\n};\ngoog.math.Coordinate.azimuth = function(a) {\n  return goog.math.angle(0, 0, a.x, a.y);\n};\ngoog.math.Coordinate.squaredDistance = function(a, b) {\n  var c = a.x - b.x, d = a.y - b.y;\n  return c * c + d * d;\n};\ngoog.math.Coordinate.difference = function(a, b) {\n  return new goog.math.Coordinate(a.x - b.x, a.y - b.y);\n};\ngoog.math.Coordinate.sum = function(a, b) {\n  return new goog.math.Coordinate(a.x + b.x, a.y + b.y);\n};\ngoog.math.Coordinate.prototype.ceil = function() {\n  this.x = Math.ceil(this.x);\n  this.y = Math.ceil(this.y);\n  return this;\n};\ngoog.math.Coordinate.prototype.floor = function() {\n  this.x = Math.floor(this.x);\n  this.y = Math.floor(this.y);\n  return this;\n};\ngoog.math.Coordinate.prototype.round = function() {\n  this.x = Math.round(this.x);\n  this.y = Math.round(this.y);\n  return this;\n};\ngoog.math.Coordinate.prototype.translate = function(a, b) {\n  a instanceof goog.math.Coordinate ? (this.x += a.x, this.y += a.y) : (this.x += Number(a), \"number\" === typeof b && (this.y += b));\n  return this;\n};\ngoog.math.Coordinate.prototype.scale = function(a, b) {\n  this.x *= a;\n  this.y *= \"number\" === typeof b ? b : a;\n  return this;\n};\ngoog.math.Coordinate.prototype.rotateRadians = function(a, b) {\n  var c = b || new goog.math.Coordinate(0, 0), d = this.x, e = this.y, f = Math.cos(a), g = Math.sin(a);\n  this.x = (d - c.x) * f - (e - c.y) * g + c.x;\n  this.y = (d - c.x) * g + (e - c.y) * f + c.y;\n};\ngoog.math.Coordinate.prototype.rotateDegrees = function(a, b) {\n  this.rotateRadians(goog.math.toRadians(a), b);\n};\ngoog.math.Size = function(a, b) {\n  this.width = a;\n  this.height = b;\n};\ngoog.math.Size.equals = function(a, b) {\n  return a == b ? !0 : a && b ? a.width == b.width && a.height == b.height : !1;\n};\ngoog.math.Size.prototype.clone = function() {\n  return new goog.math.Size(this.width, this.height);\n};\ngoog.DEBUG && (goog.math.Size.prototype.toString = function() {\n  return \"(\" + this.width + \" x \" + this.height + \")\";\n});\ngoog.math.Size.prototype.getLongest = function() {\n  return Math.max(this.width, this.height);\n};\ngoog.math.Size.prototype.getShortest = function() {\n  return Math.min(this.width, this.height);\n};\ngoog.math.Size.prototype.area = function() {\n  return this.width * this.height;\n};\ngoog.math.Size.prototype.perimeter = function() {\n  return 2 * (this.width + this.height);\n};\ngoog.math.Size.prototype.aspectRatio = function() {\n  return this.width / this.height;\n};\ngoog.math.Size.prototype.isEmpty = function() {\n  return !this.area();\n};\ngoog.math.Size.prototype.ceil = function() {\n  this.width = Math.ceil(this.width);\n  this.height = Math.ceil(this.height);\n  return this;\n};\ngoog.math.Size.prototype.fitsInside = function(a) {\n  return this.width <= a.width && this.height <= a.height;\n};\ngoog.math.Size.prototype.floor = function() {\n  this.width = Math.floor(this.width);\n  this.height = Math.floor(this.height);\n  return this;\n};\ngoog.math.Size.prototype.round = function() {\n  this.width = Math.round(this.width);\n  this.height = Math.round(this.height);\n  return this;\n};\ngoog.math.Size.prototype.scale = function(a, b) {\n  this.width *= a;\n  this.height *= \"number\" === typeof b ? b : a;\n  return this;\n};\ngoog.math.Size.prototype.scaleToCover = function(a) {\n  a = this.aspectRatio() <= a.aspectRatio() ? a.width / this.width : a.height / this.height;\n  return this.scale(a);\n};\ngoog.math.Size.prototype.scaleToFit = function(a) {\n  a = this.aspectRatio() > a.aspectRatio() ? a.width / this.width : a.height / this.height;\n  return this.scale(a);\n};\ngoog.dom.ASSUME_QUIRKS_MODE = !1;\ngoog.dom.ASSUME_STANDARDS_MODE = !1;\ngoog.dom.COMPAT_MODE_KNOWN_ = goog.dom.ASSUME_QUIRKS_MODE || goog.dom.ASSUME_STANDARDS_MODE;\ngoog.dom.getDomHelper = function(a) {\n  return a ? new goog.dom.DomHelper(goog.dom.getOwnerDocument(a)) : goog.dom.defaultDomHelper_ || (goog.dom.defaultDomHelper_ = new goog.dom.DomHelper);\n};\ngoog.dom.getDocument = function() {\n  return document;\n};\ngoog.dom.getElement = function(a) {\n  return goog.dom.getElementHelper_(document, a);\n};\ngoog.dom.getElementHelper_ = function(a, b) {\n  return \"string\" === typeof b ? a.getElementById(b) : b;\n};\ngoog.dom.getRequiredElement = function(a) {\n  return goog.dom.getRequiredElementHelper_(document, a);\n};\ngoog.dom.getRequiredElementHelper_ = function(a, b) {\n  goog.asserts.assertString(b);\n  var c = goog.dom.getElementHelper_(a, b);\n  return c = goog.asserts.assertElement(c, \"No element found with id: \" + b);\n};\ngoog.dom.$ = goog.dom.getElement;\ngoog.dom.getElementsByTagName = function(a, b) {\n  return (b || document).getElementsByTagName(String(a));\n};\ngoog.dom.getElementsByTagNameAndClass = function(a, b, c) {\n  return goog.dom.getElementsByTagNameAndClass_(document, a, b, c);\n};\ngoog.dom.getElementByTagNameAndClass = function(a, b, c) {\n  return goog.dom.getElementByTagNameAndClass_(document, a, b, c);\n};\ngoog.dom.getElementsByClass = function(a, b) {\n  var c = b || document;\n  return goog.dom.canUseQuerySelector_(c) ? c.querySelectorAll(\".\" + a) : goog.dom.getElementsByTagNameAndClass_(document, \"*\", a, b);\n};\ngoog.dom.getElementByClass = function(a, b) {\n  var c = b || document;\n  return (c.getElementsByClassName ? c.getElementsByClassName(a)[0] : goog.dom.getElementByTagNameAndClass_(document, \"*\", a, b)) || null;\n};\ngoog.dom.getRequiredElementByClass = function(a, b) {\n  var c = goog.dom.getElementByClass(a, b);\n  return goog.asserts.assert(c, \"No element found with className: \" + a);\n};\ngoog.dom.canUseQuerySelector_ = function(a) {\n  return !(!a.querySelectorAll || !a.querySelector);\n};\ngoog.dom.getElementsByTagNameAndClass_ = function(a, b, c, d) {\n  a = d || a;\n  b = b && \"*\" != b ? String(b).toUpperCase() : \"\";\n  if (goog.dom.canUseQuerySelector_(a) && (b || c)) {\n    return a.querySelectorAll(b + (c ? \".\" + c : \"\"));\n  }\n  if (c && a.getElementsByClassName) {\n    a = a.getElementsByClassName(c);\n    if (b) {\n      d = {};\n      for (var e = 0, f = 0, g; g = a[f]; f++) {\n        b == g.nodeName && (d[e++] = g);\n      }\n      d.length = e;\n      return d;\n    }\n    return a;\n  }\n  a = a.getElementsByTagName(b || \"*\");\n  if (c) {\n    d = {};\n    for (f = e = 0; g = a[f]; f++) {\n      b = g.className, \"function\" == typeof b.split && goog.array.contains(b.split(/\\s+/), c) && (d[e++] = g);\n    }\n    d.length = e;\n    return d;\n  }\n  return a;\n};\ngoog.dom.getElementByTagNameAndClass_ = function(a, b, c, d) {\n  var e = d || a, f = b && \"*\" != b ? String(b).toUpperCase() : \"\";\n  return goog.dom.canUseQuerySelector_(e) && (f || c) ? e.querySelector(f + (c ? \".\" + c : \"\")) : goog.dom.getElementsByTagNameAndClass_(a, b, c, d)[0] || null;\n};\ngoog.dom.$$ = goog.dom.getElementsByTagNameAndClass;\ngoog.dom.setProperties = function(a, b) {\n  goog.object.forEach(b, function(b, d) {\n    b && \"object\" == typeof b && b.implementsGoogStringTypedString && (b = b.getTypedStringValue());\n    \"style\" == d ? a.style.cssText = b : \"class\" == d ? a.className = b : \"for\" == d ? a.htmlFor = b : goog.dom.DIRECT_ATTRIBUTE_MAP_.hasOwnProperty(d) ? a.setAttribute(goog.dom.DIRECT_ATTRIBUTE_MAP_[d], b) : goog.string.startsWith(d, \"aria-\") || goog.string.startsWith(d, \"data-\") ? a.setAttribute(d, b) : a[d] = b;\n  });\n};\ngoog.dom.DIRECT_ATTRIBUTE_MAP_ = {cellpadding:\"cellPadding\", cellspacing:\"cellSpacing\", colspan:\"colSpan\", frameborder:\"frameBorder\", height:\"height\", maxlength:\"maxLength\", nonce:\"nonce\", role:\"role\", rowspan:\"rowSpan\", type:\"type\", usemap:\"useMap\", valign:\"vAlign\", width:\"width\"};\ngoog.dom.getViewportSize = function(a) {\n  return goog.dom.getViewportSize_(a || window);\n};\ngoog.dom.getViewportSize_ = function(a) {\n  a = a.document;\n  a = goog.dom.isCss1CompatMode_(a) ? a.documentElement : a.body;\n  return new goog.math.Size(a.clientWidth, a.clientHeight);\n};\ngoog.dom.getDocumentHeight = function() {\n  return goog.dom.getDocumentHeight_(window);\n};\ngoog.dom.getDocumentHeightForWindow = function(a) {\n  return goog.dom.getDocumentHeight_(a);\n};\ngoog.dom.getDocumentHeight_ = function(a) {\n  var b = a.document, c = 0;\n  if (b) {\n    c = b.body;\n    var d = b.documentElement;\n    if (!d || !c) {\n      return 0;\n    }\n    a = goog.dom.getViewportSize_(a).height;\n    if (goog.dom.isCss1CompatMode_(b) && d.scrollHeight) {\n      c = d.scrollHeight != a ? d.scrollHeight : d.offsetHeight;\n    } else {\n      b = d.scrollHeight;\n      var e = d.offsetHeight;\n      d.clientHeight != e && (b = c.scrollHeight, e = c.offsetHeight);\n      c = b > a ? b > e ? b : e : b < e ? b : e;\n    }\n  }\n  return c;\n};\ngoog.dom.getPageScroll = function(a) {\n  return goog.dom.getDomHelper((a || goog.global || window).document).getDocumentScroll();\n};\ngoog.dom.getDocumentScroll = function() {\n  return goog.dom.getDocumentScroll_(document);\n};\ngoog.dom.getDocumentScroll_ = function(a) {\n  var b = goog.dom.getDocumentScrollElement_(a);\n  a = goog.dom.getWindow_(a);\n  return goog.userAgent.IE && goog.userAgent.isVersionOrHigher(\"10\") && a.pageYOffset != b.scrollTop ? new goog.math.Coordinate(b.scrollLeft, b.scrollTop) : new goog.math.Coordinate(a.pageXOffset || b.scrollLeft, a.pageYOffset || b.scrollTop);\n};\ngoog.dom.getDocumentScrollElement = function() {\n  return goog.dom.getDocumentScrollElement_(document);\n};\ngoog.dom.getDocumentScrollElement_ = function(a) {\n  return a.scrollingElement ? a.scrollingElement : !goog.userAgent.WEBKIT && goog.dom.isCss1CompatMode_(a) ? a.documentElement : a.body || a.documentElement;\n};\ngoog.dom.getWindow = function(a) {\n  return a ? goog.dom.getWindow_(a) : window;\n};\ngoog.dom.getWindow_ = function(a) {\n  return a.parentWindow || a.defaultView;\n};\ngoog.dom.createDom = function(a, b, c) {\n  return goog.dom.createDom_(document, arguments);\n};\ngoog.dom.createDom_ = function(a, b) {\n  var c = String(b[0]), d = b[1];\n  if (!goog.dom.BrowserFeature.CAN_ADD_NAME_OR_TYPE_ATTRIBUTES && d && (d.name || d.type)) {\n    c = [\"<\", c];\n    d.name && c.push(' name=\"', goog.string.htmlEscape(d.name), '\"');\n    if (d.type) {\n      c.push(' type=\"', goog.string.htmlEscape(d.type), '\"');\n      var e = {};\n      goog.object.extend(e, d);\n      delete e.type;\n      d = e;\n    }\n    c.push(\">\");\n    c = c.join(\"\");\n  }\n  c = goog.dom.createElement_(a, c);\n  d && (\"string\" === typeof d ? c.className = d : goog.isArray(d) ? c.className = d.join(\" \") : goog.dom.setProperties(c, d));\n  2 < b.length && goog.dom.append_(a, c, b, 2);\n  return c;\n};\ngoog.dom.append_ = function(a, b, c, d) {\n  function e(c) {\n    c && b.appendChild(\"string\" === typeof c ? a.createTextNode(c) : c);\n  }\n  for (; d < c.length; d++) {\n    var f = c[d];\n    goog.isArrayLike(f) && !goog.dom.isNodeLike(f) ? goog.array.forEach(goog.dom.isNodeList(f) ? goog.array.toArray(f) : f, e) : e(f);\n  }\n};\ngoog.dom.$dom = goog.dom.createDom;\ngoog.dom.createElement = function(a) {\n  return goog.dom.createElement_(document, a);\n};\ngoog.dom.createElement_ = function(a, b) {\n  b = String(b);\n  \"application/xhtml+xml\" === a.contentType && (b = b.toLowerCase());\n  return a.createElement(b);\n};\ngoog.dom.createTextNode = function(a) {\n  return document.createTextNode(String(a));\n};\ngoog.dom.createTable = function(a, b, c) {\n  return goog.dom.createTable_(document, a, b, !!c);\n};\ngoog.dom.createTable_ = function(a, b, c, d) {\n  for (var e = goog.dom.createElement_(a, \"TABLE\"), f = e.appendChild(goog.dom.createElement_(a, \"TBODY\")), g = 0; g < b; g++) {\n    for (var h = goog.dom.createElement_(a, \"TR\"), k = 0; k < c; k++) {\n      var l = goog.dom.createElement_(a, \"TD\");\n      d && goog.dom.setTextContent(l, goog.string.Unicode.NBSP);\n      h.appendChild(l);\n    }\n    f.appendChild(h);\n  }\n  return e;\n};\ngoog.dom.constHtmlToNode = function(a) {\n  var b = goog.array.map(arguments, goog.string.Const.unwrap);\n  b = goog.html.uncheckedconversions.safeHtmlFromStringKnownToSatisfyTypeContract(goog.string.Const.from(\"Constant HTML string, that gets turned into a Node later, so it will be automatically balanced.\"), b.join(\"\"));\n  return goog.dom.safeHtmlToNode(b);\n};\ngoog.dom.safeHtmlToNode = function(a) {\n  return goog.dom.safeHtmlToNode_(document, a);\n};\ngoog.dom.safeHtmlToNode_ = function(a, b) {\n  var c = goog.dom.createElement_(a, \"DIV\");\n  goog.dom.BrowserFeature.INNER_HTML_NEEDS_SCOPED_ELEMENT ? (goog.dom.safe.setInnerHtml(c, goog.html.SafeHtml.concat(goog.html.SafeHtml.BR, b)), c.removeChild(goog.asserts.assert(c.firstChild))) : goog.dom.safe.setInnerHtml(c, b);\n  return goog.dom.childrenToNode_(a, c);\n};\ngoog.dom.childrenToNode_ = function(a, b) {\n  if (1 == b.childNodes.length) {\n    return b.removeChild(goog.asserts.assert(b.firstChild));\n  }\n  for (var c = a.createDocumentFragment(); b.firstChild;) {\n    c.appendChild(b.firstChild);\n  }\n  return c;\n};\ngoog.dom.isCss1CompatMode = function() {\n  return goog.dom.isCss1CompatMode_(document);\n};\ngoog.dom.isCss1CompatMode_ = function(a) {\n  return goog.dom.COMPAT_MODE_KNOWN_ ? goog.dom.ASSUME_STANDARDS_MODE : \"CSS1Compat\" == a.compatMode;\n};\ngoog.dom.canHaveChildren = function(a) {\n  if (a.nodeType != goog.dom.NodeType.ELEMENT) {\n    return !1;\n  }\n  switch(a.tagName) {\n    case \"APPLET\":\n    case \"AREA\":\n    case \"BASE\":\n    case \"BR\":\n    case \"COL\":\n    case \"COMMAND\":\n    case \"EMBED\":\n    case \"FRAME\":\n    case \"HR\":\n    case \"IMG\":\n    case \"INPUT\":\n    case \"IFRAME\":\n    case \"ISINDEX\":\n    case \"KEYGEN\":\n    case \"LINK\":\n    case \"NOFRAMES\":\n    case \"NOSCRIPT\":\n    case \"META\":\n    case \"OBJECT\":\n    case \"PARAM\":\n    case \"SCRIPT\":\n    case \"SOURCE\":\n    case \"STYLE\":\n    case \"TRACK\":\n    case \"WBR\":\n      return !1;\n  }\n  return !0;\n};\ngoog.dom.appendChild = function(a, b) {\n  goog.asserts.assert(null != a && null != b, \"goog.dom.appendChild expects non-null arguments\");\n  a.appendChild(b);\n};\ngoog.dom.append = function(a, b) {\n  goog.dom.append_(goog.dom.getOwnerDocument(a), a, arguments, 1);\n};\ngoog.dom.removeChildren = function(a) {\n  for (var b; b = a.firstChild;) {\n    a.removeChild(b);\n  }\n};\ngoog.dom.insertSiblingBefore = function(a, b) {\n  goog.asserts.assert(null != a && null != b, \"goog.dom.insertSiblingBefore expects non-null arguments\");\n  b.parentNode && b.parentNode.insertBefore(a, b);\n};\ngoog.dom.insertSiblingAfter = function(a, b) {\n  goog.asserts.assert(null != a && null != b, \"goog.dom.insertSiblingAfter expects non-null arguments\");\n  b.parentNode && b.parentNode.insertBefore(a, b.nextSibling);\n};\ngoog.dom.insertChildAt = function(a, b, c) {\n  goog.asserts.assert(null != a, \"goog.dom.insertChildAt expects a non-null parent\");\n  a.insertBefore(b, a.childNodes[c] || null);\n};\ngoog.dom.removeNode = function(a) {\n  return a && a.parentNode ? a.parentNode.removeChild(a) : null;\n};\ngoog.dom.replaceNode = function(a, b) {\n  goog.asserts.assert(null != a && null != b, \"goog.dom.replaceNode expects non-null arguments\");\n  var c = b.parentNode;\n  c && c.replaceChild(a, b);\n};\ngoog.dom.flattenElement = function(a) {\n  var b, c = a.parentNode;\n  if (c && c.nodeType != goog.dom.NodeType.DOCUMENT_FRAGMENT) {\n    if (a.removeNode) {\n      return a.removeNode(!1);\n    }\n    for (; b = a.firstChild;) {\n      c.insertBefore(b, a);\n    }\n    return goog.dom.removeNode(a);\n  }\n};\ngoog.dom.getChildren = function(a) {\n  return goog.dom.BrowserFeature.CAN_USE_CHILDREN_ATTRIBUTE && void 0 != a.children ? a.children : goog.array.filter(a.childNodes, function(a) {\n    return a.nodeType == goog.dom.NodeType.ELEMENT;\n  });\n};\ngoog.dom.getFirstElementChild = function(a) {\n  return void 0 !== a.firstElementChild ? a.firstElementChild : goog.dom.getNextElementNode_(a.firstChild, !0);\n};\ngoog.dom.getLastElementChild = function(a) {\n  return void 0 !== a.lastElementChild ? a.lastElementChild : goog.dom.getNextElementNode_(a.lastChild, !1);\n};\ngoog.dom.getNextElementSibling = function(a) {\n  return void 0 !== a.nextElementSibling ? a.nextElementSibling : goog.dom.getNextElementNode_(a.nextSibling, !0);\n};\ngoog.dom.getPreviousElementSibling = function(a) {\n  return void 0 !== a.previousElementSibling ? a.previousElementSibling : goog.dom.getNextElementNode_(a.previousSibling, !1);\n};\ngoog.dom.getNextElementNode_ = function(a, b) {\n  for (; a && a.nodeType != goog.dom.NodeType.ELEMENT;) {\n    a = b ? a.nextSibling : a.previousSibling;\n  }\n  return a;\n};\ngoog.dom.getNextNode = function(a) {\n  if (!a) {\n    return null;\n  }\n  if (a.firstChild) {\n    return a.firstChild;\n  }\n  for (; a && !a.nextSibling;) {\n    a = a.parentNode;\n  }\n  return a ? a.nextSibling : null;\n};\ngoog.dom.getPreviousNode = function(a) {\n  if (!a) {\n    return null;\n  }\n  if (!a.previousSibling) {\n    return a.parentNode;\n  }\n  for (a = a.previousSibling; a && a.lastChild;) {\n    a = a.lastChild;\n  }\n  return a;\n};\ngoog.dom.isNodeLike = function(a) {\n  return goog.isObject(a) && 0 < a.nodeType;\n};\ngoog.dom.isElement = function(a) {\n  return goog.isObject(a) && a.nodeType == goog.dom.NodeType.ELEMENT;\n};\ngoog.dom.isWindow = function(a) {\n  return goog.isObject(a) && a.window == a;\n};\ngoog.dom.getParentElement = function(a) {\n  var b;\n  if (goog.dom.BrowserFeature.CAN_USE_PARENT_ELEMENT_PROPERTY && !(goog.userAgent.IE && goog.userAgent.isVersionOrHigher(\"9\") && !goog.userAgent.isVersionOrHigher(\"10\") && goog.global.SVGElement && a instanceof goog.global.SVGElement) && (b = a.parentElement)) {\n    return b;\n  }\n  b = a.parentNode;\n  return goog.dom.isElement(b) ? b : null;\n};\ngoog.dom.contains = function(a, b) {\n  if (!a || !b) {\n    return !1;\n  }\n  if (a.contains && b.nodeType == goog.dom.NodeType.ELEMENT) {\n    return a == b || a.contains(b);\n  }\n  if (\"undefined\" != typeof a.compareDocumentPosition) {\n    return a == b || !!(a.compareDocumentPosition(b) & 16);\n  }\n  for (; b && a != b;) {\n    b = b.parentNode;\n  }\n  return b == a;\n};\ngoog.dom.compareNodeOrder = function(a, b) {\n  if (a == b) {\n    return 0;\n  }\n  if (a.compareDocumentPosition) {\n    return a.compareDocumentPosition(b) & 2 ? 1 : -1;\n  }\n  if (goog.userAgent.IE && !goog.userAgent.isDocumentModeOrHigher(9)) {\n    if (a.nodeType == goog.dom.NodeType.DOCUMENT) {\n      return -1;\n    }\n    if (b.nodeType == goog.dom.NodeType.DOCUMENT) {\n      return 1;\n    }\n  }\n  if (\"sourceIndex\" in a || a.parentNode && \"sourceIndex\" in a.parentNode) {\n    var c = a.nodeType == goog.dom.NodeType.ELEMENT, d = b.nodeType == goog.dom.NodeType.ELEMENT;\n    if (c && d) {\n      return a.sourceIndex - b.sourceIndex;\n    }\n    var e = a.parentNode, f = b.parentNode;\n    return e == f ? goog.dom.compareSiblingOrder_(a, b) : !c && goog.dom.contains(e, b) ? -1 * goog.dom.compareParentsDescendantNodeIe_(a, b) : !d && goog.dom.contains(f, a) ? goog.dom.compareParentsDescendantNodeIe_(b, a) : (c ? a.sourceIndex : e.sourceIndex) - (d ? b.sourceIndex : f.sourceIndex);\n  }\n  d = goog.dom.getOwnerDocument(a);\n  c = d.createRange();\n  c.selectNode(a);\n  c.collapse(!0);\n  d = d.createRange();\n  d.selectNode(b);\n  d.collapse(!0);\n  return c.compareBoundaryPoints(goog.global.Range.START_TO_END, d);\n};\ngoog.dom.compareParentsDescendantNodeIe_ = function(a, b) {\n  var c = a.parentNode;\n  if (c == b) {\n    return -1;\n  }\n  for (var d = b; d.parentNode != c;) {\n    d = d.parentNode;\n  }\n  return goog.dom.compareSiblingOrder_(d, a);\n};\ngoog.dom.compareSiblingOrder_ = function(a, b) {\n  for (var c = b; c = c.previousSibling;) {\n    if (c == a) {\n      return -1;\n    }\n  }\n  return 1;\n};\ngoog.dom.findCommonAncestor = function(a) {\n  var b, c = arguments.length;\n  if (!c) {\n    return null;\n  }\n  if (1 == c) {\n    return arguments[0];\n  }\n  var d = [], e = Infinity;\n  for (b = 0; b < c; b++) {\n    for (var f = [], g = arguments[b]; g;) {\n      f.unshift(g), g = g.parentNode;\n    }\n    d.push(f);\n    e = Math.min(e, f.length);\n  }\n  f = null;\n  for (b = 0; b < e; b++) {\n    g = d[0][b];\n    for (var h = 1; h < c; h++) {\n      if (g != d[h][b]) {\n        return f;\n      }\n    }\n    f = g;\n  }\n  return f;\n};\ngoog.dom.isInDocument = function(a) {\n  return 16 == (a.ownerDocument.compareDocumentPosition(a) & 16);\n};\ngoog.dom.getOwnerDocument = function(a) {\n  goog.asserts.assert(a, \"Node cannot be null or undefined.\");\n  return a.nodeType == goog.dom.NodeType.DOCUMENT ? a : a.ownerDocument || a.document;\n};\ngoog.dom.getFrameContentDocument = function(a) {\n  return a.contentDocument || a.contentWindow.document;\n};\ngoog.dom.getFrameContentWindow = function(a) {\n  try {\n    return a.contentWindow || (a.contentDocument ? goog.dom.getWindow(a.contentDocument) : null);\n  } catch (b) {\n  }\n  return null;\n};\ngoog.dom.setTextContent = function(a, b) {\n  goog.asserts.assert(null != a, \"goog.dom.setTextContent expects a non-null value for node\");\n  if (\"textContent\" in a) {\n    a.textContent = b;\n  } else {\n    if (a.nodeType == goog.dom.NodeType.TEXT) {\n      a.data = String(b);\n    } else {\n      if (a.firstChild && a.firstChild.nodeType == goog.dom.NodeType.TEXT) {\n        for (; a.lastChild != a.firstChild;) {\n          a.removeChild(goog.asserts.assert(a.lastChild));\n        }\n        a.firstChild.data = String(b);\n      } else {\n        goog.dom.removeChildren(a);\n        var c = goog.dom.getOwnerDocument(a);\n        a.appendChild(c.createTextNode(String(b)));\n      }\n    }\n  }\n};\ngoog.dom.getOuterHtml = function(a) {\n  goog.asserts.assert(null !== a, \"goog.dom.getOuterHtml expects a non-null value for element\");\n  if (\"outerHTML\" in a) {\n    return a.outerHTML;\n  }\n  var b = goog.dom.getOwnerDocument(a);\n  b = goog.dom.createElement_(b, \"DIV\");\n  b.appendChild(a.cloneNode(!0));\n  return b.innerHTML;\n};\ngoog.dom.findNode = function(a, b) {\n  var c = [];\n  return goog.dom.findNodes_(a, b, c, !0) ? c[0] : void 0;\n};\ngoog.dom.findNodes = function(a, b) {\n  var c = [];\n  goog.dom.findNodes_(a, b, c, !1);\n  return c;\n};\ngoog.dom.findNodes_ = function(a, b, c, d) {\n  if (null != a) {\n    for (a = a.firstChild; a;) {\n      if (b(a) && (c.push(a), d) || goog.dom.findNodes_(a, b, c, d)) {\n        return !0;\n      }\n      a = a.nextSibling;\n    }\n  }\n  return !1;\n};\ngoog.dom.findElement = function(a, b) {\n  for (var c = goog.dom.getChildrenReverse_(a); 0 < c.length;) {\n    var d = c.pop();\n    if (b(d)) {\n      return d;\n    }\n    for (d = d.lastElementChild; d; d = d.previousElementSibling) {\n      c.push(d);\n    }\n  }\n  return null;\n};\ngoog.dom.findElements = function(a, b) {\n  for (var c = [], d = goog.dom.getChildrenReverse_(a); 0 < d.length;) {\n    var e = d.pop();\n    b(e) && c.push(e);\n    for (e = e.lastElementChild; e; e = e.previousElementSibling) {\n      d.push(e);\n    }\n  }\n  return c;\n};\ngoog.dom.getChildrenReverse_ = function(a) {\n  if (a.nodeType == goog.dom.NodeType.DOCUMENT) {\n    return [a.documentElement];\n  }\n  var b = [];\n  for (a = a.lastElementChild; a; a = a.previousElementSibling) {\n    b.push(a);\n  }\n  return b;\n};\ngoog.dom.TAGS_TO_IGNORE_ = {SCRIPT:1, STYLE:1, HEAD:1, IFRAME:1, OBJECT:1};\ngoog.dom.PREDEFINED_TAG_VALUES_ = {IMG:\" \", BR:\"\\n\"};\ngoog.dom.isFocusableTabIndex = function(a) {\n  return goog.dom.hasSpecifiedTabIndex_(a) && goog.dom.isTabIndexFocusable_(a);\n};\ngoog.dom.setFocusableTabIndex = function(a, b) {\n  b ? a.tabIndex = 0 : (a.tabIndex = -1, a.removeAttribute(\"tabIndex\"));\n};\ngoog.dom.isFocusable = function(a) {\n  var b;\n  return (b = goog.dom.nativelySupportsFocus_(a) ? !a.disabled && (!goog.dom.hasSpecifiedTabIndex_(a) || goog.dom.isTabIndexFocusable_(a)) : goog.dom.isFocusableTabIndex(a)) && goog.userAgent.IE ? goog.dom.hasNonZeroBoundingRect_(a) : b;\n};\ngoog.dom.hasSpecifiedTabIndex_ = function(a) {\n  return goog.userAgent.IE && !goog.userAgent.isVersionOrHigher(\"9\") ? (a = a.getAttributeNode(\"tabindex\"), null != a && a.specified) : a.hasAttribute(\"tabindex\");\n};\ngoog.dom.isTabIndexFocusable_ = function(a) {\n  a = a.tabIndex;\n  return \"number\" === typeof a && 0 <= a && 32768 > a;\n};\ngoog.dom.nativelySupportsFocus_ = function(a) {\n  return \"A\" == a.tagName && a.hasAttribute(\"href\") || \"INPUT\" == a.tagName || \"TEXTAREA\" == a.tagName || \"SELECT\" == a.tagName || \"BUTTON\" == a.tagName;\n};\ngoog.dom.hasNonZeroBoundingRect_ = function(a) {\n  a = !goog.isFunction(a.getBoundingClientRect) || goog.userAgent.IE && null == a.parentElement ? {height:a.offsetHeight, width:a.offsetWidth} : a.getBoundingClientRect();\n  return null != a && 0 < a.height && 0 < a.width;\n};\ngoog.dom.getTextContent = function(a) {\n  if (goog.dom.BrowserFeature.CAN_USE_INNER_TEXT && null !== a && \"innerText\" in a) {\n    a = goog.string.canonicalizeNewlines(a.innerText);\n  } else {\n    var b = [];\n    goog.dom.getTextContent_(a, b, !0);\n    a = b.join(\"\");\n  }\n  a = a.replace(/ \\xAD /g, \" \").replace(/\\xAD/g, \"\");\n  a = a.replace(/\\u200B/g, \"\");\n  goog.dom.BrowserFeature.CAN_USE_INNER_TEXT || (a = a.replace(/ +/g, \" \"));\n  \" \" != a && (a = a.replace(/^\\s*/, \"\"));\n  return a;\n};\ngoog.dom.getRawTextContent = function(a) {\n  var b = [];\n  goog.dom.getTextContent_(a, b, !1);\n  return b.join(\"\");\n};\ngoog.dom.getTextContent_ = function(a, b, c) {\n  if (!(a.nodeName in goog.dom.TAGS_TO_IGNORE_)) {\n    if (a.nodeType == goog.dom.NodeType.TEXT) {\n      c ? b.push(String(a.nodeValue).replace(/(\\r\\n|\\r|\\n)/g, \"\")) : b.push(a.nodeValue);\n    } else {\n      if (a.nodeName in goog.dom.PREDEFINED_TAG_VALUES_) {\n        b.push(goog.dom.PREDEFINED_TAG_VALUES_[a.nodeName]);\n      } else {\n        for (a = a.firstChild; a;) {\n          goog.dom.getTextContent_(a, b, c), a = a.nextSibling;\n        }\n      }\n    }\n  }\n};\ngoog.dom.getNodeTextLength = function(a) {\n  return goog.dom.getTextContent(a).length;\n};\ngoog.dom.getNodeTextOffset = function(a, b) {\n  for (var c = b || goog.dom.getOwnerDocument(a).body, d = []; a && a != c;) {\n    for (var e = a; e = e.previousSibling;) {\n      d.unshift(goog.dom.getTextContent(e));\n    }\n    a = a.parentNode;\n  }\n  return goog.string.trimLeft(d.join(\"\")).replace(/ +/g, \" \").length;\n};\ngoog.dom.getNodeAtOffset = function(a, b, c) {\n  a = [a];\n  for (var d = 0, e = null; 0 < a.length && d < b;) {\n    if (e = a.pop(), !(e.nodeName in goog.dom.TAGS_TO_IGNORE_)) {\n      if (e.nodeType == goog.dom.NodeType.TEXT) {\n        var f = e.nodeValue.replace(/(\\r\\n|\\r|\\n)/g, \"\").replace(/ +/g, \" \");\n        d += f.length;\n      } else {\n        if (e.nodeName in goog.dom.PREDEFINED_TAG_VALUES_) {\n          d += goog.dom.PREDEFINED_TAG_VALUES_[e.nodeName].length;\n        } else {\n          for (f = e.childNodes.length - 1; 0 <= f; f--) {\n            a.push(e.childNodes[f]);\n          }\n        }\n      }\n    }\n  }\n  goog.isObject(c) && (c.remainder = e ? e.nodeValue.length + b - d - 1 : 0, c.node = e);\n  return e;\n};\ngoog.dom.isNodeList = function(a) {\n  if (a && \"number\" == typeof a.length) {\n    if (goog.isObject(a)) {\n      return \"function\" == typeof a.item || \"string\" == typeof a.item;\n    }\n    if (goog.isFunction(a)) {\n      return \"function\" == typeof a.item;\n    }\n  }\n  return !1;\n};\ngoog.dom.getAncestorByTagNameAndClass = function(a, b, c, d) {\n  if (!b && !c) {\n    return null;\n  }\n  var e = b ? String(b).toUpperCase() : null;\n  return goog.dom.getAncestor(a, function(a) {\n    return (!e || a.nodeName == e) && (!c || \"string\" === typeof a.className && goog.array.contains(a.className.split(/\\s+/), c));\n  }, !0, d);\n};\ngoog.dom.getAncestorByClass = function(a, b, c) {\n  return goog.dom.getAncestorByTagNameAndClass(a, null, b, c);\n};\ngoog.dom.getAncestor = function(a, b, c, d) {\n  a && !c && (a = a.parentNode);\n  for (c = 0; a && (null == d || c <= d);) {\n    goog.asserts.assert(\"parentNode\" != a.name);\n    if (b(a)) {\n      return a;\n    }\n    a = a.parentNode;\n    c++;\n  }\n  return null;\n};\ngoog.dom.getActiveElement = function(a) {\n  try {\n    var b = a && a.activeElement;\n    return b && b.nodeName ? b : null;\n  } catch (c) {\n    return null;\n  }\n};\ngoog.dom.getPixelRatio = function() {\n  var a = goog.dom.getWindow();\n  return void 0 !== a.devicePixelRatio ? a.devicePixelRatio : a.matchMedia ? goog.dom.matchesPixelRatio_(3) || goog.dom.matchesPixelRatio_(2) || goog.dom.matchesPixelRatio_(1.5) || goog.dom.matchesPixelRatio_(1) || .75 : 1;\n};\ngoog.dom.matchesPixelRatio_ = function(a) {\n  return goog.dom.getWindow().matchMedia(\"(min-resolution: \" + a + \"dppx),(min--moz-device-pixel-ratio: \" + a + \"),(min-resolution: \" + 96 * a + \"dpi)\").matches ? a : 0;\n};\ngoog.dom.getCanvasContext2D = function(a) {\n  return a.getContext(\"2d\");\n};\ngoog.dom.DomHelper = function(a) {\n  this.document_ = a || goog.global.document || document;\n};\ngoog.dom.DomHelper.prototype.getDomHelper = goog.dom.getDomHelper;\ngoog.dom.DomHelper.prototype.setDocument = function(a) {\n  this.document_ = a;\n};\ngoog.dom.DomHelper.prototype.getDocument = function() {\n  return this.document_;\n};\ngoog.dom.DomHelper.prototype.getElement = function(a) {\n  return goog.dom.getElementHelper_(this.document_, a);\n};\ngoog.dom.DomHelper.prototype.getRequiredElement = function(a) {\n  return goog.dom.getRequiredElementHelper_(this.document_, a);\n};\ngoog.dom.DomHelper.prototype.$ = goog.dom.DomHelper.prototype.getElement;\ngoog.dom.DomHelper.prototype.getElementsByTagName = function(a, b) {\n  return (b || this.document_).getElementsByTagName(String(a));\n};\ngoog.dom.DomHelper.prototype.getElementsByTagNameAndClass = function(a, b, c) {\n  return goog.dom.getElementsByTagNameAndClass_(this.document_, a, b, c);\n};\ngoog.dom.DomHelper.prototype.getElementByTagNameAndClass = function(a, b, c) {\n  return goog.dom.getElementByTagNameAndClass_(this.document_, a, b, c);\n};\ngoog.dom.DomHelper.prototype.getElementsByClass = function(a, b) {\n  return goog.dom.getElementsByClass(a, b || this.document_);\n};\ngoog.dom.DomHelper.prototype.getElementByClass = function(a, b) {\n  return goog.dom.getElementByClass(a, b || this.document_);\n};\ngoog.dom.DomHelper.prototype.getRequiredElementByClass = function(a, b) {\n  return goog.dom.getRequiredElementByClass(a, b || this.document_);\n};\ngoog.dom.DomHelper.prototype.$$ = goog.dom.DomHelper.prototype.getElementsByTagNameAndClass;\ngoog.dom.DomHelper.prototype.setProperties = goog.dom.setProperties;\ngoog.dom.DomHelper.prototype.getViewportSize = function(a) {\n  return goog.dom.getViewportSize(a || this.getWindow());\n};\ngoog.dom.DomHelper.prototype.getDocumentHeight = function() {\n  return goog.dom.getDocumentHeight_(this.getWindow());\n};\ngoog.dom.DomHelper.prototype.createDom = function(a, b, c) {\n  return goog.dom.createDom_(this.document_, arguments);\n};\ngoog.dom.DomHelper.prototype.$dom = goog.dom.DomHelper.prototype.createDom;\ngoog.dom.DomHelper.prototype.createElement = function(a) {\n  return goog.dom.createElement_(this.document_, a);\n};\ngoog.dom.DomHelper.prototype.createTextNode = function(a) {\n  return this.document_.createTextNode(String(a));\n};\ngoog.dom.DomHelper.prototype.createTable = function(a, b, c) {\n  return goog.dom.createTable_(this.document_, a, b, !!c);\n};\ngoog.dom.DomHelper.prototype.safeHtmlToNode = function(a) {\n  return goog.dom.safeHtmlToNode_(this.document_, a);\n};\ngoog.dom.DomHelper.prototype.isCss1CompatMode = function() {\n  return goog.dom.isCss1CompatMode_(this.document_);\n};\ngoog.dom.DomHelper.prototype.getWindow = function() {\n  return goog.dom.getWindow_(this.document_);\n};\ngoog.dom.DomHelper.prototype.getDocumentScrollElement = function() {\n  return goog.dom.getDocumentScrollElement_(this.document_);\n};\ngoog.dom.DomHelper.prototype.getDocumentScroll = function() {\n  return goog.dom.getDocumentScroll_(this.document_);\n};\ngoog.dom.DomHelper.prototype.getActiveElement = function(a) {\n  return goog.dom.getActiveElement(a || this.document_);\n};\ngoog.dom.DomHelper.prototype.appendChild = goog.dom.appendChild;\ngoog.dom.DomHelper.prototype.append = goog.dom.append;\ngoog.dom.DomHelper.prototype.canHaveChildren = goog.dom.canHaveChildren;\ngoog.dom.DomHelper.prototype.removeChildren = goog.dom.removeChildren;\ngoog.dom.DomHelper.prototype.insertSiblingBefore = goog.dom.insertSiblingBefore;\ngoog.dom.DomHelper.prototype.insertSiblingAfter = goog.dom.insertSiblingAfter;\ngoog.dom.DomHelper.prototype.insertChildAt = goog.dom.insertChildAt;\ngoog.dom.DomHelper.prototype.removeNode = goog.dom.removeNode;\ngoog.dom.DomHelper.prototype.replaceNode = goog.dom.replaceNode;\ngoog.dom.DomHelper.prototype.flattenElement = goog.dom.flattenElement;\ngoog.dom.DomHelper.prototype.getChildren = goog.dom.getChildren;\ngoog.dom.DomHelper.prototype.getFirstElementChild = goog.dom.getFirstElementChild;\ngoog.dom.DomHelper.prototype.getLastElementChild = goog.dom.getLastElementChild;\ngoog.dom.DomHelper.prototype.getNextElementSibling = goog.dom.getNextElementSibling;\ngoog.dom.DomHelper.prototype.getPreviousElementSibling = goog.dom.getPreviousElementSibling;\ngoog.dom.DomHelper.prototype.getNextNode = goog.dom.getNextNode;\ngoog.dom.DomHelper.prototype.getPreviousNode = goog.dom.getPreviousNode;\ngoog.dom.DomHelper.prototype.isNodeLike = goog.dom.isNodeLike;\ngoog.dom.DomHelper.prototype.isElement = goog.dom.isElement;\ngoog.dom.DomHelper.prototype.isWindow = goog.dom.isWindow;\ngoog.dom.DomHelper.prototype.getParentElement = goog.dom.getParentElement;\ngoog.dom.DomHelper.prototype.contains = goog.dom.contains;\ngoog.dom.DomHelper.prototype.compareNodeOrder = goog.dom.compareNodeOrder;\ngoog.dom.DomHelper.prototype.findCommonAncestor = goog.dom.findCommonAncestor;\ngoog.dom.DomHelper.prototype.getOwnerDocument = goog.dom.getOwnerDocument;\ngoog.dom.DomHelper.prototype.getFrameContentDocument = goog.dom.getFrameContentDocument;\ngoog.dom.DomHelper.prototype.getFrameContentWindow = goog.dom.getFrameContentWindow;\ngoog.dom.DomHelper.prototype.setTextContent = goog.dom.setTextContent;\ngoog.dom.DomHelper.prototype.getOuterHtml = goog.dom.getOuterHtml;\ngoog.dom.DomHelper.prototype.findNode = goog.dom.findNode;\ngoog.dom.DomHelper.prototype.findNodes = goog.dom.findNodes;\ngoog.dom.DomHelper.prototype.isFocusableTabIndex = goog.dom.isFocusableTabIndex;\ngoog.dom.DomHelper.prototype.setFocusableTabIndex = goog.dom.setFocusableTabIndex;\ngoog.dom.DomHelper.prototype.isFocusable = goog.dom.isFocusable;\ngoog.dom.DomHelper.prototype.getTextContent = goog.dom.getTextContent;\ngoog.dom.DomHelper.prototype.getNodeTextLength = goog.dom.getNodeTextLength;\ngoog.dom.DomHelper.prototype.getNodeTextOffset = goog.dom.getNodeTextOffset;\ngoog.dom.DomHelper.prototype.getNodeAtOffset = goog.dom.getNodeAtOffset;\ngoog.dom.DomHelper.prototype.isNodeList = goog.dom.isNodeList;\ngoog.dom.DomHelper.prototype.getAncestorByTagNameAndClass = goog.dom.getAncestorByTagNameAndClass;\ngoog.dom.DomHelper.prototype.getAncestorByClass = goog.dom.getAncestorByClass;\ngoog.dom.DomHelper.prototype.getAncestor = goog.dom.getAncestor;\ngoog.dom.DomHelper.prototype.getCanvasContext2D = goog.dom.getCanvasContext2D;\ngoog.json = {};\ngoog.json.USE_NATIVE_JSON = !1;\ngoog.json.TRY_NATIVE_JSON = !1;\ngoog.json.isValid = function(a) {\n  return /^\\s*$/.test(a) ? !1 : /^[\\],:{}\\s\\u2028\\u2029]*$/.test(a.replace(/\\\\[\"\\\\\\/bfnrtu]/g, \"@\").replace(/(?:\"[^\"\\\\\\n\\r\\u2028\\u2029\\x00-\\x08\\x0a-\\x1f]*\"|true|false|null|-?\\d+(?:\\.\\d*)?(?:[eE][+\\-]?\\d+)?)[\\s\\u2028\\u2029]*(?=:|,|]|}|$)/g, \"]\").replace(/(?:^|:|,)(?:[\\s\\u2028\\u2029]*\\[)+/g, \"\"));\n};\ngoog.json.errorLogger_ = goog.nullFunction;\ngoog.json.setErrorLogger = function(a) {\n  goog.json.errorLogger_ = a;\n};\ngoog.json.parse = goog.json.USE_NATIVE_JSON ? goog.global.JSON.parse : function(a) {\n  if (goog.json.TRY_NATIVE_JSON) {\n    try {\n      return goog.global.JSON.parse(a);\n    } catch (d) {\n      var b = d;\n    }\n  }\n  a = String(a);\n  if (goog.json.isValid(a)) {\n    try {\n      var c = eval(\"(\" + a + \")\");\n      b && goog.json.errorLogger_(\"Invalid JSON: \" + a, b);\n      return c;\n    } catch (d) {\n    }\n  }\n  throw Error(\"Invalid JSON string: \" + a);\n};\ngoog.json.serialize = goog.json.USE_NATIVE_JSON ? goog.global.JSON.stringify : function(a, b) {\n  return (new goog.json.Serializer(b)).serialize(a);\n};\ngoog.json.Serializer = function(a) {\n  this.replacer_ = a;\n};\ngoog.json.Serializer.prototype.serialize = function(a) {\n  var b = [];\n  this.serializeInternal(a, b);\n  return b.join(\"\");\n};\ngoog.json.Serializer.prototype.serializeInternal = function(a, b) {\n  if (null == a) {\n    b.push(\"null\");\n  } else {\n    if (\"object\" == typeof a) {\n      if (goog.isArray(a)) {\n        this.serializeArray(a, b);\n        return;\n      }\n      if (a instanceof String || a instanceof Number || a instanceof Boolean) {\n        a = a.valueOf();\n      } else {\n        this.serializeObject_(a, b);\n        return;\n      }\n    }\n    switch(typeof a) {\n      case \"string\":\n        this.serializeString_(a, b);\n        break;\n      case \"number\":\n        this.serializeNumber_(a, b);\n        break;\n      case \"boolean\":\n        b.push(String(a));\n        break;\n      case \"function\":\n        b.push(\"null\");\n        break;\n      default:\n        throw Error(\"Unknown type: \" + typeof a);\n    }\n  }\n};\ngoog.json.Serializer.charToJsonCharCache_ = {'\"':'\\\\\"', \"\\\\\":\"\\\\\\\\\", \"/\":\"\\\\/\", \"\\b\":\"\\\\b\", \"\\f\":\"\\\\f\", \"\\n\":\"\\\\n\", \"\\r\":\"\\\\r\", \"\\t\":\"\\\\t\", \"\\x0B\":\"\\\\u000b\"};\ngoog.json.Serializer.charsToReplace_ = /\\uffff/.test(\"\\uffff\") ? /[\\\\\"\\x00-\\x1f\\x7f-\\uffff]/g : /[\\\\\"\\x00-\\x1f\\x7f-\\xff]/g;\ngoog.json.Serializer.prototype.serializeString_ = function(a, b) {\n  b.push('\"', a.replace(goog.json.Serializer.charsToReplace_, function(a) {\n    var b = goog.json.Serializer.charToJsonCharCache_[a];\n    b || (b = \"\\\\u\" + (a.charCodeAt(0) | 65536).toString(16).substr(1), goog.json.Serializer.charToJsonCharCache_[a] = b);\n    return b;\n  }), '\"');\n};\ngoog.json.Serializer.prototype.serializeNumber_ = function(a, b) {\n  b.push(isFinite(a) && !isNaN(a) ? String(a) : \"null\");\n};\ngoog.json.Serializer.prototype.serializeArray = function(a, b) {\n  var c = a.length;\n  b.push(\"[\");\n  for (var d = \"\", e = 0; e < c; e++) {\n    b.push(d), d = a[e], this.serializeInternal(this.replacer_ ? this.replacer_.call(a, String(e), d) : d, b), d = \",\";\n  }\n  b.push(\"]\");\n};\ngoog.json.Serializer.prototype.serializeObject_ = function(a, b) {\n  b.push(\"{\");\n  var c = \"\", d;\n  for (d in a) {\n    if (Object.prototype.hasOwnProperty.call(a, d)) {\n      var e = a[d];\n      \"function\" != typeof e && (b.push(c), this.serializeString_(d, b), b.push(\":\"), this.serializeInternal(this.replacer_ ? this.replacer_.call(a, d, e) : e, b), c = \",\");\n    }\n  }\n  b.push(\"}\");\n};\ngoog.proto2.ObjectSerializer = function(a, b) {\n  this.keyOption_ = a;\n  this.serializeBooleanAsNumber_ = b;\n};\ngoog.inherits(goog.proto2.ObjectSerializer, goog.proto2.Serializer);\ngoog.proto2.ObjectSerializer.KeyOption = {TAG:0, NAME:1, CAMEL_CASE_NAME:2};\ngoog.proto2.ObjectSerializer.prototype.serialize = function(a) {\n  for (var b = a.getDescriptor().getFields(), c = {}, d = 0; d < b.length; d++) {\n    var e = b[d], f = e.getTag();\n    switch(this.keyOption_) {\n      case goog.proto2.ObjectSerializer.KeyOption.TAG:\n        break;\n      case goog.proto2.ObjectSerializer.KeyOption.NAME:\n        f = e.getName();\n        break;\n      case goog.proto2.ObjectSerializer.KeyOption.CAMEL_CASE_NAME:\n        f = goog.string.toCamelCase(e.getName().replace(/_/g, \"-\"));\n        break;\n      default:\n        goog.asserts.assert(this.keyOption_ !== goog.proto2.ObjectSerializer.KeyOption.TAG && this.keyOption_ !== goog.proto2.ObjectSerializer.KeyOption.NAME && this.keyOption_ !== goog.proto2.ObjectSerializer.KeyOption.CAMEL_CASE_NAME, \"keyOption should be one of TAG, NAME, or CAMEL_CASE_NAME\");\n    }\n    if (a.has(e)) {\n      if (e.isRepeated()) {\n        var g = [];\n        c[f] = g;\n        for (f = 0; f < a.countOf(e); f++) {\n          g.push(this.getSerializedValue(e, a.get(e, f)));\n        }\n      } else {\n        c[f] = this.getSerializedValue(e, a.get(e));\n      }\n    }\n  }\n  a.forEachUnknown(function(a, b) {\n    c[a] = b;\n  });\n  return c;\n};\ngoog.proto2.ObjectSerializer.prototype.getSerializedValue = function(a, b) {\n  return this.serializeBooleanAsNumber_ && a.getFieldType() == goog.proto2.FieldDescriptor.FieldType.BOOL && \"boolean\" === typeof b ? b ? 1 : 0 : goog.proto2.ObjectSerializer.superClass_.getSerializedValue.call(this, a, b);\n};\ngoog.proto2.ObjectSerializer.prototype.getDeserializedValue = function(a, b) {\n  return a.getFieldType() == goog.proto2.FieldDescriptor.FieldType.BOOL && \"number\" === typeof b ? !!b : goog.proto2.ObjectSerializer.superClass_.getDeserializedValue.call(this, a, b);\n};\ngoog.proto2.ObjectSerializer.prototype.deserializeTo = function(a, b) {\n  var c = a.getDescriptor(), d;\n  for (d in b) {\n    var e = b[d], f = goog.string.isNumeric(d);\n    if (f) {\n      var g = c.findFieldByTag(d);\n    } else {\n      goog.asserts.assert(this.keyOption_ == goog.proto2.ObjectSerializer.KeyOption.NAME || this.keyOption_ == goog.proto2.ObjectSerializer.KeyOption.CAMEL_CASE_NAME, \"Key mode \" + this.keyOption_ + \"for key \" + d + \" is not \" + goog.proto2.ObjectSerializer.KeyOption.NAME + \" nor \" + goog.proto2.ObjectSerializer.KeyOption.CAMEL_CASE_NAME), this.keyOption_ == goog.proto2.ObjectSerializer.KeyOption.CAMEL_CASE_NAME && (d = goog.string.toSelectorCase(d).replace(/\\-/g, \"_\")), g = c.findFieldByName(d);\n    }\n    if (g) {\n      if (g.isRepeated()) {\n        for (goog.asserts.assert(goog.isArray(e), \"Value for repeated field \" + g + \" must be an array.\"), f = 0; f < e.length; f++) {\n          a.add(g, this.getDeserializedValue(g, e[f]));\n        }\n      } else {\n        goog.asserts.assert(!goog.isArray(e), \"Value for non-repeated field \" + g + \" must not be an array.\"), a.set(g, this.getDeserializedValue(g, e));\n      }\n    } else {\n      f ? a.setUnknown(Number(d), e) : goog.asserts.fail(\"Failed to find field: \" + d);\n    }\n  }\n};\n/*\n\n Protocol Buffer 2 Copyright 2008 Google Inc.\n All other code copyright its respective owners.\n Copyright (C) 2010 The Libphonenumber Authors\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n*/\nvar i18n = {phonenumbers:{}};\ni18n.phonenumbers.NumberFormat = function() {\n  goog.proto2.Message.call(this);\n};\ngoog.inherits(i18n.phonenumbers.NumberFormat, goog.proto2.Message);\ni18n.phonenumbers.NumberFormat.descriptor_ = null;\ni18n.phonenumbers.NumberFormat.prototype.getPattern = function() {\n  return this.get$Value(1);\n};\ni18n.phonenumbers.NumberFormat.prototype.getPatternOrDefault = function() {\n  return this.get$ValueOrDefault(1);\n};\ni18n.phonenumbers.NumberFormat.prototype.setPattern = function(a) {\n  this.set$Value(1, a);\n};\ni18n.phonenumbers.NumberFormat.prototype.hasPattern = function() {\n  return this.has$Value(1);\n};\ni18n.phonenumbers.NumberFormat.prototype.patternCount = function() {\n  return this.count$Values(1);\n};\ni18n.phonenumbers.NumberFormat.prototype.clearPattern = function() {\n  this.clear$Field(1);\n};\ni18n.phonenumbers.NumberFormat.prototype.getFormat = function() {\n  return this.get$Value(2);\n};\ni18n.phonenumbers.NumberFormat.prototype.getFormatOrDefault = function() {\n  return this.get$ValueOrDefault(2);\n};\ni18n.phonenumbers.NumberFormat.prototype.setFormat = function(a) {\n  this.set$Value(2, a);\n};\ni18n.phonenumbers.NumberFormat.prototype.hasFormat = function() {\n  return this.has$Value(2);\n};\ni18n.phonenumbers.NumberFormat.prototype.formatCount = function() {\n  return this.count$Values(2);\n};\ni18n.phonenumbers.NumberFormat.prototype.clearFormat = function() {\n  this.clear$Field(2);\n};\ni18n.phonenumbers.NumberFormat.prototype.getLeadingDigitsPattern = function(a) {\n  return this.get$Value(3, a);\n};\ni18n.phonenumbers.NumberFormat.prototype.getLeadingDigitsPatternOrDefault = function(a) {\n  return this.get$ValueOrDefault(3, a);\n};\ni18n.phonenumbers.NumberFormat.prototype.addLeadingDigitsPattern = function(a) {\n  this.add$Value(3, a);\n};\ni18n.phonenumbers.NumberFormat.prototype.leadingDigitsPatternArray = function() {\n  return this.array$Values(3);\n};\ni18n.phonenumbers.NumberFormat.prototype.hasLeadingDigitsPattern = function() {\n  return this.has$Value(3);\n};\ni18n.phonenumbers.NumberFormat.prototype.leadingDigitsPatternCount = function() {\n  return this.count$Values(3);\n};\ni18n.phonenumbers.NumberFormat.prototype.clearLeadingDigitsPattern = function() {\n  this.clear$Field(3);\n};\ni18n.phonenumbers.NumberFormat.prototype.getNationalPrefixFormattingRule = function() {\n  return this.get$Value(4);\n};\ni18n.phonenumbers.NumberFormat.prototype.getNationalPrefixFormattingRuleOrDefault = function() {\n  return this.get$ValueOrDefault(4);\n};\ni18n.phonenumbers.NumberFormat.prototype.setNationalPrefixFormattingRule = function(a) {\n  this.set$Value(4, a);\n};\ni18n.phonenumbers.NumberFormat.prototype.hasNationalPrefixFormattingRule = function() {\n  return this.has$Value(4);\n};\ni18n.phonenumbers.NumberFormat.prototype.nationalPrefixFormattingRuleCount = function() {\n  return this.count$Values(4);\n};\ni18n.phonenumbers.NumberFormat.prototype.clearNationalPrefixFormattingRule = function() {\n  this.clear$Field(4);\n};\ni18n.phonenumbers.NumberFormat.prototype.getNationalPrefixOptionalWhenFormatting = function() {\n  return this.get$Value(6);\n};\ni18n.phonenumbers.NumberFormat.prototype.getNationalPrefixOptionalWhenFormattingOrDefault = function() {\n  return this.get$ValueOrDefault(6);\n};\ni18n.phonenumbers.NumberFormat.prototype.setNationalPrefixOptionalWhenFormatting = function(a) {\n  this.set$Value(6, a);\n};\ni18n.phonenumbers.NumberFormat.prototype.hasNationalPrefixOptionalWhenFormatting = function() {\n  return this.has$Value(6);\n};\ni18n.phonenumbers.NumberFormat.prototype.nationalPrefixOptionalWhenFormattingCount = function() {\n  return this.count$Values(6);\n};\ni18n.phonenumbers.NumberFormat.prototype.clearNationalPrefixOptionalWhenFormatting = function() {\n  this.clear$Field(6);\n};\ni18n.phonenumbers.NumberFormat.prototype.getDomesticCarrierCodeFormattingRule = function() {\n  return this.get$Value(5);\n};\ni18n.phonenumbers.NumberFormat.prototype.getDomesticCarrierCodeFormattingRuleOrDefault = function() {\n  return this.get$ValueOrDefault(5);\n};\ni18n.phonenumbers.NumberFormat.prototype.setDomesticCarrierCodeFormattingRule = function(a) {\n  this.set$Value(5, a);\n};\ni18n.phonenumbers.NumberFormat.prototype.hasDomesticCarrierCodeFormattingRule = function() {\n  return this.has$Value(5);\n};\ni18n.phonenumbers.NumberFormat.prototype.domesticCarrierCodeFormattingRuleCount = function() {\n  return this.count$Values(5);\n};\ni18n.phonenumbers.NumberFormat.prototype.clearDomesticCarrierCodeFormattingRule = function() {\n  this.clear$Field(5);\n};\ni18n.phonenumbers.PhoneNumberDesc = function() {\n  goog.proto2.Message.call(this);\n};\ngoog.inherits(i18n.phonenumbers.PhoneNumberDesc, goog.proto2.Message);\ni18n.phonenumbers.PhoneNumberDesc.descriptor_ = null;\ni18n.phonenumbers.PhoneNumberDesc.prototype.getNationalNumberPattern = function() {\n  return this.get$Value(2);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.getNationalNumberPatternOrDefault = function() {\n  return this.get$ValueOrDefault(2);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.setNationalNumberPattern = function(a) {\n  this.set$Value(2, a);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.hasNationalNumberPattern = function() {\n  return this.has$Value(2);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.nationalNumberPatternCount = function() {\n  return this.count$Values(2);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.clearNationalNumberPattern = function() {\n  this.clear$Field(2);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.getPossibleLength = function(a) {\n  return this.get$Value(9, a);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.getPossibleLengthOrDefault = function(a) {\n  return this.get$ValueOrDefault(9, a);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.addPossibleLength = function(a) {\n  this.add$Value(9, a);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.possibleLengthArray = function() {\n  return this.array$Values(9);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.hasPossibleLength = function() {\n  return this.has$Value(9);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.possibleLengthCount = function() {\n  return this.count$Values(9);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.clearPossibleLength = function() {\n  this.clear$Field(9);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.getPossibleLengthLocalOnly = function(a) {\n  return this.get$Value(10, a);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.getPossibleLengthLocalOnlyOrDefault = function(a) {\n  return this.get$ValueOrDefault(10, a);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.addPossibleLengthLocalOnly = function(a) {\n  this.add$Value(10, a);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.possibleLengthLocalOnlyArray = function() {\n  return this.array$Values(10);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.hasPossibleLengthLocalOnly = function() {\n  return this.has$Value(10);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.possibleLengthLocalOnlyCount = function() {\n  return this.count$Values(10);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.clearPossibleLengthLocalOnly = function() {\n  this.clear$Field(10);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.getExampleNumber = function() {\n  return this.get$Value(6);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.getExampleNumberOrDefault = function() {\n  return this.get$ValueOrDefault(6);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.setExampleNumber = function(a) {\n  this.set$Value(6, a);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.hasExampleNumber = function() {\n  return this.has$Value(6);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.exampleNumberCount = function() {\n  return this.count$Values(6);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.clearExampleNumber = function() {\n  this.clear$Field(6);\n};\ni18n.phonenumbers.PhoneMetadata = function() {\n  goog.proto2.Message.call(this);\n};\ngoog.inherits(i18n.phonenumbers.PhoneMetadata, goog.proto2.Message);\ni18n.phonenumbers.PhoneMetadata.descriptor_ = null;\ni18n.phonenumbers.PhoneMetadata.prototype.getGeneralDesc = function() {\n  return this.get$Value(1);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getGeneralDescOrDefault = function() {\n  return this.get$ValueOrDefault(1);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setGeneralDesc = function(a) {\n  this.set$Value(1, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasGeneralDesc = function() {\n  return this.has$Value(1);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.generalDescCount = function() {\n  return this.count$Values(1);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearGeneralDesc = function() {\n  this.clear$Field(1);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getFixedLine = function() {\n  return this.get$Value(2);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getFixedLineOrDefault = function() {\n  return this.get$ValueOrDefault(2);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setFixedLine = function(a) {\n  this.set$Value(2, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasFixedLine = function() {\n  return this.has$Value(2);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.fixedLineCount = function() {\n  return this.count$Values(2);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearFixedLine = function() {\n  this.clear$Field(2);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getMobile = function() {\n  return this.get$Value(3);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getMobileOrDefault = function() {\n  return this.get$ValueOrDefault(3);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setMobile = function(a) {\n  this.set$Value(3, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasMobile = function() {\n  return this.has$Value(3);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.mobileCount = function() {\n  return this.count$Values(3);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearMobile = function() {\n  this.clear$Field(3);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getTollFree = function() {\n  return this.get$Value(4);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getTollFreeOrDefault = function() {\n  return this.get$ValueOrDefault(4);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setTollFree = function(a) {\n  this.set$Value(4, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasTollFree = function() {\n  return this.has$Value(4);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.tollFreeCount = function() {\n  return this.count$Values(4);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearTollFree = function() {\n  this.clear$Field(4);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getPremiumRate = function() {\n  return this.get$Value(5);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getPremiumRateOrDefault = function() {\n  return this.get$ValueOrDefault(5);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setPremiumRate = function(a) {\n  this.set$Value(5, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasPremiumRate = function() {\n  return this.has$Value(5);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.premiumRateCount = function() {\n  return this.count$Values(5);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearPremiumRate = function() {\n  this.clear$Field(5);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getSharedCost = function() {\n  return this.get$Value(6);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getSharedCostOrDefault = function() {\n  return this.get$ValueOrDefault(6);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setSharedCost = function(a) {\n  this.set$Value(6, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasSharedCost = function() {\n  return this.has$Value(6);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.sharedCostCount = function() {\n  return this.count$Values(6);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearSharedCost = function() {\n  this.clear$Field(6);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getPersonalNumber = function() {\n  return this.get$Value(7);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getPersonalNumberOrDefault = function() {\n  return this.get$ValueOrDefault(7);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setPersonalNumber = function(a) {\n  this.set$Value(7, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasPersonalNumber = function() {\n  return this.has$Value(7);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.personalNumberCount = function() {\n  return this.count$Values(7);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearPersonalNumber = function() {\n  this.clear$Field(7);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getVoip = function() {\n  return this.get$Value(8);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getVoipOrDefault = function() {\n  return this.get$ValueOrDefault(8);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setVoip = function(a) {\n  this.set$Value(8, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasVoip = function() {\n  return this.has$Value(8);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.voipCount = function() {\n  return this.count$Values(8);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearVoip = function() {\n  this.clear$Field(8);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getPager = function() {\n  return this.get$Value(21);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getPagerOrDefault = function() {\n  return this.get$ValueOrDefault(21);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setPager = function(a) {\n  this.set$Value(21, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasPager = function() {\n  return this.has$Value(21);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.pagerCount = function() {\n  return this.count$Values(21);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearPager = function() {\n  this.clear$Field(21);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getUan = function() {\n  return this.get$Value(25);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getUanOrDefault = function() {\n  return this.get$ValueOrDefault(25);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setUan = function(a) {\n  this.set$Value(25, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasUan = function() {\n  return this.has$Value(25);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.uanCount = function() {\n  return this.count$Values(25);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearUan = function() {\n  this.clear$Field(25);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getEmergency = function() {\n  return this.get$Value(27);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getEmergencyOrDefault = function() {\n  return this.get$ValueOrDefault(27);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setEmergency = function(a) {\n  this.set$Value(27, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasEmergency = function() {\n  return this.has$Value(27);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.emergencyCount = function() {\n  return this.count$Values(27);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearEmergency = function() {\n  this.clear$Field(27);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getVoicemail = function() {\n  return this.get$Value(28);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getVoicemailOrDefault = function() {\n  return this.get$ValueOrDefault(28);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setVoicemail = function(a) {\n  this.set$Value(28, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasVoicemail = function() {\n  return this.has$Value(28);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.voicemailCount = function() {\n  return this.count$Values(28);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearVoicemail = function() {\n  this.clear$Field(28);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getShortCode = function() {\n  return this.get$Value(29);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getShortCodeOrDefault = function() {\n  return this.get$ValueOrDefault(29);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setShortCode = function(a) {\n  this.set$Value(29, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasShortCode = function() {\n  return this.has$Value(29);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.shortCodeCount = function() {\n  return this.count$Values(29);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearShortCode = function() {\n  this.clear$Field(29);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getStandardRate = function() {\n  return this.get$Value(30);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getStandardRateOrDefault = function() {\n  return this.get$ValueOrDefault(30);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setStandardRate = function(a) {\n  this.set$Value(30, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasStandardRate = function() {\n  return this.has$Value(30);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.standardRateCount = function() {\n  return this.count$Values(30);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearStandardRate = function() {\n  this.clear$Field(30);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getCarrierSpecific = function() {\n  return this.get$Value(31);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getCarrierSpecificOrDefault = function() {\n  return this.get$ValueOrDefault(31);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setCarrierSpecific = function(a) {\n  this.set$Value(31, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasCarrierSpecific = function() {\n  return this.has$Value(31);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.carrierSpecificCount = function() {\n  return this.count$Values(31);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearCarrierSpecific = function() {\n  this.clear$Field(31);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getSmsServices = function() {\n  return this.get$Value(33);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getSmsServicesOrDefault = function() {\n  return this.get$ValueOrDefault(33);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setSmsServices = function(a) {\n  this.set$Value(33, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasSmsServices = function() {\n  return this.has$Value(33);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.smsServicesCount = function() {\n  return this.count$Values(33);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearSmsServices = function() {\n  this.clear$Field(33);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getNoInternationalDialling = function() {\n  return this.get$Value(24);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getNoInternationalDiallingOrDefault = function() {\n  return this.get$ValueOrDefault(24);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setNoInternationalDialling = function(a) {\n  this.set$Value(24, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasNoInternationalDialling = function() {\n  return this.has$Value(24);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.noInternationalDiallingCount = function() {\n  return this.count$Values(24);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearNoInternationalDialling = function() {\n  this.clear$Field(24);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getId = function() {\n  return this.get$Value(9);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getIdOrDefault = function() {\n  return this.get$ValueOrDefault(9);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setId = function(a) {\n  this.set$Value(9, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasId = function() {\n  return this.has$Value(9);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.idCount = function() {\n  return this.count$Values(9);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearId = function() {\n  this.clear$Field(9);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getCountryCode = function() {\n  return this.get$Value(10);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getCountryCodeOrDefault = function() {\n  return this.get$ValueOrDefault(10);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setCountryCode = function(a) {\n  this.set$Value(10, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasCountryCode = function() {\n  return this.has$Value(10);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.countryCodeCount = function() {\n  return this.count$Values(10);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearCountryCode = function() {\n  this.clear$Field(10);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getInternationalPrefix = function() {\n  return this.get$Value(11);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getInternationalPrefixOrDefault = function() {\n  return this.get$ValueOrDefault(11);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setInternationalPrefix = function(a) {\n  this.set$Value(11, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasInternationalPrefix = function() {\n  return this.has$Value(11);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.internationalPrefixCount = function() {\n  return this.count$Values(11);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearInternationalPrefix = function() {\n  this.clear$Field(11);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getPreferredInternationalPrefix = function() {\n  return this.get$Value(17);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getPreferredInternationalPrefixOrDefault = function() {\n  return this.get$ValueOrDefault(17);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setPreferredInternationalPrefix = function(a) {\n  this.set$Value(17, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasPreferredInternationalPrefix = function() {\n  return this.has$Value(17);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.preferredInternationalPrefixCount = function() {\n  return this.count$Values(17);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearPreferredInternationalPrefix = function() {\n  this.clear$Field(17);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getNationalPrefix = function() {\n  return this.get$Value(12);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getNationalPrefixOrDefault = function() {\n  return this.get$ValueOrDefault(12);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setNationalPrefix = function(a) {\n  this.set$Value(12, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasNationalPrefix = function() {\n  return this.has$Value(12);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.nationalPrefixCount = function() {\n  return this.count$Values(12);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearNationalPrefix = function() {\n  this.clear$Field(12);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getPreferredExtnPrefix = function() {\n  return this.get$Value(13);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getPreferredExtnPrefixOrDefault = function() {\n  return this.get$ValueOrDefault(13);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setPreferredExtnPrefix = function(a) {\n  this.set$Value(13, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasPreferredExtnPrefix = function() {\n  return this.has$Value(13);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.preferredExtnPrefixCount = function() {\n  return this.count$Values(13);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearPreferredExtnPrefix = function() {\n  this.clear$Field(13);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getNationalPrefixForParsing = function() {\n  return this.get$Value(15);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getNationalPrefixForParsingOrDefault = function() {\n  return this.get$ValueOrDefault(15);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setNationalPrefixForParsing = function(a) {\n  this.set$Value(15, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasNationalPrefixForParsing = function() {\n  return this.has$Value(15);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.nationalPrefixForParsingCount = function() {\n  return this.count$Values(15);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearNationalPrefixForParsing = function() {\n  this.clear$Field(15);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getNationalPrefixTransformRule = function() {\n  return this.get$Value(16);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getNationalPrefixTransformRuleOrDefault = function() {\n  return this.get$ValueOrDefault(16);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setNationalPrefixTransformRule = function(a) {\n  this.set$Value(16, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasNationalPrefixTransformRule = function() {\n  return this.has$Value(16);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.nationalPrefixTransformRuleCount = function() {\n  return this.count$Values(16);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearNationalPrefixTransformRule = function() {\n  this.clear$Field(16);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getSameMobileAndFixedLinePattern = function() {\n  return this.get$Value(18);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getSameMobileAndFixedLinePatternOrDefault = function() {\n  return this.get$ValueOrDefault(18);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setSameMobileAndFixedLinePattern = function(a) {\n  this.set$Value(18, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasSameMobileAndFixedLinePattern = function() {\n  return this.has$Value(18);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.sameMobileAndFixedLinePatternCount = function() {\n  return this.count$Values(18);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearSameMobileAndFixedLinePattern = function() {\n  this.clear$Field(18);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getNumberFormat = function(a) {\n  return this.get$Value(19, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getNumberFormatOrDefault = function(a) {\n  return this.get$ValueOrDefault(19, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.addNumberFormat = function(a) {\n  this.add$Value(19, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.numberFormatArray = function() {\n  return this.array$Values(19);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasNumberFormat = function() {\n  return this.has$Value(19);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.numberFormatCount = function() {\n  return this.count$Values(19);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearNumberFormat = function() {\n  this.clear$Field(19);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getIntlNumberFormat = function(a) {\n  return this.get$Value(20, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getIntlNumberFormatOrDefault = function(a) {\n  return this.get$ValueOrDefault(20, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.addIntlNumberFormat = function(a) {\n  this.add$Value(20, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.intlNumberFormatArray = function() {\n  return this.array$Values(20);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasIntlNumberFormat = function() {\n  return this.has$Value(20);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.intlNumberFormatCount = function() {\n  return this.count$Values(20);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearIntlNumberFormat = function() {\n  this.clear$Field(20);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getMainCountryForCode = function() {\n  return this.get$Value(22);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getMainCountryForCodeOrDefault = function() {\n  return this.get$ValueOrDefault(22);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setMainCountryForCode = function(a) {\n  this.set$Value(22, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasMainCountryForCode = function() {\n  return this.has$Value(22);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.mainCountryForCodeCount = function() {\n  return this.count$Values(22);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearMainCountryForCode = function() {\n  this.clear$Field(22);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getLeadingDigits = function() {\n  return this.get$Value(23);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getLeadingDigitsOrDefault = function() {\n  return this.get$ValueOrDefault(23);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setLeadingDigits = function(a) {\n  this.set$Value(23, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasLeadingDigits = function() {\n  return this.has$Value(23);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.leadingDigitsCount = function() {\n  return this.count$Values(23);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearLeadingDigits = function() {\n  this.clear$Field(23);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getLeadingZeroPossible = function() {\n  return this.get$Value(26);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getLeadingZeroPossibleOrDefault = function() {\n  return this.get$ValueOrDefault(26);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setLeadingZeroPossible = function(a) {\n  this.set$Value(26, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasLeadingZeroPossible = function() {\n  return this.has$Value(26);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.leadingZeroPossibleCount = function() {\n  return this.count$Values(26);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearLeadingZeroPossible = function() {\n  this.clear$Field(26);\n};\ni18n.phonenumbers.PhoneMetadataCollection = function() {\n  goog.proto2.Message.call(this);\n};\ngoog.inherits(i18n.phonenumbers.PhoneMetadataCollection, goog.proto2.Message);\ni18n.phonenumbers.PhoneMetadataCollection.descriptor_ = null;\ni18n.phonenumbers.PhoneMetadataCollection.prototype.getMetadata = function(a) {\n  return this.get$Value(1, a);\n};\ni18n.phonenumbers.PhoneMetadataCollection.prototype.getMetadataOrDefault = function(a) {\n  return this.get$ValueOrDefault(1, a);\n};\ni18n.phonenumbers.PhoneMetadataCollection.prototype.addMetadata = function(a) {\n  this.add$Value(1, a);\n};\ni18n.phonenumbers.PhoneMetadataCollection.prototype.metadataArray = function() {\n  return this.array$Values(1);\n};\ni18n.phonenumbers.PhoneMetadataCollection.prototype.hasMetadata = function() {\n  return this.has$Value(1);\n};\ni18n.phonenumbers.PhoneMetadataCollection.prototype.metadataCount = function() {\n  return this.count$Values(1);\n};\ni18n.phonenumbers.PhoneMetadataCollection.prototype.clearMetadata = function() {\n  this.clear$Field(1);\n};\ni18n.phonenumbers.NumberFormat.prototype.getDescriptor = function() {\n  var a = i18n.phonenumbers.NumberFormat.descriptor_;\n  a || (i18n.phonenumbers.NumberFormat.descriptor_ = a = goog.proto2.Message.createDescriptor(i18n.phonenumbers.NumberFormat, {0:{name:\"NumberFormat\", fullName:\"i18n.phonenumbers.NumberFormat\"}, 1:{name:\"pattern\", required:!0, fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 2:{name:\"format\", required:!0, fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 3:{name:\"leading_digits_pattern\", repeated:!0, fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 4:{name:\"national_prefix_formatting_rule\",\n  fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 6:{name:\"national_prefix_optional_when_formatting\", fieldType:goog.proto2.Message.FieldType.BOOL, defaultValue:!1, type:Boolean}, 5:{name:\"domestic_carrier_code_formatting_rule\", fieldType:goog.proto2.Message.FieldType.STRING, type:String}}));\n  return a;\n};\ni18n.phonenumbers.NumberFormat.getDescriptor = i18n.phonenumbers.NumberFormat.prototype.getDescriptor;\ni18n.phonenumbers.PhoneNumberDesc.prototype.getDescriptor = function() {\n  var a = i18n.phonenumbers.PhoneNumberDesc.descriptor_;\n  a || (i18n.phonenumbers.PhoneNumberDesc.descriptor_ = a = goog.proto2.Message.createDescriptor(i18n.phonenumbers.PhoneNumberDesc, {0:{name:\"PhoneNumberDesc\", fullName:\"i18n.phonenumbers.PhoneNumberDesc\"}, 2:{name:\"national_number_pattern\", fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 9:{name:\"possible_length\", repeated:!0, fieldType:goog.proto2.Message.FieldType.INT32, type:Number}, 10:{name:\"possible_length_local_only\", repeated:!0, fieldType:goog.proto2.Message.FieldType.INT32,\n  type:Number}, 6:{name:\"example_number\", fieldType:goog.proto2.Message.FieldType.STRING, type:String}}));\n  return a;\n};\ni18n.phonenumbers.PhoneNumberDesc.getDescriptor = i18n.phonenumbers.PhoneNumberDesc.prototype.getDescriptor;\ni18n.phonenumbers.PhoneMetadata.prototype.getDescriptor = function() {\n  var a = i18n.phonenumbers.PhoneMetadata.descriptor_;\n  a || (i18n.phonenumbers.PhoneMetadata.descriptor_ = a = goog.proto2.Message.createDescriptor(i18n.phonenumbers.PhoneMetadata, {0:{name:\"PhoneMetadata\", fullName:\"i18n.phonenumbers.PhoneMetadata\"}, 1:{name:\"general_desc\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 2:{name:\"fixed_line\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 3:{name:\"mobile\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc},\n  4:{name:\"toll_free\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 5:{name:\"premium_rate\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 6:{name:\"shared_cost\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 7:{name:\"personal_number\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 8:{name:\"voip\", fieldType:goog.proto2.Message.FieldType.MESSAGE,\n  type:i18n.phonenumbers.PhoneNumberDesc}, 21:{name:\"pager\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 25:{name:\"uan\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 27:{name:\"emergency\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 28:{name:\"voicemail\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 29:{name:\"short_code\",\n  fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 30:{name:\"standard_rate\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 31:{name:\"carrier_specific\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 33:{name:\"sms_services\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 24:{name:\"no_international_dialling\", fieldType:goog.proto2.Message.FieldType.MESSAGE,\n  type:i18n.phonenumbers.PhoneNumberDesc}, 9:{name:\"id\", required:!0, fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 10:{name:\"country_code\", fieldType:goog.proto2.Message.FieldType.INT32, type:Number}, 11:{name:\"international_prefix\", fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 17:{name:\"preferred_international_prefix\", fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 12:{name:\"national_prefix\", fieldType:goog.proto2.Message.FieldType.STRING, type:String},\n  13:{name:\"preferred_extn_prefix\", fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 15:{name:\"national_prefix_for_parsing\", fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 16:{name:\"national_prefix_transform_rule\", fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 18:{name:\"same_mobile_and_fixed_line_pattern\", fieldType:goog.proto2.Message.FieldType.BOOL, defaultValue:!1, type:Boolean}, 19:{name:\"number_format\", repeated:!0, fieldType:goog.proto2.Message.FieldType.MESSAGE,\n  type:i18n.phonenumbers.NumberFormat}, 20:{name:\"intl_number_format\", repeated:!0, fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.NumberFormat}, 22:{name:\"main_country_for_code\", fieldType:goog.proto2.Message.FieldType.BOOL, defaultValue:!1, type:Boolean}, 23:{name:\"leading_digits\", fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 26:{name:\"leading_zero_possible\", fieldType:goog.proto2.Message.FieldType.BOOL, defaultValue:!1, type:Boolean}}));\n  return a;\n};\ni18n.phonenumbers.PhoneMetadata.getDescriptor = i18n.phonenumbers.PhoneMetadata.prototype.getDescriptor;\ni18n.phonenumbers.PhoneMetadataCollection.prototype.getDescriptor = function() {\n  var a = i18n.phonenumbers.PhoneMetadataCollection.descriptor_;\n  a || (i18n.phonenumbers.PhoneMetadataCollection.descriptor_ = a = goog.proto2.Message.createDescriptor(i18n.phonenumbers.PhoneMetadataCollection, {0:{name:\"PhoneMetadataCollection\", fullName:\"i18n.phonenumbers.PhoneMetadataCollection\"}, 1:{name:\"metadata\", repeated:!0, fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneMetadata}}));\n  return a;\n};\ni18n.phonenumbers.PhoneMetadataCollection.getDescriptor = i18n.phonenumbers.PhoneMetadataCollection.prototype.getDescriptor;\ni18n.phonenumbers.PhoneNumber = function() {\n  goog.proto2.Message.call(this);\n};\ngoog.inherits(i18n.phonenumbers.PhoneNumber, goog.proto2.Message);\ni18n.phonenumbers.PhoneNumber.descriptor_ = null;\ni18n.phonenumbers.PhoneNumber.prototype.getCountryCode = function() {\n  return this.get$Value(1);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getCountryCodeOrDefault = function() {\n  return this.get$ValueOrDefault(1);\n};\ni18n.phonenumbers.PhoneNumber.prototype.setCountryCode = function(a) {\n  this.set$Value(1, a);\n};\ni18n.phonenumbers.PhoneNumber.prototype.hasCountryCode = function() {\n  return this.has$Value(1);\n};\ni18n.phonenumbers.PhoneNumber.prototype.countryCodeCount = function() {\n  return this.count$Values(1);\n};\ni18n.phonenumbers.PhoneNumber.prototype.clearCountryCode = function() {\n  this.clear$Field(1);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getNationalNumber = function() {\n  return this.get$Value(2);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getNationalNumberOrDefault = function() {\n  return this.get$ValueOrDefault(2);\n};\ni18n.phonenumbers.PhoneNumber.prototype.setNationalNumber = function(a) {\n  this.set$Value(2, a);\n};\ni18n.phonenumbers.PhoneNumber.prototype.hasNationalNumber = function() {\n  return this.has$Value(2);\n};\ni18n.phonenumbers.PhoneNumber.prototype.nationalNumberCount = function() {\n  return this.count$Values(2);\n};\ni18n.phonenumbers.PhoneNumber.prototype.clearNationalNumber = function() {\n  this.clear$Field(2);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getExtension = function() {\n  return this.get$Value(3);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getExtensionOrDefault = function() {\n  return this.get$ValueOrDefault(3);\n};\ni18n.phonenumbers.PhoneNumber.prototype.setExtension = function(a) {\n  this.set$Value(3, a);\n};\ni18n.phonenumbers.PhoneNumber.prototype.hasExtension = function() {\n  return this.has$Value(3);\n};\ni18n.phonenumbers.PhoneNumber.prototype.extensionCount = function() {\n  return this.count$Values(3);\n};\ni18n.phonenumbers.PhoneNumber.prototype.clearExtension = function() {\n  this.clear$Field(3);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getItalianLeadingZero = function() {\n  return this.get$Value(4);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getItalianLeadingZeroOrDefault = function() {\n  return this.get$ValueOrDefault(4);\n};\ni18n.phonenumbers.PhoneNumber.prototype.setItalianLeadingZero = function(a) {\n  this.set$Value(4, a);\n};\ni18n.phonenumbers.PhoneNumber.prototype.hasItalianLeadingZero = function() {\n  return this.has$Value(4);\n};\ni18n.phonenumbers.PhoneNumber.prototype.italianLeadingZeroCount = function() {\n  return this.count$Values(4);\n};\ni18n.phonenumbers.PhoneNumber.prototype.clearItalianLeadingZero = function() {\n  this.clear$Field(4);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getNumberOfLeadingZeros = function() {\n  return this.get$Value(8);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getNumberOfLeadingZerosOrDefault = function() {\n  return this.get$ValueOrDefault(8);\n};\ni18n.phonenumbers.PhoneNumber.prototype.setNumberOfLeadingZeros = function(a) {\n  this.set$Value(8, a);\n};\ni18n.phonenumbers.PhoneNumber.prototype.hasNumberOfLeadingZeros = function() {\n  return this.has$Value(8);\n};\ni18n.phonenumbers.PhoneNumber.prototype.numberOfLeadingZerosCount = function() {\n  return this.count$Values(8);\n};\ni18n.phonenumbers.PhoneNumber.prototype.clearNumberOfLeadingZeros = function() {\n  this.clear$Field(8);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getRawInput = function() {\n  return this.get$Value(5);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getRawInputOrDefault = function() {\n  return this.get$ValueOrDefault(5);\n};\ni18n.phonenumbers.PhoneNumber.prototype.setRawInput = function(a) {\n  this.set$Value(5, a);\n};\ni18n.phonenumbers.PhoneNumber.prototype.hasRawInput = function() {\n  return this.has$Value(5);\n};\ni18n.phonenumbers.PhoneNumber.prototype.rawInputCount = function() {\n  return this.count$Values(5);\n};\ni18n.phonenumbers.PhoneNumber.prototype.clearRawInput = function() {\n  this.clear$Field(5);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getCountryCodeSource = function() {\n  return this.get$Value(6);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getCountryCodeSourceOrDefault = function() {\n  return this.get$ValueOrDefault(6);\n};\ni18n.phonenumbers.PhoneNumber.prototype.setCountryCodeSource = function(a) {\n  this.set$Value(6, a);\n};\ni18n.phonenumbers.PhoneNumber.prototype.hasCountryCodeSource = function() {\n  return this.has$Value(6);\n};\ni18n.phonenumbers.PhoneNumber.prototype.countryCodeSourceCount = function() {\n  return this.count$Values(6);\n};\ni18n.phonenumbers.PhoneNumber.prototype.clearCountryCodeSource = function() {\n  this.clear$Field(6);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getPreferredDomesticCarrierCode = function() {\n  return this.get$Value(7);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getPreferredDomesticCarrierCodeOrDefault = function() {\n  return this.get$ValueOrDefault(7);\n};\ni18n.phonenumbers.PhoneNumber.prototype.setPreferredDomesticCarrierCode = function(a) {\n  this.set$Value(7, a);\n};\ni18n.phonenumbers.PhoneNumber.prototype.hasPreferredDomesticCarrierCode = function() {\n  return this.has$Value(7);\n};\ni18n.phonenumbers.PhoneNumber.prototype.preferredDomesticCarrierCodeCount = function() {\n  return this.count$Values(7);\n};\ni18n.phonenumbers.PhoneNumber.prototype.clearPreferredDomesticCarrierCode = function() {\n  this.clear$Field(7);\n};\ni18n.phonenumbers.PhoneNumber.CountryCodeSource = {UNSPECIFIED:0, FROM_NUMBER_WITH_PLUS_SIGN:1, FROM_NUMBER_WITH_IDD:5, FROM_NUMBER_WITHOUT_PLUS_SIGN:10, FROM_DEFAULT_COUNTRY:20};\ni18n.phonenumbers.PhoneNumber.prototype.getDescriptor = function() {\n  var a = i18n.phonenumbers.PhoneNumber.descriptor_;\n  a || (i18n.phonenumbers.PhoneNumber.descriptor_ = a = goog.proto2.Message.createDescriptor(i18n.phonenumbers.PhoneNumber, {0:{name:\"PhoneNumber\", fullName:\"i18n.phonenumbers.PhoneNumber\"}, 1:{name:\"country_code\", required:!0, fieldType:goog.proto2.Message.FieldType.INT32, type:Number}, 2:{name:\"national_number\", required:!0, fieldType:goog.proto2.Message.FieldType.UINT64, type:Number}, 3:{name:\"extension\", fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 4:{name:\"italian_leading_zero\",\n  fieldType:goog.proto2.Message.FieldType.BOOL, type:Boolean}, 8:{name:\"number_of_leading_zeros\", fieldType:goog.proto2.Message.FieldType.INT32, defaultValue:1, type:Number}, 5:{name:\"raw_input\", fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 6:{name:\"country_code_source\", fieldType:goog.proto2.Message.FieldType.ENUM, defaultValue:i18n.phonenumbers.PhoneNumber.CountryCodeSource.UNSPECIFIED, type:i18n.phonenumbers.PhoneNumber.CountryCodeSource}, 7:{name:\"preferred_domestic_carrier_code\",\n  fieldType:goog.proto2.Message.FieldType.STRING, type:String}}));\n  return a;\n};\ni18n.phonenumbers.PhoneNumber.ctor = i18n.phonenumbers.PhoneNumber;\ni18n.phonenumbers.PhoneNumber.ctor.getDescriptor = i18n.phonenumbers.PhoneNumber.prototype.getDescriptor;\n/*\n\n Copyright (C) 2010 The Libphonenumber Authors\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n*/\ni18n.phonenumbers.metadata = {};\ni18n.phonenumbers.metadata.countryCodeToRegionCodeMap = {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\".split(\" \"), 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\",\n\"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\"],\n241:[\"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\"],\n358:[\"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\"],\n599:[\"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\"], 800:[\"001\"], 808:[\"001\"], 850:[\"KP\"], 852:[\"HK\"], 853:[\"MO\"], 855:[\"KH\"], 856:[\"LA\"], 870:[\"001\"], 878:[\"001\"], 880:[\"BD\"], 881:[\"001\"], 882:[\"001\"], 883:[\"001\"], 886:[\"TW\"], 888:[\"001\"], 960:[\"MV\"], 961:[\"LB\"], 962:[\"JO\"], 963:[\"SY\"],\n964:[\"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\"], 979:[\"001\"], 992:[\"TJ\"], 993:[\"TM\"], 994:[\"AZ\"], 995:[\"GE\"], 996:[\"KG\"], 998:[\"UZ\"]};\ni18n.phonenumbers.metadata.countryToMetadata = {AC:[, [, , \"(?:[01589]\\\\d|[46])\\\\d{4}\", , , , , , , [5, 6]], [, , \"6[2-467]\\\\d{3}\", , , , \"62889\", , , [5]], [, , \"4\\\\d{4}\", , , , \"40123\", , , [5]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"AC\", 247, \"00\", , , , , , , , , , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"(?:0[1-9]|[1589]\\\\d)\\\\d{4}\", , , , \"542011\", , , [6]], , , [, , , , , , , ,\n, [-1]]], AD:[, [, , \"(?:1|6\\\\d)\\\\d{7}|[136-9]\\\\d{5}\", , , , , , , [6, 8, 9]], [, , \"[78]\\\\d{5}\", , , , \"712345\", , , [6]], [, , \"690\\\\d{6}|[36]\\\\d{5}\", , , , \"312345\", , , [6, 9]], [, , \"180[02]\\\\d{4}\", , , , \"18001234\", , , [8]], [, , \"[19]\\\\d{5}\", , , , \"912345\", , , [6]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"AD\", 376, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{3})\", \"$1 $2\", [\"[136-9]\"]], [, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"1\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\n\"$1 $2 $3\", [\"6\"]]], , [, , , , , , , , , [-1]], , , [, , \"1800\\\\d{4}\", , , , , , , [8]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], AE:[, [, , \"(?:[4-7]\\\\d|9[0-689])\\\\d{7}|800\\\\d{2,9}|[2-4679]\\\\d{7}\", , , , , , , [5, 6, 7, 8, 9, 10, 11, 12]], [, , \"[2-4679][2-8]\\\\d{6}\", , , , \"22345678\", , , [8], [7]], [, , \"5[024-68]\\\\d{7}\", , , , \"501234567\", , , [9]], [, , \"400\\\\d{6}|800\\\\d{2,9}\", , , , \"800123456\"], [, , \"900[02]\\\\d{5}\", , , , \"900234567\", , , [9]], [, , \"700[05]\\\\d{5}\", , , ,\n\"700012345\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"AE\", 971, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"600[25]\\\\d{5}\", , , , \"600212345\", , , [9]], , , [, , , , , , , , , [-1]]], AF:[, [, , \"[2-7]\\\\d{8}\",\n, , , , , , [9], [7]], [, , \"(?:[25][0-8]|[34][0-4]|6[0-5])[2-9]\\\\d{6}\", , , , \"234567890\", , , , [7]], [, , \"7(?:[014-9]\\\\d|2[89]|3[01])\\\\d{6}\", , , , \"701234567\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"AF\", 93, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[2-9]\"]], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[2-7]\"], \"0$1\"]], [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[2-7]\"], \"0$1\"]],\n[, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], AG:[, [, , \"(?:268|[58]\\\\d\\\\d|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"268(?:4(?:6[0-38]|84)|56[0-2])\\\\d{4}\", , , , \"2684601234\", , , , [7]], [, , \"268(?:464|7(?:1[3-9]|2\\\\d|3[246]|64|[78][0-689]))\\\\d{4}\", , , , \"2684641234\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\",\n, , , \"5002345678\"], [, , \"26848[01]\\\\d{4}\", , , , \"2684801234\", , , , [7]], \"AG\", 1, \"011\", \"1\", , , \"1|([457]\\\\d{6})$\", \"268$1\", , , , , [, , \"26840[69]\\\\d{4}\", , , , \"2684061234\", , , , [7]], , \"268\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], AI:[, [, , \"(?:264|[58]\\\\d\\\\d|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"2644(?:6[12]|9[78])\\\\d{4}\", , , , \"2644612345\", , , , [7]], [, , \"264(?:235|476|5(?:3[6-9]|8[1-4])|7(?:29|72))\\\\d{4}\", , , , \"2642351234\", ,\n, , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"AI\", 1, \"011\", \"1\", , , \"1|([2457]\\\\d{6})$\", \"264$1\", , , , , [, , , , , , , , , [-1]], , \"264\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], AL:[, [, , \"(?:700\\\\d\\\\d|900)\\\\d{3}|8\\\\d{5,7}|(?:[2-5]|6\\\\d)\\\\d{7}\", , , , , ,\n, [6, 7, 8, 9], [5]], [, , \"(?:[2358](?:[16-9]\\\\d[2-9]|[2-5][2-9]\\\\d)|4(?:[2-57-9][2-9]|6\\\\d)\\\\d)\\\\d{4}\", , , , \"22345678\", , , [8], [5, 6, 7]], [, , \"6(?:[689][2-9]|7[2-6])\\\\d{6}\", , , , \"662123456\", , , [9]], [, , \"800\\\\d{4}\", , , , \"8001234\", , , [7]], [, , \"900[1-9]\\\\d\\\\d\", , , , \"900123\", , , [6]], [, , \"808[1-9]\\\\d\\\\d\", , , , \"808123\", , , [6]], [, , \"700[2-9]\\\\d{4}\", , , , \"70021234\", , , [8]], [, , , , , , , , , [-1]], \"AL\", 355, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{3,4})\", \"$1 $2\",\n[\"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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], AM:[, [, , \"(?:[1-489]\\\\d|55|60|77)\\\\d{6}\", , , , , , , [8], [5, 6]], [, , \"(?:(?:1[0-25]|47)\\\\d|2(?:2[2-46]|3[1-8]|4[2-69]|5[2-7]|6[1-9]|8[1-7])|3[12]2)\\\\d{5}\",\n, , , \"10123456\", , , , [5, 6]], [, , \"(?:33|4[1349]|55|77|88|9[13-9])\\\\d{6}\", , , , \"77123456\"], [, , \"800\\\\d{5}\", , , , \"80012345\"], [, , \"90[016]\\\\d{5}\", , , , \"90012345\"], [, , \"80[1-4]\\\\d{5}\", , , , \"80112345\"], [, , , , , , , , , [-1]], [, , \"60(?:2[78]|3[5-9]|4[02-9]|5[0-46-9]|[6-8]\\\\d|90)\\\\d{4}\", , , , \"60271234\"], \"AM\", 374, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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})\",\n\"$1 $2\", [\"1|47\"], \"(0$1)\"], [, \"(\\\\d{2})(\\\\d{6})\", \"$1 $2\", [\"[3-9]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], AO:[, [, , \"[29]\\\\d{8}\", , , , , , , [9]], [, , \"2\\\\d(?:[0134][25-9]|[25-9]\\\\d)\\\\d{5}\", , , , \"222123456\"], [, , \"9[1-49]\\\\d{7}\", , , , \"923123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"AO\", 244, \"00\", , , , ,\n, , , [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[29]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], AR:[, [, , \"11\\\\d{8}|(?:[2368]|9\\\\d)\\\\d{9}\", , , , , , , [10, 11], [6, 7, 8]], [, , \"(?:2(?:646[0-46-9]|9(?:45[02-69]|54[2-8]))|3(?:4(?:3(?:5[0-7]|6[1-69])|5(?:4[0-4679]|[56][024-6]))|585[013-7]|7(?:(?:1[15]|81)[46]|77[2-8])|8(?:(?:21|4[16]|9[12])[46]|35[124-6]|5(?:5[0-46-9]|6[0-246-9])|6(?:5[2-8]|9[46])|86[0-68])))\\\\d{5}|(?:2(?:284|657|9(?:20|66))|3(?:4(?:8[27]|92)|755|878))[2-7]\\\\d{5}|(?:2(?:2(?:2[59]|44|52)|3(?:26|4[24])|473|9(?:[07]2|2[26]|34|46))|3327)[45]\\\\d{5}|(?:2(?:(?:26|62)2|3(?:02|2[03])|477|9(?:42|83))|3(?:4(?:[47]6|62|89)|5(?:41|64)|873))[2-6]\\\\d{5}|(?:(?:11[2-7]|670)\\\\d|2(?:2(?:0[45]|1[2-6]|3[3-6])|3(?:[06]4|7[45])|494|6(?:04|1[2-7]|[346][45])|80[45]|9(?:[17][4-6]|44|8[45]|9[3-6]))|3(?:364|4(?:1[2-7]|2[4-6]|[38]4)|5(?:1[2-8]|3[4-6]|8[46])|6(?:2[45]|44)|7[069][45]|8(?:0[45]|1[2-6]|34|5[34]|7[24-6]|8[3-5])))\\\\d{6}|2(?:2(?:21|4[23]|6[145]|7[1-4]|8[356]|9[267])|3(?:16|3[13-8]|43|5[346-8]|9[3-5])|475|6(?:2[46]|4[78]|5[1568])|9(?:03|2[1457-9]|3[1356]|4[08]|[56][23]|82))4\\\\d{5}|(?:2(?:2(?:57|81)|3(?:24|46|92)|9(?:01|23|64))|3(?:329|4(?:42|71)|5(?:25|37|4[347]|71)|7(?:18|5[17])|888))[3-6]\\\\d{5}|(?:2(?:2(?:02|2[3467]|4[156]|5[45]|6[6-8]|91)|3(?:1[47]|[24]5|5[25]|96)|47[48]|625|932)|3(?:38[2578]|4(?:0[0-24-9]|3[78]|4[457]|58|6[03-9]|72|83|9[136-8])|5(?:2[124]|[368][23]|4[2689]|7[2-6])|7(?:16|2[15]|3[145]|4[13]|5[468]|7[2-5]|8[26])|8(?:2[5-7]|3[278]|4[3-5]|5[78]|6[1-378]|[78]7|94)))[4-6]\\\\d{5}\",\n, , , \"1123456789\", , , [10], [6, 7, 8]], [, , \"9(?:2(?:646[0-46-9]|9(?:45[02-69]|54[2-8]))|3(?:4(?:3(?:5[0-7]|6[1-69])|5(?:4[0-4679]|[56][024-6]))|585[013-7]|7(?:(?:1[15]|81)[46]|77[2-8])|8(?:(?:21|4[16]|9[12])[46]|35[124-6]|5(?:5[0-46-9]|6[0-246-9])|6(?:5[2-8]|9[46])|86[0-68])))\\\\d{5}|9(?:2(?:284|657|9(?:20|66))|3(?:4(?:8[27]|92)|755|878))[2-7]\\\\d{5}|9(?:2(?:2(?:2[59]|44|52)|3(?:26|4[24])|473|9(?:[07]2|2[26]|34|46))|3327)[45]\\\\d{5}|9(?:2(?:(?:26|62)2|3(?:02|2[03])|477|9(?:42|83))|3(?:4(?:[47]6|62|89)|5(?:41|64)|873))[2-6]\\\\d{5}|(?:675\\\\d|9(?:11[2-7]\\\\d|2(?:2(?:0[45]|1[2-6]|3[3-6])|3(?:[06]4|7[45])|494|6(?:04|1[2-7]|[346][45])|80[45]|9(?:[17][4-6]|44|8[45]|9[3-6]))|3(?:364|4(?:1[2-7]|2[4-6]|[38]4)|5(?:1[2-8]|3[4-6]|8[46])|6(?:2[45]|44)|7[069][45]|8(?:0[45]|1[2-6]|34|5[34]|7[24-6]|8[3-5]))))\\\\d{6}|92(?:2(?:21|4[23]|6[145]|7[1-4]|8[356]|9[267])|3(?:16|3[13-8]|43|5[346-8]|9[3-5])|475|6(?:2[46]|4[78]|5[1568])|9(?:03|2[1457-9]|3[1356]|4[08]|[56][23]|82))4\\\\d{5}|9(?:2(?:2(?:57|81)|3(?:24|46|92)|9(?:01|23|64))|3(?:329|4(?:42|71)|5(?:25|37|4[347]|71)|7(?:18|5[17])|888))[3-6]\\\\d{5}|9(?:2(?:2(?:02|2[3467]|4[156]|5[45]|6[6-8]|91)|3(?:1[47]|[24]5|5[25]|96)|47[48]|625|932)|3(?:38[2578]|4(?:0[0-24-9]|3[78]|4[457]|58|6[03-9]|72|83|9[136-8])|5(?:2[124]|[368][23]|4[2689]|7[2-6])|7(?:16|2[15]|3[145]|4[13]|5[468]|7[2-5]|8[26])|8(?:2[5-7]|3[278]|4[3-5]|5[78]|6[1-378]|[78]7|94)))[4-6]\\\\d{5}\",\n, , , \"91123456789\", , , , [6, 7, 8]], [, , \"800\\\\d{7}\", , , , \"8001234567\", , , [10]], [, , \"60[04579]\\\\d{7}\", , , , \"6001234567\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"AR\", 54, \"00\", \"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)?\",\n\"9$1\", , , [[, \"(\\\\d{3})\", \"$1\", [\"[09]|1(?:[02]|1[02-5])\"]], [, \"(\\\\d{2})(\\\\d{4})\", \"$1-$2\", [\"[2-7]|8[0-7]\"]], [, \"(\\\\d{3})(\\\\d{4})\", \"$1-$2\", [\"[2-7]|8[013-8]\"]], [, \"(\\\\d{4})(\\\\d{4})\", \"$1-$2\", [\"2[0-8]|[3-7]\"]], [, \"(\\\\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)\",\n\"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(?:[24-6]|3[2-5]))|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]\"],\n\"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\", [\"[23]\"], \"0$1\", , 1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"[68]\"], \"0$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)\",\n\"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(?:[24-6]|3[2-5]))|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]\"],\n\"0$1\"], [, \"(\\\\d)(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$2 15-$3-$4\", [\"91\"], \"0$1\"], [, \"(\\\\d)(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$2 15-$3-$4\", [\"9\"], \"0$1\"]], [[, \"(\\\\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]\",\n\"2(?:[23]02|6(?:[25]|4(?:64|[78]))|9(?:[02356]|4(?:[0268]|5(?:[24-6]|3[2-5]))|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\", [\"[23]\"],\n\"0$1\", , 1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"[68]\"], \"0$1\"], [, \"(\\\\d)(\\\\d{4})(\\\\d{2})(\\\\d{4})\", \"$1 $2 $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]\",\n\"9(?:2(?:[23]02|6(?:[25]|4(?:64|[78]))|9(?:[02356]|4(?:[0268]|5(?:[24-6]|3[2-5]))|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]\"]], [, \"(\\\\d)(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3-$4\", [\"91\"]], [, \"(\\\\d)(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3-$4\",\n[\"9\"]]], [, , , , , , , , , [-1]], , , [, , \"810\\\\d{7}\", , , , , , , [10]], [, , \"810\\\\d{7}\", , , , \"8101234567\", , , [10]], , , [, , , , , , , , , [-1]]], AS:[, [, , \"(?:[58]\\\\d\\\\d|684|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"6846(?:22|33|44|55|77|88|9[19])\\\\d{4}\", , , , \"6846221234\", , , , [7]], [, , \"684(?:2(?:5[2468]|72)|7(?:3[13]|70))\\\\d{4}\", , , , \"6847331234\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , ,\n, , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"AS\", 1, \"011\", \"1\", , , \"1|([267]\\\\d{6})$\", \"684$1\", , , , , [, , , , , , , , , [-1]], , \"684\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], AT:[, [, , \"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,\n11, 12, 13], [3]], [, , \"1(?:11\\\\d|[2-9]\\\\d{3,11})|(?:316|463|(?:51|66|73)2)\\\\d{3,10}|(?:2(?:1[467]|2[13-8]|5[2357]|6[1-46-8]|7[1-8]|8[124-7]|9[1458])|3(?:1[1-578]|3[23568]|4[5-7]|5[1378]|6[1-38]|8[3-68])|4(?:2[1-8]|35|7[1368]|8[2457])|5(?:2[1-8]|3[357]|4[147]|5[12578]|6[37])|6(?:13|2[1-47]|4[135-8]|5[468])|7(?:2[1-8]|35|4[13478]|5[68]|6[16-8]|7[1-6]|9[45]))\\\\d{4,10}\", , , , \"1234567890\", , , , [3]], [, , \"6(?:5[0-3579]|6[013-9]|[7-9]\\\\d)\\\\d{4,10}\", , , , \"664123456\", , , [7, 8, 9, 10, 11, 12, 13]],\n[, , \"800\\\\d{6,10}\", , , , \"800123456\", , , [9, 10, 11, 12, 13]], [, , \"9(?:0[01]|3[019])\\\\d{6,10}\", , , , \"900123456\", , , [9, 10, 11, 12, 13]], [, , \"8(?:10|2[018])\\\\d{6,10}|828\\\\d{5}\", , , , \"810123456\", , , [8, 9, 10, 11, 12, 13]], [, , , , , , , , , [-1]], [, , \"5(?:0[1-9]|17|[79]\\\\d)\\\\d{2,10}|7[28]0\\\\d{6,10}\", , , , \"780123456\", , , [5, 6, 7, 8, 9, 10, 11, 12, 13]], \"AT\", 43, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d)(\\\\d{3,12})\", \"$1 $2\", [\"1(?:11|[2-9])\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{2})\", \"$1 $2\",\n[\"517\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3,5})\", \"$1 $2\", [\"5[079]\"], \"0$1\"], [, \"(\\\\d{6})\", \"$1\", [\"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\"]], [[, \"(\\\\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})\",\n\"$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\"]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], AU:[, [, , \"1(?:[0-79]\\\\d{7,8}|8[0-24-9]\\\\d{7})|(?:[2-478]\\\\d\\\\d|550)\\\\d{6}|1\\\\d{4,7}\",\n, , , , , , [5, 6, 7, 8, 9, 10]], [, , \"(?:[237]\\\\d{5}|8(?:51(?:0(?:0[03-9]|[1247]\\\\d|3[2-9]|5[0-8]|6[1-9]|8[0-6])|1(?:1[69]|[23]\\\\d|4[0-4]))|(?:[6-8]\\\\d{3}|9(?:[02-9]\\\\d\\\\d|1(?:[0-57-9]\\\\d|6[0135-9])))\\\\d))\\\\d{3}\", , , , \"212345678\", , , [9], [8]], [, , \"483[0-3]\\\\d{5}|4(?:[0-3]\\\\d|4[047-9]|5[0-25-9]|6[06-9]|7[02-9]|8[0-2457-9]|9[0-27-9])\\\\d{6}\", , , , \"412345678\", , , [9]], [, , \"180(?:0\\\\d{3}|2)\\\\d{3}\", , , , \"1800123456\", , , [7, 10]], [, , \"190[0-26]\\\\d{6}\", , , , \"1900123456\", , , [10]], [,\n, \"13(?:00\\\\d{3}|45[0-4])\\\\d{3}|13\\\\d{4}\", , , , \"1300123456\", , , [6, 8, 10]], [, , , , , , , , , [-1]], [, , \"(?:14(?:5(?:1[0458]|[23][458])|71\\\\d)|550\\\\d\\\\d)\\\\d{4}\", , , , \"550123456\", , , [9]], \"AU\", 61, \"001[14-689]|14(?:1[14]|34|4[17]|[56]6|7[47]|88)0011\", \"0\", , , \"0|(183[12])\", , \"0011\", , [[, \"(\\\\d{2})(\\\\d{3,4})\", \"$1 $2\", [\"16\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3\", [\"13\"]], [, \"(\\\\d{3})(\\\\d{3})\", \"$1 $2\", [\"19\"]], [, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"180\", \"1802\"]], [, \"(\\\\d{4})(\\\\d{3,4})\",\n\"$1 $2\", [\"19\"]], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{2,4})\", \"$1 $2 $3\", [\"16\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"14|[45]\"], \"0$1\"], [, \"(\\\\d)(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"[2378]\"], \"(0$1)\", \"$CC ($1)\"], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"1(?:30|[89])\"]]], [[, \"(\\\\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|[45]\"], \"0$1\"], [, \"(\\\\d)(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"[2378]\"],\n\"(0$1)\", \"$CC ($1)\"], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"1(?:30|[89])\"]]], [, , \"16\\\\d{3,7}\", , , , \"1612345\", , , [5, 6, 7, 8, 9]], 1, , [, , \"1[38]00\\\\d{6}|1(?:345[0-4]|802)\\\\d{3}|13\\\\d{4}\", , , , , , , [6, 7, 8, 10]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], AW:[, [, , \"(?:[25-79]\\\\d\\\\d|800)\\\\d{4}\", , , , , , , [7]], [, , \"5(?:2\\\\d|8[1-9])\\\\d{4}\", , , , \"5212345\"], [, , \"(?:290|5[69]\\\\d|6(?:[03]0|22|4[0-2]|[69]\\\\d)|7(?:[34]\\\\d|7[07])|9(?:6[45]|9[4-8]))\\\\d{4}\", , , , \"5601234\"],\n[, , \"800\\\\d{4}\", , , , \"8001234\"], [, , \"900\\\\d{4}\", , , , \"9001234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"(?:28\\\\d|501)\\\\d{4}\", , , , \"5011234\"], \"AW\", 297, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[25-9]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], AX:[, [, , \"2\\\\d{4,9}|35\\\\d{4,5}|(?:60\\\\d\\\\d|800)\\\\d{4,6}|(?:[147]\\\\d|3[0-46-9]|50)\\\\d{4,8}\", , , , , , , [5, 6, 7, 8, 9, 10]], [, , \"18[1-8]\\\\d{3,6}\",\n, , , \"181234567\", , , [6, 7, 8, 9]], [, , \"(?:4[0-8]|50)\\\\d{4,8}\", , , , \"412345678\", , , [6, 7, 8, 9, 10]], [, , \"800\\\\d{4,6}\", , , , \"800123456\", , , [7, 8, 9]], [, , \"[67]00\\\\d{5,6}\", , , , \"600123456\", , , [8, 9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"AX\", 358, \"00|99(?:[01469]|5(?:[14]1|3[23]|5[59]|77|88|9[09]))\", \"0\", , , \"0\", , \"00\", , , , [, , , , , , , , , [-1]], , \"18\", [, , , , , , , , , [-1]], [, , \"(?:10|[23][09])\\\\d{4,8}|60(?:[12]\\\\d{5,6}|6\\\\d{7})|7(?:(?:1|3\\\\d)\\\\d{7}|5[03-9]\\\\d{3,7})|20[2-59]\\\\d\\\\d\",\n, , , \"10112345\"], , , [, , , , , , , , , [-1]]], AZ:[, [, , \"(?:365\\\\d{3}|900200)\\\\d{3}|(?:[12457]\\\\d|60|88)\\\\d{7}\", , , , , , , [9], [7]], [, , \"365(?:[0-46-9]\\\\d|5[0-35-9])\\\\d{4}|(?:1[28]\\\\d|2(?:[045]2|1[24]|2[2-4]|33|6[23]))\\\\d{6}\", , , , \"123123456\", , , , [7]], [, , \"36554\\\\d{4}|(?:4[04]|5[015]|60|7[07])\\\\d{7}\", , , , \"401234567\"], [, , \"88\\\\d{7}\", , , , \"881234567\"], [, , \"900200\\\\d{3}\", , , , \"900200123\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"AZ\",\n994, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3\", [\"[1-9]\"]], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"9\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[12]|365\", \"[12]|365\", \"[12]|365(?:[0-46-9]|5[0-35-9])\"], \"(0$1)\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[3-8]\"], \"0$1\"]], [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"9\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[12]|365\", \"[12]|365\",\n\"[12]|365(?:[0-46-9]|5[0-35-9])\"], \"(0$1)\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[3-8]\"], \"0$1\"]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BA:[, [, , \"6\\\\d{8}|(?:[35689]\\\\d|49|70)\\\\d{6}\", , , , , , , [8, 9], [6]], [, , \"(?:3(?:[05-79][2-9]|1[4579]|[23][24-9]|4[2-4689]|8[2457-9])|49[2-579]|5(?:0[2-49]|[13][2-9]|[268][2-4679]|4[4689]|5[2-79]|7[2-69]|9[2-4689]))\\\\d{5}\", , , , \"30212345\", , , [8], [6]], [, ,\n\"6(?:0(?:3\\\\d|40)|[1-356]\\\\d|44[0-6]|71[137])\\\\d{5}\", , , , \"61123456\"], [, , \"8[08]\\\\d{6}\", , , , \"80123456\", , , [8]], [, , \"9[0246]\\\\d{6}\", , , , \"90123456\", , , [8]], [, , \"8[12]\\\\d{6}\", , , , \"82123456\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"BA\", 387, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{3})\", \"$1-$2\", [\"[2-9]\"]], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"6[1-356]|[7-9]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2-$3\", [\"[3-5]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{3})\",\n\"$1 $2 $3 $4\", [\"6\"], \"0$1\"]], [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"6[1-356]|[7-9]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2-$3\", [\"[3-5]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{3})\", \"$1 $2 $3 $4\", [\"6\"], \"0$1\"]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"70(?:3[0146]|[56]0)\\\\d{4}\", , , , \"70341234\", , , [8]], , , [, , , , , , , , , [-1]]], BB:[, [, , \"(?:246|[58]\\\\d\\\\d|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"246(?:2(?:2[78]|7[0-4])|4(?:1[024-6]|2\\\\d|3[2-9])|5(?:20|[34]\\\\d|54|7[1-3])|6(?:2\\\\d|38)|7[35]7|9(?:1[89]|63))\\\\d{4}\",\n, , , \"2464123456\", , , , [7]], [, , \"246(?:2(?:[356]\\\\d|4[0-57-9]|8[0-79])|45\\\\d|69[5-7]|8(?:[2-5]\\\\d|83))\\\\d{4}\", , , , \"2462501234\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"(?:246976|900[2-9]\\\\d\\\\d)\\\\d{4}\", , , , \"9002123456\", , , , [7]], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , \"24631\\\\d{5}\", , , , \"2463101234\", , , , [7]], \"BB\", 1, \"011\", \"1\", , , \"1|([2-9]\\\\d{6})$\", \"246$1\", , , , , [, , ,\n, , , , , , [-1]], , \"246\", [, , , , , , , , , [-1]], [, , \"246(?:292|367|4(?:1[7-9]|3[01]|44|67)|7(?:36|53))\\\\d{4}\", , , , \"2464301234\", , , , [7]], , , [, , , , , , , , , [-1]]], BD:[, [, , \"[13469]\\\\d{9}|8[0-79]\\\\d{7,8}|[2-7]\\\\d{8}|[2-9]\\\\d{7}|[3-689]\\\\d{6}|[57-9]\\\\d{5}\", , , , , , , [6, 7, 8, 9, 10]], [, , \"(?:3(?:03[56]|224)|4(?:22[25]|653))\\\\d{3,4}|(?:4(?:31\\\\d\\\\d|[46]23)|5(?:222|32[37]))\\\\d{3}(?:\\\\d{2})?|(?:3(?:42[47]|529|823)|4(?:027|525|658)|(?:56|73)2|6257|9[35]1)\\\\d{3}|(?:3(?:02[348]|22[35]|324|422)|4(?:22[67]|32[236-9]|6(?:2[46]|5[57])|953)|5526|6(?:024|6655)|81)\\\\d{4,5}|(?:2(?:7(?:1[0-267]|2[0-289]|3[0-29]|4[01]|5[1-3]|6[013]|7[0178]|91)|8(?:0[125]|1[1-6]|2[0157-9]|3[1-69]|41|6[1-35]|7[1-5]|8[1-8]|9[0-6])|9(?:0[0-2]|1[0-4]|2[568]|3[3-6]|5[5-7]|6[01367]|7[15]|8[014-9]))|3(?:0(?:2[025-79]|3[2-4])|22[12]|32[2356]|824)|4(?:02[09]|22[348]|32[045]|523|6(?:27|54))|666(?:22|53)|8(?:4[12]|[5-7]2)|9(?:[024]2|81))\\\\d{4}|(?:2[45]\\\\d\\\\d|3(?:1(?:2[5-7]|[5-7])|425|822)|4(?:033|1\\\\d|[257]1|332|4(?:2[246]|5[25])|6(?:25|56|62)|8(?:23|54)|92[2-5])|5(?:02[03489]|22[457]|32[569]|42[46]|6(?:[18]|53)|724|826)|6(?:023|2(?:2[2-5]|5[3-5]|8)|32[3478]|42[34]|52[47]|6(?:[18]|6(?:2[34]|5[24]))|[78]2[2-5]|92[2-6])|7(?:02|21\\\\d|[3-589]1|6[12]|72[24])|8(?:0|217|3[12]|[5-7]1)|9[24]1)\\\\d{5}|(?:(?:3[2-8]|5[2-57-9]|6[03-589])1|4[4689][18])\\\\d{5}|[59]1\\\\d{5}\",\n, , , \"27111234\"], [, , \"(?:1[13-9]\\\\d|644)\\\\d{7}|(?:3[78]|44|66)[02-9]\\\\d{7}\", , , , \"1812345678\", , , [10]], [, , \"80[03]\\\\d{7}\", , , , \"8001234567\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"96(?:0[469]|1[0-47]|3[389]|6[69]|7[78])\\\\d{6}\", , , , \"9604123456\", , , [10]], \"BD\", 880, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{4,6})\", \"$1-$2\", [\"31[5-7]|[459]1\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{3,7})\", \"$1-$2\", [\"3(?:[67]|8[013-9])|4(?:6[168]|7|[89][18])|5(?:6[128]|9)|6(?:28|4[14]|5)|7[2-589]|8(?:0[014-9]|[12])|9[358]|(?:3[2-5]|4[235]|5[2-578]|6[0389]|76|8[3-7]|9[24])1|(?:44|66)[01346-9]\"],\n\"0$1\"], [, \"(\\\\d{4})(\\\\d{3,6})\", \"$1-$2\", [\"[13-9]\"], \"0$1\"], [, \"(\\\\d)(\\\\d{7,8})\", \"$1-$2\", [\"2\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BE:[, [, , \"4\\\\d{8}|[1-9]\\\\d{7}\", , , , , , , [8, 9]], [, , \"80[2-8]\\\\d{5}|(?:1[0-69]|[23][2-8]|4[23]|5\\\\d|6[013-57-9]|71|8[1-79]|9[2-4])\\\\d{6}\", , , , \"12345678\", , , [8]], [, , \"4(?:5[56]|6[0135-8]|[79]\\\\d|8[3-9])\\\\d{6}\", , , , \"470123456\", , , [9]], [, , \"800[1-9]\\\\d{4}\", ,\n, , \"80012345\", , , [8]], [, , \"(?:70(?:2[0-57]|3[0457]|44|69|7[0579])|90(?:0[0-35-8]|1[36]|2[0-3568]|3[0135689]|4[2-68]|5[1-68]|6[0-378]|7[23568]|9[34679]))\\\\d{4}\", , , , \"90012345\", , , [8]], [, , \"7879\\\\d{4}\", , , , \"78791234\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"BE\", 32, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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})\",\n\"$1 $2 $3 $4\", [\"[15-8]\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"4\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"78(?:0[57]|1[0458]|2[25]|3[5-8]|48|[56]0|7[078])\\\\d{4}\", , , , \"78102345\", , , [8]], , , [, , , , , , , , , [-1]]], BF:[, [, , \"[025-7]\\\\d{7}\", , , , , , , [8]], [, , \"2(?:0(?:49|5[23]|6[56]|9[016-9])|4(?:4[569]|5[4-6]|6[56]|7[0179])|5(?:[34]\\\\d|50|6[5-7]))\\\\d{4}\", , , , \"20491234\"], [, , \"(?:0[17]|5[124-8]|[67]\\\\d)\\\\d{6}\", , , ,\n\"70123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"BF\", 226, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[025-7]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BG:[, [, , \"[2-7]\\\\d{6,7}|[89]\\\\d{6,8}|2\\\\d{5}\", , , , , , , [6, 7, 8, 9], [4, 5]], [, , \"2\\\\d{5,7}|(?:43[1-6]|70[1-9])\\\\d{4,5}|(?:[36]\\\\d|4[124-7]|[57][1-9]|8[1-6]|9[1-7])\\\\d{5,6}\",\n, , , \"2123456\", , , [6, 7, 8], [4, 5]], [, , \"43[07-9]\\\\d{5}|(?:48|8[7-9]\\\\d|9(?:8\\\\d|9[69]))\\\\d{6}\", , , , \"48123456\", , , [8, 9]], [, , \"800\\\\d{5}\", , , , \"80012345\", , , [8]], [, , \"90\\\\d{6}\", , , , \"90123456\", , , [8]], [, , \"700\\\\d{5}\", , , , \"70012345\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"BG\", 359, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{6})\", \"$1\", [\"1\"]], [, \"(\\\\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]\"],\n\"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\"]], [[, \"(\\\\d)(\\\\d)(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"2\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{4})\",\n\"$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\"]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]],\n[, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BH:[, [, , \"[136-9]\\\\d{7}\", , , , , , , [8]], [, , \"(?:1(?:3[1356]|6[0156]|7\\\\d)\\\\d|6(?:1[16]\\\\d|500|6(?:0\\\\d|3[12]|44|7[7-9]|88)|9[69][69])|7(?:1(?:11|78)|7\\\\d\\\\d))\\\\d{4}\", , , , \"17001234\"], [, , \"(?:3(?:[1-4679]\\\\d|5[013-69]|8[0-47-9])\\\\d|6(?:3(?:00|33|6[16])|6(?:3[03-9]|[69]\\\\d|7[0-6])))\\\\d{4}\", , , , \"36001234\"], [, , \"80\\\\d{6}\", , , , \"80123456\"], [, , \"(?:87|9[014578])\\\\d{6}\", , , , \"90123456\"], [, , \"84\\\\d{6}\", , , , \"84123456\"], [,\n, , , , , , , , [-1]], [, , , , , , , , , [-1]], \"BH\", 973, \"00\", , , , , , , , [[, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[13679]|8[047]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BI:[, [, , \"(?:[267]\\\\d|31)\\\\d{6}\", , , , , , , [8]], [, , \"22\\\\d{6}\", , , , \"22201234\"], [, , \"(?:29|31|6[189]|7[125-9])\\\\d{6}\", , , , \"79561234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]],\n[, , , , , , , , , [-1]], \"BI\", 257, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[2367]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BJ:[, [, , \"[2689]\\\\d{7}\", , , , , , , [8]], [, , \"2(?:02|1[037]|2[45]|3[68])\\\\d{5}\", , , , \"20211234\"], [, , \"(?:6\\\\d|9[013-9])\\\\d{6}\", , , , \"90011234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]],\n[, , \"857[58]\\\\d{4}\", , , , \"85751234\"], \"BJ\", 229, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[2689]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"81\\\\d{6}\", , , , \"81123456\"], , , [, , , , , , , , , [-1]]], BL:[, [, , \"(?:590|69\\\\d)\\\\d{6}\", , , , , , , [9]], [, , \"590(?:2[7-9]|5[12]|87)\\\\d{4}\", , , , \"590271234\"], [, , \"69(?:0\\\\d\\\\d|1(?:2[29]|3[0-5]))\\\\d{4}\", , , , \"690001234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , ,\n, , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"BL\", 590, \"00\", \"0\", , , \"0\", , , , , , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BM:[, [, , \"(?:441|[58]\\\\d\\\\d|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"441(?:2(?:02|23|[3479]\\\\d|61)|[46]\\\\d\\\\d|5(?:4\\\\d|60|89)|824)\\\\d{4}\", , , , \"4412345678\", , , , [7]], [, , \"441(?:[37]\\\\d|5[0-39])\\\\d{5}\", , , , \"4413701234\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\",\n, , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"BM\", 1, \"011\", \"1\", , , \"1|([2-8]\\\\d{6})$\", \"441$1\", , , , , [, , , , , , , , , [-1]], , \"441\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BN:[, [, , \"[2-578]\\\\d{6}\", , , , , , , [7]], [, , \"22[0-7]\\\\d{4}|(?:2[013-9]|[3-5]\\\\d)\\\\d{5}\", , , , \"2345678\"], [, , \"(?:22[89]|[78]\\\\d\\\\d)\\\\d{4}\",\n, , , \"7123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"BN\", 673, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[2-578]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BO:[, [, , \"(?:[2-467]\\\\d\\\\d|8001)\\\\d{5}\", , , , , , , [8, 9], [7]], [, , \"(?:2(?:2\\\\d\\\\d|5(?:11|[258]\\\\d|9[67])|6(?:12|2\\\\d|9[34])|8(?:2[34]|39|62))|3(?:3\\\\d\\\\d|4(?:6\\\\d|8[24])|8(?:25|42|5[257]|86|9[25])|9(?:[27]\\\\d|3[2-4]|4[248]|5[24]|6[2-6]))|4(?:4\\\\d\\\\d|6(?:11|[24689]\\\\d|72)))\\\\d{4}\",\n, , , \"22123456\", , , [8], [7]], [, , \"[67]\\\\d{7}\", , , , \"71234567\", , , [8]], [, , \"8001[07]\\\\d{4}\", , , , \"800171234\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"BO\", 591, \"00(?:1\\\\d)?\", \"0\", , , \"0(1\\\\d)?\", , , , [[, \"(\\\\d)(\\\\d{7})\", \"$1 $2\", [\"[23]|4[46]\"], , \"0$CC $1\"], [, \"(\\\\d{8})\", \"$1\", [\"[67]\"], , \"0$CC $1\"], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{4})\", \"$1 $2 $3\", [\"8\"], , \"0$CC $1\"]], , [, , , , , , , , , [-1]], , , [, , \"8001[07]\\\\d{4}\",\n, , , , , , [9]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BQ:[, [, , \"(?:[34]1|7\\\\d)\\\\d{5}\", , , , , , , [7]], [, , \"(?:318[023]|41(?:6[023]|70)|7(?:1[578]|50)\\\\d)\\\\d{3}\", , , , \"7151234\"], [, , \"(?:31(?:8[14-8]|9[14578])|416[14-9]|7(?:0[01]|7[07]|8\\\\d|9[056])\\\\d)\\\\d{3}\", , , , \"3181234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"BQ\", 599, \"00\", , , , , , , , , , [, , , , , , , , , [-1]], ,\n\"[347]\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BR:[, [, , \"(?:[1-46-9]\\\\d\\\\d|5(?:[0-46-9]\\\\d|5[0-24679]))\\\\d{8}|[1-9]\\\\d{9}|[3589]\\\\d{8}|[34]\\\\d{7}\", , , , , , , [8, 9, 10, 11]], [, , \"(?:[14689][1-9]|2[12478]|3[1-578]|5[13-5]|7[13-579])[2-5]\\\\d{7}\", , , , \"1123456789\", , , [10], [8]], [, , \"(?:[14689][1-9]|2[12478]|3[1-578]|5[13-5]|7[13-579])(?:7|9\\\\d)\\\\d{7}\", , , , \"11961234567\", , , [10, 11], [8, 9]], [, , \"800\\\\d{6,7}\", , , , \"800123456\", , , [9, 10]],\n[, , \"300\\\\d{6}|[59]00\\\\d{6,7}\", , , , \"300123456\", , , [9, 10]], [, , \"300\\\\d{7}|[34]00\\\\d{5}|4(?:02|37)0\\\\d{4}\", , , , \"40041234\", , , [8, 10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"BR\", 55, \"00(?:1[245]|2[1-35]|31|4[13]|[56]5|99)\", \"0\", , , \"0(?:(1[245]|2[1-35]|31|4[13]|[56]5|99)(\\\\d{10,11}))?\", \"$2\", , , [[, \"(\\\\d{3,6})\", \"$1\", [\"1(?:1[25-8]|2[357-9]|3[02-68]|4[12568]|5|6[0-8]|8[015]|9[0-47-9])|321|610\"]], [, \"(\\\\d{4})(\\\\d{4})\", \"$1-$2\", [\"300|4(?:0[02]|37)\", \"4(?:02|37)0|[34]00\"]],\n[, \"(\\\\d{4})(\\\\d{4})\", \"$1-$2\", [\"[2-57]\", \"[2357]|4(?:[0-24-9]|3(?:[0-689]|7[1-9]))\"]], [, \"(\\\\d{3})(\\\\d{2,3})(\\\\d{4})\", \"$1 $2 $3\", [\"(?:[358]|90)0\"], \"0$1\"], [, \"(\\\\d{5})(\\\\d{4})\", \"$1-$2\", [\"9\"]], [, \"(\\\\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)\", \"0 $CC ($1)\"], [, \"(\\\\d{2})(\\\\d{5})(\\\\d{4})\", \"$1 $2-$3\", [\"[16][1-9]|[2-57-9]\"], \"($1)\", \"0 $CC ($1)\"]], [[, \"(\\\\d{4})(\\\\d{4})\", \"$1-$2\", [\"300|4(?:0[02]|37)\", \"4(?:02|37)0|[34]00\"]],\n[, \"(\\\\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)\", \"0 $CC ($1)\"], [, \"(\\\\d{2})(\\\\d{5})(\\\\d{4})\", \"$1 $2-$3\", [\"[16][1-9]|[2-57-9]\"], \"($1)\", \"0 $CC ($1)\"]], [, , , , , , , , , [-1]], , , [, , \"4020\\\\d{4}|[34]00\\\\d{5}\", , , , , , , [8]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BS:[, [, , \"(?:242|[58]\\\\d\\\\d|900)\\\\d{7}\", , , , , , , [10], [7]], [, ,\n\"242(?:3(?:02|[236][1-9]|4[0-24-9]|5[0-68]|7[347]|8[0-4]|9[2-467])|461|502|6(?:0[1-4]|12|2[013]|[45]0|7[67]|8[78]|9[89])|7(?:02|88))\\\\d{4}\", , , , \"2423456789\", , , , [7]], [, , \"242(?:3(?:5[79]|7[56]|95)|4(?:[23][1-9]|4[1-35-9]|5[1-8]|6[2-8]|7\\\\d|81)|5(?:2[45]|3[35]|44|5[1-46-9]|65|77)|6[34]6|7(?:27|38)|8(?:0[1-9]|1[02-9]|2\\\\d|[89]9))\\\\d{4}\", , , , \"2423591234\", , , , [7]], [, , \"242300\\\\d{4}|8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\", , , , [7]], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"],\n[, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"BS\", 1, \"011\", \"1\", , , \"1|([3-8]\\\\d{6})$\", \"242$1\", , , , , [, , , , , , , , , [-1]], , \"242\", [, , , , , , , , , [-1]], [, , \"242225[0-46-9]\\\\d{3}\", , , , \"2422250123\"], , , [, , , , , , , , , [-1]]], BT:[, [, , \"[17]\\\\d{7}|[2-8]\\\\d{6}\", , , , , , , [7, 8], [6]], [, , \"(?:2[3-6]|[34][5-7]|5[236]|6[2-46]|7[246]|8[2-4])\\\\d{5}\", , , , \"2345678\", , , [7], [6]], [, , \"(?:1[67]|77)\\\\d{6}\",\n, , , \"17123456\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"BT\", 975, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{3})\", \"$1 $2\", [\"[2-7]\"]], [, \"(\\\\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\"]]], [[, \"(\\\\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\"]]], [, , , ,\n, , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BW:[, [, , \"90\\\\d{5}|(?:[2-6]|7\\\\d)\\\\d{6}\", , , , , , , [7, 8]], [, , \"(?:2(?:4[0-48]|6[0-24]|9[0578])|3(?:1[0-35-9]|55|[69]\\\\d|7[013])|4(?:6[03]|7[1267]|9[0-5])|5(?:3[0389]|4[0489]|7[1-47]|88|9[0-49])|6(?:2[1-35]|5[149]|8[067]))\\\\d{4}\", , , , \"2401234\", , , [7]], [, , \"77200\\\\d{3}|7(?:[1-6]\\\\d|7[014-8])\\\\d{5}\", , , , \"71123456\", , , [8]], [, , , , , , , , , [-1]], [, , \"90\\\\d{5}\", , , , \"9012345\",\n, , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"79(?:1(?:[01]\\\\d|20)|2[0-2]\\\\d)\\\\d{3}\", , , , \"79101234\", , , [8]], \"BW\", 267, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{5})\", \"$1 $2\", [\"90\"]], [, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[2-6]\"]], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"7\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BY:[, [, , \"(?:[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}\",\n, , , , , , [6, 7, 8, 9, 10, 11], [5]], [, , \"(?:1(?:5(?:1[1-5]|[24]\\\\d|6[2-4]|9[1-7])|6(?:[235]\\\\d|4[1-7])|7\\\\d\\\\d)|2(?:1(?:[246]\\\\d|3[0-35-9]|5[1-9])|2(?:[235]\\\\d|4[0-8])|3(?:[26]\\\\d|3[02-79]|4[024-7]|5[03-7])))\\\\d{5}\", , , , \"152450911\", , , [9], [5, 6, 7]], [, , \"(?:2(?:5[5-79]|9[1-9])|(?:33|44)\\\\d)\\\\d{6}\", , , , \"294911911\", , , [9]], [, , \"800\\\\d{3,7}|8(?:0[13]|20\\\\d)\\\\d{7}\", , , , \"8011234567\"], [, , \"(?:810|902)\\\\d{7}\", , , , \"9021234567\", , , [10]], [, , , , , , , , , [-1]], [, , , , , ,\n, , , [-1]], [, , \"249\\\\d{6}\", , , , \"249123456\", , , [9]], \"BY\", 375, \"810\", \"8\", , , \"0|80?\", , \"8~10\", , [[, \"(\\\\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]\"],\n\"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\"]], , [, , , , , , , , , [-1]], , , [, , \"800\\\\d{3,7}|(?:8(?:0[13]|10|20\\\\d)|902)\\\\d{7}\"], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BZ:[, [, , \"(?:0800\\\\d|[2-8])\\\\d{6}\", , , , , , , [7, 11]], [, , \"(?:236|732)\\\\d{4}|[2-578][02]\\\\d{5}\", , , , \"2221234\", , , [7]], [, , \"6[0-35-7]\\\\d{5}\", , , , \"6221234\", , , [7]], [, , \"0800\\\\d{7}\", , , ,\n\"08001234123\", , , [11]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"BZ\", 501, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1-$2\", [\"[2-8]\"]], [, \"(\\\\d)(\\\\d{3})(\\\\d{4})(\\\\d{3})\", \"$1-$2-$3-$4\", [\"0\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CA:[, [, , \"(?:[2-8]\\\\d|90)\\\\d{8}\", , , , , , , [10], [7]], [, , \"(?:2(?:04|[23]6|[48]9|50)|3(?:06|43|65)|4(?:03|1[68]|3[178]|50)|5(?:06|1[49]|48|79|8[17])|6(?:04|13|39|47)|7(?:0[59]|78|8[02])|8(?:[06]7|19|25|73)|90[25])[2-9]\\\\d{6}\",\n, , , \"5062345678\", , , , [7]], [, , \"(?:2(?:04|[23]6|[48]9|50)|3(?:06|43|65)|4(?:03|1[68]|3[178]|50)|5(?:06|1[49]|48|79|8[17])|6(?:04|13|39|47)|7(?:0[59]|78|8[02])|8(?:[06]7|19|25|73)|90[25])[2-9]\\\\d{6}\", , , , \"5062345678\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"(?:5(?:00|2[12]|33|44|66|77|88)|622)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , \"600[2-9]\\\\d{6}\", , , , \"6002012345\"], \"CA\",\n1, \"011\", \"1\", , , \"1\", , , 1, , , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CC:[, [, , \"1(?:[0-79]\\\\d|8[0-24-9])\\\\d{7}|(?:[148]\\\\d\\\\d|550)\\\\d{6}|1\\\\d{5,7}\", , , , , , , [6, 7, 8, 9, 10]], [, , \"8(?:51(?:0(?:02|31|60)|118)|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}\", , , , \"891621234\", , , [9], [8]], [, , \"483[0-3]\\\\d{5}|4(?:[0-3]\\\\d|4[047-9]|5[0-25-9]|6[06-9]|7[02-9]|8[0-2457-9]|9[0-27-9])\\\\d{6}\",\n, , , \"412345678\", , , [9]], [, , \"180(?:0\\\\d{3}|2)\\\\d{3}\", , , , \"1800123456\", , , [7, 10]], [, , \"190[0-26]\\\\d{6}\", , , , \"1900123456\", , , [10]], [, , \"13(?:00\\\\d{3}|45[0-4])\\\\d{3}|13\\\\d{4}\", , , , \"1300123456\", , , [6, 8, 10]], [, , , , , , , , , [-1]], [, , \"(?:14(?:5(?:1[0458]|[23][458])|71\\\\d)|550\\\\d\\\\d)\\\\d{4}\", , , , \"550123456\", , , [9]], \"CC\", 61, \"001[14-689]|14(?:1[14]|34|4[17]|[56]6|7[47]|88)0011\", \"0\", , , \"0|([59]\\\\d{7})$\", \"8$1\", \"0011\", , , , [, , , , , , , , , [-1]], , , [, , ,\n, , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CD:[, [, , \"[189]\\\\d{8}|[1-68]\\\\d{6}\", , , , , , , [7, 9]], [, , \"12\\\\d{7}|[1-6]\\\\d{6}\", , , , \"1234567\"], [, , \"88\\\\d{5}|(?:8[0-2459]|9[017-9])\\\\d{7}\", , , , \"991234567\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"CD\", 243, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{3})\", \"$1 $2 $3\", [\"88\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{5})\", \"$1 $2\",\n[\"[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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CF:[, [, , \"(?:[27]\\\\d{3}|8776)\\\\d{4}\", , , , , , , [8]], [, , \"2[12]\\\\d{6}\", , , , \"21612345\"], [, , \"7[0257]\\\\d{6}\", , , , \"70012345\"], [, , , , , , , , , [-1]], [, , \"8776\\\\d{4}\", , , , \"87761234\"], [, , , , , , , , , [-1]], [, , , , , , , , ,\n[-1]], [, , , , , , , , , [-1]], \"CF\", 236, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[278]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CG:[, [, , \"222\\\\d{6}|(?:0\\\\d|80)\\\\d{7}\", , , , , , , [9]], [, , \"222[1-589]\\\\d{5}\", , , , \"222123456\"], [, , \"0[14-6]\\\\d{7}\", , , , \"061234567\"], [, , , , , , , , , [-1]], [, , \"80(?:0\\\\d\\\\d|11[0-4])\\\\d{4}\", , , , \"800123456\"], [, , , , , , , , , [-1]],\n[, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"CG\", 242, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"801\"]], [, \"(\\\\d)(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"8\"]], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[02]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CH:[, [, , \"8\\\\d{11}|[2-9]\\\\d{8}\", , , , , , , [9, 12]], [, , \"(?:2[12467]|3[1-4]|4[134]|5[256]|6[12]|[7-9]1)\\\\d{7}\", , , , \"212345678\",\n, , [9]], [, , \"7[35-9]\\\\d{7}\", , , , \"781234567\", , , [9]], [, , \"800\\\\d{6}\", , , , \"800123456\", , , [9]], [, , \"90[016]\\\\d{6}\", , , , \"900123456\", , , [9]], [, , \"84[0248]\\\\d{6}\", , , , \"840123456\", , , [9]], [, , \"878\\\\d{6}\", , , , \"878123456\", , , [9]], [, , , , , , , , , [-1]], \"CH\", 41, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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})\",\n\"$1 $2 $3 $4 $5\", [\"8\"], \"0$1\"]], , [, , \"74[0248]\\\\d{6}\", , , , \"740123456\", , , [9]], , , [, , , , , , , , , [-1]], [, , \"5[18]\\\\d{7}\", , , , \"581234567\", , , [9]], , , [, , \"860\\\\d{9}\", , , , \"860123456789\", , , [12]]], CI:[, [, , \"[02-8]\\\\d{7}\", , , , , , , [8]], [, , \"(?:2(?:0[023]|1[02357]|[23][045]|4[03-5])|3(?:0[06]|1[069]|[2-4][07]|5[09]|6[08]))\\\\d{5}\", , , , \"21234567\"], [, , \"(?:0[1-9]|[457]\\\\d|6[014-9]|8[4-9])\\\\d{6}\", , , , \"01234567\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]],\n[, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"CI\", 225, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[02-8]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CK:[, [, , \"[2-8]\\\\d{4}\", , , , , , , [5]], [, , \"(?:2\\\\d|3[13-7]|4[1-5])\\\\d{3}\", , , , \"21234\"], [, , \"[5-8]\\\\d{4}\", , , , \"71234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]],\n[, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"CK\", 682, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{3})\", \"$1 $2\", [\"[2-8]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CL:[, [, , \"12300\\\\d{6}|6\\\\d{9,10}|[2-9]\\\\d{8}\", , , , , , , [9, 10, 11]], [, , \"(?:2(?:1962|3(?:2\\\\d\\\\d|300))|80[1-9]\\\\d\\\\d)\\\\d{4}|(?:22|3[2-5]|[47][1-35]|5[1-3578]|6[13-57]|8[1-9]|9[2-9])\\\\d{7}\", , , , \"221234567\", , , [9]], [, , \"(?:2(?:1962|3(?:2\\\\d\\\\d|300))|80[1-9]\\\\d\\\\d)\\\\d{4}|(?:22|3[2-5]|[47][1-35]|5[1-3578]|6[13-57]|8[1-9]|9[2-9])\\\\d{7}\",\n, , , \"221234567\", , , [9]], [, , \"(?:123|8)00\\\\d{6}\", , , , \"800123456\", , , [9, 11]], [, , , , , , , , , [-1]], [, , \"600\\\\d{7,8}\", , , , \"6001234567\", , , [10, 11]], [, , , , , , , , , [-1]], [, , \"44\\\\d{7}\", , , , \"441234567\", , , [9]], \"CL\", 56, \"(?:0|1(?:1[0-69]|2[0-57]|5[13-58]|69|7[0167]|8[018]))0\", , , , , , , 1, [[, \"(\\\\d{4})\", \"$1\", [\"1(?:[03-589]|21)|[29]0|78\"]], [, \"(\\\\d{5})(\\\\d{4})\", \"$1 $2\", [\"21\"], \"($1)\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"44\"]], [, \"(\\\\d)(\\\\d{4})(\\\\d{4})\",\n\"$1 $2 $3\", [\"2[23]\"], \"($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\"]]], [[, \"(\\\\d{5})(\\\\d{4})\", \"$1 $2\", [\"21\"], \"($1)\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"44\"]], [, \"(\\\\d)(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\",\n[\"2[23]\"], \"($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\"]]], [, , , , , , , , , [-1]], , , [, , \"600\\\\d{7,8}\", , , , , , , [10, 11]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CM:[, [, , \"(?:[26]\\\\d\\\\d|88)\\\\d{6}\",\n, , , , , , [8, 9]], [, , \"2(?:22|33|4[23])\\\\d{6}\", , , , \"222123456\", , , [9]], [, , \"6[5-9]\\\\d{7}\", , , , \"671234567\", , , [9]], [, , \"88\\\\d{6}\", , , , \"88012345\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"CM\", 237, \"00\", , , , , , , , [[, \"(\\\\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]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]],\n[, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CN:[, [, , \"1[1279]\\\\d{8,9}|2\\\\d{9}(?:\\\\d{2})?|[12]\\\\d{6,7}|86\\\\d{6}|(?:1[03-68]\\\\d|6)\\\\d{7,9}|(?:[3-579]\\\\d|8[0-57-9])\\\\d{6,9}\", , , , , , , [7, 8, 9, 10, 11, 12], [5, 6]], [, , \"(?:10(?:[02-79]\\\\d\\\\d|[18](?:0[1-9]|[1-9]\\\\d))|21(?:[18](?:0[1-9]|[1-9]\\\\d)|[2-79]\\\\d\\\\d))\\\\d{5}|(?:43[35]|754)\\\\d{7,8}|8(?:078\\\\d{7}|51\\\\d{7,8})|(?:10|(?:2|85)1|43[35]|754)(?:100\\\\d\\\\d|95\\\\d{3,4})|(?:2[02-57-9]|3(?:11|7[179])|4(?:[15]1|3[12])|5(?:1\\\\d|2[37]|3[12]|51|7[13-79]|9[15])|7(?:[39]1|5[57]|6[09])|8(?:71|98))(?:[02-8]\\\\d{7}|1(?:0(?:0\\\\d\\\\d(?:\\\\d{3})?|[1-9]\\\\d{5})|[1-9]\\\\d{6})|9(?:[0-46-9]\\\\d{6}|5\\\\d{3}(?:\\\\d(?:\\\\d{2})?)?))|(?:3(?:1[02-9]|35|49|5\\\\d|7[02-68]|9[1-68])|4(?:1[02-9]|2[179]|3[46-9]|5[2-9]|6[47-9]|7\\\\d|8[23])|5(?:3[03-9]|4[36]|5[02-9]|6[1-46]|7[028]|80|9[2-46-9])|6(?:3[1-5]|6[0238]|9[12])|7(?:01|[17]\\\\d|2[248]|3[04-9]|4[3-6]|5[0-3689]|6[2368]|9[02-9])|8(?:1[236-8]|2[5-7]|3\\\\d|5[2-9]|7[02-9]|8[36-8]|9[1-7])|9(?:0[1-3689]|1[1-79]|[379]\\\\d|4[13]|5[1-5]))(?:[02-8]\\\\d{6}|1(?:0(?:0\\\\d\\\\d(?:\\\\d{2})?|[1-9]\\\\d{4})|[1-9]\\\\d{5})|9(?:[0-46-9]\\\\d{5}|5\\\\d{3,5}))\",\n, , , \"1012345678\", , , [7, 8, 9, 10, 11], [5, 6]], [, , \"1740[0-5]\\\\d{6}|1(?:[38]\\\\d|4[57]|5[0-35-9]|6[25-7]|7[0-35-8]|9[189])\\\\d{8}\", , , , \"13123456789\", , , [11]], [, , \"(?:(?:10|21)8|8)00\\\\d{7}\", , , , \"8001234567\", , , [10, 12]], [, , \"16[08]\\\\d{5}\", , , , \"16812345\", , , [8]], [, , \"400\\\\d{7}|950\\\\d{7,8}|(?:10|2[0-57-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[14-9]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|[379]\\\\d|4[13]|5[1-5]))96\\\\d{3,4}\",\n, , , \"4001234567\", , , [7, 8, 9, 10, 11], [5, 6]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"CN\", 86, \"00|1(?:[12]\\\\d|79|9[0235-7])\\\\d\\\\d00\", \"0\", , , \"0|(1(?:[12]\\\\d|79|9[0235-7])\\\\d\\\\d)\", , \"00\", , [[, \"(\\\\d{5,6})\", \"$1\", [\"96\"]], [, \"(\\\\d{2})(\\\\d{5,6})\", \"$1 $2\", [\"(?:10|2[0-57-9])[19]\", \"(?:10|2[0-57-9])(?:10|9[56])\", \"(?:10|2[0-57-9])(?:100|9[56])\"], \"0$1\", \"$CC $1\"], [, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[1-9]\", \"1[1-9]|26|[3-9]|(?:10|2[0-57-9])(?:[0-8]|9[0-47-9])\", \"1[1-9]|26|[3-9]|(?:10|2[0-57-9])(?:[02-8]|1(?:0[1-9]|[1-9])|9[0-47-9])\"]],\n[, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"16[08]\"]], [, \"(\\\\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]\",\n\"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])\"],\n\"0$1\", \"$CC $1\"], [, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[1-9]\", \"1[1-9]|26|[3-9]|(?:10|2[0-57-9])(?:[0-8]|9[0-47-9])\", \"26|3(?:[0268]|9[079])|4(?:[049]|2[02-68]|[35]0|6[0-356]|8[014-9])|5(?:0|2[0-24-689]|4[0-2457-9]|6[057-9]|90)|6(?:[0-24578]|6[14-79]|9[03-9])|7(?:0[02-9]|2[0135-79]|3[23]|4[0-27-9]|6[1457]|8)|8(?:[046]|1[01459]|2[0-489]|50|8[0-2459]|9[09])|9(?:0[0457]|1[08]|[268]|4[024-9])|(?:34|85[23])[0-8]|(?:1|58)[1-9]|(?:63|95)[06-9]|(?:33|85[23]9)[0-46-9]|(?:10|2[0-57-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[14-9]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|[379]\\\\d|4[13]|5[1-5]))(?:[0-8]|9[0-47-9])\",\n\"26|3(?:[0268]|3[0-46-9]|4[0-8]|9[079])|4(?:[049]|2[02-68]|[35]0|6[0-356]|8[014-9])|5(?:0|2[0-24-689]|4[0-2457-9]|6[057-9]|90)|6(?:[0-24578]|3[06-9]|6[14-79]|9[03-9])|7(?:0[02-9]|2[0135-79]|3[23]|4[0-27-9]|6[1457]|8)|8(?:[046]|1[01459]|2[0-489]|5(?:0|[23](?:[02-8]|1[1-9]|9[0-46-9]))|8[0-2459]|9[09])|9(?:0[0457]|1[08]|[268]|4[024-9]|5[06-9])|(?:1|58|85[23]10)[1-9]|(?:10|2[0-57-9])(?:[0-8]|9[0-47-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[14-9]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|[379]\\\\d|4[13]|5[1-5]))(?:[02-8]|1(?:0[1-9]|[1-9])|9[0-47-9])\"]],\n[, \"(\\\\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\", \"$CC $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\", \"$CC $1\", 1],\n[, \"(\\\\d{3})(\\\\d{7,8})\", \"$1 $2\", [\"9\"]], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"80\"], \"0$1\", \"$CC $1\", 1], [, \"(\\\\d{3})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"[3-578]\"], \"0$1\", \"$CC $1\", 1], [, \"(\\\\d{3})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"1[3-9]\"], , \"$CC $1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3 $4\", [\"[12]\"], \"0$1\", , 1]], [[, \"(\\\\d{2})(\\\\d{5,6})\", \"$1 $2\", [\"(?:10|2[0-57-9])[19]\", \"(?:10|2[0-57-9])(?:10|9[56])\", \"(?:10|2[0-57-9])(?:100|9[56])\"], \"0$1\", \"$CC $1\"], [, \"(\\\\d{3})(\\\\d{5,6})\",\n\"$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]\",\n\"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])\"],\n\"0$1\", \"$CC $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\", \"$CC $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\",\n\"$CC $1\", 1], [, \"(\\\\d{3})(\\\\d{7,8})\", \"$1 $2\", [\"9\"]], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"80\"], \"0$1\", \"$CC $1\", 1], [, \"(\\\\d{3})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"[3-578]\"], \"0$1\", \"$CC $1\", 1], [, \"(\\\\d{3})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"1[3-9]\"], , \"$CC $1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3 $4\", [\"[12]\"], \"0$1\", , 1]], [, , , , , , , , , [-1]], , , [, , \"(?:(?:10|21)8|[48])00\\\\d{7}|950\\\\d{7,8}\", , , , , , , [10, 11, 12]], [, , , , , , , , , [-1]], , , [, , , , , , ,\n, , [-1]]], CO:[, [, , \"(?:1\\\\d|3)\\\\d{9}|[124-8]\\\\d{7}\", , , , , , , [8, 10, 11], [7]], [, , \"[124-8][2-9]\\\\d{6}\", , , , \"12345678\", , , [8], [7]], [, , \"3(?:0[0-5]|1\\\\d|2[0-3]|5[01])\\\\d{7}\", , , , \"3211234567\", , , [10]], [, , \"1800\\\\d{7}\", , , , \"18001234567\", , , [11]], [, , \"19(?:0[01]|4[78])\\\\d{7}\", , , , \"19001234567\", , , [11]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"CO\", 57, \"00(?:4(?:[14]4|56)|[579])\", \"0\", , , \"0([3579]|4(?:[14]4|56))?\", , , , [[,\n\"(\\\\d)(\\\\d{7})\", \"$1 $2\", [\"1[2-79]|[25-8]|(?:18|4)[2-9]\"], \"($1)\", \"0$CC $1\"], [, \"(\\\\d{3})(\\\\d{7})\", \"$1 $2\", [\"3\"], , \"0$CC $1\"], [, \"(\\\\d)(\\\\d{3})(\\\\d{7})\", \"$1-$2-$3\", [\"1(?:80|9)\", \"1(?:800|9)\"], \"0$1\"]], [[, \"(\\\\d)(\\\\d{7})\", \"$1 $2\", [\"1[2-79]|[25-8]|(?:18|4)[2-9]\"], \"($1)\", \"0$CC $1\"], [, \"(\\\\d{3})(\\\\d{7})\", \"$1 $2\", [\"3\"], , \"0$CC $1\"], [, \"(\\\\d)(\\\\d{3})(\\\\d{7})\", \"$1 $2 $3\", [\"1(?:80|9)\", \"1(?:800|9)\"]]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]],\n, , [, , , , , , , , , [-1]]], CR:[, [, , \"(?:8\\\\d|90)\\\\d{8}|[24-8]\\\\d{7}\", , , , , , , [8, 10]], [, , \"210[7-9]\\\\d{4}|2(?:[024-7]\\\\d|1[1-9])\\\\d{5}\", , , , \"22123456\", , , [8]], [, , \"6500[01]\\\\d{3}|5(?:0[01]|7[0-3])\\\\d{5}|(?:6[0-4]|7[0-3]|8[3-9])\\\\d{6}\", , , , \"83123456\", , , [8]], [, , \"800\\\\d{7}\", , , , \"8001234567\", , , [10]], [, , \"90[059]\\\\d{7}\", , , , \"9001234567\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"(?:210[0-6]|4\\\\d{3}|5100)\\\\d{4}\", , , , \"40001234\", , , [8]],\n\"CR\", 506, \"00\", , , , \"(19(?:0[0-2468]|1[09]|20|66|77|99))\", , , , [[, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[24-7]|8[3-9]\"], , \"$CC $1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"[89]\"], , \"$CC $1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CU:[, [, , \"[27]\\\\d{6,7}|[34]\\\\d{5,7}|5\\\\d{7}\", , , , , , , [6, 7, 8], [4, 5]], [, , \"(?:3[23]|48)\\\\d{4,6}|(?:31|4[36])\\\\d{6}|(?:2[1-4]|4[1257]|7\\\\d)\\\\d{5,6}\", , , , \"71234567\", , , , [4,\n5]], [, , \"5\\\\d{7}\", , , , \"51234567\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"CU\", 53, \"119\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{4,6})\", \"$1 $2\", [\"2[1-4]|[34]\"], \"(0$1)\"], [, \"(\\\\d)(\\\\d{6,7})\", \"$1 $2\", [\"7\"], \"(0$1)\"], [, \"(\\\\d)(\\\\d{7})\", \"$1 $2\", [\"5\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CV:[, [, , \"[2-59]\\\\d{6}\",\n, , , , , , [7]], [, , \"2(?:2[1-7]|3[0-8]|4[12]|5[1256]|6\\\\d|7[1-3]|8[1-5])\\\\d{4}\", , , , \"2211234\"], [, , \"(?:[34][36]|5[1-389]|9\\\\d)\\\\d{5}\", , , , \"9911234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"CV\", 238, \"0\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3\", [\"[2-59]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CW:[, [,\n, \"(?:[34]1|60|(?:7|9\\\\d)\\\\d)\\\\d{5}\", , , , , , , [7, 8]], [, , \"9(?:4(?:3[0-5]|4[14]|6\\\\d)|50\\\\d|7(?:2[014]|3[02-9]|4[4-9]|6[357]|77|8[7-9])|8(?:3[39]|[46]\\\\d|7[01]|8[57-9]))\\\\d{4}\", , , , \"94351234\"], [, , \"953[01]\\\\d{4}|9(?:5[12467]|6[5-9])\\\\d{5}\", , , , \"95181234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"60[0-2]\\\\d{4}\", , , , \"6001234\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"CW\", 599, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[3467]\"]],\n[, \"(\\\\d)(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"9[4-8]\"]]], , [, , \"955\\\\d{5}\", , , , \"95581234\", , , [8]], 1, \"[69]\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CX:[, [, , \"1(?:[0-79]\\\\d|8[0-24-9])\\\\d{7}|(?:[148]\\\\d\\\\d|550)\\\\d{6}|1\\\\d{5,7}\", , , , , , , [6, 7, 8, 9, 10]], [, , \"8(?:51(?:0(?:01|30|59)|117)|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}\", , , , \"891641234\", , , [9], [8]], [, , \"483[0-3]\\\\d{5}|4(?:[0-3]\\\\d|4[047-9]|5[0-25-9]|6[06-9]|7[02-9]|8[0-2457-9]|9[0-27-9])\\\\d{6}\",\n, , , \"412345678\", , , [9]], [, , \"180(?:0\\\\d{3}|2)\\\\d{3}\", , , , \"1800123456\", , , [7, 10]], [, , \"190[0-26]\\\\d{6}\", , , , \"1900123456\", , , [10]], [, , \"13(?:00\\\\d{3}|45[0-4])\\\\d{3}|13\\\\d{4}\", , , , \"1300123456\", , , [6, 8, 10]], [, , , , , , , , , [-1]], [, , \"(?:14(?:5(?:1[0458]|[23][458])|71\\\\d)|550\\\\d\\\\d)\\\\d{4}\", , , , \"550123456\", , , [9]], \"CX\", 61, \"001[14-689]|14(?:1[14]|34|4[17]|[56]6|7[47]|88)0011\", \"0\", , , \"0|([59]\\\\d{7})$\", \"8$1\", \"0011\", , , , [, , , , , , , , , [-1]], , , [, , ,\n, , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CY:[, [, , \"(?:[279]\\\\d|[58]0)\\\\d{6}\", , , , , , , [8]], [, , \"2[2-6]\\\\d{6}\", , , , \"22345678\"], [, , \"9[4-79]\\\\d{6}\", , , , \"96123456\"], [, , \"800\\\\d{5}\", , , , \"80001234\"], [, , \"90[09]\\\\d{5}\", , , , \"90012345\"], [, , \"80[1-9]\\\\d{5}\", , , , \"80112345\"], [, , \"700\\\\d{5}\", , , , \"70012345\"], [, , , , , , , , , [-1]], \"CY\", 357, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{6})\", \"$1 $2\", [\"[257-9]\"]]], , [, , , , , , , , , [-1]],\n, , [, , , , , , , , , [-1]], [, , \"(?:50|77)\\\\d{6}\", , , , \"77123456\"], , , [, , , , , , , , , [-1]]], CZ:[, [, , \"(?:[2-578]\\\\d|60)\\\\d{7}|9\\\\d{8,11}\", , , , , , , [9, 10, 11, 12]], [, , \"(?:2\\\\d|3[1257-9]|4[16-9]|5[13-9])\\\\d{7}\", , , , \"212345678\", , , [9]], [, , \"(?:60[1-8]|7(?:0[2-5]|[2379]\\\\d))\\\\d{6}\", , , , \"601123456\", , , [9]], [, , \"800\\\\d{6}\", , , , \"800123456\", , , [9]], [, , \"9(?:0[05689]|76)\\\\d{6}\", , , , \"900123456\", , , [9]], [, , \"8[134]\\\\d{7}\", , , , \"811234567\", , , [9]], [, , \"70[01]\\\\d{6}\",\n, , , \"700123456\", , , [9]], [, , \"9[17]0\\\\d{6}\", , , , \"910123456\", , , [9]], \"CZ\", 420, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[2-8]|9[015-7]\"]], [, \"(\\\\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\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"9(?:5\\\\d|7[2-4])\\\\d{6}\", , , , \"972123456\", , , [9]], , , [, , \"9(?:3\\\\d{9}|6\\\\d{7,10})\", , , , \"93123456789\"]], DE:[, [, , \"[2579]\\\\d{5,14}|49(?:[05]\\\\d{10}|[46][1-8]\\\\d{4,9})|49(?:[0-25]\\\\d|3[1-689]|7[1-7])\\\\d{4,8}|49(?:[0-2579]\\\\d|[34][1-9]|6[0-8])\\\\d{3}|49\\\\d{3,4}|(?:1|[368]\\\\d|4[0-8])\\\\d{3,13}\",\n, , , , , , [4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15], [2, 3]], [, , \"(?:32|49[4-6]\\\\d)\\\\d{9}|49[0-7]\\\\d{3,9}|(?:[34]0|[68]9)\\\\d{3,13}|(?:2(?:0[1-689]|[1-3569]\\\\d|4[0-8]|7[1-7]|8[0-7])|3(?:[3569]\\\\d|4[0-79]|7[1-7]|8[1-8])|4(?:1[02-9]|[2-48]\\\\d|5[0-6]|6[0-8]|7[0-79])|5(?:0[2-8]|[124-6]\\\\d|[38][0-8]|[79][0-7])|6(?:0[02-9]|[1-358]\\\\d|[47][0-8]|6[1-9])|7(?:0[2-8]|1[1-9]|[27][0-7]|3\\\\d|[4-6][0-8]|8[0-5]|9[013-7])|8(?:0[2-9]|1[0-79]|2\\\\d|3[0-46-9]|4[0-6]|5[013-9]|6[1-8]|7[0-8]|8[0-24-6])|9(?:0[6-9]|[1-4]\\\\d|[589][0-7]|6[0-8]|7[0-467]))\\\\d{3,12}\",\n, , , \"30123456\", , , [5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15], [2, 3, 4]], [, , \"15[0-25-9]\\\\d{8}|1(?:6[023]|7\\\\d)\\\\d{7,8}\", , , , \"15123456789\", , , [10, 11]], [, , \"800\\\\d{7,12}\", , , , \"8001234567890\", , , [10, 11, 12, 13, 14, 15]], [, , \"(?:137[7-9]|900(?:[135]|9\\\\d))\\\\d{6}\", , , , \"9001234567\", , , [10, 11]], [, , \"180\\\\d{5,11}|13(?:7[1-6]\\\\d\\\\d|8)\\\\d{4}\", , , , \"18012345\", , , [7, 8, 9, 10, 11, 12, 13, 14]], [, , \"700\\\\d{8}\", , , , \"70012345678\", , , [11]], [, , , , , , , , , [-1]], \"DE\", 49,\n\"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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]\"],\n\"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\"],\n[, \"(\\\\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\"]], , [, , \"16(?:4\\\\d{1,10}|[89]\\\\d{1,11})\", , , , \"16412345\", , , [4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14]], , , [, , , , , , , , , [-1]], [, , \"18(?:1\\\\d{5,11}|[2-9]\\\\d{8})\",\n, , , \"18500123456\", , , [8, 9, 10, 11, 12, 13, 14]], , , [, , \"1(?:6(?:013|255|399)|7(?:(?:[015]1|[69]3)3|[2-4]55|[78]99))\\\\d{7,8}|15(?:(?:[03-68]00|113)\\\\d|2\\\\d55|7\\\\d99|9\\\\d33)\\\\d{7}\", , , , \"177991234567\", , , [12, 13]]], DJ:[, [, , \"(?:2\\\\d|77)\\\\d{6}\", , , , , , , [8]], [, , \"2(?:1[2-5]|7[45])\\\\d{5}\", , , , \"21360003\"], [, , \"77\\\\d{6}\", , , , \"77831001\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"DJ\", 253,\n\"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[27]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], DK:[, [, , \"[2-9]\\\\d{7}\", , , , , , , [8]], [, , \"(?:[2-7]\\\\d|8[126-9]|9[1-36-9])\\\\d{6}\", , , , \"32123456\"], [, , \"(?:[2-7]\\\\d|8[126-9]|9[1-36-9])\\\\d{6}\", , , , \"32123456\"], [, , \"80\\\\d{6}\", , , , \"80123456\"], [, , \"90\\\\d{6}\", , , , \"90123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [,\n, , , , , , , , [-1]], \"DK\", 45, \"00\", , , , , , , 1, [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[2-9]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], DM:[, [, , \"(?:[58]\\\\d\\\\d|767|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"767(?:2(?:55|66)|4(?:2[01]|4[0-25-9])|50[0-4]|70[1-3])\\\\d{4}\", , , , \"7674201234\", , , , [7]], [, , \"767(?:2(?:[2-4689]5|7[5-7])|31[5-7]|61[1-7])\\\\d{4}\", , , , \"7672251234\", , , , [7]], [, ,\n\"8(?:00(?:14|[2-9]\\\\d)|(?:33|44|55|66|77|88)[2-9]\\\\d)\\\\d{5}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"DM\", 1, \"011\", \"1\", , , \"1|([2-7]\\\\d{6})$\", \"767$1\", , , , , [, , , , , , , , , [-1]], , \"767|8001\", [, , \"80014\\\\d{5}\"], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], DO:[, [, , \"(?:[58]\\\\d\\\\d|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"8(?:[04]9[2-9]\\\\d\\\\d|29(?:2(?:[0-59]\\\\d|6[04-9]|7[0-27]|8[0237-9])|3(?:[0-35-9]\\\\d|4[7-9])|[45]\\\\d\\\\d|6(?:[0-27-9]\\\\d|[3-5][1-9]|6[0135-8])|7(?:0[013-9]|[1-37]\\\\d|4[1-35689]|5[1-4689]|6[1-57-9]|8[1-79]|9[1-8])|8(?:0[146-9]|1[0-48]|[248]\\\\d|3[1-79]|5[01589]|6[013-68]|7[124-8]|9[0-8])|9(?:[0-24]\\\\d|3[02-46-9]|5[0-79]|60|7[0169]|8[57-9]|9[02-9])))\\\\d{4}\",\n, , , \"8092345678\", , , , [7]], [, , \"8[024]9[2-9]\\\\d{6}\", , , , \"8092345678\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"DO\", 1, \"011\", \"1\", , , \"1\", , , , , , [, , , , , , , , , [-1]], , \"8[024]9\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], DZ:[, [, , \"(?:[1-4]|[5-79]\\\\d|80)\\\\d{7}\",\n, , , , , , [8, 9]], [, , \"9619\\\\d{5}|(?:1\\\\d|2[013-79]|3[0-8]|4[0135689])\\\\d{6}\", , , , \"12345678\"], [, , \"67[0-6]\\\\d{6}|(?:5[4-6]|6[569]|7[7-9])\\\\d{7}\", , , , \"551234567\", , , [9]], [, , \"800\\\\d{6}\", , , , \"800123456\", , , [9]], [, , \"80[3-689]1\\\\d{5}\", , , , \"808123456\", , , [9]], [, , \"80[12]1\\\\d{5}\", , , , \"801123456\", , , [9]], [, , , , , , , , , [-1]], [, , \"98[23]\\\\d{6}\", , , , \"983123456\", , , [9]], \"DZ\", 213, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\",\n[\"[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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], EC:[, [, , \"1800\\\\d{6,7}|(?:[2-7]|9\\\\d)\\\\d{7}\", , , , , , , [8, 9, 10, 11], [7]], [, , \"[2-7][2-7]\\\\d{6}\", , , , \"22123456\", , , [8], [7]], [, , \"964[0-2]\\\\d{5}|9(?:39|[57][89]|6[0-37-9]|[89]\\\\d)\\\\d{6}\", , , , \"991234567\", ,\n, [9]], [, , \"1800\\\\d{6,7}\", , , , \"18001234567\", , , [10, 11]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"[2-7]890\\\\d{4}\", , , , \"28901234\", , , [8]], \"EC\", 593, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1-$2\", [\"[2-7]\"]], [, \"(\\\\d)(\\\\d{3})(\\\\d{4})\", \"$1 $2-$3\", [\"[2-7]\"], \"(0$1)\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"9\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{3,4})\", \"$1 $2 $3\", [\"1\"]]], [[, \"(\\\\d)(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"[2-7]\"]],\n[, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"9\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{3,4})\", \"$1 $2 $3\", [\"1\"]]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], EE:[, [, , \"8\\\\d{9}|[4578]\\\\d{7}|(?:[3-8]\\\\d\\\\d|900)\\\\d{4}\", , , , , , , [7, 8, 10]], [, , \"(?:3[23589]|4[3-8]|6\\\\d|7[1-9]|88)\\\\d{5}\", , , , \"3212345\", , , [7]], [, , \"(?:5\\\\d|8[1-4])\\\\d{6}|5(?:(?:[02]\\\\d|5[0-478])\\\\d|1(?:[0-8]\\\\d|95)|6(?:4[0-4]|5[1-589]))\\\\d{3}\", , , , \"51234567\",\n, , [7, 8]], [, , \"800(?:(?:0\\\\d\\\\d|1)\\\\d|[2-9])\\\\d{3}\", , , , \"80012345\"], [, , \"(?:40\\\\d\\\\d|900)\\\\d{4}\", , , , \"9001234\", , , [7, 8]], [, , , , , , , , , [-1]], [, , \"70[0-2]\\\\d{5}\", , , , \"70012345\", , , [8]], [, , , , , , , , , [-1]], \"EE\", 372, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[369]|4[3-8]|5(?:[0-2]|5[0-478]|6[45])|7[1-9]\", \"[369]|4[3-8]|5(?:[02]|1(?:[0-8]|95)|5[0-478]|6(?:4[0-4]|5[1-589]))|7[1-9]\"]], [, \"(\\\\d{4})(\\\\d{3,4})\", \"$1 $2\", [\"[45]|8(?:00|[1-4])\", \"[45]|8(?:00[1-9]|[1-4])\"]],\n[, \"(\\\\d{2})(\\\\d{2})(\\\\d{4})\", \"$1 $2 $3\", [\"7\"]], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"80\"]]], , [, , , , , , , , , [-1]], , , [, , \"800[2-9]\\\\d{3}\", , , , , , , [7]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], EG:[, [, , \"[189]\\\\d{8,9}|[24-6]\\\\d{8}|[135]\\\\d{7}\", , , , , , , [8, 9, 10], [6, 7]], [, , \"(?:15\\\\d|57[23])\\\\d{5,6}|(?:13[23]|(?:2[2-4]|3)\\\\d|4(?:0[2-5]|[578][23]|64)|5(?:0[2-7]|5\\\\d)|6[24-689]3|8(?:2[2-57]|4[26]|6[237]|8[2-4])|9(?:2[27]|3[24]|52|6[2356]|7[2-4]))\\\\d{6}\",\n, , , \"234567890\", , , [8, 9], [6, 7]], [, , \"1[0-25]\\\\d{8}\", , , , \"1001234567\", , , [10]], [, , \"800\\\\d{7}\", , , , \"8001234567\", , , [10]], [, , \"900\\\\d{7}\", , , , \"9001234567\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"EG\", 20, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d)(\\\\d{7,8})\", \"$1 $2\", [\"[23]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{6,7})\", \"$1 $2\", [\"1[35]|[4-6]|8[2468]|9[235-7]\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[189]\"], \"0$1\"]], , [, ,\n, , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], EH:[, [, , \"[5-8]\\\\d{8}\", , , , , , , [9]], [, , \"528[89]\\\\d{5}\", , , , \"528812345\"], [, , \"692[12]\\\\d{5}|(?:6(?:[0-7]\\\\d|8[0-247-9]|9[013-9])|7(?:0[06-8]|6[1267]|7[0-27]))\\\\d{6}\", , , , \"650123456\"], [, , \"80\\\\d{7}\", , , , \"801234567\"], [, , \"89\\\\d{7}\", , , , \"891234567\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"5924[0-2]\\\\d{4}\", , , , \"592401234\"], \"EH\", 212, \"00\", \"0\",\n, , \"0\", , , , , , [, , , , , , , , , [-1]], , \"528[89]\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], ER:[, [, , \"[178]\\\\d{6}\", , , , , , , [7], [6]], [, , \"(?:1(?:1[12568]|[24]0|55|6[146])|8\\\\d\\\\d)\\\\d{4}\", , , , \"8370362\", , , , [6]], [, , \"(?:17[1-3]|7\\\\d\\\\d)\\\\d{4}\", , , , \"7123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"ER\", 291, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d)(\\\\d{3})(\\\\d{3})\",\n\"$1 $2 $3\", [\"[178]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], ES:[, [, , \"(?:51|[6-9]\\\\d)\\\\d{7}\", , , , , , , [9]], [, , \"96906(?:0[0-8]|1[1-9]|[2-9]\\\\d)\\\\d\\\\d|9(?:69(?:0[0-57-9]|[1-9]\\\\d)|73(?:[0-8]\\\\d|9[1-9]))\\\\d{4}|(?:8(?:[1356]\\\\d|[28][0-8]|[47][1-9])|9(?:[135]\\\\d|[268][0-8]|4[1-9]|7[124-9]))\\\\d{6}\", , , , \"810123456\"], [, , \"9(?:6906(?:09|10)|7390\\\\d\\\\d)\\\\d\\\\d|(?:6\\\\d|7[1-48])\\\\d{7}\", , , , \"612345678\"], [,\n, \"[89]00\\\\d{6}\", , , , \"800123456\"], [, , \"80[367]\\\\d{6}\", , , , \"803123456\"], [, , \"90[12]\\\\d{6}\", , , , \"901123456\"], [, , \"70\\\\d{7}\", , , , \"701234567\"], [, , , , , , , , , [-1]], \"ES\", 34, \"00\", , , , , , , , [[, \"(\\\\d{4})\", \"$1\", [\"905\"]], [, \"(\\\\d{6})\", \"$1\", [\"[79]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]\"]]], [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[89]00\"]], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\",\n[\"[5-9]\"]]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"51\\\\d{7}\", , , , \"511234567\"], , , [, , , , , , , , , [-1]]], ET:[, [, , \"(?:11|[2-59]\\\\d)\\\\d{7}\", , , , , , , [9], [7]], [, , \"(?:11(?:1(?:1[124]|2[2-57]|3[1-5]|5[5-8]|8[6-8])|2(?:13|3[6-8]|5[89]|7[05-9]|8[2-6])|3(?:2[01]|3[0-289]|4[1289]|7[1-4]|87)|4(?:1[69]|3[2-49]|4[0-3]|6[5-8])|5(?:1[578]|44|5[0-4])|6(?:1[78]|2[69]|39|4[5-7]|5[1-5]|6[0-59]|8[015-8]))|2(?:2(?:11[1-9]|22[0-7]|33\\\\d|44[1467]|66[1-68])|5(?:11[124-6]|33[2-8]|44[1467]|55[14]|66[1-3679]|77[124-79]|880))|3(?:3(?:11[0-46-8]|(?:22|55)[0-6]|33[0134689]|44[04]|66[01467])|4(?:44[0-8]|55[0-69]|66[0-3]|77[1-5]))|4(?:6(?:22[0-24-7]|33[1-5]|44[13-69]|55[14-689]|660|88[1-4])|7(?:(?:11|22)[1-9]|33[13-7]|44[13-6]|55[1-689]))|5(?:7(?:227|55[05]|(?:66|77)[14-8])|8(?:11[149]|22[013-79]|33[0-68]|44[013-8]|550|66[1-5]|77\\\\d)))\\\\d{4}\",\n, , , \"111112345\", , , , [7]], [, , \"9\\\\d{8}\", , , , \"911234567\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"ET\", 251, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[1-59]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], FI:[, [, , \"(?:[124-7]\\\\d|3[0-46-9])\\\\d{8}|[1-9]\\\\d{5,8}|[1-35689]\\\\d{4}\", , , , , , ,\n[5, 6, 7, 8, 9, 10]], [, , \"(?:1[3-79][1-8]|[235689][1-8]\\\\d)\\\\d{2,6}\", , , , \"131234567\", , , [5, 6, 7, 8, 9]], [, , \"(?:4[0-8]|50)\\\\d{4,8}\", , , , \"412345678\", , , [6, 7, 8, 9, 10]], [, , \"800\\\\d{4,6}\", , , , \"800123456\", , , [7, 8, 9]], [, , \"[67]00\\\\d{5,6}\", , , , \"600123456\", , , [8, 9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"FI\", 358, \"00|99(?:[01469]|5(?:[14]1|3[23]|5[59]|77|88|9[09]))\", \"0\", , , \"0\", , \"00\", , [[, \"(\\\\d{5})\", \"$1\", [\"75[12]\"], \"0$1\"],\n[, \"(\\\\d)(\\\\d{4,9})\", \"$1 $2\", [\"[2568][1-8]|3(?:0[1-9]|[1-9])|9\"], \"0$1\"], [, \"(\\\\d{6})\", \"$1\", [\"11\"]], [, \"(\\\\d{3})(\\\\d{3,7})\", \"$1 $2\", [\"(?:[12]0|7)0|[368]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{4,8})\", \"$1 $2\", [\"[12457]\"], \"0$1\"]], [[, \"(\\\\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]0|7)0|[368]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{4,8})\", \"$1 $2\", [\"[12457]\"], \"0$1\"]], [, , , , , , , , , [-1]], 1, \"1[03-79]|[2-9]\", [, , \"20(?:2[023]|9[89])\\\\d{1,6}|60[12]\\\\d{5,6}|(?:606|7(?:1|3\\\\d))\\\\d{7}|(?:[1-3]00|75[03-9])\\\\d{3,7}\"],\n[, , \"(?:10|[23][09])\\\\d{4,8}|60(?:[12]\\\\d{5,6}|6\\\\d{7})|7(?:(?:1|3\\\\d)\\\\d{7}|5[03-9]\\\\d{3,7})|20[2-59]\\\\d\\\\d\", , , , \"10112345\"], , , [, , , , , , , , , [-1]]], FJ:[, [, , \"45\\\\d{5}|(?:0800\\\\d|[235-9])\\\\d{6}\", , , , , , , [7, 11]], [, , \"603\\\\d{4}|(?:3[0-5]|6[25-7]|8[58])\\\\d{5}\", , , , \"3212345\", , , [7]], [, , \"(?:[279]\\\\d|45|5[01568]|8[034679])\\\\d{5}\", , , , \"7012345\", , , [7]], [, , \"0800\\\\d{7}\", , , , \"08001234567\", , , [11]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , ,\n, , , [-1]], [, , , , , , , , , [-1]], \"FJ\", 679, \"0(?:0|52)\", , , , , , \"00\", , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[235-9]|45\"]], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"0\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], FK:[, [, , \"[2-7]\\\\d{4}\", , , , , , , [5]], [, , \"[2-47]\\\\d{4}\", , , , \"31234\"], [, , \"[56]\\\\d{4}\", , , , \"51234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , ,\n, , , , , [-1]], [, , , , , , , , , [-1]], \"FK\", 500, \"00\", , , , , , , , , , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], FM:[, [, , \"[39]\\\\d{6}\", , , , , , , [7]], [, , \"(?:3[2357]0[1-9]|9[2-6]\\\\d\\\\d)\\\\d{3}\", , , , \"3201234\"], [, , \"(?:3[2357]0[1-9]|9[2-7]\\\\d\\\\d)\\\\d{3}\", , , , \"3501234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"FM\", 691,\n\"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[39]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], FO:[, [, , \"(?:[2-8]\\\\d|90)\\\\d{4}\", , , , , , , [6]], [, , \"(?:20|[34]\\\\d|8[19])\\\\d{4}\", , , , \"201234\"], [, , \"(?:[27][1-9]|5\\\\d)\\\\d{4}\", , , , \"211234\"], [, , \"80[257-9]\\\\d{3}\", , , , \"802123\"], [, , \"90(?:[13-5][15-7]|2[125-7]|99)\\\\d\\\\d\", , , , \"901123\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"(?:6[0-36]|88)\\\\d{4}\",\n, , , \"601234\"], \"FO\", 298, \"00\", , , , \"(10(?:01|[12]0|88))\", , , , [[, \"(\\\\d{6})\", \"$1\", [\"[2-9]\"], , \"$CC $1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], FR:[, [, , \"[1-9]\\\\d{8}\", , , , , , , [9]], [, , \"[1-5]\\\\d{8}\", , , , \"123456789\"], [, , \"700\\\\d{6}|(?:6\\\\d|7[3-9])\\\\d{7}\", , , , \"612345678\"], [, , \"80[0-5]\\\\d{6}\", , , , \"801234567\"], [, , \"8[129]\\\\d{7}\", , , , \"891123456\"], [, , \"884\\\\d{6}\", , , , \"884012345\"], [, ,\n, , , , , , , [-1]], [, , \"9\\\\d{8}\", , , , \"912345678\"], \"FR\", 33, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{4})\", \"$1\", [\"10\"]], [, \"(\\\\d{3})(\\\\d{3})\", \"$1 $2\", [\"1\"]], [, \"(\\\\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\"]], [[, \"(\\\\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\"]], [, , , , , , , , , [-1]], , ,\n[, , , , , , , , , [-1]], [, , \"80[6-9]\\\\d{6}\", , , , \"806123456\"], , , [, , , , , , , , , [-1]]], GA:[, [, , \"(?:0\\\\d|[2-7])\\\\d{6}\", , , , , , , [7, 8]], [, , \"01\\\\d{6}\", , , , \"01441234\", , , [8]], [, , \"(?:0[2-7]|[2-7])\\\\d{6}\", , , , \"06031234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"GA\", 241, \"00\", , , , , , , , [[, \"(\\\\d)(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[2-7]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\n\"$1 $2 $3 $4\", [\"0\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GB:[, [, , \"[1-357-9]\\\\d{9}|[18]\\\\d{8}|8\\\\d{6}\", , , , , , , [7, 9, 10], [4, 5, 6, 8]], [, , \"(?:1(?:(?:1(?:3[0-58]|4[0-5]|5[0-26-9]|6[0-4]|[78][0-49])|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[024-9]|2[3-9]|3[3-79]|4[1-689]|[58][02-9]|6[0-47-9]|7[013-9]|9\\\\d)\\\\d\\\\d|1(?:[0-7]\\\\d\\\\d|80[04589])))|2(?:0[01378]|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]))|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|7(?:(?:26(?:6[13-9]|7[0-7])|442\\\\d|50(?:2[0-3]|[3-68]2|76))\\\\d|6888[2-46-8]))\\\\d\\\\d\",\n, , , \"1212345678\", , , [9, 10], [4, 5, 6, 7, 8]], [, , \"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}\", , , , \"7400123456\", , , [10]], [, , \"80[08]\\\\d{7}|800\\\\d{6}|8001111\", , , , \"8001234567\"], [, , \"(?:8(?:4[2-5]|7[0-3])|9(?:[01]\\\\d|8[2-49]))\\\\d{7}|845464\\\\d\", , , , \"9012345678\", , , [7, 10]], [, , , , , , , , , [-1]], [, ,\n\"70\\\\d{8}\", , , , \"7012345678\", , , [10]], [, , \"56\\\\d{8}\", , , , \"5612345678\", , , [10]], \"GB\", 44, \"00\", \"0\", \" x\", , \"0\", , , , [[, \"(\\\\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)\"],\n\"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[024-9])\", \"[25]|7(?:0|6(?:[04-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\"]], , [, , \"76(?:0[0-2]|2[356]|4[0134]|5[49]|6[0-369]|77|81|9[39])\\\\d{6}\", , , , \"7640123456\", , , [10]], 1, , [, , , , , , , , , [-1]], [, , \"(?:3[0347]|55)\\\\d{8}\", , , , \"5512345678\", , , [10]], , , [, ,\n, , , , , , , [-1]]], GD:[, [, , \"(?:473|[58]\\\\d\\\\d|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"473(?:2(?:3[0-2]|69)|3(?:2[89]|86)|4(?:[06]8|3[5-9]|4[0-49]|5[5-79]|73|90)|63[68]|7(?:58|84)|800|938)\\\\d{4}\", , , , \"4732691234\", , , , [7]], [, , \"473(?:4(?:0[2-79]|1[04-9]|2[0-5]|58)|5(?:2[01]|3[3-8])|901)\\\\d{4}\", , , , \"4734031234\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\",\n, , , \"5002345678\"], [, , , , , , , , , [-1]], \"GD\", 1, \"011\", \"1\", , , \"1|([2-9]\\\\d{6})$\", \"473$1\", , , , , [, , , , , , , , , [-1]], , \"473\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GE:[, [, , \"(?:[3-57]\\\\d\\\\d|800)\\\\d{6}\", , , , , , , [9], [6, 7]], [, , \"(?:3(?:[256]\\\\d|4[124-9]|7[0-4])|4(?:1\\\\d|2[2-7]|3[1-79]|4[2-8]|7[239]|9[1-7]))\\\\d{6}\", , , , \"322123456\", , , , [6, 7]], [, , \"5(?:0(?:0[05]|55)\\\\d|1111|2222|3333|5200|75(?:00|7[78])|8(?:58[89]|888))\\\\d{4}|(?:5(?:[14]4|5[0157-9]|68|7[0147-9]|9[1-35-9])|790)\\\\d{6}\",\n, , , \"555123456\"], [, , \"800\\\\d{6}\", , , , \"800123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"706\\\\d{6}\", , , , \"706123456\"], \"GE\", 995, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\"]], , [, , , , , , , , ,\n[-1]], , , [, , \"706\\\\d{6}\"], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GF:[, [, , \"[56]94\\\\d{6}\", , , , , , , [9]], [, , \"594(?:[023]\\\\d|1[01]|4[03-9]|5[6-9]|6[0-3]|80|9[014])\\\\d{4}\", , , , \"594101234\"], [, , \"694(?:[0-249]\\\\d|3[0-48])\\\\d{4}\", , , , \"694201234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"GF\", 594, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\",\n[\"[56]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GG:[, [, , \"(?:1481|[357-9]\\\\d{3})\\\\d{6}|8\\\\d{6}(?:\\\\d{2})?\", , , , , , , [7, 9, 10], [6]], [, , \"1481[25-9]\\\\d{5}\", , , , \"1481256789\", , , [10], [6]], [, , \"7(?:(?:781|839)\\\\d|911[17])\\\\d{5}\", , , , \"7781123456\", , , [10]], [, , \"80[08]\\\\d{7}|800\\\\d{6}|8001111\", , , , \"8001234567\"], [, , \"(?:8(?:4[2-5]|7[0-3])|9(?:[01]\\\\d|8[0-3]))\\\\d{7}|845464\\\\d\", , , , \"9012345678\",\n, , [7, 10]], [, , , , , , , , , [-1]], [, , \"70\\\\d{8}\", , , , \"7012345678\", , , [10]], [, , \"56\\\\d{8}\", , , , \"5612345678\", , , [10]], \"GG\", 44, \"00\", \"0\", , , \"0|([25-9]\\\\d{5})$\", \"1481$1\", , , , , [, , \"76(?:0[0-2]|2[356]|4[0134]|5[49]|6[0-369]|77|81|9[39])\\\\d{6}\", , , , \"7640123456\", , , [10]], , , [, , , , , , , , , [-1]], [, , \"(?:3[0347]|55)\\\\d{8}\", , , , \"5512345678\", , , [10]], , , [, , , , , , , , , [-1]]], GH:[, [, , \"(?:[235]\\\\d{3}|800)\\\\d{5}\", , , , , , , [8, 9], [7]], [, , \"3(?:[167]2[0-6]|22[0-5]|32[0-3]|4(?:2[013-9]|3[01])|52[0-7]|82[0-2])\\\\d{5}|3(?:[0-8]8|9[28])0\\\\d{5}|3(?:0[237]|[1-9]7)\\\\d{6}\",\n, , , \"302345678\", , , [9], [7]], [, , \"56[01]\\\\d{6}|(?:2[0346-8]|5[0457])\\\\d{7}\", , , , \"231234567\", , , [9]], [, , \"800\\\\d{5}\", , , , \"80012345\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"GH\", 233, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[237]|80\"]], [, \"(\\\\d{3})(\\\\d{5})\", \"$1 $2\", [\"8\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[235]\"], \"0$1\"]], [[, \"(\\\\d{3})(\\\\d{5})\", \"$1 $2\", [\"8\"], \"0$1\"],\n[, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[235]\"], \"0$1\"]], [, , , , , , , , , [-1]], , , [, , \"800\\\\d{5}\", , , , , , , [8]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GI:[, [, , \"(?:[25]\\\\d\\\\d|629)\\\\d{5}\", , , , , , , [8]], [, , \"2190[0-2]\\\\d{3}|2(?:00\\\\d|16[24-7]|2(?:2[2457]|50))\\\\d{4}\", , , , \"20012345\"], [, , \"(?:5[46-8]\\\\d|629)\\\\d{5}\", , , , \"57123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , ,\n, [-1]], \"GI\", 350, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{5})\", \"$1 $2\", [\"2\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GL:[, [, , \"(?:19|[2-689]\\\\d)\\\\d{4}\", , , , , , , [6]], [, , \"(?:19|3[1-7]|6[14689]|8[14-79]|9\\\\d)\\\\d{4}\", , , , \"321000\"], [, , \"(?:[25][1-9]|4[2-9])\\\\d{4}\", , , , \"221234\"], [, , \"80\\\\d{4}\", , , , \"801234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"3[89]\\\\d{4}\",\n, , , \"381234\"], \"GL\", 299, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3\", [\"19|[2-689]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GM:[, [, , \"[2-9]\\\\d{6}\", , , , , , , [7]], [, , \"(?:4(?:[23]\\\\d\\\\d|4(?:1[024679]|[6-9]\\\\d))|5(?:54[0-7]|6[67]\\\\d|7(?:1[04]|2[035]|3[58]|48))|8\\\\d{3})\\\\d{3}\", , , , \"5661234\"], [, , \"(?:[23679]\\\\d|5[0-3])\\\\d{5}\", , , , \"3012345\"], [, , , , , , , , , [-1]], [, , , , , , , , ,\n[-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"GM\", 220, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[2-9]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GN:[, [, , \"(?:30|6\\\\d\\\\d|722)\\\\d{6}\", , , , , , , [8, 9]], [, , \"30(?:24|3[12]|4[1-35-7]|5[13]|6[189]|[78]1|9[1478])\\\\d{4}\", , , , \"30241234\", , , [8]], [, , \"6[02356]\\\\d{7}\", , , , \"601123456\", , , [9]], [, , , , , , , , ,\n[-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"722\\\\d{6}\", , , , \"722123456\", , , [9]], \"GN\", 224, \"00\", , , , , , , , [[, \"(\\\\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]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GP:[, [, , \"(?:590|69\\\\d)\\\\d{6}\", , , , , , , [9]], [, , \"590(?:0[1-68]|1[0-2]|2[0-68]|3[1289]|4[0-24-9]|5[3-579]|6[0189]|7[08]|8[0-689]|9\\\\d)\\\\d{4}\",\n, , , \"590201234\"], [, , \"69(?:0\\\\d\\\\d|1(?:2[29]|3[0-5]))\\\\d{4}\", , , , \"690001234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"GP\", 590, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[56]\"], \"0$1\"]], , [, , , , , , , , , [-1]], 1, , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GQ:[, [, , \"222\\\\d{6}|(?:3\\\\d|55|[89]0)\\\\d{7}\", , , , , ,\n, [9]], [, , \"33[0-24-9]\\\\d[46]\\\\d{4}|3(?:33|5\\\\d)\\\\d[7-9]\\\\d{4}\", , , , \"333091234\"], [, , \"(?:222|55[015])\\\\d{6}\", , , , \"222123456\"], [, , \"80\\\\d[1-9]\\\\d{5}\", , , , \"800123456\"], [, , \"90\\\\d[1-9]\\\\d{5}\", , , , \"900123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"GQ\", 240, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[235]\"]], [, \"(\\\\d{3})(\\\\d{6})\", \"$1 $2\", [\"[89]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , ,\n, , , , , , [-1]], , , [, , , , , , , , , [-1]]], GR:[, [, , \"(?:[268]\\\\d|[79]0)\\\\d{8}\", , , , , , , [10]], [, , \"2(?:1\\\\d\\\\d|2(?:2[1-46-9]|[36][1-8]|4[1-7]|5[1-4]|7[1-5]|[89][1-9])|3(?:1\\\\d|2[1-57]|[35][1-3]|4[13]|7[1-7]|8[124-6]|9[1-79])|4(?:1\\\\d|2[1-8]|3[1-4]|4[13-5]|6[1-578]|9[1-5])|5(?:1\\\\d|[29][1-4]|3[1-5]|4[124]|5[1-6])|6(?:1\\\\d|[269][1-6]|3[1245]|4[1-7]|5[13-9]|7[14]|8[1-5])|7(?:1\\\\d|2[1-5]|3[1-6]|4[1-7]|5[1-57]|6[135]|9[125-7])|8(?:1\\\\d|2[1-5]|[34][1-4]|9[1-57]))\\\\d{6}\", , , , \"2123456789\"],\n[, , \"6(?:8[57-9]|9\\\\d)\\\\d{7}\", , , , \"6912345678\"], [, , \"800\\\\d{7}\", , , , \"8001234567\"], [, , \"90[19]\\\\d{7}\", , , , \"9091234567\"], [, , \"8(?:0[16]|12|25)\\\\d{7}\", , , , \"8011234567\"], [, , \"70(?:0[3-8]0|707)\\\\d{5}\", , , , \"7003000123\"], [, , , , , , , , , [-1]], \"GR\", 30, \"00\", , , , , , , , [[, \"(\\\\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])\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[2689]\"]]],\n, [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GT:[, [, , \"(?:1\\\\d{3}|[2-7])\\\\d{7}\", , , , , , , [8, 11]], [, , \"[267][2-9]\\\\d{6}\", , , , \"22456789\", , , [8]], [, , \"[3-5]\\\\d{7}\", , , , \"51234567\", , , [8]], [, , \"18[01]\\\\d{8}\", , , , \"18001112222\", , , [11]], [, , \"19\\\\d{9}\", , , , \"19001112222\", , , [11]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"GT\", 502, \"00\", , , , , , , , [[, \"(\\\\d{4})(\\\\d{4})\",\n\"$1 $2\", [\"[2-7]\"]], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"1\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GU:[, [, , \"(?:[58]\\\\d\\\\d|671|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"671(?:3(?:00|3[39]|4[349]|55|6[26])|4(?:00|56|7[1-9]|8[0236-9])|5(?:55|6[2-5]|88)|6(?:3[2-578]|4[24-9]|5[34]|78|8[235-9])|7(?:[0479]7|2[0167]|3[45]|8[7-9])|8(?:[2-57-9]8|6[48])|9(?:2[29]|6[79]|7[1279]|8[7-9]|9[78]))\\\\d{4}\", , , , \"6713001234\",\n, , , [7]], [, , \"671(?:3(?:00|3[39]|4[349]|55|6[26])|4(?:00|56|7[1-9]|8[0236-9])|5(?:55|6[2-5]|88)|6(?:3[2-578]|4[24-9]|5[34]|78|8[235-9])|7(?:[0479]7|2[0167]|3[45]|8[7-9])|8(?:[2-57-9]8|6[48])|9(?:2[29]|6[79]|7[1279]|8[7-9]|9[78]))\\\\d{4}\", , , , \"6713001234\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]],\n\"GU\", 1, \"011\", \"1\", , , \"1|([3-9]\\\\d{6})$\", \"671$1\", , 1, , , [, , , , , , , , , [-1]], , \"671\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GW:[, [, , \"[49]\\\\d{8}|4\\\\d{6}\", , , , , , , [7, 9]], [, , \"443\\\\d{6}\", , , , \"443201234\", , , [9]], [, , \"9(?:5\\\\d|6[569]|77)\\\\d{6}\", , , , \"955012345\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"40\\\\d{5}\", , , , \"4012345\", , , [7]], \"GW\", 245,\n\"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"40\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[49]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GY:[, [, , \"(?:862\\\\d|9008)\\\\d{3}|(?:[2-46]\\\\d|77)\\\\d{5}\", , , , , , , [7]], [, , \"(?:2(?:1[6-9]|2[0-35-9]|3[1-4]|5[3-9]|6\\\\d|7[0-24-79])|3(?:2[25-9]|3\\\\d)|4(?:4[0-24]|5[56])|77[1-57])\\\\d{4}\", , , , \"2201234\"], [, , \"6\\\\d{6}\", , , , \"6091234\"], [, , \"(?:289|862)\\\\d{4}\",\n, , , \"2891234\"], [, , \"9008\\\\d{3}\", , , , \"9008123\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"GY\", 592, \"001\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[2-46-9]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], HK:[, [, , \"8[0-46-9]\\\\d{6,7}|9\\\\d{4}(?:\\\\d(?:\\\\d(?:\\\\d{4})?)?)?|(?:[235-79]\\\\d|46)\\\\d{6}\", , , , , , , [5, 6, 7, 8, 9, 11]], [, , \"(?:384[0-24]|58(?:0[1-8]|1[2-9]))\\\\d{4}|(?:2(?:[13-8]\\\\d|2[013-9]|9[0-24-9])|3(?:[1569][0-24-9]|4[0-246-9]|7[0-24-69]|89))\\\\d{5}\",\n, , , \"21234567\", , , [8]], [, , \"(?:46(?:0[0-6]|1[0-2]|4[0-57-9])|5730|(?:626|848)[01]|707[1-5]|929[03-9])\\\\d{4}|(?:5(?:[1-59][0-46-9]|6[0-4689]|7[0-2469])|6(?:0[1-9]|[13-59]\\\\d|[268][0-57-9]|7[0-79])|9(?:0[1-9]|1[02-9]|[2358][0-8]|[467]\\\\d))\\\\d{5}\", , , , \"51234567\", , , [8]], [, , \"800\\\\d{6}\", , , , \"800123456\", , , [9]], [, , \"900(?:[0-24-9]\\\\d{7}|3\\\\d{1,4})\", , , , \"90012345678\", , , [5, 6, 7, 8, 11]], [, , , , , , , , , [-1]], [, , \"8(?:1[0-4679]\\\\d|2(?:[0-36]\\\\d|7[0-4])|3(?:[034]\\\\d|2[09]|70))\\\\d{4}\",\n, , , \"81123456\", , , [8]], [, , , , , , , , , [-1]], \"HK\", 852, \"00(?:30|5[09]|[126-9]?)\", , , , , , \"00\", , [[, \"(\\\\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\"]]], , [, , \"7(?:1(?:0[0-38]|1[0-3679]|3[013]|69|9[136])|2(?:[02389]\\\\d|1[18]|7[27-9])|3(?:[0-38]\\\\d|7[0-369]|9[2357-9])|47\\\\d|5(?:[178]\\\\d|5[0-5])|6(?:0[0-7]|2[236-9]|[35]\\\\d)|7(?:[27]\\\\d|8[7-9])|8(?:[23689]\\\\d|7[1-9])|9(?:[025]\\\\d|6[0-246-8]|7[0-36-9]|8[238]))\\\\d{4}\",\n, , , \"71123456\", , , [8]], , , [, , , , , , , , , [-1]], [, , \"30(?:0[1-9]|[15-7]\\\\d|2[047]|89)\\\\d{4}\", , , , \"30161234\", , , [8]], , , [, , , , , , , , , [-1]]], HN:[, [, , \"8\\\\d{10}|[237-9]\\\\d{7}\", , , , , , , [8, 11]], [, , \"2(?:2(?:0[019]|1[1-36]|[23]\\\\d|4[04-6]|5[57]|6[24]|7[0135689]|8[01346-9]|9[0-2])|4(?:07|2[3-59]|3[13-689]|4[0-68]|5[1-35])|5(?:0[78]|16|4[03-5]|5\\\\d|6[14-6]|74|80)|6(?:[056]\\\\d|17|2[07]|3[04]|4[0-378]|[78][0-8]|9[01])|7(?:6[46-9]|7[02-9]|8[034]|91)|8(?:79|8[0-357-9]|9[1-57-9]))\\\\d{4}\",\n, , , \"22123456\", , , [8]], [, , \"[37-9]\\\\d{7}\", , , , \"91234567\", , , [8]], [, , \"8002\\\\d{7}\", , , , \"80021234567\", , , [11]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"HN\", 504, \"00\", , , , , , , , [[, \"(\\\\d{4})(\\\\d{4})\", \"$1-$2\", [\"[237-9]\"]], [, \"(\\\\d{3})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"8\"]]], [[, \"(\\\\d{4})(\\\\d{4})\", \"$1-$2\", [\"[237-9]\"]]], [, , , , , , , , , [-1]], , , [, , \"8002\\\\d{7}\", , , , , , , [11]], [, , , , , , , , , [-1]],\n, , [, , , , , , , , , [-1]]], HR:[, [, , \"(?:[24-69]\\\\d|3[0-79])\\\\d{7}|80\\\\d{5,7}|[1-79]\\\\d{7}|6\\\\d{5,6}\", , , , , , , [6, 7, 8, 9]], [, , \"1\\\\d{7}|(?:2[0-3]|3[1-5]|4[02-47-9]|5[1-3])\\\\d{6,7}\", , , , \"12345678\", , , [8, 9], [6, 7]], [, , \"9(?:751\\\\d{5}|8\\\\d{6,7})|9(?:01|[1259]\\\\d|7[0679])\\\\d{6}\", , , , \"921234567\", , , [8, 9]], [, , \"80[01]\\\\d{4,6}\", , , , \"800123456\", , , [7, 8, 9]], [, , \"6[01459]\\\\d{6}|6[01]\\\\d{4,5}\", , , , \"611234\", , , [6, 7, 8]], [, , , , , , , , , [-1]], [, , \"7[45]\\\\d{6}\",\n, , , \"74123456\", , , [8]], [, , , , , , , , , [-1]], \"HR\", 385, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\",\n[\"8\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"62\\\\d{6,7}|72\\\\d{6}\", , , , \"62123456\", , , [8, 9]], , , [, , , , , , , , , [-1]]], HT:[, [, , \"[2-489]\\\\d{7}\", , , , , , , [8]], [, , \"2(?:2\\\\d|5[1-5]|81|9[149])\\\\d{5}\", , , , \"22453300\"], [, , \"[34]\\\\d{7}\", , , , \"34101234\"], [, , \"8\\\\d{7}\", , , , \"80012345\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"9(?:[67][0-4]|8[0-3589]|9\\\\d)\\\\d{5}\", , , , \"98901234\"], \"HT\", 509, \"00\",\n, , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{4})\", \"$1 $2 $3\", [\"[2-489]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], HU:[, [, , \"[2357]\\\\d{8}|[1-9]\\\\d{7}\", , , , , , , [8, 9], [6, 7]], [, , \"(?:1\\\\d|[27][2-9]|3[2-7]|4[24-9]|5[2-79]|6[23689]|8[2-57-9]|9[2-69])\\\\d{6}\", , , , \"12345678\", , , [8], [6, 7]], [, , \"(?:[257]0|3[01])\\\\d{7}\", , , , \"201234567\", , , [9]], [, , \"[48]0\\\\d{6}\", , , , \"80123456\", , , [8]], [, , \"9[01]\\\\d{6}\",\n, , , \"90123456\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"21\\\\d{7}\", , , , \"211234567\", , , [9]], \"HU\", 36, \"00\", \"06\", , , \"06\", , , , [[, \"(\\\\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-57-9]\"], \"06 $1\"]], , [, , , , , , , , , [-1]], , , [, , \"[48]0\\\\d{6}\", , , , , , , [8]], [, , \"38\\\\d{7}\", , , , \"381234567\",\n, , [9]], , , [, , , , , , , , , [-1]]], ID:[, [, , \"(?:(?:007803|8\\\\d{4})\\\\d|[1-36])\\\\d{6}|[1-9]\\\\d{8,10}|[2-9]\\\\d{7}\", , , , , , , [7, 8, 9, 10, 11, 12, 13], [5, 6]], [, , \"2[124]\\\\d{7,8}|619\\\\d{8}|2(?:1(?:14|500)|2\\\\d{3})\\\\d{3}|61\\\\d{5,8}|(?:2(?:[35][1-4]|6[0-8]|7[1-6]|8\\\\d|9[1-8])|3(?:1|[25][1-8]|3[1-68]|4[1-3]|6[1-3568]|7[0-469]|8\\\\d)|4(?:0[1-589]|1[01347-9]|2[0-36-8]|3[0-24-68]|43|5[1-378]|6[1-5]|7[134]|8[1245])|5(?:1[1-35-9]|2[25-8]|3[124-9]|4[1-3589]|5[1-46]|6[1-8])|6(?:[25]\\\\d|3[1-69]|4[1-6])|7(?:02|[125][1-9]|[36]\\\\d|4[1-8]|7[0-36-9])|9(?:0[12]|1[013-8]|2[0-479]|5[125-8]|6[23679]|7[159]|8[01346]))\\\\d{5,8}\",\n, , , \"218350123\", , , [7, 8, 9, 10, 11], [5, 6]], [, , \"8[1-35-9]\\\\d{7,10}\", , , , \"812345678\", , , [9, 10, 11, 12]], [, , \"007803\\\\d{7}|(?:177\\\\d|800)\\\\d{5,7}\", , , , \"8001234567\", , , [8, 9, 10, 11, 13]], [, , \"809\\\\d{7}\", , , , \"8091234567\", , , [10]], [, , \"804\\\\d{7}\", , , , \"8041234567\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"ID\", 62, \"00[189]\", \"0\", , , \"0\", , , , [[, \"(\\\\d)(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"15\"]], [, \"(\\\\d{2})(\\\\d{5,9})\", \"$1 $2\", [\"2[124]|[36]1\"],\n\"(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\"], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3 $4\", [\"0\"]]], [[, \"(\\\\d)(\\\\d{3})(\\\\d{3})\",\n\"$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\"]], [, , ,\n, , , , , , [-1]], , , [, , \"(?:007803\\\\d|8071)\\\\d{6}\", , , , , , , [10, 13]], [, , \"(?:1500|8071\\\\d{3})\\\\d{3}\", , , , \"8071123456\", , , [7, 10]], , , [, , , , , , , , , [-1]]], IE:[, [, , \"(?:1\\\\d|[2569])\\\\d{6,8}|4\\\\d{6,9}|7\\\\d{8}|8\\\\d{8,9}\", , , , , , , [7, 8, 9, 10], [5, 6]], [, , \"(?:1\\\\d|21)\\\\d{6,7}|(?:2[24-9]|4(?:0[24]|5\\\\d|7)|5(?:0[45]|1\\\\d|8)|6(?:1\\\\d|[237-9])|9(?:1\\\\d|[35-9]))\\\\d{5}|(?:23|4(?:[1-469]|8[0-46-9])|5[23679]|6[4-6]|7[14]|9[04])\\\\d{7}\", , , , \"2212345\", , , , [5, 6]], [, , \"8(?:22|[35-9]\\\\d)\\\\d{6}\",\n, , , \"850123456\", , , [9]], [, , \"1800\\\\d{6}\", , , , \"1800123456\", , , [10]], [, , \"15(?:1[2-8]|[2-8]0|9[089])\\\\d{6}\", , , , \"1520123456\", , , [10]], [, , \"18[59]0\\\\d{6}\", , , , \"1850123456\", , , [10]], [, , \"700\\\\d{6}\", , , , \"700123456\", , , [9]], [, , \"76\\\\d{7}\", , , , \"761234567\", , , [9]], \"IE\", 353, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\",\n[\"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)(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3 $4\", [\"8\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"4\"], \"(0$1)\"]], , [, , , , , , , , , [-1]], , , [, , \"18[59]0\\\\d{6}\",\n, , , , , , [10]], [, , \"818\\\\d{6}\", , , , \"818123456\", , , [9]], , , [, , \"8[35-9]5\\\\d{7}\", , , , \"8551234567\", , , [10]]], IL:[, [, , \"1\\\\d{6}(?:\\\\d{3,5})?|[57]\\\\d{8}|[1-489]\\\\d{7}\", , , , , , , [7, 8, 9, 10, 11, 12]], [, , \"153\\\\d{8,9}|[2-489]\\\\d{7}\", , , , \"21234567\", , , [8, 11, 12], [7]], [, , \"5(?:(?:[0-389][2-9]|4[1-9]|6\\\\d)\\\\d|5(?:01|2[2-6]|3[23]|4[45]|5[05689]|6[6-8]|7[0-267]|8[7-9]|9[1-9]))\\\\d{5}\", , , , \"502345678\", , , [9]], [, , \"1(?:255|80[019]\\\\d{3})\\\\d{3}\", , , , \"1800123456\", ,\n, [7, 10]], [, , \"1212\\\\d{4}|1(?:200|9(?:0[01]|19))\\\\d{6}\", , , , \"1919123456\", , , [8, 10]], [, , \"1700\\\\d{6}\", , , , \"1700123456\", , , [10]], [, , , , , , , , , [-1]], [, , \"78(?:33|55|77|81)\\\\d{5}|7(?:18|2[23]|3[237]|47|6[58]|7\\\\d|82|9[235-9])\\\\d{6}\", , , , \"771234567\", , , [9]], \"IL\", 972, \"0(?:0|1[2-9])\", \"0\", , , \"0\", , , , [[, \"(\\\\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})\",\n\"$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\"]]], , [, , , , , , , , , [-1]], , , [, , \"1700\\\\d{6}\", , , , , , , [10]], [, , \"1599\\\\d{6}\", , , , \"1599123456\", , , [10]], , , [, , \"151\\\\d{8,9}\", , , , \"15112340000\", , , [11, 12]]], IM:[, [, , \"1624\\\\d{6}|(?:[3578]\\\\d|90)\\\\d{8}\", , , , , , , [10],\n[6]], [, , \"1624[5-8]\\\\d{5}\", , , , \"1624756789\", , , , [6]], [, , \"76245[06]\\\\d{4}|7(?:4576|[59]24\\\\d|624[0-4689])\\\\d{5}\", , , , \"7924123456\"], [, , \"808162\\\\d{4}\", , , , \"8081624567\"], [, , \"8(?:440[49]06|72299\\\\d)\\\\d{3}|(?:8(?:45|70)|90[0167])624\\\\d{4}\", , , , \"9016247890\"], [, , , , , , , , , [-1]], [, , \"70\\\\d{8}\", , , , \"7012345678\"], [, , \"56\\\\d{8}\", , , , \"5612345678\"], \"IM\", 44, \"00\", \"0\", , , \"0|([5-8]\\\\d{5})$\", \"1624$1\", , , , , [, , , , , , , , , [-1]], , \"74576|(?:16|7[56])24\", [, ,\n, , , , , , , [-1]], [, , \"3440[49]06\\\\d{3}|(?:3(?:08162|3\\\\d{4}|45624|7(?:0624|2299))|55\\\\d{4})\\\\d{4}\", , , , \"5512345678\"], , , [, , , , , , , , , [-1]]], IN:[, [, , \"(?:00800|[2-9]\\\\d\\\\d)\\\\d{7}|1\\\\d{7,12}\", , , , , , , [8, 9, 10, 11, 12, 13], [6, 7]], [, , \"782[0-6][2-7]\\\\d{5}|(?:170[24]|2(?:80[13468]|90\\\\d)|380\\\\d|4(?:20[24]|72[2-8])|552[1-7])\\\\d{6}|(?:342|674|788)(?:[0189][2-7]|[2-7]\\\\d)\\\\d{5}|(?:11|2[02]|33|4[04]|79|80)[2-7]\\\\d{7}|(?:1(?:2[0-249]|3[0-25]|4[145]|[59][14]|6[014]|7[1257]|8[01346])|2(?:1[257]|3[013]|4[01]|5[0137]|6[0158]|78|8[1568]|9[14])|3(?:26|4[13]|5[34]|6[01489]|7[02-46]|8[159])|4(?:1[36]|2[1-47]|3[15]|5[12]|6[0-26-9]|7[014-9]|8[013-57]|9[014-7])|5(?:1[025]|22|[36][25]|4[28]|[578]1|9[15])|6(?:12|[2-47]1|5[17]|6[13]|80)|7(?:12|2[14]|3[134]|4[47]|5[15]|[67]1)|8(?:16|2[014]|3[126]|6[136]|7[078]|8[34]|91))[2-7]\\\\d{6}|(?:1(?:2[35-8]|3[346-9]|4[236-9]|[59][0235-9]|6[235-9]|7[34689]|8[257-9])|2(?:1[134689]|3[24-8]|4[2-8]|5[25689]|6[2-4679]|7[13-79]|8[2-479]|9[235-9])|3(?:01|1[79]|2[1-5]|4[5-8]|5[125689]|6[235-7]|7[157-9]|8[2-46-8])|4(?:1[14578]|2[5689]|3[2-467]|5[4-7]|6[35]|73|8[2689]|9[2389])|5(?:[16][146-9]|2[14-8]|3[1346]|4[14-69]|5[46]|7[2-4]|8[2-8]|9[246])|6(?:1[1358]|2[2457]|3[2-4]|4[235-7]|5[2-689]|6[24578]|7[235689]|8[1-6])|7(?:1[013-9]|2[0235-9]|3[2679]|4[1-35689]|5[2-46-9]|[67][02-9]|8[013-7]|9[0189])|8(?:1[1357-9]|2[235-8]|3[03-57-9]|4[0-24-9]|5\\\\d|6[2457-9]|7[1-6]|8[1256]|9[2-4]))\\\\d[2-7]\\\\d{5}\",\n, , , \"7410410123\", , , [10], [6, 7, 8]], [, , \"(?:6(?:1279|350[0-6])|7(?:3(?:1(?:11|7[02-8])|411)|4[47](?:11|7[02-8])|5111|700[02-9]|88(?:11|7[02-9])|9(?:313|79[07-9]))|8(?:079[04-9]|(?:16|2[014]|3[126]|6[136]|7[78]|8[34]|91)7[02-8]))\\\\d{5}|7(?:28[6-8]|3(?:2[0-49]|9[2-5])|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])[089]\\\\d{5}|(?:6(?:0(?:0[0-3569]|26|33)|2(?:[06]\\\\d|3[02589]|8[0-479]|9[0-79])|3(?:0[0-79]|5[1-9]|6[0-4679]|7[0-24-9]|[89]\\\\d)|9(?:0[019]|13))|7(?:0\\\\d\\\\d|19[0-5]|2(?:[0235-79]\\\\d|[14][017-9]|8[0-59])|3(?:[05-8]\\\\d|1[089]|2[5-8]|3[017-9]|4[07-9]|9[016-9])|4(?:0\\\\d|1[015-9]|[29][89]|39|[47][089]|8[389])|5(?:[0346-8]\\\\d|1[07-9]|2[04-9]|5[017-9]|9[7-9])|6(?:0[0-47]|1[0-257-9]|2[0-4]|3[19]|5[4589]|[6-9]\\\\d)|7(?:0[289]|[1-9]\\\\d)|8(?:[0-79]\\\\d|8[089])|9(?:[089]\\\\d|7[02-8]))|8(?:0(?:[01589]\\\\d|6[67]|7[02-8])|1(?:[0-57-9]\\\\d|6[089])|2(?:[014][089]|[235-9]\\\\d)|3(?:[03-57-9]\\\\d|[126][089])|[45]\\\\d\\\\d|6(?:[02457-9]\\\\d|[136][089])|7(?:0[07-9]|[1-69]\\\\d|[78][089])|8(?:[0-25-9]\\\\d|3[089]|4[0489])|9(?:[02-9]\\\\d|1[0289]))|9\\\\d{3})\\\\d{6}\",\n, , , \"8123456789\", , , [10]], [, , \"00800\\\\d{7}|1(?:600\\\\d{6}|80(?:0\\\\d{4,9}|3\\\\d{9}))\", , , , \"1800123456\"], [, , \"186[12]\\\\d{9}\", , , , \"1861123456789\", , , [13]], [, , \"1860\\\\d{7}\", , , , \"18603451234\", , , [11]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"IN\", 91, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{7})\", \"$1\", [\"575\"]], [, \"(\\\\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)\"], , , 1], [, \"(\\\\d{4})(\\\\d{4,5})\",\n\"$1 $2\", [\"180\", \"1800\"], , , 1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"140\"], , , 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]\",\n\"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(?:[2-4]1|5[17]|6[13]|7[14]|80)|7(?:12|(?: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|(?:55|61)2|7(?: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])|[2-4]1|5[17]|6[13]|7[14]|80)|7(?:12|(?: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]|(?:1(?:29|60|8[06])|261|552|788[01])[2-7]|(?:74[47]|8(?:16|2[014]|3[126]|6[136]|7[78]|83))(?:[2-6]|7[19])\"],\n\"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-8])|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-8])|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(?:1[1358]|2(?:[2457]|84|95)|3(?:[2-4]|55)|[4-8])|7(?:1(?:[013-8]|9[6-9])|3179)|807(?:1|9[1-3])|(?:1552|7(?: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]\"],\n\"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)\"], , , 1], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})(\\\\d{3})\", \"$1 $2 $3 $4\", [\"0\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3 $4\", [\"18\"], , , 1]], [[, \"(\\\\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)\"], , , 1], [, \"(\\\\d{4})(\\\\d{4,5})\", \"$1 $2\", [\"180\", \"1800\"],\n, , 1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"140\"], , , 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]\",\n\"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(?:[2-4]1|5[17]|6[13]|7[14]|80)|7(?:12|(?: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|(?:55|61)2|7(?: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])|[2-4]1|5[17]|6[13]|7[14]|80)|7(?:12|(?: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]|(?:1(?:29|60|8[06])|261|552|788[01])[2-7]|(?:74[47]|8(?:16|2[014]|3[126]|6[136]|7[78]|83))(?:[2-6]|7[19])\"],\n\"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-8])|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-8])|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(?:1[1358]|2(?:[2457]|84|95)|3(?:[2-4]|55)|[4-8])|7(?:1(?:[013-8]|9[6-9])|3179)|807(?:1|9[1-3])|(?:1552|7(?: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]\"],\n\"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)\"], , , 1], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3 $4\", [\"18\"], , , 1]], [, , , , , , , , , [-1]], , , [, , \"1(?:600\\\\d{6}|800\\\\d{4,9})|(?:00800|18(?:03\\\\d\\\\d|6(?:0|[12]\\\\d\\\\d)))\\\\d{7}\"], [, , \"140\\\\d{7}\", , , , \"1409305260\", , , [10]], , , [, , , , , , , , , [-1]]], IO:[, [, , \"3\\\\d{6}\", , , , , , , [7]], [, , \"37\\\\d{5}\", , , , \"3709100\"], [,\n, \"38\\\\d{5}\", , , , \"3801234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"IO\", 246, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"3\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], IQ:[, [, , \"(?:1|7\\\\d\\\\d)\\\\d{7}|[2-6]\\\\d{7,8}\", , , , , , , [8, 9, 10], [6, 7]], [, , \"1\\\\d{7}|(?:2[13-5]|3[02367]|4[023]|5[03]|6[026])\\\\d{6,7}\", , , ,\n\"12345678\", , , [8, 9], [6, 7]], [, , \"7[3-9]\\\\d{8}\", , , , \"7912345678\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"IQ\", 964, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , ,\n, , , [-1]], , , [, , , , , , , , , [-1]]], IR:[, [, , \"[1-9]\\\\d{9}|(?:[1-8]\\\\d\\\\d|9)\\\\d{3,4}\", , , , , , , [4, 5, 6, 7, 10], [8]], [, , \"(?:1[137]|2[13-68]|3[1458]|4[145]|5[1468]|6[16]|7[1467]|8[13467])(?:[03-57]\\\\d{7}|[16]\\\\d{3}(?:\\\\d{4})?|[289]\\\\d{3}(?:\\\\d(?:\\\\d{3})?)?)|94(?:000[09]|2(?:121|[2689]0\\\\d)|30[0-2]\\\\d|4(?:111|40\\\\d))\\\\d{4}\", , , , \"2123456789\", , , [6, 7, 10], [4, 5, 8]], [, , \"9(?:(?:0(?:[1-35]\\\\d|44)|(?:[13]\\\\d|2[0-2])\\\\d)\\\\d|9(?:(?:[0-2]\\\\d|44)\\\\d|5[15]0|8(?:1\\\\d|88)|9(?:0[013]|1[0134]|21|77|9[6-9])))\\\\d{5}\",\n, , , \"9123456789\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"993\\\\d{7}\", , , , \"9932123456\", , , [10]], \"IR\", 98, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\"]],\n, [, , , , , , , , , [-1]], , , [, , \"9(?:4440\\\\d{5}|6(?:0[12]|2[16-8]|3(?:08|[14]5|[23]|66)|4(?:0|80)|5[01]|6[89]|86|9[19]))\", , , , , , , [4, 5, 10]], [, , \"96(?:0[12]|2[16-8]|3(?:08|[14]5|[23]|66)|4(?:0|80)|5[01]|6[89]|86|9[19])\", , , , \"9601\", , , [4, 5]], , , [, , , , , , , , , [-1]]], IS:[, [, , \"(?:38\\\\d|[4-9])\\\\d{6}\", , , , , , , [7, 9]], [, , \"(?:4(?:1[0-24-69]|2[0-7]|[37][0-8]|4[0-245]|5[0-68]|6\\\\d|8[0-36-8])|5(?:05|[156]\\\\d|2[02578]|3[0-579]|4[03-7]|7[0-2578]|8[0-35-9]|9[013-689])|87[23])\\\\d{4}\",\n, , , \"4101234\", , , [7]], [, , \"(?:38[589]\\\\d\\\\d|6(?:1[1-8]|2[0-6]|3[027-9]|4[014679]|5[0159]|6[0-69]|70|8[06-8]|9\\\\d)|7(?:5[057]|[6-8]\\\\d|9[0-3])|8(?:2[0-59]|[3469]\\\\d|5[1-9]|8[28]))\\\\d{4}\", , , , \"6111234\"], [, , \"800\\\\d{4}\", , , , \"8001234\", , , [7]], [, , \"90\\\\d{5}\", , , , \"9011234\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"49\\\\d{5}\", , , , \"4921234\", , , [7]], \"IS\", 354, \"00|1(?:0(?:01|[12]0)|100)\", , , , , , \"00\", , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[4-9]\"]], [,\n\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"3\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"809\\\\d{4}\", , , , \"8091234\", , , [7]], , , [, , \"(?:689|8(?:7[0189]|80)|95[48])\\\\d{4}\", , , , \"6891234\", , , [7]]], IT:[, [, , \"0\\\\d{5,10}|3[0-8]\\\\d{7,10}|55\\\\d{8}|8\\\\d{5}(?:\\\\d{2,4})?|(?:1\\\\d|39)\\\\d{7,8}\", , , , , , , [6, 7, 8, 9, 10, 11, 12]], [, , \"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}\",\n, , , \"0212345678\", , , [6, 7, 8, 9, 10, 11]], [, , \"3[1-9]\\\\d{8}|3[2-9]\\\\d{7}\", , , , \"3123456789\", , , [9, 10]], [, , \"80(?:0\\\\d{3}|3)\\\\d{3}\", , , , \"800123456\", , , [6, 9]], [, , \"(?:0878\\\\d\\\\d|89(?:2|4[5-9]\\\\d))\\\\d{3}|89[45][0-4]\\\\d\\\\d|(?:1(?:44|6[346])|89(?:5[5-9]|9))\\\\d{6}\", , , , \"899123456\", , , [6, 8, 9, 10]], [, , \"84(?:[08]\\\\d{3}|[17])\\\\d{3}\", , , , \"848123456\", , , [6, 9]], [, , \"1(?:78\\\\d|99)\\\\d{6}\", , , , \"1781234567\", , , [9, 10]], [, , \"55\\\\d{8}\", , , , \"5512345678\", , , [10]], \"IT\",\n39, \"00\", , , , , , , , [[, \"(\\\\d{4,5})\", \"$1\", [\"1(?:0|9[246])\", \"1(?:0|9(?:2[2-9]|[46]))\"]], [, \"(\\\\d{6})\", \"$1\", [\"1(?:1|92)\"]], [, \"(\\\\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[245])\", \"0[13-57-9][0159]|8(?:03|4[17]|9(?:2|[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})\",\n\"$1 $2 $3\", [\"1[4679]|[38]\"]], [, \"(\\\\d{3})(\\\\d{3,4})(\\\\d{4})\", \"$1 $2 $3\", [\"0[13-57-9][0159]\"]], [, \"(\\\\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\"]]], [[, \"(\\\\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[245])\", \"0[13-57-9][0159]|8(?:03|4[17]|9(?:2|[45][0-4]))\"]], [, \"(\\\\d{4})(\\\\d{2,6})\", \"$1 $2\", [\"0(?:[13-579][2-46-8]|8[236-8])\"]],\n[, \"(\\\\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[4679]|[38]\"]], [, \"(\\\\d{3})(\\\\d{3,4})(\\\\d{4})\", \"$1 $2 $3\", [\"0[13-57-9][0159]\"]], [, \"(\\\\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\"]]], [, , , , , , , , , [-1]], 1, , [, , \"848\\\\d{6}\", , , , , , , [9]], [, , , , , , , , , [-1]], , , [, , \"3[2-8]\\\\d{9,10}\",\n, , , \"33101234501\", , , [11, 12]]], JE:[, [, , \"1534\\\\d{6}|(?:[3578]\\\\d|90)\\\\d{8}\", , , , , , , [10], [6]], [, , \"1534[0-24-8]\\\\d{5}\", , , , \"1534456789\", , , , [6]], [, , \"7(?:(?:(?:50|82)9|937)\\\\d|7(?:00[378]|97[7-9]))\\\\d{5}\", , , , \"7797712345\"], [, , \"80(?:07(?:35|81)|8901)\\\\d{4}\", , , , \"8007354567\"], [, , \"(?:8(?:4(?:4(?:4(?:05|42|69)|703)|5(?:041|800))|7(?:0002|1206))|90(?:066[59]|1810|71(?:07|55)))\\\\d{4}\", , , , \"9018105678\"], [, , , , , , , , , [-1]], [, , \"701511\\\\d{4}\", , , , \"7015115678\"],\n[, , \"56\\\\d{8}\", , , , \"5612345678\"], \"JE\", 44, \"00\", \"0\", , , \"0|([0-24-8]\\\\d{5})$\", \"1534$1\", , , , , [, , \"76(?:0[0-2]|2[356]|4[0134]|5[49]|6[0-369]|77|81|9[39])\\\\d{6}\", , , , \"7640123456\"], , , [, , , , , , , , , [-1]], [, , \"(?: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}\", , , , \"5512345678\"], , , [, , , , , , , , , [-1]]], JM:[, [, , \"(?:[58]\\\\d\\\\d|658|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"(?:658(?:2(?:[0-8]\\\\d|9[0-46-9])|[3-9]\\\\d\\\\d)|876(?:5(?:02|1[0-468]|2[35]|63)|6(?:0[1-3579]|1[0237-9]|[23]\\\\d|40|5[06]|6[2-589]|7[05]|8[04]|9[4-9])|7(?:0[2-689]|[1-6]\\\\d|8[056]|9[45])|9(?:0[1-8]|1[02378]|[2-8]\\\\d|9[2-468])))\\\\d{4}\",\n, , , \"8765230123\", , , , [7]], [, , \"(?:658295|876(?:(?:2[14-9]|[348]\\\\d)\\\\d|5(?:0[13-9]|17|[2-57-9]\\\\d|6[0-24-9])|7(?:0[07]|7\\\\d|8[1-47-9]|9[0-36-9])|9(?:[01]9|9[0579])))\\\\d{4}\", , , , \"8762101234\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"JM\", 1, \"011\", \"1\", , , \"1\", , , , , , [, , , , , , , ,\n, [-1]], , \"658|876\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], JO:[, [, , \"900\\\\d{5}|(?:(?:[268]|7\\\\d)\\\\d|32|53)\\\\d{6}\", , , , , , , [8, 9]], [, , \"(?:2(?:6(?:2[0-35-9]|3[0-578]|4[24-7]|5[0-24-8]|[6-8][023]|9[0-3])|7(?:0[1-79]|10|2[014-7]|3[0-689]|4[019]|5[0-3578]))|32(?:0[1-69]|1[1-35-7]|2[024-7]|3\\\\d|4[0-3]|[57][023]|6[03])|53(?:0[0-3]|[13][023]|2[0-59]|49|5[0-35-9]|6[15]|7[45]|8[1-6]|9[0-36-9])|6(?:2(?:[05]0|22)|3(?:00|33)|4(?:0[0-25]|1[2-7]|2[0569]|[38][07-9]|4[025689]|6[0-589]|7\\\\d|9[0-2])|5(?:[01][056]|2[034]|3[0-57-9]|4[178]|5[0-69]|6[0-35-9]|7[1-379]|8[0-68]|9[0239]))|87(?:[029]0|7[08]))\\\\d{4}\",\n, , , \"62001234\", , , [8]], [, , \"7(?:55[0-49]|(?:7[025-9]|[89][0-25-9])\\\\d)\\\\d{5}\", , , , \"790123456\", , , [9]], [, , \"80\\\\d{6}\", , , , \"80012345\", , , [8]], [, , \"900\\\\d{5}\", , , , \"90012345\", , , [8]], [, , \"85\\\\d{6}\", , , , \"85012345\", , , [8]], [, , \"70\\\\d{7}\", , , , \"700123456\", , , [9]], [, , , , , , , , , [-1]], \"JO\", 962, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\",\n[\"70\"], \"0$1\"], [, \"(\\\\d)(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"7\"], \"0$1\"]], , [, , \"74(?:66|77)\\\\d{5}\", , , , \"746612345\", , , [9]], , , [, , , , , , , , , [-1]], [, , \"8(?:10|8\\\\d)\\\\d{5}\", , , , \"88101234\", , , [8]], , , [, , , , , , , , , [-1]]], JP:[, [, , \"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]], [, , \"(?:1(?:1[235-8]|2[3-6]|3[3-9]|4[2-6]|[58][2-8]|6[2-7]|7[2-9]|9[1-9])|(?:2[2-9]|[36][1-9])\\\\d|4(?:[2-578]\\\\d|6[02-8]|9[2-59])|5(?:[2-589]\\\\d|6[1-9]|7[2-8])|7(?:[25-9]\\\\d|3[4-9]|4[02-9])|8(?:[2679]\\\\d|3[2-9]|4[5-9]|5[1-9]|8[03-9])|9(?:[2-58]\\\\d|[679][1-9]))\\\\d{6}\",\n, , , \"312345678\", , , [9]], [, , \"[7-9]0[1-9]\\\\d{7}\", , , , \"9012345678\", , , [10]], [, , \"00(?:(?:37|66)\\\\d{6,13}|(?:777(?:[01]|(?:5|8\\\\d)\\\\d)|882[1245]\\\\d\\\\d)\\\\d\\\\d)|(?:120|800\\\\d)\\\\d{6}\", , , , \"120123456\"], [, , \"990\\\\d{6}\", , , , \"990123456\", , , [9]], [, , , , , , , , , [-1]], [, , \"60\\\\d{7}\", , , , \"601234567\", , , [9]], [, , \"50[1-9]\\\\d{7}\", , , , \"5012345678\", , , [10]], \"JP\", 81, \"010\", \"0\", , , \"0\", , , , [[, \"(\\\\d{4})(\\\\d{4})\", \"$1-$2\", [\"007\", \"0077\", \"00777\", \"00777[01]\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\n\"$1-$2-$3\", [\"(?:12|57|99)0\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d)(\\\\d{4})\", \"$1-$2-$3\", [\"1(?:26|3[79]|4[56]|5[4-68]|6[3-5])|499|5(?:76|97)|746|8(?:3[89]|47|51|63)|9(?:49|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[78]|96)|477|51[24]|636)|9(?:496|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[78]|96[2457-9])|477|51[24]|636[2-57-9])|9(?:496|802|9(?:1[23]|69))|1(?:45|58)[67]\"],\n\"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"60\"], \"0$1\"], [, \"(\\\\d)(\\\\d{4})(\\\\d{4})\", \"$1-$2-$3\", [\"[36]|4(?:2[09]|7[01])\", \"[36]|4(?:2(?:0|9[02-69])|7(?:0[019]|1))\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"1(?:1|5[45]|77|88|9[69])|2(?:2[1-37]|3[0-269]|4[59]|5|6[24]|7[1-358]|8[1369]|9[0-38])|4(?:[28][1-9]|3[0-57]|[45]|6[248]|7[2-579]|9[29])|5(?:2|3[045]|4[0-369]|5[29]|8[02389]|9[0-389])|7(?:2[02-46-9]|34|[58]|6[0249]|7[57]|9[2-6])|8(?:2[124589]|3[279]|49|6[0-24-689]|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])\",\n\"1(?:1|5(?:4[018]|5[017])|77|88|9[69])|2(?:2(?:[127]|3[014-9])|3[0-269]|4[59]|5(?:[0468][01]|[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]|2[01]|8[014-6])|3[0-57]|[45]|6[248]|7[2-47]|8[1-9])|5(?:2|3[045]|4[0-369]|8[02389]|9[0-3])|7(?:2[02-46-9]|34|[58]|6[0249]|7[57]|9(?:[23]|4[0-59]|5[01569]|6[0167]))|8(?:2(?:[1258]|4[0-39]|9[0-2469])|49|6(?:[0-24]|5[0-3589]|9[01459])|7[0-468]|8[68])|9(?:[23][1-9]|4[15]|5[138]|6[1-3]|7[156]|8[189]|9(?:[1289]|3[34]|4[0178]))|(?:49|55|83)[29]|(?:264|837)[016-9]|2(?:57|93)[015-9]|(?:47[59]|59[89]|8(?:6[68]|9))[019]\",\n\"1(?:1|5(?:4[018]|5[017])|77|88|9[69])|2(?:2[127]|3[0-269]|4[59]|5(?:[0468][01]|[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]|2[01]|8[014-6])|3[0-57]|[45]|6[248]|7[2-47]|9[29])|5(?:2|3[045]|4[0-369]|5[29]|8[02389]|9[0-3])|7(?:2[02-46-9]|34|[58]|6[0249]|7[57]|9(?:[23]|4[0-59]|5[01569]|6[0167]))|8(?:2(?:[1258]|4[0-39]|9[0169])|3(?:[29]|7(?:[017-9]|6[6-8]))|49|6(?:[0-24]|5(?:[0-389]|5[23])|6(?:[01]|9[178])|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]|(?:48|8292|9[23])[1-9]|(?:47[59]|59[89]|8(?:68|9))[019]\",\n\"1(?:1|5(?:4[018]|5[017])|77|88|9[69])|2(?:2[127]|3[0-269]|4[59]|5(?:[0468][01]|[1-3]|5[0-69]|7[015-9]|9(?:17|99))|6(?:2|4[016-9])|7(?:[1-35]|8[0189])|8(?:[16]|3[0134]|9[0-5])|9(?:[028]|17|3[015-9]))|4(?:2(?:[13-79]|2[01]|8[014-6])|3[0-57]|[45]|6[248]|7[2-47]|9[29])|5(?:2|3[045]|4[0-369]|5[29]|8[02389]|9[0-3])|7(?:2[02-46-9]|34|[58]|6[0249]|7[57]|9(?:[23]|4[0-59]|5[01569]|6[0167]))|8(?:2(?:[1258]|4[0-39]|9(?:[019]|4[1-3]|6(?:[0-47-9]|5[01346-9])))|3(?:[29]|7(?:[017-9]|6[6-8]))|49|6(?:[0-24]|5(?:[0-389]|5[23])|6(?:[01]|9[178])|9[0145])|7[0-468]|8[68])|9(?:4[15]|5[138]|6[1-3]|7[156]|8[189]|9(?:[1289]|3(?:31|4[357])|4[0178]))|(?:223|8699)[014-9]|(?:48|829(?:2|66)|9[23])[1-9]|(?:47[59]|59[89]|8(?:68|9))[019]\"],\n\"0$1\"], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{4})\", \"$1-$2-$3\", [\"[14]|[29][2-9]|5[3-9]|7[2-4679]|8(?:[246-9]|3[3-8]|5[2-9])\", \"[14]|[29][2-9]|5[3-9]|7[2-4679]|8(?:[246-9]|3(?:[3-6][2-9]|7|8[2-5])|5[2-9])\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d{2})(\\\\d{3,4})\", \"$1-$2-$3\", [\"007\"]], [, \"(\\\\d{4})(\\\\d{2})(\\\\d{4})\", \"$1-$2-$3\", [\"008\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"800\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1-$2-$3\", [\"[2579]|80\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{3,4})\", \"$1-$2-$3\", [\"0\"]], [, \"(\\\\d{4})(\\\\d{4})(\\\\d{4,5})\",\n\"$1-$2-$3\", [\"0\"]], [, \"(\\\\d{4})(\\\\d{5})(\\\\d{5,6})\", \"$1-$2-$3\", [\"0\"]], [, \"(\\\\d{4})(\\\\d{6})(\\\\d{6,7})\", \"$1-$2-$3\", [\"0\"]]], [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1-$2-$3\", [\"(?:12|57|99)0\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d)(\\\\d{4})\", \"$1-$2-$3\", [\"1(?:26|3[79]|4[56]|5[4-68]|6[3-5])|499|5(?:76|97)|746|8(?:3[89]|47|51|63)|9(?:49|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[78]|96)|477|51[24]|636)|9(?:496|802|9(?:1[23]|69))|1(?:45|58)[67]\",\n\"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[78]|96[2457-9])|477|51[24]|636[2-57-9])|9(?:496|802|9(?:1[23]|69))|1(?:45|58)[67]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"60\"], \"0$1\"], [, \"(\\\\d)(\\\\d{4})(\\\\d{4})\", \"$1-$2-$3\", [\"[36]|4(?:2[09]|7[01])\", \"[36]|4(?:2(?:0|9[02-69])|7(?:0[019]|1))\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"1(?:1|5[45]|77|88|9[69])|2(?:2[1-37]|3[0-269]|4[59]|5|6[24]|7[1-358]|8[1369]|9[0-38])|4(?:[28][1-9]|3[0-57]|[45]|6[248]|7[2-579]|9[29])|5(?:2|3[045]|4[0-369]|5[29]|8[02389]|9[0-389])|7(?:2[02-46-9]|34|[58]|6[0249]|7[57]|9[2-6])|8(?:2[124589]|3[279]|49|6[0-24-689]|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])\",\n\"1(?:1|5(?:4[018]|5[017])|77|88|9[69])|2(?:2(?:[127]|3[014-9])|3[0-269]|4[59]|5(?:[0468][01]|[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]|2[01]|8[014-6])|3[0-57]|[45]|6[248]|7[2-47]|8[1-9])|5(?:2|3[045]|4[0-369]|8[02389]|9[0-3])|7(?:2[02-46-9]|34|[58]|6[0249]|7[57]|9(?:[23]|4[0-59]|5[01569]|6[0167]))|8(?:2(?:[1258]|4[0-39]|9[0-2469])|49|6(?:[0-24]|5[0-3589]|9[01459])|7[0-468]|8[68])|9(?:[23][1-9]|4[15]|5[138]|6[1-3]|7[156]|8[189]|9(?:[1289]|3[34]|4[0178]))|(?:49|55|83)[29]|(?:264|837)[016-9]|2(?:57|93)[015-9]|(?:47[59]|59[89]|8(?:6[68]|9))[019]\",\n\"1(?:1|5(?:4[018]|5[017])|77|88|9[69])|2(?:2[127]|3[0-269]|4[59]|5(?:[0468][01]|[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]|2[01]|8[014-6])|3[0-57]|[45]|6[248]|7[2-47]|9[29])|5(?:2|3[045]|4[0-369]|5[29]|8[02389]|9[0-3])|7(?:2[02-46-9]|34|[58]|6[0249]|7[57]|9(?:[23]|4[0-59]|5[01569]|6[0167]))|8(?:2(?:[1258]|4[0-39]|9[0169])|3(?:[29]|7(?:[017-9]|6[6-8]))|49|6(?:[0-24]|5(?:[0-389]|5[23])|6(?:[01]|9[178])|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]|(?:48|8292|9[23])[1-9]|(?:47[59]|59[89]|8(?:68|9))[019]\",\n\"1(?:1|5(?:4[018]|5[017])|77|88|9[69])|2(?:2[127]|3[0-269]|4[59]|5(?:[0468][01]|[1-3]|5[0-69]|7[015-9]|9(?:17|99))|6(?:2|4[016-9])|7(?:[1-35]|8[0189])|8(?:[16]|3[0134]|9[0-5])|9(?:[028]|17|3[015-9]))|4(?:2(?:[13-79]|2[01]|8[014-6])|3[0-57]|[45]|6[248]|7[2-47]|9[29])|5(?:2|3[045]|4[0-369]|5[29]|8[02389]|9[0-3])|7(?:2[02-46-9]|34|[58]|6[0249]|7[57]|9(?:[23]|4[0-59]|5[01569]|6[0167]))|8(?:2(?:[1258]|4[0-39]|9(?:[019]|4[1-3]|6(?:[0-47-9]|5[01346-9])))|3(?:[29]|7(?:[017-9]|6[6-8]))|49|6(?:[0-24]|5(?:[0-389]|5[23])|6(?:[01]|9[178])|9[0145])|7[0-468]|8[68])|9(?:4[15]|5[138]|6[1-3]|7[156]|8[189]|9(?:[1289]|3(?:31|4[357])|4[0178]))|(?:223|8699)[014-9]|(?:48|829(?:2|66)|9[23])[1-9]|(?:47[59]|59[89]|8(?:68|9))[019]\"],\n\"0$1\"], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{4})\", \"$1-$2-$3\", [\"[14]|[29][2-9]|5[3-9]|7[2-4679]|8(?:[246-9]|3[3-8]|5[2-9])\", \"[14]|[29][2-9]|5[3-9]|7[2-4679]|8(?:[246-9]|3(?:[3-6][2-9]|7|8[2-5])|5[2-9])\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"800\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1-$2-$3\", [\"[2579]|80\"], \"0$1\"]], [, , \"20\\\\d{8}\", , , , \"2012345678\", , , [10]], , , [, , \"00(?:777(?:[01]|(?:5|8\\\\d)\\\\d)|882[1245]\\\\d\\\\d)\\\\d\\\\d|00(?:37|66)\\\\d{6,13}\"], [, , \"570\\\\d{6}\", , , , \"570123456\",\n, , [9]], , , [, , , , , , , , , [-1]]], KE:[, [, , \"(?:[17]\\\\d\\\\d|900)\\\\d{6}|(?:2|80)0\\\\d{6,7}|[4-6]\\\\d{6,8}\", , , , , , , [7, 8, 9, 10]], [, , \"(?:4[245]|5[2-79]|6[01457-9])\\\\d{5,7}|(?:4[136]|5[08]|62)\\\\d{7}|(?:[24]0|51|66)\\\\d{6,7}\", , , , \"202012345\", , , [7, 8, 9]], [, , \"(?:1(?:0[0-2]|1[01])|7\\\\d\\\\d)\\\\d{6}\", , , , \"712123456\", , , [9]], [, , \"800[24-8]\\\\d{5,6}\", , , , \"800223456\", , , [9, 10]], [, , \"900[02-9]\\\\d{5}\", , , , \"900223456\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , ,\n[-1]], [, , , , , , , , , [-1]], \"KE\", 254, \"000\", \"0\", , , \"0\", , , , [[, \"(\\\\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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], KG:[, [, , \"8\\\\d{9}|(?:[235-8]\\\\d|99)\\\\d{7}\", , , , , , , [9, 10], [5, 6]], [, , \"(?:3(?:1(?:[256]\\\\d|3[1-9]|47)|2(?:22|3[0-479]|6[0-7])|4(?:22|5[6-9]|6\\\\d)|5(?:22|3[4-7]|59|6\\\\d)|6(?:22|5[35-7]|6\\\\d)|7(?:22|3[468]|4[1-9]|59|[67]\\\\d)|9(?:22|4[1-8]|6\\\\d))|6(?:09|12|2[2-4])\\\\d)\\\\d{5}\",\n, , , \"312123456\", , , [9], [5, 6]], [, , \"8801\\\\d{5}|(?:2(?:0[0-35]|2\\\\d)|5(?:0[0-57-9]|[124-7]\\\\d)|7(?:[07]\\\\d|55)|99[05-9])\\\\d{6}\", , , , \"700123456\", , , [9]], [, , \"800\\\\d{6,7}\", , , , \"800123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"KG\", 996, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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})\",\n\"$1 $2 $3 $4\", [\"8\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], KH:[, [, , \"1\\\\d{9}|[1-9]\\\\d{7,8}\", , , , , , , [8, 9, 10], [6, 7]], [, , \"23(?:4(?:[2-4]|[56]\\\\d)|[568]\\\\d\\\\d)\\\\d{4}|23[236-9]\\\\d{5}|(?:2[4-6]|3[2-6]|4[2-4]|[5-7][2-5])(?:(?:[237-9]|4[56]|5\\\\d)\\\\d{5}|6\\\\d{5,6})\", , , , \"23756789\", , , [8, 9], [6, 7]], [, , \"(?:(?:1[28]|3[18]|9[67])\\\\d|6[016-9]|7(?:[07-9]|[16]\\\\d)|8(?:[013-79]|8\\\\d))\\\\d{6}|(?:1\\\\d|9[0-57-9])\\\\d{6}|(?:2[3-6]|3[2-6]|4[2-4]|[5-7][2-5])48\\\\d{5}\",\n, , , \"91234567\", , , [8, 9]], [, , \"1800(?:1\\\\d|2[019])\\\\d{4}\", , , , \"1800123456\", , , [10]], [, , \"1900(?:1\\\\d|2[09])\\\\d{4}\", , , , \"1900123456\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"KH\", 855, \"00[14-9]\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{3,4})\", \"$1 $2 $3\", [\"[1-9]\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"1\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , ,\n, , [-1]]], KI:[, [, , \"(?:[37]\\\\d|6[0-79])\\\\d{6}|(?:[2-48]\\\\d|50)\\\\d{3}\", , , , , , , [5, 8]], [, , \"(?:[24]\\\\d|3[1-9]|50|65(?:02[12]|12[56]|22[89]|[3-5]00)|7(?:27\\\\d\\\\d|3100|5(?:02[12]|12[56]|22[89]|[34](?:00|81)|500))|8[0-5])\\\\d{3}\", , , , \"31234\"], [, , \"73140\\\\d{3}|(?:630[01]|730[0-5])\\\\d{4}|[67]200[01]\\\\d{3}\", , , , \"72001234\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"30(?:0[01]\\\\d\\\\d|12(?:11|20))\\\\d\\\\d\", , , , \"30010000\",\n, , [8]], \"KI\", 686, \"00\", \"0\", , , \"0\", , , , , , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], KM:[, [, , \"[3478]\\\\d{6}\", , , , , , , [7]], [, , \"7[4-7]\\\\d{5}\", , , , \"7712345\"], [, , \"[34]\\\\d{6}\", , , , \"3212345\"], [, , , , , , , , , [-1]], [, , \"8\\\\d{6}\", , , , \"8001234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"KM\", 269, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3\", [\"[3478]\"]]],\n, [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], KN:[, [, , \"(?:[58]\\\\d\\\\d|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"869(?:2(?:29|36)|302|4(?:6[015-9]|70))\\\\d{4}\", , , , \"8692361234\", , , , [7]], [, , \"869(?:5(?:5[6-8]|6[5-7])|66\\\\d|76[02-7])\\\\d{4}\", , , , \"8697652917\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\",\n, , , \"5002345678\"], [, , , , , , , , , [-1]], \"KN\", 1, \"011\", \"1\", , , \"1|([2-7]\\\\d{6})$\", \"869$1\", , , , , [, , , , , , , , , [-1]], , \"869\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], KP:[, [, , \"85\\\\d{6}|(?:19\\\\d|2)\\\\d{7}\", , , , , , , [8, 10], [6, 7]], [, , \"(?:2\\\\d|85)\\\\d{6}\", , , , \"21234567\", , , [8], [6, 7]], [, , \"19[1-3]\\\\d{7}\", , , , \"1921234567\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , ,\n, , , , [-1]], [, , , , , , , , , [-1]], \"KP\", 850, \"00|99\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"8\"], \"0$1\"], [, \"(\\\\d)(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"2\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"1\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , \"238[02-9]\\\\d{4}|2(?:[0-24-9]\\\\d|3[0-79])\\\\d{5}\", , , , , , , [8]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], KR:[, [, , \"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}\",\n, , , , , , [5, 6, 8, 9, 10, 11, 12, 13, 14], [3, 4, 7]], [, , \"(?:2|3[1-3]|[46][1-4]|5[1-5])[1-9]\\\\d{6,7}|(?:3[1-3]|[46][1-4]|5[1-5])1\\\\d{2,3}\", , , , \"22123456\", , , [5, 6, 8, 9, 10], [3, 4, 7]], [, , \"10[01]\\\\d{6}|1(?:0[2-9]|[126-9]\\\\d)\\\\d{6,7}\", , , , \"1020000000\", , , [9, 10]], [, , \"00(?:308\\\\d{6,7}|798\\\\d{7,9})|(?:00368|80)\\\\d{7}\", , , , \"801234567\", , , [9, 11, 12, 13, 14]], [, , \"60[2-9]\\\\d{6}\", , , , \"602345678\", , , [9]], [, , , , , , , , , [-1]], [, , \"50\\\\d{8,9}\", , , , \"5012345678\",\n, , [10, 11]], [, , \"70\\\\d{8}\", , , , \"7012345678\", , , [10]], \"KR\", 82, \"00(?:[125689]|3(?:[46]5|91)|7(?:00|27|3|55|6[126]))\", \"0\", , , \"0(8(?:[1-46-8]|5\\\\d\\\\d))?\", , , , [[, \"(\\\\d{5})\", \"$1\", [\"1[016-9]1\", \"1[016-9]11\", \"1[016-9]114\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3,4})\", \"$1-$2\", [\"(?:3[1-3]|[46][1-4]|5[1-5])1\"], \"0$1\", \"0$CC-$1\"], [, \"(\\\\d{4})(\\\\d{4})\", \"$1-$2\", [\"1\"]], [, \"(\\\\d)(\\\\d{3,4})(\\\\d{4})\", \"$1-$2-$3\", [\"2\"], \"0$1\", \"0$CC-$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"60|8\"], \"0$1\",\n\"0$CC-$1\"], [, \"(\\\\d{2})(\\\\d{3,4})(\\\\d{4})\", \"$1-$2-$3\", [\"[1346]|5[1-5]\"], \"0$1\", \"0$CC-$1\"], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1-$2-$3\", [\"[57]\"], \"0$1\", \"0$CC-$1\"], [, \"(\\\\d{5})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"003\", \"0030\"]], [, \"(\\\\d{2})(\\\\d{5})(\\\\d{4})\", \"$1-$2-$3\", [\"5\"], \"0$1\", \"0$CC-$1\"], [, \"(\\\\d{5})(\\\\d{3,4})(\\\\d{4})\", \"$1 $2 $3\", [\"0\"]], [, \"(\\\\d{5})(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3 $4\", [\"0\"]]], [[, \"(\\\\d{2})(\\\\d{3,4})\", \"$1-$2\", [\"(?:3[1-3]|[46][1-4]|5[1-5])1\"], \"0$1\", \"0$CC-$1\"],\n[, \"(\\\\d{4})(\\\\d{4})\", \"$1-$2\", [\"1\"]], [, \"(\\\\d)(\\\\d{3,4})(\\\\d{4})\", \"$1-$2-$3\", [\"2\"], \"0$1\", \"0$CC-$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"60|8\"], \"0$1\", \"0$CC-$1\"], [, \"(\\\\d{2})(\\\\d{3,4})(\\\\d{4})\", \"$1-$2-$3\", [\"[1346]|5[1-5]\"], \"0$1\", \"0$CC-$1\"], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1-$2-$3\", [\"[57]\"], \"0$1\", \"0$CC-$1\"], [, \"(\\\\d{2})(\\\\d{5})(\\\\d{4})\", \"$1-$2-$3\", [\"5\"], \"0$1\", \"0$CC-$1\"]], [, , \"15\\\\d{7,8}\", , , , \"1523456789\", , , [9, 10]], , , [, , \"00(?:3(?:08\\\\d{6,7}|68\\\\d{7})|798\\\\d{7,9})\",\n, , , , , , [11, 12, 13, 14]], [, , \"1(?:5(?:22|44|66|77|88|99)|6(?:[07]0|44|6[16]|88)|8(?:00|33|55|77|99))\\\\d{4}\", , , , \"15441234\", , , [8]], , , [, , , , , , , , , [-1]]], KW:[, [, , \"(?:18|[2569]\\\\d\\\\d)\\\\d{5}\", , , , , , , [7, 8]], [, , \"2(?:[23]\\\\d\\\\d|4(?:[1-35-9]\\\\d|44)|5(?:0[034]|[2-46]\\\\d|5[1-3]|7[1-7]))\\\\d{4}\", , , , \"22345678\", , , [8]], [, , \"(?:52(?:22|5[25])|6(?:222|70[013-9]|93[039])|9(?:11[01]|333|702))\\\\d{4}|(?:5(?:[05]\\\\d|1[0-7]|6[56])|6(?:0[034679]|5[015-9]|6\\\\d|7[67]|9[069])|9(?:0[09]|22|4[01479]|55|6[0679]|7[1-9]|8[057-9]|9\\\\d))\\\\d{5}\",\n, , , \"50012345\", , , [8]], [, , \"18\\\\d{5}\", , , , \"1801234\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"KW\", 965, \"00\", , , , , , , , [[, \"(\\\\d{4})(\\\\d{3,4})\", \"$1 $2\", [\"[169]|2(?:[235]|4[1-35-9])|52\"]], [, \"(\\\\d{3})(\\\\d{5})\", \"$1 $2\", [\"[25]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], KY:[, [, , \"(?:345|[58]\\\\d\\\\d|900)\\\\d{7}\", , , , , , , [10], [7]],\n[, , \"345(?:2(?:22|44)|444|6(?:23|38|40)|7(?:4[35-79]|6[6-9]|77)|8(?:00|1[45]|25|[48]8)|9(?:14|4[035-9]))\\\\d{4}\", , , , \"3452221234\", , , , [7]], [, , \"345(?:32[1-9]|5(?:1[67]|2[5-79]|4[6-9]|50|76)|649|9(?:1[67]|2[2-9]|3[689]))\\\\d{4}\", , , , \"3453231234\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002345678\"], [, , \"(?:345976|900[2-9]\\\\d\\\\d)\\\\d{4}\", , , , \"9002345678\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , ,\n, , , , [-1]], \"KY\", 1, \"011\", \"1\", , , \"1|([2-9]\\\\d{6})$\", \"345$1\", , , , , [, , \"345849\\\\d{4}\", , , , \"3458491234\"], , \"345\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], KZ:[, [, , \"33622\\\\d{5}|(?:7\\\\d|80)\\\\d{8}\", , , , , , , [10], [5, 6]], [, , \"(?:33622|7(?:1(?:0(?:[23]\\\\d|4[0-3]|59|63)|1(?:[23]\\\\d|4[0-79]|59)|2(?:[23]\\\\d|59)|3(?:2\\\\d|3[0-79]|4[0-35-9]|59)|4(?:[24]\\\\d|3[013-9]|5[1-9])|5(?:2\\\\d|3[1-9]|4[0-7]|59)|6(?:[2-4]\\\\d|5[19]|61)|72\\\\d|8(?:[27]\\\\d|3[1-46-9]|4[0-5]))|2(?:1(?:[23]\\\\d|4[46-9]|5[3469])|2(?:2\\\\d|3[0679]|46|5[12679])|3(?:[2-4]\\\\d|5[139])|4(?:2\\\\d|3[1-35-9]|59)|5(?:[23]\\\\d|4[0-246-8]|59|61)|6(?:2\\\\d|3[1-9]|4[0-4]|59)|7(?:[2379]\\\\d|40|5[279])|8(?:[23]\\\\d|4[0-3]|59)|9(?:2\\\\d|3[124578]|59))))\\\\d{5}\",\n, , , \"7123456789\", , , , [5, 6]], [, , \"7(?:0[0-25-8]|47|6[02-4]|7[15-8]|85)\\\\d{7}\", , , , \"7710009998\"], [, , \"800\\\\d{7}\", , , , \"8001234567\"], [, , \"809\\\\d{7}\", , , , \"8091234567\"], [, , , , , , , , , [-1]], [, , \"808\\\\d{7}\", , , , \"8081234567\"], [, , \"751\\\\d{7}\", , , , \"7511234567\"], \"KZ\", 7, \"810\", \"8\", , , \"8\", , \"8~10\", , , , [, , , , , , , , , [-1]], , \"33|7\", [, , \"751\\\\d{7}\"], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], LA:[, [, , \"(?:2\\\\d|3)\\\\d{8}|(?:[235-8]\\\\d|41)\\\\d{6}\",\n, , , , , , [8, 9, 10], [6]], [, , \"(?:2[13]|[35-7][14]|41|8[1468])\\\\d{6}\", , , , \"21212862\", , , [8], [6]], [, , \"20(?:[29]\\\\d|5[24-689]|7[6-8])\\\\d{6}\", , , , \"2023123456\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"LA\", 856, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"2[13]|3[14]|[4-8]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{3})\", \"$1 $2 $3 $4\", [\"3\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{3})(\\\\d{3})\",\n\"$1 $2 $3 $4\", [\"2\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"30\\\\d{7}\", , , , \"301234567\", , , [9]], , , [, , , , , , , , , [-1]]], LB:[, [, , \"[7-9]\\\\d{7}|[13-9]\\\\d{6}\", , , , , , , [7, 8]], [, , \"(?:(?:[14-69]\\\\d|8[02-9])\\\\d|7(?:[2-57]\\\\d|62|8[0-7]|9[04-9]))\\\\d{4}\", , , , \"1123456\", , , [7]], [, , \"(?:(?:3|81)\\\\d|7(?:[01]\\\\d|6[013-9]|8[89]|9[1-3]))\\\\d{5}\", , , , \"71123456\"], [, , , , , , , , , [-1]], [, , \"9[01]\\\\d{6}\", , , , \"90123456\", , , [8]], [, , \"80\\\\d{6}\",\n, , , \"80123456\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"LB\", 961, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\", [\"[7-9]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], LC:[, [, , \"(?:[58]\\\\d\\\\d|758|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"758(?:4(?:30|5\\\\d|6[2-9]|8[0-2])|57[0-2]|638)\\\\d{4}\",\n, , , \"7584305678\", , , , [7]], [, , \"758(?:28[4-7]|384|4(?:6[01]|8[4-9])|5(?:1[89]|20|84)|7(?:1[2-9]|2\\\\d|3[01]))\\\\d{4}\", , , , \"7582845678\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"LC\", 1, \"011\", \"1\", , , \"1|([2-7]\\\\d{6})$\", \"758$1\", , , , , [, , , , , , , , , [-1]], , \"758\", [, , , , , , , , ,\n[-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], LI:[, [, , \"90\\\\d{5}|(?:[2378]|6\\\\d\\\\d)\\\\d{6}\", , , , , , , [7, 9]], [, , \"(?:2(?:01|1[27]|22|3\\\\d|6[02-578]|96)|3(?:33|40|7[0135-7]|8[048]|9[0269]))\\\\d{4}\", , , , \"2345678\", , , [7]], [, , \"756\\\\d{4}|(?:6(?:499|5[0-3]\\\\d|6(?:0[0-7]|10|2[06-9]|39))|7[37-9])\\\\d{5}\", , , , \"660234567\"], [, , \"80(?:02[28]|9\\\\d\\\\d)\\\\d\\\\d\", , , , \"8002222\", , , [7]], [, , \"90(?:02[258]|1(?:23|3[14])|66[136])\\\\d\\\\d\", , , , \"9002222\", , , [7]], [, , , , , ,\n, , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"LI\", 423, \"00\", \"0\", , , \"0|(10(?:01|20|66))\", , , , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3\", [\"[237-9]\"], , \"$CC $1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"69\"], , \"$CC $1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"6\"], , \"$CC $1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"870(?:28|87)\\\\d\\\\d\", , , , \"8702812\", , , [7]], , , [, , \"697(?:56|[78]\\\\d)\\\\d{4}\", , , , \"697861234\", , , [9]]], LK:[,\n[, , \"(?:[1-7]\\\\d|[89]1)\\\\d{7}\", , , , , , , [9], [7]], [, , \"(?:[189]1|2[13-7]|3[1-8]|4[157]|5[12457]|6[35-7])[2-57]\\\\d{6}\", , , , \"112345678\", , , , [7]], [, , \"7[0-25-8]\\\\d{7}\", , , , \"712345678\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"LK\", 94, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\"]], , [, , , ,\n, , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"1973\\\\d{5}\", , , , \"197312345\"], , , [, , , , , , , , , [-1]]], LR:[, [, , \"(?:2|33|5\\\\d|77|88)\\\\d{7}|[45]\\\\d{6}\", , , , , , , [7, 8, 9]], [, , \"(?:2\\\\d{3}|33333)\\\\d{4}\", , , , \"21234567\", , , [8, 9]], [, , \"(?:(?:330|555|(?:77|88)\\\\d)\\\\d|4[67])\\\\d{5}|5\\\\d{6}\", , , , \"770123456\", , , [7, 9]], [, , , , , , , , , [-1]], [, , \"332(?:02|[34]\\\\d)\\\\d{4}\", , , , \"332021234\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , ,\n, , [-1]], \"LR\", 231, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d)(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[45]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"2\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[3578]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], LS:[, [, , \"(?:[256]\\\\d\\\\d|800)\\\\d{5}\", , , , , , , [8]], [, , \"2\\\\d{7}\", , , , \"22123456\"], [, , \"[56]\\\\d{7}\", , , , \"50123456\"], [, , \"800[256]\\\\d{4}\", , ,\n, \"80021234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"LS\", 266, \"00\", , , , , , , , [[, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[2568]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], LT:[, [, , \"(?:[3469]\\\\d|52|[78]0)\\\\d{6}\", , , , , , , [8]], [, , \"(?:3[1478]|4[124-6]|52)\\\\d{6}\", , , , \"31234567\"], [, , \"6\\\\d{7}\", , , , \"61234567\"], [, , \"800\\\\d{5}\", , , , \"80012345\"],\n[, , \"9(?:0[0239]|10)\\\\d{5}\", , , , \"90012345\"], [, , \"808\\\\d{5}\", , , , \"80812345\"], [, , \"700\\\\d{5}\", , , , \"70012345\"], [, , , , , , , , , [-1]], \"LT\", 370, \"00\", \"8\", , , \"[08]\", , , , [[, \"(\\\\d)(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"52[0-79]\"], \"(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]], , [, , , , , , , , , [-1]], , , [, , , ,\n, , , , , [-1]], [, , \"70[67]\\\\d{5}\", , , , \"70712345\"], , , [, , , , , , , , , [-1]]], LU:[, [, , \"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]], [, , \"(?:35[013-9]|80[2-9]|90[89])\\\\d{1,8}|(?:2[2-9]|3[0-46-9]|[457]\\\\d|8[13-9]|9[2-579])\\\\d{2,9}\", , , , \"27123456\"], [, , \"6(?:[269][18]|5[158]|7[189]|81)\\\\d{6}\", , , , \"628123456\", , , [9]], [, , \"800\\\\d{5}\", , , , \"80012345\", , , [8]], [, , \"90[015]\\\\d{5}\", , , , \"90012345\", , , [8]],\n[, , \"801\\\\d{5}\", , , , \"80112345\", , , [8]], [, , , , , , , , , [-1]], [, , \"20(?:1\\\\d{5}|[2-689]\\\\d{1,7})\", , , , \"20201234\", , , [4, 5, 6, 7, 8, 9, 10]], \"LU\", 352, \"00\", , , , \"(15(?:0[06]|1[12]|[35]5|4[04]|6[26]|77|88|99)\\\\d)\", , , , [[, \"(\\\\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])\"], , \"$CC $1\"], [, \"(\\\\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])\"], , \"$CC $1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{3})\",\n\"$1 $2 $3\", [\"20[2-689]\"], , \"$CC $1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{1,2})\", \"$1 $2 $3 $4\", [\"2(?:[0367]|4[3-8])\"], , \"$CC $1\"], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{3})\", \"$1 $2 $3\", [\"80[01]|90[015]\"], , \"$CC $1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{3})\", \"$1 $2 $3 $4\", [\"20\"], , \"$CC $1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"6\"], , \"$CC $1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{1,2})\", \"$1 $2 $3 $4 $5\", [\"2(?:[0367]|4[3-8])\"], , \"$CC $1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{1,5})\", \"$1 $2 $3 $4\",\n[\"[3-57]|8[13-9]|9(?:0[89]|[2-579])|(?:2|80)[2-9]\"], , \"$CC $1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], LV:[, [, , \"(?:[268]\\\\d|90)\\\\d{6}\", , , , , , , [8]], [, , \"6\\\\d{7}\", , , , \"63123456\"], [, , \"2\\\\d{7}\", , , , \"21234567\"], [, , \"80\\\\d{6}\", , , , \"80123456\"], [, , \"90\\\\d{6}\", , , , \"90123456\"], [, , \"81\\\\d{6}\", , , , \"81123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"LV\", 371, \"00\", , , , , , , , [[,\n\"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[269]|8[01]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], LY:[, [, , \"(?:[2569]\\\\d|71)\\\\d{7}\", , , , , , , [9], [7]], [, , \"(?:2[13-5]|5[1347]|6[1-479]|71)\\\\d{7}\", , , , \"212345678\", , , , [7]], [, , \"9[1-6]\\\\d{7}\", , , , \"912345678\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"LY\", 218, \"00\", \"0\",\n, , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{7})\", \"$1-$2\", [\"[25-79]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MA:[, [, , \"[5-8]\\\\d{8}\", , , , , , , [9]], [, , \"5(?:29|38)[89]0\\\\d{4}|5(?:2(?:[015-7]\\\\d|2[2-9]|3[2-57]|4[2-46-8]|8[235-7]|90)|3(?:[0-4]\\\\d|[57][2-9]|6[2-8]|80|9[3-9])|(?:4[067]|5[03])\\\\d)\\\\d{5}\", , , , \"520123456\"], [, , \"692[12]\\\\d{5}|(?:6(?:[0-7]\\\\d|8[0-247-9]|9[013-9])|7(?:0[06-8]|6[1267]|7[0-27]))\\\\d{6}\", ,\n, , \"650123456\"], [, , \"80\\\\d{7}\", , , , \"801234567\"], [, , \"89\\\\d{7}\", , , , \"891234567\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"5924[0-2]\\\\d{4}\", , , , \"592401234\"], \"MA\", 212, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{5})(\\\\d{4})\", \"$1-$2\", [\"5(?:29|38)\", \"5(?:29|38)[89]\"], \"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\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{7})\", \"$1-$2\", [\"8\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{6})\",\n\"$1-$2\", [\"[5-7]\"], \"0$1\"]], , [, , , , , , , , , [-1]], 1, , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MC:[, [, , \"870\\\\d{5}|(?:[349]|6\\\\d)\\\\d{7}\", , , , , , , [8, 9]], [, , \"(?:870|9[2-47-9]\\\\d)\\\\d{5}\", , , , \"99123456\", , , [8]], [, , \"4(?:4\\\\d|5[1-9])\\\\d{5}|(?:3|6\\\\d)\\\\d{7}\", , , , \"612345678\"], [, , \"90\\\\d{6}\", , , , \"90123456\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"MC\", 377,\n\"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{2})\", \"$1 $2 $3\", [\"8\"]], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"4\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[39]\"]], [, \"(\\\\d)(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4 $5\", [\"6\"], \"0$1\"]], [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"4\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[39]\"]], [, \"(\\\\d)(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4 $5\", [\"6\"], \"0$1\"]], [, , , , , , , , , [-1]],\n, , [, , \"870\\\\d{5}\", , , , , , , [8]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MD:[, [, , \"(?:[235-7]\\\\d|[89]0)\\\\d{6}\", , , , , , , [8]], [, , \"(?:(?:2[1-9]|3[1-79])\\\\d|5(?:33|5[257]))\\\\d{5}\", , , , \"22212345\"], [, , \"(?:562|6\\\\d\\\\d|7(?:[189]\\\\d|6[07]|7[457-9]))\\\\d{5}\", , , , \"62112345\"], [, , \"800\\\\d{5}\", , , , \"80012345\"], [, , \"90[056]\\\\d{5}\", , , , \"90012345\"], [, , \"808\\\\d{5}\", , , , \"80812345\"], [, , , , , , , , , [-1]], [, , \"3[08]\\\\d{6}\", , , , \"30123456\"], \"MD\", 373, \"00\",\n\"0\", , , \"0\", , , , [[, \"(\\\\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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"803\\\\d{5}\", , , , \"80312345\"], , , [, , , , , , , , , [-1]]], ME:[, [, , \"(?:20|[3-79]\\\\d)\\\\d{6}|80\\\\d{6,7}\", , , , , , , [8, 9], [6]], [, , \"(?:20[2-8]|3(?:[0-2][2-7]|3[24-7])|4(?:0[2-467]|1[2467])|5(?:[01][2467]|2[2-467]))\\\\d{5}\", , , , \"30234567\",\n, , [8], [6]], [, , \"6(?:00|3[024]|6[0-25]|[7-9]\\\\d)\\\\d{5}\", , , , \"67622901\", , , [8]], [, , \"80(?:[0-2578]|9\\\\d)\\\\d{5}\", , , , \"80080002\"], [, , \"9(?:4[1568]|5[178])\\\\d{5}\", , , , \"94515151\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"78[1-49]\\\\d{5}\", , , , \"78108780\", , , [8]], \"ME\", 382, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{3,4})\", \"$1 $2 $3\", [\"[2-9]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"77[1-9]\\\\d{5}\", , , , \"77273012\",\n, , [8]], , , [, , , , , , , , , [-1]]], MF:[, [, , \"(?:590|69\\\\d)\\\\d{6}\", , , , , , , [9]], [, , \"590(?:0[079]|[14]3|[27][79]|30|5[0-268]|87)\\\\d{4}\", , , , \"590271234\"], [, , \"69(?:0\\\\d\\\\d|1(?:2[29]|3[0-5]))\\\\d{4}\", , , , \"690001234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"MF\", 590, \"00\", \"0\", , , \"0\", , , , , , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , ,\n, , , , , , [-1]]], MG:[, [, , \"[23]\\\\d{8}\", , , , , , , [9], [7]], [, , \"2072[29]\\\\d{4}|20(?:2\\\\d|4[47]|5[3467]|6[279]|7[35]|8[268]|9[245])\\\\d{5}\", , , , \"202123456\", , , , [7]], [, , \"3[2-49]\\\\d{7}\", , , , \"321234567\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"22\\\\d{7}\", , , , \"221234567\"], \"MG\", 261, \"00\", \"0\", , , \"0|([24-9]\\\\d{6})$\", \"20$1\", , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{3})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[23]\"], \"0$1\"]], , [,\n, , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MH:[, [, , \"329\\\\d{4}|(?:[256]\\\\d|45)\\\\d{5}\", , , , , , , [7]], [, , \"(?:247|528|625)\\\\d{4}\", , , , \"2471234\"], [, , \"(?:(?:23|54)5|329|45[56])\\\\d{4}\", , , , \"2351234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"635\\\\d{4}\", , , , \"6351234\"], \"MH\", 692, \"011\", \"1\", , , \"1\", , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1-$2\", [\"[2-6]\"]]],\n, [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MK:[, [, , \"[2-578]\\\\d{7}\", , , , , , , [8], [6, 7]], [, , \"(?:2(?:[23]\\\\d|5[0-24578]|6[01]|82)|3(?:1[3-68]|[23][2-68]|4[23568])|4(?:[23][2-68]|4[3-68]|5[2568]|6[25-8]|7[24-68]|8[4-68]))\\\\d{5}\", , , , \"22012345\", , , , [6, 7]], [, , \"7(?:(?:[0-25-8]\\\\d|3[2-4]|9[23])\\\\d|4(?:21|60))\\\\d{4}\", , , , \"72345678\"], [, , \"800\\\\d{5}\", , , , \"80012345\"], [, , \"5[02-9]\\\\d{6}\", , , , \"50012345\"],\n[, , \"8(?:0[1-9]|[1-9]\\\\d)\\\\d{5}\", , , , \"80123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"MK\", 389, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d)(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"2\"], \"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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], ML:[, [, , \"(?:[246-9]\\\\d|50)\\\\d{6}\", , , , , , , [8]],\n[, , \"2(?:07[0-8]|12[67])\\\\d{4}|(?:2(?:02|1[4-689])|4(?:0[0-4]|4[1-39]))\\\\d{5}\", , , , \"20212345\"], [, , \"2(?:079|17\\\\d)\\\\d{4}|(?:50|[679]\\\\d|8[239])\\\\d{6}\", , , , \"65012345\"], [, , \"80\\\\d{6}\", , , , \"80012345\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"ML\", 223, \"00\", , , , , , , , [[, \"(\\\\d{4})\", \"$1\", [\"67[057-9]|74[045]\", \"67(?:0[09]|[59]9|77|8[89])|74(?:0[02]|44|55)\"]], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[24-9]\"]]],\n[[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[24-9]\"]]], [, , , , , , , , , [-1]], , , [, , \"80\\\\d{6}\"], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MM:[, [, , \"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], [5]], [, , \"(?:1(?:(?:2\\\\d|3[56]|[89][0-6])\\\\d|4(?:2[2-469]|39|46|6[25]|7[0-2])|6)|2(?:2(?:00|8[34])|4(?:0\\\\d|2[246]|39|46|62|7[0-2])|51\\\\d\\\\d)|4(?:2(?:2\\\\d\\\\d|48[0-2])|[34]20\\\\d)|6(?:0(?:[23]|88\\\\d)|(?:124|320|[56]2\\\\d)\\\\d|247[23]|4(?:2[04]\\\\d|47[23])|7(?:(?:3\\\\d|8[01459])\\\\d|4(?:39|60|7[01])))|8(?:[1-3]2\\\\d|5(?:2\\\\d|4[1-9]|51))\\\\d)\\\\d{4}|5(?:2(?:2\\\\d{5,6}|47[023]\\\\d{4})|(?:347[23]|42(?:1|86)|(?:522|[68]20)\\\\d|7(?:20\\\\d|48[0-2])|9(?:20\\\\d|47[01]))\\\\d{4})|7(?:120\\\\d{4,5}|(?:425\\\\d|5(?:202|96\\\\d))\\\\d{4})|(?:(?:1[2-6]\\\\d|4(?:2[24-8]|356|[46][2-6]|5[35])|5(?:[27][2-8]|3[2-68]|4[25-8]|5[23]|6[2-4]|8[25-7]|9[2-7])|6(?:[19]20|42[03-6]|(?:52|7[45])\\\\d)|7(?:[04][25-8]|[15][235-7]|22|3[2-4]))\\\\d|8(?:[135]2\\\\d\\\\d|2(?:2\\\\d\\\\d|320)))\\\\d{3}|25\\\\d{5,6}|(?:2[2-9]|43[235-7]|6(?:1[2356]|[24][2-6]|3[256]|5[2-4]|6[2-8]|7[235-7]|8[245]|9[24])|8(?:1[235689]|2[2-8]|32|4[24-7]|5[245]|6[23]))\\\\d{4}|(?:4[35]|5[48]|63|7[0145]|8[13])470\\\\d{4}|(?:4[35]|5[48]|63|7[0145]|8[13])4\\\\d{4}\",\n, , , \"1234567\", , , [6, 7, 8, 9], [5]], [, , \"(?:17[01]|9(?:2(?:[0-4]|[56]\\\\d\\\\d)|(?:3(?:[0-36]|4\\\\d)|6[7-9]\\\\d|7(?:3|5[0-2]|[6-9]\\\\d)|8(?:8[7-9]|9\\\\d))\\\\d|4(?:(?:[0245]\\\\d|[1379])\\\\d|88)|5[0-6]|9(?:[089]|[5-7]\\\\d\\\\d))\\\\d)\\\\d{4}|9[69]1\\\\d{6}|9[68]\\\\d{6}\", , , , \"92123456\", , , [7, 8, 9, 10]], [, , \"80080(?:[01][1-9]|2\\\\d)\\\\d{3}\", , , , \"8008001234\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"1333\\\\d{4}|[12]468\\\\d{4}\", , , , \"13331234\", , , [8]],\n\"MM\", 95, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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})\",\n\"$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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MN:[, [, , \"[12]\\\\d{7,9}|[57-9]\\\\d{7}\", , , , , , , [8, 9, 10], [4, 5, 6]], [, , \"[12](?:3[2-8]|4[2-68]|5[1-4689])\\\\d{6,7}|(?:11(?:3\\\\d|4[568])|(?:(?:21|5[0568])\\\\d|70[0-5])\\\\d)\\\\d{4}|[12]2(?:[1-3]\\\\d{5,6}|7\\\\d{6})\", , , , \"50123456\", ,\n, , [4, 5, 6]], [, , \"(?:8(?:[05689]\\\\d|3[01])|9(?:[014-9]\\\\d|20|3[0-4]))\\\\d{5}\", , , , \"88123456\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"7(?:100|5(?:0[0579]|1[015]|[389]5|[57][57])|(?:6[0167]|7\\\\d|8[01])\\\\d)\\\\d{4}\", , , , \"75153456\", , , [8]], \"MN\", 976, \"001\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{4})\", \"$1 $2 $3\", [\"[12]1\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[57-9]\"]], [, \"(\\\\d{3})(\\\\d{5,6})\", \"$1 $2\",\n[\"[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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MO:[, [, , \"(?:28|[68]\\\\d)\\\\d{6}\", , , , , , , [8]], [, , \"(?:28[2-57-9]|8(?:11|[2-57-9]\\\\d))\\\\d{5}\", , , , \"28212345\"], [, , \"6(?:[2356]\\\\d\\\\d|8(?:[02][5-9]|[1478]\\\\d|[356][0-4]))\\\\d{4}\",\n, , , \"66123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"MO\", 853, \"00\", , , , , , , , [[, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[268]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MP:[, [, , \"[58]\\\\d{9}|(?:67|90)0\\\\d{7}\", , , , , , , [10], [7]], [, , \"670(?:2(?:3[3-7]|56|8[5-8])|32[1-38]|4(?:33|8[348])|5(?:32|55|88)|6(?:64|70|82)|78[3589]|8[3-9]8|989)\\\\d{4}\",\n, , , \"6702345678\", , , , [7]], [, , \"670(?:2(?:3[3-7]|56|8[5-8])|32[1-38]|4(?:33|8[348])|5(?:32|55|88)|6(?:64|70|82)|78[3589]|8[3-9]8|989)\\\\d{4}\", , , , \"6702345678\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"MP\", 1, \"011\", \"1\", , , \"1|([2-9]\\\\d{6})$\", \"670$1\", , 1, , , [, , , , , , , , , [-1]], ,\n\"670\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MQ:[, [, , \"(?:596|69\\\\d)\\\\d{6}\", , , , , , , [9]], [, , \"596(?:0[0-7]|10|2[7-9]|3[05-9]|4[0-46-8]|[5-7]\\\\d|8[09]|9[4-8])\\\\d{4}\", , , , \"596301234\"], [, , \"69(?:6(?:[0-47-9]\\\\d|5[0-6]|6[0-4])|727)\\\\d{4}\", , , , \"696201234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"MQ\", 596, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\n\"$1 $2 $3 $4\", [\"[56]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MR:[, [, , \"(?:[2-4]\\\\d\\\\d|800)\\\\d{5}\", , , , , , , [8]], [, , \"(?:25[08]|35\\\\d|45[1-7])\\\\d{5}\", , , , \"35123456\"], [, , \"[2-4][0-46-9]\\\\d{6}\", , , , \"22123456\"], [, , \"800\\\\d{5}\", , , , \"80012345\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"MR\", 222, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\n\"$1 $2 $3 $4\", [\"[2-48]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MS:[, [, , \"66449\\\\d{5}|(?:[58]\\\\d\\\\d|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"664491\\\\d{4}\", , , , \"6644912345\", , , , [7]], [, , \"66449[2-6]\\\\d{4}\", , , , \"6644923456\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\",\n, , , \"5002345678\"], [, , , , , , , , , [-1]], \"MS\", 1, \"011\", \"1\", , , \"1|(4\\\\d{6})$\", \"664$1\", , , , , [, , , , , , , , , [-1]], , \"664\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MT:[, [, , \"3550\\\\d{4}|(?:[2579]\\\\d\\\\d|800)\\\\d{5}\", , , , , , , [8]], [, , \"2(?:0(?:[19]\\\\d|3[1-4]|6[059])|[1-357]\\\\d\\\\d)\\\\d{4}\", , , , \"21001234\"], [, , \"(?:7(?:210|[79]\\\\d\\\\d)|9(?:2(?:1[01]|31)|69[67]|8(?:1[1-3]|89|97)|9\\\\d\\\\d))\\\\d{4}\", , , , \"96961234\"], [, , \"800[3467]\\\\d{4}\",\n, , , \"80071234\"], [, , \"5(?:0(?:0(?:37|43)|(?:6\\\\d|70|9[0168])\\\\d)|[12]\\\\d0[1-5])\\\\d{3}\", , , , \"50037123\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"3550\\\\d{4}\", , , , \"35501234\"], \"MT\", 356, \"00\", , , , , , , , [[, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[2357-9]\"]]], , [, , \"7117\\\\d{4}\", , , , \"71171234\"], , , [, , , , , , , , , [-1]], [, , \"501\\\\d{5}\", , , , \"50112345\"], , , [, , , , , , , , , [-1]]], MU:[, [, , \"(?:[2-468]|5\\\\d)\\\\d{6}\", , , , , , , [7, 8]], [, , \"(?:2(?:[03478]\\\\d|1[0-7]|6[0-79])|4(?:[013568]\\\\d|2[4-7])|54(?:[34]\\\\d|71)|6\\\\d\\\\d|8(?:14|3[129]))\\\\d{4}\",\n, , , \"54480123\"], [, , \"5(?:4(?:2[1-389]|7[1-9])|87[15-8])\\\\d{4}|5(?:2[589]|4[3489]|7\\\\d|8[0-689]|9[0-8])\\\\d{5}\", , , , \"52512345\", , , [8]], [, , \"80[0-2]\\\\d{4}\", , , , \"8001234\", , , [7]], [, , \"30\\\\d{5}\", , , , \"3012345\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"3(?:20|9\\\\d)\\\\d{4}\", , , , \"3201234\", , , [7]], \"MU\", 230, \"0(?:0|[24-7]0|3[03])\", , , , , , \"020\", , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[2-46]|8[013]\"]], [, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"5\"]]], , [, , , ,\n, , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MV:[, [, , \"(?:800|9[0-57-9]\\\\d)\\\\d{7}|[34679]\\\\d{6}\", , , , , , , [7, 10]], [, , \"(?:3(?:0[0-3]|3[0-59])|6(?:[57][02468]|6[024-68]|8[024689]))\\\\d{4}\", , , , \"6701234\", , , [7]], [, , \"46[46]\\\\d{4}|(?:7[2-9]|9[13-9])\\\\d{5}\", , , , \"7712345\", , , [7]], [, , \"800\\\\d{7}\", , , , \"8001234567\", , , [10]], [, , \"900\\\\d{7}\", , , , \"9001234567\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]],\n[, , , , , , , , , [-1]], \"MV\", 960, \"0(?:0|19)\", , , , , , \"00\", , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1-$2\", [\"[3467]|9[13-9]\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[89]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"4[05]0\\\\d{4}\", , , , \"4001234\", , , [7]], , , [, , , , , , , , , [-1]]], MW:[, [, , \"1\\\\d{6}(?:\\\\d{2})?|(?:[23]1|77|88|99)\\\\d{7}\", , , , , , , [7, 9]], [, , \"(?:1[2-9]|21\\\\d\\\\d)\\\\d{5}\", , , , \"1234567\"], [, , \"111\\\\d{6}|(?:77|88|99)\\\\d{7}\", , , , \"991234567\",\n, , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"31\\\\d{7}\", , , , \"310123456\", , , [9]], \"MW\", 265, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"3\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[17-9]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]],\n[, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MX:[, [, , \"(?:1(?:[01467]\\\\d|[2359][1-9]|8[1-79])|[2-9]\\\\d)\\\\d{8}\", , , , , , , [10, 11], [7, 8]], [, , \"(?:2(?:0[01]|2[1-9]|3[1-35-8]|4[13-9]|7[1-689]|8[1-578]|9[467])|3(?:1[1-79]|[2458][1-9]|3\\\\d|7[1-8]|9[1-5])|4(?:1[1-57-9]|[24-7][1-9]|3[1-8]|8[1-35-9]|9[2-689])|5(?:[56]\\\\d|88|9[1-79])|6(?:1[2-68]|[2-4][1-9]|5[1-3689]|6[1-57-9]|7[1-7]|8[67]|9[4-8])|7(?:[1-467][1-9]|5[13-9]|8[1-69]|9[17])|8(?:1\\\\d|2[13-689]|3[1-6]|4[124-6]|6[1246-9]|7[1-378]|9[12479])|9(?:1[346-9]|2[1-4]|3[2-46-8]|5[1348]|[69][1-9]|7[12]|8[1-8]))\\\\d{7}\",\n, , , \"2001234567\", , , [10], [7, 8]], [, , \"(?:1(?:2(?:2[1-9]|3[1-35-8]|4[13-9]|7[1-689]|8[1-578]|9[467])|3(?:1[1-79]|[2458][1-9]|3\\\\d|7[1-8]|9[1-5])|4(?:1[1-57-9]|[24-7][1-9]|3[1-8]|8[1-35-9]|9[2-689])|5(?:[56]\\\\d|88|9[1-79])|6(?:1[2-68]|[2-4][1-9]|5[1-3689]|6[1-57-9]|7[1-7]|8[67]|9[4-8])|7(?:[1-467][1-9]|5[13-9]|8[1-69]|9[17])|8(?:1\\\\d|2[13-689]|3[1-6]|4[124-6]|6[1246-9]|7[1-378]|9[12479])|9(?:1[346-9]|2[1-4]|3[2-46-8]|5[1348]|[69][1-9]|7[12]|8[1-8]))|2(?:2[1-9]|3[1-35-8]|4[13-9]|7[1-689]|8[1-578]|9[467])|3(?:1[1-79]|[2458][1-9]|3\\\\d|7[1-8]|9[1-5])|4(?:1[1-57-9]|[24-7][1-9]|3[1-8]|8[1-35-9]|9[2-689])|5(?:[56]\\\\d|88|9[1-79])|6(?:1[2-68]|[2-4][1-9]|5[1-3689]|6[1-57-9]|7[1-7]|8[67]|9[4-8])|7(?:[1-467][1-9]|5[13-9]|8[1-69]|9[17])|8(?:1\\\\d|2[13-689]|3[1-6]|4[124-6]|6[1246-9]|7[1-378]|9[12479])|9(?:1[346-9]|2[1-4]|3[2-46-8]|5[1348]|[69][1-9]|7[12]|8[1-8]))\\\\d{7}\",\n, , , \"12221234567\", , , , [7, 8]], [, , \"8(?:00|88)\\\\d{7}\", , , , \"8001234567\", , , [10]], [, , \"900\\\\d{7}\", , , , \"9001234567\", , , [10]], [, , \"300\\\\d{7}\", , , , \"3001234567\", , , [10]], [, , \"500\\\\d{7}\", , , , \"5001234567\", , , [10]], [, , , , , , , , , [-1]], \"MX\", 52, \"0[09]\", \"01\", , , \"0(?:[12]|4[45])|1\", , \"00\", , [[, \"(\\\\d{5})\", \"$1\", [\"53\"]], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"33|5[56]|81\"], , , 1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[2-9]\"], , , 1], [, \"(\\\\d)(\\\\d{2})(\\\\d{4})(\\\\d{4})\",\n\"$2 $3 $4\", [\"1(?:33|5[56]|81)\"], , , 1], [, \"(\\\\d)(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$2 $3 $4\", [\"1\"], , , 1]], [[, \"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"33|5[56]|81\"], , , 1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[2-9]\"], , , 1], [, \"(\\\\d)(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$2 $3 $4\", [\"1(?:33|5[56]|81)\"], , , 1], [, \"(\\\\d)(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$2 $3 $4\", [\"1\"], , , 1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MY:[, [,\n, \"1\\\\d{8,9}|(?:3\\\\d|[4-9])\\\\d{7}\", , , , , , , [8, 9, 10], [6, 7]], [, , \"(?:3(?:2[0-36-9]|3[0-368]|4[0-278]|5[0-24-8]|6[0-467]|7[1246-9]|8\\\\d|9[0-57])\\\\d|4(?:2[0-689]|[3-79]\\\\d|8[1-35689])|5(?:2[0-589]|[3468]\\\\d|5[0-489]|7[1-9]|9[23])|6(?:2[2-9]|3[1357-9]|[46]\\\\d|5[0-6]|7[0-35-9]|85|9[015-8])|7(?:[2579]\\\\d|3[03-68]|4[0-8]|6[5-9]|8[0-35-9])|8(?:[24][2-8]|3[2-5]|5[2-7]|6[2-589]|7[2-578]|[89][2-9])|9(?:0[57]|13|[25-7]\\\\d|[3489][0-8]))\\\\d{5}\", , , , \"323856789\", , , [8, 9], [6, 7]], [, , \"1(?:4400|8(?:47|8[27])[0-4])\\\\d{4}|1(?:0(?:[23568]\\\\d|4[0-6]|7[016-9]|9[0-8])|1(?:[1-5]\\\\d\\\\d|6(?:0[5-9]|[1-9]\\\\d))|(?:[23679][2-9]|4[235-9]|59\\\\d)\\\\d|8(?:1[23]|[236]\\\\d|4[06]|5[7-9]|7[016-9]|8[01]|9[0-8]))\\\\d{5}\",\n, , , \"123456789\", , , [9, 10]], [, , \"1[378]00\\\\d{6}\", , , , \"1300123456\", , , [10]], [, , \"1600\\\\d{6}\", , , , \"1600123456\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"154(?:6(?:0\\\\d|1[0-3])|8(?:[25]1|4[0189]|7[0-4679]))\\\\d{4}\", , , , \"1546012345\", , , [10]], \"MY\", 60, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d)(\\\\d{3})(\\\\d{4})\", \"$1-$2 $3\", [\"[4-79]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3,4})\", \"$1-$2 $3\", [\"1(?:[0249]|[367][2-9]|8[1-9])|8\"], \"0$1\"], [, \"(\\\\d)(\\\\d{4})(\\\\d{4})\",\n\"$1-$2 $3\", [\"3\"], \"0$1\"], [, \"(\\\\d)(\\\\d{3})(\\\\d{2})(\\\\d{4})\", \"$1-$2-$3-$4\", [\"1[36-8]\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1-$2 $3\", [\"15\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1-$2 $3\", [\"1\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MZ:[, [, , \"(?:2|8\\\\d)\\\\d{7}\", , , , , , , [8, 9]], [, , \"2(?:[1346]\\\\d|5[0-2]|[78][12]|93)\\\\d{5}\", , , , \"21123456\", , , [8]], [, , \"8[2-7]\\\\d{7}\", , , , \"821234567\", , , [9]],\n[, , \"800\\\\d{6}\", , , , \"800123456\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"MZ\", 258, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{3,4})\", \"$1 $2 $3\", [\"2|8[2-7]\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"8\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], NA:[, [, , \"[68]\\\\d{7,8}\", , , , , , , [8, 9]], [, , \"6(?:1(?:[02-4]\\\\d\\\\d|17)|2(?:17|54\\\\d|69|70)|3(?:17|2[0237]\\\\d|34|6[289]|7[01]|81)|4(?:17|(?:27|41|5[25])\\\\d|69|7[01])|5(?:17|2[236-8]\\\\d|69|7[01])|6(?:17|26\\\\d|38|42|69|7[01])|7(?:17|(?:2[2-4]|30)\\\\d|6[89]|7[01]))\\\\d{4}|6(?:1(?:2[2-7]|3[01378]|4[0-4]|69|7[014])|25[0-46-8]|32\\\\d|4(?:2[0-27]|4[016]|5[0-357])|52[02-9]|62[56]|7(?:2[2-69]|3[013]))\\\\d{4}\",\n, , , \"61221234\"], [, , \"(?:60|8[1245])\\\\d{7}\", , , , \"811234567\", , , [9]], [, , \"80\\\\d{7}\", , , , \"800123456\", , , [9]], [, , \"8701\\\\d{5}\", , , , \"870123456\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"8(?:3\\\\d\\\\d|86)\\\\d{5}\", , , , \"88612345\"], \"NA\", 264, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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})\",\n\"$1 $2 $3\", [\"8\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], NC:[, [, , \"[2-57-9]\\\\d{5}\", , , , , , , [6]], [, , \"(?:2[03-9]|3[0-5]|4[1-7]|88)\\\\d{4}\", , , , \"201234\"], [, , \"(?:5[0-4]|[79]\\\\d|8[0-79])\\\\d{4}\", , , , \"751234\"], [, , , , , , , , , [-1]], [, , \"36\\\\d{4}\", , , , \"366711\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"NC\", 687, \"00\", , , , , , , , [[, \"(\\\\d{3})\", \"$1\", [\"5[6-8]\"]],\n[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1.$2.$3\", [\"[2-57-9]\"]]], [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1.$2.$3\", [\"[2-57-9]\"]]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], NE:[, [, , \"[0289]\\\\d{7}\", , , , , , , [8]], [, , \"2(?:0(?:20|3[1-8]|4[13-5]|5[14]|6[14578]|7[1-578])|1(?:4[145]|5[14]|6[14-68]|7[169]|88))\\\\d{4}\", , , , \"20201234\"], [, , \"(?:8[014589]|9\\\\d)\\\\d{6}\", , , , \"93123456\"], [, , \"08\\\\d{6}\", , , , \"08123456\"], [, , \"09\\\\d{6}\",\n, , , \"09123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"NE\", 227, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"08\"]], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[089]|2[01]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], NF:[, [, , \"[13]\\\\d{5}\", , , , , , , [6], [5]], [, , \"(?:1(?:06|17|28|39)|3[0-2]\\\\d)\\\\d{3}\", , , , \"106609\", , , , [5]], [, , \"3[58]\\\\d{4}\",\n, , , \"381234\", , , , [5]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"NF\", 672, \"00\", , , , \"([0-258]\\\\d{4})$\", \"3$1\", , , [[, \"(\\\\d{2})(\\\\d{4})\", \"$1 $2\", [\"1\"]], [, \"(\\\\d)(\\\\d{5})\", \"$1 $2\", [\"3\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], NG:[, [, , \"(?:[124-7]|9\\\\d{3})\\\\d{6}|[1-9]\\\\d{7}|[78]\\\\d{9,13}\", , , , , , , [7, 8, 10, 11, 12,\n13, 14], [5, 6]], [, , \"(?:(?:[1-356]\\\\d|4[02-8]|7[0-79]|8[2-9])\\\\d|9(?:0[3-9]|[1-9]\\\\d))\\\\d{5}|(?:[12]\\\\d|4[147]|5[14579]|6[1578]|7[0-3578])\\\\d{5}\", , , , \"18040123\", , , [7, 8], [5, 6]], [, , \"(?:707[0-3]|8(?:01|19)[01])\\\\d{6}|(?:70[1-689]|8(?:0[2-9]|1[0-8])|90[1-35-9])\\\\d{7}\", , , , \"8021234567\", , , [10]], [, , \"800\\\\d{7,11}\", , , , \"80017591759\", , , [10, 11, 12, 13, 14]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"NG\", 234, \"009\",\n\"0\", , , \"0\", , , , [[, \"(\\\\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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"700\\\\d{7,11}\", ,\n, , \"7001234567\", , , [10, 11, 12, 13, 14]], , , [, , , , , , , , , [-1]]], NI:[, [, , \"(?:1800|[25-8]\\\\d{3})\\\\d{4}\", , , , , , , [8]], [, , \"2\\\\d{7}\", , , , \"21234567\"], [, , \"(?:5(?:5[0-7]|[78]\\\\d)|6(?:20|3[035]|4[045]|5[05]|77|8[1-9]|9[059])|(?:7[5-8]|8\\\\d)\\\\d)\\\\d{5}\", , , , \"81234567\"], [, , \"1800\\\\d{4}\", , , , \"18001234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"NI\", 505, \"00\", , , , , , , , [[, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[125-8]\"]]],\n, [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], NL:[, [, , \"(?:[124-7]\\\\d\\\\d|3(?:[02-9]\\\\d|1[0-8]))\\\\d{6}|[89]\\\\d{6,9}|1\\\\d{4,5}\", , , , , , , [5, 6, 7, 8, 9, 10]], [, , \"(?:1(?:[035]\\\\d|1[13-578]|6[124-8]|7[24]|8[0-467])|2(?:[0346]\\\\d|2[2-46-9]|5[125]|9[479])|3(?:[03568]\\\\d|1[3-8]|2[01]|4[1-8])|4(?:[0356]\\\\d|1[1-368]|7[58]|8[15-8]|9[23579])|5(?:[0358]\\\\d|[19][1-9]|2[1-57-9]|4[13-8]|6[126]|7[0-3578])|7\\\\d\\\\d)\\\\d{6}\", , , , \"101234567\",\n, , [9]], [, , \"6[1-58]\\\\d{7}\", , , , \"612345678\", , , [9]], [, , \"800\\\\d{4,7}\", , , , \"8001234\", , , [7, 8, 9, 10]], [, , \"90[069]\\\\d{4,7}\", , , , \"9061234\", , , [7, 8, 9, 10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"(?:85|91)\\\\d{7}\", , , , \"851234567\", , , [9]], \"NL\", 31, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{4})\", \"$1\", [\"1[238]|[34]\"]], [, \"(\\\\d{2})(\\\\d{3,4})\", \"$1 $2\", [\"14\"]], [, \"(\\\\d{6})\", \"$1\", [\"1\"]], [, \"(\\\\d{3})(\\\\d{4,7})\", \"$1 $2\", [\"[89]0\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{7})\",\n\"$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-57-9]\"], \"0$1\"]], [[, \"(\\\\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})\",\n\"$1 $2 $3\", [\"[1-57-9]\"], \"0$1\"]], [, , \"66\\\\d{7}\", , , , \"662345678\", , , [9]], , , [, , \"140(?:1[035]|2[0346]|3[03568]|4[0356]|5[0358]|8[458])|140(?:1[16-8]|2[259]|3[124]|4[17-9]|5[124679]|7)\\\\d\", , , , , , , [5, 6]], [, , \"140(?:1[035]|2[0346]|3[03568]|4[0356]|5[0358]|8[458])|(?:140(?:1[16-8]|2[259]|3[124]|4[17-9]|5[124679]|7)|8[478]\\\\d{6})\\\\d\", , , , \"14020\", , , [5, 6, 9]], , , [, , , , , , , , , [-1]]], NO:[, [, , \"(?:0|[2-9]\\\\d{3})\\\\d{4}\", , , , , , , [5, 8]], [, , \"(?:2[1-4]|3[1-3578]|5[1-35-7]|6[1-4679]|7[0-8])\\\\d{6}\",\n, , , \"21234567\", , , [8]], [, , \"(?:4[015-8]|5[89]|9\\\\d)\\\\d{6}\", , , , \"40612345\", , , [8]], [, , \"80[01]\\\\d{5}\", , , , \"80012345\", , , [8]], [, , \"82[09]\\\\d{5}\", , , , \"82012345\", , , [8]], [, , \"810(?:0[0-6]|[2-8]\\\\d)\\\\d{3}\", , , , \"81021234\", , , [8]], [, , \"880\\\\d{5}\", , , , \"88012345\", , , [8]], [, , \"85[0-5]\\\\d{5}\", , , , \"85012345\", , , [8]], \"NO\", 47, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{3})\", \"$1 $2 $3\", [\"[489]\"]], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[235-7]\"]]],\n, [, , , , , , , , , [-1]], 1, \"[02-689]|7[0-8]\", [, , , , , , , , , [-1]], [, , \"(?:0[2-9]|81(?:0(?:0[7-9]|1\\\\d)|5\\\\d\\\\d))\\\\d{3}\", , , , \"02000\"], , , [, , \"81[23]\\\\d{5}\", , , , \"81212345\", , , [8]]], NP:[, [, , \"9\\\\d{9}|[1-9]\\\\d{7}\", , , , , , , [8, 10], [6, 7]], [, , \"1[0-6]\\\\d{6}|(?:2[13-79]|3[135-8]|4[146-9]|5[135-7]|6[13-9]|7[15-9]|8[1-46-9]|9[1-79])[2-6]\\\\d{5}\", , , , \"14567890\", , , [8], [6, 7]], [, , \"9(?:6[0-3]|7[245]|8[0-24-68])\\\\d{7}\", , , , \"9841234567\", , , [10]], [, , , , , , , , ,\n[-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"NP\", 977, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d)(\\\\d{7})\", \"$1-$2\", [\"1[2-6]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{6})\", \"$1-$2\", [\"[1-8]|9(?:[1-579]|6[2-6])\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{7})\", \"$1-$2\", [\"9\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], NR:[, [, , \"(?:444|55\\\\d|888)\\\\d{4}\", , , , , , , [7]], [, , \"(?:444|888)\\\\d{4}\",\n, , , \"4441234\"], [, , \"55[4-9]\\\\d{4}\", , , , \"5551234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"NR\", 674, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[458]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], NU:[, [, , \"(?:[47]|888\\\\d)\\\\d{3}\", , , , , , , [4, 7]], [, , \"[47]\\\\d{3}\", , , , \"7012\", , , [4]], [, , \"888[4-9]\\\\d{3}\",\n, , , \"8884012\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"NU\", 683, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"8\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], NZ:[, [, , \"[28]\\\\d{7,9}|[346]\\\\d{7}|(?:508|[79]\\\\d)\\\\d{6,7}\", , , , , , , [8, 9, 10], [7]], [, , \"24099\\\\d{3}|(?:3[2-79]|[49][2-9]|6[235-9]|7[2-57-9])\\\\d{6}\",\n, , , \"32345678\", , , [8], [7]], [, , \"2[0-28]\\\\d{8}|2[0-27-9]\\\\d{7}|21\\\\d{6}\", , , , \"211234567\"], [, , \"508\\\\d{6,7}|80\\\\d{6,8}\", , , , \"800123456\"], [, , \"90\\\\d{6,7}\", , , , \"900123456\", , , [8, 9]], [, , , , , , , , , [-1]], [, , \"70\\\\d{7}\", , , , \"701234567\", , , [9]], [, , , , , , , , , [-1]], \"NZ\", 64, \"0(?:0|161)\", \"0\", , , \"0\", , \"00\", , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{3})\", \"$1 $2 $3\", [\"[89]0\"], \"0$1\"], [, \"(\\\\d)(\\\\d{3})(\\\\d{4})\", \"$1-$2 $3\", [\"24|[346]|7[2-57-9]|9[2-9]\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3,4})\",\n\"$1 $2 $3\", [\"2(?:10|74)|[59]|80\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3,4})(\\\\d{4})\", \"$1 $2 $3\", [\"2[028]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3,5})\", \"$1 $2 $3\", [\"2(?:[169]|7[0-35-9])|7|86\"], \"0$1\"]], , [, , \"[28]6\\\\d{6,7}\", , , , \"26123456\", , , [8, 9]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], OM:[, [, , \"(?:[279]\\\\d{3}|500)\\\\d{4}|8007\\\\d{4,5}\", , , , , , , [7, 8, 9]], [, , \"2[2-6]\\\\d{6}\", , , , \"23123456\", , , [8]], [, , \"90[1-9]\\\\d{5}|(?:7[129]|9[1-9])\\\\d{6}\",\n, , , \"92123456\", , , [8]], [, , \"500\\\\d{4}|8007\\\\d{4,5}\", , , , \"80071234\"], [, , \"900\\\\d{5}\", , , , \"90012345\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"OM\", 968, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4,6})\", \"$1 $2\", [\"[58]\"]], [, \"(\\\\d{2})(\\\\d{6})\", \"$1 $2\", [\"2\"]], [, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[79]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], PA:[, [, , \"(?:[1-57-9]|6\\\\d)\\\\d{6}\",\n, , , , , , [7, 8]], [, , \"(?:1(?:0\\\\d|1[479]|2[37]|3[0137]|4[17]|5[05]|[68][58]|7[0167]|9[39])|2(?:[0235-79]\\\\d|1[0-7]|4[013-9]|8[026-9])|3(?:[089]\\\\d|1[014-7]|2[0-35]|33|4[0-579]|55|6[068]|7[06-8])|4(?:00|3[0-579]|4\\\\d|7[0-57-9])|5(?:[01]\\\\d|2[0-7]|[56]0|79)|7(?:0[09]|2[0-26-8]|3[03]|4[04]|5[05-9]|6[05]|7[0-24-9]|8[7-9]|90)|8(?:09|2[89]|3\\\\d|4[0-24-689]|5[014]|8[02])|9(?:0[5-9]|1[0135-8]|2[036-9]|3[35-79]|40|5[0457-9]|6[05-9]|7[04-9]|8[35-8]|9\\\\d))\\\\d{4}\", , , , \"2001234\", , , [7]], [, , \"(?:1[16]1|21[89]|6(?:[02-9]\\\\d|1[0-6])\\\\d|8(?:1[01]|7[23]))\\\\d{4}\",\n, , , \"61234567\"], [, , \"800\\\\d{4}\", , , , \"8001234\", , , [7]], [, , \"(?:8(?:22|55|60|7[78]|86)|9(?:00|81))\\\\d{4}\", , , , \"8601234\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"PA\", 507, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1-$2\", [\"[1-57-9]\"]], [, \"(\\\\d{4})(\\\\d{4})\", \"$1-$2\", [\"6\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], PE:[, [, , \"(?:[14-8]|9\\\\d)\\\\d{7}\", , , , , ,\n, [8, 9], [6, 7]], [, , \"19(?:[02-68]\\\\d|1[035-9]|7[0-689]|9[1-9])\\\\d{4}|(?:1[0-8]|4[1-4]|5[1-46]|6[1-7]|7[2-46]|8[2-4])\\\\d{6}\", , , , \"11234567\", , , [8], [6, 7]], [, , \"9\\\\d{8}\", , , , \"912345678\", , , [9]], [, , \"800\\\\d{5}\", , , , \"80012345\", , , [8]], [, , \"805\\\\d{5}\", , , , \"80512345\", , , [8]], [, , \"801\\\\d{5}\", , , , \"80112345\", , , [8]], [, , \"80[24]\\\\d{5}\", , , , \"80212345\", , , [8]], [, , , , , , , , , [-1]], \"PE\", 51, \"19(?:1[124]|77|90)00\", \"0\", \" Anexo \", , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{5})\",\n\"$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\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], PF:[, [, , \"[48]\\\\d{7}|4\\\\d{5}\", , , , , , , [6, 8]], [, , \"4(?:[09][4-689]\\\\d|4)\\\\d{4}\", , , , \"40412345\"], [, , \"8[7-9]\\\\d{6}\", , , , \"87123456\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]],\n[, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"PF\", 689, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3\", [\"44\"]], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[48]\"]]], , [, , , , , , , , , [-1]], , , [, , \"44\\\\d{4}\", , , , , , , [6]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], PG:[, [, , \"(?:180|[78]\\\\d{3})\\\\d{4}|(?:[2-589]\\\\d|64)\\\\d{5}\", , , , , , , [7, 8]], [, , \"(?:64[1-9]|7730|85[02-46-9])\\\\d{4}|(?:3[0-2]|4[257]|5[34]|77[0-24]|9[78])\\\\d{5}\",\n, , , \"3123456\"], [, , \"775\\\\d{5}|(?:7[0-689]|81)\\\\d{6}\", , , , \"70123456\", , , [8]], [, , \"180\\\\d{4}\", , , , \"1801234\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"2(?:0[0-47]|7[568])\\\\d{4}\", , , , \"2751234\", , , [7]], \"PG\", 675, \"00|140[1-3]\", , , , , , \"00\", , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"18|[2-69]|85\"]], [, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[78]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [,\n, , , , , , , , [-1]]], PH:[, [, , \"1800\\\\d{7,9}|(?:2|[89]\\\\d{4})\\\\d{5}|[2-8]\\\\d{8}|[28]\\\\d{7}\", , , , , , , [6, 8, 9, 10, 11, 12, 13], [4, 5, 7]], [, , \"(?:(?:2[3-8]|3[2-68]|4[2-9]|5[2-6]|6[2-58]|7[24578])\\\\d{3}|88(?:22\\\\d\\\\d|42))\\\\d{4}|2\\\\d{5}(?:\\\\d{2})?|8[2-8]\\\\d{7}\", , , , \"21234567\", , , [6, 8, 9, 10], [4, 5, 7]], [, , \"(?:81[37]|9(?:0[5-9]|1[0-24-9]|2[0-35-9]|[35]\\\\d|4[235-9]|6[0-25-8]|7[1-9]|8[19]|9[4-9]))\\\\d{7}\", , , , \"9051234567\", , , [10]], [, , \"1800\\\\d{7,9}\", , , , \"180012345678\", ,\n, [11, 12, 13]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"PH\", 63, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d)(\\\\d{5})\", \"$1 $2\", [\"2\"], \"(0$1)\"], [, \"(\\\\d)(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"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})\",\n\"$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\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], PK:[,\n[, , \"122\\\\d{6}|[24-8]\\\\d{10,11}|9(?:[013-9]\\\\d{8,10}|2(?:[01]\\\\d\\\\d|2(?:[025-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], [5, 6, 7]], [, , \"(?:(?:21|42)[2-9]|58[126])\\\\d{7}|(?:2[25]|4[0146-9]|5[1-35-7]|6[1-8]|7[14]|8[16]|91)[2-9]\\\\d{6}|(?: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]))[2-9]\\\\d{5,6}\", , , , \"2123456789\", , ,\n[9, 10], [5, 6, 7, 8]], [, , \"3(?:[014]\\\\d|2[0-5]|3[0-7]|55|64)\\\\d{7}\", , , , \"3012345678\", , , [10]], [, , \"800\\\\d{5}\", , , , \"80012345\", , , [8]], [, , \"900\\\\d{5}\", , , , \"90012345\", , , [8]], [, , , , , , , , , [-1]], [, , \"122\\\\d{6}\", , , , \"122044444\", , , [9]], [, , , , , , , , , [-1]], \"PK\", 92, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{2})\", \"$1 $2 $3\", [\"[89]0\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d{5})\", \"$1 $2\", [\"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]\"],\n\"(0$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{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})\",\n\"$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)\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"(?:2(?:[125]|3[2358]|4[2-4]|9[2-8])|4(?:[0-246-9]|5[3479])|5(?:[1-35-7]|4[2-467])|6(?:0[468]|[1-8])|7(?:[14]|2[236])|8(?:[16]|2[2-689]|3[23578]|4[3478]|5[2356])|9(?:1|22|3[27-9]|4[2-6]|6[3569]|9[2-7]))111\\\\d{6}\", , , , \"21111825888\", , , [11, 12]], , , [, , , , , , , , , [-1]]],\nPL:[, [, , \"[1-57-9]\\\\d{6}(?:\\\\d{2})?|6\\\\d{5,8}\", , , , , , , [6, 7, 8, 9]], [, , \"(?: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])(?:[02-9]\\\\d{6}|1(?:[0-8]\\\\d{5}|9\\\\d{3}(?:\\\\d{2})?))\", , , , \"123456789\", , , [7, 9]], [, , \"(?:45|5[0137]|6[069]|7[2389]|88)\\\\d{7}\", , , , \"512345678\", , , [9]], [, , \"800\\\\d{6}\", , , , \"800123456\", , , [9]], [, , \"70[01346-8]\\\\d{6}\", , , , \"701234567\", , , [9]], [, , \"801\\\\d{6}\", , , , \"801234567\", , , [9]], [, , , , , , , , , [-1]], [,\n, \"39\\\\d{7}\", , , , \"391234567\", , , [9]], \"PL\", 48, \"00\", , , , , , , , [[, \"(\\\\d{5})\", \"$1\", [\"19\"]], [, \"(\\\\d{3})(\\\\d{3})\", \"$1 $2\", [\"11|64\"]], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{3})\", \"$1 $2 $3\", [\"(?:1[2-8]|2[2-69]|3[2-4]|4[1-468]|5[24-689]|6[1-3578]|7[14-7]|8[1-79]|9[145])1\", \"(?:1[2-8]|2[2-69]|3[2-4]|4[1-468]|5[24-689]|6[1-3578]|7[14-7]|8[1-79]|9[145])19\"]], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{2,3})\", \"$1 $2 $3\", [\"64\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"39|45|5[0137]|6[0469]|7[02389]|8[08]\"]], [,\n\"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"1[2-8]|[2-8]|9[145]\"]]], , [, , \"64\\\\d{4,7}\", , , , \"641234567\"], , , [, , , , , , , , , [-1]], [, , \"804\\\\d{6}\", , , , \"804123456\", , , [9]], , , [, , , , , , , , , [-1]]], PM:[, [, , \"[45]\\\\d{5}\", , , , , , , [6]], [, , \"(?:4[1-3]|50)\\\\d{4}\", , , , \"430123\"], [, , \"(?:4[02-4]|5[05])\\\\d{4}\", , , , \"551234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"PM\", 508,\n\"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3\", [\"[45]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], PR:[, [, , \"(?:[589]\\\\d\\\\d|787)\\\\d{7}\", , , , , , , [10], [7]], [, , \"(?:787|939)[2-9]\\\\d{6}\", , , , \"7872345678\", , , , [7]], [, , \"(?:787|939)[2-9]\\\\d{6}\", , , , \"7872345678\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002345678\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002345678\"],\n[, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"PR\", 1, \"011\", \"1\", , , \"1\", , , 1, , , [, , , , , , , , , [-1]], , \"787|939\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], PS:[, [, , \"[2489]2\\\\d{6}|(?:1\\\\d|5)\\\\d{8}\", , , , , , , [8, 9, 10], [7]], [, , \"(?:22[2-47-9]|42[45]|82[01458]|92[369])\\\\d{5}\", , , , \"22234567\", , , [8], [7]], [, , \"5[69]\\\\d{7}\", , , , \"599123456\", , , [9]], [, , \"1800\\\\d{6}\",\n, , , \"1800123456\", , , [10]], [, , , , , , , , , [-1]], [, , \"1700\\\\d{6}\", , , , \"1700123456\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"PS\", 970, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], PT:[, [, , \"(?:[26-9]\\\\d|30)\\\\d{7}\",\n, , , , , , [9]], [, , \"2(?:[12]\\\\d|[35][1-689]|4[1-59]|6[1-35689]|7[1-9]|8[1-69]|9[1256])\\\\d{6}\", , , , \"212345678\"], [, , \"9(?:[1-36]\\\\d\\\\d|480)\\\\d{5}\", , , , \"912345678\"], [, , \"80[02]\\\\d{6}\", , , , \"800123456\"], [, , \"(?:6(?:0[178]|4[68])\\\\d|76(?:0[1-57]|1[2-47]|2[237]))\\\\d{5}\", , , , \"760123456\"], [, , \"80(?:8\\\\d|9[1579])\\\\d{5}\", , , , \"808123456\"], [, , \"884[0-4689]\\\\d{5}\", , , , \"884123456\"], [, , \"30\\\\d{7}\", , , , \"301234567\"], \"PT\", 351, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\",\n\"$1 $2 $3\", [\"2[12]\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[236-9]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"70(?:7\\\\d|8[17])\\\\d{5}\", , , , \"707123456\"], , , [, , \"600\\\\d{6}\", , , , \"600110000\"]], PW:[, [, , \"(?:[25-8]\\\\d\\\\d|345|488|900)\\\\d{4}\", , , , , , , [7]], [, , \"(?:2(?:55|77)|345|488|5(?:35|44|87)|6(?:22|54|79)|7(?:33|47)|8(?:24|55|76)|900)\\\\d{4}\", , , , \"2771234\"], [, , \"(?:6[2-4689]0|77\\\\d|88[0-4])\\\\d{4}\", , , , \"6201234\"], [, , , , , , , , , [-1]], [,\n, , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"PW\", 680, \"01[12]\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[2-9]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], PY:[, [, , \"59\\\\d{4,6}|(?:[2-46-9]\\\\d|5[0-8])\\\\d{4,7}\", , , , , , , [6, 7, 8, 9], [5]], [, , \"(?:[26]1|3[289]|4[1246-8]|7[1-3]|8[1-36])\\\\d{5,7}|(?:2(?:2[4-68]|7[15]|9[1-5])|3(?:18|3[167]|4[2357]|51)|4(?:3[12]|5[13]|9[1-47])|5(?:[1-4]\\\\d|5[02-4])|6(?:3[1-3]|44|7[1-46-8])|7(?:4[0-4]|6[1-578]|75|8[0-8])|858)\\\\d{5,6}\",\n, , , \"212345678\", , , [7, 8, 9], [5, 6]], [, , \"9(?:51|6[129]|[78][1-6]|9[1-5])\\\\d{6}\", , , , \"961456789\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"8700[0-4]\\\\d{4}\", , , , \"870012345\", , , [9]], \"PY\", 595, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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[347]|7[46-8]|85\"],\n\"(0$1)\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3,4})\", \"$1 $2 $3\", [\"[26]1|3[289]|4[1246-8]|7[1-3]|8[1-36]\"], \"(0$1)\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"87\"]], [, \"(\\\\d{3})(\\\\d{6})\", \"$1 $2\", [\"9\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[2-8]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"[2-9]0\\\\d{4,7}\", , , , \"201234567\"], , , [, , , , , , , , , [-1]]], QA:[, [, , \"800\\\\d{4}|(?:2|[3-7]\\\\d)\\\\d{6}\", , , , , , , [7, 8]], [, , \"4[04]\\\\d{6}\", , , , \"44123456\",\n, , [8]], [, , \"[35-7]\\\\d{7}\", , , , \"33123456\", , , [8]], [, , \"800\\\\d{4}\", , , , \"8001234\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"QA\", 974, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"2[126]|8\"]], [, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[3-7]\"]]], , [, , \"2(?:[12]\\\\d|61)\\\\d{4}\", , , , \"2123456\", , , [7]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], RE:[, [, , \"(?:26|[68]\\\\d)\\\\d{7}\",\n, , , , , , [9]], [, , \"262\\\\d{6}\", , , , \"262161234\"], [, , \"69(?:2\\\\d\\\\d|3(?:0[0-46]|1[013]|2[0-2]|3[0-39]|4\\\\d|5[05]|6[0-26]|7[0-27]|8[0-8]|9[0-479]))\\\\d{4}\", , , , \"692123456\"], [, , \"80\\\\d{7}\", , , , \"801234567\"], [, , \"89[1-37-9]\\\\d{6}\", , , , \"891123456\"], [, , \"8(?:1[019]|2[0156]|84|90)\\\\d{6}\", , , , \"810123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"RE\", 262, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[268]\"], \"0$1\"]], , [, , , , ,\n, , , , [-1]], 1, \"262|69|8\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], RO:[, [, , \"(?:[237]\\\\d|[89]0)\\\\d{7}|[23]\\\\d{5}\", , , , , , , [6, 9]], [, , \"[23][13-6]\\\\d{7}|(?:2(?:19\\\\d|[3-6]\\\\d9)|31\\\\d\\\\d)\\\\d\\\\d\", , , , \"211234567\"], [, , \"7120\\\\d{5}|7(?:[02-7]\\\\d|1[01]|8[03-8]|99)\\\\d{6}\", , , , \"712034567\", , , [9]], [, , \"800\\\\d{6}\", , , , \"800123456\", , , [9]], [, , \"90[036]\\\\d{6}\", , , , \"900123456\", , , [9]], [, , \"801\\\\d{6}\", , , , \"801123456\", , , [9]], [,\n, , , , , , , , [-1]], [, , , , , , , , , [-1]], \"RO\", 40, \"00\", \"0\", \" int \", , \"0\", , , , [[, \"(\\\\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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"37\\\\d{7}\", , , , \"372123456\", , , [9]], , , [, , , , , , , , , [-1]]], RS:[, [, , \"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}\",\n, , , , , , [6, 7, 8, 9, 10, 11, 12], [4, 5]], [, , \"(?:11[1-9]\\\\d|(?:2[389]|39)(?:0[2-9]|[2-9]\\\\d))\\\\d{3,8}|(?:1[02-9]|2[0-24-7]|3[0-8])[2-9]\\\\d{4,9}\", , , , \"10234567\", , , [7, 8, 9, 10, 11, 12], [4, 5, 6]], [, , \"6(?:[0-689]|7\\\\d)\\\\d{6,7}\", , , , \"601234567\", , , [8, 9, 10]], [, , \"800\\\\d{3,9}\", , , , \"80012345\"], [, , \"(?:78\\\\d|90[0169])\\\\d{3,7}\", , , , \"90012345\", , , [6, 7, 8, 9, 10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"RS\", 381, \"00\", \"0\", , , \"0\",\n, , , [[, \"(\\\\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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"7[06]\\\\d{4,10}\", , , , \"700123456\"], , , [, , , , , , , , , [-1]]], RU:[, [, , \"[347-9]\\\\d{9}\", , , , , , , [10], [7]], [, , \"(?:3(?:0[12]|4[1-35-79]|5[1-3]|65|8[1-58]|9[0145])|4(?:01|1[1356]|2[13467]|7[1-5]|8[1-7]|9[1-689])|8(?:1[1-8]|2[01]|3[13-6]|4[0-8]|5[15]|6[1-35-79]|7[1-37-9]))\\\\d{7}\", , , , \"3011234567\",\n, , , [7]], [, , \"9\\\\d{9}\", , , , \"9123456789\"], [, , \"80[04]\\\\d{7}\", , , , \"8001234567\"], [, , \"80[39]\\\\d{7}\", , , , \"8091234567\"], [, , , , , , , , , [-1]], [, , \"808\\\\d{7}\", , , , \"8081234567\"], [, , , , , , , , , [-1]], \"RU\", 7, \"810\", \"8\", , , \"8\", , \"8~10\", , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1-$2-$3\", [\"[0-79]\"]], [, \"(\\\\d{4})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"7(?:1[0-8]|2[1-9])\", \"7(?:1(?:[0-6]2|7|8[27])|2(?:1[23]|[2-9]2))\", \"7(?:1(?:[0-6]2|7|8[27])|2(?:13[03-69]|62[013-9]))|72[1-57-9]2\"],\n\"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\", [\"[3489]\"],\n\"8 ($1)\", , 1]], [[, \"(\\\\d{4})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"7(?:1[0-8]|2[1-9])\", \"7(?:1(?:[0-6]2|7|8[27])|2(?:1[23]|[2-9]2))\", \"7(?:1(?:[0-6]2|7|8[27])|2(?:13[03-69]|62[013-9]))|72[1-57-9]2\"], \"8 ($1)\", , 1], [, \"(\\\\d{5})(\\\\d)(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"7(?:1[0-68]|2[1-9])\", \"7(?:1(?:[06][3-6]|[18]|2[35]|[3-5][3-5])|2(?:[13][3-5]|[24-689]|7[457]))\", \"7(?:1(?:0(?:[356]|4[023])|[18]|2(?:3[013-9]|5)|3[45]|43[013-79]|5(?:3[1-8]|4[1-7]|5)|6(?:3[0-35-9]|[4-6]))|2(?:1(?:3[178]|[45])|[24-689]|3[35]|7[457]))|7(?:14|23)4[0-8]|71(?:33|45)[1-79]\"],\n\"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\", [\"[3489]\"], \"8 ($1)\", , 1]], [, , , , , , , , , [-1]], 1, \"3[04-689]|[489]\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], RW:[, [, , \"(?:06|[27]\\\\d\\\\d|[89]00)\\\\d{6}\", , , , , , , [8, 9]], [, , \"(?:06|2[258]\\\\d)\\\\d{6}\", , , , \"250123456\"], [, , \"7[238]\\\\d{7}\", , , , \"720123456\", , , [9]], [, , \"800\\\\d{6}\", , , , \"800123456\", ,\n, [9]], [, , \"900\\\\d{6}\", , , , \"900123456\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"RW\", 250, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SA:[, [, , \"92\\\\d{7}|(?:[15]|8\\\\d)\\\\d{8}\",\n, , , , , , [9, 10], [7]], [, , \"1(?:1\\\\d|2[24-8]|3[35-8]|4[3-68]|6[2-5]|7[235-7])\\\\d{6}\", , , , \"112345678\", , , [9], [7]], [, , \"5(?:[013-689]\\\\d|7[0-36-8])\\\\d{6}\", , , , \"512345678\", , , [9]], [, , \"800\\\\d{7}\", , , , \"8001234567\", , , [10]], [, , \"925\\\\d{6}\", , , , \"925012345\", , , [9]], [, , \"920\\\\d{6}\", , , , \"920012345\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"SA\", 966, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{4})(\\\\d{5})\", \"$1 $2\", [\"9\"]], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\",\n[\"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\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"811\\\\d{7}\", , , , \"8110123456\", , , [10]], , , [, , , , , , , , , [-1]]], SB:[, [, , \"(?:[1-6]|[7-9]\\\\d\\\\d)\\\\d{4}\", , , , , , , [5, 7]], [, , \"(?:1[4-79]|[23]\\\\d|4[0-2]|5[03]|6[0-37])\\\\d{3}\", , , , \"40123\", , , [5]], [, , \"48\\\\d{3}|(?:(?:7[1-9]|8[4-9])\\\\d|9(?:1[2-9]|2[013-9]|3[0-2]|[46]\\\\d|5[0-46-9]|7[0-689]|8[0-79]|9[0-8]))\\\\d{4}\",\n, , , \"7421234\"], [, , \"1[38]\\\\d{3}\", , , , \"18123\", , , [5]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"5[12]\\\\d{3}\", , , , \"51123\", , , [5]], \"SB\", 677, \"0[01]\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{5})\", \"$1 $2\", [\"7|8[4-9]|9(?:[1-8]|9[0-8])\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SC:[, [, , \"8000\\\\d{3}|(?:[249]\\\\d|64)\\\\d{5}\", , , , , , , [7]], [, , \"4[2-46]\\\\d{5}\", , , , \"4217123\"],\n[, , \"2[5-8]\\\\d{5}\", , , , \"2510123\"], [, , \"8000\\\\d{3}\", , , , \"8000000\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"971\\\\d{4}|(?:64|95)\\\\d{5}\", , , , \"6412345\"], \"SC\", 248, \"010|0[0-2]\", , , , , , \"00\", , [[, \"(\\\\d)(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[246]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SD:[, [, , \"[19]\\\\d{8}\", , , , , , , [9]], [, , \"1(?:5[3-7]|8[35-7])\\\\d{6}\", , , ,\n\"153123456\"], [, , \"(?:1[0-2]|9[0-3569])\\\\d{7}\", , , , \"911231234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"SD\", 249, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[19]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SE:[, [, , \"(?:[26]\\\\d\\\\d|9)\\\\d{9}|[1-9]\\\\d{8}|[1-689]\\\\d{7}|[1-4689]\\\\d{6}|2\\\\d{5}\", ,\n, , , , , [6, 7, 8, 9, 10, 12]], [, , \"10[1-8]\\\\d{6}|90[1-9]\\\\d{4,6}|(?:[12][136]|3[356]|4[0246]|6[03]|8\\\\d)\\\\d{5,7}|(?:1(?:2[0-35]|4[0-4]|5[0-25-9]|7[13-6]|[89]\\\\d)|2(?:2[0-7]|4[0136-8]|5[0138]|7[018]|8[01]|9[0-57])|3(?:0[0-4]|1\\\\d|2[0-25]|4[056]|7[0-2]|8[0-3]|9[023])|4(?:1[013-8]|3[0135]|5[14-79]|7[0-246-9]|8[0156]|9[0-689])|5(?:0[0-6]|[15][0-5]|2[0-68]|3[0-4]|4\\\\d|6[03-5]|7[013]|8[0-79]|9[01])|6(?:1[1-3]|2[0-4]|4[02-57]|5[0-37]|6[0-3]|7[0-2]|8[0247]|9[0-356])|9(?:1[0-68]|2\\\\d|3[02-5]|4[0-3]|5[0-4]|[68][01]|7[0135-8]))\\\\d{5,6}\",\n, , , \"8123456\", , , [7, 8, 9]], [, , \"7[02369]\\\\d{7}\", , , , \"701234567\", , , [9]], [, , \"20\\\\d{4,7}\", , , , \"20123456\", , , [6, 7, 8, 9]], [, , \"649\\\\d{6}|9(?:00|39|44)[1-8]\\\\d{3,6}\", , , , \"9001234567\", , , [7, 8, 9, 10]], [, , \"77[0-7]\\\\d{6}\", , , , \"771234567\", , , [9]], [, , \"75[1-8]\\\\d{6}\", , , , \"751234567\", , , [9]], [, , , , , , , , , [-1]], \"SE\", 46, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{2,3})(\\\\d{2})\", \"$1-$2 $3\", [\"20\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{4})\", \"$1-$2\", [\"9(?:00|39|44)\"],\n\"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{2})\", \"$1-$2 $3\", [\"[12][136]|3[356]|4[0246]|6[03]|90[1-9]\"], \"0$1\"], [, \"(\\\\d)(\\\\d{2,3})(\\\\d{2})(\\\\d{2})\", \"$1-$2 $3 $4\", [\"8\"], \"0$1\"], [, \"(\\\\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\"], [, \"(\\\\d{3})(\\\\d{2,3})(\\\\d{3})\", \"$1-$2 $3\", [\"9(?:00|39|44)\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{2,3})(\\\\d{2})(\\\\d{2})\", \"$1-$2 $3 $4\", [\"1[013689]|2[0136]|3[1356]|4[0246]|54|6[03]|90[1-9]\"],\n\"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1-$2 $3 $4\", [\"7\"], \"0$1\"], [, \"(\\\\d)(\\\\d{3})(\\\\d{3})(\\\\d{2})\", \"$1-$2 $3 $4\", [\"8\"], \"0$1\"], [, \"(\\\\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\"], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{3})\", \"$1-$2 $3 $4\", [\"9\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1-$2 $3 $4 $5\", [\"[26]\"], \"0$1\"]], [[, \"(\\\\d{2})(\\\\d{2,3})(\\\\d{2})\", \"$1 $2 $3\", [\"20\"]], [, \"(\\\\d{3})(\\\\d{4})\",\n\"$1 $2\", [\"9(?:00|39|44)\"]], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{2})\", \"$1 $2 $3\", [\"[12][136]|3[356]|4[0246]|6[03]|90[1-9]\"]], [, \"(\\\\d)(\\\\d{2,3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"8\"]], [, \"(\\\\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])\"]], [, \"(\\\\d{3})(\\\\d{2,3})(\\\\d{3})\", \"$1 $2 $3\", [\"9(?:00|39|44)\"]], [, \"(\\\\d{2})(\\\\d{2,3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"1[013689]|2[0136]|3[1356]|4[0246]|54|6[03]|90[1-9]\"]],\n[, \"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"7\"]], [, \"(\\\\d)(\\\\d{3})(\\\\d{3})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"8\"]], [, \"(\\\\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])\"]], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{3})\", \"$1 $2 $3 $4\", [\"9\"]], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4 $5\", [\"[26]\"]]], [, , \"74[02-9]\\\\d{6}\", , , , \"740123456\", , , [9]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]],\n, , [, , \"(?:25[245]|67[3-68])\\\\d{9}\", , , , \"254123456789\", , , [12]]], SG:[, [, , \"(?:(?:1\\\\d|8)\\\\d\\\\d|7000)\\\\d{7}|[3689]\\\\d{7}\", , , , , , , [8, 10, 11]], [, , \"6[1-9]\\\\d{6}\", , , , \"61234567\", , , [8]], [, , \"89[01]\\\\d{5}|(?:8[1-8]|9[0-8])\\\\d{6}\", , , , \"81234567\", , , [8]], [, , \"(?:18|8)00\\\\d{7}\", , , , \"18001234567\", , , [10, 11]], [, , \"1900\\\\d{7}\", , , , \"19001234567\", , , [11]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"3[12]\\\\d{6}\", , , , \"31234567\", , , [8]], \"SG\", 65,\n\"0[0-3]\\\\d\", , , , , , , , [[, \"(\\\\d{4,5})\", \"$1\", [\"1[0135-7]|77\"]], [, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[369]|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\"]]], [[, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[369]|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\"]]], [, , , , , , , , , [-1]],\n, , [, , , , , , , , , [-1]], [, , \"7000\\\\d{7}\", , , , \"70001234567\", , , [11]], , , [, , , , , , , , , [-1]]], SH:[, [, , \"(?:[256]\\\\d|8)\\\\d{3}\", , , , , , , [4, 5]], [, , \"2(?:[0-57-9]\\\\d|6[4-9])\\\\d\\\\d\", , , , \"22158\"], [, , \"[56]\\\\d{4}\", , , , \"51234\", , , [5]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"262\\\\d\\\\d\", , , , \"26212\", , , [5]], \"SH\", 290, \"00\", , , , , , , , , , [, , , , , , , , , [-1]], 1, \"[256]\", [, , , , , , ,\n, , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SI:[, [, , \"[1-7]\\\\d{7}|8\\\\d{4,7}|90\\\\d{4,6}\", , , , , , , [5, 6, 7, 8]], [, , \"(?:[1-357][2-8]|4[24-8])\\\\d{6}\", , , , \"12345678\", , , [8], [7]], [, , \"6(?:5(?:1\\\\d|55|[67]0)|9(?:10|[69]\\\\d))\\\\d{4}|(?:[37][01]|4[0139]|51|6[48])\\\\d{6}\", , , , \"31234567\", , , [8]], [, , \"80\\\\d{4,6}\", , , , \"80123456\", , , [6, 7, 8]], [, , \"89[1-3]\\\\d{2,5}|90\\\\d{4,6}\", , , , \"90123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"(?:59\\\\d\\\\d|8(?:1(?:[67]\\\\d|8[01389])|2(?:0\\\\d|2[0378]|8[0-2489])|3[389]\\\\d))\\\\d{4}\",\n, , , \"59012345\", , , [8]], \"SI\", 386, \"00|10(?:22|66|88|99)\", \"0\", , , \"0\", , \"00\", , [[, \"(\\\\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)\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SJ:[, [, , \"0\\\\d{4}|(?:[4589]\\\\d|79)\\\\d{6}\",\n, , , , , , [5, 8]], [, , \"79\\\\d{6}\", , , , \"79123456\", , , [8]], [, , \"(?:4[015-8]|5[89]|9\\\\d)\\\\d{6}\", , , , \"41234567\", , , [8]], [, , \"80[01]\\\\d{5}\", , , , \"80012345\", , , [8]], [, , \"82[09]\\\\d{5}\", , , , \"82012345\", , , [8]], [, , \"810(?:0[0-6]|[2-8]\\\\d)\\\\d{3}\", , , , \"81021234\", , , [8]], [, , \"880\\\\d{5}\", , , , \"88012345\", , , [8]], [, , \"85[0-5]\\\\d{5}\", , , , \"85012345\", , , [8]], \"SJ\", 47, \"00\", , , , , , , , , , [, , , , , , , , , [-1]], , \"79\", [, , , , , , , , , [-1]], [, , \"(?:0[2-9]|81(?:0(?:0[7-9]|1\\\\d)|5\\\\d\\\\d))\\\\d{3}\",\n, , , \"02000\"], , , [, , \"81[23]\\\\d{5}\", , , , \"81212345\", , , [8]]], SK:[, [, , \"[2-689]\\\\d{8}|[2-59]\\\\d{6}|[2-5]\\\\d{5}\", , , , , , , [6, 7, 9]], [, , \"(?:2(?:16|[2-9]\\\\d{3})|[3-5][1-8]\\\\d{3})\\\\d{4}|(?:2|[3-5][1-8])1[67]\\\\d{3}|[3-5][1-8]16\\\\d\\\\d\", , , , \"221234567\"], [, , \"909[1-9]\\\\d{5}|9(?:0[1-8]|1[0-24-9]|[45]\\\\d)\\\\d{6}\", , , , \"912123456\", , , [9]], [, , \"800\\\\d{6}\", , , , \"800123456\", , , [9]], [, , \"9(?:00|[78]\\\\d)\\\\d{6}\", , , , \"900123456\", , , [9]], [, , \"8[5-9]\\\\d{7}\", , , , \"850123456\",\n, , [9]], [, , , , , , , , , [-1]], [, , \"6(?:02|5[0-4]|9[0-6])\\\\d{6}\", , , , \"690123456\", , , [9]], \"SK\", 421, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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{4})(\\\\d{3})\", \"$1 $2\", [\"909\", \"9090\"], \"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})\",\n\"$1/$2 $3 $4\", [\"[3-5]\"], \"0$1\"]], [[, \"(\\\\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\"]], [, , \"9090\\\\d{3}\", , , , \"9090123\", , , [7]], , , [, , \"9090\\\\d{3}|(?:602|8(?:00|[5-9]\\\\d)|9(?:00|[78]\\\\d))\\\\d{6}\",\n, , , , , , [7, 9]], [, , \"96\\\\d{7}\", , , , \"961234567\", , , [9]], , , [, , , , , , , , , [-1]]], SL:[, [, , \"(?:[2378]\\\\d|99)\\\\d{6}\", , , , , , , [8], [6]], [, , \"22\\\\d{6}\", , , , \"22221234\", , , , [6]], [, , \"(?:25|3[0134]|7[5-9]|8[08]|99)\\\\d{6}\", , , , \"25123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"SL\", 232, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{6})\", \"$1 $2\", [\"[237-9]\"], \"(0$1)\"]], , [, , ,\n, , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SM:[, [, , \"(?:0549|[5-7]\\\\d)\\\\d{6}\", , , , , , , [8, 10], [6]], [, , \"0549(?:8[0157-9]|9\\\\d)\\\\d{4}\", , , , \"0549886377\", , , [10], [6]], [, , \"6[16]\\\\d{6}\", , , , \"66661212\", , , [8]], [, , , , , , , , , [-1]], [, , \"7[178]\\\\d{6}\", , , , \"71123456\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"5[158]\\\\d{6}\", , , , \"58001110\", , , [8]], \"SM\", 378, \"00\", , , , \"([89]\\\\d{5})$\",\n\"0549$1\", , , [[, \"(\\\\d{6})\", \"$1\", [\"[89]\"]], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[5-7]\"]], [, \"(\\\\d{4})(\\\\d{6})\", \"$1 $2\", [\"0\"]]], [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[5-7]\"]], [, \"(\\\\d{4})(\\\\d{6})\", \"$1 $2\", [\"0\"]]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SN:[, [, , \"(?:[378]\\\\d{4}|93330)\\\\d{4}\", , , , , , , [9]], [, , \"3(?:0(?:1[0-2]|80)|282|3(?:8[1-9]|9[3-9])|611)\\\\d{5}\", , , ,\n\"301012345\"], [, , \"7(?:[06-8]\\\\d|21|90)\\\\d{6}\", , , , \"701234567\"], [, , \"800\\\\d{6}\", , , , \"800123456\"], [, , \"88[4689]\\\\d{6}\", , , , \"884123456\"], [, , \"81[02468]\\\\d{6}\", , , , \"810123456\"], [, , , , , , , , , [-1]], [, , \"93330\\\\d{4}|3(?:392|9[01]\\\\d)\\\\d{5}\", , , , \"933301234\"], \"SN\", 221, \"00\", , , , , , , , [[, \"(\\\\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]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]],\n[, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SO:[, [, , \"[346-9]\\\\d{8}|[12679]\\\\d{7}|(?:[1-4]\\\\d|59)\\\\d{5}|[1348]\\\\d{5}\", , , , , , , [6, 7, 8, 9]], [, , \"(?:1\\\\d|2[0-79]|3[0-46-8]|4[0-7]|59)\\\\d{5}|(?:[134]\\\\d|8[125])\\\\d{4}\", , , , \"4012345\", , , [6, 7]], [, , \"28\\\\d{5}|(?:6[1-9]|79)\\\\d{6,7}|(?:15|24|(?:3[59]|4[89]|8[08])\\\\d|60|7[1-8]|9(?:0[67]|[2-9]))\\\\d{6}\", , , , \"71123456\", , , [7, 8, 9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , ,\n, , [-1]], [, , , , , , , , , [-1]], \"SO\", 252, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{4})\", \"$1 $2\", [\"8[125]\"]], [, \"(\\\\d{6})\", \"$1\", [\"[134]\"]], [, \"(\\\\d)(\\\\d{6})\", \"$1 $2\", [\"1|2[0-79]|3[0-46-8]|4[0-7]|59\"]], [, \"(\\\\d)(\\\\d{7})\", \"$1 $2\", [\"24|[67]\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[348]|64|79[0-8]|90\"]], [, \"(\\\\d{2})(\\\\d{5,7})\", \"$1 $2\", [\"1|28|6[1-35-9]|799|9[2-9]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , ,\n, [-1]]], SR:[, [, , \"(?:[2-5]|68|[78]\\\\d)\\\\d{5}\", , , , , , , [6, 7]], [, , \"(?:2[1-3]|3[0-7]|(?:4|68)\\\\d|5[2-58])\\\\d{4}\", , , , \"211234\"], [, , \"(?:7[124-7]|8[125-9])\\\\d{5}\", , , , \"7412345\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"56\\\\d{4}\", , , , \"561234\", , , [6]], \"SR\", 597, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1-$2-$3\", [\"56\"]], [, \"(\\\\d{3})(\\\\d{3})\", \"$1-$2\", [\"[2-5]\"]], [, \"(\\\\d{3})(\\\\d{4})\",\n\"$1-$2\", [\"[6-8]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SS:[, [, , \"[19]\\\\d{8}\", , , , , , , [9]], [, , \"18\\\\d{7}\", , , , \"181234567\"], [, , \"(?:12|9[1257])\\\\d{7}\", , , , \"977123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"SS\", 211, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[19]\"], \"0$1\"]], , [,\n, , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], ST:[, [, , \"(?:22|9\\\\d)\\\\d{5}\", , , , , , , [7]], [, , \"22\\\\d{5}\", , , , \"2221234\"], [, , \"900[5-9]\\\\d{3}|9(?:0[1-9]|[89]\\\\d)\\\\d{4}\", , , , \"9812345\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"ST\", 239, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[29]\"]]], , [, , , , , , , , , [-1]], , , [,\n, , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SV:[, [, , \"[267]\\\\d{7}|[89]00\\\\d{4}(?:\\\\d{4})?\", , , , , , , [7, 8, 11]], [, , \"2[1-6]\\\\d{6}\", , , , \"21234567\", , , [8]], [, , \"[67]\\\\d{7}\", , , , \"70123456\", , , [8]], [, , \"800\\\\d{4}(?:\\\\d{4})?\", , , , \"8001234\", , , [7, 11]], [, , \"900\\\\d{4}(?:\\\\d{4})?\", , , , \"9001234\", , , [7, 11]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"SV\", 503, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\",\n\"$1 $2\", [\"[89]\"]], [, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[267]\"]], [, \"(\\\\d{3})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"[89]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SX:[, [, , \"7215\\\\d{6}|(?:[58]\\\\d\\\\d|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"7215(?:4[2-8]|8[239]|9[056])\\\\d{4}\", , , , \"7215425678\", , , , [7]], [, , \"7215(?:1[02]|2\\\\d|5[034679]|8[014-8])\\\\d{4}\", , , , \"7215205678\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\",\n, , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"SX\", 1, \"011\", \"1\", , , \"1|(5\\\\d{6})$\", \"721$1\", , , , , [, , , , , , , , , [-1]], , \"721\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SY:[, [, , \"[1-39]\\\\d{8}|[1-5]\\\\d{7}\", , , , , , , [8, 9], [6, 7]], [, , \"[12]1\\\\d{6,7}|(?:1(?:[2356]|4\\\\d)|2[235]|3(?:[13]\\\\d|4)|4[13]|5[1-3])\\\\d{6}\",\n, , , \"112345678\", , , , [6, 7]], [, , \"9(?:22|[3-589]\\\\d|6[024-9])\\\\d{6}\", , , , \"944567890\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"SY\", 963, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , ,\n, , , , , , [-1]]], SZ:[, [, , \"0800\\\\d{4}|(?:[237]\\\\d|900)\\\\d{6}\", , , , , , , [8, 9]], [, , \"[23][2-5]\\\\d{6}\", , , , \"22171234\", , , [8]], [, , \"7[6-9]\\\\d{6}\", , , , \"76123456\", , , [8]], [, , \"0800\\\\d{4}\", , , , \"08001234\", , , [8]], [, , \"900\\\\d{6}\", , , , \"900012345\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"70\\\\d{6}\", , , , \"70012345\", , , [8]], \"SZ\", 268, \"00\", , , , , , , , [[, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[0237]\"]], [, \"(\\\\d{5})(\\\\d{4})\", \"$1 $2\", [\"9\"]]], ,\n[, , , , , , , , , [-1]], , , [, , \"0800\\\\d{4}\", , , , , , , [8]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], TA:[, [, , \"8\\\\d{3}\", , , , , , , [4]], [, , \"8\\\\d{3}\", , , , \"8999\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"TA\", 290, \"00\", , , , , , , , , , [, , , , , , , , , [-1]], , \"8\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]],\nTC:[, [, , \"(?:[58]\\\\d\\\\d|649|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"649(?:712|9(?:4\\\\d|50))\\\\d{4}\", , , , \"6497121234\", , , , [7]], [, , \"649(?:2(?:3[129]|4[1-7])|3(?:3[1-389]|4[1-8])|4[34][1-3])\\\\d{4}\", , , , \"6492311234\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002345678\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002345678\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , \"64971[01]\\\\d{4}\", , , , \"6497101234\", , , , [7]],\n\"TC\", 1, \"011\", \"1\", , , \"1|([2-479]\\\\d{6})$\", \"649$1\", , , , , [, , , , , , , , , [-1]], , \"649\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], TD:[, [, , \"(?:22|[69]\\\\d|77)\\\\d{6}\", , , , , , , [8]], [, , \"22(?:[37-9]0|5[0-5]|6[89])\\\\d{4}\", , , , \"22501234\"], [, , \"(?:6[023568]|77|9\\\\d)\\\\d{6}\", , , , \"63012345\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"TD\", 235, \"00|16\",\n, , , , , \"00\", , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[2679]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], TG:[, [, , \"[279]\\\\d{7}\", , , , , , , [8]], [, , \"2(?:2[2-7]|3[23]|4[45]|55|6[67]|77)\\\\d{5}\", , , , \"22212345\"], [, , \"(?:7[09]|9[0-36-9])\\\\d{6}\", , , , \"90112345\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"TG\",\n228, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[279]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], TH:[, [, , \"1\\\\d{8,9}|(?:[2-57]|[689]\\\\d)\\\\d{7}\", , , , , , , [8, 9, 10]], [, , \"(?:2\\\\d|3[2-9]|4[2-5]|5[2-6]|7[3-7])\\\\d{6}\", , , , \"21234567\", , , [8]], [, , \"(?:14|6[1-6]|[89]\\\\d)\\\\d{7}\", , , , \"812345678\", , , [9]], [, , \"1800\\\\d{6}\", , , , \"1800123456\", , , [10]], [, , \"1900\\\\d{6}\", , , ,\n\"1900123456\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"6[08]\\\\d{7}\", , , , \"601234567\", , , [9]], \"TH\", 66, \"00[1-9]\", \"0\", , , \"0\", , , , [[, \"(\\\\d)(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"2\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3,4})\", \"$1 $2 $3\", [\"14|[3-9]\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"1\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], TJ:[, [, , \"(?:[3-59]\\\\d|77|88)\\\\d{7}\", , ,\n, , , , [9], [3, 5, 6, 7]], [, , \"(?:3(?:1[3-5]|2[245]|3[12]|4[24-7]|5[25]|72)|4(?:46|74|87))\\\\d{6}\", , , , \"372123456\", , , , [3, 5, 6, 7]], [, , \"41[18]\\\\d{6}|(?:5[05]|77|88|9\\\\d)\\\\d{7}\", , , , \"917123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"TJ\", 992, \"810\", \"8\", , , \"8\", , \"8~10\", , [[, \"(\\\\d{6})(\\\\d)(\\\\d{2})\", \"$1 $2 $3\", [\"331\", \"3317\"], , , 1], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{4})\", \"$1 $2 $3\", [\"[34]7|91[78]\"],\n, , 1], [, \"(\\\\d{4})(\\\\d)(\\\\d{4})\", \"$1 $2 $3\", [\"3\"], , , 1], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[457-9]\"], , , 1]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], TK:[, [, , \"[2-47]\\\\d{3,6}\", , , , , , , [4, 5, 6, 7]], [, , \"(?:2[2-4]|[34]\\\\d)\\\\d{2,5}\", , , , \"3101\"], [, , \"7[2-4]\\\\d{2,5}\", , , , \"7290\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , ,\n, , , , [-1]], \"TK\", 690, \"00\", , , , , , , , , , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], TL:[, [, , \"7\\\\d{7}|(?:[2-47]\\\\d|[89]0)\\\\d{5}\", , , , , , , [7, 8]], [, , \"(?:2[1-5]|3[1-9]|4[1-4])\\\\d{5}\", , , , \"2112345\", , , [7]], [, , \"7[3-8]\\\\d{6}\", , , , \"77212345\", , , [8]], [, , \"80\\\\d{5}\", , , , \"8012345\", , , [7]], [, , \"90\\\\d{5}\", , , , \"9012345\", , , [7]], [, , , , , , , , , [-1]], [, , \"70\\\\d{5}\", , , , \"7012345\", , , [7]],\n[, , , , , , , , , [-1]], \"TL\", 670, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[2-489]|70\"]], [, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"7\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], TM:[, [, , \"[1-6]\\\\d{7}\", , , , , , , [8]], [, , \"(?:1(?:2\\\\d|3[1-9])|2(?:22|4[0-35-8])|3(?:22|4[03-9])|4(?:22|3[128]|4\\\\d|6[15])|5(?:22|5[7-9]|6[014-689]))\\\\d{5}\", , , , \"12345678\"], [, , \"6[1-9]\\\\d{6}\", , , , \"66123456\"], [, , , , , , ,\n, , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"TM\", 993, \"810\", \"8\", , , \"8\", , \"8~10\", , [[, \"(\\\\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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], TN:[, [, , \"[2-57-9]\\\\d{7}\", ,\n, , , , , [8]], [, , \"81200\\\\d{3}|(?:3[0-2]|7\\\\d)\\\\d{6}\", , , , \"30010123\"], [, , \"3(?:001|[12]40)\\\\d{4}|(?:(?:[259]\\\\d|4[0-6])\\\\d|3(?:1[1-35]|6[0-4]|91))\\\\d{5}\", , , , \"20123456\"], [, , \"8010\\\\d{4}\", , , , \"80101234\"], [, , \"88\\\\d{6}\", , , , \"88123456\"], [, , \"8[12]10\\\\d{4}\", , , , \"81101234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"TN\", 216, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[2-57-9]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [,\n, , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], TO:[, [, , \"(?:0800|[5-8]\\\\d{3})\\\\d{3}|[2-8]\\\\d{4}\", , , , , , , [5, 7]], [, , \"(?:2\\\\d|3[0-8]|4[0-4]|50|6[09]|7[0-24-69]|8[05])\\\\d{3}\", , , , \"20123\", , , [5]], [, , \"(?:6(?:3[02]|85|90)|7(?:[2-46]0|[578]\\\\d)|8[46-9]\\\\d)\\\\d{4}\", , , , \"7715123\", , , [7]], [, , \"0800\\\\d{3}\", , , , \"0800222\", , , [7]], [, , \"55[04]\\\\d{4}\", , , , \"5501234\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"TO\", 676, \"00\", ,\n, , , , , , [[, \"(\\\\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-8]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], TR:[, [, , \"(?:[2-58]\\\\d\\\\d|900)\\\\d{7}|4\\\\d{6}\", , , , , , , [7, 10]], [, , \"(?:2(?:[13][26]|[28][2468]|[45][268]|[67][246])|3(?:[13][28]|[24-6][2468]|[78][02468]|92)|4(?:[16][246]|[23578][2468]|4[26]))\\\\d{7}\", , , , \"2123456789\",\n, , [10]], [, , \"56161\\\\d{5}|5(?:0[15-7]|1[06]|24|[34]\\\\d|5[1-59]|9[46])\\\\d{7}\", , , , \"5012345678\", , , [10]], [, , \"800\\\\d{7}\", , , , \"8001234567\", , , [10]], [, , \"(?:8[89]8|900)\\\\d{7}\", , , , \"9001234567\", , , [10]], [, , , , , , , , , [-1]], [, , \"592(?:21[12]|461)\\\\d{4}\", , , , \"5922121234\", , , [10]], [, , , , , , , , , [-1]], \"TR\", 90, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d)(\\\\d{3})\", \"$1 $2 $3\", [\"444\"], , , 1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"512|8[0589]|90\"], \"0$1\", ,\n1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"5(?:[0-59]|61)\", \"5(?:[0-59]|616)\", \"5(?:[0-59]|6161)\"], \"0$1\", , 1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[24][1-8]|3[1-9]\"], \"(0$1)\", , 1]], [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"512|8[0589]|90\"], \"0$1\", , 1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"5(?:[0-59]|61)\", \"5(?:[0-59]|616)\", \"5(?:[0-59]|6161)\"], \"0$1\", , 1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[24][1-8]|3[1-9]\"],\n\"(0$1)\", , 1]], [, , \"512\\\\d{7}\", , , , \"5123456789\", , , [10]], , , [, , \"444\\\\d{4}\", , , , , , , [7]], [, , \"(?:444|850\\\\d{3})\\\\d{4}\", , , , \"4441444\"], , , [, , , , , , , , , [-1]]], TT:[, [, , \"(?:[58]\\\\d\\\\d|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"868(?:2(?:01|1[89]|[23]\\\\d|4[0-2])|6(?:0[7-9]|1[02-8]|2[1-9]|[3-69]\\\\d|7[0-79])|82[124])\\\\d{4}\", , , , \"8682211234\", , , , [7]], [, , \"868(?:2(?:6[6-9]|[7-9]\\\\d)|[37](?:0[1-9]|1[02-9]|[2-9]\\\\d)|4[6-9]\\\\d|6(?:20|78|8\\\\d))\\\\d{4}\", , , , \"8682911234\",\n, , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002345678\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002345678\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"TT\", 1, \"011\", \"1\", , , \"1|([2-46-8]\\\\d{6})$\", \"868$1\", , , , , [, , , , , , , , , [-1]], , \"868\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , \"868619\\\\d{4}\", , , , \"8686191234\", , , , [7]]], TV:[, [, , \"(?:2|7\\\\d\\\\d|90)\\\\d{4}\", , , , , , ,\n[5, 6, 7]], [, , \"2[02-9]\\\\d{3}\", , , , \"20123\", , , [5]], [, , \"(?:7[01]\\\\d|90)\\\\d{4}\", , , , \"901234\", , , [6, 7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"TV\", 688, \"00\", , , , , , , , , , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], TW:[, [, , \"(?:[24589]|7\\\\d)\\\\d{8}|[2-8]\\\\d{7}|2\\\\d{6}\", , , , , , , [7, 8, 9, 10]], [, , \"24\\\\d{6,7}|(?:6412|8(?:2(?:3\\\\d|66)|36[24-9]))\\\\d{4}|(?:2[235-8]\\\\d|3[2-9]|4(?:[239]\\\\d|[78])|5[2-8]|6[235-79]|7[1-9]|8[7-9])\\\\d{6}\",\n, , , \"221234567\", , , [8, 9]], [, , \"9[0-8]\\\\d{7}\", , , , \"912345678\", , , [9]], [, , \"80[0-79]\\\\d{6}\", , , , \"800123456\", , , [9]], [, , \"20(?:[013-9]\\\\d\\\\d|2)\\\\d{4}\", , , , \"203123456\", , , [7, 9]], [, , , , , , , , , [-1]], [, , \"99\\\\d{7}\", , , , \"990123456\", , , [9]], [, , \"70\\\\d{8}\", , , , \"7012345678\", , , [10]], \"TW\", 886, \"0(?:0[25-79]|19)\", \"0\", \"#\", , \"0\", , , , [[, \"(\\\\d{2})(\\\\d)(\\\\d{4})\", \"$1 $2 $3\", [\"202\"], \"0$1\"], [, \"(\\\\d)(\\\\d{3,4})(\\\\d{4})\", \"$1 $2 $3\", [\"[25][2-8]|[346]|7[1-9]|8[237-9]\"],\n\"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[258]\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"9\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"7\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"50[0-46-9]\\\\d{6}\", , , , \"500123456\", , , [9]], , , [, , , , , , , , , [-1]]], TZ:[, [, , \"(?:[26-8]\\\\d|41|90)\\\\d{7}\", , , , , , , [9]], [, , \"2[2-8]\\\\d{7}\", , , , \"222345678\"], [, , \"(?:6[2-9]|7[13-9])\\\\d{7}\", , , , \"621234567\"], [, , \"80[08]\\\\d{6}\",\n, , , \"800123456\"], [, , \"90\\\\d{7}\", , , , \"900123456\"], [, , \"8(?:40|6[01])\\\\d{6}\", , , , \"840123456\"], [, , , , , , , , , [-1]], [, , \"41\\\\d{7}\", , , , \"412345678\"], \"TZ\", 255, \"00[056]\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{4})\", \"$1 $2 $3\", [\"[89]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[24]\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[67]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , \"(?:8(?:[04]0|6[01])|90\\\\d)\\\\d{6}\"], [, , , , , , , , , [-1]], , , [,\n, , , , , , , , [-1]]], UA:[, [, , \"[89]\\\\d{9}|[3-9]\\\\d{8}\", , , , , , , [9, 10], [5, 6, 7]], [, , \"(?:3[1-8]|4[13-8]|5[1-7]|6[12459])\\\\d{7}\", , , , \"311234567\", , , [9], [5, 6, 7]], [, , \"(?:50|6[36-8]|7[1-3]|9[1-9])\\\\d{7}\", , , , \"501234567\", , , [9]], [, , \"800[1-8]\\\\d{5,6}\", , , , \"800123456\"], [, , \"900[239]\\\\d{5,6}\", , , , \"900212345\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"89[1-579]\\\\d{6}\", , , , \"891234567\", , , [9]], \"UA\", 380, \"00\", \"0\", , , \"0\", , \"0~0\", , [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\n\"$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{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"4[45][0-5]|5(?:0|6[37])|6(?:[12][018]|[36-8])|7|89|9[1-9]|(?:48|57)[0137-9]\", \"4[45][0-5]|5(?:0|6(?:3[14-7]|7))|6(?:[12][018]|[36-8])|7|89|9[1-9]|(?:48|57)[0137-9]\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d{5})\", \"$1 $2\", [\"[3-6]\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3,4})\", \"$1 $2 $3\", [\"[89]\"], \"0$1\"]],\n, [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], UG:[, [, , \"800\\\\d{6}|(?:[29]0|[347]\\\\d)\\\\d{7}\", , , , , , , [9], [5, 6, 7]], [, , \"(?:20(?:(?:(?:[0147]\\\\d|5[0-4])\\\\d|2(?:40|[5-9]\\\\d)|3(?:0[67]|2[0-4])|810)\\\\d|6(?:00[0-2]|[15-9]\\\\d\\\\d|30[0-4]))|[34]\\\\d{5})\\\\d{3}\", , , , \"312345678\", , , , [5, 6, 7]], [, , \"7260\\\\d{5}|7(?:[0157-9]\\\\d|20|4[0-4])\\\\d{6}\", , , , \"712345678\"], [, , \"800[1-3]\\\\d{5}\", , , , \"800123456\"], [, , \"90[1-3]\\\\d{6}\",\n, , , \"901123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"UG\", 256, \"00[057]\", \"0\", , , \"0\", , , , [[, \"(\\\\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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], US:[, [, , \"[2-9]\\\\d{9}\", , , , , , , [10], [7]], [, , \"(?: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[0135]|3[0-24679]|4[167]|5[12]|6[014]|8[056])|4(?:0[124-9]|1[02-579]|2[3-5]|3[0245]|4[0235]|58|6[39]|7[0589]|8[04])|5(?:0[1-57-9]|1[0235-8]|20|3[0149]|4[01]|5[19]|6[1-47]|7[013-5]|8[056])|6(?:0[1-35-9]|1[024-9]|2[03689]|[34][016]|5[017]|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[02-59]|8[156])|8(?:0[1-68]|1[02-8]|2[08]|3[0-28]|4[3578]|5[046-9]|6[02-5]|7[028])|9(?:0[1346-9]|1[02-9]|2[0589]|3[0146-8]|4[0179]|5[12469]|7[0-389]|8[04-69]))[2-9]\\\\d{6}\",\n, , , \"2015550123\", , , , [7]], [, , \"(?: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[0135]|3[0-24679]|4[167]|5[12]|6[014]|8[056])|4(?:0[124-9]|1[02-579]|2[3-5]|3[0245]|4[0235]|58|6[39]|7[0589]|8[04])|5(?:0[1-57-9]|1[0235-8]|20|3[0149]|4[01]|5[19]|6[1-47]|7[013-5]|8[056])|6(?:0[1-35-9]|1[024-9]|2[03689]|[34][016]|5[017]|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[02-59]|8[156])|8(?:0[1-68]|1[02-8]|2[08]|3[0-28]|4[3578]|5[046-9]|6[02-5]|7[028])|9(?:0[1346-9]|1[02-9]|2[0589]|3[0146-8]|4[0179]|5[12469]|7[0-389]|8[04-69]))[2-9]\\\\d{6}\",\n, , , \"2015550123\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002345678\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002345678\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"US\", 1, \"011\", \"1\", , , \"1\", , , 1, [[, \"(\\\\d{3})(\\\\d{4})\", \"$1-$2\", [\"[2-9]\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"($1) $2-$3\", [\"[2-9]\"], , , 1]], [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"[2-9]\"]]], [, , , , , , , , , [-1]], 1, , [,\n, , , , , , , , [-1]], [, , \"710[2-9]\\\\d{6}\", , , , \"7102123456\"], , , [, , , , , , , , , [-1]]], UY:[, [, , \"(?:[249]\\\\d\\\\d|80)\\\\d{5}|9\\\\d{6}\", , , , , , , [7, 8]], [, , \"(?:2\\\\d|4[2-7])\\\\d{6}\", , , , \"21231234\", , , [8], [7]], [, , \"9[1-9]\\\\d{6}\", , , , \"94231234\", , , [8]], [, , \"80[05]\\\\d{4}\", , , , \"8001234\", , , [7]], [, , \"90[0-8]\\\\d{4}\", , , , \"9001234\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"UY\", 598, \"0(?:0|1[3-9]\\\\d)\", \"0\", \" int. \", ,\n\"0\", , \"00\", , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"8|90\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"9\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[24]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], UZ:[, [, , \"[679]\\\\d{8}\", , , , , , , [9]], [, , \"78(?:1(?:13|2[02]|50)|2(?:10|2[139]|98)|77[01])\\\\d{4}|(?:6(?:1(?:22|3[124]|4[1-4]|5[1-3578]|64)|2(?:22|3[0-57-9]|41)|5(?:22|3[3-7]|5[024-8])|6\\\\d\\\\d|7(?:[23]\\\\d|7[69])|9(?:22|4[1-8]|6[135]))|7(?:0(?:5[4-9]|6[0146]|7[124-6]|9[135-8])|1[12]\\\\d|2(?:22|3[13-57-9]|4[1-3579]|5[14])|3(?:2\\\\d|3[1578]|4[1-35-7]|5[1-57]|61)|4(?:2\\\\d|3[1-579]|7[1-79])|5(?:22|5[1-9]|6[1457])|6(?:22|3[12457]|4[13-8])|9(?:22|5[1-9])))\\\\d{5}\",\n, , , \"669050123\"], [, , \"(?:6(?:1(?:2(?:2[01]|98)|35[0-4]|50\\\\d|61[23]|7(?:[01][017]|4\\\\d|55|9[5-9]))|2(?:(?:11|7\\\\d)\\\\d|2(?:[12]1|9[01379])|5(?:[126]\\\\d|3[0-4]))|5(?:19[01]|2(?:27|9[26])|(?:30|59|7\\\\d)\\\\d)|6(?:2(?:1[5-9]|2[0367]|38|41|52|60)|(?:3[79]|9[0-3])\\\\d|4(?:56|83)|7(?:[07]\\\\d|1[017]|3[07]|4[047]|5[057]|67|8[0178]|9[79]))|7(?:2(?:24|3[237]|4[5-9]|7[15-8])|5(?:7[12]|8[0589])|7(?:0\\\\d|[39][07])|9(?:0\\\\d|7[079]))|9(?:2(?:1[1267]|3[01]|5\\\\d|7[0-4])|(?:5[67]|7\\\\d)\\\\d|6(?:2[0-26]|8\\\\d)))|7(?:0\\\\d{3}|1(?:13[01]|6(?:0[47]|1[67]|66)|71[3-69]|98\\\\d)|2(?:2(?:2[79]|95)|3(?:2[5-9]|6[0-6])|57\\\\d|7(?:0\\\\d|1[17]|2[27]|3[37]|44|5[057]|66|88))|3(?:2(?:1[0-6]|21|3[469]|7[159])|(?:33|9[4-6])\\\\d|5(?:0[0-4]|5[579]|9\\\\d)|7(?:[0-3579]\\\\d|4[0467]|6[67]|8[078]))|4(?:2(?:29|5[0257]|6[0-7]|7[1-57])|5(?:1[0-4]|8\\\\d|9[5-9])|7(?:0\\\\d|1[024589]|2[0-27]|3[0137]|[46][07]|5[01]|7[5-9]|9[079])|9(?:7[015-9]|[89]\\\\d))|5(?:112|2(?:0\\\\d|2[29]|[49]4)|3[1568]\\\\d|52[6-9]|7(?:0[01578]|1[017]|[23]7|4[047]|[5-7]\\\\d|8[78]|9[079]))|6(?:2(?:2[1245]|4[2-4])|39\\\\d|41[179]|5(?:[349]\\\\d|5[0-2])|7(?:0[017]|[13]\\\\d|22|44|55|67|88))|9(?:22[128]|3(?:2[0-4]|7\\\\d)|57[02569]|7(?:2[05-9]|3[37]|4\\\\d|60|7[2579]|87|9[07])))|9[0-57-9]\\\\d{3})\\\\d{4}\",\n, , , \"912345678\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"UZ\", 998, \"810\", \"8\", , , \"8\", , \"8~10\", , [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[679]\"], \"8 $1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], VA:[, [, , \"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,\n10, 11, 12]], [, , \"06698\\\\d{1,6}\", , , , \"0669812345\", , , [6, 7, 8, 9, 10, 11]], [, , \"3[1-9]\\\\d{8}|3[2-9]\\\\d{7}\", , , , \"3123456789\", , , [9, 10]], [, , \"80(?:0\\\\d{3}|3)\\\\d{3}\", , , , \"800123456\", , , [6, 9]], [, , \"(?:0878\\\\d\\\\d|89(?:2|4[5-9]\\\\d))\\\\d{3}|89[45][0-4]\\\\d\\\\d|(?:1(?:44|6[346])|89(?:5[5-9]|9))\\\\d{6}\", , , , \"899123456\", , , [6, 8, 9, 10]], [, , \"84(?:[08]\\\\d{3}|[17])\\\\d{3}\", , , , \"848123456\", , , [6, 9]], [, , \"1(?:78\\\\d|99)\\\\d{6}\", , , , \"1781234567\", , , [9, 10]], [, , \"55\\\\d{8}\",\n, , , \"5512345678\", , , [10]], \"VA\", 39, \"00\", , , , , , , , , , [, , , , , , , , , [-1]], , \"06698\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , \"3[2-8]\\\\d{9,10}\", , , , \"33101234501\", , , [11, 12]]], VC:[, [, , \"(?:[58]\\\\d\\\\d|784|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"784(?:266|3(?:6[6-9]|7\\\\d|8[0-24-6])|4(?:38|5[0-36-8]|8[0-8])|5(?:55|7[0-2]|93)|638|784)\\\\d{4}\", , , , \"7842661234\", , , , [7]], [, , \"784(?:4(?:3[0-5]|5[45]|89|9[0-8])|5(?:2[6-9]|3[0-4]))\\\\d{4}\", , , , \"7844301234\",\n, , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002345678\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002345678\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"VC\", 1, \"011\", \"1\", , , \"1|([2-7]\\\\d{6})$\", \"784$1\", , , , , [, , , , , , , , , [-1]], , \"784\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], VE:[, [, , \"[89]00\\\\d{7}|(?:[24]\\\\d|50)\\\\d{8}\", , , , , , , [10], [7]], [, , \"(?:2(?:12|3[457-9]|[467]\\\\d|[58][1-9]|9[1-6])|50[01])\\\\d{7}\",\n, , , \"2121234567\", , , , [7]], [, , \"4(?:1[24-8]|2[46])\\\\d{7}\", , , , \"4121234567\"], [, , \"800\\\\d{7}\", , , , \"8001234567\"], [, , \"900\\\\d{7}\", , , , \"9001234567\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"VE\", 58, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{7})\", \"$1-$2\", [\"[24589]\"], \"0$1\", \"$CC $1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], VG:[, [, , \"(?:284|[58]\\\\d\\\\d|900)\\\\d{7}\",\n, , , , , , [10], [7]], [, , \"284496[0-5]\\\\d{3}|284(?:229|4(?:22|9[45])|774|8(?:52|6[459]))\\\\d{4}\", , , , \"2842291234\", , , , [7]], [, , \"284496[6-9]\\\\d{3}|284(?:3(?:0[0-3]|4[0-7]|68|9[34])|4(?:4[0-6]|68|99)|54[0-57])\\\\d{4}\", , , , \"2843001234\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002345678\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002345678\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"VG\", 1, \"011\",\n\"1\", , , \"1|([2-578]\\\\d{6})$\", \"284$1\", , , , , [, , , , , , , , , [-1]], , \"284\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], VI:[, [, , \"[58]\\\\d{9}|(?:34|90)0\\\\d{7}\", , , , , , , [10], [7]], [, , \"340(?:2(?:0[12]|2[06-8]|4[49]|77)|3(?:32|44)|4(?:22|7[34]|89)|5(?:1[34]|55)|6(?:2[56]|4[23]|77|9[023])|7(?:1[2-57-9]|27|7\\\\d)|884|998)\\\\d{4}\", , , , \"3406421234\", , , , [7]], [, , \"340(?:2(?:0[12]|2[06-8]|4[49]|77)|3(?:32|44)|4(?:22|7[34]|89)|5(?:1[34]|55)|6(?:2[56]|4[23]|77|9[023])|7(?:1[2-57-9]|27|7\\\\d)|884|998)\\\\d{4}\",\n, , , \"3406421234\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002345678\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002345678\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"VI\", 1, \"011\", \"1\", , , \"1|([2-9]\\\\d{6})$\", \"340$1\", , 1, , , [, , , , , , , , , [-1]], , \"340\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], VN:[, [, , \"[12]\\\\d{9}|[135-9]\\\\d{8}|[16]\\\\d{7}|[16-8]\\\\d{6}\",\n, , , , , , [7, 8, 9, 10]], [, , \"2(?:0[3-9]|1[0-689]|2[0-25-9]|3[2-9]|4[2-8]|5[124-9]|6[0-39]|7[0-7]|8[2-79]|9[0-4679])\\\\d{7}\", , , , \"2101234567\", , , [10]], [, , \"(?:52[238]|8(?:79|9[689])|99[013-9])\\\\d{6}|(?:3\\\\d|5[689]|7[06-9]|8[1-68]|9[0-8])\\\\d{7}\", , , , \"912345678\", , , [9]], [, , \"1(?:228\\\\d{4}|800\\\\d{4,6})\", , , , \"1800123456\", , , [8, 9, 10]], [, , \"1900\\\\d{4,6}\", , , , \"1900123456\", , , [8, 9, 10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"672\\\\d{6}\", , , , \"672012345\",\n, , [9]], \"VN\", 84, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[17]99\"], \"0$1\", , 1], [, \"(\\\\d{2})(\\\\d{5})\", \"$1 $2\", [\"80\"], \"0$1\", , 1], [, \"(\\\\d{3})(\\\\d{4,5})\", \"$1 $2\", [\"69\"], \"0$1\", , 1], [, \"(\\\\d{4})(\\\\d{4,6})\", \"$1 $2\", [\"1\"], , , 1], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[69]\"], \"0$1\", , 1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[3578]\"], \"0$1\", , 1], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"2[48]\"], \"0$1\", , 1], [, \"(\\\\d{3})(\\\\d{4})(\\\\d{3})\",\n\"$1 $2 $3\", [\"2\"], \"0$1\", , 1]], [[, \"(\\\\d{2})(\\\\d{5})\", \"$1 $2\", [\"80\"], \"0$1\", , 1], [, \"(\\\\d{4})(\\\\d{4,6})\", \"$1 $2\", [\"1\"], , , 1], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[69]\"], \"0$1\", , 1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[3578]\"], \"0$1\", , 1], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"2[48]\"], \"0$1\", , 1], [, \"(\\\\d{3})(\\\\d{4})(\\\\d{3})\", \"$1 $2 $3\", [\"2\"], \"0$1\", , 1]], [, , , , , , , , , [-1]], , , [, , \"[17]99\\\\d{4}|69\\\\d{5,6}\", , , , , , , [7, 8]], [, , \"(?:[17]99|80\\\\d)\\\\d{4}|69\\\\d{5,6}\",\n, , , \"1992000\", , , [7, 8]], , , [, , , , , , , , , [-1]]], VU:[, [, , \"(?:[23]\\\\d|[48]8)\\\\d{3}|(?:[57]\\\\d|90)\\\\d{5}\", , , , , , , [5, 7]], [, , \"(?:38[0-8]|48[4-9])\\\\d\\\\d|(?:2[02-9]|3[4-7]|88)\\\\d{3}\", , , , \"22123\", , , [5]], [, , \"57[2-5]\\\\d{4}|(?:5[0-689]|7[013-7])\\\\d{5}\", , , , \"5912345\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"90[1-9]\\\\d{4}\", , , , \"9010123\", , , [7]], \"VU\", 678, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\",\n\"$1 $2\", [\"[579]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"(?:3[03]|900\\\\d)\\\\d{3}\", , , , \"30123\"], , , [, , , , , , , , , [-1]]], WF:[, [, , \"(?:[45]0|68|72|8\\\\d)\\\\d{4}\", , , , , , , [6]], [, , \"(?:50|68|72)\\\\d{4}\", , , , \"501234\"], [, , \"(?:50|68|72|8[23])\\\\d{4}\", , , , \"501234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"WF\", 681, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\n\"$1 $2 $3\", [\"[4-8]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , \"[48]0\\\\d{4}\", , , , \"401234\"]], WS:[, [, , \"[2-6]\\\\d{4}|8\\\\d{5}(?:\\\\d{4})?|[78]\\\\d{6}\", , , , , , , [5, 6, 7, 10]], [, , \"(?:[2-5]\\\\d|6[1-9])\\\\d{3}\", , , , \"22123\", , , [5]], [, , \"(?:7[25-7]|8(?:[3-7]|9\\\\d{3}))\\\\d{5}\", , , , \"7212345\", , , [7, 10]], [, , \"800\\\\d{3}\", , , , \"800123\", , , [6]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , ,\n, , , , , [-1]], \"WS\", 685, \"0\", , , , , , , , [[, \"(\\\\d{5})\", \"$1\", [\"[2-6]\"]], [, \"(\\\\d{3})(\\\\d{3,7})\", \"$1 $2\", [\"8\"]], [, \"(\\\\d{2})(\\\\d{5})\", \"$1 $2\", [\"7\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], XK:[, [, , \"[23]\\\\d{7,8}|(?:4\\\\d\\\\d|[89]00)\\\\d{5}\", , , , , , , [8, 9]], [, , \"(?:2[89]|39)0\\\\d{6}|[23][89]\\\\d{6}\", , , , \"28012345\"], [, , \"4[3-79]\\\\d{6}\", , , , \"43201234\", , , [8]], [, , \"800\\\\d{5}\", , , , \"80001234\", ,\n, [8]], [, , \"900\\\\d{5}\", , , , \"90001234\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"XK\", 383, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], YE:[, [, , \"(?:1|7\\\\d)\\\\d{7}|[1-7]\\\\d{6}\",\n, , , , , , [7, 8, 9], [6]], [, , \"17\\\\d{6}|(?:[12][2-68]|3[2358]|4[2-58]|5[2-6]|6[3-58]|7[24-68])\\\\d{5}\", , , , \"1234567\", , , [7, 8], [6]], [, , \"7[0137]\\\\d{7}\", , , , \"712345678\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"YE\", 967, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d)(\\\\d{3})(\\\\d{3,4})\", \"$1 $2 $3\", [\"[1-6]|7[24-68]\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"7\"], \"0$1\"]], , [, , , ,\n, , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], YT:[, [, , \"80\\\\d{7}|(?:26|63)9\\\\d{6}\", , , , , , , [9]], [, , \"269(?:0[67]|5[01]|6\\\\d|[78]0)\\\\d{4}\", , , , \"269601234\"], [, , \"639(?:0[0-79]|1[019]|[267]\\\\d|3[09]|[45]0|9[04-79])\\\\d{4}\", , , , \"639012345\"], [, , \"80\\\\d{7}\", , , , \"801234567\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"YT\", 262, \"00\", \"0\", , , \"0\", , , , , , [, , ,\n, , , , , , [-1]], , \"269|63\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], ZA:[, [, , \"[1-9]\\\\d{8}|8\\\\d{4,7}\", , , , , , , [5, 6, 7, 8, 9]], [, , \"(?:1[0-8]|2[1-378]|3[1-69]|4\\\\d|5[1346-8])\\\\d{7}\", , , , \"101234567\", , , [9]], [, , \"8[1-4]\\\\d{3,7}|(?:6\\\\d|7[0-46-9]|85)\\\\d{7}\", , , , \"711234567\"], [, , \"80\\\\d{7}\", , , , \"801234567\", , , [9]], [, , \"(?:86[2-9]|9[0-2]\\\\d)\\\\d{6}\", , , , \"862345678\", , , [9]], [, , \"860\\\\d{6}\", , , , \"860123456\", , , [9]], [, , ,\n, , , , , , [-1]], [, , \"87\\\\d{7}\", , , , \"871234567\", , , [9]], \"ZA\", 27, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"861\\\\d{6}\", , , , \"861123456\", , , [9]], , , [, , , , , , , , , [-1]]], ZM:[, [, , \"800\\\\d{6}|(?:21|76|9\\\\d)\\\\d{7}\",\n, , , , , , [9], [6]], [, , \"21[1-8]\\\\d{6}\", , , , \"211234567\", , , , [6]], [, , \"(?:76|9[5-8])\\\\d{7}\", , , , \"955123456\"], [, , \"800\\\\d{6}\", , , , \"800123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"ZM\", 260, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{3})\", \"$1 $2\", [\"[1-9]\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[28]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{7})\", \"$1 $2\", [\"[79]\"], \"0$1\"]], [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\",\n[\"[28]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{7})\", \"$1 $2\", [\"[79]\"], \"0$1\"]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], ZW:[, [, , \"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], [3, 4]], [, , \"(?:1(?:(?:3\\\\d|9)\\\\d|[4-8])|2(?:(?:(?:0(?:2[014]|5)|(?:2[0157]|31|84|9)\\\\d\\\\d|[56](?:[14]\\\\d\\\\d|20)|7(?:[089]|2[03]|[35]\\\\d\\\\d))\\\\d|4(?:2\\\\d\\\\d|8))\\\\d|1(?:2|[39]\\\\d{4}))|3(?:(?:123|(?:29\\\\d|92)\\\\d)\\\\d\\\\d|7(?:[19]|[56]\\\\d))|5(?:0|1[2-478]|26|[37]2|4(?:2\\\\d{3}|83)|5(?:25\\\\d\\\\d|[78])|[689]\\\\d)|6(?:(?:[16-8]21|28|52[013])\\\\d\\\\d|[39])|8(?:[1349]28|523)\\\\d\\\\d)\\\\d{3}|(?:4\\\\d\\\\d|9[2-9])\\\\d{4,5}|(?:(?:2(?:(?:(?:0|8[146])\\\\d|7[1-7])\\\\d|2(?:[278]\\\\d|92)|58(?:2\\\\d|3))|3(?:[26]|9\\\\d{3})|5(?:4\\\\d|5)\\\\d\\\\d)\\\\d|6(?:(?:(?:[0-246]|[78]\\\\d)\\\\d|37)\\\\d|5[2-8]))\\\\d\\\\d|(?:2(?:[569]\\\\d|8[2-57-9])|3(?:[013-59]\\\\d|8[37])|6[89]8)\\\\d{3}\",\n, , , \"1312345\", , , , [3, 4]], [, , \"7(?:1[2-9]|[37][1-9]|8[2-7])\\\\d{6}\", , , , \"712345678\", , , [9]], [, , \"80(?:[01]\\\\d|20|8[0-8])\\\\d{3}\", , , , \"8001234\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"86(?:1[12]|22|30|44|55|77|8[368])\\\\d{6}\", , , , \"8686123456\", , , [10]], \"ZW\", 263, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\"], [,\n\"(\\\\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})\",\n\"$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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], 800:[, [, , \"\\\\d{8}\", , , , , ,\n, [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"\\\\d{8}\", , , , \"12345678\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"001\", 800, , , , , , , , 1, [[, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], 808:[, [, , \"\\\\d{8}\", , , , , , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , ,\n, , , , , , [-1]], [, , \"\\\\d{8}\", , , , \"12345678\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"001\", 808, , , , , , , , 1, [[, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], 870:[, [, , \"[35-7]\\\\d{8}\", , , , , , , [9]], [, , , , , , , , , [-1]], [, , \"(?:[356]\\\\d|7[6-8])\\\\d{7}\", , , , \"301234567\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , ,\n, , , [-1]], [, , , , , , , , , [-1]], \"001\", 870, , , , , , , , , [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[35-7]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], 878:[, [, , \"10\\\\d{10}\", , , , , , , [12]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"10\\\\d{10}\", , , , \"101234567890\"], \"001\", 878, , , , ,\n, , , 1, [[, \"(\\\\d{2})(\\\\d{5})(\\\\d{5})\", \"$1 $2 $3\", [\"1\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], 881:[, [, , \"[67]\\\\d{8}\", , , , , , , [9]], [, , , , , , , , , [-1]], [, , \"[67]\\\\d{8}\", , , , \"612345678\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"001\", 881, , , , , , , , , [[, \"(\\\\d)(\\\\d{3})(\\\\d{5})\", \"$1 $2 $3\", [\"[67]\"]]], , [,\n, , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], 882:[, [, , \"1\\\\d{6,11}|3\\\\d{6}(?:\\\\d{2,5})?\", , , , , , , [7, 8, 9, 10, 11, 12]], [, , , , , , , , , [-1]], [, , \"3(?:37\\\\d\\\\d|42)\\\\d{4}|3(?:2|47|7\\\\d{3})\\\\d{7}\", , , , \"3421234\", , , [7, 9, 10, 12]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"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})|3(?:45|9\\\\d{3})\\\\d{7}\",\n, , , \"390123456789\"], \"001\", 882, , , , , , , , , [[, \"(\\\\d{2})(\\\\d{5})\", \"$1 $2\", [\"16|342\"]], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{4})\", \"$1 $2 $3\", [\"1\"]], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{3})\", \"$1 $2 $3\", [\"3[23]\"]], [, \"(\\\\d{2})(\\\\d{3,4})(\\\\d{4})\", \"$1 $2 $3\", [\"1\"]], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"34[57]\"]], [, \"(\\\\d{3})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"34\"]], [, \"(\\\\d{2})(\\\\d{4,5})(\\\\d{5})\", \"$1 $2 $3\", [\"[13]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]],\n, , [, , \"348[57]\\\\d{7}\", , , , \"34851234567\", , , [11]]], 883:[, [, , \"51\\\\d{7}(?:\\\\d{3})?\", , , , , , , [9, 12]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"51[013]0\\\\d{8}|5100\\\\d{5}\", , , , \"510012345\"], \"001\", 883, , , , , , , , 1, [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"510\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3 $4\", [\"510\"]], [, \"(\\\\d{4})(\\\\d{4})(\\\\d{4})\",\n\"$1 $2 $3\", [\"5\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], 888:[, [, , \"\\\\d{11}\", , , , , , , [11]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"001\", 888, , , , , , , , 1, [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{5})\", \"$1 $2 $3\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"\\\\d{11}\",\n, , , \"12345678901\"], , , [, , , , , , , , , [-1]]], 979:[, [, , \"\\\\d{9}\", , , , , , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"\\\\d{9}\", , , , \"123456789\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"001\", 979, , , , , , , , 1, [[, \"(\\\\d)(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]]};\n/*\n\n Copyright (C) 2010 The Libphonenumber Authors.\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n*/\ni18n.phonenumbers.PhoneNumberUtil = function() {\n  this.regionToMetadataMap = {};\n};\ngoog.addSingletonGetter(i18n.phonenumbers.PhoneNumberUtil);\ni18n.phonenumbers.Error = {INVALID_COUNTRY_CODE:\"Invalid country calling code\", NOT_A_NUMBER:\"The string supplied did not seem to be a phone number\", TOO_SHORT_AFTER_IDD:\"Phone number too short after IDD\", TOO_SHORT_NSN:\"The string supplied is too short to be a phone number\", TOO_LONG:\"The string supplied is too long to be a phone number\"};\ni18n.phonenumbers.PhoneNumberUtil.NANPA_COUNTRY_CODE_ = 1;\ni18n.phonenumbers.PhoneNumberUtil.MIN_LENGTH_FOR_NSN_ = 2;\ni18n.phonenumbers.PhoneNumberUtil.MAX_LENGTH_FOR_NSN_ = 17;\ni18n.phonenumbers.PhoneNumberUtil.MAX_LENGTH_COUNTRY_CODE_ = 3;\ni18n.phonenumbers.PhoneNumberUtil.MAX_INPUT_STRING_LENGTH_ = 250;\ni18n.phonenumbers.PhoneNumberUtil.UNKNOWN_REGION_ = \"ZZ\";\ni18n.phonenumbers.PhoneNumberUtil.COLOMBIA_MOBILE_TO_FIXED_LINE_PREFIX_ = \"3\";\ni18n.phonenumbers.PhoneNumberUtil.MOBILE_TOKEN_MAPPINGS_ = {54:\"9\"};\ni18n.phonenumbers.PhoneNumberUtil.GEO_MOBILE_COUNTRIES_ = [52, 54, 55];\ni18n.phonenumbers.PhoneNumberUtil.PLUS_SIGN = \"+\";\ni18n.phonenumbers.PhoneNumberUtil.STAR_SIGN_ = \"*\";\ni18n.phonenumbers.PhoneNumberUtil.RFC3966_EXTN_PREFIX_ = \";ext=\";\ni18n.phonenumbers.PhoneNumberUtil.RFC3966_PREFIX_ = \"tel:\";\ni18n.phonenumbers.PhoneNumberUtil.RFC3966_PHONE_CONTEXT_ = \";phone-context=\";\ni18n.phonenumbers.PhoneNumberUtil.RFC3966_ISDN_SUBADDRESS_ = \";isub=\";\ni18n.phonenumbers.PhoneNumberUtil.DIGIT_MAPPINGS = {0:\"0\", 1:\"1\", 2:\"2\", 3:\"3\", 4:\"4\", 5:\"5\", 6:\"6\", 7:\"7\", 8:\"8\", 9:\"9\", \"\\uff10\":\"0\", \"\\uff11\":\"1\", \"\\uff12\":\"2\", \"\\uff13\":\"3\", \"\\uff14\":\"4\", \"\\uff15\":\"5\", \"\\uff16\":\"6\", \"\\uff17\":\"7\", \"\\uff18\":\"8\", \"\\uff19\":\"9\", \"\\u0660\":\"0\", \"\\u0661\":\"1\", \"\\u0662\":\"2\", \"\\u0663\":\"3\", \"\\u0664\":\"4\", \"\\u0665\":\"5\", \"\\u0666\":\"6\", \"\\u0667\":\"7\", \"\\u0668\":\"8\", \"\\u0669\":\"9\", \"\\u06f0\":\"0\", \"\\u06f1\":\"1\", \"\\u06f2\":\"2\", \"\\u06f3\":\"3\", \"\\u06f4\":\"4\", \"\\u06f5\":\"5\", \"\\u06f6\":\"6\", \"\\u06f7\":\"7\",\n\"\\u06f8\":\"8\", \"\\u06f9\":\"9\"};\ni18n.phonenumbers.PhoneNumberUtil.DIALLABLE_CHAR_MAPPINGS_ = {0:\"0\", 1:\"1\", 2:\"2\", 3:\"3\", 4:\"4\", 5:\"5\", 6:\"6\", 7:\"7\", 8:\"8\", 9:\"9\", \"+\":i18n.phonenumbers.PhoneNumberUtil.PLUS_SIGN, \"*\":\"*\", \"#\":\"#\"};\ni18n.phonenumbers.PhoneNumberUtil.ALPHA_MAPPINGS_ = {A:\"2\", B:\"2\", C:\"2\", D:\"3\", E:\"3\", F:\"3\", G:\"4\", H:\"4\", I:\"4\", J:\"5\", K:\"5\", L:\"5\", M:\"6\", N:\"6\", O:\"6\", P:\"7\", Q:\"7\", R:\"7\", S:\"7\", T:\"8\", U:\"8\", V:\"8\", W:\"9\", X:\"9\", Y:\"9\", Z:\"9\"};\ni18n.phonenumbers.PhoneNumberUtil.ALL_NORMALIZATION_MAPPINGS_ = {0:\"0\", 1:\"1\", 2:\"2\", 3:\"3\", 4:\"4\", 5:\"5\", 6:\"6\", 7:\"7\", 8:\"8\", 9:\"9\", \"\\uff10\":\"0\", \"\\uff11\":\"1\", \"\\uff12\":\"2\", \"\\uff13\":\"3\", \"\\uff14\":\"4\", \"\\uff15\":\"5\", \"\\uff16\":\"6\", \"\\uff17\":\"7\", \"\\uff18\":\"8\", \"\\uff19\":\"9\", \"\\u0660\":\"0\", \"\\u0661\":\"1\", \"\\u0662\":\"2\", \"\\u0663\":\"3\", \"\\u0664\":\"4\", \"\\u0665\":\"5\", \"\\u0666\":\"6\", \"\\u0667\":\"7\", \"\\u0668\":\"8\", \"\\u0669\":\"9\", \"\\u06f0\":\"0\", \"\\u06f1\":\"1\", \"\\u06f2\":\"2\", \"\\u06f3\":\"3\", \"\\u06f4\":\"4\", \"\\u06f5\":\"5\", \"\\u06f6\":\"6\",\n\"\\u06f7\":\"7\", \"\\u06f8\":\"8\", \"\\u06f9\":\"9\", A:\"2\", B:\"2\", C:\"2\", D:\"3\", E:\"3\", F:\"3\", G:\"4\", H:\"4\", I:\"4\", J:\"5\", K:\"5\", L:\"5\", M:\"6\", N:\"6\", O:\"6\", P:\"7\", Q:\"7\", R:\"7\", S:\"7\", T:\"8\", U:\"8\", V:\"8\", W:\"9\", X:\"9\", Y:\"9\", Z:\"9\"};\ni18n.phonenumbers.PhoneNumberUtil.ALL_PLUS_NUMBER_GROUPING_SYMBOLS_ = {0:\"0\", 1:\"1\", 2:\"2\", 3:\"3\", 4:\"4\", 5:\"5\", 6:\"6\", 7:\"7\", 8:\"8\", 9:\"9\", A:\"A\", B:\"B\", C:\"C\", D:\"D\", E:\"E\", F:\"F\", G:\"G\", H:\"H\", I:\"I\", J:\"J\", K:\"K\", L:\"L\", M:\"M\", N:\"N\", O:\"O\", P:\"P\", Q:\"Q\", R:\"R\", S:\"S\", T:\"T\", U:\"U\", V:\"V\", W:\"W\", X:\"X\", Y:\"Y\", Z:\"Z\", a:\"A\", b:\"B\", c:\"C\", d:\"D\", e:\"E\", f:\"F\", g:\"G\", h:\"H\", i:\"I\", j:\"J\", k:\"K\", l:\"L\", m:\"M\", n:\"N\", o:\"O\", p:\"P\", q:\"Q\", r:\"R\", s:\"S\", t:\"T\", u:\"U\", v:\"V\", w:\"W\", x:\"X\", y:\"Y\", z:\"Z\",\n\"-\":\"-\", \"\\uff0d\":\"-\", \"\\u2010\":\"-\", \"\\u2011\":\"-\", \"\\u2012\":\"-\", \"\\u2013\":\"-\", \"\\u2014\":\"-\", \"\\u2015\":\"-\", \"\\u2212\":\"-\", \"/\":\"/\", \"\\uff0f\":\"/\", \" \":\" \", \"\\u3000\":\" \", \"\\u2060\":\" \", \".\":\".\", \"\\uff0e\":\".\"};\ni18n.phonenumbers.PhoneNumberUtil.SINGLE_INTERNATIONAL_PREFIX_ = /[\\d]+(?:[~\\u2053\\u223C\\uFF5E][\\d]+)?/;\ni18n.phonenumbers.PhoneNumberUtil.VALID_PUNCTUATION = \"-x\\u2010-\\u2015\\u2212\\u30fc\\uff0d-\\uff0f \\u00a0\\u00ad\\u200b\\u2060\\u3000()\\uff08\\uff09\\uff3b\\uff3d.\\\\[\\\\]/~\\u2053\\u223c\\uff5e\";\ni18n.phonenumbers.PhoneNumberUtil.VALID_DIGITS_ = \"0-9\\uff10-\\uff19\\u0660-\\u0669\\u06f0-\\u06f9\";\ni18n.phonenumbers.PhoneNumberUtil.VALID_ALPHA_ = \"A-Za-z\";\ni18n.phonenumbers.PhoneNumberUtil.PLUS_CHARS_ = \"+\\uff0b\";\ni18n.phonenumbers.PhoneNumberUtil.PLUS_CHARS_PATTERN = new RegExp(\"[\" + i18n.phonenumbers.PhoneNumberUtil.PLUS_CHARS_ + \"]+\");\ni18n.phonenumbers.PhoneNumberUtil.LEADING_PLUS_CHARS_PATTERN = new RegExp(\"^[\" + i18n.phonenumbers.PhoneNumberUtil.PLUS_CHARS_ + \"]+\");\ni18n.phonenumbers.PhoneNumberUtil.SEPARATOR_PATTERN_ = \"[\" + i18n.phonenumbers.PhoneNumberUtil.VALID_PUNCTUATION + \"]+\";\ni18n.phonenumbers.PhoneNumberUtil.CAPTURING_DIGIT_PATTERN = new RegExp(\"([\" + i18n.phonenumbers.PhoneNumberUtil.VALID_DIGITS_ + \"])\");\ni18n.phonenumbers.PhoneNumberUtil.VALID_START_CHAR_PATTERN_ = new RegExp(\"[\" + i18n.phonenumbers.PhoneNumberUtil.PLUS_CHARS_ + i18n.phonenumbers.PhoneNumberUtil.VALID_DIGITS_ + \"]\");\ni18n.phonenumbers.PhoneNumberUtil.SECOND_NUMBER_START_PATTERN_ = /[\\\\\\/] *x/;\ni18n.phonenumbers.PhoneNumberUtil.UNWANTED_END_CHAR_PATTERN_ = new RegExp(\"[^\" + i18n.phonenumbers.PhoneNumberUtil.VALID_DIGITS_ + i18n.phonenumbers.PhoneNumberUtil.VALID_ALPHA_ + \"#]+$\");\ni18n.phonenumbers.PhoneNumberUtil.VALID_ALPHA_PHONE_PATTERN_ = /(?:.*?[A-Za-z]){3}.*/;\ni18n.phonenumbers.PhoneNumberUtil.MIN_LENGTH_PHONE_NUMBER_PATTERN_ = \"[\" + i18n.phonenumbers.PhoneNumberUtil.VALID_DIGITS_ + \"]{\" + i18n.phonenumbers.PhoneNumberUtil.MIN_LENGTH_FOR_NSN_ + \"}\";\ni18n.phonenumbers.PhoneNumberUtil.VALID_PHONE_NUMBER_ = \"[\" + i18n.phonenumbers.PhoneNumberUtil.PLUS_CHARS_ + \"]*(?:[\" + i18n.phonenumbers.PhoneNumberUtil.VALID_PUNCTUATION + i18n.phonenumbers.PhoneNumberUtil.STAR_SIGN_ + \"]*[\" + i18n.phonenumbers.PhoneNumberUtil.VALID_DIGITS_ + \"]){3,}[\" + i18n.phonenumbers.PhoneNumberUtil.VALID_PUNCTUATION + i18n.phonenumbers.PhoneNumberUtil.STAR_SIGN_ + i18n.phonenumbers.PhoneNumberUtil.VALID_ALPHA_ + i18n.phonenumbers.PhoneNumberUtil.VALID_DIGITS_ + \"]*\";\ni18n.phonenumbers.PhoneNumberUtil.DEFAULT_EXTN_PREFIX_ = \" ext. \";\ni18n.phonenumbers.PhoneNumberUtil.CAPTURING_EXTN_DIGITS_ = \"([\" + i18n.phonenumbers.PhoneNumberUtil.VALID_DIGITS_ + \"]{1,7})\";\ni18n.phonenumbers.PhoneNumberUtil.EXTN_PATTERNS_FOR_PARSING_ = i18n.phonenumbers.PhoneNumberUtil.RFC3966_EXTN_PREFIX_ + i18n.phonenumbers.PhoneNumberUtil.CAPTURING_EXTN_DIGITS_ + \"|[ \\u00a0\\\\t,]*(?:e?xt(?:ensi(?:o\\u0301?|\\u00f3))?n?|\\uff45?\\uff58\\uff54\\uff4e?|\\u0434\\u043e\\u0431|[;,x\\uff58#\\uff03~\\uff5e]|int|anexo|\\uff49\\uff4e\\uff54)[:\\\\.\\uff0e]?[ \\u00a0\\\\t,-]*\" + i18n.phonenumbers.PhoneNumberUtil.CAPTURING_EXTN_DIGITS_ + \"#?|[- ]+([\" + i18n.phonenumbers.PhoneNumberUtil.VALID_DIGITS_ + \"]{1,5})#\";\ni18n.phonenumbers.PhoneNumberUtil.EXTN_PATTERN_ = new RegExp(\"(?:\" + i18n.phonenumbers.PhoneNumberUtil.EXTN_PATTERNS_FOR_PARSING_ + \")$\", \"i\");\ni18n.phonenumbers.PhoneNumberUtil.VALID_PHONE_NUMBER_PATTERN_ = new RegExp(\"^\" + i18n.phonenumbers.PhoneNumberUtil.MIN_LENGTH_PHONE_NUMBER_PATTERN_ + \"$|^\" + i18n.phonenumbers.PhoneNumberUtil.VALID_PHONE_NUMBER_ + \"(?:\" + i18n.phonenumbers.PhoneNumberUtil.EXTN_PATTERNS_FOR_PARSING_ + \")?$\", \"i\");\ni18n.phonenumbers.PhoneNumberUtil.NON_DIGITS_PATTERN_ = /\\D+/;\ni18n.phonenumbers.PhoneNumberUtil.FIRST_GROUP_PATTERN_ = /(\\$\\d)/;\ni18n.phonenumbers.PhoneNumberUtil.NP_PATTERN_ = /\\$NP/;\ni18n.phonenumbers.PhoneNumberUtil.FG_PATTERN_ = /\\$FG/;\ni18n.phonenumbers.PhoneNumberUtil.CC_PATTERN_ = /\\$CC/;\ni18n.phonenumbers.PhoneNumberUtil.FIRST_GROUP_ONLY_PREFIX_PATTERN_ = /^\\(?\\$1\\)?$/;\ni18n.phonenumbers.PhoneNumberUtil.REGION_CODE_FOR_NON_GEO_ENTITY = \"001\";\ni18n.phonenumbers.PhoneNumberFormat = {E164:0, INTERNATIONAL:1, NATIONAL:2, RFC3966:3};\ni18n.phonenumbers.PhoneNumberType = {FIXED_LINE:0, MOBILE:1, FIXED_LINE_OR_MOBILE:2, TOLL_FREE:3, PREMIUM_RATE:4, SHARED_COST:5, VOIP:6, PERSONAL_NUMBER:7, PAGER:8, UAN:9, VOICEMAIL:10, UNKNOWN:-1};\ni18n.phonenumbers.PhoneNumberUtil.MatchType = {NOT_A_NUMBER:0, NO_MATCH:1, SHORT_NSN_MATCH:2, NSN_MATCH:3, EXACT_MATCH:4};\ni18n.phonenumbers.PhoneNumberUtil.ValidationResult = {IS_POSSIBLE:0, IS_POSSIBLE_LOCAL_ONLY:4, INVALID_COUNTRY_CODE:1, TOO_SHORT:2, INVALID_LENGTH:5, TOO_LONG:3};\ni18n.phonenumbers.PhoneNumberUtil.extractPossibleNumber = function(a) {\n  var b = a.search(i18n.phonenumbers.PhoneNumberUtil.VALID_START_CHAR_PATTERN_);\n  0 <= b ? (a = a.substring(b), a = a.replace(i18n.phonenumbers.PhoneNumberUtil.UNWANTED_END_CHAR_PATTERN_, \"\"), b = a.search(i18n.phonenumbers.PhoneNumberUtil.SECOND_NUMBER_START_PATTERN_), 0 <= b && (a = a.substring(0, b))) : a = \"\";\n  return a;\n};\ni18n.phonenumbers.PhoneNumberUtil.isViablePhoneNumber = function(a) {\n  return a.length < i18n.phonenumbers.PhoneNumberUtil.MIN_LENGTH_FOR_NSN_ ? !1 : i18n.phonenumbers.PhoneNumberUtil.matchesEntirely(i18n.phonenumbers.PhoneNumberUtil.VALID_PHONE_NUMBER_PATTERN_, a);\n};\ni18n.phonenumbers.PhoneNumberUtil.normalize = function(a) {\n  return i18n.phonenumbers.PhoneNumberUtil.matchesEntirely(i18n.phonenumbers.PhoneNumberUtil.VALID_ALPHA_PHONE_PATTERN_, a) ? i18n.phonenumbers.PhoneNumberUtil.normalizeHelper_(a, i18n.phonenumbers.PhoneNumberUtil.ALL_NORMALIZATION_MAPPINGS_, !0) : i18n.phonenumbers.PhoneNumberUtil.normalizeDigitsOnly(a);\n};\ni18n.phonenumbers.PhoneNumberUtil.normalizeSB_ = function(a) {\n  var b = i18n.phonenumbers.PhoneNumberUtil.normalize(a.toString());\n  a.clear();\n  a.append(b);\n};\ni18n.phonenumbers.PhoneNumberUtil.normalizeDigitsOnly = function(a) {\n  return i18n.phonenumbers.PhoneNumberUtil.normalizeHelper_(a, i18n.phonenumbers.PhoneNumberUtil.DIGIT_MAPPINGS, !0);\n};\ni18n.phonenumbers.PhoneNumberUtil.normalizeDiallableCharsOnly = function(a) {\n  return i18n.phonenumbers.PhoneNumberUtil.normalizeHelper_(a, i18n.phonenumbers.PhoneNumberUtil.DIALLABLE_CHAR_MAPPINGS_, !0);\n};\ni18n.phonenumbers.PhoneNumberUtil.convertAlphaCharactersInNumber = function(a) {\n  return i18n.phonenumbers.PhoneNumberUtil.normalizeHelper_(a, i18n.phonenumbers.PhoneNumberUtil.ALL_NORMALIZATION_MAPPINGS_, !1);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getLengthOfGeographicalAreaCode = function(a) {\n  var b = this.getMetadataForRegion(this.getRegionCodeForNumber(a));\n  return null != b && (b.hasNationalPrefix() || a.hasItalianLeadingZero()) && this.isNumberGeographical(a) ? this.getLengthOfNationalDestinationCode(a) : 0;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getLengthOfNationalDestinationCode = function(a) {\n  if (a.hasExtension()) {\n    var b = a.clone();\n    b.clearExtension();\n  } else {\n    b = a;\n  }\n  b = this.format(b, i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL).split(i18n.phonenumbers.PhoneNumberUtil.NON_DIGITS_PATTERN_);\n  0 == b[0].length && b.shift();\n  return 2 >= b.length ? 0 : this.getNumberType(a) == i18n.phonenumbers.PhoneNumberType.MOBILE && (a = i18n.phonenumbers.PhoneNumberUtil.getCountryMobileToken(a.getCountryCodeOrDefault()), \"\" != a) ? b[2].length + a.length : b[1].length;\n};\ni18n.phonenumbers.PhoneNumberUtil.getCountryMobileToken = function(a) {\n  return i18n.phonenumbers.PhoneNumberUtil.MOBILE_TOKEN_MAPPINGS_[a] || \"\";\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getSupportedRegions = function() {\n  return goog.array.filter(Object.keys(i18n.phonenumbers.metadata.countryToMetadata), function(a) {\n    return isNaN(a);\n  });\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getSupportedGlobalNetworkCallingCodes = function() {\n  var a = goog.array.filter(Object.keys(i18n.phonenumbers.metadata.countryToMetadata), function(a) {\n    return !isNaN(a);\n  });\n  return goog.array.map(a, function(a) {\n    return parseInt(a, 10);\n  });\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getSupportedCallingCodes = function() {\n  var a = Object.keys(i18n.phonenumbers.metadata.countryCodeToRegionCodeMap);\n  return goog.array.join(this.getSupportedGlobalNetworkCallingCodes(), goog.array.map(a, function(a) {\n    return parseInt(a, 10);\n  }));\n};\ni18n.phonenumbers.PhoneNumberUtil.descHasPossibleNumberData_ = function(a) {\n  return null != a && (1 != a.possibleLengthCount() || -1 != a.possibleLengthArray()[0]);\n};\ni18n.phonenumbers.PhoneNumberUtil.descHasData_ = function(a) {\n  return null != a && (a.hasExampleNumber() || i18n.phonenumbers.PhoneNumberUtil.descHasPossibleNumberData_(a) || a.hasNationalNumberPattern());\n};\ni18n.phonenumbers.PhoneNumberUtil.getSupportedTypesForMetadata_ = function(a) {\n  var b = [];\n  goog.object.forEach(i18n.phonenumbers.PhoneNumberType, function(c) {\n    if (c != i18n.phonenumbers.PhoneNumberType.FIXED_LINE_OR_MOBILE && c != i18n.phonenumbers.PhoneNumberType.UNKNOWN) {\n      var d = i18n.phonenumbers.PhoneNumberUtil.getNumberDescByType_(a, c);\n      i18n.phonenumbers.PhoneNumberUtil.descHasData_(d) && b.push(c);\n    }\n  });\n  return b;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getSupportedTypesForRegion = function(a) {\n  return this.isValidRegionCode_(a) ? i18n.phonenumbers.PhoneNumberUtil.getSupportedTypesForMetadata_(this.getMetadataForRegion(a)) : [];\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getSupportedTypesForNonGeoEntity = function(a) {\n  a = this.getMetadataForNonGeographicalRegion(a);\n  return null == a ? [] : i18n.phonenumbers.PhoneNumberUtil.getSupportedTypesForMetadata_(a);\n};\ni18n.phonenumbers.PhoneNumberUtil.normalizeHelper_ = function(a, b, c) {\n  for (var d = new goog.string.StringBuffer, e, f, g = a.length, h = 0; h < g; ++h) {\n    e = a.charAt(h), f = b[e.toUpperCase()], null != f ? d.append(f) : c || d.append(e);\n  }\n  return d.toString();\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.formattingRuleHasFirstGroupOnly = function(a) {\n  return 0 == a.length || i18n.phonenumbers.PhoneNumberUtil.FIRST_GROUP_ONLY_PREFIX_PATTERN_.test(a);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isNumberGeographical = function(a) {\n  var b = this.getNumberType(a);\n  return b == i18n.phonenumbers.PhoneNumberType.FIXED_LINE || b == i18n.phonenumbers.PhoneNumberType.FIXED_LINE_OR_MOBILE || goog.array.contains(i18n.phonenumbers.PhoneNumberUtil.GEO_MOBILE_COUNTRIES_, a.getCountryCodeOrDefault()) && b == i18n.phonenumbers.PhoneNumberType.MOBILE;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isValidRegionCode_ = function(a) {\n  return null != a && isNaN(a) && a.toUpperCase() in i18n.phonenumbers.metadata.countryToMetadata;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.hasValidCountryCallingCode_ = function(a) {\n  return a in i18n.phonenumbers.metadata.countryCodeToRegionCodeMap;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.format = function(a, b) {\n  if (0 == a.getNationalNumber() && a.hasRawInput()) {\n    var c = a.getRawInputOrDefault();\n    if (0 < c.length) {\n      return c;\n    }\n  }\n  c = a.getCountryCodeOrDefault();\n  var d = this.getNationalSignificantNumber(a);\n  if (b == i18n.phonenumbers.PhoneNumberFormat.E164) {\n    return this.prefixNumberWithCountryCallingCode_(c, i18n.phonenumbers.PhoneNumberFormat.E164, d, \"\");\n  }\n  if (!this.hasValidCountryCallingCode_(c)) {\n    return d;\n  }\n  var e = this.getRegionCodeForCountryCode(c), f = this.getMetadataForRegionOrCallingCode_(c, e);\n  e = this.maybeGetFormattedExtension_(a, f, b);\n  d = this.formatNsn_(d, f, b);\n  return this.prefixNumberWithCountryCallingCode_(c, b, d, e);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.formatByPattern = function(a, b, c) {\n  var d = a.getCountryCodeOrDefault(), e = this.getNationalSignificantNumber(a);\n  if (!this.hasValidCountryCallingCode_(d)) {\n    return e;\n  }\n  var f = this.getRegionCodeForCountryCode(d);\n  f = this.getMetadataForRegionOrCallingCode_(d, f);\n  var g = this.chooseFormattingPatternForNumber_(c, e);\n  if (null != g) {\n    c = g.clone();\n    g = g.getNationalPrefixFormattingRuleOrDefault();\n    if (0 < g.length) {\n      var h = f.getNationalPrefixOrDefault();\n      0 < h.length ? (g = g.replace(i18n.phonenumbers.PhoneNumberUtil.NP_PATTERN_, h).replace(i18n.phonenumbers.PhoneNumberUtil.FG_PATTERN_, \"$1\"), c.setNationalPrefixFormattingRule(g)) : c.clearNationalPrefixFormattingRule();\n    }\n    e = this.formatNsnUsingPattern_(e, c, b);\n  }\n  a = this.maybeGetFormattedExtension_(a, f, b);\n  return this.prefixNumberWithCountryCallingCode_(d, b, e, a);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.formatNationalNumberWithCarrierCode = function(a, b) {\n  var c = a.getCountryCodeOrDefault(), d = this.getNationalSignificantNumber(a);\n  if (!this.hasValidCountryCallingCode_(c)) {\n    return d;\n  }\n  var e = this.getRegionCodeForCountryCode(c), f = this.getMetadataForRegionOrCallingCode_(c, e);\n  e = this.maybeGetFormattedExtension_(a, f, i18n.phonenumbers.PhoneNumberFormat.NATIONAL);\n  d = this.formatNsn_(d, f, i18n.phonenumbers.PhoneNumberFormat.NATIONAL, b);\n  return this.prefixNumberWithCountryCallingCode_(c, i18n.phonenumbers.PhoneNumberFormat.NATIONAL, d, e);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getMetadataForRegionOrCallingCode_ = function(a, b) {\n  return i18n.phonenumbers.PhoneNumberUtil.REGION_CODE_FOR_NON_GEO_ENTITY == b ? this.getMetadataForNonGeographicalRegion(a) : this.getMetadataForRegion(b);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.formatNationalNumberWithPreferredCarrierCode = function(a, b) {\n  return this.formatNationalNumberWithCarrierCode(a, 0 < a.getPreferredDomesticCarrierCodeOrDefault().length ? a.getPreferredDomesticCarrierCodeOrDefault() : b);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.formatNumberForMobileDialing = function(a, b, c) {\n  var d = a.getCountryCodeOrDefault();\n  if (!this.hasValidCountryCallingCode_(d)) {\n    return a.hasRawInput() ? a.getRawInputOrDefault() : \"\";\n  }\n  var e = \"\";\n  a = a.clone();\n  a.clearExtension();\n  var f = this.getRegionCodeForCountryCode(d), g = this.getNumberType(a), h = g != i18n.phonenumbers.PhoneNumberType.UNKNOWN;\n  if (b == f) {\n    e = g == i18n.phonenumbers.PhoneNumberType.FIXED_LINE || g == i18n.phonenumbers.PhoneNumberType.MOBILE || g == i18n.phonenumbers.PhoneNumberType.FIXED_LINE_OR_MOBILE, \"CO\" == f && g == i18n.phonenumbers.PhoneNumberType.FIXED_LINE ? e = this.formatNationalNumberWithCarrierCode(a, i18n.phonenumbers.PhoneNumberUtil.COLOMBIA_MOBILE_TO_FIXED_LINE_PREFIX_) : \"BR\" == f && e ? e = 0 < a.getPreferredDomesticCarrierCodeOrDefault().length ? this.formatNationalNumberWithPreferredCarrierCode(a, \"\") : \"\" :\n    d == i18n.phonenumbers.PhoneNumberUtil.NANPA_COUNTRY_CODE_ ? (b = this.getMetadataForRegion(b), e = this.canBeInternationallyDialled(a) && this.testNumberLength_(this.getNationalSignificantNumber(a), b) != i18n.phonenumbers.PhoneNumberUtil.ValidationResult.TOO_SHORT ? this.format(a, i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL) : this.format(a, i18n.phonenumbers.PhoneNumberFormat.NATIONAL)) : e = (f == i18n.phonenumbers.PhoneNumberUtil.REGION_CODE_FOR_NON_GEO_ENTITY || (\"MX\" == f || \"CL\" ==\n    f || \"UZ\" == f) && e) && this.canBeInternationallyDialled(a) ? this.format(a, i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL) : this.format(a, i18n.phonenumbers.PhoneNumberFormat.NATIONAL);\n  } else {\n    if (h && this.canBeInternationallyDialled(a)) {\n      return c ? this.format(a, i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL) : this.format(a, i18n.phonenumbers.PhoneNumberFormat.E164);\n    }\n  }\n  return c ? e : i18n.phonenumbers.PhoneNumberUtil.normalizeDiallableCharsOnly(e);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.formatOutOfCountryCallingNumber = function(a, b) {\n  if (!this.isValidRegionCode_(b)) {\n    return this.format(a, i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL);\n  }\n  var c = a.getCountryCodeOrDefault(), d = this.getNationalSignificantNumber(a);\n  if (!this.hasValidCountryCallingCode_(c)) {\n    return d;\n  }\n  if (c == i18n.phonenumbers.PhoneNumberUtil.NANPA_COUNTRY_CODE_) {\n    if (this.isNANPACountry(b)) {\n      return c + \" \" + this.format(a, i18n.phonenumbers.PhoneNumberFormat.NATIONAL);\n    }\n  } else {\n    if (c == this.getCountryCodeForValidRegion_(b)) {\n      return this.format(a, i18n.phonenumbers.PhoneNumberFormat.NATIONAL);\n    }\n  }\n  var e = this.getMetadataForRegion(b), f = e.getInternationalPrefixOrDefault(), g = \"\";\n  i18n.phonenumbers.PhoneNumberUtil.matchesEntirely(i18n.phonenumbers.PhoneNumberUtil.SINGLE_INTERNATIONAL_PREFIX_, f) ? g = f : e.hasPreferredInternationalPrefix() && (g = e.getPreferredInternationalPrefixOrDefault());\n  e = this.getRegionCodeForCountryCode(c);\n  e = this.getMetadataForRegionOrCallingCode_(c, e);\n  d = this.formatNsn_(d, e, i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL);\n  e = this.maybeGetFormattedExtension_(a, e, i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL);\n  return 0 < g.length ? g + \" \" + c + \" \" + d + e : this.prefixNumberWithCountryCallingCode_(c, i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL, d, e);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.formatInOriginalFormat = function(a, b) {\n  if (a.hasRawInput() && !this.hasFormattingPatternForNumber_(a)) {\n    return a.getRawInputOrDefault();\n  }\n  if (!a.hasCountryCodeSource()) {\n    return this.format(a, i18n.phonenumbers.PhoneNumberFormat.NATIONAL);\n  }\n  switch(a.getCountryCodeSource()) {\n    case i18n.phonenumbers.PhoneNumber.CountryCodeSource.FROM_NUMBER_WITH_PLUS_SIGN:\n      var c = this.format(a, i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL);\n      break;\n    case i18n.phonenumbers.PhoneNumber.CountryCodeSource.FROM_NUMBER_WITH_IDD:\n      c = this.formatOutOfCountryCallingNumber(a, b);\n      break;\n    case i18n.phonenumbers.PhoneNumber.CountryCodeSource.FROM_NUMBER_WITHOUT_PLUS_SIGN:\n      c = this.format(a, i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL).substring(1);\n      break;\n    default:\n      var d = this.getRegionCodeForCountryCode(a.getCountryCodeOrDefault()), e = this.getNddPrefixForRegion(d, !0);\n      c = this.format(a, i18n.phonenumbers.PhoneNumberFormat.NATIONAL);\n      if (null != e && 0 != e.length && !this.rawInputContainsNationalPrefix_(a.getRawInputOrDefault(), e, d) && (d = this.getMetadataForRegion(d), e = this.getNationalSignificantNumber(a), d = this.chooseFormattingPatternForNumber_(d.numberFormatArray(), e), null != d)) {\n        e = d.getNationalPrefixFormattingRuleOrDefault();\n        var f = e.indexOf(\"$1\");\n        0 >= f || (e = e.substring(0, f), e = i18n.phonenumbers.PhoneNumberUtil.normalizeDigitsOnly(e), 0 != e.length && (c = d.clone(), c.clearNationalPrefixFormattingRule(), c = this.formatByPattern(a, i18n.phonenumbers.PhoneNumberFormat.NATIONAL, [c])));\n      }\n  }\n  d = a.getRawInputOrDefault();\n  null != c && 0 < d.length && (e = i18n.phonenumbers.PhoneNumberUtil.normalizeDiallableCharsOnly(c), f = i18n.phonenumbers.PhoneNumberUtil.normalizeDiallableCharsOnly(d), e != f && (c = d));\n  return c;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.rawInputContainsNationalPrefix_ = function(a, b, c) {\n  a = i18n.phonenumbers.PhoneNumberUtil.normalizeDigitsOnly(a);\n  if (goog.string.startsWith(a, b)) {\n    try {\n      return this.isValidNumber(this.parse(a.substring(b.length), c));\n    } catch (d) {\n    }\n  }\n  return !1;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.hasFormattingPatternForNumber_ = function(a) {\n  var b = a.getCountryCodeOrDefault(), c = this.getRegionCodeForCountryCode(b);\n  b = this.getMetadataForRegionOrCallingCode_(b, c);\n  if (null == b) {\n    return !1;\n  }\n  a = this.getNationalSignificantNumber(a);\n  return null != this.chooseFormattingPatternForNumber_(b.numberFormatArray(), a);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.formatOutOfCountryKeepingAlphaChars = function(a, b) {\n  var c = a.getRawInputOrDefault();\n  if (0 == c.length) {\n    return this.formatOutOfCountryCallingNumber(a, b);\n  }\n  var d = a.getCountryCodeOrDefault();\n  if (!this.hasValidCountryCallingCode_(d)) {\n    return c;\n  }\n  c = i18n.phonenumbers.PhoneNumberUtil.normalizeHelper_(c, i18n.phonenumbers.PhoneNumberUtil.ALL_PLUS_NUMBER_GROUPING_SYMBOLS_, !0);\n  var e = this.getNationalSignificantNumber(a);\n  if (3 < e.length) {\n    var f = c.indexOf(e.substring(0, 3));\n    -1 != f && (c = c.substring(f));\n  }\n  f = this.getMetadataForRegion(b);\n  if (d == i18n.phonenumbers.PhoneNumberUtil.NANPA_COUNTRY_CODE_) {\n    if (this.isNANPACountry(b)) {\n      return d + \" \" + c;\n    }\n  } else {\n    if (null != f && d == this.getCountryCodeForValidRegion_(b)) {\n      d = this.chooseFormattingPatternForNumber_(f.numberFormatArray(), e);\n      if (null == d) {\n        return c;\n      }\n      d = d.clone();\n      d.setPattern(\"(\\\\d+)(.*)\");\n      d.setFormat(\"$1$2\");\n      return this.formatNsnUsingPattern_(c, d, i18n.phonenumbers.PhoneNumberFormat.NATIONAL);\n    }\n  }\n  e = \"\";\n  null != f && (e = f.getInternationalPrefixOrDefault(), e = i18n.phonenumbers.PhoneNumberUtil.matchesEntirely(i18n.phonenumbers.PhoneNumberUtil.SINGLE_INTERNATIONAL_PREFIX_, e) ? e : f.getPreferredInternationalPrefixOrDefault());\n  f = this.getRegionCodeForCountryCode(d);\n  f = this.getMetadataForRegionOrCallingCode_(d, f);\n  f = this.maybeGetFormattedExtension_(a, f, i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL);\n  return 0 < e.length ? e + \" \" + d + \" \" + c + f : this.prefixNumberWithCountryCallingCode_(d, i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL, c, f);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getNationalSignificantNumber = function(a) {\n  if (!a.hasNationalNumber()) {\n    return \"\";\n  }\n  var b = \"\" + a.getNationalNumber();\n  return a.hasItalianLeadingZero() && a.getItalianLeadingZero() && 0 < a.getNumberOfLeadingZerosOrDefault() ? Array(a.getNumberOfLeadingZerosOrDefault() + 1).join(\"0\") + b : b;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.prefixNumberWithCountryCallingCode_ = function(a, b, c, d) {\n  switch(b) {\n    case i18n.phonenumbers.PhoneNumberFormat.E164:\n      return i18n.phonenumbers.PhoneNumberUtil.PLUS_SIGN + a + c + d;\n    case i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL:\n      return i18n.phonenumbers.PhoneNumberUtil.PLUS_SIGN + a + \" \" + c + d;\n    case i18n.phonenumbers.PhoneNumberFormat.RFC3966:\n      return i18n.phonenumbers.PhoneNumberUtil.RFC3966_PREFIX_ + i18n.phonenumbers.PhoneNumberUtil.PLUS_SIGN + a + \"-\" + c + d;\n    default:\n      return c + d;\n  }\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.formatNsn_ = function(a, b, c, d) {\n  b = 0 == b.intlNumberFormatArray().length || c == i18n.phonenumbers.PhoneNumberFormat.NATIONAL ? b.numberFormatArray() : b.intlNumberFormatArray();\n  b = this.chooseFormattingPatternForNumber_(b, a);\n  return null == b ? a : this.formatNsnUsingPattern_(a, b, c, d);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.chooseFormattingPatternForNumber_ = function(a, b) {\n  for (var c, d = a.length, e = 0; e < d; ++e) {\n    c = a[e];\n    var f = c.leadingDigitsPatternCount();\n    if (0 == f || 0 == b.search(c.getLeadingDigitsPattern(f - 1))) {\n      if (f = new RegExp(c.getPattern()), i18n.phonenumbers.PhoneNumberUtil.matchesEntirely(f, b)) {\n        return c;\n      }\n    }\n  }\n  return null;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.formatNsnUsingPattern_ = function(a, b, c, d) {\n  var e = b.getFormatOrDefault(), f = new RegExp(b.getPattern()), g = b.getDomesticCarrierCodeFormattingRuleOrDefault();\n  c == i18n.phonenumbers.PhoneNumberFormat.NATIONAL && null != d && 0 < d.length && 0 < g.length ? (b = g.replace(i18n.phonenumbers.PhoneNumberUtil.CC_PATTERN_, d), e = e.replace(i18n.phonenumbers.PhoneNumberUtil.FIRST_GROUP_PATTERN_, b), a = a.replace(f, e)) : (b = b.getNationalPrefixFormattingRuleOrDefault(), a = c == i18n.phonenumbers.PhoneNumberFormat.NATIONAL && null != b && 0 < b.length ? a.replace(f, e.replace(i18n.phonenumbers.PhoneNumberUtil.FIRST_GROUP_PATTERN_, b)) : a.replace(f, e));\n  c == i18n.phonenumbers.PhoneNumberFormat.RFC3966 && (a = a.replace(new RegExp(\"^\" + i18n.phonenumbers.PhoneNumberUtil.SEPARATOR_PATTERN_), \"\"), a = a.replace(new RegExp(i18n.phonenumbers.PhoneNumberUtil.SEPARATOR_PATTERN_, \"g\"), \"-\"));\n  return a;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getExampleNumber = function(a) {\n  return this.getExampleNumberForType(a, i18n.phonenumbers.PhoneNumberType.FIXED_LINE);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getExampleNumberForType = function(a, b) {\n  if (!this.isValidRegionCode_(a)) {\n    return null;\n  }\n  var c = i18n.phonenumbers.PhoneNumberUtil.getNumberDescByType_(this.getMetadataForRegion(a), b);\n  try {\n    if (c.hasExampleNumber()) {\n      return this.parse(c.getExampleNumber(), a);\n    }\n  } catch (d) {\n  }\n  return null;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getExampleNumberForNonGeoEntity = function(a) {\n  var b = this.getMetadataForNonGeographicalRegion(a);\n  if (null != b && (b = goog.array.find([b.getMobile(), b.getTollFree(), b.getSharedCost(), b.getVoip(), b.getVoicemail(), b.getUan(), b.getPremiumRate()], function(a, b) {\n    return a.hasExampleNumber();\n  }), null != b)) {\n    try {\n      return this.parse(\"+\" + a + b.getExampleNumber(), \"ZZ\");\n    } catch (c) {\n    }\n  }\n  return null;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.maybeGetFormattedExtension_ = function(a, b, c) {\n  return a.hasExtension() && 0 != a.getExtension().length ? c == i18n.phonenumbers.PhoneNumberFormat.RFC3966 ? i18n.phonenumbers.PhoneNumberUtil.RFC3966_EXTN_PREFIX_ + a.getExtension() : b.hasPreferredExtnPrefix() ? b.getPreferredExtnPrefix() + a.getExtensionOrDefault() : i18n.phonenumbers.PhoneNumberUtil.DEFAULT_EXTN_PREFIX_ + a.getExtensionOrDefault() : \"\";\n};\ni18n.phonenumbers.PhoneNumberUtil.getNumberDescByType_ = function(a, b) {\n  switch(b) {\n    case i18n.phonenumbers.PhoneNumberType.PREMIUM_RATE:\n      return a.getPremiumRate();\n    case i18n.phonenumbers.PhoneNumberType.TOLL_FREE:\n      return a.getTollFree();\n    case i18n.phonenumbers.PhoneNumberType.MOBILE:\n      return a.getMobile();\n    case i18n.phonenumbers.PhoneNumberType.FIXED_LINE:\n    case i18n.phonenumbers.PhoneNumberType.FIXED_LINE_OR_MOBILE:\n      return a.getFixedLine();\n    case i18n.phonenumbers.PhoneNumberType.SHARED_COST:\n      return a.getSharedCost();\n    case i18n.phonenumbers.PhoneNumberType.VOIP:\n      return a.getVoip();\n    case i18n.phonenumbers.PhoneNumberType.PERSONAL_NUMBER:\n      return a.getPersonalNumber();\n    case i18n.phonenumbers.PhoneNumberType.PAGER:\n      return a.getPager();\n    case i18n.phonenumbers.PhoneNumberType.UAN:\n      return a.getUan();\n    case i18n.phonenumbers.PhoneNumberType.VOICEMAIL:\n      return a.getVoicemail();\n    default:\n      return a.getGeneralDesc();\n  }\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getNumberType = function(a) {\n  var b = this.getRegionCodeForNumber(a);\n  b = this.getMetadataForRegionOrCallingCode_(a.getCountryCodeOrDefault(), b);\n  if (null == b) {\n    return i18n.phonenumbers.PhoneNumberType.UNKNOWN;\n  }\n  a = this.getNationalSignificantNumber(a);\n  return this.getNumberTypeHelper_(a, b);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getNumberTypeHelper_ = function(a, b) {\n  return this.isNumberMatchingDesc_(a, b.getGeneralDesc()) ? this.isNumberMatchingDesc_(a, b.getPremiumRate()) ? i18n.phonenumbers.PhoneNumberType.PREMIUM_RATE : this.isNumberMatchingDesc_(a, b.getTollFree()) ? i18n.phonenumbers.PhoneNumberType.TOLL_FREE : this.isNumberMatchingDesc_(a, b.getSharedCost()) ? i18n.phonenumbers.PhoneNumberType.SHARED_COST : this.isNumberMatchingDesc_(a, b.getVoip()) ? i18n.phonenumbers.PhoneNumberType.VOIP : this.isNumberMatchingDesc_(a, b.getPersonalNumber()) ? i18n.phonenumbers.PhoneNumberType.PERSONAL_NUMBER :\n  this.isNumberMatchingDesc_(a, b.getPager()) ? i18n.phonenumbers.PhoneNumberType.PAGER : this.isNumberMatchingDesc_(a, b.getUan()) ? i18n.phonenumbers.PhoneNumberType.UAN : this.isNumberMatchingDesc_(a, b.getVoicemail()) ? i18n.phonenumbers.PhoneNumberType.VOICEMAIL : this.isNumberMatchingDesc_(a, b.getFixedLine()) ? b.getSameMobileAndFixedLinePattern() || this.isNumberMatchingDesc_(a, b.getMobile()) ? i18n.phonenumbers.PhoneNumberType.FIXED_LINE_OR_MOBILE : i18n.phonenumbers.PhoneNumberType.FIXED_LINE :\n  !b.getSameMobileAndFixedLinePattern() && this.isNumberMatchingDesc_(a, b.getMobile()) ? i18n.phonenumbers.PhoneNumberType.MOBILE : i18n.phonenumbers.PhoneNumberType.UNKNOWN : i18n.phonenumbers.PhoneNumberType.UNKNOWN;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getMetadataForRegion = function(a) {\n  if (null == a) {\n    return null;\n  }\n  a = a.toUpperCase();\n  var b = this.regionToMetadataMap[a];\n  if (null == b) {\n    b = new goog.proto2.PbLiteSerializer;\n    var c = i18n.phonenumbers.metadata.countryToMetadata[a];\n    if (null == c) {\n      return null;\n    }\n    b = b.deserialize(i18n.phonenumbers.PhoneMetadata.getDescriptor(), c);\n    this.regionToMetadataMap[a] = b;\n  }\n  return b;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getMetadataForNonGeographicalRegion = function(a) {\n  return this.getMetadataForRegion(\"\" + a);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isNumberMatchingDesc_ = function(a, b) {\n  var c = a.length;\n  return 0 < b.possibleLengthCount() && -1 == goog.array.indexOf(b.possibleLengthArray(), c) ? !1 : i18n.phonenumbers.PhoneNumberUtil.matchesEntirely(b.getNationalNumberPatternOrDefault(), a);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isValidNumber = function(a) {\n  var b = this.getRegionCodeForNumber(a);\n  return this.isValidNumberForRegion(a, b);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isValidNumberForRegion = function(a, b) {\n  var c = a.getCountryCodeOrDefault(), d = this.getMetadataForRegionOrCallingCode_(c, b);\n  if (null == d || i18n.phonenumbers.PhoneNumberUtil.REGION_CODE_FOR_NON_GEO_ENTITY != b && c != this.getCountryCodeForValidRegion_(b)) {\n    return !1;\n  }\n  c = this.getNationalSignificantNumber(a);\n  return this.getNumberTypeHelper_(c, d) != i18n.phonenumbers.PhoneNumberType.UNKNOWN;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getRegionCodeForNumber = function(a) {\n  if (null == a) {\n    return null;\n  }\n  var b = a.getCountryCodeOrDefault();\n  b = i18n.phonenumbers.metadata.countryCodeToRegionCodeMap[b];\n  return null == b ? null : 1 == b.length ? b[0] : this.getRegionCodeForNumberFromRegionList_(a, b);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getRegionCodeForNumberFromRegionList_ = function(a, b) {\n  for (var c = this.getNationalSignificantNumber(a), d, e = b.length, f = 0; f < e; f++) {\n    d = b[f];\n    var g = this.getMetadataForRegion(d);\n    if (g.hasLeadingDigits()) {\n      if (0 == c.search(g.getLeadingDigits())) {\n        return d;\n      }\n    } else {\n      if (this.getNumberTypeHelper_(c, g) != i18n.phonenumbers.PhoneNumberType.UNKNOWN) {\n        return d;\n      }\n    }\n  }\n  return null;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getRegionCodeForCountryCode = function(a) {\n  a = i18n.phonenumbers.metadata.countryCodeToRegionCodeMap[a];\n  return null == a ? i18n.phonenumbers.PhoneNumberUtil.UNKNOWN_REGION_ : a[0];\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getRegionCodesForCountryCode = function(a) {\n  a = i18n.phonenumbers.metadata.countryCodeToRegionCodeMap[a];\n  return null == a ? [] : a;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getCountryCodeForRegion = function(a) {\n  return this.isValidRegionCode_(a) ? this.getCountryCodeForValidRegion_(a) : 0;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getCountryCodeForValidRegion_ = function(a) {\n  var b = this.getMetadataForRegion(a);\n  if (null == b) {\n    throw Error(\"Invalid region code: \" + a);\n  }\n  return b.getCountryCodeOrDefault();\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getNddPrefixForRegion = function(a, b) {\n  var c = this.getMetadataForRegion(a);\n  if (null == c) {\n    return null;\n  }\n  c = c.getNationalPrefixOrDefault();\n  if (0 == c.length) {\n    return null;\n  }\n  b && (c = c.replace(\"~\", \"\"));\n  return c;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isNANPACountry = function(a) {\n  return null != a && goog.array.contains(i18n.phonenumbers.metadata.countryCodeToRegionCodeMap[i18n.phonenumbers.PhoneNumberUtil.NANPA_COUNTRY_CODE_], a.toUpperCase());\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isAlphaNumber = function(a) {\n  if (!i18n.phonenumbers.PhoneNumberUtil.isViablePhoneNumber(a)) {\n    return !1;\n  }\n  a = new goog.string.StringBuffer(a);\n  this.maybeStripExtension(a);\n  return i18n.phonenumbers.PhoneNumberUtil.matchesEntirely(i18n.phonenumbers.PhoneNumberUtil.VALID_ALPHA_PHONE_PATTERN_, a.toString());\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isPossibleNumber = function(a) {\n  a = this.isPossibleNumberWithReason(a);\n  return a == i18n.phonenumbers.PhoneNumberUtil.ValidationResult.IS_POSSIBLE || a == i18n.phonenumbers.PhoneNumberUtil.ValidationResult.IS_POSSIBLE_LOCAL_ONLY;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isPossibleNumberForType = function(a, b) {\n  var c = this.isPossibleNumberForTypeWithReason(a, b);\n  return c == i18n.phonenumbers.PhoneNumberUtil.ValidationResult.IS_POSSIBLE || c == i18n.phonenumbers.PhoneNumberUtil.ValidationResult.IS_POSSIBLE_LOCAL_ONLY;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.testNumberLength_ = function(a, b) {\n  return this.testNumberLengthForType_(a, b, i18n.phonenumbers.PhoneNumberType.UNKNOWN);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.testNumberLengthForType_ = function(a, b, c) {\n  var d = i18n.phonenumbers.PhoneNumberUtil.getNumberDescByType_(b, c), e = 0 == d.possibleLengthCount() ? b.getGeneralDesc().possibleLengthArray() : d.possibleLengthArray();\n  d = d.possibleLengthLocalOnlyArray();\n  if (c == i18n.phonenumbers.PhoneNumberType.FIXED_LINE_OR_MOBILE) {\n    if (i18n.phonenumbers.PhoneNumberUtil.descHasPossibleNumberData_(i18n.phonenumbers.PhoneNumberUtil.getNumberDescByType_(b, i18n.phonenumbers.PhoneNumberType.FIXED_LINE))) {\n      c = i18n.phonenumbers.PhoneNumberUtil.getNumberDescByType_(b, i18n.phonenumbers.PhoneNumberType.MOBILE), i18n.phonenumbers.PhoneNumberUtil.descHasPossibleNumberData_(c) && (e = e.concat(0 == c.possibleLengthCount() ? b.getGeneralDesc().possibleLengthArray() : c.possibleLengthArray()), goog.array.sort(e), 0 == d.length ? d = c.possibleLengthLocalOnlyArray() : (d = d.concat(c.possibleLengthLocalOnlyArray()), goog.array.sort(d)));\n    } else {\n      return this.testNumberLengthForType_(a, b, i18n.phonenumbers.PhoneNumberType.MOBILE);\n    }\n  }\n  if (-1 == e[0]) {\n    return i18n.phonenumbers.PhoneNumberUtil.ValidationResult.INVALID_LENGTH;\n  }\n  a = a.length;\n  if (-1 < goog.array.indexOf(d, a)) {\n    return i18n.phonenumbers.PhoneNumberUtil.ValidationResult.IS_POSSIBLE_LOCAL_ONLY;\n  }\n  b = e[0];\n  return b == a ? i18n.phonenumbers.PhoneNumberUtil.ValidationResult.IS_POSSIBLE : b > a ? i18n.phonenumbers.PhoneNumberUtil.ValidationResult.TOO_SHORT : e[e.length - 1] < a ? i18n.phonenumbers.PhoneNumberUtil.ValidationResult.TOO_LONG : -1 < goog.array.indexOf(e, a, 1) ? i18n.phonenumbers.PhoneNumberUtil.ValidationResult.IS_POSSIBLE : i18n.phonenumbers.PhoneNumberUtil.ValidationResult.INVALID_LENGTH;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isPossibleNumberWithReason = function(a) {\n  return this.isPossibleNumberForTypeWithReason(a, i18n.phonenumbers.PhoneNumberType.UNKNOWN);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isPossibleNumberForTypeWithReason = function(a, b) {\n  var c = this.getNationalSignificantNumber(a), d = a.getCountryCodeOrDefault();\n  if (!this.hasValidCountryCallingCode_(d)) {\n    return i18n.phonenumbers.PhoneNumberUtil.ValidationResult.INVALID_COUNTRY_CODE;\n  }\n  var e = this.getRegionCodeForCountryCode(d);\n  d = this.getMetadataForRegionOrCallingCode_(d, e);\n  return this.testNumberLengthForType_(c, d, b);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isPossibleNumberString = function(a, b) {\n  try {\n    return this.isPossibleNumber(this.parse(a, b));\n  } catch (c) {\n    return !1;\n  }\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.truncateTooLongNumber = function(a) {\n  if (this.isValidNumber(a)) {\n    return !0;\n  }\n  var b = a.clone(), c = a.getNationalNumberOrDefault();\n  do {\n    if (c = Math.floor(c / 10), b.setNationalNumber(c), 0 == c || this.isPossibleNumberWithReason(b) == i18n.phonenumbers.PhoneNumberUtil.ValidationResult.TOO_SHORT) {\n      return !1;\n    }\n  } while (!this.isValidNumber(b));\n  a.setNationalNumber(c);\n  return !0;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.extractCountryCode = function(a, b) {\n  var c = a.toString();\n  if (0 == c.length || \"0\" == c.charAt(0)) {\n    return 0;\n  }\n  for (var d, e = c.length, f = 1; f <= i18n.phonenumbers.PhoneNumberUtil.MAX_LENGTH_COUNTRY_CODE_ && f <= e; ++f) {\n    if (d = parseInt(c.substring(0, f), 10), d in i18n.phonenumbers.metadata.countryCodeToRegionCodeMap) {\n      return b.append(c.substring(f)), d;\n    }\n  }\n  return 0;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.maybeExtractCountryCode = function(a, b, c, d, e) {\n  if (0 == a.length) {\n    return 0;\n  }\n  a = new goog.string.StringBuffer(a);\n  var f;\n  null != b && (f = b.getInternationalPrefix());\n  null == f && (f = \"NonMatch\");\n  f = this.maybeStripInternationalPrefixAndNormalize(a, f);\n  d && e.setCountryCodeSource(f);\n  if (f != i18n.phonenumbers.PhoneNumber.CountryCodeSource.FROM_DEFAULT_COUNTRY) {\n    if (a.getLength() <= i18n.phonenumbers.PhoneNumberUtil.MIN_LENGTH_FOR_NSN_) {\n      throw Error(i18n.phonenumbers.Error.TOO_SHORT_AFTER_IDD);\n    }\n    b = this.extractCountryCode(a, c);\n    if (0 != b) {\n      return e.setCountryCode(b), b;\n    }\n    throw Error(i18n.phonenumbers.Error.INVALID_COUNTRY_CODE);\n  }\n  if (null != b) {\n    f = b.getCountryCodeOrDefault();\n    var g = \"\" + f, h = a.toString();\n    if (goog.string.startsWith(h, g) && (g = new goog.string.StringBuffer(h.substring(g.length)), h = b.getGeneralDesc(), h = new RegExp(h.getNationalNumberPatternOrDefault()), this.maybeStripNationalPrefixAndCarrierCode(g, b, null), g = g.toString(), !i18n.phonenumbers.PhoneNumberUtil.matchesEntirely(h, a.toString()) && i18n.phonenumbers.PhoneNumberUtil.matchesEntirely(h, g) || this.testNumberLength_(a.toString(), b) == i18n.phonenumbers.PhoneNumberUtil.ValidationResult.TOO_LONG)) {\n      return c.append(g), d && e.setCountryCodeSource(i18n.phonenumbers.PhoneNumber.CountryCodeSource.FROM_NUMBER_WITHOUT_PLUS_SIGN), e.setCountryCode(f), f;\n    }\n  }\n  e.setCountryCode(0);\n  return 0;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.parsePrefixAsIdd_ = function(a, b) {\n  var c = b.toString();\n  if (0 == c.search(a)) {\n    var d = c.match(a)[0].length, e = c.substring(d).match(i18n.phonenumbers.PhoneNumberUtil.CAPTURING_DIGIT_PATTERN);\n    if (e && null != e[1] && 0 < e[1].length && \"0\" == i18n.phonenumbers.PhoneNumberUtil.normalizeDigitsOnly(e[1])) {\n      return !1;\n    }\n    b.clear();\n    b.append(c.substring(d));\n    return !0;\n  }\n  return !1;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.maybeStripInternationalPrefixAndNormalize = function(a, b) {\n  var c = a.toString();\n  if (0 == c.length) {\n    return i18n.phonenumbers.PhoneNumber.CountryCodeSource.FROM_DEFAULT_COUNTRY;\n  }\n  if (i18n.phonenumbers.PhoneNumberUtil.LEADING_PLUS_CHARS_PATTERN.test(c)) {\n    return c = c.replace(i18n.phonenumbers.PhoneNumberUtil.LEADING_PLUS_CHARS_PATTERN, \"\"), a.clear(), a.append(i18n.phonenumbers.PhoneNumberUtil.normalize(c)), i18n.phonenumbers.PhoneNumber.CountryCodeSource.FROM_NUMBER_WITH_PLUS_SIGN;\n  }\n  c = new RegExp(b);\n  i18n.phonenumbers.PhoneNumberUtil.normalizeSB_(a);\n  return this.parsePrefixAsIdd_(c, a) ? i18n.phonenumbers.PhoneNumber.CountryCodeSource.FROM_NUMBER_WITH_IDD : i18n.phonenumbers.PhoneNumber.CountryCodeSource.FROM_DEFAULT_COUNTRY;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.maybeStripNationalPrefixAndCarrierCode = function(a, b, c) {\n  var d = a.toString(), e = d.length, f = b.getNationalPrefixForParsing();\n  if (0 == e || null == f || 0 == f.length) {\n    return !1;\n  }\n  var g = new RegExp(\"^(?:\" + f + \")\");\n  if (e = g.exec(d)) {\n    f = new RegExp(b.getGeneralDesc().getNationalNumberPatternOrDefault());\n    var h = i18n.phonenumbers.PhoneNumberUtil.matchesEntirely(f, d), k = e.length - 1;\n    b = b.getNationalPrefixTransformRule();\n    if (null == b || 0 == b.length || null == e[k] || 0 == e[k].length) {\n      if (h && !i18n.phonenumbers.PhoneNumberUtil.matchesEntirely(f, d.substring(e[0].length))) {\n        return !1;\n      }\n      null != c && 0 < k && null != e[k] && c.append(e[1]);\n      a.set(d.substring(e[0].length));\n    } else {\n      d = d.replace(g, b);\n      if (h && !i18n.phonenumbers.PhoneNumberUtil.matchesEntirely(f, d)) {\n        return !1;\n      }\n      null != c && 0 < k && c.append(e[1]);\n      a.set(d);\n    }\n    return !0;\n  }\n  return !1;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.maybeStripExtension = function(a) {\n  var b = a.toString(), c = b.search(i18n.phonenumbers.PhoneNumberUtil.EXTN_PATTERN_);\n  if (0 <= c && i18n.phonenumbers.PhoneNumberUtil.isViablePhoneNumber(b.substring(0, c))) {\n    for (var d = b.match(i18n.phonenumbers.PhoneNumberUtil.EXTN_PATTERN_), e = d.length, f = 1; f < e; ++f) {\n      if (null != d[f] && 0 < d[f].length) {\n        return a.clear(), a.append(b.substring(0, c)), d[f];\n      }\n    }\n  }\n  return \"\";\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.checkRegionForParsing_ = function(a, b) {\n  return this.isValidRegionCode_(b) || null != a && 0 < a.length && i18n.phonenumbers.PhoneNumberUtil.LEADING_PLUS_CHARS_PATTERN.test(a);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.parse = function(a, b) {\n  return this.parseHelper_(a, b, !1, !0);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.parseAndKeepRawInput = function(a, b) {\n  if (!this.isValidRegionCode_(b) && 0 < a.length && a.charAt(0) != i18n.phonenumbers.PhoneNumberUtil.PLUS_SIGN) {\n    throw Error(i18n.phonenumbers.Error.INVALID_COUNTRY_CODE);\n  }\n  return this.parseHelper_(a, b, !0, !0);\n};\ni18n.phonenumbers.PhoneNumberUtil.setItalianLeadingZerosForPhoneNumber_ = function(a, b) {\n  if (1 < a.length && \"0\" == a.charAt(0)) {\n    b.setItalianLeadingZero(!0);\n    for (var c = 1; c < a.length - 1 && \"0\" == a.charAt(c);) {\n      c++;\n    }\n    1 != c && b.setNumberOfLeadingZeros(c);\n  }\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.parseHelper_ = function(a, b, c, d) {\n  if (null == a) {\n    throw Error(i18n.phonenumbers.Error.NOT_A_NUMBER);\n  }\n  if (a.length > i18n.phonenumbers.PhoneNumberUtil.MAX_INPUT_STRING_LENGTH_) {\n    throw Error(i18n.phonenumbers.Error.TOO_LONG);\n  }\n  var e = new goog.string.StringBuffer;\n  this.buildNationalNumberForParsing_(a, e);\n  if (!i18n.phonenumbers.PhoneNumberUtil.isViablePhoneNumber(e.toString())) {\n    throw Error(i18n.phonenumbers.Error.NOT_A_NUMBER);\n  }\n  if (d && !this.checkRegionForParsing_(e.toString(), b)) {\n    throw Error(i18n.phonenumbers.Error.INVALID_COUNTRY_CODE);\n  }\n  d = new i18n.phonenumbers.PhoneNumber;\n  c && d.setRawInput(a);\n  a = this.maybeStripExtension(e);\n  0 < a.length && d.setExtension(a);\n  var f = this.getMetadataForRegion(b);\n  a = new goog.string.StringBuffer;\n  var g = 0, h = e.toString();\n  try {\n    g = this.maybeExtractCountryCode(h, f, a, c, d);\n  } catch (k) {\n    if (k.message == i18n.phonenumbers.Error.INVALID_COUNTRY_CODE && i18n.phonenumbers.PhoneNumberUtil.LEADING_PLUS_CHARS_PATTERN.test(h)) {\n      if (h = h.replace(i18n.phonenumbers.PhoneNumberUtil.LEADING_PLUS_CHARS_PATTERN, \"\"), g = this.maybeExtractCountryCode(h, f, a, c, d), 0 == g) {\n        throw k;\n      }\n    } else {\n      throw k;\n    }\n  }\n  0 != g ? (e = this.getRegionCodeForCountryCode(g), e != b && (f = this.getMetadataForRegionOrCallingCode_(g, e))) : (i18n.phonenumbers.PhoneNumberUtil.normalizeSB_(e), a.append(e.toString()), null != b ? (g = f.getCountryCodeOrDefault(), d.setCountryCode(g)) : c && d.clearCountryCodeSource());\n  if (a.getLength() < i18n.phonenumbers.PhoneNumberUtil.MIN_LENGTH_FOR_NSN_) {\n    throw Error(i18n.phonenumbers.Error.TOO_SHORT_NSN);\n  }\n  null != f && (b = new goog.string.StringBuffer, e = new goog.string.StringBuffer(a.toString()), this.maybeStripNationalPrefixAndCarrierCode(e, f, b), f = this.testNumberLength_(e.toString(), f), g = i18n.phonenumbers.PhoneNumberUtil.ValidationResult, f != g.TOO_SHORT && f != g.IS_POSSIBLE_LOCAL_ONLY && f != g.INVALID_LENGTH && (a = e, c && 0 < b.toString().length && d.setPreferredDomesticCarrierCode(b.toString())));\n  c = a.toString();\n  a = c.length;\n  if (a < i18n.phonenumbers.PhoneNumberUtil.MIN_LENGTH_FOR_NSN_) {\n    throw Error(i18n.phonenumbers.Error.TOO_SHORT_NSN);\n  }\n  if (a > i18n.phonenumbers.PhoneNumberUtil.MAX_LENGTH_FOR_NSN_) {\n    throw Error(i18n.phonenumbers.Error.TOO_LONG);\n  }\n  i18n.phonenumbers.PhoneNumberUtil.setItalianLeadingZerosForPhoneNumber_(c, d);\n  d.setNationalNumber(parseInt(c, 10));\n  return d;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.buildNationalNumberForParsing_ = function(a, b) {\n  var c = a.indexOf(i18n.phonenumbers.PhoneNumberUtil.RFC3966_PHONE_CONTEXT_);\n  if (0 <= c) {\n    var d = c + i18n.phonenumbers.PhoneNumberUtil.RFC3966_PHONE_CONTEXT_.length;\n    if (a.charAt(d) == i18n.phonenumbers.PhoneNumberUtil.PLUS_SIGN) {\n      var e = a.indexOf(\";\", d);\n      0 < e ? b.append(a.substring(d, e)) : b.append(a.substring(d));\n    }\n    d = a.indexOf(i18n.phonenumbers.PhoneNumberUtil.RFC3966_PREFIX_);\n    b.append(a.substring(0 <= d ? d + i18n.phonenumbers.PhoneNumberUtil.RFC3966_PREFIX_.length : 0, c));\n  } else {\n    b.append(i18n.phonenumbers.PhoneNumberUtil.extractPossibleNumber(a));\n  }\n  c = b.toString();\n  d = c.indexOf(i18n.phonenumbers.PhoneNumberUtil.RFC3966_ISDN_SUBADDRESS_);\n  0 < d && (b.clear(), b.append(c.substring(0, d)));\n};\ni18n.phonenumbers.PhoneNumberUtil.copyCoreFieldsOnly_ = function(a) {\n  var b = new i18n.phonenumbers.PhoneNumber;\n  b.setCountryCode(a.getCountryCodeOrDefault());\n  b.setNationalNumber(a.getNationalNumberOrDefault());\n  0 < a.getExtensionOrDefault().length && b.setExtension(a.getExtensionOrDefault());\n  a.getItalianLeadingZero() && (b.setItalianLeadingZero(!0), b.setNumberOfLeadingZeros(a.getNumberOfLeadingZerosOrDefault()));\n  return b;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isNumberMatch = function(a, b) {\n  if (\"string\" == typeof a) {\n    try {\n      var c = this.parse(a, i18n.phonenumbers.PhoneNumberUtil.UNKNOWN_REGION_);\n    } catch (g) {\n      if (g.message != i18n.phonenumbers.Error.INVALID_COUNTRY_CODE) {\n        return i18n.phonenumbers.PhoneNumberUtil.MatchType.NOT_A_NUMBER;\n      }\n      if (\"string\" != typeof b) {\n        var d = this.getRegionCodeForCountryCode(b.getCountryCodeOrDefault());\n        if (d != i18n.phonenumbers.PhoneNumberUtil.UNKNOWN_REGION_) {\n          try {\n            c = this.parse(a, d);\n          } catch (h) {\n            return i18n.phonenumbers.PhoneNumberUtil.MatchType.NOT_A_NUMBER;\n          }\n          c = this.isNumberMatch(c, b);\n          return c == i18n.phonenumbers.PhoneNumberUtil.MatchType.EXACT_MATCH ? i18n.phonenumbers.PhoneNumberUtil.MatchType.NSN_MATCH : c;\n        }\n      }\n      try {\n        c = this.parseHelper_(a, null, !1, !1);\n      } catch (h) {\n        return i18n.phonenumbers.PhoneNumberUtil.MatchType.NOT_A_NUMBER;\n      }\n    }\n  } else {\n    c = a.clone();\n  }\n  if (\"string\" == typeof b) {\n    try {\n      var e = this.parse(b, i18n.phonenumbers.PhoneNumberUtil.UNKNOWN_REGION_);\n      return this.isNumberMatch(a, e);\n    } catch (g) {\n      return g.message != i18n.phonenumbers.Error.INVALID_COUNTRY_CODE ? i18n.phonenumbers.PhoneNumberUtil.MatchType.NOT_A_NUMBER : this.isNumberMatch(b, c);\n    }\n  } else {\n    e = b.clone();\n  }\n  c = i18n.phonenumbers.PhoneNumberUtil.copyCoreFieldsOnly_(c);\n  e = i18n.phonenumbers.PhoneNumberUtil.copyCoreFieldsOnly_(e);\n  if (c.hasExtension() && e.hasExtension() && c.getExtension() != e.getExtension()) {\n    return i18n.phonenumbers.PhoneNumberUtil.MatchType.NO_MATCH;\n  }\n  d = c.getCountryCodeOrDefault();\n  var f = e.getCountryCodeOrDefault();\n  if (0 != d && 0 != f) {\n    return c.equals(e) ? i18n.phonenumbers.PhoneNumberUtil.MatchType.EXACT_MATCH : d == f && this.isNationalNumberSuffixOfTheOther_(c, e) ? i18n.phonenumbers.PhoneNumberUtil.MatchType.SHORT_NSN_MATCH : i18n.phonenumbers.PhoneNumberUtil.MatchType.NO_MATCH;\n  }\n  c.setCountryCode(0);\n  e.setCountryCode(0);\n  return c.equals(e) ? i18n.phonenumbers.PhoneNumberUtil.MatchType.NSN_MATCH : this.isNationalNumberSuffixOfTheOther_(c, e) ? i18n.phonenumbers.PhoneNumberUtil.MatchType.SHORT_NSN_MATCH : i18n.phonenumbers.PhoneNumberUtil.MatchType.NO_MATCH;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isNationalNumberSuffixOfTheOther_ = function(a, b) {\n  var c = \"\" + a.getNationalNumber(), d = \"\" + b.getNationalNumber();\n  return goog.string.endsWith(c, d) || goog.string.endsWith(d, c);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.canBeInternationallyDialled = function(a) {\n  var b = this.getMetadataForRegion(this.getRegionCodeForNumber(a));\n  if (null == b) {\n    return !0;\n  }\n  a = this.getNationalSignificantNumber(a);\n  return !this.isNumberMatchingDesc_(a, b.getNoInternationalDialling());\n};\ni18n.phonenumbers.PhoneNumberUtil.matchesEntirely = function(a, b) {\n  var c = \"string\" == typeof a ? b.match(\"^(?:\" + a + \")$\") : b.match(a);\n  return c && c[0].length == b.length ? !0 : !1;\n};\ni18n.phonenumbers.PhoneNumberUtil.matchesPrefix = function(a, b) {\n  var c = \"string\" == typeof a ? b.match(\"^(?:\" + a + \")\") : b.match(a);\n  return c && goog.string.startsWith(b, c[0]) ? !0 : !1;\n};\ni18n.phonenumbers.AsYouTypeFormatter = function(a) {\n  this.DIGIT_PLACEHOLDER_ = \"\\u2008\";\n  this.DIGIT_PATTERN_ = new RegExp(this.DIGIT_PLACEHOLDER_);\n  this.currentOutput_ = \"\";\n  this.formattingTemplate_ = new goog.string.StringBuffer;\n  this.currentFormattingPattern_ = \"\";\n  this.accruedInput_ = new goog.string.StringBuffer;\n  this.accruedInputWithoutFormatting_ = new goog.string.StringBuffer;\n  this.ableToFormat_ = !0;\n  this.isExpectingCountryCallingCode_ = this.isCompleteNumber_ = this.inputHasFormatting_ = !1;\n  this.phoneUtil_ = i18n.phonenumbers.PhoneNumberUtil.getInstance();\n  this.positionToRemember_ = this.originalPosition_ = this.lastMatchPosition_ = 0;\n  this.prefixBeforeNationalNumber_ = new goog.string.StringBuffer;\n  this.shouldAddSpaceAfterNationalPrefix_ = !1;\n  this.extractedNationalPrefix_ = \"\";\n  this.nationalNumber_ = new goog.string.StringBuffer;\n  this.possibleFormats_ = [];\n  this.defaultCountry_ = a;\n  this.defaultMetadata_ = this.currentMetadata_ = this.getMetadataForRegion_(this.defaultCountry_);\n};\ni18n.phonenumbers.AsYouTypeFormatter.SEPARATOR_BEFORE_NATIONAL_NUMBER_ = \" \";\ni18n.phonenumbers.AsYouTypeFormatter.EMPTY_METADATA_ = new i18n.phonenumbers.PhoneMetadata;\ni18n.phonenumbers.AsYouTypeFormatter.EMPTY_METADATA_.setInternationalPrefix(\"NA\");\ni18n.phonenumbers.AsYouTypeFormatter.ELIGIBLE_FORMAT_PATTERN_ = new RegExp(\"^[\" + i18n.phonenumbers.PhoneNumberUtil.VALID_PUNCTUATION + \"]*(\\\\$\\\\d[\" + i18n.phonenumbers.PhoneNumberUtil.VALID_PUNCTUATION + \"]*)+$\");\ni18n.phonenumbers.AsYouTypeFormatter.NATIONAL_PREFIX_SEPARATORS_PATTERN_ = /[- ]/;\ni18n.phonenumbers.AsYouTypeFormatter.MIN_LEADING_DIGITS_LENGTH_ = 3;\ni18n.phonenumbers.AsYouTypeFormatter.prototype.getMetadataForRegion_ = function(a) {\n  a = this.phoneUtil_.getCountryCodeForRegion(a);\n  a = this.phoneUtil_.getRegionCodeForCountryCode(a);\n  a = this.phoneUtil_.getMetadataForRegion(a);\n  return null != a ? a : i18n.phonenumbers.AsYouTypeFormatter.EMPTY_METADATA_;\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.maybeCreateNewTemplate_ = function() {\n  for (var a = this.possibleFormats_.length, b = 0; b < a; ++b) {\n    var c = this.possibleFormats_[b], d = c.getPatternOrDefault();\n    if (this.currentFormattingPattern_ == d) {\n      return !1;\n    }\n    if (this.createFormattingTemplate_(c)) {\n      return this.currentFormattingPattern_ = d, this.shouldAddSpaceAfterNationalPrefix_ = i18n.phonenumbers.AsYouTypeFormatter.NATIONAL_PREFIX_SEPARATORS_PATTERN_.test(c.getNationalPrefixFormattingRule()), this.lastMatchPosition_ = 0, !0;\n    }\n  }\n  return this.ableToFormat_ = !1;\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.getAvailableFormats_ = function(a) {\n  for (var b = this.isCompleteNumber_ && 0 == this.extractedNationalPrefix_.length && 0 < this.currentMetadata_.intlNumberFormatCount() ? this.currentMetadata_.intlNumberFormatArray() : this.currentMetadata_.numberFormatArray(), c = b.length, d = 0; d < c; ++d) {\n    var e = b[d];\n    0 < this.extractedNationalPrefix_.length && this.phoneUtil_.formattingRuleHasFirstGroupOnly(e.getNationalPrefixFormattingRuleOrDefault()) && !e.getNationalPrefixOptionalWhenFormatting() && !e.hasDomesticCarrierCodeFormattingRule() || (0 != this.extractedNationalPrefix_.length || this.isCompleteNumber_ || this.phoneUtil_.formattingRuleHasFirstGroupOnly(e.getNationalPrefixFormattingRuleOrDefault()) || e.getNationalPrefixOptionalWhenFormatting()) && i18n.phonenumbers.AsYouTypeFormatter.ELIGIBLE_FORMAT_PATTERN_.test(e.getFormatOrDefault()) &&\n    this.possibleFormats_.push(e);\n  }\n  this.narrowDownPossibleFormats_(a);\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.narrowDownPossibleFormats_ = function(a) {\n  for (var b = [], c = a.length - i18n.phonenumbers.AsYouTypeFormatter.MIN_LEADING_DIGITS_LENGTH_, d = this.possibleFormats_.length, e = 0; e < d; ++e) {\n    var f = this.possibleFormats_[e];\n    if (0 == f.leadingDigitsPatternCount()) {\n      b.push(this.possibleFormats_[e]);\n    } else {\n      var g = Math.min(c, f.leadingDigitsPatternCount() - 1);\n      f = f.getLeadingDigitsPattern(g);\n      0 == a.search(f) && b.push(this.possibleFormats_[e]);\n    }\n  }\n  this.possibleFormats_ = b;\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.createFormattingTemplate_ = function(a) {\n  var b = a.getPatternOrDefault();\n  this.formattingTemplate_.clear();\n  a = this.getFormattingTemplate_(b, a.getFormatOrDefault());\n  return 0 < a.length ? (this.formattingTemplate_.append(a), !0) : !1;\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.getFormattingTemplate_ = function(a, b) {\n  var c = \"999999999999999\".match(a)[0];\n  if (c.length < this.nationalNumber_.getLength()) {\n    return \"\";\n  }\n  c = c.replace(new RegExp(a, \"g\"), b);\n  return c = c.replace(RegExp(\"9\", \"g\"), this.DIGIT_PLACEHOLDER_);\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.clear = function() {\n  this.currentOutput_ = \"\";\n  this.accruedInput_.clear();\n  this.accruedInputWithoutFormatting_.clear();\n  this.formattingTemplate_.clear();\n  this.lastMatchPosition_ = 0;\n  this.currentFormattingPattern_ = \"\";\n  this.prefixBeforeNationalNumber_.clear();\n  this.extractedNationalPrefix_ = \"\";\n  this.nationalNumber_.clear();\n  this.ableToFormat_ = !0;\n  this.inputHasFormatting_ = !1;\n  this.originalPosition_ = this.positionToRemember_ = 0;\n  this.isExpectingCountryCallingCode_ = this.isCompleteNumber_ = !1;\n  this.possibleFormats_ = [];\n  this.shouldAddSpaceAfterNationalPrefix_ = !1;\n  this.currentMetadata_ != this.defaultMetadata_ && (this.currentMetadata_ = this.getMetadataForRegion_(this.defaultCountry_));\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.inputDigit = function(a) {\n  return this.currentOutput_ = this.inputDigitWithOptionToRememberPosition_(a, !1);\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.inputDigitAndRememberPosition = function(a) {\n  return this.currentOutput_ = this.inputDigitWithOptionToRememberPosition_(a, !0);\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.inputDigitWithOptionToRememberPosition_ = function(a, b) {\n  this.accruedInput_.append(a);\n  b && (this.originalPosition_ = this.accruedInput_.getLength());\n  this.isDigitOrLeadingPlusSign_(a) ? a = this.normalizeAndAccrueDigitsAndPlusSign_(a, b) : (this.ableToFormat_ = !1, this.inputHasFormatting_ = !0);\n  if (!this.ableToFormat_) {\n    if (!this.inputHasFormatting_) {\n      if (this.attemptToExtractIdd_()) {\n        if (this.attemptToExtractCountryCallingCode_()) {\n          return this.attemptToChoosePatternWithPrefixExtracted_();\n        }\n      } else {\n        if (this.ableToExtractLongerNdd_()) {\n          return this.prefixBeforeNationalNumber_.append(i18n.phonenumbers.AsYouTypeFormatter.SEPARATOR_BEFORE_NATIONAL_NUMBER_), this.attemptToChoosePatternWithPrefixExtracted_();\n        }\n      }\n    }\n    return this.accruedInput_.toString();\n  }\n  switch(this.accruedInputWithoutFormatting_.getLength()) {\n    case 0:\n    case 1:\n    case 2:\n      return this.accruedInput_.toString();\n    case 3:\n      if (this.attemptToExtractIdd_()) {\n        this.isExpectingCountryCallingCode_ = !0;\n      } else {\n        return this.extractedNationalPrefix_ = this.removeNationalPrefixFromNationalNumber_(), this.attemptToChooseFormattingPattern_();\n      }\n    default:\n      if (this.isExpectingCountryCallingCode_) {\n        return this.attemptToExtractCountryCallingCode_() && (this.isExpectingCountryCallingCode_ = !1), this.prefixBeforeNationalNumber_.toString() + this.nationalNumber_.toString();\n      }\n      if (0 < this.possibleFormats_.length) {\n        var c = this.inputDigitHelper_(a), d = this.attemptToFormatAccruedDigits_();\n        if (0 < d.length) {\n          return d;\n        }\n        this.narrowDownPossibleFormats_(this.nationalNumber_.toString());\n        return this.maybeCreateNewTemplate_() ? this.inputAccruedNationalNumber_() : this.ableToFormat_ ? this.appendNationalNumber_(c) : this.accruedInput_.toString();\n      }\n      return this.attemptToChooseFormattingPattern_();\n  }\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.attemptToChoosePatternWithPrefixExtracted_ = function() {\n  this.ableToFormat_ = !0;\n  this.isExpectingCountryCallingCode_ = !1;\n  this.possibleFormats_ = [];\n  this.lastMatchPosition_ = 0;\n  this.formattingTemplate_.clear();\n  this.currentFormattingPattern_ = \"\";\n  return this.attemptToChooseFormattingPattern_();\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.getExtractedNationalPrefix_ = function() {\n  return this.extractedNationalPrefix_;\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.ableToExtractLongerNdd_ = function() {\n  if (0 < this.extractedNationalPrefix_.length) {\n    var a = this.nationalNumber_.toString();\n    this.nationalNumber_.clear();\n    this.nationalNumber_.append(this.extractedNationalPrefix_);\n    this.nationalNumber_.append(a);\n    a = this.prefixBeforeNationalNumber_.toString();\n    var b = a.lastIndexOf(this.extractedNationalPrefix_);\n    this.prefixBeforeNationalNumber_.clear();\n    this.prefixBeforeNationalNumber_.append(a.substring(0, b));\n  }\n  return this.extractedNationalPrefix_ != this.removeNationalPrefixFromNationalNumber_();\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.isDigitOrLeadingPlusSign_ = function(a) {\n  return i18n.phonenumbers.PhoneNumberUtil.CAPTURING_DIGIT_PATTERN.test(a) || 1 == this.accruedInput_.getLength() && i18n.phonenumbers.PhoneNumberUtil.PLUS_CHARS_PATTERN.test(a);\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.attemptToFormatAccruedDigits_ = function() {\n  for (var a = this.nationalNumber_.toString(), b = this.possibleFormats_.length, c = 0; c < b; ++c) {\n    var d = this.possibleFormats_[c], e = d.getPatternOrDefault();\n    if ((new RegExp(\"^(?:\" + e + \")$\")).test(a) && (this.shouldAddSpaceAfterNationalPrefix_ = i18n.phonenumbers.AsYouTypeFormatter.NATIONAL_PREFIX_SEPARATORS_PATTERN_.test(d.getNationalPrefixFormattingRule()), d = a.replace(new RegExp(e, \"g\"), d.getFormat()), d = this.appendNationalNumber_(d), i18n.phonenumbers.PhoneNumberUtil.normalizeDiallableCharsOnly(d) == this.accruedInputWithoutFormatting_)) {\n      return d;\n    }\n  }\n  return \"\";\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.appendNationalNumber_ = function(a) {\n  var b = this.prefixBeforeNationalNumber_.getLength();\n  return this.shouldAddSpaceAfterNationalPrefix_ && 0 < b && this.prefixBeforeNationalNumber_.toString().charAt(b - 1) != i18n.phonenumbers.AsYouTypeFormatter.SEPARATOR_BEFORE_NATIONAL_NUMBER_ ? this.prefixBeforeNationalNumber_ + i18n.phonenumbers.AsYouTypeFormatter.SEPARATOR_BEFORE_NATIONAL_NUMBER_ + a : this.prefixBeforeNationalNumber_ + a;\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.getRememberedPosition = function() {\n  if (!this.ableToFormat_) {\n    return this.originalPosition_;\n  }\n  for (var a = 0, b = 0, c = this.accruedInputWithoutFormatting_.toString(), d = this.currentOutput_.toString(); a < this.positionToRemember_ && b < d.length;) {\n    c.charAt(a) == d.charAt(b) && a++, b++;\n  }\n  return b;\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.attemptToChooseFormattingPattern_ = function() {\n  var a = this.nationalNumber_.toString();\n  return a.length >= i18n.phonenumbers.AsYouTypeFormatter.MIN_LEADING_DIGITS_LENGTH_ ? (this.getAvailableFormats_(a), a = this.attemptToFormatAccruedDigits_(), 0 < a.length ? a : this.maybeCreateNewTemplate_() ? this.inputAccruedNationalNumber_() : this.accruedInput_.toString()) : this.appendNationalNumber_(a);\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.inputAccruedNationalNumber_ = function() {\n  var a = this.nationalNumber_.toString(), b = a.length;\n  if (0 < b) {\n    for (var c = \"\", d = 0; d < b; d++) {\n      c = this.inputDigitHelper_(a.charAt(d));\n    }\n    return this.ableToFormat_ ? this.appendNationalNumber_(c) : this.accruedInput_.toString();\n  }\n  return this.prefixBeforeNationalNumber_.toString();\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.isNanpaNumberWithNationalPrefix_ = function() {\n  if (1 != this.currentMetadata_.getCountryCode()) {\n    return !1;\n  }\n  var a = this.nationalNumber_.toString();\n  return \"1\" == a.charAt(0) && \"0\" != a.charAt(1) && \"1\" != a.charAt(1);\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.removeNationalPrefixFromNationalNumber_ = function() {\n  var a = this.nationalNumber_.toString(), b = 0;\n  if (this.isNanpaNumberWithNationalPrefix_()) {\n    b = 1, this.prefixBeforeNationalNumber_.append(\"1\").append(i18n.phonenumbers.AsYouTypeFormatter.SEPARATOR_BEFORE_NATIONAL_NUMBER_), this.isCompleteNumber_ = !0;\n  } else {\n    if (this.currentMetadata_.hasNationalPrefixForParsing()) {\n      var c = new RegExp(\"^(?:\" + this.currentMetadata_.getNationalPrefixForParsing() + \")\");\n      c = a.match(c);\n      null != c && null != c[0] && 0 < c[0].length && (this.isCompleteNumber_ = !0, b = c[0].length, this.prefixBeforeNationalNumber_.append(a.substring(0, b)));\n    }\n  }\n  this.nationalNumber_.clear();\n  this.nationalNumber_.append(a.substring(b));\n  return a.substring(0, b);\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.attemptToExtractIdd_ = function() {\n  var a = this.accruedInputWithoutFormatting_.toString(), b = new RegExp(\"^(?:\\\\\" + i18n.phonenumbers.PhoneNumberUtil.PLUS_SIGN + \"|\" + this.currentMetadata_.getInternationalPrefix() + \")\");\n  b = a.match(b);\n  return null != b && null != b[0] && 0 < b[0].length ? (this.isCompleteNumber_ = !0, b = b[0].length, this.nationalNumber_.clear(), this.nationalNumber_.append(a.substring(b)), this.prefixBeforeNationalNumber_.clear(), this.prefixBeforeNationalNumber_.append(a.substring(0, b)), a.charAt(0) != i18n.phonenumbers.PhoneNumberUtil.PLUS_SIGN && this.prefixBeforeNationalNumber_.append(i18n.phonenumbers.AsYouTypeFormatter.SEPARATOR_BEFORE_NATIONAL_NUMBER_), !0) : !1;\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.attemptToExtractCountryCallingCode_ = function() {\n  if (0 == this.nationalNumber_.getLength()) {\n    return !1;\n  }\n  var a = new goog.string.StringBuffer, b = this.phoneUtil_.extractCountryCode(this.nationalNumber_, a);\n  if (0 == b) {\n    return !1;\n  }\n  this.nationalNumber_.clear();\n  this.nationalNumber_.append(a.toString());\n  a = this.phoneUtil_.getRegionCodeForCountryCode(b);\n  i18n.phonenumbers.PhoneNumberUtil.REGION_CODE_FOR_NON_GEO_ENTITY == a ? this.currentMetadata_ = this.phoneUtil_.getMetadataForNonGeographicalRegion(b) : a != this.defaultCountry_ && (this.currentMetadata_ = this.getMetadataForRegion_(a));\n  this.prefixBeforeNationalNumber_.append(\"\" + b).append(i18n.phonenumbers.AsYouTypeFormatter.SEPARATOR_BEFORE_NATIONAL_NUMBER_);\n  this.extractedNationalPrefix_ = \"\";\n  return !0;\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.normalizeAndAccrueDigitsAndPlusSign_ = function(a, b) {\n  if (a == i18n.phonenumbers.PhoneNumberUtil.PLUS_SIGN) {\n    var c = a;\n    this.accruedInputWithoutFormatting_.append(a);\n  } else {\n    c = i18n.phonenumbers.PhoneNumberUtil.DIGIT_MAPPINGS[a], this.accruedInputWithoutFormatting_.append(c), this.nationalNumber_.append(c);\n  }\n  b && (this.positionToRemember_ = this.accruedInputWithoutFormatting_.getLength());\n  return c;\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.inputDigitHelper_ = function(a) {\n  var b = this.formattingTemplate_.toString();\n  if (0 <= b.substring(this.lastMatchPosition_).search(this.DIGIT_PATTERN_)) {\n    var c = b.search(this.DIGIT_PATTERN_);\n    a = b.replace(this.DIGIT_PATTERN_, a);\n    this.formattingTemplate_.clear();\n    this.formattingTemplate_.append(a);\n    this.lastMatchPosition_ = c;\n    return a.substring(0, this.lastMatchPosition_ + 1);\n  }\n  1 == this.possibleFormats_.length && (this.ableToFormat_ = !1);\n  this.currentFormattingPattern_ = \"\";\n  return this.accruedInput_.toString();\n};\n/*\n\n Copyright (C) 2011 The Libphonenumber Authors.\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n*/\ni18n.phonenumbers.RegionCode = {UN001:\"001\", AD:\"AD\", AE:\"AE\", AO:\"AO\", AQ:\"AQ\", AR:\"AR\", AM:\"AM\", AU:\"AU\", BB:\"BB\", BR:\"BR\", BS:\"BS\", BY:\"BY\", CA:\"CA\", CH:\"CH\", CL:\"CL\", CN:\"CN\", CS:\"CS\", CX:\"CX\", DE:\"DE\", FR:\"FR\", GB:\"GB\", HU:\"HU\", IT:\"IT\", JP:\"JP\", KR:\"KR\", MX:\"MX\", NZ:\"NZ\", PL:\"PL\", RE:\"RE\", RU:\"RU\", SE:\"SE\", SG:\"SG\", US:\"US\", UZ:\"UZ\", YT:\"YT\", ZW:\"ZW\", ZZ:\"ZZ\"};\n/*\n\nCompiled Wednesday July 30, 2014 at 2:15pm America/New_York\n\nVersion: libphonenumber r680\n\n------------------------------------------------------------------------\n\n\n Copyright (C) Alan Beebe (alan.beebe@gmail.com).\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n\n\nUsage...\n\nThis is the same type of code used by cell phones when you enter\na phone number into your dialer app.  Your phone already knows\nwhat country you are a subscriber in, so it assumes you are entering\na local number, unless of course you prefix the number with a +, or\nin the USA you could also prefix the number with 011 to indicate you\nwish to dial internationally.  This code functions the same way.\n\nLets assume your in the United States and you enter the following\nphone number: 8646978257\n\nformatE164(\"US\", \"8646978257\");\n Returns: +18646978257\n\ncountryForE164Number(\"US\", \"+18646978257\");\n Returns: US\n\nformatInternational(\"US\", \"8646978257\");\n Returns: (864) 697-8257\n Info: This is the format you use if you are displaying this number to users outside the US\n\nformatLocal(\"US\", \"8646978257\");\n Returns: (864) 697-8257\n Info: This is the format you use if you are displaying this number to users inside the US\n       (In certain countries, this format will be different then the international format)\n\ncountryCodeToName(\"US\");\n Returns: United States\n\n\n\n*/\n\n\n// -------------------------------------------------------------------------\nfunction countryForE164Number(phone) {\n    /*\n\n    Return the country code for an e164 formatted number\n\n    phone (String) phone number in e164 format to return the country code for\n\n    */\n    try {\n        var phone = cleanPhone(phone);\n        var phoneUtil = i18n.phonenumbers.PhoneNumberUtil.getInstance();\n        var number = phoneUtil.parseAndKeepRawInput(phone);\n        var output = new goog.string.StringBuffer();\n        output = phoneUtil.getRegionCodeForNumber(number);\n        return output.toString();\n    } catch (e) {\n        return \"\";\n    }\n}\n\n// -------------------------------------------------------------------------\nfunction formatNumberForMobileDialing(country, phone) {\n    /*\n\n    Returns a number formatted in such a way that it can be dialed from a mobile\n    phone in a specific region. If the number cannot be reached from the region\n    (e.g. some countries block toll-free numbers from being called outside of the\n    country), the method returns an empty string.\n\n    */\n\n    try {\n        var phone = cleanPhone(phone);\n        var phoneUtil = i18n.phonenumbers.PhoneNumberUtil.getInstance();\n        var number = phoneUtil.parseAndKeepRawInput(phone, country);\n        var output = new goog.string.StringBuffer();\n        output = phoneUtil.formatNumberForMobileDialing(number, country, true);\n        return output.toString();\n    } catch (e) {\n        return \"\";\n    }\n}\n\n// -------------------------------------------------------------------------\nfunction isValidNumber(phone, country, type) {\n    /*\n\n    Tests whether a phone number matches a valid pattern. Note this doesn't\n    verify the number is actually in use, which is impossible to tell by just\n    looking at a number itself.\n\n    */\n\n    try {\n        var phone = cleanPhone(phone);\n        var phoneUtil = i18n.phonenumbers.PhoneNumberUtil.getInstance();\n        var number = phoneUtil.parseAndKeepRawInput(phone, country);\n        if (typeof type === 'string') {\n            var type = type.toUpperCase();\n            if (phoneUtil.isValidNumber(number) &&\n                phoneUtil.getNumberType(number) === i18n.phonenumbers.PhoneNumberType[type]) {\n                return true;\n            }\n            else {\n                return false;\n            }\n        }\n        else {\n            return phoneUtil.isValidNumber(number);\n        }\n    } catch (e) {\n        return false;\n    }\n}\n\n// -------------------------------------------------------------------------\nfunction formatE164(country, phone) {\n    /*\n\n    Return the phone number in e164 format\n\n    country (String) 2 digit country code\n    phone (String) phone number to format\n\n    */\n\n    try {\n        var phone = cleanPhone(phone);\n        var phoneUtil = i18n.phonenumbers.PhoneNumberUtil.getInstance();\n        var number = phoneUtil.parseAndKeepRawInput(phone, country);\n        var PNF = i18n.phonenumbers.PhoneNumberFormat;\n        var output = new goog.string.StringBuffer();\n        output = phoneUtil.format(number, PNF.E164);\n        return output.toString();\n    } catch (e) {\n        return phone\n    }\n}\n\n\n// -------------------------------------------------------------------------\nfunction formatInternational(country, phone) {\n    /*\n\n    Return the phone number in international format\n\n    country (String) 2 digit country code\n    phone (String) phone number to format\n\n    */\n\n    try {\n        var phone = cleanPhone(phone);\n        var formatter = new i18n.phonenumbers.AsYouTypeFormatter(country);\n        var output = new goog.string.StringBuffer();\n        for (var i = 0; i < phone.length; ++i) {\n            var inputChar = phone.charAt(i);\n            output = (formatter.inputDigit(inputChar));\n        }\n        return output.toString();\n    } catch (e) {\n        return phone;\n    }\n}\n\n// -------------------------------------------------------------------------\nfunction formatLocal(country, phone) {\n    /*\n\n    Return the phone number in the format local to the user\n\n    country (String) 2 digit country code\n    phone (String) phone number to format\n\n    */\n\n    try {\n        var phone = cleanPhone(phone);\n        var phoneUtil = i18n.phonenumbers.PhoneNumberUtil.getInstance();\n        var number = phoneUtil.parseAndKeepRawInput(phone, country);\n        if (phoneUtil.isValidNumberForRegion(number, country)) {\n            var PNF = i18n.phonenumbers.PhoneNumberFormat;\n            var output = new goog.string.StringBuffer();\n            output = phoneUtil.format(number, PNF.NATIONAL);\n            return output.toString();\n        } else {\n            return formatInternational(country, phone);\n        }\n    } catch (e) {\n        return formatInternational(country, phone);\n    }\n}\n\n// -------------------------------------------------------------------------\nfunction exampleLandlineNumber(country) {\n    /*\n\n    Returns an example land line phone number for the specified country\n\n    country (String) 2 digit country code\n\n    */\n\n    try {\n        var phoneUtil = i18n.phonenumbers.PhoneNumberUtil.getInstance();\n        var output = phoneUtil.getExampleNumber(country);\n        return \"\"+output.getNationalNumber();\n    } catch (e) {\n        return \"\";\n    }\n}\n\n// -------------------------------------------------------------------------\nfunction exampleMobileNumber(country) {\n    /*\n\n    Returns an example mobile phone number for the specified country\n\n    country (String) 2 digit country code\n\n    */\n\n    try {\n        var phoneUtil = i18n.phonenumbers.PhoneNumberUtil.getInstance();\n        var output = phoneUtil.getExampleNumberForType(country, i18n.phonenumbers.PhoneNumberType.MOBILE);\n        return \"\"+output.getNationalNumber();\n    } catch (e) {\n        return \"\";\n    }\n}\n\n// -------------------------------------------------------------------------\nfunction cleanPhone(phone) {\n    /*\n\n    Remove any non numeric characters from the phone number but leave any plus sign at the beginning\n\n    phone (String) phone number to clean\n\n    */\n\n    phone = phone.replace(/[^\\d\\+]/g,'');\n    if (phone.substr(0, 1) == \"+\") {\n        phone = \"+\" + phone.replace(/[^\\d]/g,'');\n    } else {\n        phone = phone.replace(/[^\\d]/g,'');\n    }\n    return phone;\n}\n\n// -------------------------------------------------------------------------\nfunction countryCodeToName(countryCode) {\n    /*\n\n    Convert the country code to a name\n\n    country (String) 2 digit country code\n\n    */\n\n    var arrCountry = new Array();\n    arrCountry['AF'] = \"Afghanistan\";\n    arrCountry['AL'] = \"Albania\";\n    arrCountry['DZ'] = \"Algeria\";\n    arrCountry['AS'] = \"American Samoa\";\n    arrCountry['AD'] = \"Andorra\";\n    arrCountry['AO'] = \"Angola\";\n    arrCountry['AI'] = \"Anguilla\";\n    arrCountry['AQ'] = \"Antarctica\";\n    arrCountry['AG'] = \"Antigua And Barbuda\";\n    arrCountry['AR'] = \"Argentina\";\n    arrCountry['AM'] = \"Armenia\";\n    arrCountry['AW'] = \"Aruba\";\n    arrCountry['AC'] = \"Ascension Island\";\n    arrCountry['AU'] = \"Australia\";\n    arrCountry['AT'] = \"Austria\";\n    arrCountry['AZ'] = \"Azerbaijan\";\n    arrCountry['BS'] = \"Bahamas\";\n    arrCountry['BH'] = \"Bahrain\";\n    arrCountry['BD'] = \"Bangladesh\";\n    arrCountry['BB'] = \"Barbados\";\n    arrCountry['BY'] = \"Belarus\";\n    arrCountry['BE'] = \"Belgium\";\n    arrCountry['BZ'] = \"Belize\";\n    arrCountry['BJ'] = \"Benin\";\n    arrCountry['BM'] = \"Bermuda\";\n    arrCountry['BT'] = \"Bhutan\";\n    arrCountry['BO'] = \"Bolivia\";\n    arrCountry['BA'] = \"Bosnia And Herzegovina\";\n    arrCountry['BW'] = \"Botswana\";\n    arrCountry['BV'] = \"Bouvet Island\";\n    arrCountry['BR'] = \"Brazil\";\n    arrCountry['IO'] = \"British Indian Ocean Territory\";\n    arrCountry['BN'] = \"Brunei\";\n    arrCountry['BG'] = \"Bulgaria\";\n    arrCountry['BF'] = \"Burkina Faso\";\n    arrCountry['BI'] = \"Burundi\";\n    arrCountry['KH'] = \"Cambodia\";\n    arrCountry['CM'] = \"Cameroon\";\n    arrCountry['CA'] = \"Canada\";\n    arrCountry['CV'] = \"Cape Verde\";\n    arrCountry['KY'] = \"Cayman Islands\";\n    arrCountry['CF'] = \"Central African Republic\";\n    arrCountry['TD'] = \"Chad\";\n    arrCountry['CL'] = \"Chile\";\n    arrCountry['CN'] = \"China\";\n    arrCountry['CX'] = \"Christmas Island\";\n    arrCountry['CC'] = \"Cocos (Keeling) Islands\";\n    arrCountry['CO'] = \"Colombia\";\n    arrCountry['KM'] = \"Comoros\";\n    arrCountry['CG'] = \"Congo\";\n    arrCountry['CK'] = \"Cook Islands\";\n    arrCountry['CR'] = \"Costa Rica\";\n    arrCountry['CI'] = \"Cote D'Ivorie (Ivory Coast)\";\n    arrCountry['HR'] = \"Croatia (Hrvatska)\";\n    arrCountry['CU'] = \"Cuba\";\n    arrCountry['CY'] = \"Cyprus\";\n    arrCountry['CZ'] = \"Czech Republic\";\n    arrCountry['CD'] = \"Democratic Republic Of Congo (Zaire)\";\n    arrCountry['DK'] = \"Denmark\";\n    arrCountry['DJ'] = \"Djibouti\";\n    arrCountry['DM'] = \"Dominica\";\n    arrCountry['DO'] = \"Dominican Republic\";\n    arrCountry['TL'] = \"East Timor\";\n    arrCountry['EC'] = \"Ecuador\";\n    arrCountry['EG'] = \"Egypt\";\n    arrCountry['SV'] = \"El Salvador\";\n    arrCountry['GQ'] = \"Equatorial Guinea\";\n    arrCountry['ER'] = \"Eritrea\";\n    arrCountry['EE'] = \"Estonia\";\n    arrCountry['ET'] = \"Ethiopia\";\n    arrCountry['FK'] = \"Falkland Islands (Malvinas)\";\n    arrCountry['FO'] = \"Faroe Islands\";\n    arrCountry['FJ'] = \"Fiji\";\n    arrCountry['FI'] = \"Finland\";\n    arrCountry['FR'] = \"France\";\n    arrCountry['FX'] = \"France, Metropolitan\";\n    arrCountry['GF'] = \"French Guinea\";\n    arrCountry['PF'] = \"French Polynesia\";\n    arrCountry['TF'] = \"French Southern Territories\";\n    arrCountry['GA'] = \"Gabon\";\n    arrCountry['GM'] = \"Gambia\";\n    arrCountry['GE'] = \"Georgia\";\n    arrCountry['DE'] = \"Germany\";\n    arrCountry['GH'] = \"Ghana\";\n    arrCountry['GI'] = \"Gibraltar\";\n    arrCountry['GR'] = \"Greece\";\n    arrCountry['GL'] = \"Greenland\";\n    arrCountry['GD'] = \"Grenada\";\n    arrCountry['GP'] = \"Guadeloupe\";\n    arrCountry['GU'] = \"Guam\";\n    arrCountry['GT'] = \"Guatemala\";\n    arrCountry['GN'] = \"Guinea\";\n    arrCountry['GW'] = \"Guinea-Bissau\";\n    arrCountry['GY'] = \"Guyana\";\n    arrCountry['HT'] = \"Haiti\";\n    arrCountry['HM'] = \"Heard And McDonald Islands\";\n    arrCountry['HN'] = \"Honduras\";\n    arrCountry['HK'] = \"Hong Kong\";\n    arrCountry['HU'] = \"Hungary\";\n    arrCountry['IS'] = \"Iceland\";\n    arrCountry['IN'] = \"India\";\n    arrCountry['ID'] = \"Indonesia\";\n    arrCountry['IR'] = \"Iran\";\n    arrCountry['IQ'] = \"Iraq\";\n    arrCountry['IE'] = \"Ireland\";\n    arrCountry['IM'] = \"Isle of Man\";\n    arrCountry['IL'] = \"Israel\";\n    arrCountry['IT'] = \"Italy\";\n    arrCountry['JM'] = \"Jamaica\";\n    arrCountry['JP'] = \"Japan\";\n    arrCountry['JO'] = \"Jordan\";\n    arrCountry['KZ'] = \"Kazakhstan\";\n    arrCountry['KE'] = \"Kenya\";\n    arrCountry['KI'] = \"Kiribati\";\n    arrCountry['KW'] = \"Kuwait\";\n    arrCountry['KG'] = \"Kyrgyzstan\";\n    arrCountry['LA'] = \"Laos\";\n    arrCountry['LV'] = \"Latvia\";\n    arrCountry['LB'] = \"Lebanon\";\n    arrCountry['LS'] = \"Lesotho\";\n    arrCountry['LR'] = \"Liberia\";\n    arrCountry['LY'] = \"Libya\";\n    arrCountry['LI'] = \"Liechtenstein\";\n    arrCountry['LT'] = \"Lithuania\";\n    arrCountry['LU'] = \"Luxembourg\";\n    arrCountry['MO'] = \"Macau\";\n    arrCountry['MK'] = \"Macedonia\";\n    arrCountry['MG'] = \"Madagascar\";\n    arrCountry['MW'] = \"Malawi\";\n    arrCountry['MY'] = \"Malaysia\";\n    arrCountry['MV'] = \"Maldives\";\n    arrCountry['ML'] = \"Mali\";\n    arrCountry['MT'] = \"Malta\";\n    arrCountry['MH'] = \"Marshall Islands\";\n    arrCountry['MQ'] = \"Martinique\";\n    arrCountry['MR'] = \"Mauritania\";\n    arrCountry['MU'] = \"Mauritius\";\n    arrCountry['YT'] = \"Mayotte\";\n    arrCountry['MX'] = \"Mexico\";\n    arrCountry['FM'] = \"Micronesia\";\n    arrCountry['MD'] = \"Moldova\";\n    arrCountry['MC'] = \"Monaco\";\n    arrCountry['MN'] = \"Mongolia\";\n    arrCountry['ME'] = \"Montenegro\";\n    arrCountry['MS'] = \"Montserrat\";\n    arrCountry['MA'] = \"Morocco\";\n    arrCountry['MZ'] = \"Mozambique\";\n    arrCountry['MM'] = \"Myanmar (Burma)\";\n    arrCountry['NA'] = \"Namibia\";\n    arrCountry['NR'] = \"Nauru\";\n    arrCountry['NP'] = \"Nepal\";\n    arrCountry['NL'] = \"Netherlands\";\n    arrCountry['AN'] = \"Netherlands Antilles\";\n    arrCountry['NC'] = \"New Caledonia\";\n    arrCountry['NZ'] = \"New Zealand\";\n    arrCountry['NI'] = \"Nicaragua\";\n    arrCountry['NE'] = \"Niger\";\n    arrCountry['NG'] = \"Nigeria\";\n    arrCountry['NU'] = \"Niue\";\n    arrCountry['NF'] = \"Norfolk Island\";\n    arrCountry['KP'] = \"North Korea\";\n    arrCountry['MP'] = \"Northern Mariana Islands\";\n    arrCountry['NO'] = \"Norway\";\n    arrCountry['OM'] = \"Oman\";\n    arrCountry['PK'] = \"Pakistan\";\n    arrCountry['PW'] = \"Palau\";\n    arrCountry['PS'] = \"Palestine\";\n    arrCountry['PA'] = \"Panama\";\n    arrCountry['PG'] = \"Papua New Guinea\";\n    arrCountry['PY'] = \"Paraguay\";\n    arrCountry['PE'] = \"Peru\";\n    arrCountry['PH'] = \"Philippines\";\n    arrCountry['PN'] = \"Pitcairn\";\n    arrCountry['PL'] = \"Poland\";\n    arrCountry['PT'] = \"Portugal\";\n    arrCountry['PR'] = \"Puerto Rico\";\n    arrCountry['QA'] = \"Qatar\";\n    arrCountry['RE'] = \"Reunion\";\n    arrCountry['RO'] = \"Romania\";\n    arrCountry['RU'] = \"Russia\";\n    arrCountry['RW'] = \"Rwanda\";\n    arrCountry['SH'] = \"Saint Helena\";\n    arrCountry['KN'] = \"Saint Kitts And Nevis\";\n    arrCountry['LC'] = \"Saint Lucia\";\n    arrCountry['PM'] = \"Saint Pierre And Miquelon\";\n    arrCountry['VC'] = \"Saint Vincent And The Grenadines\";\n    arrCountry['SM'] = \"San Marino\";\n    arrCountry['ST'] = \"Sao Tome And Principe\";\n    arrCountry['SA'] = \"Saudi Arabia\";\n    arrCountry['SN'] = \"Senegal\";\n    arrCountry['RS'] = \"Serbia\";\n    arrCountry['SC'] = \"Seychelles\";\n    arrCountry['SL'] = \"Sierra Leone\";\n    arrCountry['SG'] = \"Singapore\";\n    arrCountry['SK'] = \"Slovak Republic\";\n    arrCountry['SI'] = \"Slovenia\";\n    arrCountry['SB'] = \"Solomon Islands\";\n    arrCountry['SO'] = \"Somalia\";\n    arrCountry['ZA'] = \"South Africa\";\n    arrCountry['GS'] = \"South Georgia And South Sandwich Islands\";\n    arrCountry['KR'] = \"South Korea\";\n    arrCountry['ES'] = \"Spain\";\n    arrCountry['LK'] = \"Sri Lanka\";\n    arrCountry['SD'] = \"Sudan\";\n    arrCountry['SR'] = \"Suriname\";\n    arrCountry['SJ'] = \"Svalbard And Jan Mayen\";\n    arrCountry['SZ'] = \"Swaziland\";\n    arrCountry['SE'] = \"Sweden\";\n    arrCountry['CH'] = \"Switzerland\";\n    arrCountry['SY'] = \"Syria\";\n    arrCountry['TW'] = \"Taiwan\";\n    arrCountry['TJ'] = \"Tajikistan\";\n    arrCountry['TZ'] = \"Tanzania\";\n    arrCountry['TH'] = \"Thailand\";\n    arrCountry['TG'] = \"Togo\";\n    arrCountry['TK'] = \"Tokelau\";\n    arrCountry['TO'] = \"Tonga\";\n    arrCountry['TT'] = \"Trinidad And Tobago\";\n    arrCountry['TN'] = \"Tunisia\";\n    arrCountry['TR'] = \"Turkey\";\n    arrCountry['TM'] = \"Turkmenistan\";\n    arrCountry['TC'] = \"Turks And Caicos Islands\";\n    arrCountry['TV'] = \"Tuvalu\";\n    arrCountry['UG'] = \"Uganda\";\n    arrCountry['UA'] = \"Ukraine\";\n    arrCountry['AE'] = \"United Arab Emirates\";\n    arrCountry['GB'] = \"United Kingdom\";\n    arrCountry['US'] = \"United States\";\n    arrCountry['UM'] = \"United States Minor Outlying Islands\";\n    arrCountry['UY'] = \"Uruguay\";\n    arrCountry['UZ'] = \"Uzbekistan\";\n    arrCountry['VU'] = \"Vanuatu\";\n    arrCountry['VA'] = \"Vatican City (Holy See)\";\n    arrCountry['VE'] = \"Venezuela\";\n    arrCountry['VN'] = \"Vietnam\";\n    arrCountry['VG'] = \"Virgin Islands (British)\";\n    arrCountry['VI'] = \"Virgin Islands (US)\";\n    arrCountry['WF'] = \"Wallis And Futuna Islands\";\n    arrCountry['EH'] = \"Western Sahara\";\n    arrCountry['WS'] = \"Western Samoa\";\n    arrCountry['YE'] = \"Yemen\";\n    arrCountry['YU'] = \"Yugoslavia\";\n    arrCountry['ZM'] = \"Zambia\";\n    arrCountry['ZW'] = \"Zimbabwe\";\n\n    var name = arrCountry[countryCode.toUpperCase()];\n    if (name === undefined) {\n        return \"\";\n    }\n    return name;\n}\nexports.COMPILED=COMPILED;\nexports.goog=goog;\nexports.i18n=i18n;\nexports.countryForE164Number=countryForE164Number;\nexports.formatNumberForMobileDialing=formatNumberForMobileDialing;\nexports.isValidNumber=isValidNumber;\nexports.formatE164=formatE164;\nexports.formatInternational=formatInternational;\nexports.formatLocal=formatLocal;\nexports.exampleLandlineNumber=exampleLandlineNumber;\nexports.exampleMobileNumber=exampleMobileNumber;\nexports.cleanPhone=cleanPhone;\nexports.countryCodeToName=countryCodeToName;\n});"
  },
  {
    "path": "dist/phone-format-exports.js",
    "content": "(function(exports){\nvar COMPILED = !0, goog = goog || {};\ngoog.global = this || self;\ngoog.isDef = function(a) {\n  return void 0 !== a;\n};\ngoog.isString = function(a) {\n  return \"string\" == typeof a;\n};\ngoog.isBoolean = function(a) {\n  return \"boolean\" == typeof a;\n};\ngoog.isNumber = function(a) {\n  return \"number\" == typeof a;\n};\ngoog.exportPath_ = function(a, b, c) {\n  a = a.split(\".\");\n  c = c || goog.global;\n  a[0] in c || \"undefined\" == typeof c.execScript || c.execScript(\"var \" + a[0]);\n  for (var d; a.length && (d = a.shift());) {\n    a.length || void 0 === b ? c = c[d] && c[d] !== Object.prototype[d] ? c[d] : c[d] = {} : c[d] = b;\n  }\n};\ngoog.define = function(a, b) {\n  var c = b;\n  if (!COMPILED) {\n    var d = goog.global.CLOSURE_UNCOMPILED_DEFINES, e = goog.global.CLOSURE_DEFINES;\n    d && void 0 === d.nodeType && Object.prototype.hasOwnProperty.call(d, a) ? c = d[a] : e && void 0 === e.nodeType && Object.prototype.hasOwnProperty.call(e, a) && (c = e[a]);\n  }\n  return c;\n};\ngoog.FEATURESET_YEAR = 2012;\ngoog.DEBUG = !0;\ngoog.LOCALE = \"en\";\ngoog.TRUSTED_SITE = !0;\ngoog.STRICT_MODE_COMPATIBLE = !1;\ngoog.DISALLOW_TEST_ONLY_CODE = COMPILED && !goog.DEBUG;\ngoog.ENABLE_CHROME_APP_SAFE_SCRIPT_LOADING = !1;\ngoog.provide = function(a) {\n  if (goog.isInModuleLoader_()) {\n    throw Error(\"goog.provide cannot be used within a module.\");\n  }\n  if (!COMPILED && goog.isProvided_(a)) {\n    throw Error('Namespace \"' + a + '\" already declared.');\n  }\n  goog.constructNamespace_(a);\n};\ngoog.constructNamespace_ = function(a, b) {\n  if (!COMPILED) {\n    delete goog.implicitNamespaces_[a];\n    for (var c = a; (c = c.substring(0, c.lastIndexOf(\".\"))) && !goog.getObjectByName(c);) {\n      goog.implicitNamespaces_[c] = !0;\n    }\n  }\n  goog.exportPath_(a, b);\n};\ngoog.getScriptNonce = function(a) {\n  if (a && a != goog.global) {\n    return goog.getScriptNonce_(a.document);\n  }\n  null === goog.cspNonce_ && (goog.cspNonce_ = goog.getScriptNonce_(goog.global.document));\n  return goog.cspNonce_;\n};\ngoog.NONCE_PATTERN_ = /^[\\w+/_-]+[=]{0,2}$/;\ngoog.cspNonce_ = null;\ngoog.getScriptNonce_ = function(a) {\n  return (a = a.querySelector && a.querySelector(\"script[nonce]\")) && (a = a.nonce || a.getAttribute(\"nonce\")) && goog.NONCE_PATTERN_.test(a) ? a : \"\";\n};\ngoog.VALID_MODULE_RE_ = /^[a-zA-Z_$][a-zA-Z0-9._$]*$/;\ngoog.module = function(a) {\n  if (\"string\" !== typeof a || !a || -1 == a.search(goog.VALID_MODULE_RE_)) {\n    throw Error(\"Invalid module identifier\");\n  }\n  if (!goog.isInGoogModuleLoader_()) {\n    throw Error(\"Module \" + a + \" has been loaded incorrectly. Note, modules cannot be loaded as normal scripts. They require some kind of pre-processing step. You're likely trying to load a module via a script tag or as a part of a concatenated bundle without rewriting the module. For more info see: https://github.com/google/closure-library/wiki/goog.module:-an-ES6-module-like-alternative-to-goog.provide.\");\n  }\n  if (goog.moduleLoaderState_.moduleName) {\n    throw Error(\"goog.module may only be called once per module.\");\n  }\n  goog.moduleLoaderState_.moduleName = a;\n  if (!COMPILED) {\n    if (goog.isProvided_(a)) {\n      throw Error('Namespace \"' + a + '\" already declared.');\n    }\n    delete goog.implicitNamespaces_[a];\n  }\n};\ngoog.module.get = function(a) {\n  return goog.module.getInternal_(a);\n};\ngoog.module.getInternal_ = function(a) {\n  if (!COMPILED) {\n    if (a in goog.loadedModules_) {\n      return goog.loadedModules_[a].exports;\n    }\n    if (!goog.implicitNamespaces_[a]) {\n      return a = goog.getObjectByName(a), null != a ? a : null;\n    }\n  }\n  return null;\n};\ngoog.ModuleType = {ES6:\"es6\", GOOG:\"goog\"};\ngoog.moduleLoaderState_ = null;\ngoog.isInModuleLoader_ = function() {\n  return goog.isInGoogModuleLoader_() || goog.isInEs6ModuleLoader_();\n};\ngoog.isInGoogModuleLoader_ = function() {\n  return !!goog.moduleLoaderState_ && goog.moduleLoaderState_.type == goog.ModuleType.GOOG;\n};\ngoog.isInEs6ModuleLoader_ = function() {\n  if (goog.moduleLoaderState_ && goog.moduleLoaderState_.type == goog.ModuleType.ES6) {\n    return !0;\n  }\n  var a = goog.global.$jscomp;\n  return a ? \"function\" != typeof a.getCurrentModulePath ? !1 : !!a.getCurrentModulePath() : !1;\n};\ngoog.module.declareLegacyNamespace = function() {\n  if (!COMPILED && !goog.isInGoogModuleLoader_()) {\n    throw Error(\"goog.module.declareLegacyNamespace must be called from within a goog.module\");\n  }\n  if (!COMPILED && !goog.moduleLoaderState_.moduleName) {\n    throw Error(\"goog.module must be called prior to goog.module.declareLegacyNamespace.\");\n  }\n  goog.moduleLoaderState_.declareLegacyNamespace = !0;\n};\ngoog.declareModuleId = function(a) {\n  if (!COMPILED) {\n    if (!goog.isInEs6ModuleLoader_()) {\n      throw Error(\"goog.declareModuleId may only be called from within an ES6 module\");\n    }\n    if (goog.moduleLoaderState_ && goog.moduleLoaderState_.moduleName) {\n      throw Error(\"goog.declareModuleId may only be called once per module.\");\n    }\n    if (a in goog.loadedModules_) {\n      throw Error('Module with namespace \"' + a + '\" already exists.');\n    }\n  }\n  if (goog.moduleLoaderState_) {\n    goog.moduleLoaderState_.moduleName = a;\n  } else {\n    var b = goog.global.$jscomp;\n    if (!b || \"function\" != typeof b.getCurrentModulePath) {\n      throw Error('Module with namespace \"' + a + '\" has been loaded incorrectly.');\n    }\n    b = b.require(b.getCurrentModulePath());\n    goog.loadedModules_[a] = {exports:b, type:goog.ModuleType.ES6, moduleId:a};\n  }\n};\ngoog.setTestOnly = function(a) {\n  if (goog.DISALLOW_TEST_ONLY_CODE) {\n    throw a = a || \"\", Error(\"Importing test-only code into non-debug environment\" + (a ? \": \" + a : \".\"));\n  }\n};\ngoog.forwardDeclare = function(a) {\n};\nCOMPILED || (goog.isProvided_ = function(a) {\n  return a in goog.loadedModules_ || !goog.implicitNamespaces_[a] && null != goog.getObjectByName(a);\n}, goog.implicitNamespaces_ = {\"goog.module\":!0});\ngoog.getObjectByName = function(a, b) {\n  for (var c = a.split(\".\"), d = b || goog.global, e = 0; e < c.length; e++) {\n    if (d = d[c[e]], null == d) {\n      return null;\n    }\n  }\n  return d;\n};\ngoog.globalize = function(a, b) {\n  var c = b || goog.global, d;\n  for (d in a) {\n    c[d] = a[d];\n  }\n};\ngoog.addDependency = function(a, b, c, d) {\n  !COMPILED && goog.DEPENDENCIES_ENABLED && goog.debugLoader_.addDependency(a, b, c, d);\n};\ngoog.ENABLE_DEBUG_LOADER = !0;\ngoog.logToConsole_ = function(a) {\n  goog.global.console && goog.global.console.error(a);\n};\ngoog.require = function(a) {\n  if (!COMPILED) {\n    goog.ENABLE_DEBUG_LOADER && goog.debugLoader_.requested(a);\n    if (goog.isProvided_(a)) {\n      if (goog.isInModuleLoader_()) {\n        return goog.module.getInternal_(a);\n      }\n    } else {\n      if (goog.ENABLE_DEBUG_LOADER) {\n        var b = goog.moduleLoaderState_;\n        goog.moduleLoaderState_ = null;\n        try {\n          goog.debugLoader_.load_(a);\n        } finally {\n          goog.moduleLoaderState_ = b;\n        }\n      }\n    }\n    return null;\n  }\n};\ngoog.requireType = function(a) {\n  return {};\n};\ngoog.basePath = \"\";\ngoog.nullFunction = function() {\n};\ngoog.abstractMethod = function() {\n  throw Error(\"unimplemented abstract method\");\n};\ngoog.addSingletonGetter = function(a) {\n  a.instance_ = void 0;\n  a.getInstance = function() {\n    if (a.instance_) {\n      return a.instance_;\n    }\n    goog.DEBUG && (goog.instantiatedSingletons_[goog.instantiatedSingletons_.length] = a);\n    return a.instance_ = new a;\n  };\n};\ngoog.instantiatedSingletons_ = [];\ngoog.LOAD_MODULE_USING_EVAL = !0;\ngoog.SEAL_MODULE_EXPORTS = goog.DEBUG;\ngoog.loadedModules_ = {};\ngoog.DEPENDENCIES_ENABLED = !COMPILED && goog.ENABLE_DEBUG_LOADER;\ngoog.TRANSPILE = \"detect\";\ngoog.ASSUME_ES_MODULES_TRANSPILED = !1;\ngoog.TRANSPILE_TO_LANGUAGE = \"\";\ngoog.TRANSPILER = \"transpile.js\";\ngoog.hasBadLetScoping = null;\ngoog.useSafari10Workaround = function() {\n  if (null == goog.hasBadLetScoping) {\n    try {\n      var a = !eval('\"use strict\";let x = 1; function f() { return typeof x; };f() == \"number\";');\n    } catch (b) {\n      a = !1;\n    }\n    goog.hasBadLetScoping = a;\n  }\n  return goog.hasBadLetScoping;\n};\ngoog.workaroundSafari10EvalBug = function(a) {\n  return \"(function(){\" + a + \"\\n;})();\\n\";\n};\ngoog.loadModule = function(a) {\n  var b = goog.moduleLoaderState_;\n  try {\n    goog.moduleLoaderState_ = {moduleName:\"\", declareLegacyNamespace:!1, type:goog.ModuleType.GOOG};\n    if (goog.isFunction(a)) {\n      var c = a.call(void 0, {});\n    } else {\n      if (\"string\" === typeof a) {\n        goog.useSafari10Workaround() && (a = goog.workaroundSafari10EvalBug(a)), c = goog.loadModuleFromSource_.call(void 0, a);\n      } else {\n        throw Error(\"Invalid module definition\");\n      }\n    }\n    var d = goog.moduleLoaderState_.moduleName;\n    if (\"string\" === typeof d && d) {\n      goog.moduleLoaderState_.declareLegacyNamespace ? goog.constructNamespace_(d, c) : goog.SEAL_MODULE_EXPORTS && Object.seal && \"object\" == typeof c && null != c && Object.seal(c), goog.loadedModules_[d] = {exports:c, type:goog.ModuleType.GOOG, moduleId:goog.moduleLoaderState_.moduleName};\n    } else {\n      throw Error('Invalid module name \"' + d + '\"');\n    }\n  } finally {\n    goog.moduleLoaderState_ = b;\n  }\n};\ngoog.loadModuleFromSource_ = function(a) {\n  eval(a);\n  return {};\n};\ngoog.normalizePath_ = function(a) {\n  a = a.split(\"/\");\n  for (var b = 0; b < a.length;) {\n    \".\" == a[b] ? a.splice(b, 1) : b && \"..\" == a[b] && a[b - 1] && \"..\" != a[b - 1] ? a.splice(--b, 2) : b++;\n  }\n  return a.join(\"/\");\n};\ngoog.loadFileSync_ = function(a) {\n  if (goog.global.CLOSURE_LOAD_FILE_SYNC) {\n    return goog.global.CLOSURE_LOAD_FILE_SYNC(a);\n  }\n  try {\n    var b = new goog.global.XMLHttpRequest;\n    b.open(\"get\", a, !1);\n    b.send();\n    return 0 == b.status || 200 == b.status ? b.responseText : null;\n  } catch (c) {\n    return null;\n  }\n};\ngoog.transpile_ = function(a, b, c) {\n  var d = goog.global.$jscomp;\n  d || (goog.global.$jscomp = d = {});\n  var e = d.transpile;\n  if (!e) {\n    var f = goog.basePath + goog.TRANSPILER, g = goog.loadFileSync_(f);\n    if (g) {\n      (function() {\n        (0,eval)(g + \"\\n//# sourceURL=\" + f);\n      }).call(goog.global);\n      if (goog.global.$gwtExport && goog.global.$gwtExport.$jscomp && !goog.global.$gwtExport.$jscomp.transpile) {\n        throw Error('The transpiler did not properly export the \"transpile\" method. $gwtExport: ' + JSON.stringify(goog.global.$gwtExport));\n      }\n      goog.global.$jscomp.transpile = goog.global.$gwtExport.$jscomp.transpile;\n      d = goog.global.$jscomp;\n      e = d.transpile;\n    }\n  }\n  e || (e = d.transpile = function(a, b) {\n    goog.logToConsole_(b + \" requires transpilation but no transpiler was found.\");\n    return a;\n  });\n  return e(a, b, c);\n};\ngoog.typeOf = function(a) {\n  var b = typeof a;\n  if (\"object\" == b) {\n    if (a) {\n      if (a instanceof Array) {\n        return \"array\";\n      }\n      if (a instanceof Object) {\n        return b;\n      }\n      var c = Object.prototype.toString.call(a);\n      if (\"[object Window]\" == c) {\n        return \"object\";\n      }\n      if (\"[object Array]\" == c || \"number\" == typeof a.length && \"undefined\" != typeof a.splice && \"undefined\" != typeof a.propertyIsEnumerable && !a.propertyIsEnumerable(\"splice\")) {\n        return \"array\";\n      }\n      if (\"[object Function]\" == c || \"undefined\" != typeof a.call && \"undefined\" != typeof a.propertyIsEnumerable && !a.propertyIsEnumerable(\"call\")) {\n        return \"function\";\n      }\n    } else {\n      return \"null\";\n    }\n  } else {\n    if (\"function\" == b && \"undefined\" == typeof a.call) {\n      return \"object\";\n    }\n  }\n  return b;\n};\ngoog.isNull = function(a) {\n  return null === a;\n};\ngoog.isDefAndNotNull = function(a) {\n  return null != a;\n};\ngoog.isArray = function(a) {\n  return \"array\" == goog.typeOf(a);\n};\ngoog.isArrayLike = function(a) {\n  var b = goog.typeOf(a);\n  return \"array\" == b || \"object\" == b && \"number\" == typeof a.length;\n};\ngoog.isDateLike = function(a) {\n  return goog.isObject(a) && \"function\" == typeof a.getFullYear;\n};\ngoog.isFunction = function(a) {\n  return \"function\" == goog.typeOf(a);\n};\ngoog.isObject = function(a) {\n  var b = typeof a;\n  return \"object\" == b && null != a || \"function\" == b;\n};\ngoog.getUid = function(a) {\n  return a[goog.UID_PROPERTY_] || (a[goog.UID_PROPERTY_] = ++goog.uidCounter_);\n};\ngoog.hasUid = function(a) {\n  return !!a[goog.UID_PROPERTY_];\n};\ngoog.removeUid = function(a) {\n  null !== a && \"removeAttribute\" in a && a.removeAttribute(goog.UID_PROPERTY_);\n  try {\n    delete a[goog.UID_PROPERTY_];\n  } catch (b) {\n  }\n};\ngoog.UID_PROPERTY_ = \"closure_uid_\" + (1e9 * Math.random() >>> 0);\ngoog.uidCounter_ = 0;\ngoog.getHashCode = goog.getUid;\ngoog.removeHashCode = goog.removeUid;\ngoog.cloneObject = function(a) {\n  var b = goog.typeOf(a);\n  if (\"object\" == b || \"array\" == b) {\n    if (\"function\" === typeof a.clone) {\n      return a.clone();\n    }\n    b = \"array\" == b ? [] : {};\n    for (var c in a) {\n      b[c] = goog.cloneObject(a[c]);\n    }\n    return b;\n  }\n  return a;\n};\ngoog.bindNative_ = function(a, b, c) {\n  return a.call.apply(a.bind, arguments);\n};\ngoog.bindJs_ = function(a, b, c) {\n  if (!a) {\n    throw Error();\n  }\n  if (2 < arguments.length) {\n    var d = Array.prototype.slice.call(arguments, 2);\n    return function() {\n      var c = Array.prototype.slice.call(arguments);\n      Array.prototype.unshift.apply(c, d);\n      return a.apply(b, c);\n    };\n  }\n  return function() {\n    return a.apply(b, arguments);\n  };\n};\ngoog.bind = function(a, b, c) {\n  Function.prototype.bind && -1 != Function.prototype.bind.toString().indexOf(\"native code\") ? goog.bind = goog.bindNative_ : goog.bind = goog.bindJs_;\n  return goog.bind.apply(null, arguments);\n};\ngoog.partial = function(a, b) {\n  var c = Array.prototype.slice.call(arguments, 1);\n  return function() {\n    var b = c.slice();\n    b.push.apply(b, arguments);\n    return a.apply(this, b);\n  };\n};\ngoog.mixin = function(a, b) {\n  for (var c in b) {\n    a[c] = b[c];\n  }\n};\ngoog.now = goog.TRUSTED_SITE && Date.now || function() {\n  return +new Date;\n};\ngoog.globalEval = function(a) {\n  if (goog.global.execScript) {\n    goog.global.execScript(a, \"JavaScript\");\n  } else {\n    if (goog.global.eval) {\n      if (null == goog.evalWorksForGlobals_) {\n        try {\n          goog.global.eval(\"var _evalTest_ = 1;\");\n        } catch (d) {\n        }\n        if (\"undefined\" != typeof goog.global._evalTest_) {\n          try {\n            delete goog.global._evalTest_;\n          } catch (d) {\n          }\n          goog.evalWorksForGlobals_ = !0;\n        } else {\n          goog.evalWorksForGlobals_ = !1;\n        }\n      }\n      if (goog.evalWorksForGlobals_) {\n        goog.global.eval(a);\n      } else {\n        var b = goog.global.document, c = b.createElement(\"script\");\n        c.type = \"text/javascript\";\n        c.defer = !1;\n        c.appendChild(b.createTextNode(a));\n        b.head.appendChild(c);\n        b.head.removeChild(c);\n      }\n    } else {\n      throw Error(\"goog.globalEval not available\");\n    }\n  }\n};\ngoog.evalWorksForGlobals_ = null;\ngoog.getCssName = function(a, b) {\n  if (\".\" == String(a).charAt(0)) {\n    throw Error('className passed in goog.getCssName must not start with \".\". You passed: ' + a);\n  }\n  var c = function(a) {\n    return goog.cssNameMapping_[a] || a;\n  }, d = function(a) {\n    a = a.split(\"-\");\n    for (var b = [], d = 0; d < a.length; d++) {\n      b.push(c(a[d]));\n    }\n    return b.join(\"-\");\n  };\n  d = goog.cssNameMapping_ ? \"BY_WHOLE\" == goog.cssNameMappingStyle_ ? c : d : function(a) {\n    return a;\n  };\n  d = b ? a + \"-\" + d(b) : d(a);\n  return goog.global.CLOSURE_CSS_NAME_MAP_FN ? goog.global.CLOSURE_CSS_NAME_MAP_FN(d) : d;\n};\ngoog.setCssNameMapping = function(a, b) {\n  goog.cssNameMapping_ = a;\n  goog.cssNameMappingStyle_ = b;\n};\n!COMPILED && goog.global.CLOSURE_CSS_NAME_MAPPING && (goog.cssNameMapping_ = goog.global.CLOSURE_CSS_NAME_MAPPING);\ngoog.getMsg = function(a, b, c) {\n  c && c.html && (a = a.replace(/</g, \"&lt;\"));\n  b && (a = a.replace(/\\{\\$([^}]+)}/g, function(a, c) {\n    return null != b && c in b ? b[c] : a;\n  }));\n  return a;\n};\ngoog.getMsgWithFallback = function(a, b) {\n  return a;\n};\ngoog.exportSymbol = function(a, b, c) {\n  goog.exportPath_(a, b, c);\n};\ngoog.exportProperty = function(a, b, c) {\n  a[b] = c;\n};\ngoog.inherits = function(a, b) {\n  function c() {\n  }\n  c.prototype = b.prototype;\n  a.superClass_ = b.prototype;\n  a.prototype = new c;\n  a.prototype.constructor = a;\n  a.base = function(a, c, f) {\n    for (var d = Array(arguments.length - 2), e = 2; e < arguments.length; e++) {\n      d[e - 2] = arguments[e];\n    }\n    return b.prototype[c].apply(a, d);\n  };\n};\ngoog.base = function(a, b, c) {\n  var d = arguments.callee.caller;\n  if (goog.STRICT_MODE_COMPATIBLE || goog.DEBUG && !d) {\n    throw Error(\"arguments.caller not defined.  goog.base() cannot be used with strict mode code. See http://www.ecma-international.org/ecma-262/5.1/#sec-C\");\n  }\n  if (\"undefined\" !== typeof d.superClass_) {\n    for (var e = Array(arguments.length - 1), f = 1; f < arguments.length; f++) {\n      e[f - 1] = arguments[f];\n    }\n    return d.superClass_.constructor.apply(a, e);\n  }\n  if (\"string\" != typeof b && \"symbol\" != typeof b) {\n    throw Error(\"method names provided to goog.base must be a string or a symbol\");\n  }\n  e = Array(arguments.length - 2);\n  for (f = 2; f < arguments.length; f++) {\n    e[f - 2] = arguments[f];\n  }\n  f = !1;\n  for (var g = a.constructor.prototype; g; g = Object.getPrototypeOf(g)) {\n    if (g[b] === d) {\n      f = !0;\n    } else {\n      if (f) {\n        return g[b].apply(a, e);\n      }\n    }\n  }\n  if (a[b] === d) {\n    return a.constructor.prototype[b].apply(a, e);\n  }\n  throw Error(\"goog.base called from a method of one name to a method of a different name\");\n};\ngoog.scope = function(a) {\n  if (goog.isInModuleLoader_()) {\n    throw Error(\"goog.scope is not supported within a module.\");\n  }\n  a.call(goog.global);\n};\nCOMPILED || (goog.global.COMPILED = COMPILED);\ngoog.defineClass = function(a, b) {\n  var c = b.constructor, d = b.statics;\n  c && c != Object.prototype.constructor || (c = function() {\n    throw Error(\"cannot instantiate an interface (no constructor defined).\");\n  });\n  c = goog.defineClass.createSealingConstructor_(c, a);\n  a && goog.inherits(c, a);\n  delete b.constructor;\n  delete b.statics;\n  goog.defineClass.applyProperties_(c.prototype, b);\n  null != d && (d instanceof Function ? d(c) : goog.defineClass.applyProperties_(c, d));\n  return c;\n};\ngoog.defineClass.SEAL_CLASS_INSTANCES = goog.DEBUG;\ngoog.defineClass.createSealingConstructor_ = function(a, b) {\n  if (!goog.defineClass.SEAL_CLASS_INSTANCES) {\n    return a;\n  }\n  var c = !goog.defineClass.isUnsealable_(b), d = function() {\n    var b = a.apply(this, arguments) || this;\n    b[goog.UID_PROPERTY_] = b[goog.UID_PROPERTY_];\n    this.constructor === d && c && Object.seal instanceof Function && Object.seal(b);\n    return b;\n  };\n  return d;\n};\ngoog.defineClass.isUnsealable_ = function(a) {\n  return a && a.prototype && a.prototype[goog.UNSEALABLE_CONSTRUCTOR_PROPERTY_];\n};\ngoog.defineClass.OBJECT_PROTOTYPE_FIELDS_ = \"constructor hasOwnProperty isPrototypeOf propertyIsEnumerable toLocaleString toString valueOf\".split(\" \");\ngoog.defineClass.applyProperties_ = function(a, b) {\n  for (var c in b) {\n    Object.prototype.hasOwnProperty.call(b, c) && (a[c] = b[c]);\n  }\n  for (var d = 0; d < goog.defineClass.OBJECT_PROTOTYPE_FIELDS_.length; d++) {\n    c = goog.defineClass.OBJECT_PROTOTYPE_FIELDS_[d], Object.prototype.hasOwnProperty.call(b, c) && (a[c] = b[c]);\n  }\n};\ngoog.tagUnsealableClass = function(a) {\n  !COMPILED && goog.defineClass.SEAL_CLASS_INSTANCES && (a.prototype[goog.UNSEALABLE_CONSTRUCTOR_PROPERTY_] = !0);\n};\ngoog.UNSEALABLE_CONSTRUCTOR_PROPERTY_ = \"goog_defineClass_legacy_unsealable\";\n!COMPILED && goog.DEPENDENCIES_ENABLED && (goog.inHtmlDocument_ = function() {\n  var a = goog.global.document;\n  return null != a && \"write\" in a;\n}, goog.isDocumentLoading_ = function() {\n  var a = goog.global.document;\n  return a.attachEvent ? \"complete\" != a.readyState : \"loading\" == a.readyState;\n}, goog.findBasePath_ = function() {\n  if (void 0 != goog.global.CLOSURE_BASE_PATH && \"string\" === typeof goog.global.CLOSURE_BASE_PATH) {\n    goog.basePath = goog.global.CLOSURE_BASE_PATH;\n  } else {\n    if (goog.inHtmlDocument_()) {\n      var a = goog.global.document, b = a.currentScript;\n      a = b ? [b] : a.getElementsByTagName(\"SCRIPT\");\n      for (b = a.length - 1; 0 <= b; --b) {\n        var c = a[b].src, d = c.lastIndexOf(\"?\");\n        d = -1 == d ? c.length : d;\n        if (\"base.js\" == c.substr(d - 7, 7)) {\n          goog.basePath = c.substr(0, d - 7);\n          break;\n        }\n      }\n    }\n  }\n}, goog.findBasePath_(), goog.Transpiler = function() {\n  this.requiresTranspilation_ = null;\n  this.transpilationTarget_ = goog.TRANSPILE_TO_LANGUAGE;\n}, goog.Transpiler.prototype.createRequiresTranspilation_ = function() {\n  function a(a, b) {\n    e ? d[a] = !0 : b() ? (c = a, d[a] = !1) : e = d[a] = !0;\n  }\n  function b(a) {\n    try {\n      return !!eval(a);\n    } catch (h) {\n      return !1;\n    }\n  }\n  var c = \"es3\", d = {es3:!1}, e = !1, f = goog.global.navigator && goog.global.navigator.userAgent ? goog.global.navigator.userAgent : \"\";\n  a(\"es5\", function() {\n    return b(\"[1,].length==1\");\n  });\n  a(\"es6\", function() {\n    return f.match(/Edge\\/(\\d+)(\\.\\d)*/i) ? !1 : b('(()=>{\"use strict\";class X{constructor(){if(new.target!=String)throw 1;this.x=42}}let q=Reflect.construct(X,[],String);if(q.x!=42||!(q instanceof String))throw 1;for(const a of[2,3]){if(a==2)continue;function f(z={a}){let a=0;return z.a}{function f(){return 0;}}return f()==3}})()');\n  });\n  a(\"es7\", function() {\n    return b(\"2 ** 2 == 4\");\n  });\n  a(\"es8\", function() {\n    return b(\"async () => 1, true\");\n  });\n  a(\"es9\", function() {\n    return b(\"({...rest} = {}), true\");\n  });\n  a(\"es_next\", function() {\n    return !1;\n  });\n  return {target:c, map:d};\n}, goog.Transpiler.prototype.needsTranspile = function(a, b) {\n  if (\"always\" == goog.TRANSPILE) {\n    return !0;\n  }\n  if (\"never\" == goog.TRANSPILE) {\n    return !1;\n  }\n  if (!this.requiresTranspilation_) {\n    var c = this.createRequiresTranspilation_();\n    this.requiresTranspilation_ = c.map;\n    this.transpilationTarget_ = this.transpilationTarget_ || c.target;\n  }\n  if (a in this.requiresTranspilation_) {\n    return this.requiresTranspilation_[a] ? !0 : !goog.inHtmlDocument_() || \"es6\" != b || \"noModule\" in goog.global.document.createElement(\"script\") ? !1 : !0;\n  }\n  throw Error(\"Unknown language mode: \" + a);\n}, goog.Transpiler.prototype.transpile = function(a, b) {\n  return goog.transpile_(a, b, this.transpilationTarget_);\n}, goog.transpiler_ = new goog.Transpiler, goog.protectScriptTag_ = function(a) {\n  return a.replace(/<\\/(SCRIPT)/ig, \"\\\\x3c/$1\");\n}, goog.DebugLoader_ = function() {\n  this.dependencies_ = {};\n  this.idToPath_ = {};\n  this.written_ = {};\n  this.loadingDeps_ = [];\n  this.depsToLoad_ = [];\n  this.paused_ = !1;\n  this.factory_ = new goog.DependencyFactory(goog.transpiler_);\n  this.deferredCallbacks_ = {};\n  this.deferredQueue_ = [];\n}, goog.DebugLoader_.prototype.bootstrap = function(a, b) {\n  function c() {\n    d && (goog.global.setTimeout(d, 0), d = null);\n  }\n  var d = b;\n  if (a.length) {\n    for (var e = [], f = 0; f < a.length; f++) {\n      var g = this.getPathFromDeps_(a[f]);\n      if (!g) {\n        throw Error(\"Unregonized namespace: \" + a[f]);\n      }\n      e.push(this.dependencies_[g]);\n    }\n    g = goog.require;\n    var h = 0;\n    for (f = 0; f < a.length; f++) {\n      g(a[f]), e[f].onLoad(function() {\n        ++h == a.length && c();\n      });\n    }\n  } else {\n    c();\n  }\n}, goog.DebugLoader_.prototype.loadClosureDeps = function() {\n  this.depsToLoad_.push(this.factory_.createDependency(goog.normalizePath_(goog.basePath + \"deps.js\"), \"deps.js\", [], [], {}, !1));\n  this.loadDeps_();\n}, goog.DebugLoader_.prototype.requested = function(a, b) {\n  var c = this.getPathFromDeps_(a);\n  if (c && (b || this.areDepsLoaded_(this.dependencies_[c].requires))) {\n    var d = this.deferredCallbacks_[c];\n    d && (delete this.deferredCallbacks_[c], d());\n  }\n}, goog.DebugLoader_.prototype.setDependencyFactory = function(a) {\n  this.factory_ = a;\n}, goog.DebugLoader_.prototype.load_ = function(a) {\n  if (this.getPathFromDeps_(a)) {\n    var b = this, c = [], d = function(a) {\n      var e = b.getPathFromDeps_(a);\n      if (!e) {\n        throw Error(\"Bad dependency path or symbol: \" + a);\n      }\n      if (!b.written_[e]) {\n        b.written_[e] = !0;\n        a = b.dependencies_[e];\n        for (e = 0; e < a.requires.length; e++) {\n          goog.isProvided_(a.requires[e]) || d(a.requires[e]);\n        }\n        c.push(a);\n      }\n    };\n    d(a);\n    a = !!this.depsToLoad_.length;\n    this.depsToLoad_ = this.depsToLoad_.concat(c);\n    this.paused_ || a || this.loadDeps_();\n  } else {\n    throw a = \"goog.require could not find: \" + a, goog.logToConsole_(a), Error(a);\n  }\n}, goog.DebugLoader_.prototype.loadDeps_ = function() {\n  for (var a = this, b = this.paused_; this.depsToLoad_.length && !b;) {\n    (function() {\n      var c = !1, d = a.depsToLoad_.shift(), e = !1;\n      a.loading_(d);\n      var f = {pause:function() {\n        if (c) {\n          throw Error(\"Cannot call pause after the call to load.\");\n        }\n        b = !0;\n      }, resume:function() {\n        c ? a.resume_() : b = !1;\n      }, loaded:function() {\n        if (e) {\n          throw Error(\"Double call to loaded.\");\n        }\n        e = !0;\n        a.loaded_(d);\n      }, pending:function() {\n        for (var b = [], c = 0; c < a.loadingDeps_.length; c++) {\n          b.push(a.loadingDeps_[c]);\n        }\n        return b;\n      }, setModuleState:function(a) {\n        goog.moduleLoaderState_ = {type:a, moduleName:\"\", declareLegacyNamespace:!1};\n      }, registerEs6ModuleExports:function(a, b, c) {\n        c && (goog.loadedModules_[c] = {exports:b, type:goog.ModuleType.ES6, moduleId:c || \"\"});\n      }, registerGoogModuleExports:function(a, b) {\n        goog.loadedModules_[a] = {exports:b, type:goog.ModuleType.GOOG, moduleId:a};\n      }, clearModuleState:function() {\n        goog.moduleLoaderState_ = null;\n      }, defer:function(b) {\n        if (c) {\n          throw Error(\"Cannot register with defer after the call to load.\");\n        }\n        a.defer_(d, b);\n      }, areDepsLoaded:function() {\n        return a.areDepsLoaded_(d.requires);\n      }};\n      try {\n        d.load(f);\n      } finally {\n        c = !0;\n      }\n    })();\n  }\n  b && this.pause_();\n}, goog.DebugLoader_.prototype.pause_ = function() {\n  this.paused_ = !0;\n}, goog.DebugLoader_.prototype.resume_ = function() {\n  this.paused_ && (this.paused_ = !1, this.loadDeps_());\n}, goog.DebugLoader_.prototype.loading_ = function(a) {\n  this.loadingDeps_.push(a);\n}, goog.DebugLoader_.prototype.loaded_ = function(a) {\n  for (var b = 0; b < this.loadingDeps_.length; b++) {\n    if (this.loadingDeps_[b] == a) {\n      this.loadingDeps_.splice(b, 1);\n      break;\n    }\n  }\n  for (b = 0; b < this.deferredQueue_.length; b++) {\n    if (this.deferredQueue_[b] == a.path) {\n      this.deferredQueue_.splice(b, 1);\n      break;\n    }\n  }\n  if (this.loadingDeps_.length == this.deferredQueue_.length && !this.depsToLoad_.length) {\n    for (; this.deferredQueue_.length;) {\n      this.requested(this.deferredQueue_.shift(), !0);\n    }\n  }\n  a.loaded();\n}, goog.DebugLoader_.prototype.areDepsLoaded_ = function(a) {\n  for (var b = 0; b < a.length; b++) {\n    var c = this.getPathFromDeps_(a[b]);\n    if (!c || !(c in this.deferredCallbacks_ || goog.isProvided_(a[b]))) {\n      return !1;\n    }\n  }\n  return !0;\n}, goog.DebugLoader_.prototype.getPathFromDeps_ = function(a) {\n  return a in this.idToPath_ ? this.idToPath_[a] : a in this.dependencies_ ? a : null;\n}, goog.DebugLoader_.prototype.defer_ = function(a, b) {\n  this.deferredCallbacks_[a.path] = b;\n  this.deferredQueue_.push(a.path);\n}, goog.LoadController = function() {\n}, goog.LoadController.prototype.pause = function() {\n}, goog.LoadController.prototype.resume = function() {\n}, goog.LoadController.prototype.loaded = function() {\n}, goog.LoadController.prototype.pending = function() {\n}, goog.LoadController.prototype.registerEs6ModuleExports = function(a, b, c) {\n}, goog.LoadController.prototype.setModuleState = function(a) {\n}, goog.LoadController.prototype.clearModuleState = function() {\n}, goog.LoadController.prototype.defer = function(a) {\n}, goog.LoadController.prototype.areDepsLoaded = function() {\n}, goog.Dependency = function(a, b, c, d, e) {\n  this.path = a;\n  this.relativePath = b;\n  this.provides = c;\n  this.requires = d;\n  this.loadFlags = e;\n  this.loaded_ = !1;\n  this.loadCallbacks_ = [];\n}, goog.Dependency.prototype.getPathName = function() {\n  var a = this.path, b = a.indexOf(\"://\");\n  0 <= b && (a = a.substring(b + 3), b = a.indexOf(\"/\"), 0 <= b && (a = a.substring(b + 1)));\n  return a;\n}, goog.Dependency.prototype.onLoad = function(a) {\n  this.loaded_ ? a() : this.loadCallbacks_.push(a);\n}, goog.Dependency.prototype.loaded = function() {\n  this.loaded_ = !0;\n  var a = this.loadCallbacks_;\n  this.loadCallbacks_ = [];\n  for (var b = 0; b < a.length; b++) {\n    a[b]();\n  }\n}, goog.Dependency.defer_ = !1, goog.Dependency.callbackMap_ = {}, goog.Dependency.registerCallback_ = function(a) {\n  var b = Math.random().toString(32);\n  goog.Dependency.callbackMap_[b] = a;\n  return b;\n}, goog.Dependency.unregisterCallback_ = function(a) {\n  delete goog.Dependency.callbackMap_[a];\n}, goog.Dependency.callback_ = function(a, b) {\n  if (a in goog.Dependency.callbackMap_) {\n    for (var c = goog.Dependency.callbackMap_[a], d = [], e = 1; e < arguments.length; e++) {\n      d.push(arguments[e]);\n    }\n    c.apply(void 0, d);\n  } else {\n    throw Error(\"Callback key \" + a + \" does not exist (was base.js loaded more than once?).\");\n  }\n}, goog.Dependency.prototype.load = function(a) {\n  if (goog.global.CLOSURE_IMPORT_SCRIPT) {\n    goog.global.CLOSURE_IMPORT_SCRIPT(this.path) ? a.loaded() : a.pause();\n  } else {\n    if (goog.inHtmlDocument_()) {\n      var b = goog.global.document;\n      if (\"complete\" == b.readyState && !goog.ENABLE_CHROME_APP_SAFE_SCRIPT_LOADING) {\n        if (/\\bdeps.js$/.test(this.path)) {\n          a.loaded();\n          return;\n        }\n        throw Error('Cannot write \"' + this.path + '\" after document load');\n      }\n      if (!goog.ENABLE_CHROME_APP_SAFE_SCRIPT_LOADING && goog.isDocumentLoading_()) {\n        var c = goog.Dependency.registerCallback_(function(b) {\n          goog.DebugLoader_.IS_OLD_IE_ && \"complete\" != b.readyState || (goog.Dependency.unregisterCallback_(c), a.loaded());\n        }), d = !goog.DebugLoader_.IS_OLD_IE_ && goog.getScriptNonce() ? ' nonce=\"' + goog.getScriptNonce() + '\"' : \"\";\n        d = '<script src=\"' + this.path + '\" ' + (goog.DebugLoader_.IS_OLD_IE_ ? \"onreadystatechange\" : \"onload\") + \"=\\\"goog.Dependency.callback_('\" + c + '\\', this)\" type=\"text/javascript\" ' + (goog.Dependency.defer_ ? \"defer\" : \"\") + d + \">\\x3c/script>\";\n        b.write(goog.TRUSTED_TYPES_POLICY_ ? goog.TRUSTED_TYPES_POLICY_.createHTML(d) : d);\n      } else {\n        var e = b.createElement(\"script\");\n        e.defer = goog.Dependency.defer_;\n        e.async = !1;\n        e.type = \"text/javascript\";\n        (d = goog.getScriptNonce()) && e.setAttribute(\"nonce\", d);\n        goog.DebugLoader_.IS_OLD_IE_ ? (a.pause(), e.onreadystatechange = function() {\n          if (\"loaded\" == e.readyState || \"complete\" == e.readyState) {\n            a.loaded(), a.resume();\n          }\n        }) : e.onload = function() {\n          e.onload = null;\n          a.loaded();\n        };\n        e.src = goog.TRUSTED_TYPES_POLICY_ ? goog.TRUSTED_TYPES_POLICY_.createScriptURL(this.path) : this.path;\n        b.head.appendChild(e);\n      }\n    } else {\n      goog.logToConsole_(\"Cannot use default debug loader outside of HTML documents.\"), \"deps.js\" == this.relativePath ? (goog.logToConsole_(\"Consider setting CLOSURE_IMPORT_SCRIPT before loading base.js, or setting CLOSURE_NO_DEPS to true.\"), a.loaded()) : a.pause();\n    }\n  }\n}, goog.Es6ModuleDependency = function(a, b, c, d, e) {\n  goog.Dependency.call(this, a, b, c, d, e);\n}, goog.inherits(goog.Es6ModuleDependency, goog.Dependency), goog.Es6ModuleDependency.prototype.load = function(a) {\n  function b(a, b) {\n    var c = b ? '<script type=\"module\" crossorigin>' + b + \"\\x3c/script>\" : '<script type=\"module\" crossorigin src=\"' + a + '\">\\x3c/script>';\n    d.write(goog.TRUSTED_TYPES_POLICY_ ? goog.TRUSTED_TYPES_POLICY_.createHTML(c) : c);\n  }\n  function c(a, b) {\n    var c = d.createElement(\"script\");\n    c.defer = !0;\n    c.async = !1;\n    c.type = \"module\";\n    c.setAttribute(\"crossorigin\", !0);\n    var e = goog.getScriptNonce();\n    e && c.setAttribute(\"nonce\", e);\n    b ? c.textContent = goog.TRUSTED_TYPES_POLICY_ ? goog.TRUSTED_TYPES_POLICY_.createScript(b) : b : c.src = goog.TRUSTED_TYPES_POLICY_ ? goog.TRUSTED_TYPES_POLICY_.createScriptURL(a) : a;\n    d.head.appendChild(c);\n  }\n  if (goog.global.CLOSURE_IMPORT_SCRIPT) {\n    goog.global.CLOSURE_IMPORT_SCRIPT(this.path) ? a.loaded() : a.pause();\n  } else {\n    if (goog.inHtmlDocument_()) {\n      var d = goog.global.document, e = this;\n      if (goog.isDocumentLoading_()) {\n        var f = b;\n        goog.Dependency.defer_ = !0;\n      } else {\n        f = c;\n      }\n      var g = goog.Dependency.registerCallback_(function() {\n        goog.Dependency.unregisterCallback_(g);\n        a.setModuleState(goog.ModuleType.ES6);\n      });\n      f(void 0, 'goog.Dependency.callback_(\"' + g + '\")');\n      f(this.path, void 0);\n      var h = goog.Dependency.registerCallback_(function(b) {\n        goog.Dependency.unregisterCallback_(h);\n        a.registerEs6ModuleExports(e.path, b, goog.moduleLoaderState_.moduleName);\n      });\n      f(void 0, 'import * as m from \"' + this.path + '\"; goog.Dependency.callback_(\"' + h + '\", m)');\n      var k = goog.Dependency.registerCallback_(function() {\n        goog.Dependency.unregisterCallback_(k);\n        a.clearModuleState();\n        a.loaded();\n      });\n      f(void 0, 'goog.Dependency.callback_(\"' + k + '\")');\n    } else {\n      goog.logToConsole_(\"Cannot use default debug loader outside of HTML documents.\"), a.pause();\n    }\n  }\n}, goog.TransformedDependency = function(a, b, c, d, e) {\n  goog.Dependency.call(this, a, b, c, d, e);\n  this.contents_ = null;\n  this.lazyFetch_ = !goog.inHtmlDocument_() || !(\"noModule\" in goog.global.document.createElement(\"script\"));\n}, goog.inherits(goog.TransformedDependency, goog.Dependency), goog.TransformedDependency.prototype.load = function(a) {\n  function b() {\n    e.contents_ = goog.loadFileSync_(e.path);\n    e.contents_ && (e.contents_ = e.transform(e.contents_), e.contents_ && (e.contents_ += \"\\n//# sourceURL=\" + e.path));\n  }\n  function c() {\n    e.lazyFetch_ && b();\n    if (e.contents_) {\n      f && a.setModuleState(goog.ModuleType.ES6);\n      try {\n        var c = e.contents_;\n        e.contents_ = null;\n        goog.globalEval(c);\n        if (f) {\n          var d = goog.moduleLoaderState_.moduleName;\n        }\n      } finally {\n        f && a.clearModuleState();\n      }\n      f && goog.global.$jscomp.require.ensure([e.getPathName()], function() {\n        a.registerEs6ModuleExports(e.path, goog.global.$jscomp.require(e.getPathName()), d);\n      });\n      a.loaded();\n    }\n  }\n  function d() {\n    var a = goog.global.document, b = goog.Dependency.registerCallback_(function() {\n      goog.Dependency.unregisterCallback_(b);\n      c();\n    }), d = '<script type=\"text/javascript\">' + goog.protectScriptTag_('goog.Dependency.callback_(\"' + b + '\");') + \"\\x3c/script>\";\n    a.write(goog.TRUSTED_TYPES_POLICY_ ? goog.TRUSTED_TYPES_POLICY_.createHTML(d) : d);\n  }\n  var e = this;\n  if (goog.global.CLOSURE_IMPORT_SCRIPT) {\n    b(), this.contents_ && goog.global.CLOSURE_IMPORT_SCRIPT(\"\", this.contents_) ? (this.contents_ = null, a.loaded()) : a.pause();\n  } else {\n    var f = this.loadFlags.module == goog.ModuleType.ES6;\n    this.lazyFetch_ || b();\n    var g = 1 < a.pending().length, h = g && goog.DebugLoader_.IS_OLD_IE_;\n    g = goog.Dependency.defer_ && (g || goog.isDocumentLoading_());\n    if (h || g) {\n      a.defer(function() {\n        c();\n      });\n    } else {\n      var k = goog.global.document;\n      h = goog.inHtmlDocument_() && \"ActiveXObject\" in goog.global;\n      if (f && goog.inHtmlDocument_() && goog.isDocumentLoading_() && !h) {\n        goog.Dependency.defer_ = !0;\n        a.pause();\n        var l = k.onreadystatechange;\n        k.onreadystatechange = function() {\n          \"interactive\" == k.readyState && (k.onreadystatechange = l, c(), a.resume());\n          goog.isFunction(l) && l.apply(void 0, arguments);\n        };\n      } else {\n        !goog.DebugLoader_.IS_OLD_IE_ && goog.inHtmlDocument_() && goog.isDocumentLoading_() ? d() : c();\n      }\n    }\n  }\n}, goog.TransformedDependency.prototype.transform = function(a) {\n}, goog.TranspiledDependency = function(a, b, c, d, e, f) {\n  goog.TransformedDependency.call(this, a, b, c, d, e);\n  this.transpiler = f;\n}, goog.inherits(goog.TranspiledDependency, goog.TransformedDependency), goog.TranspiledDependency.prototype.transform = function(a) {\n  return this.transpiler.transpile(a, this.getPathName());\n}, goog.PreTranspiledEs6ModuleDependency = function(a, b, c, d, e) {\n  goog.TransformedDependency.call(this, a, b, c, d, e);\n}, goog.inherits(goog.PreTranspiledEs6ModuleDependency, goog.TransformedDependency), goog.PreTranspiledEs6ModuleDependency.prototype.transform = function(a) {\n  return a;\n}, goog.GoogModuleDependency = function(a, b, c, d, e, f, g) {\n  goog.TransformedDependency.call(this, a, b, c, d, e);\n  this.needsTranspile_ = f;\n  this.transpiler_ = g;\n}, goog.inherits(goog.GoogModuleDependency, goog.TransformedDependency), goog.GoogModuleDependency.prototype.transform = function(a) {\n  this.needsTranspile_ && (a = this.transpiler_.transpile(a, this.getPathName()));\n  return goog.LOAD_MODULE_USING_EVAL && void 0 !== goog.global.JSON ? \"goog.loadModule(\" + goog.global.JSON.stringify(a + \"\\n//# sourceURL=\" + this.path + \"\\n\") + \");\" : 'goog.loadModule(function(exports) {\"use strict\";' + a + \"\\n;return exports});\\n//# sourceURL=\" + this.path + \"\\n\";\n}, goog.DebugLoader_.IS_OLD_IE_ = !(goog.global.atob || !goog.global.document || !goog.global.document.all), goog.DebugLoader_.prototype.addDependency = function(a, b, c, d) {\n  b = b || [];\n  a = a.replace(/\\\\/g, \"/\");\n  var e = goog.normalizePath_(goog.basePath + a);\n  d && \"boolean\" !== typeof d || (d = d ? {module:goog.ModuleType.GOOG} : {});\n  c = this.factory_.createDependency(e, a, b, c, d, goog.transpiler_.needsTranspile(d.lang || \"es3\", d.module));\n  this.dependencies_[e] = c;\n  for (c = 0; c < b.length; c++) {\n    this.idToPath_[b[c]] = e;\n  }\n  this.idToPath_[a] = e;\n}, goog.DependencyFactory = function(a) {\n  this.transpiler = a;\n}, goog.DependencyFactory.prototype.createDependency = function(a, b, c, d, e, f) {\n  return e.module == goog.ModuleType.GOOG ? new goog.GoogModuleDependency(a, b, c, d, e, f, this.transpiler) : f ? new goog.TranspiledDependency(a, b, c, d, e, this.transpiler) : e.module == goog.ModuleType.ES6 ? \"never\" == goog.TRANSPILE && goog.ASSUME_ES_MODULES_TRANSPILED ? new goog.PreTranspiledEs6ModuleDependency(a, b, c, d, e) : new goog.Es6ModuleDependency(a, b, c, d, e) : new goog.Dependency(a, b, c, d, e);\n}, goog.debugLoader_ = new goog.DebugLoader_, goog.loadClosureDeps = function() {\n  goog.debugLoader_.loadClosureDeps();\n}, goog.setDependencyFactory = function(a) {\n  goog.debugLoader_.setDependencyFactory(a);\n}, goog.global.CLOSURE_NO_DEPS || goog.debugLoader_.loadClosureDeps(), goog.bootstrap = function(a, b) {\n  goog.debugLoader_.bootstrap(a, b);\n});\ngoog.TRUSTED_TYPES_POLICY_NAME = \"\";\ngoog.identity_ = function(a) {\n  return a;\n};\ngoog.createTrustedTypesPolicy = function(a) {\n  var b = null, c = goog.global.trustedTypes || goog.global.TrustedTypes;\n  if (!c || !c.createPolicy) {\n    return b;\n  }\n  try {\n    b = c.createPolicy(a, {createHTML:goog.identity_, createScript:goog.identity_, createScriptURL:goog.identity_, createURL:goog.identity_});\n  } catch (d) {\n    goog.logToConsole_(d.message);\n  }\n  return b;\n};\ngoog.TRUSTED_TYPES_POLICY_ = goog.TRUSTED_TYPES_POLICY_NAME ? goog.createTrustedTypesPolicy(goog.TRUSTED_TYPES_POLICY_NAME + \"#base\") : null;\ngoog.string = {};\ngoog.string.StringBuffer = function(a, b) {\n  null != a && this.append.apply(this, arguments);\n};\ngoog.string.StringBuffer.prototype.buffer_ = \"\";\ngoog.string.StringBuffer.prototype.set = function(a) {\n  this.buffer_ = \"\" + a;\n};\ngoog.string.StringBuffer.prototype.append = function(a, b, c) {\n  this.buffer_ += String(a);\n  if (null != b) {\n    for (var d = 1; d < arguments.length; d++) {\n      this.buffer_ += arguments[d];\n    }\n  }\n  return this;\n};\ngoog.string.StringBuffer.prototype.clear = function() {\n  this.buffer_ = \"\";\n};\ngoog.string.StringBuffer.prototype.getLength = function() {\n  return this.buffer_.length;\n};\ngoog.string.StringBuffer.prototype.toString = function() {\n  return this.buffer_;\n};\ngoog.debug = {};\ngoog.debug.Error = function(a) {\n  if (Error.captureStackTrace) {\n    Error.captureStackTrace(this, goog.debug.Error);\n  } else {\n    var b = Error().stack;\n    b && (this.stack = b);\n  }\n  a && (this.message = String(a));\n  this.reportErrorToServer = !0;\n};\ngoog.inherits(goog.debug.Error, Error);\ngoog.debug.Error.prototype.name = \"CustomError\";\ngoog.dom = {};\ngoog.dom.NodeType = {ELEMENT:1, ATTRIBUTE:2, TEXT:3, CDATA_SECTION:4, ENTITY_REFERENCE:5, ENTITY:6, PROCESSING_INSTRUCTION:7, COMMENT:8, DOCUMENT:9, DOCUMENT_TYPE:10, DOCUMENT_FRAGMENT:11, NOTATION:12};\ngoog.asserts = {};\ngoog.asserts.ENABLE_ASSERTS = goog.DEBUG;\ngoog.asserts.AssertionError = function(a, b) {\n  goog.debug.Error.call(this, goog.asserts.subs_(a, b));\n  this.messagePattern = a;\n};\ngoog.inherits(goog.asserts.AssertionError, goog.debug.Error);\ngoog.asserts.AssertionError.prototype.name = \"AssertionError\";\ngoog.asserts.DEFAULT_ERROR_HANDLER = function(a) {\n  throw a;\n};\ngoog.asserts.errorHandler_ = goog.asserts.DEFAULT_ERROR_HANDLER;\ngoog.asserts.subs_ = function(a, b) {\n  for (var c = a.split(\"%s\"), d = \"\", e = c.length - 1, f = 0; f < e; f++) {\n    d += c[f] + (f < b.length ? b[f] : \"%s\");\n  }\n  return d + c[e];\n};\ngoog.asserts.doAssertFailure_ = function(a, b, c, d) {\n  var e = \"Assertion failed\";\n  if (c) {\n    e += \": \" + c;\n    var f = d;\n  } else {\n    a && (e += \": \" + a, f = b);\n  }\n  a = new goog.asserts.AssertionError(\"\" + e, f || []);\n  goog.asserts.errorHandler_(a);\n};\ngoog.asserts.setErrorHandler = function(a) {\n  goog.asserts.ENABLE_ASSERTS && (goog.asserts.errorHandler_ = a);\n};\ngoog.asserts.assert = function(a, b, c) {\n  goog.asserts.ENABLE_ASSERTS && !a && goog.asserts.doAssertFailure_(\"\", null, b, Array.prototype.slice.call(arguments, 2));\n  return a;\n};\ngoog.asserts.assertExists = function(a, b, c) {\n  goog.asserts.ENABLE_ASSERTS && null == a && goog.asserts.doAssertFailure_(\"Expected to exist: %s.\", [a], b, Array.prototype.slice.call(arguments, 2));\n  return a;\n};\ngoog.asserts.fail = function(a, b) {\n  goog.asserts.ENABLE_ASSERTS && goog.asserts.errorHandler_(new goog.asserts.AssertionError(\"Failure\" + (a ? \": \" + a : \"\"), Array.prototype.slice.call(arguments, 1)));\n};\ngoog.asserts.assertNumber = function(a, b, c) {\n  goog.asserts.ENABLE_ASSERTS && \"number\" !== typeof a && goog.asserts.doAssertFailure_(\"Expected number but got %s: %s.\", [goog.typeOf(a), a], b, Array.prototype.slice.call(arguments, 2));\n  return a;\n};\ngoog.asserts.assertString = function(a, b, c) {\n  goog.asserts.ENABLE_ASSERTS && \"string\" !== typeof a && goog.asserts.doAssertFailure_(\"Expected string but got %s: %s.\", [goog.typeOf(a), a], b, Array.prototype.slice.call(arguments, 2));\n  return a;\n};\ngoog.asserts.assertFunction = function(a, b, c) {\n  goog.asserts.ENABLE_ASSERTS && !goog.isFunction(a) && goog.asserts.doAssertFailure_(\"Expected function but got %s: %s.\", [goog.typeOf(a), a], b, Array.prototype.slice.call(arguments, 2));\n  return a;\n};\ngoog.asserts.assertObject = function(a, b, c) {\n  goog.asserts.ENABLE_ASSERTS && !goog.isObject(a) && goog.asserts.doAssertFailure_(\"Expected object but got %s: %s.\", [goog.typeOf(a), a], b, Array.prototype.slice.call(arguments, 2));\n  return a;\n};\ngoog.asserts.assertArray = function(a, b, c) {\n  goog.asserts.ENABLE_ASSERTS && !goog.isArray(a) && goog.asserts.doAssertFailure_(\"Expected array but got %s: %s.\", [goog.typeOf(a), a], b, Array.prototype.slice.call(arguments, 2));\n  return a;\n};\ngoog.asserts.assertBoolean = function(a, b, c) {\n  goog.asserts.ENABLE_ASSERTS && \"boolean\" !== typeof a && goog.asserts.doAssertFailure_(\"Expected boolean but got %s: %s.\", [goog.typeOf(a), a], b, Array.prototype.slice.call(arguments, 2));\n  return a;\n};\ngoog.asserts.assertElement = function(a, b, c) {\n  !goog.asserts.ENABLE_ASSERTS || goog.isObject(a) && a.nodeType == goog.dom.NodeType.ELEMENT || goog.asserts.doAssertFailure_(\"Expected Element but got %s: %s.\", [goog.typeOf(a), a], b, Array.prototype.slice.call(arguments, 2));\n  return a;\n};\ngoog.asserts.assertInstanceof = function(a, b, c, d) {\n  !goog.asserts.ENABLE_ASSERTS || a instanceof b || goog.asserts.doAssertFailure_(\"Expected instanceof %s but got %s.\", [goog.asserts.getType_(b), goog.asserts.getType_(a)], c, Array.prototype.slice.call(arguments, 3));\n  return a;\n};\ngoog.asserts.assertFinite = function(a, b, c) {\n  !goog.asserts.ENABLE_ASSERTS || \"number\" == typeof a && isFinite(a) || goog.asserts.doAssertFailure_(\"Expected %s to be a finite number but it is not.\", [a], b, Array.prototype.slice.call(arguments, 2));\n  return a;\n};\ngoog.asserts.assertObjectPrototypeIsIntact = function() {\n  for (var a in Object.prototype) {\n    goog.asserts.fail(a + \" should not be enumerable in Object.prototype.\");\n  }\n};\ngoog.asserts.getType_ = function(a) {\n  return a instanceof Function ? a.displayName || a.name || \"unknown type name\" : a instanceof Object ? a.constructor.displayName || a.constructor.name || Object.prototype.toString.call(a) : null === a ? \"null\" : typeof a;\n};\ngoog.array = {};\ngoog.NATIVE_ARRAY_PROTOTYPES = goog.TRUSTED_SITE;\ngoog.array.ASSUME_NATIVE_FUNCTIONS = 2012 < goog.FEATURESET_YEAR;\ngoog.array.peek = function(a) {\n  return a[a.length - 1];\n};\ngoog.array.last = goog.array.peek;\ngoog.array.indexOf = goog.NATIVE_ARRAY_PROTOTYPES && (goog.array.ASSUME_NATIVE_FUNCTIONS || Array.prototype.indexOf) ? function(a, b, c) {\n  goog.asserts.assert(null != a.length);\n  return Array.prototype.indexOf.call(a, b, c);\n} : function(a, b, c) {\n  c = null == c ? 0 : 0 > c ? Math.max(0, a.length + c) : c;\n  if (\"string\" === typeof a) {\n    return \"string\" !== typeof b || 1 != b.length ? -1 : a.indexOf(b, c);\n  }\n  for (; c < a.length; c++) {\n    if (c in a && a[c] === b) {\n      return c;\n    }\n  }\n  return -1;\n};\ngoog.array.lastIndexOf = goog.NATIVE_ARRAY_PROTOTYPES && (goog.array.ASSUME_NATIVE_FUNCTIONS || Array.prototype.lastIndexOf) ? function(a, b, c) {\n  goog.asserts.assert(null != a.length);\n  return Array.prototype.lastIndexOf.call(a, b, null == c ? a.length - 1 : c);\n} : function(a, b, c) {\n  c = null == c ? a.length - 1 : c;\n  0 > c && (c = Math.max(0, a.length + c));\n  if (\"string\" === typeof a) {\n    return \"string\" !== typeof b || 1 != b.length ? -1 : a.lastIndexOf(b, c);\n  }\n  for (; 0 <= c; c--) {\n    if (c in a && a[c] === b) {\n      return c;\n    }\n  }\n  return -1;\n};\ngoog.array.forEach = goog.NATIVE_ARRAY_PROTOTYPES && (goog.array.ASSUME_NATIVE_FUNCTIONS || Array.prototype.forEach) ? function(a, b, c) {\n  goog.asserts.assert(null != a.length);\n  Array.prototype.forEach.call(a, b, c);\n} : function(a, b, c) {\n  for (var d = a.length, e = \"string\" === typeof a ? a.split(\"\") : a, f = 0; f < d; f++) {\n    f in e && b.call(c, e[f], f, a);\n  }\n};\ngoog.array.forEachRight = function(a, b, c) {\n  var d = a.length, e = \"string\" === typeof a ? a.split(\"\") : a;\n  for (--d; 0 <= d; --d) {\n    d in e && b.call(c, e[d], d, a);\n  }\n};\ngoog.array.filter = goog.NATIVE_ARRAY_PROTOTYPES && (goog.array.ASSUME_NATIVE_FUNCTIONS || Array.prototype.filter) ? function(a, b, c) {\n  goog.asserts.assert(null != a.length);\n  return Array.prototype.filter.call(a, b, c);\n} : function(a, b, c) {\n  for (var d = a.length, e = [], f = 0, g = \"string\" === typeof a ? a.split(\"\") : a, h = 0; h < d; h++) {\n    if (h in g) {\n      var k = g[h];\n      b.call(c, k, h, a) && (e[f++] = k);\n    }\n  }\n  return e;\n};\ngoog.array.map = goog.NATIVE_ARRAY_PROTOTYPES && (goog.array.ASSUME_NATIVE_FUNCTIONS || Array.prototype.map) ? function(a, b, c) {\n  goog.asserts.assert(null != a.length);\n  return Array.prototype.map.call(a, b, c);\n} : function(a, b, c) {\n  for (var d = a.length, e = Array(d), f = \"string\" === typeof a ? a.split(\"\") : a, g = 0; g < d; g++) {\n    g in f && (e[g] = b.call(c, f[g], g, a));\n  }\n  return e;\n};\ngoog.array.reduce = goog.NATIVE_ARRAY_PROTOTYPES && (goog.array.ASSUME_NATIVE_FUNCTIONS || Array.prototype.reduce) ? function(a, b, c, d) {\n  goog.asserts.assert(null != a.length);\n  d && (b = goog.bind(b, d));\n  return Array.prototype.reduce.call(a, b, c);\n} : function(a, b, c, d) {\n  var e = c;\n  goog.array.forEach(a, function(c, g) {\n    e = b.call(d, e, c, g, a);\n  });\n  return e;\n};\ngoog.array.reduceRight = goog.NATIVE_ARRAY_PROTOTYPES && (goog.array.ASSUME_NATIVE_FUNCTIONS || Array.prototype.reduceRight) ? function(a, b, c, d) {\n  goog.asserts.assert(null != a.length);\n  goog.asserts.assert(null != b);\n  d && (b = goog.bind(b, d));\n  return Array.prototype.reduceRight.call(a, b, c);\n} : function(a, b, c, d) {\n  var e = c;\n  goog.array.forEachRight(a, function(c, g) {\n    e = b.call(d, e, c, g, a);\n  });\n  return e;\n};\ngoog.array.some = goog.NATIVE_ARRAY_PROTOTYPES && (goog.array.ASSUME_NATIVE_FUNCTIONS || Array.prototype.some) ? function(a, b, c) {\n  goog.asserts.assert(null != a.length);\n  return Array.prototype.some.call(a, b, c);\n} : function(a, b, c) {\n  for (var d = a.length, e = \"string\" === typeof a ? a.split(\"\") : a, f = 0; f < d; f++) {\n    if (f in e && b.call(c, e[f], f, a)) {\n      return !0;\n    }\n  }\n  return !1;\n};\ngoog.array.every = goog.NATIVE_ARRAY_PROTOTYPES && (goog.array.ASSUME_NATIVE_FUNCTIONS || Array.prototype.every) ? function(a, b, c) {\n  goog.asserts.assert(null != a.length);\n  return Array.prototype.every.call(a, b, c);\n} : function(a, b, c) {\n  for (var d = a.length, e = \"string\" === typeof a ? a.split(\"\") : a, f = 0; f < d; f++) {\n    if (f in e && !b.call(c, e[f], f, a)) {\n      return !1;\n    }\n  }\n  return !0;\n};\ngoog.array.count = function(a, b, c) {\n  var d = 0;\n  goog.array.forEach(a, function(a, f, g) {\n    b.call(c, a, f, g) && ++d;\n  }, c);\n  return d;\n};\ngoog.array.find = function(a, b, c) {\n  b = goog.array.findIndex(a, b, c);\n  return 0 > b ? null : \"string\" === typeof a ? a.charAt(b) : a[b];\n};\ngoog.array.findIndex = function(a, b, c) {\n  for (var d = a.length, e = \"string\" === typeof a ? a.split(\"\") : a, f = 0; f < d; f++) {\n    if (f in e && b.call(c, e[f], f, a)) {\n      return f;\n    }\n  }\n  return -1;\n};\ngoog.array.findRight = function(a, b, c) {\n  b = goog.array.findIndexRight(a, b, c);\n  return 0 > b ? null : \"string\" === typeof a ? a.charAt(b) : a[b];\n};\ngoog.array.findIndexRight = function(a, b, c) {\n  var d = a.length, e = \"string\" === typeof a ? a.split(\"\") : a;\n  for (--d; 0 <= d; d--) {\n    if (d in e && b.call(c, e[d], d, a)) {\n      return d;\n    }\n  }\n  return -1;\n};\ngoog.array.contains = function(a, b) {\n  return 0 <= goog.array.indexOf(a, b);\n};\ngoog.array.isEmpty = function(a) {\n  return 0 == a.length;\n};\ngoog.array.clear = function(a) {\n  if (!goog.isArray(a)) {\n    for (var b = a.length - 1; 0 <= b; b--) {\n      delete a[b];\n    }\n  }\n  a.length = 0;\n};\ngoog.array.insert = function(a, b) {\n  goog.array.contains(a, b) || a.push(b);\n};\ngoog.array.insertAt = function(a, b, c) {\n  goog.array.splice(a, c, 0, b);\n};\ngoog.array.insertArrayAt = function(a, b, c) {\n  goog.partial(goog.array.splice, a, c, 0).apply(null, b);\n};\ngoog.array.insertBefore = function(a, b, c) {\n  var d;\n  2 == arguments.length || 0 > (d = goog.array.indexOf(a, c)) ? a.push(b) : goog.array.insertAt(a, b, d);\n};\ngoog.array.remove = function(a, b) {\n  var c = goog.array.indexOf(a, b), d;\n  (d = 0 <= c) && goog.array.removeAt(a, c);\n  return d;\n};\ngoog.array.removeLast = function(a, b) {\n  var c = goog.array.lastIndexOf(a, b);\n  return 0 <= c ? (goog.array.removeAt(a, c), !0) : !1;\n};\ngoog.array.removeAt = function(a, b) {\n  goog.asserts.assert(null != a.length);\n  return 1 == Array.prototype.splice.call(a, b, 1).length;\n};\ngoog.array.removeIf = function(a, b, c) {\n  b = goog.array.findIndex(a, b, c);\n  return 0 <= b ? (goog.array.removeAt(a, b), !0) : !1;\n};\ngoog.array.removeAllIf = function(a, b, c) {\n  var d = 0;\n  goog.array.forEachRight(a, function(e, f) {\n    b.call(c, e, f, a) && goog.array.removeAt(a, f) && d++;\n  });\n  return d;\n};\ngoog.array.concat = function(a) {\n  return Array.prototype.concat.apply([], arguments);\n};\ngoog.array.join = function(a) {\n  return Array.prototype.concat.apply([], arguments);\n};\ngoog.array.toArray = function(a) {\n  var b = a.length;\n  if (0 < b) {\n    for (var c = Array(b), d = 0; d < b; d++) {\n      c[d] = a[d];\n    }\n    return c;\n  }\n  return [];\n};\ngoog.array.clone = goog.array.toArray;\ngoog.array.extend = function(a, b) {\n  for (var c = 1; c < arguments.length; c++) {\n    var d = arguments[c];\n    if (goog.isArrayLike(d)) {\n      var e = a.length || 0, f = d.length || 0;\n      a.length = e + f;\n      for (var g = 0; g < f; g++) {\n        a[e + g] = d[g];\n      }\n    } else {\n      a.push(d);\n    }\n  }\n};\ngoog.array.splice = function(a, b, c, d) {\n  goog.asserts.assert(null != a.length);\n  return Array.prototype.splice.apply(a, goog.array.slice(arguments, 1));\n};\ngoog.array.slice = function(a, b, c) {\n  goog.asserts.assert(null != a.length);\n  return 2 >= arguments.length ? Array.prototype.slice.call(a, b) : Array.prototype.slice.call(a, b, c);\n};\ngoog.array.removeDuplicates = function(a, b, c) {\n  b = b || a;\n  var d = function(a) {\n    return goog.isObject(a) ? \"o\" + goog.getUid(a) : (typeof a).charAt(0) + a;\n  };\n  c = c || d;\n  d = {};\n  for (var e = 0, f = 0; f < a.length;) {\n    var g = a[f++], h = c(g);\n    Object.prototype.hasOwnProperty.call(d, h) || (d[h] = !0, b[e++] = g);\n  }\n  b.length = e;\n};\ngoog.array.binarySearch = function(a, b, c) {\n  return goog.array.binarySearch_(a, c || goog.array.defaultCompare, !1, b);\n};\ngoog.array.binarySelect = function(a, b, c) {\n  return goog.array.binarySearch_(a, b, !0, void 0, c);\n};\ngoog.array.binarySearch_ = function(a, b, c, d, e) {\n  for (var f = 0, g = a.length, h; f < g;) {\n    var k = f + (g - f >>> 1);\n    var l = c ? b.call(e, a[k], k, a) : b(d, a[k]);\n    0 < l ? f = k + 1 : (g = k, h = !l);\n  }\n  return h ? f : -f - 1;\n};\ngoog.array.sort = function(a, b) {\n  a.sort(b || goog.array.defaultCompare);\n};\ngoog.array.stableSort = function(a, b) {\n  for (var c = Array(a.length), d = 0; d < a.length; d++) {\n    c[d] = {index:d, value:a[d]};\n  }\n  var e = b || goog.array.defaultCompare;\n  goog.array.sort(c, function(a, b) {\n    return e(a.value, b.value) || a.index - b.index;\n  });\n  for (d = 0; d < a.length; d++) {\n    a[d] = c[d].value;\n  }\n};\ngoog.array.sortByKey = function(a, b, c) {\n  var d = c || goog.array.defaultCompare;\n  goog.array.sort(a, function(a, c) {\n    return d(b(a), b(c));\n  });\n};\ngoog.array.sortObjectsByKey = function(a, b, c) {\n  goog.array.sortByKey(a, function(a) {\n    return a[b];\n  }, c);\n};\ngoog.array.isSorted = function(a, b, c) {\n  b = b || goog.array.defaultCompare;\n  for (var d = 1; d < a.length; d++) {\n    var e = b(a[d - 1], a[d]);\n    if (0 < e || 0 == e && c) {\n      return !1;\n    }\n  }\n  return !0;\n};\ngoog.array.equals = function(a, b, c) {\n  if (!goog.isArrayLike(a) || !goog.isArrayLike(b) || a.length != b.length) {\n    return !1;\n  }\n  var d = a.length;\n  c = c || goog.array.defaultCompareEquality;\n  for (var e = 0; e < d; e++) {\n    if (!c(a[e], b[e])) {\n      return !1;\n    }\n  }\n  return !0;\n};\ngoog.array.compare3 = function(a, b, c) {\n  c = c || goog.array.defaultCompare;\n  for (var d = Math.min(a.length, b.length), e = 0; e < d; e++) {\n    var f = c(a[e], b[e]);\n    if (0 != f) {\n      return f;\n    }\n  }\n  return goog.array.defaultCompare(a.length, b.length);\n};\ngoog.array.defaultCompare = function(a, b) {\n  return a > b ? 1 : a < b ? -1 : 0;\n};\ngoog.array.inverseDefaultCompare = function(a, b) {\n  return -goog.array.defaultCompare(a, b);\n};\ngoog.array.defaultCompareEquality = function(a, b) {\n  return a === b;\n};\ngoog.array.binaryInsert = function(a, b, c) {\n  c = goog.array.binarySearch(a, b, c);\n  return 0 > c ? (goog.array.insertAt(a, b, -(c + 1)), !0) : !1;\n};\ngoog.array.binaryRemove = function(a, b, c) {\n  b = goog.array.binarySearch(a, b, c);\n  return 0 <= b ? goog.array.removeAt(a, b) : !1;\n};\ngoog.array.bucket = function(a, b, c) {\n  for (var d = {}, e = 0; e < a.length; e++) {\n    var f = a[e], g = b.call(c, f, e, a);\n    void 0 !== g && (d[g] || (d[g] = [])).push(f);\n  }\n  return d;\n};\ngoog.array.toObject = function(a, b, c) {\n  var d = {};\n  goog.array.forEach(a, function(e, f) {\n    d[b.call(c, e, f, a)] = e;\n  });\n  return d;\n};\ngoog.array.range = function(a, b, c) {\n  var d = [], e = 0, f = a;\n  c = c || 1;\n  void 0 !== b && (e = a, f = b);\n  if (0 > c * (f - e)) {\n    return [];\n  }\n  if (0 < c) {\n    for (a = e; a < f; a += c) {\n      d.push(a);\n    }\n  } else {\n    for (a = e; a > f; a += c) {\n      d.push(a);\n    }\n  }\n  return d;\n};\ngoog.array.repeat = function(a, b) {\n  for (var c = [], d = 0; d < b; d++) {\n    c[d] = a;\n  }\n  return c;\n};\ngoog.array.flatten = function(a) {\n  for (var b = [], c = 0; c < arguments.length; c++) {\n    var d = arguments[c];\n    if (goog.isArray(d)) {\n      for (var e = 0; e < d.length; e += 8192) {\n        var f = goog.array.slice(d, e, e + 8192);\n        f = goog.array.flatten.apply(null, f);\n        for (var g = 0; g < f.length; g++) {\n          b.push(f[g]);\n        }\n      }\n    } else {\n      b.push(d);\n    }\n  }\n  return b;\n};\ngoog.array.rotate = function(a, b) {\n  goog.asserts.assert(null != a.length);\n  a.length && (b %= a.length, 0 < b ? Array.prototype.unshift.apply(a, a.splice(-b, b)) : 0 > b && Array.prototype.push.apply(a, a.splice(0, -b)));\n  return a;\n};\ngoog.array.moveItem = function(a, b, c) {\n  goog.asserts.assert(0 <= b && b < a.length);\n  goog.asserts.assert(0 <= c && c < a.length);\n  b = Array.prototype.splice.call(a, b, 1);\n  Array.prototype.splice.call(a, c, 0, b[0]);\n};\ngoog.array.zip = function(a) {\n  if (!arguments.length) {\n    return [];\n  }\n  for (var b = [], c = arguments[0].length, d = 1; d < arguments.length; d++) {\n    arguments[d].length < c && (c = arguments[d].length);\n  }\n  for (d = 0; d < c; d++) {\n    for (var e = [], f = 0; f < arguments.length; f++) {\n      e.push(arguments[f][d]);\n    }\n    b.push(e);\n  }\n  return b;\n};\ngoog.array.shuffle = function(a, b) {\n  for (var c = b || Math.random, d = a.length - 1; 0 < d; d--) {\n    var e = Math.floor(c() * (d + 1)), f = a[d];\n    a[d] = a[e];\n    a[e] = f;\n  }\n};\ngoog.array.copyByIndex = function(a, b) {\n  var c = [];\n  goog.array.forEach(b, function(b) {\n    c.push(a[b]);\n  });\n  return c;\n};\ngoog.array.concatMap = function(a, b, c) {\n  return goog.array.concat.apply([], goog.array.map(a, b, c));\n};\ngoog.object = {};\ngoog.object.is = function(a, b) {\n  return a === b ? 0 !== a || 1 / a === 1 / b : a !== a && b !== b;\n};\ngoog.object.forEach = function(a, b, c) {\n  for (var d in a) {\n    b.call(c, a[d], d, a);\n  }\n};\ngoog.object.filter = function(a, b, c) {\n  var d = {}, e;\n  for (e in a) {\n    b.call(c, a[e], e, a) && (d[e] = a[e]);\n  }\n  return d;\n};\ngoog.object.map = function(a, b, c) {\n  var d = {}, e;\n  for (e in a) {\n    d[e] = b.call(c, a[e], e, a);\n  }\n  return d;\n};\ngoog.object.some = function(a, b, c) {\n  for (var d in a) {\n    if (b.call(c, a[d], d, a)) {\n      return !0;\n    }\n  }\n  return !1;\n};\ngoog.object.every = function(a, b, c) {\n  for (var d in a) {\n    if (!b.call(c, a[d], d, a)) {\n      return !1;\n    }\n  }\n  return !0;\n};\ngoog.object.getCount = function(a) {\n  var b = 0, c;\n  for (c in a) {\n    b++;\n  }\n  return b;\n};\ngoog.object.getAnyKey = function(a) {\n  for (var b in a) {\n    return b;\n  }\n};\ngoog.object.getAnyValue = function(a) {\n  for (var b in a) {\n    return a[b];\n  }\n};\ngoog.object.contains = function(a, b) {\n  return goog.object.containsValue(a, b);\n};\ngoog.object.getValues = function(a) {\n  var b = [], c = 0, d;\n  for (d in a) {\n    b[c++] = a[d];\n  }\n  return b;\n};\ngoog.object.getKeys = function(a) {\n  var b = [], c = 0, d;\n  for (d in a) {\n    b[c++] = d;\n  }\n  return b;\n};\ngoog.object.getValueByKeys = function(a, b) {\n  var c = goog.isArrayLike(b), d = c ? b : arguments;\n  for (c = c ? 0 : 1; c < d.length; c++) {\n    if (null == a) {\n      return;\n    }\n    a = a[d[c]];\n  }\n  return a;\n};\ngoog.object.containsKey = function(a, b) {\n  return null !== a && b in a;\n};\ngoog.object.containsValue = function(a, b) {\n  for (var c in a) {\n    if (a[c] == b) {\n      return !0;\n    }\n  }\n  return !1;\n};\ngoog.object.findKey = function(a, b, c) {\n  for (var d in a) {\n    if (b.call(c, a[d], d, a)) {\n      return d;\n    }\n  }\n};\ngoog.object.findValue = function(a, b, c) {\n  return (b = goog.object.findKey(a, b, c)) && a[b];\n};\ngoog.object.isEmpty = function(a) {\n  for (var b in a) {\n    return !1;\n  }\n  return !0;\n};\ngoog.object.clear = function(a) {\n  for (var b in a) {\n    delete a[b];\n  }\n};\ngoog.object.remove = function(a, b) {\n  var c;\n  (c = b in a) && delete a[b];\n  return c;\n};\ngoog.object.add = function(a, b, c) {\n  if (null !== a && b in a) {\n    throw Error('The object already contains the key \"' + b + '\"');\n  }\n  goog.object.set(a, b, c);\n};\ngoog.object.get = function(a, b, c) {\n  return null !== a && b in a ? a[b] : c;\n};\ngoog.object.set = function(a, b, c) {\n  a[b] = c;\n};\ngoog.object.setIfUndefined = function(a, b, c) {\n  return b in a ? a[b] : a[b] = c;\n};\ngoog.object.setWithReturnValueIfNotSet = function(a, b, c) {\n  if (b in a) {\n    return a[b];\n  }\n  c = c();\n  return a[b] = c;\n};\ngoog.object.equals = function(a, b) {\n  for (var c in a) {\n    if (!(c in b) || a[c] !== b[c]) {\n      return !1;\n    }\n  }\n  for (var d in b) {\n    if (!(d in a)) {\n      return !1;\n    }\n  }\n  return !0;\n};\ngoog.object.clone = function(a) {\n  var b = {}, c;\n  for (c in a) {\n    b[c] = a[c];\n  }\n  return b;\n};\ngoog.object.unsafeClone = function(a) {\n  var b = goog.typeOf(a);\n  if (\"object\" == b || \"array\" == b) {\n    if (goog.isFunction(a.clone)) {\n      return a.clone();\n    }\n    b = \"array\" == b ? [] : {};\n    for (var c in a) {\n      b[c] = goog.object.unsafeClone(a[c]);\n    }\n    return b;\n  }\n  return a;\n};\ngoog.object.transpose = function(a) {\n  var b = {}, c;\n  for (c in a) {\n    b[a[c]] = c;\n  }\n  return b;\n};\ngoog.object.PROTOTYPE_FIELDS_ = \"constructor hasOwnProperty isPrototypeOf propertyIsEnumerable toLocaleString toString valueOf\".split(\" \");\ngoog.object.extend = function(a, b) {\n  for (var c, d, e = 1; e < arguments.length; e++) {\n    d = arguments[e];\n    for (c in d) {\n      a[c] = d[c];\n    }\n    for (var f = 0; f < goog.object.PROTOTYPE_FIELDS_.length; f++) {\n      c = goog.object.PROTOTYPE_FIELDS_[f], Object.prototype.hasOwnProperty.call(d, c) && (a[c] = d[c]);\n    }\n  }\n};\ngoog.object.create = function(a) {\n  var b = arguments.length;\n  if (1 == b && goog.isArray(arguments[0])) {\n    return goog.object.create.apply(null, arguments[0]);\n  }\n  if (b % 2) {\n    throw Error(\"Uneven number of arguments\");\n  }\n  for (var c = {}, d = 0; d < b; d += 2) {\n    c[arguments[d]] = arguments[d + 1];\n  }\n  return c;\n};\ngoog.object.createSet = function(a) {\n  var b = arguments.length;\n  if (1 == b && goog.isArray(arguments[0])) {\n    return goog.object.createSet.apply(null, arguments[0]);\n  }\n  for (var c = {}, d = 0; d < b; d++) {\n    c[arguments[d]] = !0;\n  }\n  return c;\n};\ngoog.object.createImmutableView = function(a) {\n  var b = a;\n  Object.isFrozen && !Object.isFrozen(a) && (b = Object.create(a), Object.freeze(b));\n  return b;\n};\ngoog.object.isImmutableView = function(a) {\n  return !!Object.isFrozen && Object.isFrozen(a);\n};\ngoog.object.getAllPropertyNames = function(a, b, c) {\n  if (!a) {\n    return [];\n  }\n  if (!Object.getOwnPropertyNames || !Object.getPrototypeOf) {\n    return goog.object.getKeys(a);\n  }\n  for (var d = {}; a && (a !== Object.prototype || b) && (a !== Function.prototype || c);) {\n    for (var e = Object.getOwnPropertyNames(a), f = 0; f < e.length; f++) {\n      d[e[f]] = !0;\n    }\n    a = Object.getPrototypeOf(a);\n  }\n  return goog.object.getKeys(d);\n};\ngoog.object.getSuperClass = function(a) {\n  return (a = Object.getPrototypeOf(a.prototype)) && a.constructor;\n};\ngoog.dom.asserts = {};\ngoog.dom.asserts.assertIsLocation = function(a) {\n  if (goog.asserts.ENABLE_ASSERTS) {\n    var b = goog.dom.asserts.getWindow_(a);\n    b && (!a || !(a instanceof b.Location) && a instanceof b.Element) && goog.asserts.fail(\"Argument is not a Location (or a non-Element mock); got: %s\", goog.dom.asserts.debugStringForType_(a));\n  }\n  return a;\n};\ngoog.dom.asserts.assertIsElementType_ = function(a, b) {\n  if (goog.asserts.ENABLE_ASSERTS) {\n    var c = goog.dom.asserts.getWindow_(a);\n    c && \"undefined\" != typeof c[b] && (a && (a instanceof c[b] || !(a instanceof c.Location || a instanceof c.Element)) || goog.asserts.fail(\"Argument is not a %s (or a non-Element, non-Location mock); got: %s\", b, goog.dom.asserts.debugStringForType_(a)));\n  }\n  return a;\n};\ngoog.dom.asserts.assertIsHTMLAnchorElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLAnchorElement\");\n};\ngoog.dom.asserts.assertIsHTMLButtonElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLButtonElement\");\n};\ngoog.dom.asserts.assertIsHTMLLinkElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLLinkElement\");\n};\ngoog.dom.asserts.assertIsHTMLImageElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLImageElement\");\n};\ngoog.dom.asserts.assertIsHTMLAudioElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLAudioElement\");\n};\ngoog.dom.asserts.assertIsHTMLVideoElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLVideoElement\");\n};\ngoog.dom.asserts.assertIsHTMLInputElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLInputElement\");\n};\ngoog.dom.asserts.assertIsHTMLTextAreaElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLTextAreaElement\");\n};\ngoog.dom.asserts.assertIsHTMLCanvasElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLCanvasElement\");\n};\ngoog.dom.asserts.assertIsHTMLEmbedElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLEmbedElement\");\n};\ngoog.dom.asserts.assertIsHTMLFormElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLFormElement\");\n};\ngoog.dom.asserts.assertIsHTMLFrameElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLFrameElement\");\n};\ngoog.dom.asserts.assertIsHTMLIFrameElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLIFrameElement\");\n};\ngoog.dom.asserts.assertIsHTMLObjectElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLObjectElement\");\n};\ngoog.dom.asserts.assertIsHTMLScriptElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLScriptElement\");\n};\ngoog.dom.asserts.debugStringForType_ = function(a) {\n  if (goog.isObject(a)) {\n    try {\n      return a.constructor.displayName || a.constructor.name || Object.prototype.toString.call(a);\n    } catch (b) {\n      return \"<object could not be stringified>\";\n    }\n  } else {\n    return void 0 === a ? \"undefined\" : null === a ? \"null\" : typeof a;\n  }\n};\ngoog.dom.asserts.getWindow_ = function(a) {\n  try {\n    var b = a && a.ownerDocument, c = b && (b.defaultView || b.parentWindow);\n    c = c || goog.global;\n    if (c.Element && c.Location) {\n      return c;\n    }\n  } catch (d) {\n  }\n  return null;\n};\ngoog.functions = {};\ngoog.functions.constant = function(a) {\n  return function() {\n    return a;\n  };\n};\ngoog.functions.FALSE = function() {\n  return !1;\n};\ngoog.functions.TRUE = function() {\n  return !0;\n};\ngoog.functions.NULL = function() {\n  return null;\n};\ngoog.functions.identity = function(a, b) {\n  return a;\n};\ngoog.functions.error = function(a) {\n  return function() {\n    throw Error(a);\n  };\n};\ngoog.functions.fail = function(a) {\n  return function() {\n    throw a;\n  };\n};\ngoog.functions.lock = function(a, b) {\n  b = b || 0;\n  return function() {\n    return a.apply(this, Array.prototype.slice.call(arguments, 0, b));\n  };\n};\ngoog.functions.nth = function(a) {\n  return function() {\n    return arguments[a];\n  };\n};\ngoog.functions.partialRight = function(a, b) {\n  var c = Array.prototype.slice.call(arguments, 1);\n  return function() {\n    var b = Array.prototype.slice.call(arguments);\n    b.push.apply(b, c);\n    return a.apply(this, b);\n  };\n};\ngoog.functions.withReturnValue = function(a, b) {\n  return goog.functions.sequence(a, goog.functions.constant(b));\n};\ngoog.functions.equalTo = function(a, b) {\n  return function(c) {\n    return b ? a == c : a === c;\n  };\n};\ngoog.functions.compose = function(a, b) {\n  var c = arguments, d = c.length;\n  return function() {\n    var a;\n    d && (a = c[d - 1].apply(this, arguments));\n    for (var b = d - 2; 0 <= b; b--) {\n      a = c[b].call(this, a);\n    }\n    return a;\n  };\n};\ngoog.functions.sequence = function(a) {\n  var b = arguments, c = b.length;\n  return function() {\n    for (var a, e = 0; e < c; e++) {\n      a = b[e].apply(this, arguments);\n    }\n    return a;\n  };\n};\ngoog.functions.and = function(a) {\n  var b = arguments, c = b.length;\n  return function() {\n    for (var a = 0; a < c; a++) {\n      if (!b[a].apply(this, arguments)) {\n        return !1;\n      }\n    }\n    return !0;\n  };\n};\ngoog.functions.or = function(a) {\n  var b = arguments, c = b.length;\n  return function() {\n    for (var a = 0; a < c; a++) {\n      if (b[a].apply(this, arguments)) {\n        return !0;\n      }\n    }\n    return !1;\n  };\n};\ngoog.functions.not = function(a) {\n  return function() {\n    return !a.apply(this, arguments);\n  };\n};\ngoog.functions.create = function(a, b) {\n  var c = function() {\n  };\n  c.prototype = a.prototype;\n  c = new c;\n  a.apply(c, Array.prototype.slice.call(arguments, 1));\n  return c;\n};\ngoog.functions.CACHE_RETURN_VALUE = !0;\ngoog.functions.cacheReturnValue = function(a) {\n  var b = !1, c;\n  return function() {\n    if (!goog.functions.CACHE_RETURN_VALUE) {\n      return a();\n    }\n    b || (c = a(), b = !0);\n    return c;\n  };\n};\ngoog.functions.once = function(a) {\n  var b = a;\n  return function() {\n    if (b) {\n      var a = b;\n      b = null;\n      a();\n    }\n  };\n};\ngoog.functions.debounce = function(a, b, c) {\n  var d = 0;\n  return function(e) {\n    goog.global.clearTimeout(d);\n    var f = arguments;\n    d = goog.global.setTimeout(function() {\n      a.apply(c, f);\n    }, b);\n  };\n};\ngoog.functions.throttle = function(a, b, c) {\n  var d = 0, e = !1, f = [], g = function() {\n    d = 0;\n    e && (e = !1, h());\n  }, h = function() {\n    d = goog.global.setTimeout(g, b);\n    a.apply(c, f);\n  };\n  return function(a) {\n    f = arguments;\n    d ? e = !0 : h();\n  };\n};\ngoog.functions.rateLimit = function(a, b, c) {\n  var d = 0, e = function() {\n    d = 0;\n  };\n  return function(f) {\n    d || (d = goog.global.setTimeout(e, b), a.apply(c, arguments));\n  };\n};\ngoog.dom.HtmlElement = function() {\n};\ngoog.dom.TagName = function(a) {\n  this.tagName_ = a;\n};\ngoog.dom.TagName.prototype.toString = function() {\n  return this.tagName_;\n};\ngoog.dom.TagName.A = new goog.dom.TagName(\"A\");\ngoog.dom.TagName.ABBR = new goog.dom.TagName(\"ABBR\");\ngoog.dom.TagName.ACRONYM = new goog.dom.TagName(\"ACRONYM\");\ngoog.dom.TagName.ADDRESS = new goog.dom.TagName(\"ADDRESS\");\ngoog.dom.TagName.APPLET = new goog.dom.TagName(\"APPLET\");\ngoog.dom.TagName.AREA = new goog.dom.TagName(\"AREA\");\ngoog.dom.TagName.ARTICLE = new goog.dom.TagName(\"ARTICLE\");\ngoog.dom.TagName.ASIDE = new goog.dom.TagName(\"ASIDE\");\ngoog.dom.TagName.AUDIO = new goog.dom.TagName(\"AUDIO\");\ngoog.dom.TagName.B = new goog.dom.TagName(\"B\");\ngoog.dom.TagName.BASE = new goog.dom.TagName(\"BASE\");\ngoog.dom.TagName.BASEFONT = new goog.dom.TagName(\"BASEFONT\");\ngoog.dom.TagName.BDI = new goog.dom.TagName(\"BDI\");\ngoog.dom.TagName.BDO = new goog.dom.TagName(\"BDO\");\ngoog.dom.TagName.BIG = new goog.dom.TagName(\"BIG\");\ngoog.dom.TagName.BLOCKQUOTE = new goog.dom.TagName(\"BLOCKQUOTE\");\ngoog.dom.TagName.BODY = new goog.dom.TagName(\"BODY\");\ngoog.dom.TagName.BR = new goog.dom.TagName(\"BR\");\ngoog.dom.TagName.BUTTON = new goog.dom.TagName(\"BUTTON\");\ngoog.dom.TagName.CANVAS = new goog.dom.TagName(\"CANVAS\");\ngoog.dom.TagName.CAPTION = new goog.dom.TagName(\"CAPTION\");\ngoog.dom.TagName.CENTER = new goog.dom.TagName(\"CENTER\");\ngoog.dom.TagName.CITE = new goog.dom.TagName(\"CITE\");\ngoog.dom.TagName.CODE = new goog.dom.TagName(\"CODE\");\ngoog.dom.TagName.COL = new goog.dom.TagName(\"COL\");\ngoog.dom.TagName.COLGROUP = new goog.dom.TagName(\"COLGROUP\");\ngoog.dom.TagName.COMMAND = new goog.dom.TagName(\"COMMAND\");\ngoog.dom.TagName.DATA = new goog.dom.TagName(\"DATA\");\ngoog.dom.TagName.DATALIST = new goog.dom.TagName(\"DATALIST\");\ngoog.dom.TagName.DD = new goog.dom.TagName(\"DD\");\ngoog.dom.TagName.DEL = new goog.dom.TagName(\"DEL\");\ngoog.dom.TagName.DETAILS = new goog.dom.TagName(\"DETAILS\");\ngoog.dom.TagName.DFN = new goog.dom.TagName(\"DFN\");\ngoog.dom.TagName.DIALOG = new goog.dom.TagName(\"DIALOG\");\ngoog.dom.TagName.DIR = new goog.dom.TagName(\"DIR\");\ngoog.dom.TagName.DIV = new goog.dom.TagName(\"DIV\");\ngoog.dom.TagName.DL = new goog.dom.TagName(\"DL\");\ngoog.dom.TagName.DT = new goog.dom.TagName(\"DT\");\ngoog.dom.TagName.EM = new goog.dom.TagName(\"EM\");\ngoog.dom.TagName.EMBED = new goog.dom.TagName(\"EMBED\");\ngoog.dom.TagName.FIELDSET = new goog.dom.TagName(\"FIELDSET\");\ngoog.dom.TagName.FIGCAPTION = new goog.dom.TagName(\"FIGCAPTION\");\ngoog.dom.TagName.FIGURE = new goog.dom.TagName(\"FIGURE\");\ngoog.dom.TagName.FONT = new goog.dom.TagName(\"FONT\");\ngoog.dom.TagName.FOOTER = new goog.dom.TagName(\"FOOTER\");\ngoog.dom.TagName.FORM = new goog.dom.TagName(\"FORM\");\ngoog.dom.TagName.FRAME = new goog.dom.TagName(\"FRAME\");\ngoog.dom.TagName.FRAMESET = new goog.dom.TagName(\"FRAMESET\");\ngoog.dom.TagName.H1 = new goog.dom.TagName(\"H1\");\ngoog.dom.TagName.H2 = new goog.dom.TagName(\"H2\");\ngoog.dom.TagName.H3 = new goog.dom.TagName(\"H3\");\ngoog.dom.TagName.H4 = new goog.dom.TagName(\"H4\");\ngoog.dom.TagName.H5 = new goog.dom.TagName(\"H5\");\ngoog.dom.TagName.H6 = new goog.dom.TagName(\"H6\");\ngoog.dom.TagName.HEAD = new goog.dom.TagName(\"HEAD\");\ngoog.dom.TagName.HEADER = new goog.dom.TagName(\"HEADER\");\ngoog.dom.TagName.HGROUP = new goog.dom.TagName(\"HGROUP\");\ngoog.dom.TagName.HR = new goog.dom.TagName(\"HR\");\ngoog.dom.TagName.HTML = new goog.dom.TagName(\"HTML\");\ngoog.dom.TagName.I = new goog.dom.TagName(\"I\");\ngoog.dom.TagName.IFRAME = new goog.dom.TagName(\"IFRAME\");\ngoog.dom.TagName.IMG = new goog.dom.TagName(\"IMG\");\ngoog.dom.TagName.INPUT = new goog.dom.TagName(\"INPUT\");\ngoog.dom.TagName.INS = new goog.dom.TagName(\"INS\");\ngoog.dom.TagName.ISINDEX = new goog.dom.TagName(\"ISINDEX\");\ngoog.dom.TagName.KBD = new goog.dom.TagName(\"KBD\");\ngoog.dom.TagName.KEYGEN = new goog.dom.TagName(\"KEYGEN\");\ngoog.dom.TagName.LABEL = new goog.dom.TagName(\"LABEL\");\ngoog.dom.TagName.LEGEND = new goog.dom.TagName(\"LEGEND\");\ngoog.dom.TagName.LI = new goog.dom.TagName(\"LI\");\ngoog.dom.TagName.LINK = new goog.dom.TagName(\"LINK\");\ngoog.dom.TagName.MAIN = new goog.dom.TagName(\"MAIN\");\ngoog.dom.TagName.MAP = new goog.dom.TagName(\"MAP\");\ngoog.dom.TagName.MARK = new goog.dom.TagName(\"MARK\");\ngoog.dom.TagName.MATH = new goog.dom.TagName(\"MATH\");\ngoog.dom.TagName.MENU = new goog.dom.TagName(\"MENU\");\ngoog.dom.TagName.MENUITEM = new goog.dom.TagName(\"MENUITEM\");\ngoog.dom.TagName.META = new goog.dom.TagName(\"META\");\ngoog.dom.TagName.METER = new goog.dom.TagName(\"METER\");\ngoog.dom.TagName.NAV = new goog.dom.TagName(\"NAV\");\ngoog.dom.TagName.NOFRAMES = new goog.dom.TagName(\"NOFRAMES\");\ngoog.dom.TagName.NOSCRIPT = new goog.dom.TagName(\"NOSCRIPT\");\ngoog.dom.TagName.OBJECT = new goog.dom.TagName(\"OBJECT\");\ngoog.dom.TagName.OL = new goog.dom.TagName(\"OL\");\ngoog.dom.TagName.OPTGROUP = new goog.dom.TagName(\"OPTGROUP\");\ngoog.dom.TagName.OPTION = new goog.dom.TagName(\"OPTION\");\ngoog.dom.TagName.OUTPUT = new goog.dom.TagName(\"OUTPUT\");\ngoog.dom.TagName.P = new goog.dom.TagName(\"P\");\ngoog.dom.TagName.PARAM = new goog.dom.TagName(\"PARAM\");\ngoog.dom.TagName.PICTURE = new goog.dom.TagName(\"PICTURE\");\ngoog.dom.TagName.PRE = new goog.dom.TagName(\"PRE\");\ngoog.dom.TagName.PROGRESS = new goog.dom.TagName(\"PROGRESS\");\ngoog.dom.TagName.Q = new goog.dom.TagName(\"Q\");\ngoog.dom.TagName.RP = new goog.dom.TagName(\"RP\");\ngoog.dom.TagName.RT = new goog.dom.TagName(\"RT\");\ngoog.dom.TagName.RTC = new goog.dom.TagName(\"RTC\");\ngoog.dom.TagName.RUBY = new goog.dom.TagName(\"RUBY\");\ngoog.dom.TagName.S = new goog.dom.TagName(\"S\");\ngoog.dom.TagName.SAMP = new goog.dom.TagName(\"SAMP\");\ngoog.dom.TagName.SCRIPT = new goog.dom.TagName(\"SCRIPT\");\ngoog.dom.TagName.SECTION = new goog.dom.TagName(\"SECTION\");\ngoog.dom.TagName.SELECT = new goog.dom.TagName(\"SELECT\");\ngoog.dom.TagName.SMALL = new goog.dom.TagName(\"SMALL\");\ngoog.dom.TagName.SOURCE = new goog.dom.TagName(\"SOURCE\");\ngoog.dom.TagName.SPAN = new goog.dom.TagName(\"SPAN\");\ngoog.dom.TagName.STRIKE = new goog.dom.TagName(\"STRIKE\");\ngoog.dom.TagName.STRONG = new goog.dom.TagName(\"STRONG\");\ngoog.dom.TagName.STYLE = new goog.dom.TagName(\"STYLE\");\ngoog.dom.TagName.SUB = new goog.dom.TagName(\"SUB\");\ngoog.dom.TagName.SUMMARY = new goog.dom.TagName(\"SUMMARY\");\ngoog.dom.TagName.SUP = new goog.dom.TagName(\"SUP\");\ngoog.dom.TagName.SVG = new goog.dom.TagName(\"SVG\");\ngoog.dom.TagName.TABLE = new goog.dom.TagName(\"TABLE\");\ngoog.dom.TagName.TBODY = new goog.dom.TagName(\"TBODY\");\ngoog.dom.TagName.TD = new goog.dom.TagName(\"TD\");\ngoog.dom.TagName.TEMPLATE = new goog.dom.TagName(\"TEMPLATE\");\ngoog.dom.TagName.TEXTAREA = new goog.dom.TagName(\"TEXTAREA\");\ngoog.dom.TagName.TFOOT = new goog.dom.TagName(\"TFOOT\");\ngoog.dom.TagName.TH = new goog.dom.TagName(\"TH\");\ngoog.dom.TagName.THEAD = new goog.dom.TagName(\"THEAD\");\ngoog.dom.TagName.TIME = new goog.dom.TagName(\"TIME\");\ngoog.dom.TagName.TITLE = new goog.dom.TagName(\"TITLE\");\ngoog.dom.TagName.TR = new goog.dom.TagName(\"TR\");\ngoog.dom.TagName.TRACK = new goog.dom.TagName(\"TRACK\");\ngoog.dom.TagName.TT = new goog.dom.TagName(\"TT\");\ngoog.dom.TagName.U = new goog.dom.TagName(\"U\");\ngoog.dom.TagName.UL = new goog.dom.TagName(\"UL\");\ngoog.dom.TagName.VAR = new goog.dom.TagName(\"VAR\");\ngoog.dom.TagName.VIDEO = new goog.dom.TagName(\"VIDEO\");\ngoog.dom.TagName.WBR = new goog.dom.TagName(\"WBR\");\ngoog.dom.tags = {};\ngoog.dom.tags.VOID_TAGS_ = {area:!0, base:!0, br:!0, col:!0, command:!0, embed:!0, hr:!0, img:!0, input:!0, keygen:!0, link:!0, meta:!0, param:!0, source:!0, track:!0, wbr:!0};\ngoog.dom.tags.isVoidTag = function(a) {\n  return !0 === goog.dom.tags.VOID_TAGS_[a];\n};\ngoog.html = {};\ngoog.html.trustedtypes = {};\ngoog.html.trustedtypes.PRIVATE_DO_NOT_ACCESS_OR_ELSE_POLICY = goog.TRUSTED_TYPES_POLICY_NAME ? goog.createTrustedTypesPolicy(goog.TRUSTED_TYPES_POLICY_NAME + \"#html\") : null;\ngoog.string.TypedString = function() {\n};\ngoog.string.Const = function(a, b) {\n  this.stringConstValueWithSecurityContract__googStringSecurityPrivate_ = a === goog.string.Const.GOOG_STRING_CONSTRUCTOR_TOKEN_PRIVATE_ && b || \"\";\n  this.STRING_CONST_TYPE_MARKER__GOOG_STRING_SECURITY_PRIVATE_ = goog.string.Const.TYPE_MARKER_;\n};\ngoog.string.Const.prototype.implementsGoogStringTypedString = !0;\ngoog.string.Const.prototype.getTypedStringValue = function() {\n  return this.stringConstValueWithSecurityContract__googStringSecurityPrivate_;\n};\ngoog.DEBUG && (goog.string.Const.prototype.toString = function() {\n  return \"Const{\" + this.stringConstValueWithSecurityContract__googStringSecurityPrivate_ + \"}\";\n});\ngoog.string.Const.unwrap = function(a) {\n  if (a instanceof goog.string.Const && a.constructor === goog.string.Const && a.STRING_CONST_TYPE_MARKER__GOOG_STRING_SECURITY_PRIVATE_ === goog.string.Const.TYPE_MARKER_) {\n    return a.stringConstValueWithSecurityContract__googStringSecurityPrivate_;\n  }\n  goog.asserts.fail(\"expected object of type Const, got '\" + a + \"'\");\n  return \"type_error:Const\";\n};\ngoog.string.Const.from = function(a) {\n  return new goog.string.Const(goog.string.Const.GOOG_STRING_CONSTRUCTOR_TOKEN_PRIVATE_, a);\n};\ngoog.string.Const.TYPE_MARKER_ = {};\ngoog.string.Const.GOOG_STRING_CONSTRUCTOR_TOKEN_PRIVATE_ = {};\ngoog.string.Const.EMPTY = goog.string.Const.from(\"\");\ngoog.html.SafeScript = function() {\n  this.privateDoNotAccessOrElseSafeScriptWrappedValue_ = \"\";\n  this.SAFE_SCRIPT_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ = goog.html.SafeScript.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_;\n};\ngoog.html.SafeScript.prototype.implementsGoogStringTypedString = !0;\ngoog.html.SafeScript.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ = {};\ngoog.html.SafeScript.fromConstant = function(a) {\n  a = goog.string.Const.unwrap(a);\n  return 0 === a.length ? goog.html.SafeScript.EMPTY : goog.html.SafeScript.createSafeScriptSecurityPrivateDoNotAccessOrElse(a);\n};\ngoog.html.SafeScript.fromConstantAndArgs = function(a, b) {\n  for (var c = [], d = 1; d < arguments.length; d++) {\n    c.push(goog.html.SafeScript.stringify_(arguments[d]));\n  }\n  return goog.html.SafeScript.createSafeScriptSecurityPrivateDoNotAccessOrElse(\"(\" + goog.string.Const.unwrap(a) + \")(\" + c.join(\", \") + \");\");\n};\ngoog.html.SafeScript.fromJson = function(a) {\n  return goog.html.SafeScript.createSafeScriptSecurityPrivateDoNotAccessOrElse(goog.html.SafeScript.stringify_(a));\n};\ngoog.html.SafeScript.prototype.getTypedStringValue = function() {\n  return this.privateDoNotAccessOrElseSafeScriptWrappedValue_.toString();\n};\ngoog.DEBUG && (goog.html.SafeScript.prototype.toString = function() {\n  return \"SafeScript{\" + this.privateDoNotAccessOrElseSafeScriptWrappedValue_ + \"}\";\n});\ngoog.html.SafeScript.unwrap = function(a) {\n  return goog.html.SafeScript.unwrapTrustedScript(a).toString();\n};\ngoog.html.SafeScript.unwrapTrustedScript = function(a) {\n  if (a instanceof goog.html.SafeScript && a.constructor === goog.html.SafeScript && a.SAFE_SCRIPT_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ === goog.html.SafeScript.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_) {\n    return a.privateDoNotAccessOrElseSafeScriptWrappedValue_;\n  }\n  goog.asserts.fail(\"expected object of type SafeScript, got '\" + a + \"' of type \" + goog.typeOf(a));\n  return \"type_error:SafeScript\";\n};\ngoog.html.SafeScript.stringify_ = function(a) {\n  return JSON.stringify(a).replace(/</g, \"\\\\x3c\");\n};\ngoog.html.SafeScript.createSafeScriptSecurityPrivateDoNotAccessOrElse = function(a) {\n  return (new goog.html.SafeScript).initSecurityPrivateDoNotAccessOrElse_(a);\n};\ngoog.html.SafeScript.prototype.initSecurityPrivateDoNotAccessOrElse_ = function(a) {\n  this.privateDoNotAccessOrElseSafeScriptWrappedValue_ = goog.html.trustedtypes.PRIVATE_DO_NOT_ACCESS_OR_ELSE_POLICY ? goog.html.trustedtypes.PRIVATE_DO_NOT_ACCESS_OR_ELSE_POLICY.createScript(a) : a;\n  return this;\n};\ngoog.html.SafeScript.EMPTY = goog.html.SafeScript.createSafeScriptSecurityPrivateDoNotAccessOrElse(\"\");\ngoog.fs = {};\ngoog.fs.url = {};\ngoog.fs.url.createObjectUrl = function(a) {\n  return goog.fs.url.getUrlObject_().createObjectURL(a);\n};\ngoog.fs.url.revokeObjectUrl = function(a) {\n  goog.fs.url.getUrlObject_().revokeObjectURL(a);\n};\ngoog.fs.url.getUrlObject_ = function() {\n  var a = goog.fs.url.findUrlObject_();\n  if (null != a) {\n    return a;\n  }\n  throw Error(\"This browser doesn't seem to support blob URLs\");\n};\ngoog.fs.url.findUrlObject_ = function() {\n  return void 0 !== goog.global.URL && void 0 !== goog.global.URL.createObjectURL ? goog.global.URL : void 0 !== goog.global.webkitURL && void 0 !== goog.global.webkitURL.createObjectURL ? goog.global.webkitURL : void 0 !== goog.global.createObjectURL ? goog.global : null;\n};\ngoog.fs.url.browserSupportsObjectUrls = function() {\n  return null != goog.fs.url.findUrlObject_();\n};\ngoog.i18n = {};\ngoog.i18n.bidi = {};\ngoog.i18n.bidi.FORCE_RTL = !1;\ngoog.i18n.bidi.IS_RTL = goog.i18n.bidi.FORCE_RTL || (\"ar\" == goog.LOCALE.substring(0, 2).toLowerCase() || \"fa\" == goog.LOCALE.substring(0, 2).toLowerCase() || \"he\" == goog.LOCALE.substring(0, 2).toLowerCase() || \"iw\" == goog.LOCALE.substring(0, 2).toLowerCase() || \"ps\" == goog.LOCALE.substring(0, 2).toLowerCase() || \"sd\" == goog.LOCALE.substring(0, 2).toLowerCase() || \"ug\" == goog.LOCALE.substring(0, 2).toLowerCase() || \"ur\" == goog.LOCALE.substring(0, 2).toLowerCase() || \"yi\" == goog.LOCALE.substring(0,\n2).toLowerCase()) && (2 == goog.LOCALE.length || \"-\" == goog.LOCALE.substring(2, 3) || \"_\" == goog.LOCALE.substring(2, 3)) || 3 <= goog.LOCALE.length && \"ckb\" == goog.LOCALE.substring(0, 3).toLowerCase() && (3 == goog.LOCALE.length || \"-\" == goog.LOCALE.substring(3, 4) || \"_\" == goog.LOCALE.substring(3, 4)) || 7 <= goog.LOCALE.length && (\"-\" == goog.LOCALE.substring(2, 3) || \"_\" == goog.LOCALE.substring(2, 3)) && (\"adlm\" == goog.LOCALE.substring(3, 7).toLowerCase() || \"arab\" == goog.LOCALE.substring(3,\n7).toLowerCase() || \"hebr\" == goog.LOCALE.substring(3, 7).toLowerCase() || \"nkoo\" == goog.LOCALE.substring(3, 7).toLowerCase() || \"rohg\" == goog.LOCALE.substring(3, 7).toLowerCase() || \"thaa\" == goog.LOCALE.substring(3, 7).toLowerCase()) || 8 <= goog.LOCALE.length && (\"-\" == goog.LOCALE.substring(3, 4) || \"_\" == goog.LOCALE.substring(3, 4)) && (\"adlm\" == goog.LOCALE.substring(4, 8).toLowerCase() || \"arab\" == goog.LOCALE.substring(4, 8).toLowerCase() || \"hebr\" == goog.LOCALE.substring(4, 8).toLowerCase() ||\n\"nkoo\" == goog.LOCALE.substring(4, 8).toLowerCase() || \"rohg\" == goog.LOCALE.substring(4, 8).toLowerCase() || \"thaa\" == goog.LOCALE.substring(4, 8).toLowerCase());\ngoog.i18n.bidi.Format = {LRE:\"\\u202a\", RLE:\"\\u202b\", PDF:\"\\u202c\", LRM:\"\\u200e\", RLM:\"\\u200f\"};\ngoog.i18n.bidi.Dir = {LTR:1, RTL:-1, NEUTRAL:0};\ngoog.i18n.bidi.RIGHT = \"right\";\ngoog.i18n.bidi.LEFT = \"left\";\ngoog.i18n.bidi.I18N_RIGHT = goog.i18n.bidi.IS_RTL ? goog.i18n.bidi.LEFT : goog.i18n.bidi.RIGHT;\ngoog.i18n.bidi.I18N_LEFT = goog.i18n.bidi.IS_RTL ? goog.i18n.bidi.RIGHT : goog.i18n.bidi.LEFT;\ngoog.i18n.bidi.toDir = function(a, b) {\n  return \"number\" == typeof a ? 0 < a ? goog.i18n.bidi.Dir.LTR : 0 > a ? goog.i18n.bidi.Dir.RTL : b ? null : goog.i18n.bidi.Dir.NEUTRAL : null == a ? null : a ? goog.i18n.bidi.Dir.RTL : goog.i18n.bidi.Dir.LTR;\n};\ngoog.i18n.bidi.ltrChars_ = \"A-Za-z\\u00c0-\\u00d6\\u00d8-\\u00f6\\u00f8-\\u02b8\\u0300-\\u0590\\u0900-\\u1fff\\u200e\\u2c00-\\ud801\\ud804-\\ud839\\ud83c-\\udbff\\uf900-\\ufb1c\\ufe00-\\ufe6f\\ufefd-\\uffff\";\ngoog.i18n.bidi.rtlChars_ = \"\\u0591-\\u06ef\\u06fa-\\u08ff\\u200f\\ud802-\\ud803\\ud83a-\\ud83b\\ufb1d-\\ufdff\\ufe70-\\ufefc\";\ngoog.i18n.bidi.htmlSkipReg_ = /<[^>]*>|&[^;]+;/g;\ngoog.i18n.bidi.stripHtmlIfNeeded_ = function(a, b) {\n  return b ? a.replace(goog.i18n.bidi.htmlSkipReg_, \"\") : a;\n};\ngoog.i18n.bidi.rtlCharReg_ = new RegExp(\"[\" + goog.i18n.bidi.rtlChars_ + \"]\");\ngoog.i18n.bidi.ltrCharReg_ = new RegExp(\"[\" + goog.i18n.bidi.ltrChars_ + \"]\");\ngoog.i18n.bidi.hasAnyRtl = function(a, b) {\n  return goog.i18n.bidi.rtlCharReg_.test(goog.i18n.bidi.stripHtmlIfNeeded_(a, b));\n};\ngoog.i18n.bidi.hasRtlChar = goog.i18n.bidi.hasAnyRtl;\ngoog.i18n.bidi.hasAnyLtr = function(a, b) {\n  return goog.i18n.bidi.ltrCharReg_.test(goog.i18n.bidi.stripHtmlIfNeeded_(a, b));\n};\ngoog.i18n.bidi.ltrRe_ = new RegExp(\"^[\" + goog.i18n.bidi.ltrChars_ + \"]\");\ngoog.i18n.bidi.rtlRe_ = new RegExp(\"^[\" + goog.i18n.bidi.rtlChars_ + \"]\");\ngoog.i18n.bidi.isRtlChar = function(a) {\n  return goog.i18n.bidi.rtlRe_.test(a);\n};\ngoog.i18n.bidi.isLtrChar = function(a) {\n  return goog.i18n.bidi.ltrRe_.test(a);\n};\ngoog.i18n.bidi.isNeutralChar = function(a) {\n  return !goog.i18n.bidi.isLtrChar(a) && !goog.i18n.bidi.isRtlChar(a);\n};\ngoog.i18n.bidi.ltrDirCheckRe_ = new RegExp(\"^[^\" + goog.i18n.bidi.rtlChars_ + \"]*[\" + goog.i18n.bidi.ltrChars_ + \"]\");\ngoog.i18n.bidi.rtlDirCheckRe_ = new RegExp(\"^[^\" + goog.i18n.bidi.ltrChars_ + \"]*[\" + goog.i18n.bidi.rtlChars_ + \"]\");\ngoog.i18n.bidi.startsWithRtl = function(a, b) {\n  return goog.i18n.bidi.rtlDirCheckRe_.test(goog.i18n.bidi.stripHtmlIfNeeded_(a, b));\n};\ngoog.i18n.bidi.isRtlText = goog.i18n.bidi.startsWithRtl;\ngoog.i18n.bidi.startsWithLtr = function(a, b) {\n  return goog.i18n.bidi.ltrDirCheckRe_.test(goog.i18n.bidi.stripHtmlIfNeeded_(a, b));\n};\ngoog.i18n.bidi.isLtrText = goog.i18n.bidi.startsWithLtr;\ngoog.i18n.bidi.isRequiredLtrRe_ = /^http:\\/\\/.*/;\ngoog.i18n.bidi.isNeutralText = function(a, b) {\n  a = goog.i18n.bidi.stripHtmlIfNeeded_(a, b);\n  return goog.i18n.bidi.isRequiredLtrRe_.test(a) || !goog.i18n.bidi.hasAnyLtr(a) && !goog.i18n.bidi.hasAnyRtl(a);\n};\ngoog.i18n.bidi.ltrExitDirCheckRe_ = new RegExp(\"[\" + goog.i18n.bidi.ltrChars_ + \"][^\" + goog.i18n.bidi.rtlChars_ + \"]*$\");\ngoog.i18n.bidi.rtlExitDirCheckRe_ = new RegExp(\"[\" + goog.i18n.bidi.rtlChars_ + \"][^\" + goog.i18n.bidi.ltrChars_ + \"]*$\");\ngoog.i18n.bidi.endsWithLtr = function(a, b) {\n  return goog.i18n.bidi.ltrExitDirCheckRe_.test(goog.i18n.bidi.stripHtmlIfNeeded_(a, b));\n};\ngoog.i18n.bidi.isLtrExitText = goog.i18n.bidi.endsWithLtr;\ngoog.i18n.bidi.endsWithRtl = function(a, b) {\n  return goog.i18n.bidi.rtlExitDirCheckRe_.test(goog.i18n.bidi.stripHtmlIfNeeded_(a, b));\n};\ngoog.i18n.bidi.isRtlExitText = goog.i18n.bidi.endsWithRtl;\ngoog.i18n.bidi.rtlLocalesRe_ = /^(ar|ckb|dv|he|iw|fa|nqo|ps|sd|ug|ur|yi|.*[-_](Adlm|Arab|Hebr|Nkoo|Rohg|Thaa))(?!.*[-_](Latn|Cyrl)($|-|_))($|-|_)/i;\ngoog.i18n.bidi.isRtlLanguage = function(a) {\n  return goog.i18n.bidi.rtlLocalesRe_.test(a);\n};\ngoog.i18n.bidi.bracketGuardTextRe_ = /(\\(.*?\\)+)|(\\[.*?\\]+)|(\\{.*?\\}+)|(<.*?>+)/g;\ngoog.i18n.bidi.guardBracketInText = function(a, b) {\n  var c = (void 0 === b ? goog.i18n.bidi.hasAnyRtl(a) : b) ? goog.i18n.bidi.Format.RLM : goog.i18n.bidi.Format.LRM;\n  return a.replace(goog.i18n.bidi.bracketGuardTextRe_, c + \"$&\" + c);\n};\ngoog.i18n.bidi.enforceRtlInHtml = function(a) {\n  return \"<\" == a.charAt(0) ? a.replace(/<\\w+/, \"$& dir=rtl\") : \"\\n<span dir=rtl>\" + a + \"</span>\";\n};\ngoog.i18n.bidi.enforceRtlInText = function(a) {\n  return goog.i18n.bidi.Format.RLE + a + goog.i18n.bidi.Format.PDF;\n};\ngoog.i18n.bidi.enforceLtrInHtml = function(a) {\n  return \"<\" == a.charAt(0) ? a.replace(/<\\w+/, \"$& dir=ltr\") : \"\\n<span dir=ltr>\" + a + \"</span>\";\n};\ngoog.i18n.bidi.enforceLtrInText = function(a) {\n  return goog.i18n.bidi.Format.LRE + a + goog.i18n.bidi.Format.PDF;\n};\ngoog.i18n.bidi.dimensionsRe_ = /:\\s*([.\\d][.\\w]*)\\s+([.\\d][.\\w]*)\\s+([.\\d][.\\w]*)\\s+([.\\d][.\\w]*)/g;\ngoog.i18n.bidi.leftRe_ = /left/gi;\ngoog.i18n.bidi.rightRe_ = /right/gi;\ngoog.i18n.bidi.tempRe_ = /%%%%/g;\ngoog.i18n.bidi.mirrorCSS = function(a) {\n  return a.replace(goog.i18n.bidi.dimensionsRe_, \":$1 $4 $3 $2\").replace(goog.i18n.bidi.leftRe_, \"%%%%\").replace(goog.i18n.bidi.rightRe_, goog.i18n.bidi.LEFT).replace(goog.i18n.bidi.tempRe_, goog.i18n.bidi.RIGHT);\n};\ngoog.i18n.bidi.doubleQuoteSubstituteRe_ = /([\\u0591-\\u05f2])\"/g;\ngoog.i18n.bidi.singleQuoteSubstituteRe_ = /([\\u0591-\\u05f2])'/g;\ngoog.i18n.bidi.normalizeHebrewQuote = function(a) {\n  return a.replace(goog.i18n.bidi.doubleQuoteSubstituteRe_, \"$1\\u05f4\").replace(goog.i18n.bidi.singleQuoteSubstituteRe_, \"$1\\u05f3\");\n};\ngoog.i18n.bidi.wordSeparatorRe_ = /\\s+/;\ngoog.i18n.bidi.hasNumeralsRe_ = /[\\d\\u06f0-\\u06f9]/;\ngoog.i18n.bidi.rtlDetectionThreshold_ = 0.40;\ngoog.i18n.bidi.estimateDirection = function(a, b) {\n  for (var c = 0, d = 0, e = !1, f = goog.i18n.bidi.stripHtmlIfNeeded_(a, b).split(goog.i18n.bidi.wordSeparatorRe_), g = 0; g < f.length; g++) {\n    var h = f[g];\n    goog.i18n.bidi.startsWithRtl(h) ? (c++, d++) : goog.i18n.bidi.isRequiredLtrRe_.test(h) ? e = !0 : goog.i18n.bidi.hasAnyLtr(h) ? d++ : goog.i18n.bidi.hasNumeralsRe_.test(h) && (e = !0);\n  }\n  return 0 == d ? e ? goog.i18n.bidi.Dir.LTR : goog.i18n.bidi.Dir.NEUTRAL : c / d > goog.i18n.bidi.rtlDetectionThreshold_ ? goog.i18n.bidi.Dir.RTL : goog.i18n.bidi.Dir.LTR;\n};\ngoog.i18n.bidi.detectRtlDirectionality = function(a, b) {\n  return goog.i18n.bidi.estimateDirection(a, b) == goog.i18n.bidi.Dir.RTL;\n};\ngoog.i18n.bidi.setElementDirAndAlign = function(a, b) {\n  a && (b = goog.i18n.bidi.toDir(b)) && (a.style.textAlign = b == goog.i18n.bidi.Dir.RTL ? goog.i18n.bidi.RIGHT : goog.i18n.bidi.LEFT, a.dir = b == goog.i18n.bidi.Dir.RTL ? \"rtl\" : \"ltr\");\n};\ngoog.i18n.bidi.setElementDirByTextDirectionality = function(a, b) {\n  switch(goog.i18n.bidi.estimateDirection(b)) {\n    case goog.i18n.bidi.Dir.LTR:\n      a.dir = \"ltr\";\n      break;\n    case goog.i18n.bidi.Dir.RTL:\n      a.dir = \"rtl\";\n      break;\n    default:\n      a.removeAttribute(\"dir\");\n  }\n};\ngoog.i18n.bidi.DirectionalString = function() {\n};\ngoog.html.TrustedResourceUrl = function(a, b, c) {\n  this.privateDoNotAccessOrElseTrustedResourceUrlWrappedValue_ = a === goog.html.TrustedResourceUrl.CONSTRUCTOR_TOKEN_PRIVATE_ && b || \"\";\n  this.trustedURL_ = a === goog.html.TrustedResourceUrl.CONSTRUCTOR_TOKEN_PRIVATE_ && c || null;\n  this.TRUSTED_RESOURCE_URL_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ = goog.html.TrustedResourceUrl.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_;\n};\ngoog.html.TrustedResourceUrl.prototype.implementsGoogStringTypedString = !0;\ngoog.html.TrustedResourceUrl.prototype.getTypedStringValue = function() {\n  return this.privateDoNotAccessOrElseTrustedResourceUrlWrappedValue_.toString();\n};\ngoog.html.TrustedResourceUrl.prototype.implementsGoogI18nBidiDirectionalString = !0;\ngoog.html.TrustedResourceUrl.prototype.getDirection = function() {\n  return goog.i18n.bidi.Dir.LTR;\n};\ngoog.html.TrustedResourceUrl.prototype.cloneWithParams = function(a, b) {\n  var c = goog.html.TrustedResourceUrl.unwrap(this);\n  c = goog.html.TrustedResourceUrl.URL_PARAM_PARSER_.exec(c);\n  var d = c[3] || \"\";\n  return goog.html.TrustedResourceUrl.createTrustedResourceUrlSecurityPrivateDoNotAccessOrElse(c[1] + goog.html.TrustedResourceUrl.stringifyParams_(\"?\", c[2] || \"\", a) + goog.html.TrustedResourceUrl.stringifyParams_(\"#\", d, b));\n};\ngoog.DEBUG && (goog.html.TrustedResourceUrl.prototype.toString = function() {\n  return \"TrustedResourceUrl{\" + this.privateDoNotAccessOrElseTrustedResourceUrlWrappedValue_ + \"}\";\n});\ngoog.html.TrustedResourceUrl.unwrap = function(a) {\n  return goog.html.TrustedResourceUrl.unwrapTrustedScriptURL(a).toString();\n};\ngoog.html.TrustedResourceUrl.unwrapTrustedScriptURL = function(a) {\n  if (a instanceof goog.html.TrustedResourceUrl && a.constructor === goog.html.TrustedResourceUrl && a.TRUSTED_RESOURCE_URL_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ === goog.html.TrustedResourceUrl.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_) {\n    return a.privateDoNotAccessOrElseTrustedResourceUrlWrappedValue_;\n  }\n  goog.asserts.fail(\"expected object of type TrustedResourceUrl, got '\" + a + \"' of type \" + goog.typeOf(a));\n  return \"type_error:TrustedResourceUrl\";\n};\ngoog.html.TrustedResourceUrl.unwrapTrustedURL = function(a) {\n  return a.trustedURL_ ? a.trustedURL_ : goog.html.TrustedResourceUrl.unwrap(a);\n};\ngoog.html.TrustedResourceUrl.format = function(a, b) {\n  var c = goog.string.Const.unwrap(a);\n  if (!goog.html.TrustedResourceUrl.BASE_URL_.test(c)) {\n    throw Error(\"Invalid TrustedResourceUrl format: \" + c);\n  }\n  var d = c.replace(goog.html.TrustedResourceUrl.FORMAT_MARKER_, function(a, d) {\n    if (!Object.prototype.hasOwnProperty.call(b, d)) {\n      throw Error('Found marker, \"' + d + '\", in format string, \"' + c + '\", but no valid label mapping found in args: ' + JSON.stringify(b));\n    }\n    var e = b[d];\n    return e instanceof goog.string.Const ? goog.string.Const.unwrap(e) : encodeURIComponent(String(e));\n  });\n  return goog.html.TrustedResourceUrl.createTrustedResourceUrlSecurityPrivateDoNotAccessOrElse(d);\n};\ngoog.html.TrustedResourceUrl.FORMAT_MARKER_ = /%{(\\w+)}/g;\ngoog.html.TrustedResourceUrl.BASE_URL_ = /^((https:)?\\/\\/[0-9a-z.:[\\]-]+\\/|\\/[^/\\\\]|[^:/\\\\%]+\\/|[^:/\\\\%]*[?#]|about:blank#)/i;\ngoog.html.TrustedResourceUrl.URL_PARAM_PARSER_ = /^([^?#]*)(\\?[^#]*)?(#[\\s\\S]*)?/;\ngoog.html.TrustedResourceUrl.formatWithParams = function(a, b, c, d) {\n  return goog.html.TrustedResourceUrl.format(a, b).cloneWithParams(c, d);\n};\ngoog.html.TrustedResourceUrl.fromConstant = function(a) {\n  return goog.html.TrustedResourceUrl.createTrustedResourceUrlSecurityPrivateDoNotAccessOrElse(goog.string.Const.unwrap(a));\n};\ngoog.html.TrustedResourceUrl.fromConstants = function(a) {\n  for (var b = \"\", c = 0; c < a.length; c++) {\n    b += goog.string.Const.unwrap(a[c]);\n  }\n  return goog.html.TrustedResourceUrl.createTrustedResourceUrlSecurityPrivateDoNotAccessOrElse(b);\n};\ngoog.html.TrustedResourceUrl.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ = {};\ngoog.html.TrustedResourceUrl.createTrustedResourceUrlSecurityPrivateDoNotAccessOrElse = function(a) {\n  var b = goog.html.trustedtypes.PRIVATE_DO_NOT_ACCESS_OR_ELSE_POLICY ? goog.html.trustedtypes.PRIVATE_DO_NOT_ACCESS_OR_ELSE_POLICY.createScriptURL(a) : a;\n  a = goog.html.trustedtypes.PRIVATE_DO_NOT_ACCESS_OR_ELSE_POLICY ? goog.html.trustedtypes.PRIVATE_DO_NOT_ACCESS_OR_ELSE_POLICY.createURL(a) : null;\n  return new goog.html.TrustedResourceUrl(goog.html.TrustedResourceUrl.CONSTRUCTOR_TOKEN_PRIVATE_, b, a);\n};\ngoog.html.TrustedResourceUrl.stringifyParams_ = function(a, b, c) {\n  if (null == c) {\n    return b;\n  }\n  if (\"string\" === typeof c) {\n    return c ? a + encodeURIComponent(c) : \"\";\n  }\n  for (var d in c) {\n    var e = c[d];\n    e = goog.isArray(e) ? e : [e];\n    for (var f = 0; f < e.length; f++) {\n      var g = e[f];\n      null != g && (b || (b = a), b += (b.length > a.length ? \"&\" : \"\") + encodeURIComponent(d) + \"=\" + encodeURIComponent(String(g)));\n    }\n  }\n  return b;\n};\ngoog.html.TrustedResourceUrl.CONSTRUCTOR_TOKEN_PRIVATE_ = {};\ngoog.string.internal = {};\ngoog.string.internal.startsWith = function(a, b) {\n  return 0 == a.lastIndexOf(b, 0);\n};\ngoog.string.internal.endsWith = function(a, b) {\n  var c = a.length - b.length;\n  return 0 <= c && a.indexOf(b, c) == c;\n};\ngoog.string.internal.caseInsensitiveStartsWith = function(a, b) {\n  return 0 == goog.string.internal.caseInsensitiveCompare(b, a.substr(0, b.length));\n};\ngoog.string.internal.caseInsensitiveEndsWith = function(a, b) {\n  return 0 == goog.string.internal.caseInsensitiveCompare(b, a.substr(a.length - b.length, b.length));\n};\ngoog.string.internal.caseInsensitiveEquals = function(a, b) {\n  return a.toLowerCase() == b.toLowerCase();\n};\ngoog.string.internal.isEmptyOrWhitespace = function(a) {\n  return /^[\\s\\xa0]*$/.test(a);\n};\ngoog.string.internal.trim = goog.TRUSTED_SITE && String.prototype.trim ? function(a) {\n  return a.trim();\n} : function(a) {\n  return /^[\\s\\xa0]*([\\s\\S]*?)[\\s\\xa0]*$/.exec(a)[1];\n};\ngoog.string.internal.caseInsensitiveCompare = function(a, b) {\n  var c = String(a).toLowerCase(), d = String(b).toLowerCase();\n  return c < d ? -1 : c == d ? 0 : 1;\n};\ngoog.string.internal.newLineToBr = function(a, b) {\n  return a.replace(/(\\r\\n|\\r|\\n)/g, b ? \"<br />\" : \"<br>\");\n};\ngoog.string.internal.htmlEscape = function(a, b) {\n  if (b) {\n    a = a.replace(goog.string.internal.AMP_RE_, \"&amp;\").replace(goog.string.internal.LT_RE_, \"&lt;\").replace(goog.string.internal.GT_RE_, \"&gt;\").replace(goog.string.internal.QUOT_RE_, \"&quot;\").replace(goog.string.internal.SINGLE_QUOTE_RE_, \"&#39;\").replace(goog.string.internal.NULL_RE_, \"&#0;\");\n  } else {\n    if (!goog.string.internal.ALL_RE_.test(a)) {\n      return a;\n    }\n    -1 != a.indexOf(\"&\") && (a = a.replace(goog.string.internal.AMP_RE_, \"&amp;\"));\n    -1 != a.indexOf(\"<\") && (a = a.replace(goog.string.internal.LT_RE_, \"&lt;\"));\n    -1 != a.indexOf(\">\") && (a = a.replace(goog.string.internal.GT_RE_, \"&gt;\"));\n    -1 != a.indexOf('\"') && (a = a.replace(goog.string.internal.QUOT_RE_, \"&quot;\"));\n    -1 != a.indexOf(\"'\") && (a = a.replace(goog.string.internal.SINGLE_QUOTE_RE_, \"&#39;\"));\n    -1 != a.indexOf(\"\\x00\") && (a = a.replace(goog.string.internal.NULL_RE_, \"&#0;\"));\n  }\n  return a;\n};\ngoog.string.internal.AMP_RE_ = /&/g;\ngoog.string.internal.LT_RE_ = /</g;\ngoog.string.internal.GT_RE_ = />/g;\ngoog.string.internal.QUOT_RE_ = /\"/g;\ngoog.string.internal.SINGLE_QUOTE_RE_ = /'/g;\ngoog.string.internal.NULL_RE_ = /\\x00/g;\ngoog.string.internal.ALL_RE_ = /[\\x00&<>\"']/;\ngoog.string.internal.whitespaceEscape = function(a, b) {\n  return goog.string.internal.newLineToBr(a.replace(/  /g, \" &#160;\"), b);\n};\ngoog.string.internal.contains = function(a, b) {\n  return -1 != a.indexOf(b);\n};\ngoog.string.internal.caseInsensitiveContains = function(a, b) {\n  return goog.string.internal.contains(a.toLowerCase(), b.toLowerCase());\n};\ngoog.string.internal.compareVersions = function(a, b) {\n  for (var c = 0, d = goog.string.internal.trim(String(a)).split(\".\"), e = goog.string.internal.trim(String(b)).split(\".\"), f = Math.max(d.length, e.length), g = 0; 0 == c && g < f; g++) {\n    var h = d[g] || \"\", k = e[g] || \"\";\n    do {\n      h = /(\\d*)(\\D*)(.*)/.exec(h) || [\"\", \"\", \"\", \"\"];\n      k = /(\\d*)(\\D*)(.*)/.exec(k) || [\"\", \"\", \"\", \"\"];\n      if (0 == h[0].length && 0 == k[0].length) {\n        break;\n      }\n      c = 0 == h[1].length ? 0 : parseInt(h[1], 10);\n      var l = 0 == k[1].length ? 0 : parseInt(k[1], 10);\n      c = goog.string.internal.compareElements_(c, l) || goog.string.internal.compareElements_(0 == h[2].length, 0 == k[2].length) || goog.string.internal.compareElements_(h[2], k[2]);\n      h = h[3];\n      k = k[3];\n    } while (0 == c);\n  }\n  return c;\n};\ngoog.string.internal.compareElements_ = function(a, b) {\n  return a < b ? -1 : a > b ? 1 : 0;\n};\ngoog.html.SafeUrl = function(a, b) {\n  this.privateDoNotAccessOrElseSafeUrlWrappedValue_ = a === goog.html.SafeUrl.CONSTRUCTOR_TOKEN_PRIVATE_ && b || \"\";\n  this.SAFE_URL_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ = goog.html.SafeUrl.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_;\n};\ngoog.html.SafeUrl.INNOCUOUS_STRING = \"about:invalid#zClosurez\";\ngoog.html.SafeUrl.prototype.implementsGoogStringTypedString = !0;\ngoog.html.SafeUrl.prototype.getTypedStringValue = function() {\n  return this.privateDoNotAccessOrElseSafeUrlWrappedValue_.toString();\n};\ngoog.html.SafeUrl.prototype.implementsGoogI18nBidiDirectionalString = !0;\ngoog.html.SafeUrl.prototype.getDirection = function() {\n  return goog.i18n.bidi.Dir.LTR;\n};\ngoog.DEBUG && (goog.html.SafeUrl.prototype.toString = function() {\n  return \"SafeUrl{\" + this.privateDoNotAccessOrElseSafeUrlWrappedValue_ + \"}\";\n});\ngoog.html.SafeUrl.unwrap = function(a) {\n  return goog.html.SafeUrl.unwrapTrustedURL(a).toString();\n};\ngoog.html.SafeUrl.unwrapTrustedURL = function(a) {\n  if (a instanceof goog.html.SafeUrl && a.constructor === goog.html.SafeUrl && a.SAFE_URL_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ === goog.html.SafeUrl.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_) {\n    return a.privateDoNotAccessOrElseSafeUrlWrappedValue_;\n  }\n  goog.asserts.fail(\"expected object of type SafeUrl, got '\" + a + \"' of type \" + goog.typeOf(a));\n  return \"type_error:SafeUrl\";\n};\ngoog.html.SafeUrl.fromConstant = function(a) {\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(goog.string.Const.unwrap(a));\n};\ngoog.html.SAFE_MIME_TYPE_PATTERN_ = /^(?:audio\\/(?:3gpp2|3gpp|aac|L16|midi|mp3|mp4|mpeg|oga|ogg|opus|x-m4a|x-wav|wav|webm)|image\\/(?:bmp|gif|jpeg|jpg|png|tiff|webp|x-icon)|text\\/csv|video\\/(?:mpeg|mp4|ogg|webm|quicktime))(?:;\\w+=(?:\\w+|\"[\\w;=]+\"))*$/i;\ngoog.html.SafeUrl.isSafeMimeType = function(a) {\n  return goog.html.SAFE_MIME_TYPE_PATTERN_.test(a);\n};\ngoog.html.SafeUrl.fromBlob = function(a) {\n  a = goog.html.SAFE_MIME_TYPE_PATTERN_.test(a.type) ? goog.fs.url.createObjectUrl(a) : goog.html.SafeUrl.INNOCUOUS_STRING;\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(a);\n};\ngoog.html.DATA_URL_PATTERN_ = /^data:([^,]*);base64,[a-z0-9+\\/]+=*$/i;\ngoog.html.SafeUrl.fromDataUrl = function(a) {\n  a = a.replace(/(%0A|%0D)/g, \"\");\n  var b = a.match(goog.html.DATA_URL_PATTERN_);\n  b = b && goog.html.SAFE_MIME_TYPE_PATTERN_.test(b[1]);\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(b ? a : goog.html.SafeUrl.INNOCUOUS_STRING);\n};\ngoog.html.SafeUrl.fromTelUrl = function(a) {\n  goog.string.internal.caseInsensitiveStartsWith(a, \"tel:\") || (a = goog.html.SafeUrl.INNOCUOUS_STRING);\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(a);\n};\ngoog.html.SIP_URL_PATTERN_ = /^sip[s]?:[+a-z0-9_.!$%&'*\\/=^`{|}~-]+@([a-z0-9-]+\\.)+[a-z0-9]{2,63}$/i;\ngoog.html.SafeUrl.fromSipUrl = function(a) {\n  goog.html.SIP_URL_PATTERN_.test(decodeURIComponent(a)) || (a = goog.html.SafeUrl.INNOCUOUS_STRING);\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(a);\n};\ngoog.html.SafeUrl.fromFacebookMessengerUrl = function(a) {\n  goog.string.internal.caseInsensitiveStartsWith(a, \"fb-messenger://share\") || (a = goog.html.SafeUrl.INNOCUOUS_STRING);\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(a);\n};\ngoog.html.SafeUrl.fromWhatsAppUrl = function(a) {\n  goog.string.internal.caseInsensitiveStartsWith(a, \"whatsapp://send\") || (a = goog.html.SafeUrl.INNOCUOUS_STRING);\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(a);\n};\ngoog.html.SafeUrl.fromSmsUrl = function(a) {\n  goog.string.internal.caseInsensitiveStartsWith(a, \"sms:\") && goog.html.SafeUrl.isSmsUrlBodyValid_(a) || (a = goog.html.SafeUrl.INNOCUOUS_STRING);\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(a);\n};\ngoog.html.SafeUrl.isSmsUrlBodyValid_ = function(a) {\n  var b = a.indexOf(\"#\");\n  0 < b && (a = a.substring(0, b));\n  b = a.match(/[?&]body=/gi);\n  if (!b) {\n    return !0;\n  }\n  if (1 < b.length) {\n    return !1;\n  }\n  a = a.match(/[?&]body=([^&]*)/)[1];\n  if (!a) {\n    return !0;\n  }\n  try {\n    decodeURIComponent(a);\n  } catch (c) {\n    return !1;\n  }\n  return /^(?:[a-z0-9\\-_.~]|%[0-9a-f]{2})+$/i.test(a);\n};\ngoog.html.SafeUrl.fromSshUrl = function(a) {\n  goog.string.internal.caseInsensitiveStartsWith(a, \"ssh://\") || (a = goog.html.SafeUrl.INNOCUOUS_STRING);\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(a);\n};\ngoog.html.SafeUrl.sanitizeChromeExtensionUrl = function(a, b) {\n  return goog.html.SafeUrl.sanitizeExtensionUrl_(/^chrome-extension:\\/\\/([^\\/]+)\\//, a, b);\n};\ngoog.html.SafeUrl.sanitizeFirefoxExtensionUrl = function(a, b) {\n  return goog.html.SafeUrl.sanitizeExtensionUrl_(/^moz-extension:\\/\\/([^\\/]+)\\//, a, b);\n};\ngoog.html.SafeUrl.sanitizeEdgeExtensionUrl = function(a, b) {\n  return goog.html.SafeUrl.sanitizeExtensionUrl_(/^ms-browser-extension:\\/\\/([^\\/]+)\\//, a, b);\n};\ngoog.html.SafeUrl.sanitizeExtensionUrl_ = function(a, b, c) {\n  (a = a.exec(b)) ? (a = a[1], -1 == (c instanceof goog.string.Const ? [goog.string.Const.unwrap(c)] : c.map(function(a) {\n    return goog.string.Const.unwrap(a);\n  })).indexOf(a) && (b = goog.html.SafeUrl.INNOCUOUS_STRING)) : b = goog.html.SafeUrl.INNOCUOUS_STRING;\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(b);\n};\ngoog.html.SafeUrl.fromTrustedResourceUrl = function(a) {\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(goog.html.TrustedResourceUrl.unwrap(a));\n};\ngoog.html.SAFE_URL_PATTERN_ = /^(?:(?:https?|mailto|ftp):|[^:/?#]*(?:[/?#]|$))/i;\ngoog.html.SafeUrl.SAFE_URL_PATTERN = goog.html.SAFE_URL_PATTERN_;\ngoog.html.SafeUrl.sanitize = function(a) {\n  if (a instanceof goog.html.SafeUrl) {\n    return a;\n  }\n  a = \"object\" == typeof a && a.implementsGoogStringTypedString ? a.getTypedStringValue() : String(a);\n  goog.html.SAFE_URL_PATTERN_.test(a) || (a = goog.html.SafeUrl.INNOCUOUS_STRING);\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(a);\n};\ngoog.html.SafeUrl.sanitizeAssertUnchanged = function(a, b) {\n  if (a instanceof goog.html.SafeUrl) {\n    return a;\n  }\n  a = \"object\" == typeof a && a.implementsGoogStringTypedString ? a.getTypedStringValue() : String(a);\n  if (b && /^data:/i.test(a)) {\n    var c = goog.html.SafeUrl.fromDataUrl(a);\n    if (c.getTypedStringValue() == a) {\n      return c;\n    }\n  }\n  goog.asserts.assert(goog.html.SAFE_URL_PATTERN_.test(a), \"%s does not match the safe URL pattern\", a) || (a = goog.html.SafeUrl.INNOCUOUS_STRING);\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(a);\n};\ngoog.html.SafeUrl.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ = {};\ngoog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse = function(a) {\n  return new goog.html.SafeUrl(goog.html.SafeUrl.CONSTRUCTOR_TOKEN_PRIVATE_, goog.html.trustedtypes.PRIVATE_DO_NOT_ACCESS_OR_ELSE_POLICY ? goog.html.trustedtypes.PRIVATE_DO_NOT_ACCESS_OR_ELSE_POLICY.createURL(a) : a);\n};\ngoog.html.SafeUrl.ABOUT_BLANK = goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(\"about:blank\");\ngoog.html.SafeUrl.CONSTRUCTOR_TOKEN_PRIVATE_ = {};\ngoog.html.SafeStyle = function() {\n  this.privateDoNotAccessOrElseSafeStyleWrappedValue_ = \"\";\n  this.SAFE_STYLE_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ = goog.html.SafeStyle.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_;\n};\ngoog.html.SafeStyle.prototype.implementsGoogStringTypedString = !0;\ngoog.html.SafeStyle.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ = {};\ngoog.html.SafeStyle.fromConstant = function(a) {\n  a = goog.string.Const.unwrap(a);\n  if (0 === a.length) {\n    return goog.html.SafeStyle.EMPTY;\n  }\n  goog.asserts.assert(goog.string.internal.endsWith(a, \";\"), \"Last character of style string is not ';': \" + a);\n  goog.asserts.assert(goog.string.internal.contains(a, \":\"), \"Style string must contain at least one ':', to specify a \\\"name: value\\\" pair: \" + a);\n  return goog.html.SafeStyle.createSafeStyleSecurityPrivateDoNotAccessOrElse(a);\n};\ngoog.html.SafeStyle.prototype.getTypedStringValue = function() {\n  return this.privateDoNotAccessOrElseSafeStyleWrappedValue_;\n};\ngoog.DEBUG && (goog.html.SafeStyle.prototype.toString = function() {\n  return \"SafeStyle{\" + this.privateDoNotAccessOrElseSafeStyleWrappedValue_ + \"}\";\n});\ngoog.html.SafeStyle.unwrap = function(a) {\n  if (a instanceof goog.html.SafeStyle && a.constructor === goog.html.SafeStyle && a.SAFE_STYLE_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ === goog.html.SafeStyle.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_) {\n    return a.privateDoNotAccessOrElseSafeStyleWrappedValue_;\n  }\n  goog.asserts.fail(\"expected object of type SafeStyle, got '\" + a + \"' of type \" + goog.typeOf(a));\n  return \"type_error:SafeStyle\";\n};\ngoog.html.SafeStyle.createSafeStyleSecurityPrivateDoNotAccessOrElse = function(a) {\n  return (new goog.html.SafeStyle).initSecurityPrivateDoNotAccessOrElse_(a);\n};\ngoog.html.SafeStyle.prototype.initSecurityPrivateDoNotAccessOrElse_ = function(a) {\n  this.privateDoNotAccessOrElseSafeStyleWrappedValue_ = a;\n  return this;\n};\ngoog.html.SafeStyle.EMPTY = goog.html.SafeStyle.createSafeStyleSecurityPrivateDoNotAccessOrElse(\"\");\ngoog.html.SafeStyle.INNOCUOUS_STRING = \"zClosurez\";\ngoog.html.SafeStyle.create = function(a) {\n  var b = \"\", c;\n  for (c in a) {\n    if (!/^[-_a-zA-Z0-9]+$/.test(c)) {\n      throw Error(\"Name allows only [-_a-zA-Z0-9], got: \" + c);\n    }\n    var d = a[c];\n    null != d && (d = goog.isArray(d) ? goog.array.map(d, goog.html.SafeStyle.sanitizePropertyValue_).join(\" \") : goog.html.SafeStyle.sanitizePropertyValue_(d), b += c + \":\" + d + \";\");\n  }\n  return b ? goog.html.SafeStyle.createSafeStyleSecurityPrivateDoNotAccessOrElse(b) : goog.html.SafeStyle.EMPTY;\n};\ngoog.html.SafeStyle.sanitizePropertyValue_ = function(a) {\n  if (a instanceof goog.html.SafeUrl) {\n    return 'url(\"' + goog.html.SafeUrl.unwrap(a).replace(/</g, \"%3c\").replace(/[\\\\\"]/g, \"\\\\$&\") + '\")';\n  }\n  a = a instanceof goog.string.Const ? goog.string.Const.unwrap(a) : goog.html.SafeStyle.sanitizePropertyValueString_(String(a));\n  if (/[{;}]/.test(a)) {\n    throw new goog.asserts.AssertionError(\"Value does not allow [{;}], got: %s.\", [a]);\n  }\n  return a;\n};\ngoog.html.SafeStyle.sanitizePropertyValueString_ = function(a) {\n  var b = a.replace(goog.html.SafeStyle.FUNCTIONS_RE_, \"$1\").replace(goog.html.SafeStyle.FUNCTIONS_RE_, \"$1\").replace(goog.html.SafeStyle.URL_RE_, \"url\");\n  if (goog.html.SafeStyle.VALUE_RE_.test(b)) {\n    if (goog.html.SafeStyle.COMMENT_RE_.test(a)) {\n      return goog.asserts.fail(\"String value disallows comments, got: \" + a), goog.html.SafeStyle.INNOCUOUS_STRING;\n    }\n    if (!goog.html.SafeStyle.hasBalancedQuotes_(a)) {\n      return goog.asserts.fail(\"String value requires balanced quotes, got: \" + a), goog.html.SafeStyle.INNOCUOUS_STRING;\n    }\n    if (!goog.html.SafeStyle.hasBalancedSquareBrackets_(a)) {\n      return goog.asserts.fail(\"String value requires balanced square brackets and one identifier per pair of brackets, got: \" + a), goog.html.SafeStyle.INNOCUOUS_STRING;\n    }\n  } else {\n    return goog.asserts.fail(\"String value allows only \" + goog.html.SafeStyle.VALUE_ALLOWED_CHARS_ + \" and simple functions, got: \" + a), goog.html.SafeStyle.INNOCUOUS_STRING;\n  }\n  return goog.html.SafeStyle.sanitizeUrl_(a);\n};\ngoog.html.SafeStyle.hasBalancedQuotes_ = function(a) {\n  for (var b = !0, c = !0, d = 0; d < a.length; d++) {\n    var e = a.charAt(d);\n    \"'\" == e && c ? b = !b : '\"' == e && b && (c = !c);\n  }\n  return b && c;\n};\ngoog.html.SafeStyle.hasBalancedSquareBrackets_ = function(a) {\n  for (var b = !0, c = /^[-_a-zA-Z0-9]$/, d = 0; d < a.length; d++) {\n    var e = a.charAt(d);\n    if (\"]\" == e) {\n      if (b) {\n        return !1;\n      }\n      b = !0;\n    } else {\n      if (\"[\" == e) {\n        if (!b) {\n          return !1;\n        }\n        b = !1;\n      } else {\n        if (!b && !c.test(e)) {\n          return !1;\n        }\n      }\n    }\n  }\n  return b;\n};\ngoog.html.SafeStyle.VALUE_ALLOWED_CHARS_ = \"[-,.\\\"'%_!# a-zA-Z0-9\\\\[\\\\]]\";\ngoog.html.SafeStyle.VALUE_RE_ = new RegExp(\"^\" + goog.html.SafeStyle.VALUE_ALLOWED_CHARS_ + \"+$\");\ngoog.html.SafeStyle.URL_RE_ = RegExp(\"\\\\b(url\\\\([ \\t\\n]*)('[ -&(-\\\\[\\\\]-~]*'|\\\"[ !#-\\\\[\\\\]-~]*\\\"|[!#-&*-\\\\[\\\\]-~]*)([ \\t\\n]*\\\\))\", \"g\");\ngoog.html.SafeStyle.ALLOWED_FUNCTIONS_ = \"calc cubic-bezier fit-content hsl hsla matrix minmax repeat rgb rgba (rotate|scale|translate)(X|Y|Z|3d)?\".split(\" \");\ngoog.html.SafeStyle.FUNCTIONS_RE_ = new RegExp(\"\\\\b(\" + goog.html.SafeStyle.ALLOWED_FUNCTIONS_.join(\"|\") + \")\\\\([-+*/0-9a-z.%\\\\[\\\\], ]+\\\\)\", \"g\");\ngoog.html.SafeStyle.COMMENT_RE_ = /\\/\\*/;\ngoog.html.SafeStyle.sanitizeUrl_ = function(a) {\n  return a.replace(goog.html.SafeStyle.URL_RE_, function(a, c, d, e) {\n    var b = \"\";\n    d = d.replace(/^(['\"])(.*)\\1$/, function(a, c, d) {\n      b = c;\n      return d;\n    });\n    a = goog.html.SafeUrl.sanitize(d).getTypedStringValue();\n    return c + b + a + b + e;\n  });\n};\ngoog.html.SafeStyle.concat = function(a) {\n  var b = \"\", c = function(a) {\n    goog.isArray(a) ? goog.array.forEach(a, c) : b += goog.html.SafeStyle.unwrap(a);\n  };\n  goog.array.forEach(arguments, c);\n  return b ? goog.html.SafeStyle.createSafeStyleSecurityPrivateDoNotAccessOrElse(b) : goog.html.SafeStyle.EMPTY;\n};\ngoog.html.SafeStyleSheet = function() {\n  this.privateDoNotAccessOrElseSafeStyleSheetWrappedValue_ = \"\";\n  this.SAFE_STYLE_SHEET_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ = goog.html.SafeStyleSheet.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_;\n};\ngoog.html.SafeStyleSheet.prototype.implementsGoogStringTypedString = !0;\ngoog.html.SafeStyleSheet.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ = {};\ngoog.html.SafeStyleSheet.createRule = function(a, b) {\n  if (goog.string.internal.contains(a, \"<\")) {\n    throw Error(\"Selector does not allow '<', got: \" + a);\n  }\n  var c = a.replace(/('|\")((?!\\1)[^\\r\\n\\f\\\\]|\\\\[\\s\\S])*\\1/g, \"\");\n  if (!/^[-_a-zA-Z0-9#.:* ,>+~[\\]()=^$|]+$/.test(c)) {\n    throw Error(\"Selector allows only [-_a-zA-Z0-9#.:* ,>+~[\\\\]()=^$|] and strings, got: \" + a);\n  }\n  if (!goog.html.SafeStyleSheet.hasBalancedBrackets_(c)) {\n    throw Error(\"() and [] in selector must be balanced, got: \" + a);\n  }\n  b instanceof goog.html.SafeStyle || (b = goog.html.SafeStyle.create(b));\n  c = a + \"{\" + goog.html.SafeStyle.unwrap(b).replace(/</g, \"\\\\3C \") + \"}\";\n  return goog.html.SafeStyleSheet.createSafeStyleSheetSecurityPrivateDoNotAccessOrElse(c);\n};\ngoog.html.SafeStyleSheet.hasBalancedBrackets_ = function(a) {\n  for (var b = {\"(\":\")\", \"[\":\"]\"}, c = [], d = 0; d < a.length; d++) {\n    var e = a[d];\n    if (b[e]) {\n      c.push(b[e]);\n    } else {\n      if (goog.object.contains(b, e) && c.pop() != e) {\n        return !1;\n      }\n    }\n  }\n  return 0 == c.length;\n};\ngoog.html.SafeStyleSheet.concat = function(a) {\n  var b = \"\", c = function(a) {\n    goog.isArray(a) ? goog.array.forEach(a, c) : b += goog.html.SafeStyleSheet.unwrap(a);\n  };\n  goog.array.forEach(arguments, c);\n  return goog.html.SafeStyleSheet.createSafeStyleSheetSecurityPrivateDoNotAccessOrElse(b);\n};\ngoog.html.SafeStyleSheet.fromConstant = function(a) {\n  a = goog.string.Const.unwrap(a);\n  if (0 === a.length) {\n    return goog.html.SafeStyleSheet.EMPTY;\n  }\n  goog.asserts.assert(!goog.string.internal.contains(a, \"<\"), \"Forbidden '<' character in style sheet string: \" + a);\n  return goog.html.SafeStyleSheet.createSafeStyleSheetSecurityPrivateDoNotAccessOrElse(a);\n};\ngoog.html.SafeStyleSheet.prototype.getTypedStringValue = function() {\n  return this.privateDoNotAccessOrElseSafeStyleSheetWrappedValue_;\n};\ngoog.DEBUG && (goog.html.SafeStyleSheet.prototype.toString = function() {\n  return \"SafeStyleSheet{\" + this.privateDoNotAccessOrElseSafeStyleSheetWrappedValue_ + \"}\";\n});\ngoog.html.SafeStyleSheet.unwrap = function(a) {\n  if (a instanceof goog.html.SafeStyleSheet && a.constructor === goog.html.SafeStyleSheet && a.SAFE_STYLE_SHEET_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ === goog.html.SafeStyleSheet.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_) {\n    return a.privateDoNotAccessOrElseSafeStyleSheetWrappedValue_;\n  }\n  goog.asserts.fail(\"expected object of type SafeStyleSheet, got '\" + a + \"' of type \" + goog.typeOf(a));\n  return \"type_error:SafeStyleSheet\";\n};\ngoog.html.SafeStyleSheet.createSafeStyleSheetSecurityPrivateDoNotAccessOrElse = function(a) {\n  return (new goog.html.SafeStyleSheet).initSecurityPrivateDoNotAccessOrElse_(a);\n};\ngoog.html.SafeStyleSheet.prototype.initSecurityPrivateDoNotAccessOrElse_ = function(a) {\n  this.privateDoNotAccessOrElseSafeStyleSheetWrappedValue_ = a;\n  return this;\n};\ngoog.html.SafeStyleSheet.EMPTY = goog.html.SafeStyleSheet.createSafeStyleSheetSecurityPrivateDoNotAccessOrElse(\"\");\ngoog.labs = {};\ngoog.labs.userAgent = {};\ngoog.labs.userAgent.util = {};\ngoog.labs.userAgent.util.getNativeUserAgentString_ = function() {\n  var a = goog.labs.userAgent.util.getNavigator_();\n  return a && (a = a.userAgent) ? a : \"\";\n};\ngoog.labs.userAgent.util.getNavigator_ = function() {\n  return goog.global.navigator;\n};\ngoog.labs.userAgent.util.userAgent_ = goog.labs.userAgent.util.getNativeUserAgentString_();\ngoog.labs.userAgent.util.setUserAgent = function(a) {\n  goog.labs.userAgent.util.userAgent_ = a || goog.labs.userAgent.util.getNativeUserAgentString_();\n};\ngoog.labs.userAgent.util.getUserAgent = function() {\n  return goog.labs.userAgent.util.userAgent_;\n};\ngoog.labs.userAgent.util.matchUserAgent = function(a) {\n  var b = goog.labs.userAgent.util.getUserAgent();\n  return goog.string.internal.contains(b, a);\n};\ngoog.labs.userAgent.util.matchUserAgentIgnoreCase = function(a) {\n  var b = goog.labs.userAgent.util.getUserAgent();\n  return goog.string.internal.caseInsensitiveContains(b, a);\n};\ngoog.labs.userAgent.util.extractVersionTuples = function(a) {\n  for (var b = RegExp(\"(\\\\w[\\\\w ]+)/([^\\\\s]+)\\\\s*(?:\\\\((.*?)\\\\))?\", \"g\"), c = [], d; d = b.exec(a);) {\n    c.push([d[1], d[2], d[3] || void 0]);\n  }\n  return c;\n};\ngoog.labs.userAgent.browser = {};\ngoog.labs.userAgent.browser.matchOpera_ = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Opera\");\n};\ngoog.labs.userAgent.browser.matchIE_ = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Trident\") || goog.labs.userAgent.util.matchUserAgent(\"MSIE\");\n};\ngoog.labs.userAgent.browser.matchEdgeHtml_ = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Edge\");\n};\ngoog.labs.userAgent.browser.matchEdgeChromium_ = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Edg/\");\n};\ngoog.labs.userAgent.browser.matchOperaChromium_ = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"OPR\");\n};\ngoog.labs.userAgent.browser.matchFirefox_ = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Firefox\") || goog.labs.userAgent.util.matchUserAgent(\"FxiOS\");\n};\ngoog.labs.userAgent.browser.matchSafari_ = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Safari\") && !(goog.labs.userAgent.browser.matchChrome_() || goog.labs.userAgent.browser.matchCoast_() || goog.labs.userAgent.browser.matchOpera_() || goog.labs.userAgent.browser.matchEdgeHtml_() || goog.labs.userAgent.browser.matchEdgeChromium_() || goog.labs.userAgent.browser.matchOperaChromium_() || goog.labs.userAgent.browser.matchFirefox_() || goog.labs.userAgent.browser.isSilk() || goog.labs.userAgent.util.matchUserAgent(\"Android\"));\n};\ngoog.labs.userAgent.browser.matchCoast_ = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Coast\");\n};\ngoog.labs.userAgent.browser.matchIosWebview_ = function() {\n  return (goog.labs.userAgent.util.matchUserAgent(\"iPad\") || goog.labs.userAgent.util.matchUserAgent(\"iPhone\")) && !goog.labs.userAgent.browser.matchSafari_() && !goog.labs.userAgent.browser.matchChrome_() && !goog.labs.userAgent.browser.matchCoast_() && !goog.labs.userAgent.browser.matchFirefox_() && goog.labs.userAgent.util.matchUserAgent(\"AppleWebKit\");\n};\ngoog.labs.userAgent.browser.matchChrome_ = function() {\n  return (goog.labs.userAgent.util.matchUserAgent(\"Chrome\") || goog.labs.userAgent.util.matchUserAgent(\"CriOS\")) && !goog.labs.userAgent.browser.matchEdgeHtml_();\n};\ngoog.labs.userAgent.browser.matchAndroidBrowser_ = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Android\") && !(goog.labs.userAgent.browser.isChrome() || goog.labs.userAgent.browser.isFirefox() || goog.labs.userAgent.browser.isOpera() || goog.labs.userAgent.browser.isSilk());\n};\ngoog.labs.userAgent.browser.isOpera = goog.labs.userAgent.browser.matchOpera_;\ngoog.labs.userAgent.browser.isIE = goog.labs.userAgent.browser.matchIE_;\ngoog.labs.userAgent.browser.isEdge = goog.labs.userAgent.browser.matchEdgeHtml_;\ngoog.labs.userAgent.browser.isEdgeChromium = goog.labs.userAgent.browser.matchEdgeChromium_;\ngoog.labs.userAgent.browser.isOperaChromium = goog.labs.userAgent.browser.matchOperaChromium_;\ngoog.labs.userAgent.browser.isFirefox = goog.labs.userAgent.browser.matchFirefox_;\ngoog.labs.userAgent.browser.isSafari = goog.labs.userAgent.browser.matchSafari_;\ngoog.labs.userAgent.browser.isCoast = goog.labs.userAgent.browser.matchCoast_;\ngoog.labs.userAgent.browser.isIosWebview = goog.labs.userAgent.browser.matchIosWebview_;\ngoog.labs.userAgent.browser.isChrome = goog.labs.userAgent.browser.matchChrome_;\ngoog.labs.userAgent.browser.isAndroidBrowser = goog.labs.userAgent.browser.matchAndroidBrowser_;\ngoog.labs.userAgent.browser.isSilk = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Silk\");\n};\ngoog.labs.userAgent.browser.getVersion = function() {\n  function a(a) {\n    a = goog.array.find(a, d);\n    return c[a] || \"\";\n  }\n  var b = goog.labs.userAgent.util.getUserAgent();\n  if (goog.labs.userAgent.browser.isIE()) {\n    return goog.labs.userAgent.browser.getIEVersion_(b);\n  }\n  b = goog.labs.userAgent.util.extractVersionTuples(b);\n  var c = {};\n  goog.array.forEach(b, function(a) {\n    c[a[0]] = a[1];\n  });\n  var d = goog.partial(goog.object.containsKey, c);\n  return goog.labs.userAgent.browser.isOpera() ? a([\"Version\", \"Opera\"]) : goog.labs.userAgent.browser.isEdge() ? a([\"Edge\"]) : goog.labs.userAgent.browser.isEdgeChromium() ? a([\"Edg\"]) : goog.labs.userAgent.browser.isChrome() ? a([\"Chrome\", \"CriOS\"]) : (b = b[2]) && b[1] || \"\";\n};\ngoog.labs.userAgent.browser.isVersionOrHigher = function(a) {\n  return 0 <= goog.string.internal.compareVersions(goog.labs.userAgent.browser.getVersion(), a);\n};\ngoog.labs.userAgent.browser.getIEVersion_ = function(a) {\n  var b = /rv: *([\\d\\.]*)/.exec(a);\n  if (b && b[1]) {\n    return b[1];\n  }\n  b = \"\";\n  var c = /MSIE +([\\d\\.]+)/.exec(a);\n  if (c && c[1]) {\n    if (a = /Trident\\/(\\d.\\d)/.exec(a), \"7.0\" == c[1]) {\n      if (a && a[1]) {\n        switch(a[1]) {\n          case \"4.0\":\n            b = \"8.0\";\n            break;\n          case \"5.0\":\n            b = \"9.0\";\n            break;\n          case \"6.0\":\n            b = \"10.0\";\n            break;\n          case \"7.0\":\n            b = \"11.0\";\n        }\n      } else {\n        b = \"7.0\";\n      }\n    } else {\n      b = c[1];\n    }\n  }\n  return b;\n};\ngoog.html.SafeHtml = function() {\n  this.privateDoNotAccessOrElseSafeHtmlWrappedValue_ = \"\";\n  this.SAFE_HTML_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ = goog.html.SafeHtml.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_;\n  this.dir_ = null;\n};\ngoog.html.SafeHtml.ENABLE_ERROR_MESSAGES = goog.DEBUG;\ngoog.html.SafeHtml.SUPPORT_STYLE_ATTRIBUTE = !0;\ngoog.html.SafeHtml.prototype.implementsGoogI18nBidiDirectionalString = !0;\ngoog.html.SafeHtml.prototype.getDirection = function() {\n  return this.dir_;\n};\ngoog.html.SafeHtml.prototype.implementsGoogStringTypedString = !0;\ngoog.html.SafeHtml.prototype.getTypedStringValue = function() {\n  return this.privateDoNotAccessOrElseSafeHtmlWrappedValue_.toString();\n};\ngoog.DEBUG && (goog.html.SafeHtml.prototype.toString = function() {\n  return \"SafeHtml{\" + this.privateDoNotAccessOrElseSafeHtmlWrappedValue_ + \"}\";\n});\ngoog.html.SafeHtml.unwrap = function(a) {\n  return goog.html.SafeHtml.unwrapTrustedHTML(a).toString();\n};\ngoog.html.SafeHtml.unwrapTrustedHTML = function(a) {\n  if (a instanceof goog.html.SafeHtml && a.constructor === goog.html.SafeHtml && a.SAFE_HTML_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ === goog.html.SafeHtml.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_) {\n    return a.privateDoNotAccessOrElseSafeHtmlWrappedValue_;\n  }\n  goog.asserts.fail(\"expected object of type SafeHtml, got '\" + a + \"' of type \" + goog.typeOf(a));\n  return \"type_error:SafeHtml\";\n};\ngoog.html.SafeHtml.htmlEscape = function(a) {\n  if (a instanceof goog.html.SafeHtml) {\n    return a;\n  }\n  var b = \"object\" == typeof a, c = null;\n  b && a.implementsGoogI18nBidiDirectionalString && (c = a.getDirection());\n  a = b && a.implementsGoogStringTypedString ? a.getTypedStringValue() : String(a);\n  return goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(goog.string.internal.htmlEscape(a), c);\n};\ngoog.html.SafeHtml.htmlEscapePreservingNewlines = function(a) {\n  if (a instanceof goog.html.SafeHtml) {\n    return a;\n  }\n  a = goog.html.SafeHtml.htmlEscape(a);\n  return goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(goog.string.internal.newLineToBr(goog.html.SafeHtml.unwrap(a)), a.getDirection());\n};\ngoog.html.SafeHtml.htmlEscapePreservingNewlinesAndSpaces = function(a) {\n  if (a instanceof goog.html.SafeHtml) {\n    return a;\n  }\n  a = goog.html.SafeHtml.htmlEscape(a);\n  return goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(goog.string.internal.whitespaceEscape(goog.html.SafeHtml.unwrap(a)), a.getDirection());\n};\ngoog.html.SafeHtml.from = goog.html.SafeHtml.htmlEscape;\ngoog.html.SafeHtml.VALID_NAMES_IN_TAG_ = /^[a-zA-Z0-9-]+$/;\ngoog.html.SafeHtml.URL_ATTRIBUTES_ = {action:!0, cite:!0, data:!0, formaction:!0, href:!0, manifest:!0, poster:!0, src:!0};\ngoog.html.SafeHtml.NOT_ALLOWED_TAG_NAMES_ = {APPLET:!0, BASE:!0, EMBED:!0, IFRAME:!0, LINK:!0, MATH:!0, META:!0, OBJECT:!0, SCRIPT:!0, STYLE:!0, SVG:!0, TEMPLATE:!0};\ngoog.html.SafeHtml.create = function(a, b, c) {\n  goog.html.SafeHtml.verifyTagName(String(a));\n  return goog.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse(String(a), b, c);\n};\ngoog.html.SafeHtml.verifyTagName = function(a) {\n  if (!goog.html.SafeHtml.VALID_NAMES_IN_TAG_.test(a)) {\n    throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES ? \"Invalid tag name <\" + a + \">.\" : \"\");\n  }\n  if (a.toUpperCase() in goog.html.SafeHtml.NOT_ALLOWED_TAG_NAMES_) {\n    throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES ? \"Tag name <\" + a + \"> is not allowed for SafeHtml.\" : \"\");\n  }\n};\ngoog.html.SafeHtml.createIframe = function(a, b, c, d) {\n  a && goog.html.TrustedResourceUrl.unwrap(a);\n  var e = {};\n  e.src = a || null;\n  e.srcdoc = b && goog.html.SafeHtml.unwrap(b);\n  a = goog.html.SafeHtml.combineAttributes(e, {sandbox:\"\"}, c);\n  return goog.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse(\"iframe\", a, d);\n};\ngoog.html.SafeHtml.createSandboxIframe = function(a, b, c, d) {\n  if (!goog.html.SafeHtml.canUseSandboxIframe()) {\n    throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES ? \"The browser does not support sandboxed iframes.\" : \"\");\n  }\n  var e = {};\n  e.src = a ? goog.html.SafeUrl.unwrap(goog.html.SafeUrl.sanitize(a)) : null;\n  e.srcdoc = b || null;\n  e.sandbox = \"\";\n  a = goog.html.SafeHtml.combineAttributes(e, {}, c);\n  return goog.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse(\"iframe\", a, d);\n};\ngoog.html.SafeHtml.canUseSandboxIframe = function() {\n  return goog.global.HTMLIFrameElement && \"sandbox\" in goog.global.HTMLIFrameElement.prototype;\n};\ngoog.html.SafeHtml.createScriptSrc = function(a, b) {\n  goog.html.TrustedResourceUrl.unwrap(a);\n  var c = goog.html.SafeHtml.combineAttributes({src:a}, {}, b);\n  return goog.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse(\"script\", c);\n};\ngoog.html.SafeHtml.createScript = function(a, b) {\n  for (var c in b) {\n    var d = c.toLowerCase();\n    if (\"language\" == d || \"src\" == d || \"text\" == d || \"type\" == d) {\n      throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES ? 'Cannot set \"' + d + '\" attribute' : \"\");\n    }\n  }\n  c = \"\";\n  a = goog.array.concat(a);\n  for (d = 0; d < a.length; d++) {\n    c += goog.html.SafeScript.unwrap(a[d]);\n  }\n  c = goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(c, goog.i18n.bidi.Dir.NEUTRAL);\n  return goog.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse(\"script\", b, c);\n};\ngoog.html.SafeHtml.createStyle = function(a, b) {\n  var c = goog.html.SafeHtml.combineAttributes({type:\"text/css\"}, {}, b), d = \"\";\n  a = goog.array.concat(a);\n  for (var e = 0; e < a.length; e++) {\n    d += goog.html.SafeStyleSheet.unwrap(a[e]);\n  }\n  d = goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(d, goog.i18n.bidi.Dir.NEUTRAL);\n  return goog.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse(\"style\", c, d);\n};\ngoog.html.SafeHtml.createMetaRefresh = function(a, b) {\n  var c = goog.html.SafeUrl.unwrap(goog.html.SafeUrl.sanitize(a));\n  (goog.labs.userAgent.browser.isIE() || goog.labs.userAgent.browser.isEdge()) && goog.string.internal.contains(c, \";\") && (c = \"'\" + c.replace(/'/g, \"%27\") + \"'\");\n  return goog.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse(\"meta\", {\"http-equiv\":\"refresh\", content:(b || 0) + \"; url=\" + c});\n};\ngoog.html.SafeHtml.getAttrNameAndValue_ = function(a, b, c) {\n  if (c instanceof goog.string.Const) {\n    c = goog.string.Const.unwrap(c);\n  } else {\n    if (\"style\" == b.toLowerCase()) {\n      if (goog.html.SafeHtml.SUPPORT_STYLE_ATTRIBUTE) {\n        c = goog.html.SafeHtml.getStyleValue_(c);\n      } else {\n        throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES ? 'Attribute \"style\" not supported.' : \"\");\n      }\n    } else {\n      if (/^on/i.test(b)) {\n        throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES ? 'Attribute \"' + b + '\" requires goog.string.Const value, \"' + c + '\" given.' : \"\");\n      }\n      if (b.toLowerCase() in goog.html.SafeHtml.URL_ATTRIBUTES_) {\n        if (c instanceof goog.html.TrustedResourceUrl) {\n          c = goog.html.TrustedResourceUrl.unwrap(c);\n        } else {\n          if (c instanceof goog.html.SafeUrl) {\n            c = goog.html.SafeUrl.unwrap(c);\n          } else {\n            if (\"string\" === typeof c) {\n              c = goog.html.SafeUrl.sanitize(c).getTypedStringValue();\n            } else {\n              throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES ? 'Attribute \"' + b + '\" on tag \"' + a + '\" requires goog.html.SafeUrl, goog.string.Const, or string, value \"' + c + '\" given.' : \"\");\n            }\n          }\n        }\n      }\n    }\n  }\n  c.implementsGoogStringTypedString && (c = c.getTypedStringValue());\n  goog.asserts.assert(\"string\" === typeof c || \"number\" === typeof c, \"String or number value expected, got \" + typeof c + \" with value: \" + c);\n  return b + '=\"' + goog.string.internal.htmlEscape(String(c)) + '\"';\n};\ngoog.html.SafeHtml.getStyleValue_ = function(a) {\n  if (!goog.isObject(a)) {\n    throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES ? 'The \"style\" attribute requires goog.html.SafeStyle or map of style properties, ' + typeof a + \" given: \" + a : \"\");\n  }\n  a instanceof goog.html.SafeStyle || (a = goog.html.SafeStyle.create(a));\n  return goog.html.SafeStyle.unwrap(a);\n};\ngoog.html.SafeHtml.createWithDir = function(a, b, c, d) {\n  b = goog.html.SafeHtml.create(b, c, d);\n  b.dir_ = a;\n  return b;\n};\ngoog.html.SafeHtml.join = function(a, b) {\n  var c = goog.html.SafeHtml.htmlEscape(a), d = c.getDirection(), e = [], f = function(a) {\n    goog.isArray(a) ? goog.array.forEach(a, f) : (a = goog.html.SafeHtml.htmlEscape(a), e.push(goog.html.SafeHtml.unwrap(a)), a = a.getDirection(), d == goog.i18n.bidi.Dir.NEUTRAL ? d = a : a != goog.i18n.bidi.Dir.NEUTRAL && d != a && (d = null));\n  };\n  goog.array.forEach(b, f);\n  return goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(e.join(goog.html.SafeHtml.unwrap(c)), d);\n};\ngoog.html.SafeHtml.concat = function(a) {\n  return goog.html.SafeHtml.join(goog.html.SafeHtml.EMPTY, Array.prototype.slice.call(arguments));\n};\ngoog.html.SafeHtml.concatWithDir = function(a, b) {\n  var c = goog.html.SafeHtml.concat(goog.array.slice(arguments, 1));\n  c.dir_ = a;\n  return c;\n};\ngoog.html.SafeHtml.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ = {};\ngoog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse = function(a, b) {\n  return (new goog.html.SafeHtml).initSecurityPrivateDoNotAccessOrElse_(a, b);\n};\ngoog.html.SafeHtml.prototype.initSecurityPrivateDoNotAccessOrElse_ = function(a, b) {\n  this.privateDoNotAccessOrElseSafeHtmlWrappedValue_ = goog.html.trustedtypes.PRIVATE_DO_NOT_ACCESS_OR_ELSE_POLICY ? goog.html.trustedtypes.PRIVATE_DO_NOT_ACCESS_OR_ELSE_POLICY.createHTML(a) : a;\n  this.dir_ = b;\n  return this;\n};\ngoog.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse = function(a, b, c) {\n  var d = null;\n  var e = \"<\" + a + goog.html.SafeHtml.stringifyAttributes(a, b);\n  null == c ? c = [] : goog.isArray(c) || (c = [c]);\n  goog.dom.tags.isVoidTag(a.toLowerCase()) ? (goog.asserts.assert(!c.length, \"Void tag <\" + a + \"> does not allow content.\"), e += \">\") : (d = goog.html.SafeHtml.concat(c), e += \">\" + goog.html.SafeHtml.unwrap(d) + \"</\" + a + \">\", d = d.getDirection());\n  (a = b && b.dir) && (d = /^(ltr|rtl|auto)$/i.test(a) ? goog.i18n.bidi.Dir.NEUTRAL : null);\n  return goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(e, d);\n};\ngoog.html.SafeHtml.stringifyAttributes = function(a, b) {\n  var c = \"\";\n  if (b) {\n    for (var d in b) {\n      if (!goog.html.SafeHtml.VALID_NAMES_IN_TAG_.test(d)) {\n        throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES ? 'Invalid attribute name \"' + d + '\".' : \"\");\n      }\n      var e = b[d];\n      null != e && (c += \" \" + goog.html.SafeHtml.getAttrNameAndValue_(a, d, e));\n    }\n  }\n  return c;\n};\ngoog.html.SafeHtml.combineAttributes = function(a, b, c) {\n  var d = {}, e;\n  for (e in a) {\n    goog.asserts.assert(e.toLowerCase() == e, \"Must be lower case\"), d[e] = a[e];\n  }\n  for (e in b) {\n    goog.asserts.assert(e.toLowerCase() == e, \"Must be lower case\"), d[e] = b[e];\n  }\n  if (c) {\n    for (e in c) {\n      var f = e.toLowerCase();\n      if (f in a) {\n        throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES ? 'Cannot override \"' + f + '\" attribute, got \"' + e + '\" with value \"' + c[e] + '\"' : \"\");\n      }\n      f in b && delete d[f];\n      d[e] = c[e];\n    }\n  }\n  return d;\n};\ngoog.html.SafeHtml.DOCTYPE_HTML = goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(\"<!DOCTYPE html>\", goog.i18n.bidi.Dir.NEUTRAL);\ngoog.html.SafeHtml.EMPTY = goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(\"\", goog.i18n.bidi.Dir.NEUTRAL);\ngoog.html.SafeHtml.BR = goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(\"<br>\", goog.i18n.bidi.Dir.NEUTRAL);\ngoog.html.uncheckedconversions = {};\ngoog.html.uncheckedconversions.safeHtmlFromStringKnownToSatisfyTypeContract = function(a, b, c) {\n  goog.asserts.assertString(goog.string.Const.unwrap(a), \"must provide justification\");\n  goog.asserts.assert(!goog.string.internal.isEmptyOrWhitespace(goog.string.Const.unwrap(a)), \"must provide non-empty justification\");\n  return goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(b, c || null);\n};\ngoog.html.uncheckedconversions.safeScriptFromStringKnownToSatisfyTypeContract = function(a, b) {\n  goog.asserts.assertString(goog.string.Const.unwrap(a), \"must provide justification\");\n  goog.asserts.assert(!goog.string.internal.isEmptyOrWhitespace(goog.string.Const.unwrap(a)), \"must provide non-empty justification\");\n  return goog.html.SafeScript.createSafeScriptSecurityPrivateDoNotAccessOrElse(b);\n};\ngoog.html.uncheckedconversions.safeStyleFromStringKnownToSatisfyTypeContract = function(a, b) {\n  goog.asserts.assertString(goog.string.Const.unwrap(a), \"must provide justification\");\n  goog.asserts.assert(!goog.string.internal.isEmptyOrWhitespace(goog.string.Const.unwrap(a)), \"must provide non-empty justification\");\n  return goog.html.SafeStyle.createSafeStyleSecurityPrivateDoNotAccessOrElse(b);\n};\ngoog.html.uncheckedconversions.safeStyleSheetFromStringKnownToSatisfyTypeContract = function(a, b) {\n  goog.asserts.assertString(goog.string.Const.unwrap(a), \"must provide justification\");\n  goog.asserts.assert(!goog.string.internal.isEmptyOrWhitespace(goog.string.Const.unwrap(a)), \"must provide non-empty justification\");\n  return goog.html.SafeStyleSheet.createSafeStyleSheetSecurityPrivateDoNotAccessOrElse(b);\n};\ngoog.html.uncheckedconversions.safeUrlFromStringKnownToSatisfyTypeContract = function(a, b) {\n  goog.asserts.assertString(goog.string.Const.unwrap(a), \"must provide justification\");\n  goog.asserts.assert(!goog.string.internal.isEmptyOrWhitespace(goog.string.Const.unwrap(a)), \"must provide non-empty justification\");\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(b);\n};\ngoog.html.uncheckedconversions.trustedResourceUrlFromStringKnownToSatisfyTypeContract = function(a, b) {\n  goog.asserts.assertString(goog.string.Const.unwrap(a), \"must provide justification\");\n  goog.asserts.assert(!goog.string.internal.isEmptyOrWhitespace(goog.string.Const.unwrap(a)), \"must provide non-empty justification\");\n  return goog.html.TrustedResourceUrl.createTrustedResourceUrlSecurityPrivateDoNotAccessOrElse(b);\n};\ngoog.dom.safe = {};\ngoog.dom.safe.InsertAdjacentHtmlPosition = {AFTERBEGIN:\"afterbegin\", AFTEREND:\"afterend\", BEFOREBEGIN:\"beforebegin\", BEFOREEND:\"beforeend\"};\ngoog.dom.safe.insertAdjacentHtml = function(a, b, c) {\n  a.insertAdjacentHTML(b, goog.html.SafeHtml.unwrapTrustedHTML(c));\n};\ngoog.dom.safe.SET_INNER_HTML_DISALLOWED_TAGS_ = {MATH:!0, SCRIPT:!0, STYLE:!0, SVG:!0, TEMPLATE:!0};\ngoog.dom.safe.isInnerHtmlCleanupRecursive_ = goog.functions.cacheReturnValue(function() {\n  if (goog.DEBUG && \"undefined\" === typeof document) {\n    return !1;\n  }\n  var a = document.createElement(\"div\"), b = document.createElement(\"div\");\n  b.appendChild(document.createElement(\"div\"));\n  a.appendChild(b);\n  if (goog.DEBUG && !a.firstChild) {\n    return !1;\n  }\n  b = a.firstChild.firstChild;\n  a.innerHTML = goog.html.SafeHtml.unwrapTrustedHTML(goog.html.SafeHtml.EMPTY);\n  return !b.parentElement;\n});\ngoog.dom.safe.unsafeSetInnerHtmlDoNotUseOrElse = function(a, b) {\n  if (goog.dom.safe.isInnerHtmlCleanupRecursive_()) {\n    for (; a.lastChild;) {\n      a.removeChild(a.lastChild);\n    }\n  }\n  a.innerHTML = goog.html.SafeHtml.unwrapTrustedHTML(b);\n};\ngoog.dom.safe.setInnerHtml = function(a, b) {\n  if (goog.asserts.ENABLE_ASSERTS) {\n    var c = a.tagName.toUpperCase();\n    if (goog.dom.safe.SET_INNER_HTML_DISALLOWED_TAGS_[c]) {\n      throw Error(\"goog.dom.safe.setInnerHtml cannot be used to set content of \" + a.tagName + \".\");\n    }\n  }\n  goog.dom.safe.unsafeSetInnerHtmlDoNotUseOrElse(a, b);\n};\ngoog.dom.safe.setOuterHtml = function(a, b) {\n  a.outerHTML = goog.html.SafeHtml.unwrapTrustedHTML(b);\n};\ngoog.dom.safe.setFormElementAction = function(a, b) {\n  var c = b instanceof goog.html.SafeUrl ? b : goog.html.SafeUrl.sanitizeAssertUnchanged(b);\n  goog.dom.asserts.assertIsHTMLFormElement(a).action = goog.html.SafeUrl.unwrapTrustedURL(c);\n};\ngoog.dom.safe.setButtonFormAction = function(a, b) {\n  var c = b instanceof goog.html.SafeUrl ? b : goog.html.SafeUrl.sanitizeAssertUnchanged(b);\n  goog.dom.asserts.assertIsHTMLButtonElement(a).formAction = goog.html.SafeUrl.unwrapTrustedURL(c);\n};\ngoog.dom.safe.setInputFormAction = function(a, b) {\n  var c = b instanceof goog.html.SafeUrl ? b : goog.html.SafeUrl.sanitizeAssertUnchanged(b);\n  goog.dom.asserts.assertIsHTMLInputElement(a).formAction = goog.html.SafeUrl.unwrapTrustedURL(c);\n};\ngoog.dom.safe.setStyle = function(a, b) {\n  a.style.cssText = goog.html.SafeStyle.unwrap(b);\n};\ngoog.dom.safe.documentWrite = function(a, b) {\n  a.write(goog.html.SafeHtml.unwrapTrustedHTML(b));\n};\ngoog.dom.safe.setAnchorHref = function(a, b) {\n  goog.dom.asserts.assertIsHTMLAnchorElement(a);\n  var c = b instanceof goog.html.SafeUrl ? b : goog.html.SafeUrl.sanitizeAssertUnchanged(b);\n  a.href = goog.html.SafeUrl.unwrapTrustedURL(c);\n};\ngoog.dom.safe.setImageSrc = function(a, b) {\n  goog.dom.asserts.assertIsHTMLImageElement(a);\n  if (b instanceof goog.html.SafeUrl) {\n    var c = b;\n  } else {\n    c = /^data:image\\//i.test(b), c = goog.html.SafeUrl.sanitizeAssertUnchanged(b, c);\n  }\n  a.src = goog.html.SafeUrl.unwrapTrustedURL(c);\n};\ngoog.dom.safe.setAudioSrc = function(a, b) {\n  goog.dom.asserts.assertIsHTMLAudioElement(a);\n  if (b instanceof goog.html.SafeUrl) {\n    var c = b;\n  } else {\n    c = /^data:audio\\//i.test(b), c = goog.html.SafeUrl.sanitizeAssertUnchanged(b, c);\n  }\n  a.src = goog.html.SafeUrl.unwrapTrustedURL(c);\n};\ngoog.dom.safe.setVideoSrc = function(a, b) {\n  goog.dom.asserts.assertIsHTMLVideoElement(a);\n  if (b instanceof goog.html.SafeUrl) {\n    var c = b;\n  } else {\n    c = /^data:video\\//i.test(b), c = goog.html.SafeUrl.sanitizeAssertUnchanged(b, c);\n  }\n  a.src = goog.html.SafeUrl.unwrapTrustedURL(c);\n};\ngoog.dom.safe.setEmbedSrc = function(a, b) {\n  goog.dom.asserts.assertIsHTMLEmbedElement(a);\n  a.src = goog.html.TrustedResourceUrl.unwrapTrustedScriptURL(b);\n};\ngoog.dom.safe.setFrameSrc = function(a, b) {\n  goog.dom.asserts.assertIsHTMLFrameElement(a);\n  a.src = goog.html.TrustedResourceUrl.unwrapTrustedURL(b);\n};\ngoog.dom.safe.setIframeSrc = function(a, b) {\n  goog.dom.asserts.assertIsHTMLIFrameElement(a);\n  a.src = goog.html.TrustedResourceUrl.unwrapTrustedURL(b);\n};\ngoog.dom.safe.setIframeSrcdoc = function(a, b) {\n  goog.dom.asserts.assertIsHTMLIFrameElement(a);\n  a.srcdoc = goog.html.SafeHtml.unwrapTrustedHTML(b);\n};\ngoog.dom.safe.setLinkHrefAndRel = function(a, b, c) {\n  goog.dom.asserts.assertIsHTMLLinkElement(a);\n  a.rel = c;\n  goog.string.internal.caseInsensitiveContains(c, \"stylesheet\") ? (goog.asserts.assert(b instanceof goog.html.TrustedResourceUrl, 'URL must be TrustedResourceUrl because \"rel\" contains \"stylesheet\"'), a.href = goog.html.TrustedResourceUrl.unwrapTrustedURL(b)) : a.href = b instanceof goog.html.TrustedResourceUrl ? goog.html.TrustedResourceUrl.unwrapTrustedURL(b) : b instanceof goog.html.SafeUrl ? goog.html.SafeUrl.unwrapTrustedURL(b) : goog.html.SafeUrl.unwrapTrustedURL(goog.html.SafeUrl.sanitizeAssertUnchanged(b));\n};\ngoog.dom.safe.setObjectData = function(a, b) {\n  goog.dom.asserts.assertIsHTMLObjectElement(a);\n  a.data = goog.html.TrustedResourceUrl.unwrapTrustedScriptURL(b);\n};\ngoog.dom.safe.setScriptSrc = function(a, b) {\n  goog.dom.asserts.assertIsHTMLScriptElement(a);\n  a.src = goog.html.TrustedResourceUrl.unwrapTrustedScriptURL(b);\n  var c = goog.getScriptNonce();\n  c && a.setAttribute(\"nonce\", c);\n};\ngoog.dom.safe.setScriptContent = function(a, b) {\n  goog.dom.asserts.assertIsHTMLScriptElement(a);\n  a.text = goog.html.SafeScript.unwrapTrustedScript(b);\n  var c = goog.getScriptNonce();\n  c && a.setAttribute(\"nonce\", c);\n};\ngoog.dom.safe.setLocationHref = function(a, b) {\n  goog.dom.asserts.assertIsLocation(a);\n  var c = b instanceof goog.html.SafeUrl ? b : goog.html.SafeUrl.sanitizeAssertUnchanged(b);\n  a.href = goog.html.SafeUrl.unwrapTrustedURL(c);\n};\ngoog.dom.safe.assignLocation = function(a, b) {\n  goog.dom.asserts.assertIsLocation(a);\n  var c = b instanceof goog.html.SafeUrl ? b : goog.html.SafeUrl.sanitizeAssertUnchanged(b);\n  a.assign(goog.html.SafeUrl.unwrapTrustedURL(c));\n};\ngoog.dom.safe.replaceLocation = function(a, b) {\n  goog.dom.asserts.assertIsLocation(a);\n  var c = b instanceof goog.html.SafeUrl ? b : goog.html.SafeUrl.sanitizeAssertUnchanged(b);\n  a.replace(goog.html.SafeUrl.unwrapTrustedURL(c));\n};\ngoog.dom.safe.openInWindow = function(a, b, c, d, e) {\n  a = a instanceof goog.html.SafeUrl ? a : goog.html.SafeUrl.sanitizeAssertUnchanged(a);\n  return (b || goog.global).open(goog.html.SafeUrl.unwrapTrustedURL(a), c ? goog.string.Const.unwrap(c) : \"\", d, e);\n};\ngoog.dom.safe.parseFromStringHtml = function(a, b) {\n  return goog.dom.safe.parseFromString(a, b, \"text/html\");\n};\ngoog.dom.safe.parseFromString = function(a, b, c) {\n  return a.parseFromString(goog.html.SafeHtml.unwrapTrustedHTML(b), c);\n};\ngoog.dom.safe.createImageFromBlob = function(a) {\n  if (!/^image\\/.*/g.test(a.type)) {\n    throw Error(\"goog.dom.safe.createImageFromBlob only accepts MIME type image/.*.\");\n  }\n  var b = goog.global.URL.createObjectURL(a);\n  a = new goog.global.Image;\n  a.onload = function() {\n    goog.global.URL.revokeObjectURL(b);\n  };\n  goog.dom.safe.setImageSrc(a, goog.html.uncheckedconversions.safeUrlFromStringKnownToSatisfyTypeContract(goog.string.Const.from(\"Image blob URL.\"), b));\n  return a;\n};\ngoog.string.DETECT_DOUBLE_ESCAPING = !1;\ngoog.string.FORCE_NON_DOM_HTML_UNESCAPING = !1;\ngoog.string.Unicode = {NBSP:\"\\u00a0\"};\ngoog.string.startsWith = goog.string.internal.startsWith;\ngoog.string.endsWith = goog.string.internal.endsWith;\ngoog.string.caseInsensitiveStartsWith = goog.string.internal.caseInsensitiveStartsWith;\ngoog.string.caseInsensitiveEndsWith = goog.string.internal.caseInsensitiveEndsWith;\ngoog.string.caseInsensitiveEquals = goog.string.internal.caseInsensitiveEquals;\ngoog.string.subs = function(a, b) {\n  for (var c = a.split(\"%s\"), d = \"\", e = Array.prototype.slice.call(arguments, 1); e.length && 1 < c.length;) {\n    d += c.shift() + e.shift();\n  }\n  return d + c.join(\"%s\");\n};\ngoog.string.collapseWhitespace = function(a) {\n  return a.replace(/[\\s\\xa0]+/g, \" \").replace(/^\\s+|\\s+$/g, \"\");\n};\ngoog.string.isEmptyOrWhitespace = goog.string.internal.isEmptyOrWhitespace;\ngoog.string.isEmptyString = function(a) {\n  return 0 == a.length;\n};\ngoog.string.isEmpty = goog.string.isEmptyOrWhitespace;\ngoog.string.isEmptyOrWhitespaceSafe = function(a) {\n  return goog.string.isEmptyOrWhitespace(goog.string.makeSafe(a));\n};\ngoog.string.isEmptySafe = goog.string.isEmptyOrWhitespaceSafe;\ngoog.string.isBreakingWhitespace = function(a) {\n  return !/[^\\t\\n\\r ]/.test(a);\n};\ngoog.string.isAlpha = function(a) {\n  return !/[^a-zA-Z]/.test(a);\n};\ngoog.string.isNumeric = function(a) {\n  return !/[^0-9]/.test(a);\n};\ngoog.string.isAlphaNumeric = function(a) {\n  return !/[^a-zA-Z0-9]/.test(a);\n};\ngoog.string.isSpace = function(a) {\n  return \" \" == a;\n};\ngoog.string.isUnicodeChar = function(a) {\n  return 1 == a.length && \" \" <= a && \"~\" >= a || \"\\u0080\" <= a && \"\\ufffd\" >= a;\n};\ngoog.string.stripNewlines = function(a) {\n  return a.replace(/(\\r\\n|\\r|\\n)+/g, \" \");\n};\ngoog.string.canonicalizeNewlines = function(a) {\n  return a.replace(/(\\r\\n|\\r|\\n)/g, \"\\n\");\n};\ngoog.string.normalizeWhitespace = function(a) {\n  return a.replace(/\\xa0|\\s/g, \" \");\n};\ngoog.string.normalizeSpaces = function(a) {\n  return a.replace(/\\xa0|[ \\t]+/g, \" \");\n};\ngoog.string.collapseBreakingSpaces = function(a) {\n  return a.replace(/[\\t\\r\\n ]+/g, \" \").replace(/^[\\t\\r\\n ]+|[\\t\\r\\n ]+$/g, \"\");\n};\ngoog.string.trim = goog.string.internal.trim;\ngoog.string.trimLeft = function(a) {\n  return a.replace(/^[\\s\\xa0]+/, \"\");\n};\ngoog.string.trimRight = function(a) {\n  return a.replace(/[\\s\\xa0]+$/, \"\");\n};\ngoog.string.caseInsensitiveCompare = goog.string.internal.caseInsensitiveCompare;\ngoog.string.numberAwareCompare_ = function(a, b, c) {\n  if (a == b) {\n    return 0;\n  }\n  if (!a) {\n    return -1;\n  }\n  if (!b) {\n    return 1;\n  }\n  for (var d = a.toLowerCase().match(c), e = b.toLowerCase().match(c), f = Math.min(d.length, e.length), g = 0; g < f; g++) {\n    c = d[g];\n    var h = e[g];\n    if (c != h) {\n      return a = parseInt(c, 10), !isNaN(a) && (b = parseInt(h, 10), !isNaN(b) && a - b) ? a - b : c < h ? -1 : 1;\n    }\n  }\n  return d.length != e.length ? d.length - e.length : a < b ? -1 : 1;\n};\ngoog.string.intAwareCompare = function(a, b) {\n  return goog.string.numberAwareCompare_(a, b, /\\d+|\\D+/g);\n};\ngoog.string.floatAwareCompare = function(a, b) {\n  return goog.string.numberAwareCompare_(a, b, /\\d+|\\.\\d+|\\D+/g);\n};\ngoog.string.numerateCompare = goog.string.floatAwareCompare;\ngoog.string.urlEncode = function(a) {\n  return encodeURIComponent(String(a));\n};\ngoog.string.urlDecode = function(a) {\n  return decodeURIComponent(a.replace(/\\+/g, \" \"));\n};\ngoog.string.newLineToBr = goog.string.internal.newLineToBr;\ngoog.string.htmlEscape = function(a, b) {\n  a = goog.string.internal.htmlEscape(a, b);\n  goog.string.DETECT_DOUBLE_ESCAPING && (a = a.replace(goog.string.E_RE_, \"&#101;\"));\n  return a;\n};\ngoog.string.E_RE_ = /e/g;\ngoog.string.unescapeEntities = function(a) {\n  return goog.string.contains(a, \"&\") ? !goog.string.FORCE_NON_DOM_HTML_UNESCAPING && \"document\" in goog.global ? goog.string.unescapeEntitiesUsingDom_(a) : goog.string.unescapePureXmlEntities_(a) : a;\n};\ngoog.string.unescapeEntitiesWithDocument = function(a, b) {\n  return goog.string.contains(a, \"&\") ? goog.string.unescapeEntitiesUsingDom_(a, b) : a;\n};\ngoog.string.unescapeEntitiesUsingDom_ = function(a, b) {\n  var c = {\"&amp;\":\"&\", \"&lt;\":\"<\", \"&gt;\":\">\", \"&quot;\":'\"'};\n  var d = b ? b.createElement(\"div\") : goog.global.document.createElement(\"div\");\n  return a.replace(goog.string.HTML_ENTITY_PATTERN_, function(a, b) {\n    var e = c[a];\n    if (e) {\n      return e;\n    }\n    if (\"#\" == b.charAt(0)) {\n      var f = Number(\"0\" + b.substr(1));\n      isNaN(f) || (e = String.fromCharCode(f));\n    }\n    e || (goog.dom.safe.setInnerHtml(d, goog.html.uncheckedconversions.safeHtmlFromStringKnownToSatisfyTypeContract(goog.string.Const.from(\"Single HTML entity.\"), a + \" \")), e = d.firstChild.nodeValue.slice(0, -1));\n    return c[a] = e;\n  });\n};\ngoog.string.unescapePureXmlEntities_ = function(a) {\n  return a.replace(/&([^;]+);/g, function(a, c) {\n    switch(c) {\n      case \"amp\":\n        return \"&\";\n      case \"lt\":\n        return \"<\";\n      case \"gt\":\n        return \">\";\n      case \"quot\":\n        return '\"';\n      default:\n        if (\"#\" == c.charAt(0)) {\n          var b = Number(\"0\" + c.substr(1));\n          if (!isNaN(b)) {\n            return String.fromCharCode(b);\n          }\n        }\n        return a;\n    }\n  });\n};\ngoog.string.HTML_ENTITY_PATTERN_ = /&([^;\\s<&]+);?/g;\ngoog.string.whitespaceEscape = function(a, b) {\n  return goog.string.newLineToBr(a.replace(/  /g, \" &#160;\"), b);\n};\ngoog.string.preserveSpaces = function(a) {\n  return a.replace(/(^|[\\n ]) /g, \"$1\" + goog.string.Unicode.NBSP);\n};\ngoog.string.stripQuotes = function(a, b) {\n  for (var c = b.length, d = 0; d < c; d++) {\n    var e = 1 == c ? b : b.charAt(d);\n    if (a.charAt(0) == e && a.charAt(a.length - 1) == e) {\n      return a.substring(1, a.length - 1);\n    }\n  }\n  return a;\n};\ngoog.string.truncate = function(a, b, c) {\n  c && (a = goog.string.unescapeEntities(a));\n  a.length > b && (a = a.substring(0, b - 3) + \"...\");\n  c && (a = goog.string.htmlEscape(a));\n  return a;\n};\ngoog.string.truncateMiddle = function(a, b, c, d) {\n  c && (a = goog.string.unescapeEntities(a));\n  if (d && a.length > b) {\n    d > b && (d = b);\n    var e = a.length - d;\n    a = a.substring(0, b - d) + \"...\" + a.substring(e);\n  } else {\n    a.length > b && (d = Math.floor(b / 2), e = a.length - d, a = a.substring(0, d + b % 2) + \"...\" + a.substring(e));\n  }\n  c && (a = goog.string.htmlEscape(a));\n  return a;\n};\ngoog.string.specialEscapeChars_ = {\"\\x00\":\"\\\\0\", \"\\b\":\"\\\\b\", \"\\f\":\"\\\\f\", \"\\n\":\"\\\\n\", \"\\r\":\"\\\\r\", \"\\t\":\"\\\\t\", \"\\x0B\":\"\\\\x0B\", '\"':'\\\\\"', \"\\\\\":\"\\\\\\\\\", \"<\":\"\\\\u003C\"};\ngoog.string.jsEscapeCache_ = {\"'\":\"\\\\'\"};\ngoog.string.quote = function(a) {\n  a = String(a);\n  for (var b = ['\"'], c = 0; c < a.length; c++) {\n    var d = a.charAt(c), e = d.charCodeAt(0);\n    b[c + 1] = goog.string.specialEscapeChars_[d] || (31 < e && 127 > e ? d : goog.string.escapeChar(d));\n  }\n  b.push('\"');\n  return b.join(\"\");\n};\ngoog.string.escapeString = function(a) {\n  for (var b = [], c = 0; c < a.length; c++) {\n    b[c] = goog.string.escapeChar(a.charAt(c));\n  }\n  return b.join(\"\");\n};\ngoog.string.escapeChar = function(a) {\n  if (a in goog.string.jsEscapeCache_) {\n    return goog.string.jsEscapeCache_[a];\n  }\n  if (a in goog.string.specialEscapeChars_) {\n    return goog.string.jsEscapeCache_[a] = goog.string.specialEscapeChars_[a];\n  }\n  var b = a.charCodeAt(0);\n  if (31 < b && 127 > b) {\n    var c = a;\n  } else {\n    if (256 > b) {\n      if (c = \"\\\\x\", 16 > b || 256 < b) {\n        c += \"0\";\n      }\n    } else {\n      c = \"\\\\u\", 4096 > b && (c += \"0\");\n    }\n    c += b.toString(16).toUpperCase();\n  }\n  return goog.string.jsEscapeCache_[a] = c;\n};\ngoog.string.contains = goog.string.internal.contains;\ngoog.string.caseInsensitiveContains = goog.string.internal.caseInsensitiveContains;\ngoog.string.countOf = function(a, b) {\n  return a && b ? a.split(b).length - 1 : 0;\n};\ngoog.string.removeAt = function(a, b, c) {\n  var d = a;\n  0 <= b && b < a.length && 0 < c && (d = a.substr(0, b) + a.substr(b + c, a.length - b - c));\n  return d;\n};\ngoog.string.remove = function(a, b) {\n  return a.replace(b, \"\");\n};\ngoog.string.removeAll = function(a, b) {\n  var c = new RegExp(goog.string.regExpEscape(b), \"g\");\n  return a.replace(c, \"\");\n};\ngoog.string.replaceAll = function(a, b, c) {\n  b = new RegExp(goog.string.regExpEscape(b), \"g\");\n  return a.replace(b, c.replace(/\\$/g, \"$$$$\"));\n};\ngoog.string.regExpEscape = function(a) {\n  return String(a).replace(/([-()\\[\\]{}+?*.$\\^|,:#<!\\\\])/g, \"\\\\$1\").replace(/\\x08/g, \"\\\\x08\");\n};\ngoog.string.repeat = String.prototype.repeat ? function(a, b) {\n  return a.repeat(b);\n} : function(a, b) {\n  return Array(b + 1).join(a);\n};\ngoog.string.padNumber = function(a, b, c) {\n  a = void 0 !== c ? a.toFixed(c) : String(a);\n  c = a.indexOf(\".\");\n  -1 == c && (c = a.length);\n  return goog.string.repeat(\"0\", Math.max(0, b - c)) + a;\n};\ngoog.string.makeSafe = function(a) {\n  return null == a ? \"\" : String(a);\n};\ngoog.string.buildString = function(a) {\n  return Array.prototype.join.call(arguments, \"\");\n};\ngoog.string.getRandomString = function() {\n  return Math.floor(2147483648 * Math.random()).toString(36) + Math.abs(Math.floor(2147483648 * Math.random()) ^ goog.now()).toString(36);\n};\ngoog.string.compareVersions = goog.string.internal.compareVersions;\ngoog.string.hashCode = function(a) {\n  for (var b = 0, c = 0; c < a.length; ++c) {\n    b = 31 * b + a.charCodeAt(c) >>> 0;\n  }\n  return b;\n};\ngoog.string.uniqueStringCounter_ = 2147483648 * Math.random() | 0;\ngoog.string.createUniqueString = function() {\n  return \"goog_\" + goog.string.uniqueStringCounter_++;\n};\ngoog.string.toNumber = function(a) {\n  var b = Number(a);\n  return 0 == b && goog.string.isEmptyOrWhitespace(a) ? NaN : b;\n};\ngoog.string.isLowerCamelCase = function(a) {\n  return /^[a-z]+([A-Z][a-z]*)*$/.test(a);\n};\ngoog.string.isUpperCamelCase = function(a) {\n  return /^([A-Z][a-z]*)+$/.test(a);\n};\ngoog.string.toCamelCase = function(a) {\n  return String(a).replace(/\\-([a-z])/g, function(a, c) {\n    return c.toUpperCase();\n  });\n};\ngoog.string.toSelectorCase = function(a) {\n  return String(a).replace(/([A-Z])/g, \"-$1\").toLowerCase();\n};\ngoog.string.toTitleCase = function(a, b) {\n  var c = \"string\" === typeof b ? goog.string.regExpEscape(b) : \"\\\\s\";\n  return a.replace(new RegExp(\"(^\" + (c ? \"|[\" + c + \"]+\" : \"\") + \")([a-z])\", \"g\"), function(a, b, c) {\n    return b + c.toUpperCase();\n  });\n};\ngoog.string.capitalize = function(a) {\n  return String(a.charAt(0)).toUpperCase() + String(a.substr(1)).toLowerCase();\n};\ngoog.string.parseInt = function(a) {\n  isFinite(a) && (a = String(a));\n  return \"string\" === typeof a ? /^\\s*-?0x/i.test(a) ? parseInt(a, 16) : parseInt(a, 10) : NaN;\n};\ngoog.string.splitLimit = function(a, b, c) {\n  a = a.split(b);\n  for (var d = []; 0 < c && a.length;) {\n    d.push(a.shift()), c--;\n  }\n  a.length && d.push(a.join(b));\n  return d;\n};\ngoog.string.lastComponent = function(a, b) {\n  if (b) {\n    \"string\" == typeof b && (b = [b]);\n  } else {\n    return a;\n  }\n  for (var c = -1, d = 0; d < b.length; d++) {\n    if (\"\" != b[d]) {\n      var e = a.lastIndexOf(b[d]);\n      e > c && (c = e);\n    }\n  }\n  return -1 == c ? a : a.slice(c + 1);\n};\ngoog.string.editDistance = function(a, b) {\n  var c = [], d = [];\n  if (a == b) {\n    return 0;\n  }\n  if (!a.length || !b.length) {\n    return Math.max(a.length, b.length);\n  }\n  for (var e = 0; e < b.length + 1; e++) {\n    c[e] = e;\n  }\n  for (e = 0; e < a.length; e++) {\n    d[0] = e + 1;\n    for (var f = 0; f < b.length; f++) {\n      d[f + 1] = Math.min(d[f] + 1, c[f + 1] + 1, c[f] + Number(a[e] != b[f]));\n    }\n    for (f = 0; f < c.length; f++) {\n      c[f] = d[f];\n    }\n  }\n  return d[b.length];\n};\ngoog.proto2 = {};\ngoog.proto2.FieldDescriptor = function(a, b, c) {\n  this.parent_ = a;\n  goog.asserts.assert(goog.string.isNumeric(b));\n  this.tag_ = b;\n  this.name_ = c.name;\n  this.isPacked_ = !!c.packed;\n  this.isRepeated_ = !!c.repeated;\n  this.isRequired_ = !!c.required;\n  this.fieldType_ = c.fieldType;\n  this.nativeType_ = c.type;\n  this.deserializationConversionPermitted_ = !1;\n  switch(this.fieldType_) {\n    case goog.proto2.FieldDescriptor.FieldType.INT64:\n    case goog.proto2.FieldDescriptor.FieldType.UINT64:\n    case goog.proto2.FieldDescriptor.FieldType.FIXED64:\n    case goog.proto2.FieldDescriptor.FieldType.SFIXED64:\n    case goog.proto2.FieldDescriptor.FieldType.SINT64:\n    case goog.proto2.FieldDescriptor.FieldType.FLOAT:\n    case goog.proto2.FieldDescriptor.FieldType.DOUBLE:\n      this.deserializationConversionPermitted_ = !0;\n  }\n  this.defaultValue_ = c.defaultValue;\n};\ngoog.proto2.FieldDescriptor.FieldType = {DOUBLE:1, FLOAT:2, INT64:3, UINT64:4, INT32:5, FIXED64:6, FIXED32:7, BOOL:8, STRING:9, GROUP:10, MESSAGE:11, BYTES:12, UINT32:13, ENUM:14, SFIXED32:15, SFIXED64:16, SINT32:17, SINT64:18};\ngoog.proto2.FieldDescriptor.prototype.getTag = function() {\n  return this.tag_;\n};\ngoog.proto2.FieldDescriptor.prototype.getContainingType = function() {\n  return this.parent_.prototype.getDescriptor();\n};\ngoog.proto2.FieldDescriptor.prototype.getName = function() {\n  return this.name_;\n};\ngoog.proto2.FieldDescriptor.prototype.getDefaultValue = function() {\n  if (void 0 === this.defaultValue_) {\n    var a = this.nativeType_;\n    if (a === Boolean) {\n      this.defaultValue_ = !1;\n    } else {\n      if (a === Number) {\n        this.defaultValue_ = 0;\n      } else {\n        if (a === String) {\n          this.defaultValue_ = this.deserializationConversionPermitted_ ? \"0\" : \"\";\n        } else {\n          return new a;\n        }\n      }\n    }\n  }\n  return this.defaultValue_;\n};\ngoog.proto2.FieldDescriptor.prototype.getFieldType = function() {\n  return this.fieldType_;\n};\ngoog.proto2.FieldDescriptor.prototype.getNativeType = function() {\n  return this.nativeType_;\n};\ngoog.proto2.FieldDescriptor.prototype.deserializationConversionPermitted = function() {\n  return this.deserializationConversionPermitted_;\n};\ngoog.proto2.FieldDescriptor.prototype.getFieldMessageType = function() {\n  return this.nativeType_.prototype.getDescriptor();\n};\ngoog.proto2.FieldDescriptor.prototype.isCompositeType = function() {\n  return this.fieldType_ == goog.proto2.FieldDescriptor.FieldType.MESSAGE || this.fieldType_ == goog.proto2.FieldDescriptor.FieldType.GROUP;\n};\ngoog.proto2.FieldDescriptor.prototype.isPacked = function() {\n  return this.isPacked_;\n};\ngoog.proto2.FieldDescriptor.prototype.isRepeated = function() {\n  return this.isRepeated_;\n};\ngoog.proto2.FieldDescriptor.prototype.isRequired = function() {\n  return this.isRequired_;\n};\ngoog.proto2.FieldDescriptor.prototype.isOptional = function() {\n  return !this.isRepeated_ && !this.isRequired_;\n};\ngoog.proto2.Descriptor = function(a, b, c) {\n  this.messageType_ = a;\n  this.name_ = b.name || null;\n  this.fullName_ = b.fullName || null;\n  this.containingType_ = b.containingType;\n  this.fields_ = {};\n  for (a = 0; a < c.length; a++) {\n    b = c[a], this.fields_[b.getTag()] = b;\n  }\n};\ngoog.proto2.Descriptor.prototype.getName = function() {\n  return this.name_;\n};\ngoog.proto2.Descriptor.prototype.getFullName = function() {\n  return this.fullName_;\n};\ngoog.proto2.Descriptor.prototype.getContainingType = function() {\n  return this.containingType_ ? this.containingType_.getDescriptor() : null;\n};\ngoog.proto2.Descriptor.prototype.getFields = function() {\n  var a = goog.object.getValues(this.fields_);\n  goog.array.sort(a, function(a, c) {\n    return a.getTag() - c.getTag();\n  });\n  return a;\n};\ngoog.proto2.Descriptor.prototype.getFieldsMap = function() {\n  return this.fields_;\n};\ngoog.proto2.Descriptor.prototype.findFieldByName = function(a) {\n  return goog.object.findValue(this.fields_, function(b, c, d) {\n    return b.getName() == a;\n  }) || null;\n};\ngoog.proto2.Descriptor.prototype.findFieldByTag = function(a) {\n  goog.asserts.assert(goog.string.isNumeric(a));\n  return this.fields_[parseInt(a, 10)] || null;\n};\ngoog.proto2.Descriptor.prototype.createMessageInstance = function() {\n  return new this.messageType_;\n};\ngoog.proto2.Message = function() {\n  this.values_ = {};\n  this.fields_ = this.getDescriptor().getFieldsMap();\n  this.deserializedFields_ = this.lazyDeserializer_ = null;\n};\ngoog.proto2.Message.FieldType = {DOUBLE:1, FLOAT:2, INT64:3, UINT64:4, INT32:5, FIXED64:6, FIXED32:7, BOOL:8, STRING:9, GROUP:10, MESSAGE:11, BYTES:12, UINT32:13, ENUM:14, SFIXED32:15, SFIXED64:16, SINT32:17, SINT64:18};\ngoog.proto2.Message.prototype.initializeForLazyDeserializer = function(a, b) {\n  this.lazyDeserializer_ = a;\n  this.values_ = b;\n  this.deserializedFields_ = {};\n};\ngoog.proto2.Message.prototype.setUnknown = function(a, b) {\n  goog.asserts.assert(!this.fields_[a], \"Field is not unknown in this message\");\n  goog.asserts.assert(1 <= a, \"Tag \" + a + ' has value \"' + b + '\" in descriptor ' + this.getDescriptor().getName());\n  goog.asserts.assert(null !== b, \"Value cannot be null\");\n  this.values_[a] = b;\n  this.deserializedFields_ && delete this.deserializedFields_[a];\n};\ngoog.proto2.Message.prototype.forEachUnknown = function(a, b) {\n  var c = b || this, d;\n  for (d in this.values_) {\n    var e = Number(d);\n    this.fields_[e] || a.call(c, e, this.values_[d]);\n  }\n};\ngoog.proto2.Message.prototype.getDescriptor = goog.abstractMethod;\ngoog.proto2.Message.prototype.has = function(a) {\n  goog.asserts.assert(a.getContainingType() == this.getDescriptor(), \"The current message does not contain the given field\");\n  return this.has$Value(a.getTag());\n};\ngoog.proto2.Message.prototype.arrayOf = function(a) {\n  goog.asserts.assert(a.getContainingType() == this.getDescriptor(), \"The current message does not contain the given field\");\n  return this.array$Values(a.getTag());\n};\ngoog.proto2.Message.prototype.countOf = function(a) {\n  goog.asserts.assert(a.getContainingType() == this.getDescriptor(), \"The current message does not contain the given field\");\n  return this.count$Values(a.getTag());\n};\ngoog.proto2.Message.prototype.get = function(a, b) {\n  goog.asserts.assert(a.getContainingType() == this.getDescriptor(), \"The current message does not contain the given field\");\n  return this.get$Value(a.getTag(), b);\n};\ngoog.proto2.Message.prototype.getOrDefault = function(a, b) {\n  goog.asserts.assert(a.getContainingType() == this.getDescriptor(), \"The current message does not contain the given field\");\n  return this.get$ValueOrDefault(a.getTag(), b);\n};\ngoog.proto2.Message.prototype.set = function(a, b) {\n  goog.asserts.assert(a.getContainingType() == this.getDescriptor(), \"The current message does not contain the given field\");\n  this.set$Value(a.getTag(), b);\n};\ngoog.proto2.Message.prototype.add = function(a, b) {\n  goog.asserts.assert(a.getContainingType() == this.getDescriptor(), \"The current message does not contain the given field\");\n  this.add$Value(a.getTag(), b);\n};\ngoog.proto2.Message.prototype.clear = function(a) {\n  goog.asserts.assert(a.getContainingType() == this.getDescriptor(), \"The current message does not contain the given field\");\n  this.clear$Field(a.getTag());\n};\ngoog.proto2.Message.prototype.equals = function(a) {\n  if (!a || this.constructor != a.constructor) {\n    return !1;\n  }\n  for (var b = this.getDescriptor().getFields(), c = 0; c < b.length; c++) {\n    var d = b[c], e = d.getTag();\n    if (this.has$Value(e) != a.has$Value(e)) {\n      return !1;\n    }\n    if (this.has$Value(e)) {\n      var f = d.isCompositeType(), g = this.getValueForTag_(e);\n      e = a.getValueForTag_(e);\n      if (d.isRepeated()) {\n        if (g.length != e.length) {\n          return !1;\n        }\n        for (d = 0; d < g.length; d++) {\n          var h = g[d], k = e[d];\n          if (f ? !h.equals(k) : h != k) {\n            return !1;\n          }\n        }\n      } else {\n        if (f ? !g.equals(e) : g != e) {\n          return !1;\n        }\n      }\n    }\n  }\n  return !0;\n};\ngoog.proto2.Message.prototype.copyFrom = function(a) {\n  goog.asserts.assert(this.constructor == a.constructor, \"The source message must have the same type.\");\n  this != a && (this.values_ = {}, this.deserializedFields_ && (this.deserializedFields_ = {}), this.mergeFrom(a));\n};\ngoog.proto2.Message.prototype.mergeFrom = function(a) {\n  goog.asserts.assert(this.constructor == a.constructor, \"The source message must have the same type.\");\n  for (var b = this.getDescriptor().getFields(), c = 0; c < b.length; c++) {\n    var d = b[c], e = d.getTag();\n    if (a.has$Value(e)) {\n      this.deserializedFields_ && delete this.deserializedFields_[d.getTag()];\n      var f = d.isCompositeType();\n      if (d.isRepeated()) {\n        d = a.array$Values(e);\n        for (var g = 0; g < d.length; g++) {\n          this.add$Value(e, f ? d[g].clone() : d[g]);\n        }\n      } else {\n        d = a.getValueForTag_(e), f ? (f = this.getValueForTag_(e)) ? f.mergeFrom(d) : this.set$Value(e, d.clone()) : this.set$Value(e, d);\n      }\n    }\n  }\n};\ngoog.proto2.Message.prototype.clone = function() {\n  var a = new this.constructor;\n  a.copyFrom(this);\n  return a;\n};\ngoog.proto2.Message.prototype.initDefaults = function(a) {\n  for (var b = this.getDescriptor().getFields(), c = 0; c < b.length; c++) {\n    var d = b[c], e = d.getTag(), f = d.isCompositeType();\n    this.has$Value(e) || d.isRepeated() || (f ? this.values_[e] = new (d.getNativeType()) : a && (this.values_[e] = d.getDefaultValue()));\n    if (f) {\n      if (d.isRepeated()) {\n        for (d = this.array$Values(e), e = 0; e < d.length; e++) {\n          d[e].initDefaults(a);\n        }\n      } else {\n        this.get$Value(e).initDefaults(a);\n      }\n    }\n  }\n};\ngoog.proto2.Message.prototype.has$Value = function(a) {\n  return null != this.values_[a];\n};\ngoog.proto2.Message.prototype.getValueForTag_ = function(a) {\n  var b = this.values_[a];\n  return null == b ? null : this.lazyDeserializer_ ? a in this.deserializedFields_ ? this.deserializedFields_[a] : (b = this.lazyDeserializer_.deserializeField(this, this.fields_[a], b), this.deserializedFields_[a] = b) : b;\n};\ngoog.proto2.Message.prototype.get$Value = function(a, b) {\n  var c = this.getValueForTag_(a);\n  if (this.fields_[a].isRepeated()) {\n    var d = b || 0;\n    goog.asserts.assert(0 <= d && d < c.length, \"Given index %s is out of bounds.  Repeated field length: %s\", d, c.length);\n    return c[d];\n  }\n  return c;\n};\ngoog.proto2.Message.prototype.get$ValueOrDefault = function(a, b) {\n  return this.has$Value(a) ? this.get$Value(a, b) : this.fields_[a].getDefaultValue();\n};\ngoog.proto2.Message.prototype.array$Values = function(a) {\n  return this.getValueForTag_(a) || [];\n};\ngoog.proto2.Message.prototype.count$Values = function(a) {\n  return this.fields_[a].isRepeated() ? this.has$Value(a) ? this.values_[a].length : 0 : this.has$Value(a) ? 1 : 0;\n};\ngoog.proto2.Message.prototype.set$Value = function(a, b) {\n  goog.asserts.ENABLE_ASSERTS && this.checkFieldType_(this.fields_[a], b);\n  this.values_[a] = b;\n  this.deserializedFields_ && (this.deserializedFields_[a] = b);\n};\ngoog.proto2.Message.prototype.add$Value = function(a, b) {\n  goog.asserts.ENABLE_ASSERTS && this.checkFieldType_(this.fields_[a], b);\n  this.values_[a] || (this.values_[a] = []);\n  this.values_[a].push(b);\n  this.deserializedFields_ && delete this.deserializedFields_[a];\n};\ngoog.proto2.Message.prototype.checkFieldType_ = function(a, b) {\n  a.getFieldType() == goog.proto2.FieldDescriptor.FieldType.ENUM ? goog.asserts.assertNumber(b) : goog.asserts.assert(Object(b).constructor == a.getNativeType());\n};\ngoog.proto2.Message.prototype.clear$Field = function(a) {\n  delete this.values_[a];\n  this.deserializedFields_ && delete this.deserializedFields_[a];\n};\ngoog.proto2.Message.createDescriptor = function(a, b) {\n  var c = [], d = b[0], e;\n  for (e in b) {\n    0 != e && c.push(new goog.proto2.FieldDescriptor(a, e, b[e]));\n  }\n  return new goog.proto2.Descriptor(a, d, c);\n};\ngoog.proto2.Serializer = function() {\n};\ngoog.proto2.Serializer.DECODE_SYMBOLIC_ENUMS = !1;\ngoog.proto2.Serializer.prototype.serialize = goog.abstractMethod;\ngoog.proto2.Serializer.prototype.getSerializedValue = function(a, b) {\n  return a.isCompositeType() ? this.serialize(b) : \"number\" !== typeof b || isFinite(b) ? b : b.toString();\n};\ngoog.proto2.Serializer.prototype.deserialize = function(a, b) {\n  var c = a.createMessageInstance();\n  this.deserializeTo(c, b);\n  goog.asserts.assert(c instanceof goog.proto2.Message);\n  return c;\n};\ngoog.proto2.Serializer.prototype.deserializeTo = goog.abstractMethod;\ngoog.proto2.Serializer.prototype.getDeserializedValue = function(a, b) {\n  if (a.isCompositeType()) {\n    return b instanceof goog.proto2.Message ? b : this.deserialize(a.getFieldMessageType(), b);\n  }\n  if (a.getFieldType() == goog.proto2.FieldDescriptor.FieldType.ENUM) {\n    if (goog.proto2.Serializer.DECODE_SYMBOLIC_ENUMS && \"string\" === typeof b) {\n      var c = a.getNativeType();\n      if (c.hasOwnProperty(b)) {\n        return c[b];\n      }\n    }\n    return \"string\" === typeof b && goog.proto2.Serializer.INTEGER_REGEX.test(b) && (c = Number(b), 0 < c) ? c : b;\n  }\n  if (!a.deserializationConversionPermitted()) {\n    return b;\n  }\n  c = a.getNativeType();\n  if (c === String) {\n    if (\"number\" === typeof b) {\n      return String(b);\n    }\n  } else {\n    if (c === Number && \"string\" === typeof b && (\"Infinity\" === b || \"-Infinity\" === b || \"NaN\" === b || goog.proto2.Serializer.INTEGER_REGEX.test(b))) {\n      return Number(b);\n    }\n  }\n  return b;\n};\ngoog.proto2.Serializer.INTEGER_REGEX = /^-?[0-9]+$/;\ngoog.proto2.LazyDeserializer = function() {\n};\ngoog.inherits(goog.proto2.LazyDeserializer, goog.proto2.Serializer);\ngoog.proto2.LazyDeserializer.prototype.deserialize = function(a, b) {\n  var c = a.createMessageInstance();\n  c.initializeForLazyDeserializer(this, b);\n  goog.asserts.assert(c instanceof goog.proto2.Message);\n  return c;\n};\ngoog.proto2.LazyDeserializer.prototype.deserializeTo = function(a, b) {\n  throw Error(\"Unimplemented\");\n};\ngoog.proto2.LazyDeserializer.prototype.deserializeField = goog.abstractMethod;\ngoog.proto2.PbLiteSerializer = function() {\n};\ngoog.inherits(goog.proto2.PbLiteSerializer, goog.proto2.LazyDeserializer);\ngoog.proto2.PbLiteSerializer.prototype.zeroIndexing_ = !1;\ngoog.proto2.PbLiteSerializer.prototype.setZeroIndexed = function(a) {\n  this.zeroIndexing_ = a;\n};\ngoog.proto2.PbLiteSerializer.prototype.serialize = function(a) {\n  for (var b = a.getDescriptor().getFields(), c = [], d = this.zeroIndexing_, e = 0; e < b.length; e++) {\n    var f = b[e];\n    if (a.has(f)) {\n      var g = f.getTag();\n      g = d ? g - 1 : g;\n      if (f.isRepeated()) {\n        c[g] = [];\n        for (var h = 0; h < a.countOf(f); h++) {\n          c[g][h] = this.getSerializedValue(f, a.get(f, h));\n        }\n      } else {\n        c[g] = this.getSerializedValue(f, a.get(f));\n      }\n    }\n  }\n  a.forEachUnknown(function(a, b) {\n    c[d ? a - 1 : a] = b;\n  });\n  return c;\n};\ngoog.proto2.PbLiteSerializer.prototype.deserializeField = function(a, b, c) {\n  if (null == c) {\n    return c;\n  }\n  if (b.isRepeated()) {\n    a = [];\n    goog.asserts.assert(goog.isArray(c), \"Value must be array: %s\", c);\n    for (var d = 0; d < c.length; d++) {\n      a[d] = this.getDeserializedValue(b, c[d]);\n    }\n    return a;\n  }\n  return this.getDeserializedValue(b, c);\n};\ngoog.proto2.PbLiteSerializer.prototype.getSerializedValue = function(a, b) {\n  return a.getFieldType() == goog.proto2.FieldDescriptor.FieldType.BOOL ? b ? 1 : 0 : goog.proto2.Serializer.prototype.getSerializedValue.apply(this, arguments);\n};\ngoog.proto2.PbLiteSerializer.prototype.getDeserializedValue = function(a, b) {\n  return a.getFieldType() == goog.proto2.FieldDescriptor.FieldType.BOOL ? (goog.asserts.assert(\"number\" === typeof b || \"boolean\" === typeof b, \"Value is expected to be a number or boolean\"), !!b) : goog.proto2.Serializer.prototype.getDeserializedValue.apply(this, arguments);\n};\ngoog.proto2.PbLiteSerializer.prototype.deserialize = function(a, b) {\n  var c = b;\n  if (this.zeroIndexing_) {\n    c = [];\n    for (var d in b) {\n      c[parseInt(d, 10) + 1] = b[d];\n    }\n  }\n  return goog.proto2.PbLiteSerializer.superClass_.deserialize.call(this, a, c);\n};\ngoog.labs.userAgent.engine = {};\ngoog.labs.userAgent.engine.isPresto = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Presto\");\n};\ngoog.labs.userAgent.engine.isTrident = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Trident\") || goog.labs.userAgent.util.matchUserAgent(\"MSIE\");\n};\ngoog.labs.userAgent.engine.isEdge = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Edge\");\n};\ngoog.labs.userAgent.engine.isWebKit = function() {\n  return goog.labs.userAgent.util.matchUserAgentIgnoreCase(\"WebKit\") && !goog.labs.userAgent.engine.isEdge();\n};\ngoog.labs.userAgent.engine.isGecko = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Gecko\") && !goog.labs.userAgent.engine.isWebKit() && !goog.labs.userAgent.engine.isTrident() && !goog.labs.userAgent.engine.isEdge();\n};\ngoog.labs.userAgent.engine.getVersion = function() {\n  var a = goog.labs.userAgent.util.getUserAgent();\n  if (a) {\n    a = goog.labs.userAgent.util.extractVersionTuples(a);\n    var b = goog.labs.userAgent.engine.getEngineTuple_(a);\n    if (b) {\n      return \"Gecko\" == b[0] ? goog.labs.userAgent.engine.getVersionForKey_(a, \"Firefox\") : b[1];\n    }\n    a = a[0];\n    var c;\n    if (a && (c = a[2]) && (c = /Trident\\/([^\\s;]+)/.exec(c))) {\n      return c[1];\n    }\n  }\n  return \"\";\n};\ngoog.labs.userAgent.engine.getEngineTuple_ = function(a) {\n  if (!goog.labs.userAgent.engine.isEdge()) {\n    return a[1];\n  }\n  for (var b = 0; b < a.length; b++) {\n    var c = a[b];\n    if (\"Edge\" == c[0]) {\n      return c;\n    }\n  }\n};\ngoog.labs.userAgent.engine.isVersionOrHigher = function(a) {\n  return 0 <= goog.string.compareVersions(goog.labs.userAgent.engine.getVersion(), a);\n};\ngoog.labs.userAgent.engine.getVersionForKey_ = function(a, b) {\n  var c = goog.array.find(a, function(a) {\n    return b == a[0];\n  });\n  return c && c[1] || \"\";\n};\ngoog.labs.userAgent.platform = {};\ngoog.labs.userAgent.platform.isAndroid = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Android\");\n};\ngoog.labs.userAgent.platform.isIpod = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"iPod\");\n};\ngoog.labs.userAgent.platform.isIphone = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"iPhone\") && !goog.labs.userAgent.util.matchUserAgent(\"iPod\") && !goog.labs.userAgent.util.matchUserAgent(\"iPad\");\n};\ngoog.labs.userAgent.platform.isIpad = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"iPad\");\n};\ngoog.labs.userAgent.platform.isIos = function() {\n  return goog.labs.userAgent.platform.isIphone() || goog.labs.userAgent.platform.isIpad() || goog.labs.userAgent.platform.isIpod();\n};\ngoog.labs.userAgent.platform.isMacintosh = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Macintosh\");\n};\ngoog.labs.userAgent.platform.isLinux = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Linux\");\n};\ngoog.labs.userAgent.platform.isWindows = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Windows\");\n};\ngoog.labs.userAgent.platform.isChromeOS = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"CrOS\");\n};\ngoog.labs.userAgent.platform.isChromecast = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"CrKey\");\n};\ngoog.labs.userAgent.platform.isKaiOS = function() {\n  return goog.labs.userAgent.util.matchUserAgentIgnoreCase(\"KaiOS\");\n};\ngoog.labs.userAgent.platform.isGo2Phone = function() {\n  return goog.labs.userAgent.util.matchUserAgentIgnoreCase(\"GAFP\");\n};\ngoog.labs.userAgent.platform.getVersion = function() {\n  var a = goog.labs.userAgent.util.getUserAgent(), b = \"\";\n  goog.labs.userAgent.platform.isWindows() ? (b = /Windows (?:NT|Phone) ([0-9.]+)/, b = (a = b.exec(a)) ? a[1] : \"0.0\") : goog.labs.userAgent.platform.isIos() ? (b = /(?:iPhone|iPod|iPad|CPU)\\s+OS\\s+(\\S+)/, b = (a = b.exec(a)) && a[1].replace(/_/g, \".\")) : goog.labs.userAgent.platform.isMacintosh() ? (b = /Mac OS X ([0-9_.]+)/, b = (a = b.exec(a)) ? a[1].replace(/_/g, \".\") : \"10\") : goog.labs.userAgent.platform.isKaiOS() ? (b = /(?:KaiOS)\\/(\\S+)/i, b = (a = b.exec(a)) && a[1]) : goog.labs.userAgent.platform.isAndroid() ?\n  (b = /Android\\s+([^\\);]+)(\\)|;)/, b = (a = b.exec(a)) && a[1]) : goog.labs.userAgent.platform.isChromeOS() && (b = /(?:CrOS\\s+(?:i686|x86_64)\\s+([0-9.]+))/, b = (a = b.exec(a)) && a[1]);\n  return b || \"\";\n};\ngoog.labs.userAgent.platform.isVersionOrHigher = function(a) {\n  return 0 <= goog.string.compareVersions(goog.labs.userAgent.platform.getVersion(), a);\n};\ngoog.reflect = {};\ngoog.reflect.object = function(a, b) {\n  return b;\n};\ngoog.reflect.objectProperty = function(a, b) {\n  return a;\n};\ngoog.reflect.sinkValue = function(a) {\n  goog.reflect.sinkValue[\" \"](a);\n  return a;\n};\ngoog.reflect.sinkValue[\" \"] = goog.nullFunction;\ngoog.reflect.canAccessProperty = function(a, b) {\n  try {\n    return goog.reflect.sinkValue(a[b]), !0;\n  } catch (c) {\n  }\n  return !1;\n};\ngoog.reflect.cache = function(a, b, c, d) {\n  d = d ? d(b) : b;\n  return Object.prototype.hasOwnProperty.call(a, d) ? a[d] : a[d] = c(b);\n};\ngoog.userAgent = {};\ngoog.userAgent.ASSUME_IE = !1;\ngoog.userAgent.ASSUME_EDGE = !1;\ngoog.userAgent.ASSUME_GECKO = !1;\ngoog.userAgent.ASSUME_WEBKIT = !1;\ngoog.userAgent.ASSUME_MOBILE_WEBKIT = !1;\ngoog.userAgent.ASSUME_OPERA = !1;\ngoog.userAgent.ASSUME_ANY_VERSION = !1;\ngoog.userAgent.BROWSER_KNOWN_ = goog.userAgent.ASSUME_IE || goog.userAgent.ASSUME_EDGE || goog.userAgent.ASSUME_GECKO || goog.userAgent.ASSUME_MOBILE_WEBKIT || goog.userAgent.ASSUME_WEBKIT || goog.userAgent.ASSUME_OPERA;\ngoog.userAgent.getUserAgentString = function() {\n  return goog.labs.userAgent.util.getUserAgent();\n};\ngoog.userAgent.getNavigatorTyped = function() {\n  return goog.global.navigator || null;\n};\ngoog.userAgent.getNavigator = function() {\n  return goog.userAgent.getNavigatorTyped();\n};\ngoog.userAgent.OPERA = goog.userAgent.BROWSER_KNOWN_ ? goog.userAgent.ASSUME_OPERA : goog.labs.userAgent.browser.isOpera();\ngoog.userAgent.IE = goog.userAgent.BROWSER_KNOWN_ ? goog.userAgent.ASSUME_IE : goog.labs.userAgent.browser.isIE();\ngoog.userAgent.EDGE = goog.userAgent.BROWSER_KNOWN_ ? goog.userAgent.ASSUME_EDGE : goog.labs.userAgent.engine.isEdge();\ngoog.userAgent.EDGE_OR_IE = goog.userAgent.EDGE || goog.userAgent.IE;\ngoog.userAgent.GECKO = goog.userAgent.BROWSER_KNOWN_ ? goog.userAgent.ASSUME_GECKO : goog.labs.userAgent.engine.isGecko();\ngoog.userAgent.WEBKIT = goog.userAgent.BROWSER_KNOWN_ ? goog.userAgent.ASSUME_WEBKIT || goog.userAgent.ASSUME_MOBILE_WEBKIT : goog.labs.userAgent.engine.isWebKit();\ngoog.userAgent.isMobile_ = function() {\n  return goog.userAgent.WEBKIT && goog.labs.userAgent.util.matchUserAgent(\"Mobile\");\n};\ngoog.userAgent.MOBILE = goog.userAgent.ASSUME_MOBILE_WEBKIT || goog.userAgent.isMobile_();\ngoog.userAgent.SAFARI = goog.userAgent.WEBKIT;\ngoog.userAgent.determinePlatform_ = function() {\n  var a = goog.userAgent.getNavigatorTyped();\n  return a && a.platform || \"\";\n};\ngoog.userAgent.PLATFORM = goog.userAgent.determinePlatform_();\ngoog.userAgent.ASSUME_MAC = !1;\ngoog.userAgent.ASSUME_WINDOWS = !1;\ngoog.userAgent.ASSUME_LINUX = !1;\ngoog.userAgent.ASSUME_X11 = !1;\ngoog.userAgent.ASSUME_ANDROID = !1;\ngoog.userAgent.ASSUME_IPHONE = !1;\ngoog.userAgent.ASSUME_IPAD = !1;\ngoog.userAgent.ASSUME_IPOD = !1;\ngoog.userAgent.ASSUME_KAIOS = !1;\ngoog.userAgent.ASSUME_GO2PHONE = !1;\ngoog.userAgent.PLATFORM_KNOWN_ = goog.userAgent.ASSUME_MAC || goog.userAgent.ASSUME_WINDOWS || goog.userAgent.ASSUME_LINUX || goog.userAgent.ASSUME_X11 || goog.userAgent.ASSUME_ANDROID || goog.userAgent.ASSUME_IPHONE || goog.userAgent.ASSUME_IPAD || goog.userAgent.ASSUME_IPOD;\ngoog.userAgent.MAC = goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_MAC : goog.labs.userAgent.platform.isMacintosh();\ngoog.userAgent.WINDOWS = goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_WINDOWS : goog.labs.userAgent.platform.isWindows();\ngoog.userAgent.isLegacyLinux_ = function() {\n  return goog.labs.userAgent.platform.isLinux() || goog.labs.userAgent.platform.isChromeOS();\n};\ngoog.userAgent.LINUX = goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_LINUX : goog.userAgent.isLegacyLinux_();\ngoog.userAgent.isX11_ = function() {\n  var a = goog.userAgent.getNavigatorTyped();\n  return !!a && goog.string.contains(a.appVersion || \"\", \"X11\");\n};\ngoog.userAgent.X11 = goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_X11 : goog.userAgent.isX11_();\ngoog.userAgent.ANDROID = goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_ANDROID : goog.labs.userAgent.platform.isAndroid();\ngoog.userAgent.IPHONE = goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_IPHONE : goog.labs.userAgent.platform.isIphone();\ngoog.userAgent.IPAD = goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_IPAD : goog.labs.userAgent.platform.isIpad();\ngoog.userAgent.IPOD = goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_IPOD : goog.labs.userAgent.platform.isIpod();\ngoog.userAgent.IOS = goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_IPHONE || goog.userAgent.ASSUME_IPAD || goog.userAgent.ASSUME_IPOD : goog.labs.userAgent.platform.isIos();\ngoog.userAgent.KAIOS = goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_KAIOS : goog.labs.userAgent.platform.isKaiOS();\ngoog.userAgent.GO2PHONE = goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_GO2PHONE : goog.labs.userAgent.platform.isGo2Phone();\ngoog.userAgent.determineVersion_ = function() {\n  var a = \"\", b = goog.userAgent.getVersionRegexResult_();\n  b && (a = b ? b[1] : \"\");\n  return goog.userAgent.IE && (b = goog.userAgent.getDocumentMode_(), null != b && b > parseFloat(a)) ? String(b) : a;\n};\ngoog.userAgent.getVersionRegexResult_ = function() {\n  var a = goog.userAgent.getUserAgentString();\n  if (goog.userAgent.GECKO) {\n    return /rv:([^\\);]+)(\\)|;)/.exec(a);\n  }\n  if (goog.userAgent.EDGE) {\n    return /Edge\\/([\\d\\.]+)/.exec(a);\n  }\n  if (goog.userAgent.IE) {\n    return /\\b(?:MSIE|rv)[: ]([^\\);]+)(\\)|;)/.exec(a);\n  }\n  if (goog.userAgent.WEBKIT) {\n    return /WebKit\\/(\\S+)/.exec(a);\n  }\n  if (goog.userAgent.OPERA) {\n    return /(?:Version)[ \\/]?(\\S+)/.exec(a);\n  }\n};\ngoog.userAgent.getDocumentMode_ = function() {\n  var a = goog.global.document;\n  return a ? a.documentMode : void 0;\n};\ngoog.userAgent.VERSION = goog.userAgent.determineVersion_();\ngoog.userAgent.compare = function(a, b) {\n  return goog.string.compareVersions(a, b);\n};\ngoog.userAgent.isVersionOrHigherCache_ = {};\ngoog.userAgent.isVersionOrHigher = function(a) {\n  return goog.userAgent.ASSUME_ANY_VERSION || goog.reflect.cache(goog.userAgent.isVersionOrHigherCache_, a, function() {\n    return 0 <= goog.string.compareVersions(goog.userAgent.VERSION, a);\n  });\n};\ngoog.userAgent.isVersion = goog.userAgent.isVersionOrHigher;\ngoog.userAgent.isDocumentModeOrHigher = function(a) {\n  return Number(goog.userAgent.DOCUMENT_MODE) >= a;\n};\ngoog.userAgent.isDocumentMode = goog.userAgent.isDocumentModeOrHigher;\ngoog.userAgent.DOCUMENT_MODE = function() {\n  if (goog.global.document && goog.userAgent.IE) {\n    return goog.userAgent.getDocumentMode_();\n  }\n}();\ngoog.dom.BrowserFeature = {};\ngoog.dom.BrowserFeature.ASSUME_NO_OFFSCREEN_CANVAS = !1;\ngoog.dom.BrowserFeature.ASSUME_OFFSCREEN_CANVAS = !1;\ngoog.dom.BrowserFeature.detectOffscreenCanvas_ = function(a) {\n  try {\n    return !!(new self.OffscreenCanvas(0, 0)).getContext(a);\n  } catch (b) {\n  }\n  return !1;\n};\ngoog.dom.BrowserFeature.OFFSCREEN_CANVAS_2D = !goog.dom.BrowserFeature.ASSUME_NO_OFFSCREEN_CANVAS && (goog.dom.BrowserFeature.ASSUME_OFFSCREEN_CANVAS || goog.dom.BrowserFeature.detectOffscreenCanvas_(\"2d\"));\ngoog.dom.BrowserFeature.CAN_ADD_NAME_OR_TYPE_ATTRIBUTES = !goog.userAgent.IE || goog.userAgent.isDocumentModeOrHigher(9);\ngoog.dom.BrowserFeature.CAN_USE_CHILDREN_ATTRIBUTE = !goog.userAgent.GECKO && !goog.userAgent.IE || goog.userAgent.IE && goog.userAgent.isDocumentModeOrHigher(9) || goog.userAgent.GECKO && goog.userAgent.isVersionOrHigher(\"1.9.1\");\ngoog.dom.BrowserFeature.CAN_USE_INNER_TEXT = goog.userAgent.IE && !goog.userAgent.isVersionOrHigher(\"9\");\ngoog.dom.BrowserFeature.CAN_USE_PARENT_ELEMENT_PROPERTY = goog.userAgent.IE || goog.userAgent.OPERA || goog.userAgent.WEBKIT;\ngoog.dom.BrowserFeature.INNER_HTML_NEEDS_SCOPED_ELEMENT = goog.userAgent.IE;\ngoog.dom.BrowserFeature.LEGACY_IE_RANGES = goog.userAgent.IE && !goog.userAgent.isDocumentModeOrHigher(9);\ngoog.math = {};\ngoog.math.randomInt = function(a) {\n  return Math.floor(Math.random() * a);\n};\ngoog.math.uniformRandom = function(a, b) {\n  return a + Math.random() * (b - a);\n};\ngoog.math.clamp = function(a, b, c) {\n  return Math.min(Math.max(a, b), c);\n};\ngoog.math.modulo = function(a, b) {\n  var c = a % b;\n  return 0 > c * b ? c + b : c;\n};\ngoog.math.lerp = function(a, b, c) {\n  return a + c * (b - a);\n};\ngoog.math.nearlyEquals = function(a, b, c) {\n  return Math.abs(a - b) <= (c || 0.000001);\n};\ngoog.math.standardAngle = function(a) {\n  return goog.math.modulo(a, 360);\n};\ngoog.math.standardAngleInRadians = function(a) {\n  return goog.math.modulo(a, 2 * Math.PI);\n};\ngoog.math.toRadians = function(a) {\n  return a * Math.PI / 180;\n};\ngoog.math.toDegrees = function(a) {\n  return 180 * a / Math.PI;\n};\ngoog.math.angleDx = function(a, b) {\n  return b * Math.cos(goog.math.toRadians(a));\n};\ngoog.math.angleDy = function(a, b) {\n  return b * Math.sin(goog.math.toRadians(a));\n};\ngoog.math.angle = function(a, b, c, d) {\n  return goog.math.standardAngle(goog.math.toDegrees(Math.atan2(d - b, c - a)));\n};\ngoog.math.angleDifference = function(a, b) {\n  var c = goog.math.standardAngle(b) - goog.math.standardAngle(a);\n  180 < c ? c -= 360 : -180 >= c && (c = 360 + c);\n  return c;\n};\ngoog.math.sign = function(a) {\n  return 0 < a ? 1 : 0 > a ? -1 : a;\n};\ngoog.math.longestCommonSubsequence = function(a, b, c, d) {\n  c = c || function(a, b) {\n    return a == b;\n  };\n  d = d || function(b, c) {\n    return a[b];\n  };\n  for (var e = a.length, f = b.length, g = [], h = 0; h < e + 1; h++) {\n    g[h] = [], g[h][0] = 0;\n  }\n  for (var k = 0; k < f + 1; k++) {\n    g[0][k] = 0;\n  }\n  for (h = 1; h <= e; h++) {\n    for (k = 1; k <= f; k++) {\n      c(a[h - 1], b[k - 1]) ? g[h][k] = g[h - 1][k - 1] + 1 : g[h][k] = Math.max(g[h - 1][k], g[h][k - 1]);\n    }\n  }\n  var l = [];\n  h = e;\n  for (k = f; 0 < h && 0 < k;) {\n    c(a[h - 1], b[k - 1]) ? (l.unshift(d(h - 1, k - 1)), h--, k--) : g[h - 1][k] > g[h][k - 1] ? h-- : k--;\n  }\n  return l;\n};\ngoog.math.sum = function(a) {\n  return goog.array.reduce(arguments, function(a, c) {\n    return a + c;\n  }, 0);\n};\ngoog.math.average = function(a) {\n  return goog.math.sum.apply(null, arguments) / arguments.length;\n};\ngoog.math.sampleVariance = function(a) {\n  var b = arguments.length;\n  if (2 > b) {\n    return 0;\n  }\n  var c = goog.math.average.apply(null, arguments);\n  return goog.math.sum.apply(null, goog.array.map(arguments, function(a) {\n    return Math.pow(a - c, 2);\n  })) / (b - 1);\n};\ngoog.math.standardDeviation = function(a) {\n  return Math.sqrt(goog.math.sampleVariance.apply(null, arguments));\n};\ngoog.math.isInt = function(a) {\n  return isFinite(a) && 0 == a % 1;\n};\ngoog.math.isFiniteNumber = function(a) {\n  return isFinite(a);\n};\ngoog.math.isNegativeZero = function(a) {\n  return 0 == a && 0 > 1 / a;\n};\ngoog.math.log10Floor = function(a) {\n  if (0 < a) {\n    var b = Math.round(Math.log(a) * Math.LOG10E);\n    return b - (parseFloat(\"1e\" + b) > a ? 1 : 0);\n  }\n  return 0 == a ? -Infinity : NaN;\n};\ngoog.math.safeFloor = function(a, b) {\n  goog.asserts.assert(void 0 === b || 0 < b);\n  return Math.floor(a + (b || 2e-15));\n};\ngoog.math.safeCeil = function(a, b) {\n  goog.asserts.assert(void 0 === b || 0 < b);\n  return Math.ceil(a - (b || 2e-15));\n};\ngoog.math.Coordinate = function(a, b) {\n  this.x = void 0 !== a ? a : 0;\n  this.y = void 0 !== b ? b : 0;\n};\ngoog.math.Coordinate.prototype.clone = function() {\n  return new goog.math.Coordinate(this.x, this.y);\n};\ngoog.DEBUG && (goog.math.Coordinate.prototype.toString = function() {\n  return \"(\" + this.x + \", \" + this.y + \")\";\n});\ngoog.math.Coordinate.prototype.equals = function(a) {\n  return a instanceof goog.math.Coordinate && goog.math.Coordinate.equals(this, a);\n};\ngoog.math.Coordinate.equals = function(a, b) {\n  return a == b ? !0 : a && b ? a.x == b.x && a.y == b.y : !1;\n};\ngoog.math.Coordinate.distance = function(a, b) {\n  var c = a.x - b.x, d = a.y - b.y;\n  return Math.sqrt(c * c + d * d);\n};\ngoog.math.Coordinate.magnitude = function(a) {\n  return Math.sqrt(a.x * a.x + a.y * a.y);\n};\ngoog.math.Coordinate.azimuth = function(a) {\n  return goog.math.angle(0, 0, a.x, a.y);\n};\ngoog.math.Coordinate.squaredDistance = function(a, b) {\n  var c = a.x - b.x, d = a.y - b.y;\n  return c * c + d * d;\n};\ngoog.math.Coordinate.difference = function(a, b) {\n  return new goog.math.Coordinate(a.x - b.x, a.y - b.y);\n};\ngoog.math.Coordinate.sum = function(a, b) {\n  return new goog.math.Coordinate(a.x + b.x, a.y + b.y);\n};\ngoog.math.Coordinate.prototype.ceil = function() {\n  this.x = Math.ceil(this.x);\n  this.y = Math.ceil(this.y);\n  return this;\n};\ngoog.math.Coordinate.prototype.floor = function() {\n  this.x = Math.floor(this.x);\n  this.y = Math.floor(this.y);\n  return this;\n};\ngoog.math.Coordinate.prototype.round = function() {\n  this.x = Math.round(this.x);\n  this.y = Math.round(this.y);\n  return this;\n};\ngoog.math.Coordinate.prototype.translate = function(a, b) {\n  a instanceof goog.math.Coordinate ? (this.x += a.x, this.y += a.y) : (this.x += Number(a), \"number\" === typeof b && (this.y += b));\n  return this;\n};\ngoog.math.Coordinate.prototype.scale = function(a, b) {\n  this.x *= a;\n  this.y *= \"number\" === typeof b ? b : a;\n  return this;\n};\ngoog.math.Coordinate.prototype.rotateRadians = function(a, b) {\n  var c = b || new goog.math.Coordinate(0, 0), d = this.x, e = this.y, f = Math.cos(a), g = Math.sin(a);\n  this.x = (d - c.x) * f - (e - c.y) * g + c.x;\n  this.y = (d - c.x) * g + (e - c.y) * f + c.y;\n};\ngoog.math.Coordinate.prototype.rotateDegrees = function(a, b) {\n  this.rotateRadians(goog.math.toRadians(a), b);\n};\ngoog.math.Size = function(a, b) {\n  this.width = a;\n  this.height = b;\n};\ngoog.math.Size.equals = function(a, b) {\n  return a == b ? !0 : a && b ? a.width == b.width && a.height == b.height : !1;\n};\ngoog.math.Size.prototype.clone = function() {\n  return new goog.math.Size(this.width, this.height);\n};\ngoog.DEBUG && (goog.math.Size.prototype.toString = function() {\n  return \"(\" + this.width + \" x \" + this.height + \")\";\n});\ngoog.math.Size.prototype.getLongest = function() {\n  return Math.max(this.width, this.height);\n};\ngoog.math.Size.prototype.getShortest = function() {\n  return Math.min(this.width, this.height);\n};\ngoog.math.Size.prototype.area = function() {\n  return this.width * this.height;\n};\ngoog.math.Size.prototype.perimeter = function() {\n  return 2 * (this.width + this.height);\n};\ngoog.math.Size.prototype.aspectRatio = function() {\n  return this.width / this.height;\n};\ngoog.math.Size.prototype.isEmpty = function() {\n  return !this.area();\n};\ngoog.math.Size.prototype.ceil = function() {\n  this.width = Math.ceil(this.width);\n  this.height = Math.ceil(this.height);\n  return this;\n};\ngoog.math.Size.prototype.fitsInside = function(a) {\n  return this.width <= a.width && this.height <= a.height;\n};\ngoog.math.Size.prototype.floor = function() {\n  this.width = Math.floor(this.width);\n  this.height = Math.floor(this.height);\n  return this;\n};\ngoog.math.Size.prototype.round = function() {\n  this.width = Math.round(this.width);\n  this.height = Math.round(this.height);\n  return this;\n};\ngoog.math.Size.prototype.scale = function(a, b) {\n  this.width *= a;\n  this.height *= \"number\" === typeof b ? b : a;\n  return this;\n};\ngoog.math.Size.prototype.scaleToCover = function(a) {\n  a = this.aspectRatio() <= a.aspectRatio() ? a.width / this.width : a.height / this.height;\n  return this.scale(a);\n};\ngoog.math.Size.prototype.scaleToFit = function(a) {\n  a = this.aspectRatio() > a.aspectRatio() ? a.width / this.width : a.height / this.height;\n  return this.scale(a);\n};\ngoog.dom.ASSUME_QUIRKS_MODE = !1;\ngoog.dom.ASSUME_STANDARDS_MODE = !1;\ngoog.dom.COMPAT_MODE_KNOWN_ = goog.dom.ASSUME_QUIRKS_MODE || goog.dom.ASSUME_STANDARDS_MODE;\ngoog.dom.getDomHelper = function(a) {\n  return a ? new goog.dom.DomHelper(goog.dom.getOwnerDocument(a)) : goog.dom.defaultDomHelper_ || (goog.dom.defaultDomHelper_ = new goog.dom.DomHelper);\n};\ngoog.dom.getDocument = function() {\n  return document;\n};\ngoog.dom.getElement = function(a) {\n  return goog.dom.getElementHelper_(document, a);\n};\ngoog.dom.getElementHelper_ = function(a, b) {\n  return \"string\" === typeof b ? a.getElementById(b) : b;\n};\ngoog.dom.getRequiredElement = function(a) {\n  return goog.dom.getRequiredElementHelper_(document, a);\n};\ngoog.dom.getRequiredElementHelper_ = function(a, b) {\n  goog.asserts.assertString(b);\n  var c = goog.dom.getElementHelper_(a, b);\n  return c = goog.asserts.assertElement(c, \"No element found with id: \" + b);\n};\ngoog.dom.$ = goog.dom.getElement;\ngoog.dom.getElementsByTagName = function(a, b) {\n  return (b || document).getElementsByTagName(String(a));\n};\ngoog.dom.getElementsByTagNameAndClass = function(a, b, c) {\n  return goog.dom.getElementsByTagNameAndClass_(document, a, b, c);\n};\ngoog.dom.getElementByTagNameAndClass = function(a, b, c) {\n  return goog.dom.getElementByTagNameAndClass_(document, a, b, c);\n};\ngoog.dom.getElementsByClass = function(a, b) {\n  var c = b || document;\n  return goog.dom.canUseQuerySelector_(c) ? c.querySelectorAll(\".\" + a) : goog.dom.getElementsByTagNameAndClass_(document, \"*\", a, b);\n};\ngoog.dom.getElementByClass = function(a, b) {\n  var c = b || document;\n  return (c.getElementsByClassName ? c.getElementsByClassName(a)[0] : goog.dom.getElementByTagNameAndClass_(document, \"*\", a, b)) || null;\n};\ngoog.dom.getRequiredElementByClass = function(a, b) {\n  var c = goog.dom.getElementByClass(a, b);\n  return goog.asserts.assert(c, \"No element found with className: \" + a);\n};\ngoog.dom.canUseQuerySelector_ = function(a) {\n  return !(!a.querySelectorAll || !a.querySelector);\n};\ngoog.dom.getElementsByTagNameAndClass_ = function(a, b, c, d) {\n  a = d || a;\n  b = b && \"*\" != b ? String(b).toUpperCase() : \"\";\n  if (goog.dom.canUseQuerySelector_(a) && (b || c)) {\n    return a.querySelectorAll(b + (c ? \".\" + c : \"\"));\n  }\n  if (c && a.getElementsByClassName) {\n    a = a.getElementsByClassName(c);\n    if (b) {\n      d = {};\n      for (var e = 0, f = 0, g; g = a[f]; f++) {\n        b == g.nodeName && (d[e++] = g);\n      }\n      d.length = e;\n      return d;\n    }\n    return a;\n  }\n  a = a.getElementsByTagName(b || \"*\");\n  if (c) {\n    d = {};\n    for (f = e = 0; g = a[f]; f++) {\n      b = g.className, \"function\" == typeof b.split && goog.array.contains(b.split(/\\s+/), c) && (d[e++] = g);\n    }\n    d.length = e;\n    return d;\n  }\n  return a;\n};\ngoog.dom.getElementByTagNameAndClass_ = function(a, b, c, d) {\n  var e = d || a, f = b && \"*\" != b ? String(b).toUpperCase() : \"\";\n  return goog.dom.canUseQuerySelector_(e) && (f || c) ? e.querySelector(f + (c ? \".\" + c : \"\")) : goog.dom.getElementsByTagNameAndClass_(a, b, c, d)[0] || null;\n};\ngoog.dom.$$ = goog.dom.getElementsByTagNameAndClass;\ngoog.dom.setProperties = function(a, b) {\n  goog.object.forEach(b, function(b, d) {\n    b && \"object\" == typeof b && b.implementsGoogStringTypedString && (b = b.getTypedStringValue());\n    \"style\" == d ? a.style.cssText = b : \"class\" == d ? a.className = b : \"for\" == d ? a.htmlFor = b : goog.dom.DIRECT_ATTRIBUTE_MAP_.hasOwnProperty(d) ? a.setAttribute(goog.dom.DIRECT_ATTRIBUTE_MAP_[d], b) : goog.string.startsWith(d, \"aria-\") || goog.string.startsWith(d, \"data-\") ? a.setAttribute(d, b) : a[d] = b;\n  });\n};\ngoog.dom.DIRECT_ATTRIBUTE_MAP_ = {cellpadding:\"cellPadding\", cellspacing:\"cellSpacing\", colspan:\"colSpan\", frameborder:\"frameBorder\", height:\"height\", maxlength:\"maxLength\", nonce:\"nonce\", role:\"role\", rowspan:\"rowSpan\", type:\"type\", usemap:\"useMap\", valign:\"vAlign\", width:\"width\"};\ngoog.dom.getViewportSize = function(a) {\n  return goog.dom.getViewportSize_(a || window);\n};\ngoog.dom.getViewportSize_ = function(a) {\n  a = a.document;\n  a = goog.dom.isCss1CompatMode_(a) ? a.documentElement : a.body;\n  return new goog.math.Size(a.clientWidth, a.clientHeight);\n};\ngoog.dom.getDocumentHeight = function() {\n  return goog.dom.getDocumentHeight_(window);\n};\ngoog.dom.getDocumentHeightForWindow = function(a) {\n  return goog.dom.getDocumentHeight_(a);\n};\ngoog.dom.getDocumentHeight_ = function(a) {\n  var b = a.document, c = 0;\n  if (b) {\n    c = b.body;\n    var d = b.documentElement;\n    if (!d || !c) {\n      return 0;\n    }\n    a = goog.dom.getViewportSize_(a).height;\n    if (goog.dom.isCss1CompatMode_(b) && d.scrollHeight) {\n      c = d.scrollHeight != a ? d.scrollHeight : d.offsetHeight;\n    } else {\n      b = d.scrollHeight;\n      var e = d.offsetHeight;\n      d.clientHeight != e && (b = c.scrollHeight, e = c.offsetHeight);\n      c = b > a ? b > e ? b : e : b < e ? b : e;\n    }\n  }\n  return c;\n};\ngoog.dom.getPageScroll = function(a) {\n  return goog.dom.getDomHelper((a || goog.global || window).document).getDocumentScroll();\n};\ngoog.dom.getDocumentScroll = function() {\n  return goog.dom.getDocumentScroll_(document);\n};\ngoog.dom.getDocumentScroll_ = function(a) {\n  var b = goog.dom.getDocumentScrollElement_(a);\n  a = goog.dom.getWindow_(a);\n  return goog.userAgent.IE && goog.userAgent.isVersionOrHigher(\"10\") && a.pageYOffset != b.scrollTop ? new goog.math.Coordinate(b.scrollLeft, b.scrollTop) : new goog.math.Coordinate(a.pageXOffset || b.scrollLeft, a.pageYOffset || b.scrollTop);\n};\ngoog.dom.getDocumentScrollElement = function() {\n  return goog.dom.getDocumentScrollElement_(document);\n};\ngoog.dom.getDocumentScrollElement_ = function(a) {\n  return a.scrollingElement ? a.scrollingElement : !goog.userAgent.WEBKIT && goog.dom.isCss1CompatMode_(a) ? a.documentElement : a.body || a.documentElement;\n};\ngoog.dom.getWindow = function(a) {\n  return a ? goog.dom.getWindow_(a) : window;\n};\ngoog.dom.getWindow_ = function(a) {\n  return a.parentWindow || a.defaultView;\n};\ngoog.dom.createDom = function(a, b, c) {\n  return goog.dom.createDom_(document, arguments);\n};\ngoog.dom.createDom_ = function(a, b) {\n  var c = String(b[0]), d = b[1];\n  if (!goog.dom.BrowserFeature.CAN_ADD_NAME_OR_TYPE_ATTRIBUTES && d && (d.name || d.type)) {\n    c = [\"<\", c];\n    d.name && c.push(' name=\"', goog.string.htmlEscape(d.name), '\"');\n    if (d.type) {\n      c.push(' type=\"', goog.string.htmlEscape(d.type), '\"');\n      var e = {};\n      goog.object.extend(e, d);\n      delete e.type;\n      d = e;\n    }\n    c.push(\">\");\n    c = c.join(\"\");\n  }\n  c = goog.dom.createElement_(a, c);\n  d && (\"string\" === typeof d ? c.className = d : goog.isArray(d) ? c.className = d.join(\" \") : goog.dom.setProperties(c, d));\n  2 < b.length && goog.dom.append_(a, c, b, 2);\n  return c;\n};\ngoog.dom.append_ = function(a, b, c, d) {\n  function e(c) {\n    c && b.appendChild(\"string\" === typeof c ? a.createTextNode(c) : c);\n  }\n  for (; d < c.length; d++) {\n    var f = c[d];\n    goog.isArrayLike(f) && !goog.dom.isNodeLike(f) ? goog.array.forEach(goog.dom.isNodeList(f) ? goog.array.toArray(f) : f, e) : e(f);\n  }\n};\ngoog.dom.$dom = goog.dom.createDom;\ngoog.dom.createElement = function(a) {\n  return goog.dom.createElement_(document, a);\n};\ngoog.dom.createElement_ = function(a, b) {\n  b = String(b);\n  \"application/xhtml+xml\" === a.contentType && (b = b.toLowerCase());\n  return a.createElement(b);\n};\ngoog.dom.createTextNode = function(a) {\n  return document.createTextNode(String(a));\n};\ngoog.dom.createTable = function(a, b, c) {\n  return goog.dom.createTable_(document, a, b, !!c);\n};\ngoog.dom.createTable_ = function(a, b, c, d) {\n  for (var e = goog.dom.createElement_(a, \"TABLE\"), f = e.appendChild(goog.dom.createElement_(a, \"TBODY\")), g = 0; g < b; g++) {\n    for (var h = goog.dom.createElement_(a, \"TR\"), k = 0; k < c; k++) {\n      var l = goog.dom.createElement_(a, \"TD\");\n      d && goog.dom.setTextContent(l, goog.string.Unicode.NBSP);\n      h.appendChild(l);\n    }\n    f.appendChild(h);\n  }\n  return e;\n};\ngoog.dom.constHtmlToNode = function(a) {\n  var b = goog.array.map(arguments, goog.string.Const.unwrap);\n  b = goog.html.uncheckedconversions.safeHtmlFromStringKnownToSatisfyTypeContract(goog.string.Const.from(\"Constant HTML string, that gets turned into a Node later, so it will be automatically balanced.\"), b.join(\"\"));\n  return goog.dom.safeHtmlToNode(b);\n};\ngoog.dom.safeHtmlToNode = function(a) {\n  return goog.dom.safeHtmlToNode_(document, a);\n};\ngoog.dom.safeHtmlToNode_ = function(a, b) {\n  var c = goog.dom.createElement_(a, \"DIV\");\n  goog.dom.BrowserFeature.INNER_HTML_NEEDS_SCOPED_ELEMENT ? (goog.dom.safe.setInnerHtml(c, goog.html.SafeHtml.concat(goog.html.SafeHtml.BR, b)), c.removeChild(goog.asserts.assert(c.firstChild))) : goog.dom.safe.setInnerHtml(c, b);\n  return goog.dom.childrenToNode_(a, c);\n};\ngoog.dom.childrenToNode_ = function(a, b) {\n  if (1 == b.childNodes.length) {\n    return b.removeChild(goog.asserts.assert(b.firstChild));\n  }\n  for (var c = a.createDocumentFragment(); b.firstChild;) {\n    c.appendChild(b.firstChild);\n  }\n  return c;\n};\ngoog.dom.isCss1CompatMode = function() {\n  return goog.dom.isCss1CompatMode_(document);\n};\ngoog.dom.isCss1CompatMode_ = function(a) {\n  return goog.dom.COMPAT_MODE_KNOWN_ ? goog.dom.ASSUME_STANDARDS_MODE : \"CSS1Compat\" == a.compatMode;\n};\ngoog.dom.canHaveChildren = function(a) {\n  if (a.nodeType != goog.dom.NodeType.ELEMENT) {\n    return !1;\n  }\n  switch(a.tagName) {\n    case \"APPLET\":\n    case \"AREA\":\n    case \"BASE\":\n    case \"BR\":\n    case \"COL\":\n    case \"COMMAND\":\n    case \"EMBED\":\n    case \"FRAME\":\n    case \"HR\":\n    case \"IMG\":\n    case \"INPUT\":\n    case \"IFRAME\":\n    case \"ISINDEX\":\n    case \"KEYGEN\":\n    case \"LINK\":\n    case \"NOFRAMES\":\n    case \"NOSCRIPT\":\n    case \"META\":\n    case \"OBJECT\":\n    case \"PARAM\":\n    case \"SCRIPT\":\n    case \"SOURCE\":\n    case \"STYLE\":\n    case \"TRACK\":\n    case \"WBR\":\n      return !1;\n  }\n  return !0;\n};\ngoog.dom.appendChild = function(a, b) {\n  goog.asserts.assert(null != a && null != b, \"goog.dom.appendChild expects non-null arguments\");\n  a.appendChild(b);\n};\ngoog.dom.append = function(a, b) {\n  goog.dom.append_(goog.dom.getOwnerDocument(a), a, arguments, 1);\n};\ngoog.dom.removeChildren = function(a) {\n  for (var b; b = a.firstChild;) {\n    a.removeChild(b);\n  }\n};\ngoog.dom.insertSiblingBefore = function(a, b) {\n  goog.asserts.assert(null != a && null != b, \"goog.dom.insertSiblingBefore expects non-null arguments\");\n  b.parentNode && b.parentNode.insertBefore(a, b);\n};\ngoog.dom.insertSiblingAfter = function(a, b) {\n  goog.asserts.assert(null != a && null != b, \"goog.dom.insertSiblingAfter expects non-null arguments\");\n  b.parentNode && b.parentNode.insertBefore(a, b.nextSibling);\n};\ngoog.dom.insertChildAt = function(a, b, c) {\n  goog.asserts.assert(null != a, \"goog.dom.insertChildAt expects a non-null parent\");\n  a.insertBefore(b, a.childNodes[c] || null);\n};\ngoog.dom.removeNode = function(a) {\n  return a && a.parentNode ? a.parentNode.removeChild(a) : null;\n};\ngoog.dom.replaceNode = function(a, b) {\n  goog.asserts.assert(null != a && null != b, \"goog.dom.replaceNode expects non-null arguments\");\n  var c = b.parentNode;\n  c && c.replaceChild(a, b);\n};\ngoog.dom.flattenElement = function(a) {\n  var b, c = a.parentNode;\n  if (c && c.nodeType != goog.dom.NodeType.DOCUMENT_FRAGMENT) {\n    if (a.removeNode) {\n      return a.removeNode(!1);\n    }\n    for (; b = a.firstChild;) {\n      c.insertBefore(b, a);\n    }\n    return goog.dom.removeNode(a);\n  }\n};\ngoog.dom.getChildren = function(a) {\n  return goog.dom.BrowserFeature.CAN_USE_CHILDREN_ATTRIBUTE && void 0 != a.children ? a.children : goog.array.filter(a.childNodes, function(a) {\n    return a.nodeType == goog.dom.NodeType.ELEMENT;\n  });\n};\ngoog.dom.getFirstElementChild = function(a) {\n  return void 0 !== a.firstElementChild ? a.firstElementChild : goog.dom.getNextElementNode_(a.firstChild, !0);\n};\ngoog.dom.getLastElementChild = function(a) {\n  return void 0 !== a.lastElementChild ? a.lastElementChild : goog.dom.getNextElementNode_(a.lastChild, !1);\n};\ngoog.dom.getNextElementSibling = function(a) {\n  return void 0 !== a.nextElementSibling ? a.nextElementSibling : goog.dom.getNextElementNode_(a.nextSibling, !0);\n};\ngoog.dom.getPreviousElementSibling = function(a) {\n  return void 0 !== a.previousElementSibling ? a.previousElementSibling : goog.dom.getNextElementNode_(a.previousSibling, !1);\n};\ngoog.dom.getNextElementNode_ = function(a, b) {\n  for (; a && a.nodeType != goog.dom.NodeType.ELEMENT;) {\n    a = b ? a.nextSibling : a.previousSibling;\n  }\n  return a;\n};\ngoog.dom.getNextNode = function(a) {\n  if (!a) {\n    return null;\n  }\n  if (a.firstChild) {\n    return a.firstChild;\n  }\n  for (; a && !a.nextSibling;) {\n    a = a.parentNode;\n  }\n  return a ? a.nextSibling : null;\n};\ngoog.dom.getPreviousNode = function(a) {\n  if (!a) {\n    return null;\n  }\n  if (!a.previousSibling) {\n    return a.parentNode;\n  }\n  for (a = a.previousSibling; a && a.lastChild;) {\n    a = a.lastChild;\n  }\n  return a;\n};\ngoog.dom.isNodeLike = function(a) {\n  return goog.isObject(a) && 0 < a.nodeType;\n};\ngoog.dom.isElement = function(a) {\n  return goog.isObject(a) && a.nodeType == goog.dom.NodeType.ELEMENT;\n};\ngoog.dom.isWindow = function(a) {\n  return goog.isObject(a) && a.window == a;\n};\ngoog.dom.getParentElement = function(a) {\n  var b;\n  if (goog.dom.BrowserFeature.CAN_USE_PARENT_ELEMENT_PROPERTY && !(goog.userAgent.IE && goog.userAgent.isVersionOrHigher(\"9\") && !goog.userAgent.isVersionOrHigher(\"10\") && goog.global.SVGElement && a instanceof goog.global.SVGElement) && (b = a.parentElement)) {\n    return b;\n  }\n  b = a.parentNode;\n  return goog.dom.isElement(b) ? b : null;\n};\ngoog.dom.contains = function(a, b) {\n  if (!a || !b) {\n    return !1;\n  }\n  if (a.contains && b.nodeType == goog.dom.NodeType.ELEMENT) {\n    return a == b || a.contains(b);\n  }\n  if (\"undefined\" != typeof a.compareDocumentPosition) {\n    return a == b || !!(a.compareDocumentPosition(b) & 16);\n  }\n  for (; b && a != b;) {\n    b = b.parentNode;\n  }\n  return b == a;\n};\ngoog.dom.compareNodeOrder = function(a, b) {\n  if (a == b) {\n    return 0;\n  }\n  if (a.compareDocumentPosition) {\n    return a.compareDocumentPosition(b) & 2 ? 1 : -1;\n  }\n  if (goog.userAgent.IE && !goog.userAgent.isDocumentModeOrHigher(9)) {\n    if (a.nodeType == goog.dom.NodeType.DOCUMENT) {\n      return -1;\n    }\n    if (b.nodeType == goog.dom.NodeType.DOCUMENT) {\n      return 1;\n    }\n  }\n  if (\"sourceIndex\" in a || a.parentNode && \"sourceIndex\" in a.parentNode) {\n    var c = a.nodeType == goog.dom.NodeType.ELEMENT, d = b.nodeType == goog.dom.NodeType.ELEMENT;\n    if (c && d) {\n      return a.sourceIndex - b.sourceIndex;\n    }\n    var e = a.parentNode, f = b.parentNode;\n    return e == f ? goog.dom.compareSiblingOrder_(a, b) : !c && goog.dom.contains(e, b) ? -1 * goog.dom.compareParentsDescendantNodeIe_(a, b) : !d && goog.dom.contains(f, a) ? goog.dom.compareParentsDescendantNodeIe_(b, a) : (c ? a.sourceIndex : e.sourceIndex) - (d ? b.sourceIndex : f.sourceIndex);\n  }\n  d = goog.dom.getOwnerDocument(a);\n  c = d.createRange();\n  c.selectNode(a);\n  c.collapse(!0);\n  d = d.createRange();\n  d.selectNode(b);\n  d.collapse(!0);\n  return c.compareBoundaryPoints(goog.global.Range.START_TO_END, d);\n};\ngoog.dom.compareParentsDescendantNodeIe_ = function(a, b) {\n  var c = a.parentNode;\n  if (c == b) {\n    return -1;\n  }\n  for (var d = b; d.parentNode != c;) {\n    d = d.parentNode;\n  }\n  return goog.dom.compareSiblingOrder_(d, a);\n};\ngoog.dom.compareSiblingOrder_ = function(a, b) {\n  for (var c = b; c = c.previousSibling;) {\n    if (c == a) {\n      return -1;\n    }\n  }\n  return 1;\n};\ngoog.dom.findCommonAncestor = function(a) {\n  var b, c = arguments.length;\n  if (!c) {\n    return null;\n  }\n  if (1 == c) {\n    return arguments[0];\n  }\n  var d = [], e = Infinity;\n  for (b = 0; b < c; b++) {\n    for (var f = [], g = arguments[b]; g;) {\n      f.unshift(g), g = g.parentNode;\n    }\n    d.push(f);\n    e = Math.min(e, f.length);\n  }\n  f = null;\n  for (b = 0; b < e; b++) {\n    g = d[0][b];\n    for (var h = 1; h < c; h++) {\n      if (g != d[h][b]) {\n        return f;\n      }\n    }\n    f = g;\n  }\n  return f;\n};\ngoog.dom.isInDocument = function(a) {\n  return 16 == (a.ownerDocument.compareDocumentPosition(a) & 16);\n};\ngoog.dom.getOwnerDocument = function(a) {\n  goog.asserts.assert(a, \"Node cannot be null or undefined.\");\n  return a.nodeType == goog.dom.NodeType.DOCUMENT ? a : a.ownerDocument || a.document;\n};\ngoog.dom.getFrameContentDocument = function(a) {\n  return a.contentDocument || a.contentWindow.document;\n};\ngoog.dom.getFrameContentWindow = function(a) {\n  try {\n    return a.contentWindow || (a.contentDocument ? goog.dom.getWindow(a.contentDocument) : null);\n  } catch (b) {\n  }\n  return null;\n};\ngoog.dom.setTextContent = function(a, b) {\n  goog.asserts.assert(null != a, \"goog.dom.setTextContent expects a non-null value for node\");\n  if (\"textContent\" in a) {\n    a.textContent = b;\n  } else {\n    if (a.nodeType == goog.dom.NodeType.TEXT) {\n      a.data = String(b);\n    } else {\n      if (a.firstChild && a.firstChild.nodeType == goog.dom.NodeType.TEXT) {\n        for (; a.lastChild != a.firstChild;) {\n          a.removeChild(goog.asserts.assert(a.lastChild));\n        }\n        a.firstChild.data = String(b);\n      } else {\n        goog.dom.removeChildren(a);\n        var c = goog.dom.getOwnerDocument(a);\n        a.appendChild(c.createTextNode(String(b)));\n      }\n    }\n  }\n};\ngoog.dom.getOuterHtml = function(a) {\n  goog.asserts.assert(null !== a, \"goog.dom.getOuterHtml expects a non-null value for element\");\n  if (\"outerHTML\" in a) {\n    return a.outerHTML;\n  }\n  var b = goog.dom.getOwnerDocument(a);\n  b = goog.dom.createElement_(b, \"DIV\");\n  b.appendChild(a.cloneNode(!0));\n  return b.innerHTML;\n};\ngoog.dom.findNode = function(a, b) {\n  var c = [];\n  return goog.dom.findNodes_(a, b, c, !0) ? c[0] : void 0;\n};\ngoog.dom.findNodes = function(a, b) {\n  var c = [];\n  goog.dom.findNodes_(a, b, c, !1);\n  return c;\n};\ngoog.dom.findNodes_ = function(a, b, c, d) {\n  if (null != a) {\n    for (a = a.firstChild; a;) {\n      if (b(a) && (c.push(a), d) || goog.dom.findNodes_(a, b, c, d)) {\n        return !0;\n      }\n      a = a.nextSibling;\n    }\n  }\n  return !1;\n};\ngoog.dom.findElement = function(a, b) {\n  for (var c = goog.dom.getChildrenReverse_(a); 0 < c.length;) {\n    var d = c.pop();\n    if (b(d)) {\n      return d;\n    }\n    for (d = d.lastElementChild; d; d = d.previousElementSibling) {\n      c.push(d);\n    }\n  }\n  return null;\n};\ngoog.dom.findElements = function(a, b) {\n  for (var c = [], d = goog.dom.getChildrenReverse_(a); 0 < d.length;) {\n    var e = d.pop();\n    b(e) && c.push(e);\n    for (e = e.lastElementChild; e; e = e.previousElementSibling) {\n      d.push(e);\n    }\n  }\n  return c;\n};\ngoog.dom.getChildrenReverse_ = function(a) {\n  if (a.nodeType == goog.dom.NodeType.DOCUMENT) {\n    return [a.documentElement];\n  }\n  var b = [];\n  for (a = a.lastElementChild; a; a = a.previousElementSibling) {\n    b.push(a);\n  }\n  return b;\n};\ngoog.dom.TAGS_TO_IGNORE_ = {SCRIPT:1, STYLE:1, HEAD:1, IFRAME:1, OBJECT:1};\ngoog.dom.PREDEFINED_TAG_VALUES_ = {IMG:\" \", BR:\"\\n\"};\ngoog.dom.isFocusableTabIndex = function(a) {\n  return goog.dom.hasSpecifiedTabIndex_(a) && goog.dom.isTabIndexFocusable_(a);\n};\ngoog.dom.setFocusableTabIndex = function(a, b) {\n  b ? a.tabIndex = 0 : (a.tabIndex = -1, a.removeAttribute(\"tabIndex\"));\n};\ngoog.dom.isFocusable = function(a) {\n  var b;\n  return (b = goog.dom.nativelySupportsFocus_(a) ? !a.disabled && (!goog.dom.hasSpecifiedTabIndex_(a) || goog.dom.isTabIndexFocusable_(a)) : goog.dom.isFocusableTabIndex(a)) && goog.userAgent.IE ? goog.dom.hasNonZeroBoundingRect_(a) : b;\n};\ngoog.dom.hasSpecifiedTabIndex_ = function(a) {\n  return goog.userAgent.IE && !goog.userAgent.isVersionOrHigher(\"9\") ? (a = a.getAttributeNode(\"tabindex\"), null != a && a.specified) : a.hasAttribute(\"tabindex\");\n};\ngoog.dom.isTabIndexFocusable_ = function(a) {\n  a = a.tabIndex;\n  return \"number\" === typeof a && 0 <= a && 32768 > a;\n};\ngoog.dom.nativelySupportsFocus_ = function(a) {\n  return \"A\" == a.tagName && a.hasAttribute(\"href\") || \"INPUT\" == a.tagName || \"TEXTAREA\" == a.tagName || \"SELECT\" == a.tagName || \"BUTTON\" == a.tagName;\n};\ngoog.dom.hasNonZeroBoundingRect_ = function(a) {\n  a = !goog.isFunction(a.getBoundingClientRect) || goog.userAgent.IE && null == a.parentElement ? {height:a.offsetHeight, width:a.offsetWidth} : a.getBoundingClientRect();\n  return null != a && 0 < a.height && 0 < a.width;\n};\ngoog.dom.getTextContent = function(a) {\n  if (goog.dom.BrowserFeature.CAN_USE_INNER_TEXT && null !== a && \"innerText\" in a) {\n    a = goog.string.canonicalizeNewlines(a.innerText);\n  } else {\n    var b = [];\n    goog.dom.getTextContent_(a, b, !0);\n    a = b.join(\"\");\n  }\n  a = a.replace(/ \\xAD /g, \" \").replace(/\\xAD/g, \"\");\n  a = a.replace(/\\u200B/g, \"\");\n  goog.dom.BrowserFeature.CAN_USE_INNER_TEXT || (a = a.replace(/ +/g, \" \"));\n  \" \" != a && (a = a.replace(/^\\s*/, \"\"));\n  return a;\n};\ngoog.dom.getRawTextContent = function(a) {\n  var b = [];\n  goog.dom.getTextContent_(a, b, !1);\n  return b.join(\"\");\n};\ngoog.dom.getTextContent_ = function(a, b, c) {\n  if (!(a.nodeName in goog.dom.TAGS_TO_IGNORE_)) {\n    if (a.nodeType == goog.dom.NodeType.TEXT) {\n      c ? b.push(String(a.nodeValue).replace(/(\\r\\n|\\r|\\n)/g, \"\")) : b.push(a.nodeValue);\n    } else {\n      if (a.nodeName in goog.dom.PREDEFINED_TAG_VALUES_) {\n        b.push(goog.dom.PREDEFINED_TAG_VALUES_[a.nodeName]);\n      } else {\n        for (a = a.firstChild; a;) {\n          goog.dom.getTextContent_(a, b, c), a = a.nextSibling;\n        }\n      }\n    }\n  }\n};\ngoog.dom.getNodeTextLength = function(a) {\n  return goog.dom.getTextContent(a).length;\n};\ngoog.dom.getNodeTextOffset = function(a, b) {\n  for (var c = b || goog.dom.getOwnerDocument(a).body, d = []; a && a != c;) {\n    for (var e = a; e = e.previousSibling;) {\n      d.unshift(goog.dom.getTextContent(e));\n    }\n    a = a.parentNode;\n  }\n  return goog.string.trimLeft(d.join(\"\")).replace(/ +/g, \" \").length;\n};\ngoog.dom.getNodeAtOffset = function(a, b, c) {\n  a = [a];\n  for (var d = 0, e = null; 0 < a.length && d < b;) {\n    if (e = a.pop(), !(e.nodeName in goog.dom.TAGS_TO_IGNORE_)) {\n      if (e.nodeType == goog.dom.NodeType.TEXT) {\n        var f = e.nodeValue.replace(/(\\r\\n|\\r|\\n)/g, \"\").replace(/ +/g, \" \");\n        d += f.length;\n      } else {\n        if (e.nodeName in goog.dom.PREDEFINED_TAG_VALUES_) {\n          d += goog.dom.PREDEFINED_TAG_VALUES_[e.nodeName].length;\n        } else {\n          for (f = e.childNodes.length - 1; 0 <= f; f--) {\n            a.push(e.childNodes[f]);\n          }\n        }\n      }\n    }\n  }\n  goog.isObject(c) && (c.remainder = e ? e.nodeValue.length + b - d - 1 : 0, c.node = e);\n  return e;\n};\ngoog.dom.isNodeList = function(a) {\n  if (a && \"number\" == typeof a.length) {\n    if (goog.isObject(a)) {\n      return \"function\" == typeof a.item || \"string\" == typeof a.item;\n    }\n    if (goog.isFunction(a)) {\n      return \"function\" == typeof a.item;\n    }\n  }\n  return !1;\n};\ngoog.dom.getAncestorByTagNameAndClass = function(a, b, c, d) {\n  if (!b && !c) {\n    return null;\n  }\n  var e = b ? String(b).toUpperCase() : null;\n  return goog.dom.getAncestor(a, function(a) {\n    return (!e || a.nodeName == e) && (!c || \"string\" === typeof a.className && goog.array.contains(a.className.split(/\\s+/), c));\n  }, !0, d);\n};\ngoog.dom.getAncestorByClass = function(a, b, c) {\n  return goog.dom.getAncestorByTagNameAndClass(a, null, b, c);\n};\ngoog.dom.getAncestor = function(a, b, c, d) {\n  a && !c && (a = a.parentNode);\n  for (c = 0; a && (null == d || c <= d);) {\n    goog.asserts.assert(\"parentNode\" != a.name);\n    if (b(a)) {\n      return a;\n    }\n    a = a.parentNode;\n    c++;\n  }\n  return null;\n};\ngoog.dom.getActiveElement = function(a) {\n  try {\n    var b = a && a.activeElement;\n    return b && b.nodeName ? b : null;\n  } catch (c) {\n    return null;\n  }\n};\ngoog.dom.getPixelRatio = function() {\n  var a = goog.dom.getWindow();\n  return void 0 !== a.devicePixelRatio ? a.devicePixelRatio : a.matchMedia ? goog.dom.matchesPixelRatio_(3) || goog.dom.matchesPixelRatio_(2) || goog.dom.matchesPixelRatio_(1.5) || goog.dom.matchesPixelRatio_(1) || .75 : 1;\n};\ngoog.dom.matchesPixelRatio_ = function(a) {\n  return goog.dom.getWindow().matchMedia(\"(min-resolution: \" + a + \"dppx),(min--moz-device-pixel-ratio: \" + a + \"),(min-resolution: \" + 96 * a + \"dpi)\").matches ? a : 0;\n};\ngoog.dom.getCanvasContext2D = function(a) {\n  return a.getContext(\"2d\");\n};\ngoog.dom.DomHelper = function(a) {\n  this.document_ = a || goog.global.document || document;\n};\ngoog.dom.DomHelper.prototype.getDomHelper = goog.dom.getDomHelper;\ngoog.dom.DomHelper.prototype.setDocument = function(a) {\n  this.document_ = a;\n};\ngoog.dom.DomHelper.prototype.getDocument = function() {\n  return this.document_;\n};\ngoog.dom.DomHelper.prototype.getElement = function(a) {\n  return goog.dom.getElementHelper_(this.document_, a);\n};\ngoog.dom.DomHelper.prototype.getRequiredElement = function(a) {\n  return goog.dom.getRequiredElementHelper_(this.document_, a);\n};\ngoog.dom.DomHelper.prototype.$ = goog.dom.DomHelper.prototype.getElement;\ngoog.dom.DomHelper.prototype.getElementsByTagName = function(a, b) {\n  return (b || this.document_).getElementsByTagName(String(a));\n};\ngoog.dom.DomHelper.prototype.getElementsByTagNameAndClass = function(a, b, c) {\n  return goog.dom.getElementsByTagNameAndClass_(this.document_, a, b, c);\n};\ngoog.dom.DomHelper.prototype.getElementByTagNameAndClass = function(a, b, c) {\n  return goog.dom.getElementByTagNameAndClass_(this.document_, a, b, c);\n};\ngoog.dom.DomHelper.prototype.getElementsByClass = function(a, b) {\n  return goog.dom.getElementsByClass(a, b || this.document_);\n};\ngoog.dom.DomHelper.prototype.getElementByClass = function(a, b) {\n  return goog.dom.getElementByClass(a, b || this.document_);\n};\ngoog.dom.DomHelper.prototype.getRequiredElementByClass = function(a, b) {\n  return goog.dom.getRequiredElementByClass(a, b || this.document_);\n};\ngoog.dom.DomHelper.prototype.$$ = goog.dom.DomHelper.prototype.getElementsByTagNameAndClass;\ngoog.dom.DomHelper.prototype.setProperties = goog.dom.setProperties;\ngoog.dom.DomHelper.prototype.getViewportSize = function(a) {\n  return goog.dom.getViewportSize(a || this.getWindow());\n};\ngoog.dom.DomHelper.prototype.getDocumentHeight = function() {\n  return goog.dom.getDocumentHeight_(this.getWindow());\n};\ngoog.dom.DomHelper.prototype.createDom = function(a, b, c) {\n  return goog.dom.createDom_(this.document_, arguments);\n};\ngoog.dom.DomHelper.prototype.$dom = goog.dom.DomHelper.prototype.createDom;\ngoog.dom.DomHelper.prototype.createElement = function(a) {\n  return goog.dom.createElement_(this.document_, a);\n};\ngoog.dom.DomHelper.prototype.createTextNode = function(a) {\n  return this.document_.createTextNode(String(a));\n};\ngoog.dom.DomHelper.prototype.createTable = function(a, b, c) {\n  return goog.dom.createTable_(this.document_, a, b, !!c);\n};\ngoog.dom.DomHelper.prototype.safeHtmlToNode = function(a) {\n  return goog.dom.safeHtmlToNode_(this.document_, a);\n};\ngoog.dom.DomHelper.prototype.isCss1CompatMode = function() {\n  return goog.dom.isCss1CompatMode_(this.document_);\n};\ngoog.dom.DomHelper.prototype.getWindow = function() {\n  return goog.dom.getWindow_(this.document_);\n};\ngoog.dom.DomHelper.prototype.getDocumentScrollElement = function() {\n  return goog.dom.getDocumentScrollElement_(this.document_);\n};\ngoog.dom.DomHelper.prototype.getDocumentScroll = function() {\n  return goog.dom.getDocumentScroll_(this.document_);\n};\ngoog.dom.DomHelper.prototype.getActiveElement = function(a) {\n  return goog.dom.getActiveElement(a || this.document_);\n};\ngoog.dom.DomHelper.prototype.appendChild = goog.dom.appendChild;\ngoog.dom.DomHelper.prototype.append = goog.dom.append;\ngoog.dom.DomHelper.prototype.canHaveChildren = goog.dom.canHaveChildren;\ngoog.dom.DomHelper.prototype.removeChildren = goog.dom.removeChildren;\ngoog.dom.DomHelper.prototype.insertSiblingBefore = goog.dom.insertSiblingBefore;\ngoog.dom.DomHelper.prototype.insertSiblingAfter = goog.dom.insertSiblingAfter;\ngoog.dom.DomHelper.prototype.insertChildAt = goog.dom.insertChildAt;\ngoog.dom.DomHelper.prototype.removeNode = goog.dom.removeNode;\ngoog.dom.DomHelper.prototype.replaceNode = goog.dom.replaceNode;\ngoog.dom.DomHelper.prototype.flattenElement = goog.dom.flattenElement;\ngoog.dom.DomHelper.prototype.getChildren = goog.dom.getChildren;\ngoog.dom.DomHelper.prototype.getFirstElementChild = goog.dom.getFirstElementChild;\ngoog.dom.DomHelper.prototype.getLastElementChild = goog.dom.getLastElementChild;\ngoog.dom.DomHelper.prototype.getNextElementSibling = goog.dom.getNextElementSibling;\ngoog.dom.DomHelper.prototype.getPreviousElementSibling = goog.dom.getPreviousElementSibling;\ngoog.dom.DomHelper.prototype.getNextNode = goog.dom.getNextNode;\ngoog.dom.DomHelper.prototype.getPreviousNode = goog.dom.getPreviousNode;\ngoog.dom.DomHelper.prototype.isNodeLike = goog.dom.isNodeLike;\ngoog.dom.DomHelper.prototype.isElement = goog.dom.isElement;\ngoog.dom.DomHelper.prototype.isWindow = goog.dom.isWindow;\ngoog.dom.DomHelper.prototype.getParentElement = goog.dom.getParentElement;\ngoog.dom.DomHelper.prototype.contains = goog.dom.contains;\ngoog.dom.DomHelper.prototype.compareNodeOrder = goog.dom.compareNodeOrder;\ngoog.dom.DomHelper.prototype.findCommonAncestor = goog.dom.findCommonAncestor;\ngoog.dom.DomHelper.prototype.getOwnerDocument = goog.dom.getOwnerDocument;\ngoog.dom.DomHelper.prototype.getFrameContentDocument = goog.dom.getFrameContentDocument;\ngoog.dom.DomHelper.prototype.getFrameContentWindow = goog.dom.getFrameContentWindow;\ngoog.dom.DomHelper.prototype.setTextContent = goog.dom.setTextContent;\ngoog.dom.DomHelper.prototype.getOuterHtml = goog.dom.getOuterHtml;\ngoog.dom.DomHelper.prototype.findNode = goog.dom.findNode;\ngoog.dom.DomHelper.prototype.findNodes = goog.dom.findNodes;\ngoog.dom.DomHelper.prototype.isFocusableTabIndex = goog.dom.isFocusableTabIndex;\ngoog.dom.DomHelper.prototype.setFocusableTabIndex = goog.dom.setFocusableTabIndex;\ngoog.dom.DomHelper.prototype.isFocusable = goog.dom.isFocusable;\ngoog.dom.DomHelper.prototype.getTextContent = goog.dom.getTextContent;\ngoog.dom.DomHelper.prototype.getNodeTextLength = goog.dom.getNodeTextLength;\ngoog.dom.DomHelper.prototype.getNodeTextOffset = goog.dom.getNodeTextOffset;\ngoog.dom.DomHelper.prototype.getNodeAtOffset = goog.dom.getNodeAtOffset;\ngoog.dom.DomHelper.prototype.isNodeList = goog.dom.isNodeList;\ngoog.dom.DomHelper.prototype.getAncestorByTagNameAndClass = goog.dom.getAncestorByTagNameAndClass;\ngoog.dom.DomHelper.prototype.getAncestorByClass = goog.dom.getAncestorByClass;\ngoog.dom.DomHelper.prototype.getAncestor = goog.dom.getAncestor;\ngoog.dom.DomHelper.prototype.getCanvasContext2D = goog.dom.getCanvasContext2D;\ngoog.json = {};\ngoog.json.USE_NATIVE_JSON = !1;\ngoog.json.TRY_NATIVE_JSON = !1;\ngoog.json.isValid = function(a) {\n  return /^\\s*$/.test(a) ? !1 : /^[\\],:{}\\s\\u2028\\u2029]*$/.test(a.replace(/\\\\[\"\\\\\\/bfnrtu]/g, \"@\").replace(/(?:\"[^\"\\\\\\n\\r\\u2028\\u2029\\x00-\\x08\\x0a-\\x1f]*\"|true|false|null|-?\\d+(?:\\.\\d*)?(?:[eE][+\\-]?\\d+)?)[\\s\\u2028\\u2029]*(?=:|,|]|}|$)/g, \"]\").replace(/(?:^|:|,)(?:[\\s\\u2028\\u2029]*\\[)+/g, \"\"));\n};\ngoog.json.errorLogger_ = goog.nullFunction;\ngoog.json.setErrorLogger = function(a) {\n  goog.json.errorLogger_ = a;\n};\ngoog.json.parse = goog.json.USE_NATIVE_JSON ? goog.global.JSON.parse : function(a) {\n  if (goog.json.TRY_NATIVE_JSON) {\n    try {\n      return goog.global.JSON.parse(a);\n    } catch (d) {\n      var b = d;\n    }\n  }\n  a = String(a);\n  if (goog.json.isValid(a)) {\n    try {\n      var c = eval(\"(\" + a + \")\");\n      b && goog.json.errorLogger_(\"Invalid JSON: \" + a, b);\n      return c;\n    } catch (d) {\n    }\n  }\n  throw Error(\"Invalid JSON string: \" + a);\n};\ngoog.json.serialize = goog.json.USE_NATIVE_JSON ? goog.global.JSON.stringify : function(a, b) {\n  return (new goog.json.Serializer(b)).serialize(a);\n};\ngoog.json.Serializer = function(a) {\n  this.replacer_ = a;\n};\ngoog.json.Serializer.prototype.serialize = function(a) {\n  var b = [];\n  this.serializeInternal(a, b);\n  return b.join(\"\");\n};\ngoog.json.Serializer.prototype.serializeInternal = function(a, b) {\n  if (null == a) {\n    b.push(\"null\");\n  } else {\n    if (\"object\" == typeof a) {\n      if (goog.isArray(a)) {\n        this.serializeArray(a, b);\n        return;\n      }\n      if (a instanceof String || a instanceof Number || a instanceof Boolean) {\n        a = a.valueOf();\n      } else {\n        this.serializeObject_(a, b);\n        return;\n      }\n    }\n    switch(typeof a) {\n      case \"string\":\n        this.serializeString_(a, b);\n        break;\n      case \"number\":\n        this.serializeNumber_(a, b);\n        break;\n      case \"boolean\":\n        b.push(String(a));\n        break;\n      case \"function\":\n        b.push(\"null\");\n        break;\n      default:\n        throw Error(\"Unknown type: \" + typeof a);\n    }\n  }\n};\ngoog.json.Serializer.charToJsonCharCache_ = {'\"':'\\\\\"', \"\\\\\":\"\\\\\\\\\", \"/\":\"\\\\/\", \"\\b\":\"\\\\b\", \"\\f\":\"\\\\f\", \"\\n\":\"\\\\n\", \"\\r\":\"\\\\r\", \"\\t\":\"\\\\t\", \"\\x0B\":\"\\\\u000b\"};\ngoog.json.Serializer.charsToReplace_ = /\\uffff/.test(\"\\uffff\") ? /[\\\\\"\\x00-\\x1f\\x7f-\\uffff]/g : /[\\\\\"\\x00-\\x1f\\x7f-\\xff]/g;\ngoog.json.Serializer.prototype.serializeString_ = function(a, b) {\n  b.push('\"', a.replace(goog.json.Serializer.charsToReplace_, function(a) {\n    var b = goog.json.Serializer.charToJsonCharCache_[a];\n    b || (b = \"\\\\u\" + (a.charCodeAt(0) | 65536).toString(16).substr(1), goog.json.Serializer.charToJsonCharCache_[a] = b);\n    return b;\n  }), '\"');\n};\ngoog.json.Serializer.prototype.serializeNumber_ = function(a, b) {\n  b.push(isFinite(a) && !isNaN(a) ? String(a) : \"null\");\n};\ngoog.json.Serializer.prototype.serializeArray = function(a, b) {\n  var c = a.length;\n  b.push(\"[\");\n  for (var d = \"\", e = 0; e < c; e++) {\n    b.push(d), d = a[e], this.serializeInternal(this.replacer_ ? this.replacer_.call(a, String(e), d) : d, b), d = \",\";\n  }\n  b.push(\"]\");\n};\ngoog.json.Serializer.prototype.serializeObject_ = function(a, b) {\n  b.push(\"{\");\n  var c = \"\", d;\n  for (d in a) {\n    if (Object.prototype.hasOwnProperty.call(a, d)) {\n      var e = a[d];\n      \"function\" != typeof e && (b.push(c), this.serializeString_(d, b), b.push(\":\"), this.serializeInternal(this.replacer_ ? this.replacer_.call(a, d, e) : e, b), c = \",\");\n    }\n  }\n  b.push(\"}\");\n};\ngoog.proto2.ObjectSerializer = function(a, b) {\n  this.keyOption_ = a;\n  this.serializeBooleanAsNumber_ = b;\n};\ngoog.inherits(goog.proto2.ObjectSerializer, goog.proto2.Serializer);\ngoog.proto2.ObjectSerializer.KeyOption = {TAG:0, NAME:1, CAMEL_CASE_NAME:2};\ngoog.proto2.ObjectSerializer.prototype.serialize = function(a) {\n  for (var b = a.getDescriptor().getFields(), c = {}, d = 0; d < b.length; d++) {\n    var e = b[d], f = e.getTag();\n    switch(this.keyOption_) {\n      case goog.proto2.ObjectSerializer.KeyOption.TAG:\n        break;\n      case goog.proto2.ObjectSerializer.KeyOption.NAME:\n        f = e.getName();\n        break;\n      case goog.proto2.ObjectSerializer.KeyOption.CAMEL_CASE_NAME:\n        f = goog.string.toCamelCase(e.getName().replace(/_/g, \"-\"));\n        break;\n      default:\n        goog.asserts.assert(this.keyOption_ !== goog.proto2.ObjectSerializer.KeyOption.TAG && this.keyOption_ !== goog.proto2.ObjectSerializer.KeyOption.NAME && this.keyOption_ !== goog.proto2.ObjectSerializer.KeyOption.CAMEL_CASE_NAME, \"keyOption should be one of TAG, NAME, or CAMEL_CASE_NAME\");\n    }\n    if (a.has(e)) {\n      if (e.isRepeated()) {\n        var g = [];\n        c[f] = g;\n        for (f = 0; f < a.countOf(e); f++) {\n          g.push(this.getSerializedValue(e, a.get(e, f)));\n        }\n      } else {\n        c[f] = this.getSerializedValue(e, a.get(e));\n      }\n    }\n  }\n  a.forEachUnknown(function(a, b) {\n    c[a] = b;\n  });\n  return c;\n};\ngoog.proto2.ObjectSerializer.prototype.getSerializedValue = function(a, b) {\n  return this.serializeBooleanAsNumber_ && a.getFieldType() == goog.proto2.FieldDescriptor.FieldType.BOOL && \"boolean\" === typeof b ? b ? 1 : 0 : goog.proto2.ObjectSerializer.superClass_.getSerializedValue.call(this, a, b);\n};\ngoog.proto2.ObjectSerializer.prototype.getDeserializedValue = function(a, b) {\n  return a.getFieldType() == goog.proto2.FieldDescriptor.FieldType.BOOL && \"number\" === typeof b ? !!b : goog.proto2.ObjectSerializer.superClass_.getDeserializedValue.call(this, a, b);\n};\ngoog.proto2.ObjectSerializer.prototype.deserializeTo = function(a, b) {\n  var c = a.getDescriptor(), d;\n  for (d in b) {\n    var e = b[d], f = goog.string.isNumeric(d);\n    if (f) {\n      var g = c.findFieldByTag(d);\n    } else {\n      goog.asserts.assert(this.keyOption_ == goog.proto2.ObjectSerializer.KeyOption.NAME || this.keyOption_ == goog.proto2.ObjectSerializer.KeyOption.CAMEL_CASE_NAME, \"Key mode \" + this.keyOption_ + \"for key \" + d + \" is not \" + goog.proto2.ObjectSerializer.KeyOption.NAME + \" nor \" + goog.proto2.ObjectSerializer.KeyOption.CAMEL_CASE_NAME), this.keyOption_ == goog.proto2.ObjectSerializer.KeyOption.CAMEL_CASE_NAME && (d = goog.string.toSelectorCase(d).replace(/\\-/g, \"_\")), g = c.findFieldByName(d);\n    }\n    if (g) {\n      if (g.isRepeated()) {\n        for (goog.asserts.assert(goog.isArray(e), \"Value for repeated field \" + g + \" must be an array.\"), f = 0; f < e.length; f++) {\n          a.add(g, this.getDeserializedValue(g, e[f]));\n        }\n      } else {\n        goog.asserts.assert(!goog.isArray(e), \"Value for non-repeated field \" + g + \" must not be an array.\"), a.set(g, this.getDeserializedValue(g, e));\n      }\n    } else {\n      f ? a.setUnknown(Number(d), e) : goog.asserts.fail(\"Failed to find field: \" + d);\n    }\n  }\n};\n/*\n\n Protocol Buffer 2 Copyright 2008 Google Inc.\n All other code copyright its respective owners.\n Copyright (C) 2010 The Libphonenumber Authors\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n*/\nvar i18n = {phonenumbers:{}};\ni18n.phonenumbers.NumberFormat = function() {\n  goog.proto2.Message.call(this);\n};\ngoog.inherits(i18n.phonenumbers.NumberFormat, goog.proto2.Message);\ni18n.phonenumbers.NumberFormat.descriptor_ = null;\ni18n.phonenumbers.NumberFormat.prototype.getPattern = function() {\n  return this.get$Value(1);\n};\ni18n.phonenumbers.NumberFormat.prototype.getPatternOrDefault = function() {\n  return this.get$ValueOrDefault(1);\n};\ni18n.phonenumbers.NumberFormat.prototype.setPattern = function(a) {\n  this.set$Value(1, a);\n};\ni18n.phonenumbers.NumberFormat.prototype.hasPattern = function() {\n  return this.has$Value(1);\n};\ni18n.phonenumbers.NumberFormat.prototype.patternCount = function() {\n  return this.count$Values(1);\n};\ni18n.phonenumbers.NumberFormat.prototype.clearPattern = function() {\n  this.clear$Field(1);\n};\ni18n.phonenumbers.NumberFormat.prototype.getFormat = function() {\n  return this.get$Value(2);\n};\ni18n.phonenumbers.NumberFormat.prototype.getFormatOrDefault = function() {\n  return this.get$ValueOrDefault(2);\n};\ni18n.phonenumbers.NumberFormat.prototype.setFormat = function(a) {\n  this.set$Value(2, a);\n};\ni18n.phonenumbers.NumberFormat.prototype.hasFormat = function() {\n  return this.has$Value(2);\n};\ni18n.phonenumbers.NumberFormat.prototype.formatCount = function() {\n  return this.count$Values(2);\n};\ni18n.phonenumbers.NumberFormat.prototype.clearFormat = function() {\n  this.clear$Field(2);\n};\ni18n.phonenumbers.NumberFormat.prototype.getLeadingDigitsPattern = function(a) {\n  return this.get$Value(3, a);\n};\ni18n.phonenumbers.NumberFormat.prototype.getLeadingDigitsPatternOrDefault = function(a) {\n  return this.get$ValueOrDefault(3, a);\n};\ni18n.phonenumbers.NumberFormat.prototype.addLeadingDigitsPattern = function(a) {\n  this.add$Value(3, a);\n};\ni18n.phonenumbers.NumberFormat.prototype.leadingDigitsPatternArray = function() {\n  return this.array$Values(3);\n};\ni18n.phonenumbers.NumberFormat.prototype.hasLeadingDigitsPattern = function() {\n  return this.has$Value(3);\n};\ni18n.phonenumbers.NumberFormat.prototype.leadingDigitsPatternCount = function() {\n  return this.count$Values(3);\n};\ni18n.phonenumbers.NumberFormat.prototype.clearLeadingDigitsPattern = function() {\n  this.clear$Field(3);\n};\ni18n.phonenumbers.NumberFormat.prototype.getNationalPrefixFormattingRule = function() {\n  return this.get$Value(4);\n};\ni18n.phonenumbers.NumberFormat.prototype.getNationalPrefixFormattingRuleOrDefault = function() {\n  return this.get$ValueOrDefault(4);\n};\ni18n.phonenumbers.NumberFormat.prototype.setNationalPrefixFormattingRule = function(a) {\n  this.set$Value(4, a);\n};\ni18n.phonenumbers.NumberFormat.prototype.hasNationalPrefixFormattingRule = function() {\n  return this.has$Value(4);\n};\ni18n.phonenumbers.NumberFormat.prototype.nationalPrefixFormattingRuleCount = function() {\n  return this.count$Values(4);\n};\ni18n.phonenumbers.NumberFormat.prototype.clearNationalPrefixFormattingRule = function() {\n  this.clear$Field(4);\n};\ni18n.phonenumbers.NumberFormat.prototype.getNationalPrefixOptionalWhenFormatting = function() {\n  return this.get$Value(6);\n};\ni18n.phonenumbers.NumberFormat.prototype.getNationalPrefixOptionalWhenFormattingOrDefault = function() {\n  return this.get$ValueOrDefault(6);\n};\ni18n.phonenumbers.NumberFormat.prototype.setNationalPrefixOptionalWhenFormatting = function(a) {\n  this.set$Value(6, a);\n};\ni18n.phonenumbers.NumberFormat.prototype.hasNationalPrefixOptionalWhenFormatting = function() {\n  return this.has$Value(6);\n};\ni18n.phonenumbers.NumberFormat.prototype.nationalPrefixOptionalWhenFormattingCount = function() {\n  return this.count$Values(6);\n};\ni18n.phonenumbers.NumberFormat.prototype.clearNationalPrefixOptionalWhenFormatting = function() {\n  this.clear$Field(6);\n};\ni18n.phonenumbers.NumberFormat.prototype.getDomesticCarrierCodeFormattingRule = function() {\n  return this.get$Value(5);\n};\ni18n.phonenumbers.NumberFormat.prototype.getDomesticCarrierCodeFormattingRuleOrDefault = function() {\n  return this.get$ValueOrDefault(5);\n};\ni18n.phonenumbers.NumberFormat.prototype.setDomesticCarrierCodeFormattingRule = function(a) {\n  this.set$Value(5, a);\n};\ni18n.phonenumbers.NumberFormat.prototype.hasDomesticCarrierCodeFormattingRule = function() {\n  return this.has$Value(5);\n};\ni18n.phonenumbers.NumberFormat.prototype.domesticCarrierCodeFormattingRuleCount = function() {\n  return this.count$Values(5);\n};\ni18n.phonenumbers.NumberFormat.prototype.clearDomesticCarrierCodeFormattingRule = function() {\n  this.clear$Field(5);\n};\ni18n.phonenumbers.PhoneNumberDesc = function() {\n  goog.proto2.Message.call(this);\n};\ngoog.inherits(i18n.phonenumbers.PhoneNumberDesc, goog.proto2.Message);\ni18n.phonenumbers.PhoneNumberDesc.descriptor_ = null;\ni18n.phonenumbers.PhoneNumberDesc.prototype.getNationalNumberPattern = function() {\n  return this.get$Value(2);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.getNationalNumberPatternOrDefault = function() {\n  return this.get$ValueOrDefault(2);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.setNationalNumberPattern = function(a) {\n  this.set$Value(2, a);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.hasNationalNumberPattern = function() {\n  return this.has$Value(2);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.nationalNumberPatternCount = function() {\n  return this.count$Values(2);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.clearNationalNumberPattern = function() {\n  this.clear$Field(2);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.getPossibleLength = function(a) {\n  return this.get$Value(9, a);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.getPossibleLengthOrDefault = function(a) {\n  return this.get$ValueOrDefault(9, a);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.addPossibleLength = function(a) {\n  this.add$Value(9, a);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.possibleLengthArray = function() {\n  return this.array$Values(9);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.hasPossibleLength = function() {\n  return this.has$Value(9);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.possibleLengthCount = function() {\n  return this.count$Values(9);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.clearPossibleLength = function() {\n  this.clear$Field(9);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.getPossibleLengthLocalOnly = function(a) {\n  return this.get$Value(10, a);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.getPossibleLengthLocalOnlyOrDefault = function(a) {\n  return this.get$ValueOrDefault(10, a);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.addPossibleLengthLocalOnly = function(a) {\n  this.add$Value(10, a);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.possibleLengthLocalOnlyArray = function() {\n  return this.array$Values(10);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.hasPossibleLengthLocalOnly = function() {\n  return this.has$Value(10);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.possibleLengthLocalOnlyCount = function() {\n  return this.count$Values(10);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.clearPossibleLengthLocalOnly = function() {\n  this.clear$Field(10);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.getExampleNumber = function() {\n  return this.get$Value(6);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.getExampleNumberOrDefault = function() {\n  return this.get$ValueOrDefault(6);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.setExampleNumber = function(a) {\n  this.set$Value(6, a);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.hasExampleNumber = function() {\n  return this.has$Value(6);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.exampleNumberCount = function() {\n  return this.count$Values(6);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.clearExampleNumber = function() {\n  this.clear$Field(6);\n};\ni18n.phonenumbers.PhoneMetadata = function() {\n  goog.proto2.Message.call(this);\n};\ngoog.inherits(i18n.phonenumbers.PhoneMetadata, goog.proto2.Message);\ni18n.phonenumbers.PhoneMetadata.descriptor_ = null;\ni18n.phonenumbers.PhoneMetadata.prototype.getGeneralDesc = function() {\n  return this.get$Value(1);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getGeneralDescOrDefault = function() {\n  return this.get$ValueOrDefault(1);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setGeneralDesc = function(a) {\n  this.set$Value(1, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasGeneralDesc = function() {\n  return this.has$Value(1);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.generalDescCount = function() {\n  return this.count$Values(1);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearGeneralDesc = function() {\n  this.clear$Field(1);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getFixedLine = function() {\n  return this.get$Value(2);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getFixedLineOrDefault = function() {\n  return this.get$ValueOrDefault(2);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setFixedLine = function(a) {\n  this.set$Value(2, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasFixedLine = function() {\n  return this.has$Value(2);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.fixedLineCount = function() {\n  return this.count$Values(2);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearFixedLine = function() {\n  this.clear$Field(2);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getMobile = function() {\n  return this.get$Value(3);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getMobileOrDefault = function() {\n  return this.get$ValueOrDefault(3);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setMobile = function(a) {\n  this.set$Value(3, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasMobile = function() {\n  return this.has$Value(3);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.mobileCount = function() {\n  return this.count$Values(3);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearMobile = function() {\n  this.clear$Field(3);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getTollFree = function() {\n  return this.get$Value(4);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getTollFreeOrDefault = function() {\n  return this.get$ValueOrDefault(4);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setTollFree = function(a) {\n  this.set$Value(4, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasTollFree = function() {\n  return this.has$Value(4);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.tollFreeCount = function() {\n  return this.count$Values(4);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearTollFree = function() {\n  this.clear$Field(4);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getPremiumRate = function() {\n  return this.get$Value(5);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getPremiumRateOrDefault = function() {\n  return this.get$ValueOrDefault(5);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setPremiumRate = function(a) {\n  this.set$Value(5, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasPremiumRate = function() {\n  return this.has$Value(5);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.premiumRateCount = function() {\n  return this.count$Values(5);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearPremiumRate = function() {\n  this.clear$Field(5);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getSharedCost = function() {\n  return this.get$Value(6);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getSharedCostOrDefault = function() {\n  return this.get$ValueOrDefault(6);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setSharedCost = function(a) {\n  this.set$Value(6, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasSharedCost = function() {\n  return this.has$Value(6);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.sharedCostCount = function() {\n  return this.count$Values(6);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearSharedCost = function() {\n  this.clear$Field(6);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getPersonalNumber = function() {\n  return this.get$Value(7);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getPersonalNumberOrDefault = function() {\n  return this.get$ValueOrDefault(7);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setPersonalNumber = function(a) {\n  this.set$Value(7, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasPersonalNumber = function() {\n  return this.has$Value(7);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.personalNumberCount = function() {\n  return this.count$Values(7);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearPersonalNumber = function() {\n  this.clear$Field(7);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getVoip = function() {\n  return this.get$Value(8);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getVoipOrDefault = function() {\n  return this.get$ValueOrDefault(8);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setVoip = function(a) {\n  this.set$Value(8, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasVoip = function() {\n  return this.has$Value(8);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.voipCount = function() {\n  return this.count$Values(8);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearVoip = function() {\n  this.clear$Field(8);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getPager = function() {\n  return this.get$Value(21);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getPagerOrDefault = function() {\n  return this.get$ValueOrDefault(21);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setPager = function(a) {\n  this.set$Value(21, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasPager = function() {\n  return this.has$Value(21);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.pagerCount = function() {\n  return this.count$Values(21);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearPager = function() {\n  this.clear$Field(21);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getUan = function() {\n  return this.get$Value(25);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getUanOrDefault = function() {\n  return this.get$ValueOrDefault(25);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setUan = function(a) {\n  this.set$Value(25, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasUan = function() {\n  return this.has$Value(25);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.uanCount = function() {\n  return this.count$Values(25);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearUan = function() {\n  this.clear$Field(25);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getEmergency = function() {\n  return this.get$Value(27);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getEmergencyOrDefault = function() {\n  return this.get$ValueOrDefault(27);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setEmergency = function(a) {\n  this.set$Value(27, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasEmergency = function() {\n  return this.has$Value(27);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.emergencyCount = function() {\n  return this.count$Values(27);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearEmergency = function() {\n  this.clear$Field(27);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getVoicemail = function() {\n  return this.get$Value(28);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getVoicemailOrDefault = function() {\n  return this.get$ValueOrDefault(28);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setVoicemail = function(a) {\n  this.set$Value(28, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasVoicemail = function() {\n  return this.has$Value(28);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.voicemailCount = function() {\n  return this.count$Values(28);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearVoicemail = function() {\n  this.clear$Field(28);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getShortCode = function() {\n  return this.get$Value(29);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getShortCodeOrDefault = function() {\n  return this.get$ValueOrDefault(29);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setShortCode = function(a) {\n  this.set$Value(29, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasShortCode = function() {\n  return this.has$Value(29);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.shortCodeCount = function() {\n  return this.count$Values(29);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearShortCode = function() {\n  this.clear$Field(29);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getStandardRate = function() {\n  return this.get$Value(30);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getStandardRateOrDefault = function() {\n  return this.get$ValueOrDefault(30);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setStandardRate = function(a) {\n  this.set$Value(30, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasStandardRate = function() {\n  return this.has$Value(30);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.standardRateCount = function() {\n  return this.count$Values(30);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearStandardRate = function() {\n  this.clear$Field(30);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getCarrierSpecific = function() {\n  return this.get$Value(31);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getCarrierSpecificOrDefault = function() {\n  return this.get$ValueOrDefault(31);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setCarrierSpecific = function(a) {\n  this.set$Value(31, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasCarrierSpecific = function() {\n  return this.has$Value(31);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.carrierSpecificCount = function() {\n  return this.count$Values(31);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearCarrierSpecific = function() {\n  this.clear$Field(31);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getSmsServices = function() {\n  return this.get$Value(33);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getSmsServicesOrDefault = function() {\n  return this.get$ValueOrDefault(33);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setSmsServices = function(a) {\n  this.set$Value(33, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasSmsServices = function() {\n  return this.has$Value(33);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.smsServicesCount = function() {\n  return this.count$Values(33);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearSmsServices = function() {\n  this.clear$Field(33);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getNoInternationalDialling = function() {\n  return this.get$Value(24);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getNoInternationalDiallingOrDefault = function() {\n  return this.get$ValueOrDefault(24);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setNoInternationalDialling = function(a) {\n  this.set$Value(24, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasNoInternationalDialling = function() {\n  return this.has$Value(24);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.noInternationalDiallingCount = function() {\n  return this.count$Values(24);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearNoInternationalDialling = function() {\n  this.clear$Field(24);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getId = function() {\n  return this.get$Value(9);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getIdOrDefault = function() {\n  return this.get$ValueOrDefault(9);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setId = function(a) {\n  this.set$Value(9, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasId = function() {\n  return this.has$Value(9);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.idCount = function() {\n  return this.count$Values(9);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearId = function() {\n  this.clear$Field(9);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getCountryCode = function() {\n  return this.get$Value(10);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getCountryCodeOrDefault = function() {\n  return this.get$ValueOrDefault(10);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setCountryCode = function(a) {\n  this.set$Value(10, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasCountryCode = function() {\n  return this.has$Value(10);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.countryCodeCount = function() {\n  return this.count$Values(10);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearCountryCode = function() {\n  this.clear$Field(10);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getInternationalPrefix = function() {\n  return this.get$Value(11);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getInternationalPrefixOrDefault = function() {\n  return this.get$ValueOrDefault(11);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setInternationalPrefix = function(a) {\n  this.set$Value(11, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasInternationalPrefix = function() {\n  return this.has$Value(11);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.internationalPrefixCount = function() {\n  return this.count$Values(11);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearInternationalPrefix = function() {\n  this.clear$Field(11);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getPreferredInternationalPrefix = function() {\n  return this.get$Value(17);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getPreferredInternationalPrefixOrDefault = function() {\n  return this.get$ValueOrDefault(17);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setPreferredInternationalPrefix = function(a) {\n  this.set$Value(17, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasPreferredInternationalPrefix = function() {\n  return this.has$Value(17);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.preferredInternationalPrefixCount = function() {\n  return this.count$Values(17);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearPreferredInternationalPrefix = function() {\n  this.clear$Field(17);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getNationalPrefix = function() {\n  return this.get$Value(12);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getNationalPrefixOrDefault = function() {\n  return this.get$ValueOrDefault(12);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setNationalPrefix = function(a) {\n  this.set$Value(12, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasNationalPrefix = function() {\n  return this.has$Value(12);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.nationalPrefixCount = function() {\n  return this.count$Values(12);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearNationalPrefix = function() {\n  this.clear$Field(12);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getPreferredExtnPrefix = function() {\n  return this.get$Value(13);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getPreferredExtnPrefixOrDefault = function() {\n  return this.get$ValueOrDefault(13);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setPreferredExtnPrefix = function(a) {\n  this.set$Value(13, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasPreferredExtnPrefix = function() {\n  return this.has$Value(13);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.preferredExtnPrefixCount = function() {\n  return this.count$Values(13);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearPreferredExtnPrefix = function() {\n  this.clear$Field(13);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getNationalPrefixForParsing = function() {\n  return this.get$Value(15);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getNationalPrefixForParsingOrDefault = function() {\n  return this.get$ValueOrDefault(15);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setNationalPrefixForParsing = function(a) {\n  this.set$Value(15, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasNationalPrefixForParsing = function() {\n  return this.has$Value(15);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.nationalPrefixForParsingCount = function() {\n  return this.count$Values(15);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearNationalPrefixForParsing = function() {\n  this.clear$Field(15);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getNationalPrefixTransformRule = function() {\n  return this.get$Value(16);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getNationalPrefixTransformRuleOrDefault = function() {\n  return this.get$ValueOrDefault(16);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setNationalPrefixTransformRule = function(a) {\n  this.set$Value(16, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasNationalPrefixTransformRule = function() {\n  return this.has$Value(16);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.nationalPrefixTransformRuleCount = function() {\n  return this.count$Values(16);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearNationalPrefixTransformRule = function() {\n  this.clear$Field(16);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getSameMobileAndFixedLinePattern = function() {\n  return this.get$Value(18);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getSameMobileAndFixedLinePatternOrDefault = function() {\n  return this.get$ValueOrDefault(18);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setSameMobileAndFixedLinePattern = function(a) {\n  this.set$Value(18, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasSameMobileAndFixedLinePattern = function() {\n  return this.has$Value(18);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.sameMobileAndFixedLinePatternCount = function() {\n  return this.count$Values(18);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearSameMobileAndFixedLinePattern = function() {\n  this.clear$Field(18);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getNumberFormat = function(a) {\n  return this.get$Value(19, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getNumberFormatOrDefault = function(a) {\n  return this.get$ValueOrDefault(19, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.addNumberFormat = function(a) {\n  this.add$Value(19, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.numberFormatArray = function() {\n  return this.array$Values(19);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasNumberFormat = function() {\n  return this.has$Value(19);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.numberFormatCount = function() {\n  return this.count$Values(19);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearNumberFormat = function() {\n  this.clear$Field(19);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getIntlNumberFormat = function(a) {\n  return this.get$Value(20, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getIntlNumberFormatOrDefault = function(a) {\n  return this.get$ValueOrDefault(20, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.addIntlNumberFormat = function(a) {\n  this.add$Value(20, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.intlNumberFormatArray = function() {\n  return this.array$Values(20);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasIntlNumberFormat = function() {\n  return this.has$Value(20);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.intlNumberFormatCount = function() {\n  return this.count$Values(20);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearIntlNumberFormat = function() {\n  this.clear$Field(20);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getMainCountryForCode = function() {\n  return this.get$Value(22);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getMainCountryForCodeOrDefault = function() {\n  return this.get$ValueOrDefault(22);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setMainCountryForCode = function(a) {\n  this.set$Value(22, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasMainCountryForCode = function() {\n  return this.has$Value(22);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.mainCountryForCodeCount = function() {\n  return this.count$Values(22);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearMainCountryForCode = function() {\n  this.clear$Field(22);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getLeadingDigits = function() {\n  return this.get$Value(23);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getLeadingDigitsOrDefault = function() {\n  return this.get$ValueOrDefault(23);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setLeadingDigits = function(a) {\n  this.set$Value(23, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasLeadingDigits = function() {\n  return this.has$Value(23);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.leadingDigitsCount = function() {\n  return this.count$Values(23);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearLeadingDigits = function() {\n  this.clear$Field(23);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getLeadingZeroPossible = function() {\n  return this.get$Value(26);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getLeadingZeroPossibleOrDefault = function() {\n  return this.get$ValueOrDefault(26);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setLeadingZeroPossible = function(a) {\n  this.set$Value(26, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasLeadingZeroPossible = function() {\n  return this.has$Value(26);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.leadingZeroPossibleCount = function() {\n  return this.count$Values(26);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearLeadingZeroPossible = function() {\n  this.clear$Field(26);\n};\ni18n.phonenumbers.PhoneMetadataCollection = function() {\n  goog.proto2.Message.call(this);\n};\ngoog.inherits(i18n.phonenumbers.PhoneMetadataCollection, goog.proto2.Message);\ni18n.phonenumbers.PhoneMetadataCollection.descriptor_ = null;\ni18n.phonenumbers.PhoneMetadataCollection.prototype.getMetadata = function(a) {\n  return this.get$Value(1, a);\n};\ni18n.phonenumbers.PhoneMetadataCollection.prototype.getMetadataOrDefault = function(a) {\n  return this.get$ValueOrDefault(1, a);\n};\ni18n.phonenumbers.PhoneMetadataCollection.prototype.addMetadata = function(a) {\n  this.add$Value(1, a);\n};\ni18n.phonenumbers.PhoneMetadataCollection.prototype.metadataArray = function() {\n  return this.array$Values(1);\n};\ni18n.phonenumbers.PhoneMetadataCollection.prototype.hasMetadata = function() {\n  return this.has$Value(1);\n};\ni18n.phonenumbers.PhoneMetadataCollection.prototype.metadataCount = function() {\n  return this.count$Values(1);\n};\ni18n.phonenumbers.PhoneMetadataCollection.prototype.clearMetadata = function() {\n  this.clear$Field(1);\n};\ni18n.phonenumbers.NumberFormat.prototype.getDescriptor = function() {\n  var a = i18n.phonenumbers.NumberFormat.descriptor_;\n  a || (i18n.phonenumbers.NumberFormat.descriptor_ = a = goog.proto2.Message.createDescriptor(i18n.phonenumbers.NumberFormat, {0:{name:\"NumberFormat\", fullName:\"i18n.phonenumbers.NumberFormat\"}, 1:{name:\"pattern\", required:!0, fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 2:{name:\"format\", required:!0, fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 3:{name:\"leading_digits_pattern\", repeated:!0, fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 4:{name:\"national_prefix_formatting_rule\",\n  fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 6:{name:\"national_prefix_optional_when_formatting\", fieldType:goog.proto2.Message.FieldType.BOOL, defaultValue:!1, type:Boolean}, 5:{name:\"domestic_carrier_code_formatting_rule\", fieldType:goog.proto2.Message.FieldType.STRING, type:String}}));\n  return a;\n};\ni18n.phonenumbers.NumberFormat.getDescriptor = i18n.phonenumbers.NumberFormat.prototype.getDescriptor;\ni18n.phonenumbers.PhoneNumberDesc.prototype.getDescriptor = function() {\n  var a = i18n.phonenumbers.PhoneNumberDesc.descriptor_;\n  a || (i18n.phonenumbers.PhoneNumberDesc.descriptor_ = a = goog.proto2.Message.createDescriptor(i18n.phonenumbers.PhoneNumberDesc, {0:{name:\"PhoneNumberDesc\", fullName:\"i18n.phonenumbers.PhoneNumberDesc\"}, 2:{name:\"national_number_pattern\", fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 9:{name:\"possible_length\", repeated:!0, fieldType:goog.proto2.Message.FieldType.INT32, type:Number}, 10:{name:\"possible_length_local_only\", repeated:!0, fieldType:goog.proto2.Message.FieldType.INT32,\n  type:Number}, 6:{name:\"example_number\", fieldType:goog.proto2.Message.FieldType.STRING, type:String}}));\n  return a;\n};\ni18n.phonenumbers.PhoneNumberDesc.getDescriptor = i18n.phonenumbers.PhoneNumberDesc.prototype.getDescriptor;\ni18n.phonenumbers.PhoneMetadata.prototype.getDescriptor = function() {\n  var a = i18n.phonenumbers.PhoneMetadata.descriptor_;\n  a || (i18n.phonenumbers.PhoneMetadata.descriptor_ = a = goog.proto2.Message.createDescriptor(i18n.phonenumbers.PhoneMetadata, {0:{name:\"PhoneMetadata\", fullName:\"i18n.phonenumbers.PhoneMetadata\"}, 1:{name:\"general_desc\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 2:{name:\"fixed_line\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 3:{name:\"mobile\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc},\n  4:{name:\"toll_free\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 5:{name:\"premium_rate\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 6:{name:\"shared_cost\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 7:{name:\"personal_number\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 8:{name:\"voip\", fieldType:goog.proto2.Message.FieldType.MESSAGE,\n  type:i18n.phonenumbers.PhoneNumberDesc}, 21:{name:\"pager\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 25:{name:\"uan\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 27:{name:\"emergency\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 28:{name:\"voicemail\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 29:{name:\"short_code\",\n  fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 30:{name:\"standard_rate\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 31:{name:\"carrier_specific\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 33:{name:\"sms_services\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 24:{name:\"no_international_dialling\", fieldType:goog.proto2.Message.FieldType.MESSAGE,\n  type:i18n.phonenumbers.PhoneNumberDesc}, 9:{name:\"id\", required:!0, fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 10:{name:\"country_code\", fieldType:goog.proto2.Message.FieldType.INT32, type:Number}, 11:{name:\"international_prefix\", fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 17:{name:\"preferred_international_prefix\", fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 12:{name:\"national_prefix\", fieldType:goog.proto2.Message.FieldType.STRING, type:String},\n  13:{name:\"preferred_extn_prefix\", fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 15:{name:\"national_prefix_for_parsing\", fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 16:{name:\"national_prefix_transform_rule\", fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 18:{name:\"same_mobile_and_fixed_line_pattern\", fieldType:goog.proto2.Message.FieldType.BOOL, defaultValue:!1, type:Boolean}, 19:{name:\"number_format\", repeated:!0, fieldType:goog.proto2.Message.FieldType.MESSAGE,\n  type:i18n.phonenumbers.NumberFormat}, 20:{name:\"intl_number_format\", repeated:!0, fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.NumberFormat}, 22:{name:\"main_country_for_code\", fieldType:goog.proto2.Message.FieldType.BOOL, defaultValue:!1, type:Boolean}, 23:{name:\"leading_digits\", fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 26:{name:\"leading_zero_possible\", fieldType:goog.proto2.Message.FieldType.BOOL, defaultValue:!1, type:Boolean}}));\n  return a;\n};\ni18n.phonenumbers.PhoneMetadata.getDescriptor = i18n.phonenumbers.PhoneMetadata.prototype.getDescriptor;\ni18n.phonenumbers.PhoneMetadataCollection.prototype.getDescriptor = function() {\n  var a = i18n.phonenumbers.PhoneMetadataCollection.descriptor_;\n  a || (i18n.phonenumbers.PhoneMetadataCollection.descriptor_ = a = goog.proto2.Message.createDescriptor(i18n.phonenumbers.PhoneMetadataCollection, {0:{name:\"PhoneMetadataCollection\", fullName:\"i18n.phonenumbers.PhoneMetadataCollection\"}, 1:{name:\"metadata\", repeated:!0, fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneMetadata}}));\n  return a;\n};\ni18n.phonenumbers.PhoneMetadataCollection.getDescriptor = i18n.phonenumbers.PhoneMetadataCollection.prototype.getDescriptor;\ni18n.phonenumbers.PhoneNumber = function() {\n  goog.proto2.Message.call(this);\n};\ngoog.inherits(i18n.phonenumbers.PhoneNumber, goog.proto2.Message);\ni18n.phonenumbers.PhoneNumber.descriptor_ = null;\ni18n.phonenumbers.PhoneNumber.prototype.getCountryCode = function() {\n  return this.get$Value(1);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getCountryCodeOrDefault = function() {\n  return this.get$ValueOrDefault(1);\n};\ni18n.phonenumbers.PhoneNumber.prototype.setCountryCode = function(a) {\n  this.set$Value(1, a);\n};\ni18n.phonenumbers.PhoneNumber.prototype.hasCountryCode = function() {\n  return this.has$Value(1);\n};\ni18n.phonenumbers.PhoneNumber.prototype.countryCodeCount = function() {\n  return this.count$Values(1);\n};\ni18n.phonenumbers.PhoneNumber.prototype.clearCountryCode = function() {\n  this.clear$Field(1);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getNationalNumber = function() {\n  return this.get$Value(2);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getNationalNumberOrDefault = function() {\n  return this.get$ValueOrDefault(2);\n};\ni18n.phonenumbers.PhoneNumber.prototype.setNationalNumber = function(a) {\n  this.set$Value(2, a);\n};\ni18n.phonenumbers.PhoneNumber.prototype.hasNationalNumber = function() {\n  return this.has$Value(2);\n};\ni18n.phonenumbers.PhoneNumber.prototype.nationalNumberCount = function() {\n  return this.count$Values(2);\n};\ni18n.phonenumbers.PhoneNumber.prototype.clearNationalNumber = function() {\n  this.clear$Field(2);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getExtension = function() {\n  return this.get$Value(3);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getExtensionOrDefault = function() {\n  return this.get$ValueOrDefault(3);\n};\ni18n.phonenumbers.PhoneNumber.prototype.setExtension = function(a) {\n  this.set$Value(3, a);\n};\ni18n.phonenumbers.PhoneNumber.prototype.hasExtension = function() {\n  return this.has$Value(3);\n};\ni18n.phonenumbers.PhoneNumber.prototype.extensionCount = function() {\n  return this.count$Values(3);\n};\ni18n.phonenumbers.PhoneNumber.prototype.clearExtension = function() {\n  this.clear$Field(3);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getItalianLeadingZero = function() {\n  return this.get$Value(4);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getItalianLeadingZeroOrDefault = function() {\n  return this.get$ValueOrDefault(4);\n};\ni18n.phonenumbers.PhoneNumber.prototype.setItalianLeadingZero = function(a) {\n  this.set$Value(4, a);\n};\ni18n.phonenumbers.PhoneNumber.prototype.hasItalianLeadingZero = function() {\n  return this.has$Value(4);\n};\ni18n.phonenumbers.PhoneNumber.prototype.italianLeadingZeroCount = function() {\n  return this.count$Values(4);\n};\ni18n.phonenumbers.PhoneNumber.prototype.clearItalianLeadingZero = function() {\n  this.clear$Field(4);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getNumberOfLeadingZeros = function() {\n  return this.get$Value(8);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getNumberOfLeadingZerosOrDefault = function() {\n  return this.get$ValueOrDefault(8);\n};\ni18n.phonenumbers.PhoneNumber.prototype.setNumberOfLeadingZeros = function(a) {\n  this.set$Value(8, a);\n};\ni18n.phonenumbers.PhoneNumber.prototype.hasNumberOfLeadingZeros = function() {\n  return this.has$Value(8);\n};\ni18n.phonenumbers.PhoneNumber.prototype.numberOfLeadingZerosCount = function() {\n  return this.count$Values(8);\n};\ni18n.phonenumbers.PhoneNumber.prototype.clearNumberOfLeadingZeros = function() {\n  this.clear$Field(8);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getRawInput = function() {\n  return this.get$Value(5);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getRawInputOrDefault = function() {\n  return this.get$ValueOrDefault(5);\n};\ni18n.phonenumbers.PhoneNumber.prototype.setRawInput = function(a) {\n  this.set$Value(5, a);\n};\ni18n.phonenumbers.PhoneNumber.prototype.hasRawInput = function() {\n  return this.has$Value(5);\n};\ni18n.phonenumbers.PhoneNumber.prototype.rawInputCount = function() {\n  return this.count$Values(5);\n};\ni18n.phonenumbers.PhoneNumber.prototype.clearRawInput = function() {\n  this.clear$Field(5);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getCountryCodeSource = function() {\n  return this.get$Value(6);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getCountryCodeSourceOrDefault = function() {\n  return this.get$ValueOrDefault(6);\n};\ni18n.phonenumbers.PhoneNumber.prototype.setCountryCodeSource = function(a) {\n  this.set$Value(6, a);\n};\ni18n.phonenumbers.PhoneNumber.prototype.hasCountryCodeSource = function() {\n  return this.has$Value(6);\n};\ni18n.phonenumbers.PhoneNumber.prototype.countryCodeSourceCount = function() {\n  return this.count$Values(6);\n};\ni18n.phonenumbers.PhoneNumber.prototype.clearCountryCodeSource = function() {\n  this.clear$Field(6);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getPreferredDomesticCarrierCode = function() {\n  return this.get$Value(7);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getPreferredDomesticCarrierCodeOrDefault = function() {\n  return this.get$ValueOrDefault(7);\n};\ni18n.phonenumbers.PhoneNumber.prototype.setPreferredDomesticCarrierCode = function(a) {\n  this.set$Value(7, a);\n};\ni18n.phonenumbers.PhoneNumber.prototype.hasPreferredDomesticCarrierCode = function() {\n  return this.has$Value(7);\n};\ni18n.phonenumbers.PhoneNumber.prototype.preferredDomesticCarrierCodeCount = function() {\n  return this.count$Values(7);\n};\ni18n.phonenumbers.PhoneNumber.prototype.clearPreferredDomesticCarrierCode = function() {\n  this.clear$Field(7);\n};\ni18n.phonenumbers.PhoneNumber.CountryCodeSource = {UNSPECIFIED:0, FROM_NUMBER_WITH_PLUS_SIGN:1, FROM_NUMBER_WITH_IDD:5, FROM_NUMBER_WITHOUT_PLUS_SIGN:10, FROM_DEFAULT_COUNTRY:20};\ni18n.phonenumbers.PhoneNumber.prototype.getDescriptor = function() {\n  var a = i18n.phonenumbers.PhoneNumber.descriptor_;\n  a || (i18n.phonenumbers.PhoneNumber.descriptor_ = a = goog.proto2.Message.createDescriptor(i18n.phonenumbers.PhoneNumber, {0:{name:\"PhoneNumber\", fullName:\"i18n.phonenumbers.PhoneNumber\"}, 1:{name:\"country_code\", required:!0, fieldType:goog.proto2.Message.FieldType.INT32, type:Number}, 2:{name:\"national_number\", required:!0, fieldType:goog.proto2.Message.FieldType.UINT64, type:Number}, 3:{name:\"extension\", fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 4:{name:\"italian_leading_zero\",\n  fieldType:goog.proto2.Message.FieldType.BOOL, type:Boolean}, 8:{name:\"number_of_leading_zeros\", fieldType:goog.proto2.Message.FieldType.INT32, defaultValue:1, type:Number}, 5:{name:\"raw_input\", fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 6:{name:\"country_code_source\", fieldType:goog.proto2.Message.FieldType.ENUM, defaultValue:i18n.phonenumbers.PhoneNumber.CountryCodeSource.UNSPECIFIED, type:i18n.phonenumbers.PhoneNumber.CountryCodeSource}, 7:{name:\"preferred_domestic_carrier_code\",\n  fieldType:goog.proto2.Message.FieldType.STRING, type:String}}));\n  return a;\n};\ni18n.phonenumbers.PhoneNumber.ctor = i18n.phonenumbers.PhoneNumber;\ni18n.phonenumbers.PhoneNumber.ctor.getDescriptor = i18n.phonenumbers.PhoneNumber.prototype.getDescriptor;\n/*\n\n Copyright (C) 2010 The Libphonenumber Authors\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n*/\ni18n.phonenumbers.metadata = {};\ni18n.phonenumbers.metadata.countryCodeToRegionCodeMap = {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\".split(\" \"), 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\",\n\"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\"],\n241:[\"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\"],\n358:[\"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\"],\n599:[\"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\"], 800:[\"001\"], 808:[\"001\"], 850:[\"KP\"], 852:[\"HK\"], 853:[\"MO\"], 855:[\"KH\"], 856:[\"LA\"], 870:[\"001\"], 878:[\"001\"], 880:[\"BD\"], 881:[\"001\"], 882:[\"001\"], 883:[\"001\"], 886:[\"TW\"], 888:[\"001\"], 960:[\"MV\"], 961:[\"LB\"], 962:[\"JO\"], 963:[\"SY\"],\n964:[\"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\"], 979:[\"001\"], 992:[\"TJ\"], 993:[\"TM\"], 994:[\"AZ\"], 995:[\"GE\"], 996:[\"KG\"], 998:[\"UZ\"]};\ni18n.phonenumbers.metadata.countryToMetadata = {AC:[, [, , \"(?:[01589]\\\\d|[46])\\\\d{4}\", , , , , , , [5, 6]], [, , \"6[2-467]\\\\d{3}\", , , , \"62889\", , , [5]], [, , \"4\\\\d{4}\", , , , \"40123\", , , [5]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"AC\", 247, \"00\", , , , , , , , , , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"(?:0[1-9]|[1589]\\\\d)\\\\d{4}\", , , , \"542011\", , , [6]], , , [, , , , , , , ,\n, [-1]]], AD:[, [, , \"(?:1|6\\\\d)\\\\d{7}|[136-9]\\\\d{5}\", , , , , , , [6, 8, 9]], [, , \"[78]\\\\d{5}\", , , , \"712345\", , , [6]], [, , \"690\\\\d{6}|[36]\\\\d{5}\", , , , \"312345\", , , [6, 9]], [, , \"180[02]\\\\d{4}\", , , , \"18001234\", , , [8]], [, , \"[19]\\\\d{5}\", , , , \"912345\", , , [6]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"AD\", 376, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{3})\", \"$1 $2\", [\"[136-9]\"]], [, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"1\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\n\"$1 $2 $3\", [\"6\"]]], , [, , , , , , , , , [-1]], , , [, , \"1800\\\\d{4}\", , , , , , , [8]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], AE:[, [, , \"(?:[4-7]\\\\d|9[0-689])\\\\d{7}|800\\\\d{2,9}|[2-4679]\\\\d{7}\", , , , , , , [5, 6, 7, 8, 9, 10, 11, 12]], [, , \"[2-4679][2-8]\\\\d{6}\", , , , \"22345678\", , , [8], [7]], [, , \"5[024-68]\\\\d{7}\", , , , \"501234567\", , , [9]], [, , \"400\\\\d{6}|800\\\\d{2,9}\", , , , \"800123456\"], [, , \"900[02]\\\\d{5}\", , , , \"900234567\", , , [9]], [, , \"700[05]\\\\d{5}\", , , ,\n\"700012345\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"AE\", 971, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"600[25]\\\\d{5}\", , , , \"600212345\", , , [9]], , , [, , , , , , , , , [-1]]], AF:[, [, , \"[2-7]\\\\d{8}\",\n, , , , , , [9], [7]], [, , \"(?:[25][0-8]|[34][0-4]|6[0-5])[2-9]\\\\d{6}\", , , , \"234567890\", , , , [7]], [, , \"7(?:[014-9]\\\\d|2[89]|3[01])\\\\d{6}\", , , , \"701234567\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"AF\", 93, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[2-9]\"]], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[2-7]\"], \"0$1\"]], [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[2-7]\"], \"0$1\"]],\n[, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], AG:[, [, , \"(?:268|[58]\\\\d\\\\d|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"268(?:4(?:6[0-38]|84)|56[0-2])\\\\d{4}\", , , , \"2684601234\", , , , [7]], [, , \"268(?:464|7(?:1[3-9]|2\\\\d|3[246]|64|[78][0-689]))\\\\d{4}\", , , , \"2684641234\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\",\n, , , \"5002345678\"], [, , \"26848[01]\\\\d{4}\", , , , \"2684801234\", , , , [7]], \"AG\", 1, \"011\", \"1\", , , \"1|([457]\\\\d{6})$\", \"268$1\", , , , , [, , \"26840[69]\\\\d{4}\", , , , \"2684061234\", , , , [7]], , \"268\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], AI:[, [, , \"(?:264|[58]\\\\d\\\\d|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"2644(?:6[12]|9[78])\\\\d{4}\", , , , \"2644612345\", , , , [7]], [, , \"264(?:235|476|5(?:3[6-9]|8[1-4])|7(?:29|72))\\\\d{4}\", , , , \"2642351234\", ,\n, , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"AI\", 1, \"011\", \"1\", , , \"1|([2457]\\\\d{6})$\", \"264$1\", , , , , [, , , , , , , , , [-1]], , \"264\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], AL:[, [, , \"(?:700\\\\d\\\\d|900)\\\\d{3}|8\\\\d{5,7}|(?:[2-5]|6\\\\d)\\\\d{7}\", , , , , ,\n, [6, 7, 8, 9], [5]], [, , \"(?:[2358](?:[16-9]\\\\d[2-9]|[2-5][2-9]\\\\d)|4(?:[2-57-9][2-9]|6\\\\d)\\\\d)\\\\d{4}\", , , , \"22345678\", , , [8], [5, 6, 7]], [, , \"6(?:[689][2-9]|7[2-6])\\\\d{6}\", , , , \"662123456\", , , [9]], [, , \"800\\\\d{4}\", , , , \"8001234\", , , [7]], [, , \"900[1-9]\\\\d\\\\d\", , , , \"900123\", , , [6]], [, , \"808[1-9]\\\\d\\\\d\", , , , \"808123\", , , [6]], [, , \"700[2-9]\\\\d{4}\", , , , \"70021234\", , , [8]], [, , , , , , , , , [-1]], \"AL\", 355, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{3,4})\", \"$1 $2\",\n[\"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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], AM:[, [, , \"(?:[1-489]\\\\d|55|60|77)\\\\d{6}\", , , , , , , [8], [5, 6]], [, , \"(?:(?:1[0-25]|47)\\\\d|2(?:2[2-46]|3[1-8]|4[2-69]|5[2-7]|6[1-9]|8[1-7])|3[12]2)\\\\d{5}\",\n, , , \"10123456\", , , , [5, 6]], [, , \"(?:33|4[1349]|55|77|88|9[13-9])\\\\d{6}\", , , , \"77123456\"], [, , \"800\\\\d{5}\", , , , \"80012345\"], [, , \"90[016]\\\\d{5}\", , , , \"90012345\"], [, , \"80[1-4]\\\\d{5}\", , , , \"80112345\"], [, , , , , , , , , [-1]], [, , \"60(?:2[78]|3[5-9]|4[02-9]|5[0-46-9]|[6-8]\\\\d|90)\\\\d{4}\", , , , \"60271234\"], \"AM\", 374, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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})\",\n\"$1 $2\", [\"1|47\"], \"(0$1)\"], [, \"(\\\\d{2})(\\\\d{6})\", \"$1 $2\", [\"[3-9]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], AO:[, [, , \"[29]\\\\d{8}\", , , , , , , [9]], [, , \"2\\\\d(?:[0134][25-9]|[25-9]\\\\d)\\\\d{5}\", , , , \"222123456\"], [, , \"9[1-49]\\\\d{7}\", , , , \"923123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"AO\", 244, \"00\", , , , ,\n, , , [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[29]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], AR:[, [, , \"11\\\\d{8}|(?:[2368]|9\\\\d)\\\\d{9}\", , , , , , , [10, 11], [6, 7, 8]], [, , \"(?:2(?:646[0-46-9]|9(?:45[02-69]|54[2-8]))|3(?:4(?:3(?:5[0-7]|6[1-69])|5(?:4[0-4679]|[56][024-6]))|585[013-7]|7(?:(?:1[15]|81)[46]|77[2-8])|8(?:(?:21|4[16]|9[12])[46]|35[124-6]|5(?:5[0-46-9]|6[0-246-9])|6(?:5[2-8]|9[46])|86[0-68])))\\\\d{5}|(?:2(?:284|657|9(?:20|66))|3(?:4(?:8[27]|92)|755|878))[2-7]\\\\d{5}|(?:2(?:2(?:2[59]|44|52)|3(?:26|4[24])|473|9(?:[07]2|2[26]|34|46))|3327)[45]\\\\d{5}|(?:2(?:(?:26|62)2|3(?:02|2[03])|477|9(?:42|83))|3(?:4(?:[47]6|62|89)|5(?:41|64)|873))[2-6]\\\\d{5}|(?:(?:11[2-7]|670)\\\\d|2(?:2(?:0[45]|1[2-6]|3[3-6])|3(?:[06]4|7[45])|494|6(?:04|1[2-7]|[346][45])|80[45]|9(?:[17][4-6]|44|8[45]|9[3-6]))|3(?:364|4(?:1[2-7]|2[4-6]|[38]4)|5(?:1[2-8]|3[4-6]|8[46])|6(?:2[45]|44)|7[069][45]|8(?:0[45]|1[2-6]|34|5[34]|7[24-6]|8[3-5])))\\\\d{6}|2(?:2(?:21|4[23]|6[145]|7[1-4]|8[356]|9[267])|3(?:16|3[13-8]|43|5[346-8]|9[3-5])|475|6(?:2[46]|4[78]|5[1568])|9(?:03|2[1457-9]|3[1356]|4[08]|[56][23]|82))4\\\\d{5}|(?:2(?:2(?:57|81)|3(?:24|46|92)|9(?:01|23|64))|3(?:329|4(?:42|71)|5(?:25|37|4[347]|71)|7(?:18|5[17])|888))[3-6]\\\\d{5}|(?:2(?:2(?:02|2[3467]|4[156]|5[45]|6[6-8]|91)|3(?:1[47]|[24]5|5[25]|96)|47[48]|625|932)|3(?:38[2578]|4(?:0[0-24-9]|3[78]|4[457]|58|6[03-9]|72|83|9[136-8])|5(?:2[124]|[368][23]|4[2689]|7[2-6])|7(?:16|2[15]|3[145]|4[13]|5[468]|7[2-5]|8[26])|8(?:2[5-7]|3[278]|4[3-5]|5[78]|6[1-378]|[78]7|94)))[4-6]\\\\d{5}\",\n, , , \"1123456789\", , , [10], [6, 7, 8]], [, , \"9(?:2(?:646[0-46-9]|9(?:45[02-69]|54[2-8]))|3(?:4(?:3(?:5[0-7]|6[1-69])|5(?:4[0-4679]|[56][024-6]))|585[013-7]|7(?:(?:1[15]|81)[46]|77[2-8])|8(?:(?:21|4[16]|9[12])[46]|35[124-6]|5(?:5[0-46-9]|6[0-246-9])|6(?:5[2-8]|9[46])|86[0-68])))\\\\d{5}|9(?:2(?:284|657|9(?:20|66))|3(?:4(?:8[27]|92)|755|878))[2-7]\\\\d{5}|9(?:2(?:2(?:2[59]|44|52)|3(?:26|4[24])|473|9(?:[07]2|2[26]|34|46))|3327)[45]\\\\d{5}|9(?:2(?:(?:26|62)2|3(?:02|2[03])|477|9(?:42|83))|3(?:4(?:[47]6|62|89)|5(?:41|64)|873))[2-6]\\\\d{5}|(?:675\\\\d|9(?:11[2-7]\\\\d|2(?:2(?:0[45]|1[2-6]|3[3-6])|3(?:[06]4|7[45])|494|6(?:04|1[2-7]|[346][45])|80[45]|9(?:[17][4-6]|44|8[45]|9[3-6]))|3(?:364|4(?:1[2-7]|2[4-6]|[38]4)|5(?:1[2-8]|3[4-6]|8[46])|6(?:2[45]|44)|7[069][45]|8(?:0[45]|1[2-6]|34|5[34]|7[24-6]|8[3-5]))))\\\\d{6}|92(?:2(?:21|4[23]|6[145]|7[1-4]|8[356]|9[267])|3(?:16|3[13-8]|43|5[346-8]|9[3-5])|475|6(?:2[46]|4[78]|5[1568])|9(?:03|2[1457-9]|3[1356]|4[08]|[56][23]|82))4\\\\d{5}|9(?:2(?:2(?:57|81)|3(?:24|46|92)|9(?:01|23|64))|3(?:329|4(?:42|71)|5(?:25|37|4[347]|71)|7(?:18|5[17])|888))[3-6]\\\\d{5}|9(?:2(?:2(?:02|2[3467]|4[156]|5[45]|6[6-8]|91)|3(?:1[47]|[24]5|5[25]|96)|47[48]|625|932)|3(?:38[2578]|4(?:0[0-24-9]|3[78]|4[457]|58|6[03-9]|72|83|9[136-8])|5(?:2[124]|[368][23]|4[2689]|7[2-6])|7(?:16|2[15]|3[145]|4[13]|5[468]|7[2-5]|8[26])|8(?:2[5-7]|3[278]|4[3-5]|5[78]|6[1-378]|[78]7|94)))[4-6]\\\\d{5}\",\n, , , \"91123456789\", , , , [6, 7, 8]], [, , \"800\\\\d{7}\", , , , \"8001234567\", , , [10]], [, , \"60[04579]\\\\d{7}\", , , , \"6001234567\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"AR\", 54, \"00\", \"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)?\",\n\"9$1\", , , [[, \"(\\\\d{3})\", \"$1\", [\"[09]|1(?:[02]|1[02-5])\"]], [, \"(\\\\d{2})(\\\\d{4})\", \"$1-$2\", [\"[2-7]|8[0-7]\"]], [, \"(\\\\d{3})(\\\\d{4})\", \"$1-$2\", [\"[2-7]|8[013-8]\"]], [, \"(\\\\d{4})(\\\\d{4})\", \"$1-$2\", [\"2[0-8]|[3-7]\"]], [, \"(\\\\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)\",\n\"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(?:[24-6]|3[2-5]))|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]\"],\n\"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\", [\"[23]\"], \"0$1\", , 1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"[68]\"], \"0$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)\",\n\"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(?:[24-6]|3[2-5]))|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]\"],\n\"0$1\"], [, \"(\\\\d)(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$2 15-$3-$4\", [\"91\"], \"0$1\"], [, \"(\\\\d)(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$2 15-$3-$4\", [\"9\"], \"0$1\"]], [[, \"(\\\\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]\",\n\"2(?:[23]02|6(?:[25]|4(?:64|[78]))|9(?:[02356]|4(?:[0268]|5(?:[24-6]|3[2-5]))|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\", [\"[23]\"],\n\"0$1\", , 1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"[68]\"], \"0$1\"], [, \"(\\\\d)(\\\\d{4})(\\\\d{2})(\\\\d{4})\", \"$1 $2 $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]\",\n\"9(?:2(?:[23]02|6(?:[25]|4(?:64|[78]))|9(?:[02356]|4(?:[0268]|5(?:[24-6]|3[2-5]))|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]\"]], [, \"(\\\\d)(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3-$4\", [\"91\"]], [, \"(\\\\d)(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3-$4\",\n[\"9\"]]], [, , , , , , , , , [-1]], , , [, , \"810\\\\d{7}\", , , , , , , [10]], [, , \"810\\\\d{7}\", , , , \"8101234567\", , , [10]], , , [, , , , , , , , , [-1]]], AS:[, [, , \"(?:[58]\\\\d\\\\d|684|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"6846(?:22|33|44|55|77|88|9[19])\\\\d{4}\", , , , \"6846221234\", , , , [7]], [, , \"684(?:2(?:5[2468]|72)|7(?:3[13]|70))\\\\d{4}\", , , , \"6847331234\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , ,\n, , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"AS\", 1, \"011\", \"1\", , , \"1|([267]\\\\d{6})$\", \"684$1\", , , , , [, , , , , , , , , [-1]], , \"684\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], AT:[, [, , \"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,\n11, 12, 13], [3]], [, , \"1(?:11\\\\d|[2-9]\\\\d{3,11})|(?:316|463|(?:51|66|73)2)\\\\d{3,10}|(?:2(?:1[467]|2[13-8]|5[2357]|6[1-46-8]|7[1-8]|8[124-7]|9[1458])|3(?:1[1-578]|3[23568]|4[5-7]|5[1378]|6[1-38]|8[3-68])|4(?:2[1-8]|35|7[1368]|8[2457])|5(?:2[1-8]|3[357]|4[147]|5[12578]|6[37])|6(?:13|2[1-47]|4[135-8]|5[468])|7(?:2[1-8]|35|4[13478]|5[68]|6[16-8]|7[1-6]|9[45]))\\\\d{4,10}\", , , , \"1234567890\", , , , [3]], [, , \"6(?:5[0-3579]|6[013-9]|[7-9]\\\\d)\\\\d{4,10}\", , , , \"664123456\", , , [7, 8, 9, 10, 11, 12, 13]],\n[, , \"800\\\\d{6,10}\", , , , \"800123456\", , , [9, 10, 11, 12, 13]], [, , \"9(?:0[01]|3[019])\\\\d{6,10}\", , , , \"900123456\", , , [9, 10, 11, 12, 13]], [, , \"8(?:10|2[018])\\\\d{6,10}|828\\\\d{5}\", , , , \"810123456\", , , [8, 9, 10, 11, 12, 13]], [, , , , , , , , , [-1]], [, , \"5(?:0[1-9]|17|[79]\\\\d)\\\\d{2,10}|7[28]0\\\\d{6,10}\", , , , \"780123456\", , , [5, 6, 7, 8, 9, 10, 11, 12, 13]], \"AT\", 43, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d)(\\\\d{3,12})\", \"$1 $2\", [\"1(?:11|[2-9])\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{2})\", \"$1 $2\",\n[\"517\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3,5})\", \"$1 $2\", [\"5[079]\"], \"0$1\"], [, \"(\\\\d{6})\", \"$1\", [\"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\"]], [[, \"(\\\\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})\",\n\"$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\"]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], AU:[, [, , \"1(?:[0-79]\\\\d{7,8}|8[0-24-9]\\\\d{7})|(?:[2-478]\\\\d\\\\d|550)\\\\d{6}|1\\\\d{4,7}\",\n, , , , , , [5, 6, 7, 8, 9, 10]], [, , \"(?:[237]\\\\d{5}|8(?:51(?:0(?:0[03-9]|[1247]\\\\d|3[2-9]|5[0-8]|6[1-9]|8[0-6])|1(?:1[69]|[23]\\\\d|4[0-4]))|(?:[6-8]\\\\d{3}|9(?:[02-9]\\\\d\\\\d|1(?:[0-57-9]\\\\d|6[0135-9])))\\\\d))\\\\d{3}\", , , , \"212345678\", , , [9], [8]], [, , \"483[0-3]\\\\d{5}|4(?:[0-3]\\\\d|4[047-9]|5[0-25-9]|6[06-9]|7[02-9]|8[0-2457-9]|9[0-27-9])\\\\d{6}\", , , , \"412345678\", , , [9]], [, , \"180(?:0\\\\d{3}|2)\\\\d{3}\", , , , \"1800123456\", , , [7, 10]], [, , \"190[0-26]\\\\d{6}\", , , , \"1900123456\", , , [10]], [,\n, \"13(?:00\\\\d{3}|45[0-4])\\\\d{3}|13\\\\d{4}\", , , , \"1300123456\", , , [6, 8, 10]], [, , , , , , , , , [-1]], [, , \"(?:14(?:5(?:1[0458]|[23][458])|71\\\\d)|550\\\\d\\\\d)\\\\d{4}\", , , , \"550123456\", , , [9]], \"AU\", 61, \"001[14-689]|14(?:1[14]|34|4[17]|[56]6|7[47]|88)0011\", \"0\", , , \"0|(183[12])\", , \"0011\", , [[, \"(\\\\d{2})(\\\\d{3,4})\", \"$1 $2\", [\"16\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3\", [\"13\"]], [, \"(\\\\d{3})(\\\\d{3})\", \"$1 $2\", [\"19\"]], [, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"180\", \"1802\"]], [, \"(\\\\d{4})(\\\\d{3,4})\",\n\"$1 $2\", [\"19\"]], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{2,4})\", \"$1 $2 $3\", [\"16\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"14|[45]\"], \"0$1\"], [, \"(\\\\d)(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"[2378]\"], \"(0$1)\", \"$CC ($1)\"], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"1(?:30|[89])\"]]], [[, \"(\\\\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|[45]\"], \"0$1\"], [, \"(\\\\d)(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"[2378]\"],\n\"(0$1)\", \"$CC ($1)\"], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"1(?:30|[89])\"]]], [, , \"16\\\\d{3,7}\", , , , \"1612345\", , , [5, 6, 7, 8, 9]], 1, , [, , \"1[38]00\\\\d{6}|1(?:345[0-4]|802)\\\\d{3}|13\\\\d{4}\", , , , , , , [6, 7, 8, 10]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], AW:[, [, , \"(?:[25-79]\\\\d\\\\d|800)\\\\d{4}\", , , , , , , [7]], [, , \"5(?:2\\\\d|8[1-9])\\\\d{4}\", , , , \"5212345\"], [, , \"(?:290|5[69]\\\\d|6(?:[03]0|22|4[0-2]|[69]\\\\d)|7(?:[34]\\\\d|7[07])|9(?:6[45]|9[4-8]))\\\\d{4}\", , , , \"5601234\"],\n[, , \"800\\\\d{4}\", , , , \"8001234\"], [, , \"900\\\\d{4}\", , , , \"9001234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"(?:28\\\\d|501)\\\\d{4}\", , , , \"5011234\"], \"AW\", 297, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[25-9]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], AX:[, [, , \"2\\\\d{4,9}|35\\\\d{4,5}|(?:60\\\\d\\\\d|800)\\\\d{4,6}|(?:[147]\\\\d|3[0-46-9]|50)\\\\d{4,8}\", , , , , , , [5, 6, 7, 8, 9, 10]], [, , \"18[1-8]\\\\d{3,6}\",\n, , , \"181234567\", , , [6, 7, 8, 9]], [, , \"(?:4[0-8]|50)\\\\d{4,8}\", , , , \"412345678\", , , [6, 7, 8, 9, 10]], [, , \"800\\\\d{4,6}\", , , , \"800123456\", , , [7, 8, 9]], [, , \"[67]00\\\\d{5,6}\", , , , \"600123456\", , , [8, 9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"AX\", 358, \"00|99(?:[01469]|5(?:[14]1|3[23]|5[59]|77|88|9[09]))\", \"0\", , , \"0\", , \"00\", , , , [, , , , , , , , , [-1]], , \"18\", [, , , , , , , , , [-1]], [, , \"(?:10|[23][09])\\\\d{4,8}|60(?:[12]\\\\d{5,6}|6\\\\d{7})|7(?:(?:1|3\\\\d)\\\\d{7}|5[03-9]\\\\d{3,7})|20[2-59]\\\\d\\\\d\",\n, , , \"10112345\"], , , [, , , , , , , , , [-1]]], AZ:[, [, , \"(?:365\\\\d{3}|900200)\\\\d{3}|(?:[12457]\\\\d|60|88)\\\\d{7}\", , , , , , , [9], [7]], [, , \"365(?:[0-46-9]\\\\d|5[0-35-9])\\\\d{4}|(?:1[28]\\\\d|2(?:[045]2|1[24]|2[2-4]|33|6[23]))\\\\d{6}\", , , , \"123123456\", , , , [7]], [, , \"36554\\\\d{4}|(?:4[04]|5[015]|60|7[07])\\\\d{7}\", , , , \"401234567\"], [, , \"88\\\\d{7}\", , , , \"881234567\"], [, , \"900200\\\\d{3}\", , , , \"900200123\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"AZ\",\n994, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3\", [\"[1-9]\"]], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"9\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[12]|365\", \"[12]|365\", \"[12]|365(?:[0-46-9]|5[0-35-9])\"], \"(0$1)\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[3-8]\"], \"0$1\"]], [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"9\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[12]|365\", \"[12]|365\",\n\"[12]|365(?:[0-46-9]|5[0-35-9])\"], \"(0$1)\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[3-8]\"], \"0$1\"]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BA:[, [, , \"6\\\\d{8}|(?:[35689]\\\\d|49|70)\\\\d{6}\", , , , , , , [8, 9], [6]], [, , \"(?:3(?:[05-79][2-9]|1[4579]|[23][24-9]|4[2-4689]|8[2457-9])|49[2-579]|5(?:0[2-49]|[13][2-9]|[268][2-4679]|4[4689]|5[2-79]|7[2-69]|9[2-4689]))\\\\d{5}\", , , , \"30212345\", , , [8], [6]], [, ,\n\"6(?:0(?:3\\\\d|40)|[1-356]\\\\d|44[0-6]|71[137])\\\\d{5}\", , , , \"61123456\"], [, , \"8[08]\\\\d{6}\", , , , \"80123456\", , , [8]], [, , \"9[0246]\\\\d{6}\", , , , \"90123456\", , , [8]], [, , \"8[12]\\\\d{6}\", , , , \"82123456\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"BA\", 387, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{3})\", \"$1-$2\", [\"[2-9]\"]], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"6[1-356]|[7-9]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2-$3\", [\"[3-5]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{3})\",\n\"$1 $2 $3 $4\", [\"6\"], \"0$1\"]], [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"6[1-356]|[7-9]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2-$3\", [\"[3-5]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{3})\", \"$1 $2 $3 $4\", [\"6\"], \"0$1\"]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"70(?:3[0146]|[56]0)\\\\d{4}\", , , , \"70341234\", , , [8]], , , [, , , , , , , , , [-1]]], BB:[, [, , \"(?:246|[58]\\\\d\\\\d|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"246(?:2(?:2[78]|7[0-4])|4(?:1[024-6]|2\\\\d|3[2-9])|5(?:20|[34]\\\\d|54|7[1-3])|6(?:2\\\\d|38)|7[35]7|9(?:1[89]|63))\\\\d{4}\",\n, , , \"2464123456\", , , , [7]], [, , \"246(?:2(?:[356]\\\\d|4[0-57-9]|8[0-79])|45\\\\d|69[5-7]|8(?:[2-5]\\\\d|83))\\\\d{4}\", , , , \"2462501234\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"(?:246976|900[2-9]\\\\d\\\\d)\\\\d{4}\", , , , \"9002123456\", , , , [7]], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , \"24631\\\\d{5}\", , , , \"2463101234\", , , , [7]], \"BB\", 1, \"011\", \"1\", , , \"1|([2-9]\\\\d{6})$\", \"246$1\", , , , , [, , ,\n, , , , , , [-1]], , \"246\", [, , , , , , , , , [-1]], [, , \"246(?:292|367|4(?:1[7-9]|3[01]|44|67)|7(?:36|53))\\\\d{4}\", , , , \"2464301234\", , , , [7]], , , [, , , , , , , , , [-1]]], BD:[, [, , \"[13469]\\\\d{9}|8[0-79]\\\\d{7,8}|[2-7]\\\\d{8}|[2-9]\\\\d{7}|[3-689]\\\\d{6}|[57-9]\\\\d{5}\", , , , , , , [6, 7, 8, 9, 10]], [, , \"(?:3(?:03[56]|224)|4(?:22[25]|653))\\\\d{3,4}|(?:4(?:31\\\\d\\\\d|[46]23)|5(?:222|32[37]))\\\\d{3}(?:\\\\d{2})?|(?:3(?:42[47]|529|823)|4(?:027|525|658)|(?:56|73)2|6257|9[35]1)\\\\d{3}|(?:3(?:02[348]|22[35]|324|422)|4(?:22[67]|32[236-9]|6(?:2[46]|5[57])|953)|5526|6(?:024|6655)|81)\\\\d{4,5}|(?:2(?:7(?:1[0-267]|2[0-289]|3[0-29]|4[01]|5[1-3]|6[013]|7[0178]|91)|8(?:0[125]|1[1-6]|2[0157-9]|3[1-69]|41|6[1-35]|7[1-5]|8[1-8]|9[0-6])|9(?:0[0-2]|1[0-4]|2[568]|3[3-6]|5[5-7]|6[01367]|7[15]|8[014-9]))|3(?:0(?:2[025-79]|3[2-4])|22[12]|32[2356]|824)|4(?:02[09]|22[348]|32[045]|523|6(?:27|54))|666(?:22|53)|8(?:4[12]|[5-7]2)|9(?:[024]2|81))\\\\d{4}|(?:2[45]\\\\d\\\\d|3(?:1(?:2[5-7]|[5-7])|425|822)|4(?:033|1\\\\d|[257]1|332|4(?:2[246]|5[25])|6(?:25|56|62)|8(?:23|54)|92[2-5])|5(?:02[03489]|22[457]|32[569]|42[46]|6(?:[18]|53)|724|826)|6(?:023|2(?:2[2-5]|5[3-5]|8)|32[3478]|42[34]|52[47]|6(?:[18]|6(?:2[34]|5[24]))|[78]2[2-5]|92[2-6])|7(?:02|21\\\\d|[3-589]1|6[12]|72[24])|8(?:0|217|3[12]|[5-7]1)|9[24]1)\\\\d{5}|(?:(?:3[2-8]|5[2-57-9]|6[03-589])1|4[4689][18])\\\\d{5}|[59]1\\\\d{5}\",\n, , , \"27111234\"], [, , \"(?:1[13-9]\\\\d|644)\\\\d{7}|(?:3[78]|44|66)[02-9]\\\\d{7}\", , , , \"1812345678\", , , [10]], [, , \"80[03]\\\\d{7}\", , , , \"8001234567\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"96(?:0[469]|1[0-47]|3[389]|6[69]|7[78])\\\\d{6}\", , , , \"9604123456\", , , [10]], \"BD\", 880, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{4,6})\", \"$1-$2\", [\"31[5-7]|[459]1\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{3,7})\", \"$1-$2\", [\"3(?:[67]|8[013-9])|4(?:6[168]|7|[89][18])|5(?:6[128]|9)|6(?:28|4[14]|5)|7[2-589]|8(?:0[014-9]|[12])|9[358]|(?:3[2-5]|4[235]|5[2-578]|6[0389]|76|8[3-7]|9[24])1|(?:44|66)[01346-9]\"],\n\"0$1\"], [, \"(\\\\d{4})(\\\\d{3,6})\", \"$1-$2\", [\"[13-9]\"], \"0$1\"], [, \"(\\\\d)(\\\\d{7,8})\", \"$1-$2\", [\"2\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BE:[, [, , \"4\\\\d{8}|[1-9]\\\\d{7}\", , , , , , , [8, 9]], [, , \"80[2-8]\\\\d{5}|(?:1[0-69]|[23][2-8]|4[23]|5\\\\d|6[013-57-9]|71|8[1-79]|9[2-4])\\\\d{6}\", , , , \"12345678\", , , [8]], [, , \"4(?:5[56]|6[0135-8]|[79]\\\\d|8[3-9])\\\\d{6}\", , , , \"470123456\", , , [9]], [, , \"800[1-9]\\\\d{4}\", ,\n, , \"80012345\", , , [8]], [, , \"(?:70(?:2[0-57]|3[0457]|44|69|7[0579])|90(?:0[0-35-8]|1[36]|2[0-3568]|3[0135689]|4[2-68]|5[1-68]|6[0-378]|7[23568]|9[34679]))\\\\d{4}\", , , , \"90012345\", , , [8]], [, , \"7879\\\\d{4}\", , , , \"78791234\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"BE\", 32, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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})\",\n\"$1 $2 $3 $4\", [\"[15-8]\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"4\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"78(?:0[57]|1[0458]|2[25]|3[5-8]|48|[56]0|7[078])\\\\d{4}\", , , , \"78102345\", , , [8]], , , [, , , , , , , , , [-1]]], BF:[, [, , \"[025-7]\\\\d{7}\", , , , , , , [8]], [, , \"2(?:0(?:49|5[23]|6[56]|9[016-9])|4(?:4[569]|5[4-6]|6[56]|7[0179])|5(?:[34]\\\\d|50|6[5-7]))\\\\d{4}\", , , , \"20491234\"], [, , \"(?:0[17]|5[124-8]|[67]\\\\d)\\\\d{6}\", , , ,\n\"70123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"BF\", 226, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[025-7]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BG:[, [, , \"[2-7]\\\\d{6,7}|[89]\\\\d{6,8}|2\\\\d{5}\", , , , , , , [6, 7, 8, 9], [4, 5]], [, , \"2\\\\d{5,7}|(?:43[1-6]|70[1-9])\\\\d{4,5}|(?:[36]\\\\d|4[124-7]|[57][1-9]|8[1-6]|9[1-7])\\\\d{5,6}\",\n, , , \"2123456\", , , [6, 7, 8], [4, 5]], [, , \"43[07-9]\\\\d{5}|(?:48|8[7-9]\\\\d|9(?:8\\\\d|9[69]))\\\\d{6}\", , , , \"48123456\", , , [8, 9]], [, , \"800\\\\d{5}\", , , , \"80012345\", , , [8]], [, , \"90\\\\d{6}\", , , , \"90123456\", , , [8]], [, , \"700\\\\d{5}\", , , , \"70012345\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"BG\", 359, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{6})\", \"$1\", [\"1\"]], [, \"(\\\\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]\"],\n\"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\"]], [[, \"(\\\\d)(\\\\d)(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"2\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{4})\",\n\"$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\"]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]],\n[, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BH:[, [, , \"[136-9]\\\\d{7}\", , , , , , , [8]], [, , \"(?:1(?:3[1356]|6[0156]|7\\\\d)\\\\d|6(?:1[16]\\\\d|500|6(?:0\\\\d|3[12]|44|7[7-9]|88)|9[69][69])|7(?:1(?:11|78)|7\\\\d\\\\d))\\\\d{4}\", , , , \"17001234\"], [, , \"(?:3(?:[1-4679]\\\\d|5[013-69]|8[0-47-9])\\\\d|6(?:3(?:00|33|6[16])|6(?:3[03-9]|[69]\\\\d|7[0-6])))\\\\d{4}\", , , , \"36001234\"], [, , \"80\\\\d{6}\", , , , \"80123456\"], [, , \"(?:87|9[014578])\\\\d{6}\", , , , \"90123456\"], [, , \"84\\\\d{6}\", , , , \"84123456\"], [,\n, , , , , , , , [-1]], [, , , , , , , , , [-1]], \"BH\", 973, \"00\", , , , , , , , [[, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[13679]|8[047]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BI:[, [, , \"(?:[267]\\\\d|31)\\\\d{6}\", , , , , , , [8]], [, , \"22\\\\d{6}\", , , , \"22201234\"], [, , \"(?:29|31|6[189]|7[125-9])\\\\d{6}\", , , , \"79561234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]],\n[, , , , , , , , , [-1]], \"BI\", 257, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[2367]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BJ:[, [, , \"[2689]\\\\d{7}\", , , , , , , [8]], [, , \"2(?:02|1[037]|2[45]|3[68])\\\\d{5}\", , , , \"20211234\"], [, , \"(?:6\\\\d|9[013-9])\\\\d{6}\", , , , \"90011234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]],\n[, , \"857[58]\\\\d{4}\", , , , \"85751234\"], \"BJ\", 229, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[2689]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"81\\\\d{6}\", , , , \"81123456\"], , , [, , , , , , , , , [-1]]], BL:[, [, , \"(?:590|69\\\\d)\\\\d{6}\", , , , , , , [9]], [, , \"590(?:2[7-9]|5[12]|87)\\\\d{4}\", , , , \"590271234\"], [, , \"69(?:0\\\\d\\\\d|1(?:2[29]|3[0-5]))\\\\d{4}\", , , , \"690001234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , ,\n, , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"BL\", 590, \"00\", \"0\", , , \"0\", , , , , , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BM:[, [, , \"(?:441|[58]\\\\d\\\\d|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"441(?:2(?:02|23|[3479]\\\\d|61)|[46]\\\\d\\\\d|5(?:4\\\\d|60|89)|824)\\\\d{4}\", , , , \"4412345678\", , , , [7]], [, , \"441(?:[37]\\\\d|5[0-39])\\\\d{5}\", , , , \"4413701234\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\",\n, , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"BM\", 1, \"011\", \"1\", , , \"1|([2-8]\\\\d{6})$\", \"441$1\", , , , , [, , , , , , , , , [-1]], , \"441\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BN:[, [, , \"[2-578]\\\\d{6}\", , , , , , , [7]], [, , \"22[0-7]\\\\d{4}|(?:2[013-9]|[3-5]\\\\d)\\\\d{5}\", , , , \"2345678\"], [, , \"(?:22[89]|[78]\\\\d\\\\d)\\\\d{4}\",\n, , , \"7123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"BN\", 673, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[2-578]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BO:[, [, , \"(?:[2-467]\\\\d\\\\d|8001)\\\\d{5}\", , , , , , , [8, 9], [7]], [, , \"(?:2(?:2\\\\d\\\\d|5(?:11|[258]\\\\d|9[67])|6(?:12|2\\\\d|9[34])|8(?:2[34]|39|62))|3(?:3\\\\d\\\\d|4(?:6\\\\d|8[24])|8(?:25|42|5[257]|86|9[25])|9(?:[27]\\\\d|3[2-4]|4[248]|5[24]|6[2-6]))|4(?:4\\\\d\\\\d|6(?:11|[24689]\\\\d|72)))\\\\d{4}\",\n, , , \"22123456\", , , [8], [7]], [, , \"[67]\\\\d{7}\", , , , \"71234567\", , , [8]], [, , \"8001[07]\\\\d{4}\", , , , \"800171234\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"BO\", 591, \"00(?:1\\\\d)?\", \"0\", , , \"0(1\\\\d)?\", , , , [[, \"(\\\\d)(\\\\d{7})\", \"$1 $2\", [\"[23]|4[46]\"], , \"0$CC $1\"], [, \"(\\\\d{8})\", \"$1\", [\"[67]\"], , \"0$CC $1\"], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{4})\", \"$1 $2 $3\", [\"8\"], , \"0$CC $1\"]], , [, , , , , , , , , [-1]], , , [, , \"8001[07]\\\\d{4}\",\n, , , , , , [9]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BQ:[, [, , \"(?:[34]1|7\\\\d)\\\\d{5}\", , , , , , , [7]], [, , \"(?:318[023]|41(?:6[023]|70)|7(?:1[578]|50)\\\\d)\\\\d{3}\", , , , \"7151234\"], [, , \"(?:31(?:8[14-8]|9[14578])|416[14-9]|7(?:0[01]|7[07]|8\\\\d|9[056])\\\\d)\\\\d{3}\", , , , \"3181234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"BQ\", 599, \"00\", , , , , , , , , , [, , , , , , , , , [-1]], ,\n\"[347]\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BR:[, [, , \"(?:[1-46-9]\\\\d\\\\d|5(?:[0-46-9]\\\\d|5[0-24679]))\\\\d{8}|[1-9]\\\\d{9}|[3589]\\\\d{8}|[34]\\\\d{7}\", , , , , , , [8, 9, 10, 11]], [, , \"(?:[14689][1-9]|2[12478]|3[1-578]|5[13-5]|7[13-579])[2-5]\\\\d{7}\", , , , \"1123456789\", , , [10], [8]], [, , \"(?:[14689][1-9]|2[12478]|3[1-578]|5[13-5]|7[13-579])(?:7|9\\\\d)\\\\d{7}\", , , , \"11961234567\", , , [10, 11], [8, 9]], [, , \"800\\\\d{6,7}\", , , , \"800123456\", , , [9, 10]],\n[, , \"300\\\\d{6}|[59]00\\\\d{6,7}\", , , , \"300123456\", , , [9, 10]], [, , \"300\\\\d{7}|[34]00\\\\d{5}|4(?:02|37)0\\\\d{4}\", , , , \"40041234\", , , [8, 10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"BR\", 55, \"00(?:1[245]|2[1-35]|31|4[13]|[56]5|99)\", \"0\", , , \"0(?:(1[245]|2[1-35]|31|4[13]|[56]5|99)(\\\\d{10,11}))?\", \"$2\", , , [[, \"(\\\\d{3,6})\", \"$1\", [\"1(?:1[25-8]|2[357-9]|3[02-68]|4[12568]|5|6[0-8]|8[015]|9[0-47-9])|321|610\"]], [, \"(\\\\d{4})(\\\\d{4})\", \"$1-$2\", [\"300|4(?:0[02]|37)\", \"4(?:02|37)0|[34]00\"]],\n[, \"(\\\\d{4})(\\\\d{4})\", \"$1-$2\", [\"[2-57]\", \"[2357]|4(?:[0-24-9]|3(?:[0-689]|7[1-9]))\"]], [, \"(\\\\d{3})(\\\\d{2,3})(\\\\d{4})\", \"$1 $2 $3\", [\"(?:[358]|90)0\"], \"0$1\"], [, \"(\\\\d{5})(\\\\d{4})\", \"$1-$2\", [\"9\"]], [, \"(\\\\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)\", \"0 $CC ($1)\"], [, \"(\\\\d{2})(\\\\d{5})(\\\\d{4})\", \"$1 $2-$3\", [\"[16][1-9]|[2-57-9]\"], \"($1)\", \"0 $CC ($1)\"]], [[, \"(\\\\d{4})(\\\\d{4})\", \"$1-$2\", [\"300|4(?:0[02]|37)\", \"4(?:02|37)0|[34]00\"]],\n[, \"(\\\\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)\", \"0 $CC ($1)\"], [, \"(\\\\d{2})(\\\\d{5})(\\\\d{4})\", \"$1 $2-$3\", [\"[16][1-9]|[2-57-9]\"], \"($1)\", \"0 $CC ($1)\"]], [, , , , , , , , , [-1]], , , [, , \"4020\\\\d{4}|[34]00\\\\d{5}\", , , , , , , [8]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BS:[, [, , \"(?:242|[58]\\\\d\\\\d|900)\\\\d{7}\", , , , , , , [10], [7]], [, ,\n\"242(?:3(?:02|[236][1-9]|4[0-24-9]|5[0-68]|7[347]|8[0-4]|9[2-467])|461|502|6(?:0[1-4]|12|2[013]|[45]0|7[67]|8[78]|9[89])|7(?:02|88))\\\\d{4}\", , , , \"2423456789\", , , , [7]], [, , \"242(?:3(?:5[79]|7[56]|95)|4(?:[23][1-9]|4[1-35-9]|5[1-8]|6[2-8]|7\\\\d|81)|5(?:2[45]|3[35]|44|5[1-46-9]|65|77)|6[34]6|7(?:27|38)|8(?:0[1-9]|1[02-9]|2\\\\d|[89]9))\\\\d{4}\", , , , \"2423591234\", , , , [7]], [, , \"242300\\\\d{4}|8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\", , , , [7]], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"],\n[, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"BS\", 1, \"011\", \"1\", , , \"1|([3-8]\\\\d{6})$\", \"242$1\", , , , , [, , , , , , , , , [-1]], , \"242\", [, , , , , , , , , [-1]], [, , \"242225[0-46-9]\\\\d{3}\", , , , \"2422250123\"], , , [, , , , , , , , , [-1]]], BT:[, [, , \"[17]\\\\d{7}|[2-8]\\\\d{6}\", , , , , , , [7, 8], [6]], [, , \"(?:2[3-6]|[34][5-7]|5[236]|6[2-46]|7[246]|8[2-4])\\\\d{5}\", , , , \"2345678\", , , [7], [6]], [, , \"(?:1[67]|77)\\\\d{6}\",\n, , , \"17123456\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"BT\", 975, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{3})\", \"$1 $2\", [\"[2-7]\"]], [, \"(\\\\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\"]]], [[, \"(\\\\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\"]]], [, , , ,\n, , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BW:[, [, , \"90\\\\d{5}|(?:[2-6]|7\\\\d)\\\\d{6}\", , , , , , , [7, 8]], [, , \"(?:2(?:4[0-48]|6[0-24]|9[0578])|3(?:1[0-35-9]|55|[69]\\\\d|7[013])|4(?:6[03]|7[1267]|9[0-5])|5(?:3[0389]|4[0489]|7[1-47]|88|9[0-49])|6(?:2[1-35]|5[149]|8[067]))\\\\d{4}\", , , , \"2401234\", , , [7]], [, , \"77200\\\\d{3}|7(?:[1-6]\\\\d|7[014-8])\\\\d{5}\", , , , \"71123456\", , , [8]], [, , , , , , , , , [-1]], [, , \"90\\\\d{5}\", , , , \"9012345\",\n, , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"79(?:1(?:[01]\\\\d|20)|2[0-2]\\\\d)\\\\d{3}\", , , , \"79101234\", , , [8]], \"BW\", 267, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{5})\", \"$1 $2\", [\"90\"]], [, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[2-6]\"]], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"7\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BY:[, [, , \"(?:[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}\",\n, , , , , , [6, 7, 8, 9, 10, 11], [5]], [, , \"(?:1(?:5(?:1[1-5]|[24]\\\\d|6[2-4]|9[1-7])|6(?:[235]\\\\d|4[1-7])|7\\\\d\\\\d)|2(?:1(?:[246]\\\\d|3[0-35-9]|5[1-9])|2(?:[235]\\\\d|4[0-8])|3(?:[26]\\\\d|3[02-79]|4[024-7]|5[03-7])))\\\\d{5}\", , , , \"152450911\", , , [9], [5, 6, 7]], [, , \"(?:2(?:5[5-79]|9[1-9])|(?:33|44)\\\\d)\\\\d{6}\", , , , \"294911911\", , , [9]], [, , \"800\\\\d{3,7}|8(?:0[13]|20\\\\d)\\\\d{7}\", , , , \"8011234567\"], [, , \"(?:810|902)\\\\d{7}\", , , , \"9021234567\", , , [10]], [, , , , , , , , , [-1]], [, , , , , ,\n, , , [-1]], [, , \"249\\\\d{6}\", , , , \"249123456\", , , [9]], \"BY\", 375, \"810\", \"8\", , , \"0|80?\", , \"8~10\", , [[, \"(\\\\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]\"],\n\"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\"]], , [, , , , , , , , , [-1]], , , [, , \"800\\\\d{3,7}|(?:8(?:0[13]|10|20\\\\d)|902)\\\\d{7}\"], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BZ:[, [, , \"(?:0800\\\\d|[2-8])\\\\d{6}\", , , , , , , [7, 11]], [, , \"(?:236|732)\\\\d{4}|[2-578][02]\\\\d{5}\", , , , \"2221234\", , , [7]], [, , \"6[0-35-7]\\\\d{5}\", , , , \"6221234\", , , [7]], [, , \"0800\\\\d{7}\", , , ,\n\"08001234123\", , , [11]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"BZ\", 501, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1-$2\", [\"[2-8]\"]], [, \"(\\\\d)(\\\\d{3})(\\\\d{4})(\\\\d{3})\", \"$1-$2-$3-$4\", [\"0\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CA:[, [, , \"(?:[2-8]\\\\d|90)\\\\d{8}\", , , , , , , [10], [7]], [, , \"(?:2(?:04|[23]6|[48]9|50)|3(?:06|43|65)|4(?:03|1[68]|3[178]|50)|5(?:06|1[49]|48|79|8[17])|6(?:04|13|39|47)|7(?:0[59]|78|8[02])|8(?:[06]7|19|25|73)|90[25])[2-9]\\\\d{6}\",\n, , , \"5062345678\", , , , [7]], [, , \"(?:2(?:04|[23]6|[48]9|50)|3(?:06|43|65)|4(?:03|1[68]|3[178]|50)|5(?:06|1[49]|48|79|8[17])|6(?:04|13|39|47)|7(?:0[59]|78|8[02])|8(?:[06]7|19|25|73)|90[25])[2-9]\\\\d{6}\", , , , \"5062345678\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"(?:5(?:00|2[12]|33|44|66|77|88)|622)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , \"600[2-9]\\\\d{6}\", , , , \"6002012345\"], \"CA\",\n1, \"011\", \"1\", , , \"1\", , , 1, , , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CC:[, [, , \"1(?:[0-79]\\\\d|8[0-24-9])\\\\d{7}|(?:[148]\\\\d\\\\d|550)\\\\d{6}|1\\\\d{5,7}\", , , , , , , [6, 7, 8, 9, 10]], [, , \"8(?:51(?:0(?:02|31|60)|118)|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}\", , , , \"891621234\", , , [9], [8]], [, , \"483[0-3]\\\\d{5}|4(?:[0-3]\\\\d|4[047-9]|5[0-25-9]|6[06-9]|7[02-9]|8[0-2457-9]|9[0-27-9])\\\\d{6}\",\n, , , \"412345678\", , , [9]], [, , \"180(?:0\\\\d{3}|2)\\\\d{3}\", , , , \"1800123456\", , , [7, 10]], [, , \"190[0-26]\\\\d{6}\", , , , \"1900123456\", , , [10]], [, , \"13(?:00\\\\d{3}|45[0-4])\\\\d{3}|13\\\\d{4}\", , , , \"1300123456\", , , [6, 8, 10]], [, , , , , , , , , [-1]], [, , \"(?:14(?:5(?:1[0458]|[23][458])|71\\\\d)|550\\\\d\\\\d)\\\\d{4}\", , , , \"550123456\", , , [9]], \"CC\", 61, \"001[14-689]|14(?:1[14]|34|4[17]|[56]6|7[47]|88)0011\", \"0\", , , \"0|([59]\\\\d{7})$\", \"8$1\", \"0011\", , , , [, , , , , , , , , [-1]], , , [, , ,\n, , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CD:[, [, , \"[189]\\\\d{8}|[1-68]\\\\d{6}\", , , , , , , [7, 9]], [, , \"12\\\\d{7}|[1-6]\\\\d{6}\", , , , \"1234567\"], [, , \"88\\\\d{5}|(?:8[0-2459]|9[017-9])\\\\d{7}\", , , , \"991234567\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"CD\", 243, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{3})\", \"$1 $2 $3\", [\"88\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{5})\", \"$1 $2\",\n[\"[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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CF:[, [, , \"(?:[27]\\\\d{3}|8776)\\\\d{4}\", , , , , , , [8]], [, , \"2[12]\\\\d{6}\", , , , \"21612345\"], [, , \"7[0257]\\\\d{6}\", , , , \"70012345\"], [, , , , , , , , , [-1]], [, , \"8776\\\\d{4}\", , , , \"87761234\"], [, , , , , , , , , [-1]], [, , , , , , , , ,\n[-1]], [, , , , , , , , , [-1]], \"CF\", 236, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[278]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CG:[, [, , \"222\\\\d{6}|(?:0\\\\d|80)\\\\d{7}\", , , , , , , [9]], [, , \"222[1-589]\\\\d{5}\", , , , \"222123456\"], [, , \"0[14-6]\\\\d{7}\", , , , \"061234567\"], [, , , , , , , , , [-1]], [, , \"80(?:0\\\\d\\\\d|11[0-4])\\\\d{4}\", , , , \"800123456\"], [, , , , , , , , , [-1]],\n[, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"CG\", 242, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"801\"]], [, \"(\\\\d)(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"8\"]], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[02]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CH:[, [, , \"8\\\\d{11}|[2-9]\\\\d{8}\", , , , , , , [9, 12]], [, , \"(?:2[12467]|3[1-4]|4[134]|5[256]|6[12]|[7-9]1)\\\\d{7}\", , , , \"212345678\",\n, , [9]], [, , \"7[35-9]\\\\d{7}\", , , , \"781234567\", , , [9]], [, , \"800\\\\d{6}\", , , , \"800123456\", , , [9]], [, , \"90[016]\\\\d{6}\", , , , \"900123456\", , , [9]], [, , \"84[0248]\\\\d{6}\", , , , \"840123456\", , , [9]], [, , \"878\\\\d{6}\", , , , \"878123456\", , , [9]], [, , , , , , , , , [-1]], \"CH\", 41, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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})\",\n\"$1 $2 $3 $4 $5\", [\"8\"], \"0$1\"]], , [, , \"74[0248]\\\\d{6}\", , , , \"740123456\", , , [9]], , , [, , , , , , , , , [-1]], [, , \"5[18]\\\\d{7}\", , , , \"581234567\", , , [9]], , , [, , \"860\\\\d{9}\", , , , \"860123456789\", , , [12]]], CI:[, [, , \"[02-8]\\\\d{7}\", , , , , , , [8]], [, , \"(?:2(?:0[023]|1[02357]|[23][045]|4[03-5])|3(?:0[06]|1[069]|[2-4][07]|5[09]|6[08]))\\\\d{5}\", , , , \"21234567\"], [, , \"(?:0[1-9]|[457]\\\\d|6[014-9]|8[4-9])\\\\d{6}\", , , , \"01234567\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]],\n[, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"CI\", 225, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[02-8]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CK:[, [, , \"[2-8]\\\\d{4}\", , , , , , , [5]], [, , \"(?:2\\\\d|3[13-7]|4[1-5])\\\\d{3}\", , , , \"21234\"], [, , \"[5-8]\\\\d{4}\", , , , \"71234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]],\n[, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"CK\", 682, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{3})\", \"$1 $2\", [\"[2-8]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CL:[, [, , \"12300\\\\d{6}|6\\\\d{9,10}|[2-9]\\\\d{8}\", , , , , , , [9, 10, 11]], [, , \"(?:2(?:1962|3(?:2\\\\d\\\\d|300))|80[1-9]\\\\d\\\\d)\\\\d{4}|(?:22|3[2-5]|[47][1-35]|5[1-3578]|6[13-57]|8[1-9]|9[2-9])\\\\d{7}\", , , , \"221234567\", , , [9]], [, , \"(?:2(?:1962|3(?:2\\\\d\\\\d|300))|80[1-9]\\\\d\\\\d)\\\\d{4}|(?:22|3[2-5]|[47][1-35]|5[1-3578]|6[13-57]|8[1-9]|9[2-9])\\\\d{7}\",\n, , , \"221234567\", , , [9]], [, , \"(?:123|8)00\\\\d{6}\", , , , \"800123456\", , , [9, 11]], [, , , , , , , , , [-1]], [, , \"600\\\\d{7,8}\", , , , \"6001234567\", , , [10, 11]], [, , , , , , , , , [-1]], [, , \"44\\\\d{7}\", , , , \"441234567\", , , [9]], \"CL\", 56, \"(?:0|1(?:1[0-69]|2[0-57]|5[13-58]|69|7[0167]|8[018]))0\", , , , , , , 1, [[, \"(\\\\d{4})\", \"$1\", [\"1(?:[03-589]|21)|[29]0|78\"]], [, \"(\\\\d{5})(\\\\d{4})\", \"$1 $2\", [\"21\"], \"($1)\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"44\"]], [, \"(\\\\d)(\\\\d{4})(\\\\d{4})\",\n\"$1 $2 $3\", [\"2[23]\"], \"($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\"]]], [[, \"(\\\\d{5})(\\\\d{4})\", \"$1 $2\", [\"21\"], \"($1)\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"44\"]], [, \"(\\\\d)(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\",\n[\"2[23]\"], \"($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\"]]], [, , , , , , , , , [-1]], , , [, , \"600\\\\d{7,8}\", , , , , , , [10, 11]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CM:[, [, , \"(?:[26]\\\\d\\\\d|88)\\\\d{6}\",\n, , , , , , [8, 9]], [, , \"2(?:22|33|4[23])\\\\d{6}\", , , , \"222123456\", , , [9]], [, , \"6[5-9]\\\\d{7}\", , , , \"671234567\", , , [9]], [, , \"88\\\\d{6}\", , , , \"88012345\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"CM\", 237, \"00\", , , , , , , , [[, \"(\\\\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]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]],\n[, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CN:[, [, , \"1[1279]\\\\d{8,9}|2\\\\d{9}(?:\\\\d{2})?|[12]\\\\d{6,7}|86\\\\d{6}|(?:1[03-68]\\\\d|6)\\\\d{7,9}|(?:[3-579]\\\\d|8[0-57-9])\\\\d{6,9}\", , , , , , , [7, 8, 9, 10, 11, 12], [5, 6]], [, , \"(?:10(?:[02-79]\\\\d\\\\d|[18](?:0[1-9]|[1-9]\\\\d))|21(?:[18](?:0[1-9]|[1-9]\\\\d)|[2-79]\\\\d\\\\d))\\\\d{5}|(?:43[35]|754)\\\\d{7,8}|8(?:078\\\\d{7}|51\\\\d{7,8})|(?:10|(?:2|85)1|43[35]|754)(?:100\\\\d\\\\d|95\\\\d{3,4})|(?:2[02-57-9]|3(?:11|7[179])|4(?:[15]1|3[12])|5(?:1\\\\d|2[37]|3[12]|51|7[13-79]|9[15])|7(?:[39]1|5[57]|6[09])|8(?:71|98))(?:[02-8]\\\\d{7}|1(?:0(?:0\\\\d\\\\d(?:\\\\d{3})?|[1-9]\\\\d{5})|[1-9]\\\\d{6})|9(?:[0-46-9]\\\\d{6}|5\\\\d{3}(?:\\\\d(?:\\\\d{2})?)?))|(?:3(?:1[02-9]|35|49|5\\\\d|7[02-68]|9[1-68])|4(?:1[02-9]|2[179]|3[46-9]|5[2-9]|6[47-9]|7\\\\d|8[23])|5(?:3[03-9]|4[36]|5[02-9]|6[1-46]|7[028]|80|9[2-46-9])|6(?:3[1-5]|6[0238]|9[12])|7(?:01|[17]\\\\d|2[248]|3[04-9]|4[3-6]|5[0-3689]|6[2368]|9[02-9])|8(?:1[236-8]|2[5-7]|3\\\\d|5[2-9]|7[02-9]|8[36-8]|9[1-7])|9(?:0[1-3689]|1[1-79]|[379]\\\\d|4[13]|5[1-5]))(?:[02-8]\\\\d{6}|1(?:0(?:0\\\\d\\\\d(?:\\\\d{2})?|[1-9]\\\\d{4})|[1-9]\\\\d{5})|9(?:[0-46-9]\\\\d{5}|5\\\\d{3,5}))\",\n, , , \"1012345678\", , , [7, 8, 9, 10, 11], [5, 6]], [, , \"1740[0-5]\\\\d{6}|1(?:[38]\\\\d|4[57]|5[0-35-9]|6[25-7]|7[0-35-8]|9[189])\\\\d{8}\", , , , \"13123456789\", , , [11]], [, , \"(?:(?:10|21)8|8)00\\\\d{7}\", , , , \"8001234567\", , , [10, 12]], [, , \"16[08]\\\\d{5}\", , , , \"16812345\", , , [8]], [, , \"400\\\\d{7}|950\\\\d{7,8}|(?:10|2[0-57-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[14-9]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|[379]\\\\d|4[13]|5[1-5]))96\\\\d{3,4}\",\n, , , \"4001234567\", , , [7, 8, 9, 10, 11], [5, 6]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"CN\", 86, \"00|1(?:[12]\\\\d|79|9[0235-7])\\\\d\\\\d00\", \"0\", , , \"0|(1(?:[12]\\\\d|79|9[0235-7])\\\\d\\\\d)\", , \"00\", , [[, \"(\\\\d{5,6})\", \"$1\", [\"96\"]], [, \"(\\\\d{2})(\\\\d{5,6})\", \"$1 $2\", [\"(?:10|2[0-57-9])[19]\", \"(?:10|2[0-57-9])(?:10|9[56])\", \"(?:10|2[0-57-9])(?:100|9[56])\"], \"0$1\", \"$CC $1\"], [, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[1-9]\", \"1[1-9]|26|[3-9]|(?:10|2[0-57-9])(?:[0-8]|9[0-47-9])\", \"1[1-9]|26|[3-9]|(?:10|2[0-57-9])(?:[02-8]|1(?:0[1-9]|[1-9])|9[0-47-9])\"]],\n[, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"16[08]\"]], [, \"(\\\\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]\",\n\"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])\"],\n\"0$1\", \"$CC $1\"], [, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[1-9]\", \"1[1-9]|26|[3-9]|(?:10|2[0-57-9])(?:[0-8]|9[0-47-9])\", \"26|3(?:[0268]|9[079])|4(?:[049]|2[02-68]|[35]0|6[0-356]|8[014-9])|5(?:0|2[0-24-689]|4[0-2457-9]|6[057-9]|90)|6(?:[0-24578]|6[14-79]|9[03-9])|7(?:0[02-9]|2[0135-79]|3[23]|4[0-27-9]|6[1457]|8)|8(?:[046]|1[01459]|2[0-489]|50|8[0-2459]|9[09])|9(?:0[0457]|1[08]|[268]|4[024-9])|(?:34|85[23])[0-8]|(?:1|58)[1-9]|(?:63|95)[06-9]|(?:33|85[23]9)[0-46-9]|(?:10|2[0-57-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[14-9]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|[379]\\\\d|4[13]|5[1-5]))(?:[0-8]|9[0-47-9])\",\n\"26|3(?:[0268]|3[0-46-9]|4[0-8]|9[079])|4(?:[049]|2[02-68]|[35]0|6[0-356]|8[014-9])|5(?:0|2[0-24-689]|4[0-2457-9]|6[057-9]|90)|6(?:[0-24578]|3[06-9]|6[14-79]|9[03-9])|7(?:0[02-9]|2[0135-79]|3[23]|4[0-27-9]|6[1457]|8)|8(?:[046]|1[01459]|2[0-489]|5(?:0|[23](?:[02-8]|1[1-9]|9[0-46-9]))|8[0-2459]|9[09])|9(?:0[0457]|1[08]|[268]|4[024-9]|5[06-9])|(?:1|58|85[23]10)[1-9]|(?:10|2[0-57-9])(?:[0-8]|9[0-47-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[14-9]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|[379]\\\\d|4[13]|5[1-5]))(?:[02-8]|1(?:0[1-9]|[1-9])|9[0-47-9])\"]],\n[, \"(\\\\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\", \"$CC $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\", \"$CC $1\", 1],\n[, \"(\\\\d{3})(\\\\d{7,8})\", \"$1 $2\", [\"9\"]], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"80\"], \"0$1\", \"$CC $1\", 1], [, \"(\\\\d{3})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"[3-578]\"], \"0$1\", \"$CC $1\", 1], [, \"(\\\\d{3})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"1[3-9]\"], , \"$CC $1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3 $4\", [\"[12]\"], \"0$1\", , 1]], [[, \"(\\\\d{2})(\\\\d{5,6})\", \"$1 $2\", [\"(?:10|2[0-57-9])[19]\", \"(?:10|2[0-57-9])(?:10|9[56])\", \"(?:10|2[0-57-9])(?:100|9[56])\"], \"0$1\", \"$CC $1\"], [, \"(\\\\d{3})(\\\\d{5,6})\",\n\"$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]\",\n\"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])\"],\n\"0$1\", \"$CC $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\", \"$CC $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\",\n\"$CC $1\", 1], [, \"(\\\\d{3})(\\\\d{7,8})\", \"$1 $2\", [\"9\"]], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"80\"], \"0$1\", \"$CC $1\", 1], [, \"(\\\\d{3})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"[3-578]\"], \"0$1\", \"$CC $1\", 1], [, \"(\\\\d{3})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"1[3-9]\"], , \"$CC $1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3 $4\", [\"[12]\"], \"0$1\", , 1]], [, , , , , , , , , [-1]], , , [, , \"(?:(?:10|21)8|[48])00\\\\d{7}|950\\\\d{7,8}\", , , , , , , [10, 11, 12]], [, , , , , , , , , [-1]], , , [, , , , , , ,\n, , [-1]]], CO:[, [, , \"(?:1\\\\d|3)\\\\d{9}|[124-8]\\\\d{7}\", , , , , , , [8, 10, 11], [7]], [, , \"[124-8][2-9]\\\\d{6}\", , , , \"12345678\", , , [8], [7]], [, , \"3(?:0[0-5]|1\\\\d|2[0-3]|5[01])\\\\d{7}\", , , , \"3211234567\", , , [10]], [, , \"1800\\\\d{7}\", , , , \"18001234567\", , , [11]], [, , \"19(?:0[01]|4[78])\\\\d{7}\", , , , \"19001234567\", , , [11]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"CO\", 57, \"00(?:4(?:[14]4|56)|[579])\", \"0\", , , \"0([3579]|4(?:[14]4|56))?\", , , , [[,\n\"(\\\\d)(\\\\d{7})\", \"$1 $2\", [\"1[2-79]|[25-8]|(?:18|4)[2-9]\"], \"($1)\", \"0$CC $1\"], [, \"(\\\\d{3})(\\\\d{7})\", \"$1 $2\", [\"3\"], , \"0$CC $1\"], [, \"(\\\\d)(\\\\d{3})(\\\\d{7})\", \"$1-$2-$3\", [\"1(?:80|9)\", \"1(?:800|9)\"], \"0$1\"]], [[, \"(\\\\d)(\\\\d{7})\", \"$1 $2\", [\"1[2-79]|[25-8]|(?:18|4)[2-9]\"], \"($1)\", \"0$CC $1\"], [, \"(\\\\d{3})(\\\\d{7})\", \"$1 $2\", [\"3\"], , \"0$CC $1\"], [, \"(\\\\d)(\\\\d{3})(\\\\d{7})\", \"$1 $2 $3\", [\"1(?:80|9)\", \"1(?:800|9)\"]]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]],\n, , [, , , , , , , , , [-1]]], CR:[, [, , \"(?:8\\\\d|90)\\\\d{8}|[24-8]\\\\d{7}\", , , , , , , [8, 10]], [, , \"210[7-9]\\\\d{4}|2(?:[024-7]\\\\d|1[1-9])\\\\d{5}\", , , , \"22123456\", , , [8]], [, , \"6500[01]\\\\d{3}|5(?:0[01]|7[0-3])\\\\d{5}|(?:6[0-4]|7[0-3]|8[3-9])\\\\d{6}\", , , , \"83123456\", , , [8]], [, , \"800\\\\d{7}\", , , , \"8001234567\", , , [10]], [, , \"90[059]\\\\d{7}\", , , , \"9001234567\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"(?:210[0-6]|4\\\\d{3}|5100)\\\\d{4}\", , , , \"40001234\", , , [8]],\n\"CR\", 506, \"00\", , , , \"(19(?:0[0-2468]|1[09]|20|66|77|99))\", , , , [[, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[24-7]|8[3-9]\"], , \"$CC $1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"[89]\"], , \"$CC $1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CU:[, [, , \"[27]\\\\d{6,7}|[34]\\\\d{5,7}|5\\\\d{7}\", , , , , , , [6, 7, 8], [4, 5]], [, , \"(?:3[23]|48)\\\\d{4,6}|(?:31|4[36])\\\\d{6}|(?:2[1-4]|4[1257]|7\\\\d)\\\\d{5,6}\", , , , \"71234567\", , , , [4,\n5]], [, , \"5\\\\d{7}\", , , , \"51234567\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"CU\", 53, \"119\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{4,6})\", \"$1 $2\", [\"2[1-4]|[34]\"], \"(0$1)\"], [, \"(\\\\d)(\\\\d{6,7})\", \"$1 $2\", [\"7\"], \"(0$1)\"], [, \"(\\\\d)(\\\\d{7})\", \"$1 $2\", [\"5\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CV:[, [, , \"[2-59]\\\\d{6}\",\n, , , , , , [7]], [, , \"2(?:2[1-7]|3[0-8]|4[12]|5[1256]|6\\\\d|7[1-3]|8[1-5])\\\\d{4}\", , , , \"2211234\"], [, , \"(?:[34][36]|5[1-389]|9\\\\d)\\\\d{5}\", , , , \"9911234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"CV\", 238, \"0\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3\", [\"[2-59]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CW:[, [,\n, \"(?:[34]1|60|(?:7|9\\\\d)\\\\d)\\\\d{5}\", , , , , , , [7, 8]], [, , \"9(?:4(?:3[0-5]|4[14]|6\\\\d)|50\\\\d|7(?:2[014]|3[02-9]|4[4-9]|6[357]|77|8[7-9])|8(?:3[39]|[46]\\\\d|7[01]|8[57-9]))\\\\d{4}\", , , , \"94351234\"], [, , \"953[01]\\\\d{4}|9(?:5[12467]|6[5-9])\\\\d{5}\", , , , \"95181234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"60[0-2]\\\\d{4}\", , , , \"6001234\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"CW\", 599, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[3467]\"]],\n[, \"(\\\\d)(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"9[4-8]\"]]], , [, , \"955\\\\d{5}\", , , , \"95581234\", , , [8]], 1, \"[69]\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CX:[, [, , \"1(?:[0-79]\\\\d|8[0-24-9])\\\\d{7}|(?:[148]\\\\d\\\\d|550)\\\\d{6}|1\\\\d{5,7}\", , , , , , , [6, 7, 8, 9, 10]], [, , \"8(?:51(?:0(?:01|30|59)|117)|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}\", , , , \"891641234\", , , [9], [8]], [, , \"483[0-3]\\\\d{5}|4(?:[0-3]\\\\d|4[047-9]|5[0-25-9]|6[06-9]|7[02-9]|8[0-2457-9]|9[0-27-9])\\\\d{6}\",\n, , , \"412345678\", , , [9]], [, , \"180(?:0\\\\d{3}|2)\\\\d{3}\", , , , \"1800123456\", , , [7, 10]], [, , \"190[0-26]\\\\d{6}\", , , , \"1900123456\", , , [10]], [, , \"13(?:00\\\\d{3}|45[0-4])\\\\d{3}|13\\\\d{4}\", , , , \"1300123456\", , , [6, 8, 10]], [, , , , , , , , , [-1]], [, , \"(?:14(?:5(?:1[0458]|[23][458])|71\\\\d)|550\\\\d\\\\d)\\\\d{4}\", , , , \"550123456\", , , [9]], \"CX\", 61, \"001[14-689]|14(?:1[14]|34|4[17]|[56]6|7[47]|88)0011\", \"0\", , , \"0|([59]\\\\d{7})$\", \"8$1\", \"0011\", , , , [, , , , , , , , , [-1]], , , [, , ,\n, , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CY:[, [, , \"(?:[279]\\\\d|[58]0)\\\\d{6}\", , , , , , , [8]], [, , \"2[2-6]\\\\d{6}\", , , , \"22345678\"], [, , \"9[4-79]\\\\d{6}\", , , , \"96123456\"], [, , \"800\\\\d{5}\", , , , \"80001234\"], [, , \"90[09]\\\\d{5}\", , , , \"90012345\"], [, , \"80[1-9]\\\\d{5}\", , , , \"80112345\"], [, , \"700\\\\d{5}\", , , , \"70012345\"], [, , , , , , , , , [-1]], \"CY\", 357, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{6})\", \"$1 $2\", [\"[257-9]\"]]], , [, , , , , , , , , [-1]],\n, , [, , , , , , , , , [-1]], [, , \"(?:50|77)\\\\d{6}\", , , , \"77123456\"], , , [, , , , , , , , , [-1]]], CZ:[, [, , \"(?:[2-578]\\\\d|60)\\\\d{7}|9\\\\d{8,11}\", , , , , , , [9, 10, 11, 12]], [, , \"(?:2\\\\d|3[1257-9]|4[16-9]|5[13-9])\\\\d{7}\", , , , \"212345678\", , , [9]], [, , \"(?:60[1-8]|7(?:0[2-5]|[2379]\\\\d))\\\\d{6}\", , , , \"601123456\", , , [9]], [, , \"800\\\\d{6}\", , , , \"800123456\", , , [9]], [, , \"9(?:0[05689]|76)\\\\d{6}\", , , , \"900123456\", , , [9]], [, , \"8[134]\\\\d{7}\", , , , \"811234567\", , , [9]], [, , \"70[01]\\\\d{6}\",\n, , , \"700123456\", , , [9]], [, , \"9[17]0\\\\d{6}\", , , , \"910123456\", , , [9]], \"CZ\", 420, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[2-8]|9[015-7]\"]], [, \"(\\\\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\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"9(?:5\\\\d|7[2-4])\\\\d{6}\", , , , \"972123456\", , , [9]], , , [, , \"9(?:3\\\\d{9}|6\\\\d{7,10})\", , , , \"93123456789\"]], DE:[, [, , \"[2579]\\\\d{5,14}|49(?:[05]\\\\d{10}|[46][1-8]\\\\d{4,9})|49(?:[0-25]\\\\d|3[1-689]|7[1-7])\\\\d{4,8}|49(?:[0-2579]\\\\d|[34][1-9]|6[0-8])\\\\d{3}|49\\\\d{3,4}|(?:1|[368]\\\\d|4[0-8])\\\\d{3,13}\",\n, , , , , , [4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15], [2, 3]], [, , \"(?:32|49[4-6]\\\\d)\\\\d{9}|49[0-7]\\\\d{3,9}|(?:[34]0|[68]9)\\\\d{3,13}|(?:2(?:0[1-689]|[1-3569]\\\\d|4[0-8]|7[1-7]|8[0-7])|3(?:[3569]\\\\d|4[0-79]|7[1-7]|8[1-8])|4(?:1[02-9]|[2-48]\\\\d|5[0-6]|6[0-8]|7[0-79])|5(?:0[2-8]|[124-6]\\\\d|[38][0-8]|[79][0-7])|6(?:0[02-9]|[1-358]\\\\d|[47][0-8]|6[1-9])|7(?:0[2-8]|1[1-9]|[27][0-7]|3\\\\d|[4-6][0-8]|8[0-5]|9[013-7])|8(?:0[2-9]|1[0-79]|2\\\\d|3[0-46-9]|4[0-6]|5[013-9]|6[1-8]|7[0-8]|8[0-24-6])|9(?:0[6-9]|[1-4]\\\\d|[589][0-7]|6[0-8]|7[0-467]))\\\\d{3,12}\",\n, , , \"30123456\", , , [5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15], [2, 3, 4]], [, , \"15[0-25-9]\\\\d{8}|1(?:6[023]|7\\\\d)\\\\d{7,8}\", , , , \"15123456789\", , , [10, 11]], [, , \"800\\\\d{7,12}\", , , , \"8001234567890\", , , [10, 11, 12, 13, 14, 15]], [, , \"(?:137[7-9]|900(?:[135]|9\\\\d))\\\\d{6}\", , , , \"9001234567\", , , [10, 11]], [, , \"180\\\\d{5,11}|13(?:7[1-6]\\\\d\\\\d|8)\\\\d{4}\", , , , \"18012345\", , , [7, 8, 9, 10, 11, 12, 13, 14]], [, , \"700\\\\d{8}\", , , , \"70012345678\", , , [11]], [, , , , , , , , , [-1]], \"DE\", 49,\n\"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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]\"],\n\"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\"],\n[, \"(\\\\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\"]], , [, , \"16(?:4\\\\d{1,10}|[89]\\\\d{1,11})\", , , , \"16412345\", , , [4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14]], , , [, , , , , , , , , [-1]], [, , \"18(?:1\\\\d{5,11}|[2-9]\\\\d{8})\",\n, , , \"18500123456\", , , [8, 9, 10, 11, 12, 13, 14]], , , [, , \"1(?:6(?:013|255|399)|7(?:(?:[015]1|[69]3)3|[2-4]55|[78]99))\\\\d{7,8}|15(?:(?:[03-68]00|113)\\\\d|2\\\\d55|7\\\\d99|9\\\\d33)\\\\d{7}\", , , , \"177991234567\", , , [12, 13]]], DJ:[, [, , \"(?:2\\\\d|77)\\\\d{6}\", , , , , , , [8]], [, , \"2(?:1[2-5]|7[45])\\\\d{5}\", , , , \"21360003\"], [, , \"77\\\\d{6}\", , , , \"77831001\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"DJ\", 253,\n\"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[27]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], DK:[, [, , \"[2-9]\\\\d{7}\", , , , , , , [8]], [, , \"(?:[2-7]\\\\d|8[126-9]|9[1-36-9])\\\\d{6}\", , , , \"32123456\"], [, , \"(?:[2-7]\\\\d|8[126-9]|9[1-36-9])\\\\d{6}\", , , , \"32123456\"], [, , \"80\\\\d{6}\", , , , \"80123456\"], [, , \"90\\\\d{6}\", , , , \"90123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [,\n, , , , , , , , [-1]], \"DK\", 45, \"00\", , , , , , , 1, [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[2-9]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], DM:[, [, , \"(?:[58]\\\\d\\\\d|767|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"767(?:2(?:55|66)|4(?:2[01]|4[0-25-9])|50[0-4]|70[1-3])\\\\d{4}\", , , , \"7674201234\", , , , [7]], [, , \"767(?:2(?:[2-4689]5|7[5-7])|31[5-7]|61[1-7])\\\\d{4}\", , , , \"7672251234\", , , , [7]], [, ,\n\"8(?:00(?:14|[2-9]\\\\d)|(?:33|44|55|66|77|88)[2-9]\\\\d)\\\\d{5}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"DM\", 1, \"011\", \"1\", , , \"1|([2-7]\\\\d{6})$\", \"767$1\", , , , , [, , , , , , , , , [-1]], , \"767|8001\", [, , \"80014\\\\d{5}\"], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], DO:[, [, , \"(?:[58]\\\\d\\\\d|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"8(?:[04]9[2-9]\\\\d\\\\d|29(?:2(?:[0-59]\\\\d|6[04-9]|7[0-27]|8[0237-9])|3(?:[0-35-9]\\\\d|4[7-9])|[45]\\\\d\\\\d|6(?:[0-27-9]\\\\d|[3-5][1-9]|6[0135-8])|7(?:0[013-9]|[1-37]\\\\d|4[1-35689]|5[1-4689]|6[1-57-9]|8[1-79]|9[1-8])|8(?:0[146-9]|1[0-48]|[248]\\\\d|3[1-79]|5[01589]|6[013-68]|7[124-8]|9[0-8])|9(?:[0-24]\\\\d|3[02-46-9]|5[0-79]|60|7[0169]|8[57-9]|9[02-9])))\\\\d{4}\",\n, , , \"8092345678\", , , , [7]], [, , \"8[024]9[2-9]\\\\d{6}\", , , , \"8092345678\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"DO\", 1, \"011\", \"1\", , , \"1\", , , , , , [, , , , , , , , , [-1]], , \"8[024]9\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], DZ:[, [, , \"(?:[1-4]|[5-79]\\\\d|80)\\\\d{7}\",\n, , , , , , [8, 9]], [, , \"9619\\\\d{5}|(?:1\\\\d|2[013-79]|3[0-8]|4[0135689])\\\\d{6}\", , , , \"12345678\"], [, , \"67[0-6]\\\\d{6}|(?:5[4-6]|6[569]|7[7-9])\\\\d{7}\", , , , \"551234567\", , , [9]], [, , \"800\\\\d{6}\", , , , \"800123456\", , , [9]], [, , \"80[3-689]1\\\\d{5}\", , , , \"808123456\", , , [9]], [, , \"80[12]1\\\\d{5}\", , , , \"801123456\", , , [9]], [, , , , , , , , , [-1]], [, , \"98[23]\\\\d{6}\", , , , \"983123456\", , , [9]], \"DZ\", 213, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\",\n[\"[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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], EC:[, [, , \"1800\\\\d{6,7}|(?:[2-7]|9\\\\d)\\\\d{7}\", , , , , , , [8, 9, 10, 11], [7]], [, , \"[2-7][2-7]\\\\d{6}\", , , , \"22123456\", , , [8], [7]], [, , \"964[0-2]\\\\d{5}|9(?:39|[57][89]|6[0-37-9]|[89]\\\\d)\\\\d{6}\", , , , \"991234567\", ,\n, [9]], [, , \"1800\\\\d{6,7}\", , , , \"18001234567\", , , [10, 11]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"[2-7]890\\\\d{4}\", , , , \"28901234\", , , [8]], \"EC\", 593, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1-$2\", [\"[2-7]\"]], [, \"(\\\\d)(\\\\d{3})(\\\\d{4})\", \"$1 $2-$3\", [\"[2-7]\"], \"(0$1)\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"9\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{3,4})\", \"$1 $2 $3\", [\"1\"]]], [[, \"(\\\\d)(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"[2-7]\"]],\n[, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"9\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{3,4})\", \"$1 $2 $3\", [\"1\"]]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], EE:[, [, , \"8\\\\d{9}|[4578]\\\\d{7}|(?:[3-8]\\\\d\\\\d|900)\\\\d{4}\", , , , , , , [7, 8, 10]], [, , \"(?:3[23589]|4[3-8]|6\\\\d|7[1-9]|88)\\\\d{5}\", , , , \"3212345\", , , [7]], [, , \"(?:5\\\\d|8[1-4])\\\\d{6}|5(?:(?:[02]\\\\d|5[0-478])\\\\d|1(?:[0-8]\\\\d|95)|6(?:4[0-4]|5[1-589]))\\\\d{3}\", , , , \"51234567\",\n, , [7, 8]], [, , \"800(?:(?:0\\\\d\\\\d|1)\\\\d|[2-9])\\\\d{3}\", , , , \"80012345\"], [, , \"(?:40\\\\d\\\\d|900)\\\\d{4}\", , , , \"9001234\", , , [7, 8]], [, , , , , , , , , [-1]], [, , \"70[0-2]\\\\d{5}\", , , , \"70012345\", , , [8]], [, , , , , , , , , [-1]], \"EE\", 372, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[369]|4[3-8]|5(?:[0-2]|5[0-478]|6[45])|7[1-9]\", \"[369]|4[3-8]|5(?:[02]|1(?:[0-8]|95)|5[0-478]|6(?:4[0-4]|5[1-589]))|7[1-9]\"]], [, \"(\\\\d{4})(\\\\d{3,4})\", \"$1 $2\", [\"[45]|8(?:00|[1-4])\", \"[45]|8(?:00[1-9]|[1-4])\"]],\n[, \"(\\\\d{2})(\\\\d{2})(\\\\d{4})\", \"$1 $2 $3\", [\"7\"]], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"80\"]]], , [, , , , , , , , , [-1]], , , [, , \"800[2-9]\\\\d{3}\", , , , , , , [7]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], EG:[, [, , \"[189]\\\\d{8,9}|[24-6]\\\\d{8}|[135]\\\\d{7}\", , , , , , , [8, 9, 10], [6, 7]], [, , \"(?:15\\\\d|57[23])\\\\d{5,6}|(?:13[23]|(?:2[2-4]|3)\\\\d|4(?:0[2-5]|[578][23]|64)|5(?:0[2-7]|5\\\\d)|6[24-689]3|8(?:2[2-57]|4[26]|6[237]|8[2-4])|9(?:2[27]|3[24]|52|6[2356]|7[2-4]))\\\\d{6}\",\n, , , \"234567890\", , , [8, 9], [6, 7]], [, , \"1[0-25]\\\\d{8}\", , , , \"1001234567\", , , [10]], [, , \"800\\\\d{7}\", , , , \"8001234567\", , , [10]], [, , \"900\\\\d{7}\", , , , \"9001234567\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"EG\", 20, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d)(\\\\d{7,8})\", \"$1 $2\", [\"[23]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{6,7})\", \"$1 $2\", [\"1[35]|[4-6]|8[2468]|9[235-7]\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[189]\"], \"0$1\"]], , [, ,\n, , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], EH:[, [, , \"[5-8]\\\\d{8}\", , , , , , , [9]], [, , \"528[89]\\\\d{5}\", , , , \"528812345\"], [, , \"692[12]\\\\d{5}|(?:6(?:[0-7]\\\\d|8[0-247-9]|9[013-9])|7(?:0[06-8]|6[1267]|7[0-27]))\\\\d{6}\", , , , \"650123456\"], [, , \"80\\\\d{7}\", , , , \"801234567\"], [, , \"89\\\\d{7}\", , , , \"891234567\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"5924[0-2]\\\\d{4}\", , , , \"592401234\"], \"EH\", 212, \"00\", \"0\",\n, , \"0\", , , , , , [, , , , , , , , , [-1]], , \"528[89]\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], ER:[, [, , \"[178]\\\\d{6}\", , , , , , , [7], [6]], [, , \"(?:1(?:1[12568]|[24]0|55|6[146])|8\\\\d\\\\d)\\\\d{4}\", , , , \"8370362\", , , , [6]], [, , \"(?:17[1-3]|7\\\\d\\\\d)\\\\d{4}\", , , , \"7123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"ER\", 291, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d)(\\\\d{3})(\\\\d{3})\",\n\"$1 $2 $3\", [\"[178]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], ES:[, [, , \"(?:51|[6-9]\\\\d)\\\\d{7}\", , , , , , , [9]], [, , \"96906(?:0[0-8]|1[1-9]|[2-9]\\\\d)\\\\d\\\\d|9(?:69(?:0[0-57-9]|[1-9]\\\\d)|73(?:[0-8]\\\\d|9[1-9]))\\\\d{4}|(?:8(?:[1356]\\\\d|[28][0-8]|[47][1-9])|9(?:[135]\\\\d|[268][0-8]|4[1-9]|7[124-9]))\\\\d{6}\", , , , \"810123456\"], [, , \"9(?:6906(?:09|10)|7390\\\\d\\\\d)\\\\d\\\\d|(?:6\\\\d|7[1-48])\\\\d{7}\", , , , \"612345678\"], [,\n, \"[89]00\\\\d{6}\", , , , \"800123456\"], [, , \"80[367]\\\\d{6}\", , , , \"803123456\"], [, , \"90[12]\\\\d{6}\", , , , \"901123456\"], [, , \"70\\\\d{7}\", , , , \"701234567\"], [, , , , , , , , , [-1]], \"ES\", 34, \"00\", , , , , , , , [[, \"(\\\\d{4})\", \"$1\", [\"905\"]], [, \"(\\\\d{6})\", \"$1\", [\"[79]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]\"]]], [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[89]00\"]], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\",\n[\"[5-9]\"]]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"51\\\\d{7}\", , , , \"511234567\"], , , [, , , , , , , , , [-1]]], ET:[, [, , \"(?:11|[2-59]\\\\d)\\\\d{7}\", , , , , , , [9], [7]], [, , \"(?:11(?:1(?:1[124]|2[2-57]|3[1-5]|5[5-8]|8[6-8])|2(?:13|3[6-8]|5[89]|7[05-9]|8[2-6])|3(?:2[01]|3[0-289]|4[1289]|7[1-4]|87)|4(?:1[69]|3[2-49]|4[0-3]|6[5-8])|5(?:1[578]|44|5[0-4])|6(?:1[78]|2[69]|39|4[5-7]|5[1-5]|6[0-59]|8[015-8]))|2(?:2(?:11[1-9]|22[0-7]|33\\\\d|44[1467]|66[1-68])|5(?:11[124-6]|33[2-8]|44[1467]|55[14]|66[1-3679]|77[124-79]|880))|3(?:3(?:11[0-46-8]|(?:22|55)[0-6]|33[0134689]|44[04]|66[01467])|4(?:44[0-8]|55[0-69]|66[0-3]|77[1-5]))|4(?:6(?:22[0-24-7]|33[1-5]|44[13-69]|55[14-689]|660|88[1-4])|7(?:(?:11|22)[1-9]|33[13-7]|44[13-6]|55[1-689]))|5(?:7(?:227|55[05]|(?:66|77)[14-8])|8(?:11[149]|22[013-79]|33[0-68]|44[013-8]|550|66[1-5]|77\\\\d)))\\\\d{4}\",\n, , , \"111112345\", , , , [7]], [, , \"9\\\\d{8}\", , , , \"911234567\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"ET\", 251, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[1-59]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], FI:[, [, , \"(?:[124-7]\\\\d|3[0-46-9])\\\\d{8}|[1-9]\\\\d{5,8}|[1-35689]\\\\d{4}\", , , , , , ,\n[5, 6, 7, 8, 9, 10]], [, , \"(?:1[3-79][1-8]|[235689][1-8]\\\\d)\\\\d{2,6}\", , , , \"131234567\", , , [5, 6, 7, 8, 9]], [, , \"(?:4[0-8]|50)\\\\d{4,8}\", , , , \"412345678\", , , [6, 7, 8, 9, 10]], [, , \"800\\\\d{4,6}\", , , , \"800123456\", , , [7, 8, 9]], [, , \"[67]00\\\\d{5,6}\", , , , \"600123456\", , , [8, 9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"FI\", 358, \"00|99(?:[01469]|5(?:[14]1|3[23]|5[59]|77|88|9[09]))\", \"0\", , , \"0\", , \"00\", , [[, \"(\\\\d{5})\", \"$1\", [\"75[12]\"], \"0$1\"],\n[, \"(\\\\d)(\\\\d{4,9})\", \"$1 $2\", [\"[2568][1-8]|3(?:0[1-9]|[1-9])|9\"], \"0$1\"], [, \"(\\\\d{6})\", \"$1\", [\"11\"]], [, \"(\\\\d{3})(\\\\d{3,7})\", \"$1 $2\", [\"(?:[12]0|7)0|[368]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{4,8})\", \"$1 $2\", [\"[12457]\"], \"0$1\"]], [[, \"(\\\\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]0|7)0|[368]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{4,8})\", \"$1 $2\", [\"[12457]\"], \"0$1\"]], [, , , , , , , , , [-1]], 1, \"1[03-79]|[2-9]\", [, , \"20(?:2[023]|9[89])\\\\d{1,6}|60[12]\\\\d{5,6}|(?:606|7(?:1|3\\\\d))\\\\d{7}|(?:[1-3]00|75[03-9])\\\\d{3,7}\"],\n[, , \"(?:10|[23][09])\\\\d{4,8}|60(?:[12]\\\\d{5,6}|6\\\\d{7})|7(?:(?:1|3\\\\d)\\\\d{7}|5[03-9]\\\\d{3,7})|20[2-59]\\\\d\\\\d\", , , , \"10112345\"], , , [, , , , , , , , , [-1]]], FJ:[, [, , \"45\\\\d{5}|(?:0800\\\\d|[235-9])\\\\d{6}\", , , , , , , [7, 11]], [, , \"603\\\\d{4}|(?:3[0-5]|6[25-7]|8[58])\\\\d{5}\", , , , \"3212345\", , , [7]], [, , \"(?:[279]\\\\d|45|5[01568]|8[034679])\\\\d{5}\", , , , \"7012345\", , , [7]], [, , \"0800\\\\d{7}\", , , , \"08001234567\", , , [11]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , ,\n, , , [-1]], [, , , , , , , , , [-1]], \"FJ\", 679, \"0(?:0|52)\", , , , , , \"00\", , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[235-9]|45\"]], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"0\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], FK:[, [, , \"[2-7]\\\\d{4}\", , , , , , , [5]], [, , \"[2-47]\\\\d{4}\", , , , \"31234\"], [, , \"[56]\\\\d{4}\", , , , \"51234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , ,\n, , , , , [-1]], [, , , , , , , , , [-1]], \"FK\", 500, \"00\", , , , , , , , , , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], FM:[, [, , \"[39]\\\\d{6}\", , , , , , , [7]], [, , \"(?:3[2357]0[1-9]|9[2-6]\\\\d\\\\d)\\\\d{3}\", , , , \"3201234\"], [, , \"(?:3[2357]0[1-9]|9[2-7]\\\\d\\\\d)\\\\d{3}\", , , , \"3501234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"FM\", 691,\n\"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[39]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], FO:[, [, , \"(?:[2-8]\\\\d|90)\\\\d{4}\", , , , , , , [6]], [, , \"(?:20|[34]\\\\d|8[19])\\\\d{4}\", , , , \"201234\"], [, , \"(?:[27][1-9]|5\\\\d)\\\\d{4}\", , , , \"211234\"], [, , \"80[257-9]\\\\d{3}\", , , , \"802123\"], [, , \"90(?:[13-5][15-7]|2[125-7]|99)\\\\d\\\\d\", , , , \"901123\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"(?:6[0-36]|88)\\\\d{4}\",\n, , , \"601234\"], \"FO\", 298, \"00\", , , , \"(10(?:01|[12]0|88))\", , , , [[, \"(\\\\d{6})\", \"$1\", [\"[2-9]\"], , \"$CC $1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], FR:[, [, , \"[1-9]\\\\d{8}\", , , , , , , [9]], [, , \"[1-5]\\\\d{8}\", , , , \"123456789\"], [, , \"700\\\\d{6}|(?:6\\\\d|7[3-9])\\\\d{7}\", , , , \"612345678\"], [, , \"80[0-5]\\\\d{6}\", , , , \"801234567\"], [, , \"8[129]\\\\d{7}\", , , , \"891123456\"], [, , \"884\\\\d{6}\", , , , \"884012345\"], [, ,\n, , , , , , , [-1]], [, , \"9\\\\d{8}\", , , , \"912345678\"], \"FR\", 33, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{4})\", \"$1\", [\"10\"]], [, \"(\\\\d{3})(\\\\d{3})\", \"$1 $2\", [\"1\"]], [, \"(\\\\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\"]], [[, \"(\\\\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\"]], [, , , , , , , , , [-1]], , ,\n[, , , , , , , , , [-1]], [, , \"80[6-9]\\\\d{6}\", , , , \"806123456\"], , , [, , , , , , , , , [-1]]], GA:[, [, , \"(?:0\\\\d|[2-7])\\\\d{6}\", , , , , , , [7, 8]], [, , \"01\\\\d{6}\", , , , \"01441234\", , , [8]], [, , \"(?:0[2-7]|[2-7])\\\\d{6}\", , , , \"06031234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"GA\", 241, \"00\", , , , , , , , [[, \"(\\\\d)(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[2-7]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\n\"$1 $2 $3 $4\", [\"0\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GB:[, [, , \"[1-357-9]\\\\d{9}|[18]\\\\d{8}|8\\\\d{6}\", , , , , , , [7, 9, 10], [4, 5, 6, 8]], [, , \"(?:1(?:(?:1(?:3[0-58]|4[0-5]|5[0-26-9]|6[0-4]|[78][0-49])|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[024-9]|2[3-9]|3[3-79]|4[1-689]|[58][02-9]|6[0-47-9]|7[013-9]|9\\\\d)\\\\d\\\\d|1(?:[0-7]\\\\d\\\\d|80[04589])))|2(?:0[01378]|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]))|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|7(?:(?:26(?:6[13-9]|7[0-7])|442\\\\d|50(?:2[0-3]|[3-68]2|76))\\\\d|6888[2-46-8]))\\\\d\\\\d\",\n, , , \"1212345678\", , , [9, 10], [4, 5, 6, 7, 8]], [, , \"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}\", , , , \"7400123456\", , , [10]], [, , \"80[08]\\\\d{7}|800\\\\d{6}|8001111\", , , , \"8001234567\"], [, , \"(?:8(?:4[2-5]|7[0-3])|9(?:[01]\\\\d|8[2-49]))\\\\d{7}|845464\\\\d\", , , , \"9012345678\", , , [7, 10]], [, , , , , , , , , [-1]], [, ,\n\"70\\\\d{8}\", , , , \"7012345678\", , , [10]], [, , \"56\\\\d{8}\", , , , \"5612345678\", , , [10]], \"GB\", 44, \"00\", \"0\", \" x\", , \"0\", , , , [[, \"(\\\\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)\"],\n\"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[024-9])\", \"[25]|7(?:0|6(?:[04-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\"]], , [, , \"76(?:0[0-2]|2[356]|4[0134]|5[49]|6[0-369]|77|81|9[39])\\\\d{6}\", , , , \"7640123456\", , , [10]], 1, , [, , , , , , , , , [-1]], [, , \"(?:3[0347]|55)\\\\d{8}\", , , , \"5512345678\", , , [10]], , , [, ,\n, , , , , , , [-1]]], GD:[, [, , \"(?:473|[58]\\\\d\\\\d|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"473(?:2(?:3[0-2]|69)|3(?:2[89]|86)|4(?:[06]8|3[5-9]|4[0-49]|5[5-79]|73|90)|63[68]|7(?:58|84)|800|938)\\\\d{4}\", , , , \"4732691234\", , , , [7]], [, , \"473(?:4(?:0[2-79]|1[04-9]|2[0-5]|58)|5(?:2[01]|3[3-8])|901)\\\\d{4}\", , , , \"4734031234\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\",\n, , , \"5002345678\"], [, , , , , , , , , [-1]], \"GD\", 1, \"011\", \"1\", , , \"1|([2-9]\\\\d{6})$\", \"473$1\", , , , , [, , , , , , , , , [-1]], , \"473\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GE:[, [, , \"(?:[3-57]\\\\d\\\\d|800)\\\\d{6}\", , , , , , , [9], [6, 7]], [, , \"(?:3(?:[256]\\\\d|4[124-9]|7[0-4])|4(?:1\\\\d|2[2-7]|3[1-79]|4[2-8]|7[239]|9[1-7]))\\\\d{6}\", , , , \"322123456\", , , , [6, 7]], [, , \"5(?:0(?:0[05]|55)\\\\d|1111|2222|3333|5200|75(?:00|7[78])|8(?:58[89]|888))\\\\d{4}|(?:5(?:[14]4|5[0157-9]|68|7[0147-9]|9[1-35-9])|790)\\\\d{6}\",\n, , , \"555123456\"], [, , \"800\\\\d{6}\", , , , \"800123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"706\\\\d{6}\", , , , \"706123456\"], \"GE\", 995, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\"]], , [, , , , , , , , ,\n[-1]], , , [, , \"706\\\\d{6}\"], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GF:[, [, , \"[56]94\\\\d{6}\", , , , , , , [9]], [, , \"594(?:[023]\\\\d|1[01]|4[03-9]|5[6-9]|6[0-3]|80|9[014])\\\\d{4}\", , , , \"594101234\"], [, , \"694(?:[0-249]\\\\d|3[0-48])\\\\d{4}\", , , , \"694201234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"GF\", 594, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\",\n[\"[56]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GG:[, [, , \"(?:1481|[357-9]\\\\d{3})\\\\d{6}|8\\\\d{6}(?:\\\\d{2})?\", , , , , , , [7, 9, 10], [6]], [, , \"1481[25-9]\\\\d{5}\", , , , \"1481256789\", , , [10], [6]], [, , \"7(?:(?:781|839)\\\\d|911[17])\\\\d{5}\", , , , \"7781123456\", , , [10]], [, , \"80[08]\\\\d{7}|800\\\\d{6}|8001111\", , , , \"8001234567\"], [, , \"(?:8(?:4[2-5]|7[0-3])|9(?:[01]\\\\d|8[0-3]))\\\\d{7}|845464\\\\d\", , , , \"9012345678\",\n, , [7, 10]], [, , , , , , , , , [-1]], [, , \"70\\\\d{8}\", , , , \"7012345678\", , , [10]], [, , \"56\\\\d{8}\", , , , \"5612345678\", , , [10]], \"GG\", 44, \"00\", \"0\", , , \"0|([25-9]\\\\d{5})$\", \"1481$1\", , , , , [, , \"76(?:0[0-2]|2[356]|4[0134]|5[49]|6[0-369]|77|81|9[39])\\\\d{6}\", , , , \"7640123456\", , , [10]], , , [, , , , , , , , , [-1]], [, , \"(?:3[0347]|55)\\\\d{8}\", , , , \"5512345678\", , , [10]], , , [, , , , , , , , , [-1]]], GH:[, [, , \"(?:[235]\\\\d{3}|800)\\\\d{5}\", , , , , , , [8, 9], [7]], [, , \"3(?:[167]2[0-6]|22[0-5]|32[0-3]|4(?:2[013-9]|3[01])|52[0-7]|82[0-2])\\\\d{5}|3(?:[0-8]8|9[28])0\\\\d{5}|3(?:0[237]|[1-9]7)\\\\d{6}\",\n, , , \"302345678\", , , [9], [7]], [, , \"56[01]\\\\d{6}|(?:2[0346-8]|5[0457])\\\\d{7}\", , , , \"231234567\", , , [9]], [, , \"800\\\\d{5}\", , , , \"80012345\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"GH\", 233, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[237]|80\"]], [, \"(\\\\d{3})(\\\\d{5})\", \"$1 $2\", [\"8\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[235]\"], \"0$1\"]], [[, \"(\\\\d{3})(\\\\d{5})\", \"$1 $2\", [\"8\"], \"0$1\"],\n[, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[235]\"], \"0$1\"]], [, , , , , , , , , [-1]], , , [, , \"800\\\\d{5}\", , , , , , , [8]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GI:[, [, , \"(?:[25]\\\\d\\\\d|629)\\\\d{5}\", , , , , , , [8]], [, , \"2190[0-2]\\\\d{3}|2(?:00\\\\d|16[24-7]|2(?:2[2457]|50))\\\\d{4}\", , , , \"20012345\"], [, , \"(?:5[46-8]\\\\d|629)\\\\d{5}\", , , , \"57123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , ,\n, [-1]], \"GI\", 350, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{5})\", \"$1 $2\", [\"2\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GL:[, [, , \"(?:19|[2-689]\\\\d)\\\\d{4}\", , , , , , , [6]], [, , \"(?:19|3[1-7]|6[14689]|8[14-79]|9\\\\d)\\\\d{4}\", , , , \"321000\"], [, , \"(?:[25][1-9]|4[2-9])\\\\d{4}\", , , , \"221234\"], [, , \"80\\\\d{4}\", , , , \"801234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"3[89]\\\\d{4}\",\n, , , \"381234\"], \"GL\", 299, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3\", [\"19|[2-689]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GM:[, [, , \"[2-9]\\\\d{6}\", , , , , , , [7]], [, , \"(?:4(?:[23]\\\\d\\\\d|4(?:1[024679]|[6-9]\\\\d))|5(?:54[0-7]|6[67]\\\\d|7(?:1[04]|2[035]|3[58]|48))|8\\\\d{3})\\\\d{3}\", , , , \"5661234\"], [, , \"(?:[23679]\\\\d|5[0-3])\\\\d{5}\", , , , \"3012345\"], [, , , , , , , , , [-1]], [, , , , , , , , ,\n[-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"GM\", 220, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[2-9]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GN:[, [, , \"(?:30|6\\\\d\\\\d|722)\\\\d{6}\", , , , , , , [8, 9]], [, , \"30(?:24|3[12]|4[1-35-7]|5[13]|6[189]|[78]1|9[1478])\\\\d{4}\", , , , \"30241234\", , , [8]], [, , \"6[02356]\\\\d{7}\", , , , \"601123456\", , , [9]], [, , , , , , , , ,\n[-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"722\\\\d{6}\", , , , \"722123456\", , , [9]], \"GN\", 224, \"00\", , , , , , , , [[, \"(\\\\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]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GP:[, [, , \"(?:590|69\\\\d)\\\\d{6}\", , , , , , , [9]], [, , \"590(?:0[1-68]|1[0-2]|2[0-68]|3[1289]|4[0-24-9]|5[3-579]|6[0189]|7[08]|8[0-689]|9\\\\d)\\\\d{4}\",\n, , , \"590201234\"], [, , \"69(?:0\\\\d\\\\d|1(?:2[29]|3[0-5]))\\\\d{4}\", , , , \"690001234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"GP\", 590, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[56]\"], \"0$1\"]], , [, , , , , , , , , [-1]], 1, , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GQ:[, [, , \"222\\\\d{6}|(?:3\\\\d|55|[89]0)\\\\d{7}\", , , , , ,\n, [9]], [, , \"33[0-24-9]\\\\d[46]\\\\d{4}|3(?:33|5\\\\d)\\\\d[7-9]\\\\d{4}\", , , , \"333091234\"], [, , \"(?:222|55[015])\\\\d{6}\", , , , \"222123456\"], [, , \"80\\\\d[1-9]\\\\d{5}\", , , , \"800123456\"], [, , \"90\\\\d[1-9]\\\\d{5}\", , , , \"900123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"GQ\", 240, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[235]\"]], [, \"(\\\\d{3})(\\\\d{6})\", \"$1 $2\", [\"[89]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , ,\n, , , , , , [-1]], , , [, , , , , , , , , [-1]]], GR:[, [, , \"(?:[268]\\\\d|[79]0)\\\\d{8}\", , , , , , , [10]], [, , \"2(?:1\\\\d\\\\d|2(?:2[1-46-9]|[36][1-8]|4[1-7]|5[1-4]|7[1-5]|[89][1-9])|3(?:1\\\\d|2[1-57]|[35][1-3]|4[13]|7[1-7]|8[124-6]|9[1-79])|4(?:1\\\\d|2[1-8]|3[1-4]|4[13-5]|6[1-578]|9[1-5])|5(?:1\\\\d|[29][1-4]|3[1-5]|4[124]|5[1-6])|6(?:1\\\\d|[269][1-6]|3[1245]|4[1-7]|5[13-9]|7[14]|8[1-5])|7(?:1\\\\d|2[1-5]|3[1-6]|4[1-7]|5[1-57]|6[135]|9[125-7])|8(?:1\\\\d|2[1-5]|[34][1-4]|9[1-57]))\\\\d{6}\", , , , \"2123456789\"],\n[, , \"6(?:8[57-9]|9\\\\d)\\\\d{7}\", , , , \"6912345678\"], [, , \"800\\\\d{7}\", , , , \"8001234567\"], [, , \"90[19]\\\\d{7}\", , , , \"9091234567\"], [, , \"8(?:0[16]|12|25)\\\\d{7}\", , , , \"8011234567\"], [, , \"70(?:0[3-8]0|707)\\\\d{5}\", , , , \"7003000123\"], [, , , , , , , , , [-1]], \"GR\", 30, \"00\", , , , , , , , [[, \"(\\\\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])\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[2689]\"]]],\n, [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GT:[, [, , \"(?:1\\\\d{3}|[2-7])\\\\d{7}\", , , , , , , [8, 11]], [, , \"[267][2-9]\\\\d{6}\", , , , \"22456789\", , , [8]], [, , \"[3-5]\\\\d{7}\", , , , \"51234567\", , , [8]], [, , \"18[01]\\\\d{8}\", , , , \"18001112222\", , , [11]], [, , \"19\\\\d{9}\", , , , \"19001112222\", , , [11]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"GT\", 502, \"00\", , , , , , , , [[, \"(\\\\d{4})(\\\\d{4})\",\n\"$1 $2\", [\"[2-7]\"]], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"1\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GU:[, [, , \"(?:[58]\\\\d\\\\d|671|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"671(?:3(?:00|3[39]|4[349]|55|6[26])|4(?:00|56|7[1-9]|8[0236-9])|5(?:55|6[2-5]|88)|6(?:3[2-578]|4[24-9]|5[34]|78|8[235-9])|7(?:[0479]7|2[0167]|3[45]|8[7-9])|8(?:[2-57-9]8|6[48])|9(?:2[29]|6[79]|7[1279]|8[7-9]|9[78]))\\\\d{4}\", , , , \"6713001234\",\n, , , [7]], [, , \"671(?:3(?:00|3[39]|4[349]|55|6[26])|4(?:00|56|7[1-9]|8[0236-9])|5(?:55|6[2-5]|88)|6(?:3[2-578]|4[24-9]|5[34]|78|8[235-9])|7(?:[0479]7|2[0167]|3[45]|8[7-9])|8(?:[2-57-9]8|6[48])|9(?:2[29]|6[79]|7[1279]|8[7-9]|9[78]))\\\\d{4}\", , , , \"6713001234\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]],\n\"GU\", 1, \"011\", \"1\", , , \"1|([3-9]\\\\d{6})$\", \"671$1\", , 1, , , [, , , , , , , , , [-1]], , \"671\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GW:[, [, , \"[49]\\\\d{8}|4\\\\d{6}\", , , , , , , [7, 9]], [, , \"443\\\\d{6}\", , , , \"443201234\", , , [9]], [, , \"9(?:5\\\\d|6[569]|77)\\\\d{6}\", , , , \"955012345\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"40\\\\d{5}\", , , , \"4012345\", , , [7]], \"GW\", 245,\n\"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"40\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[49]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GY:[, [, , \"(?:862\\\\d|9008)\\\\d{3}|(?:[2-46]\\\\d|77)\\\\d{5}\", , , , , , , [7]], [, , \"(?:2(?:1[6-9]|2[0-35-9]|3[1-4]|5[3-9]|6\\\\d|7[0-24-79])|3(?:2[25-9]|3\\\\d)|4(?:4[0-24]|5[56])|77[1-57])\\\\d{4}\", , , , \"2201234\"], [, , \"6\\\\d{6}\", , , , \"6091234\"], [, , \"(?:289|862)\\\\d{4}\",\n, , , \"2891234\"], [, , \"9008\\\\d{3}\", , , , \"9008123\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"GY\", 592, \"001\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[2-46-9]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], HK:[, [, , \"8[0-46-9]\\\\d{6,7}|9\\\\d{4}(?:\\\\d(?:\\\\d(?:\\\\d{4})?)?)?|(?:[235-79]\\\\d|46)\\\\d{6}\", , , , , , , [5, 6, 7, 8, 9, 11]], [, , \"(?:384[0-24]|58(?:0[1-8]|1[2-9]))\\\\d{4}|(?:2(?:[13-8]\\\\d|2[013-9]|9[0-24-9])|3(?:[1569][0-24-9]|4[0-246-9]|7[0-24-69]|89))\\\\d{5}\",\n, , , \"21234567\", , , [8]], [, , \"(?:46(?:0[0-6]|1[0-2]|4[0-57-9])|5730|(?:626|848)[01]|707[1-5]|929[03-9])\\\\d{4}|(?:5(?:[1-59][0-46-9]|6[0-4689]|7[0-2469])|6(?:0[1-9]|[13-59]\\\\d|[268][0-57-9]|7[0-79])|9(?:0[1-9]|1[02-9]|[2358][0-8]|[467]\\\\d))\\\\d{5}\", , , , \"51234567\", , , [8]], [, , \"800\\\\d{6}\", , , , \"800123456\", , , [9]], [, , \"900(?:[0-24-9]\\\\d{7}|3\\\\d{1,4})\", , , , \"90012345678\", , , [5, 6, 7, 8, 11]], [, , , , , , , , , [-1]], [, , \"8(?:1[0-4679]\\\\d|2(?:[0-36]\\\\d|7[0-4])|3(?:[034]\\\\d|2[09]|70))\\\\d{4}\",\n, , , \"81123456\", , , [8]], [, , , , , , , , , [-1]], \"HK\", 852, \"00(?:30|5[09]|[126-9]?)\", , , , , , \"00\", , [[, \"(\\\\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\"]]], , [, , \"7(?:1(?:0[0-38]|1[0-3679]|3[013]|69|9[136])|2(?:[02389]\\\\d|1[18]|7[27-9])|3(?:[0-38]\\\\d|7[0-369]|9[2357-9])|47\\\\d|5(?:[178]\\\\d|5[0-5])|6(?:0[0-7]|2[236-9]|[35]\\\\d)|7(?:[27]\\\\d|8[7-9])|8(?:[23689]\\\\d|7[1-9])|9(?:[025]\\\\d|6[0-246-8]|7[0-36-9]|8[238]))\\\\d{4}\",\n, , , \"71123456\", , , [8]], , , [, , , , , , , , , [-1]], [, , \"30(?:0[1-9]|[15-7]\\\\d|2[047]|89)\\\\d{4}\", , , , \"30161234\", , , [8]], , , [, , , , , , , , , [-1]]], HN:[, [, , \"8\\\\d{10}|[237-9]\\\\d{7}\", , , , , , , [8, 11]], [, , \"2(?:2(?:0[019]|1[1-36]|[23]\\\\d|4[04-6]|5[57]|6[24]|7[0135689]|8[01346-9]|9[0-2])|4(?:07|2[3-59]|3[13-689]|4[0-68]|5[1-35])|5(?:0[78]|16|4[03-5]|5\\\\d|6[14-6]|74|80)|6(?:[056]\\\\d|17|2[07]|3[04]|4[0-378]|[78][0-8]|9[01])|7(?:6[46-9]|7[02-9]|8[034]|91)|8(?:79|8[0-357-9]|9[1-57-9]))\\\\d{4}\",\n, , , \"22123456\", , , [8]], [, , \"[37-9]\\\\d{7}\", , , , \"91234567\", , , [8]], [, , \"8002\\\\d{7}\", , , , \"80021234567\", , , [11]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"HN\", 504, \"00\", , , , , , , , [[, \"(\\\\d{4})(\\\\d{4})\", \"$1-$2\", [\"[237-9]\"]], [, \"(\\\\d{3})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"8\"]]], [[, \"(\\\\d{4})(\\\\d{4})\", \"$1-$2\", [\"[237-9]\"]]], [, , , , , , , , , [-1]], , , [, , \"8002\\\\d{7}\", , , , , , , [11]], [, , , , , , , , , [-1]],\n, , [, , , , , , , , , [-1]]], HR:[, [, , \"(?:[24-69]\\\\d|3[0-79])\\\\d{7}|80\\\\d{5,7}|[1-79]\\\\d{7}|6\\\\d{5,6}\", , , , , , , [6, 7, 8, 9]], [, , \"1\\\\d{7}|(?:2[0-3]|3[1-5]|4[02-47-9]|5[1-3])\\\\d{6,7}\", , , , \"12345678\", , , [8, 9], [6, 7]], [, , \"9(?:751\\\\d{5}|8\\\\d{6,7})|9(?:01|[1259]\\\\d|7[0679])\\\\d{6}\", , , , \"921234567\", , , [8, 9]], [, , \"80[01]\\\\d{4,6}\", , , , \"800123456\", , , [7, 8, 9]], [, , \"6[01459]\\\\d{6}|6[01]\\\\d{4,5}\", , , , \"611234\", , , [6, 7, 8]], [, , , , , , , , , [-1]], [, , \"7[45]\\\\d{6}\",\n, , , \"74123456\", , , [8]], [, , , , , , , , , [-1]], \"HR\", 385, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\",\n[\"8\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"62\\\\d{6,7}|72\\\\d{6}\", , , , \"62123456\", , , [8, 9]], , , [, , , , , , , , , [-1]]], HT:[, [, , \"[2-489]\\\\d{7}\", , , , , , , [8]], [, , \"2(?:2\\\\d|5[1-5]|81|9[149])\\\\d{5}\", , , , \"22453300\"], [, , \"[34]\\\\d{7}\", , , , \"34101234\"], [, , \"8\\\\d{7}\", , , , \"80012345\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"9(?:[67][0-4]|8[0-3589]|9\\\\d)\\\\d{5}\", , , , \"98901234\"], \"HT\", 509, \"00\",\n, , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{4})\", \"$1 $2 $3\", [\"[2-489]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], HU:[, [, , \"[2357]\\\\d{8}|[1-9]\\\\d{7}\", , , , , , , [8, 9], [6, 7]], [, , \"(?:1\\\\d|[27][2-9]|3[2-7]|4[24-9]|5[2-79]|6[23689]|8[2-57-9]|9[2-69])\\\\d{6}\", , , , \"12345678\", , , [8], [6, 7]], [, , \"(?:[257]0|3[01])\\\\d{7}\", , , , \"201234567\", , , [9]], [, , \"[48]0\\\\d{6}\", , , , \"80123456\", , , [8]], [, , \"9[01]\\\\d{6}\",\n, , , \"90123456\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"21\\\\d{7}\", , , , \"211234567\", , , [9]], \"HU\", 36, \"00\", \"06\", , , \"06\", , , , [[, \"(\\\\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-57-9]\"], \"06 $1\"]], , [, , , , , , , , , [-1]], , , [, , \"[48]0\\\\d{6}\", , , , , , , [8]], [, , \"38\\\\d{7}\", , , , \"381234567\",\n, , [9]], , , [, , , , , , , , , [-1]]], ID:[, [, , \"(?:(?:007803|8\\\\d{4})\\\\d|[1-36])\\\\d{6}|[1-9]\\\\d{8,10}|[2-9]\\\\d{7}\", , , , , , , [7, 8, 9, 10, 11, 12, 13], [5, 6]], [, , \"2[124]\\\\d{7,8}|619\\\\d{8}|2(?:1(?:14|500)|2\\\\d{3})\\\\d{3}|61\\\\d{5,8}|(?:2(?:[35][1-4]|6[0-8]|7[1-6]|8\\\\d|9[1-8])|3(?:1|[25][1-8]|3[1-68]|4[1-3]|6[1-3568]|7[0-469]|8\\\\d)|4(?:0[1-589]|1[01347-9]|2[0-36-8]|3[0-24-68]|43|5[1-378]|6[1-5]|7[134]|8[1245])|5(?:1[1-35-9]|2[25-8]|3[124-9]|4[1-3589]|5[1-46]|6[1-8])|6(?:[25]\\\\d|3[1-69]|4[1-6])|7(?:02|[125][1-9]|[36]\\\\d|4[1-8]|7[0-36-9])|9(?:0[12]|1[013-8]|2[0-479]|5[125-8]|6[23679]|7[159]|8[01346]))\\\\d{5,8}\",\n, , , \"218350123\", , , [7, 8, 9, 10, 11], [5, 6]], [, , \"8[1-35-9]\\\\d{7,10}\", , , , \"812345678\", , , [9, 10, 11, 12]], [, , \"007803\\\\d{7}|(?:177\\\\d|800)\\\\d{5,7}\", , , , \"8001234567\", , , [8, 9, 10, 11, 13]], [, , \"809\\\\d{7}\", , , , \"8091234567\", , , [10]], [, , \"804\\\\d{7}\", , , , \"8041234567\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"ID\", 62, \"00[189]\", \"0\", , , \"0\", , , , [[, \"(\\\\d)(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"15\"]], [, \"(\\\\d{2})(\\\\d{5,9})\", \"$1 $2\", [\"2[124]|[36]1\"],\n\"(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\"], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3 $4\", [\"0\"]]], [[, \"(\\\\d)(\\\\d{3})(\\\\d{3})\",\n\"$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\"]], [, , ,\n, , , , , , [-1]], , , [, , \"(?:007803\\\\d|8071)\\\\d{6}\", , , , , , , [10, 13]], [, , \"(?:1500|8071\\\\d{3})\\\\d{3}\", , , , \"8071123456\", , , [7, 10]], , , [, , , , , , , , , [-1]]], IE:[, [, , \"(?:1\\\\d|[2569])\\\\d{6,8}|4\\\\d{6,9}|7\\\\d{8}|8\\\\d{8,9}\", , , , , , , [7, 8, 9, 10], [5, 6]], [, , \"(?:1\\\\d|21)\\\\d{6,7}|(?:2[24-9]|4(?:0[24]|5\\\\d|7)|5(?:0[45]|1\\\\d|8)|6(?:1\\\\d|[237-9])|9(?:1\\\\d|[35-9]))\\\\d{5}|(?:23|4(?:[1-469]|8[0-46-9])|5[23679]|6[4-6]|7[14]|9[04])\\\\d{7}\", , , , \"2212345\", , , , [5, 6]], [, , \"8(?:22|[35-9]\\\\d)\\\\d{6}\",\n, , , \"850123456\", , , [9]], [, , \"1800\\\\d{6}\", , , , \"1800123456\", , , [10]], [, , \"15(?:1[2-8]|[2-8]0|9[089])\\\\d{6}\", , , , \"1520123456\", , , [10]], [, , \"18[59]0\\\\d{6}\", , , , \"1850123456\", , , [10]], [, , \"700\\\\d{6}\", , , , \"700123456\", , , [9]], [, , \"76\\\\d{7}\", , , , \"761234567\", , , [9]], \"IE\", 353, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\",\n[\"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)(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3 $4\", [\"8\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"4\"], \"(0$1)\"]], , [, , , , , , , , , [-1]], , , [, , \"18[59]0\\\\d{6}\",\n, , , , , , [10]], [, , \"818\\\\d{6}\", , , , \"818123456\", , , [9]], , , [, , \"8[35-9]5\\\\d{7}\", , , , \"8551234567\", , , [10]]], IL:[, [, , \"1\\\\d{6}(?:\\\\d{3,5})?|[57]\\\\d{8}|[1-489]\\\\d{7}\", , , , , , , [7, 8, 9, 10, 11, 12]], [, , \"153\\\\d{8,9}|[2-489]\\\\d{7}\", , , , \"21234567\", , , [8, 11, 12], [7]], [, , \"5(?:(?:[0-389][2-9]|4[1-9]|6\\\\d)\\\\d|5(?:01|2[2-6]|3[23]|4[45]|5[05689]|6[6-8]|7[0-267]|8[7-9]|9[1-9]))\\\\d{5}\", , , , \"502345678\", , , [9]], [, , \"1(?:255|80[019]\\\\d{3})\\\\d{3}\", , , , \"1800123456\", ,\n, [7, 10]], [, , \"1212\\\\d{4}|1(?:200|9(?:0[01]|19))\\\\d{6}\", , , , \"1919123456\", , , [8, 10]], [, , \"1700\\\\d{6}\", , , , \"1700123456\", , , [10]], [, , , , , , , , , [-1]], [, , \"78(?:33|55|77|81)\\\\d{5}|7(?:18|2[23]|3[237]|47|6[58]|7\\\\d|82|9[235-9])\\\\d{6}\", , , , \"771234567\", , , [9]], \"IL\", 972, \"0(?:0|1[2-9])\", \"0\", , , \"0\", , , , [[, \"(\\\\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})\",\n\"$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\"]]], , [, , , , , , , , , [-1]], , , [, , \"1700\\\\d{6}\", , , , , , , [10]], [, , \"1599\\\\d{6}\", , , , \"1599123456\", , , [10]], , , [, , \"151\\\\d{8,9}\", , , , \"15112340000\", , , [11, 12]]], IM:[, [, , \"1624\\\\d{6}|(?:[3578]\\\\d|90)\\\\d{8}\", , , , , , , [10],\n[6]], [, , \"1624[5-8]\\\\d{5}\", , , , \"1624756789\", , , , [6]], [, , \"76245[06]\\\\d{4}|7(?:4576|[59]24\\\\d|624[0-4689])\\\\d{5}\", , , , \"7924123456\"], [, , \"808162\\\\d{4}\", , , , \"8081624567\"], [, , \"8(?:440[49]06|72299\\\\d)\\\\d{3}|(?:8(?:45|70)|90[0167])624\\\\d{4}\", , , , \"9016247890\"], [, , , , , , , , , [-1]], [, , \"70\\\\d{8}\", , , , \"7012345678\"], [, , \"56\\\\d{8}\", , , , \"5612345678\"], \"IM\", 44, \"00\", \"0\", , , \"0|([5-8]\\\\d{5})$\", \"1624$1\", , , , , [, , , , , , , , , [-1]], , \"74576|(?:16|7[56])24\", [, ,\n, , , , , , , [-1]], [, , \"3440[49]06\\\\d{3}|(?:3(?:08162|3\\\\d{4}|45624|7(?:0624|2299))|55\\\\d{4})\\\\d{4}\", , , , \"5512345678\"], , , [, , , , , , , , , [-1]]], IN:[, [, , \"(?:00800|[2-9]\\\\d\\\\d)\\\\d{7}|1\\\\d{7,12}\", , , , , , , [8, 9, 10, 11, 12, 13], [6, 7]], [, , \"782[0-6][2-7]\\\\d{5}|(?:170[24]|2(?:80[13468]|90\\\\d)|380\\\\d|4(?:20[24]|72[2-8])|552[1-7])\\\\d{6}|(?:342|674|788)(?:[0189][2-7]|[2-7]\\\\d)\\\\d{5}|(?:11|2[02]|33|4[04]|79|80)[2-7]\\\\d{7}|(?:1(?:2[0-249]|3[0-25]|4[145]|[59][14]|6[014]|7[1257]|8[01346])|2(?:1[257]|3[013]|4[01]|5[0137]|6[0158]|78|8[1568]|9[14])|3(?:26|4[13]|5[34]|6[01489]|7[02-46]|8[159])|4(?:1[36]|2[1-47]|3[15]|5[12]|6[0-26-9]|7[014-9]|8[013-57]|9[014-7])|5(?:1[025]|22|[36][25]|4[28]|[578]1|9[15])|6(?:12|[2-47]1|5[17]|6[13]|80)|7(?:12|2[14]|3[134]|4[47]|5[15]|[67]1)|8(?:16|2[014]|3[126]|6[136]|7[078]|8[34]|91))[2-7]\\\\d{6}|(?:1(?:2[35-8]|3[346-9]|4[236-9]|[59][0235-9]|6[235-9]|7[34689]|8[257-9])|2(?:1[134689]|3[24-8]|4[2-8]|5[25689]|6[2-4679]|7[13-79]|8[2-479]|9[235-9])|3(?:01|1[79]|2[1-5]|4[5-8]|5[125689]|6[235-7]|7[157-9]|8[2-46-8])|4(?:1[14578]|2[5689]|3[2-467]|5[4-7]|6[35]|73|8[2689]|9[2389])|5(?:[16][146-9]|2[14-8]|3[1346]|4[14-69]|5[46]|7[2-4]|8[2-8]|9[246])|6(?:1[1358]|2[2457]|3[2-4]|4[235-7]|5[2-689]|6[24578]|7[235689]|8[1-6])|7(?:1[013-9]|2[0235-9]|3[2679]|4[1-35689]|5[2-46-9]|[67][02-9]|8[013-7]|9[0189])|8(?:1[1357-9]|2[235-8]|3[03-57-9]|4[0-24-9]|5\\\\d|6[2457-9]|7[1-6]|8[1256]|9[2-4]))\\\\d[2-7]\\\\d{5}\",\n, , , \"7410410123\", , , [10], [6, 7, 8]], [, , \"(?:6(?:1279|350[0-6])|7(?:3(?:1(?:11|7[02-8])|411)|4[47](?:11|7[02-8])|5111|700[02-9]|88(?:11|7[02-9])|9(?:313|79[07-9]))|8(?:079[04-9]|(?:16|2[014]|3[126]|6[136]|7[78]|8[34]|91)7[02-8]))\\\\d{5}|7(?:28[6-8]|3(?:2[0-49]|9[2-5])|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])[089]\\\\d{5}|(?:6(?:0(?:0[0-3569]|26|33)|2(?:[06]\\\\d|3[02589]|8[0-479]|9[0-79])|3(?:0[0-79]|5[1-9]|6[0-4679]|7[0-24-9]|[89]\\\\d)|9(?:0[019]|13))|7(?:0\\\\d\\\\d|19[0-5]|2(?:[0235-79]\\\\d|[14][017-9]|8[0-59])|3(?:[05-8]\\\\d|1[089]|2[5-8]|3[017-9]|4[07-9]|9[016-9])|4(?:0\\\\d|1[015-9]|[29][89]|39|[47][089]|8[389])|5(?:[0346-8]\\\\d|1[07-9]|2[04-9]|5[017-9]|9[7-9])|6(?:0[0-47]|1[0-257-9]|2[0-4]|3[19]|5[4589]|[6-9]\\\\d)|7(?:0[289]|[1-9]\\\\d)|8(?:[0-79]\\\\d|8[089])|9(?:[089]\\\\d|7[02-8]))|8(?:0(?:[01589]\\\\d|6[67]|7[02-8])|1(?:[0-57-9]\\\\d|6[089])|2(?:[014][089]|[235-9]\\\\d)|3(?:[03-57-9]\\\\d|[126][089])|[45]\\\\d\\\\d|6(?:[02457-9]\\\\d|[136][089])|7(?:0[07-9]|[1-69]\\\\d|[78][089])|8(?:[0-25-9]\\\\d|3[089]|4[0489])|9(?:[02-9]\\\\d|1[0289]))|9\\\\d{3})\\\\d{6}\",\n, , , \"8123456789\", , , [10]], [, , \"00800\\\\d{7}|1(?:600\\\\d{6}|80(?:0\\\\d{4,9}|3\\\\d{9}))\", , , , \"1800123456\"], [, , \"186[12]\\\\d{9}\", , , , \"1861123456789\", , , [13]], [, , \"1860\\\\d{7}\", , , , \"18603451234\", , , [11]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"IN\", 91, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{7})\", \"$1\", [\"575\"]], [, \"(\\\\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)\"], , , 1], [, \"(\\\\d{4})(\\\\d{4,5})\",\n\"$1 $2\", [\"180\", \"1800\"], , , 1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"140\"], , , 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]\",\n\"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(?:[2-4]1|5[17]|6[13]|7[14]|80)|7(?:12|(?: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|(?:55|61)2|7(?: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])|[2-4]1|5[17]|6[13]|7[14]|80)|7(?:12|(?: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]|(?:1(?:29|60|8[06])|261|552|788[01])[2-7]|(?:74[47]|8(?:16|2[014]|3[126]|6[136]|7[78]|83))(?:[2-6]|7[19])\"],\n\"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-8])|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-8])|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(?:1[1358]|2(?:[2457]|84|95)|3(?:[2-4]|55)|[4-8])|7(?:1(?:[013-8]|9[6-9])|3179)|807(?:1|9[1-3])|(?:1552|7(?: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]\"],\n\"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)\"], , , 1], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})(\\\\d{3})\", \"$1 $2 $3 $4\", [\"0\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3 $4\", [\"18\"], , , 1]], [[, \"(\\\\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)\"], , , 1], [, \"(\\\\d{4})(\\\\d{4,5})\", \"$1 $2\", [\"180\", \"1800\"],\n, , 1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"140\"], , , 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]\",\n\"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(?:[2-4]1|5[17]|6[13]|7[14]|80)|7(?:12|(?: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|(?:55|61)2|7(?: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])|[2-4]1|5[17]|6[13]|7[14]|80)|7(?:12|(?: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]|(?:1(?:29|60|8[06])|261|552|788[01])[2-7]|(?:74[47]|8(?:16|2[014]|3[126]|6[136]|7[78]|83))(?:[2-6]|7[19])\"],\n\"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-8])|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-8])|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(?:1[1358]|2(?:[2457]|84|95)|3(?:[2-4]|55)|[4-8])|7(?:1(?:[013-8]|9[6-9])|3179)|807(?:1|9[1-3])|(?:1552|7(?: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]\"],\n\"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)\"], , , 1], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3 $4\", [\"18\"], , , 1]], [, , , , , , , , , [-1]], , , [, , \"1(?:600\\\\d{6}|800\\\\d{4,9})|(?:00800|18(?:03\\\\d\\\\d|6(?:0|[12]\\\\d\\\\d)))\\\\d{7}\"], [, , \"140\\\\d{7}\", , , , \"1409305260\", , , [10]], , , [, , , , , , , , , [-1]]], IO:[, [, , \"3\\\\d{6}\", , , , , , , [7]], [, , \"37\\\\d{5}\", , , , \"3709100\"], [,\n, \"38\\\\d{5}\", , , , \"3801234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"IO\", 246, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"3\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], IQ:[, [, , \"(?:1|7\\\\d\\\\d)\\\\d{7}|[2-6]\\\\d{7,8}\", , , , , , , [8, 9, 10], [6, 7]], [, , \"1\\\\d{7}|(?:2[13-5]|3[02367]|4[023]|5[03]|6[026])\\\\d{6,7}\", , , ,\n\"12345678\", , , [8, 9], [6, 7]], [, , \"7[3-9]\\\\d{8}\", , , , \"7912345678\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"IQ\", 964, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , ,\n, , , [-1]], , , [, , , , , , , , , [-1]]], IR:[, [, , \"[1-9]\\\\d{9}|(?:[1-8]\\\\d\\\\d|9)\\\\d{3,4}\", , , , , , , [4, 5, 6, 7, 10], [8]], [, , \"(?:1[137]|2[13-68]|3[1458]|4[145]|5[1468]|6[16]|7[1467]|8[13467])(?:[03-57]\\\\d{7}|[16]\\\\d{3}(?:\\\\d{4})?|[289]\\\\d{3}(?:\\\\d(?:\\\\d{3})?)?)|94(?:000[09]|2(?:121|[2689]0\\\\d)|30[0-2]\\\\d|4(?:111|40\\\\d))\\\\d{4}\", , , , \"2123456789\", , , [6, 7, 10], [4, 5, 8]], [, , \"9(?:(?:0(?:[1-35]\\\\d|44)|(?:[13]\\\\d|2[0-2])\\\\d)\\\\d|9(?:(?:[0-2]\\\\d|44)\\\\d|5[15]0|8(?:1\\\\d|88)|9(?:0[013]|1[0134]|21|77|9[6-9])))\\\\d{5}\",\n, , , \"9123456789\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"993\\\\d{7}\", , , , \"9932123456\", , , [10]], \"IR\", 98, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\"]],\n, [, , , , , , , , , [-1]], , , [, , \"9(?:4440\\\\d{5}|6(?:0[12]|2[16-8]|3(?:08|[14]5|[23]|66)|4(?:0|80)|5[01]|6[89]|86|9[19]))\", , , , , , , [4, 5, 10]], [, , \"96(?:0[12]|2[16-8]|3(?:08|[14]5|[23]|66)|4(?:0|80)|5[01]|6[89]|86|9[19])\", , , , \"9601\", , , [4, 5]], , , [, , , , , , , , , [-1]]], IS:[, [, , \"(?:38\\\\d|[4-9])\\\\d{6}\", , , , , , , [7, 9]], [, , \"(?:4(?:1[0-24-69]|2[0-7]|[37][0-8]|4[0-245]|5[0-68]|6\\\\d|8[0-36-8])|5(?:05|[156]\\\\d|2[02578]|3[0-579]|4[03-7]|7[0-2578]|8[0-35-9]|9[013-689])|87[23])\\\\d{4}\",\n, , , \"4101234\", , , [7]], [, , \"(?:38[589]\\\\d\\\\d|6(?:1[1-8]|2[0-6]|3[027-9]|4[014679]|5[0159]|6[0-69]|70|8[06-8]|9\\\\d)|7(?:5[057]|[6-8]\\\\d|9[0-3])|8(?:2[0-59]|[3469]\\\\d|5[1-9]|8[28]))\\\\d{4}\", , , , \"6111234\"], [, , \"800\\\\d{4}\", , , , \"8001234\", , , [7]], [, , \"90\\\\d{5}\", , , , \"9011234\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"49\\\\d{5}\", , , , \"4921234\", , , [7]], \"IS\", 354, \"00|1(?:0(?:01|[12]0)|100)\", , , , , , \"00\", , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[4-9]\"]], [,\n\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"3\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"809\\\\d{4}\", , , , \"8091234\", , , [7]], , , [, , \"(?:689|8(?:7[0189]|80)|95[48])\\\\d{4}\", , , , \"6891234\", , , [7]]], IT:[, [, , \"0\\\\d{5,10}|3[0-8]\\\\d{7,10}|55\\\\d{8}|8\\\\d{5}(?:\\\\d{2,4})?|(?:1\\\\d|39)\\\\d{7,8}\", , , , , , , [6, 7, 8, 9, 10, 11, 12]], [, , \"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}\",\n, , , \"0212345678\", , , [6, 7, 8, 9, 10, 11]], [, , \"3[1-9]\\\\d{8}|3[2-9]\\\\d{7}\", , , , \"3123456789\", , , [9, 10]], [, , \"80(?:0\\\\d{3}|3)\\\\d{3}\", , , , \"800123456\", , , [6, 9]], [, , \"(?:0878\\\\d\\\\d|89(?:2|4[5-9]\\\\d))\\\\d{3}|89[45][0-4]\\\\d\\\\d|(?:1(?:44|6[346])|89(?:5[5-9]|9))\\\\d{6}\", , , , \"899123456\", , , [6, 8, 9, 10]], [, , \"84(?:[08]\\\\d{3}|[17])\\\\d{3}\", , , , \"848123456\", , , [6, 9]], [, , \"1(?:78\\\\d|99)\\\\d{6}\", , , , \"1781234567\", , , [9, 10]], [, , \"55\\\\d{8}\", , , , \"5512345678\", , , [10]], \"IT\",\n39, \"00\", , , , , , , , [[, \"(\\\\d{4,5})\", \"$1\", [\"1(?:0|9[246])\", \"1(?:0|9(?:2[2-9]|[46]))\"]], [, \"(\\\\d{6})\", \"$1\", [\"1(?:1|92)\"]], [, \"(\\\\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[245])\", \"0[13-57-9][0159]|8(?:03|4[17]|9(?:2|[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})\",\n\"$1 $2 $3\", [\"1[4679]|[38]\"]], [, \"(\\\\d{3})(\\\\d{3,4})(\\\\d{4})\", \"$1 $2 $3\", [\"0[13-57-9][0159]\"]], [, \"(\\\\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\"]]], [[, \"(\\\\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[245])\", \"0[13-57-9][0159]|8(?:03|4[17]|9(?:2|[45][0-4]))\"]], [, \"(\\\\d{4})(\\\\d{2,6})\", \"$1 $2\", [\"0(?:[13-579][2-46-8]|8[236-8])\"]],\n[, \"(\\\\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[4679]|[38]\"]], [, \"(\\\\d{3})(\\\\d{3,4})(\\\\d{4})\", \"$1 $2 $3\", [\"0[13-57-9][0159]\"]], [, \"(\\\\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\"]]], [, , , , , , , , , [-1]], 1, , [, , \"848\\\\d{6}\", , , , , , , [9]], [, , , , , , , , , [-1]], , , [, , \"3[2-8]\\\\d{9,10}\",\n, , , \"33101234501\", , , [11, 12]]], JE:[, [, , \"1534\\\\d{6}|(?:[3578]\\\\d|90)\\\\d{8}\", , , , , , , [10], [6]], [, , \"1534[0-24-8]\\\\d{5}\", , , , \"1534456789\", , , , [6]], [, , \"7(?:(?:(?:50|82)9|937)\\\\d|7(?:00[378]|97[7-9]))\\\\d{5}\", , , , \"7797712345\"], [, , \"80(?:07(?:35|81)|8901)\\\\d{4}\", , , , \"8007354567\"], [, , \"(?:8(?:4(?:4(?:4(?:05|42|69)|703)|5(?:041|800))|7(?:0002|1206))|90(?:066[59]|1810|71(?:07|55)))\\\\d{4}\", , , , \"9018105678\"], [, , , , , , , , , [-1]], [, , \"701511\\\\d{4}\", , , , \"7015115678\"],\n[, , \"56\\\\d{8}\", , , , \"5612345678\"], \"JE\", 44, \"00\", \"0\", , , \"0|([0-24-8]\\\\d{5})$\", \"1534$1\", , , , , [, , \"76(?:0[0-2]|2[356]|4[0134]|5[49]|6[0-369]|77|81|9[39])\\\\d{6}\", , , , \"7640123456\"], , , [, , , , , , , , , [-1]], [, , \"(?: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}\", , , , \"5512345678\"], , , [, , , , , , , , , [-1]]], JM:[, [, , \"(?:[58]\\\\d\\\\d|658|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"(?:658(?:2(?:[0-8]\\\\d|9[0-46-9])|[3-9]\\\\d\\\\d)|876(?:5(?:02|1[0-468]|2[35]|63)|6(?:0[1-3579]|1[0237-9]|[23]\\\\d|40|5[06]|6[2-589]|7[05]|8[04]|9[4-9])|7(?:0[2-689]|[1-6]\\\\d|8[056]|9[45])|9(?:0[1-8]|1[02378]|[2-8]\\\\d|9[2-468])))\\\\d{4}\",\n, , , \"8765230123\", , , , [7]], [, , \"(?:658295|876(?:(?:2[14-9]|[348]\\\\d)\\\\d|5(?:0[13-9]|17|[2-57-9]\\\\d|6[0-24-9])|7(?:0[07]|7\\\\d|8[1-47-9]|9[0-36-9])|9(?:[01]9|9[0579])))\\\\d{4}\", , , , \"8762101234\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"JM\", 1, \"011\", \"1\", , , \"1\", , , , , , [, , , , , , , ,\n, [-1]], , \"658|876\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], JO:[, [, , \"900\\\\d{5}|(?:(?:[268]|7\\\\d)\\\\d|32|53)\\\\d{6}\", , , , , , , [8, 9]], [, , \"(?:2(?:6(?:2[0-35-9]|3[0-578]|4[24-7]|5[0-24-8]|[6-8][023]|9[0-3])|7(?:0[1-79]|10|2[014-7]|3[0-689]|4[019]|5[0-3578]))|32(?:0[1-69]|1[1-35-7]|2[024-7]|3\\\\d|4[0-3]|[57][023]|6[03])|53(?:0[0-3]|[13][023]|2[0-59]|49|5[0-35-9]|6[15]|7[45]|8[1-6]|9[0-36-9])|6(?:2(?:[05]0|22)|3(?:00|33)|4(?:0[0-25]|1[2-7]|2[0569]|[38][07-9]|4[025689]|6[0-589]|7\\\\d|9[0-2])|5(?:[01][056]|2[034]|3[0-57-9]|4[178]|5[0-69]|6[0-35-9]|7[1-379]|8[0-68]|9[0239]))|87(?:[029]0|7[08]))\\\\d{4}\",\n, , , \"62001234\", , , [8]], [, , \"7(?:55[0-49]|(?:7[025-9]|[89][0-25-9])\\\\d)\\\\d{5}\", , , , \"790123456\", , , [9]], [, , \"80\\\\d{6}\", , , , \"80012345\", , , [8]], [, , \"900\\\\d{5}\", , , , \"90012345\", , , [8]], [, , \"85\\\\d{6}\", , , , \"85012345\", , , [8]], [, , \"70\\\\d{7}\", , , , \"700123456\", , , [9]], [, , , , , , , , , [-1]], \"JO\", 962, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\",\n[\"70\"], \"0$1\"], [, \"(\\\\d)(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"7\"], \"0$1\"]], , [, , \"74(?:66|77)\\\\d{5}\", , , , \"746612345\", , , [9]], , , [, , , , , , , , , [-1]], [, , \"8(?:10|8\\\\d)\\\\d{5}\", , , , \"88101234\", , , [8]], , , [, , , , , , , , , [-1]]], JP:[, [, , \"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]], [, , \"(?:1(?:1[235-8]|2[3-6]|3[3-9]|4[2-6]|[58][2-8]|6[2-7]|7[2-9]|9[1-9])|(?:2[2-9]|[36][1-9])\\\\d|4(?:[2-578]\\\\d|6[02-8]|9[2-59])|5(?:[2-589]\\\\d|6[1-9]|7[2-8])|7(?:[25-9]\\\\d|3[4-9]|4[02-9])|8(?:[2679]\\\\d|3[2-9]|4[5-9]|5[1-9]|8[03-9])|9(?:[2-58]\\\\d|[679][1-9]))\\\\d{6}\",\n, , , \"312345678\", , , [9]], [, , \"[7-9]0[1-9]\\\\d{7}\", , , , \"9012345678\", , , [10]], [, , \"00(?:(?:37|66)\\\\d{6,13}|(?:777(?:[01]|(?:5|8\\\\d)\\\\d)|882[1245]\\\\d\\\\d)\\\\d\\\\d)|(?:120|800\\\\d)\\\\d{6}\", , , , \"120123456\"], [, , \"990\\\\d{6}\", , , , \"990123456\", , , [9]], [, , , , , , , , , [-1]], [, , \"60\\\\d{7}\", , , , \"601234567\", , , [9]], [, , \"50[1-9]\\\\d{7}\", , , , \"5012345678\", , , [10]], \"JP\", 81, \"010\", \"0\", , , \"0\", , , , [[, \"(\\\\d{4})(\\\\d{4})\", \"$1-$2\", [\"007\", \"0077\", \"00777\", \"00777[01]\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\n\"$1-$2-$3\", [\"(?:12|57|99)0\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d)(\\\\d{4})\", \"$1-$2-$3\", [\"1(?:26|3[79]|4[56]|5[4-68]|6[3-5])|499|5(?:76|97)|746|8(?:3[89]|47|51|63)|9(?:49|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[78]|96)|477|51[24]|636)|9(?:496|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[78]|96[2457-9])|477|51[24]|636[2-57-9])|9(?:496|802|9(?:1[23]|69))|1(?:45|58)[67]\"],\n\"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"60\"], \"0$1\"], [, \"(\\\\d)(\\\\d{4})(\\\\d{4})\", \"$1-$2-$3\", [\"[36]|4(?:2[09]|7[01])\", \"[36]|4(?:2(?:0|9[02-69])|7(?:0[019]|1))\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"1(?:1|5[45]|77|88|9[69])|2(?:2[1-37]|3[0-269]|4[59]|5|6[24]|7[1-358]|8[1369]|9[0-38])|4(?:[28][1-9]|3[0-57]|[45]|6[248]|7[2-579]|9[29])|5(?:2|3[045]|4[0-369]|5[29]|8[02389]|9[0-389])|7(?:2[02-46-9]|34|[58]|6[0249]|7[57]|9[2-6])|8(?:2[124589]|3[279]|49|6[0-24-689]|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])\",\n\"1(?:1|5(?:4[018]|5[017])|77|88|9[69])|2(?:2(?:[127]|3[014-9])|3[0-269]|4[59]|5(?:[0468][01]|[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]|2[01]|8[014-6])|3[0-57]|[45]|6[248]|7[2-47]|8[1-9])|5(?:2|3[045]|4[0-369]|8[02389]|9[0-3])|7(?:2[02-46-9]|34|[58]|6[0249]|7[57]|9(?:[23]|4[0-59]|5[01569]|6[0167]))|8(?:2(?:[1258]|4[0-39]|9[0-2469])|49|6(?:[0-24]|5[0-3589]|9[01459])|7[0-468]|8[68])|9(?:[23][1-9]|4[15]|5[138]|6[1-3]|7[156]|8[189]|9(?:[1289]|3[34]|4[0178]))|(?:49|55|83)[29]|(?:264|837)[016-9]|2(?:57|93)[015-9]|(?:47[59]|59[89]|8(?:6[68]|9))[019]\",\n\"1(?:1|5(?:4[018]|5[017])|77|88|9[69])|2(?:2[127]|3[0-269]|4[59]|5(?:[0468][01]|[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]|2[01]|8[014-6])|3[0-57]|[45]|6[248]|7[2-47]|9[29])|5(?:2|3[045]|4[0-369]|5[29]|8[02389]|9[0-3])|7(?:2[02-46-9]|34|[58]|6[0249]|7[57]|9(?:[23]|4[0-59]|5[01569]|6[0167]))|8(?:2(?:[1258]|4[0-39]|9[0169])|3(?:[29]|7(?:[017-9]|6[6-8]))|49|6(?:[0-24]|5(?:[0-389]|5[23])|6(?:[01]|9[178])|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]|(?:48|8292|9[23])[1-9]|(?:47[59]|59[89]|8(?:68|9))[019]\",\n\"1(?:1|5(?:4[018]|5[017])|77|88|9[69])|2(?:2[127]|3[0-269]|4[59]|5(?:[0468][01]|[1-3]|5[0-69]|7[015-9]|9(?:17|99))|6(?:2|4[016-9])|7(?:[1-35]|8[0189])|8(?:[16]|3[0134]|9[0-5])|9(?:[028]|17|3[015-9]))|4(?:2(?:[13-79]|2[01]|8[014-6])|3[0-57]|[45]|6[248]|7[2-47]|9[29])|5(?:2|3[045]|4[0-369]|5[29]|8[02389]|9[0-3])|7(?:2[02-46-9]|34|[58]|6[0249]|7[57]|9(?:[23]|4[0-59]|5[01569]|6[0167]))|8(?:2(?:[1258]|4[0-39]|9(?:[019]|4[1-3]|6(?:[0-47-9]|5[01346-9])))|3(?:[29]|7(?:[017-9]|6[6-8]))|49|6(?:[0-24]|5(?:[0-389]|5[23])|6(?:[01]|9[178])|9[0145])|7[0-468]|8[68])|9(?:4[15]|5[138]|6[1-3]|7[156]|8[189]|9(?:[1289]|3(?:31|4[357])|4[0178]))|(?:223|8699)[014-9]|(?:48|829(?:2|66)|9[23])[1-9]|(?:47[59]|59[89]|8(?:68|9))[019]\"],\n\"0$1\"], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{4})\", \"$1-$2-$3\", [\"[14]|[29][2-9]|5[3-9]|7[2-4679]|8(?:[246-9]|3[3-8]|5[2-9])\", \"[14]|[29][2-9]|5[3-9]|7[2-4679]|8(?:[246-9]|3(?:[3-6][2-9]|7|8[2-5])|5[2-9])\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d{2})(\\\\d{3,4})\", \"$1-$2-$3\", [\"007\"]], [, \"(\\\\d{4})(\\\\d{2})(\\\\d{4})\", \"$1-$2-$3\", [\"008\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"800\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1-$2-$3\", [\"[2579]|80\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{3,4})\", \"$1-$2-$3\", [\"0\"]], [, \"(\\\\d{4})(\\\\d{4})(\\\\d{4,5})\",\n\"$1-$2-$3\", [\"0\"]], [, \"(\\\\d{4})(\\\\d{5})(\\\\d{5,6})\", \"$1-$2-$3\", [\"0\"]], [, \"(\\\\d{4})(\\\\d{6})(\\\\d{6,7})\", \"$1-$2-$3\", [\"0\"]]], [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1-$2-$3\", [\"(?:12|57|99)0\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d)(\\\\d{4})\", \"$1-$2-$3\", [\"1(?:26|3[79]|4[56]|5[4-68]|6[3-5])|499|5(?:76|97)|746|8(?:3[89]|47|51|63)|9(?:49|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[78]|96)|477|51[24]|636)|9(?:496|802|9(?:1[23]|69))|1(?:45|58)[67]\",\n\"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[78]|96[2457-9])|477|51[24]|636[2-57-9])|9(?:496|802|9(?:1[23]|69))|1(?:45|58)[67]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"60\"], \"0$1\"], [, \"(\\\\d)(\\\\d{4})(\\\\d{4})\", \"$1-$2-$3\", [\"[36]|4(?:2[09]|7[01])\", \"[36]|4(?:2(?:0|9[02-69])|7(?:0[019]|1))\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"1(?:1|5[45]|77|88|9[69])|2(?:2[1-37]|3[0-269]|4[59]|5|6[24]|7[1-358]|8[1369]|9[0-38])|4(?:[28][1-9]|3[0-57]|[45]|6[248]|7[2-579]|9[29])|5(?:2|3[045]|4[0-369]|5[29]|8[02389]|9[0-389])|7(?:2[02-46-9]|34|[58]|6[0249]|7[57]|9[2-6])|8(?:2[124589]|3[279]|49|6[0-24-689]|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])\",\n\"1(?:1|5(?:4[018]|5[017])|77|88|9[69])|2(?:2(?:[127]|3[014-9])|3[0-269]|4[59]|5(?:[0468][01]|[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]|2[01]|8[014-6])|3[0-57]|[45]|6[248]|7[2-47]|8[1-9])|5(?:2|3[045]|4[0-369]|8[02389]|9[0-3])|7(?:2[02-46-9]|34|[58]|6[0249]|7[57]|9(?:[23]|4[0-59]|5[01569]|6[0167]))|8(?:2(?:[1258]|4[0-39]|9[0-2469])|49|6(?:[0-24]|5[0-3589]|9[01459])|7[0-468]|8[68])|9(?:[23][1-9]|4[15]|5[138]|6[1-3]|7[156]|8[189]|9(?:[1289]|3[34]|4[0178]))|(?:49|55|83)[29]|(?:264|837)[016-9]|2(?:57|93)[015-9]|(?:47[59]|59[89]|8(?:6[68]|9))[019]\",\n\"1(?:1|5(?:4[018]|5[017])|77|88|9[69])|2(?:2[127]|3[0-269]|4[59]|5(?:[0468][01]|[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]|2[01]|8[014-6])|3[0-57]|[45]|6[248]|7[2-47]|9[29])|5(?:2|3[045]|4[0-369]|5[29]|8[02389]|9[0-3])|7(?:2[02-46-9]|34|[58]|6[0249]|7[57]|9(?:[23]|4[0-59]|5[01569]|6[0167]))|8(?:2(?:[1258]|4[0-39]|9[0169])|3(?:[29]|7(?:[017-9]|6[6-8]))|49|6(?:[0-24]|5(?:[0-389]|5[23])|6(?:[01]|9[178])|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]|(?:48|8292|9[23])[1-9]|(?:47[59]|59[89]|8(?:68|9))[019]\",\n\"1(?:1|5(?:4[018]|5[017])|77|88|9[69])|2(?:2[127]|3[0-269]|4[59]|5(?:[0468][01]|[1-3]|5[0-69]|7[015-9]|9(?:17|99))|6(?:2|4[016-9])|7(?:[1-35]|8[0189])|8(?:[16]|3[0134]|9[0-5])|9(?:[028]|17|3[015-9]))|4(?:2(?:[13-79]|2[01]|8[014-6])|3[0-57]|[45]|6[248]|7[2-47]|9[29])|5(?:2|3[045]|4[0-369]|5[29]|8[02389]|9[0-3])|7(?:2[02-46-9]|34|[58]|6[0249]|7[57]|9(?:[23]|4[0-59]|5[01569]|6[0167]))|8(?:2(?:[1258]|4[0-39]|9(?:[019]|4[1-3]|6(?:[0-47-9]|5[01346-9])))|3(?:[29]|7(?:[017-9]|6[6-8]))|49|6(?:[0-24]|5(?:[0-389]|5[23])|6(?:[01]|9[178])|9[0145])|7[0-468]|8[68])|9(?:4[15]|5[138]|6[1-3]|7[156]|8[189]|9(?:[1289]|3(?:31|4[357])|4[0178]))|(?:223|8699)[014-9]|(?:48|829(?:2|66)|9[23])[1-9]|(?:47[59]|59[89]|8(?:68|9))[019]\"],\n\"0$1\"], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{4})\", \"$1-$2-$3\", [\"[14]|[29][2-9]|5[3-9]|7[2-4679]|8(?:[246-9]|3[3-8]|5[2-9])\", \"[14]|[29][2-9]|5[3-9]|7[2-4679]|8(?:[246-9]|3(?:[3-6][2-9]|7|8[2-5])|5[2-9])\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"800\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1-$2-$3\", [\"[2579]|80\"], \"0$1\"]], [, , \"20\\\\d{8}\", , , , \"2012345678\", , , [10]], , , [, , \"00(?:777(?:[01]|(?:5|8\\\\d)\\\\d)|882[1245]\\\\d\\\\d)\\\\d\\\\d|00(?:37|66)\\\\d{6,13}\"], [, , \"570\\\\d{6}\", , , , \"570123456\",\n, , [9]], , , [, , , , , , , , , [-1]]], KE:[, [, , \"(?:[17]\\\\d\\\\d|900)\\\\d{6}|(?:2|80)0\\\\d{6,7}|[4-6]\\\\d{6,8}\", , , , , , , [7, 8, 9, 10]], [, , \"(?:4[245]|5[2-79]|6[01457-9])\\\\d{5,7}|(?:4[136]|5[08]|62)\\\\d{7}|(?:[24]0|51|66)\\\\d{6,7}\", , , , \"202012345\", , , [7, 8, 9]], [, , \"(?:1(?:0[0-2]|1[01])|7\\\\d\\\\d)\\\\d{6}\", , , , \"712123456\", , , [9]], [, , \"800[24-8]\\\\d{5,6}\", , , , \"800223456\", , , [9, 10]], [, , \"900[02-9]\\\\d{5}\", , , , \"900223456\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , ,\n[-1]], [, , , , , , , , , [-1]], \"KE\", 254, \"000\", \"0\", , , \"0\", , , , [[, \"(\\\\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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], KG:[, [, , \"8\\\\d{9}|(?:[235-8]\\\\d|99)\\\\d{7}\", , , , , , , [9, 10], [5, 6]], [, , \"(?:3(?:1(?:[256]\\\\d|3[1-9]|47)|2(?:22|3[0-479]|6[0-7])|4(?:22|5[6-9]|6\\\\d)|5(?:22|3[4-7]|59|6\\\\d)|6(?:22|5[35-7]|6\\\\d)|7(?:22|3[468]|4[1-9]|59|[67]\\\\d)|9(?:22|4[1-8]|6\\\\d))|6(?:09|12|2[2-4])\\\\d)\\\\d{5}\",\n, , , \"312123456\", , , [9], [5, 6]], [, , \"8801\\\\d{5}|(?:2(?:0[0-35]|2\\\\d)|5(?:0[0-57-9]|[124-7]\\\\d)|7(?:[07]\\\\d|55)|99[05-9])\\\\d{6}\", , , , \"700123456\", , , [9]], [, , \"800\\\\d{6,7}\", , , , \"800123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"KG\", 996, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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})\",\n\"$1 $2 $3 $4\", [\"8\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], KH:[, [, , \"1\\\\d{9}|[1-9]\\\\d{7,8}\", , , , , , , [8, 9, 10], [6, 7]], [, , \"23(?:4(?:[2-4]|[56]\\\\d)|[568]\\\\d\\\\d)\\\\d{4}|23[236-9]\\\\d{5}|(?:2[4-6]|3[2-6]|4[2-4]|[5-7][2-5])(?:(?:[237-9]|4[56]|5\\\\d)\\\\d{5}|6\\\\d{5,6})\", , , , \"23756789\", , , [8, 9], [6, 7]], [, , \"(?:(?:1[28]|3[18]|9[67])\\\\d|6[016-9]|7(?:[07-9]|[16]\\\\d)|8(?:[013-79]|8\\\\d))\\\\d{6}|(?:1\\\\d|9[0-57-9])\\\\d{6}|(?:2[3-6]|3[2-6]|4[2-4]|[5-7][2-5])48\\\\d{5}\",\n, , , \"91234567\", , , [8, 9]], [, , \"1800(?:1\\\\d|2[019])\\\\d{4}\", , , , \"1800123456\", , , [10]], [, , \"1900(?:1\\\\d|2[09])\\\\d{4}\", , , , \"1900123456\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"KH\", 855, \"00[14-9]\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{3,4})\", \"$1 $2 $3\", [\"[1-9]\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"1\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , ,\n, , [-1]]], KI:[, [, , \"(?:[37]\\\\d|6[0-79])\\\\d{6}|(?:[2-48]\\\\d|50)\\\\d{3}\", , , , , , , [5, 8]], [, , \"(?:[24]\\\\d|3[1-9]|50|65(?:02[12]|12[56]|22[89]|[3-5]00)|7(?:27\\\\d\\\\d|3100|5(?:02[12]|12[56]|22[89]|[34](?:00|81)|500))|8[0-5])\\\\d{3}\", , , , \"31234\"], [, , \"73140\\\\d{3}|(?:630[01]|730[0-5])\\\\d{4}|[67]200[01]\\\\d{3}\", , , , \"72001234\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"30(?:0[01]\\\\d\\\\d|12(?:11|20))\\\\d\\\\d\", , , , \"30010000\",\n, , [8]], \"KI\", 686, \"00\", \"0\", , , \"0\", , , , , , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], KM:[, [, , \"[3478]\\\\d{6}\", , , , , , , [7]], [, , \"7[4-7]\\\\d{5}\", , , , \"7712345\"], [, , \"[34]\\\\d{6}\", , , , \"3212345\"], [, , , , , , , , , [-1]], [, , \"8\\\\d{6}\", , , , \"8001234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"KM\", 269, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3\", [\"[3478]\"]]],\n, [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], KN:[, [, , \"(?:[58]\\\\d\\\\d|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"869(?:2(?:29|36)|302|4(?:6[015-9]|70))\\\\d{4}\", , , , \"8692361234\", , , , [7]], [, , \"869(?:5(?:5[6-8]|6[5-7])|66\\\\d|76[02-7])\\\\d{4}\", , , , \"8697652917\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\",\n, , , \"5002345678\"], [, , , , , , , , , [-1]], \"KN\", 1, \"011\", \"1\", , , \"1|([2-7]\\\\d{6})$\", \"869$1\", , , , , [, , , , , , , , , [-1]], , \"869\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], KP:[, [, , \"85\\\\d{6}|(?:19\\\\d|2)\\\\d{7}\", , , , , , , [8, 10], [6, 7]], [, , \"(?:2\\\\d|85)\\\\d{6}\", , , , \"21234567\", , , [8], [6, 7]], [, , \"19[1-3]\\\\d{7}\", , , , \"1921234567\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , ,\n, , , , [-1]], [, , , , , , , , , [-1]], \"KP\", 850, \"00|99\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"8\"], \"0$1\"], [, \"(\\\\d)(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"2\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"1\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , \"238[02-9]\\\\d{4}|2(?:[0-24-9]\\\\d|3[0-79])\\\\d{5}\", , , , , , , [8]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], KR:[, [, , \"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}\",\n, , , , , , [5, 6, 8, 9, 10, 11, 12, 13, 14], [3, 4, 7]], [, , \"(?:2|3[1-3]|[46][1-4]|5[1-5])[1-9]\\\\d{6,7}|(?:3[1-3]|[46][1-4]|5[1-5])1\\\\d{2,3}\", , , , \"22123456\", , , [5, 6, 8, 9, 10], [3, 4, 7]], [, , \"10[01]\\\\d{6}|1(?:0[2-9]|[126-9]\\\\d)\\\\d{6,7}\", , , , \"1020000000\", , , [9, 10]], [, , \"00(?:308\\\\d{6,7}|798\\\\d{7,9})|(?:00368|80)\\\\d{7}\", , , , \"801234567\", , , [9, 11, 12, 13, 14]], [, , \"60[2-9]\\\\d{6}\", , , , \"602345678\", , , [9]], [, , , , , , , , , [-1]], [, , \"50\\\\d{8,9}\", , , , \"5012345678\",\n, , [10, 11]], [, , \"70\\\\d{8}\", , , , \"7012345678\", , , [10]], \"KR\", 82, \"00(?:[125689]|3(?:[46]5|91)|7(?:00|27|3|55|6[126]))\", \"0\", , , \"0(8(?:[1-46-8]|5\\\\d\\\\d))?\", , , , [[, \"(\\\\d{5})\", \"$1\", [\"1[016-9]1\", \"1[016-9]11\", \"1[016-9]114\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3,4})\", \"$1-$2\", [\"(?:3[1-3]|[46][1-4]|5[1-5])1\"], \"0$1\", \"0$CC-$1\"], [, \"(\\\\d{4})(\\\\d{4})\", \"$1-$2\", [\"1\"]], [, \"(\\\\d)(\\\\d{3,4})(\\\\d{4})\", \"$1-$2-$3\", [\"2\"], \"0$1\", \"0$CC-$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"60|8\"], \"0$1\",\n\"0$CC-$1\"], [, \"(\\\\d{2})(\\\\d{3,4})(\\\\d{4})\", \"$1-$2-$3\", [\"[1346]|5[1-5]\"], \"0$1\", \"0$CC-$1\"], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1-$2-$3\", [\"[57]\"], \"0$1\", \"0$CC-$1\"], [, \"(\\\\d{5})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"003\", \"0030\"]], [, \"(\\\\d{2})(\\\\d{5})(\\\\d{4})\", \"$1-$2-$3\", [\"5\"], \"0$1\", \"0$CC-$1\"], [, \"(\\\\d{5})(\\\\d{3,4})(\\\\d{4})\", \"$1 $2 $3\", [\"0\"]], [, \"(\\\\d{5})(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3 $4\", [\"0\"]]], [[, \"(\\\\d{2})(\\\\d{3,4})\", \"$1-$2\", [\"(?:3[1-3]|[46][1-4]|5[1-5])1\"], \"0$1\", \"0$CC-$1\"],\n[, \"(\\\\d{4})(\\\\d{4})\", \"$1-$2\", [\"1\"]], [, \"(\\\\d)(\\\\d{3,4})(\\\\d{4})\", \"$1-$2-$3\", [\"2\"], \"0$1\", \"0$CC-$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"60|8\"], \"0$1\", \"0$CC-$1\"], [, \"(\\\\d{2})(\\\\d{3,4})(\\\\d{4})\", \"$1-$2-$3\", [\"[1346]|5[1-5]\"], \"0$1\", \"0$CC-$1\"], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1-$2-$3\", [\"[57]\"], \"0$1\", \"0$CC-$1\"], [, \"(\\\\d{2})(\\\\d{5})(\\\\d{4})\", \"$1-$2-$3\", [\"5\"], \"0$1\", \"0$CC-$1\"]], [, , \"15\\\\d{7,8}\", , , , \"1523456789\", , , [9, 10]], , , [, , \"00(?:3(?:08\\\\d{6,7}|68\\\\d{7})|798\\\\d{7,9})\",\n, , , , , , [11, 12, 13, 14]], [, , \"1(?:5(?:22|44|66|77|88|99)|6(?:[07]0|44|6[16]|88)|8(?:00|33|55|77|99))\\\\d{4}\", , , , \"15441234\", , , [8]], , , [, , , , , , , , , [-1]]], KW:[, [, , \"(?:18|[2569]\\\\d\\\\d)\\\\d{5}\", , , , , , , [7, 8]], [, , \"2(?:[23]\\\\d\\\\d|4(?:[1-35-9]\\\\d|44)|5(?:0[034]|[2-46]\\\\d|5[1-3]|7[1-7]))\\\\d{4}\", , , , \"22345678\", , , [8]], [, , \"(?:52(?:22|5[25])|6(?:222|70[013-9]|93[039])|9(?:11[01]|333|702))\\\\d{4}|(?:5(?:[05]\\\\d|1[0-7]|6[56])|6(?:0[034679]|5[015-9]|6\\\\d|7[67]|9[069])|9(?:0[09]|22|4[01479]|55|6[0679]|7[1-9]|8[057-9]|9\\\\d))\\\\d{5}\",\n, , , \"50012345\", , , [8]], [, , \"18\\\\d{5}\", , , , \"1801234\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"KW\", 965, \"00\", , , , , , , , [[, \"(\\\\d{4})(\\\\d{3,4})\", \"$1 $2\", [\"[169]|2(?:[235]|4[1-35-9])|52\"]], [, \"(\\\\d{3})(\\\\d{5})\", \"$1 $2\", [\"[25]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], KY:[, [, , \"(?:345|[58]\\\\d\\\\d|900)\\\\d{7}\", , , , , , , [10], [7]],\n[, , \"345(?:2(?:22|44)|444|6(?:23|38|40)|7(?:4[35-79]|6[6-9]|77)|8(?:00|1[45]|25|[48]8)|9(?:14|4[035-9]))\\\\d{4}\", , , , \"3452221234\", , , , [7]], [, , \"345(?:32[1-9]|5(?:1[67]|2[5-79]|4[6-9]|50|76)|649|9(?:1[67]|2[2-9]|3[689]))\\\\d{4}\", , , , \"3453231234\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002345678\"], [, , \"(?:345976|900[2-9]\\\\d\\\\d)\\\\d{4}\", , , , \"9002345678\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , ,\n, , , , [-1]], \"KY\", 1, \"011\", \"1\", , , \"1|([2-9]\\\\d{6})$\", \"345$1\", , , , , [, , \"345849\\\\d{4}\", , , , \"3458491234\"], , \"345\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], KZ:[, [, , \"33622\\\\d{5}|(?:7\\\\d|80)\\\\d{8}\", , , , , , , [10], [5, 6]], [, , \"(?:33622|7(?:1(?:0(?:[23]\\\\d|4[0-3]|59|63)|1(?:[23]\\\\d|4[0-79]|59)|2(?:[23]\\\\d|59)|3(?:2\\\\d|3[0-79]|4[0-35-9]|59)|4(?:[24]\\\\d|3[013-9]|5[1-9])|5(?:2\\\\d|3[1-9]|4[0-7]|59)|6(?:[2-4]\\\\d|5[19]|61)|72\\\\d|8(?:[27]\\\\d|3[1-46-9]|4[0-5]))|2(?:1(?:[23]\\\\d|4[46-9]|5[3469])|2(?:2\\\\d|3[0679]|46|5[12679])|3(?:[2-4]\\\\d|5[139])|4(?:2\\\\d|3[1-35-9]|59)|5(?:[23]\\\\d|4[0-246-8]|59|61)|6(?:2\\\\d|3[1-9]|4[0-4]|59)|7(?:[2379]\\\\d|40|5[279])|8(?:[23]\\\\d|4[0-3]|59)|9(?:2\\\\d|3[124578]|59))))\\\\d{5}\",\n, , , \"7123456789\", , , , [5, 6]], [, , \"7(?:0[0-25-8]|47|6[02-4]|7[15-8]|85)\\\\d{7}\", , , , \"7710009998\"], [, , \"800\\\\d{7}\", , , , \"8001234567\"], [, , \"809\\\\d{7}\", , , , \"8091234567\"], [, , , , , , , , , [-1]], [, , \"808\\\\d{7}\", , , , \"8081234567\"], [, , \"751\\\\d{7}\", , , , \"7511234567\"], \"KZ\", 7, \"810\", \"8\", , , \"8\", , \"8~10\", , , , [, , , , , , , , , [-1]], , \"33|7\", [, , \"751\\\\d{7}\"], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], LA:[, [, , \"(?:2\\\\d|3)\\\\d{8}|(?:[235-8]\\\\d|41)\\\\d{6}\",\n, , , , , , [8, 9, 10], [6]], [, , \"(?:2[13]|[35-7][14]|41|8[1468])\\\\d{6}\", , , , \"21212862\", , , [8], [6]], [, , \"20(?:[29]\\\\d|5[24-689]|7[6-8])\\\\d{6}\", , , , \"2023123456\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"LA\", 856, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"2[13]|3[14]|[4-8]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{3})\", \"$1 $2 $3 $4\", [\"3\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{3})(\\\\d{3})\",\n\"$1 $2 $3 $4\", [\"2\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"30\\\\d{7}\", , , , \"301234567\", , , [9]], , , [, , , , , , , , , [-1]]], LB:[, [, , \"[7-9]\\\\d{7}|[13-9]\\\\d{6}\", , , , , , , [7, 8]], [, , \"(?:(?:[14-69]\\\\d|8[02-9])\\\\d|7(?:[2-57]\\\\d|62|8[0-7]|9[04-9]))\\\\d{4}\", , , , \"1123456\", , , [7]], [, , \"(?:(?:3|81)\\\\d|7(?:[01]\\\\d|6[013-9]|8[89]|9[1-3]))\\\\d{5}\", , , , \"71123456\"], [, , , , , , , , , [-1]], [, , \"9[01]\\\\d{6}\", , , , \"90123456\", , , [8]], [, , \"80\\\\d{6}\",\n, , , \"80123456\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"LB\", 961, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\", [\"[7-9]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], LC:[, [, , \"(?:[58]\\\\d\\\\d|758|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"758(?:4(?:30|5\\\\d|6[2-9]|8[0-2])|57[0-2]|638)\\\\d{4}\",\n, , , \"7584305678\", , , , [7]], [, , \"758(?:28[4-7]|384|4(?:6[01]|8[4-9])|5(?:1[89]|20|84)|7(?:1[2-9]|2\\\\d|3[01]))\\\\d{4}\", , , , \"7582845678\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"LC\", 1, \"011\", \"1\", , , \"1|([2-7]\\\\d{6})$\", \"758$1\", , , , , [, , , , , , , , , [-1]], , \"758\", [, , , , , , , , ,\n[-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], LI:[, [, , \"90\\\\d{5}|(?:[2378]|6\\\\d\\\\d)\\\\d{6}\", , , , , , , [7, 9]], [, , \"(?:2(?:01|1[27]|22|3\\\\d|6[02-578]|96)|3(?:33|40|7[0135-7]|8[048]|9[0269]))\\\\d{4}\", , , , \"2345678\", , , [7]], [, , \"756\\\\d{4}|(?:6(?:499|5[0-3]\\\\d|6(?:0[0-7]|10|2[06-9]|39))|7[37-9])\\\\d{5}\", , , , \"660234567\"], [, , \"80(?:02[28]|9\\\\d\\\\d)\\\\d\\\\d\", , , , \"8002222\", , , [7]], [, , \"90(?:02[258]|1(?:23|3[14])|66[136])\\\\d\\\\d\", , , , \"9002222\", , , [7]], [, , , , , ,\n, , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"LI\", 423, \"00\", \"0\", , , \"0|(10(?:01|20|66))\", , , , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3\", [\"[237-9]\"], , \"$CC $1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"69\"], , \"$CC $1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"6\"], , \"$CC $1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"870(?:28|87)\\\\d\\\\d\", , , , \"8702812\", , , [7]], , , [, , \"697(?:56|[78]\\\\d)\\\\d{4}\", , , , \"697861234\", , , [9]]], LK:[,\n[, , \"(?:[1-7]\\\\d|[89]1)\\\\d{7}\", , , , , , , [9], [7]], [, , \"(?:[189]1|2[13-7]|3[1-8]|4[157]|5[12457]|6[35-7])[2-57]\\\\d{6}\", , , , \"112345678\", , , , [7]], [, , \"7[0-25-8]\\\\d{7}\", , , , \"712345678\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"LK\", 94, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\"]], , [, , , ,\n, , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"1973\\\\d{5}\", , , , \"197312345\"], , , [, , , , , , , , , [-1]]], LR:[, [, , \"(?:2|33|5\\\\d|77|88)\\\\d{7}|[45]\\\\d{6}\", , , , , , , [7, 8, 9]], [, , \"(?:2\\\\d{3}|33333)\\\\d{4}\", , , , \"21234567\", , , [8, 9]], [, , \"(?:(?:330|555|(?:77|88)\\\\d)\\\\d|4[67])\\\\d{5}|5\\\\d{6}\", , , , \"770123456\", , , [7, 9]], [, , , , , , , , , [-1]], [, , \"332(?:02|[34]\\\\d)\\\\d{4}\", , , , \"332021234\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , ,\n, , [-1]], \"LR\", 231, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d)(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[45]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"2\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[3578]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], LS:[, [, , \"(?:[256]\\\\d\\\\d|800)\\\\d{5}\", , , , , , , [8]], [, , \"2\\\\d{7}\", , , , \"22123456\"], [, , \"[56]\\\\d{7}\", , , , \"50123456\"], [, , \"800[256]\\\\d{4}\", , ,\n, \"80021234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"LS\", 266, \"00\", , , , , , , , [[, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[2568]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], LT:[, [, , \"(?:[3469]\\\\d|52|[78]0)\\\\d{6}\", , , , , , , [8]], [, , \"(?:3[1478]|4[124-6]|52)\\\\d{6}\", , , , \"31234567\"], [, , \"6\\\\d{7}\", , , , \"61234567\"], [, , \"800\\\\d{5}\", , , , \"80012345\"],\n[, , \"9(?:0[0239]|10)\\\\d{5}\", , , , \"90012345\"], [, , \"808\\\\d{5}\", , , , \"80812345\"], [, , \"700\\\\d{5}\", , , , \"70012345\"], [, , , , , , , , , [-1]], \"LT\", 370, \"00\", \"8\", , , \"[08]\", , , , [[, \"(\\\\d)(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"52[0-79]\"], \"(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]], , [, , , , , , , , , [-1]], , , [, , , ,\n, , , , , [-1]], [, , \"70[67]\\\\d{5}\", , , , \"70712345\"], , , [, , , , , , , , , [-1]]], LU:[, [, , \"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]], [, , \"(?:35[013-9]|80[2-9]|90[89])\\\\d{1,8}|(?:2[2-9]|3[0-46-9]|[457]\\\\d|8[13-9]|9[2-579])\\\\d{2,9}\", , , , \"27123456\"], [, , \"6(?:[269][18]|5[158]|7[189]|81)\\\\d{6}\", , , , \"628123456\", , , [9]], [, , \"800\\\\d{5}\", , , , \"80012345\", , , [8]], [, , \"90[015]\\\\d{5}\", , , , \"90012345\", , , [8]],\n[, , \"801\\\\d{5}\", , , , \"80112345\", , , [8]], [, , , , , , , , , [-1]], [, , \"20(?:1\\\\d{5}|[2-689]\\\\d{1,7})\", , , , \"20201234\", , , [4, 5, 6, 7, 8, 9, 10]], \"LU\", 352, \"00\", , , , \"(15(?:0[06]|1[12]|[35]5|4[04]|6[26]|77|88|99)\\\\d)\", , , , [[, \"(\\\\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])\"], , \"$CC $1\"], [, \"(\\\\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])\"], , \"$CC $1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{3})\",\n\"$1 $2 $3\", [\"20[2-689]\"], , \"$CC $1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{1,2})\", \"$1 $2 $3 $4\", [\"2(?:[0367]|4[3-8])\"], , \"$CC $1\"], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{3})\", \"$1 $2 $3\", [\"80[01]|90[015]\"], , \"$CC $1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{3})\", \"$1 $2 $3 $4\", [\"20\"], , \"$CC $1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"6\"], , \"$CC $1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{1,2})\", \"$1 $2 $3 $4 $5\", [\"2(?:[0367]|4[3-8])\"], , \"$CC $1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{1,5})\", \"$1 $2 $3 $4\",\n[\"[3-57]|8[13-9]|9(?:0[89]|[2-579])|(?:2|80)[2-9]\"], , \"$CC $1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], LV:[, [, , \"(?:[268]\\\\d|90)\\\\d{6}\", , , , , , , [8]], [, , \"6\\\\d{7}\", , , , \"63123456\"], [, , \"2\\\\d{7}\", , , , \"21234567\"], [, , \"80\\\\d{6}\", , , , \"80123456\"], [, , \"90\\\\d{6}\", , , , \"90123456\"], [, , \"81\\\\d{6}\", , , , \"81123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"LV\", 371, \"00\", , , , , , , , [[,\n\"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[269]|8[01]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], LY:[, [, , \"(?:[2569]\\\\d|71)\\\\d{7}\", , , , , , , [9], [7]], [, , \"(?:2[13-5]|5[1347]|6[1-479]|71)\\\\d{7}\", , , , \"212345678\", , , , [7]], [, , \"9[1-6]\\\\d{7}\", , , , \"912345678\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"LY\", 218, \"00\", \"0\",\n, , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{7})\", \"$1-$2\", [\"[25-79]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MA:[, [, , \"[5-8]\\\\d{8}\", , , , , , , [9]], [, , \"5(?:29|38)[89]0\\\\d{4}|5(?:2(?:[015-7]\\\\d|2[2-9]|3[2-57]|4[2-46-8]|8[235-7]|90)|3(?:[0-4]\\\\d|[57][2-9]|6[2-8]|80|9[3-9])|(?:4[067]|5[03])\\\\d)\\\\d{5}\", , , , \"520123456\"], [, , \"692[12]\\\\d{5}|(?:6(?:[0-7]\\\\d|8[0-247-9]|9[013-9])|7(?:0[06-8]|6[1267]|7[0-27]))\\\\d{6}\", ,\n, , \"650123456\"], [, , \"80\\\\d{7}\", , , , \"801234567\"], [, , \"89\\\\d{7}\", , , , \"891234567\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"5924[0-2]\\\\d{4}\", , , , \"592401234\"], \"MA\", 212, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{5})(\\\\d{4})\", \"$1-$2\", [\"5(?:29|38)\", \"5(?:29|38)[89]\"], \"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\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{7})\", \"$1-$2\", [\"8\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{6})\",\n\"$1-$2\", [\"[5-7]\"], \"0$1\"]], , [, , , , , , , , , [-1]], 1, , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MC:[, [, , \"870\\\\d{5}|(?:[349]|6\\\\d)\\\\d{7}\", , , , , , , [8, 9]], [, , \"(?:870|9[2-47-9]\\\\d)\\\\d{5}\", , , , \"99123456\", , , [8]], [, , \"4(?:4\\\\d|5[1-9])\\\\d{5}|(?:3|6\\\\d)\\\\d{7}\", , , , \"612345678\"], [, , \"90\\\\d{6}\", , , , \"90123456\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"MC\", 377,\n\"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{2})\", \"$1 $2 $3\", [\"8\"]], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"4\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[39]\"]], [, \"(\\\\d)(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4 $5\", [\"6\"], \"0$1\"]], [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"4\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[39]\"]], [, \"(\\\\d)(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4 $5\", [\"6\"], \"0$1\"]], [, , , , , , , , , [-1]],\n, , [, , \"870\\\\d{5}\", , , , , , , [8]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MD:[, [, , \"(?:[235-7]\\\\d|[89]0)\\\\d{6}\", , , , , , , [8]], [, , \"(?:(?:2[1-9]|3[1-79])\\\\d|5(?:33|5[257]))\\\\d{5}\", , , , \"22212345\"], [, , \"(?:562|6\\\\d\\\\d|7(?:[189]\\\\d|6[07]|7[457-9]))\\\\d{5}\", , , , \"62112345\"], [, , \"800\\\\d{5}\", , , , \"80012345\"], [, , \"90[056]\\\\d{5}\", , , , \"90012345\"], [, , \"808\\\\d{5}\", , , , \"80812345\"], [, , , , , , , , , [-1]], [, , \"3[08]\\\\d{6}\", , , , \"30123456\"], \"MD\", 373, \"00\",\n\"0\", , , \"0\", , , , [[, \"(\\\\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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"803\\\\d{5}\", , , , \"80312345\"], , , [, , , , , , , , , [-1]]], ME:[, [, , \"(?:20|[3-79]\\\\d)\\\\d{6}|80\\\\d{6,7}\", , , , , , , [8, 9], [6]], [, , \"(?:20[2-8]|3(?:[0-2][2-7]|3[24-7])|4(?:0[2-467]|1[2467])|5(?:[01][2467]|2[2-467]))\\\\d{5}\", , , , \"30234567\",\n, , [8], [6]], [, , \"6(?:00|3[024]|6[0-25]|[7-9]\\\\d)\\\\d{5}\", , , , \"67622901\", , , [8]], [, , \"80(?:[0-2578]|9\\\\d)\\\\d{5}\", , , , \"80080002\"], [, , \"9(?:4[1568]|5[178])\\\\d{5}\", , , , \"94515151\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"78[1-49]\\\\d{5}\", , , , \"78108780\", , , [8]], \"ME\", 382, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{3,4})\", \"$1 $2 $3\", [\"[2-9]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"77[1-9]\\\\d{5}\", , , , \"77273012\",\n, , [8]], , , [, , , , , , , , , [-1]]], MF:[, [, , \"(?:590|69\\\\d)\\\\d{6}\", , , , , , , [9]], [, , \"590(?:0[079]|[14]3|[27][79]|30|5[0-268]|87)\\\\d{4}\", , , , \"590271234\"], [, , \"69(?:0\\\\d\\\\d|1(?:2[29]|3[0-5]))\\\\d{4}\", , , , \"690001234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"MF\", 590, \"00\", \"0\", , , \"0\", , , , , , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , ,\n, , , , , , [-1]]], MG:[, [, , \"[23]\\\\d{8}\", , , , , , , [9], [7]], [, , \"2072[29]\\\\d{4}|20(?:2\\\\d|4[47]|5[3467]|6[279]|7[35]|8[268]|9[245])\\\\d{5}\", , , , \"202123456\", , , , [7]], [, , \"3[2-49]\\\\d{7}\", , , , \"321234567\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"22\\\\d{7}\", , , , \"221234567\"], \"MG\", 261, \"00\", \"0\", , , \"0|([24-9]\\\\d{6})$\", \"20$1\", , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{3})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[23]\"], \"0$1\"]], , [,\n, , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MH:[, [, , \"329\\\\d{4}|(?:[256]\\\\d|45)\\\\d{5}\", , , , , , , [7]], [, , \"(?:247|528|625)\\\\d{4}\", , , , \"2471234\"], [, , \"(?:(?:23|54)5|329|45[56])\\\\d{4}\", , , , \"2351234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"635\\\\d{4}\", , , , \"6351234\"], \"MH\", 692, \"011\", \"1\", , , \"1\", , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1-$2\", [\"[2-6]\"]]],\n, [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MK:[, [, , \"[2-578]\\\\d{7}\", , , , , , , [8], [6, 7]], [, , \"(?:2(?:[23]\\\\d|5[0-24578]|6[01]|82)|3(?:1[3-68]|[23][2-68]|4[23568])|4(?:[23][2-68]|4[3-68]|5[2568]|6[25-8]|7[24-68]|8[4-68]))\\\\d{5}\", , , , \"22012345\", , , , [6, 7]], [, , \"7(?:(?:[0-25-8]\\\\d|3[2-4]|9[23])\\\\d|4(?:21|60))\\\\d{4}\", , , , \"72345678\"], [, , \"800\\\\d{5}\", , , , \"80012345\"], [, , \"5[02-9]\\\\d{6}\", , , , \"50012345\"],\n[, , \"8(?:0[1-9]|[1-9]\\\\d)\\\\d{5}\", , , , \"80123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"MK\", 389, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d)(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"2\"], \"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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], ML:[, [, , \"(?:[246-9]\\\\d|50)\\\\d{6}\", , , , , , , [8]],\n[, , \"2(?:07[0-8]|12[67])\\\\d{4}|(?:2(?:02|1[4-689])|4(?:0[0-4]|4[1-39]))\\\\d{5}\", , , , \"20212345\"], [, , \"2(?:079|17\\\\d)\\\\d{4}|(?:50|[679]\\\\d|8[239])\\\\d{6}\", , , , \"65012345\"], [, , \"80\\\\d{6}\", , , , \"80012345\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"ML\", 223, \"00\", , , , , , , , [[, \"(\\\\d{4})\", \"$1\", [\"67[057-9]|74[045]\", \"67(?:0[09]|[59]9|77|8[89])|74(?:0[02]|44|55)\"]], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[24-9]\"]]],\n[[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[24-9]\"]]], [, , , , , , , , , [-1]], , , [, , \"80\\\\d{6}\"], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MM:[, [, , \"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], [5]], [, , \"(?:1(?:(?:2\\\\d|3[56]|[89][0-6])\\\\d|4(?:2[2-469]|39|46|6[25]|7[0-2])|6)|2(?:2(?:00|8[34])|4(?:0\\\\d|2[246]|39|46|62|7[0-2])|51\\\\d\\\\d)|4(?:2(?:2\\\\d\\\\d|48[0-2])|[34]20\\\\d)|6(?:0(?:[23]|88\\\\d)|(?:124|320|[56]2\\\\d)\\\\d|247[23]|4(?:2[04]\\\\d|47[23])|7(?:(?:3\\\\d|8[01459])\\\\d|4(?:39|60|7[01])))|8(?:[1-3]2\\\\d|5(?:2\\\\d|4[1-9]|51))\\\\d)\\\\d{4}|5(?:2(?:2\\\\d{5,6}|47[023]\\\\d{4})|(?:347[23]|42(?:1|86)|(?:522|[68]20)\\\\d|7(?:20\\\\d|48[0-2])|9(?:20\\\\d|47[01]))\\\\d{4})|7(?:120\\\\d{4,5}|(?:425\\\\d|5(?:202|96\\\\d))\\\\d{4})|(?:(?:1[2-6]\\\\d|4(?:2[24-8]|356|[46][2-6]|5[35])|5(?:[27][2-8]|3[2-68]|4[25-8]|5[23]|6[2-4]|8[25-7]|9[2-7])|6(?:[19]20|42[03-6]|(?:52|7[45])\\\\d)|7(?:[04][25-8]|[15][235-7]|22|3[2-4]))\\\\d|8(?:[135]2\\\\d\\\\d|2(?:2\\\\d\\\\d|320)))\\\\d{3}|25\\\\d{5,6}|(?:2[2-9]|43[235-7]|6(?:1[2356]|[24][2-6]|3[256]|5[2-4]|6[2-8]|7[235-7]|8[245]|9[24])|8(?:1[235689]|2[2-8]|32|4[24-7]|5[245]|6[23]))\\\\d{4}|(?:4[35]|5[48]|63|7[0145]|8[13])470\\\\d{4}|(?:4[35]|5[48]|63|7[0145]|8[13])4\\\\d{4}\",\n, , , \"1234567\", , , [6, 7, 8, 9], [5]], [, , \"(?:17[01]|9(?:2(?:[0-4]|[56]\\\\d\\\\d)|(?:3(?:[0-36]|4\\\\d)|6[7-9]\\\\d|7(?:3|5[0-2]|[6-9]\\\\d)|8(?:8[7-9]|9\\\\d))\\\\d|4(?:(?:[0245]\\\\d|[1379])\\\\d|88)|5[0-6]|9(?:[089]|[5-7]\\\\d\\\\d))\\\\d)\\\\d{4}|9[69]1\\\\d{6}|9[68]\\\\d{6}\", , , , \"92123456\", , , [7, 8, 9, 10]], [, , \"80080(?:[01][1-9]|2\\\\d)\\\\d{3}\", , , , \"8008001234\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"1333\\\\d{4}|[12]468\\\\d{4}\", , , , \"13331234\", , , [8]],\n\"MM\", 95, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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})\",\n\"$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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MN:[, [, , \"[12]\\\\d{7,9}|[57-9]\\\\d{7}\", , , , , , , [8, 9, 10], [4, 5, 6]], [, , \"[12](?:3[2-8]|4[2-68]|5[1-4689])\\\\d{6,7}|(?:11(?:3\\\\d|4[568])|(?:(?:21|5[0568])\\\\d|70[0-5])\\\\d)\\\\d{4}|[12]2(?:[1-3]\\\\d{5,6}|7\\\\d{6})\", , , , \"50123456\", ,\n, , [4, 5, 6]], [, , \"(?:8(?:[05689]\\\\d|3[01])|9(?:[014-9]\\\\d|20|3[0-4]))\\\\d{5}\", , , , \"88123456\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"7(?:100|5(?:0[0579]|1[015]|[389]5|[57][57])|(?:6[0167]|7\\\\d|8[01])\\\\d)\\\\d{4}\", , , , \"75153456\", , , [8]], \"MN\", 976, \"001\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{4})\", \"$1 $2 $3\", [\"[12]1\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[57-9]\"]], [, \"(\\\\d{3})(\\\\d{5,6})\", \"$1 $2\",\n[\"[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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MO:[, [, , \"(?:28|[68]\\\\d)\\\\d{6}\", , , , , , , [8]], [, , \"(?:28[2-57-9]|8(?:11|[2-57-9]\\\\d))\\\\d{5}\", , , , \"28212345\"], [, , \"6(?:[2356]\\\\d\\\\d|8(?:[02][5-9]|[1478]\\\\d|[356][0-4]))\\\\d{4}\",\n, , , \"66123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"MO\", 853, \"00\", , , , , , , , [[, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[268]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MP:[, [, , \"[58]\\\\d{9}|(?:67|90)0\\\\d{7}\", , , , , , , [10], [7]], [, , \"670(?:2(?:3[3-7]|56|8[5-8])|32[1-38]|4(?:33|8[348])|5(?:32|55|88)|6(?:64|70|82)|78[3589]|8[3-9]8|989)\\\\d{4}\",\n, , , \"6702345678\", , , , [7]], [, , \"670(?:2(?:3[3-7]|56|8[5-8])|32[1-38]|4(?:33|8[348])|5(?:32|55|88)|6(?:64|70|82)|78[3589]|8[3-9]8|989)\\\\d{4}\", , , , \"6702345678\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"MP\", 1, \"011\", \"1\", , , \"1|([2-9]\\\\d{6})$\", \"670$1\", , 1, , , [, , , , , , , , , [-1]], ,\n\"670\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MQ:[, [, , \"(?:596|69\\\\d)\\\\d{6}\", , , , , , , [9]], [, , \"596(?:0[0-7]|10|2[7-9]|3[05-9]|4[0-46-8]|[5-7]\\\\d|8[09]|9[4-8])\\\\d{4}\", , , , \"596301234\"], [, , \"69(?:6(?:[0-47-9]\\\\d|5[0-6]|6[0-4])|727)\\\\d{4}\", , , , \"696201234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"MQ\", 596, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\n\"$1 $2 $3 $4\", [\"[56]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MR:[, [, , \"(?:[2-4]\\\\d\\\\d|800)\\\\d{5}\", , , , , , , [8]], [, , \"(?:25[08]|35\\\\d|45[1-7])\\\\d{5}\", , , , \"35123456\"], [, , \"[2-4][0-46-9]\\\\d{6}\", , , , \"22123456\"], [, , \"800\\\\d{5}\", , , , \"80012345\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"MR\", 222, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\n\"$1 $2 $3 $4\", [\"[2-48]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MS:[, [, , \"66449\\\\d{5}|(?:[58]\\\\d\\\\d|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"664491\\\\d{4}\", , , , \"6644912345\", , , , [7]], [, , \"66449[2-6]\\\\d{4}\", , , , \"6644923456\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\",\n, , , \"5002345678\"], [, , , , , , , , , [-1]], \"MS\", 1, \"011\", \"1\", , , \"1|(4\\\\d{6})$\", \"664$1\", , , , , [, , , , , , , , , [-1]], , \"664\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MT:[, [, , \"3550\\\\d{4}|(?:[2579]\\\\d\\\\d|800)\\\\d{5}\", , , , , , , [8]], [, , \"2(?:0(?:[19]\\\\d|3[1-4]|6[059])|[1-357]\\\\d\\\\d)\\\\d{4}\", , , , \"21001234\"], [, , \"(?:7(?:210|[79]\\\\d\\\\d)|9(?:2(?:1[01]|31)|69[67]|8(?:1[1-3]|89|97)|9\\\\d\\\\d))\\\\d{4}\", , , , \"96961234\"], [, , \"800[3467]\\\\d{4}\",\n, , , \"80071234\"], [, , \"5(?:0(?:0(?:37|43)|(?:6\\\\d|70|9[0168])\\\\d)|[12]\\\\d0[1-5])\\\\d{3}\", , , , \"50037123\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"3550\\\\d{4}\", , , , \"35501234\"], \"MT\", 356, \"00\", , , , , , , , [[, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[2357-9]\"]]], , [, , \"7117\\\\d{4}\", , , , \"71171234\"], , , [, , , , , , , , , [-1]], [, , \"501\\\\d{5}\", , , , \"50112345\"], , , [, , , , , , , , , [-1]]], MU:[, [, , \"(?:[2-468]|5\\\\d)\\\\d{6}\", , , , , , , [7, 8]], [, , \"(?:2(?:[03478]\\\\d|1[0-7]|6[0-79])|4(?:[013568]\\\\d|2[4-7])|54(?:[34]\\\\d|71)|6\\\\d\\\\d|8(?:14|3[129]))\\\\d{4}\",\n, , , \"54480123\"], [, , \"5(?:4(?:2[1-389]|7[1-9])|87[15-8])\\\\d{4}|5(?:2[589]|4[3489]|7\\\\d|8[0-689]|9[0-8])\\\\d{5}\", , , , \"52512345\", , , [8]], [, , \"80[0-2]\\\\d{4}\", , , , \"8001234\", , , [7]], [, , \"30\\\\d{5}\", , , , \"3012345\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"3(?:20|9\\\\d)\\\\d{4}\", , , , \"3201234\", , , [7]], \"MU\", 230, \"0(?:0|[24-7]0|3[03])\", , , , , , \"020\", , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[2-46]|8[013]\"]], [, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"5\"]]], , [, , , ,\n, , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MV:[, [, , \"(?:800|9[0-57-9]\\\\d)\\\\d{7}|[34679]\\\\d{6}\", , , , , , , [7, 10]], [, , \"(?:3(?:0[0-3]|3[0-59])|6(?:[57][02468]|6[024-68]|8[024689]))\\\\d{4}\", , , , \"6701234\", , , [7]], [, , \"46[46]\\\\d{4}|(?:7[2-9]|9[13-9])\\\\d{5}\", , , , \"7712345\", , , [7]], [, , \"800\\\\d{7}\", , , , \"8001234567\", , , [10]], [, , \"900\\\\d{7}\", , , , \"9001234567\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]],\n[, , , , , , , , , [-1]], \"MV\", 960, \"0(?:0|19)\", , , , , , \"00\", , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1-$2\", [\"[3467]|9[13-9]\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[89]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"4[05]0\\\\d{4}\", , , , \"4001234\", , , [7]], , , [, , , , , , , , , [-1]]], MW:[, [, , \"1\\\\d{6}(?:\\\\d{2})?|(?:[23]1|77|88|99)\\\\d{7}\", , , , , , , [7, 9]], [, , \"(?:1[2-9]|21\\\\d\\\\d)\\\\d{5}\", , , , \"1234567\"], [, , \"111\\\\d{6}|(?:77|88|99)\\\\d{7}\", , , , \"991234567\",\n, , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"31\\\\d{7}\", , , , \"310123456\", , , [9]], \"MW\", 265, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"3\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[17-9]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]],\n[, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MX:[, [, , \"(?:1(?:[01467]\\\\d|[2359][1-9]|8[1-79])|[2-9]\\\\d)\\\\d{8}\", , , , , , , [10, 11], [7, 8]], [, , \"(?:2(?:0[01]|2[1-9]|3[1-35-8]|4[13-9]|7[1-689]|8[1-578]|9[467])|3(?:1[1-79]|[2458][1-9]|3\\\\d|7[1-8]|9[1-5])|4(?:1[1-57-9]|[24-7][1-9]|3[1-8]|8[1-35-9]|9[2-689])|5(?:[56]\\\\d|88|9[1-79])|6(?:1[2-68]|[2-4][1-9]|5[1-3689]|6[1-57-9]|7[1-7]|8[67]|9[4-8])|7(?:[1-467][1-9]|5[13-9]|8[1-69]|9[17])|8(?:1\\\\d|2[13-689]|3[1-6]|4[124-6]|6[1246-9]|7[1-378]|9[12479])|9(?:1[346-9]|2[1-4]|3[2-46-8]|5[1348]|[69][1-9]|7[12]|8[1-8]))\\\\d{7}\",\n, , , \"2001234567\", , , [10], [7, 8]], [, , \"(?:1(?:2(?:2[1-9]|3[1-35-8]|4[13-9]|7[1-689]|8[1-578]|9[467])|3(?:1[1-79]|[2458][1-9]|3\\\\d|7[1-8]|9[1-5])|4(?:1[1-57-9]|[24-7][1-9]|3[1-8]|8[1-35-9]|9[2-689])|5(?:[56]\\\\d|88|9[1-79])|6(?:1[2-68]|[2-4][1-9]|5[1-3689]|6[1-57-9]|7[1-7]|8[67]|9[4-8])|7(?:[1-467][1-9]|5[13-9]|8[1-69]|9[17])|8(?:1\\\\d|2[13-689]|3[1-6]|4[124-6]|6[1246-9]|7[1-378]|9[12479])|9(?:1[346-9]|2[1-4]|3[2-46-8]|5[1348]|[69][1-9]|7[12]|8[1-8]))|2(?:2[1-9]|3[1-35-8]|4[13-9]|7[1-689]|8[1-578]|9[467])|3(?:1[1-79]|[2458][1-9]|3\\\\d|7[1-8]|9[1-5])|4(?:1[1-57-9]|[24-7][1-9]|3[1-8]|8[1-35-9]|9[2-689])|5(?:[56]\\\\d|88|9[1-79])|6(?:1[2-68]|[2-4][1-9]|5[1-3689]|6[1-57-9]|7[1-7]|8[67]|9[4-8])|7(?:[1-467][1-9]|5[13-9]|8[1-69]|9[17])|8(?:1\\\\d|2[13-689]|3[1-6]|4[124-6]|6[1246-9]|7[1-378]|9[12479])|9(?:1[346-9]|2[1-4]|3[2-46-8]|5[1348]|[69][1-9]|7[12]|8[1-8]))\\\\d{7}\",\n, , , \"12221234567\", , , , [7, 8]], [, , \"8(?:00|88)\\\\d{7}\", , , , \"8001234567\", , , [10]], [, , \"900\\\\d{7}\", , , , \"9001234567\", , , [10]], [, , \"300\\\\d{7}\", , , , \"3001234567\", , , [10]], [, , \"500\\\\d{7}\", , , , \"5001234567\", , , [10]], [, , , , , , , , , [-1]], \"MX\", 52, \"0[09]\", \"01\", , , \"0(?:[12]|4[45])|1\", , \"00\", , [[, \"(\\\\d{5})\", \"$1\", [\"53\"]], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"33|5[56]|81\"], , , 1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[2-9]\"], , , 1], [, \"(\\\\d)(\\\\d{2})(\\\\d{4})(\\\\d{4})\",\n\"$2 $3 $4\", [\"1(?:33|5[56]|81)\"], , , 1], [, \"(\\\\d)(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$2 $3 $4\", [\"1\"], , , 1]], [[, \"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"33|5[56]|81\"], , , 1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[2-9]\"], , , 1], [, \"(\\\\d)(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$2 $3 $4\", [\"1(?:33|5[56]|81)\"], , , 1], [, \"(\\\\d)(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$2 $3 $4\", [\"1\"], , , 1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MY:[, [,\n, \"1\\\\d{8,9}|(?:3\\\\d|[4-9])\\\\d{7}\", , , , , , , [8, 9, 10], [6, 7]], [, , \"(?:3(?:2[0-36-9]|3[0-368]|4[0-278]|5[0-24-8]|6[0-467]|7[1246-9]|8\\\\d|9[0-57])\\\\d|4(?:2[0-689]|[3-79]\\\\d|8[1-35689])|5(?:2[0-589]|[3468]\\\\d|5[0-489]|7[1-9]|9[23])|6(?:2[2-9]|3[1357-9]|[46]\\\\d|5[0-6]|7[0-35-9]|85|9[015-8])|7(?:[2579]\\\\d|3[03-68]|4[0-8]|6[5-9]|8[0-35-9])|8(?:[24][2-8]|3[2-5]|5[2-7]|6[2-589]|7[2-578]|[89][2-9])|9(?:0[57]|13|[25-7]\\\\d|[3489][0-8]))\\\\d{5}\", , , , \"323856789\", , , [8, 9], [6, 7]], [, , \"1(?:4400|8(?:47|8[27])[0-4])\\\\d{4}|1(?:0(?:[23568]\\\\d|4[0-6]|7[016-9]|9[0-8])|1(?:[1-5]\\\\d\\\\d|6(?:0[5-9]|[1-9]\\\\d))|(?:[23679][2-9]|4[235-9]|59\\\\d)\\\\d|8(?:1[23]|[236]\\\\d|4[06]|5[7-9]|7[016-9]|8[01]|9[0-8]))\\\\d{5}\",\n, , , \"123456789\", , , [9, 10]], [, , \"1[378]00\\\\d{6}\", , , , \"1300123456\", , , [10]], [, , \"1600\\\\d{6}\", , , , \"1600123456\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"154(?:6(?:0\\\\d|1[0-3])|8(?:[25]1|4[0189]|7[0-4679]))\\\\d{4}\", , , , \"1546012345\", , , [10]], \"MY\", 60, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d)(\\\\d{3})(\\\\d{4})\", \"$1-$2 $3\", [\"[4-79]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3,4})\", \"$1-$2 $3\", [\"1(?:[0249]|[367][2-9]|8[1-9])|8\"], \"0$1\"], [, \"(\\\\d)(\\\\d{4})(\\\\d{4})\",\n\"$1-$2 $3\", [\"3\"], \"0$1\"], [, \"(\\\\d)(\\\\d{3})(\\\\d{2})(\\\\d{4})\", \"$1-$2-$3-$4\", [\"1[36-8]\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1-$2 $3\", [\"15\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1-$2 $3\", [\"1\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MZ:[, [, , \"(?:2|8\\\\d)\\\\d{7}\", , , , , , , [8, 9]], [, , \"2(?:[1346]\\\\d|5[0-2]|[78][12]|93)\\\\d{5}\", , , , \"21123456\", , , [8]], [, , \"8[2-7]\\\\d{7}\", , , , \"821234567\", , , [9]],\n[, , \"800\\\\d{6}\", , , , \"800123456\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"MZ\", 258, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{3,4})\", \"$1 $2 $3\", [\"2|8[2-7]\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"8\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], NA:[, [, , \"[68]\\\\d{7,8}\", , , , , , , [8, 9]], [, , \"6(?:1(?:[02-4]\\\\d\\\\d|17)|2(?:17|54\\\\d|69|70)|3(?:17|2[0237]\\\\d|34|6[289]|7[01]|81)|4(?:17|(?:27|41|5[25])\\\\d|69|7[01])|5(?:17|2[236-8]\\\\d|69|7[01])|6(?:17|26\\\\d|38|42|69|7[01])|7(?:17|(?:2[2-4]|30)\\\\d|6[89]|7[01]))\\\\d{4}|6(?:1(?:2[2-7]|3[01378]|4[0-4]|69|7[014])|25[0-46-8]|32\\\\d|4(?:2[0-27]|4[016]|5[0-357])|52[02-9]|62[56]|7(?:2[2-69]|3[013]))\\\\d{4}\",\n, , , \"61221234\"], [, , \"(?:60|8[1245])\\\\d{7}\", , , , \"811234567\", , , [9]], [, , \"80\\\\d{7}\", , , , \"800123456\", , , [9]], [, , \"8701\\\\d{5}\", , , , \"870123456\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"8(?:3\\\\d\\\\d|86)\\\\d{5}\", , , , \"88612345\"], \"NA\", 264, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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})\",\n\"$1 $2 $3\", [\"8\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], NC:[, [, , \"[2-57-9]\\\\d{5}\", , , , , , , [6]], [, , \"(?:2[03-9]|3[0-5]|4[1-7]|88)\\\\d{4}\", , , , \"201234\"], [, , \"(?:5[0-4]|[79]\\\\d|8[0-79])\\\\d{4}\", , , , \"751234\"], [, , , , , , , , , [-1]], [, , \"36\\\\d{4}\", , , , \"366711\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"NC\", 687, \"00\", , , , , , , , [[, \"(\\\\d{3})\", \"$1\", [\"5[6-8]\"]],\n[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1.$2.$3\", [\"[2-57-9]\"]]], [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1.$2.$3\", [\"[2-57-9]\"]]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], NE:[, [, , \"[0289]\\\\d{7}\", , , , , , , [8]], [, , \"2(?:0(?:20|3[1-8]|4[13-5]|5[14]|6[14578]|7[1-578])|1(?:4[145]|5[14]|6[14-68]|7[169]|88))\\\\d{4}\", , , , \"20201234\"], [, , \"(?:8[014589]|9\\\\d)\\\\d{6}\", , , , \"93123456\"], [, , \"08\\\\d{6}\", , , , \"08123456\"], [, , \"09\\\\d{6}\",\n, , , \"09123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"NE\", 227, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"08\"]], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[089]|2[01]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], NF:[, [, , \"[13]\\\\d{5}\", , , , , , , [6], [5]], [, , \"(?:1(?:06|17|28|39)|3[0-2]\\\\d)\\\\d{3}\", , , , \"106609\", , , , [5]], [, , \"3[58]\\\\d{4}\",\n, , , \"381234\", , , , [5]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"NF\", 672, \"00\", , , , \"([0-258]\\\\d{4})$\", \"3$1\", , , [[, \"(\\\\d{2})(\\\\d{4})\", \"$1 $2\", [\"1\"]], [, \"(\\\\d)(\\\\d{5})\", \"$1 $2\", [\"3\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], NG:[, [, , \"(?:[124-7]|9\\\\d{3})\\\\d{6}|[1-9]\\\\d{7}|[78]\\\\d{9,13}\", , , , , , , [7, 8, 10, 11, 12,\n13, 14], [5, 6]], [, , \"(?:(?:[1-356]\\\\d|4[02-8]|7[0-79]|8[2-9])\\\\d|9(?:0[3-9]|[1-9]\\\\d))\\\\d{5}|(?:[12]\\\\d|4[147]|5[14579]|6[1578]|7[0-3578])\\\\d{5}\", , , , \"18040123\", , , [7, 8], [5, 6]], [, , \"(?:707[0-3]|8(?:01|19)[01])\\\\d{6}|(?:70[1-689]|8(?:0[2-9]|1[0-8])|90[1-35-9])\\\\d{7}\", , , , \"8021234567\", , , [10]], [, , \"800\\\\d{7,11}\", , , , \"80017591759\", , , [10, 11, 12, 13, 14]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"NG\", 234, \"009\",\n\"0\", , , \"0\", , , , [[, \"(\\\\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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"700\\\\d{7,11}\", ,\n, , \"7001234567\", , , [10, 11, 12, 13, 14]], , , [, , , , , , , , , [-1]]], NI:[, [, , \"(?:1800|[25-8]\\\\d{3})\\\\d{4}\", , , , , , , [8]], [, , \"2\\\\d{7}\", , , , \"21234567\"], [, , \"(?:5(?:5[0-7]|[78]\\\\d)|6(?:20|3[035]|4[045]|5[05]|77|8[1-9]|9[059])|(?:7[5-8]|8\\\\d)\\\\d)\\\\d{5}\", , , , \"81234567\"], [, , \"1800\\\\d{4}\", , , , \"18001234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"NI\", 505, \"00\", , , , , , , , [[, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[125-8]\"]]],\n, [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], NL:[, [, , \"(?:[124-7]\\\\d\\\\d|3(?:[02-9]\\\\d|1[0-8]))\\\\d{6}|[89]\\\\d{6,9}|1\\\\d{4,5}\", , , , , , , [5, 6, 7, 8, 9, 10]], [, , \"(?:1(?:[035]\\\\d|1[13-578]|6[124-8]|7[24]|8[0-467])|2(?:[0346]\\\\d|2[2-46-9]|5[125]|9[479])|3(?:[03568]\\\\d|1[3-8]|2[01]|4[1-8])|4(?:[0356]\\\\d|1[1-368]|7[58]|8[15-8]|9[23579])|5(?:[0358]\\\\d|[19][1-9]|2[1-57-9]|4[13-8]|6[126]|7[0-3578])|7\\\\d\\\\d)\\\\d{6}\", , , , \"101234567\",\n, , [9]], [, , \"6[1-58]\\\\d{7}\", , , , \"612345678\", , , [9]], [, , \"800\\\\d{4,7}\", , , , \"8001234\", , , [7, 8, 9, 10]], [, , \"90[069]\\\\d{4,7}\", , , , \"9061234\", , , [7, 8, 9, 10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"(?:85|91)\\\\d{7}\", , , , \"851234567\", , , [9]], \"NL\", 31, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{4})\", \"$1\", [\"1[238]|[34]\"]], [, \"(\\\\d{2})(\\\\d{3,4})\", \"$1 $2\", [\"14\"]], [, \"(\\\\d{6})\", \"$1\", [\"1\"]], [, \"(\\\\d{3})(\\\\d{4,7})\", \"$1 $2\", [\"[89]0\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{7})\",\n\"$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-57-9]\"], \"0$1\"]], [[, \"(\\\\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})\",\n\"$1 $2 $3\", [\"[1-57-9]\"], \"0$1\"]], [, , \"66\\\\d{7}\", , , , \"662345678\", , , [9]], , , [, , \"140(?:1[035]|2[0346]|3[03568]|4[0356]|5[0358]|8[458])|140(?:1[16-8]|2[259]|3[124]|4[17-9]|5[124679]|7)\\\\d\", , , , , , , [5, 6]], [, , \"140(?:1[035]|2[0346]|3[03568]|4[0356]|5[0358]|8[458])|(?:140(?:1[16-8]|2[259]|3[124]|4[17-9]|5[124679]|7)|8[478]\\\\d{6})\\\\d\", , , , \"14020\", , , [5, 6, 9]], , , [, , , , , , , , , [-1]]], NO:[, [, , \"(?:0|[2-9]\\\\d{3})\\\\d{4}\", , , , , , , [5, 8]], [, , \"(?:2[1-4]|3[1-3578]|5[1-35-7]|6[1-4679]|7[0-8])\\\\d{6}\",\n, , , \"21234567\", , , [8]], [, , \"(?:4[015-8]|5[89]|9\\\\d)\\\\d{6}\", , , , \"40612345\", , , [8]], [, , \"80[01]\\\\d{5}\", , , , \"80012345\", , , [8]], [, , \"82[09]\\\\d{5}\", , , , \"82012345\", , , [8]], [, , \"810(?:0[0-6]|[2-8]\\\\d)\\\\d{3}\", , , , \"81021234\", , , [8]], [, , \"880\\\\d{5}\", , , , \"88012345\", , , [8]], [, , \"85[0-5]\\\\d{5}\", , , , \"85012345\", , , [8]], \"NO\", 47, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{3})\", \"$1 $2 $3\", [\"[489]\"]], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[235-7]\"]]],\n, [, , , , , , , , , [-1]], 1, \"[02-689]|7[0-8]\", [, , , , , , , , , [-1]], [, , \"(?:0[2-9]|81(?:0(?:0[7-9]|1\\\\d)|5\\\\d\\\\d))\\\\d{3}\", , , , \"02000\"], , , [, , \"81[23]\\\\d{5}\", , , , \"81212345\", , , [8]]], NP:[, [, , \"9\\\\d{9}|[1-9]\\\\d{7}\", , , , , , , [8, 10], [6, 7]], [, , \"1[0-6]\\\\d{6}|(?:2[13-79]|3[135-8]|4[146-9]|5[135-7]|6[13-9]|7[15-9]|8[1-46-9]|9[1-79])[2-6]\\\\d{5}\", , , , \"14567890\", , , [8], [6, 7]], [, , \"9(?:6[0-3]|7[245]|8[0-24-68])\\\\d{7}\", , , , \"9841234567\", , , [10]], [, , , , , , , , ,\n[-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"NP\", 977, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d)(\\\\d{7})\", \"$1-$2\", [\"1[2-6]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{6})\", \"$1-$2\", [\"[1-8]|9(?:[1-579]|6[2-6])\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{7})\", \"$1-$2\", [\"9\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], NR:[, [, , \"(?:444|55\\\\d|888)\\\\d{4}\", , , , , , , [7]], [, , \"(?:444|888)\\\\d{4}\",\n, , , \"4441234\"], [, , \"55[4-9]\\\\d{4}\", , , , \"5551234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"NR\", 674, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[458]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], NU:[, [, , \"(?:[47]|888\\\\d)\\\\d{3}\", , , , , , , [4, 7]], [, , \"[47]\\\\d{3}\", , , , \"7012\", , , [4]], [, , \"888[4-9]\\\\d{3}\",\n, , , \"8884012\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"NU\", 683, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"8\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], NZ:[, [, , \"[28]\\\\d{7,9}|[346]\\\\d{7}|(?:508|[79]\\\\d)\\\\d{6,7}\", , , , , , , [8, 9, 10], [7]], [, , \"24099\\\\d{3}|(?:3[2-79]|[49][2-9]|6[235-9]|7[2-57-9])\\\\d{6}\",\n, , , \"32345678\", , , [8], [7]], [, , \"2[0-28]\\\\d{8}|2[0-27-9]\\\\d{7}|21\\\\d{6}\", , , , \"211234567\"], [, , \"508\\\\d{6,7}|80\\\\d{6,8}\", , , , \"800123456\"], [, , \"90\\\\d{6,7}\", , , , \"900123456\", , , [8, 9]], [, , , , , , , , , [-1]], [, , \"70\\\\d{7}\", , , , \"701234567\", , , [9]], [, , , , , , , , , [-1]], \"NZ\", 64, \"0(?:0|161)\", \"0\", , , \"0\", , \"00\", , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{3})\", \"$1 $2 $3\", [\"[89]0\"], \"0$1\"], [, \"(\\\\d)(\\\\d{3})(\\\\d{4})\", \"$1-$2 $3\", [\"24|[346]|7[2-57-9]|9[2-9]\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3,4})\",\n\"$1 $2 $3\", [\"2(?:10|74)|[59]|80\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3,4})(\\\\d{4})\", \"$1 $2 $3\", [\"2[028]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3,5})\", \"$1 $2 $3\", [\"2(?:[169]|7[0-35-9])|7|86\"], \"0$1\"]], , [, , \"[28]6\\\\d{6,7}\", , , , \"26123456\", , , [8, 9]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], OM:[, [, , \"(?:[279]\\\\d{3}|500)\\\\d{4}|8007\\\\d{4,5}\", , , , , , , [7, 8, 9]], [, , \"2[2-6]\\\\d{6}\", , , , \"23123456\", , , [8]], [, , \"90[1-9]\\\\d{5}|(?:7[129]|9[1-9])\\\\d{6}\",\n, , , \"92123456\", , , [8]], [, , \"500\\\\d{4}|8007\\\\d{4,5}\", , , , \"80071234\"], [, , \"900\\\\d{5}\", , , , \"90012345\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"OM\", 968, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4,6})\", \"$1 $2\", [\"[58]\"]], [, \"(\\\\d{2})(\\\\d{6})\", \"$1 $2\", [\"2\"]], [, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[79]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], PA:[, [, , \"(?:[1-57-9]|6\\\\d)\\\\d{6}\",\n, , , , , , [7, 8]], [, , \"(?:1(?:0\\\\d|1[479]|2[37]|3[0137]|4[17]|5[05]|[68][58]|7[0167]|9[39])|2(?:[0235-79]\\\\d|1[0-7]|4[013-9]|8[026-9])|3(?:[089]\\\\d|1[014-7]|2[0-35]|33|4[0-579]|55|6[068]|7[06-8])|4(?:00|3[0-579]|4\\\\d|7[0-57-9])|5(?:[01]\\\\d|2[0-7]|[56]0|79)|7(?:0[09]|2[0-26-8]|3[03]|4[04]|5[05-9]|6[05]|7[0-24-9]|8[7-9]|90)|8(?:09|2[89]|3\\\\d|4[0-24-689]|5[014]|8[02])|9(?:0[5-9]|1[0135-8]|2[036-9]|3[35-79]|40|5[0457-9]|6[05-9]|7[04-9]|8[35-8]|9\\\\d))\\\\d{4}\", , , , \"2001234\", , , [7]], [, , \"(?:1[16]1|21[89]|6(?:[02-9]\\\\d|1[0-6])\\\\d|8(?:1[01]|7[23]))\\\\d{4}\",\n, , , \"61234567\"], [, , \"800\\\\d{4}\", , , , \"8001234\", , , [7]], [, , \"(?:8(?:22|55|60|7[78]|86)|9(?:00|81))\\\\d{4}\", , , , \"8601234\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"PA\", 507, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1-$2\", [\"[1-57-9]\"]], [, \"(\\\\d{4})(\\\\d{4})\", \"$1-$2\", [\"6\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], PE:[, [, , \"(?:[14-8]|9\\\\d)\\\\d{7}\", , , , , ,\n, [8, 9], [6, 7]], [, , \"19(?:[02-68]\\\\d|1[035-9]|7[0-689]|9[1-9])\\\\d{4}|(?:1[0-8]|4[1-4]|5[1-46]|6[1-7]|7[2-46]|8[2-4])\\\\d{6}\", , , , \"11234567\", , , [8], [6, 7]], [, , \"9\\\\d{8}\", , , , \"912345678\", , , [9]], [, , \"800\\\\d{5}\", , , , \"80012345\", , , [8]], [, , \"805\\\\d{5}\", , , , \"80512345\", , , [8]], [, , \"801\\\\d{5}\", , , , \"80112345\", , , [8]], [, , \"80[24]\\\\d{5}\", , , , \"80212345\", , , [8]], [, , , , , , , , , [-1]], \"PE\", 51, \"19(?:1[124]|77|90)00\", \"0\", \" Anexo \", , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{5})\",\n\"$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\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], PF:[, [, , \"[48]\\\\d{7}|4\\\\d{5}\", , , , , , , [6, 8]], [, , \"4(?:[09][4-689]\\\\d|4)\\\\d{4}\", , , , \"40412345\"], [, , \"8[7-9]\\\\d{6}\", , , , \"87123456\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]],\n[, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"PF\", 689, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3\", [\"44\"]], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[48]\"]]], , [, , , , , , , , , [-1]], , , [, , \"44\\\\d{4}\", , , , , , , [6]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], PG:[, [, , \"(?:180|[78]\\\\d{3})\\\\d{4}|(?:[2-589]\\\\d|64)\\\\d{5}\", , , , , , , [7, 8]], [, , \"(?:64[1-9]|7730|85[02-46-9])\\\\d{4}|(?:3[0-2]|4[257]|5[34]|77[0-24]|9[78])\\\\d{5}\",\n, , , \"3123456\"], [, , \"775\\\\d{5}|(?:7[0-689]|81)\\\\d{6}\", , , , \"70123456\", , , [8]], [, , \"180\\\\d{4}\", , , , \"1801234\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"2(?:0[0-47]|7[568])\\\\d{4}\", , , , \"2751234\", , , [7]], \"PG\", 675, \"00|140[1-3]\", , , , , , \"00\", , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"18|[2-69]|85\"]], [, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[78]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [,\n, , , , , , , , [-1]]], PH:[, [, , \"1800\\\\d{7,9}|(?:2|[89]\\\\d{4})\\\\d{5}|[2-8]\\\\d{8}|[28]\\\\d{7}\", , , , , , , [6, 8, 9, 10, 11, 12, 13], [4, 5, 7]], [, , \"(?:(?:2[3-8]|3[2-68]|4[2-9]|5[2-6]|6[2-58]|7[24578])\\\\d{3}|88(?:22\\\\d\\\\d|42))\\\\d{4}|2\\\\d{5}(?:\\\\d{2})?|8[2-8]\\\\d{7}\", , , , \"21234567\", , , [6, 8, 9, 10], [4, 5, 7]], [, , \"(?:81[37]|9(?:0[5-9]|1[0-24-9]|2[0-35-9]|[35]\\\\d|4[235-9]|6[0-25-8]|7[1-9]|8[19]|9[4-9]))\\\\d{7}\", , , , \"9051234567\", , , [10]], [, , \"1800\\\\d{7,9}\", , , , \"180012345678\", ,\n, [11, 12, 13]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"PH\", 63, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d)(\\\\d{5})\", \"$1 $2\", [\"2\"], \"(0$1)\"], [, \"(\\\\d)(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"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})\",\n\"$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\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], PK:[,\n[, , \"122\\\\d{6}|[24-8]\\\\d{10,11}|9(?:[013-9]\\\\d{8,10}|2(?:[01]\\\\d\\\\d|2(?:[025-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], [5, 6, 7]], [, , \"(?:(?:21|42)[2-9]|58[126])\\\\d{7}|(?:2[25]|4[0146-9]|5[1-35-7]|6[1-8]|7[14]|8[16]|91)[2-9]\\\\d{6}|(?: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]))[2-9]\\\\d{5,6}\", , , , \"2123456789\", , ,\n[9, 10], [5, 6, 7, 8]], [, , \"3(?:[014]\\\\d|2[0-5]|3[0-7]|55|64)\\\\d{7}\", , , , \"3012345678\", , , [10]], [, , \"800\\\\d{5}\", , , , \"80012345\", , , [8]], [, , \"900\\\\d{5}\", , , , \"90012345\", , , [8]], [, , , , , , , , , [-1]], [, , \"122\\\\d{6}\", , , , \"122044444\", , , [9]], [, , , , , , , , , [-1]], \"PK\", 92, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{2})\", \"$1 $2 $3\", [\"[89]0\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d{5})\", \"$1 $2\", [\"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]\"],\n\"(0$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{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})\",\n\"$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)\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"(?:2(?:[125]|3[2358]|4[2-4]|9[2-8])|4(?:[0-246-9]|5[3479])|5(?:[1-35-7]|4[2-467])|6(?:0[468]|[1-8])|7(?:[14]|2[236])|8(?:[16]|2[2-689]|3[23578]|4[3478]|5[2356])|9(?:1|22|3[27-9]|4[2-6]|6[3569]|9[2-7]))111\\\\d{6}\", , , , \"21111825888\", , , [11, 12]], , , [, , , , , , , , , [-1]]],\nPL:[, [, , \"[1-57-9]\\\\d{6}(?:\\\\d{2})?|6\\\\d{5,8}\", , , , , , , [6, 7, 8, 9]], [, , \"(?: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])(?:[02-9]\\\\d{6}|1(?:[0-8]\\\\d{5}|9\\\\d{3}(?:\\\\d{2})?))\", , , , \"123456789\", , , [7, 9]], [, , \"(?:45|5[0137]|6[069]|7[2389]|88)\\\\d{7}\", , , , \"512345678\", , , [9]], [, , \"800\\\\d{6}\", , , , \"800123456\", , , [9]], [, , \"70[01346-8]\\\\d{6}\", , , , \"701234567\", , , [9]], [, , \"801\\\\d{6}\", , , , \"801234567\", , , [9]], [, , , , , , , , , [-1]], [,\n, \"39\\\\d{7}\", , , , \"391234567\", , , [9]], \"PL\", 48, \"00\", , , , , , , , [[, \"(\\\\d{5})\", \"$1\", [\"19\"]], [, \"(\\\\d{3})(\\\\d{3})\", \"$1 $2\", [\"11|64\"]], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{3})\", \"$1 $2 $3\", [\"(?:1[2-8]|2[2-69]|3[2-4]|4[1-468]|5[24-689]|6[1-3578]|7[14-7]|8[1-79]|9[145])1\", \"(?:1[2-8]|2[2-69]|3[2-4]|4[1-468]|5[24-689]|6[1-3578]|7[14-7]|8[1-79]|9[145])19\"]], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{2,3})\", \"$1 $2 $3\", [\"64\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"39|45|5[0137]|6[0469]|7[02389]|8[08]\"]], [,\n\"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"1[2-8]|[2-8]|9[145]\"]]], , [, , \"64\\\\d{4,7}\", , , , \"641234567\"], , , [, , , , , , , , , [-1]], [, , \"804\\\\d{6}\", , , , \"804123456\", , , [9]], , , [, , , , , , , , , [-1]]], PM:[, [, , \"[45]\\\\d{5}\", , , , , , , [6]], [, , \"(?:4[1-3]|50)\\\\d{4}\", , , , \"430123\"], [, , \"(?:4[02-4]|5[05])\\\\d{4}\", , , , \"551234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"PM\", 508,\n\"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3\", [\"[45]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], PR:[, [, , \"(?:[589]\\\\d\\\\d|787)\\\\d{7}\", , , , , , , [10], [7]], [, , \"(?:787|939)[2-9]\\\\d{6}\", , , , \"7872345678\", , , , [7]], [, , \"(?:787|939)[2-9]\\\\d{6}\", , , , \"7872345678\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002345678\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002345678\"],\n[, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"PR\", 1, \"011\", \"1\", , , \"1\", , , 1, , , [, , , , , , , , , [-1]], , \"787|939\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], PS:[, [, , \"[2489]2\\\\d{6}|(?:1\\\\d|5)\\\\d{8}\", , , , , , , [8, 9, 10], [7]], [, , \"(?:22[2-47-9]|42[45]|82[01458]|92[369])\\\\d{5}\", , , , \"22234567\", , , [8], [7]], [, , \"5[69]\\\\d{7}\", , , , \"599123456\", , , [9]], [, , \"1800\\\\d{6}\",\n, , , \"1800123456\", , , [10]], [, , , , , , , , , [-1]], [, , \"1700\\\\d{6}\", , , , \"1700123456\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"PS\", 970, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], PT:[, [, , \"(?:[26-9]\\\\d|30)\\\\d{7}\",\n, , , , , , [9]], [, , \"2(?:[12]\\\\d|[35][1-689]|4[1-59]|6[1-35689]|7[1-9]|8[1-69]|9[1256])\\\\d{6}\", , , , \"212345678\"], [, , \"9(?:[1-36]\\\\d\\\\d|480)\\\\d{5}\", , , , \"912345678\"], [, , \"80[02]\\\\d{6}\", , , , \"800123456\"], [, , \"(?:6(?:0[178]|4[68])\\\\d|76(?:0[1-57]|1[2-47]|2[237]))\\\\d{5}\", , , , \"760123456\"], [, , \"80(?:8\\\\d|9[1579])\\\\d{5}\", , , , \"808123456\"], [, , \"884[0-4689]\\\\d{5}\", , , , \"884123456\"], [, , \"30\\\\d{7}\", , , , \"301234567\"], \"PT\", 351, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\",\n\"$1 $2 $3\", [\"2[12]\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[236-9]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"70(?:7\\\\d|8[17])\\\\d{5}\", , , , \"707123456\"], , , [, , \"600\\\\d{6}\", , , , \"600110000\"]], PW:[, [, , \"(?:[25-8]\\\\d\\\\d|345|488|900)\\\\d{4}\", , , , , , , [7]], [, , \"(?:2(?:55|77)|345|488|5(?:35|44|87)|6(?:22|54|79)|7(?:33|47)|8(?:24|55|76)|900)\\\\d{4}\", , , , \"2771234\"], [, , \"(?:6[2-4689]0|77\\\\d|88[0-4])\\\\d{4}\", , , , \"6201234\"], [, , , , , , , , , [-1]], [,\n, , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"PW\", 680, \"01[12]\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[2-9]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], PY:[, [, , \"59\\\\d{4,6}|(?:[2-46-9]\\\\d|5[0-8])\\\\d{4,7}\", , , , , , , [6, 7, 8, 9], [5]], [, , \"(?:[26]1|3[289]|4[1246-8]|7[1-3]|8[1-36])\\\\d{5,7}|(?:2(?:2[4-68]|7[15]|9[1-5])|3(?:18|3[167]|4[2357]|51)|4(?:3[12]|5[13]|9[1-47])|5(?:[1-4]\\\\d|5[02-4])|6(?:3[1-3]|44|7[1-46-8])|7(?:4[0-4]|6[1-578]|75|8[0-8])|858)\\\\d{5,6}\",\n, , , \"212345678\", , , [7, 8, 9], [5, 6]], [, , \"9(?:51|6[129]|[78][1-6]|9[1-5])\\\\d{6}\", , , , \"961456789\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"8700[0-4]\\\\d{4}\", , , , \"870012345\", , , [9]], \"PY\", 595, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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[347]|7[46-8]|85\"],\n\"(0$1)\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3,4})\", \"$1 $2 $3\", [\"[26]1|3[289]|4[1246-8]|7[1-3]|8[1-36]\"], \"(0$1)\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"87\"]], [, \"(\\\\d{3})(\\\\d{6})\", \"$1 $2\", [\"9\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[2-8]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"[2-9]0\\\\d{4,7}\", , , , \"201234567\"], , , [, , , , , , , , , [-1]]], QA:[, [, , \"800\\\\d{4}|(?:2|[3-7]\\\\d)\\\\d{6}\", , , , , , , [7, 8]], [, , \"4[04]\\\\d{6}\", , , , \"44123456\",\n, , [8]], [, , \"[35-7]\\\\d{7}\", , , , \"33123456\", , , [8]], [, , \"800\\\\d{4}\", , , , \"8001234\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"QA\", 974, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"2[126]|8\"]], [, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[3-7]\"]]], , [, , \"2(?:[12]\\\\d|61)\\\\d{4}\", , , , \"2123456\", , , [7]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], RE:[, [, , \"(?:26|[68]\\\\d)\\\\d{7}\",\n, , , , , , [9]], [, , \"262\\\\d{6}\", , , , \"262161234\"], [, , \"69(?:2\\\\d\\\\d|3(?:0[0-46]|1[013]|2[0-2]|3[0-39]|4\\\\d|5[05]|6[0-26]|7[0-27]|8[0-8]|9[0-479]))\\\\d{4}\", , , , \"692123456\"], [, , \"80\\\\d{7}\", , , , \"801234567\"], [, , \"89[1-37-9]\\\\d{6}\", , , , \"891123456\"], [, , \"8(?:1[019]|2[0156]|84|90)\\\\d{6}\", , , , \"810123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"RE\", 262, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[268]\"], \"0$1\"]], , [, , , , ,\n, , , , [-1]], 1, \"262|69|8\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], RO:[, [, , \"(?:[237]\\\\d|[89]0)\\\\d{7}|[23]\\\\d{5}\", , , , , , , [6, 9]], [, , \"[23][13-6]\\\\d{7}|(?:2(?:19\\\\d|[3-6]\\\\d9)|31\\\\d\\\\d)\\\\d\\\\d\", , , , \"211234567\"], [, , \"7120\\\\d{5}|7(?:[02-7]\\\\d|1[01]|8[03-8]|99)\\\\d{6}\", , , , \"712034567\", , , [9]], [, , \"800\\\\d{6}\", , , , \"800123456\", , , [9]], [, , \"90[036]\\\\d{6}\", , , , \"900123456\", , , [9]], [, , \"801\\\\d{6}\", , , , \"801123456\", , , [9]], [,\n, , , , , , , , [-1]], [, , , , , , , , , [-1]], \"RO\", 40, \"00\", \"0\", \" int \", , \"0\", , , , [[, \"(\\\\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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"37\\\\d{7}\", , , , \"372123456\", , , [9]], , , [, , , , , , , , , [-1]]], RS:[, [, , \"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}\",\n, , , , , , [6, 7, 8, 9, 10, 11, 12], [4, 5]], [, , \"(?:11[1-9]\\\\d|(?:2[389]|39)(?:0[2-9]|[2-9]\\\\d))\\\\d{3,8}|(?:1[02-9]|2[0-24-7]|3[0-8])[2-9]\\\\d{4,9}\", , , , \"10234567\", , , [7, 8, 9, 10, 11, 12], [4, 5, 6]], [, , \"6(?:[0-689]|7\\\\d)\\\\d{6,7}\", , , , \"601234567\", , , [8, 9, 10]], [, , \"800\\\\d{3,9}\", , , , \"80012345\"], [, , \"(?:78\\\\d|90[0169])\\\\d{3,7}\", , , , \"90012345\", , , [6, 7, 8, 9, 10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"RS\", 381, \"00\", \"0\", , , \"0\",\n, , , [[, \"(\\\\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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"7[06]\\\\d{4,10}\", , , , \"700123456\"], , , [, , , , , , , , , [-1]]], RU:[, [, , \"[347-9]\\\\d{9}\", , , , , , , [10], [7]], [, , \"(?:3(?:0[12]|4[1-35-79]|5[1-3]|65|8[1-58]|9[0145])|4(?:01|1[1356]|2[13467]|7[1-5]|8[1-7]|9[1-689])|8(?:1[1-8]|2[01]|3[13-6]|4[0-8]|5[15]|6[1-35-79]|7[1-37-9]))\\\\d{7}\", , , , \"3011234567\",\n, , , [7]], [, , \"9\\\\d{9}\", , , , \"9123456789\"], [, , \"80[04]\\\\d{7}\", , , , \"8001234567\"], [, , \"80[39]\\\\d{7}\", , , , \"8091234567\"], [, , , , , , , , , [-1]], [, , \"808\\\\d{7}\", , , , \"8081234567\"], [, , , , , , , , , [-1]], \"RU\", 7, \"810\", \"8\", , , \"8\", , \"8~10\", , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1-$2-$3\", [\"[0-79]\"]], [, \"(\\\\d{4})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"7(?:1[0-8]|2[1-9])\", \"7(?:1(?:[0-6]2|7|8[27])|2(?:1[23]|[2-9]2))\", \"7(?:1(?:[0-6]2|7|8[27])|2(?:13[03-69]|62[013-9]))|72[1-57-9]2\"],\n\"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\", [\"[3489]\"],\n\"8 ($1)\", , 1]], [[, \"(\\\\d{4})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"7(?:1[0-8]|2[1-9])\", \"7(?:1(?:[0-6]2|7|8[27])|2(?:1[23]|[2-9]2))\", \"7(?:1(?:[0-6]2|7|8[27])|2(?:13[03-69]|62[013-9]))|72[1-57-9]2\"], \"8 ($1)\", , 1], [, \"(\\\\d{5})(\\\\d)(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"7(?:1[0-68]|2[1-9])\", \"7(?:1(?:[06][3-6]|[18]|2[35]|[3-5][3-5])|2(?:[13][3-5]|[24-689]|7[457]))\", \"7(?:1(?:0(?:[356]|4[023])|[18]|2(?:3[013-9]|5)|3[45]|43[013-79]|5(?:3[1-8]|4[1-7]|5)|6(?:3[0-35-9]|[4-6]))|2(?:1(?:3[178]|[45])|[24-689]|3[35]|7[457]))|7(?:14|23)4[0-8]|71(?:33|45)[1-79]\"],\n\"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\", [\"[3489]\"], \"8 ($1)\", , 1]], [, , , , , , , , , [-1]], 1, \"3[04-689]|[489]\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], RW:[, [, , \"(?:06|[27]\\\\d\\\\d|[89]00)\\\\d{6}\", , , , , , , [8, 9]], [, , \"(?:06|2[258]\\\\d)\\\\d{6}\", , , , \"250123456\"], [, , \"7[238]\\\\d{7}\", , , , \"720123456\", , , [9]], [, , \"800\\\\d{6}\", , , , \"800123456\", ,\n, [9]], [, , \"900\\\\d{6}\", , , , \"900123456\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"RW\", 250, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SA:[, [, , \"92\\\\d{7}|(?:[15]|8\\\\d)\\\\d{8}\",\n, , , , , , [9, 10], [7]], [, , \"1(?:1\\\\d|2[24-8]|3[35-8]|4[3-68]|6[2-5]|7[235-7])\\\\d{6}\", , , , \"112345678\", , , [9], [7]], [, , \"5(?:[013-689]\\\\d|7[0-36-8])\\\\d{6}\", , , , \"512345678\", , , [9]], [, , \"800\\\\d{7}\", , , , \"8001234567\", , , [10]], [, , \"925\\\\d{6}\", , , , \"925012345\", , , [9]], [, , \"920\\\\d{6}\", , , , \"920012345\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"SA\", 966, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{4})(\\\\d{5})\", \"$1 $2\", [\"9\"]], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\",\n[\"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\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"811\\\\d{7}\", , , , \"8110123456\", , , [10]], , , [, , , , , , , , , [-1]]], SB:[, [, , \"(?:[1-6]|[7-9]\\\\d\\\\d)\\\\d{4}\", , , , , , , [5, 7]], [, , \"(?:1[4-79]|[23]\\\\d|4[0-2]|5[03]|6[0-37])\\\\d{3}\", , , , \"40123\", , , [5]], [, , \"48\\\\d{3}|(?:(?:7[1-9]|8[4-9])\\\\d|9(?:1[2-9]|2[013-9]|3[0-2]|[46]\\\\d|5[0-46-9]|7[0-689]|8[0-79]|9[0-8]))\\\\d{4}\",\n, , , \"7421234\"], [, , \"1[38]\\\\d{3}\", , , , \"18123\", , , [5]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"5[12]\\\\d{3}\", , , , \"51123\", , , [5]], \"SB\", 677, \"0[01]\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{5})\", \"$1 $2\", [\"7|8[4-9]|9(?:[1-8]|9[0-8])\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SC:[, [, , \"8000\\\\d{3}|(?:[249]\\\\d|64)\\\\d{5}\", , , , , , , [7]], [, , \"4[2-46]\\\\d{5}\", , , , \"4217123\"],\n[, , \"2[5-8]\\\\d{5}\", , , , \"2510123\"], [, , \"8000\\\\d{3}\", , , , \"8000000\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"971\\\\d{4}|(?:64|95)\\\\d{5}\", , , , \"6412345\"], \"SC\", 248, \"010|0[0-2]\", , , , , , \"00\", , [[, \"(\\\\d)(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[246]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SD:[, [, , \"[19]\\\\d{8}\", , , , , , , [9]], [, , \"1(?:5[3-7]|8[35-7])\\\\d{6}\", , , ,\n\"153123456\"], [, , \"(?:1[0-2]|9[0-3569])\\\\d{7}\", , , , \"911231234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"SD\", 249, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[19]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SE:[, [, , \"(?:[26]\\\\d\\\\d|9)\\\\d{9}|[1-9]\\\\d{8}|[1-689]\\\\d{7}|[1-4689]\\\\d{6}|2\\\\d{5}\", ,\n, , , , , [6, 7, 8, 9, 10, 12]], [, , \"10[1-8]\\\\d{6}|90[1-9]\\\\d{4,6}|(?:[12][136]|3[356]|4[0246]|6[03]|8\\\\d)\\\\d{5,7}|(?:1(?:2[0-35]|4[0-4]|5[0-25-9]|7[13-6]|[89]\\\\d)|2(?:2[0-7]|4[0136-8]|5[0138]|7[018]|8[01]|9[0-57])|3(?:0[0-4]|1\\\\d|2[0-25]|4[056]|7[0-2]|8[0-3]|9[023])|4(?:1[013-8]|3[0135]|5[14-79]|7[0-246-9]|8[0156]|9[0-689])|5(?:0[0-6]|[15][0-5]|2[0-68]|3[0-4]|4\\\\d|6[03-5]|7[013]|8[0-79]|9[01])|6(?:1[1-3]|2[0-4]|4[02-57]|5[0-37]|6[0-3]|7[0-2]|8[0247]|9[0-356])|9(?:1[0-68]|2\\\\d|3[02-5]|4[0-3]|5[0-4]|[68][01]|7[0135-8]))\\\\d{5,6}\",\n, , , \"8123456\", , , [7, 8, 9]], [, , \"7[02369]\\\\d{7}\", , , , \"701234567\", , , [9]], [, , \"20\\\\d{4,7}\", , , , \"20123456\", , , [6, 7, 8, 9]], [, , \"649\\\\d{6}|9(?:00|39|44)[1-8]\\\\d{3,6}\", , , , \"9001234567\", , , [7, 8, 9, 10]], [, , \"77[0-7]\\\\d{6}\", , , , \"771234567\", , , [9]], [, , \"75[1-8]\\\\d{6}\", , , , \"751234567\", , , [9]], [, , , , , , , , , [-1]], \"SE\", 46, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{2,3})(\\\\d{2})\", \"$1-$2 $3\", [\"20\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{4})\", \"$1-$2\", [\"9(?:00|39|44)\"],\n\"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{2})\", \"$1-$2 $3\", [\"[12][136]|3[356]|4[0246]|6[03]|90[1-9]\"], \"0$1\"], [, \"(\\\\d)(\\\\d{2,3})(\\\\d{2})(\\\\d{2})\", \"$1-$2 $3 $4\", [\"8\"], \"0$1\"], [, \"(\\\\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\"], [, \"(\\\\d{3})(\\\\d{2,3})(\\\\d{3})\", \"$1-$2 $3\", [\"9(?:00|39|44)\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{2,3})(\\\\d{2})(\\\\d{2})\", \"$1-$2 $3 $4\", [\"1[013689]|2[0136]|3[1356]|4[0246]|54|6[03]|90[1-9]\"],\n\"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1-$2 $3 $4\", [\"7\"], \"0$1\"], [, \"(\\\\d)(\\\\d{3})(\\\\d{3})(\\\\d{2})\", \"$1-$2 $3 $4\", [\"8\"], \"0$1\"], [, \"(\\\\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\"], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{3})\", \"$1-$2 $3 $4\", [\"9\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1-$2 $3 $4 $5\", [\"[26]\"], \"0$1\"]], [[, \"(\\\\d{2})(\\\\d{2,3})(\\\\d{2})\", \"$1 $2 $3\", [\"20\"]], [, \"(\\\\d{3})(\\\\d{4})\",\n\"$1 $2\", [\"9(?:00|39|44)\"]], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{2})\", \"$1 $2 $3\", [\"[12][136]|3[356]|4[0246]|6[03]|90[1-9]\"]], [, \"(\\\\d)(\\\\d{2,3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"8\"]], [, \"(\\\\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])\"]], [, \"(\\\\d{3})(\\\\d{2,3})(\\\\d{3})\", \"$1 $2 $3\", [\"9(?:00|39|44)\"]], [, \"(\\\\d{2})(\\\\d{2,3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"1[013689]|2[0136]|3[1356]|4[0246]|54|6[03]|90[1-9]\"]],\n[, \"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"7\"]], [, \"(\\\\d)(\\\\d{3})(\\\\d{3})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"8\"]], [, \"(\\\\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])\"]], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{3})\", \"$1 $2 $3 $4\", [\"9\"]], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4 $5\", [\"[26]\"]]], [, , \"74[02-9]\\\\d{6}\", , , , \"740123456\", , , [9]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]],\n, , [, , \"(?:25[245]|67[3-68])\\\\d{9}\", , , , \"254123456789\", , , [12]]], SG:[, [, , \"(?:(?:1\\\\d|8)\\\\d\\\\d|7000)\\\\d{7}|[3689]\\\\d{7}\", , , , , , , [8, 10, 11]], [, , \"6[1-9]\\\\d{6}\", , , , \"61234567\", , , [8]], [, , \"89[01]\\\\d{5}|(?:8[1-8]|9[0-8])\\\\d{6}\", , , , \"81234567\", , , [8]], [, , \"(?:18|8)00\\\\d{7}\", , , , \"18001234567\", , , [10, 11]], [, , \"1900\\\\d{7}\", , , , \"19001234567\", , , [11]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"3[12]\\\\d{6}\", , , , \"31234567\", , , [8]], \"SG\", 65,\n\"0[0-3]\\\\d\", , , , , , , , [[, \"(\\\\d{4,5})\", \"$1\", [\"1[0135-7]|77\"]], [, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[369]|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\"]]], [[, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[369]|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\"]]], [, , , , , , , , , [-1]],\n, , [, , , , , , , , , [-1]], [, , \"7000\\\\d{7}\", , , , \"70001234567\", , , [11]], , , [, , , , , , , , , [-1]]], SH:[, [, , \"(?:[256]\\\\d|8)\\\\d{3}\", , , , , , , [4, 5]], [, , \"2(?:[0-57-9]\\\\d|6[4-9])\\\\d\\\\d\", , , , \"22158\"], [, , \"[56]\\\\d{4}\", , , , \"51234\", , , [5]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"262\\\\d\\\\d\", , , , \"26212\", , , [5]], \"SH\", 290, \"00\", , , , , , , , , , [, , , , , , , , , [-1]], 1, \"[256]\", [, , , , , , ,\n, , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SI:[, [, , \"[1-7]\\\\d{7}|8\\\\d{4,7}|90\\\\d{4,6}\", , , , , , , [5, 6, 7, 8]], [, , \"(?:[1-357][2-8]|4[24-8])\\\\d{6}\", , , , \"12345678\", , , [8], [7]], [, , \"6(?:5(?:1\\\\d|55|[67]0)|9(?:10|[69]\\\\d))\\\\d{4}|(?:[37][01]|4[0139]|51|6[48])\\\\d{6}\", , , , \"31234567\", , , [8]], [, , \"80\\\\d{4,6}\", , , , \"80123456\", , , [6, 7, 8]], [, , \"89[1-3]\\\\d{2,5}|90\\\\d{4,6}\", , , , \"90123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"(?:59\\\\d\\\\d|8(?:1(?:[67]\\\\d|8[01389])|2(?:0\\\\d|2[0378]|8[0-2489])|3[389]\\\\d))\\\\d{4}\",\n, , , \"59012345\", , , [8]], \"SI\", 386, \"00|10(?:22|66|88|99)\", \"0\", , , \"0\", , \"00\", , [[, \"(\\\\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)\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SJ:[, [, , \"0\\\\d{4}|(?:[4589]\\\\d|79)\\\\d{6}\",\n, , , , , , [5, 8]], [, , \"79\\\\d{6}\", , , , \"79123456\", , , [8]], [, , \"(?:4[015-8]|5[89]|9\\\\d)\\\\d{6}\", , , , \"41234567\", , , [8]], [, , \"80[01]\\\\d{5}\", , , , \"80012345\", , , [8]], [, , \"82[09]\\\\d{5}\", , , , \"82012345\", , , [8]], [, , \"810(?:0[0-6]|[2-8]\\\\d)\\\\d{3}\", , , , \"81021234\", , , [8]], [, , \"880\\\\d{5}\", , , , \"88012345\", , , [8]], [, , \"85[0-5]\\\\d{5}\", , , , \"85012345\", , , [8]], \"SJ\", 47, \"00\", , , , , , , , , , [, , , , , , , , , [-1]], , \"79\", [, , , , , , , , , [-1]], [, , \"(?:0[2-9]|81(?:0(?:0[7-9]|1\\\\d)|5\\\\d\\\\d))\\\\d{3}\",\n, , , \"02000\"], , , [, , \"81[23]\\\\d{5}\", , , , \"81212345\", , , [8]]], SK:[, [, , \"[2-689]\\\\d{8}|[2-59]\\\\d{6}|[2-5]\\\\d{5}\", , , , , , , [6, 7, 9]], [, , \"(?:2(?:16|[2-9]\\\\d{3})|[3-5][1-8]\\\\d{3})\\\\d{4}|(?:2|[3-5][1-8])1[67]\\\\d{3}|[3-5][1-8]16\\\\d\\\\d\", , , , \"221234567\"], [, , \"909[1-9]\\\\d{5}|9(?:0[1-8]|1[0-24-9]|[45]\\\\d)\\\\d{6}\", , , , \"912123456\", , , [9]], [, , \"800\\\\d{6}\", , , , \"800123456\", , , [9]], [, , \"9(?:00|[78]\\\\d)\\\\d{6}\", , , , \"900123456\", , , [9]], [, , \"8[5-9]\\\\d{7}\", , , , \"850123456\",\n, , [9]], [, , , , , , , , , [-1]], [, , \"6(?:02|5[0-4]|9[0-6])\\\\d{6}\", , , , \"690123456\", , , [9]], \"SK\", 421, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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{4})(\\\\d{3})\", \"$1 $2\", [\"909\", \"9090\"], \"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})\",\n\"$1/$2 $3 $4\", [\"[3-5]\"], \"0$1\"]], [[, \"(\\\\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\"]], [, , \"9090\\\\d{3}\", , , , \"9090123\", , , [7]], , , [, , \"9090\\\\d{3}|(?:602|8(?:00|[5-9]\\\\d)|9(?:00|[78]\\\\d))\\\\d{6}\",\n, , , , , , [7, 9]], [, , \"96\\\\d{7}\", , , , \"961234567\", , , [9]], , , [, , , , , , , , , [-1]]], SL:[, [, , \"(?:[2378]\\\\d|99)\\\\d{6}\", , , , , , , [8], [6]], [, , \"22\\\\d{6}\", , , , \"22221234\", , , , [6]], [, , \"(?:25|3[0134]|7[5-9]|8[08]|99)\\\\d{6}\", , , , \"25123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"SL\", 232, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{6})\", \"$1 $2\", [\"[237-9]\"], \"(0$1)\"]], , [, , ,\n, , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SM:[, [, , \"(?:0549|[5-7]\\\\d)\\\\d{6}\", , , , , , , [8, 10], [6]], [, , \"0549(?:8[0157-9]|9\\\\d)\\\\d{4}\", , , , \"0549886377\", , , [10], [6]], [, , \"6[16]\\\\d{6}\", , , , \"66661212\", , , [8]], [, , , , , , , , , [-1]], [, , \"7[178]\\\\d{6}\", , , , \"71123456\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"5[158]\\\\d{6}\", , , , \"58001110\", , , [8]], \"SM\", 378, \"00\", , , , \"([89]\\\\d{5})$\",\n\"0549$1\", , , [[, \"(\\\\d{6})\", \"$1\", [\"[89]\"]], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[5-7]\"]], [, \"(\\\\d{4})(\\\\d{6})\", \"$1 $2\", [\"0\"]]], [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[5-7]\"]], [, \"(\\\\d{4})(\\\\d{6})\", \"$1 $2\", [\"0\"]]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SN:[, [, , \"(?:[378]\\\\d{4}|93330)\\\\d{4}\", , , , , , , [9]], [, , \"3(?:0(?:1[0-2]|80)|282|3(?:8[1-9]|9[3-9])|611)\\\\d{5}\", , , ,\n\"301012345\"], [, , \"7(?:[06-8]\\\\d|21|90)\\\\d{6}\", , , , \"701234567\"], [, , \"800\\\\d{6}\", , , , \"800123456\"], [, , \"88[4689]\\\\d{6}\", , , , \"884123456\"], [, , \"81[02468]\\\\d{6}\", , , , \"810123456\"], [, , , , , , , , , [-1]], [, , \"93330\\\\d{4}|3(?:392|9[01]\\\\d)\\\\d{5}\", , , , \"933301234\"], \"SN\", 221, \"00\", , , , , , , , [[, \"(\\\\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]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]],\n[, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SO:[, [, , \"[346-9]\\\\d{8}|[12679]\\\\d{7}|(?:[1-4]\\\\d|59)\\\\d{5}|[1348]\\\\d{5}\", , , , , , , [6, 7, 8, 9]], [, , \"(?:1\\\\d|2[0-79]|3[0-46-8]|4[0-7]|59)\\\\d{5}|(?:[134]\\\\d|8[125])\\\\d{4}\", , , , \"4012345\", , , [6, 7]], [, , \"28\\\\d{5}|(?:6[1-9]|79)\\\\d{6,7}|(?:15|24|(?:3[59]|4[89]|8[08])\\\\d|60|7[1-8]|9(?:0[67]|[2-9]))\\\\d{6}\", , , , \"71123456\", , , [7, 8, 9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , ,\n, , [-1]], [, , , , , , , , , [-1]], \"SO\", 252, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{4})\", \"$1 $2\", [\"8[125]\"]], [, \"(\\\\d{6})\", \"$1\", [\"[134]\"]], [, \"(\\\\d)(\\\\d{6})\", \"$1 $2\", [\"1|2[0-79]|3[0-46-8]|4[0-7]|59\"]], [, \"(\\\\d)(\\\\d{7})\", \"$1 $2\", [\"24|[67]\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[348]|64|79[0-8]|90\"]], [, \"(\\\\d{2})(\\\\d{5,7})\", \"$1 $2\", [\"1|28|6[1-35-9]|799|9[2-9]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , ,\n, [-1]]], SR:[, [, , \"(?:[2-5]|68|[78]\\\\d)\\\\d{5}\", , , , , , , [6, 7]], [, , \"(?:2[1-3]|3[0-7]|(?:4|68)\\\\d|5[2-58])\\\\d{4}\", , , , \"211234\"], [, , \"(?:7[124-7]|8[125-9])\\\\d{5}\", , , , \"7412345\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"56\\\\d{4}\", , , , \"561234\", , , [6]], \"SR\", 597, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1-$2-$3\", [\"56\"]], [, \"(\\\\d{3})(\\\\d{3})\", \"$1-$2\", [\"[2-5]\"]], [, \"(\\\\d{3})(\\\\d{4})\",\n\"$1-$2\", [\"[6-8]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SS:[, [, , \"[19]\\\\d{8}\", , , , , , , [9]], [, , \"18\\\\d{7}\", , , , \"181234567\"], [, , \"(?:12|9[1257])\\\\d{7}\", , , , \"977123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"SS\", 211, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[19]\"], \"0$1\"]], , [,\n, , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], ST:[, [, , \"(?:22|9\\\\d)\\\\d{5}\", , , , , , , [7]], [, , \"22\\\\d{5}\", , , , \"2221234\"], [, , \"900[5-9]\\\\d{3}|9(?:0[1-9]|[89]\\\\d)\\\\d{4}\", , , , \"9812345\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"ST\", 239, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[29]\"]]], , [, , , , , , , , , [-1]], , , [,\n, , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SV:[, [, , \"[267]\\\\d{7}|[89]00\\\\d{4}(?:\\\\d{4})?\", , , , , , , [7, 8, 11]], [, , \"2[1-6]\\\\d{6}\", , , , \"21234567\", , , [8]], [, , \"[67]\\\\d{7}\", , , , \"70123456\", , , [8]], [, , \"800\\\\d{4}(?:\\\\d{4})?\", , , , \"8001234\", , , [7, 11]], [, , \"900\\\\d{4}(?:\\\\d{4})?\", , , , \"9001234\", , , [7, 11]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"SV\", 503, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\",\n\"$1 $2\", [\"[89]\"]], [, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[267]\"]], [, \"(\\\\d{3})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"[89]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SX:[, [, , \"7215\\\\d{6}|(?:[58]\\\\d\\\\d|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"7215(?:4[2-8]|8[239]|9[056])\\\\d{4}\", , , , \"7215425678\", , , , [7]], [, , \"7215(?:1[02]|2\\\\d|5[034679]|8[014-8])\\\\d{4}\", , , , \"7215205678\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\",\n, , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"SX\", 1, \"011\", \"1\", , , \"1|(5\\\\d{6})$\", \"721$1\", , , , , [, , , , , , , , , [-1]], , \"721\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SY:[, [, , \"[1-39]\\\\d{8}|[1-5]\\\\d{7}\", , , , , , , [8, 9], [6, 7]], [, , \"[12]1\\\\d{6,7}|(?:1(?:[2356]|4\\\\d)|2[235]|3(?:[13]\\\\d|4)|4[13]|5[1-3])\\\\d{6}\",\n, , , \"112345678\", , , , [6, 7]], [, , \"9(?:22|[3-589]\\\\d|6[024-9])\\\\d{6}\", , , , \"944567890\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"SY\", 963, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , ,\n, , , , , , [-1]]], SZ:[, [, , \"0800\\\\d{4}|(?:[237]\\\\d|900)\\\\d{6}\", , , , , , , [8, 9]], [, , \"[23][2-5]\\\\d{6}\", , , , \"22171234\", , , [8]], [, , \"7[6-9]\\\\d{6}\", , , , \"76123456\", , , [8]], [, , \"0800\\\\d{4}\", , , , \"08001234\", , , [8]], [, , \"900\\\\d{6}\", , , , \"900012345\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"70\\\\d{6}\", , , , \"70012345\", , , [8]], \"SZ\", 268, \"00\", , , , , , , , [[, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[0237]\"]], [, \"(\\\\d{5})(\\\\d{4})\", \"$1 $2\", [\"9\"]]], ,\n[, , , , , , , , , [-1]], , , [, , \"0800\\\\d{4}\", , , , , , , [8]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], TA:[, [, , \"8\\\\d{3}\", , , , , , , [4]], [, , \"8\\\\d{3}\", , , , \"8999\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"TA\", 290, \"00\", , , , , , , , , , [, , , , , , , , , [-1]], , \"8\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]],\nTC:[, [, , \"(?:[58]\\\\d\\\\d|649|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"649(?:712|9(?:4\\\\d|50))\\\\d{4}\", , , , \"6497121234\", , , , [7]], [, , \"649(?:2(?:3[129]|4[1-7])|3(?:3[1-389]|4[1-8])|4[34][1-3])\\\\d{4}\", , , , \"6492311234\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002345678\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002345678\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , \"64971[01]\\\\d{4}\", , , , \"6497101234\", , , , [7]],\n\"TC\", 1, \"011\", \"1\", , , \"1|([2-479]\\\\d{6})$\", \"649$1\", , , , , [, , , , , , , , , [-1]], , \"649\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], TD:[, [, , \"(?:22|[69]\\\\d|77)\\\\d{6}\", , , , , , , [8]], [, , \"22(?:[37-9]0|5[0-5]|6[89])\\\\d{4}\", , , , \"22501234\"], [, , \"(?:6[023568]|77|9\\\\d)\\\\d{6}\", , , , \"63012345\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"TD\", 235, \"00|16\",\n, , , , , \"00\", , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[2679]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], TG:[, [, , \"[279]\\\\d{7}\", , , , , , , [8]], [, , \"2(?:2[2-7]|3[23]|4[45]|55|6[67]|77)\\\\d{5}\", , , , \"22212345\"], [, , \"(?:7[09]|9[0-36-9])\\\\d{6}\", , , , \"90112345\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"TG\",\n228, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[279]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], TH:[, [, , \"1\\\\d{8,9}|(?:[2-57]|[689]\\\\d)\\\\d{7}\", , , , , , , [8, 9, 10]], [, , \"(?:2\\\\d|3[2-9]|4[2-5]|5[2-6]|7[3-7])\\\\d{6}\", , , , \"21234567\", , , [8]], [, , \"(?:14|6[1-6]|[89]\\\\d)\\\\d{7}\", , , , \"812345678\", , , [9]], [, , \"1800\\\\d{6}\", , , , \"1800123456\", , , [10]], [, , \"1900\\\\d{6}\", , , ,\n\"1900123456\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"6[08]\\\\d{7}\", , , , \"601234567\", , , [9]], \"TH\", 66, \"00[1-9]\", \"0\", , , \"0\", , , , [[, \"(\\\\d)(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"2\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3,4})\", \"$1 $2 $3\", [\"14|[3-9]\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"1\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], TJ:[, [, , \"(?:[3-59]\\\\d|77|88)\\\\d{7}\", , ,\n, , , , [9], [3, 5, 6, 7]], [, , \"(?:3(?:1[3-5]|2[245]|3[12]|4[24-7]|5[25]|72)|4(?:46|74|87))\\\\d{6}\", , , , \"372123456\", , , , [3, 5, 6, 7]], [, , \"41[18]\\\\d{6}|(?:5[05]|77|88|9\\\\d)\\\\d{7}\", , , , \"917123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"TJ\", 992, \"810\", \"8\", , , \"8\", , \"8~10\", , [[, \"(\\\\d{6})(\\\\d)(\\\\d{2})\", \"$1 $2 $3\", [\"331\", \"3317\"], , , 1], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{4})\", \"$1 $2 $3\", [\"[34]7|91[78]\"],\n, , 1], [, \"(\\\\d{4})(\\\\d)(\\\\d{4})\", \"$1 $2 $3\", [\"3\"], , , 1], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[457-9]\"], , , 1]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], TK:[, [, , \"[2-47]\\\\d{3,6}\", , , , , , , [4, 5, 6, 7]], [, , \"(?:2[2-4]|[34]\\\\d)\\\\d{2,5}\", , , , \"3101\"], [, , \"7[2-4]\\\\d{2,5}\", , , , \"7290\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , ,\n, , , , [-1]], \"TK\", 690, \"00\", , , , , , , , , , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], TL:[, [, , \"7\\\\d{7}|(?:[2-47]\\\\d|[89]0)\\\\d{5}\", , , , , , , [7, 8]], [, , \"(?:2[1-5]|3[1-9]|4[1-4])\\\\d{5}\", , , , \"2112345\", , , [7]], [, , \"7[3-8]\\\\d{6}\", , , , \"77212345\", , , [8]], [, , \"80\\\\d{5}\", , , , \"8012345\", , , [7]], [, , \"90\\\\d{5}\", , , , \"9012345\", , , [7]], [, , , , , , , , , [-1]], [, , \"70\\\\d{5}\", , , , \"7012345\", , , [7]],\n[, , , , , , , , , [-1]], \"TL\", 670, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[2-489]|70\"]], [, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"7\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], TM:[, [, , \"[1-6]\\\\d{7}\", , , , , , , [8]], [, , \"(?:1(?:2\\\\d|3[1-9])|2(?:22|4[0-35-8])|3(?:22|4[03-9])|4(?:22|3[128]|4\\\\d|6[15])|5(?:22|5[7-9]|6[014-689]))\\\\d{5}\", , , , \"12345678\"], [, , \"6[1-9]\\\\d{6}\", , , , \"66123456\"], [, , , , , , ,\n, , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"TM\", 993, \"810\", \"8\", , , \"8\", , \"8~10\", , [[, \"(\\\\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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], TN:[, [, , \"[2-57-9]\\\\d{7}\", ,\n, , , , , [8]], [, , \"81200\\\\d{3}|(?:3[0-2]|7\\\\d)\\\\d{6}\", , , , \"30010123\"], [, , \"3(?:001|[12]40)\\\\d{4}|(?:(?:[259]\\\\d|4[0-6])\\\\d|3(?:1[1-35]|6[0-4]|91))\\\\d{5}\", , , , \"20123456\"], [, , \"8010\\\\d{4}\", , , , \"80101234\"], [, , \"88\\\\d{6}\", , , , \"88123456\"], [, , \"8[12]10\\\\d{4}\", , , , \"81101234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"TN\", 216, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[2-57-9]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [,\n, , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], TO:[, [, , \"(?:0800|[5-8]\\\\d{3})\\\\d{3}|[2-8]\\\\d{4}\", , , , , , , [5, 7]], [, , \"(?:2\\\\d|3[0-8]|4[0-4]|50|6[09]|7[0-24-69]|8[05])\\\\d{3}\", , , , \"20123\", , , [5]], [, , \"(?:6(?:3[02]|85|90)|7(?:[2-46]0|[578]\\\\d)|8[46-9]\\\\d)\\\\d{4}\", , , , \"7715123\", , , [7]], [, , \"0800\\\\d{3}\", , , , \"0800222\", , , [7]], [, , \"55[04]\\\\d{4}\", , , , \"5501234\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"TO\", 676, \"00\", ,\n, , , , , , [[, \"(\\\\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-8]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], TR:[, [, , \"(?:[2-58]\\\\d\\\\d|900)\\\\d{7}|4\\\\d{6}\", , , , , , , [7, 10]], [, , \"(?:2(?:[13][26]|[28][2468]|[45][268]|[67][246])|3(?:[13][28]|[24-6][2468]|[78][02468]|92)|4(?:[16][246]|[23578][2468]|4[26]))\\\\d{7}\", , , , \"2123456789\",\n, , [10]], [, , \"56161\\\\d{5}|5(?:0[15-7]|1[06]|24|[34]\\\\d|5[1-59]|9[46])\\\\d{7}\", , , , \"5012345678\", , , [10]], [, , \"800\\\\d{7}\", , , , \"8001234567\", , , [10]], [, , \"(?:8[89]8|900)\\\\d{7}\", , , , \"9001234567\", , , [10]], [, , , , , , , , , [-1]], [, , \"592(?:21[12]|461)\\\\d{4}\", , , , \"5922121234\", , , [10]], [, , , , , , , , , [-1]], \"TR\", 90, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d)(\\\\d{3})\", \"$1 $2 $3\", [\"444\"], , , 1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"512|8[0589]|90\"], \"0$1\", ,\n1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"5(?:[0-59]|61)\", \"5(?:[0-59]|616)\", \"5(?:[0-59]|6161)\"], \"0$1\", , 1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[24][1-8]|3[1-9]\"], \"(0$1)\", , 1]], [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"512|8[0589]|90\"], \"0$1\", , 1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"5(?:[0-59]|61)\", \"5(?:[0-59]|616)\", \"5(?:[0-59]|6161)\"], \"0$1\", , 1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[24][1-8]|3[1-9]\"],\n\"(0$1)\", , 1]], [, , \"512\\\\d{7}\", , , , \"5123456789\", , , [10]], , , [, , \"444\\\\d{4}\", , , , , , , [7]], [, , \"(?:444|850\\\\d{3})\\\\d{4}\", , , , \"4441444\"], , , [, , , , , , , , , [-1]]], TT:[, [, , \"(?:[58]\\\\d\\\\d|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"868(?:2(?:01|1[89]|[23]\\\\d|4[0-2])|6(?:0[7-9]|1[02-8]|2[1-9]|[3-69]\\\\d|7[0-79])|82[124])\\\\d{4}\", , , , \"8682211234\", , , , [7]], [, , \"868(?:2(?:6[6-9]|[7-9]\\\\d)|[37](?:0[1-9]|1[02-9]|[2-9]\\\\d)|4[6-9]\\\\d|6(?:20|78|8\\\\d))\\\\d{4}\", , , , \"8682911234\",\n, , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002345678\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002345678\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"TT\", 1, \"011\", \"1\", , , \"1|([2-46-8]\\\\d{6})$\", \"868$1\", , , , , [, , , , , , , , , [-1]], , \"868\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , \"868619\\\\d{4}\", , , , \"8686191234\", , , , [7]]], TV:[, [, , \"(?:2|7\\\\d\\\\d|90)\\\\d{4}\", , , , , , ,\n[5, 6, 7]], [, , \"2[02-9]\\\\d{3}\", , , , \"20123\", , , [5]], [, , \"(?:7[01]\\\\d|90)\\\\d{4}\", , , , \"901234\", , , [6, 7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"TV\", 688, \"00\", , , , , , , , , , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], TW:[, [, , \"(?:[24589]|7\\\\d)\\\\d{8}|[2-8]\\\\d{7}|2\\\\d{6}\", , , , , , , [7, 8, 9, 10]], [, , \"24\\\\d{6,7}|(?:6412|8(?:2(?:3\\\\d|66)|36[24-9]))\\\\d{4}|(?:2[235-8]\\\\d|3[2-9]|4(?:[239]\\\\d|[78])|5[2-8]|6[235-79]|7[1-9]|8[7-9])\\\\d{6}\",\n, , , \"221234567\", , , [8, 9]], [, , \"9[0-8]\\\\d{7}\", , , , \"912345678\", , , [9]], [, , \"80[0-79]\\\\d{6}\", , , , \"800123456\", , , [9]], [, , \"20(?:[013-9]\\\\d\\\\d|2)\\\\d{4}\", , , , \"203123456\", , , [7, 9]], [, , , , , , , , , [-1]], [, , \"99\\\\d{7}\", , , , \"990123456\", , , [9]], [, , \"70\\\\d{8}\", , , , \"7012345678\", , , [10]], \"TW\", 886, \"0(?:0[25-79]|19)\", \"0\", \"#\", , \"0\", , , , [[, \"(\\\\d{2})(\\\\d)(\\\\d{4})\", \"$1 $2 $3\", [\"202\"], \"0$1\"], [, \"(\\\\d)(\\\\d{3,4})(\\\\d{4})\", \"$1 $2 $3\", [\"[25][2-8]|[346]|7[1-9]|8[237-9]\"],\n\"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[258]\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"9\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"7\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"50[0-46-9]\\\\d{6}\", , , , \"500123456\", , , [9]], , , [, , , , , , , , , [-1]]], TZ:[, [, , \"(?:[26-8]\\\\d|41|90)\\\\d{7}\", , , , , , , [9]], [, , \"2[2-8]\\\\d{7}\", , , , \"222345678\"], [, , \"(?:6[2-9]|7[13-9])\\\\d{7}\", , , , \"621234567\"], [, , \"80[08]\\\\d{6}\",\n, , , \"800123456\"], [, , \"90\\\\d{7}\", , , , \"900123456\"], [, , \"8(?:40|6[01])\\\\d{6}\", , , , \"840123456\"], [, , , , , , , , , [-1]], [, , \"41\\\\d{7}\", , , , \"412345678\"], \"TZ\", 255, \"00[056]\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{4})\", \"$1 $2 $3\", [\"[89]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[24]\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[67]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , \"(?:8(?:[04]0|6[01])|90\\\\d)\\\\d{6}\"], [, , , , , , , , , [-1]], , , [,\n, , , , , , , , [-1]]], UA:[, [, , \"[89]\\\\d{9}|[3-9]\\\\d{8}\", , , , , , , [9, 10], [5, 6, 7]], [, , \"(?:3[1-8]|4[13-8]|5[1-7]|6[12459])\\\\d{7}\", , , , \"311234567\", , , [9], [5, 6, 7]], [, , \"(?:50|6[36-8]|7[1-3]|9[1-9])\\\\d{7}\", , , , \"501234567\", , , [9]], [, , \"800[1-8]\\\\d{5,6}\", , , , \"800123456\"], [, , \"900[239]\\\\d{5,6}\", , , , \"900212345\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"89[1-579]\\\\d{6}\", , , , \"891234567\", , , [9]], \"UA\", 380, \"00\", \"0\", , , \"0\", , \"0~0\", , [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\n\"$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{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"4[45][0-5]|5(?:0|6[37])|6(?:[12][018]|[36-8])|7|89|9[1-9]|(?:48|57)[0137-9]\", \"4[45][0-5]|5(?:0|6(?:3[14-7]|7))|6(?:[12][018]|[36-8])|7|89|9[1-9]|(?:48|57)[0137-9]\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d{5})\", \"$1 $2\", [\"[3-6]\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3,4})\", \"$1 $2 $3\", [\"[89]\"], \"0$1\"]],\n, [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], UG:[, [, , \"800\\\\d{6}|(?:[29]0|[347]\\\\d)\\\\d{7}\", , , , , , , [9], [5, 6, 7]], [, , \"(?:20(?:(?:(?:[0147]\\\\d|5[0-4])\\\\d|2(?:40|[5-9]\\\\d)|3(?:0[67]|2[0-4])|810)\\\\d|6(?:00[0-2]|[15-9]\\\\d\\\\d|30[0-4]))|[34]\\\\d{5})\\\\d{3}\", , , , \"312345678\", , , , [5, 6, 7]], [, , \"7260\\\\d{5}|7(?:[0157-9]\\\\d|20|4[0-4])\\\\d{6}\", , , , \"712345678\"], [, , \"800[1-3]\\\\d{5}\", , , , \"800123456\"], [, , \"90[1-3]\\\\d{6}\",\n, , , \"901123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"UG\", 256, \"00[057]\", \"0\", , , \"0\", , , , [[, \"(\\\\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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], US:[, [, , \"[2-9]\\\\d{9}\", , , , , , , [10], [7]], [, , \"(?: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[0135]|3[0-24679]|4[167]|5[12]|6[014]|8[056])|4(?:0[124-9]|1[02-579]|2[3-5]|3[0245]|4[0235]|58|6[39]|7[0589]|8[04])|5(?:0[1-57-9]|1[0235-8]|20|3[0149]|4[01]|5[19]|6[1-47]|7[013-5]|8[056])|6(?:0[1-35-9]|1[024-9]|2[03689]|[34][016]|5[017]|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[02-59]|8[156])|8(?:0[1-68]|1[02-8]|2[08]|3[0-28]|4[3578]|5[046-9]|6[02-5]|7[028])|9(?:0[1346-9]|1[02-9]|2[0589]|3[0146-8]|4[0179]|5[12469]|7[0-389]|8[04-69]))[2-9]\\\\d{6}\",\n, , , \"2015550123\", , , , [7]], [, , \"(?: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[0135]|3[0-24679]|4[167]|5[12]|6[014]|8[056])|4(?:0[124-9]|1[02-579]|2[3-5]|3[0245]|4[0235]|58|6[39]|7[0589]|8[04])|5(?:0[1-57-9]|1[0235-8]|20|3[0149]|4[01]|5[19]|6[1-47]|7[013-5]|8[056])|6(?:0[1-35-9]|1[024-9]|2[03689]|[34][016]|5[017]|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[02-59]|8[156])|8(?:0[1-68]|1[02-8]|2[08]|3[0-28]|4[3578]|5[046-9]|6[02-5]|7[028])|9(?:0[1346-9]|1[02-9]|2[0589]|3[0146-8]|4[0179]|5[12469]|7[0-389]|8[04-69]))[2-9]\\\\d{6}\",\n, , , \"2015550123\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002345678\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002345678\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"US\", 1, \"011\", \"1\", , , \"1\", , , 1, [[, \"(\\\\d{3})(\\\\d{4})\", \"$1-$2\", [\"[2-9]\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"($1) $2-$3\", [\"[2-9]\"], , , 1]], [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"[2-9]\"]]], [, , , , , , , , , [-1]], 1, , [,\n, , , , , , , , [-1]], [, , \"710[2-9]\\\\d{6}\", , , , \"7102123456\"], , , [, , , , , , , , , [-1]]], UY:[, [, , \"(?:[249]\\\\d\\\\d|80)\\\\d{5}|9\\\\d{6}\", , , , , , , [7, 8]], [, , \"(?:2\\\\d|4[2-7])\\\\d{6}\", , , , \"21231234\", , , [8], [7]], [, , \"9[1-9]\\\\d{6}\", , , , \"94231234\", , , [8]], [, , \"80[05]\\\\d{4}\", , , , \"8001234\", , , [7]], [, , \"90[0-8]\\\\d{4}\", , , , \"9001234\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"UY\", 598, \"0(?:0|1[3-9]\\\\d)\", \"0\", \" int. \", ,\n\"0\", , \"00\", , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"8|90\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"9\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[24]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], UZ:[, [, , \"[679]\\\\d{8}\", , , , , , , [9]], [, , \"78(?:1(?:13|2[02]|50)|2(?:10|2[139]|98)|77[01])\\\\d{4}|(?:6(?:1(?:22|3[124]|4[1-4]|5[1-3578]|64)|2(?:22|3[0-57-9]|41)|5(?:22|3[3-7]|5[024-8])|6\\\\d\\\\d|7(?:[23]\\\\d|7[69])|9(?:22|4[1-8]|6[135]))|7(?:0(?:5[4-9]|6[0146]|7[124-6]|9[135-8])|1[12]\\\\d|2(?:22|3[13-57-9]|4[1-3579]|5[14])|3(?:2\\\\d|3[1578]|4[1-35-7]|5[1-57]|61)|4(?:2\\\\d|3[1-579]|7[1-79])|5(?:22|5[1-9]|6[1457])|6(?:22|3[12457]|4[13-8])|9(?:22|5[1-9])))\\\\d{5}\",\n, , , \"669050123\"], [, , \"(?:6(?:1(?:2(?:2[01]|98)|35[0-4]|50\\\\d|61[23]|7(?:[01][017]|4\\\\d|55|9[5-9]))|2(?:(?:11|7\\\\d)\\\\d|2(?:[12]1|9[01379])|5(?:[126]\\\\d|3[0-4]))|5(?:19[01]|2(?:27|9[26])|(?:30|59|7\\\\d)\\\\d)|6(?:2(?:1[5-9]|2[0367]|38|41|52|60)|(?:3[79]|9[0-3])\\\\d|4(?:56|83)|7(?:[07]\\\\d|1[017]|3[07]|4[047]|5[057]|67|8[0178]|9[79]))|7(?:2(?:24|3[237]|4[5-9]|7[15-8])|5(?:7[12]|8[0589])|7(?:0\\\\d|[39][07])|9(?:0\\\\d|7[079]))|9(?:2(?:1[1267]|3[01]|5\\\\d|7[0-4])|(?:5[67]|7\\\\d)\\\\d|6(?:2[0-26]|8\\\\d)))|7(?:0\\\\d{3}|1(?:13[01]|6(?:0[47]|1[67]|66)|71[3-69]|98\\\\d)|2(?:2(?:2[79]|95)|3(?:2[5-9]|6[0-6])|57\\\\d|7(?:0\\\\d|1[17]|2[27]|3[37]|44|5[057]|66|88))|3(?:2(?:1[0-6]|21|3[469]|7[159])|(?:33|9[4-6])\\\\d|5(?:0[0-4]|5[579]|9\\\\d)|7(?:[0-3579]\\\\d|4[0467]|6[67]|8[078]))|4(?:2(?:29|5[0257]|6[0-7]|7[1-57])|5(?:1[0-4]|8\\\\d|9[5-9])|7(?:0\\\\d|1[024589]|2[0-27]|3[0137]|[46][07]|5[01]|7[5-9]|9[079])|9(?:7[015-9]|[89]\\\\d))|5(?:112|2(?:0\\\\d|2[29]|[49]4)|3[1568]\\\\d|52[6-9]|7(?:0[01578]|1[017]|[23]7|4[047]|[5-7]\\\\d|8[78]|9[079]))|6(?:2(?:2[1245]|4[2-4])|39\\\\d|41[179]|5(?:[349]\\\\d|5[0-2])|7(?:0[017]|[13]\\\\d|22|44|55|67|88))|9(?:22[128]|3(?:2[0-4]|7\\\\d)|57[02569]|7(?:2[05-9]|3[37]|4\\\\d|60|7[2579]|87|9[07])))|9[0-57-9]\\\\d{3})\\\\d{4}\",\n, , , \"912345678\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"UZ\", 998, \"810\", \"8\", , , \"8\", , \"8~10\", , [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[679]\"], \"8 $1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], VA:[, [, , \"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,\n10, 11, 12]], [, , \"06698\\\\d{1,6}\", , , , \"0669812345\", , , [6, 7, 8, 9, 10, 11]], [, , \"3[1-9]\\\\d{8}|3[2-9]\\\\d{7}\", , , , \"3123456789\", , , [9, 10]], [, , \"80(?:0\\\\d{3}|3)\\\\d{3}\", , , , \"800123456\", , , [6, 9]], [, , \"(?:0878\\\\d\\\\d|89(?:2|4[5-9]\\\\d))\\\\d{3}|89[45][0-4]\\\\d\\\\d|(?:1(?:44|6[346])|89(?:5[5-9]|9))\\\\d{6}\", , , , \"899123456\", , , [6, 8, 9, 10]], [, , \"84(?:[08]\\\\d{3}|[17])\\\\d{3}\", , , , \"848123456\", , , [6, 9]], [, , \"1(?:78\\\\d|99)\\\\d{6}\", , , , \"1781234567\", , , [9, 10]], [, , \"55\\\\d{8}\",\n, , , \"5512345678\", , , [10]], \"VA\", 39, \"00\", , , , , , , , , , [, , , , , , , , , [-1]], , \"06698\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , \"3[2-8]\\\\d{9,10}\", , , , \"33101234501\", , , [11, 12]]], VC:[, [, , \"(?:[58]\\\\d\\\\d|784|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"784(?:266|3(?:6[6-9]|7\\\\d|8[0-24-6])|4(?:38|5[0-36-8]|8[0-8])|5(?:55|7[0-2]|93)|638|784)\\\\d{4}\", , , , \"7842661234\", , , , [7]], [, , \"784(?:4(?:3[0-5]|5[45]|89|9[0-8])|5(?:2[6-9]|3[0-4]))\\\\d{4}\", , , , \"7844301234\",\n, , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002345678\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002345678\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"VC\", 1, \"011\", \"1\", , , \"1|([2-7]\\\\d{6})$\", \"784$1\", , , , , [, , , , , , , , , [-1]], , \"784\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], VE:[, [, , \"[89]00\\\\d{7}|(?:[24]\\\\d|50)\\\\d{8}\", , , , , , , [10], [7]], [, , \"(?:2(?:12|3[457-9]|[467]\\\\d|[58][1-9]|9[1-6])|50[01])\\\\d{7}\",\n, , , \"2121234567\", , , , [7]], [, , \"4(?:1[24-8]|2[46])\\\\d{7}\", , , , \"4121234567\"], [, , \"800\\\\d{7}\", , , , \"8001234567\"], [, , \"900\\\\d{7}\", , , , \"9001234567\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"VE\", 58, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{7})\", \"$1-$2\", [\"[24589]\"], \"0$1\", \"$CC $1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], VG:[, [, , \"(?:284|[58]\\\\d\\\\d|900)\\\\d{7}\",\n, , , , , , [10], [7]], [, , \"284496[0-5]\\\\d{3}|284(?:229|4(?:22|9[45])|774|8(?:52|6[459]))\\\\d{4}\", , , , \"2842291234\", , , , [7]], [, , \"284496[6-9]\\\\d{3}|284(?:3(?:0[0-3]|4[0-7]|68|9[34])|4(?:4[0-6]|68|99)|54[0-57])\\\\d{4}\", , , , \"2843001234\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002345678\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002345678\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"VG\", 1, \"011\",\n\"1\", , , \"1|([2-578]\\\\d{6})$\", \"284$1\", , , , , [, , , , , , , , , [-1]], , \"284\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], VI:[, [, , \"[58]\\\\d{9}|(?:34|90)0\\\\d{7}\", , , , , , , [10], [7]], [, , \"340(?:2(?:0[12]|2[06-8]|4[49]|77)|3(?:32|44)|4(?:22|7[34]|89)|5(?:1[34]|55)|6(?:2[56]|4[23]|77|9[023])|7(?:1[2-57-9]|27|7\\\\d)|884|998)\\\\d{4}\", , , , \"3406421234\", , , , [7]], [, , \"340(?:2(?:0[12]|2[06-8]|4[49]|77)|3(?:32|44)|4(?:22|7[34]|89)|5(?:1[34]|55)|6(?:2[56]|4[23]|77|9[023])|7(?:1[2-57-9]|27|7\\\\d)|884|998)\\\\d{4}\",\n, , , \"3406421234\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002345678\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002345678\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"VI\", 1, \"011\", \"1\", , , \"1|([2-9]\\\\d{6})$\", \"340$1\", , 1, , , [, , , , , , , , , [-1]], , \"340\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], VN:[, [, , \"[12]\\\\d{9}|[135-9]\\\\d{8}|[16]\\\\d{7}|[16-8]\\\\d{6}\",\n, , , , , , [7, 8, 9, 10]], [, , \"2(?:0[3-9]|1[0-689]|2[0-25-9]|3[2-9]|4[2-8]|5[124-9]|6[0-39]|7[0-7]|8[2-79]|9[0-4679])\\\\d{7}\", , , , \"2101234567\", , , [10]], [, , \"(?:52[238]|8(?:79|9[689])|99[013-9])\\\\d{6}|(?:3\\\\d|5[689]|7[06-9]|8[1-68]|9[0-8])\\\\d{7}\", , , , \"912345678\", , , [9]], [, , \"1(?:228\\\\d{4}|800\\\\d{4,6})\", , , , \"1800123456\", , , [8, 9, 10]], [, , \"1900\\\\d{4,6}\", , , , \"1900123456\", , , [8, 9, 10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"672\\\\d{6}\", , , , \"672012345\",\n, , [9]], \"VN\", 84, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[17]99\"], \"0$1\", , 1], [, \"(\\\\d{2})(\\\\d{5})\", \"$1 $2\", [\"80\"], \"0$1\", , 1], [, \"(\\\\d{3})(\\\\d{4,5})\", \"$1 $2\", [\"69\"], \"0$1\", , 1], [, \"(\\\\d{4})(\\\\d{4,6})\", \"$1 $2\", [\"1\"], , , 1], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[69]\"], \"0$1\", , 1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[3578]\"], \"0$1\", , 1], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"2[48]\"], \"0$1\", , 1], [, \"(\\\\d{3})(\\\\d{4})(\\\\d{3})\",\n\"$1 $2 $3\", [\"2\"], \"0$1\", , 1]], [[, \"(\\\\d{2})(\\\\d{5})\", \"$1 $2\", [\"80\"], \"0$1\", , 1], [, \"(\\\\d{4})(\\\\d{4,6})\", \"$1 $2\", [\"1\"], , , 1], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[69]\"], \"0$1\", , 1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[3578]\"], \"0$1\", , 1], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"2[48]\"], \"0$1\", , 1], [, \"(\\\\d{3})(\\\\d{4})(\\\\d{3})\", \"$1 $2 $3\", [\"2\"], \"0$1\", , 1]], [, , , , , , , , , [-1]], , , [, , \"[17]99\\\\d{4}|69\\\\d{5,6}\", , , , , , , [7, 8]], [, , \"(?:[17]99|80\\\\d)\\\\d{4}|69\\\\d{5,6}\",\n, , , \"1992000\", , , [7, 8]], , , [, , , , , , , , , [-1]]], VU:[, [, , \"(?:[23]\\\\d|[48]8)\\\\d{3}|(?:[57]\\\\d|90)\\\\d{5}\", , , , , , , [5, 7]], [, , \"(?:38[0-8]|48[4-9])\\\\d\\\\d|(?:2[02-9]|3[4-7]|88)\\\\d{3}\", , , , \"22123\", , , [5]], [, , \"57[2-5]\\\\d{4}|(?:5[0-689]|7[013-7])\\\\d{5}\", , , , \"5912345\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"90[1-9]\\\\d{4}\", , , , \"9010123\", , , [7]], \"VU\", 678, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\",\n\"$1 $2\", [\"[579]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"(?:3[03]|900\\\\d)\\\\d{3}\", , , , \"30123\"], , , [, , , , , , , , , [-1]]], WF:[, [, , \"(?:[45]0|68|72|8\\\\d)\\\\d{4}\", , , , , , , [6]], [, , \"(?:50|68|72)\\\\d{4}\", , , , \"501234\"], [, , \"(?:50|68|72|8[23])\\\\d{4}\", , , , \"501234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"WF\", 681, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\n\"$1 $2 $3\", [\"[4-8]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , \"[48]0\\\\d{4}\", , , , \"401234\"]], WS:[, [, , \"[2-6]\\\\d{4}|8\\\\d{5}(?:\\\\d{4})?|[78]\\\\d{6}\", , , , , , , [5, 6, 7, 10]], [, , \"(?:[2-5]\\\\d|6[1-9])\\\\d{3}\", , , , \"22123\", , , [5]], [, , \"(?:7[25-7]|8(?:[3-7]|9\\\\d{3}))\\\\d{5}\", , , , \"7212345\", , , [7, 10]], [, , \"800\\\\d{3}\", , , , \"800123\", , , [6]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , ,\n, , , , , [-1]], \"WS\", 685, \"0\", , , , , , , , [[, \"(\\\\d{5})\", \"$1\", [\"[2-6]\"]], [, \"(\\\\d{3})(\\\\d{3,7})\", \"$1 $2\", [\"8\"]], [, \"(\\\\d{2})(\\\\d{5})\", \"$1 $2\", [\"7\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], XK:[, [, , \"[23]\\\\d{7,8}|(?:4\\\\d\\\\d|[89]00)\\\\d{5}\", , , , , , , [8, 9]], [, , \"(?:2[89]|39)0\\\\d{6}|[23][89]\\\\d{6}\", , , , \"28012345\"], [, , \"4[3-79]\\\\d{6}\", , , , \"43201234\", , , [8]], [, , \"800\\\\d{5}\", , , , \"80001234\", ,\n, [8]], [, , \"900\\\\d{5}\", , , , \"90001234\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"XK\", 383, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], YE:[, [, , \"(?:1|7\\\\d)\\\\d{7}|[1-7]\\\\d{6}\",\n, , , , , , [7, 8, 9], [6]], [, , \"17\\\\d{6}|(?:[12][2-68]|3[2358]|4[2-58]|5[2-6]|6[3-58]|7[24-68])\\\\d{5}\", , , , \"1234567\", , , [7, 8], [6]], [, , \"7[0137]\\\\d{7}\", , , , \"712345678\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"YE\", 967, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d)(\\\\d{3})(\\\\d{3,4})\", \"$1 $2 $3\", [\"[1-6]|7[24-68]\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"7\"], \"0$1\"]], , [, , , ,\n, , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], YT:[, [, , \"80\\\\d{7}|(?:26|63)9\\\\d{6}\", , , , , , , [9]], [, , \"269(?:0[67]|5[01]|6\\\\d|[78]0)\\\\d{4}\", , , , \"269601234\"], [, , \"639(?:0[0-79]|1[019]|[267]\\\\d|3[09]|[45]0|9[04-79])\\\\d{4}\", , , , \"639012345\"], [, , \"80\\\\d{7}\", , , , \"801234567\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"YT\", 262, \"00\", \"0\", , , \"0\", , , , , , [, , ,\n, , , , , , [-1]], , \"269|63\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], ZA:[, [, , \"[1-9]\\\\d{8}|8\\\\d{4,7}\", , , , , , , [5, 6, 7, 8, 9]], [, , \"(?:1[0-8]|2[1-378]|3[1-69]|4\\\\d|5[1346-8])\\\\d{7}\", , , , \"101234567\", , , [9]], [, , \"8[1-4]\\\\d{3,7}|(?:6\\\\d|7[0-46-9]|85)\\\\d{7}\", , , , \"711234567\"], [, , \"80\\\\d{7}\", , , , \"801234567\", , , [9]], [, , \"(?:86[2-9]|9[0-2]\\\\d)\\\\d{6}\", , , , \"862345678\", , , [9]], [, , \"860\\\\d{6}\", , , , \"860123456\", , , [9]], [, , ,\n, , , , , , [-1]], [, , \"87\\\\d{7}\", , , , \"871234567\", , , [9]], \"ZA\", 27, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"861\\\\d{6}\", , , , \"861123456\", , , [9]], , , [, , , , , , , , , [-1]]], ZM:[, [, , \"800\\\\d{6}|(?:21|76|9\\\\d)\\\\d{7}\",\n, , , , , , [9], [6]], [, , \"21[1-8]\\\\d{6}\", , , , \"211234567\", , , , [6]], [, , \"(?:76|9[5-8])\\\\d{7}\", , , , \"955123456\"], [, , \"800\\\\d{6}\", , , , \"800123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"ZM\", 260, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{3})\", \"$1 $2\", [\"[1-9]\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[28]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{7})\", \"$1 $2\", [\"[79]\"], \"0$1\"]], [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\",\n[\"[28]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{7})\", \"$1 $2\", [\"[79]\"], \"0$1\"]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], ZW:[, [, , \"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], [3, 4]], [, , \"(?:1(?:(?:3\\\\d|9)\\\\d|[4-8])|2(?:(?:(?:0(?:2[014]|5)|(?:2[0157]|31|84|9)\\\\d\\\\d|[56](?:[14]\\\\d\\\\d|20)|7(?:[089]|2[03]|[35]\\\\d\\\\d))\\\\d|4(?:2\\\\d\\\\d|8))\\\\d|1(?:2|[39]\\\\d{4}))|3(?:(?:123|(?:29\\\\d|92)\\\\d)\\\\d\\\\d|7(?:[19]|[56]\\\\d))|5(?:0|1[2-478]|26|[37]2|4(?:2\\\\d{3}|83)|5(?:25\\\\d\\\\d|[78])|[689]\\\\d)|6(?:(?:[16-8]21|28|52[013])\\\\d\\\\d|[39])|8(?:[1349]28|523)\\\\d\\\\d)\\\\d{3}|(?:4\\\\d\\\\d|9[2-9])\\\\d{4,5}|(?:(?:2(?:(?:(?:0|8[146])\\\\d|7[1-7])\\\\d|2(?:[278]\\\\d|92)|58(?:2\\\\d|3))|3(?:[26]|9\\\\d{3})|5(?:4\\\\d|5)\\\\d\\\\d)\\\\d|6(?:(?:(?:[0-246]|[78]\\\\d)\\\\d|37)\\\\d|5[2-8]))\\\\d\\\\d|(?:2(?:[569]\\\\d|8[2-57-9])|3(?:[013-59]\\\\d|8[37])|6[89]8)\\\\d{3}\",\n, , , \"1312345\", , , , [3, 4]], [, , \"7(?:1[2-9]|[37][1-9]|8[2-7])\\\\d{6}\", , , , \"712345678\", , , [9]], [, , \"80(?:[01]\\\\d|20|8[0-8])\\\\d{3}\", , , , \"8001234\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"86(?:1[12]|22|30|44|55|77|8[368])\\\\d{6}\", , , , \"8686123456\", , , [10]], \"ZW\", 263, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\"], [,\n\"(\\\\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})\",\n\"$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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], 800:[, [, , \"\\\\d{8}\", , , , , ,\n, [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"\\\\d{8}\", , , , \"12345678\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"001\", 800, , , , , , , , 1, [[, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], 808:[, [, , \"\\\\d{8}\", , , , , , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , ,\n, , , , , , [-1]], [, , \"\\\\d{8}\", , , , \"12345678\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"001\", 808, , , , , , , , 1, [[, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], 870:[, [, , \"[35-7]\\\\d{8}\", , , , , , , [9]], [, , , , , , , , , [-1]], [, , \"(?:[356]\\\\d|7[6-8])\\\\d{7}\", , , , \"301234567\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , ,\n, , , [-1]], [, , , , , , , , , [-1]], \"001\", 870, , , , , , , , , [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[35-7]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], 878:[, [, , \"10\\\\d{10}\", , , , , , , [12]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"10\\\\d{10}\", , , , \"101234567890\"], \"001\", 878, , , , ,\n, , , 1, [[, \"(\\\\d{2})(\\\\d{5})(\\\\d{5})\", \"$1 $2 $3\", [\"1\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], 881:[, [, , \"[67]\\\\d{8}\", , , , , , , [9]], [, , , , , , , , , [-1]], [, , \"[67]\\\\d{8}\", , , , \"612345678\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"001\", 881, , , , , , , , , [[, \"(\\\\d)(\\\\d{3})(\\\\d{5})\", \"$1 $2 $3\", [\"[67]\"]]], , [,\n, , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], 882:[, [, , \"1\\\\d{6,11}|3\\\\d{6}(?:\\\\d{2,5})?\", , , , , , , [7, 8, 9, 10, 11, 12]], [, , , , , , , , , [-1]], [, , \"3(?:37\\\\d\\\\d|42)\\\\d{4}|3(?:2|47|7\\\\d{3})\\\\d{7}\", , , , \"3421234\", , , [7, 9, 10, 12]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"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})|3(?:45|9\\\\d{3})\\\\d{7}\",\n, , , \"390123456789\"], \"001\", 882, , , , , , , , , [[, \"(\\\\d{2})(\\\\d{5})\", \"$1 $2\", [\"16|342\"]], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{4})\", \"$1 $2 $3\", [\"1\"]], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{3})\", \"$1 $2 $3\", [\"3[23]\"]], [, \"(\\\\d{2})(\\\\d{3,4})(\\\\d{4})\", \"$1 $2 $3\", [\"1\"]], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"34[57]\"]], [, \"(\\\\d{3})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"34\"]], [, \"(\\\\d{2})(\\\\d{4,5})(\\\\d{5})\", \"$1 $2 $3\", [\"[13]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]],\n, , [, , \"348[57]\\\\d{7}\", , , , \"34851234567\", , , [11]]], 883:[, [, , \"51\\\\d{7}(?:\\\\d{3})?\", , , , , , , [9, 12]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"51[013]0\\\\d{8}|5100\\\\d{5}\", , , , \"510012345\"], \"001\", 883, , , , , , , , 1, [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"510\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3 $4\", [\"510\"]], [, \"(\\\\d{4})(\\\\d{4})(\\\\d{4})\",\n\"$1 $2 $3\", [\"5\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], 888:[, [, , \"\\\\d{11}\", , , , , , , [11]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"001\", 888, , , , , , , , 1, [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{5})\", \"$1 $2 $3\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"\\\\d{11}\",\n, , , \"12345678901\"], , , [, , , , , , , , , [-1]]], 979:[, [, , \"\\\\d{9}\", , , , , , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"\\\\d{9}\", , , , \"123456789\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"001\", 979, , , , , , , , 1, [[, \"(\\\\d)(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]]};\n/*\n\n Copyright (C) 2010 The Libphonenumber Authors.\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n*/\ni18n.phonenumbers.PhoneNumberUtil = function() {\n  this.regionToMetadataMap = {};\n};\ngoog.addSingletonGetter(i18n.phonenumbers.PhoneNumberUtil);\ni18n.phonenumbers.Error = {INVALID_COUNTRY_CODE:\"Invalid country calling code\", NOT_A_NUMBER:\"The string supplied did not seem to be a phone number\", TOO_SHORT_AFTER_IDD:\"Phone number too short after IDD\", TOO_SHORT_NSN:\"The string supplied is too short to be a phone number\", TOO_LONG:\"The string supplied is too long to be a phone number\"};\ni18n.phonenumbers.PhoneNumberUtil.NANPA_COUNTRY_CODE_ = 1;\ni18n.phonenumbers.PhoneNumberUtil.MIN_LENGTH_FOR_NSN_ = 2;\ni18n.phonenumbers.PhoneNumberUtil.MAX_LENGTH_FOR_NSN_ = 17;\ni18n.phonenumbers.PhoneNumberUtil.MAX_LENGTH_COUNTRY_CODE_ = 3;\ni18n.phonenumbers.PhoneNumberUtil.MAX_INPUT_STRING_LENGTH_ = 250;\ni18n.phonenumbers.PhoneNumberUtil.UNKNOWN_REGION_ = \"ZZ\";\ni18n.phonenumbers.PhoneNumberUtil.COLOMBIA_MOBILE_TO_FIXED_LINE_PREFIX_ = \"3\";\ni18n.phonenumbers.PhoneNumberUtil.MOBILE_TOKEN_MAPPINGS_ = {54:\"9\"};\ni18n.phonenumbers.PhoneNumberUtil.GEO_MOBILE_COUNTRIES_ = [52, 54, 55];\ni18n.phonenumbers.PhoneNumberUtil.PLUS_SIGN = \"+\";\ni18n.phonenumbers.PhoneNumberUtil.STAR_SIGN_ = \"*\";\ni18n.phonenumbers.PhoneNumberUtil.RFC3966_EXTN_PREFIX_ = \";ext=\";\ni18n.phonenumbers.PhoneNumberUtil.RFC3966_PREFIX_ = \"tel:\";\ni18n.phonenumbers.PhoneNumberUtil.RFC3966_PHONE_CONTEXT_ = \";phone-context=\";\ni18n.phonenumbers.PhoneNumberUtil.RFC3966_ISDN_SUBADDRESS_ = \";isub=\";\ni18n.phonenumbers.PhoneNumberUtil.DIGIT_MAPPINGS = {0:\"0\", 1:\"1\", 2:\"2\", 3:\"3\", 4:\"4\", 5:\"5\", 6:\"6\", 7:\"7\", 8:\"8\", 9:\"9\", \"\\uff10\":\"0\", \"\\uff11\":\"1\", \"\\uff12\":\"2\", \"\\uff13\":\"3\", \"\\uff14\":\"4\", \"\\uff15\":\"5\", \"\\uff16\":\"6\", \"\\uff17\":\"7\", \"\\uff18\":\"8\", \"\\uff19\":\"9\", \"\\u0660\":\"0\", \"\\u0661\":\"1\", \"\\u0662\":\"2\", \"\\u0663\":\"3\", \"\\u0664\":\"4\", \"\\u0665\":\"5\", \"\\u0666\":\"6\", \"\\u0667\":\"7\", \"\\u0668\":\"8\", \"\\u0669\":\"9\", \"\\u06f0\":\"0\", \"\\u06f1\":\"1\", \"\\u06f2\":\"2\", \"\\u06f3\":\"3\", \"\\u06f4\":\"4\", \"\\u06f5\":\"5\", \"\\u06f6\":\"6\", \"\\u06f7\":\"7\",\n\"\\u06f8\":\"8\", \"\\u06f9\":\"9\"};\ni18n.phonenumbers.PhoneNumberUtil.DIALLABLE_CHAR_MAPPINGS_ = {0:\"0\", 1:\"1\", 2:\"2\", 3:\"3\", 4:\"4\", 5:\"5\", 6:\"6\", 7:\"7\", 8:\"8\", 9:\"9\", \"+\":i18n.phonenumbers.PhoneNumberUtil.PLUS_SIGN, \"*\":\"*\", \"#\":\"#\"};\ni18n.phonenumbers.PhoneNumberUtil.ALPHA_MAPPINGS_ = {A:\"2\", B:\"2\", C:\"2\", D:\"3\", E:\"3\", F:\"3\", G:\"4\", H:\"4\", I:\"4\", J:\"5\", K:\"5\", L:\"5\", M:\"6\", N:\"6\", O:\"6\", P:\"7\", Q:\"7\", R:\"7\", S:\"7\", T:\"8\", U:\"8\", V:\"8\", W:\"9\", X:\"9\", Y:\"9\", Z:\"9\"};\ni18n.phonenumbers.PhoneNumberUtil.ALL_NORMALIZATION_MAPPINGS_ = {0:\"0\", 1:\"1\", 2:\"2\", 3:\"3\", 4:\"4\", 5:\"5\", 6:\"6\", 7:\"7\", 8:\"8\", 9:\"9\", \"\\uff10\":\"0\", \"\\uff11\":\"1\", \"\\uff12\":\"2\", \"\\uff13\":\"3\", \"\\uff14\":\"4\", \"\\uff15\":\"5\", \"\\uff16\":\"6\", \"\\uff17\":\"7\", \"\\uff18\":\"8\", \"\\uff19\":\"9\", \"\\u0660\":\"0\", \"\\u0661\":\"1\", \"\\u0662\":\"2\", \"\\u0663\":\"3\", \"\\u0664\":\"4\", \"\\u0665\":\"5\", \"\\u0666\":\"6\", \"\\u0667\":\"7\", \"\\u0668\":\"8\", \"\\u0669\":\"9\", \"\\u06f0\":\"0\", \"\\u06f1\":\"1\", \"\\u06f2\":\"2\", \"\\u06f3\":\"3\", \"\\u06f4\":\"4\", \"\\u06f5\":\"5\", \"\\u06f6\":\"6\",\n\"\\u06f7\":\"7\", \"\\u06f8\":\"8\", \"\\u06f9\":\"9\", A:\"2\", B:\"2\", C:\"2\", D:\"3\", E:\"3\", F:\"3\", G:\"4\", H:\"4\", I:\"4\", J:\"5\", K:\"5\", L:\"5\", M:\"6\", N:\"6\", O:\"6\", P:\"7\", Q:\"7\", R:\"7\", S:\"7\", T:\"8\", U:\"8\", V:\"8\", W:\"9\", X:\"9\", Y:\"9\", Z:\"9\"};\ni18n.phonenumbers.PhoneNumberUtil.ALL_PLUS_NUMBER_GROUPING_SYMBOLS_ = {0:\"0\", 1:\"1\", 2:\"2\", 3:\"3\", 4:\"4\", 5:\"5\", 6:\"6\", 7:\"7\", 8:\"8\", 9:\"9\", A:\"A\", B:\"B\", C:\"C\", D:\"D\", E:\"E\", F:\"F\", G:\"G\", H:\"H\", I:\"I\", J:\"J\", K:\"K\", L:\"L\", M:\"M\", N:\"N\", O:\"O\", P:\"P\", Q:\"Q\", R:\"R\", S:\"S\", T:\"T\", U:\"U\", V:\"V\", W:\"W\", X:\"X\", Y:\"Y\", Z:\"Z\", a:\"A\", b:\"B\", c:\"C\", d:\"D\", e:\"E\", f:\"F\", g:\"G\", h:\"H\", i:\"I\", j:\"J\", k:\"K\", l:\"L\", m:\"M\", n:\"N\", o:\"O\", p:\"P\", q:\"Q\", r:\"R\", s:\"S\", t:\"T\", u:\"U\", v:\"V\", w:\"W\", x:\"X\", y:\"Y\", z:\"Z\",\n\"-\":\"-\", \"\\uff0d\":\"-\", \"\\u2010\":\"-\", \"\\u2011\":\"-\", \"\\u2012\":\"-\", \"\\u2013\":\"-\", \"\\u2014\":\"-\", \"\\u2015\":\"-\", \"\\u2212\":\"-\", \"/\":\"/\", \"\\uff0f\":\"/\", \" \":\" \", \"\\u3000\":\" \", \"\\u2060\":\" \", \".\":\".\", \"\\uff0e\":\".\"};\ni18n.phonenumbers.PhoneNumberUtil.SINGLE_INTERNATIONAL_PREFIX_ = /[\\d]+(?:[~\\u2053\\u223C\\uFF5E][\\d]+)?/;\ni18n.phonenumbers.PhoneNumberUtil.VALID_PUNCTUATION = \"-x\\u2010-\\u2015\\u2212\\u30fc\\uff0d-\\uff0f \\u00a0\\u00ad\\u200b\\u2060\\u3000()\\uff08\\uff09\\uff3b\\uff3d.\\\\[\\\\]/~\\u2053\\u223c\\uff5e\";\ni18n.phonenumbers.PhoneNumberUtil.VALID_DIGITS_ = \"0-9\\uff10-\\uff19\\u0660-\\u0669\\u06f0-\\u06f9\";\ni18n.phonenumbers.PhoneNumberUtil.VALID_ALPHA_ = \"A-Za-z\";\ni18n.phonenumbers.PhoneNumberUtil.PLUS_CHARS_ = \"+\\uff0b\";\ni18n.phonenumbers.PhoneNumberUtil.PLUS_CHARS_PATTERN = new RegExp(\"[\" + i18n.phonenumbers.PhoneNumberUtil.PLUS_CHARS_ + \"]+\");\ni18n.phonenumbers.PhoneNumberUtil.LEADING_PLUS_CHARS_PATTERN = new RegExp(\"^[\" + i18n.phonenumbers.PhoneNumberUtil.PLUS_CHARS_ + \"]+\");\ni18n.phonenumbers.PhoneNumberUtil.SEPARATOR_PATTERN_ = \"[\" + i18n.phonenumbers.PhoneNumberUtil.VALID_PUNCTUATION + \"]+\";\ni18n.phonenumbers.PhoneNumberUtil.CAPTURING_DIGIT_PATTERN = new RegExp(\"([\" + i18n.phonenumbers.PhoneNumberUtil.VALID_DIGITS_ + \"])\");\ni18n.phonenumbers.PhoneNumberUtil.VALID_START_CHAR_PATTERN_ = new RegExp(\"[\" + i18n.phonenumbers.PhoneNumberUtil.PLUS_CHARS_ + i18n.phonenumbers.PhoneNumberUtil.VALID_DIGITS_ + \"]\");\ni18n.phonenumbers.PhoneNumberUtil.SECOND_NUMBER_START_PATTERN_ = /[\\\\\\/] *x/;\ni18n.phonenumbers.PhoneNumberUtil.UNWANTED_END_CHAR_PATTERN_ = new RegExp(\"[^\" + i18n.phonenumbers.PhoneNumberUtil.VALID_DIGITS_ + i18n.phonenumbers.PhoneNumberUtil.VALID_ALPHA_ + \"#]+$\");\ni18n.phonenumbers.PhoneNumberUtil.VALID_ALPHA_PHONE_PATTERN_ = /(?:.*?[A-Za-z]){3}.*/;\ni18n.phonenumbers.PhoneNumberUtil.MIN_LENGTH_PHONE_NUMBER_PATTERN_ = \"[\" + i18n.phonenumbers.PhoneNumberUtil.VALID_DIGITS_ + \"]{\" + i18n.phonenumbers.PhoneNumberUtil.MIN_LENGTH_FOR_NSN_ + \"}\";\ni18n.phonenumbers.PhoneNumberUtil.VALID_PHONE_NUMBER_ = \"[\" + i18n.phonenumbers.PhoneNumberUtil.PLUS_CHARS_ + \"]*(?:[\" + i18n.phonenumbers.PhoneNumberUtil.VALID_PUNCTUATION + i18n.phonenumbers.PhoneNumberUtil.STAR_SIGN_ + \"]*[\" + i18n.phonenumbers.PhoneNumberUtil.VALID_DIGITS_ + \"]){3,}[\" + i18n.phonenumbers.PhoneNumberUtil.VALID_PUNCTUATION + i18n.phonenumbers.PhoneNumberUtil.STAR_SIGN_ + i18n.phonenumbers.PhoneNumberUtil.VALID_ALPHA_ + i18n.phonenumbers.PhoneNumberUtil.VALID_DIGITS_ + \"]*\";\ni18n.phonenumbers.PhoneNumberUtil.DEFAULT_EXTN_PREFIX_ = \" ext. \";\ni18n.phonenumbers.PhoneNumberUtil.CAPTURING_EXTN_DIGITS_ = \"([\" + i18n.phonenumbers.PhoneNumberUtil.VALID_DIGITS_ + \"]{1,7})\";\ni18n.phonenumbers.PhoneNumberUtil.EXTN_PATTERNS_FOR_PARSING_ = i18n.phonenumbers.PhoneNumberUtil.RFC3966_EXTN_PREFIX_ + i18n.phonenumbers.PhoneNumberUtil.CAPTURING_EXTN_DIGITS_ + \"|[ \\u00a0\\\\t,]*(?:e?xt(?:ensi(?:o\\u0301?|\\u00f3))?n?|\\uff45?\\uff58\\uff54\\uff4e?|\\u0434\\u043e\\u0431|[;,x\\uff58#\\uff03~\\uff5e]|int|anexo|\\uff49\\uff4e\\uff54)[:\\\\.\\uff0e]?[ \\u00a0\\\\t,-]*\" + i18n.phonenumbers.PhoneNumberUtil.CAPTURING_EXTN_DIGITS_ + \"#?|[- ]+([\" + i18n.phonenumbers.PhoneNumberUtil.VALID_DIGITS_ + \"]{1,5})#\";\ni18n.phonenumbers.PhoneNumberUtil.EXTN_PATTERN_ = new RegExp(\"(?:\" + i18n.phonenumbers.PhoneNumberUtil.EXTN_PATTERNS_FOR_PARSING_ + \")$\", \"i\");\ni18n.phonenumbers.PhoneNumberUtil.VALID_PHONE_NUMBER_PATTERN_ = new RegExp(\"^\" + i18n.phonenumbers.PhoneNumberUtil.MIN_LENGTH_PHONE_NUMBER_PATTERN_ + \"$|^\" + i18n.phonenumbers.PhoneNumberUtil.VALID_PHONE_NUMBER_ + \"(?:\" + i18n.phonenumbers.PhoneNumberUtil.EXTN_PATTERNS_FOR_PARSING_ + \")?$\", \"i\");\ni18n.phonenumbers.PhoneNumberUtil.NON_DIGITS_PATTERN_ = /\\D+/;\ni18n.phonenumbers.PhoneNumberUtil.FIRST_GROUP_PATTERN_ = /(\\$\\d)/;\ni18n.phonenumbers.PhoneNumberUtil.NP_PATTERN_ = /\\$NP/;\ni18n.phonenumbers.PhoneNumberUtil.FG_PATTERN_ = /\\$FG/;\ni18n.phonenumbers.PhoneNumberUtil.CC_PATTERN_ = /\\$CC/;\ni18n.phonenumbers.PhoneNumberUtil.FIRST_GROUP_ONLY_PREFIX_PATTERN_ = /^\\(?\\$1\\)?$/;\ni18n.phonenumbers.PhoneNumberUtil.REGION_CODE_FOR_NON_GEO_ENTITY = \"001\";\ni18n.phonenumbers.PhoneNumberFormat = {E164:0, INTERNATIONAL:1, NATIONAL:2, RFC3966:3};\ni18n.phonenumbers.PhoneNumberType = {FIXED_LINE:0, MOBILE:1, FIXED_LINE_OR_MOBILE:2, TOLL_FREE:3, PREMIUM_RATE:4, SHARED_COST:5, VOIP:6, PERSONAL_NUMBER:7, PAGER:8, UAN:9, VOICEMAIL:10, UNKNOWN:-1};\ni18n.phonenumbers.PhoneNumberUtil.MatchType = {NOT_A_NUMBER:0, NO_MATCH:1, SHORT_NSN_MATCH:2, NSN_MATCH:3, EXACT_MATCH:4};\ni18n.phonenumbers.PhoneNumberUtil.ValidationResult = {IS_POSSIBLE:0, IS_POSSIBLE_LOCAL_ONLY:4, INVALID_COUNTRY_CODE:1, TOO_SHORT:2, INVALID_LENGTH:5, TOO_LONG:3};\ni18n.phonenumbers.PhoneNumberUtil.extractPossibleNumber = function(a) {\n  var b = a.search(i18n.phonenumbers.PhoneNumberUtil.VALID_START_CHAR_PATTERN_);\n  0 <= b ? (a = a.substring(b), a = a.replace(i18n.phonenumbers.PhoneNumberUtil.UNWANTED_END_CHAR_PATTERN_, \"\"), b = a.search(i18n.phonenumbers.PhoneNumberUtil.SECOND_NUMBER_START_PATTERN_), 0 <= b && (a = a.substring(0, b))) : a = \"\";\n  return a;\n};\ni18n.phonenumbers.PhoneNumberUtil.isViablePhoneNumber = function(a) {\n  return a.length < i18n.phonenumbers.PhoneNumberUtil.MIN_LENGTH_FOR_NSN_ ? !1 : i18n.phonenumbers.PhoneNumberUtil.matchesEntirely(i18n.phonenumbers.PhoneNumberUtil.VALID_PHONE_NUMBER_PATTERN_, a);\n};\ni18n.phonenumbers.PhoneNumberUtil.normalize = function(a) {\n  return i18n.phonenumbers.PhoneNumberUtil.matchesEntirely(i18n.phonenumbers.PhoneNumberUtil.VALID_ALPHA_PHONE_PATTERN_, a) ? i18n.phonenumbers.PhoneNumberUtil.normalizeHelper_(a, i18n.phonenumbers.PhoneNumberUtil.ALL_NORMALIZATION_MAPPINGS_, !0) : i18n.phonenumbers.PhoneNumberUtil.normalizeDigitsOnly(a);\n};\ni18n.phonenumbers.PhoneNumberUtil.normalizeSB_ = function(a) {\n  var b = i18n.phonenumbers.PhoneNumberUtil.normalize(a.toString());\n  a.clear();\n  a.append(b);\n};\ni18n.phonenumbers.PhoneNumberUtil.normalizeDigitsOnly = function(a) {\n  return i18n.phonenumbers.PhoneNumberUtil.normalizeHelper_(a, i18n.phonenumbers.PhoneNumberUtil.DIGIT_MAPPINGS, !0);\n};\ni18n.phonenumbers.PhoneNumberUtil.normalizeDiallableCharsOnly = function(a) {\n  return i18n.phonenumbers.PhoneNumberUtil.normalizeHelper_(a, i18n.phonenumbers.PhoneNumberUtil.DIALLABLE_CHAR_MAPPINGS_, !0);\n};\ni18n.phonenumbers.PhoneNumberUtil.convertAlphaCharactersInNumber = function(a) {\n  return i18n.phonenumbers.PhoneNumberUtil.normalizeHelper_(a, i18n.phonenumbers.PhoneNumberUtil.ALL_NORMALIZATION_MAPPINGS_, !1);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getLengthOfGeographicalAreaCode = function(a) {\n  var b = this.getMetadataForRegion(this.getRegionCodeForNumber(a));\n  return null != b && (b.hasNationalPrefix() || a.hasItalianLeadingZero()) && this.isNumberGeographical(a) ? this.getLengthOfNationalDestinationCode(a) : 0;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getLengthOfNationalDestinationCode = function(a) {\n  if (a.hasExtension()) {\n    var b = a.clone();\n    b.clearExtension();\n  } else {\n    b = a;\n  }\n  b = this.format(b, i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL).split(i18n.phonenumbers.PhoneNumberUtil.NON_DIGITS_PATTERN_);\n  0 == b[0].length && b.shift();\n  return 2 >= b.length ? 0 : this.getNumberType(a) == i18n.phonenumbers.PhoneNumberType.MOBILE && (a = i18n.phonenumbers.PhoneNumberUtil.getCountryMobileToken(a.getCountryCodeOrDefault()), \"\" != a) ? b[2].length + a.length : b[1].length;\n};\ni18n.phonenumbers.PhoneNumberUtil.getCountryMobileToken = function(a) {\n  return i18n.phonenumbers.PhoneNumberUtil.MOBILE_TOKEN_MAPPINGS_[a] || \"\";\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getSupportedRegions = function() {\n  return goog.array.filter(Object.keys(i18n.phonenumbers.metadata.countryToMetadata), function(a) {\n    return isNaN(a);\n  });\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getSupportedGlobalNetworkCallingCodes = function() {\n  var a = goog.array.filter(Object.keys(i18n.phonenumbers.metadata.countryToMetadata), function(a) {\n    return !isNaN(a);\n  });\n  return goog.array.map(a, function(a) {\n    return parseInt(a, 10);\n  });\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getSupportedCallingCodes = function() {\n  var a = Object.keys(i18n.phonenumbers.metadata.countryCodeToRegionCodeMap);\n  return goog.array.join(this.getSupportedGlobalNetworkCallingCodes(), goog.array.map(a, function(a) {\n    return parseInt(a, 10);\n  }));\n};\ni18n.phonenumbers.PhoneNumberUtil.descHasPossibleNumberData_ = function(a) {\n  return null != a && (1 != a.possibleLengthCount() || -1 != a.possibleLengthArray()[0]);\n};\ni18n.phonenumbers.PhoneNumberUtil.descHasData_ = function(a) {\n  return null != a && (a.hasExampleNumber() || i18n.phonenumbers.PhoneNumberUtil.descHasPossibleNumberData_(a) || a.hasNationalNumberPattern());\n};\ni18n.phonenumbers.PhoneNumberUtil.getSupportedTypesForMetadata_ = function(a) {\n  var b = [];\n  goog.object.forEach(i18n.phonenumbers.PhoneNumberType, function(c) {\n    if (c != i18n.phonenumbers.PhoneNumberType.FIXED_LINE_OR_MOBILE && c != i18n.phonenumbers.PhoneNumberType.UNKNOWN) {\n      var d = i18n.phonenumbers.PhoneNumberUtil.getNumberDescByType_(a, c);\n      i18n.phonenumbers.PhoneNumberUtil.descHasData_(d) && b.push(c);\n    }\n  });\n  return b;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getSupportedTypesForRegion = function(a) {\n  return this.isValidRegionCode_(a) ? i18n.phonenumbers.PhoneNumberUtil.getSupportedTypesForMetadata_(this.getMetadataForRegion(a)) : [];\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getSupportedTypesForNonGeoEntity = function(a) {\n  a = this.getMetadataForNonGeographicalRegion(a);\n  return null == a ? [] : i18n.phonenumbers.PhoneNumberUtil.getSupportedTypesForMetadata_(a);\n};\ni18n.phonenumbers.PhoneNumberUtil.normalizeHelper_ = function(a, b, c) {\n  for (var d = new goog.string.StringBuffer, e, f, g = a.length, h = 0; h < g; ++h) {\n    e = a.charAt(h), f = b[e.toUpperCase()], null != f ? d.append(f) : c || d.append(e);\n  }\n  return d.toString();\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.formattingRuleHasFirstGroupOnly = function(a) {\n  return 0 == a.length || i18n.phonenumbers.PhoneNumberUtil.FIRST_GROUP_ONLY_PREFIX_PATTERN_.test(a);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isNumberGeographical = function(a) {\n  var b = this.getNumberType(a);\n  return b == i18n.phonenumbers.PhoneNumberType.FIXED_LINE || b == i18n.phonenumbers.PhoneNumberType.FIXED_LINE_OR_MOBILE || goog.array.contains(i18n.phonenumbers.PhoneNumberUtil.GEO_MOBILE_COUNTRIES_, a.getCountryCodeOrDefault()) && b == i18n.phonenumbers.PhoneNumberType.MOBILE;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isValidRegionCode_ = function(a) {\n  return null != a && isNaN(a) && a.toUpperCase() in i18n.phonenumbers.metadata.countryToMetadata;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.hasValidCountryCallingCode_ = function(a) {\n  return a in i18n.phonenumbers.metadata.countryCodeToRegionCodeMap;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.format = function(a, b) {\n  if (0 == a.getNationalNumber() && a.hasRawInput()) {\n    var c = a.getRawInputOrDefault();\n    if (0 < c.length) {\n      return c;\n    }\n  }\n  c = a.getCountryCodeOrDefault();\n  var d = this.getNationalSignificantNumber(a);\n  if (b == i18n.phonenumbers.PhoneNumberFormat.E164) {\n    return this.prefixNumberWithCountryCallingCode_(c, i18n.phonenumbers.PhoneNumberFormat.E164, d, \"\");\n  }\n  if (!this.hasValidCountryCallingCode_(c)) {\n    return d;\n  }\n  var e = this.getRegionCodeForCountryCode(c), f = this.getMetadataForRegionOrCallingCode_(c, e);\n  e = this.maybeGetFormattedExtension_(a, f, b);\n  d = this.formatNsn_(d, f, b);\n  return this.prefixNumberWithCountryCallingCode_(c, b, d, e);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.formatByPattern = function(a, b, c) {\n  var d = a.getCountryCodeOrDefault(), e = this.getNationalSignificantNumber(a);\n  if (!this.hasValidCountryCallingCode_(d)) {\n    return e;\n  }\n  var f = this.getRegionCodeForCountryCode(d);\n  f = this.getMetadataForRegionOrCallingCode_(d, f);\n  var g = this.chooseFormattingPatternForNumber_(c, e);\n  if (null != g) {\n    c = g.clone();\n    g = g.getNationalPrefixFormattingRuleOrDefault();\n    if (0 < g.length) {\n      var h = f.getNationalPrefixOrDefault();\n      0 < h.length ? (g = g.replace(i18n.phonenumbers.PhoneNumberUtil.NP_PATTERN_, h).replace(i18n.phonenumbers.PhoneNumberUtil.FG_PATTERN_, \"$1\"), c.setNationalPrefixFormattingRule(g)) : c.clearNationalPrefixFormattingRule();\n    }\n    e = this.formatNsnUsingPattern_(e, c, b);\n  }\n  a = this.maybeGetFormattedExtension_(a, f, b);\n  return this.prefixNumberWithCountryCallingCode_(d, b, e, a);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.formatNationalNumberWithCarrierCode = function(a, b) {\n  var c = a.getCountryCodeOrDefault(), d = this.getNationalSignificantNumber(a);\n  if (!this.hasValidCountryCallingCode_(c)) {\n    return d;\n  }\n  var e = this.getRegionCodeForCountryCode(c), f = this.getMetadataForRegionOrCallingCode_(c, e);\n  e = this.maybeGetFormattedExtension_(a, f, i18n.phonenumbers.PhoneNumberFormat.NATIONAL);\n  d = this.formatNsn_(d, f, i18n.phonenumbers.PhoneNumberFormat.NATIONAL, b);\n  return this.prefixNumberWithCountryCallingCode_(c, i18n.phonenumbers.PhoneNumberFormat.NATIONAL, d, e);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getMetadataForRegionOrCallingCode_ = function(a, b) {\n  return i18n.phonenumbers.PhoneNumberUtil.REGION_CODE_FOR_NON_GEO_ENTITY == b ? this.getMetadataForNonGeographicalRegion(a) : this.getMetadataForRegion(b);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.formatNationalNumberWithPreferredCarrierCode = function(a, b) {\n  return this.formatNationalNumberWithCarrierCode(a, 0 < a.getPreferredDomesticCarrierCodeOrDefault().length ? a.getPreferredDomesticCarrierCodeOrDefault() : b);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.formatNumberForMobileDialing = function(a, b, c) {\n  var d = a.getCountryCodeOrDefault();\n  if (!this.hasValidCountryCallingCode_(d)) {\n    return a.hasRawInput() ? a.getRawInputOrDefault() : \"\";\n  }\n  var e = \"\";\n  a = a.clone();\n  a.clearExtension();\n  var f = this.getRegionCodeForCountryCode(d), g = this.getNumberType(a), h = g != i18n.phonenumbers.PhoneNumberType.UNKNOWN;\n  if (b == f) {\n    e = g == i18n.phonenumbers.PhoneNumberType.FIXED_LINE || g == i18n.phonenumbers.PhoneNumberType.MOBILE || g == i18n.phonenumbers.PhoneNumberType.FIXED_LINE_OR_MOBILE, \"CO\" == f && g == i18n.phonenumbers.PhoneNumberType.FIXED_LINE ? e = this.formatNationalNumberWithCarrierCode(a, i18n.phonenumbers.PhoneNumberUtil.COLOMBIA_MOBILE_TO_FIXED_LINE_PREFIX_) : \"BR\" == f && e ? e = 0 < a.getPreferredDomesticCarrierCodeOrDefault().length ? this.formatNationalNumberWithPreferredCarrierCode(a, \"\") : \"\" :\n    d == i18n.phonenumbers.PhoneNumberUtil.NANPA_COUNTRY_CODE_ ? (b = this.getMetadataForRegion(b), e = this.canBeInternationallyDialled(a) && this.testNumberLength_(this.getNationalSignificantNumber(a), b) != i18n.phonenumbers.PhoneNumberUtil.ValidationResult.TOO_SHORT ? this.format(a, i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL) : this.format(a, i18n.phonenumbers.PhoneNumberFormat.NATIONAL)) : e = (f == i18n.phonenumbers.PhoneNumberUtil.REGION_CODE_FOR_NON_GEO_ENTITY || (\"MX\" == f || \"CL\" ==\n    f || \"UZ\" == f) && e) && this.canBeInternationallyDialled(a) ? this.format(a, i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL) : this.format(a, i18n.phonenumbers.PhoneNumberFormat.NATIONAL);\n  } else {\n    if (h && this.canBeInternationallyDialled(a)) {\n      return c ? this.format(a, i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL) : this.format(a, i18n.phonenumbers.PhoneNumberFormat.E164);\n    }\n  }\n  return c ? e : i18n.phonenumbers.PhoneNumberUtil.normalizeDiallableCharsOnly(e);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.formatOutOfCountryCallingNumber = function(a, b) {\n  if (!this.isValidRegionCode_(b)) {\n    return this.format(a, i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL);\n  }\n  var c = a.getCountryCodeOrDefault(), d = this.getNationalSignificantNumber(a);\n  if (!this.hasValidCountryCallingCode_(c)) {\n    return d;\n  }\n  if (c == i18n.phonenumbers.PhoneNumberUtil.NANPA_COUNTRY_CODE_) {\n    if (this.isNANPACountry(b)) {\n      return c + \" \" + this.format(a, i18n.phonenumbers.PhoneNumberFormat.NATIONAL);\n    }\n  } else {\n    if (c == this.getCountryCodeForValidRegion_(b)) {\n      return this.format(a, i18n.phonenumbers.PhoneNumberFormat.NATIONAL);\n    }\n  }\n  var e = this.getMetadataForRegion(b), f = e.getInternationalPrefixOrDefault(), g = \"\";\n  i18n.phonenumbers.PhoneNumberUtil.matchesEntirely(i18n.phonenumbers.PhoneNumberUtil.SINGLE_INTERNATIONAL_PREFIX_, f) ? g = f : e.hasPreferredInternationalPrefix() && (g = e.getPreferredInternationalPrefixOrDefault());\n  e = this.getRegionCodeForCountryCode(c);\n  e = this.getMetadataForRegionOrCallingCode_(c, e);\n  d = this.formatNsn_(d, e, i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL);\n  e = this.maybeGetFormattedExtension_(a, e, i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL);\n  return 0 < g.length ? g + \" \" + c + \" \" + d + e : this.prefixNumberWithCountryCallingCode_(c, i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL, d, e);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.formatInOriginalFormat = function(a, b) {\n  if (a.hasRawInput() && !this.hasFormattingPatternForNumber_(a)) {\n    return a.getRawInputOrDefault();\n  }\n  if (!a.hasCountryCodeSource()) {\n    return this.format(a, i18n.phonenumbers.PhoneNumberFormat.NATIONAL);\n  }\n  switch(a.getCountryCodeSource()) {\n    case i18n.phonenumbers.PhoneNumber.CountryCodeSource.FROM_NUMBER_WITH_PLUS_SIGN:\n      var c = this.format(a, i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL);\n      break;\n    case i18n.phonenumbers.PhoneNumber.CountryCodeSource.FROM_NUMBER_WITH_IDD:\n      c = this.formatOutOfCountryCallingNumber(a, b);\n      break;\n    case i18n.phonenumbers.PhoneNumber.CountryCodeSource.FROM_NUMBER_WITHOUT_PLUS_SIGN:\n      c = this.format(a, i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL).substring(1);\n      break;\n    default:\n      var d = this.getRegionCodeForCountryCode(a.getCountryCodeOrDefault()), e = this.getNddPrefixForRegion(d, !0);\n      c = this.format(a, i18n.phonenumbers.PhoneNumberFormat.NATIONAL);\n      if (null != e && 0 != e.length && !this.rawInputContainsNationalPrefix_(a.getRawInputOrDefault(), e, d) && (d = this.getMetadataForRegion(d), e = this.getNationalSignificantNumber(a), d = this.chooseFormattingPatternForNumber_(d.numberFormatArray(), e), null != d)) {\n        e = d.getNationalPrefixFormattingRuleOrDefault();\n        var f = e.indexOf(\"$1\");\n        0 >= f || (e = e.substring(0, f), e = i18n.phonenumbers.PhoneNumberUtil.normalizeDigitsOnly(e), 0 != e.length && (c = d.clone(), c.clearNationalPrefixFormattingRule(), c = this.formatByPattern(a, i18n.phonenumbers.PhoneNumberFormat.NATIONAL, [c])));\n      }\n  }\n  d = a.getRawInputOrDefault();\n  null != c && 0 < d.length && (e = i18n.phonenumbers.PhoneNumberUtil.normalizeDiallableCharsOnly(c), f = i18n.phonenumbers.PhoneNumberUtil.normalizeDiallableCharsOnly(d), e != f && (c = d));\n  return c;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.rawInputContainsNationalPrefix_ = function(a, b, c) {\n  a = i18n.phonenumbers.PhoneNumberUtil.normalizeDigitsOnly(a);\n  if (goog.string.startsWith(a, b)) {\n    try {\n      return this.isValidNumber(this.parse(a.substring(b.length), c));\n    } catch (d) {\n    }\n  }\n  return !1;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.hasFormattingPatternForNumber_ = function(a) {\n  var b = a.getCountryCodeOrDefault(), c = this.getRegionCodeForCountryCode(b);\n  b = this.getMetadataForRegionOrCallingCode_(b, c);\n  if (null == b) {\n    return !1;\n  }\n  a = this.getNationalSignificantNumber(a);\n  return null != this.chooseFormattingPatternForNumber_(b.numberFormatArray(), a);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.formatOutOfCountryKeepingAlphaChars = function(a, b) {\n  var c = a.getRawInputOrDefault();\n  if (0 == c.length) {\n    return this.formatOutOfCountryCallingNumber(a, b);\n  }\n  var d = a.getCountryCodeOrDefault();\n  if (!this.hasValidCountryCallingCode_(d)) {\n    return c;\n  }\n  c = i18n.phonenumbers.PhoneNumberUtil.normalizeHelper_(c, i18n.phonenumbers.PhoneNumberUtil.ALL_PLUS_NUMBER_GROUPING_SYMBOLS_, !0);\n  var e = this.getNationalSignificantNumber(a);\n  if (3 < e.length) {\n    var f = c.indexOf(e.substring(0, 3));\n    -1 != f && (c = c.substring(f));\n  }\n  f = this.getMetadataForRegion(b);\n  if (d == i18n.phonenumbers.PhoneNumberUtil.NANPA_COUNTRY_CODE_) {\n    if (this.isNANPACountry(b)) {\n      return d + \" \" + c;\n    }\n  } else {\n    if (null != f && d == this.getCountryCodeForValidRegion_(b)) {\n      d = this.chooseFormattingPatternForNumber_(f.numberFormatArray(), e);\n      if (null == d) {\n        return c;\n      }\n      d = d.clone();\n      d.setPattern(\"(\\\\d+)(.*)\");\n      d.setFormat(\"$1$2\");\n      return this.formatNsnUsingPattern_(c, d, i18n.phonenumbers.PhoneNumberFormat.NATIONAL);\n    }\n  }\n  e = \"\";\n  null != f && (e = f.getInternationalPrefixOrDefault(), e = i18n.phonenumbers.PhoneNumberUtil.matchesEntirely(i18n.phonenumbers.PhoneNumberUtil.SINGLE_INTERNATIONAL_PREFIX_, e) ? e : f.getPreferredInternationalPrefixOrDefault());\n  f = this.getRegionCodeForCountryCode(d);\n  f = this.getMetadataForRegionOrCallingCode_(d, f);\n  f = this.maybeGetFormattedExtension_(a, f, i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL);\n  return 0 < e.length ? e + \" \" + d + \" \" + c + f : this.prefixNumberWithCountryCallingCode_(d, i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL, c, f);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getNationalSignificantNumber = function(a) {\n  if (!a.hasNationalNumber()) {\n    return \"\";\n  }\n  var b = \"\" + a.getNationalNumber();\n  return a.hasItalianLeadingZero() && a.getItalianLeadingZero() && 0 < a.getNumberOfLeadingZerosOrDefault() ? Array(a.getNumberOfLeadingZerosOrDefault() + 1).join(\"0\") + b : b;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.prefixNumberWithCountryCallingCode_ = function(a, b, c, d) {\n  switch(b) {\n    case i18n.phonenumbers.PhoneNumberFormat.E164:\n      return i18n.phonenumbers.PhoneNumberUtil.PLUS_SIGN + a + c + d;\n    case i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL:\n      return i18n.phonenumbers.PhoneNumberUtil.PLUS_SIGN + a + \" \" + c + d;\n    case i18n.phonenumbers.PhoneNumberFormat.RFC3966:\n      return i18n.phonenumbers.PhoneNumberUtil.RFC3966_PREFIX_ + i18n.phonenumbers.PhoneNumberUtil.PLUS_SIGN + a + \"-\" + c + d;\n    default:\n      return c + d;\n  }\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.formatNsn_ = function(a, b, c, d) {\n  b = 0 == b.intlNumberFormatArray().length || c == i18n.phonenumbers.PhoneNumberFormat.NATIONAL ? b.numberFormatArray() : b.intlNumberFormatArray();\n  b = this.chooseFormattingPatternForNumber_(b, a);\n  return null == b ? a : this.formatNsnUsingPattern_(a, b, c, d);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.chooseFormattingPatternForNumber_ = function(a, b) {\n  for (var c, d = a.length, e = 0; e < d; ++e) {\n    c = a[e];\n    var f = c.leadingDigitsPatternCount();\n    if (0 == f || 0 == b.search(c.getLeadingDigitsPattern(f - 1))) {\n      if (f = new RegExp(c.getPattern()), i18n.phonenumbers.PhoneNumberUtil.matchesEntirely(f, b)) {\n        return c;\n      }\n    }\n  }\n  return null;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.formatNsnUsingPattern_ = function(a, b, c, d) {\n  var e = b.getFormatOrDefault(), f = new RegExp(b.getPattern()), g = b.getDomesticCarrierCodeFormattingRuleOrDefault();\n  c == i18n.phonenumbers.PhoneNumberFormat.NATIONAL && null != d && 0 < d.length && 0 < g.length ? (b = g.replace(i18n.phonenumbers.PhoneNumberUtil.CC_PATTERN_, d), e = e.replace(i18n.phonenumbers.PhoneNumberUtil.FIRST_GROUP_PATTERN_, b), a = a.replace(f, e)) : (b = b.getNationalPrefixFormattingRuleOrDefault(), a = c == i18n.phonenumbers.PhoneNumberFormat.NATIONAL && null != b && 0 < b.length ? a.replace(f, e.replace(i18n.phonenumbers.PhoneNumberUtil.FIRST_GROUP_PATTERN_, b)) : a.replace(f, e));\n  c == i18n.phonenumbers.PhoneNumberFormat.RFC3966 && (a = a.replace(new RegExp(\"^\" + i18n.phonenumbers.PhoneNumberUtil.SEPARATOR_PATTERN_), \"\"), a = a.replace(new RegExp(i18n.phonenumbers.PhoneNumberUtil.SEPARATOR_PATTERN_, \"g\"), \"-\"));\n  return a;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getExampleNumber = function(a) {\n  return this.getExampleNumberForType(a, i18n.phonenumbers.PhoneNumberType.FIXED_LINE);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getExampleNumberForType = function(a, b) {\n  if (!this.isValidRegionCode_(a)) {\n    return null;\n  }\n  var c = i18n.phonenumbers.PhoneNumberUtil.getNumberDescByType_(this.getMetadataForRegion(a), b);\n  try {\n    if (c.hasExampleNumber()) {\n      return this.parse(c.getExampleNumber(), a);\n    }\n  } catch (d) {\n  }\n  return null;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getExampleNumberForNonGeoEntity = function(a) {\n  var b = this.getMetadataForNonGeographicalRegion(a);\n  if (null != b && (b = goog.array.find([b.getMobile(), b.getTollFree(), b.getSharedCost(), b.getVoip(), b.getVoicemail(), b.getUan(), b.getPremiumRate()], function(a, b) {\n    return a.hasExampleNumber();\n  }), null != b)) {\n    try {\n      return this.parse(\"+\" + a + b.getExampleNumber(), \"ZZ\");\n    } catch (c) {\n    }\n  }\n  return null;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.maybeGetFormattedExtension_ = function(a, b, c) {\n  return a.hasExtension() && 0 != a.getExtension().length ? c == i18n.phonenumbers.PhoneNumberFormat.RFC3966 ? i18n.phonenumbers.PhoneNumberUtil.RFC3966_EXTN_PREFIX_ + a.getExtension() : b.hasPreferredExtnPrefix() ? b.getPreferredExtnPrefix() + a.getExtensionOrDefault() : i18n.phonenumbers.PhoneNumberUtil.DEFAULT_EXTN_PREFIX_ + a.getExtensionOrDefault() : \"\";\n};\ni18n.phonenumbers.PhoneNumberUtil.getNumberDescByType_ = function(a, b) {\n  switch(b) {\n    case i18n.phonenumbers.PhoneNumberType.PREMIUM_RATE:\n      return a.getPremiumRate();\n    case i18n.phonenumbers.PhoneNumberType.TOLL_FREE:\n      return a.getTollFree();\n    case i18n.phonenumbers.PhoneNumberType.MOBILE:\n      return a.getMobile();\n    case i18n.phonenumbers.PhoneNumberType.FIXED_LINE:\n    case i18n.phonenumbers.PhoneNumberType.FIXED_LINE_OR_MOBILE:\n      return a.getFixedLine();\n    case i18n.phonenumbers.PhoneNumberType.SHARED_COST:\n      return a.getSharedCost();\n    case i18n.phonenumbers.PhoneNumberType.VOIP:\n      return a.getVoip();\n    case i18n.phonenumbers.PhoneNumberType.PERSONAL_NUMBER:\n      return a.getPersonalNumber();\n    case i18n.phonenumbers.PhoneNumberType.PAGER:\n      return a.getPager();\n    case i18n.phonenumbers.PhoneNumberType.UAN:\n      return a.getUan();\n    case i18n.phonenumbers.PhoneNumberType.VOICEMAIL:\n      return a.getVoicemail();\n    default:\n      return a.getGeneralDesc();\n  }\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getNumberType = function(a) {\n  var b = this.getRegionCodeForNumber(a);\n  b = this.getMetadataForRegionOrCallingCode_(a.getCountryCodeOrDefault(), b);\n  if (null == b) {\n    return i18n.phonenumbers.PhoneNumberType.UNKNOWN;\n  }\n  a = this.getNationalSignificantNumber(a);\n  return this.getNumberTypeHelper_(a, b);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getNumberTypeHelper_ = function(a, b) {\n  return this.isNumberMatchingDesc_(a, b.getGeneralDesc()) ? this.isNumberMatchingDesc_(a, b.getPremiumRate()) ? i18n.phonenumbers.PhoneNumberType.PREMIUM_RATE : this.isNumberMatchingDesc_(a, b.getTollFree()) ? i18n.phonenumbers.PhoneNumberType.TOLL_FREE : this.isNumberMatchingDesc_(a, b.getSharedCost()) ? i18n.phonenumbers.PhoneNumberType.SHARED_COST : this.isNumberMatchingDesc_(a, b.getVoip()) ? i18n.phonenumbers.PhoneNumberType.VOIP : this.isNumberMatchingDesc_(a, b.getPersonalNumber()) ? i18n.phonenumbers.PhoneNumberType.PERSONAL_NUMBER :\n  this.isNumberMatchingDesc_(a, b.getPager()) ? i18n.phonenumbers.PhoneNumberType.PAGER : this.isNumberMatchingDesc_(a, b.getUan()) ? i18n.phonenumbers.PhoneNumberType.UAN : this.isNumberMatchingDesc_(a, b.getVoicemail()) ? i18n.phonenumbers.PhoneNumberType.VOICEMAIL : this.isNumberMatchingDesc_(a, b.getFixedLine()) ? b.getSameMobileAndFixedLinePattern() || this.isNumberMatchingDesc_(a, b.getMobile()) ? i18n.phonenumbers.PhoneNumberType.FIXED_LINE_OR_MOBILE : i18n.phonenumbers.PhoneNumberType.FIXED_LINE :\n  !b.getSameMobileAndFixedLinePattern() && this.isNumberMatchingDesc_(a, b.getMobile()) ? i18n.phonenumbers.PhoneNumberType.MOBILE : i18n.phonenumbers.PhoneNumberType.UNKNOWN : i18n.phonenumbers.PhoneNumberType.UNKNOWN;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getMetadataForRegion = function(a) {\n  if (null == a) {\n    return null;\n  }\n  a = a.toUpperCase();\n  var b = this.regionToMetadataMap[a];\n  if (null == b) {\n    b = new goog.proto2.PbLiteSerializer;\n    var c = i18n.phonenumbers.metadata.countryToMetadata[a];\n    if (null == c) {\n      return null;\n    }\n    b = b.deserialize(i18n.phonenumbers.PhoneMetadata.getDescriptor(), c);\n    this.regionToMetadataMap[a] = b;\n  }\n  return b;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getMetadataForNonGeographicalRegion = function(a) {\n  return this.getMetadataForRegion(\"\" + a);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isNumberMatchingDesc_ = function(a, b) {\n  var c = a.length;\n  return 0 < b.possibleLengthCount() && -1 == goog.array.indexOf(b.possibleLengthArray(), c) ? !1 : i18n.phonenumbers.PhoneNumberUtil.matchesEntirely(b.getNationalNumberPatternOrDefault(), a);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isValidNumber = function(a) {\n  var b = this.getRegionCodeForNumber(a);\n  return this.isValidNumberForRegion(a, b);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isValidNumberForRegion = function(a, b) {\n  var c = a.getCountryCodeOrDefault(), d = this.getMetadataForRegionOrCallingCode_(c, b);\n  if (null == d || i18n.phonenumbers.PhoneNumberUtil.REGION_CODE_FOR_NON_GEO_ENTITY != b && c != this.getCountryCodeForValidRegion_(b)) {\n    return !1;\n  }\n  c = this.getNationalSignificantNumber(a);\n  return this.getNumberTypeHelper_(c, d) != i18n.phonenumbers.PhoneNumberType.UNKNOWN;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getRegionCodeForNumber = function(a) {\n  if (null == a) {\n    return null;\n  }\n  var b = a.getCountryCodeOrDefault();\n  b = i18n.phonenumbers.metadata.countryCodeToRegionCodeMap[b];\n  return null == b ? null : 1 == b.length ? b[0] : this.getRegionCodeForNumberFromRegionList_(a, b);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getRegionCodeForNumberFromRegionList_ = function(a, b) {\n  for (var c = this.getNationalSignificantNumber(a), d, e = b.length, f = 0; f < e; f++) {\n    d = b[f];\n    var g = this.getMetadataForRegion(d);\n    if (g.hasLeadingDigits()) {\n      if (0 == c.search(g.getLeadingDigits())) {\n        return d;\n      }\n    } else {\n      if (this.getNumberTypeHelper_(c, g) != i18n.phonenumbers.PhoneNumberType.UNKNOWN) {\n        return d;\n      }\n    }\n  }\n  return null;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getRegionCodeForCountryCode = function(a) {\n  a = i18n.phonenumbers.metadata.countryCodeToRegionCodeMap[a];\n  return null == a ? i18n.phonenumbers.PhoneNumberUtil.UNKNOWN_REGION_ : a[0];\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getRegionCodesForCountryCode = function(a) {\n  a = i18n.phonenumbers.metadata.countryCodeToRegionCodeMap[a];\n  return null == a ? [] : a;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getCountryCodeForRegion = function(a) {\n  return this.isValidRegionCode_(a) ? this.getCountryCodeForValidRegion_(a) : 0;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getCountryCodeForValidRegion_ = function(a) {\n  var b = this.getMetadataForRegion(a);\n  if (null == b) {\n    throw Error(\"Invalid region code: \" + a);\n  }\n  return b.getCountryCodeOrDefault();\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getNddPrefixForRegion = function(a, b) {\n  var c = this.getMetadataForRegion(a);\n  if (null == c) {\n    return null;\n  }\n  c = c.getNationalPrefixOrDefault();\n  if (0 == c.length) {\n    return null;\n  }\n  b && (c = c.replace(\"~\", \"\"));\n  return c;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isNANPACountry = function(a) {\n  return null != a && goog.array.contains(i18n.phonenumbers.metadata.countryCodeToRegionCodeMap[i18n.phonenumbers.PhoneNumberUtil.NANPA_COUNTRY_CODE_], a.toUpperCase());\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isAlphaNumber = function(a) {\n  if (!i18n.phonenumbers.PhoneNumberUtil.isViablePhoneNumber(a)) {\n    return !1;\n  }\n  a = new goog.string.StringBuffer(a);\n  this.maybeStripExtension(a);\n  return i18n.phonenumbers.PhoneNumberUtil.matchesEntirely(i18n.phonenumbers.PhoneNumberUtil.VALID_ALPHA_PHONE_PATTERN_, a.toString());\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isPossibleNumber = function(a) {\n  a = this.isPossibleNumberWithReason(a);\n  return a == i18n.phonenumbers.PhoneNumberUtil.ValidationResult.IS_POSSIBLE || a == i18n.phonenumbers.PhoneNumberUtil.ValidationResult.IS_POSSIBLE_LOCAL_ONLY;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isPossibleNumberForType = function(a, b) {\n  var c = this.isPossibleNumberForTypeWithReason(a, b);\n  return c == i18n.phonenumbers.PhoneNumberUtil.ValidationResult.IS_POSSIBLE || c == i18n.phonenumbers.PhoneNumberUtil.ValidationResult.IS_POSSIBLE_LOCAL_ONLY;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.testNumberLength_ = function(a, b) {\n  return this.testNumberLengthForType_(a, b, i18n.phonenumbers.PhoneNumberType.UNKNOWN);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.testNumberLengthForType_ = function(a, b, c) {\n  var d = i18n.phonenumbers.PhoneNumberUtil.getNumberDescByType_(b, c), e = 0 == d.possibleLengthCount() ? b.getGeneralDesc().possibleLengthArray() : d.possibleLengthArray();\n  d = d.possibleLengthLocalOnlyArray();\n  if (c == i18n.phonenumbers.PhoneNumberType.FIXED_LINE_OR_MOBILE) {\n    if (i18n.phonenumbers.PhoneNumberUtil.descHasPossibleNumberData_(i18n.phonenumbers.PhoneNumberUtil.getNumberDescByType_(b, i18n.phonenumbers.PhoneNumberType.FIXED_LINE))) {\n      c = i18n.phonenumbers.PhoneNumberUtil.getNumberDescByType_(b, i18n.phonenumbers.PhoneNumberType.MOBILE), i18n.phonenumbers.PhoneNumberUtil.descHasPossibleNumberData_(c) && (e = e.concat(0 == c.possibleLengthCount() ? b.getGeneralDesc().possibleLengthArray() : c.possibleLengthArray()), goog.array.sort(e), 0 == d.length ? d = c.possibleLengthLocalOnlyArray() : (d = d.concat(c.possibleLengthLocalOnlyArray()), goog.array.sort(d)));\n    } else {\n      return this.testNumberLengthForType_(a, b, i18n.phonenumbers.PhoneNumberType.MOBILE);\n    }\n  }\n  if (-1 == e[0]) {\n    return i18n.phonenumbers.PhoneNumberUtil.ValidationResult.INVALID_LENGTH;\n  }\n  a = a.length;\n  if (-1 < goog.array.indexOf(d, a)) {\n    return i18n.phonenumbers.PhoneNumberUtil.ValidationResult.IS_POSSIBLE_LOCAL_ONLY;\n  }\n  b = e[0];\n  return b == a ? i18n.phonenumbers.PhoneNumberUtil.ValidationResult.IS_POSSIBLE : b > a ? i18n.phonenumbers.PhoneNumberUtil.ValidationResult.TOO_SHORT : e[e.length - 1] < a ? i18n.phonenumbers.PhoneNumberUtil.ValidationResult.TOO_LONG : -1 < goog.array.indexOf(e, a, 1) ? i18n.phonenumbers.PhoneNumberUtil.ValidationResult.IS_POSSIBLE : i18n.phonenumbers.PhoneNumberUtil.ValidationResult.INVALID_LENGTH;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isPossibleNumberWithReason = function(a) {\n  return this.isPossibleNumberForTypeWithReason(a, i18n.phonenumbers.PhoneNumberType.UNKNOWN);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isPossibleNumberForTypeWithReason = function(a, b) {\n  var c = this.getNationalSignificantNumber(a), d = a.getCountryCodeOrDefault();\n  if (!this.hasValidCountryCallingCode_(d)) {\n    return i18n.phonenumbers.PhoneNumberUtil.ValidationResult.INVALID_COUNTRY_CODE;\n  }\n  var e = this.getRegionCodeForCountryCode(d);\n  d = this.getMetadataForRegionOrCallingCode_(d, e);\n  return this.testNumberLengthForType_(c, d, b);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isPossibleNumberString = function(a, b) {\n  try {\n    return this.isPossibleNumber(this.parse(a, b));\n  } catch (c) {\n    return !1;\n  }\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.truncateTooLongNumber = function(a) {\n  if (this.isValidNumber(a)) {\n    return !0;\n  }\n  var b = a.clone(), c = a.getNationalNumberOrDefault();\n  do {\n    if (c = Math.floor(c / 10), b.setNationalNumber(c), 0 == c || this.isPossibleNumberWithReason(b) == i18n.phonenumbers.PhoneNumberUtil.ValidationResult.TOO_SHORT) {\n      return !1;\n    }\n  } while (!this.isValidNumber(b));\n  a.setNationalNumber(c);\n  return !0;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.extractCountryCode = function(a, b) {\n  var c = a.toString();\n  if (0 == c.length || \"0\" == c.charAt(0)) {\n    return 0;\n  }\n  for (var d, e = c.length, f = 1; f <= i18n.phonenumbers.PhoneNumberUtil.MAX_LENGTH_COUNTRY_CODE_ && f <= e; ++f) {\n    if (d = parseInt(c.substring(0, f), 10), d in i18n.phonenumbers.metadata.countryCodeToRegionCodeMap) {\n      return b.append(c.substring(f)), d;\n    }\n  }\n  return 0;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.maybeExtractCountryCode = function(a, b, c, d, e) {\n  if (0 == a.length) {\n    return 0;\n  }\n  a = new goog.string.StringBuffer(a);\n  var f;\n  null != b && (f = b.getInternationalPrefix());\n  null == f && (f = \"NonMatch\");\n  f = this.maybeStripInternationalPrefixAndNormalize(a, f);\n  d && e.setCountryCodeSource(f);\n  if (f != i18n.phonenumbers.PhoneNumber.CountryCodeSource.FROM_DEFAULT_COUNTRY) {\n    if (a.getLength() <= i18n.phonenumbers.PhoneNumberUtil.MIN_LENGTH_FOR_NSN_) {\n      throw Error(i18n.phonenumbers.Error.TOO_SHORT_AFTER_IDD);\n    }\n    b = this.extractCountryCode(a, c);\n    if (0 != b) {\n      return e.setCountryCode(b), b;\n    }\n    throw Error(i18n.phonenumbers.Error.INVALID_COUNTRY_CODE);\n  }\n  if (null != b) {\n    f = b.getCountryCodeOrDefault();\n    var g = \"\" + f, h = a.toString();\n    if (goog.string.startsWith(h, g) && (g = new goog.string.StringBuffer(h.substring(g.length)), h = b.getGeneralDesc(), h = new RegExp(h.getNationalNumberPatternOrDefault()), this.maybeStripNationalPrefixAndCarrierCode(g, b, null), g = g.toString(), !i18n.phonenumbers.PhoneNumberUtil.matchesEntirely(h, a.toString()) && i18n.phonenumbers.PhoneNumberUtil.matchesEntirely(h, g) || this.testNumberLength_(a.toString(), b) == i18n.phonenumbers.PhoneNumberUtil.ValidationResult.TOO_LONG)) {\n      return c.append(g), d && e.setCountryCodeSource(i18n.phonenumbers.PhoneNumber.CountryCodeSource.FROM_NUMBER_WITHOUT_PLUS_SIGN), e.setCountryCode(f), f;\n    }\n  }\n  e.setCountryCode(0);\n  return 0;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.parsePrefixAsIdd_ = function(a, b) {\n  var c = b.toString();\n  if (0 == c.search(a)) {\n    var d = c.match(a)[0].length, e = c.substring(d).match(i18n.phonenumbers.PhoneNumberUtil.CAPTURING_DIGIT_PATTERN);\n    if (e && null != e[1] && 0 < e[1].length && \"0\" == i18n.phonenumbers.PhoneNumberUtil.normalizeDigitsOnly(e[1])) {\n      return !1;\n    }\n    b.clear();\n    b.append(c.substring(d));\n    return !0;\n  }\n  return !1;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.maybeStripInternationalPrefixAndNormalize = function(a, b) {\n  var c = a.toString();\n  if (0 == c.length) {\n    return i18n.phonenumbers.PhoneNumber.CountryCodeSource.FROM_DEFAULT_COUNTRY;\n  }\n  if (i18n.phonenumbers.PhoneNumberUtil.LEADING_PLUS_CHARS_PATTERN.test(c)) {\n    return c = c.replace(i18n.phonenumbers.PhoneNumberUtil.LEADING_PLUS_CHARS_PATTERN, \"\"), a.clear(), a.append(i18n.phonenumbers.PhoneNumberUtil.normalize(c)), i18n.phonenumbers.PhoneNumber.CountryCodeSource.FROM_NUMBER_WITH_PLUS_SIGN;\n  }\n  c = new RegExp(b);\n  i18n.phonenumbers.PhoneNumberUtil.normalizeSB_(a);\n  return this.parsePrefixAsIdd_(c, a) ? i18n.phonenumbers.PhoneNumber.CountryCodeSource.FROM_NUMBER_WITH_IDD : i18n.phonenumbers.PhoneNumber.CountryCodeSource.FROM_DEFAULT_COUNTRY;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.maybeStripNationalPrefixAndCarrierCode = function(a, b, c) {\n  var d = a.toString(), e = d.length, f = b.getNationalPrefixForParsing();\n  if (0 == e || null == f || 0 == f.length) {\n    return !1;\n  }\n  var g = new RegExp(\"^(?:\" + f + \")\");\n  if (e = g.exec(d)) {\n    f = new RegExp(b.getGeneralDesc().getNationalNumberPatternOrDefault());\n    var h = i18n.phonenumbers.PhoneNumberUtil.matchesEntirely(f, d), k = e.length - 1;\n    b = b.getNationalPrefixTransformRule();\n    if (null == b || 0 == b.length || null == e[k] || 0 == e[k].length) {\n      if (h && !i18n.phonenumbers.PhoneNumberUtil.matchesEntirely(f, d.substring(e[0].length))) {\n        return !1;\n      }\n      null != c && 0 < k && null != e[k] && c.append(e[1]);\n      a.set(d.substring(e[0].length));\n    } else {\n      d = d.replace(g, b);\n      if (h && !i18n.phonenumbers.PhoneNumberUtil.matchesEntirely(f, d)) {\n        return !1;\n      }\n      null != c && 0 < k && c.append(e[1]);\n      a.set(d);\n    }\n    return !0;\n  }\n  return !1;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.maybeStripExtension = function(a) {\n  var b = a.toString(), c = b.search(i18n.phonenumbers.PhoneNumberUtil.EXTN_PATTERN_);\n  if (0 <= c && i18n.phonenumbers.PhoneNumberUtil.isViablePhoneNumber(b.substring(0, c))) {\n    for (var d = b.match(i18n.phonenumbers.PhoneNumberUtil.EXTN_PATTERN_), e = d.length, f = 1; f < e; ++f) {\n      if (null != d[f] && 0 < d[f].length) {\n        return a.clear(), a.append(b.substring(0, c)), d[f];\n      }\n    }\n  }\n  return \"\";\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.checkRegionForParsing_ = function(a, b) {\n  return this.isValidRegionCode_(b) || null != a && 0 < a.length && i18n.phonenumbers.PhoneNumberUtil.LEADING_PLUS_CHARS_PATTERN.test(a);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.parse = function(a, b) {\n  return this.parseHelper_(a, b, !1, !0);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.parseAndKeepRawInput = function(a, b) {\n  if (!this.isValidRegionCode_(b) && 0 < a.length && a.charAt(0) != i18n.phonenumbers.PhoneNumberUtil.PLUS_SIGN) {\n    throw Error(i18n.phonenumbers.Error.INVALID_COUNTRY_CODE);\n  }\n  return this.parseHelper_(a, b, !0, !0);\n};\ni18n.phonenumbers.PhoneNumberUtil.setItalianLeadingZerosForPhoneNumber_ = function(a, b) {\n  if (1 < a.length && \"0\" == a.charAt(0)) {\n    b.setItalianLeadingZero(!0);\n    for (var c = 1; c < a.length - 1 && \"0\" == a.charAt(c);) {\n      c++;\n    }\n    1 != c && b.setNumberOfLeadingZeros(c);\n  }\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.parseHelper_ = function(a, b, c, d) {\n  if (null == a) {\n    throw Error(i18n.phonenumbers.Error.NOT_A_NUMBER);\n  }\n  if (a.length > i18n.phonenumbers.PhoneNumberUtil.MAX_INPUT_STRING_LENGTH_) {\n    throw Error(i18n.phonenumbers.Error.TOO_LONG);\n  }\n  var e = new goog.string.StringBuffer;\n  this.buildNationalNumberForParsing_(a, e);\n  if (!i18n.phonenumbers.PhoneNumberUtil.isViablePhoneNumber(e.toString())) {\n    throw Error(i18n.phonenumbers.Error.NOT_A_NUMBER);\n  }\n  if (d && !this.checkRegionForParsing_(e.toString(), b)) {\n    throw Error(i18n.phonenumbers.Error.INVALID_COUNTRY_CODE);\n  }\n  d = new i18n.phonenumbers.PhoneNumber;\n  c && d.setRawInput(a);\n  a = this.maybeStripExtension(e);\n  0 < a.length && d.setExtension(a);\n  var f = this.getMetadataForRegion(b);\n  a = new goog.string.StringBuffer;\n  var g = 0, h = e.toString();\n  try {\n    g = this.maybeExtractCountryCode(h, f, a, c, d);\n  } catch (k) {\n    if (k.message == i18n.phonenumbers.Error.INVALID_COUNTRY_CODE && i18n.phonenumbers.PhoneNumberUtil.LEADING_PLUS_CHARS_PATTERN.test(h)) {\n      if (h = h.replace(i18n.phonenumbers.PhoneNumberUtil.LEADING_PLUS_CHARS_PATTERN, \"\"), g = this.maybeExtractCountryCode(h, f, a, c, d), 0 == g) {\n        throw k;\n      }\n    } else {\n      throw k;\n    }\n  }\n  0 != g ? (e = this.getRegionCodeForCountryCode(g), e != b && (f = this.getMetadataForRegionOrCallingCode_(g, e))) : (i18n.phonenumbers.PhoneNumberUtil.normalizeSB_(e), a.append(e.toString()), null != b ? (g = f.getCountryCodeOrDefault(), d.setCountryCode(g)) : c && d.clearCountryCodeSource());\n  if (a.getLength() < i18n.phonenumbers.PhoneNumberUtil.MIN_LENGTH_FOR_NSN_) {\n    throw Error(i18n.phonenumbers.Error.TOO_SHORT_NSN);\n  }\n  null != f && (b = new goog.string.StringBuffer, e = new goog.string.StringBuffer(a.toString()), this.maybeStripNationalPrefixAndCarrierCode(e, f, b), f = this.testNumberLength_(e.toString(), f), g = i18n.phonenumbers.PhoneNumberUtil.ValidationResult, f != g.TOO_SHORT && f != g.IS_POSSIBLE_LOCAL_ONLY && f != g.INVALID_LENGTH && (a = e, c && 0 < b.toString().length && d.setPreferredDomesticCarrierCode(b.toString())));\n  c = a.toString();\n  a = c.length;\n  if (a < i18n.phonenumbers.PhoneNumberUtil.MIN_LENGTH_FOR_NSN_) {\n    throw Error(i18n.phonenumbers.Error.TOO_SHORT_NSN);\n  }\n  if (a > i18n.phonenumbers.PhoneNumberUtil.MAX_LENGTH_FOR_NSN_) {\n    throw Error(i18n.phonenumbers.Error.TOO_LONG);\n  }\n  i18n.phonenumbers.PhoneNumberUtil.setItalianLeadingZerosForPhoneNumber_(c, d);\n  d.setNationalNumber(parseInt(c, 10));\n  return d;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.buildNationalNumberForParsing_ = function(a, b) {\n  var c = a.indexOf(i18n.phonenumbers.PhoneNumberUtil.RFC3966_PHONE_CONTEXT_);\n  if (0 <= c) {\n    var d = c + i18n.phonenumbers.PhoneNumberUtil.RFC3966_PHONE_CONTEXT_.length;\n    if (a.charAt(d) == i18n.phonenumbers.PhoneNumberUtil.PLUS_SIGN) {\n      var e = a.indexOf(\";\", d);\n      0 < e ? b.append(a.substring(d, e)) : b.append(a.substring(d));\n    }\n    d = a.indexOf(i18n.phonenumbers.PhoneNumberUtil.RFC3966_PREFIX_);\n    b.append(a.substring(0 <= d ? d + i18n.phonenumbers.PhoneNumberUtil.RFC3966_PREFIX_.length : 0, c));\n  } else {\n    b.append(i18n.phonenumbers.PhoneNumberUtil.extractPossibleNumber(a));\n  }\n  c = b.toString();\n  d = c.indexOf(i18n.phonenumbers.PhoneNumberUtil.RFC3966_ISDN_SUBADDRESS_);\n  0 < d && (b.clear(), b.append(c.substring(0, d)));\n};\ni18n.phonenumbers.PhoneNumberUtil.copyCoreFieldsOnly_ = function(a) {\n  var b = new i18n.phonenumbers.PhoneNumber;\n  b.setCountryCode(a.getCountryCodeOrDefault());\n  b.setNationalNumber(a.getNationalNumberOrDefault());\n  0 < a.getExtensionOrDefault().length && b.setExtension(a.getExtensionOrDefault());\n  a.getItalianLeadingZero() && (b.setItalianLeadingZero(!0), b.setNumberOfLeadingZeros(a.getNumberOfLeadingZerosOrDefault()));\n  return b;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isNumberMatch = function(a, b) {\n  if (\"string\" == typeof a) {\n    try {\n      var c = this.parse(a, i18n.phonenumbers.PhoneNumberUtil.UNKNOWN_REGION_);\n    } catch (g) {\n      if (g.message != i18n.phonenumbers.Error.INVALID_COUNTRY_CODE) {\n        return i18n.phonenumbers.PhoneNumberUtil.MatchType.NOT_A_NUMBER;\n      }\n      if (\"string\" != typeof b) {\n        var d = this.getRegionCodeForCountryCode(b.getCountryCodeOrDefault());\n        if (d != i18n.phonenumbers.PhoneNumberUtil.UNKNOWN_REGION_) {\n          try {\n            c = this.parse(a, d);\n          } catch (h) {\n            return i18n.phonenumbers.PhoneNumberUtil.MatchType.NOT_A_NUMBER;\n          }\n          c = this.isNumberMatch(c, b);\n          return c == i18n.phonenumbers.PhoneNumberUtil.MatchType.EXACT_MATCH ? i18n.phonenumbers.PhoneNumberUtil.MatchType.NSN_MATCH : c;\n        }\n      }\n      try {\n        c = this.parseHelper_(a, null, !1, !1);\n      } catch (h) {\n        return i18n.phonenumbers.PhoneNumberUtil.MatchType.NOT_A_NUMBER;\n      }\n    }\n  } else {\n    c = a.clone();\n  }\n  if (\"string\" == typeof b) {\n    try {\n      var e = this.parse(b, i18n.phonenumbers.PhoneNumberUtil.UNKNOWN_REGION_);\n      return this.isNumberMatch(a, e);\n    } catch (g) {\n      return g.message != i18n.phonenumbers.Error.INVALID_COUNTRY_CODE ? i18n.phonenumbers.PhoneNumberUtil.MatchType.NOT_A_NUMBER : this.isNumberMatch(b, c);\n    }\n  } else {\n    e = b.clone();\n  }\n  c = i18n.phonenumbers.PhoneNumberUtil.copyCoreFieldsOnly_(c);\n  e = i18n.phonenumbers.PhoneNumberUtil.copyCoreFieldsOnly_(e);\n  if (c.hasExtension() && e.hasExtension() && c.getExtension() != e.getExtension()) {\n    return i18n.phonenumbers.PhoneNumberUtil.MatchType.NO_MATCH;\n  }\n  d = c.getCountryCodeOrDefault();\n  var f = e.getCountryCodeOrDefault();\n  if (0 != d && 0 != f) {\n    return c.equals(e) ? i18n.phonenumbers.PhoneNumberUtil.MatchType.EXACT_MATCH : d == f && this.isNationalNumberSuffixOfTheOther_(c, e) ? i18n.phonenumbers.PhoneNumberUtil.MatchType.SHORT_NSN_MATCH : i18n.phonenumbers.PhoneNumberUtil.MatchType.NO_MATCH;\n  }\n  c.setCountryCode(0);\n  e.setCountryCode(0);\n  return c.equals(e) ? i18n.phonenumbers.PhoneNumberUtil.MatchType.NSN_MATCH : this.isNationalNumberSuffixOfTheOther_(c, e) ? i18n.phonenumbers.PhoneNumberUtil.MatchType.SHORT_NSN_MATCH : i18n.phonenumbers.PhoneNumberUtil.MatchType.NO_MATCH;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isNationalNumberSuffixOfTheOther_ = function(a, b) {\n  var c = \"\" + a.getNationalNumber(), d = \"\" + b.getNationalNumber();\n  return goog.string.endsWith(c, d) || goog.string.endsWith(d, c);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.canBeInternationallyDialled = function(a) {\n  var b = this.getMetadataForRegion(this.getRegionCodeForNumber(a));\n  if (null == b) {\n    return !0;\n  }\n  a = this.getNationalSignificantNumber(a);\n  return !this.isNumberMatchingDesc_(a, b.getNoInternationalDialling());\n};\ni18n.phonenumbers.PhoneNumberUtil.matchesEntirely = function(a, b) {\n  var c = \"string\" == typeof a ? b.match(\"^(?:\" + a + \")$\") : b.match(a);\n  return c && c[0].length == b.length ? !0 : !1;\n};\ni18n.phonenumbers.PhoneNumberUtil.matchesPrefix = function(a, b) {\n  var c = \"string\" == typeof a ? b.match(\"^(?:\" + a + \")\") : b.match(a);\n  return c && goog.string.startsWith(b, c[0]) ? !0 : !1;\n};\ni18n.phonenumbers.AsYouTypeFormatter = function(a) {\n  this.DIGIT_PLACEHOLDER_ = \"\\u2008\";\n  this.DIGIT_PATTERN_ = new RegExp(this.DIGIT_PLACEHOLDER_);\n  this.currentOutput_ = \"\";\n  this.formattingTemplate_ = new goog.string.StringBuffer;\n  this.currentFormattingPattern_ = \"\";\n  this.accruedInput_ = new goog.string.StringBuffer;\n  this.accruedInputWithoutFormatting_ = new goog.string.StringBuffer;\n  this.ableToFormat_ = !0;\n  this.isExpectingCountryCallingCode_ = this.isCompleteNumber_ = this.inputHasFormatting_ = !1;\n  this.phoneUtil_ = i18n.phonenumbers.PhoneNumberUtil.getInstance();\n  this.positionToRemember_ = this.originalPosition_ = this.lastMatchPosition_ = 0;\n  this.prefixBeforeNationalNumber_ = new goog.string.StringBuffer;\n  this.shouldAddSpaceAfterNationalPrefix_ = !1;\n  this.extractedNationalPrefix_ = \"\";\n  this.nationalNumber_ = new goog.string.StringBuffer;\n  this.possibleFormats_ = [];\n  this.defaultCountry_ = a;\n  this.defaultMetadata_ = this.currentMetadata_ = this.getMetadataForRegion_(this.defaultCountry_);\n};\ni18n.phonenumbers.AsYouTypeFormatter.SEPARATOR_BEFORE_NATIONAL_NUMBER_ = \" \";\ni18n.phonenumbers.AsYouTypeFormatter.EMPTY_METADATA_ = new i18n.phonenumbers.PhoneMetadata;\ni18n.phonenumbers.AsYouTypeFormatter.EMPTY_METADATA_.setInternationalPrefix(\"NA\");\ni18n.phonenumbers.AsYouTypeFormatter.ELIGIBLE_FORMAT_PATTERN_ = new RegExp(\"^[\" + i18n.phonenumbers.PhoneNumberUtil.VALID_PUNCTUATION + \"]*(\\\\$\\\\d[\" + i18n.phonenumbers.PhoneNumberUtil.VALID_PUNCTUATION + \"]*)+$\");\ni18n.phonenumbers.AsYouTypeFormatter.NATIONAL_PREFIX_SEPARATORS_PATTERN_ = /[- ]/;\ni18n.phonenumbers.AsYouTypeFormatter.MIN_LEADING_DIGITS_LENGTH_ = 3;\ni18n.phonenumbers.AsYouTypeFormatter.prototype.getMetadataForRegion_ = function(a) {\n  a = this.phoneUtil_.getCountryCodeForRegion(a);\n  a = this.phoneUtil_.getRegionCodeForCountryCode(a);\n  a = this.phoneUtil_.getMetadataForRegion(a);\n  return null != a ? a : i18n.phonenumbers.AsYouTypeFormatter.EMPTY_METADATA_;\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.maybeCreateNewTemplate_ = function() {\n  for (var a = this.possibleFormats_.length, b = 0; b < a; ++b) {\n    var c = this.possibleFormats_[b], d = c.getPatternOrDefault();\n    if (this.currentFormattingPattern_ == d) {\n      return !1;\n    }\n    if (this.createFormattingTemplate_(c)) {\n      return this.currentFormattingPattern_ = d, this.shouldAddSpaceAfterNationalPrefix_ = i18n.phonenumbers.AsYouTypeFormatter.NATIONAL_PREFIX_SEPARATORS_PATTERN_.test(c.getNationalPrefixFormattingRule()), this.lastMatchPosition_ = 0, !0;\n    }\n  }\n  return this.ableToFormat_ = !1;\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.getAvailableFormats_ = function(a) {\n  for (var b = this.isCompleteNumber_ && 0 == this.extractedNationalPrefix_.length && 0 < this.currentMetadata_.intlNumberFormatCount() ? this.currentMetadata_.intlNumberFormatArray() : this.currentMetadata_.numberFormatArray(), c = b.length, d = 0; d < c; ++d) {\n    var e = b[d];\n    0 < this.extractedNationalPrefix_.length && this.phoneUtil_.formattingRuleHasFirstGroupOnly(e.getNationalPrefixFormattingRuleOrDefault()) && !e.getNationalPrefixOptionalWhenFormatting() && !e.hasDomesticCarrierCodeFormattingRule() || (0 != this.extractedNationalPrefix_.length || this.isCompleteNumber_ || this.phoneUtil_.formattingRuleHasFirstGroupOnly(e.getNationalPrefixFormattingRuleOrDefault()) || e.getNationalPrefixOptionalWhenFormatting()) && i18n.phonenumbers.AsYouTypeFormatter.ELIGIBLE_FORMAT_PATTERN_.test(e.getFormatOrDefault()) &&\n    this.possibleFormats_.push(e);\n  }\n  this.narrowDownPossibleFormats_(a);\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.narrowDownPossibleFormats_ = function(a) {\n  for (var b = [], c = a.length - i18n.phonenumbers.AsYouTypeFormatter.MIN_LEADING_DIGITS_LENGTH_, d = this.possibleFormats_.length, e = 0; e < d; ++e) {\n    var f = this.possibleFormats_[e];\n    if (0 == f.leadingDigitsPatternCount()) {\n      b.push(this.possibleFormats_[e]);\n    } else {\n      var g = Math.min(c, f.leadingDigitsPatternCount() - 1);\n      f = f.getLeadingDigitsPattern(g);\n      0 == a.search(f) && b.push(this.possibleFormats_[e]);\n    }\n  }\n  this.possibleFormats_ = b;\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.createFormattingTemplate_ = function(a) {\n  var b = a.getPatternOrDefault();\n  this.formattingTemplate_.clear();\n  a = this.getFormattingTemplate_(b, a.getFormatOrDefault());\n  return 0 < a.length ? (this.formattingTemplate_.append(a), !0) : !1;\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.getFormattingTemplate_ = function(a, b) {\n  var c = \"999999999999999\".match(a)[0];\n  if (c.length < this.nationalNumber_.getLength()) {\n    return \"\";\n  }\n  c = c.replace(new RegExp(a, \"g\"), b);\n  return c = c.replace(RegExp(\"9\", \"g\"), this.DIGIT_PLACEHOLDER_);\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.clear = function() {\n  this.currentOutput_ = \"\";\n  this.accruedInput_.clear();\n  this.accruedInputWithoutFormatting_.clear();\n  this.formattingTemplate_.clear();\n  this.lastMatchPosition_ = 0;\n  this.currentFormattingPattern_ = \"\";\n  this.prefixBeforeNationalNumber_.clear();\n  this.extractedNationalPrefix_ = \"\";\n  this.nationalNumber_.clear();\n  this.ableToFormat_ = !0;\n  this.inputHasFormatting_ = !1;\n  this.originalPosition_ = this.positionToRemember_ = 0;\n  this.isExpectingCountryCallingCode_ = this.isCompleteNumber_ = !1;\n  this.possibleFormats_ = [];\n  this.shouldAddSpaceAfterNationalPrefix_ = !1;\n  this.currentMetadata_ != this.defaultMetadata_ && (this.currentMetadata_ = this.getMetadataForRegion_(this.defaultCountry_));\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.inputDigit = function(a) {\n  return this.currentOutput_ = this.inputDigitWithOptionToRememberPosition_(a, !1);\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.inputDigitAndRememberPosition = function(a) {\n  return this.currentOutput_ = this.inputDigitWithOptionToRememberPosition_(a, !0);\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.inputDigitWithOptionToRememberPosition_ = function(a, b) {\n  this.accruedInput_.append(a);\n  b && (this.originalPosition_ = this.accruedInput_.getLength());\n  this.isDigitOrLeadingPlusSign_(a) ? a = this.normalizeAndAccrueDigitsAndPlusSign_(a, b) : (this.ableToFormat_ = !1, this.inputHasFormatting_ = !0);\n  if (!this.ableToFormat_) {\n    if (!this.inputHasFormatting_) {\n      if (this.attemptToExtractIdd_()) {\n        if (this.attemptToExtractCountryCallingCode_()) {\n          return this.attemptToChoosePatternWithPrefixExtracted_();\n        }\n      } else {\n        if (this.ableToExtractLongerNdd_()) {\n          return this.prefixBeforeNationalNumber_.append(i18n.phonenumbers.AsYouTypeFormatter.SEPARATOR_BEFORE_NATIONAL_NUMBER_), this.attemptToChoosePatternWithPrefixExtracted_();\n        }\n      }\n    }\n    return this.accruedInput_.toString();\n  }\n  switch(this.accruedInputWithoutFormatting_.getLength()) {\n    case 0:\n    case 1:\n    case 2:\n      return this.accruedInput_.toString();\n    case 3:\n      if (this.attemptToExtractIdd_()) {\n        this.isExpectingCountryCallingCode_ = !0;\n      } else {\n        return this.extractedNationalPrefix_ = this.removeNationalPrefixFromNationalNumber_(), this.attemptToChooseFormattingPattern_();\n      }\n    default:\n      if (this.isExpectingCountryCallingCode_) {\n        return this.attemptToExtractCountryCallingCode_() && (this.isExpectingCountryCallingCode_ = !1), this.prefixBeforeNationalNumber_.toString() + this.nationalNumber_.toString();\n      }\n      if (0 < this.possibleFormats_.length) {\n        var c = this.inputDigitHelper_(a), d = this.attemptToFormatAccruedDigits_();\n        if (0 < d.length) {\n          return d;\n        }\n        this.narrowDownPossibleFormats_(this.nationalNumber_.toString());\n        return this.maybeCreateNewTemplate_() ? this.inputAccruedNationalNumber_() : this.ableToFormat_ ? this.appendNationalNumber_(c) : this.accruedInput_.toString();\n      }\n      return this.attemptToChooseFormattingPattern_();\n  }\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.attemptToChoosePatternWithPrefixExtracted_ = function() {\n  this.ableToFormat_ = !0;\n  this.isExpectingCountryCallingCode_ = !1;\n  this.possibleFormats_ = [];\n  this.lastMatchPosition_ = 0;\n  this.formattingTemplate_.clear();\n  this.currentFormattingPattern_ = \"\";\n  return this.attemptToChooseFormattingPattern_();\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.getExtractedNationalPrefix_ = function() {\n  return this.extractedNationalPrefix_;\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.ableToExtractLongerNdd_ = function() {\n  if (0 < this.extractedNationalPrefix_.length) {\n    var a = this.nationalNumber_.toString();\n    this.nationalNumber_.clear();\n    this.nationalNumber_.append(this.extractedNationalPrefix_);\n    this.nationalNumber_.append(a);\n    a = this.prefixBeforeNationalNumber_.toString();\n    var b = a.lastIndexOf(this.extractedNationalPrefix_);\n    this.prefixBeforeNationalNumber_.clear();\n    this.prefixBeforeNationalNumber_.append(a.substring(0, b));\n  }\n  return this.extractedNationalPrefix_ != this.removeNationalPrefixFromNationalNumber_();\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.isDigitOrLeadingPlusSign_ = function(a) {\n  return i18n.phonenumbers.PhoneNumberUtil.CAPTURING_DIGIT_PATTERN.test(a) || 1 == this.accruedInput_.getLength() && i18n.phonenumbers.PhoneNumberUtil.PLUS_CHARS_PATTERN.test(a);\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.attemptToFormatAccruedDigits_ = function() {\n  for (var a = this.nationalNumber_.toString(), b = this.possibleFormats_.length, c = 0; c < b; ++c) {\n    var d = this.possibleFormats_[c], e = d.getPatternOrDefault();\n    if ((new RegExp(\"^(?:\" + e + \")$\")).test(a) && (this.shouldAddSpaceAfterNationalPrefix_ = i18n.phonenumbers.AsYouTypeFormatter.NATIONAL_PREFIX_SEPARATORS_PATTERN_.test(d.getNationalPrefixFormattingRule()), d = a.replace(new RegExp(e, \"g\"), d.getFormat()), d = this.appendNationalNumber_(d), i18n.phonenumbers.PhoneNumberUtil.normalizeDiallableCharsOnly(d) == this.accruedInputWithoutFormatting_)) {\n      return d;\n    }\n  }\n  return \"\";\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.appendNationalNumber_ = function(a) {\n  var b = this.prefixBeforeNationalNumber_.getLength();\n  return this.shouldAddSpaceAfterNationalPrefix_ && 0 < b && this.prefixBeforeNationalNumber_.toString().charAt(b - 1) != i18n.phonenumbers.AsYouTypeFormatter.SEPARATOR_BEFORE_NATIONAL_NUMBER_ ? this.prefixBeforeNationalNumber_ + i18n.phonenumbers.AsYouTypeFormatter.SEPARATOR_BEFORE_NATIONAL_NUMBER_ + a : this.prefixBeforeNationalNumber_ + a;\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.getRememberedPosition = function() {\n  if (!this.ableToFormat_) {\n    return this.originalPosition_;\n  }\n  for (var a = 0, b = 0, c = this.accruedInputWithoutFormatting_.toString(), d = this.currentOutput_.toString(); a < this.positionToRemember_ && b < d.length;) {\n    c.charAt(a) == d.charAt(b) && a++, b++;\n  }\n  return b;\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.attemptToChooseFormattingPattern_ = function() {\n  var a = this.nationalNumber_.toString();\n  return a.length >= i18n.phonenumbers.AsYouTypeFormatter.MIN_LEADING_DIGITS_LENGTH_ ? (this.getAvailableFormats_(a), a = this.attemptToFormatAccruedDigits_(), 0 < a.length ? a : this.maybeCreateNewTemplate_() ? this.inputAccruedNationalNumber_() : this.accruedInput_.toString()) : this.appendNationalNumber_(a);\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.inputAccruedNationalNumber_ = function() {\n  var a = this.nationalNumber_.toString(), b = a.length;\n  if (0 < b) {\n    for (var c = \"\", d = 0; d < b; d++) {\n      c = this.inputDigitHelper_(a.charAt(d));\n    }\n    return this.ableToFormat_ ? this.appendNationalNumber_(c) : this.accruedInput_.toString();\n  }\n  return this.prefixBeforeNationalNumber_.toString();\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.isNanpaNumberWithNationalPrefix_ = function() {\n  if (1 != this.currentMetadata_.getCountryCode()) {\n    return !1;\n  }\n  var a = this.nationalNumber_.toString();\n  return \"1\" == a.charAt(0) && \"0\" != a.charAt(1) && \"1\" != a.charAt(1);\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.removeNationalPrefixFromNationalNumber_ = function() {\n  var a = this.nationalNumber_.toString(), b = 0;\n  if (this.isNanpaNumberWithNationalPrefix_()) {\n    b = 1, this.prefixBeforeNationalNumber_.append(\"1\").append(i18n.phonenumbers.AsYouTypeFormatter.SEPARATOR_BEFORE_NATIONAL_NUMBER_), this.isCompleteNumber_ = !0;\n  } else {\n    if (this.currentMetadata_.hasNationalPrefixForParsing()) {\n      var c = new RegExp(\"^(?:\" + this.currentMetadata_.getNationalPrefixForParsing() + \")\");\n      c = a.match(c);\n      null != c && null != c[0] && 0 < c[0].length && (this.isCompleteNumber_ = !0, b = c[0].length, this.prefixBeforeNationalNumber_.append(a.substring(0, b)));\n    }\n  }\n  this.nationalNumber_.clear();\n  this.nationalNumber_.append(a.substring(b));\n  return a.substring(0, b);\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.attemptToExtractIdd_ = function() {\n  var a = this.accruedInputWithoutFormatting_.toString(), b = new RegExp(\"^(?:\\\\\" + i18n.phonenumbers.PhoneNumberUtil.PLUS_SIGN + \"|\" + this.currentMetadata_.getInternationalPrefix() + \")\");\n  b = a.match(b);\n  return null != b && null != b[0] && 0 < b[0].length ? (this.isCompleteNumber_ = !0, b = b[0].length, this.nationalNumber_.clear(), this.nationalNumber_.append(a.substring(b)), this.prefixBeforeNationalNumber_.clear(), this.prefixBeforeNationalNumber_.append(a.substring(0, b)), a.charAt(0) != i18n.phonenumbers.PhoneNumberUtil.PLUS_SIGN && this.prefixBeforeNationalNumber_.append(i18n.phonenumbers.AsYouTypeFormatter.SEPARATOR_BEFORE_NATIONAL_NUMBER_), !0) : !1;\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.attemptToExtractCountryCallingCode_ = function() {\n  if (0 == this.nationalNumber_.getLength()) {\n    return !1;\n  }\n  var a = new goog.string.StringBuffer, b = this.phoneUtil_.extractCountryCode(this.nationalNumber_, a);\n  if (0 == b) {\n    return !1;\n  }\n  this.nationalNumber_.clear();\n  this.nationalNumber_.append(a.toString());\n  a = this.phoneUtil_.getRegionCodeForCountryCode(b);\n  i18n.phonenumbers.PhoneNumberUtil.REGION_CODE_FOR_NON_GEO_ENTITY == a ? this.currentMetadata_ = this.phoneUtil_.getMetadataForNonGeographicalRegion(b) : a != this.defaultCountry_ && (this.currentMetadata_ = this.getMetadataForRegion_(a));\n  this.prefixBeforeNationalNumber_.append(\"\" + b).append(i18n.phonenumbers.AsYouTypeFormatter.SEPARATOR_BEFORE_NATIONAL_NUMBER_);\n  this.extractedNationalPrefix_ = \"\";\n  return !0;\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.normalizeAndAccrueDigitsAndPlusSign_ = function(a, b) {\n  if (a == i18n.phonenumbers.PhoneNumberUtil.PLUS_SIGN) {\n    var c = a;\n    this.accruedInputWithoutFormatting_.append(a);\n  } else {\n    c = i18n.phonenumbers.PhoneNumberUtil.DIGIT_MAPPINGS[a], this.accruedInputWithoutFormatting_.append(c), this.nationalNumber_.append(c);\n  }\n  b && (this.positionToRemember_ = this.accruedInputWithoutFormatting_.getLength());\n  return c;\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.inputDigitHelper_ = function(a) {\n  var b = this.formattingTemplate_.toString();\n  if (0 <= b.substring(this.lastMatchPosition_).search(this.DIGIT_PATTERN_)) {\n    var c = b.search(this.DIGIT_PATTERN_);\n    a = b.replace(this.DIGIT_PATTERN_, a);\n    this.formattingTemplate_.clear();\n    this.formattingTemplate_.append(a);\n    this.lastMatchPosition_ = c;\n    return a.substring(0, this.lastMatchPosition_ + 1);\n  }\n  1 == this.possibleFormats_.length && (this.ableToFormat_ = !1);\n  this.currentFormattingPattern_ = \"\";\n  return this.accruedInput_.toString();\n};\n/*\n\n Copyright (C) 2011 The Libphonenumber Authors.\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n*/\ni18n.phonenumbers.RegionCode = {UN001:\"001\", AD:\"AD\", AE:\"AE\", AO:\"AO\", AQ:\"AQ\", AR:\"AR\", AM:\"AM\", AU:\"AU\", BB:\"BB\", BR:\"BR\", BS:\"BS\", BY:\"BY\", CA:\"CA\", CH:\"CH\", CL:\"CL\", CN:\"CN\", CS:\"CS\", CX:\"CX\", DE:\"DE\", FR:\"FR\", GB:\"GB\", HU:\"HU\", IT:\"IT\", JP:\"JP\", KR:\"KR\", MX:\"MX\", NZ:\"NZ\", PL:\"PL\", RE:\"RE\", RU:\"RU\", SE:\"SE\", SG:\"SG\", US:\"US\", UZ:\"UZ\", YT:\"YT\", ZW:\"ZW\", ZZ:\"ZZ\"};\n/*\n\nCompiled Wednesday July 30, 2014 at 2:15pm America/New_York\n\nVersion: libphonenumber r680\n\n------------------------------------------------------------------------\n\n\n Copyright (C) Alan Beebe (alan.beebe@gmail.com).\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n\n\nUsage...\n\nThis is the same type of code used by cell phones when you enter\na phone number into your dialer app.  Your phone already knows\nwhat country you are a subscriber in, so it assumes you are entering\na local number, unless of course you prefix the number with a +, or\nin the USA you could also prefix the number with 011 to indicate you\nwish to dial internationally.  This code functions the same way.\n\nLets assume your in the United States and you enter the following\nphone number: 8646978257\n\nformatE164(\"US\", \"8646978257\");\n Returns: +18646978257\n\ncountryForE164Number(\"US\", \"+18646978257\");\n Returns: US\n\nformatInternational(\"US\", \"8646978257\");\n Returns: (864) 697-8257\n Info: This is the format you use if you are displaying this number to users outside the US\n\nformatLocal(\"US\", \"8646978257\");\n Returns: (864) 697-8257\n Info: This is the format you use if you are displaying this number to users inside the US\n       (In certain countries, this format will be different then the international format)\n\ncountryCodeToName(\"US\");\n Returns: United States\n\n\n\n*/\n\n\n// -------------------------------------------------------------------------\nfunction countryForE164Number(phone) {\n    /*\n\n    Return the country code for an e164 formatted number\n\n    phone (String) phone number in e164 format to return the country code for\n\n    */\n    try {\n        var phone = cleanPhone(phone);\n        var phoneUtil = i18n.phonenumbers.PhoneNumberUtil.getInstance();\n        var number = phoneUtil.parseAndKeepRawInput(phone);\n        var output = new goog.string.StringBuffer();\n        output = phoneUtil.getRegionCodeForNumber(number);\n        return output.toString();\n    } catch (e) {\n        return \"\";\n    }\n}\n\n// -------------------------------------------------------------------------\nfunction formatNumberForMobileDialing(country, phone) {\n    /*\n\n    Returns a number formatted in such a way that it can be dialed from a mobile\n    phone in a specific region. If the number cannot be reached from the region\n    (e.g. some countries block toll-free numbers from being called outside of the\n    country), the method returns an empty string.\n\n    */\n\n    try {\n        var phone = cleanPhone(phone);\n        var phoneUtil = i18n.phonenumbers.PhoneNumberUtil.getInstance();\n        var number = phoneUtil.parseAndKeepRawInput(phone, country);\n        var output = new goog.string.StringBuffer();\n        output = phoneUtil.formatNumberForMobileDialing(number, country, true);\n        return output.toString();\n    } catch (e) {\n        return \"\";\n    }\n}\n\n// -------------------------------------------------------------------------\nfunction isValidNumber(phone, country, type) {\n    /*\n\n    Tests whether a phone number matches a valid pattern. Note this doesn't\n    verify the number is actually in use, which is impossible to tell by just\n    looking at a number itself.\n\n    */\n\n    try {\n        var phone = cleanPhone(phone);\n        var phoneUtil = i18n.phonenumbers.PhoneNumberUtil.getInstance();\n        var number = phoneUtil.parseAndKeepRawInput(phone, country);\n        if (typeof type === 'string') {\n            var type = type.toUpperCase();\n            if (phoneUtil.isValidNumber(number) &&\n                phoneUtil.getNumberType(number) === i18n.phonenumbers.PhoneNumberType[type]) {\n                return true;\n            }\n            else {\n                return false;\n            }\n        }\n        else {\n            return phoneUtil.isValidNumber(number);\n        }\n    } catch (e) {\n        return false;\n    }\n}\n\n// -------------------------------------------------------------------------\nfunction formatE164(country, phone) {\n    /*\n\n    Return the phone number in e164 format\n\n    country (String) 2 digit country code\n    phone (String) phone number to format\n\n    */\n\n    try {\n        var phone = cleanPhone(phone);\n        var phoneUtil = i18n.phonenumbers.PhoneNumberUtil.getInstance();\n        var number = phoneUtil.parseAndKeepRawInput(phone, country);\n        var PNF = i18n.phonenumbers.PhoneNumberFormat;\n        var output = new goog.string.StringBuffer();\n        output = phoneUtil.format(number, PNF.E164);\n        return output.toString();\n    } catch (e) {\n        return phone\n    }\n}\n\n\n// -------------------------------------------------------------------------\nfunction formatInternational(country, phone) {\n    /*\n\n    Return the phone number in international format\n\n    country (String) 2 digit country code\n    phone (String) phone number to format\n\n    */\n\n    try {\n        var phone = cleanPhone(phone);\n        var formatter = new i18n.phonenumbers.AsYouTypeFormatter(country);\n        var output = new goog.string.StringBuffer();\n        for (var i = 0; i < phone.length; ++i) {\n            var inputChar = phone.charAt(i);\n            output = (formatter.inputDigit(inputChar));\n        }\n        return output.toString();\n    } catch (e) {\n        return phone;\n    }\n}\n\n// -------------------------------------------------------------------------\nfunction formatLocal(country, phone) {\n    /*\n\n    Return the phone number in the format local to the user\n\n    country (String) 2 digit country code\n    phone (String) phone number to format\n\n    */\n\n    try {\n        var phone = cleanPhone(phone);\n        var phoneUtil = i18n.phonenumbers.PhoneNumberUtil.getInstance();\n        var number = phoneUtil.parseAndKeepRawInput(phone, country);\n        if (phoneUtil.isValidNumberForRegion(number, country)) {\n            var PNF = i18n.phonenumbers.PhoneNumberFormat;\n            var output = new goog.string.StringBuffer();\n            output = phoneUtil.format(number, PNF.NATIONAL);\n            return output.toString();\n        } else {\n            return formatInternational(country, phone);\n        }\n    } catch (e) {\n        return formatInternational(country, phone);\n    }\n}\n\n// -------------------------------------------------------------------------\nfunction exampleLandlineNumber(country) {\n    /*\n\n    Returns an example land line phone number for the specified country\n\n    country (String) 2 digit country code\n\n    */\n\n    try {\n        var phoneUtil = i18n.phonenumbers.PhoneNumberUtil.getInstance();\n        var output = phoneUtil.getExampleNumber(country);\n        return \"\"+output.getNationalNumber();\n    } catch (e) {\n        return \"\";\n    }\n}\n\n// -------------------------------------------------------------------------\nfunction exampleMobileNumber(country) {\n    /*\n\n    Returns an example mobile phone number for the specified country\n\n    country (String) 2 digit country code\n\n    */\n\n    try {\n        var phoneUtil = i18n.phonenumbers.PhoneNumberUtil.getInstance();\n        var output = phoneUtil.getExampleNumberForType(country, i18n.phonenumbers.PhoneNumberType.MOBILE);\n        return \"\"+output.getNationalNumber();\n    } catch (e) {\n        return \"\";\n    }\n}\n\n// -------------------------------------------------------------------------\nfunction cleanPhone(phone) {\n    /*\n\n    Remove any non numeric characters from the phone number but leave any plus sign at the beginning\n\n    phone (String) phone number to clean\n\n    */\n\n    phone = phone.replace(/[^\\d\\+]/g,'');\n    if (phone.substr(0, 1) == \"+\") {\n        phone = \"+\" + phone.replace(/[^\\d]/g,'');\n    } else {\n        phone = phone.replace(/[^\\d]/g,'');\n    }\n    return phone;\n}\n\n// -------------------------------------------------------------------------\nfunction countryCodeToName(countryCode) {\n    /*\n\n    Convert the country code to a name\n\n    country (String) 2 digit country code\n\n    */\n\n    var arrCountry = new Array();\n    arrCountry['AF'] = \"Afghanistan\";\n    arrCountry['AL'] = \"Albania\";\n    arrCountry['DZ'] = \"Algeria\";\n    arrCountry['AS'] = \"American Samoa\";\n    arrCountry['AD'] = \"Andorra\";\n    arrCountry['AO'] = \"Angola\";\n    arrCountry['AI'] = \"Anguilla\";\n    arrCountry['AQ'] = \"Antarctica\";\n    arrCountry['AG'] = \"Antigua And Barbuda\";\n    arrCountry['AR'] = \"Argentina\";\n    arrCountry['AM'] = \"Armenia\";\n    arrCountry['AW'] = \"Aruba\";\n    arrCountry['AC'] = \"Ascension Island\";\n    arrCountry['AU'] = \"Australia\";\n    arrCountry['AT'] = \"Austria\";\n    arrCountry['AZ'] = \"Azerbaijan\";\n    arrCountry['BS'] = \"Bahamas\";\n    arrCountry['BH'] = \"Bahrain\";\n    arrCountry['BD'] = \"Bangladesh\";\n    arrCountry['BB'] = \"Barbados\";\n    arrCountry['BY'] = \"Belarus\";\n    arrCountry['BE'] = \"Belgium\";\n    arrCountry['BZ'] = \"Belize\";\n    arrCountry['BJ'] = \"Benin\";\n    arrCountry['BM'] = \"Bermuda\";\n    arrCountry['BT'] = \"Bhutan\";\n    arrCountry['BO'] = \"Bolivia\";\n    arrCountry['BA'] = \"Bosnia And Herzegovina\";\n    arrCountry['BW'] = \"Botswana\";\n    arrCountry['BV'] = \"Bouvet Island\";\n    arrCountry['BR'] = \"Brazil\";\n    arrCountry['IO'] = \"British Indian Ocean Territory\";\n    arrCountry['BN'] = \"Brunei\";\n    arrCountry['BG'] = \"Bulgaria\";\n    arrCountry['BF'] = \"Burkina Faso\";\n    arrCountry['BI'] = \"Burundi\";\n    arrCountry['KH'] = \"Cambodia\";\n    arrCountry['CM'] = \"Cameroon\";\n    arrCountry['CA'] = \"Canada\";\n    arrCountry['CV'] = \"Cape Verde\";\n    arrCountry['KY'] = \"Cayman Islands\";\n    arrCountry['CF'] = \"Central African Republic\";\n    arrCountry['TD'] = \"Chad\";\n    arrCountry['CL'] = \"Chile\";\n    arrCountry['CN'] = \"China\";\n    arrCountry['CX'] = \"Christmas Island\";\n    arrCountry['CC'] = \"Cocos (Keeling) Islands\";\n    arrCountry['CO'] = \"Colombia\";\n    arrCountry['KM'] = \"Comoros\";\n    arrCountry['CG'] = \"Congo\";\n    arrCountry['CK'] = \"Cook Islands\";\n    arrCountry['CR'] = \"Costa Rica\";\n    arrCountry['CI'] = \"Cote D'Ivorie (Ivory Coast)\";\n    arrCountry['HR'] = \"Croatia (Hrvatska)\";\n    arrCountry['CU'] = \"Cuba\";\n    arrCountry['CY'] = \"Cyprus\";\n    arrCountry['CZ'] = \"Czech Republic\";\n    arrCountry['CD'] = \"Democratic Republic Of Congo (Zaire)\";\n    arrCountry['DK'] = \"Denmark\";\n    arrCountry['DJ'] = \"Djibouti\";\n    arrCountry['DM'] = \"Dominica\";\n    arrCountry['DO'] = \"Dominican Republic\";\n    arrCountry['TL'] = \"East Timor\";\n    arrCountry['EC'] = \"Ecuador\";\n    arrCountry['EG'] = \"Egypt\";\n    arrCountry['SV'] = \"El Salvador\";\n    arrCountry['GQ'] = \"Equatorial Guinea\";\n    arrCountry['ER'] = \"Eritrea\";\n    arrCountry['EE'] = \"Estonia\";\n    arrCountry['ET'] = \"Ethiopia\";\n    arrCountry['FK'] = \"Falkland Islands (Malvinas)\";\n    arrCountry['FO'] = \"Faroe Islands\";\n    arrCountry['FJ'] = \"Fiji\";\n    arrCountry['FI'] = \"Finland\";\n    arrCountry['FR'] = \"France\";\n    arrCountry['FX'] = \"France, Metropolitan\";\n    arrCountry['GF'] = \"French Guinea\";\n    arrCountry['PF'] = \"French Polynesia\";\n    arrCountry['TF'] = \"French Southern Territories\";\n    arrCountry['GA'] = \"Gabon\";\n    arrCountry['GM'] = \"Gambia\";\n    arrCountry['GE'] = \"Georgia\";\n    arrCountry['DE'] = \"Germany\";\n    arrCountry['GH'] = \"Ghana\";\n    arrCountry['GI'] = \"Gibraltar\";\n    arrCountry['GR'] = \"Greece\";\n    arrCountry['GL'] = \"Greenland\";\n    arrCountry['GD'] = \"Grenada\";\n    arrCountry['GP'] = \"Guadeloupe\";\n    arrCountry['GU'] = \"Guam\";\n    arrCountry['GT'] = \"Guatemala\";\n    arrCountry['GN'] = \"Guinea\";\n    arrCountry['GW'] = \"Guinea-Bissau\";\n    arrCountry['GY'] = \"Guyana\";\n    arrCountry['HT'] = \"Haiti\";\n    arrCountry['HM'] = \"Heard And McDonald Islands\";\n    arrCountry['HN'] = \"Honduras\";\n    arrCountry['HK'] = \"Hong Kong\";\n    arrCountry['HU'] = \"Hungary\";\n    arrCountry['IS'] = \"Iceland\";\n    arrCountry['IN'] = \"India\";\n    arrCountry['ID'] = \"Indonesia\";\n    arrCountry['IR'] = \"Iran\";\n    arrCountry['IQ'] = \"Iraq\";\n    arrCountry['IE'] = \"Ireland\";\n    arrCountry['IM'] = \"Isle of Man\";\n    arrCountry['IL'] = \"Israel\";\n    arrCountry['IT'] = \"Italy\";\n    arrCountry['JM'] = \"Jamaica\";\n    arrCountry['JP'] = \"Japan\";\n    arrCountry['JO'] = \"Jordan\";\n    arrCountry['KZ'] = \"Kazakhstan\";\n    arrCountry['KE'] = \"Kenya\";\n    arrCountry['KI'] = \"Kiribati\";\n    arrCountry['KW'] = \"Kuwait\";\n    arrCountry['KG'] = \"Kyrgyzstan\";\n    arrCountry['LA'] = \"Laos\";\n    arrCountry['LV'] = \"Latvia\";\n    arrCountry['LB'] = \"Lebanon\";\n    arrCountry['LS'] = \"Lesotho\";\n    arrCountry['LR'] = \"Liberia\";\n    arrCountry['LY'] = \"Libya\";\n    arrCountry['LI'] = \"Liechtenstein\";\n    arrCountry['LT'] = \"Lithuania\";\n    arrCountry['LU'] = \"Luxembourg\";\n    arrCountry['MO'] = \"Macau\";\n    arrCountry['MK'] = \"Macedonia\";\n    arrCountry['MG'] = \"Madagascar\";\n    arrCountry['MW'] = \"Malawi\";\n    arrCountry['MY'] = \"Malaysia\";\n    arrCountry['MV'] = \"Maldives\";\n    arrCountry['ML'] = \"Mali\";\n    arrCountry['MT'] = \"Malta\";\n    arrCountry['MH'] = \"Marshall Islands\";\n    arrCountry['MQ'] = \"Martinique\";\n    arrCountry['MR'] = \"Mauritania\";\n    arrCountry['MU'] = \"Mauritius\";\n    arrCountry['YT'] = \"Mayotte\";\n    arrCountry['MX'] = \"Mexico\";\n    arrCountry['FM'] = \"Micronesia\";\n    arrCountry['MD'] = \"Moldova\";\n    arrCountry['MC'] = \"Monaco\";\n    arrCountry['MN'] = \"Mongolia\";\n    arrCountry['ME'] = \"Montenegro\";\n    arrCountry['MS'] = \"Montserrat\";\n    arrCountry['MA'] = \"Morocco\";\n    arrCountry['MZ'] = \"Mozambique\";\n    arrCountry['MM'] = \"Myanmar (Burma)\";\n    arrCountry['NA'] = \"Namibia\";\n    arrCountry['NR'] = \"Nauru\";\n    arrCountry['NP'] = \"Nepal\";\n    arrCountry['NL'] = \"Netherlands\";\n    arrCountry['AN'] = \"Netherlands Antilles\";\n    arrCountry['NC'] = \"New Caledonia\";\n    arrCountry['NZ'] = \"New Zealand\";\n    arrCountry['NI'] = \"Nicaragua\";\n    arrCountry['NE'] = \"Niger\";\n    arrCountry['NG'] = \"Nigeria\";\n    arrCountry['NU'] = \"Niue\";\n    arrCountry['NF'] = \"Norfolk Island\";\n    arrCountry['KP'] = \"North Korea\";\n    arrCountry['MP'] = \"Northern Mariana Islands\";\n    arrCountry['NO'] = \"Norway\";\n    arrCountry['OM'] = \"Oman\";\n    arrCountry['PK'] = \"Pakistan\";\n    arrCountry['PW'] = \"Palau\";\n    arrCountry['PS'] = \"Palestine\";\n    arrCountry['PA'] = \"Panama\";\n    arrCountry['PG'] = \"Papua New Guinea\";\n    arrCountry['PY'] = \"Paraguay\";\n    arrCountry['PE'] = \"Peru\";\n    arrCountry['PH'] = \"Philippines\";\n    arrCountry['PN'] = \"Pitcairn\";\n    arrCountry['PL'] = \"Poland\";\n    arrCountry['PT'] = \"Portugal\";\n    arrCountry['PR'] = \"Puerto Rico\";\n    arrCountry['QA'] = \"Qatar\";\n    arrCountry['RE'] = \"Reunion\";\n    arrCountry['RO'] = \"Romania\";\n    arrCountry['RU'] = \"Russia\";\n    arrCountry['RW'] = \"Rwanda\";\n    arrCountry['SH'] = \"Saint Helena\";\n    arrCountry['KN'] = \"Saint Kitts And Nevis\";\n    arrCountry['LC'] = \"Saint Lucia\";\n    arrCountry['PM'] = \"Saint Pierre And Miquelon\";\n    arrCountry['VC'] = \"Saint Vincent And The Grenadines\";\n    arrCountry['SM'] = \"San Marino\";\n    arrCountry['ST'] = \"Sao Tome And Principe\";\n    arrCountry['SA'] = \"Saudi Arabia\";\n    arrCountry['SN'] = \"Senegal\";\n    arrCountry['RS'] = \"Serbia\";\n    arrCountry['SC'] = \"Seychelles\";\n    arrCountry['SL'] = \"Sierra Leone\";\n    arrCountry['SG'] = \"Singapore\";\n    arrCountry['SK'] = \"Slovak Republic\";\n    arrCountry['SI'] = \"Slovenia\";\n    arrCountry['SB'] = \"Solomon Islands\";\n    arrCountry['SO'] = \"Somalia\";\n    arrCountry['ZA'] = \"South Africa\";\n    arrCountry['GS'] = \"South Georgia And South Sandwich Islands\";\n    arrCountry['KR'] = \"South Korea\";\n    arrCountry['ES'] = \"Spain\";\n    arrCountry['LK'] = \"Sri Lanka\";\n    arrCountry['SD'] = \"Sudan\";\n    arrCountry['SR'] = \"Suriname\";\n    arrCountry['SJ'] = \"Svalbard And Jan Mayen\";\n    arrCountry['SZ'] = \"Swaziland\";\n    arrCountry['SE'] = \"Sweden\";\n    arrCountry['CH'] = \"Switzerland\";\n    arrCountry['SY'] = \"Syria\";\n    arrCountry['TW'] = \"Taiwan\";\n    arrCountry['TJ'] = \"Tajikistan\";\n    arrCountry['TZ'] = \"Tanzania\";\n    arrCountry['TH'] = \"Thailand\";\n    arrCountry['TG'] = \"Togo\";\n    arrCountry['TK'] = \"Tokelau\";\n    arrCountry['TO'] = \"Tonga\";\n    arrCountry['TT'] = \"Trinidad And Tobago\";\n    arrCountry['TN'] = \"Tunisia\";\n    arrCountry['TR'] = \"Turkey\";\n    arrCountry['TM'] = \"Turkmenistan\";\n    arrCountry['TC'] = \"Turks And Caicos Islands\";\n    arrCountry['TV'] = \"Tuvalu\";\n    arrCountry['UG'] = \"Uganda\";\n    arrCountry['UA'] = \"Ukraine\";\n    arrCountry['AE'] = \"United Arab Emirates\";\n    arrCountry['GB'] = \"United Kingdom\";\n    arrCountry['US'] = \"United States\";\n    arrCountry['UM'] = \"United States Minor Outlying Islands\";\n    arrCountry['UY'] = \"Uruguay\";\n    arrCountry['UZ'] = \"Uzbekistan\";\n    arrCountry['VU'] = \"Vanuatu\";\n    arrCountry['VA'] = \"Vatican City (Holy See)\";\n    arrCountry['VE'] = \"Venezuela\";\n    arrCountry['VN'] = \"Vietnam\";\n    arrCountry['VG'] = \"Virgin Islands (British)\";\n    arrCountry['VI'] = \"Virgin Islands (US)\";\n    arrCountry['WF'] = \"Wallis And Futuna Islands\";\n    arrCountry['EH'] = \"Western Sahara\";\n    arrCountry['WS'] = \"Western Samoa\";\n    arrCountry['YE'] = \"Yemen\";\n    arrCountry['YU'] = \"Yugoslavia\";\n    arrCountry['ZM'] = \"Zambia\";\n    arrCountry['ZW'] = \"Zimbabwe\";\n\n    var name = arrCountry[countryCode.toUpperCase()];\n    if (name === undefined) {\n        return \"\";\n    }\n    return name;\n}\nexports.COMPILED=COMPILED;\nexports.goog=goog;\nexports.i18n=i18n;\nexports.countryForE164Number=countryForE164Number;\nexports.formatNumberForMobileDialing=formatNumberForMobileDialing;\nexports.isValidNumber=isValidNumber;\nexports.formatE164=formatE164;\nexports.formatInternational=formatInternational;\nexports.formatLocal=formatLocal;\nexports.exampleLandlineNumber=exampleLandlineNumber;\nexports.exampleMobileNumber=exampleMobileNumber;\nexports.cleanPhone=cleanPhone;\nexports.countryCodeToName=countryCodeToName;\n})(exports);"
  },
  {
    "path": "dist/phone-format-global.js",
    "content": ";(function(window) {\n\nvar COMPILED = !0, goog = goog || {};\ngoog.global = this || self;\ngoog.isDef = function(a) {\n  return void 0 !== a;\n};\ngoog.isString = function(a) {\n  return \"string\" == typeof a;\n};\ngoog.isBoolean = function(a) {\n  return \"boolean\" == typeof a;\n};\ngoog.isNumber = function(a) {\n  return \"number\" == typeof a;\n};\ngoog.exportPath_ = function(a, b, c) {\n  a = a.split(\".\");\n  c = c || goog.global;\n  a[0] in c || \"undefined\" == typeof c.execScript || c.execScript(\"var \" + a[0]);\n  for (var d; a.length && (d = a.shift());) {\n    a.length || void 0 === b ? c = c[d] && c[d] !== Object.prototype[d] ? c[d] : c[d] = {} : c[d] = b;\n  }\n};\ngoog.define = function(a, b) {\n  var c = b;\n  if (!COMPILED) {\n    var d = goog.global.CLOSURE_UNCOMPILED_DEFINES, e = goog.global.CLOSURE_DEFINES;\n    d && void 0 === d.nodeType && Object.prototype.hasOwnProperty.call(d, a) ? c = d[a] : e && void 0 === e.nodeType && Object.prototype.hasOwnProperty.call(e, a) && (c = e[a]);\n  }\n  return c;\n};\ngoog.FEATURESET_YEAR = 2012;\ngoog.DEBUG = !0;\ngoog.LOCALE = \"en\";\ngoog.TRUSTED_SITE = !0;\ngoog.STRICT_MODE_COMPATIBLE = !1;\ngoog.DISALLOW_TEST_ONLY_CODE = COMPILED && !goog.DEBUG;\ngoog.ENABLE_CHROME_APP_SAFE_SCRIPT_LOADING = !1;\ngoog.provide = function(a) {\n  if (goog.isInModuleLoader_()) {\n    throw Error(\"goog.provide cannot be used within a module.\");\n  }\n  if (!COMPILED && goog.isProvided_(a)) {\n    throw Error('Namespace \"' + a + '\" already declared.');\n  }\n  goog.constructNamespace_(a);\n};\ngoog.constructNamespace_ = function(a, b) {\n  if (!COMPILED) {\n    delete goog.implicitNamespaces_[a];\n    for (var c = a; (c = c.substring(0, c.lastIndexOf(\".\"))) && !goog.getObjectByName(c);) {\n      goog.implicitNamespaces_[c] = !0;\n    }\n  }\n  goog.exportPath_(a, b);\n};\ngoog.getScriptNonce = function(a) {\n  if (a && a != goog.global) {\n    return goog.getScriptNonce_(a.document);\n  }\n  null === goog.cspNonce_ && (goog.cspNonce_ = goog.getScriptNonce_(goog.global.document));\n  return goog.cspNonce_;\n};\ngoog.NONCE_PATTERN_ = /^[\\w+/_-]+[=]{0,2}$/;\ngoog.cspNonce_ = null;\ngoog.getScriptNonce_ = function(a) {\n  return (a = a.querySelector && a.querySelector(\"script[nonce]\")) && (a = a.nonce || a.getAttribute(\"nonce\")) && goog.NONCE_PATTERN_.test(a) ? a : \"\";\n};\ngoog.VALID_MODULE_RE_ = /^[a-zA-Z_$][a-zA-Z0-9._$]*$/;\ngoog.module = function(a) {\n  if (\"string\" !== typeof a || !a || -1 == a.search(goog.VALID_MODULE_RE_)) {\n    throw Error(\"Invalid module identifier\");\n  }\n  if (!goog.isInGoogModuleLoader_()) {\n    throw Error(\"Module \" + a + \" has been loaded incorrectly. Note, modules cannot be loaded as normal scripts. They require some kind of pre-processing step. You're likely trying to load a module via a script tag or as a part of a concatenated bundle without rewriting the module. For more info see: https://github.com/google/closure-library/wiki/goog.module:-an-ES6-module-like-alternative-to-goog.provide.\");\n  }\n  if (goog.moduleLoaderState_.moduleName) {\n    throw Error(\"goog.module may only be called once per module.\");\n  }\n  goog.moduleLoaderState_.moduleName = a;\n  if (!COMPILED) {\n    if (goog.isProvided_(a)) {\n      throw Error('Namespace \"' + a + '\" already declared.');\n    }\n    delete goog.implicitNamespaces_[a];\n  }\n};\ngoog.module.get = function(a) {\n  return goog.module.getInternal_(a);\n};\ngoog.module.getInternal_ = function(a) {\n  if (!COMPILED) {\n    if (a in goog.loadedModules_) {\n      return goog.loadedModules_[a].exports;\n    }\n    if (!goog.implicitNamespaces_[a]) {\n      return a = goog.getObjectByName(a), null != a ? a : null;\n    }\n  }\n  return null;\n};\ngoog.ModuleType = {ES6:\"es6\", GOOG:\"goog\"};\ngoog.moduleLoaderState_ = null;\ngoog.isInModuleLoader_ = function() {\n  return goog.isInGoogModuleLoader_() || goog.isInEs6ModuleLoader_();\n};\ngoog.isInGoogModuleLoader_ = function() {\n  return !!goog.moduleLoaderState_ && goog.moduleLoaderState_.type == goog.ModuleType.GOOG;\n};\ngoog.isInEs6ModuleLoader_ = function() {\n  if (goog.moduleLoaderState_ && goog.moduleLoaderState_.type == goog.ModuleType.ES6) {\n    return !0;\n  }\n  var a = goog.global.$jscomp;\n  return a ? \"function\" != typeof a.getCurrentModulePath ? !1 : !!a.getCurrentModulePath() : !1;\n};\ngoog.module.declareLegacyNamespace = function() {\n  if (!COMPILED && !goog.isInGoogModuleLoader_()) {\n    throw Error(\"goog.module.declareLegacyNamespace must be called from within a goog.module\");\n  }\n  if (!COMPILED && !goog.moduleLoaderState_.moduleName) {\n    throw Error(\"goog.module must be called prior to goog.module.declareLegacyNamespace.\");\n  }\n  goog.moduleLoaderState_.declareLegacyNamespace = !0;\n};\ngoog.declareModuleId = function(a) {\n  if (!COMPILED) {\n    if (!goog.isInEs6ModuleLoader_()) {\n      throw Error(\"goog.declareModuleId may only be called from within an ES6 module\");\n    }\n    if (goog.moduleLoaderState_ && goog.moduleLoaderState_.moduleName) {\n      throw Error(\"goog.declareModuleId may only be called once per module.\");\n    }\n    if (a in goog.loadedModules_) {\n      throw Error('Module with namespace \"' + a + '\" already exists.');\n    }\n  }\n  if (goog.moduleLoaderState_) {\n    goog.moduleLoaderState_.moduleName = a;\n  } else {\n    var b = goog.global.$jscomp;\n    if (!b || \"function\" != typeof b.getCurrentModulePath) {\n      throw Error('Module with namespace \"' + a + '\" has been loaded incorrectly.');\n    }\n    b = b.require(b.getCurrentModulePath());\n    goog.loadedModules_[a] = {exports:b, type:goog.ModuleType.ES6, moduleId:a};\n  }\n};\ngoog.setTestOnly = function(a) {\n  if (goog.DISALLOW_TEST_ONLY_CODE) {\n    throw a = a || \"\", Error(\"Importing test-only code into non-debug environment\" + (a ? \": \" + a : \".\"));\n  }\n};\ngoog.forwardDeclare = function(a) {\n};\nCOMPILED || (goog.isProvided_ = function(a) {\n  return a in goog.loadedModules_ || !goog.implicitNamespaces_[a] && null != goog.getObjectByName(a);\n}, goog.implicitNamespaces_ = {\"goog.module\":!0});\ngoog.getObjectByName = function(a, b) {\n  for (var c = a.split(\".\"), d = b || goog.global, e = 0; e < c.length; e++) {\n    if (d = d[c[e]], null == d) {\n      return null;\n    }\n  }\n  return d;\n};\ngoog.globalize = function(a, b) {\n  var c = b || goog.global, d;\n  for (d in a) {\n    c[d] = a[d];\n  }\n};\ngoog.addDependency = function(a, b, c, d) {\n  !COMPILED && goog.DEPENDENCIES_ENABLED && goog.debugLoader_.addDependency(a, b, c, d);\n};\ngoog.ENABLE_DEBUG_LOADER = !0;\ngoog.logToConsole_ = function(a) {\n  goog.global.console && goog.global.console.error(a);\n};\ngoog.require = function(a) {\n  if (!COMPILED) {\n    goog.ENABLE_DEBUG_LOADER && goog.debugLoader_.requested(a);\n    if (goog.isProvided_(a)) {\n      if (goog.isInModuleLoader_()) {\n        return goog.module.getInternal_(a);\n      }\n    } else {\n      if (goog.ENABLE_DEBUG_LOADER) {\n        var b = goog.moduleLoaderState_;\n        goog.moduleLoaderState_ = null;\n        try {\n          goog.debugLoader_.load_(a);\n        } finally {\n          goog.moduleLoaderState_ = b;\n        }\n      }\n    }\n    return null;\n  }\n};\ngoog.requireType = function(a) {\n  return {};\n};\ngoog.basePath = \"\";\ngoog.nullFunction = function() {\n};\ngoog.abstractMethod = function() {\n  throw Error(\"unimplemented abstract method\");\n};\ngoog.addSingletonGetter = function(a) {\n  a.instance_ = void 0;\n  a.getInstance = function() {\n    if (a.instance_) {\n      return a.instance_;\n    }\n    goog.DEBUG && (goog.instantiatedSingletons_[goog.instantiatedSingletons_.length] = a);\n    return a.instance_ = new a;\n  };\n};\ngoog.instantiatedSingletons_ = [];\ngoog.LOAD_MODULE_USING_EVAL = !0;\ngoog.SEAL_MODULE_EXPORTS = goog.DEBUG;\ngoog.loadedModules_ = {};\ngoog.DEPENDENCIES_ENABLED = !COMPILED && goog.ENABLE_DEBUG_LOADER;\ngoog.TRANSPILE = \"detect\";\ngoog.ASSUME_ES_MODULES_TRANSPILED = !1;\ngoog.TRANSPILE_TO_LANGUAGE = \"\";\ngoog.TRANSPILER = \"transpile.js\";\ngoog.hasBadLetScoping = null;\ngoog.useSafari10Workaround = function() {\n  if (null == goog.hasBadLetScoping) {\n    try {\n      var a = !eval('\"use strict\";let x = 1; function f() { return typeof x; };f() == \"number\";');\n    } catch (b) {\n      a = !1;\n    }\n    goog.hasBadLetScoping = a;\n  }\n  return goog.hasBadLetScoping;\n};\ngoog.workaroundSafari10EvalBug = function(a) {\n  return \"(function(){\" + a + \"\\n;})();\\n\";\n};\ngoog.loadModule = function(a) {\n  var b = goog.moduleLoaderState_;\n  try {\n    goog.moduleLoaderState_ = {moduleName:\"\", declareLegacyNamespace:!1, type:goog.ModuleType.GOOG};\n    if (goog.isFunction(a)) {\n      var c = a.call(void 0, {});\n    } else {\n      if (\"string\" === typeof a) {\n        goog.useSafari10Workaround() && (a = goog.workaroundSafari10EvalBug(a)), c = goog.loadModuleFromSource_.call(void 0, a);\n      } else {\n        throw Error(\"Invalid module definition\");\n      }\n    }\n    var d = goog.moduleLoaderState_.moduleName;\n    if (\"string\" === typeof d && d) {\n      goog.moduleLoaderState_.declareLegacyNamespace ? goog.constructNamespace_(d, c) : goog.SEAL_MODULE_EXPORTS && Object.seal && \"object\" == typeof c && null != c && Object.seal(c), goog.loadedModules_[d] = {exports:c, type:goog.ModuleType.GOOG, moduleId:goog.moduleLoaderState_.moduleName};\n    } else {\n      throw Error('Invalid module name \"' + d + '\"');\n    }\n  } finally {\n    goog.moduleLoaderState_ = b;\n  }\n};\ngoog.loadModuleFromSource_ = function(a) {\n  eval(a);\n  return {};\n};\ngoog.normalizePath_ = function(a) {\n  a = a.split(\"/\");\n  for (var b = 0; b < a.length;) {\n    \".\" == a[b] ? a.splice(b, 1) : b && \"..\" == a[b] && a[b - 1] && \"..\" != a[b - 1] ? a.splice(--b, 2) : b++;\n  }\n  return a.join(\"/\");\n};\ngoog.loadFileSync_ = function(a) {\n  if (goog.global.CLOSURE_LOAD_FILE_SYNC) {\n    return goog.global.CLOSURE_LOAD_FILE_SYNC(a);\n  }\n  try {\n    var b = new goog.global.XMLHttpRequest;\n    b.open(\"get\", a, !1);\n    b.send();\n    return 0 == b.status || 200 == b.status ? b.responseText : null;\n  } catch (c) {\n    return null;\n  }\n};\ngoog.transpile_ = function(a, b, c) {\n  var d = goog.global.$jscomp;\n  d || (goog.global.$jscomp = d = {});\n  var e = d.transpile;\n  if (!e) {\n    var f = goog.basePath + goog.TRANSPILER, g = goog.loadFileSync_(f);\n    if (g) {\n      (function() {\n        (0,eval)(g + \"\\n//# sourceURL=\" + f);\n      }).call(goog.global);\n      if (goog.global.$gwtExport && goog.global.$gwtExport.$jscomp && !goog.global.$gwtExport.$jscomp.transpile) {\n        throw Error('The transpiler did not properly export the \"transpile\" method. $gwtExport: ' + JSON.stringify(goog.global.$gwtExport));\n      }\n      goog.global.$jscomp.transpile = goog.global.$gwtExport.$jscomp.transpile;\n      d = goog.global.$jscomp;\n      e = d.transpile;\n    }\n  }\n  e || (e = d.transpile = function(a, b) {\n    goog.logToConsole_(b + \" requires transpilation but no transpiler was found.\");\n    return a;\n  });\n  return e(a, b, c);\n};\ngoog.typeOf = function(a) {\n  var b = typeof a;\n  if (\"object\" == b) {\n    if (a) {\n      if (a instanceof Array) {\n        return \"array\";\n      }\n      if (a instanceof Object) {\n        return b;\n      }\n      var c = Object.prototype.toString.call(a);\n      if (\"[object Window]\" == c) {\n        return \"object\";\n      }\n      if (\"[object Array]\" == c || \"number\" == typeof a.length && \"undefined\" != typeof a.splice && \"undefined\" != typeof a.propertyIsEnumerable && !a.propertyIsEnumerable(\"splice\")) {\n        return \"array\";\n      }\n      if (\"[object Function]\" == c || \"undefined\" != typeof a.call && \"undefined\" != typeof a.propertyIsEnumerable && !a.propertyIsEnumerable(\"call\")) {\n        return \"function\";\n      }\n    } else {\n      return \"null\";\n    }\n  } else {\n    if (\"function\" == b && \"undefined\" == typeof a.call) {\n      return \"object\";\n    }\n  }\n  return b;\n};\ngoog.isNull = function(a) {\n  return null === a;\n};\ngoog.isDefAndNotNull = function(a) {\n  return null != a;\n};\ngoog.isArray = function(a) {\n  return \"array\" == goog.typeOf(a);\n};\ngoog.isArrayLike = function(a) {\n  var b = goog.typeOf(a);\n  return \"array\" == b || \"object\" == b && \"number\" == typeof a.length;\n};\ngoog.isDateLike = function(a) {\n  return goog.isObject(a) && \"function\" == typeof a.getFullYear;\n};\ngoog.isFunction = function(a) {\n  return \"function\" == goog.typeOf(a);\n};\ngoog.isObject = function(a) {\n  var b = typeof a;\n  return \"object\" == b && null != a || \"function\" == b;\n};\ngoog.getUid = function(a) {\n  return a[goog.UID_PROPERTY_] || (a[goog.UID_PROPERTY_] = ++goog.uidCounter_);\n};\ngoog.hasUid = function(a) {\n  return !!a[goog.UID_PROPERTY_];\n};\ngoog.removeUid = function(a) {\n  null !== a && \"removeAttribute\" in a && a.removeAttribute(goog.UID_PROPERTY_);\n  try {\n    delete a[goog.UID_PROPERTY_];\n  } catch (b) {\n  }\n};\ngoog.UID_PROPERTY_ = \"closure_uid_\" + (1e9 * Math.random() >>> 0);\ngoog.uidCounter_ = 0;\ngoog.getHashCode = goog.getUid;\ngoog.removeHashCode = goog.removeUid;\ngoog.cloneObject = function(a) {\n  var b = goog.typeOf(a);\n  if (\"object\" == b || \"array\" == b) {\n    if (\"function\" === typeof a.clone) {\n      return a.clone();\n    }\n    b = \"array\" == b ? [] : {};\n    for (var c in a) {\n      b[c] = goog.cloneObject(a[c]);\n    }\n    return b;\n  }\n  return a;\n};\ngoog.bindNative_ = function(a, b, c) {\n  return a.call.apply(a.bind, arguments);\n};\ngoog.bindJs_ = function(a, b, c) {\n  if (!a) {\n    throw Error();\n  }\n  if (2 < arguments.length) {\n    var d = Array.prototype.slice.call(arguments, 2);\n    return function() {\n      var c = Array.prototype.slice.call(arguments);\n      Array.prototype.unshift.apply(c, d);\n      return a.apply(b, c);\n    };\n  }\n  return function() {\n    return a.apply(b, arguments);\n  };\n};\ngoog.bind = function(a, b, c) {\n  Function.prototype.bind && -1 != Function.prototype.bind.toString().indexOf(\"native code\") ? goog.bind = goog.bindNative_ : goog.bind = goog.bindJs_;\n  return goog.bind.apply(null, arguments);\n};\ngoog.partial = function(a, b) {\n  var c = Array.prototype.slice.call(arguments, 1);\n  return function() {\n    var b = c.slice();\n    b.push.apply(b, arguments);\n    return a.apply(this, b);\n  };\n};\ngoog.mixin = function(a, b) {\n  for (var c in b) {\n    a[c] = b[c];\n  }\n};\ngoog.now = goog.TRUSTED_SITE && Date.now || function() {\n  return +new Date;\n};\ngoog.globalEval = function(a) {\n  if (goog.global.execScript) {\n    goog.global.execScript(a, \"JavaScript\");\n  } else {\n    if (goog.global.eval) {\n      if (null == goog.evalWorksForGlobals_) {\n        try {\n          goog.global.eval(\"var _evalTest_ = 1;\");\n        } catch (d) {\n        }\n        if (\"undefined\" != typeof goog.global._evalTest_) {\n          try {\n            delete goog.global._evalTest_;\n          } catch (d) {\n          }\n          goog.evalWorksForGlobals_ = !0;\n        } else {\n          goog.evalWorksForGlobals_ = !1;\n        }\n      }\n      if (goog.evalWorksForGlobals_) {\n        goog.global.eval(a);\n      } else {\n        var b = goog.global.document, c = b.createElement(\"script\");\n        c.type = \"text/javascript\";\n        c.defer = !1;\n        c.appendChild(b.createTextNode(a));\n        b.head.appendChild(c);\n        b.head.removeChild(c);\n      }\n    } else {\n      throw Error(\"goog.globalEval not available\");\n    }\n  }\n};\ngoog.evalWorksForGlobals_ = null;\ngoog.getCssName = function(a, b) {\n  if (\".\" == String(a).charAt(0)) {\n    throw Error('className passed in goog.getCssName must not start with \".\". You passed: ' + a);\n  }\n  var c = function(a) {\n    return goog.cssNameMapping_[a] || a;\n  }, d = function(a) {\n    a = a.split(\"-\");\n    for (var b = [], d = 0; d < a.length; d++) {\n      b.push(c(a[d]));\n    }\n    return b.join(\"-\");\n  };\n  d = goog.cssNameMapping_ ? \"BY_WHOLE\" == goog.cssNameMappingStyle_ ? c : d : function(a) {\n    return a;\n  };\n  d = b ? a + \"-\" + d(b) : d(a);\n  return goog.global.CLOSURE_CSS_NAME_MAP_FN ? goog.global.CLOSURE_CSS_NAME_MAP_FN(d) : d;\n};\ngoog.setCssNameMapping = function(a, b) {\n  goog.cssNameMapping_ = a;\n  goog.cssNameMappingStyle_ = b;\n};\n!COMPILED && goog.global.CLOSURE_CSS_NAME_MAPPING && (goog.cssNameMapping_ = goog.global.CLOSURE_CSS_NAME_MAPPING);\ngoog.getMsg = function(a, b, c) {\n  c && c.html && (a = a.replace(/</g, \"&lt;\"));\n  b && (a = a.replace(/\\{\\$([^}]+)}/g, function(a, c) {\n    return null != b && c in b ? b[c] : a;\n  }));\n  return a;\n};\ngoog.getMsgWithFallback = function(a, b) {\n  return a;\n};\ngoog.exportSymbol = function(a, b, c) {\n  goog.exportPath_(a, b, c);\n};\ngoog.exportProperty = function(a, b, c) {\n  a[b] = c;\n};\ngoog.inherits = function(a, b) {\n  function c() {\n  }\n  c.prototype = b.prototype;\n  a.superClass_ = b.prototype;\n  a.prototype = new c;\n  a.prototype.constructor = a;\n  a.base = function(a, c, f) {\n    for (var d = Array(arguments.length - 2), e = 2; e < arguments.length; e++) {\n      d[e - 2] = arguments[e];\n    }\n    return b.prototype[c].apply(a, d);\n  };\n};\ngoog.base = function(a, b, c) {\n  var d = arguments.callee.caller;\n  if (goog.STRICT_MODE_COMPATIBLE || goog.DEBUG && !d) {\n    throw Error(\"arguments.caller not defined.  goog.base() cannot be used with strict mode code. See http://www.ecma-international.org/ecma-262/5.1/#sec-C\");\n  }\n  if (\"undefined\" !== typeof d.superClass_) {\n    for (var e = Array(arguments.length - 1), f = 1; f < arguments.length; f++) {\n      e[f - 1] = arguments[f];\n    }\n    return d.superClass_.constructor.apply(a, e);\n  }\n  if (\"string\" != typeof b && \"symbol\" != typeof b) {\n    throw Error(\"method names provided to goog.base must be a string or a symbol\");\n  }\n  e = Array(arguments.length - 2);\n  for (f = 2; f < arguments.length; f++) {\n    e[f - 2] = arguments[f];\n  }\n  f = !1;\n  for (var g = a.constructor.prototype; g; g = Object.getPrototypeOf(g)) {\n    if (g[b] === d) {\n      f = !0;\n    } else {\n      if (f) {\n        return g[b].apply(a, e);\n      }\n    }\n  }\n  if (a[b] === d) {\n    return a.constructor.prototype[b].apply(a, e);\n  }\n  throw Error(\"goog.base called from a method of one name to a method of a different name\");\n};\ngoog.scope = function(a) {\n  if (goog.isInModuleLoader_()) {\n    throw Error(\"goog.scope is not supported within a module.\");\n  }\n  a.call(goog.global);\n};\nCOMPILED || (goog.global.COMPILED = COMPILED);\ngoog.defineClass = function(a, b) {\n  var c = b.constructor, d = b.statics;\n  c && c != Object.prototype.constructor || (c = function() {\n    throw Error(\"cannot instantiate an interface (no constructor defined).\");\n  });\n  c = goog.defineClass.createSealingConstructor_(c, a);\n  a && goog.inherits(c, a);\n  delete b.constructor;\n  delete b.statics;\n  goog.defineClass.applyProperties_(c.prototype, b);\n  null != d && (d instanceof Function ? d(c) : goog.defineClass.applyProperties_(c, d));\n  return c;\n};\ngoog.defineClass.SEAL_CLASS_INSTANCES = goog.DEBUG;\ngoog.defineClass.createSealingConstructor_ = function(a, b) {\n  if (!goog.defineClass.SEAL_CLASS_INSTANCES) {\n    return a;\n  }\n  var c = !goog.defineClass.isUnsealable_(b), d = function() {\n    var b = a.apply(this, arguments) || this;\n    b[goog.UID_PROPERTY_] = b[goog.UID_PROPERTY_];\n    this.constructor === d && c && Object.seal instanceof Function && Object.seal(b);\n    return b;\n  };\n  return d;\n};\ngoog.defineClass.isUnsealable_ = function(a) {\n  return a && a.prototype && a.prototype[goog.UNSEALABLE_CONSTRUCTOR_PROPERTY_];\n};\ngoog.defineClass.OBJECT_PROTOTYPE_FIELDS_ = \"constructor hasOwnProperty isPrototypeOf propertyIsEnumerable toLocaleString toString valueOf\".split(\" \");\ngoog.defineClass.applyProperties_ = function(a, b) {\n  for (var c in b) {\n    Object.prototype.hasOwnProperty.call(b, c) && (a[c] = b[c]);\n  }\n  for (var d = 0; d < goog.defineClass.OBJECT_PROTOTYPE_FIELDS_.length; d++) {\n    c = goog.defineClass.OBJECT_PROTOTYPE_FIELDS_[d], Object.prototype.hasOwnProperty.call(b, c) && (a[c] = b[c]);\n  }\n};\ngoog.tagUnsealableClass = function(a) {\n  !COMPILED && goog.defineClass.SEAL_CLASS_INSTANCES && (a.prototype[goog.UNSEALABLE_CONSTRUCTOR_PROPERTY_] = !0);\n};\ngoog.UNSEALABLE_CONSTRUCTOR_PROPERTY_ = \"goog_defineClass_legacy_unsealable\";\n!COMPILED && goog.DEPENDENCIES_ENABLED && (goog.inHtmlDocument_ = function() {\n  var a = goog.global.document;\n  return null != a && \"write\" in a;\n}, goog.isDocumentLoading_ = function() {\n  var a = goog.global.document;\n  return a.attachEvent ? \"complete\" != a.readyState : \"loading\" == a.readyState;\n}, goog.findBasePath_ = function() {\n  if (void 0 != goog.global.CLOSURE_BASE_PATH && \"string\" === typeof goog.global.CLOSURE_BASE_PATH) {\n    goog.basePath = goog.global.CLOSURE_BASE_PATH;\n  } else {\n    if (goog.inHtmlDocument_()) {\n      var a = goog.global.document, b = a.currentScript;\n      a = b ? [b] : a.getElementsByTagName(\"SCRIPT\");\n      for (b = a.length - 1; 0 <= b; --b) {\n        var c = a[b].src, d = c.lastIndexOf(\"?\");\n        d = -1 == d ? c.length : d;\n        if (\"base.js\" == c.substr(d - 7, 7)) {\n          goog.basePath = c.substr(0, d - 7);\n          break;\n        }\n      }\n    }\n  }\n}, goog.findBasePath_(), goog.Transpiler = function() {\n  this.requiresTranspilation_ = null;\n  this.transpilationTarget_ = goog.TRANSPILE_TO_LANGUAGE;\n}, goog.Transpiler.prototype.createRequiresTranspilation_ = function() {\n  function a(a, b) {\n    e ? d[a] = !0 : b() ? (c = a, d[a] = !1) : e = d[a] = !0;\n  }\n  function b(a) {\n    try {\n      return !!eval(a);\n    } catch (h) {\n      return !1;\n    }\n  }\n  var c = \"es3\", d = {es3:!1}, e = !1, f = goog.global.navigator && goog.global.navigator.userAgent ? goog.global.navigator.userAgent : \"\";\n  a(\"es5\", function() {\n    return b(\"[1,].length==1\");\n  });\n  a(\"es6\", function() {\n    return f.match(/Edge\\/(\\d+)(\\.\\d)*/i) ? !1 : b('(()=>{\"use strict\";class X{constructor(){if(new.target!=String)throw 1;this.x=42}}let q=Reflect.construct(X,[],String);if(q.x!=42||!(q instanceof String))throw 1;for(const a of[2,3]){if(a==2)continue;function f(z={a}){let a=0;return z.a}{function f(){return 0;}}return f()==3}})()');\n  });\n  a(\"es7\", function() {\n    return b(\"2 ** 2 == 4\");\n  });\n  a(\"es8\", function() {\n    return b(\"async () => 1, true\");\n  });\n  a(\"es9\", function() {\n    return b(\"({...rest} = {}), true\");\n  });\n  a(\"es_next\", function() {\n    return !1;\n  });\n  return {target:c, map:d};\n}, goog.Transpiler.prototype.needsTranspile = function(a, b) {\n  if (\"always\" == goog.TRANSPILE) {\n    return !0;\n  }\n  if (\"never\" == goog.TRANSPILE) {\n    return !1;\n  }\n  if (!this.requiresTranspilation_) {\n    var c = this.createRequiresTranspilation_();\n    this.requiresTranspilation_ = c.map;\n    this.transpilationTarget_ = this.transpilationTarget_ || c.target;\n  }\n  if (a in this.requiresTranspilation_) {\n    return this.requiresTranspilation_[a] ? !0 : !goog.inHtmlDocument_() || \"es6\" != b || \"noModule\" in goog.global.document.createElement(\"script\") ? !1 : !0;\n  }\n  throw Error(\"Unknown language mode: \" + a);\n}, goog.Transpiler.prototype.transpile = function(a, b) {\n  return goog.transpile_(a, b, this.transpilationTarget_);\n}, goog.transpiler_ = new goog.Transpiler, goog.protectScriptTag_ = function(a) {\n  return a.replace(/<\\/(SCRIPT)/ig, \"\\\\x3c/$1\");\n}, goog.DebugLoader_ = function() {\n  this.dependencies_ = {};\n  this.idToPath_ = {};\n  this.written_ = {};\n  this.loadingDeps_ = [];\n  this.depsToLoad_ = [];\n  this.paused_ = !1;\n  this.factory_ = new goog.DependencyFactory(goog.transpiler_);\n  this.deferredCallbacks_ = {};\n  this.deferredQueue_ = [];\n}, goog.DebugLoader_.prototype.bootstrap = function(a, b) {\n  function c() {\n    d && (goog.global.setTimeout(d, 0), d = null);\n  }\n  var d = b;\n  if (a.length) {\n    for (var e = [], f = 0; f < a.length; f++) {\n      var g = this.getPathFromDeps_(a[f]);\n      if (!g) {\n        throw Error(\"Unregonized namespace: \" + a[f]);\n      }\n      e.push(this.dependencies_[g]);\n    }\n    g = goog.require;\n    var h = 0;\n    for (f = 0; f < a.length; f++) {\n      g(a[f]), e[f].onLoad(function() {\n        ++h == a.length && c();\n      });\n    }\n  } else {\n    c();\n  }\n}, goog.DebugLoader_.prototype.loadClosureDeps = function() {\n  this.depsToLoad_.push(this.factory_.createDependency(goog.normalizePath_(goog.basePath + \"deps.js\"), \"deps.js\", [], [], {}, !1));\n  this.loadDeps_();\n}, goog.DebugLoader_.prototype.requested = function(a, b) {\n  var c = this.getPathFromDeps_(a);\n  if (c && (b || this.areDepsLoaded_(this.dependencies_[c].requires))) {\n    var d = this.deferredCallbacks_[c];\n    d && (delete this.deferredCallbacks_[c], d());\n  }\n}, goog.DebugLoader_.prototype.setDependencyFactory = function(a) {\n  this.factory_ = a;\n}, goog.DebugLoader_.prototype.load_ = function(a) {\n  if (this.getPathFromDeps_(a)) {\n    var b = this, c = [], d = function(a) {\n      var e = b.getPathFromDeps_(a);\n      if (!e) {\n        throw Error(\"Bad dependency path or symbol: \" + a);\n      }\n      if (!b.written_[e]) {\n        b.written_[e] = !0;\n        a = b.dependencies_[e];\n        for (e = 0; e < a.requires.length; e++) {\n          goog.isProvided_(a.requires[e]) || d(a.requires[e]);\n        }\n        c.push(a);\n      }\n    };\n    d(a);\n    a = !!this.depsToLoad_.length;\n    this.depsToLoad_ = this.depsToLoad_.concat(c);\n    this.paused_ || a || this.loadDeps_();\n  } else {\n    throw a = \"goog.require could not find: \" + a, goog.logToConsole_(a), Error(a);\n  }\n}, goog.DebugLoader_.prototype.loadDeps_ = function() {\n  for (var a = this, b = this.paused_; this.depsToLoad_.length && !b;) {\n    (function() {\n      var c = !1, d = a.depsToLoad_.shift(), e = !1;\n      a.loading_(d);\n      var f = {pause:function() {\n        if (c) {\n          throw Error(\"Cannot call pause after the call to load.\");\n        }\n        b = !0;\n      }, resume:function() {\n        c ? a.resume_() : b = !1;\n      }, loaded:function() {\n        if (e) {\n          throw Error(\"Double call to loaded.\");\n        }\n        e = !0;\n        a.loaded_(d);\n      }, pending:function() {\n        for (var b = [], c = 0; c < a.loadingDeps_.length; c++) {\n          b.push(a.loadingDeps_[c]);\n        }\n        return b;\n      }, setModuleState:function(a) {\n        goog.moduleLoaderState_ = {type:a, moduleName:\"\", declareLegacyNamespace:!1};\n      }, registerEs6ModuleExports:function(a, b, c) {\n        c && (goog.loadedModules_[c] = {exports:b, type:goog.ModuleType.ES6, moduleId:c || \"\"});\n      }, registerGoogModuleExports:function(a, b) {\n        goog.loadedModules_[a] = {exports:b, type:goog.ModuleType.GOOG, moduleId:a};\n      }, clearModuleState:function() {\n        goog.moduleLoaderState_ = null;\n      }, defer:function(b) {\n        if (c) {\n          throw Error(\"Cannot register with defer after the call to load.\");\n        }\n        a.defer_(d, b);\n      }, areDepsLoaded:function() {\n        return a.areDepsLoaded_(d.requires);\n      }};\n      try {\n        d.load(f);\n      } finally {\n        c = !0;\n      }\n    })();\n  }\n  b && this.pause_();\n}, goog.DebugLoader_.prototype.pause_ = function() {\n  this.paused_ = !0;\n}, goog.DebugLoader_.prototype.resume_ = function() {\n  this.paused_ && (this.paused_ = !1, this.loadDeps_());\n}, goog.DebugLoader_.prototype.loading_ = function(a) {\n  this.loadingDeps_.push(a);\n}, goog.DebugLoader_.prototype.loaded_ = function(a) {\n  for (var b = 0; b < this.loadingDeps_.length; b++) {\n    if (this.loadingDeps_[b] == a) {\n      this.loadingDeps_.splice(b, 1);\n      break;\n    }\n  }\n  for (b = 0; b < this.deferredQueue_.length; b++) {\n    if (this.deferredQueue_[b] == a.path) {\n      this.deferredQueue_.splice(b, 1);\n      break;\n    }\n  }\n  if (this.loadingDeps_.length == this.deferredQueue_.length && !this.depsToLoad_.length) {\n    for (; this.deferredQueue_.length;) {\n      this.requested(this.deferredQueue_.shift(), !0);\n    }\n  }\n  a.loaded();\n}, goog.DebugLoader_.prototype.areDepsLoaded_ = function(a) {\n  for (var b = 0; b < a.length; b++) {\n    var c = this.getPathFromDeps_(a[b]);\n    if (!c || !(c in this.deferredCallbacks_ || goog.isProvided_(a[b]))) {\n      return !1;\n    }\n  }\n  return !0;\n}, goog.DebugLoader_.prototype.getPathFromDeps_ = function(a) {\n  return a in this.idToPath_ ? this.idToPath_[a] : a in this.dependencies_ ? a : null;\n}, goog.DebugLoader_.prototype.defer_ = function(a, b) {\n  this.deferredCallbacks_[a.path] = b;\n  this.deferredQueue_.push(a.path);\n}, goog.LoadController = function() {\n}, goog.LoadController.prototype.pause = function() {\n}, goog.LoadController.prototype.resume = function() {\n}, goog.LoadController.prototype.loaded = function() {\n}, goog.LoadController.prototype.pending = function() {\n}, goog.LoadController.prototype.registerEs6ModuleExports = function(a, b, c) {\n}, goog.LoadController.prototype.setModuleState = function(a) {\n}, goog.LoadController.prototype.clearModuleState = function() {\n}, goog.LoadController.prototype.defer = function(a) {\n}, goog.LoadController.prototype.areDepsLoaded = function() {\n}, goog.Dependency = function(a, b, c, d, e) {\n  this.path = a;\n  this.relativePath = b;\n  this.provides = c;\n  this.requires = d;\n  this.loadFlags = e;\n  this.loaded_ = !1;\n  this.loadCallbacks_ = [];\n}, goog.Dependency.prototype.getPathName = function() {\n  var a = this.path, b = a.indexOf(\"://\");\n  0 <= b && (a = a.substring(b + 3), b = a.indexOf(\"/\"), 0 <= b && (a = a.substring(b + 1)));\n  return a;\n}, goog.Dependency.prototype.onLoad = function(a) {\n  this.loaded_ ? a() : this.loadCallbacks_.push(a);\n}, goog.Dependency.prototype.loaded = function() {\n  this.loaded_ = !0;\n  var a = this.loadCallbacks_;\n  this.loadCallbacks_ = [];\n  for (var b = 0; b < a.length; b++) {\n    a[b]();\n  }\n}, goog.Dependency.defer_ = !1, goog.Dependency.callbackMap_ = {}, goog.Dependency.registerCallback_ = function(a) {\n  var b = Math.random().toString(32);\n  goog.Dependency.callbackMap_[b] = a;\n  return b;\n}, goog.Dependency.unregisterCallback_ = function(a) {\n  delete goog.Dependency.callbackMap_[a];\n}, goog.Dependency.callback_ = function(a, b) {\n  if (a in goog.Dependency.callbackMap_) {\n    for (var c = goog.Dependency.callbackMap_[a], d = [], e = 1; e < arguments.length; e++) {\n      d.push(arguments[e]);\n    }\n    c.apply(void 0, d);\n  } else {\n    throw Error(\"Callback key \" + a + \" does not exist (was base.js loaded more than once?).\");\n  }\n}, goog.Dependency.prototype.load = function(a) {\n  if (goog.global.CLOSURE_IMPORT_SCRIPT) {\n    goog.global.CLOSURE_IMPORT_SCRIPT(this.path) ? a.loaded() : a.pause();\n  } else {\n    if (goog.inHtmlDocument_()) {\n      var b = goog.global.document;\n      if (\"complete\" == b.readyState && !goog.ENABLE_CHROME_APP_SAFE_SCRIPT_LOADING) {\n        if (/\\bdeps.js$/.test(this.path)) {\n          a.loaded();\n          return;\n        }\n        throw Error('Cannot write \"' + this.path + '\" after document load');\n      }\n      if (!goog.ENABLE_CHROME_APP_SAFE_SCRIPT_LOADING && goog.isDocumentLoading_()) {\n        var c = goog.Dependency.registerCallback_(function(b) {\n          goog.DebugLoader_.IS_OLD_IE_ && \"complete\" != b.readyState || (goog.Dependency.unregisterCallback_(c), a.loaded());\n        }), d = !goog.DebugLoader_.IS_OLD_IE_ && goog.getScriptNonce() ? ' nonce=\"' + goog.getScriptNonce() + '\"' : \"\";\n        d = '<script src=\"' + this.path + '\" ' + (goog.DebugLoader_.IS_OLD_IE_ ? \"onreadystatechange\" : \"onload\") + \"=\\\"goog.Dependency.callback_('\" + c + '\\', this)\" type=\"text/javascript\" ' + (goog.Dependency.defer_ ? \"defer\" : \"\") + d + \">\\x3c/script>\";\n        b.write(goog.TRUSTED_TYPES_POLICY_ ? goog.TRUSTED_TYPES_POLICY_.createHTML(d) : d);\n      } else {\n        var e = b.createElement(\"script\");\n        e.defer = goog.Dependency.defer_;\n        e.async = !1;\n        e.type = \"text/javascript\";\n        (d = goog.getScriptNonce()) && e.setAttribute(\"nonce\", d);\n        goog.DebugLoader_.IS_OLD_IE_ ? (a.pause(), e.onreadystatechange = function() {\n          if (\"loaded\" == e.readyState || \"complete\" == e.readyState) {\n            a.loaded(), a.resume();\n          }\n        }) : e.onload = function() {\n          e.onload = null;\n          a.loaded();\n        };\n        e.src = goog.TRUSTED_TYPES_POLICY_ ? goog.TRUSTED_TYPES_POLICY_.createScriptURL(this.path) : this.path;\n        b.head.appendChild(e);\n      }\n    } else {\n      goog.logToConsole_(\"Cannot use default debug loader outside of HTML documents.\"), \"deps.js\" == this.relativePath ? (goog.logToConsole_(\"Consider setting CLOSURE_IMPORT_SCRIPT before loading base.js, or setting CLOSURE_NO_DEPS to true.\"), a.loaded()) : a.pause();\n    }\n  }\n}, goog.Es6ModuleDependency = function(a, b, c, d, e) {\n  goog.Dependency.call(this, a, b, c, d, e);\n}, goog.inherits(goog.Es6ModuleDependency, goog.Dependency), goog.Es6ModuleDependency.prototype.load = function(a) {\n  function b(a, b) {\n    var c = b ? '<script type=\"module\" crossorigin>' + b + \"\\x3c/script>\" : '<script type=\"module\" crossorigin src=\"' + a + '\">\\x3c/script>';\n    d.write(goog.TRUSTED_TYPES_POLICY_ ? goog.TRUSTED_TYPES_POLICY_.createHTML(c) : c);\n  }\n  function c(a, b) {\n    var c = d.createElement(\"script\");\n    c.defer = !0;\n    c.async = !1;\n    c.type = \"module\";\n    c.setAttribute(\"crossorigin\", !0);\n    var e = goog.getScriptNonce();\n    e && c.setAttribute(\"nonce\", e);\n    b ? c.textContent = goog.TRUSTED_TYPES_POLICY_ ? goog.TRUSTED_TYPES_POLICY_.createScript(b) : b : c.src = goog.TRUSTED_TYPES_POLICY_ ? goog.TRUSTED_TYPES_POLICY_.createScriptURL(a) : a;\n    d.head.appendChild(c);\n  }\n  if (goog.global.CLOSURE_IMPORT_SCRIPT) {\n    goog.global.CLOSURE_IMPORT_SCRIPT(this.path) ? a.loaded() : a.pause();\n  } else {\n    if (goog.inHtmlDocument_()) {\n      var d = goog.global.document, e = this;\n      if (goog.isDocumentLoading_()) {\n        var f = b;\n        goog.Dependency.defer_ = !0;\n      } else {\n        f = c;\n      }\n      var g = goog.Dependency.registerCallback_(function() {\n        goog.Dependency.unregisterCallback_(g);\n        a.setModuleState(goog.ModuleType.ES6);\n      });\n      f(void 0, 'goog.Dependency.callback_(\"' + g + '\")');\n      f(this.path, void 0);\n      var h = goog.Dependency.registerCallback_(function(b) {\n        goog.Dependency.unregisterCallback_(h);\n        a.registerEs6ModuleExports(e.path, b, goog.moduleLoaderState_.moduleName);\n      });\n      f(void 0, 'import * as m from \"' + this.path + '\"; goog.Dependency.callback_(\"' + h + '\", m)');\n      var k = goog.Dependency.registerCallback_(function() {\n        goog.Dependency.unregisterCallback_(k);\n        a.clearModuleState();\n        a.loaded();\n      });\n      f(void 0, 'goog.Dependency.callback_(\"' + k + '\")');\n    } else {\n      goog.logToConsole_(\"Cannot use default debug loader outside of HTML documents.\"), a.pause();\n    }\n  }\n}, goog.TransformedDependency = function(a, b, c, d, e) {\n  goog.Dependency.call(this, a, b, c, d, e);\n  this.contents_ = null;\n  this.lazyFetch_ = !goog.inHtmlDocument_() || !(\"noModule\" in goog.global.document.createElement(\"script\"));\n}, goog.inherits(goog.TransformedDependency, goog.Dependency), goog.TransformedDependency.prototype.load = function(a) {\n  function b() {\n    e.contents_ = goog.loadFileSync_(e.path);\n    e.contents_ && (e.contents_ = e.transform(e.contents_), e.contents_ && (e.contents_ += \"\\n//# sourceURL=\" + e.path));\n  }\n  function c() {\n    e.lazyFetch_ && b();\n    if (e.contents_) {\n      f && a.setModuleState(goog.ModuleType.ES6);\n      try {\n        var c = e.contents_;\n        e.contents_ = null;\n        goog.globalEval(c);\n        if (f) {\n          var d = goog.moduleLoaderState_.moduleName;\n        }\n      } finally {\n        f && a.clearModuleState();\n      }\n      f && goog.global.$jscomp.require.ensure([e.getPathName()], function() {\n        a.registerEs6ModuleExports(e.path, goog.global.$jscomp.require(e.getPathName()), d);\n      });\n      a.loaded();\n    }\n  }\n  function d() {\n    var a = goog.global.document, b = goog.Dependency.registerCallback_(function() {\n      goog.Dependency.unregisterCallback_(b);\n      c();\n    }), d = '<script type=\"text/javascript\">' + goog.protectScriptTag_('goog.Dependency.callback_(\"' + b + '\");') + \"\\x3c/script>\";\n    a.write(goog.TRUSTED_TYPES_POLICY_ ? goog.TRUSTED_TYPES_POLICY_.createHTML(d) : d);\n  }\n  var e = this;\n  if (goog.global.CLOSURE_IMPORT_SCRIPT) {\n    b(), this.contents_ && goog.global.CLOSURE_IMPORT_SCRIPT(\"\", this.contents_) ? (this.contents_ = null, a.loaded()) : a.pause();\n  } else {\n    var f = this.loadFlags.module == goog.ModuleType.ES6;\n    this.lazyFetch_ || b();\n    var g = 1 < a.pending().length, h = g && goog.DebugLoader_.IS_OLD_IE_;\n    g = goog.Dependency.defer_ && (g || goog.isDocumentLoading_());\n    if (h || g) {\n      a.defer(function() {\n        c();\n      });\n    } else {\n      var k = goog.global.document;\n      h = goog.inHtmlDocument_() && \"ActiveXObject\" in goog.global;\n      if (f && goog.inHtmlDocument_() && goog.isDocumentLoading_() && !h) {\n        goog.Dependency.defer_ = !0;\n        a.pause();\n        var l = k.onreadystatechange;\n        k.onreadystatechange = function() {\n          \"interactive\" == k.readyState && (k.onreadystatechange = l, c(), a.resume());\n          goog.isFunction(l) && l.apply(void 0, arguments);\n        };\n      } else {\n        !goog.DebugLoader_.IS_OLD_IE_ && goog.inHtmlDocument_() && goog.isDocumentLoading_() ? d() : c();\n      }\n    }\n  }\n}, goog.TransformedDependency.prototype.transform = function(a) {\n}, goog.TranspiledDependency = function(a, b, c, d, e, f) {\n  goog.TransformedDependency.call(this, a, b, c, d, e);\n  this.transpiler = f;\n}, goog.inherits(goog.TranspiledDependency, goog.TransformedDependency), goog.TranspiledDependency.prototype.transform = function(a) {\n  return this.transpiler.transpile(a, this.getPathName());\n}, goog.PreTranspiledEs6ModuleDependency = function(a, b, c, d, e) {\n  goog.TransformedDependency.call(this, a, b, c, d, e);\n}, goog.inherits(goog.PreTranspiledEs6ModuleDependency, goog.TransformedDependency), goog.PreTranspiledEs6ModuleDependency.prototype.transform = function(a) {\n  return a;\n}, goog.GoogModuleDependency = function(a, b, c, d, e, f, g) {\n  goog.TransformedDependency.call(this, a, b, c, d, e);\n  this.needsTranspile_ = f;\n  this.transpiler_ = g;\n}, goog.inherits(goog.GoogModuleDependency, goog.TransformedDependency), goog.GoogModuleDependency.prototype.transform = function(a) {\n  this.needsTranspile_ && (a = this.transpiler_.transpile(a, this.getPathName()));\n  return goog.LOAD_MODULE_USING_EVAL && void 0 !== goog.global.JSON ? \"goog.loadModule(\" + goog.global.JSON.stringify(a + \"\\n//# sourceURL=\" + this.path + \"\\n\") + \");\" : 'goog.loadModule(function(exports) {\"use strict\";' + a + \"\\n;return exports});\\n//# sourceURL=\" + this.path + \"\\n\";\n}, goog.DebugLoader_.IS_OLD_IE_ = !(goog.global.atob || !goog.global.document || !goog.global.document.all), goog.DebugLoader_.prototype.addDependency = function(a, b, c, d) {\n  b = b || [];\n  a = a.replace(/\\\\/g, \"/\");\n  var e = goog.normalizePath_(goog.basePath + a);\n  d && \"boolean\" !== typeof d || (d = d ? {module:goog.ModuleType.GOOG} : {});\n  c = this.factory_.createDependency(e, a, b, c, d, goog.transpiler_.needsTranspile(d.lang || \"es3\", d.module));\n  this.dependencies_[e] = c;\n  for (c = 0; c < b.length; c++) {\n    this.idToPath_[b[c]] = e;\n  }\n  this.idToPath_[a] = e;\n}, goog.DependencyFactory = function(a) {\n  this.transpiler = a;\n}, goog.DependencyFactory.prototype.createDependency = function(a, b, c, d, e, f) {\n  return e.module == goog.ModuleType.GOOG ? new goog.GoogModuleDependency(a, b, c, d, e, f, this.transpiler) : f ? new goog.TranspiledDependency(a, b, c, d, e, this.transpiler) : e.module == goog.ModuleType.ES6 ? \"never\" == goog.TRANSPILE && goog.ASSUME_ES_MODULES_TRANSPILED ? new goog.PreTranspiledEs6ModuleDependency(a, b, c, d, e) : new goog.Es6ModuleDependency(a, b, c, d, e) : new goog.Dependency(a, b, c, d, e);\n}, goog.debugLoader_ = new goog.DebugLoader_, goog.loadClosureDeps = function() {\n  goog.debugLoader_.loadClosureDeps();\n}, goog.setDependencyFactory = function(a) {\n  goog.debugLoader_.setDependencyFactory(a);\n}, goog.global.CLOSURE_NO_DEPS || goog.debugLoader_.loadClosureDeps(), goog.bootstrap = function(a, b) {\n  goog.debugLoader_.bootstrap(a, b);\n});\ngoog.TRUSTED_TYPES_POLICY_NAME = \"\";\ngoog.identity_ = function(a) {\n  return a;\n};\ngoog.createTrustedTypesPolicy = function(a) {\n  var b = null, c = goog.global.trustedTypes || goog.global.TrustedTypes;\n  if (!c || !c.createPolicy) {\n    return b;\n  }\n  try {\n    b = c.createPolicy(a, {createHTML:goog.identity_, createScript:goog.identity_, createScriptURL:goog.identity_, createURL:goog.identity_});\n  } catch (d) {\n    goog.logToConsole_(d.message);\n  }\n  return b;\n};\ngoog.TRUSTED_TYPES_POLICY_ = goog.TRUSTED_TYPES_POLICY_NAME ? goog.createTrustedTypesPolicy(goog.TRUSTED_TYPES_POLICY_NAME + \"#base\") : null;\ngoog.string = {};\ngoog.string.StringBuffer = function(a, b) {\n  null != a && this.append.apply(this, arguments);\n};\ngoog.string.StringBuffer.prototype.buffer_ = \"\";\ngoog.string.StringBuffer.prototype.set = function(a) {\n  this.buffer_ = \"\" + a;\n};\ngoog.string.StringBuffer.prototype.append = function(a, b, c) {\n  this.buffer_ += String(a);\n  if (null != b) {\n    for (var d = 1; d < arguments.length; d++) {\n      this.buffer_ += arguments[d];\n    }\n  }\n  return this;\n};\ngoog.string.StringBuffer.prototype.clear = function() {\n  this.buffer_ = \"\";\n};\ngoog.string.StringBuffer.prototype.getLength = function() {\n  return this.buffer_.length;\n};\ngoog.string.StringBuffer.prototype.toString = function() {\n  return this.buffer_;\n};\ngoog.debug = {};\ngoog.debug.Error = function(a) {\n  if (Error.captureStackTrace) {\n    Error.captureStackTrace(this, goog.debug.Error);\n  } else {\n    var b = Error().stack;\n    b && (this.stack = b);\n  }\n  a && (this.message = String(a));\n  this.reportErrorToServer = !0;\n};\ngoog.inherits(goog.debug.Error, Error);\ngoog.debug.Error.prototype.name = \"CustomError\";\ngoog.dom = {};\ngoog.dom.NodeType = {ELEMENT:1, ATTRIBUTE:2, TEXT:3, CDATA_SECTION:4, ENTITY_REFERENCE:5, ENTITY:6, PROCESSING_INSTRUCTION:7, COMMENT:8, DOCUMENT:9, DOCUMENT_TYPE:10, DOCUMENT_FRAGMENT:11, NOTATION:12};\ngoog.asserts = {};\ngoog.asserts.ENABLE_ASSERTS = goog.DEBUG;\ngoog.asserts.AssertionError = function(a, b) {\n  goog.debug.Error.call(this, goog.asserts.subs_(a, b));\n  this.messagePattern = a;\n};\ngoog.inherits(goog.asserts.AssertionError, goog.debug.Error);\ngoog.asserts.AssertionError.prototype.name = \"AssertionError\";\ngoog.asserts.DEFAULT_ERROR_HANDLER = function(a) {\n  throw a;\n};\ngoog.asserts.errorHandler_ = goog.asserts.DEFAULT_ERROR_HANDLER;\ngoog.asserts.subs_ = function(a, b) {\n  for (var c = a.split(\"%s\"), d = \"\", e = c.length - 1, f = 0; f < e; f++) {\n    d += c[f] + (f < b.length ? b[f] : \"%s\");\n  }\n  return d + c[e];\n};\ngoog.asserts.doAssertFailure_ = function(a, b, c, d) {\n  var e = \"Assertion failed\";\n  if (c) {\n    e += \": \" + c;\n    var f = d;\n  } else {\n    a && (e += \": \" + a, f = b);\n  }\n  a = new goog.asserts.AssertionError(\"\" + e, f || []);\n  goog.asserts.errorHandler_(a);\n};\ngoog.asserts.setErrorHandler = function(a) {\n  goog.asserts.ENABLE_ASSERTS && (goog.asserts.errorHandler_ = a);\n};\ngoog.asserts.assert = function(a, b, c) {\n  goog.asserts.ENABLE_ASSERTS && !a && goog.asserts.doAssertFailure_(\"\", null, b, Array.prototype.slice.call(arguments, 2));\n  return a;\n};\ngoog.asserts.assertExists = function(a, b, c) {\n  goog.asserts.ENABLE_ASSERTS && null == a && goog.asserts.doAssertFailure_(\"Expected to exist: %s.\", [a], b, Array.prototype.slice.call(arguments, 2));\n  return a;\n};\ngoog.asserts.fail = function(a, b) {\n  goog.asserts.ENABLE_ASSERTS && goog.asserts.errorHandler_(new goog.asserts.AssertionError(\"Failure\" + (a ? \": \" + a : \"\"), Array.prototype.slice.call(arguments, 1)));\n};\ngoog.asserts.assertNumber = function(a, b, c) {\n  goog.asserts.ENABLE_ASSERTS && \"number\" !== typeof a && goog.asserts.doAssertFailure_(\"Expected number but got %s: %s.\", [goog.typeOf(a), a], b, Array.prototype.slice.call(arguments, 2));\n  return a;\n};\ngoog.asserts.assertString = function(a, b, c) {\n  goog.asserts.ENABLE_ASSERTS && \"string\" !== typeof a && goog.asserts.doAssertFailure_(\"Expected string but got %s: %s.\", [goog.typeOf(a), a], b, Array.prototype.slice.call(arguments, 2));\n  return a;\n};\ngoog.asserts.assertFunction = function(a, b, c) {\n  goog.asserts.ENABLE_ASSERTS && !goog.isFunction(a) && goog.asserts.doAssertFailure_(\"Expected function but got %s: %s.\", [goog.typeOf(a), a], b, Array.prototype.slice.call(arguments, 2));\n  return a;\n};\ngoog.asserts.assertObject = function(a, b, c) {\n  goog.asserts.ENABLE_ASSERTS && !goog.isObject(a) && goog.asserts.doAssertFailure_(\"Expected object but got %s: %s.\", [goog.typeOf(a), a], b, Array.prototype.slice.call(arguments, 2));\n  return a;\n};\ngoog.asserts.assertArray = function(a, b, c) {\n  goog.asserts.ENABLE_ASSERTS && !goog.isArray(a) && goog.asserts.doAssertFailure_(\"Expected array but got %s: %s.\", [goog.typeOf(a), a], b, Array.prototype.slice.call(arguments, 2));\n  return a;\n};\ngoog.asserts.assertBoolean = function(a, b, c) {\n  goog.asserts.ENABLE_ASSERTS && \"boolean\" !== typeof a && goog.asserts.doAssertFailure_(\"Expected boolean but got %s: %s.\", [goog.typeOf(a), a], b, Array.prototype.slice.call(arguments, 2));\n  return a;\n};\ngoog.asserts.assertElement = function(a, b, c) {\n  !goog.asserts.ENABLE_ASSERTS || goog.isObject(a) && a.nodeType == goog.dom.NodeType.ELEMENT || goog.asserts.doAssertFailure_(\"Expected Element but got %s: %s.\", [goog.typeOf(a), a], b, Array.prototype.slice.call(arguments, 2));\n  return a;\n};\ngoog.asserts.assertInstanceof = function(a, b, c, d) {\n  !goog.asserts.ENABLE_ASSERTS || a instanceof b || goog.asserts.doAssertFailure_(\"Expected instanceof %s but got %s.\", [goog.asserts.getType_(b), goog.asserts.getType_(a)], c, Array.prototype.slice.call(arguments, 3));\n  return a;\n};\ngoog.asserts.assertFinite = function(a, b, c) {\n  !goog.asserts.ENABLE_ASSERTS || \"number\" == typeof a && isFinite(a) || goog.asserts.doAssertFailure_(\"Expected %s to be a finite number but it is not.\", [a], b, Array.prototype.slice.call(arguments, 2));\n  return a;\n};\ngoog.asserts.assertObjectPrototypeIsIntact = function() {\n  for (var a in Object.prototype) {\n    goog.asserts.fail(a + \" should not be enumerable in Object.prototype.\");\n  }\n};\ngoog.asserts.getType_ = function(a) {\n  return a instanceof Function ? a.displayName || a.name || \"unknown type name\" : a instanceof Object ? a.constructor.displayName || a.constructor.name || Object.prototype.toString.call(a) : null === a ? \"null\" : typeof a;\n};\ngoog.array = {};\ngoog.NATIVE_ARRAY_PROTOTYPES = goog.TRUSTED_SITE;\ngoog.array.ASSUME_NATIVE_FUNCTIONS = 2012 < goog.FEATURESET_YEAR;\ngoog.array.peek = function(a) {\n  return a[a.length - 1];\n};\ngoog.array.last = goog.array.peek;\ngoog.array.indexOf = goog.NATIVE_ARRAY_PROTOTYPES && (goog.array.ASSUME_NATIVE_FUNCTIONS || Array.prototype.indexOf) ? function(a, b, c) {\n  goog.asserts.assert(null != a.length);\n  return Array.prototype.indexOf.call(a, b, c);\n} : function(a, b, c) {\n  c = null == c ? 0 : 0 > c ? Math.max(0, a.length + c) : c;\n  if (\"string\" === typeof a) {\n    return \"string\" !== typeof b || 1 != b.length ? -1 : a.indexOf(b, c);\n  }\n  for (; c < a.length; c++) {\n    if (c in a && a[c] === b) {\n      return c;\n    }\n  }\n  return -1;\n};\ngoog.array.lastIndexOf = goog.NATIVE_ARRAY_PROTOTYPES && (goog.array.ASSUME_NATIVE_FUNCTIONS || Array.prototype.lastIndexOf) ? function(a, b, c) {\n  goog.asserts.assert(null != a.length);\n  return Array.prototype.lastIndexOf.call(a, b, null == c ? a.length - 1 : c);\n} : function(a, b, c) {\n  c = null == c ? a.length - 1 : c;\n  0 > c && (c = Math.max(0, a.length + c));\n  if (\"string\" === typeof a) {\n    return \"string\" !== typeof b || 1 != b.length ? -1 : a.lastIndexOf(b, c);\n  }\n  for (; 0 <= c; c--) {\n    if (c in a && a[c] === b) {\n      return c;\n    }\n  }\n  return -1;\n};\ngoog.array.forEach = goog.NATIVE_ARRAY_PROTOTYPES && (goog.array.ASSUME_NATIVE_FUNCTIONS || Array.prototype.forEach) ? function(a, b, c) {\n  goog.asserts.assert(null != a.length);\n  Array.prototype.forEach.call(a, b, c);\n} : function(a, b, c) {\n  for (var d = a.length, e = \"string\" === typeof a ? a.split(\"\") : a, f = 0; f < d; f++) {\n    f in e && b.call(c, e[f], f, a);\n  }\n};\ngoog.array.forEachRight = function(a, b, c) {\n  var d = a.length, e = \"string\" === typeof a ? a.split(\"\") : a;\n  for (--d; 0 <= d; --d) {\n    d in e && b.call(c, e[d], d, a);\n  }\n};\ngoog.array.filter = goog.NATIVE_ARRAY_PROTOTYPES && (goog.array.ASSUME_NATIVE_FUNCTIONS || Array.prototype.filter) ? function(a, b, c) {\n  goog.asserts.assert(null != a.length);\n  return Array.prototype.filter.call(a, b, c);\n} : function(a, b, c) {\n  for (var d = a.length, e = [], f = 0, g = \"string\" === typeof a ? a.split(\"\") : a, h = 0; h < d; h++) {\n    if (h in g) {\n      var k = g[h];\n      b.call(c, k, h, a) && (e[f++] = k);\n    }\n  }\n  return e;\n};\ngoog.array.map = goog.NATIVE_ARRAY_PROTOTYPES && (goog.array.ASSUME_NATIVE_FUNCTIONS || Array.prototype.map) ? function(a, b, c) {\n  goog.asserts.assert(null != a.length);\n  return Array.prototype.map.call(a, b, c);\n} : function(a, b, c) {\n  for (var d = a.length, e = Array(d), f = \"string\" === typeof a ? a.split(\"\") : a, g = 0; g < d; g++) {\n    g in f && (e[g] = b.call(c, f[g], g, a));\n  }\n  return e;\n};\ngoog.array.reduce = goog.NATIVE_ARRAY_PROTOTYPES && (goog.array.ASSUME_NATIVE_FUNCTIONS || Array.prototype.reduce) ? function(a, b, c, d) {\n  goog.asserts.assert(null != a.length);\n  d && (b = goog.bind(b, d));\n  return Array.prototype.reduce.call(a, b, c);\n} : function(a, b, c, d) {\n  var e = c;\n  goog.array.forEach(a, function(c, g) {\n    e = b.call(d, e, c, g, a);\n  });\n  return e;\n};\ngoog.array.reduceRight = goog.NATIVE_ARRAY_PROTOTYPES && (goog.array.ASSUME_NATIVE_FUNCTIONS || Array.prototype.reduceRight) ? function(a, b, c, d) {\n  goog.asserts.assert(null != a.length);\n  goog.asserts.assert(null != b);\n  d && (b = goog.bind(b, d));\n  return Array.prototype.reduceRight.call(a, b, c);\n} : function(a, b, c, d) {\n  var e = c;\n  goog.array.forEachRight(a, function(c, g) {\n    e = b.call(d, e, c, g, a);\n  });\n  return e;\n};\ngoog.array.some = goog.NATIVE_ARRAY_PROTOTYPES && (goog.array.ASSUME_NATIVE_FUNCTIONS || Array.prototype.some) ? function(a, b, c) {\n  goog.asserts.assert(null != a.length);\n  return Array.prototype.some.call(a, b, c);\n} : function(a, b, c) {\n  for (var d = a.length, e = \"string\" === typeof a ? a.split(\"\") : a, f = 0; f < d; f++) {\n    if (f in e && b.call(c, e[f], f, a)) {\n      return !0;\n    }\n  }\n  return !1;\n};\ngoog.array.every = goog.NATIVE_ARRAY_PROTOTYPES && (goog.array.ASSUME_NATIVE_FUNCTIONS || Array.prototype.every) ? function(a, b, c) {\n  goog.asserts.assert(null != a.length);\n  return Array.prototype.every.call(a, b, c);\n} : function(a, b, c) {\n  for (var d = a.length, e = \"string\" === typeof a ? a.split(\"\") : a, f = 0; f < d; f++) {\n    if (f in e && !b.call(c, e[f], f, a)) {\n      return !1;\n    }\n  }\n  return !0;\n};\ngoog.array.count = function(a, b, c) {\n  var d = 0;\n  goog.array.forEach(a, function(a, f, g) {\n    b.call(c, a, f, g) && ++d;\n  }, c);\n  return d;\n};\ngoog.array.find = function(a, b, c) {\n  b = goog.array.findIndex(a, b, c);\n  return 0 > b ? null : \"string\" === typeof a ? a.charAt(b) : a[b];\n};\ngoog.array.findIndex = function(a, b, c) {\n  for (var d = a.length, e = \"string\" === typeof a ? a.split(\"\") : a, f = 0; f < d; f++) {\n    if (f in e && b.call(c, e[f], f, a)) {\n      return f;\n    }\n  }\n  return -1;\n};\ngoog.array.findRight = function(a, b, c) {\n  b = goog.array.findIndexRight(a, b, c);\n  return 0 > b ? null : \"string\" === typeof a ? a.charAt(b) : a[b];\n};\ngoog.array.findIndexRight = function(a, b, c) {\n  var d = a.length, e = \"string\" === typeof a ? a.split(\"\") : a;\n  for (--d; 0 <= d; d--) {\n    if (d in e && b.call(c, e[d], d, a)) {\n      return d;\n    }\n  }\n  return -1;\n};\ngoog.array.contains = function(a, b) {\n  return 0 <= goog.array.indexOf(a, b);\n};\ngoog.array.isEmpty = function(a) {\n  return 0 == a.length;\n};\ngoog.array.clear = function(a) {\n  if (!goog.isArray(a)) {\n    for (var b = a.length - 1; 0 <= b; b--) {\n      delete a[b];\n    }\n  }\n  a.length = 0;\n};\ngoog.array.insert = function(a, b) {\n  goog.array.contains(a, b) || a.push(b);\n};\ngoog.array.insertAt = function(a, b, c) {\n  goog.array.splice(a, c, 0, b);\n};\ngoog.array.insertArrayAt = function(a, b, c) {\n  goog.partial(goog.array.splice, a, c, 0).apply(null, b);\n};\ngoog.array.insertBefore = function(a, b, c) {\n  var d;\n  2 == arguments.length || 0 > (d = goog.array.indexOf(a, c)) ? a.push(b) : goog.array.insertAt(a, b, d);\n};\ngoog.array.remove = function(a, b) {\n  var c = goog.array.indexOf(a, b), d;\n  (d = 0 <= c) && goog.array.removeAt(a, c);\n  return d;\n};\ngoog.array.removeLast = function(a, b) {\n  var c = goog.array.lastIndexOf(a, b);\n  return 0 <= c ? (goog.array.removeAt(a, c), !0) : !1;\n};\ngoog.array.removeAt = function(a, b) {\n  goog.asserts.assert(null != a.length);\n  return 1 == Array.prototype.splice.call(a, b, 1).length;\n};\ngoog.array.removeIf = function(a, b, c) {\n  b = goog.array.findIndex(a, b, c);\n  return 0 <= b ? (goog.array.removeAt(a, b), !0) : !1;\n};\ngoog.array.removeAllIf = function(a, b, c) {\n  var d = 0;\n  goog.array.forEachRight(a, function(e, f) {\n    b.call(c, e, f, a) && goog.array.removeAt(a, f) && d++;\n  });\n  return d;\n};\ngoog.array.concat = function(a) {\n  return Array.prototype.concat.apply([], arguments);\n};\ngoog.array.join = function(a) {\n  return Array.prototype.concat.apply([], arguments);\n};\ngoog.array.toArray = function(a) {\n  var b = a.length;\n  if (0 < b) {\n    for (var c = Array(b), d = 0; d < b; d++) {\n      c[d] = a[d];\n    }\n    return c;\n  }\n  return [];\n};\ngoog.array.clone = goog.array.toArray;\ngoog.array.extend = function(a, b) {\n  for (var c = 1; c < arguments.length; c++) {\n    var d = arguments[c];\n    if (goog.isArrayLike(d)) {\n      var e = a.length || 0, f = d.length || 0;\n      a.length = e + f;\n      for (var g = 0; g < f; g++) {\n        a[e + g] = d[g];\n      }\n    } else {\n      a.push(d);\n    }\n  }\n};\ngoog.array.splice = function(a, b, c, d) {\n  goog.asserts.assert(null != a.length);\n  return Array.prototype.splice.apply(a, goog.array.slice(arguments, 1));\n};\ngoog.array.slice = function(a, b, c) {\n  goog.asserts.assert(null != a.length);\n  return 2 >= arguments.length ? Array.prototype.slice.call(a, b) : Array.prototype.slice.call(a, b, c);\n};\ngoog.array.removeDuplicates = function(a, b, c) {\n  b = b || a;\n  var d = function(a) {\n    return goog.isObject(a) ? \"o\" + goog.getUid(a) : (typeof a).charAt(0) + a;\n  };\n  c = c || d;\n  d = {};\n  for (var e = 0, f = 0; f < a.length;) {\n    var g = a[f++], h = c(g);\n    Object.prototype.hasOwnProperty.call(d, h) || (d[h] = !0, b[e++] = g);\n  }\n  b.length = e;\n};\ngoog.array.binarySearch = function(a, b, c) {\n  return goog.array.binarySearch_(a, c || goog.array.defaultCompare, !1, b);\n};\ngoog.array.binarySelect = function(a, b, c) {\n  return goog.array.binarySearch_(a, b, !0, void 0, c);\n};\ngoog.array.binarySearch_ = function(a, b, c, d, e) {\n  for (var f = 0, g = a.length, h; f < g;) {\n    var k = f + (g - f >>> 1);\n    var l = c ? b.call(e, a[k], k, a) : b(d, a[k]);\n    0 < l ? f = k + 1 : (g = k, h = !l);\n  }\n  return h ? f : -f - 1;\n};\ngoog.array.sort = function(a, b) {\n  a.sort(b || goog.array.defaultCompare);\n};\ngoog.array.stableSort = function(a, b) {\n  for (var c = Array(a.length), d = 0; d < a.length; d++) {\n    c[d] = {index:d, value:a[d]};\n  }\n  var e = b || goog.array.defaultCompare;\n  goog.array.sort(c, function(a, b) {\n    return e(a.value, b.value) || a.index - b.index;\n  });\n  for (d = 0; d < a.length; d++) {\n    a[d] = c[d].value;\n  }\n};\ngoog.array.sortByKey = function(a, b, c) {\n  var d = c || goog.array.defaultCompare;\n  goog.array.sort(a, function(a, c) {\n    return d(b(a), b(c));\n  });\n};\ngoog.array.sortObjectsByKey = function(a, b, c) {\n  goog.array.sortByKey(a, function(a) {\n    return a[b];\n  }, c);\n};\ngoog.array.isSorted = function(a, b, c) {\n  b = b || goog.array.defaultCompare;\n  for (var d = 1; d < a.length; d++) {\n    var e = b(a[d - 1], a[d]);\n    if (0 < e || 0 == e && c) {\n      return !1;\n    }\n  }\n  return !0;\n};\ngoog.array.equals = function(a, b, c) {\n  if (!goog.isArrayLike(a) || !goog.isArrayLike(b) || a.length != b.length) {\n    return !1;\n  }\n  var d = a.length;\n  c = c || goog.array.defaultCompareEquality;\n  for (var e = 0; e < d; e++) {\n    if (!c(a[e], b[e])) {\n      return !1;\n    }\n  }\n  return !0;\n};\ngoog.array.compare3 = function(a, b, c) {\n  c = c || goog.array.defaultCompare;\n  for (var d = Math.min(a.length, b.length), e = 0; e < d; e++) {\n    var f = c(a[e], b[e]);\n    if (0 != f) {\n      return f;\n    }\n  }\n  return goog.array.defaultCompare(a.length, b.length);\n};\ngoog.array.defaultCompare = function(a, b) {\n  return a > b ? 1 : a < b ? -1 : 0;\n};\ngoog.array.inverseDefaultCompare = function(a, b) {\n  return -goog.array.defaultCompare(a, b);\n};\ngoog.array.defaultCompareEquality = function(a, b) {\n  return a === b;\n};\ngoog.array.binaryInsert = function(a, b, c) {\n  c = goog.array.binarySearch(a, b, c);\n  return 0 > c ? (goog.array.insertAt(a, b, -(c + 1)), !0) : !1;\n};\ngoog.array.binaryRemove = function(a, b, c) {\n  b = goog.array.binarySearch(a, b, c);\n  return 0 <= b ? goog.array.removeAt(a, b) : !1;\n};\ngoog.array.bucket = function(a, b, c) {\n  for (var d = {}, e = 0; e < a.length; e++) {\n    var f = a[e], g = b.call(c, f, e, a);\n    void 0 !== g && (d[g] || (d[g] = [])).push(f);\n  }\n  return d;\n};\ngoog.array.toObject = function(a, b, c) {\n  var d = {};\n  goog.array.forEach(a, function(e, f) {\n    d[b.call(c, e, f, a)] = e;\n  });\n  return d;\n};\ngoog.array.range = function(a, b, c) {\n  var d = [], e = 0, f = a;\n  c = c || 1;\n  void 0 !== b && (e = a, f = b);\n  if (0 > c * (f - e)) {\n    return [];\n  }\n  if (0 < c) {\n    for (a = e; a < f; a += c) {\n      d.push(a);\n    }\n  } else {\n    for (a = e; a > f; a += c) {\n      d.push(a);\n    }\n  }\n  return d;\n};\ngoog.array.repeat = function(a, b) {\n  for (var c = [], d = 0; d < b; d++) {\n    c[d] = a;\n  }\n  return c;\n};\ngoog.array.flatten = function(a) {\n  for (var b = [], c = 0; c < arguments.length; c++) {\n    var d = arguments[c];\n    if (goog.isArray(d)) {\n      for (var e = 0; e < d.length; e += 8192) {\n        var f = goog.array.slice(d, e, e + 8192);\n        f = goog.array.flatten.apply(null, f);\n        for (var g = 0; g < f.length; g++) {\n          b.push(f[g]);\n        }\n      }\n    } else {\n      b.push(d);\n    }\n  }\n  return b;\n};\ngoog.array.rotate = function(a, b) {\n  goog.asserts.assert(null != a.length);\n  a.length && (b %= a.length, 0 < b ? Array.prototype.unshift.apply(a, a.splice(-b, b)) : 0 > b && Array.prototype.push.apply(a, a.splice(0, -b)));\n  return a;\n};\ngoog.array.moveItem = function(a, b, c) {\n  goog.asserts.assert(0 <= b && b < a.length);\n  goog.asserts.assert(0 <= c && c < a.length);\n  b = Array.prototype.splice.call(a, b, 1);\n  Array.prototype.splice.call(a, c, 0, b[0]);\n};\ngoog.array.zip = function(a) {\n  if (!arguments.length) {\n    return [];\n  }\n  for (var b = [], c = arguments[0].length, d = 1; d < arguments.length; d++) {\n    arguments[d].length < c && (c = arguments[d].length);\n  }\n  for (d = 0; d < c; d++) {\n    for (var e = [], f = 0; f < arguments.length; f++) {\n      e.push(arguments[f][d]);\n    }\n    b.push(e);\n  }\n  return b;\n};\ngoog.array.shuffle = function(a, b) {\n  for (var c = b || Math.random, d = a.length - 1; 0 < d; d--) {\n    var e = Math.floor(c() * (d + 1)), f = a[d];\n    a[d] = a[e];\n    a[e] = f;\n  }\n};\ngoog.array.copyByIndex = function(a, b) {\n  var c = [];\n  goog.array.forEach(b, function(b) {\n    c.push(a[b]);\n  });\n  return c;\n};\ngoog.array.concatMap = function(a, b, c) {\n  return goog.array.concat.apply([], goog.array.map(a, b, c));\n};\ngoog.object = {};\ngoog.object.is = function(a, b) {\n  return a === b ? 0 !== a || 1 / a === 1 / b : a !== a && b !== b;\n};\ngoog.object.forEach = function(a, b, c) {\n  for (var d in a) {\n    b.call(c, a[d], d, a);\n  }\n};\ngoog.object.filter = function(a, b, c) {\n  var d = {}, e;\n  for (e in a) {\n    b.call(c, a[e], e, a) && (d[e] = a[e]);\n  }\n  return d;\n};\ngoog.object.map = function(a, b, c) {\n  var d = {}, e;\n  for (e in a) {\n    d[e] = b.call(c, a[e], e, a);\n  }\n  return d;\n};\ngoog.object.some = function(a, b, c) {\n  for (var d in a) {\n    if (b.call(c, a[d], d, a)) {\n      return !0;\n    }\n  }\n  return !1;\n};\ngoog.object.every = function(a, b, c) {\n  for (var d in a) {\n    if (!b.call(c, a[d], d, a)) {\n      return !1;\n    }\n  }\n  return !0;\n};\ngoog.object.getCount = function(a) {\n  var b = 0, c;\n  for (c in a) {\n    b++;\n  }\n  return b;\n};\ngoog.object.getAnyKey = function(a) {\n  for (var b in a) {\n    return b;\n  }\n};\ngoog.object.getAnyValue = function(a) {\n  for (var b in a) {\n    return a[b];\n  }\n};\ngoog.object.contains = function(a, b) {\n  return goog.object.containsValue(a, b);\n};\ngoog.object.getValues = function(a) {\n  var b = [], c = 0, d;\n  for (d in a) {\n    b[c++] = a[d];\n  }\n  return b;\n};\ngoog.object.getKeys = function(a) {\n  var b = [], c = 0, d;\n  for (d in a) {\n    b[c++] = d;\n  }\n  return b;\n};\ngoog.object.getValueByKeys = function(a, b) {\n  var c = goog.isArrayLike(b), d = c ? b : arguments;\n  for (c = c ? 0 : 1; c < d.length; c++) {\n    if (null == a) {\n      return;\n    }\n    a = a[d[c]];\n  }\n  return a;\n};\ngoog.object.containsKey = function(a, b) {\n  return null !== a && b in a;\n};\ngoog.object.containsValue = function(a, b) {\n  for (var c in a) {\n    if (a[c] == b) {\n      return !0;\n    }\n  }\n  return !1;\n};\ngoog.object.findKey = function(a, b, c) {\n  for (var d in a) {\n    if (b.call(c, a[d], d, a)) {\n      return d;\n    }\n  }\n};\ngoog.object.findValue = function(a, b, c) {\n  return (b = goog.object.findKey(a, b, c)) && a[b];\n};\ngoog.object.isEmpty = function(a) {\n  for (var b in a) {\n    return !1;\n  }\n  return !0;\n};\ngoog.object.clear = function(a) {\n  for (var b in a) {\n    delete a[b];\n  }\n};\ngoog.object.remove = function(a, b) {\n  var c;\n  (c = b in a) && delete a[b];\n  return c;\n};\ngoog.object.add = function(a, b, c) {\n  if (null !== a && b in a) {\n    throw Error('The object already contains the key \"' + b + '\"');\n  }\n  goog.object.set(a, b, c);\n};\ngoog.object.get = function(a, b, c) {\n  return null !== a && b in a ? a[b] : c;\n};\ngoog.object.set = function(a, b, c) {\n  a[b] = c;\n};\ngoog.object.setIfUndefined = function(a, b, c) {\n  return b in a ? a[b] : a[b] = c;\n};\ngoog.object.setWithReturnValueIfNotSet = function(a, b, c) {\n  if (b in a) {\n    return a[b];\n  }\n  c = c();\n  return a[b] = c;\n};\ngoog.object.equals = function(a, b) {\n  for (var c in a) {\n    if (!(c in b) || a[c] !== b[c]) {\n      return !1;\n    }\n  }\n  for (var d in b) {\n    if (!(d in a)) {\n      return !1;\n    }\n  }\n  return !0;\n};\ngoog.object.clone = function(a) {\n  var b = {}, c;\n  for (c in a) {\n    b[c] = a[c];\n  }\n  return b;\n};\ngoog.object.unsafeClone = function(a) {\n  var b = goog.typeOf(a);\n  if (\"object\" == b || \"array\" == b) {\n    if (goog.isFunction(a.clone)) {\n      return a.clone();\n    }\n    b = \"array\" == b ? [] : {};\n    for (var c in a) {\n      b[c] = goog.object.unsafeClone(a[c]);\n    }\n    return b;\n  }\n  return a;\n};\ngoog.object.transpose = function(a) {\n  var b = {}, c;\n  for (c in a) {\n    b[a[c]] = c;\n  }\n  return b;\n};\ngoog.object.PROTOTYPE_FIELDS_ = \"constructor hasOwnProperty isPrototypeOf propertyIsEnumerable toLocaleString toString valueOf\".split(\" \");\ngoog.object.extend = function(a, b) {\n  for (var c, d, e = 1; e < arguments.length; e++) {\n    d = arguments[e];\n    for (c in d) {\n      a[c] = d[c];\n    }\n    for (var f = 0; f < goog.object.PROTOTYPE_FIELDS_.length; f++) {\n      c = goog.object.PROTOTYPE_FIELDS_[f], Object.prototype.hasOwnProperty.call(d, c) && (a[c] = d[c]);\n    }\n  }\n};\ngoog.object.create = function(a) {\n  var b = arguments.length;\n  if (1 == b && goog.isArray(arguments[0])) {\n    return goog.object.create.apply(null, arguments[0]);\n  }\n  if (b % 2) {\n    throw Error(\"Uneven number of arguments\");\n  }\n  for (var c = {}, d = 0; d < b; d += 2) {\n    c[arguments[d]] = arguments[d + 1];\n  }\n  return c;\n};\ngoog.object.createSet = function(a) {\n  var b = arguments.length;\n  if (1 == b && goog.isArray(arguments[0])) {\n    return goog.object.createSet.apply(null, arguments[0]);\n  }\n  for (var c = {}, d = 0; d < b; d++) {\n    c[arguments[d]] = !0;\n  }\n  return c;\n};\ngoog.object.createImmutableView = function(a) {\n  var b = a;\n  Object.isFrozen && !Object.isFrozen(a) && (b = Object.create(a), Object.freeze(b));\n  return b;\n};\ngoog.object.isImmutableView = function(a) {\n  return !!Object.isFrozen && Object.isFrozen(a);\n};\ngoog.object.getAllPropertyNames = function(a, b, c) {\n  if (!a) {\n    return [];\n  }\n  if (!Object.getOwnPropertyNames || !Object.getPrototypeOf) {\n    return goog.object.getKeys(a);\n  }\n  for (var d = {}; a && (a !== Object.prototype || b) && (a !== Function.prototype || c);) {\n    for (var e = Object.getOwnPropertyNames(a), f = 0; f < e.length; f++) {\n      d[e[f]] = !0;\n    }\n    a = Object.getPrototypeOf(a);\n  }\n  return goog.object.getKeys(d);\n};\ngoog.object.getSuperClass = function(a) {\n  return (a = Object.getPrototypeOf(a.prototype)) && a.constructor;\n};\ngoog.dom.asserts = {};\ngoog.dom.asserts.assertIsLocation = function(a) {\n  if (goog.asserts.ENABLE_ASSERTS) {\n    var b = goog.dom.asserts.getWindow_(a);\n    b && (!a || !(a instanceof b.Location) && a instanceof b.Element) && goog.asserts.fail(\"Argument is not a Location (or a non-Element mock); got: %s\", goog.dom.asserts.debugStringForType_(a));\n  }\n  return a;\n};\ngoog.dom.asserts.assertIsElementType_ = function(a, b) {\n  if (goog.asserts.ENABLE_ASSERTS) {\n    var c = goog.dom.asserts.getWindow_(a);\n    c && \"undefined\" != typeof c[b] && (a && (a instanceof c[b] || !(a instanceof c.Location || a instanceof c.Element)) || goog.asserts.fail(\"Argument is not a %s (or a non-Element, non-Location mock); got: %s\", b, goog.dom.asserts.debugStringForType_(a)));\n  }\n  return a;\n};\ngoog.dom.asserts.assertIsHTMLAnchorElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLAnchorElement\");\n};\ngoog.dom.asserts.assertIsHTMLButtonElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLButtonElement\");\n};\ngoog.dom.asserts.assertIsHTMLLinkElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLLinkElement\");\n};\ngoog.dom.asserts.assertIsHTMLImageElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLImageElement\");\n};\ngoog.dom.asserts.assertIsHTMLAudioElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLAudioElement\");\n};\ngoog.dom.asserts.assertIsHTMLVideoElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLVideoElement\");\n};\ngoog.dom.asserts.assertIsHTMLInputElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLInputElement\");\n};\ngoog.dom.asserts.assertIsHTMLTextAreaElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLTextAreaElement\");\n};\ngoog.dom.asserts.assertIsHTMLCanvasElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLCanvasElement\");\n};\ngoog.dom.asserts.assertIsHTMLEmbedElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLEmbedElement\");\n};\ngoog.dom.asserts.assertIsHTMLFormElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLFormElement\");\n};\ngoog.dom.asserts.assertIsHTMLFrameElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLFrameElement\");\n};\ngoog.dom.asserts.assertIsHTMLIFrameElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLIFrameElement\");\n};\ngoog.dom.asserts.assertIsHTMLObjectElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLObjectElement\");\n};\ngoog.dom.asserts.assertIsHTMLScriptElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLScriptElement\");\n};\ngoog.dom.asserts.debugStringForType_ = function(a) {\n  if (goog.isObject(a)) {\n    try {\n      return a.constructor.displayName || a.constructor.name || Object.prototype.toString.call(a);\n    } catch (b) {\n      return \"<object could not be stringified>\";\n    }\n  } else {\n    return void 0 === a ? \"undefined\" : null === a ? \"null\" : typeof a;\n  }\n};\ngoog.dom.asserts.getWindow_ = function(a) {\n  try {\n    var b = a && a.ownerDocument, c = b && (b.defaultView || b.parentWindow);\n    c = c || goog.global;\n    if (c.Element && c.Location) {\n      return c;\n    }\n  } catch (d) {\n  }\n  return null;\n};\ngoog.functions = {};\ngoog.functions.constant = function(a) {\n  return function() {\n    return a;\n  };\n};\ngoog.functions.FALSE = function() {\n  return !1;\n};\ngoog.functions.TRUE = function() {\n  return !0;\n};\ngoog.functions.NULL = function() {\n  return null;\n};\ngoog.functions.identity = function(a, b) {\n  return a;\n};\ngoog.functions.error = function(a) {\n  return function() {\n    throw Error(a);\n  };\n};\ngoog.functions.fail = function(a) {\n  return function() {\n    throw a;\n  };\n};\ngoog.functions.lock = function(a, b) {\n  b = b || 0;\n  return function() {\n    return a.apply(this, Array.prototype.slice.call(arguments, 0, b));\n  };\n};\ngoog.functions.nth = function(a) {\n  return function() {\n    return arguments[a];\n  };\n};\ngoog.functions.partialRight = function(a, b) {\n  var c = Array.prototype.slice.call(arguments, 1);\n  return function() {\n    var b = Array.prototype.slice.call(arguments);\n    b.push.apply(b, c);\n    return a.apply(this, b);\n  };\n};\ngoog.functions.withReturnValue = function(a, b) {\n  return goog.functions.sequence(a, goog.functions.constant(b));\n};\ngoog.functions.equalTo = function(a, b) {\n  return function(c) {\n    return b ? a == c : a === c;\n  };\n};\ngoog.functions.compose = function(a, b) {\n  var c = arguments, d = c.length;\n  return function() {\n    var a;\n    d && (a = c[d - 1].apply(this, arguments));\n    for (var b = d - 2; 0 <= b; b--) {\n      a = c[b].call(this, a);\n    }\n    return a;\n  };\n};\ngoog.functions.sequence = function(a) {\n  var b = arguments, c = b.length;\n  return function() {\n    for (var a, e = 0; e < c; e++) {\n      a = b[e].apply(this, arguments);\n    }\n    return a;\n  };\n};\ngoog.functions.and = function(a) {\n  var b = arguments, c = b.length;\n  return function() {\n    for (var a = 0; a < c; a++) {\n      if (!b[a].apply(this, arguments)) {\n        return !1;\n      }\n    }\n    return !0;\n  };\n};\ngoog.functions.or = function(a) {\n  var b = arguments, c = b.length;\n  return function() {\n    for (var a = 0; a < c; a++) {\n      if (b[a].apply(this, arguments)) {\n        return !0;\n      }\n    }\n    return !1;\n  };\n};\ngoog.functions.not = function(a) {\n  return function() {\n    return !a.apply(this, arguments);\n  };\n};\ngoog.functions.create = function(a, b) {\n  var c = function() {\n  };\n  c.prototype = a.prototype;\n  c = new c;\n  a.apply(c, Array.prototype.slice.call(arguments, 1));\n  return c;\n};\ngoog.functions.CACHE_RETURN_VALUE = !0;\ngoog.functions.cacheReturnValue = function(a) {\n  var b = !1, c;\n  return function() {\n    if (!goog.functions.CACHE_RETURN_VALUE) {\n      return a();\n    }\n    b || (c = a(), b = !0);\n    return c;\n  };\n};\ngoog.functions.once = function(a) {\n  var b = a;\n  return function() {\n    if (b) {\n      var a = b;\n      b = null;\n      a();\n    }\n  };\n};\ngoog.functions.debounce = function(a, b, c) {\n  var d = 0;\n  return function(e) {\n    goog.global.clearTimeout(d);\n    var f = arguments;\n    d = goog.global.setTimeout(function() {\n      a.apply(c, f);\n    }, b);\n  };\n};\ngoog.functions.throttle = function(a, b, c) {\n  var d = 0, e = !1, f = [], g = function() {\n    d = 0;\n    e && (e = !1, h());\n  }, h = function() {\n    d = goog.global.setTimeout(g, b);\n    a.apply(c, f);\n  };\n  return function(a) {\n    f = arguments;\n    d ? e = !0 : h();\n  };\n};\ngoog.functions.rateLimit = function(a, b, c) {\n  var d = 0, e = function() {\n    d = 0;\n  };\n  return function(f) {\n    d || (d = goog.global.setTimeout(e, b), a.apply(c, arguments));\n  };\n};\ngoog.dom.HtmlElement = function() {\n};\ngoog.dom.TagName = function(a) {\n  this.tagName_ = a;\n};\ngoog.dom.TagName.prototype.toString = function() {\n  return this.tagName_;\n};\ngoog.dom.TagName.A = new goog.dom.TagName(\"A\");\ngoog.dom.TagName.ABBR = new goog.dom.TagName(\"ABBR\");\ngoog.dom.TagName.ACRONYM = new goog.dom.TagName(\"ACRONYM\");\ngoog.dom.TagName.ADDRESS = new goog.dom.TagName(\"ADDRESS\");\ngoog.dom.TagName.APPLET = new goog.dom.TagName(\"APPLET\");\ngoog.dom.TagName.AREA = new goog.dom.TagName(\"AREA\");\ngoog.dom.TagName.ARTICLE = new goog.dom.TagName(\"ARTICLE\");\ngoog.dom.TagName.ASIDE = new goog.dom.TagName(\"ASIDE\");\ngoog.dom.TagName.AUDIO = new goog.dom.TagName(\"AUDIO\");\ngoog.dom.TagName.B = new goog.dom.TagName(\"B\");\ngoog.dom.TagName.BASE = new goog.dom.TagName(\"BASE\");\ngoog.dom.TagName.BASEFONT = new goog.dom.TagName(\"BASEFONT\");\ngoog.dom.TagName.BDI = new goog.dom.TagName(\"BDI\");\ngoog.dom.TagName.BDO = new goog.dom.TagName(\"BDO\");\ngoog.dom.TagName.BIG = new goog.dom.TagName(\"BIG\");\ngoog.dom.TagName.BLOCKQUOTE = new goog.dom.TagName(\"BLOCKQUOTE\");\ngoog.dom.TagName.BODY = new goog.dom.TagName(\"BODY\");\ngoog.dom.TagName.BR = new goog.dom.TagName(\"BR\");\ngoog.dom.TagName.BUTTON = new goog.dom.TagName(\"BUTTON\");\ngoog.dom.TagName.CANVAS = new goog.dom.TagName(\"CANVAS\");\ngoog.dom.TagName.CAPTION = new goog.dom.TagName(\"CAPTION\");\ngoog.dom.TagName.CENTER = new goog.dom.TagName(\"CENTER\");\ngoog.dom.TagName.CITE = new goog.dom.TagName(\"CITE\");\ngoog.dom.TagName.CODE = new goog.dom.TagName(\"CODE\");\ngoog.dom.TagName.COL = new goog.dom.TagName(\"COL\");\ngoog.dom.TagName.COLGROUP = new goog.dom.TagName(\"COLGROUP\");\ngoog.dom.TagName.COMMAND = new goog.dom.TagName(\"COMMAND\");\ngoog.dom.TagName.DATA = new goog.dom.TagName(\"DATA\");\ngoog.dom.TagName.DATALIST = new goog.dom.TagName(\"DATALIST\");\ngoog.dom.TagName.DD = new goog.dom.TagName(\"DD\");\ngoog.dom.TagName.DEL = new goog.dom.TagName(\"DEL\");\ngoog.dom.TagName.DETAILS = new goog.dom.TagName(\"DETAILS\");\ngoog.dom.TagName.DFN = new goog.dom.TagName(\"DFN\");\ngoog.dom.TagName.DIALOG = new goog.dom.TagName(\"DIALOG\");\ngoog.dom.TagName.DIR = new goog.dom.TagName(\"DIR\");\ngoog.dom.TagName.DIV = new goog.dom.TagName(\"DIV\");\ngoog.dom.TagName.DL = new goog.dom.TagName(\"DL\");\ngoog.dom.TagName.DT = new goog.dom.TagName(\"DT\");\ngoog.dom.TagName.EM = new goog.dom.TagName(\"EM\");\ngoog.dom.TagName.EMBED = new goog.dom.TagName(\"EMBED\");\ngoog.dom.TagName.FIELDSET = new goog.dom.TagName(\"FIELDSET\");\ngoog.dom.TagName.FIGCAPTION = new goog.dom.TagName(\"FIGCAPTION\");\ngoog.dom.TagName.FIGURE = new goog.dom.TagName(\"FIGURE\");\ngoog.dom.TagName.FONT = new goog.dom.TagName(\"FONT\");\ngoog.dom.TagName.FOOTER = new goog.dom.TagName(\"FOOTER\");\ngoog.dom.TagName.FORM = new goog.dom.TagName(\"FORM\");\ngoog.dom.TagName.FRAME = new goog.dom.TagName(\"FRAME\");\ngoog.dom.TagName.FRAMESET = new goog.dom.TagName(\"FRAMESET\");\ngoog.dom.TagName.H1 = new goog.dom.TagName(\"H1\");\ngoog.dom.TagName.H2 = new goog.dom.TagName(\"H2\");\ngoog.dom.TagName.H3 = new goog.dom.TagName(\"H3\");\ngoog.dom.TagName.H4 = new goog.dom.TagName(\"H4\");\ngoog.dom.TagName.H5 = new goog.dom.TagName(\"H5\");\ngoog.dom.TagName.H6 = new goog.dom.TagName(\"H6\");\ngoog.dom.TagName.HEAD = new goog.dom.TagName(\"HEAD\");\ngoog.dom.TagName.HEADER = new goog.dom.TagName(\"HEADER\");\ngoog.dom.TagName.HGROUP = new goog.dom.TagName(\"HGROUP\");\ngoog.dom.TagName.HR = new goog.dom.TagName(\"HR\");\ngoog.dom.TagName.HTML = new goog.dom.TagName(\"HTML\");\ngoog.dom.TagName.I = new goog.dom.TagName(\"I\");\ngoog.dom.TagName.IFRAME = new goog.dom.TagName(\"IFRAME\");\ngoog.dom.TagName.IMG = new goog.dom.TagName(\"IMG\");\ngoog.dom.TagName.INPUT = new goog.dom.TagName(\"INPUT\");\ngoog.dom.TagName.INS = new goog.dom.TagName(\"INS\");\ngoog.dom.TagName.ISINDEX = new goog.dom.TagName(\"ISINDEX\");\ngoog.dom.TagName.KBD = new goog.dom.TagName(\"KBD\");\ngoog.dom.TagName.KEYGEN = new goog.dom.TagName(\"KEYGEN\");\ngoog.dom.TagName.LABEL = new goog.dom.TagName(\"LABEL\");\ngoog.dom.TagName.LEGEND = new goog.dom.TagName(\"LEGEND\");\ngoog.dom.TagName.LI = new goog.dom.TagName(\"LI\");\ngoog.dom.TagName.LINK = new goog.dom.TagName(\"LINK\");\ngoog.dom.TagName.MAIN = new goog.dom.TagName(\"MAIN\");\ngoog.dom.TagName.MAP = new goog.dom.TagName(\"MAP\");\ngoog.dom.TagName.MARK = new goog.dom.TagName(\"MARK\");\ngoog.dom.TagName.MATH = new goog.dom.TagName(\"MATH\");\ngoog.dom.TagName.MENU = new goog.dom.TagName(\"MENU\");\ngoog.dom.TagName.MENUITEM = new goog.dom.TagName(\"MENUITEM\");\ngoog.dom.TagName.META = new goog.dom.TagName(\"META\");\ngoog.dom.TagName.METER = new goog.dom.TagName(\"METER\");\ngoog.dom.TagName.NAV = new goog.dom.TagName(\"NAV\");\ngoog.dom.TagName.NOFRAMES = new goog.dom.TagName(\"NOFRAMES\");\ngoog.dom.TagName.NOSCRIPT = new goog.dom.TagName(\"NOSCRIPT\");\ngoog.dom.TagName.OBJECT = new goog.dom.TagName(\"OBJECT\");\ngoog.dom.TagName.OL = new goog.dom.TagName(\"OL\");\ngoog.dom.TagName.OPTGROUP = new goog.dom.TagName(\"OPTGROUP\");\ngoog.dom.TagName.OPTION = new goog.dom.TagName(\"OPTION\");\ngoog.dom.TagName.OUTPUT = new goog.dom.TagName(\"OUTPUT\");\ngoog.dom.TagName.P = new goog.dom.TagName(\"P\");\ngoog.dom.TagName.PARAM = new goog.dom.TagName(\"PARAM\");\ngoog.dom.TagName.PICTURE = new goog.dom.TagName(\"PICTURE\");\ngoog.dom.TagName.PRE = new goog.dom.TagName(\"PRE\");\ngoog.dom.TagName.PROGRESS = new goog.dom.TagName(\"PROGRESS\");\ngoog.dom.TagName.Q = new goog.dom.TagName(\"Q\");\ngoog.dom.TagName.RP = new goog.dom.TagName(\"RP\");\ngoog.dom.TagName.RT = new goog.dom.TagName(\"RT\");\ngoog.dom.TagName.RTC = new goog.dom.TagName(\"RTC\");\ngoog.dom.TagName.RUBY = new goog.dom.TagName(\"RUBY\");\ngoog.dom.TagName.S = new goog.dom.TagName(\"S\");\ngoog.dom.TagName.SAMP = new goog.dom.TagName(\"SAMP\");\ngoog.dom.TagName.SCRIPT = new goog.dom.TagName(\"SCRIPT\");\ngoog.dom.TagName.SECTION = new goog.dom.TagName(\"SECTION\");\ngoog.dom.TagName.SELECT = new goog.dom.TagName(\"SELECT\");\ngoog.dom.TagName.SMALL = new goog.dom.TagName(\"SMALL\");\ngoog.dom.TagName.SOURCE = new goog.dom.TagName(\"SOURCE\");\ngoog.dom.TagName.SPAN = new goog.dom.TagName(\"SPAN\");\ngoog.dom.TagName.STRIKE = new goog.dom.TagName(\"STRIKE\");\ngoog.dom.TagName.STRONG = new goog.dom.TagName(\"STRONG\");\ngoog.dom.TagName.STYLE = new goog.dom.TagName(\"STYLE\");\ngoog.dom.TagName.SUB = new goog.dom.TagName(\"SUB\");\ngoog.dom.TagName.SUMMARY = new goog.dom.TagName(\"SUMMARY\");\ngoog.dom.TagName.SUP = new goog.dom.TagName(\"SUP\");\ngoog.dom.TagName.SVG = new goog.dom.TagName(\"SVG\");\ngoog.dom.TagName.TABLE = new goog.dom.TagName(\"TABLE\");\ngoog.dom.TagName.TBODY = new goog.dom.TagName(\"TBODY\");\ngoog.dom.TagName.TD = new goog.dom.TagName(\"TD\");\ngoog.dom.TagName.TEMPLATE = new goog.dom.TagName(\"TEMPLATE\");\ngoog.dom.TagName.TEXTAREA = new goog.dom.TagName(\"TEXTAREA\");\ngoog.dom.TagName.TFOOT = new goog.dom.TagName(\"TFOOT\");\ngoog.dom.TagName.TH = new goog.dom.TagName(\"TH\");\ngoog.dom.TagName.THEAD = new goog.dom.TagName(\"THEAD\");\ngoog.dom.TagName.TIME = new goog.dom.TagName(\"TIME\");\ngoog.dom.TagName.TITLE = new goog.dom.TagName(\"TITLE\");\ngoog.dom.TagName.TR = new goog.dom.TagName(\"TR\");\ngoog.dom.TagName.TRACK = new goog.dom.TagName(\"TRACK\");\ngoog.dom.TagName.TT = new goog.dom.TagName(\"TT\");\ngoog.dom.TagName.U = new goog.dom.TagName(\"U\");\ngoog.dom.TagName.UL = new goog.dom.TagName(\"UL\");\ngoog.dom.TagName.VAR = new goog.dom.TagName(\"VAR\");\ngoog.dom.TagName.VIDEO = new goog.dom.TagName(\"VIDEO\");\ngoog.dom.TagName.WBR = new goog.dom.TagName(\"WBR\");\ngoog.dom.tags = {};\ngoog.dom.tags.VOID_TAGS_ = {area:!0, base:!0, br:!0, col:!0, command:!0, embed:!0, hr:!0, img:!0, input:!0, keygen:!0, link:!0, meta:!0, param:!0, source:!0, track:!0, wbr:!0};\ngoog.dom.tags.isVoidTag = function(a) {\n  return !0 === goog.dom.tags.VOID_TAGS_[a];\n};\ngoog.html = {};\ngoog.html.trustedtypes = {};\ngoog.html.trustedtypes.PRIVATE_DO_NOT_ACCESS_OR_ELSE_POLICY = goog.TRUSTED_TYPES_POLICY_NAME ? goog.createTrustedTypesPolicy(goog.TRUSTED_TYPES_POLICY_NAME + \"#html\") : null;\ngoog.string.TypedString = function() {\n};\ngoog.string.Const = function(a, b) {\n  this.stringConstValueWithSecurityContract__googStringSecurityPrivate_ = a === goog.string.Const.GOOG_STRING_CONSTRUCTOR_TOKEN_PRIVATE_ && b || \"\";\n  this.STRING_CONST_TYPE_MARKER__GOOG_STRING_SECURITY_PRIVATE_ = goog.string.Const.TYPE_MARKER_;\n};\ngoog.string.Const.prototype.implementsGoogStringTypedString = !0;\ngoog.string.Const.prototype.getTypedStringValue = function() {\n  return this.stringConstValueWithSecurityContract__googStringSecurityPrivate_;\n};\ngoog.DEBUG && (goog.string.Const.prototype.toString = function() {\n  return \"Const{\" + this.stringConstValueWithSecurityContract__googStringSecurityPrivate_ + \"}\";\n});\ngoog.string.Const.unwrap = function(a) {\n  if (a instanceof goog.string.Const && a.constructor === goog.string.Const && a.STRING_CONST_TYPE_MARKER__GOOG_STRING_SECURITY_PRIVATE_ === goog.string.Const.TYPE_MARKER_) {\n    return a.stringConstValueWithSecurityContract__googStringSecurityPrivate_;\n  }\n  goog.asserts.fail(\"expected object of type Const, got '\" + a + \"'\");\n  return \"type_error:Const\";\n};\ngoog.string.Const.from = function(a) {\n  return new goog.string.Const(goog.string.Const.GOOG_STRING_CONSTRUCTOR_TOKEN_PRIVATE_, a);\n};\ngoog.string.Const.TYPE_MARKER_ = {};\ngoog.string.Const.GOOG_STRING_CONSTRUCTOR_TOKEN_PRIVATE_ = {};\ngoog.string.Const.EMPTY = goog.string.Const.from(\"\");\ngoog.html.SafeScript = function() {\n  this.privateDoNotAccessOrElseSafeScriptWrappedValue_ = \"\";\n  this.SAFE_SCRIPT_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ = goog.html.SafeScript.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_;\n};\ngoog.html.SafeScript.prototype.implementsGoogStringTypedString = !0;\ngoog.html.SafeScript.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ = {};\ngoog.html.SafeScript.fromConstant = function(a) {\n  a = goog.string.Const.unwrap(a);\n  return 0 === a.length ? goog.html.SafeScript.EMPTY : goog.html.SafeScript.createSafeScriptSecurityPrivateDoNotAccessOrElse(a);\n};\ngoog.html.SafeScript.fromConstantAndArgs = function(a, b) {\n  for (var c = [], d = 1; d < arguments.length; d++) {\n    c.push(goog.html.SafeScript.stringify_(arguments[d]));\n  }\n  return goog.html.SafeScript.createSafeScriptSecurityPrivateDoNotAccessOrElse(\"(\" + goog.string.Const.unwrap(a) + \")(\" + c.join(\", \") + \");\");\n};\ngoog.html.SafeScript.fromJson = function(a) {\n  return goog.html.SafeScript.createSafeScriptSecurityPrivateDoNotAccessOrElse(goog.html.SafeScript.stringify_(a));\n};\ngoog.html.SafeScript.prototype.getTypedStringValue = function() {\n  return this.privateDoNotAccessOrElseSafeScriptWrappedValue_.toString();\n};\ngoog.DEBUG && (goog.html.SafeScript.prototype.toString = function() {\n  return \"SafeScript{\" + this.privateDoNotAccessOrElseSafeScriptWrappedValue_ + \"}\";\n});\ngoog.html.SafeScript.unwrap = function(a) {\n  return goog.html.SafeScript.unwrapTrustedScript(a).toString();\n};\ngoog.html.SafeScript.unwrapTrustedScript = function(a) {\n  if (a instanceof goog.html.SafeScript && a.constructor === goog.html.SafeScript && a.SAFE_SCRIPT_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ === goog.html.SafeScript.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_) {\n    return a.privateDoNotAccessOrElseSafeScriptWrappedValue_;\n  }\n  goog.asserts.fail(\"expected object of type SafeScript, got '\" + a + \"' of type \" + goog.typeOf(a));\n  return \"type_error:SafeScript\";\n};\ngoog.html.SafeScript.stringify_ = function(a) {\n  return JSON.stringify(a).replace(/</g, \"\\\\x3c\");\n};\ngoog.html.SafeScript.createSafeScriptSecurityPrivateDoNotAccessOrElse = function(a) {\n  return (new goog.html.SafeScript).initSecurityPrivateDoNotAccessOrElse_(a);\n};\ngoog.html.SafeScript.prototype.initSecurityPrivateDoNotAccessOrElse_ = function(a) {\n  this.privateDoNotAccessOrElseSafeScriptWrappedValue_ = goog.html.trustedtypes.PRIVATE_DO_NOT_ACCESS_OR_ELSE_POLICY ? goog.html.trustedtypes.PRIVATE_DO_NOT_ACCESS_OR_ELSE_POLICY.createScript(a) : a;\n  return this;\n};\ngoog.html.SafeScript.EMPTY = goog.html.SafeScript.createSafeScriptSecurityPrivateDoNotAccessOrElse(\"\");\ngoog.fs = {};\ngoog.fs.url = {};\ngoog.fs.url.createObjectUrl = function(a) {\n  return goog.fs.url.getUrlObject_().createObjectURL(a);\n};\ngoog.fs.url.revokeObjectUrl = function(a) {\n  goog.fs.url.getUrlObject_().revokeObjectURL(a);\n};\ngoog.fs.url.getUrlObject_ = function() {\n  var a = goog.fs.url.findUrlObject_();\n  if (null != a) {\n    return a;\n  }\n  throw Error(\"This browser doesn't seem to support blob URLs\");\n};\ngoog.fs.url.findUrlObject_ = function() {\n  return void 0 !== goog.global.URL && void 0 !== goog.global.URL.createObjectURL ? goog.global.URL : void 0 !== goog.global.webkitURL && void 0 !== goog.global.webkitURL.createObjectURL ? goog.global.webkitURL : void 0 !== goog.global.createObjectURL ? goog.global : null;\n};\ngoog.fs.url.browserSupportsObjectUrls = function() {\n  return null != goog.fs.url.findUrlObject_();\n};\ngoog.i18n = {};\ngoog.i18n.bidi = {};\ngoog.i18n.bidi.FORCE_RTL = !1;\ngoog.i18n.bidi.IS_RTL = goog.i18n.bidi.FORCE_RTL || (\"ar\" == goog.LOCALE.substring(0, 2).toLowerCase() || \"fa\" == goog.LOCALE.substring(0, 2).toLowerCase() || \"he\" == goog.LOCALE.substring(0, 2).toLowerCase() || \"iw\" == goog.LOCALE.substring(0, 2).toLowerCase() || \"ps\" == goog.LOCALE.substring(0, 2).toLowerCase() || \"sd\" == goog.LOCALE.substring(0, 2).toLowerCase() || \"ug\" == goog.LOCALE.substring(0, 2).toLowerCase() || \"ur\" == goog.LOCALE.substring(0, 2).toLowerCase() || \"yi\" == goog.LOCALE.substring(0,\n2).toLowerCase()) && (2 == goog.LOCALE.length || \"-\" == goog.LOCALE.substring(2, 3) || \"_\" == goog.LOCALE.substring(2, 3)) || 3 <= goog.LOCALE.length && \"ckb\" == goog.LOCALE.substring(0, 3).toLowerCase() && (3 == goog.LOCALE.length || \"-\" == goog.LOCALE.substring(3, 4) || \"_\" == goog.LOCALE.substring(3, 4)) || 7 <= goog.LOCALE.length && (\"-\" == goog.LOCALE.substring(2, 3) || \"_\" == goog.LOCALE.substring(2, 3)) && (\"adlm\" == goog.LOCALE.substring(3, 7).toLowerCase() || \"arab\" == goog.LOCALE.substring(3,\n7).toLowerCase() || \"hebr\" == goog.LOCALE.substring(3, 7).toLowerCase() || \"nkoo\" == goog.LOCALE.substring(3, 7).toLowerCase() || \"rohg\" == goog.LOCALE.substring(3, 7).toLowerCase() || \"thaa\" == goog.LOCALE.substring(3, 7).toLowerCase()) || 8 <= goog.LOCALE.length && (\"-\" == goog.LOCALE.substring(3, 4) || \"_\" == goog.LOCALE.substring(3, 4)) && (\"adlm\" == goog.LOCALE.substring(4, 8).toLowerCase() || \"arab\" == goog.LOCALE.substring(4, 8).toLowerCase() || \"hebr\" == goog.LOCALE.substring(4, 8).toLowerCase() ||\n\"nkoo\" == goog.LOCALE.substring(4, 8).toLowerCase() || \"rohg\" == goog.LOCALE.substring(4, 8).toLowerCase() || \"thaa\" == goog.LOCALE.substring(4, 8).toLowerCase());\ngoog.i18n.bidi.Format = {LRE:\"\\u202a\", RLE:\"\\u202b\", PDF:\"\\u202c\", LRM:\"\\u200e\", RLM:\"\\u200f\"};\ngoog.i18n.bidi.Dir = {LTR:1, RTL:-1, NEUTRAL:0};\ngoog.i18n.bidi.RIGHT = \"right\";\ngoog.i18n.bidi.LEFT = \"left\";\ngoog.i18n.bidi.I18N_RIGHT = goog.i18n.bidi.IS_RTL ? goog.i18n.bidi.LEFT : goog.i18n.bidi.RIGHT;\ngoog.i18n.bidi.I18N_LEFT = goog.i18n.bidi.IS_RTL ? goog.i18n.bidi.RIGHT : goog.i18n.bidi.LEFT;\ngoog.i18n.bidi.toDir = function(a, b) {\n  return \"number\" == typeof a ? 0 < a ? goog.i18n.bidi.Dir.LTR : 0 > a ? goog.i18n.bidi.Dir.RTL : b ? null : goog.i18n.bidi.Dir.NEUTRAL : null == a ? null : a ? goog.i18n.bidi.Dir.RTL : goog.i18n.bidi.Dir.LTR;\n};\ngoog.i18n.bidi.ltrChars_ = \"A-Za-z\\u00c0-\\u00d6\\u00d8-\\u00f6\\u00f8-\\u02b8\\u0300-\\u0590\\u0900-\\u1fff\\u200e\\u2c00-\\ud801\\ud804-\\ud839\\ud83c-\\udbff\\uf900-\\ufb1c\\ufe00-\\ufe6f\\ufefd-\\uffff\";\ngoog.i18n.bidi.rtlChars_ = \"\\u0591-\\u06ef\\u06fa-\\u08ff\\u200f\\ud802-\\ud803\\ud83a-\\ud83b\\ufb1d-\\ufdff\\ufe70-\\ufefc\";\ngoog.i18n.bidi.htmlSkipReg_ = /<[^>]*>|&[^;]+;/g;\ngoog.i18n.bidi.stripHtmlIfNeeded_ = function(a, b) {\n  return b ? a.replace(goog.i18n.bidi.htmlSkipReg_, \"\") : a;\n};\ngoog.i18n.bidi.rtlCharReg_ = new RegExp(\"[\" + goog.i18n.bidi.rtlChars_ + \"]\");\ngoog.i18n.bidi.ltrCharReg_ = new RegExp(\"[\" + goog.i18n.bidi.ltrChars_ + \"]\");\ngoog.i18n.bidi.hasAnyRtl = function(a, b) {\n  return goog.i18n.bidi.rtlCharReg_.test(goog.i18n.bidi.stripHtmlIfNeeded_(a, b));\n};\ngoog.i18n.bidi.hasRtlChar = goog.i18n.bidi.hasAnyRtl;\ngoog.i18n.bidi.hasAnyLtr = function(a, b) {\n  return goog.i18n.bidi.ltrCharReg_.test(goog.i18n.bidi.stripHtmlIfNeeded_(a, b));\n};\ngoog.i18n.bidi.ltrRe_ = new RegExp(\"^[\" + goog.i18n.bidi.ltrChars_ + \"]\");\ngoog.i18n.bidi.rtlRe_ = new RegExp(\"^[\" + goog.i18n.bidi.rtlChars_ + \"]\");\ngoog.i18n.bidi.isRtlChar = function(a) {\n  return goog.i18n.bidi.rtlRe_.test(a);\n};\ngoog.i18n.bidi.isLtrChar = function(a) {\n  return goog.i18n.bidi.ltrRe_.test(a);\n};\ngoog.i18n.bidi.isNeutralChar = function(a) {\n  return !goog.i18n.bidi.isLtrChar(a) && !goog.i18n.bidi.isRtlChar(a);\n};\ngoog.i18n.bidi.ltrDirCheckRe_ = new RegExp(\"^[^\" + goog.i18n.bidi.rtlChars_ + \"]*[\" + goog.i18n.bidi.ltrChars_ + \"]\");\ngoog.i18n.bidi.rtlDirCheckRe_ = new RegExp(\"^[^\" + goog.i18n.bidi.ltrChars_ + \"]*[\" + goog.i18n.bidi.rtlChars_ + \"]\");\ngoog.i18n.bidi.startsWithRtl = function(a, b) {\n  return goog.i18n.bidi.rtlDirCheckRe_.test(goog.i18n.bidi.stripHtmlIfNeeded_(a, b));\n};\ngoog.i18n.bidi.isRtlText = goog.i18n.bidi.startsWithRtl;\ngoog.i18n.bidi.startsWithLtr = function(a, b) {\n  return goog.i18n.bidi.ltrDirCheckRe_.test(goog.i18n.bidi.stripHtmlIfNeeded_(a, b));\n};\ngoog.i18n.bidi.isLtrText = goog.i18n.bidi.startsWithLtr;\ngoog.i18n.bidi.isRequiredLtrRe_ = /^http:\\/\\/.*/;\ngoog.i18n.bidi.isNeutralText = function(a, b) {\n  a = goog.i18n.bidi.stripHtmlIfNeeded_(a, b);\n  return goog.i18n.bidi.isRequiredLtrRe_.test(a) || !goog.i18n.bidi.hasAnyLtr(a) && !goog.i18n.bidi.hasAnyRtl(a);\n};\ngoog.i18n.bidi.ltrExitDirCheckRe_ = new RegExp(\"[\" + goog.i18n.bidi.ltrChars_ + \"][^\" + goog.i18n.bidi.rtlChars_ + \"]*$\");\ngoog.i18n.bidi.rtlExitDirCheckRe_ = new RegExp(\"[\" + goog.i18n.bidi.rtlChars_ + \"][^\" + goog.i18n.bidi.ltrChars_ + \"]*$\");\ngoog.i18n.bidi.endsWithLtr = function(a, b) {\n  return goog.i18n.bidi.ltrExitDirCheckRe_.test(goog.i18n.bidi.stripHtmlIfNeeded_(a, b));\n};\ngoog.i18n.bidi.isLtrExitText = goog.i18n.bidi.endsWithLtr;\ngoog.i18n.bidi.endsWithRtl = function(a, b) {\n  return goog.i18n.bidi.rtlExitDirCheckRe_.test(goog.i18n.bidi.stripHtmlIfNeeded_(a, b));\n};\ngoog.i18n.bidi.isRtlExitText = goog.i18n.bidi.endsWithRtl;\ngoog.i18n.bidi.rtlLocalesRe_ = /^(ar|ckb|dv|he|iw|fa|nqo|ps|sd|ug|ur|yi|.*[-_](Adlm|Arab|Hebr|Nkoo|Rohg|Thaa))(?!.*[-_](Latn|Cyrl)($|-|_))($|-|_)/i;\ngoog.i18n.bidi.isRtlLanguage = function(a) {\n  return goog.i18n.bidi.rtlLocalesRe_.test(a);\n};\ngoog.i18n.bidi.bracketGuardTextRe_ = /(\\(.*?\\)+)|(\\[.*?\\]+)|(\\{.*?\\}+)|(<.*?>+)/g;\ngoog.i18n.bidi.guardBracketInText = function(a, b) {\n  var c = (void 0 === b ? goog.i18n.bidi.hasAnyRtl(a) : b) ? goog.i18n.bidi.Format.RLM : goog.i18n.bidi.Format.LRM;\n  return a.replace(goog.i18n.bidi.bracketGuardTextRe_, c + \"$&\" + c);\n};\ngoog.i18n.bidi.enforceRtlInHtml = function(a) {\n  return \"<\" == a.charAt(0) ? a.replace(/<\\w+/, \"$& dir=rtl\") : \"\\n<span dir=rtl>\" + a + \"</span>\";\n};\ngoog.i18n.bidi.enforceRtlInText = function(a) {\n  return goog.i18n.bidi.Format.RLE + a + goog.i18n.bidi.Format.PDF;\n};\ngoog.i18n.bidi.enforceLtrInHtml = function(a) {\n  return \"<\" == a.charAt(0) ? a.replace(/<\\w+/, \"$& dir=ltr\") : \"\\n<span dir=ltr>\" + a + \"</span>\";\n};\ngoog.i18n.bidi.enforceLtrInText = function(a) {\n  return goog.i18n.bidi.Format.LRE + a + goog.i18n.bidi.Format.PDF;\n};\ngoog.i18n.bidi.dimensionsRe_ = /:\\s*([.\\d][.\\w]*)\\s+([.\\d][.\\w]*)\\s+([.\\d][.\\w]*)\\s+([.\\d][.\\w]*)/g;\ngoog.i18n.bidi.leftRe_ = /left/gi;\ngoog.i18n.bidi.rightRe_ = /right/gi;\ngoog.i18n.bidi.tempRe_ = /%%%%/g;\ngoog.i18n.bidi.mirrorCSS = function(a) {\n  return a.replace(goog.i18n.bidi.dimensionsRe_, \":$1 $4 $3 $2\").replace(goog.i18n.bidi.leftRe_, \"%%%%\").replace(goog.i18n.bidi.rightRe_, goog.i18n.bidi.LEFT).replace(goog.i18n.bidi.tempRe_, goog.i18n.bidi.RIGHT);\n};\ngoog.i18n.bidi.doubleQuoteSubstituteRe_ = /([\\u0591-\\u05f2])\"/g;\ngoog.i18n.bidi.singleQuoteSubstituteRe_ = /([\\u0591-\\u05f2])'/g;\ngoog.i18n.bidi.normalizeHebrewQuote = function(a) {\n  return a.replace(goog.i18n.bidi.doubleQuoteSubstituteRe_, \"$1\\u05f4\").replace(goog.i18n.bidi.singleQuoteSubstituteRe_, \"$1\\u05f3\");\n};\ngoog.i18n.bidi.wordSeparatorRe_ = /\\s+/;\ngoog.i18n.bidi.hasNumeralsRe_ = /[\\d\\u06f0-\\u06f9]/;\ngoog.i18n.bidi.rtlDetectionThreshold_ = 0.40;\ngoog.i18n.bidi.estimateDirection = function(a, b) {\n  for (var c = 0, d = 0, e = !1, f = goog.i18n.bidi.stripHtmlIfNeeded_(a, b).split(goog.i18n.bidi.wordSeparatorRe_), g = 0; g < f.length; g++) {\n    var h = f[g];\n    goog.i18n.bidi.startsWithRtl(h) ? (c++, d++) : goog.i18n.bidi.isRequiredLtrRe_.test(h) ? e = !0 : goog.i18n.bidi.hasAnyLtr(h) ? d++ : goog.i18n.bidi.hasNumeralsRe_.test(h) && (e = !0);\n  }\n  return 0 == d ? e ? goog.i18n.bidi.Dir.LTR : goog.i18n.bidi.Dir.NEUTRAL : c / d > goog.i18n.bidi.rtlDetectionThreshold_ ? goog.i18n.bidi.Dir.RTL : goog.i18n.bidi.Dir.LTR;\n};\ngoog.i18n.bidi.detectRtlDirectionality = function(a, b) {\n  return goog.i18n.bidi.estimateDirection(a, b) == goog.i18n.bidi.Dir.RTL;\n};\ngoog.i18n.bidi.setElementDirAndAlign = function(a, b) {\n  a && (b = goog.i18n.bidi.toDir(b)) && (a.style.textAlign = b == goog.i18n.bidi.Dir.RTL ? goog.i18n.bidi.RIGHT : goog.i18n.bidi.LEFT, a.dir = b == goog.i18n.bidi.Dir.RTL ? \"rtl\" : \"ltr\");\n};\ngoog.i18n.bidi.setElementDirByTextDirectionality = function(a, b) {\n  switch(goog.i18n.bidi.estimateDirection(b)) {\n    case goog.i18n.bidi.Dir.LTR:\n      a.dir = \"ltr\";\n      break;\n    case goog.i18n.bidi.Dir.RTL:\n      a.dir = \"rtl\";\n      break;\n    default:\n      a.removeAttribute(\"dir\");\n  }\n};\ngoog.i18n.bidi.DirectionalString = function() {\n};\ngoog.html.TrustedResourceUrl = function(a, b, c) {\n  this.privateDoNotAccessOrElseTrustedResourceUrlWrappedValue_ = a === goog.html.TrustedResourceUrl.CONSTRUCTOR_TOKEN_PRIVATE_ && b || \"\";\n  this.trustedURL_ = a === goog.html.TrustedResourceUrl.CONSTRUCTOR_TOKEN_PRIVATE_ && c || null;\n  this.TRUSTED_RESOURCE_URL_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ = goog.html.TrustedResourceUrl.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_;\n};\ngoog.html.TrustedResourceUrl.prototype.implementsGoogStringTypedString = !0;\ngoog.html.TrustedResourceUrl.prototype.getTypedStringValue = function() {\n  return this.privateDoNotAccessOrElseTrustedResourceUrlWrappedValue_.toString();\n};\ngoog.html.TrustedResourceUrl.prototype.implementsGoogI18nBidiDirectionalString = !0;\ngoog.html.TrustedResourceUrl.prototype.getDirection = function() {\n  return goog.i18n.bidi.Dir.LTR;\n};\ngoog.html.TrustedResourceUrl.prototype.cloneWithParams = function(a, b) {\n  var c = goog.html.TrustedResourceUrl.unwrap(this);\n  c = goog.html.TrustedResourceUrl.URL_PARAM_PARSER_.exec(c);\n  var d = c[3] || \"\";\n  return goog.html.TrustedResourceUrl.createTrustedResourceUrlSecurityPrivateDoNotAccessOrElse(c[1] + goog.html.TrustedResourceUrl.stringifyParams_(\"?\", c[2] || \"\", a) + goog.html.TrustedResourceUrl.stringifyParams_(\"#\", d, b));\n};\ngoog.DEBUG && (goog.html.TrustedResourceUrl.prototype.toString = function() {\n  return \"TrustedResourceUrl{\" + this.privateDoNotAccessOrElseTrustedResourceUrlWrappedValue_ + \"}\";\n});\ngoog.html.TrustedResourceUrl.unwrap = function(a) {\n  return goog.html.TrustedResourceUrl.unwrapTrustedScriptURL(a).toString();\n};\ngoog.html.TrustedResourceUrl.unwrapTrustedScriptURL = function(a) {\n  if (a instanceof goog.html.TrustedResourceUrl && a.constructor === goog.html.TrustedResourceUrl && a.TRUSTED_RESOURCE_URL_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ === goog.html.TrustedResourceUrl.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_) {\n    return a.privateDoNotAccessOrElseTrustedResourceUrlWrappedValue_;\n  }\n  goog.asserts.fail(\"expected object of type TrustedResourceUrl, got '\" + a + \"' of type \" + goog.typeOf(a));\n  return \"type_error:TrustedResourceUrl\";\n};\ngoog.html.TrustedResourceUrl.unwrapTrustedURL = function(a) {\n  return a.trustedURL_ ? a.trustedURL_ : goog.html.TrustedResourceUrl.unwrap(a);\n};\ngoog.html.TrustedResourceUrl.format = function(a, b) {\n  var c = goog.string.Const.unwrap(a);\n  if (!goog.html.TrustedResourceUrl.BASE_URL_.test(c)) {\n    throw Error(\"Invalid TrustedResourceUrl format: \" + c);\n  }\n  var d = c.replace(goog.html.TrustedResourceUrl.FORMAT_MARKER_, function(a, d) {\n    if (!Object.prototype.hasOwnProperty.call(b, d)) {\n      throw Error('Found marker, \"' + d + '\", in format string, \"' + c + '\", but no valid label mapping found in args: ' + JSON.stringify(b));\n    }\n    var e = b[d];\n    return e instanceof goog.string.Const ? goog.string.Const.unwrap(e) : encodeURIComponent(String(e));\n  });\n  return goog.html.TrustedResourceUrl.createTrustedResourceUrlSecurityPrivateDoNotAccessOrElse(d);\n};\ngoog.html.TrustedResourceUrl.FORMAT_MARKER_ = /%{(\\w+)}/g;\ngoog.html.TrustedResourceUrl.BASE_URL_ = /^((https:)?\\/\\/[0-9a-z.:[\\]-]+\\/|\\/[^/\\\\]|[^:/\\\\%]+\\/|[^:/\\\\%]*[?#]|about:blank#)/i;\ngoog.html.TrustedResourceUrl.URL_PARAM_PARSER_ = /^([^?#]*)(\\?[^#]*)?(#[\\s\\S]*)?/;\ngoog.html.TrustedResourceUrl.formatWithParams = function(a, b, c, d) {\n  return goog.html.TrustedResourceUrl.format(a, b).cloneWithParams(c, d);\n};\ngoog.html.TrustedResourceUrl.fromConstant = function(a) {\n  return goog.html.TrustedResourceUrl.createTrustedResourceUrlSecurityPrivateDoNotAccessOrElse(goog.string.Const.unwrap(a));\n};\ngoog.html.TrustedResourceUrl.fromConstants = function(a) {\n  for (var b = \"\", c = 0; c < a.length; c++) {\n    b += goog.string.Const.unwrap(a[c]);\n  }\n  return goog.html.TrustedResourceUrl.createTrustedResourceUrlSecurityPrivateDoNotAccessOrElse(b);\n};\ngoog.html.TrustedResourceUrl.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ = {};\ngoog.html.TrustedResourceUrl.createTrustedResourceUrlSecurityPrivateDoNotAccessOrElse = function(a) {\n  var b = goog.html.trustedtypes.PRIVATE_DO_NOT_ACCESS_OR_ELSE_POLICY ? goog.html.trustedtypes.PRIVATE_DO_NOT_ACCESS_OR_ELSE_POLICY.createScriptURL(a) : a;\n  a = goog.html.trustedtypes.PRIVATE_DO_NOT_ACCESS_OR_ELSE_POLICY ? goog.html.trustedtypes.PRIVATE_DO_NOT_ACCESS_OR_ELSE_POLICY.createURL(a) : null;\n  return new goog.html.TrustedResourceUrl(goog.html.TrustedResourceUrl.CONSTRUCTOR_TOKEN_PRIVATE_, b, a);\n};\ngoog.html.TrustedResourceUrl.stringifyParams_ = function(a, b, c) {\n  if (null == c) {\n    return b;\n  }\n  if (\"string\" === typeof c) {\n    return c ? a + encodeURIComponent(c) : \"\";\n  }\n  for (var d in c) {\n    var e = c[d];\n    e = goog.isArray(e) ? e : [e];\n    for (var f = 0; f < e.length; f++) {\n      var g = e[f];\n      null != g && (b || (b = a), b += (b.length > a.length ? \"&\" : \"\") + encodeURIComponent(d) + \"=\" + encodeURIComponent(String(g)));\n    }\n  }\n  return b;\n};\ngoog.html.TrustedResourceUrl.CONSTRUCTOR_TOKEN_PRIVATE_ = {};\ngoog.string.internal = {};\ngoog.string.internal.startsWith = function(a, b) {\n  return 0 == a.lastIndexOf(b, 0);\n};\ngoog.string.internal.endsWith = function(a, b) {\n  var c = a.length - b.length;\n  return 0 <= c && a.indexOf(b, c) == c;\n};\ngoog.string.internal.caseInsensitiveStartsWith = function(a, b) {\n  return 0 == goog.string.internal.caseInsensitiveCompare(b, a.substr(0, b.length));\n};\ngoog.string.internal.caseInsensitiveEndsWith = function(a, b) {\n  return 0 == goog.string.internal.caseInsensitiveCompare(b, a.substr(a.length - b.length, b.length));\n};\ngoog.string.internal.caseInsensitiveEquals = function(a, b) {\n  return a.toLowerCase() == b.toLowerCase();\n};\ngoog.string.internal.isEmptyOrWhitespace = function(a) {\n  return /^[\\s\\xa0]*$/.test(a);\n};\ngoog.string.internal.trim = goog.TRUSTED_SITE && String.prototype.trim ? function(a) {\n  return a.trim();\n} : function(a) {\n  return /^[\\s\\xa0]*([\\s\\S]*?)[\\s\\xa0]*$/.exec(a)[1];\n};\ngoog.string.internal.caseInsensitiveCompare = function(a, b) {\n  var c = String(a).toLowerCase(), d = String(b).toLowerCase();\n  return c < d ? -1 : c == d ? 0 : 1;\n};\ngoog.string.internal.newLineToBr = function(a, b) {\n  return a.replace(/(\\r\\n|\\r|\\n)/g, b ? \"<br />\" : \"<br>\");\n};\ngoog.string.internal.htmlEscape = function(a, b) {\n  if (b) {\n    a = a.replace(goog.string.internal.AMP_RE_, \"&amp;\").replace(goog.string.internal.LT_RE_, \"&lt;\").replace(goog.string.internal.GT_RE_, \"&gt;\").replace(goog.string.internal.QUOT_RE_, \"&quot;\").replace(goog.string.internal.SINGLE_QUOTE_RE_, \"&#39;\").replace(goog.string.internal.NULL_RE_, \"&#0;\");\n  } else {\n    if (!goog.string.internal.ALL_RE_.test(a)) {\n      return a;\n    }\n    -1 != a.indexOf(\"&\") && (a = a.replace(goog.string.internal.AMP_RE_, \"&amp;\"));\n    -1 != a.indexOf(\"<\") && (a = a.replace(goog.string.internal.LT_RE_, \"&lt;\"));\n    -1 != a.indexOf(\">\") && (a = a.replace(goog.string.internal.GT_RE_, \"&gt;\"));\n    -1 != a.indexOf('\"') && (a = a.replace(goog.string.internal.QUOT_RE_, \"&quot;\"));\n    -1 != a.indexOf(\"'\") && (a = a.replace(goog.string.internal.SINGLE_QUOTE_RE_, \"&#39;\"));\n    -1 != a.indexOf(\"\\x00\") && (a = a.replace(goog.string.internal.NULL_RE_, \"&#0;\"));\n  }\n  return a;\n};\ngoog.string.internal.AMP_RE_ = /&/g;\ngoog.string.internal.LT_RE_ = /</g;\ngoog.string.internal.GT_RE_ = />/g;\ngoog.string.internal.QUOT_RE_ = /\"/g;\ngoog.string.internal.SINGLE_QUOTE_RE_ = /'/g;\ngoog.string.internal.NULL_RE_ = /\\x00/g;\ngoog.string.internal.ALL_RE_ = /[\\x00&<>\"']/;\ngoog.string.internal.whitespaceEscape = function(a, b) {\n  return goog.string.internal.newLineToBr(a.replace(/  /g, \" &#160;\"), b);\n};\ngoog.string.internal.contains = function(a, b) {\n  return -1 != a.indexOf(b);\n};\ngoog.string.internal.caseInsensitiveContains = function(a, b) {\n  return goog.string.internal.contains(a.toLowerCase(), b.toLowerCase());\n};\ngoog.string.internal.compareVersions = function(a, b) {\n  for (var c = 0, d = goog.string.internal.trim(String(a)).split(\".\"), e = goog.string.internal.trim(String(b)).split(\".\"), f = Math.max(d.length, e.length), g = 0; 0 == c && g < f; g++) {\n    var h = d[g] || \"\", k = e[g] || \"\";\n    do {\n      h = /(\\d*)(\\D*)(.*)/.exec(h) || [\"\", \"\", \"\", \"\"];\n      k = /(\\d*)(\\D*)(.*)/.exec(k) || [\"\", \"\", \"\", \"\"];\n      if (0 == h[0].length && 0 == k[0].length) {\n        break;\n      }\n      c = 0 == h[1].length ? 0 : parseInt(h[1], 10);\n      var l = 0 == k[1].length ? 0 : parseInt(k[1], 10);\n      c = goog.string.internal.compareElements_(c, l) || goog.string.internal.compareElements_(0 == h[2].length, 0 == k[2].length) || goog.string.internal.compareElements_(h[2], k[2]);\n      h = h[3];\n      k = k[3];\n    } while (0 == c);\n  }\n  return c;\n};\ngoog.string.internal.compareElements_ = function(a, b) {\n  return a < b ? -1 : a > b ? 1 : 0;\n};\ngoog.html.SafeUrl = function(a, b) {\n  this.privateDoNotAccessOrElseSafeUrlWrappedValue_ = a === goog.html.SafeUrl.CONSTRUCTOR_TOKEN_PRIVATE_ && b || \"\";\n  this.SAFE_URL_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ = goog.html.SafeUrl.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_;\n};\ngoog.html.SafeUrl.INNOCUOUS_STRING = \"about:invalid#zClosurez\";\ngoog.html.SafeUrl.prototype.implementsGoogStringTypedString = !0;\ngoog.html.SafeUrl.prototype.getTypedStringValue = function() {\n  return this.privateDoNotAccessOrElseSafeUrlWrappedValue_.toString();\n};\ngoog.html.SafeUrl.prototype.implementsGoogI18nBidiDirectionalString = !0;\ngoog.html.SafeUrl.prototype.getDirection = function() {\n  return goog.i18n.bidi.Dir.LTR;\n};\ngoog.DEBUG && (goog.html.SafeUrl.prototype.toString = function() {\n  return \"SafeUrl{\" + this.privateDoNotAccessOrElseSafeUrlWrappedValue_ + \"}\";\n});\ngoog.html.SafeUrl.unwrap = function(a) {\n  return goog.html.SafeUrl.unwrapTrustedURL(a).toString();\n};\ngoog.html.SafeUrl.unwrapTrustedURL = function(a) {\n  if (a instanceof goog.html.SafeUrl && a.constructor === goog.html.SafeUrl && a.SAFE_URL_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ === goog.html.SafeUrl.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_) {\n    return a.privateDoNotAccessOrElseSafeUrlWrappedValue_;\n  }\n  goog.asserts.fail(\"expected object of type SafeUrl, got '\" + a + \"' of type \" + goog.typeOf(a));\n  return \"type_error:SafeUrl\";\n};\ngoog.html.SafeUrl.fromConstant = function(a) {\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(goog.string.Const.unwrap(a));\n};\ngoog.html.SAFE_MIME_TYPE_PATTERN_ = /^(?:audio\\/(?:3gpp2|3gpp|aac|L16|midi|mp3|mp4|mpeg|oga|ogg|opus|x-m4a|x-wav|wav|webm)|image\\/(?:bmp|gif|jpeg|jpg|png|tiff|webp|x-icon)|text\\/csv|video\\/(?:mpeg|mp4|ogg|webm|quicktime))(?:;\\w+=(?:\\w+|\"[\\w;=]+\"))*$/i;\ngoog.html.SafeUrl.isSafeMimeType = function(a) {\n  return goog.html.SAFE_MIME_TYPE_PATTERN_.test(a);\n};\ngoog.html.SafeUrl.fromBlob = function(a) {\n  a = goog.html.SAFE_MIME_TYPE_PATTERN_.test(a.type) ? goog.fs.url.createObjectUrl(a) : goog.html.SafeUrl.INNOCUOUS_STRING;\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(a);\n};\ngoog.html.DATA_URL_PATTERN_ = /^data:([^,]*);base64,[a-z0-9+\\/]+=*$/i;\ngoog.html.SafeUrl.fromDataUrl = function(a) {\n  a = a.replace(/(%0A|%0D)/g, \"\");\n  var b = a.match(goog.html.DATA_URL_PATTERN_);\n  b = b && goog.html.SAFE_MIME_TYPE_PATTERN_.test(b[1]);\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(b ? a : goog.html.SafeUrl.INNOCUOUS_STRING);\n};\ngoog.html.SafeUrl.fromTelUrl = function(a) {\n  goog.string.internal.caseInsensitiveStartsWith(a, \"tel:\") || (a = goog.html.SafeUrl.INNOCUOUS_STRING);\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(a);\n};\ngoog.html.SIP_URL_PATTERN_ = /^sip[s]?:[+a-z0-9_.!$%&'*\\/=^`{|}~-]+@([a-z0-9-]+\\.)+[a-z0-9]{2,63}$/i;\ngoog.html.SafeUrl.fromSipUrl = function(a) {\n  goog.html.SIP_URL_PATTERN_.test(decodeURIComponent(a)) || (a = goog.html.SafeUrl.INNOCUOUS_STRING);\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(a);\n};\ngoog.html.SafeUrl.fromFacebookMessengerUrl = function(a) {\n  goog.string.internal.caseInsensitiveStartsWith(a, \"fb-messenger://share\") || (a = goog.html.SafeUrl.INNOCUOUS_STRING);\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(a);\n};\ngoog.html.SafeUrl.fromWhatsAppUrl = function(a) {\n  goog.string.internal.caseInsensitiveStartsWith(a, \"whatsapp://send\") || (a = goog.html.SafeUrl.INNOCUOUS_STRING);\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(a);\n};\ngoog.html.SafeUrl.fromSmsUrl = function(a) {\n  goog.string.internal.caseInsensitiveStartsWith(a, \"sms:\") && goog.html.SafeUrl.isSmsUrlBodyValid_(a) || (a = goog.html.SafeUrl.INNOCUOUS_STRING);\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(a);\n};\ngoog.html.SafeUrl.isSmsUrlBodyValid_ = function(a) {\n  var b = a.indexOf(\"#\");\n  0 < b && (a = a.substring(0, b));\n  b = a.match(/[?&]body=/gi);\n  if (!b) {\n    return !0;\n  }\n  if (1 < b.length) {\n    return !1;\n  }\n  a = a.match(/[?&]body=([^&]*)/)[1];\n  if (!a) {\n    return !0;\n  }\n  try {\n    decodeURIComponent(a);\n  } catch (c) {\n    return !1;\n  }\n  return /^(?:[a-z0-9\\-_.~]|%[0-9a-f]{2})+$/i.test(a);\n};\ngoog.html.SafeUrl.fromSshUrl = function(a) {\n  goog.string.internal.caseInsensitiveStartsWith(a, \"ssh://\") || (a = goog.html.SafeUrl.INNOCUOUS_STRING);\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(a);\n};\ngoog.html.SafeUrl.sanitizeChromeExtensionUrl = function(a, b) {\n  return goog.html.SafeUrl.sanitizeExtensionUrl_(/^chrome-extension:\\/\\/([^\\/]+)\\//, a, b);\n};\ngoog.html.SafeUrl.sanitizeFirefoxExtensionUrl = function(a, b) {\n  return goog.html.SafeUrl.sanitizeExtensionUrl_(/^moz-extension:\\/\\/([^\\/]+)\\//, a, b);\n};\ngoog.html.SafeUrl.sanitizeEdgeExtensionUrl = function(a, b) {\n  return goog.html.SafeUrl.sanitizeExtensionUrl_(/^ms-browser-extension:\\/\\/([^\\/]+)\\//, a, b);\n};\ngoog.html.SafeUrl.sanitizeExtensionUrl_ = function(a, b, c) {\n  (a = a.exec(b)) ? (a = a[1], -1 == (c instanceof goog.string.Const ? [goog.string.Const.unwrap(c)] : c.map(function(a) {\n    return goog.string.Const.unwrap(a);\n  })).indexOf(a) && (b = goog.html.SafeUrl.INNOCUOUS_STRING)) : b = goog.html.SafeUrl.INNOCUOUS_STRING;\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(b);\n};\ngoog.html.SafeUrl.fromTrustedResourceUrl = function(a) {\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(goog.html.TrustedResourceUrl.unwrap(a));\n};\ngoog.html.SAFE_URL_PATTERN_ = /^(?:(?:https?|mailto|ftp):|[^:/?#]*(?:[/?#]|$))/i;\ngoog.html.SafeUrl.SAFE_URL_PATTERN = goog.html.SAFE_URL_PATTERN_;\ngoog.html.SafeUrl.sanitize = function(a) {\n  if (a instanceof goog.html.SafeUrl) {\n    return a;\n  }\n  a = \"object\" == typeof a && a.implementsGoogStringTypedString ? a.getTypedStringValue() : String(a);\n  goog.html.SAFE_URL_PATTERN_.test(a) || (a = goog.html.SafeUrl.INNOCUOUS_STRING);\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(a);\n};\ngoog.html.SafeUrl.sanitizeAssertUnchanged = function(a, b) {\n  if (a instanceof goog.html.SafeUrl) {\n    return a;\n  }\n  a = \"object\" == typeof a && a.implementsGoogStringTypedString ? a.getTypedStringValue() : String(a);\n  if (b && /^data:/i.test(a)) {\n    var c = goog.html.SafeUrl.fromDataUrl(a);\n    if (c.getTypedStringValue() == a) {\n      return c;\n    }\n  }\n  goog.asserts.assert(goog.html.SAFE_URL_PATTERN_.test(a), \"%s does not match the safe URL pattern\", a) || (a = goog.html.SafeUrl.INNOCUOUS_STRING);\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(a);\n};\ngoog.html.SafeUrl.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ = {};\ngoog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse = function(a) {\n  return new goog.html.SafeUrl(goog.html.SafeUrl.CONSTRUCTOR_TOKEN_PRIVATE_, goog.html.trustedtypes.PRIVATE_DO_NOT_ACCESS_OR_ELSE_POLICY ? goog.html.trustedtypes.PRIVATE_DO_NOT_ACCESS_OR_ELSE_POLICY.createURL(a) : a);\n};\ngoog.html.SafeUrl.ABOUT_BLANK = goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(\"about:blank\");\ngoog.html.SafeUrl.CONSTRUCTOR_TOKEN_PRIVATE_ = {};\ngoog.html.SafeStyle = function() {\n  this.privateDoNotAccessOrElseSafeStyleWrappedValue_ = \"\";\n  this.SAFE_STYLE_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ = goog.html.SafeStyle.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_;\n};\ngoog.html.SafeStyle.prototype.implementsGoogStringTypedString = !0;\ngoog.html.SafeStyle.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ = {};\ngoog.html.SafeStyle.fromConstant = function(a) {\n  a = goog.string.Const.unwrap(a);\n  if (0 === a.length) {\n    return goog.html.SafeStyle.EMPTY;\n  }\n  goog.asserts.assert(goog.string.internal.endsWith(a, \";\"), \"Last character of style string is not ';': \" + a);\n  goog.asserts.assert(goog.string.internal.contains(a, \":\"), \"Style string must contain at least one ':', to specify a \\\"name: value\\\" pair: \" + a);\n  return goog.html.SafeStyle.createSafeStyleSecurityPrivateDoNotAccessOrElse(a);\n};\ngoog.html.SafeStyle.prototype.getTypedStringValue = function() {\n  return this.privateDoNotAccessOrElseSafeStyleWrappedValue_;\n};\ngoog.DEBUG && (goog.html.SafeStyle.prototype.toString = function() {\n  return \"SafeStyle{\" + this.privateDoNotAccessOrElseSafeStyleWrappedValue_ + \"}\";\n});\ngoog.html.SafeStyle.unwrap = function(a) {\n  if (a instanceof goog.html.SafeStyle && a.constructor === goog.html.SafeStyle && a.SAFE_STYLE_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ === goog.html.SafeStyle.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_) {\n    return a.privateDoNotAccessOrElseSafeStyleWrappedValue_;\n  }\n  goog.asserts.fail(\"expected object of type SafeStyle, got '\" + a + \"' of type \" + goog.typeOf(a));\n  return \"type_error:SafeStyle\";\n};\ngoog.html.SafeStyle.createSafeStyleSecurityPrivateDoNotAccessOrElse = function(a) {\n  return (new goog.html.SafeStyle).initSecurityPrivateDoNotAccessOrElse_(a);\n};\ngoog.html.SafeStyle.prototype.initSecurityPrivateDoNotAccessOrElse_ = function(a) {\n  this.privateDoNotAccessOrElseSafeStyleWrappedValue_ = a;\n  return this;\n};\ngoog.html.SafeStyle.EMPTY = goog.html.SafeStyle.createSafeStyleSecurityPrivateDoNotAccessOrElse(\"\");\ngoog.html.SafeStyle.INNOCUOUS_STRING = \"zClosurez\";\ngoog.html.SafeStyle.create = function(a) {\n  var b = \"\", c;\n  for (c in a) {\n    if (!/^[-_a-zA-Z0-9]+$/.test(c)) {\n      throw Error(\"Name allows only [-_a-zA-Z0-9], got: \" + c);\n    }\n    var d = a[c];\n    null != d && (d = goog.isArray(d) ? goog.array.map(d, goog.html.SafeStyle.sanitizePropertyValue_).join(\" \") : goog.html.SafeStyle.sanitizePropertyValue_(d), b += c + \":\" + d + \";\");\n  }\n  return b ? goog.html.SafeStyle.createSafeStyleSecurityPrivateDoNotAccessOrElse(b) : goog.html.SafeStyle.EMPTY;\n};\ngoog.html.SafeStyle.sanitizePropertyValue_ = function(a) {\n  if (a instanceof goog.html.SafeUrl) {\n    return 'url(\"' + goog.html.SafeUrl.unwrap(a).replace(/</g, \"%3c\").replace(/[\\\\\"]/g, \"\\\\$&\") + '\")';\n  }\n  a = a instanceof goog.string.Const ? goog.string.Const.unwrap(a) : goog.html.SafeStyle.sanitizePropertyValueString_(String(a));\n  if (/[{;}]/.test(a)) {\n    throw new goog.asserts.AssertionError(\"Value does not allow [{;}], got: %s.\", [a]);\n  }\n  return a;\n};\ngoog.html.SafeStyle.sanitizePropertyValueString_ = function(a) {\n  var b = a.replace(goog.html.SafeStyle.FUNCTIONS_RE_, \"$1\").replace(goog.html.SafeStyle.FUNCTIONS_RE_, \"$1\").replace(goog.html.SafeStyle.URL_RE_, \"url\");\n  if (goog.html.SafeStyle.VALUE_RE_.test(b)) {\n    if (goog.html.SafeStyle.COMMENT_RE_.test(a)) {\n      return goog.asserts.fail(\"String value disallows comments, got: \" + a), goog.html.SafeStyle.INNOCUOUS_STRING;\n    }\n    if (!goog.html.SafeStyle.hasBalancedQuotes_(a)) {\n      return goog.asserts.fail(\"String value requires balanced quotes, got: \" + a), goog.html.SafeStyle.INNOCUOUS_STRING;\n    }\n    if (!goog.html.SafeStyle.hasBalancedSquareBrackets_(a)) {\n      return goog.asserts.fail(\"String value requires balanced square brackets and one identifier per pair of brackets, got: \" + a), goog.html.SafeStyle.INNOCUOUS_STRING;\n    }\n  } else {\n    return goog.asserts.fail(\"String value allows only \" + goog.html.SafeStyle.VALUE_ALLOWED_CHARS_ + \" and simple functions, got: \" + a), goog.html.SafeStyle.INNOCUOUS_STRING;\n  }\n  return goog.html.SafeStyle.sanitizeUrl_(a);\n};\ngoog.html.SafeStyle.hasBalancedQuotes_ = function(a) {\n  for (var b = !0, c = !0, d = 0; d < a.length; d++) {\n    var e = a.charAt(d);\n    \"'\" == e && c ? b = !b : '\"' == e && b && (c = !c);\n  }\n  return b && c;\n};\ngoog.html.SafeStyle.hasBalancedSquareBrackets_ = function(a) {\n  for (var b = !0, c = /^[-_a-zA-Z0-9]$/, d = 0; d < a.length; d++) {\n    var e = a.charAt(d);\n    if (\"]\" == e) {\n      if (b) {\n        return !1;\n      }\n      b = !0;\n    } else {\n      if (\"[\" == e) {\n        if (!b) {\n          return !1;\n        }\n        b = !1;\n      } else {\n        if (!b && !c.test(e)) {\n          return !1;\n        }\n      }\n    }\n  }\n  return b;\n};\ngoog.html.SafeStyle.VALUE_ALLOWED_CHARS_ = \"[-,.\\\"'%_!# a-zA-Z0-9\\\\[\\\\]]\";\ngoog.html.SafeStyle.VALUE_RE_ = new RegExp(\"^\" + goog.html.SafeStyle.VALUE_ALLOWED_CHARS_ + \"+$\");\ngoog.html.SafeStyle.URL_RE_ = RegExp(\"\\\\b(url\\\\([ \\t\\n]*)('[ -&(-\\\\[\\\\]-~]*'|\\\"[ !#-\\\\[\\\\]-~]*\\\"|[!#-&*-\\\\[\\\\]-~]*)([ \\t\\n]*\\\\))\", \"g\");\ngoog.html.SafeStyle.ALLOWED_FUNCTIONS_ = \"calc cubic-bezier fit-content hsl hsla matrix minmax repeat rgb rgba (rotate|scale|translate)(X|Y|Z|3d)?\".split(\" \");\ngoog.html.SafeStyle.FUNCTIONS_RE_ = new RegExp(\"\\\\b(\" + goog.html.SafeStyle.ALLOWED_FUNCTIONS_.join(\"|\") + \")\\\\([-+*/0-9a-z.%\\\\[\\\\], ]+\\\\)\", \"g\");\ngoog.html.SafeStyle.COMMENT_RE_ = /\\/\\*/;\ngoog.html.SafeStyle.sanitizeUrl_ = function(a) {\n  return a.replace(goog.html.SafeStyle.URL_RE_, function(a, c, d, e) {\n    var b = \"\";\n    d = d.replace(/^(['\"])(.*)\\1$/, function(a, c, d) {\n      b = c;\n      return d;\n    });\n    a = goog.html.SafeUrl.sanitize(d).getTypedStringValue();\n    return c + b + a + b + e;\n  });\n};\ngoog.html.SafeStyle.concat = function(a) {\n  var b = \"\", c = function(a) {\n    goog.isArray(a) ? goog.array.forEach(a, c) : b += goog.html.SafeStyle.unwrap(a);\n  };\n  goog.array.forEach(arguments, c);\n  return b ? goog.html.SafeStyle.createSafeStyleSecurityPrivateDoNotAccessOrElse(b) : goog.html.SafeStyle.EMPTY;\n};\ngoog.html.SafeStyleSheet = function() {\n  this.privateDoNotAccessOrElseSafeStyleSheetWrappedValue_ = \"\";\n  this.SAFE_STYLE_SHEET_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ = goog.html.SafeStyleSheet.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_;\n};\ngoog.html.SafeStyleSheet.prototype.implementsGoogStringTypedString = !0;\ngoog.html.SafeStyleSheet.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ = {};\ngoog.html.SafeStyleSheet.createRule = function(a, b) {\n  if (goog.string.internal.contains(a, \"<\")) {\n    throw Error(\"Selector does not allow '<', got: \" + a);\n  }\n  var c = a.replace(/('|\")((?!\\1)[^\\r\\n\\f\\\\]|\\\\[\\s\\S])*\\1/g, \"\");\n  if (!/^[-_a-zA-Z0-9#.:* ,>+~[\\]()=^$|]+$/.test(c)) {\n    throw Error(\"Selector allows only [-_a-zA-Z0-9#.:* ,>+~[\\\\]()=^$|] and strings, got: \" + a);\n  }\n  if (!goog.html.SafeStyleSheet.hasBalancedBrackets_(c)) {\n    throw Error(\"() and [] in selector must be balanced, got: \" + a);\n  }\n  b instanceof goog.html.SafeStyle || (b = goog.html.SafeStyle.create(b));\n  c = a + \"{\" + goog.html.SafeStyle.unwrap(b).replace(/</g, \"\\\\3C \") + \"}\";\n  return goog.html.SafeStyleSheet.createSafeStyleSheetSecurityPrivateDoNotAccessOrElse(c);\n};\ngoog.html.SafeStyleSheet.hasBalancedBrackets_ = function(a) {\n  for (var b = {\"(\":\")\", \"[\":\"]\"}, c = [], d = 0; d < a.length; d++) {\n    var e = a[d];\n    if (b[e]) {\n      c.push(b[e]);\n    } else {\n      if (goog.object.contains(b, e) && c.pop() != e) {\n        return !1;\n      }\n    }\n  }\n  return 0 == c.length;\n};\ngoog.html.SafeStyleSheet.concat = function(a) {\n  var b = \"\", c = function(a) {\n    goog.isArray(a) ? goog.array.forEach(a, c) : b += goog.html.SafeStyleSheet.unwrap(a);\n  };\n  goog.array.forEach(arguments, c);\n  return goog.html.SafeStyleSheet.createSafeStyleSheetSecurityPrivateDoNotAccessOrElse(b);\n};\ngoog.html.SafeStyleSheet.fromConstant = function(a) {\n  a = goog.string.Const.unwrap(a);\n  if (0 === a.length) {\n    return goog.html.SafeStyleSheet.EMPTY;\n  }\n  goog.asserts.assert(!goog.string.internal.contains(a, \"<\"), \"Forbidden '<' character in style sheet string: \" + a);\n  return goog.html.SafeStyleSheet.createSafeStyleSheetSecurityPrivateDoNotAccessOrElse(a);\n};\ngoog.html.SafeStyleSheet.prototype.getTypedStringValue = function() {\n  return this.privateDoNotAccessOrElseSafeStyleSheetWrappedValue_;\n};\ngoog.DEBUG && (goog.html.SafeStyleSheet.prototype.toString = function() {\n  return \"SafeStyleSheet{\" + this.privateDoNotAccessOrElseSafeStyleSheetWrappedValue_ + \"}\";\n});\ngoog.html.SafeStyleSheet.unwrap = function(a) {\n  if (a instanceof goog.html.SafeStyleSheet && a.constructor === goog.html.SafeStyleSheet && a.SAFE_STYLE_SHEET_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ === goog.html.SafeStyleSheet.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_) {\n    return a.privateDoNotAccessOrElseSafeStyleSheetWrappedValue_;\n  }\n  goog.asserts.fail(\"expected object of type SafeStyleSheet, got '\" + a + \"' of type \" + goog.typeOf(a));\n  return \"type_error:SafeStyleSheet\";\n};\ngoog.html.SafeStyleSheet.createSafeStyleSheetSecurityPrivateDoNotAccessOrElse = function(a) {\n  return (new goog.html.SafeStyleSheet).initSecurityPrivateDoNotAccessOrElse_(a);\n};\ngoog.html.SafeStyleSheet.prototype.initSecurityPrivateDoNotAccessOrElse_ = function(a) {\n  this.privateDoNotAccessOrElseSafeStyleSheetWrappedValue_ = a;\n  return this;\n};\ngoog.html.SafeStyleSheet.EMPTY = goog.html.SafeStyleSheet.createSafeStyleSheetSecurityPrivateDoNotAccessOrElse(\"\");\ngoog.labs = {};\ngoog.labs.userAgent = {};\ngoog.labs.userAgent.util = {};\ngoog.labs.userAgent.util.getNativeUserAgentString_ = function() {\n  var a = goog.labs.userAgent.util.getNavigator_();\n  return a && (a = a.userAgent) ? a : \"\";\n};\ngoog.labs.userAgent.util.getNavigator_ = function() {\n  return goog.global.navigator;\n};\ngoog.labs.userAgent.util.userAgent_ = goog.labs.userAgent.util.getNativeUserAgentString_();\ngoog.labs.userAgent.util.setUserAgent = function(a) {\n  goog.labs.userAgent.util.userAgent_ = a || goog.labs.userAgent.util.getNativeUserAgentString_();\n};\ngoog.labs.userAgent.util.getUserAgent = function() {\n  return goog.labs.userAgent.util.userAgent_;\n};\ngoog.labs.userAgent.util.matchUserAgent = function(a) {\n  var b = goog.labs.userAgent.util.getUserAgent();\n  return goog.string.internal.contains(b, a);\n};\ngoog.labs.userAgent.util.matchUserAgentIgnoreCase = function(a) {\n  var b = goog.labs.userAgent.util.getUserAgent();\n  return goog.string.internal.caseInsensitiveContains(b, a);\n};\ngoog.labs.userAgent.util.extractVersionTuples = function(a) {\n  for (var b = RegExp(\"(\\\\w[\\\\w ]+)/([^\\\\s]+)\\\\s*(?:\\\\((.*?)\\\\))?\", \"g\"), c = [], d; d = b.exec(a);) {\n    c.push([d[1], d[2], d[3] || void 0]);\n  }\n  return c;\n};\ngoog.labs.userAgent.browser = {};\ngoog.labs.userAgent.browser.matchOpera_ = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Opera\");\n};\ngoog.labs.userAgent.browser.matchIE_ = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Trident\") || goog.labs.userAgent.util.matchUserAgent(\"MSIE\");\n};\ngoog.labs.userAgent.browser.matchEdgeHtml_ = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Edge\");\n};\ngoog.labs.userAgent.browser.matchEdgeChromium_ = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Edg/\");\n};\ngoog.labs.userAgent.browser.matchOperaChromium_ = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"OPR\");\n};\ngoog.labs.userAgent.browser.matchFirefox_ = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Firefox\") || goog.labs.userAgent.util.matchUserAgent(\"FxiOS\");\n};\ngoog.labs.userAgent.browser.matchSafari_ = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Safari\") && !(goog.labs.userAgent.browser.matchChrome_() || goog.labs.userAgent.browser.matchCoast_() || goog.labs.userAgent.browser.matchOpera_() || goog.labs.userAgent.browser.matchEdgeHtml_() || goog.labs.userAgent.browser.matchEdgeChromium_() || goog.labs.userAgent.browser.matchOperaChromium_() || goog.labs.userAgent.browser.matchFirefox_() || goog.labs.userAgent.browser.isSilk() || goog.labs.userAgent.util.matchUserAgent(\"Android\"));\n};\ngoog.labs.userAgent.browser.matchCoast_ = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Coast\");\n};\ngoog.labs.userAgent.browser.matchIosWebview_ = function() {\n  return (goog.labs.userAgent.util.matchUserAgent(\"iPad\") || goog.labs.userAgent.util.matchUserAgent(\"iPhone\")) && !goog.labs.userAgent.browser.matchSafari_() && !goog.labs.userAgent.browser.matchChrome_() && !goog.labs.userAgent.browser.matchCoast_() && !goog.labs.userAgent.browser.matchFirefox_() && goog.labs.userAgent.util.matchUserAgent(\"AppleWebKit\");\n};\ngoog.labs.userAgent.browser.matchChrome_ = function() {\n  return (goog.labs.userAgent.util.matchUserAgent(\"Chrome\") || goog.labs.userAgent.util.matchUserAgent(\"CriOS\")) && !goog.labs.userAgent.browser.matchEdgeHtml_();\n};\ngoog.labs.userAgent.browser.matchAndroidBrowser_ = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Android\") && !(goog.labs.userAgent.browser.isChrome() || goog.labs.userAgent.browser.isFirefox() || goog.labs.userAgent.browser.isOpera() || goog.labs.userAgent.browser.isSilk());\n};\ngoog.labs.userAgent.browser.isOpera = goog.labs.userAgent.browser.matchOpera_;\ngoog.labs.userAgent.browser.isIE = goog.labs.userAgent.browser.matchIE_;\ngoog.labs.userAgent.browser.isEdge = goog.labs.userAgent.browser.matchEdgeHtml_;\ngoog.labs.userAgent.browser.isEdgeChromium = goog.labs.userAgent.browser.matchEdgeChromium_;\ngoog.labs.userAgent.browser.isOperaChromium = goog.labs.userAgent.browser.matchOperaChromium_;\ngoog.labs.userAgent.browser.isFirefox = goog.labs.userAgent.browser.matchFirefox_;\ngoog.labs.userAgent.browser.isSafari = goog.labs.userAgent.browser.matchSafari_;\ngoog.labs.userAgent.browser.isCoast = goog.labs.userAgent.browser.matchCoast_;\ngoog.labs.userAgent.browser.isIosWebview = goog.labs.userAgent.browser.matchIosWebview_;\ngoog.labs.userAgent.browser.isChrome = goog.labs.userAgent.browser.matchChrome_;\ngoog.labs.userAgent.browser.isAndroidBrowser = goog.labs.userAgent.browser.matchAndroidBrowser_;\ngoog.labs.userAgent.browser.isSilk = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Silk\");\n};\ngoog.labs.userAgent.browser.getVersion = function() {\n  function a(a) {\n    a = goog.array.find(a, d);\n    return c[a] || \"\";\n  }\n  var b = goog.labs.userAgent.util.getUserAgent();\n  if (goog.labs.userAgent.browser.isIE()) {\n    return goog.labs.userAgent.browser.getIEVersion_(b);\n  }\n  b = goog.labs.userAgent.util.extractVersionTuples(b);\n  var c = {};\n  goog.array.forEach(b, function(a) {\n    c[a[0]] = a[1];\n  });\n  var d = goog.partial(goog.object.containsKey, c);\n  return goog.labs.userAgent.browser.isOpera() ? a([\"Version\", \"Opera\"]) : goog.labs.userAgent.browser.isEdge() ? a([\"Edge\"]) : goog.labs.userAgent.browser.isEdgeChromium() ? a([\"Edg\"]) : goog.labs.userAgent.browser.isChrome() ? a([\"Chrome\", \"CriOS\"]) : (b = b[2]) && b[1] || \"\";\n};\ngoog.labs.userAgent.browser.isVersionOrHigher = function(a) {\n  return 0 <= goog.string.internal.compareVersions(goog.labs.userAgent.browser.getVersion(), a);\n};\ngoog.labs.userAgent.browser.getIEVersion_ = function(a) {\n  var b = /rv: *([\\d\\.]*)/.exec(a);\n  if (b && b[1]) {\n    return b[1];\n  }\n  b = \"\";\n  var c = /MSIE +([\\d\\.]+)/.exec(a);\n  if (c && c[1]) {\n    if (a = /Trident\\/(\\d.\\d)/.exec(a), \"7.0\" == c[1]) {\n      if (a && a[1]) {\n        switch(a[1]) {\n          case \"4.0\":\n            b = \"8.0\";\n            break;\n          case \"5.0\":\n            b = \"9.0\";\n            break;\n          case \"6.0\":\n            b = \"10.0\";\n            break;\n          case \"7.0\":\n            b = \"11.0\";\n        }\n      } else {\n        b = \"7.0\";\n      }\n    } else {\n      b = c[1];\n    }\n  }\n  return b;\n};\ngoog.html.SafeHtml = function() {\n  this.privateDoNotAccessOrElseSafeHtmlWrappedValue_ = \"\";\n  this.SAFE_HTML_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ = goog.html.SafeHtml.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_;\n  this.dir_ = null;\n};\ngoog.html.SafeHtml.ENABLE_ERROR_MESSAGES = goog.DEBUG;\ngoog.html.SafeHtml.SUPPORT_STYLE_ATTRIBUTE = !0;\ngoog.html.SafeHtml.prototype.implementsGoogI18nBidiDirectionalString = !0;\ngoog.html.SafeHtml.prototype.getDirection = function() {\n  return this.dir_;\n};\ngoog.html.SafeHtml.prototype.implementsGoogStringTypedString = !0;\ngoog.html.SafeHtml.prototype.getTypedStringValue = function() {\n  return this.privateDoNotAccessOrElseSafeHtmlWrappedValue_.toString();\n};\ngoog.DEBUG && (goog.html.SafeHtml.prototype.toString = function() {\n  return \"SafeHtml{\" + this.privateDoNotAccessOrElseSafeHtmlWrappedValue_ + \"}\";\n});\ngoog.html.SafeHtml.unwrap = function(a) {\n  return goog.html.SafeHtml.unwrapTrustedHTML(a).toString();\n};\ngoog.html.SafeHtml.unwrapTrustedHTML = function(a) {\n  if (a instanceof goog.html.SafeHtml && a.constructor === goog.html.SafeHtml && a.SAFE_HTML_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ === goog.html.SafeHtml.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_) {\n    return a.privateDoNotAccessOrElseSafeHtmlWrappedValue_;\n  }\n  goog.asserts.fail(\"expected object of type SafeHtml, got '\" + a + \"' of type \" + goog.typeOf(a));\n  return \"type_error:SafeHtml\";\n};\ngoog.html.SafeHtml.htmlEscape = function(a) {\n  if (a instanceof goog.html.SafeHtml) {\n    return a;\n  }\n  var b = \"object\" == typeof a, c = null;\n  b && a.implementsGoogI18nBidiDirectionalString && (c = a.getDirection());\n  a = b && a.implementsGoogStringTypedString ? a.getTypedStringValue() : String(a);\n  return goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(goog.string.internal.htmlEscape(a), c);\n};\ngoog.html.SafeHtml.htmlEscapePreservingNewlines = function(a) {\n  if (a instanceof goog.html.SafeHtml) {\n    return a;\n  }\n  a = goog.html.SafeHtml.htmlEscape(a);\n  return goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(goog.string.internal.newLineToBr(goog.html.SafeHtml.unwrap(a)), a.getDirection());\n};\ngoog.html.SafeHtml.htmlEscapePreservingNewlinesAndSpaces = function(a) {\n  if (a instanceof goog.html.SafeHtml) {\n    return a;\n  }\n  a = goog.html.SafeHtml.htmlEscape(a);\n  return goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(goog.string.internal.whitespaceEscape(goog.html.SafeHtml.unwrap(a)), a.getDirection());\n};\ngoog.html.SafeHtml.from = goog.html.SafeHtml.htmlEscape;\ngoog.html.SafeHtml.VALID_NAMES_IN_TAG_ = /^[a-zA-Z0-9-]+$/;\ngoog.html.SafeHtml.URL_ATTRIBUTES_ = {action:!0, cite:!0, data:!0, formaction:!0, href:!0, manifest:!0, poster:!0, src:!0};\ngoog.html.SafeHtml.NOT_ALLOWED_TAG_NAMES_ = {APPLET:!0, BASE:!0, EMBED:!0, IFRAME:!0, LINK:!0, MATH:!0, META:!0, OBJECT:!0, SCRIPT:!0, STYLE:!0, SVG:!0, TEMPLATE:!0};\ngoog.html.SafeHtml.create = function(a, b, c) {\n  goog.html.SafeHtml.verifyTagName(String(a));\n  return goog.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse(String(a), b, c);\n};\ngoog.html.SafeHtml.verifyTagName = function(a) {\n  if (!goog.html.SafeHtml.VALID_NAMES_IN_TAG_.test(a)) {\n    throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES ? \"Invalid tag name <\" + a + \">.\" : \"\");\n  }\n  if (a.toUpperCase() in goog.html.SafeHtml.NOT_ALLOWED_TAG_NAMES_) {\n    throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES ? \"Tag name <\" + a + \"> is not allowed for SafeHtml.\" : \"\");\n  }\n};\ngoog.html.SafeHtml.createIframe = function(a, b, c, d) {\n  a && goog.html.TrustedResourceUrl.unwrap(a);\n  var e = {};\n  e.src = a || null;\n  e.srcdoc = b && goog.html.SafeHtml.unwrap(b);\n  a = goog.html.SafeHtml.combineAttributes(e, {sandbox:\"\"}, c);\n  return goog.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse(\"iframe\", a, d);\n};\ngoog.html.SafeHtml.createSandboxIframe = function(a, b, c, d) {\n  if (!goog.html.SafeHtml.canUseSandboxIframe()) {\n    throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES ? \"The browser does not support sandboxed iframes.\" : \"\");\n  }\n  var e = {};\n  e.src = a ? goog.html.SafeUrl.unwrap(goog.html.SafeUrl.sanitize(a)) : null;\n  e.srcdoc = b || null;\n  e.sandbox = \"\";\n  a = goog.html.SafeHtml.combineAttributes(e, {}, c);\n  return goog.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse(\"iframe\", a, d);\n};\ngoog.html.SafeHtml.canUseSandboxIframe = function() {\n  return goog.global.HTMLIFrameElement && \"sandbox\" in goog.global.HTMLIFrameElement.prototype;\n};\ngoog.html.SafeHtml.createScriptSrc = function(a, b) {\n  goog.html.TrustedResourceUrl.unwrap(a);\n  var c = goog.html.SafeHtml.combineAttributes({src:a}, {}, b);\n  return goog.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse(\"script\", c);\n};\ngoog.html.SafeHtml.createScript = function(a, b) {\n  for (var c in b) {\n    var d = c.toLowerCase();\n    if (\"language\" == d || \"src\" == d || \"text\" == d || \"type\" == d) {\n      throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES ? 'Cannot set \"' + d + '\" attribute' : \"\");\n    }\n  }\n  c = \"\";\n  a = goog.array.concat(a);\n  for (d = 0; d < a.length; d++) {\n    c += goog.html.SafeScript.unwrap(a[d]);\n  }\n  c = goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(c, goog.i18n.bidi.Dir.NEUTRAL);\n  return goog.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse(\"script\", b, c);\n};\ngoog.html.SafeHtml.createStyle = function(a, b) {\n  var c = goog.html.SafeHtml.combineAttributes({type:\"text/css\"}, {}, b), d = \"\";\n  a = goog.array.concat(a);\n  for (var e = 0; e < a.length; e++) {\n    d += goog.html.SafeStyleSheet.unwrap(a[e]);\n  }\n  d = goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(d, goog.i18n.bidi.Dir.NEUTRAL);\n  return goog.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse(\"style\", c, d);\n};\ngoog.html.SafeHtml.createMetaRefresh = function(a, b) {\n  var c = goog.html.SafeUrl.unwrap(goog.html.SafeUrl.sanitize(a));\n  (goog.labs.userAgent.browser.isIE() || goog.labs.userAgent.browser.isEdge()) && goog.string.internal.contains(c, \";\") && (c = \"'\" + c.replace(/'/g, \"%27\") + \"'\");\n  return goog.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse(\"meta\", {\"http-equiv\":\"refresh\", content:(b || 0) + \"; url=\" + c});\n};\ngoog.html.SafeHtml.getAttrNameAndValue_ = function(a, b, c) {\n  if (c instanceof goog.string.Const) {\n    c = goog.string.Const.unwrap(c);\n  } else {\n    if (\"style\" == b.toLowerCase()) {\n      if (goog.html.SafeHtml.SUPPORT_STYLE_ATTRIBUTE) {\n        c = goog.html.SafeHtml.getStyleValue_(c);\n      } else {\n        throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES ? 'Attribute \"style\" not supported.' : \"\");\n      }\n    } else {\n      if (/^on/i.test(b)) {\n        throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES ? 'Attribute \"' + b + '\" requires goog.string.Const value, \"' + c + '\" given.' : \"\");\n      }\n      if (b.toLowerCase() in goog.html.SafeHtml.URL_ATTRIBUTES_) {\n        if (c instanceof goog.html.TrustedResourceUrl) {\n          c = goog.html.TrustedResourceUrl.unwrap(c);\n        } else {\n          if (c instanceof goog.html.SafeUrl) {\n            c = goog.html.SafeUrl.unwrap(c);\n          } else {\n            if (\"string\" === typeof c) {\n              c = goog.html.SafeUrl.sanitize(c).getTypedStringValue();\n            } else {\n              throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES ? 'Attribute \"' + b + '\" on tag \"' + a + '\" requires goog.html.SafeUrl, goog.string.Const, or string, value \"' + c + '\" given.' : \"\");\n            }\n          }\n        }\n      }\n    }\n  }\n  c.implementsGoogStringTypedString && (c = c.getTypedStringValue());\n  goog.asserts.assert(\"string\" === typeof c || \"number\" === typeof c, \"String or number value expected, got \" + typeof c + \" with value: \" + c);\n  return b + '=\"' + goog.string.internal.htmlEscape(String(c)) + '\"';\n};\ngoog.html.SafeHtml.getStyleValue_ = function(a) {\n  if (!goog.isObject(a)) {\n    throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES ? 'The \"style\" attribute requires goog.html.SafeStyle or map of style properties, ' + typeof a + \" given: \" + a : \"\");\n  }\n  a instanceof goog.html.SafeStyle || (a = goog.html.SafeStyle.create(a));\n  return goog.html.SafeStyle.unwrap(a);\n};\ngoog.html.SafeHtml.createWithDir = function(a, b, c, d) {\n  b = goog.html.SafeHtml.create(b, c, d);\n  b.dir_ = a;\n  return b;\n};\ngoog.html.SafeHtml.join = function(a, b) {\n  var c = goog.html.SafeHtml.htmlEscape(a), d = c.getDirection(), e = [], f = function(a) {\n    goog.isArray(a) ? goog.array.forEach(a, f) : (a = goog.html.SafeHtml.htmlEscape(a), e.push(goog.html.SafeHtml.unwrap(a)), a = a.getDirection(), d == goog.i18n.bidi.Dir.NEUTRAL ? d = a : a != goog.i18n.bidi.Dir.NEUTRAL && d != a && (d = null));\n  };\n  goog.array.forEach(b, f);\n  return goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(e.join(goog.html.SafeHtml.unwrap(c)), d);\n};\ngoog.html.SafeHtml.concat = function(a) {\n  return goog.html.SafeHtml.join(goog.html.SafeHtml.EMPTY, Array.prototype.slice.call(arguments));\n};\ngoog.html.SafeHtml.concatWithDir = function(a, b) {\n  var c = goog.html.SafeHtml.concat(goog.array.slice(arguments, 1));\n  c.dir_ = a;\n  return c;\n};\ngoog.html.SafeHtml.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ = {};\ngoog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse = function(a, b) {\n  return (new goog.html.SafeHtml).initSecurityPrivateDoNotAccessOrElse_(a, b);\n};\ngoog.html.SafeHtml.prototype.initSecurityPrivateDoNotAccessOrElse_ = function(a, b) {\n  this.privateDoNotAccessOrElseSafeHtmlWrappedValue_ = goog.html.trustedtypes.PRIVATE_DO_NOT_ACCESS_OR_ELSE_POLICY ? goog.html.trustedtypes.PRIVATE_DO_NOT_ACCESS_OR_ELSE_POLICY.createHTML(a) : a;\n  this.dir_ = b;\n  return this;\n};\ngoog.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse = function(a, b, c) {\n  var d = null;\n  var e = \"<\" + a + goog.html.SafeHtml.stringifyAttributes(a, b);\n  null == c ? c = [] : goog.isArray(c) || (c = [c]);\n  goog.dom.tags.isVoidTag(a.toLowerCase()) ? (goog.asserts.assert(!c.length, \"Void tag <\" + a + \"> does not allow content.\"), e += \">\") : (d = goog.html.SafeHtml.concat(c), e += \">\" + goog.html.SafeHtml.unwrap(d) + \"</\" + a + \">\", d = d.getDirection());\n  (a = b && b.dir) && (d = /^(ltr|rtl|auto)$/i.test(a) ? goog.i18n.bidi.Dir.NEUTRAL : null);\n  return goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(e, d);\n};\ngoog.html.SafeHtml.stringifyAttributes = function(a, b) {\n  var c = \"\";\n  if (b) {\n    for (var d in b) {\n      if (!goog.html.SafeHtml.VALID_NAMES_IN_TAG_.test(d)) {\n        throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES ? 'Invalid attribute name \"' + d + '\".' : \"\");\n      }\n      var e = b[d];\n      null != e && (c += \" \" + goog.html.SafeHtml.getAttrNameAndValue_(a, d, e));\n    }\n  }\n  return c;\n};\ngoog.html.SafeHtml.combineAttributes = function(a, b, c) {\n  var d = {}, e;\n  for (e in a) {\n    goog.asserts.assert(e.toLowerCase() == e, \"Must be lower case\"), d[e] = a[e];\n  }\n  for (e in b) {\n    goog.asserts.assert(e.toLowerCase() == e, \"Must be lower case\"), d[e] = b[e];\n  }\n  if (c) {\n    for (e in c) {\n      var f = e.toLowerCase();\n      if (f in a) {\n        throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES ? 'Cannot override \"' + f + '\" attribute, got \"' + e + '\" with value \"' + c[e] + '\"' : \"\");\n      }\n      f in b && delete d[f];\n      d[e] = c[e];\n    }\n  }\n  return d;\n};\ngoog.html.SafeHtml.DOCTYPE_HTML = goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(\"<!DOCTYPE html>\", goog.i18n.bidi.Dir.NEUTRAL);\ngoog.html.SafeHtml.EMPTY = goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(\"\", goog.i18n.bidi.Dir.NEUTRAL);\ngoog.html.SafeHtml.BR = goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(\"<br>\", goog.i18n.bidi.Dir.NEUTRAL);\ngoog.html.uncheckedconversions = {};\ngoog.html.uncheckedconversions.safeHtmlFromStringKnownToSatisfyTypeContract = function(a, b, c) {\n  goog.asserts.assertString(goog.string.Const.unwrap(a), \"must provide justification\");\n  goog.asserts.assert(!goog.string.internal.isEmptyOrWhitespace(goog.string.Const.unwrap(a)), \"must provide non-empty justification\");\n  return goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(b, c || null);\n};\ngoog.html.uncheckedconversions.safeScriptFromStringKnownToSatisfyTypeContract = function(a, b) {\n  goog.asserts.assertString(goog.string.Const.unwrap(a), \"must provide justification\");\n  goog.asserts.assert(!goog.string.internal.isEmptyOrWhitespace(goog.string.Const.unwrap(a)), \"must provide non-empty justification\");\n  return goog.html.SafeScript.createSafeScriptSecurityPrivateDoNotAccessOrElse(b);\n};\ngoog.html.uncheckedconversions.safeStyleFromStringKnownToSatisfyTypeContract = function(a, b) {\n  goog.asserts.assertString(goog.string.Const.unwrap(a), \"must provide justification\");\n  goog.asserts.assert(!goog.string.internal.isEmptyOrWhitespace(goog.string.Const.unwrap(a)), \"must provide non-empty justification\");\n  return goog.html.SafeStyle.createSafeStyleSecurityPrivateDoNotAccessOrElse(b);\n};\ngoog.html.uncheckedconversions.safeStyleSheetFromStringKnownToSatisfyTypeContract = function(a, b) {\n  goog.asserts.assertString(goog.string.Const.unwrap(a), \"must provide justification\");\n  goog.asserts.assert(!goog.string.internal.isEmptyOrWhitespace(goog.string.Const.unwrap(a)), \"must provide non-empty justification\");\n  return goog.html.SafeStyleSheet.createSafeStyleSheetSecurityPrivateDoNotAccessOrElse(b);\n};\ngoog.html.uncheckedconversions.safeUrlFromStringKnownToSatisfyTypeContract = function(a, b) {\n  goog.asserts.assertString(goog.string.Const.unwrap(a), \"must provide justification\");\n  goog.asserts.assert(!goog.string.internal.isEmptyOrWhitespace(goog.string.Const.unwrap(a)), \"must provide non-empty justification\");\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(b);\n};\ngoog.html.uncheckedconversions.trustedResourceUrlFromStringKnownToSatisfyTypeContract = function(a, b) {\n  goog.asserts.assertString(goog.string.Const.unwrap(a), \"must provide justification\");\n  goog.asserts.assert(!goog.string.internal.isEmptyOrWhitespace(goog.string.Const.unwrap(a)), \"must provide non-empty justification\");\n  return goog.html.TrustedResourceUrl.createTrustedResourceUrlSecurityPrivateDoNotAccessOrElse(b);\n};\ngoog.dom.safe = {};\ngoog.dom.safe.InsertAdjacentHtmlPosition = {AFTERBEGIN:\"afterbegin\", AFTEREND:\"afterend\", BEFOREBEGIN:\"beforebegin\", BEFOREEND:\"beforeend\"};\ngoog.dom.safe.insertAdjacentHtml = function(a, b, c) {\n  a.insertAdjacentHTML(b, goog.html.SafeHtml.unwrapTrustedHTML(c));\n};\ngoog.dom.safe.SET_INNER_HTML_DISALLOWED_TAGS_ = {MATH:!0, SCRIPT:!0, STYLE:!0, SVG:!0, TEMPLATE:!0};\ngoog.dom.safe.isInnerHtmlCleanupRecursive_ = goog.functions.cacheReturnValue(function() {\n  if (goog.DEBUG && \"undefined\" === typeof document) {\n    return !1;\n  }\n  var a = document.createElement(\"div\"), b = document.createElement(\"div\");\n  b.appendChild(document.createElement(\"div\"));\n  a.appendChild(b);\n  if (goog.DEBUG && !a.firstChild) {\n    return !1;\n  }\n  b = a.firstChild.firstChild;\n  a.innerHTML = goog.html.SafeHtml.unwrapTrustedHTML(goog.html.SafeHtml.EMPTY);\n  return !b.parentElement;\n});\ngoog.dom.safe.unsafeSetInnerHtmlDoNotUseOrElse = function(a, b) {\n  if (goog.dom.safe.isInnerHtmlCleanupRecursive_()) {\n    for (; a.lastChild;) {\n      a.removeChild(a.lastChild);\n    }\n  }\n  a.innerHTML = goog.html.SafeHtml.unwrapTrustedHTML(b);\n};\ngoog.dom.safe.setInnerHtml = function(a, b) {\n  if (goog.asserts.ENABLE_ASSERTS) {\n    var c = a.tagName.toUpperCase();\n    if (goog.dom.safe.SET_INNER_HTML_DISALLOWED_TAGS_[c]) {\n      throw Error(\"goog.dom.safe.setInnerHtml cannot be used to set content of \" + a.tagName + \".\");\n    }\n  }\n  goog.dom.safe.unsafeSetInnerHtmlDoNotUseOrElse(a, b);\n};\ngoog.dom.safe.setOuterHtml = function(a, b) {\n  a.outerHTML = goog.html.SafeHtml.unwrapTrustedHTML(b);\n};\ngoog.dom.safe.setFormElementAction = function(a, b) {\n  var c = b instanceof goog.html.SafeUrl ? b : goog.html.SafeUrl.sanitizeAssertUnchanged(b);\n  goog.dom.asserts.assertIsHTMLFormElement(a).action = goog.html.SafeUrl.unwrapTrustedURL(c);\n};\ngoog.dom.safe.setButtonFormAction = function(a, b) {\n  var c = b instanceof goog.html.SafeUrl ? b : goog.html.SafeUrl.sanitizeAssertUnchanged(b);\n  goog.dom.asserts.assertIsHTMLButtonElement(a).formAction = goog.html.SafeUrl.unwrapTrustedURL(c);\n};\ngoog.dom.safe.setInputFormAction = function(a, b) {\n  var c = b instanceof goog.html.SafeUrl ? b : goog.html.SafeUrl.sanitizeAssertUnchanged(b);\n  goog.dom.asserts.assertIsHTMLInputElement(a).formAction = goog.html.SafeUrl.unwrapTrustedURL(c);\n};\ngoog.dom.safe.setStyle = function(a, b) {\n  a.style.cssText = goog.html.SafeStyle.unwrap(b);\n};\ngoog.dom.safe.documentWrite = function(a, b) {\n  a.write(goog.html.SafeHtml.unwrapTrustedHTML(b));\n};\ngoog.dom.safe.setAnchorHref = function(a, b) {\n  goog.dom.asserts.assertIsHTMLAnchorElement(a);\n  var c = b instanceof goog.html.SafeUrl ? b : goog.html.SafeUrl.sanitizeAssertUnchanged(b);\n  a.href = goog.html.SafeUrl.unwrapTrustedURL(c);\n};\ngoog.dom.safe.setImageSrc = function(a, b) {\n  goog.dom.asserts.assertIsHTMLImageElement(a);\n  if (b instanceof goog.html.SafeUrl) {\n    var c = b;\n  } else {\n    c = /^data:image\\//i.test(b), c = goog.html.SafeUrl.sanitizeAssertUnchanged(b, c);\n  }\n  a.src = goog.html.SafeUrl.unwrapTrustedURL(c);\n};\ngoog.dom.safe.setAudioSrc = function(a, b) {\n  goog.dom.asserts.assertIsHTMLAudioElement(a);\n  if (b instanceof goog.html.SafeUrl) {\n    var c = b;\n  } else {\n    c = /^data:audio\\//i.test(b), c = goog.html.SafeUrl.sanitizeAssertUnchanged(b, c);\n  }\n  a.src = goog.html.SafeUrl.unwrapTrustedURL(c);\n};\ngoog.dom.safe.setVideoSrc = function(a, b) {\n  goog.dom.asserts.assertIsHTMLVideoElement(a);\n  if (b instanceof goog.html.SafeUrl) {\n    var c = b;\n  } else {\n    c = /^data:video\\//i.test(b), c = goog.html.SafeUrl.sanitizeAssertUnchanged(b, c);\n  }\n  a.src = goog.html.SafeUrl.unwrapTrustedURL(c);\n};\ngoog.dom.safe.setEmbedSrc = function(a, b) {\n  goog.dom.asserts.assertIsHTMLEmbedElement(a);\n  a.src = goog.html.TrustedResourceUrl.unwrapTrustedScriptURL(b);\n};\ngoog.dom.safe.setFrameSrc = function(a, b) {\n  goog.dom.asserts.assertIsHTMLFrameElement(a);\n  a.src = goog.html.TrustedResourceUrl.unwrapTrustedURL(b);\n};\ngoog.dom.safe.setIframeSrc = function(a, b) {\n  goog.dom.asserts.assertIsHTMLIFrameElement(a);\n  a.src = goog.html.TrustedResourceUrl.unwrapTrustedURL(b);\n};\ngoog.dom.safe.setIframeSrcdoc = function(a, b) {\n  goog.dom.asserts.assertIsHTMLIFrameElement(a);\n  a.srcdoc = goog.html.SafeHtml.unwrapTrustedHTML(b);\n};\ngoog.dom.safe.setLinkHrefAndRel = function(a, b, c) {\n  goog.dom.asserts.assertIsHTMLLinkElement(a);\n  a.rel = c;\n  goog.string.internal.caseInsensitiveContains(c, \"stylesheet\") ? (goog.asserts.assert(b instanceof goog.html.TrustedResourceUrl, 'URL must be TrustedResourceUrl because \"rel\" contains \"stylesheet\"'), a.href = goog.html.TrustedResourceUrl.unwrapTrustedURL(b)) : a.href = b instanceof goog.html.TrustedResourceUrl ? goog.html.TrustedResourceUrl.unwrapTrustedURL(b) : b instanceof goog.html.SafeUrl ? goog.html.SafeUrl.unwrapTrustedURL(b) : goog.html.SafeUrl.unwrapTrustedURL(goog.html.SafeUrl.sanitizeAssertUnchanged(b));\n};\ngoog.dom.safe.setObjectData = function(a, b) {\n  goog.dom.asserts.assertIsHTMLObjectElement(a);\n  a.data = goog.html.TrustedResourceUrl.unwrapTrustedScriptURL(b);\n};\ngoog.dom.safe.setScriptSrc = function(a, b) {\n  goog.dom.asserts.assertIsHTMLScriptElement(a);\n  a.src = goog.html.TrustedResourceUrl.unwrapTrustedScriptURL(b);\n  var c = goog.getScriptNonce();\n  c && a.setAttribute(\"nonce\", c);\n};\ngoog.dom.safe.setScriptContent = function(a, b) {\n  goog.dom.asserts.assertIsHTMLScriptElement(a);\n  a.text = goog.html.SafeScript.unwrapTrustedScript(b);\n  var c = goog.getScriptNonce();\n  c && a.setAttribute(\"nonce\", c);\n};\ngoog.dom.safe.setLocationHref = function(a, b) {\n  goog.dom.asserts.assertIsLocation(a);\n  var c = b instanceof goog.html.SafeUrl ? b : goog.html.SafeUrl.sanitizeAssertUnchanged(b);\n  a.href = goog.html.SafeUrl.unwrapTrustedURL(c);\n};\ngoog.dom.safe.assignLocation = function(a, b) {\n  goog.dom.asserts.assertIsLocation(a);\n  var c = b instanceof goog.html.SafeUrl ? b : goog.html.SafeUrl.sanitizeAssertUnchanged(b);\n  a.assign(goog.html.SafeUrl.unwrapTrustedURL(c));\n};\ngoog.dom.safe.replaceLocation = function(a, b) {\n  goog.dom.asserts.assertIsLocation(a);\n  var c = b instanceof goog.html.SafeUrl ? b : goog.html.SafeUrl.sanitizeAssertUnchanged(b);\n  a.replace(goog.html.SafeUrl.unwrapTrustedURL(c));\n};\ngoog.dom.safe.openInWindow = function(a, b, c, d, e) {\n  a = a instanceof goog.html.SafeUrl ? a : goog.html.SafeUrl.sanitizeAssertUnchanged(a);\n  return (b || goog.global).open(goog.html.SafeUrl.unwrapTrustedURL(a), c ? goog.string.Const.unwrap(c) : \"\", d, e);\n};\ngoog.dom.safe.parseFromStringHtml = function(a, b) {\n  return goog.dom.safe.parseFromString(a, b, \"text/html\");\n};\ngoog.dom.safe.parseFromString = function(a, b, c) {\n  return a.parseFromString(goog.html.SafeHtml.unwrapTrustedHTML(b), c);\n};\ngoog.dom.safe.createImageFromBlob = function(a) {\n  if (!/^image\\/.*/g.test(a.type)) {\n    throw Error(\"goog.dom.safe.createImageFromBlob only accepts MIME type image/.*.\");\n  }\n  var b = goog.global.URL.createObjectURL(a);\n  a = new goog.global.Image;\n  a.onload = function() {\n    goog.global.URL.revokeObjectURL(b);\n  };\n  goog.dom.safe.setImageSrc(a, goog.html.uncheckedconversions.safeUrlFromStringKnownToSatisfyTypeContract(goog.string.Const.from(\"Image blob URL.\"), b));\n  return a;\n};\ngoog.string.DETECT_DOUBLE_ESCAPING = !1;\ngoog.string.FORCE_NON_DOM_HTML_UNESCAPING = !1;\ngoog.string.Unicode = {NBSP:\"\\u00a0\"};\ngoog.string.startsWith = goog.string.internal.startsWith;\ngoog.string.endsWith = goog.string.internal.endsWith;\ngoog.string.caseInsensitiveStartsWith = goog.string.internal.caseInsensitiveStartsWith;\ngoog.string.caseInsensitiveEndsWith = goog.string.internal.caseInsensitiveEndsWith;\ngoog.string.caseInsensitiveEquals = goog.string.internal.caseInsensitiveEquals;\ngoog.string.subs = function(a, b) {\n  for (var c = a.split(\"%s\"), d = \"\", e = Array.prototype.slice.call(arguments, 1); e.length && 1 < c.length;) {\n    d += c.shift() + e.shift();\n  }\n  return d + c.join(\"%s\");\n};\ngoog.string.collapseWhitespace = function(a) {\n  return a.replace(/[\\s\\xa0]+/g, \" \").replace(/^\\s+|\\s+$/g, \"\");\n};\ngoog.string.isEmptyOrWhitespace = goog.string.internal.isEmptyOrWhitespace;\ngoog.string.isEmptyString = function(a) {\n  return 0 == a.length;\n};\ngoog.string.isEmpty = goog.string.isEmptyOrWhitespace;\ngoog.string.isEmptyOrWhitespaceSafe = function(a) {\n  return goog.string.isEmptyOrWhitespace(goog.string.makeSafe(a));\n};\ngoog.string.isEmptySafe = goog.string.isEmptyOrWhitespaceSafe;\ngoog.string.isBreakingWhitespace = function(a) {\n  return !/[^\\t\\n\\r ]/.test(a);\n};\ngoog.string.isAlpha = function(a) {\n  return !/[^a-zA-Z]/.test(a);\n};\ngoog.string.isNumeric = function(a) {\n  return !/[^0-9]/.test(a);\n};\ngoog.string.isAlphaNumeric = function(a) {\n  return !/[^a-zA-Z0-9]/.test(a);\n};\ngoog.string.isSpace = function(a) {\n  return \" \" == a;\n};\ngoog.string.isUnicodeChar = function(a) {\n  return 1 == a.length && \" \" <= a && \"~\" >= a || \"\\u0080\" <= a && \"\\ufffd\" >= a;\n};\ngoog.string.stripNewlines = function(a) {\n  return a.replace(/(\\r\\n|\\r|\\n)+/g, \" \");\n};\ngoog.string.canonicalizeNewlines = function(a) {\n  return a.replace(/(\\r\\n|\\r|\\n)/g, \"\\n\");\n};\ngoog.string.normalizeWhitespace = function(a) {\n  return a.replace(/\\xa0|\\s/g, \" \");\n};\ngoog.string.normalizeSpaces = function(a) {\n  return a.replace(/\\xa0|[ \\t]+/g, \" \");\n};\ngoog.string.collapseBreakingSpaces = function(a) {\n  return a.replace(/[\\t\\r\\n ]+/g, \" \").replace(/^[\\t\\r\\n ]+|[\\t\\r\\n ]+$/g, \"\");\n};\ngoog.string.trim = goog.string.internal.trim;\ngoog.string.trimLeft = function(a) {\n  return a.replace(/^[\\s\\xa0]+/, \"\");\n};\ngoog.string.trimRight = function(a) {\n  return a.replace(/[\\s\\xa0]+$/, \"\");\n};\ngoog.string.caseInsensitiveCompare = goog.string.internal.caseInsensitiveCompare;\ngoog.string.numberAwareCompare_ = function(a, b, c) {\n  if (a == b) {\n    return 0;\n  }\n  if (!a) {\n    return -1;\n  }\n  if (!b) {\n    return 1;\n  }\n  for (var d = a.toLowerCase().match(c), e = b.toLowerCase().match(c), f = Math.min(d.length, e.length), g = 0; g < f; g++) {\n    c = d[g];\n    var h = e[g];\n    if (c != h) {\n      return a = parseInt(c, 10), !isNaN(a) && (b = parseInt(h, 10), !isNaN(b) && a - b) ? a - b : c < h ? -1 : 1;\n    }\n  }\n  return d.length != e.length ? d.length - e.length : a < b ? -1 : 1;\n};\ngoog.string.intAwareCompare = function(a, b) {\n  return goog.string.numberAwareCompare_(a, b, /\\d+|\\D+/g);\n};\ngoog.string.floatAwareCompare = function(a, b) {\n  return goog.string.numberAwareCompare_(a, b, /\\d+|\\.\\d+|\\D+/g);\n};\ngoog.string.numerateCompare = goog.string.floatAwareCompare;\ngoog.string.urlEncode = function(a) {\n  return encodeURIComponent(String(a));\n};\ngoog.string.urlDecode = function(a) {\n  return decodeURIComponent(a.replace(/\\+/g, \" \"));\n};\ngoog.string.newLineToBr = goog.string.internal.newLineToBr;\ngoog.string.htmlEscape = function(a, b) {\n  a = goog.string.internal.htmlEscape(a, b);\n  goog.string.DETECT_DOUBLE_ESCAPING && (a = a.replace(goog.string.E_RE_, \"&#101;\"));\n  return a;\n};\ngoog.string.E_RE_ = /e/g;\ngoog.string.unescapeEntities = function(a) {\n  return goog.string.contains(a, \"&\") ? !goog.string.FORCE_NON_DOM_HTML_UNESCAPING && \"document\" in goog.global ? goog.string.unescapeEntitiesUsingDom_(a) : goog.string.unescapePureXmlEntities_(a) : a;\n};\ngoog.string.unescapeEntitiesWithDocument = function(a, b) {\n  return goog.string.contains(a, \"&\") ? goog.string.unescapeEntitiesUsingDom_(a, b) : a;\n};\ngoog.string.unescapeEntitiesUsingDom_ = function(a, b) {\n  var c = {\"&amp;\":\"&\", \"&lt;\":\"<\", \"&gt;\":\">\", \"&quot;\":'\"'};\n  var d = b ? b.createElement(\"div\") : goog.global.document.createElement(\"div\");\n  return a.replace(goog.string.HTML_ENTITY_PATTERN_, function(a, b) {\n    var e = c[a];\n    if (e) {\n      return e;\n    }\n    if (\"#\" == b.charAt(0)) {\n      var f = Number(\"0\" + b.substr(1));\n      isNaN(f) || (e = String.fromCharCode(f));\n    }\n    e || (goog.dom.safe.setInnerHtml(d, goog.html.uncheckedconversions.safeHtmlFromStringKnownToSatisfyTypeContract(goog.string.Const.from(\"Single HTML entity.\"), a + \" \")), e = d.firstChild.nodeValue.slice(0, -1));\n    return c[a] = e;\n  });\n};\ngoog.string.unescapePureXmlEntities_ = function(a) {\n  return a.replace(/&([^;]+);/g, function(a, c) {\n    switch(c) {\n      case \"amp\":\n        return \"&\";\n      case \"lt\":\n        return \"<\";\n      case \"gt\":\n        return \">\";\n      case \"quot\":\n        return '\"';\n      default:\n        if (\"#\" == c.charAt(0)) {\n          var b = Number(\"0\" + c.substr(1));\n          if (!isNaN(b)) {\n            return String.fromCharCode(b);\n          }\n        }\n        return a;\n    }\n  });\n};\ngoog.string.HTML_ENTITY_PATTERN_ = /&([^;\\s<&]+);?/g;\ngoog.string.whitespaceEscape = function(a, b) {\n  return goog.string.newLineToBr(a.replace(/  /g, \" &#160;\"), b);\n};\ngoog.string.preserveSpaces = function(a) {\n  return a.replace(/(^|[\\n ]) /g, \"$1\" + goog.string.Unicode.NBSP);\n};\ngoog.string.stripQuotes = function(a, b) {\n  for (var c = b.length, d = 0; d < c; d++) {\n    var e = 1 == c ? b : b.charAt(d);\n    if (a.charAt(0) == e && a.charAt(a.length - 1) == e) {\n      return a.substring(1, a.length - 1);\n    }\n  }\n  return a;\n};\ngoog.string.truncate = function(a, b, c) {\n  c && (a = goog.string.unescapeEntities(a));\n  a.length > b && (a = a.substring(0, b - 3) + \"...\");\n  c && (a = goog.string.htmlEscape(a));\n  return a;\n};\ngoog.string.truncateMiddle = function(a, b, c, d) {\n  c && (a = goog.string.unescapeEntities(a));\n  if (d && a.length > b) {\n    d > b && (d = b);\n    var e = a.length - d;\n    a = a.substring(0, b - d) + \"...\" + a.substring(e);\n  } else {\n    a.length > b && (d = Math.floor(b / 2), e = a.length - d, a = a.substring(0, d + b % 2) + \"...\" + a.substring(e));\n  }\n  c && (a = goog.string.htmlEscape(a));\n  return a;\n};\ngoog.string.specialEscapeChars_ = {\"\\x00\":\"\\\\0\", \"\\b\":\"\\\\b\", \"\\f\":\"\\\\f\", \"\\n\":\"\\\\n\", \"\\r\":\"\\\\r\", \"\\t\":\"\\\\t\", \"\\x0B\":\"\\\\x0B\", '\"':'\\\\\"', \"\\\\\":\"\\\\\\\\\", \"<\":\"\\\\u003C\"};\ngoog.string.jsEscapeCache_ = {\"'\":\"\\\\'\"};\ngoog.string.quote = function(a) {\n  a = String(a);\n  for (var b = ['\"'], c = 0; c < a.length; c++) {\n    var d = a.charAt(c), e = d.charCodeAt(0);\n    b[c + 1] = goog.string.specialEscapeChars_[d] || (31 < e && 127 > e ? d : goog.string.escapeChar(d));\n  }\n  b.push('\"');\n  return b.join(\"\");\n};\ngoog.string.escapeString = function(a) {\n  for (var b = [], c = 0; c < a.length; c++) {\n    b[c] = goog.string.escapeChar(a.charAt(c));\n  }\n  return b.join(\"\");\n};\ngoog.string.escapeChar = function(a) {\n  if (a in goog.string.jsEscapeCache_) {\n    return goog.string.jsEscapeCache_[a];\n  }\n  if (a in goog.string.specialEscapeChars_) {\n    return goog.string.jsEscapeCache_[a] = goog.string.specialEscapeChars_[a];\n  }\n  var b = a.charCodeAt(0);\n  if (31 < b && 127 > b) {\n    var c = a;\n  } else {\n    if (256 > b) {\n      if (c = \"\\\\x\", 16 > b || 256 < b) {\n        c += \"0\";\n      }\n    } else {\n      c = \"\\\\u\", 4096 > b && (c += \"0\");\n    }\n    c += b.toString(16).toUpperCase();\n  }\n  return goog.string.jsEscapeCache_[a] = c;\n};\ngoog.string.contains = goog.string.internal.contains;\ngoog.string.caseInsensitiveContains = goog.string.internal.caseInsensitiveContains;\ngoog.string.countOf = function(a, b) {\n  return a && b ? a.split(b).length - 1 : 0;\n};\ngoog.string.removeAt = function(a, b, c) {\n  var d = a;\n  0 <= b && b < a.length && 0 < c && (d = a.substr(0, b) + a.substr(b + c, a.length - b - c));\n  return d;\n};\ngoog.string.remove = function(a, b) {\n  return a.replace(b, \"\");\n};\ngoog.string.removeAll = function(a, b) {\n  var c = new RegExp(goog.string.regExpEscape(b), \"g\");\n  return a.replace(c, \"\");\n};\ngoog.string.replaceAll = function(a, b, c) {\n  b = new RegExp(goog.string.regExpEscape(b), \"g\");\n  return a.replace(b, c.replace(/\\$/g, \"$$$$\"));\n};\ngoog.string.regExpEscape = function(a) {\n  return String(a).replace(/([-()\\[\\]{}+?*.$\\^|,:#<!\\\\])/g, \"\\\\$1\").replace(/\\x08/g, \"\\\\x08\");\n};\ngoog.string.repeat = String.prototype.repeat ? function(a, b) {\n  return a.repeat(b);\n} : function(a, b) {\n  return Array(b + 1).join(a);\n};\ngoog.string.padNumber = function(a, b, c) {\n  a = void 0 !== c ? a.toFixed(c) : String(a);\n  c = a.indexOf(\".\");\n  -1 == c && (c = a.length);\n  return goog.string.repeat(\"0\", Math.max(0, b - c)) + a;\n};\ngoog.string.makeSafe = function(a) {\n  return null == a ? \"\" : String(a);\n};\ngoog.string.buildString = function(a) {\n  return Array.prototype.join.call(arguments, \"\");\n};\ngoog.string.getRandomString = function() {\n  return Math.floor(2147483648 * Math.random()).toString(36) + Math.abs(Math.floor(2147483648 * Math.random()) ^ goog.now()).toString(36);\n};\ngoog.string.compareVersions = goog.string.internal.compareVersions;\ngoog.string.hashCode = function(a) {\n  for (var b = 0, c = 0; c < a.length; ++c) {\n    b = 31 * b + a.charCodeAt(c) >>> 0;\n  }\n  return b;\n};\ngoog.string.uniqueStringCounter_ = 2147483648 * Math.random() | 0;\ngoog.string.createUniqueString = function() {\n  return \"goog_\" + goog.string.uniqueStringCounter_++;\n};\ngoog.string.toNumber = function(a) {\n  var b = Number(a);\n  return 0 == b && goog.string.isEmptyOrWhitespace(a) ? NaN : b;\n};\ngoog.string.isLowerCamelCase = function(a) {\n  return /^[a-z]+([A-Z][a-z]*)*$/.test(a);\n};\ngoog.string.isUpperCamelCase = function(a) {\n  return /^([A-Z][a-z]*)+$/.test(a);\n};\ngoog.string.toCamelCase = function(a) {\n  return String(a).replace(/\\-([a-z])/g, function(a, c) {\n    return c.toUpperCase();\n  });\n};\ngoog.string.toSelectorCase = function(a) {\n  return String(a).replace(/([A-Z])/g, \"-$1\").toLowerCase();\n};\ngoog.string.toTitleCase = function(a, b) {\n  var c = \"string\" === typeof b ? goog.string.regExpEscape(b) : \"\\\\s\";\n  return a.replace(new RegExp(\"(^\" + (c ? \"|[\" + c + \"]+\" : \"\") + \")([a-z])\", \"g\"), function(a, b, c) {\n    return b + c.toUpperCase();\n  });\n};\ngoog.string.capitalize = function(a) {\n  return String(a.charAt(0)).toUpperCase() + String(a.substr(1)).toLowerCase();\n};\ngoog.string.parseInt = function(a) {\n  isFinite(a) && (a = String(a));\n  return \"string\" === typeof a ? /^\\s*-?0x/i.test(a) ? parseInt(a, 16) : parseInt(a, 10) : NaN;\n};\ngoog.string.splitLimit = function(a, b, c) {\n  a = a.split(b);\n  for (var d = []; 0 < c && a.length;) {\n    d.push(a.shift()), c--;\n  }\n  a.length && d.push(a.join(b));\n  return d;\n};\ngoog.string.lastComponent = function(a, b) {\n  if (b) {\n    \"string\" == typeof b && (b = [b]);\n  } else {\n    return a;\n  }\n  for (var c = -1, d = 0; d < b.length; d++) {\n    if (\"\" != b[d]) {\n      var e = a.lastIndexOf(b[d]);\n      e > c && (c = e);\n    }\n  }\n  return -1 == c ? a : a.slice(c + 1);\n};\ngoog.string.editDistance = function(a, b) {\n  var c = [], d = [];\n  if (a == b) {\n    return 0;\n  }\n  if (!a.length || !b.length) {\n    return Math.max(a.length, b.length);\n  }\n  for (var e = 0; e < b.length + 1; e++) {\n    c[e] = e;\n  }\n  for (e = 0; e < a.length; e++) {\n    d[0] = e + 1;\n    for (var f = 0; f < b.length; f++) {\n      d[f + 1] = Math.min(d[f] + 1, c[f + 1] + 1, c[f] + Number(a[e] != b[f]));\n    }\n    for (f = 0; f < c.length; f++) {\n      c[f] = d[f];\n    }\n  }\n  return d[b.length];\n};\ngoog.proto2 = {};\ngoog.proto2.FieldDescriptor = function(a, b, c) {\n  this.parent_ = a;\n  goog.asserts.assert(goog.string.isNumeric(b));\n  this.tag_ = b;\n  this.name_ = c.name;\n  this.isPacked_ = !!c.packed;\n  this.isRepeated_ = !!c.repeated;\n  this.isRequired_ = !!c.required;\n  this.fieldType_ = c.fieldType;\n  this.nativeType_ = c.type;\n  this.deserializationConversionPermitted_ = !1;\n  switch(this.fieldType_) {\n    case goog.proto2.FieldDescriptor.FieldType.INT64:\n    case goog.proto2.FieldDescriptor.FieldType.UINT64:\n    case goog.proto2.FieldDescriptor.FieldType.FIXED64:\n    case goog.proto2.FieldDescriptor.FieldType.SFIXED64:\n    case goog.proto2.FieldDescriptor.FieldType.SINT64:\n    case goog.proto2.FieldDescriptor.FieldType.FLOAT:\n    case goog.proto2.FieldDescriptor.FieldType.DOUBLE:\n      this.deserializationConversionPermitted_ = !0;\n  }\n  this.defaultValue_ = c.defaultValue;\n};\ngoog.proto2.FieldDescriptor.FieldType = {DOUBLE:1, FLOAT:2, INT64:3, UINT64:4, INT32:5, FIXED64:6, FIXED32:7, BOOL:8, STRING:9, GROUP:10, MESSAGE:11, BYTES:12, UINT32:13, ENUM:14, SFIXED32:15, SFIXED64:16, SINT32:17, SINT64:18};\ngoog.proto2.FieldDescriptor.prototype.getTag = function() {\n  return this.tag_;\n};\ngoog.proto2.FieldDescriptor.prototype.getContainingType = function() {\n  return this.parent_.prototype.getDescriptor();\n};\ngoog.proto2.FieldDescriptor.prototype.getName = function() {\n  return this.name_;\n};\ngoog.proto2.FieldDescriptor.prototype.getDefaultValue = function() {\n  if (void 0 === this.defaultValue_) {\n    var a = this.nativeType_;\n    if (a === Boolean) {\n      this.defaultValue_ = !1;\n    } else {\n      if (a === Number) {\n        this.defaultValue_ = 0;\n      } else {\n        if (a === String) {\n          this.defaultValue_ = this.deserializationConversionPermitted_ ? \"0\" : \"\";\n        } else {\n          return new a;\n        }\n      }\n    }\n  }\n  return this.defaultValue_;\n};\ngoog.proto2.FieldDescriptor.prototype.getFieldType = function() {\n  return this.fieldType_;\n};\ngoog.proto2.FieldDescriptor.prototype.getNativeType = function() {\n  return this.nativeType_;\n};\ngoog.proto2.FieldDescriptor.prototype.deserializationConversionPermitted = function() {\n  return this.deserializationConversionPermitted_;\n};\ngoog.proto2.FieldDescriptor.prototype.getFieldMessageType = function() {\n  return this.nativeType_.prototype.getDescriptor();\n};\ngoog.proto2.FieldDescriptor.prototype.isCompositeType = function() {\n  return this.fieldType_ == goog.proto2.FieldDescriptor.FieldType.MESSAGE || this.fieldType_ == goog.proto2.FieldDescriptor.FieldType.GROUP;\n};\ngoog.proto2.FieldDescriptor.prototype.isPacked = function() {\n  return this.isPacked_;\n};\ngoog.proto2.FieldDescriptor.prototype.isRepeated = function() {\n  return this.isRepeated_;\n};\ngoog.proto2.FieldDescriptor.prototype.isRequired = function() {\n  return this.isRequired_;\n};\ngoog.proto2.FieldDescriptor.prototype.isOptional = function() {\n  return !this.isRepeated_ && !this.isRequired_;\n};\ngoog.proto2.Descriptor = function(a, b, c) {\n  this.messageType_ = a;\n  this.name_ = b.name || null;\n  this.fullName_ = b.fullName || null;\n  this.containingType_ = b.containingType;\n  this.fields_ = {};\n  for (a = 0; a < c.length; a++) {\n    b = c[a], this.fields_[b.getTag()] = b;\n  }\n};\ngoog.proto2.Descriptor.prototype.getName = function() {\n  return this.name_;\n};\ngoog.proto2.Descriptor.prototype.getFullName = function() {\n  return this.fullName_;\n};\ngoog.proto2.Descriptor.prototype.getContainingType = function() {\n  return this.containingType_ ? this.containingType_.getDescriptor() : null;\n};\ngoog.proto2.Descriptor.prototype.getFields = function() {\n  var a = goog.object.getValues(this.fields_);\n  goog.array.sort(a, function(a, c) {\n    return a.getTag() - c.getTag();\n  });\n  return a;\n};\ngoog.proto2.Descriptor.prototype.getFieldsMap = function() {\n  return this.fields_;\n};\ngoog.proto2.Descriptor.prototype.findFieldByName = function(a) {\n  return goog.object.findValue(this.fields_, function(b, c, d) {\n    return b.getName() == a;\n  }) || null;\n};\ngoog.proto2.Descriptor.prototype.findFieldByTag = function(a) {\n  goog.asserts.assert(goog.string.isNumeric(a));\n  return this.fields_[parseInt(a, 10)] || null;\n};\ngoog.proto2.Descriptor.prototype.createMessageInstance = function() {\n  return new this.messageType_;\n};\ngoog.proto2.Message = function() {\n  this.values_ = {};\n  this.fields_ = this.getDescriptor().getFieldsMap();\n  this.deserializedFields_ = this.lazyDeserializer_ = null;\n};\ngoog.proto2.Message.FieldType = {DOUBLE:1, FLOAT:2, INT64:3, UINT64:4, INT32:5, FIXED64:6, FIXED32:7, BOOL:8, STRING:9, GROUP:10, MESSAGE:11, BYTES:12, UINT32:13, ENUM:14, SFIXED32:15, SFIXED64:16, SINT32:17, SINT64:18};\ngoog.proto2.Message.prototype.initializeForLazyDeserializer = function(a, b) {\n  this.lazyDeserializer_ = a;\n  this.values_ = b;\n  this.deserializedFields_ = {};\n};\ngoog.proto2.Message.prototype.setUnknown = function(a, b) {\n  goog.asserts.assert(!this.fields_[a], \"Field is not unknown in this message\");\n  goog.asserts.assert(1 <= a, \"Tag \" + a + ' has value \"' + b + '\" in descriptor ' + this.getDescriptor().getName());\n  goog.asserts.assert(null !== b, \"Value cannot be null\");\n  this.values_[a] = b;\n  this.deserializedFields_ && delete this.deserializedFields_[a];\n};\ngoog.proto2.Message.prototype.forEachUnknown = function(a, b) {\n  var c = b || this, d;\n  for (d in this.values_) {\n    var e = Number(d);\n    this.fields_[e] || a.call(c, e, this.values_[d]);\n  }\n};\ngoog.proto2.Message.prototype.getDescriptor = goog.abstractMethod;\ngoog.proto2.Message.prototype.has = function(a) {\n  goog.asserts.assert(a.getContainingType() == this.getDescriptor(), \"The current message does not contain the given field\");\n  return this.has$Value(a.getTag());\n};\ngoog.proto2.Message.prototype.arrayOf = function(a) {\n  goog.asserts.assert(a.getContainingType() == this.getDescriptor(), \"The current message does not contain the given field\");\n  return this.array$Values(a.getTag());\n};\ngoog.proto2.Message.prototype.countOf = function(a) {\n  goog.asserts.assert(a.getContainingType() == this.getDescriptor(), \"The current message does not contain the given field\");\n  return this.count$Values(a.getTag());\n};\ngoog.proto2.Message.prototype.get = function(a, b) {\n  goog.asserts.assert(a.getContainingType() == this.getDescriptor(), \"The current message does not contain the given field\");\n  return this.get$Value(a.getTag(), b);\n};\ngoog.proto2.Message.prototype.getOrDefault = function(a, b) {\n  goog.asserts.assert(a.getContainingType() == this.getDescriptor(), \"The current message does not contain the given field\");\n  return this.get$ValueOrDefault(a.getTag(), b);\n};\ngoog.proto2.Message.prototype.set = function(a, b) {\n  goog.asserts.assert(a.getContainingType() == this.getDescriptor(), \"The current message does not contain the given field\");\n  this.set$Value(a.getTag(), b);\n};\ngoog.proto2.Message.prototype.add = function(a, b) {\n  goog.asserts.assert(a.getContainingType() == this.getDescriptor(), \"The current message does not contain the given field\");\n  this.add$Value(a.getTag(), b);\n};\ngoog.proto2.Message.prototype.clear = function(a) {\n  goog.asserts.assert(a.getContainingType() == this.getDescriptor(), \"The current message does not contain the given field\");\n  this.clear$Field(a.getTag());\n};\ngoog.proto2.Message.prototype.equals = function(a) {\n  if (!a || this.constructor != a.constructor) {\n    return !1;\n  }\n  for (var b = this.getDescriptor().getFields(), c = 0; c < b.length; c++) {\n    var d = b[c], e = d.getTag();\n    if (this.has$Value(e) != a.has$Value(e)) {\n      return !1;\n    }\n    if (this.has$Value(e)) {\n      var f = d.isCompositeType(), g = this.getValueForTag_(e);\n      e = a.getValueForTag_(e);\n      if (d.isRepeated()) {\n        if (g.length != e.length) {\n          return !1;\n        }\n        for (d = 0; d < g.length; d++) {\n          var h = g[d], k = e[d];\n          if (f ? !h.equals(k) : h != k) {\n            return !1;\n          }\n        }\n      } else {\n        if (f ? !g.equals(e) : g != e) {\n          return !1;\n        }\n      }\n    }\n  }\n  return !0;\n};\ngoog.proto2.Message.prototype.copyFrom = function(a) {\n  goog.asserts.assert(this.constructor == a.constructor, \"The source message must have the same type.\");\n  this != a && (this.values_ = {}, this.deserializedFields_ && (this.deserializedFields_ = {}), this.mergeFrom(a));\n};\ngoog.proto2.Message.prototype.mergeFrom = function(a) {\n  goog.asserts.assert(this.constructor == a.constructor, \"The source message must have the same type.\");\n  for (var b = this.getDescriptor().getFields(), c = 0; c < b.length; c++) {\n    var d = b[c], e = d.getTag();\n    if (a.has$Value(e)) {\n      this.deserializedFields_ && delete this.deserializedFields_[d.getTag()];\n      var f = d.isCompositeType();\n      if (d.isRepeated()) {\n        d = a.array$Values(e);\n        for (var g = 0; g < d.length; g++) {\n          this.add$Value(e, f ? d[g].clone() : d[g]);\n        }\n      } else {\n        d = a.getValueForTag_(e), f ? (f = this.getValueForTag_(e)) ? f.mergeFrom(d) : this.set$Value(e, d.clone()) : this.set$Value(e, d);\n      }\n    }\n  }\n};\ngoog.proto2.Message.prototype.clone = function() {\n  var a = new this.constructor;\n  a.copyFrom(this);\n  return a;\n};\ngoog.proto2.Message.prototype.initDefaults = function(a) {\n  for (var b = this.getDescriptor().getFields(), c = 0; c < b.length; c++) {\n    var d = b[c], e = d.getTag(), f = d.isCompositeType();\n    this.has$Value(e) || d.isRepeated() || (f ? this.values_[e] = new (d.getNativeType()) : a && (this.values_[e] = d.getDefaultValue()));\n    if (f) {\n      if (d.isRepeated()) {\n        for (d = this.array$Values(e), e = 0; e < d.length; e++) {\n          d[e].initDefaults(a);\n        }\n      } else {\n        this.get$Value(e).initDefaults(a);\n      }\n    }\n  }\n};\ngoog.proto2.Message.prototype.has$Value = function(a) {\n  return null != this.values_[a];\n};\ngoog.proto2.Message.prototype.getValueForTag_ = function(a) {\n  var b = this.values_[a];\n  return null == b ? null : this.lazyDeserializer_ ? a in this.deserializedFields_ ? this.deserializedFields_[a] : (b = this.lazyDeserializer_.deserializeField(this, this.fields_[a], b), this.deserializedFields_[a] = b) : b;\n};\ngoog.proto2.Message.prototype.get$Value = function(a, b) {\n  var c = this.getValueForTag_(a);\n  if (this.fields_[a].isRepeated()) {\n    var d = b || 0;\n    goog.asserts.assert(0 <= d && d < c.length, \"Given index %s is out of bounds.  Repeated field length: %s\", d, c.length);\n    return c[d];\n  }\n  return c;\n};\ngoog.proto2.Message.prototype.get$ValueOrDefault = function(a, b) {\n  return this.has$Value(a) ? this.get$Value(a, b) : this.fields_[a].getDefaultValue();\n};\ngoog.proto2.Message.prototype.array$Values = function(a) {\n  return this.getValueForTag_(a) || [];\n};\ngoog.proto2.Message.prototype.count$Values = function(a) {\n  return this.fields_[a].isRepeated() ? this.has$Value(a) ? this.values_[a].length : 0 : this.has$Value(a) ? 1 : 0;\n};\ngoog.proto2.Message.prototype.set$Value = function(a, b) {\n  goog.asserts.ENABLE_ASSERTS && this.checkFieldType_(this.fields_[a], b);\n  this.values_[a] = b;\n  this.deserializedFields_ && (this.deserializedFields_[a] = b);\n};\ngoog.proto2.Message.prototype.add$Value = function(a, b) {\n  goog.asserts.ENABLE_ASSERTS && this.checkFieldType_(this.fields_[a], b);\n  this.values_[a] || (this.values_[a] = []);\n  this.values_[a].push(b);\n  this.deserializedFields_ && delete this.deserializedFields_[a];\n};\ngoog.proto2.Message.prototype.checkFieldType_ = function(a, b) {\n  a.getFieldType() == goog.proto2.FieldDescriptor.FieldType.ENUM ? goog.asserts.assertNumber(b) : goog.asserts.assert(Object(b).constructor == a.getNativeType());\n};\ngoog.proto2.Message.prototype.clear$Field = function(a) {\n  delete this.values_[a];\n  this.deserializedFields_ && delete this.deserializedFields_[a];\n};\ngoog.proto2.Message.createDescriptor = function(a, b) {\n  var c = [], d = b[0], e;\n  for (e in b) {\n    0 != e && c.push(new goog.proto2.FieldDescriptor(a, e, b[e]));\n  }\n  return new goog.proto2.Descriptor(a, d, c);\n};\ngoog.proto2.Serializer = function() {\n};\ngoog.proto2.Serializer.DECODE_SYMBOLIC_ENUMS = !1;\ngoog.proto2.Serializer.prototype.serialize = goog.abstractMethod;\ngoog.proto2.Serializer.prototype.getSerializedValue = function(a, b) {\n  return a.isCompositeType() ? this.serialize(b) : \"number\" !== typeof b || isFinite(b) ? b : b.toString();\n};\ngoog.proto2.Serializer.prototype.deserialize = function(a, b) {\n  var c = a.createMessageInstance();\n  this.deserializeTo(c, b);\n  goog.asserts.assert(c instanceof goog.proto2.Message);\n  return c;\n};\ngoog.proto2.Serializer.prototype.deserializeTo = goog.abstractMethod;\ngoog.proto2.Serializer.prototype.getDeserializedValue = function(a, b) {\n  if (a.isCompositeType()) {\n    return b instanceof goog.proto2.Message ? b : this.deserialize(a.getFieldMessageType(), b);\n  }\n  if (a.getFieldType() == goog.proto2.FieldDescriptor.FieldType.ENUM) {\n    if (goog.proto2.Serializer.DECODE_SYMBOLIC_ENUMS && \"string\" === typeof b) {\n      var c = a.getNativeType();\n      if (c.hasOwnProperty(b)) {\n        return c[b];\n      }\n    }\n    return \"string\" === typeof b && goog.proto2.Serializer.INTEGER_REGEX.test(b) && (c = Number(b), 0 < c) ? c : b;\n  }\n  if (!a.deserializationConversionPermitted()) {\n    return b;\n  }\n  c = a.getNativeType();\n  if (c === String) {\n    if (\"number\" === typeof b) {\n      return String(b);\n    }\n  } else {\n    if (c === Number && \"string\" === typeof b && (\"Infinity\" === b || \"-Infinity\" === b || \"NaN\" === b || goog.proto2.Serializer.INTEGER_REGEX.test(b))) {\n      return Number(b);\n    }\n  }\n  return b;\n};\ngoog.proto2.Serializer.INTEGER_REGEX = /^-?[0-9]+$/;\ngoog.proto2.LazyDeserializer = function() {\n};\ngoog.inherits(goog.proto2.LazyDeserializer, goog.proto2.Serializer);\ngoog.proto2.LazyDeserializer.prototype.deserialize = function(a, b) {\n  var c = a.createMessageInstance();\n  c.initializeForLazyDeserializer(this, b);\n  goog.asserts.assert(c instanceof goog.proto2.Message);\n  return c;\n};\ngoog.proto2.LazyDeserializer.prototype.deserializeTo = function(a, b) {\n  throw Error(\"Unimplemented\");\n};\ngoog.proto2.LazyDeserializer.prototype.deserializeField = goog.abstractMethod;\ngoog.proto2.PbLiteSerializer = function() {\n};\ngoog.inherits(goog.proto2.PbLiteSerializer, goog.proto2.LazyDeserializer);\ngoog.proto2.PbLiteSerializer.prototype.zeroIndexing_ = !1;\ngoog.proto2.PbLiteSerializer.prototype.setZeroIndexed = function(a) {\n  this.zeroIndexing_ = a;\n};\ngoog.proto2.PbLiteSerializer.prototype.serialize = function(a) {\n  for (var b = a.getDescriptor().getFields(), c = [], d = this.zeroIndexing_, e = 0; e < b.length; e++) {\n    var f = b[e];\n    if (a.has(f)) {\n      var g = f.getTag();\n      g = d ? g - 1 : g;\n      if (f.isRepeated()) {\n        c[g] = [];\n        for (var h = 0; h < a.countOf(f); h++) {\n          c[g][h] = this.getSerializedValue(f, a.get(f, h));\n        }\n      } else {\n        c[g] = this.getSerializedValue(f, a.get(f));\n      }\n    }\n  }\n  a.forEachUnknown(function(a, b) {\n    c[d ? a - 1 : a] = b;\n  });\n  return c;\n};\ngoog.proto2.PbLiteSerializer.prototype.deserializeField = function(a, b, c) {\n  if (null == c) {\n    return c;\n  }\n  if (b.isRepeated()) {\n    a = [];\n    goog.asserts.assert(goog.isArray(c), \"Value must be array: %s\", c);\n    for (var d = 0; d < c.length; d++) {\n      a[d] = this.getDeserializedValue(b, c[d]);\n    }\n    return a;\n  }\n  return this.getDeserializedValue(b, c);\n};\ngoog.proto2.PbLiteSerializer.prototype.getSerializedValue = function(a, b) {\n  return a.getFieldType() == goog.proto2.FieldDescriptor.FieldType.BOOL ? b ? 1 : 0 : goog.proto2.Serializer.prototype.getSerializedValue.apply(this, arguments);\n};\ngoog.proto2.PbLiteSerializer.prototype.getDeserializedValue = function(a, b) {\n  return a.getFieldType() == goog.proto2.FieldDescriptor.FieldType.BOOL ? (goog.asserts.assert(\"number\" === typeof b || \"boolean\" === typeof b, \"Value is expected to be a number or boolean\"), !!b) : goog.proto2.Serializer.prototype.getDeserializedValue.apply(this, arguments);\n};\ngoog.proto2.PbLiteSerializer.prototype.deserialize = function(a, b) {\n  var c = b;\n  if (this.zeroIndexing_) {\n    c = [];\n    for (var d in b) {\n      c[parseInt(d, 10) + 1] = b[d];\n    }\n  }\n  return goog.proto2.PbLiteSerializer.superClass_.deserialize.call(this, a, c);\n};\ngoog.labs.userAgent.engine = {};\ngoog.labs.userAgent.engine.isPresto = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Presto\");\n};\ngoog.labs.userAgent.engine.isTrident = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Trident\") || goog.labs.userAgent.util.matchUserAgent(\"MSIE\");\n};\ngoog.labs.userAgent.engine.isEdge = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Edge\");\n};\ngoog.labs.userAgent.engine.isWebKit = function() {\n  return goog.labs.userAgent.util.matchUserAgentIgnoreCase(\"WebKit\") && !goog.labs.userAgent.engine.isEdge();\n};\ngoog.labs.userAgent.engine.isGecko = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Gecko\") && !goog.labs.userAgent.engine.isWebKit() && !goog.labs.userAgent.engine.isTrident() && !goog.labs.userAgent.engine.isEdge();\n};\ngoog.labs.userAgent.engine.getVersion = function() {\n  var a = goog.labs.userAgent.util.getUserAgent();\n  if (a) {\n    a = goog.labs.userAgent.util.extractVersionTuples(a);\n    var b = goog.labs.userAgent.engine.getEngineTuple_(a);\n    if (b) {\n      return \"Gecko\" == b[0] ? goog.labs.userAgent.engine.getVersionForKey_(a, \"Firefox\") : b[1];\n    }\n    a = a[0];\n    var c;\n    if (a && (c = a[2]) && (c = /Trident\\/([^\\s;]+)/.exec(c))) {\n      return c[1];\n    }\n  }\n  return \"\";\n};\ngoog.labs.userAgent.engine.getEngineTuple_ = function(a) {\n  if (!goog.labs.userAgent.engine.isEdge()) {\n    return a[1];\n  }\n  for (var b = 0; b < a.length; b++) {\n    var c = a[b];\n    if (\"Edge\" == c[0]) {\n      return c;\n    }\n  }\n};\ngoog.labs.userAgent.engine.isVersionOrHigher = function(a) {\n  return 0 <= goog.string.compareVersions(goog.labs.userAgent.engine.getVersion(), a);\n};\ngoog.labs.userAgent.engine.getVersionForKey_ = function(a, b) {\n  var c = goog.array.find(a, function(a) {\n    return b == a[0];\n  });\n  return c && c[1] || \"\";\n};\ngoog.labs.userAgent.platform = {};\ngoog.labs.userAgent.platform.isAndroid = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Android\");\n};\ngoog.labs.userAgent.platform.isIpod = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"iPod\");\n};\ngoog.labs.userAgent.platform.isIphone = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"iPhone\") && !goog.labs.userAgent.util.matchUserAgent(\"iPod\") && !goog.labs.userAgent.util.matchUserAgent(\"iPad\");\n};\ngoog.labs.userAgent.platform.isIpad = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"iPad\");\n};\ngoog.labs.userAgent.platform.isIos = function() {\n  return goog.labs.userAgent.platform.isIphone() || goog.labs.userAgent.platform.isIpad() || goog.labs.userAgent.platform.isIpod();\n};\ngoog.labs.userAgent.platform.isMacintosh = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Macintosh\");\n};\ngoog.labs.userAgent.platform.isLinux = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Linux\");\n};\ngoog.labs.userAgent.platform.isWindows = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Windows\");\n};\ngoog.labs.userAgent.platform.isChromeOS = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"CrOS\");\n};\ngoog.labs.userAgent.platform.isChromecast = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"CrKey\");\n};\ngoog.labs.userAgent.platform.isKaiOS = function() {\n  return goog.labs.userAgent.util.matchUserAgentIgnoreCase(\"KaiOS\");\n};\ngoog.labs.userAgent.platform.isGo2Phone = function() {\n  return goog.labs.userAgent.util.matchUserAgentIgnoreCase(\"GAFP\");\n};\ngoog.labs.userAgent.platform.getVersion = function() {\n  var a = goog.labs.userAgent.util.getUserAgent(), b = \"\";\n  goog.labs.userAgent.platform.isWindows() ? (b = /Windows (?:NT|Phone) ([0-9.]+)/, b = (a = b.exec(a)) ? a[1] : \"0.0\") : goog.labs.userAgent.platform.isIos() ? (b = /(?:iPhone|iPod|iPad|CPU)\\s+OS\\s+(\\S+)/, b = (a = b.exec(a)) && a[1].replace(/_/g, \".\")) : goog.labs.userAgent.platform.isMacintosh() ? (b = /Mac OS X ([0-9_.]+)/, b = (a = b.exec(a)) ? a[1].replace(/_/g, \".\") : \"10\") : goog.labs.userAgent.platform.isKaiOS() ? (b = /(?:KaiOS)\\/(\\S+)/i, b = (a = b.exec(a)) && a[1]) : goog.labs.userAgent.platform.isAndroid() ?\n  (b = /Android\\s+([^\\);]+)(\\)|;)/, b = (a = b.exec(a)) && a[1]) : goog.labs.userAgent.platform.isChromeOS() && (b = /(?:CrOS\\s+(?:i686|x86_64)\\s+([0-9.]+))/, b = (a = b.exec(a)) && a[1]);\n  return b || \"\";\n};\ngoog.labs.userAgent.platform.isVersionOrHigher = function(a) {\n  return 0 <= goog.string.compareVersions(goog.labs.userAgent.platform.getVersion(), a);\n};\ngoog.reflect = {};\ngoog.reflect.object = function(a, b) {\n  return b;\n};\ngoog.reflect.objectProperty = function(a, b) {\n  return a;\n};\ngoog.reflect.sinkValue = function(a) {\n  goog.reflect.sinkValue[\" \"](a);\n  return a;\n};\ngoog.reflect.sinkValue[\" \"] = goog.nullFunction;\ngoog.reflect.canAccessProperty = function(a, b) {\n  try {\n    return goog.reflect.sinkValue(a[b]), !0;\n  } catch (c) {\n  }\n  return !1;\n};\ngoog.reflect.cache = function(a, b, c, d) {\n  d = d ? d(b) : b;\n  return Object.prototype.hasOwnProperty.call(a, d) ? a[d] : a[d] = c(b);\n};\ngoog.userAgent = {};\ngoog.userAgent.ASSUME_IE = !1;\ngoog.userAgent.ASSUME_EDGE = !1;\ngoog.userAgent.ASSUME_GECKO = !1;\ngoog.userAgent.ASSUME_WEBKIT = !1;\ngoog.userAgent.ASSUME_MOBILE_WEBKIT = !1;\ngoog.userAgent.ASSUME_OPERA = !1;\ngoog.userAgent.ASSUME_ANY_VERSION = !1;\ngoog.userAgent.BROWSER_KNOWN_ = goog.userAgent.ASSUME_IE || goog.userAgent.ASSUME_EDGE || goog.userAgent.ASSUME_GECKO || goog.userAgent.ASSUME_MOBILE_WEBKIT || goog.userAgent.ASSUME_WEBKIT || goog.userAgent.ASSUME_OPERA;\ngoog.userAgent.getUserAgentString = function() {\n  return goog.labs.userAgent.util.getUserAgent();\n};\ngoog.userAgent.getNavigatorTyped = function() {\n  return goog.global.navigator || null;\n};\ngoog.userAgent.getNavigator = function() {\n  return goog.userAgent.getNavigatorTyped();\n};\ngoog.userAgent.OPERA = goog.userAgent.BROWSER_KNOWN_ ? goog.userAgent.ASSUME_OPERA : goog.labs.userAgent.browser.isOpera();\ngoog.userAgent.IE = goog.userAgent.BROWSER_KNOWN_ ? goog.userAgent.ASSUME_IE : goog.labs.userAgent.browser.isIE();\ngoog.userAgent.EDGE = goog.userAgent.BROWSER_KNOWN_ ? goog.userAgent.ASSUME_EDGE : goog.labs.userAgent.engine.isEdge();\ngoog.userAgent.EDGE_OR_IE = goog.userAgent.EDGE || goog.userAgent.IE;\ngoog.userAgent.GECKO = goog.userAgent.BROWSER_KNOWN_ ? goog.userAgent.ASSUME_GECKO : goog.labs.userAgent.engine.isGecko();\ngoog.userAgent.WEBKIT = goog.userAgent.BROWSER_KNOWN_ ? goog.userAgent.ASSUME_WEBKIT || goog.userAgent.ASSUME_MOBILE_WEBKIT : goog.labs.userAgent.engine.isWebKit();\ngoog.userAgent.isMobile_ = function() {\n  return goog.userAgent.WEBKIT && goog.labs.userAgent.util.matchUserAgent(\"Mobile\");\n};\ngoog.userAgent.MOBILE = goog.userAgent.ASSUME_MOBILE_WEBKIT || goog.userAgent.isMobile_();\ngoog.userAgent.SAFARI = goog.userAgent.WEBKIT;\ngoog.userAgent.determinePlatform_ = function() {\n  var a = goog.userAgent.getNavigatorTyped();\n  return a && a.platform || \"\";\n};\ngoog.userAgent.PLATFORM = goog.userAgent.determinePlatform_();\ngoog.userAgent.ASSUME_MAC = !1;\ngoog.userAgent.ASSUME_WINDOWS = !1;\ngoog.userAgent.ASSUME_LINUX = !1;\ngoog.userAgent.ASSUME_X11 = !1;\ngoog.userAgent.ASSUME_ANDROID = !1;\ngoog.userAgent.ASSUME_IPHONE = !1;\ngoog.userAgent.ASSUME_IPAD = !1;\ngoog.userAgent.ASSUME_IPOD = !1;\ngoog.userAgent.ASSUME_KAIOS = !1;\ngoog.userAgent.ASSUME_GO2PHONE = !1;\ngoog.userAgent.PLATFORM_KNOWN_ = goog.userAgent.ASSUME_MAC || goog.userAgent.ASSUME_WINDOWS || goog.userAgent.ASSUME_LINUX || goog.userAgent.ASSUME_X11 || goog.userAgent.ASSUME_ANDROID || goog.userAgent.ASSUME_IPHONE || goog.userAgent.ASSUME_IPAD || goog.userAgent.ASSUME_IPOD;\ngoog.userAgent.MAC = goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_MAC : goog.labs.userAgent.platform.isMacintosh();\ngoog.userAgent.WINDOWS = goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_WINDOWS : goog.labs.userAgent.platform.isWindows();\ngoog.userAgent.isLegacyLinux_ = function() {\n  return goog.labs.userAgent.platform.isLinux() || goog.labs.userAgent.platform.isChromeOS();\n};\ngoog.userAgent.LINUX = goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_LINUX : goog.userAgent.isLegacyLinux_();\ngoog.userAgent.isX11_ = function() {\n  var a = goog.userAgent.getNavigatorTyped();\n  return !!a && goog.string.contains(a.appVersion || \"\", \"X11\");\n};\ngoog.userAgent.X11 = goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_X11 : goog.userAgent.isX11_();\ngoog.userAgent.ANDROID = goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_ANDROID : goog.labs.userAgent.platform.isAndroid();\ngoog.userAgent.IPHONE = goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_IPHONE : goog.labs.userAgent.platform.isIphone();\ngoog.userAgent.IPAD = goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_IPAD : goog.labs.userAgent.platform.isIpad();\ngoog.userAgent.IPOD = goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_IPOD : goog.labs.userAgent.platform.isIpod();\ngoog.userAgent.IOS = goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_IPHONE || goog.userAgent.ASSUME_IPAD || goog.userAgent.ASSUME_IPOD : goog.labs.userAgent.platform.isIos();\ngoog.userAgent.KAIOS = goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_KAIOS : goog.labs.userAgent.platform.isKaiOS();\ngoog.userAgent.GO2PHONE = goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_GO2PHONE : goog.labs.userAgent.platform.isGo2Phone();\ngoog.userAgent.determineVersion_ = function() {\n  var a = \"\", b = goog.userAgent.getVersionRegexResult_();\n  b && (a = b ? b[1] : \"\");\n  return goog.userAgent.IE && (b = goog.userAgent.getDocumentMode_(), null != b && b > parseFloat(a)) ? String(b) : a;\n};\ngoog.userAgent.getVersionRegexResult_ = function() {\n  var a = goog.userAgent.getUserAgentString();\n  if (goog.userAgent.GECKO) {\n    return /rv:([^\\);]+)(\\)|;)/.exec(a);\n  }\n  if (goog.userAgent.EDGE) {\n    return /Edge\\/([\\d\\.]+)/.exec(a);\n  }\n  if (goog.userAgent.IE) {\n    return /\\b(?:MSIE|rv)[: ]([^\\);]+)(\\)|;)/.exec(a);\n  }\n  if (goog.userAgent.WEBKIT) {\n    return /WebKit\\/(\\S+)/.exec(a);\n  }\n  if (goog.userAgent.OPERA) {\n    return /(?:Version)[ \\/]?(\\S+)/.exec(a);\n  }\n};\ngoog.userAgent.getDocumentMode_ = function() {\n  var a = goog.global.document;\n  return a ? a.documentMode : void 0;\n};\ngoog.userAgent.VERSION = goog.userAgent.determineVersion_();\ngoog.userAgent.compare = function(a, b) {\n  return goog.string.compareVersions(a, b);\n};\ngoog.userAgent.isVersionOrHigherCache_ = {};\ngoog.userAgent.isVersionOrHigher = function(a) {\n  return goog.userAgent.ASSUME_ANY_VERSION || goog.reflect.cache(goog.userAgent.isVersionOrHigherCache_, a, function() {\n    return 0 <= goog.string.compareVersions(goog.userAgent.VERSION, a);\n  });\n};\ngoog.userAgent.isVersion = goog.userAgent.isVersionOrHigher;\ngoog.userAgent.isDocumentModeOrHigher = function(a) {\n  return Number(goog.userAgent.DOCUMENT_MODE) >= a;\n};\ngoog.userAgent.isDocumentMode = goog.userAgent.isDocumentModeOrHigher;\ngoog.userAgent.DOCUMENT_MODE = function() {\n  if (goog.global.document && goog.userAgent.IE) {\n    return goog.userAgent.getDocumentMode_();\n  }\n}();\ngoog.dom.BrowserFeature = {};\ngoog.dom.BrowserFeature.ASSUME_NO_OFFSCREEN_CANVAS = !1;\ngoog.dom.BrowserFeature.ASSUME_OFFSCREEN_CANVAS = !1;\ngoog.dom.BrowserFeature.detectOffscreenCanvas_ = function(a) {\n  try {\n    return !!(new self.OffscreenCanvas(0, 0)).getContext(a);\n  } catch (b) {\n  }\n  return !1;\n};\ngoog.dom.BrowserFeature.OFFSCREEN_CANVAS_2D = !goog.dom.BrowserFeature.ASSUME_NO_OFFSCREEN_CANVAS && (goog.dom.BrowserFeature.ASSUME_OFFSCREEN_CANVAS || goog.dom.BrowserFeature.detectOffscreenCanvas_(\"2d\"));\ngoog.dom.BrowserFeature.CAN_ADD_NAME_OR_TYPE_ATTRIBUTES = !goog.userAgent.IE || goog.userAgent.isDocumentModeOrHigher(9);\ngoog.dom.BrowserFeature.CAN_USE_CHILDREN_ATTRIBUTE = !goog.userAgent.GECKO && !goog.userAgent.IE || goog.userAgent.IE && goog.userAgent.isDocumentModeOrHigher(9) || goog.userAgent.GECKO && goog.userAgent.isVersionOrHigher(\"1.9.1\");\ngoog.dom.BrowserFeature.CAN_USE_INNER_TEXT = goog.userAgent.IE && !goog.userAgent.isVersionOrHigher(\"9\");\ngoog.dom.BrowserFeature.CAN_USE_PARENT_ELEMENT_PROPERTY = goog.userAgent.IE || goog.userAgent.OPERA || goog.userAgent.WEBKIT;\ngoog.dom.BrowserFeature.INNER_HTML_NEEDS_SCOPED_ELEMENT = goog.userAgent.IE;\ngoog.dom.BrowserFeature.LEGACY_IE_RANGES = goog.userAgent.IE && !goog.userAgent.isDocumentModeOrHigher(9);\ngoog.math = {};\ngoog.math.randomInt = function(a) {\n  return Math.floor(Math.random() * a);\n};\ngoog.math.uniformRandom = function(a, b) {\n  return a + Math.random() * (b - a);\n};\ngoog.math.clamp = function(a, b, c) {\n  return Math.min(Math.max(a, b), c);\n};\ngoog.math.modulo = function(a, b) {\n  var c = a % b;\n  return 0 > c * b ? c + b : c;\n};\ngoog.math.lerp = function(a, b, c) {\n  return a + c * (b - a);\n};\ngoog.math.nearlyEquals = function(a, b, c) {\n  return Math.abs(a - b) <= (c || 0.000001);\n};\ngoog.math.standardAngle = function(a) {\n  return goog.math.modulo(a, 360);\n};\ngoog.math.standardAngleInRadians = function(a) {\n  return goog.math.modulo(a, 2 * Math.PI);\n};\ngoog.math.toRadians = function(a) {\n  return a * Math.PI / 180;\n};\ngoog.math.toDegrees = function(a) {\n  return 180 * a / Math.PI;\n};\ngoog.math.angleDx = function(a, b) {\n  return b * Math.cos(goog.math.toRadians(a));\n};\ngoog.math.angleDy = function(a, b) {\n  return b * Math.sin(goog.math.toRadians(a));\n};\ngoog.math.angle = function(a, b, c, d) {\n  return goog.math.standardAngle(goog.math.toDegrees(Math.atan2(d - b, c - a)));\n};\ngoog.math.angleDifference = function(a, b) {\n  var c = goog.math.standardAngle(b) - goog.math.standardAngle(a);\n  180 < c ? c -= 360 : -180 >= c && (c = 360 + c);\n  return c;\n};\ngoog.math.sign = function(a) {\n  return 0 < a ? 1 : 0 > a ? -1 : a;\n};\ngoog.math.longestCommonSubsequence = function(a, b, c, d) {\n  c = c || function(a, b) {\n    return a == b;\n  };\n  d = d || function(b, c) {\n    return a[b];\n  };\n  for (var e = a.length, f = b.length, g = [], h = 0; h < e + 1; h++) {\n    g[h] = [], g[h][0] = 0;\n  }\n  for (var k = 0; k < f + 1; k++) {\n    g[0][k] = 0;\n  }\n  for (h = 1; h <= e; h++) {\n    for (k = 1; k <= f; k++) {\n      c(a[h - 1], b[k - 1]) ? g[h][k] = g[h - 1][k - 1] + 1 : g[h][k] = Math.max(g[h - 1][k], g[h][k - 1]);\n    }\n  }\n  var l = [];\n  h = e;\n  for (k = f; 0 < h && 0 < k;) {\n    c(a[h - 1], b[k - 1]) ? (l.unshift(d(h - 1, k - 1)), h--, k--) : g[h - 1][k] > g[h][k - 1] ? h-- : k--;\n  }\n  return l;\n};\ngoog.math.sum = function(a) {\n  return goog.array.reduce(arguments, function(a, c) {\n    return a + c;\n  }, 0);\n};\ngoog.math.average = function(a) {\n  return goog.math.sum.apply(null, arguments) / arguments.length;\n};\ngoog.math.sampleVariance = function(a) {\n  var b = arguments.length;\n  if (2 > b) {\n    return 0;\n  }\n  var c = goog.math.average.apply(null, arguments);\n  return goog.math.sum.apply(null, goog.array.map(arguments, function(a) {\n    return Math.pow(a - c, 2);\n  })) / (b - 1);\n};\ngoog.math.standardDeviation = function(a) {\n  return Math.sqrt(goog.math.sampleVariance.apply(null, arguments));\n};\ngoog.math.isInt = function(a) {\n  return isFinite(a) && 0 == a % 1;\n};\ngoog.math.isFiniteNumber = function(a) {\n  return isFinite(a);\n};\ngoog.math.isNegativeZero = function(a) {\n  return 0 == a && 0 > 1 / a;\n};\ngoog.math.log10Floor = function(a) {\n  if (0 < a) {\n    var b = Math.round(Math.log(a) * Math.LOG10E);\n    return b - (parseFloat(\"1e\" + b) > a ? 1 : 0);\n  }\n  return 0 == a ? -Infinity : NaN;\n};\ngoog.math.safeFloor = function(a, b) {\n  goog.asserts.assert(void 0 === b || 0 < b);\n  return Math.floor(a + (b || 2e-15));\n};\ngoog.math.safeCeil = function(a, b) {\n  goog.asserts.assert(void 0 === b || 0 < b);\n  return Math.ceil(a - (b || 2e-15));\n};\ngoog.math.Coordinate = function(a, b) {\n  this.x = void 0 !== a ? a : 0;\n  this.y = void 0 !== b ? b : 0;\n};\ngoog.math.Coordinate.prototype.clone = function() {\n  return new goog.math.Coordinate(this.x, this.y);\n};\ngoog.DEBUG && (goog.math.Coordinate.prototype.toString = function() {\n  return \"(\" + this.x + \", \" + this.y + \")\";\n});\ngoog.math.Coordinate.prototype.equals = function(a) {\n  return a instanceof goog.math.Coordinate && goog.math.Coordinate.equals(this, a);\n};\ngoog.math.Coordinate.equals = function(a, b) {\n  return a == b ? !0 : a && b ? a.x == b.x && a.y == b.y : !1;\n};\ngoog.math.Coordinate.distance = function(a, b) {\n  var c = a.x - b.x, d = a.y - b.y;\n  return Math.sqrt(c * c + d * d);\n};\ngoog.math.Coordinate.magnitude = function(a) {\n  return Math.sqrt(a.x * a.x + a.y * a.y);\n};\ngoog.math.Coordinate.azimuth = function(a) {\n  return goog.math.angle(0, 0, a.x, a.y);\n};\ngoog.math.Coordinate.squaredDistance = function(a, b) {\n  var c = a.x - b.x, d = a.y - b.y;\n  return c * c + d * d;\n};\ngoog.math.Coordinate.difference = function(a, b) {\n  return new goog.math.Coordinate(a.x - b.x, a.y - b.y);\n};\ngoog.math.Coordinate.sum = function(a, b) {\n  return new goog.math.Coordinate(a.x + b.x, a.y + b.y);\n};\ngoog.math.Coordinate.prototype.ceil = function() {\n  this.x = Math.ceil(this.x);\n  this.y = Math.ceil(this.y);\n  return this;\n};\ngoog.math.Coordinate.prototype.floor = function() {\n  this.x = Math.floor(this.x);\n  this.y = Math.floor(this.y);\n  return this;\n};\ngoog.math.Coordinate.prototype.round = function() {\n  this.x = Math.round(this.x);\n  this.y = Math.round(this.y);\n  return this;\n};\ngoog.math.Coordinate.prototype.translate = function(a, b) {\n  a instanceof goog.math.Coordinate ? (this.x += a.x, this.y += a.y) : (this.x += Number(a), \"number\" === typeof b && (this.y += b));\n  return this;\n};\ngoog.math.Coordinate.prototype.scale = function(a, b) {\n  this.x *= a;\n  this.y *= \"number\" === typeof b ? b : a;\n  return this;\n};\ngoog.math.Coordinate.prototype.rotateRadians = function(a, b) {\n  var c = b || new goog.math.Coordinate(0, 0), d = this.x, e = this.y, f = Math.cos(a), g = Math.sin(a);\n  this.x = (d - c.x) * f - (e - c.y) * g + c.x;\n  this.y = (d - c.x) * g + (e - c.y) * f + c.y;\n};\ngoog.math.Coordinate.prototype.rotateDegrees = function(a, b) {\n  this.rotateRadians(goog.math.toRadians(a), b);\n};\ngoog.math.Size = function(a, b) {\n  this.width = a;\n  this.height = b;\n};\ngoog.math.Size.equals = function(a, b) {\n  return a == b ? !0 : a && b ? a.width == b.width && a.height == b.height : !1;\n};\ngoog.math.Size.prototype.clone = function() {\n  return new goog.math.Size(this.width, this.height);\n};\ngoog.DEBUG && (goog.math.Size.prototype.toString = function() {\n  return \"(\" + this.width + \" x \" + this.height + \")\";\n});\ngoog.math.Size.prototype.getLongest = function() {\n  return Math.max(this.width, this.height);\n};\ngoog.math.Size.prototype.getShortest = function() {\n  return Math.min(this.width, this.height);\n};\ngoog.math.Size.prototype.area = function() {\n  return this.width * this.height;\n};\ngoog.math.Size.prototype.perimeter = function() {\n  return 2 * (this.width + this.height);\n};\ngoog.math.Size.prototype.aspectRatio = function() {\n  return this.width / this.height;\n};\ngoog.math.Size.prototype.isEmpty = function() {\n  return !this.area();\n};\ngoog.math.Size.prototype.ceil = function() {\n  this.width = Math.ceil(this.width);\n  this.height = Math.ceil(this.height);\n  return this;\n};\ngoog.math.Size.prototype.fitsInside = function(a) {\n  return this.width <= a.width && this.height <= a.height;\n};\ngoog.math.Size.prototype.floor = function() {\n  this.width = Math.floor(this.width);\n  this.height = Math.floor(this.height);\n  return this;\n};\ngoog.math.Size.prototype.round = function() {\n  this.width = Math.round(this.width);\n  this.height = Math.round(this.height);\n  return this;\n};\ngoog.math.Size.prototype.scale = function(a, b) {\n  this.width *= a;\n  this.height *= \"number\" === typeof b ? b : a;\n  return this;\n};\ngoog.math.Size.prototype.scaleToCover = function(a) {\n  a = this.aspectRatio() <= a.aspectRatio() ? a.width / this.width : a.height / this.height;\n  return this.scale(a);\n};\ngoog.math.Size.prototype.scaleToFit = function(a) {\n  a = this.aspectRatio() > a.aspectRatio() ? a.width / this.width : a.height / this.height;\n  return this.scale(a);\n};\ngoog.dom.ASSUME_QUIRKS_MODE = !1;\ngoog.dom.ASSUME_STANDARDS_MODE = !1;\ngoog.dom.COMPAT_MODE_KNOWN_ = goog.dom.ASSUME_QUIRKS_MODE || goog.dom.ASSUME_STANDARDS_MODE;\ngoog.dom.getDomHelper = function(a) {\n  return a ? new goog.dom.DomHelper(goog.dom.getOwnerDocument(a)) : goog.dom.defaultDomHelper_ || (goog.dom.defaultDomHelper_ = new goog.dom.DomHelper);\n};\ngoog.dom.getDocument = function() {\n  return document;\n};\ngoog.dom.getElement = function(a) {\n  return goog.dom.getElementHelper_(document, a);\n};\ngoog.dom.getElementHelper_ = function(a, b) {\n  return \"string\" === typeof b ? a.getElementById(b) : b;\n};\ngoog.dom.getRequiredElement = function(a) {\n  return goog.dom.getRequiredElementHelper_(document, a);\n};\ngoog.dom.getRequiredElementHelper_ = function(a, b) {\n  goog.asserts.assertString(b);\n  var c = goog.dom.getElementHelper_(a, b);\n  return c = goog.asserts.assertElement(c, \"No element found with id: \" + b);\n};\ngoog.dom.$ = goog.dom.getElement;\ngoog.dom.getElementsByTagName = function(a, b) {\n  return (b || document).getElementsByTagName(String(a));\n};\ngoog.dom.getElementsByTagNameAndClass = function(a, b, c) {\n  return goog.dom.getElementsByTagNameAndClass_(document, a, b, c);\n};\ngoog.dom.getElementByTagNameAndClass = function(a, b, c) {\n  return goog.dom.getElementByTagNameAndClass_(document, a, b, c);\n};\ngoog.dom.getElementsByClass = function(a, b) {\n  var c = b || document;\n  return goog.dom.canUseQuerySelector_(c) ? c.querySelectorAll(\".\" + a) : goog.dom.getElementsByTagNameAndClass_(document, \"*\", a, b);\n};\ngoog.dom.getElementByClass = function(a, b) {\n  var c = b || document;\n  return (c.getElementsByClassName ? c.getElementsByClassName(a)[0] : goog.dom.getElementByTagNameAndClass_(document, \"*\", a, b)) || null;\n};\ngoog.dom.getRequiredElementByClass = function(a, b) {\n  var c = goog.dom.getElementByClass(a, b);\n  return goog.asserts.assert(c, \"No element found with className: \" + a);\n};\ngoog.dom.canUseQuerySelector_ = function(a) {\n  return !(!a.querySelectorAll || !a.querySelector);\n};\ngoog.dom.getElementsByTagNameAndClass_ = function(a, b, c, d) {\n  a = d || a;\n  b = b && \"*\" != b ? String(b).toUpperCase() : \"\";\n  if (goog.dom.canUseQuerySelector_(a) && (b || c)) {\n    return a.querySelectorAll(b + (c ? \".\" + c : \"\"));\n  }\n  if (c && a.getElementsByClassName) {\n    a = a.getElementsByClassName(c);\n    if (b) {\n      d = {};\n      for (var e = 0, f = 0, g; g = a[f]; f++) {\n        b == g.nodeName && (d[e++] = g);\n      }\n      d.length = e;\n      return d;\n    }\n    return a;\n  }\n  a = a.getElementsByTagName(b || \"*\");\n  if (c) {\n    d = {};\n    for (f = e = 0; g = a[f]; f++) {\n      b = g.className, \"function\" == typeof b.split && goog.array.contains(b.split(/\\s+/), c) && (d[e++] = g);\n    }\n    d.length = e;\n    return d;\n  }\n  return a;\n};\ngoog.dom.getElementByTagNameAndClass_ = function(a, b, c, d) {\n  var e = d || a, f = b && \"*\" != b ? String(b).toUpperCase() : \"\";\n  return goog.dom.canUseQuerySelector_(e) && (f || c) ? e.querySelector(f + (c ? \".\" + c : \"\")) : goog.dom.getElementsByTagNameAndClass_(a, b, c, d)[0] || null;\n};\ngoog.dom.$$ = goog.dom.getElementsByTagNameAndClass;\ngoog.dom.setProperties = function(a, b) {\n  goog.object.forEach(b, function(b, d) {\n    b && \"object\" == typeof b && b.implementsGoogStringTypedString && (b = b.getTypedStringValue());\n    \"style\" == d ? a.style.cssText = b : \"class\" == d ? a.className = b : \"for\" == d ? a.htmlFor = b : goog.dom.DIRECT_ATTRIBUTE_MAP_.hasOwnProperty(d) ? a.setAttribute(goog.dom.DIRECT_ATTRIBUTE_MAP_[d], b) : goog.string.startsWith(d, \"aria-\") || goog.string.startsWith(d, \"data-\") ? a.setAttribute(d, b) : a[d] = b;\n  });\n};\ngoog.dom.DIRECT_ATTRIBUTE_MAP_ = {cellpadding:\"cellPadding\", cellspacing:\"cellSpacing\", colspan:\"colSpan\", frameborder:\"frameBorder\", height:\"height\", maxlength:\"maxLength\", nonce:\"nonce\", role:\"role\", rowspan:\"rowSpan\", type:\"type\", usemap:\"useMap\", valign:\"vAlign\", width:\"width\"};\ngoog.dom.getViewportSize = function(a) {\n  return goog.dom.getViewportSize_(a || window);\n};\ngoog.dom.getViewportSize_ = function(a) {\n  a = a.document;\n  a = goog.dom.isCss1CompatMode_(a) ? a.documentElement : a.body;\n  return new goog.math.Size(a.clientWidth, a.clientHeight);\n};\ngoog.dom.getDocumentHeight = function() {\n  return goog.dom.getDocumentHeight_(window);\n};\ngoog.dom.getDocumentHeightForWindow = function(a) {\n  return goog.dom.getDocumentHeight_(a);\n};\ngoog.dom.getDocumentHeight_ = function(a) {\n  var b = a.document, c = 0;\n  if (b) {\n    c = b.body;\n    var d = b.documentElement;\n    if (!d || !c) {\n      return 0;\n    }\n    a = goog.dom.getViewportSize_(a).height;\n    if (goog.dom.isCss1CompatMode_(b) && d.scrollHeight) {\n      c = d.scrollHeight != a ? d.scrollHeight : d.offsetHeight;\n    } else {\n      b = d.scrollHeight;\n      var e = d.offsetHeight;\n      d.clientHeight != e && (b = c.scrollHeight, e = c.offsetHeight);\n      c = b > a ? b > e ? b : e : b < e ? b : e;\n    }\n  }\n  return c;\n};\ngoog.dom.getPageScroll = function(a) {\n  return goog.dom.getDomHelper((a || goog.global || window).document).getDocumentScroll();\n};\ngoog.dom.getDocumentScroll = function() {\n  return goog.dom.getDocumentScroll_(document);\n};\ngoog.dom.getDocumentScroll_ = function(a) {\n  var b = goog.dom.getDocumentScrollElement_(a);\n  a = goog.dom.getWindow_(a);\n  return goog.userAgent.IE && goog.userAgent.isVersionOrHigher(\"10\") && a.pageYOffset != b.scrollTop ? new goog.math.Coordinate(b.scrollLeft, b.scrollTop) : new goog.math.Coordinate(a.pageXOffset || b.scrollLeft, a.pageYOffset || b.scrollTop);\n};\ngoog.dom.getDocumentScrollElement = function() {\n  return goog.dom.getDocumentScrollElement_(document);\n};\ngoog.dom.getDocumentScrollElement_ = function(a) {\n  return a.scrollingElement ? a.scrollingElement : !goog.userAgent.WEBKIT && goog.dom.isCss1CompatMode_(a) ? a.documentElement : a.body || a.documentElement;\n};\ngoog.dom.getWindow = function(a) {\n  return a ? goog.dom.getWindow_(a) : window;\n};\ngoog.dom.getWindow_ = function(a) {\n  return a.parentWindow || a.defaultView;\n};\ngoog.dom.createDom = function(a, b, c) {\n  return goog.dom.createDom_(document, arguments);\n};\ngoog.dom.createDom_ = function(a, b) {\n  var c = String(b[0]), d = b[1];\n  if (!goog.dom.BrowserFeature.CAN_ADD_NAME_OR_TYPE_ATTRIBUTES && d && (d.name || d.type)) {\n    c = [\"<\", c];\n    d.name && c.push(' name=\"', goog.string.htmlEscape(d.name), '\"');\n    if (d.type) {\n      c.push(' type=\"', goog.string.htmlEscape(d.type), '\"');\n      var e = {};\n      goog.object.extend(e, d);\n      delete e.type;\n      d = e;\n    }\n    c.push(\">\");\n    c = c.join(\"\");\n  }\n  c = goog.dom.createElement_(a, c);\n  d && (\"string\" === typeof d ? c.className = d : goog.isArray(d) ? c.className = d.join(\" \") : goog.dom.setProperties(c, d));\n  2 < b.length && goog.dom.append_(a, c, b, 2);\n  return c;\n};\ngoog.dom.append_ = function(a, b, c, d) {\n  function e(c) {\n    c && b.appendChild(\"string\" === typeof c ? a.createTextNode(c) : c);\n  }\n  for (; d < c.length; d++) {\n    var f = c[d];\n    goog.isArrayLike(f) && !goog.dom.isNodeLike(f) ? goog.array.forEach(goog.dom.isNodeList(f) ? goog.array.toArray(f) : f, e) : e(f);\n  }\n};\ngoog.dom.$dom = goog.dom.createDom;\ngoog.dom.createElement = function(a) {\n  return goog.dom.createElement_(document, a);\n};\ngoog.dom.createElement_ = function(a, b) {\n  b = String(b);\n  \"application/xhtml+xml\" === a.contentType && (b = b.toLowerCase());\n  return a.createElement(b);\n};\ngoog.dom.createTextNode = function(a) {\n  return document.createTextNode(String(a));\n};\ngoog.dom.createTable = function(a, b, c) {\n  return goog.dom.createTable_(document, a, b, !!c);\n};\ngoog.dom.createTable_ = function(a, b, c, d) {\n  for (var e = goog.dom.createElement_(a, \"TABLE\"), f = e.appendChild(goog.dom.createElement_(a, \"TBODY\")), g = 0; g < b; g++) {\n    for (var h = goog.dom.createElement_(a, \"TR\"), k = 0; k < c; k++) {\n      var l = goog.dom.createElement_(a, \"TD\");\n      d && goog.dom.setTextContent(l, goog.string.Unicode.NBSP);\n      h.appendChild(l);\n    }\n    f.appendChild(h);\n  }\n  return e;\n};\ngoog.dom.constHtmlToNode = function(a) {\n  var b = goog.array.map(arguments, goog.string.Const.unwrap);\n  b = goog.html.uncheckedconversions.safeHtmlFromStringKnownToSatisfyTypeContract(goog.string.Const.from(\"Constant HTML string, that gets turned into a Node later, so it will be automatically balanced.\"), b.join(\"\"));\n  return goog.dom.safeHtmlToNode(b);\n};\ngoog.dom.safeHtmlToNode = function(a) {\n  return goog.dom.safeHtmlToNode_(document, a);\n};\ngoog.dom.safeHtmlToNode_ = function(a, b) {\n  var c = goog.dom.createElement_(a, \"DIV\");\n  goog.dom.BrowserFeature.INNER_HTML_NEEDS_SCOPED_ELEMENT ? (goog.dom.safe.setInnerHtml(c, goog.html.SafeHtml.concat(goog.html.SafeHtml.BR, b)), c.removeChild(goog.asserts.assert(c.firstChild))) : goog.dom.safe.setInnerHtml(c, b);\n  return goog.dom.childrenToNode_(a, c);\n};\ngoog.dom.childrenToNode_ = function(a, b) {\n  if (1 == b.childNodes.length) {\n    return b.removeChild(goog.asserts.assert(b.firstChild));\n  }\n  for (var c = a.createDocumentFragment(); b.firstChild;) {\n    c.appendChild(b.firstChild);\n  }\n  return c;\n};\ngoog.dom.isCss1CompatMode = function() {\n  return goog.dom.isCss1CompatMode_(document);\n};\ngoog.dom.isCss1CompatMode_ = function(a) {\n  return goog.dom.COMPAT_MODE_KNOWN_ ? goog.dom.ASSUME_STANDARDS_MODE : \"CSS1Compat\" == a.compatMode;\n};\ngoog.dom.canHaveChildren = function(a) {\n  if (a.nodeType != goog.dom.NodeType.ELEMENT) {\n    return !1;\n  }\n  switch(a.tagName) {\n    case \"APPLET\":\n    case \"AREA\":\n    case \"BASE\":\n    case \"BR\":\n    case \"COL\":\n    case \"COMMAND\":\n    case \"EMBED\":\n    case \"FRAME\":\n    case \"HR\":\n    case \"IMG\":\n    case \"INPUT\":\n    case \"IFRAME\":\n    case \"ISINDEX\":\n    case \"KEYGEN\":\n    case \"LINK\":\n    case \"NOFRAMES\":\n    case \"NOSCRIPT\":\n    case \"META\":\n    case \"OBJECT\":\n    case \"PARAM\":\n    case \"SCRIPT\":\n    case \"SOURCE\":\n    case \"STYLE\":\n    case \"TRACK\":\n    case \"WBR\":\n      return !1;\n  }\n  return !0;\n};\ngoog.dom.appendChild = function(a, b) {\n  goog.asserts.assert(null != a && null != b, \"goog.dom.appendChild expects non-null arguments\");\n  a.appendChild(b);\n};\ngoog.dom.append = function(a, b) {\n  goog.dom.append_(goog.dom.getOwnerDocument(a), a, arguments, 1);\n};\ngoog.dom.removeChildren = function(a) {\n  for (var b; b = a.firstChild;) {\n    a.removeChild(b);\n  }\n};\ngoog.dom.insertSiblingBefore = function(a, b) {\n  goog.asserts.assert(null != a && null != b, \"goog.dom.insertSiblingBefore expects non-null arguments\");\n  b.parentNode && b.parentNode.insertBefore(a, b);\n};\ngoog.dom.insertSiblingAfter = function(a, b) {\n  goog.asserts.assert(null != a && null != b, \"goog.dom.insertSiblingAfter expects non-null arguments\");\n  b.parentNode && b.parentNode.insertBefore(a, b.nextSibling);\n};\ngoog.dom.insertChildAt = function(a, b, c) {\n  goog.asserts.assert(null != a, \"goog.dom.insertChildAt expects a non-null parent\");\n  a.insertBefore(b, a.childNodes[c] || null);\n};\ngoog.dom.removeNode = function(a) {\n  return a && a.parentNode ? a.parentNode.removeChild(a) : null;\n};\ngoog.dom.replaceNode = function(a, b) {\n  goog.asserts.assert(null != a && null != b, \"goog.dom.replaceNode expects non-null arguments\");\n  var c = b.parentNode;\n  c && c.replaceChild(a, b);\n};\ngoog.dom.flattenElement = function(a) {\n  var b, c = a.parentNode;\n  if (c && c.nodeType != goog.dom.NodeType.DOCUMENT_FRAGMENT) {\n    if (a.removeNode) {\n      return a.removeNode(!1);\n    }\n    for (; b = a.firstChild;) {\n      c.insertBefore(b, a);\n    }\n    return goog.dom.removeNode(a);\n  }\n};\ngoog.dom.getChildren = function(a) {\n  return goog.dom.BrowserFeature.CAN_USE_CHILDREN_ATTRIBUTE && void 0 != a.children ? a.children : goog.array.filter(a.childNodes, function(a) {\n    return a.nodeType == goog.dom.NodeType.ELEMENT;\n  });\n};\ngoog.dom.getFirstElementChild = function(a) {\n  return void 0 !== a.firstElementChild ? a.firstElementChild : goog.dom.getNextElementNode_(a.firstChild, !0);\n};\ngoog.dom.getLastElementChild = function(a) {\n  return void 0 !== a.lastElementChild ? a.lastElementChild : goog.dom.getNextElementNode_(a.lastChild, !1);\n};\ngoog.dom.getNextElementSibling = function(a) {\n  return void 0 !== a.nextElementSibling ? a.nextElementSibling : goog.dom.getNextElementNode_(a.nextSibling, !0);\n};\ngoog.dom.getPreviousElementSibling = function(a) {\n  return void 0 !== a.previousElementSibling ? a.previousElementSibling : goog.dom.getNextElementNode_(a.previousSibling, !1);\n};\ngoog.dom.getNextElementNode_ = function(a, b) {\n  for (; a && a.nodeType != goog.dom.NodeType.ELEMENT;) {\n    a = b ? a.nextSibling : a.previousSibling;\n  }\n  return a;\n};\ngoog.dom.getNextNode = function(a) {\n  if (!a) {\n    return null;\n  }\n  if (a.firstChild) {\n    return a.firstChild;\n  }\n  for (; a && !a.nextSibling;) {\n    a = a.parentNode;\n  }\n  return a ? a.nextSibling : null;\n};\ngoog.dom.getPreviousNode = function(a) {\n  if (!a) {\n    return null;\n  }\n  if (!a.previousSibling) {\n    return a.parentNode;\n  }\n  for (a = a.previousSibling; a && a.lastChild;) {\n    a = a.lastChild;\n  }\n  return a;\n};\ngoog.dom.isNodeLike = function(a) {\n  return goog.isObject(a) && 0 < a.nodeType;\n};\ngoog.dom.isElement = function(a) {\n  return goog.isObject(a) && a.nodeType == goog.dom.NodeType.ELEMENT;\n};\ngoog.dom.isWindow = function(a) {\n  return goog.isObject(a) && a.window == a;\n};\ngoog.dom.getParentElement = function(a) {\n  var b;\n  if (goog.dom.BrowserFeature.CAN_USE_PARENT_ELEMENT_PROPERTY && !(goog.userAgent.IE && goog.userAgent.isVersionOrHigher(\"9\") && !goog.userAgent.isVersionOrHigher(\"10\") && goog.global.SVGElement && a instanceof goog.global.SVGElement) && (b = a.parentElement)) {\n    return b;\n  }\n  b = a.parentNode;\n  return goog.dom.isElement(b) ? b : null;\n};\ngoog.dom.contains = function(a, b) {\n  if (!a || !b) {\n    return !1;\n  }\n  if (a.contains && b.nodeType == goog.dom.NodeType.ELEMENT) {\n    return a == b || a.contains(b);\n  }\n  if (\"undefined\" != typeof a.compareDocumentPosition) {\n    return a == b || !!(a.compareDocumentPosition(b) & 16);\n  }\n  for (; b && a != b;) {\n    b = b.parentNode;\n  }\n  return b == a;\n};\ngoog.dom.compareNodeOrder = function(a, b) {\n  if (a == b) {\n    return 0;\n  }\n  if (a.compareDocumentPosition) {\n    return a.compareDocumentPosition(b) & 2 ? 1 : -1;\n  }\n  if (goog.userAgent.IE && !goog.userAgent.isDocumentModeOrHigher(9)) {\n    if (a.nodeType == goog.dom.NodeType.DOCUMENT) {\n      return -1;\n    }\n    if (b.nodeType == goog.dom.NodeType.DOCUMENT) {\n      return 1;\n    }\n  }\n  if (\"sourceIndex\" in a || a.parentNode && \"sourceIndex\" in a.parentNode) {\n    var c = a.nodeType == goog.dom.NodeType.ELEMENT, d = b.nodeType == goog.dom.NodeType.ELEMENT;\n    if (c && d) {\n      return a.sourceIndex - b.sourceIndex;\n    }\n    var e = a.parentNode, f = b.parentNode;\n    return e == f ? goog.dom.compareSiblingOrder_(a, b) : !c && goog.dom.contains(e, b) ? -1 * goog.dom.compareParentsDescendantNodeIe_(a, b) : !d && goog.dom.contains(f, a) ? goog.dom.compareParentsDescendantNodeIe_(b, a) : (c ? a.sourceIndex : e.sourceIndex) - (d ? b.sourceIndex : f.sourceIndex);\n  }\n  d = goog.dom.getOwnerDocument(a);\n  c = d.createRange();\n  c.selectNode(a);\n  c.collapse(!0);\n  d = d.createRange();\n  d.selectNode(b);\n  d.collapse(!0);\n  return c.compareBoundaryPoints(goog.global.Range.START_TO_END, d);\n};\ngoog.dom.compareParentsDescendantNodeIe_ = function(a, b) {\n  var c = a.parentNode;\n  if (c == b) {\n    return -1;\n  }\n  for (var d = b; d.parentNode != c;) {\n    d = d.parentNode;\n  }\n  return goog.dom.compareSiblingOrder_(d, a);\n};\ngoog.dom.compareSiblingOrder_ = function(a, b) {\n  for (var c = b; c = c.previousSibling;) {\n    if (c == a) {\n      return -1;\n    }\n  }\n  return 1;\n};\ngoog.dom.findCommonAncestor = function(a) {\n  var b, c = arguments.length;\n  if (!c) {\n    return null;\n  }\n  if (1 == c) {\n    return arguments[0];\n  }\n  var d = [], e = Infinity;\n  for (b = 0; b < c; b++) {\n    for (var f = [], g = arguments[b]; g;) {\n      f.unshift(g), g = g.parentNode;\n    }\n    d.push(f);\n    e = Math.min(e, f.length);\n  }\n  f = null;\n  for (b = 0; b < e; b++) {\n    g = d[0][b];\n    for (var h = 1; h < c; h++) {\n      if (g != d[h][b]) {\n        return f;\n      }\n    }\n    f = g;\n  }\n  return f;\n};\ngoog.dom.isInDocument = function(a) {\n  return 16 == (a.ownerDocument.compareDocumentPosition(a) & 16);\n};\ngoog.dom.getOwnerDocument = function(a) {\n  goog.asserts.assert(a, \"Node cannot be null or undefined.\");\n  return a.nodeType == goog.dom.NodeType.DOCUMENT ? a : a.ownerDocument || a.document;\n};\ngoog.dom.getFrameContentDocument = function(a) {\n  return a.contentDocument || a.contentWindow.document;\n};\ngoog.dom.getFrameContentWindow = function(a) {\n  try {\n    return a.contentWindow || (a.contentDocument ? goog.dom.getWindow(a.contentDocument) : null);\n  } catch (b) {\n  }\n  return null;\n};\ngoog.dom.setTextContent = function(a, b) {\n  goog.asserts.assert(null != a, \"goog.dom.setTextContent expects a non-null value for node\");\n  if (\"textContent\" in a) {\n    a.textContent = b;\n  } else {\n    if (a.nodeType == goog.dom.NodeType.TEXT) {\n      a.data = String(b);\n    } else {\n      if (a.firstChild && a.firstChild.nodeType == goog.dom.NodeType.TEXT) {\n        for (; a.lastChild != a.firstChild;) {\n          a.removeChild(goog.asserts.assert(a.lastChild));\n        }\n        a.firstChild.data = String(b);\n      } else {\n        goog.dom.removeChildren(a);\n        var c = goog.dom.getOwnerDocument(a);\n        a.appendChild(c.createTextNode(String(b)));\n      }\n    }\n  }\n};\ngoog.dom.getOuterHtml = function(a) {\n  goog.asserts.assert(null !== a, \"goog.dom.getOuterHtml expects a non-null value for element\");\n  if (\"outerHTML\" in a) {\n    return a.outerHTML;\n  }\n  var b = goog.dom.getOwnerDocument(a);\n  b = goog.dom.createElement_(b, \"DIV\");\n  b.appendChild(a.cloneNode(!0));\n  return b.innerHTML;\n};\ngoog.dom.findNode = function(a, b) {\n  var c = [];\n  return goog.dom.findNodes_(a, b, c, !0) ? c[0] : void 0;\n};\ngoog.dom.findNodes = function(a, b) {\n  var c = [];\n  goog.dom.findNodes_(a, b, c, !1);\n  return c;\n};\ngoog.dom.findNodes_ = function(a, b, c, d) {\n  if (null != a) {\n    for (a = a.firstChild; a;) {\n      if (b(a) && (c.push(a), d) || goog.dom.findNodes_(a, b, c, d)) {\n        return !0;\n      }\n      a = a.nextSibling;\n    }\n  }\n  return !1;\n};\ngoog.dom.findElement = function(a, b) {\n  for (var c = goog.dom.getChildrenReverse_(a); 0 < c.length;) {\n    var d = c.pop();\n    if (b(d)) {\n      return d;\n    }\n    for (d = d.lastElementChild; d; d = d.previousElementSibling) {\n      c.push(d);\n    }\n  }\n  return null;\n};\ngoog.dom.findElements = function(a, b) {\n  for (var c = [], d = goog.dom.getChildrenReverse_(a); 0 < d.length;) {\n    var e = d.pop();\n    b(e) && c.push(e);\n    for (e = e.lastElementChild; e; e = e.previousElementSibling) {\n      d.push(e);\n    }\n  }\n  return c;\n};\ngoog.dom.getChildrenReverse_ = function(a) {\n  if (a.nodeType == goog.dom.NodeType.DOCUMENT) {\n    return [a.documentElement];\n  }\n  var b = [];\n  for (a = a.lastElementChild; a; a = a.previousElementSibling) {\n    b.push(a);\n  }\n  return b;\n};\ngoog.dom.TAGS_TO_IGNORE_ = {SCRIPT:1, STYLE:1, HEAD:1, IFRAME:1, OBJECT:1};\ngoog.dom.PREDEFINED_TAG_VALUES_ = {IMG:\" \", BR:\"\\n\"};\ngoog.dom.isFocusableTabIndex = function(a) {\n  return goog.dom.hasSpecifiedTabIndex_(a) && goog.dom.isTabIndexFocusable_(a);\n};\ngoog.dom.setFocusableTabIndex = function(a, b) {\n  b ? a.tabIndex = 0 : (a.tabIndex = -1, a.removeAttribute(\"tabIndex\"));\n};\ngoog.dom.isFocusable = function(a) {\n  var b;\n  return (b = goog.dom.nativelySupportsFocus_(a) ? !a.disabled && (!goog.dom.hasSpecifiedTabIndex_(a) || goog.dom.isTabIndexFocusable_(a)) : goog.dom.isFocusableTabIndex(a)) && goog.userAgent.IE ? goog.dom.hasNonZeroBoundingRect_(a) : b;\n};\ngoog.dom.hasSpecifiedTabIndex_ = function(a) {\n  return goog.userAgent.IE && !goog.userAgent.isVersionOrHigher(\"9\") ? (a = a.getAttributeNode(\"tabindex\"), null != a && a.specified) : a.hasAttribute(\"tabindex\");\n};\ngoog.dom.isTabIndexFocusable_ = function(a) {\n  a = a.tabIndex;\n  return \"number\" === typeof a && 0 <= a && 32768 > a;\n};\ngoog.dom.nativelySupportsFocus_ = function(a) {\n  return \"A\" == a.tagName && a.hasAttribute(\"href\") || \"INPUT\" == a.tagName || \"TEXTAREA\" == a.tagName || \"SELECT\" == a.tagName || \"BUTTON\" == a.tagName;\n};\ngoog.dom.hasNonZeroBoundingRect_ = function(a) {\n  a = !goog.isFunction(a.getBoundingClientRect) || goog.userAgent.IE && null == a.parentElement ? {height:a.offsetHeight, width:a.offsetWidth} : a.getBoundingClientRect();\n  return null != a && 0 < a.height && 0 < a.width;\n};\ngoog.dom.getTextContent = function(a) {\n  if (goog.dom.BrowserFeature.CAN_USE_INNER_TEXT && null !== a && \"innerText\" in a) {\n    a = goog.string.canonicalizeNewlines(a.innerText);\n  } else {\n    var b = [];\n    goog.dom.getTextContent_(a, b, !0);\n    a = b.join(\"\");\n  }\n  a = a.replace(/ \\xAD /g, \" \").replace(/\\xAD/g, \"\");\n  a = a.replace(/\\u200B/g, \"\");\n  goog.dom.BrowserFeature.CAN_USE_INNER_TEXT || (a = a.replace(/ +/g, \" \"));\n  \" \" != a && (a = a.replace(/^\\s*/, \"\"));\n  return a;\n};\ngoog.dom.getRawTextContent = function(a) {\n  var b = [];\n  goog.dom.getTextContent_(a, b, !1);\n  return b.join(\"\");\n};\ngoog.dom.getTextContent_ = function(a, b, c) {\n  if (!(a.nodeName in goog.dom.TAGS_TO_IGNORE_)) {\n    if (a.nodeType == goog.dom.NodeType.TEXT) {\n      c ? b.push(String(a.nodeValue).replace(/(\\r\\n|\\r|\\n)/g, \"\")) : b.push(a.nodeValue);\n    } else {\n      if (a.nodeName in goog.dom.PREDEFINED_TAG_VALUES_) {\n        b.push(goog.dom.PREDEFINED_TAG_VALUES_[a.nodeName]);\n      } else {\n        for (a = a.firstChild; a;) {\n          goog.dom.getTextContent_(a, b, c), a = a.nextSibling;\n        }\n      }\n    }\n  }\n};\ngoog.dom.getNodeTextLength = function(a) {\n  return goog.dom.getTextContent(a).length;\n};\ngoog.dom.getNodeTextOffset = function(a, b) {\n  for (var c = b || goog.dom.getOwnerDocument(a).body, d = []; a && a != c;) {\n    for (var e = a; e = e.previousSibling;) {\n      d.unshift(goog.dom.getTextContent(e));\n    }\n    a = a.parentNode;\n  }\n  return goog.string.trimLeft(d.join(\"\")).replace(/ +/g, \" \").length;\n};\ngoog.dom.getNodeAtOffset = function(a, b, c) {\n  a = [a];\n  for (var d = 0, e = null; 0 < a.length && d < b;) {\n    if (e = a.pop(), !(e.nodeName in goog.dom.TAGS_TO_IGNORE_)) {\n      if (e.nodeType == goog.dom.NodeType.TEXT) {\n        var f = e.nodeValue.replace(/(\\r\\n|\\r|\\n)/g, \"\").replace(/ +/g, \" \");\n        d += f.length;\n      } else {\n        if (e.nodeName in goog.dom.PREDEFINED_TAG_VALUES_) {\n          d += goog.dom.PREDEFINED_TAG_VALUES_[e.nodeName].length;\n        } else {\n          for (f = e.childNodes.length - 1; 0 <= f; f--) {\n            a.push(e.childNodes[f]);\n          }\n        }\n      }\n    }\n  }\n  goog.isObject(c) && (c.remainder = e ? e.nodeValue.length + b - d - 1 : 0, c.node = e);\n  return e;\n};\ngoog.dom.isNodeList = function(a) {\n  if (a && \"number\" == typeof a.length) {\n    if (goog.isObject(a)) {\n      return \"function\" == typeof a.item || \"string\" == typeof a.item;\n    }\n    if (goog.isFunction(a)) {\n      return \"function\" == typeof a.item;\n    }\n  }\n  return !1;\n};\ngoog.dom.getAncestorByTagNameAndClass = function(a, b, c, d) {\n  if (!b && !c) {\n    return null;\n  }\n  var e = b ? String(b).toUpperCase() : null;\n  return goog.dom.getAncestor(a, function(a) {\n    return (!e || a.nodeName == e) && (!c || \"string\" === typeof a.className && goog.array.contains(a.className.split(/\\s+/), c));\n  }, !0, d);\n};\ngoog.dom.getAncestorByClass = function(a, b, c) {\n  return goog.dom.getAncestorByTagNameAndClass(a, null, b, c);\n};\ngoog.dom.getAncestor = function(a, b, c, d) {\n  a && !c && (a = a.parentNode);\n  for (c = 0; a && (null == d || c <= d);) {\n    goog.asserts.assert(\"parentNode\" != a.name);\n    if (b(a)) {\n      return a;\n    }\n    a = a.parentNode;\n    c++;\n  }\n  return null;\n};\ngoog.dom.getActiveElement = function(a) {\n  try {\n    var b = a && a.activeElement;\n    return b && b.nodeName ? b : null;\n  } catch (c) {\n    return null;\n  }\n};\ngoog.dom.getPixelRatio = function() {\n  var a = goog.dom.getWindow();\n  return void 0 !== a.devicePixelRatio ? a.devicePixelRatio : a.matchMedia ? goog.dom.matchesPixelRatio_(3) || goog.dom.matchesPixelRatio_(2) || goog.dom.matchesPixelRatio_(1.5) || goog.dom.matchesPixelRatio_(1) || .75 : 1;\n};\ngoog.dom.matchesPixelRatio_ = function(a) {\n  return goog.dom.getWindow().matchMedia(\"(min-resolution: \" + a + \"dppx),(min--moz-device-pixel-ratio: \" + a + \"),(min-resolution: \" + 96 * a + \"dpi)\").matches ? a : 0;\n};\ngoog.dom.getCanvasContext2D = function(a) {\n  return a.getContext(\"2d\");\n};\ngoog.dom.DomHelper = function(a) {\n  this.document_ = a || goog.global.document || document;\n};\ngoog.dom.DomHelper.prototype.getDomHelper = goog.dom.getDomHelper;\ngoog.dom.DomHelper.prototype.setDocument = function(a) {\n  this.document_ = a;\n};\ngoog.dom.DomHelper.prototype.getDocument = function() {\n  return this.document_;\n};\ngoog.dom.DomHelper.prototype.getElement = function(a) {\n  return goog.dom.getElementHelper_(this.document_, a);\n};\ngoog.dom.DomHelper.prototype.getRequiredElement = function(a) {\n  return goog.dom.getRequiredElementHelper_(this.document_, a);\n};\ngoog.dom.DomHelper.prototype.$ = goog.dom.DomHelper.prototype.getElement;\ngoog.dom.DomHelper.prototype.getElementsByTagName = function(a, b) {\n  return (b || this.document_).getElementsByTagName(String(a));\n};\ngoog.dom.DomHelper.prototype.getElementsByTagNameAndClass = function(a, b, c) {\n  return goog.dom.getElementsByTagNameAndClass_(this.document_, a, b, c);\n};\ngoog.dom.DomHelper.prototype.getElementByTagNameAndClass = function(a, b, c) {\n  return goog.dom.getElementByTagNameAndClass_(this.document_, a, b, c);\n};\ngoog.dom.DomHelper.prototype.getElementsByClass = function(a, b) {\n  return goog.dom.getElementsByClass(a, b || this.document_);\n};\ngoog.dom.DomHelper.prototype.getElementByClass = function(a, b) {\n  return goog.dom.getElementByClass(a, b || this.document_);\n};\ngoog.dom.DomHelper.prototype.getRequiredElementByClass = function(a, b) {\n  return goog.dom.getRequiredElementByClass(a, b || this.document_);\n};\ngoog.dom.DomHelper.prototype.$$ = goog.dom.DomHelper.prototype.getElementsByTagNameAndClass;\ngoog.dom.DomHelper.prototype.setProperties = goog.dom.setProperties;\ngoog.dom.DomHelper.prototype.getViewportSize = function(a) {\n  return goog.dom.getViewportSize(a || this.getWindow());\n};\ngoog.dom.DomHelper.prototype.getDocumentHeight = function() {\n  return goog.dom.getDocumentHeight_(this.getWindow());\n};\ngoog.dom.DomHelper.prototype.createDom = function(a, b, c) {\n  return goog.dom.createDom_(this.document_, arguments);\n};\ngoog.dom.DomHelper.prototype.$dom = goog.dom.DomHelper.prototype.createDom;\ngoog.dom.DomHelper.prototype.createElement = function(a) {\n  return goog.dom.createElement_(this.document_, a);\n};\ngoog.dom.DomHelper.prototype.createTextNode = function(a) {\n  return this.document_.createTextNode(String(a));\n};\ngoog.dom.DomHelper.prototype.createTable = function(a, b, c) {\n  return goog.dom.createTable_(this.document_, a, b, !!c);\n};\ngoog.dom.DomHelper.prototype.safeHtmlToNode = function(a) {\n  return goog.dom.safeHtmlToNode_(this.document_, a);\n};\ngoog.dom.DomHelper.prototype.isCss1CompatMode = function() {\n  return goog.dom.isCss1CompatMode_(this.document_);\n};\ngoog.dom.DomHelper.prototype.getWindow = function() {\n  return goog.dom.getWindow_(this.document_);\n};\ngoog.dom.DomHelper.prototype.getDocumentScrollElement = function() {\n  return goog.dom.getDocumentScrollElement_(this.document_);\n};\ngoog.dom.DomHelper.prototype.getDocumentScroll = function() {\n  return goog.dom.getDocumentScroll_(this.document_);\n};\ngoog.dom.DomHelper.prototype.getActiveElement = function(a) {\n  return goog.dom.getActiveElement(a || this.document_);\n};\ngoog.dom.DomHelper.prototype.appendChild = goog.dom.appendChild;\ngoog.dom.DomHelper.prototype.append = goog.dom.append;\ngoog.dom.DomHelper.prototype.canHaveChildren = goog.dom.canHaveChildren;\ngoog.dom.DomHelper.prototype.removeChildren = goog.dom.removeChildren;\ngoog.dom.DomHelper.prototype.insertSiblingBefore = goog.dom.insertSiblingBefore;\ngoog.dom.DomHelper.prototype.insertSiblingAfter = goog.dom.insertSiblingAfter;\ngoog.dom.DomHelper.prototype.insertChildAt = goog.dom.insertChildAt;\ngoog.dom.DomHelper.prototype.removeNode = goog.dom.removeNode;\ngoog.dom.DomHelper.prototype.replaceNode = goog.dom.replaceNode;\ngoog.dom.DomHelper.prototype.flattenElement = goog.dom.flattenElement;\ngoog.dom.DomHelper.prototype.getChildren = goog.dom.getChildren;\ngoog.dom.DomHelper.prototype.getFirstElementChild = goog.dom.getFirstElementChild;\ngoog.dom.DomHelper.prototype.getLastElementChild = goog.dom.getLastElementChild;\ngoog.dom.DomHelper.prototype.getNextElementSibling = goog.dom.getNextElementSibling;\ngoog.dom.DomHelper.prototype.getPreviousElementSibling = goog.dom.getPreviousElementSibling;\ngoog.dom.DomHelper.prototype.getNextNode = goog.dom.getNextNode;\ngoog.dom.DomHelper.prototype.getPreviousNode = goog.dom.getPreviousNode;\ngoog.dom.DomHelper.prototype.isNodeLike = goog.dom.isNodeLike;\ngoog.dom.DomHelper.prototype.isElement = goog.dom.isElement;\ngoog.dom.DomHelper.prototype.isWindow = goog.dom.isWindow;\ngoog.dom.DomHelper.prototype.getParentElement = goog.dom.getParentElement;\ngoog.dom.DomHelper.prototype.contains = goog.dom.contains;\ngoog.dom.DomHelper.prototype.compareNodeOrder = goog.dom.compareNodeOrder;\ngoog.dom.DomHelper.prototype.findCommonAncestor = goog.dom.findCommonAncestor;\ngoog.dom.DomHelper.prototype.getOwnerDocument = goog.dom.getOwnerDocument;\ngoog.dom.DomHelper.prototype.getFrameContentDocument = goog.dom.getFrameContentDocument;\ngoog.dom.DomHelper.prototype.getFrameContentWindow = goog.dom.getFrameContentWindow;\ngoog.dom.DomHelper.prototype.setTextContent = goog.dom.setTextContent;\ngoog.dom.DomHelper.prototype.getOuterHtml = goog.dom.getOuterHtml;\ngoog.dom.DomHelper.prototype.findNode = goog.dom.findNode;\ngoog.dom.DomHelper.prototype.findNodes = goog.dom.findNodes;\ngoog.dom.DomHelper.prototype.isFocusableTabIndex = goog.dom.isFocusableTabIndex;\ngoog.dom.DomHelper.prototype.setFocusableTabIndex = goog.dom.setFocusableTabIndex;\ngoog.dom.DomHelper.prototype.isFocusable = goog.dom.isFocusable;\ngoog.dom.DomHelper.prototype.getTextContent = goog.dom.getTextContent;\ngoog.dom.DomHelper.prototype.getNodeTextLength = goog.dom.getNodeTextLength;\ngoog.dom.DomHelper.prototype.getNodeTextOffset = goog.dom.getNodeTextOffset;\ngoog.dom.DomHelper.prototype.getNodeAtOffset = goog.dom.getNodeAtOffset;\ngoog.dom.DomHelper.prototype.isNodeList = goog.dom.isNodeList;\ngoog.dom.DomHelper.prototype.getAncestorByTagNameAndClass = goog.dom.getAncestorByTagNameAndClass;\ngoog.dom.DomHelper.prototype.getAncestorByClass = goog.dom.getAncestorByClass;\ngoog.dom.DomHelper.prototype.getAncestor = goog.dom.getAncestor;\ngoog.dom.DomHelper.prototype.getCanvasContext2D = goog.dom.getCanvasContext2D;\ngoog.json = {};\ngoog.json.USE_NATIVE_JSON = !1;\ngoog.json.TRY_NATIVE_JSON = !1;\ngoog.json.isValid = function(a) {\n  return /^\\s*$/.test(a) ? !1 : /^[\\],:{}\\s\\u2028\\u2029]*$/.test(a.replace(/\\\\[\"\\\\\\/bfnrtu]/g, \"@\").replace(/(?:\"[^\"\\\\\\n\\r\\u2028\\u2029\\x00-\\x08\\x0a-\\x1f]*\"|true|false|null|-?\\d+(?:\\.\\d*)?(?:[eE][+\\-]?\\d+)?)[\\s\\u2028\\u2029]*(?=:|,|]|}|$)/g, \"]\").replace(/(?:^|:|,)(?:[\\s\\u2028\\u2029]*\\[)+/g, \"\"));\n};\ngoog.json.errorLogger_ = goog.nullFunction;\ngoog.json.setErrorLogger = function(a) {\n  goog.json.errorLogger_ = a;\n};\ngoog.json.parse = goog.json.USE_NATIVE_JSON ? goog.global.JSON.parse : function(a) {\n  if (goog.json.TRY_NATIVE_JSON) {\n    try {\n      return goog.global.JSON.parse(a);\n    } catch (d) {\n      var b = d;\n    }\n  }\n  a = String(a);\n  if (goog.json.isValid(a)) {\n    try {\n      var c = eval(\"(\" + a + \")\");\n      b && goog.json.errorLogger_(\"Invalid JSON: \" + a, b);\n      return c;\n    } catch (d) {\n    }\n  }\n  throw Error(\"Invalid JSON string: \" + a);\n};\ngoog.json.serialize = goog.json.USE_NATIVE_JSON ? goog.global.JSON.stringify : function(a, b) {\n  return (new goog.json.Serializer(b)).serialize(a);\n};\ngoog.json.Serializer = function(a) {\n  this.replacer_ = a;\n};\ngoog.json.Serializer.prototype.serialize = function(a) {\n  var b = [];\n  this.serializeInternal(a, b);\n  return b.join(\"\");\n};\ngoog.json.Serializer.prototype.serializeInternal = function(a, b) {\n  if (null == a) {\n    b.push(\"null\");\n  } else {\n    if (\"object\" == typeof a) {\n      if (goog.isArray(a)) {\n        this.serializeArray(a, b);\n        return;\n      }\n      if (a instanceof String || a instanceof Number || a instanceof Boolean) {\n        a = a.valueOf();\n      } else {\n        this.serializeObject_(a, b);\n        return;\n      }\n    }\n    switch(typeof a) {\n      case \"string\":\n        this.serializeString_(a, b);\n        break;\n      case \"number\":\n        this.serializeNumber_(a, b);\n        break;\n      case \"boolean\":\n        b.push(String(a));\n        break;\n      case \"function\":\n        b.push(\"null\");\n        break;\n      default:\n        throw Error(\"Unknown type: \" + typeof a);\n    }\n  }\n};\ngoog.json.Serializer.charToJsonCharCache_ = {'\"':'\\\\\"', \"\\\\\":\"\\\\\\\\\", \"/\":\"\\\\/\", \"\\b\":\"\\\\b\", \"\\f\":\"\\\\f\", \"\\n\":\"\\\\n\", \"\\r\":\"\\\\r\", \"\\t\":\"\\\\t\", \"\\x0B\":\"\\\\u000b\"};\ngoog.json.Serializer.charsToReplace_ = /\\uffff/.test(\"\\uffff\") ? /[\\\\\"\\x00-\\x1f\\x7f-\\uffff]/g : /[\\\\\"\\x00-\\x1f\\x7f-\\xff]/g;\ngoog.json.Serializer.prototype.serializeString_ = function(a, b) {\n  b.push('\"', a.replace(goog.json.Serializer.charsToReplace_, function(a) {\n    var b = goog.json.Serializer.charToJsonCharCache_[a];\n    b || (b = \"\\\\u\" + (a.charCodeAt(0) | 65536).toString(16).substr(1), goog.json.Serializer.charToJsonCharCache_[a] = b);\n    return b;\n  }), '\"');\n};\ngoog.json.Serializer.prototype.serializeNumber_ = function(a, b) {\n  b.push(isFinite(a) && !isNaN(a) ? String(a) : \"null\");\n};\ngoog.json.Serializer.prototype.serializeArray = function(a, b) {\n  var c = a.length;\n  b.push(\"[\");\n  for (var d = \"\", e = 0; e < c; e++) {\n    b.push(d), d = a[e], this.serializeInternal(this.replacer_ ? this.replacer_.call(a, String(e), d) : d, b), d = \",\";\n  }\n  b.push(\"]\");\n};\ngoog.json.Serializer.prototype.serializeObject_ = function(a, b) {\n  b.push(\"{\");\n  var c = \"\", d;\n  for (d in a) {\n    if (Object.prototype.hasOwnProperty.call(a, d)) {\n      var e = a[d];\n      \"function\" != typeof e && (b.push(c), this.serializeString_(d, b), b.push(\":\"), this.serializeInternal(this.replacer_ ? this.replacer_.call(a, d, e) : e, b), c = \",\");\n    }\n  }\n  b.push(\"}\");\n};\ngoog.proto2.ObjectSerializer = function(a, b) {\n  this.keyOption_ = a;\n  this.serializeBooleanAsNumber_ = b;\n};\ngoog.inherits(goog.proto2.ObjectSerializer, goog.proto2.Serializer);\ngoog.proto2.ObjectSerializer.KeyOption = {TAG:0, NAME:1, CAMEL_CASE_NAME:2};\ngoog.proto2.ObjectSerializer.prototype.serialize = function(a) {\n  for (var b = a.getDescriptor().getFields(), c = {}, d = 0; d < b.length; d++) {\n    var e = b[d], f = e.getTag();\n    switch(this.keyOption_) {\n      case goog.proto2.ObjectSerializer.KeyOption.TAG:\n        break;\n      case goog.proto2.ObjectSerializer.KeyOption.NAME:\n        f = e.getName();\n        break;\n      case goog.proto2.ObjectSerializer.KeyOption.CAMEL_CASE_NAME:\n        f = goog.string.toCamelCase(e.getName().replace(/_/g, \"-\"));\n        break;\n      default:\n        goog.asserts.assert(this.keyOption_ !== goog.proto2.ObjectSerializer.KeyOption.TAG && this.keyOption_ !== goog.proto2.ObjectSerializer.KeyOption.NAME && this.keyOption_ !== goog.proto2.ObjectSerializer.KeyOption.CAMEL_CASE_NAME, \"keyOption should be one of TAG, NAME, or CAMEL_CASE_NAME\");\n    }\n    if (a.has(e)) {\n      if (e.isRepeated()) {\n        var g = [];\n        c[f] = g;\n        for (f = 0; f < a.countOf(e); f++) {\n          g.push(this.getSerializedValue(e, a.get(e, f)));\n        }\n      } else {\n        c[f] = this.getSerializedValue(e, a.get(e));\n      }\n    }\n  }\n  a.forEachUnknown(function(a, b) {\n    c[a] = b;\n  });\n  return c;\n};\ngoog.proto2.ObjectSerializer.prototype.getSerializedValue = function(a, b) {\n  return this.serializeBooleanAsNumber_ && a.getFieldType() == goog.proto2.FieldDescriptor.FieldType.BOOL && \"boolean\" === typeof b ? b ? 1 : 0 : goog.proto2.ObjectSerializer.superClass_.getSerializedValue.call(this, a, b);\n};\ngoog.proto2.ObjectSerializer.prototype.getDeserializedValue = function(a, b) {\n  return a.getFieldType() == goog.proto2.FieldDescriptor.FieldType.BOOL && \"number\" === typeof b ? !!b : goog.proto2.ObjectSerializer.superClass_.getDeserializedValue.call(this, a, b);\n};\ngoog.proto2.ObjectSerializer.prototype.deserializeTo = function(a, b) {\n  var c = a.getDescriptor(), d;\n  for (d in b) {\n    var e = b[d], f = goog.string.isNumeric(d);\n    if (f) {\n      var g = c.findFieldByTag(d);\n    } else {\n      goog.asserts.assert(this.keyOption_ == goog.proto2.ObjectSerializer.KeyOption.NAME || this.keyOption_ == goog.proto2.ObjectSerializer.KeyOption.CAMEL_CASE_NAME, \"Key mode \" + this.keyOption_ + \"for key \" + d + \" is not \" + goog.proto2.ObjectSerializer.KeyOption.NAME + \" nor \" + goog.proto2.ObjectSerializer.KeyOption.CAMEL_CASE_NAME), this.keyOption_ == goog.proto2.ObjectSerializer.KeyOption.CAMEL_CASE_NAME && (d = goog.string.toSelectorCase(d).replace(/\\-/g, \"_\")), g = c.findFieldByName(d);\n    }\n    if (g) {\n      if (g.isRepeated()) {\n        for (goog.asserts.assert(goog.isArray(e), \"Value for repeated field \" + g + \" must be an array.\"), f = 0; f < e.length; f++) {\n          a.add(g, this.getDeserializedValue(g, e[f]));\n        }\n      } else {\n        goog.asserts.assert(!goog.isArray(e), \"Value for non-repeated field \" + g + \" must not be an array.\"), a.set(g, this.getDeserializedValue(g, e));\n      }\n    } else {\n      f ? a.setUnknown(Number(d), e) : goog.asserts.fail(\"Failed to find field: \" + d);\n    }\n  }\n};\n/*\n\n Protocol Buffer 2 Copyright 2008 Google Inc.\n All other code copyright its respective owners.\n Copyright (C) 2010 The Libphonenumber Authors\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n*/\nvar i18n = {phonenumbers:{}};\ni18n.phonenumbers.NumberFormat = function() {\n  goog.proto2.Message.call(this);\n};\ngoog.inherits(i18n.phonenumbers.NumberFormat, goog.proto2.Message);\ni18n.phonenumbers.NumberFormat.descriptor_ = null;\ni18n.phonenumbers.NumberFormat.prototype.getPattern = function() {\n  return this.get$Value(1);\n};\ni18n.phonenumbers.NumberFormat.prototype.getPatternOrDefault = function() {\n  return this.get$ValueOrDefault(1);\n};\ni18n.phonenumbers.NumberFormat.prototype.setPattern = function(a) {\n  this.set$Value(1, a);\n};\ni18n.phonenumbers.NumberFormat.prototype.hasPattern = function() {\n  return this.has$Value(1);\n};\ni18n.phonenumbers.NumberFormat.prototype.patternCount = function() {\n  return this.count$Values(1);\n};\ni18n.phonenumbers.NumberFormat.prototype.clearPattern = function() {\n  this.clear$Field(1);\n};\ni18n.phonenumbers.NumberFormat.prototype.getFormat = function() {\n  return this.get$Value(2);\n};\ni18n.phonenumbers.NumberFormat.prototype.getFormatOrDefault = function() {\n  return this.get$ValueOrDefault(2);\n};\ni18n.phonenumbers.NumberFormat.prototype.setFormat = function(a) {\n  this.set$Value(2, a);\n};\ni18n.phonenumbers.NumberFormat.prototype.hasFormat = function() {\n  return this.has$Value(2);\n};\ni18n.phonenumbers.NumberFormat.prototype.formatCount = function() {\n  return this.count$Values(2);\n};\ni18n.phonenumbers.NumberFormat.prototype.clearFormat = function() {\n  this.clear$Field(2);\n};\ni18n.phonenumbers.NumberFormat.prototype.getLeadingDigitsPattern = function(a) {\n  return this.get$Value(3, a);\n};\ni18n.phonenumbers.NumberFormat.prototype.getLeadingDigitsPatternOrDefault = function(a) {\n  return this.get$ValueOrDefault(3, a);\n};\ni18n.phonenumbers.NumberFormat.prototype.addLeadingDigitsPattern = function(a) {\n  this.add$Value(3, a);\n};\ni18n.phonenumbers.NumberFormat.prototype.leadingDigitsPatternArray = function() {\n  return this.array$Values(3);\n};\ni18n.phonenumbers.NumberFormat.prototype.hasLeadingDigitsPattern = function() {\n  return this.has$Value(3);\n};\ni18n.phonenumbers.NumberFormat.prototype.leadingDigitsPatternCount = function() {\n  return this.count$Values(3);\n};\ni18n.phonenumbers.NumberFormat.prototype.clearLeadingDigitsPattern = function() {\n  this.clear$Field(3);\n};\ni18n.phonenumbers.NumberFormat.prototype.getNationalPrefixFormattingRule = function() {\n  return this.get$Value(4);\n};\ni18n.phonenumbers.NumberFormat.prototype.getNationalPrefixFormattingRuleOrDefault = function() {\n  return this.get$ValueOrDefault(4);\n};\ni18n.phonenumbers.NumberFormat.prototype.setNationalPrefixFormattingRule = function(a) {\n  this.set$Value(4, a);\n};\ni18n.phonenumbers.NumberFormat.prototype.hasNationalPrefixFormattingRule = function() {\n  return this.has$Value(4);\n};\ni18n.phonenumbers.NumberFormat.prototype.nationalPrefixFormattingRuleCount = function() {\n  return this.count$Values(4);\n};\ni18n.phonenumbers.NumberFormat.prototype.clearNationalPrefixFormattingRule = function() {\n  this.clear$Field(4);\n};\ni18n.phonenumbers.NumberFormat.prototype.getNationalPrefixOptionalWhenFormatting = function() {\n  return this.get$Value(6);\n};\ni18n.phonenumbers.NumberFormat.prototype.getNationalPrefixOptionalWhenFormattingOrDefault = function() {\n  return this.get$ValueOrDefault(6);\n};\ni18n.phonenumbers.NumberFormat.prototype.setNationalPrefixOptionalWhenFormatting = function(a) {\n  this.set$Value(6, a);\n};\ni18n.phonenumbers.NumberFormat.prototype.hasNationalPrefixOptionalWhenFormatting = function() {\n  return this.has$Value(6);\n};\ni18n.phonenumbers.NumberFormat.prototype.nationalPrefixOptionalWhenFormattingCount = function() {\n  return this.count$Values(6);\n};\ni18n.phonenumbers.NumberFormat.prototype.clearNationalPrefixOptionalWhenFormatting = function() {\n  this.clear$Field(6);\n};\ni18n.phonenumbers.NumberFormat.prototype.getDomesticCarrierCodeFormattingRule = function() {\n  return this.get$Value(5);\n};\ni18n.phonenumbers.NumberFormat.prototype.getDomesticCarrierCodeFormattingRuleOrDefault = function() {\n  return this.get$ValueOrDefault(5);\n};\ni18n.phonenumbers.NumberFormat.prototype.setDomesticCarrierCodeFormattingRule = function(a) {\n  this.set$Value(5, a);\n};\ni18n.phonenumbers.NumberFormat.prototype.hasDomesticCarrierCodeFormattingRule = function() {\n  return this.has$Value(5);\n};\ni18n.phonenumbers.NumberFormat.prototype.domesticCarrierCodeFormattingRuleCount = function() {\n  return this.count$Values(5);\n};\ni18n.phonenumbers.NumberFormat.prototype.clearDomesticCarrierCodeFormattingRule = function() {\n  this.clear$Field(5);\n};\ni18n.phonenumbers.PhoneNumberDesc = function() {\n  goog.proto2.Message.call(this);\n};\ngoog.inherits(i18n.phonenumbers.PhoneNumberDesc, goog.proto2.Message);\ni18n.phonenumbers.PhoneNumberDesc.descriptor_ = null;\ni18n.phonenumbers.PhoneNumberDesc.prototype.getNationalNumberPattern = function() {\n  return this.get$Value(2);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.getNationalNumberPatternOrDefault = function() {\n  return this.get$ValueOrDefault(2);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.setNationalNumberPattern = function(a) {\n  this.set$Value(2, a);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.hasNationalNumberPattern = function() {\n  return this.has$Value(2);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.nationalNumberPatternCount = function() {\n  return this.count$Values(2);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.clearNationalNumberPattern = function() {\n  this.clear$Field(2);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.getPossibleLength = function(a) {\n  return this.get$Value(9, a);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.getPossibleLengthOrDefault = function(a) {\n  return this.get$ValueOrDefault(9, a);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.addPossibleLength = function(a) {\n  this.add$Value(9, a);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.possibleLengthArray = function() {\n  return this.array$Values(9);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.hasPossibleLength = function() {\n  return this.has$Value(9);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.possibleLengthCount = function() {\n  return this.count$Values(9);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.clearPossibleLength = function() {\n  this.clear$Field(9);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.getPossibleLengthLocalOnly = function(a) {\n  return this.get$Value(10, a);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.getPossibleLengthLocalOnlyOrDefault = function(a) {\n  return this.get$ValueOrDefault(10, a);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.addPossibleLengthLocalOnly = function(a) {\n  this.add$Value(10, a);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.possibleLengthLocalOnlyArray = function() {\n  return this.array$Values(10);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.hasPossibleLengthLocalOnly = function() {\n  return this.has$Value(10);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.possibleLengthLocalOnlyCount = function() {\n  return this.count$Values(10);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.clearPossibleLengthLocalOnly = function() {\n  this.clear$Field(10);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.getExampleNumber = function() {\n  return this.get$Value(6);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.getExampleNumberOrDefault = function() {\n  return this.get$ValueOrDefault(6);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.setExampleNumber = function(a) {\n  this.set$Value(6, a);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.hasExampleNumber = function() {\n  return this.has$Value(6);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.exampleNumberCount = function() {\n  return this.count$Values(6);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.clearExampleNumber = function() {\n  this.clear$Field(6);\n};\ni18n.phonenumbers.PhoneMetadata = function() {\n  goog.proto2.Message.call(this);\n};\ngoog.inherits(i18n.phonenumbers.PhoneMetadata, goog.proto2.Message);\ni18n.phonenumbers.PhoneMetadata.descriptor_ = null;\ni18n.phonenumbers.PhoneMetadata.prototype.getGeneralDesc = function() {\n  return this.get$Value(1);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getGeneralDescOrDefault = function() {\n  return this.get$ValueOrDefault(1);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setGeneralDesc = function(a) {\n  this.set$Value(1, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasGeneralDesc = function() {\n  return this.has$Value(1);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.generalDescCount = function() {\n  return this.count$Values(1);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearGeneralDesc = function() {\n  this.clear$Field(1);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getFixedLine = function() {\n  return this.get$Value(2);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getFixedLineOrDefault = function() {\n  return this.get$ValueOrDefault(2);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setFixedLine = function(a) {\n  this.set$Value(2, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasFixedLine = function() {\n  return this.has$Value(2);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.fixedLineCount = function() {\n  return this.count$Values(2);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearFixedLine = function() {\n  this.clear$Field(2);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getMobile = function() {\n  return this.get$Value(3);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getMobileOrDefault = function() {\n  return this.get$ValueOrDefault(3);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setMobile = function(a) {\n  this.set$Value(3, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasMobile = function() {\n  return this.has$Value(3);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.mobileCount = function() {\n  return this.count$Values(3);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearMobile = function() {\n  this.clear$Field(3);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getTollFree = function() {\n  return this.get$Value(4);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getTollFreeOrDefault = function() {\n  return this.get$ValueOrDefault(4);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setTollFree = function(a) {\n  this.set$Value(4, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasTollFree = function() {\n  return this.has$Value(4);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.tollFreeCount = function() {\n  return this.count$Values(4);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearTollFree = function() {\n  this.clear$Field(4);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getPremiumRate = function() {\n  return this.get$Value(5);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getPremiumRateOrDefault = function() {\n  return this.get$ValueOrDefault(5);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setPremiumRate = function(a) {\n  this.set$Value(5, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasPremiumRate = function() {\n  return this.has$Value(5);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.premiumRateCount = function() {\n  return this.count$Values(5);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearPremiumRate = function() {\n  this.clear$Field(5);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getSharedCost = function() {\n  return this.get$Value(6);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getSharedCostOrDefault = function() {\n  return this.get$ValueOrDefault(6);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setSharedCost = function(a) {\n  this.set$Value(6, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasSharedCost = function() {\n  return this.has$Value(6);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.sharedCostCount = function() {\n  return this.count$Values(6);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearSharedCost = function() {\n  this.clear$Field(6);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getPersonalNumber = function() {\n  return this.get$Value(7);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getPersonalNumberOrDefault = function() {\n  return this.get$ValueOrDefault(7);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setPersonalNumber = function(a) {\n  this.set$Value(7, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasPersonalNumber = function() {\n  return this.has$Value(7);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.personalNumberCount = function() {\n  return this.count$Values(7);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearPersonalNumber = function() {\n  this.clear$Field(7);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getVoip = function() {\n  return this.get$Value(8);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getVoipOrDefault = function() {\n  return this.get$ValueOrDefault(8);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setVoip = function(a) {\n  this.set$Value(8, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasVoip = function() {\n  return this.has$Value(8);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.voipCount = function() {\n  return this.count$Values(8);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearVoip = function() {\n  this.clear$Field(8);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getPager = function() {\n  return this.get$Value(21);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getPagerOrDefault = function() {\n  return this.get$ValueOrDefault(21);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setPager = function(a) {\n  this.set$Value(21, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasPager = function() {\n  return this.has$Value(21);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.pagerCount = function() {\n  return this.count$Values(21);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearPager = function() {\n  this.clear$Field(21);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getUan = function() {\n  return this.get$Value(25);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getUanOrDefault = function() {\n  return this.get$ValueOrDefault(25);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setUan = function(a) {\n  this.set$Value(25, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasUan = function() {\n  return this.has$Value(25);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.uanCount = function() {\n  return this.count$Values(25);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearUan = function() {\n  this.clear$Field(25);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getEmergency = function() {\n  return this.get$Value(27);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getEmergencyOrDefault = function() {\n  return this.get$ValueOrDefault(27);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setEmergency = function(a) {\n  this.set$Value(27, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasEmergency = function() {\n  return this.has$Value(27);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.emergencyCount = function() {\n  return this.count$Values(27);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearEmergency = function() {\n  this.clear$Field(27);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getVoicemail = function() {\n  return this.get$Value(28);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getVoicemailOrDefault = function() {\n  return this.get$ValueOrDefault(28);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setVoicemail = function(a) {\n  this.set$Value(28, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasVoicemail = function() {\n  return this.has$Value(28);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.voicemailCount = function() {\n  return this.count$Values(28);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearVoicemail = function() {\n  this.clear$Field(28);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getShortCode = function() {\n  return this.get$Value(29);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getShortCodeOrDefault = function() {\n  return this.get$ValueOrDefault(29);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setShortCode = function(a) {\n  this.set$Value(29, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasShortCode = function() {\n  return this.has$Value(29);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.shortCodeCount = function() {\n  return this.count$Values(29);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearShortCode = function() {\n  this.clear$Field(29);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getStandardRate = function() {\n  return this.get$Value(30);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getStandardRateOrDefault = function() {\n  return this.get$ValueOrDefault(30);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setStandardRate = function(a) {\n  this.set$Value(30, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasStandardRate = function() {\n  return this.has$Value(30);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.standardRateCount = function() {\n  return this.count$Values(30);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearStandardRate = function() {\n  this.clear$Field(30);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getCarrierSpecific = function() {\n  return this.get$Value(31);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getCarrierSpecificOrDefault = function() {\n  return this.get$ValueOrDefault(31);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setCarrierSpecific = function(a) {\n  this.set$Value(31, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasCarrierSpecific = function() {\n  return this.has$Value(31);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.carrierSpecificCount = function() {\n  return this.count$Values(31);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearCarrierSpecific = function() {\n  this.clear$Field(31);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getSmsServices = function() {\n  return this.get$Value(33);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getSmsServicesOrDefault = function() {\n  return this.get$ValueOrDefault(33);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setSmsServices = function(a) {\n  this.set$Value(33, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasSmsServices = function() {\n  return this.has$Value(33);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.smsServicesCount = function() {\n  return this.count$Values(33);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearSmsServices = function() {\n  this.clear$Field(33);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getNoInternationalDialling = function() {\n  return this.get$Value(24);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getNoInternationalDiallingOrDefault = function() {\n  return this.get$ValueOrDefault(24);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setNoInternationalDialling = function(a) {\n  this.set$Value(24, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasNoInternationalDialling = function() {\n  return this.has$Value(24);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.noInternationalDiallingCount = function() {\n  return this.count$Values(24);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearNoInternationalDialling = function() {\n  this.clear$Field(24);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getId = function() {\n  return this.get$Value(9);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getIdOrDefault = function() {\n  return this.get$ValueOrDefault(9);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setId = function(a) {\n  this.set$Value(9, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasId = function() {\n  return this.has$Value(9);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.idCount = function() {\n  return this.count$Values(9);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearId = function() {\n  this.clear$Field(9);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getCountryCode = function() {\n  return this.get$Value(10);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getCountryCodeOrDefault = function() {\n  return this.get$ValueOrDefault(10);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setCountryCode = function(a) {\n  this.set$Value(10, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasCountryCode = function() {\n  return this.has$Value(10);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.countryCodeCount = function() {\n  return this.count$Values(10);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearCountryCode = function() {\n  this.clear$Field(10);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getInternationalPrefix = function() {\n  return this.get$Value(11);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getInternationalPrefixOrDefault = function() {\n  return this.get$ValueOrDefault(11);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setInternationalPrefix = function(a) {\n  this.set$Value(11, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasInternationalPrefix = function() {\n  return this.has$Value(11);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.internationalPrefixCount = function() {\n  return this.count$Values(11);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearInternationalPrefix = function() {\n  this.clear$Field(11);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getPreferredInternationalPrefix = function() {\n  return this.get$Value(17);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getPreferredInternationalPrefixOrDefault = function() {\n  return this.get$ValueOrDefault(17);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setPreferredInternationalPrefix = function(a) {\n  this.set$Value(17, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasPreferredInternationalPrefix = function() {\n  return this.has$Value(17);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.preferredInternationalPrefixCount = function() {\n  return this.count$Values(17);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearPreferredInternationalPrefix = function() {\n  this.clear$Field(17);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getNationalPrefix = function() {\n  return this.get$Value(12);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getNationalPrefixOrDefault = function() {\n  return this.get$ValueOrDefault(12);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setNationalPrefix = function(a) {\n  this.set$Value(12, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasNationalPrefix = function() {\n  return this.has$Value(12);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.nationalPrefixCount = function() {\n  return this.count$Values(12);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearNationalPrefix = function() {\n  this.clear$Field(12);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getPreferredExtnPrefix = function() {\n  return this.get$Value(13);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getPreferredExtnPrefixOrDefault = function() {\n  return this.get$ValueOrDefault(13);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setPreferredExtnPrefix = function(a) {\n  this.set$Value(13, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasPreferredExtnPrefix = function() {\n  return this.has$Value(13);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.preferredExtnPrefixCount = function() {\n  return this.count$Values(13);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearPreferredExtnPrefix = function() {\n  this.clear$Field(13);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getNationalPrefixForParsing = function() {\n  return this.get$Value(15);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getNationalPrefixForParsingOrDefault = function() {\n  return this.get$ValueOrDefault(15);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setNationalPrefixForParsing = function(a) {\n  this.set$Value(15, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasNationalPrefixForParsing = function() {\n  return this.has$Value(15);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.nationalPrefixForParsingCount = function() {\n  return this.count$Values(15);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearNationalPrefixForParsing = function() {\n  this.clear$Field(15);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getNationalPrefixTransformRule = function() {\n  return this.get$Value(16);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getNationalPrefixTransformRuleOrDefault = function() {\n  return this.get$ValueOrDefault(16);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setNationalPrefixTransformRule = function(a) {\n  this.set$Value(16, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasNationalPrefixTransformRule = function() {\n  return this.has$Value(16);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.nationalPrefixTransformRuleCount = function() {\n  return this.count$Values(16);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearNationalPrefixTransformRule = function() {\n  this.clear$Field(16);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getSameMobileAndFixedLinePattern = function() {\n  return this.get$Value(18);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getSameMobileAndFixedLinePatternOrDefault = function() {\n  return this.get$ValueOrDefault(18);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setSameMobileAndFixedLinePattern = function(a) {\n  this.set$Value(18, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasSameMobileAndFixedLinePattern = function() {\n  return this.has$Value(18);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.sameMobileAndFixedLinePatternCount = function() {\n  return this.count$Values(18);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearSameMobileAndFixedLinePattern = function() {\n  this.clear$Field(18);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getNumberFormat = function(a) {\n  return this.get$Value(19, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getNumberFormatOrDefault = function(a) {\n  return this.get$ValueOrDefault(19, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.addNumberFormat = function(a) {\n  this.add$Value(19, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.numberFormatArray = function() {\n  return this.array$Values(19);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasNumberFormat = function() {\n  return this.has$Value(19);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.numberFormatCount = function() {\n  return this.count$Values(19);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearNumberFormat = function() {\n  this.clear$Field(19);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getIntlNumberFormat = function(a) {\n  return this.get$Value(20, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getIntlNumberFormatOrDefault = function(a) {\n  return this.get$ValueOrDefault(20, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.addIntlNumberFormat = function(a) {\n  this.add$Value(20, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.intlNumberFormatArray = function() {\n  return this.array$Values(20);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasIntlNumberFormat = function() {\n  return this.has$Value(20);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.intlNumberFormatCount = function() {\n  return this.count$Values(20);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearIntlNumberFormat = function() {\n  this.clear$Field(20);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getMainCountryForCode = function() {\n  return this.get$Value(22);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getMainCountryForCodeOrDefault = function() {\n  return this.get$ValueOrDefault(22);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setMainCountryForCode = function(a) {\n  this.set$Value(22, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasMainCountryForCode = function() {\n  return this.has$Value(22);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.mainCountryForCodeCount = function() {\n  return this.count$Values(22);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearMainCountryForCode = function() {\n  this.clear$Field(22);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getLeadingDigits = function() {\n  return this.get$Value(23);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getLeadingDigitsOrDefault = function() {\n  return this.get$ValueOrDefault(23);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setLeadingDigits = function(a) {\n  this.set$Value(23, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasLeadingDigits = function() {\n  return this.has$Value(23);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.leadingDigitsCount = function() {\n  return this.count$Values(23);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearLeadingDigits = function() {\n  this.clear$Field(23);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getLeadingZeroPossible = function() {\n  return this.get$Value(26);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getLeadingZeroPossibleOrDefault = function() {\n  return this.get$ValueOrDefault(26);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setLeadingZeroPossible = function(a) {\n  this.set$Value(26, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasLeadingZeroPossible = function() {\n  return this.has$Value(26);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.leadingZeroPossibleCount = function() {\n  return this.count$Values(26);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearLeadingZeroPossible = function() {\n  this.clear$Field(26);\n};\ni18n.phonenumbers.PhoneMetadataCollection = function() {\n  goog.proto2.Message.call(this);\n};\ngoog.inherits(i18n.phonenumbers.PhoneMetadataCollection, goog.proto2.Message);\ni18n.phonenumbers.PhoneMetadataCollection.descriptor_ = null;\ni18n.phonenumbers.PhoneMetadataCollection.prototype.getMetadata = function(a) {\n  return this.get$Value(1, a);\n};\ni18n.phonenumbers.PhoneMetadataCollection.prototype.getMetadataOrDefault = function(a) {\n  return this.get$ValueOrDefault(1, a);\n};\ni18n.phonenumbers.PhoneMetadataCollection.prototype.addMetadata = function(a) {\n  this.add$Value(1, a);\n};\ni18n.phonenumbers.PhoneMetadataCollection.prototype.metadataArray = function() {\n  return this.array$Values(1);\n};\ni18n.phonenumbers.PhoneMetadataCollection.prototype.hasMetadata = function() {\n  return this.has$Value(1);\n};\ni18n.phonenumbers.PhoneMetadataCollection.prototype.metadataCount = function() {\n  return this.count$Values(1);\n};\ni18n.phonenumbers.PhoneMetadataCollection.prototype.clearMetadata = function() {\n  this.clear$Field(1);\n};\ni18n.phonenumbers.NumberFormat.prototype.getDescriptor = function() {\n  var a = i18n.phonenumbers.NumberFormat.descriptor_;\n  a || (i18n.phonenumbers.NumberFormat.descriptor_ = a = goog.proto2.Message.createDescriptor(i18n.phonenumbers.NumberFormat, {0:{name:\"NumberFormat\", fullName:\"i18n.phonenumbers.NumberFormat\"}, 1:{name:\"pattern\", required:!0, fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 2:{name:\"format\", required:!0, fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 3:{name:\"leading_digits_pattern\", repeated:!0, fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 4:{name:\"national_prefix_formatting_rule\",\n  fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 6:{name:\"national_prefix_optional_when_formatting\", fieldType:goog.proto2.Message.FieldType.BOOL, defaultValue:!1, type:Boolean}, 5:{name:\"domestic_carrier_code_formatting_rule\", fieldType:goog.proto2.Message.FieldType.STRING, type:String}}));\n  return a;\n};\ni18n.phonenumbers.NumberFormat.getDescriptor = i18n.phonenumbers.NumberFormat.prototype.getDescriptor;\ni18n.phonenumbers.PhoneNumberDesc.prototype.getDescriptor = function() {\n  var a = i18n.phonenumbers.PhoneNumberDesc.descriptor_;\n  a || (i18n.phonenumbers.PhoneNumberDesc.descriptor_ = a = goog.proto2.Message.createDescriptor(i18n.phonenumbers.PhoneNumberDesc, {0:{name:\"PhoneNumberDesc\", fullName:\"i18n.phonenumbers.PhoneNumberDesc\"}, 2:{name:\"national_number_pattern\", fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 9:{name:\"possible_length\", repeated:!0, fieldType:goog.proto2.Message.FieldType.INT32, type:Number}, 10:{name:\"possible_length_local_only\", repeated:!0, fieldType:goog.proto2.Message.FieldType.INT32,\n  type:Number}, 6:{name:\"example_number\", fieldType:goog.proto2.Message.FieldType.STRING, type:String}}));\n  return a;\n};\ni18n.phonenumbers.PhoneNumberDesc.getDescriptor = i18n.phonenumbers.PhoneNumberDesc.prototype.getDescriptor;\ni18n.phonenumbers.PhoneMetadata.prototype.getDescriptor = function() {\n  var a = i18n.phonenumbers.PhoneMetadata.descriptor_;\n  a || (i18n.phonenumbers.PhoneMetadata.descriptor_ = a = goog.proto2.Message.createDescriptor(i18n.phonenumbers.PhoneMetadata, {0:{name:\"PhoneMetadata\", fullName:\"i18n.phonenumbers.PhoneMetadata\"}, 1:{name:\"general_desc\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 2:{name:\"fixed_line\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 3:{name:\"mobile\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc},\n  4:{name:\"toll_free\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 5:{name:\"premium_rate\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 6:{name:\"shared_cost\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 7:{name:\"personal_number\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 8:{name:\"voip\", fieldType:goog.proto2.Message.FieldType.MESSAGE,\n  type:i18n.phonenumbers.PhoneNumberDesc}, 21:{name:\"pager\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 25:{name:\"uan\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 27:{name:\"emergency\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 28:{name:\"voicemail\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 29:{name:\"short_code\",\n  fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 30:{name:\"standard_rate\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 31:{name:\"carrier_specific\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 33:{name:\"sms_services\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 24:{name:\"no_international_dialling\", fieldType:goog.proto2.Message.FieldType.MESSAGE,\n  type:i18n.phonenumbers.PhoneNumberDesc}, 9:{name:\"id\", required:!0, fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 10:{name:\"country_code\", fieldType:goog.proto2.Message.FieldType.INT32, type:Number}, 11:{name:\"international_prefix\", fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 17:{name:\"preferred_international_prefix\", fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 12:{name:\"national_prefix\", fieldType:goog.proto2.Message.FieldType.STRING, type:String},\n  13:{name:\"preferred_extn_prefix\", fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 15:{name:\"national_prefix_for_parsing\", fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 16:{name:\"national_prefix_transform_rule\", fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 18:{name:\"same_mobile_and_fixed_line_pattern\", fieldType:goog.proto2.Message.FieldType.BOOL, defaultValue:!1, type:Boolean}, 19:{name:\"number_format\", repeated:!0, fieldType:goog.proto2.Message.FieldType.MESSAGE,\n  type:i18n.phonenumbers.NumberFormat}, 20:{name:\"intl_number_format\", repeated:!0, fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.NumberFormat}, 22:{name:\"main_country_for_code\", fieldType:goog.proto2.Message.FieldType.BOOL, defaultValue:!1, type:Boolean}, 23:{name:\"leading_digits\", fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 26:{name:\"leading_zero_possible\", fieldType:goog.proto2.Message.FieldType.BOOL, defaultValue:!1, type:Boolean}}));\n  return a;\n};\ni18n.phonenumbers.PhoneMetadata.getDescriptor = i18n.phonenumbers.PhoneMetadata.prototype.getDescriptor;\ni18n.phonenumbers.PhoneMetadataCollection.prototype.getDescriptor = function() {\n  var a = i18n.phonenumbers.PhoneMetadataCollection.descriptor_;\n  a || (i18n.phonenumbers.PhoneMetadataCollection.descriptor_ = a = goog.proto2.Message.createDescriptor(i18n.phonenumbers.PhoneMetadataCollection, {0:{name:\"PhoneMetadataCollection\", fullName:\"i18n.phonenumbers.PhoneMetadataCollection\"}, 1:{name:\"metadata\", repeated:!0, fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneMetadata}}));\n  return a;\n};\ni18n.phonenumbers.PhoneMetadataCollection.getDescriptor = i18n.phonenumbers.PhoneMetadataCollection.prototype.getDescriptor;\ni18n.phonenumbers.PhoneNumber = function() {\n  goog.proto2.Message.call(this);\n};\ngoog.inherits(i18n.phonenumbers.PhoneNumber, goog.proto2.Message);\ni18n.phonenumbers.PhoneNumber.descriptor_ = null;\ni18n.phonenumbers.PhoneNumber.prototype.getCountryCode = function() {\n  return this.get$Value(1);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getCountryCodeOrDefault = function() {\n  return this.get$ValueOrDefault(1);\n};\ni18n.phonenumbers.PhoneNumber.prototype.setCountryCode = function(a) {\n  this.set$Value(1, a);\n};\ni18n.phonenumbers.PhoneNumber.prototype.hasCountryCode = function() {\n  return this.has$Value(1);\n};\ni18n.phonenumbers.PhoneNumber.prototype.countryCodeCount = function() {\n  return this.count$Values(1);\n};\ni18n.phonenumbers.PhoneNumber.prototype.clearCountryCode = function() {\n  this.clear$Field(1);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getNationalNumber = function() {\n  return this.get$Value(2);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getNationalNumberOrDefault = function() {\n  return this.get$ValueOrDefault(2);\n};\ni18n.phonenumbers.PhoneNumber.prototype.setNationalNumber = function(a) {\n  this.set$Value(2, a);\n};\ni18n.phonenumbers.PhoneNumber.prototype.hasNationalNumber = function() {\n  return this.has$Value(2);\n};\ni18n.phonenumbers.PhoneNumber.prototype.nationalNumberCount = function() {\n  return this.count$Values(2);\n};\ni18n.phonenumbers.PhoneNumber.prototype.clearNationalNumber = function() {\n  this.clear$Field(2);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getExtension = function() {\n  return this.get$Value(3);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getExtensionOrDefault = function() {\n  return this.get$ValueOrDefault(3);\n};\ni18n.phonenumbers.PhoneNumber.prototype.setExtension = function(a) {\n  this.set$Value(3, a);\n};\ni18n.phonenumbers.PhoneNumber.prototype.hasExtension = function() {\n  return this.has$Value(3);\n};\ni18n.phonenumbers.PhoneNumber.prototype.extensionCount = function() {\n  return this.count$Values(3);\n};\ni18n.phonenumbers.PhoneNumber.prototype.clearExtension = function() {\n  this.clear$Field(3);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getItalianLeadingZero = function() {\n  return this.get$Value(4);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getItalianLeadingZeroOrDefault = function() {\n  return this.get$ValueOrDefault(4);\n};\ni18n.phonenumbers.PhoneNumber.prototype.setItalianLeadingZero = function(a) {\n  this.set$Value(4, a);\n};\ni18n.phonenumbers.PhoneNumber.prototype.hasItalianLeadingZero = function() {\n  return this.has$Value(4);\n};\ni18n.phonenumbers.PhoneNumber.prototype.italianLeadingZeroCount = function() {\n  return this.count$Values(4);\n};\ni18n.phonenumbers.PhoneNumber.prototype.clearItalianLeadingZero = function() {\n  this.clear$Field(4);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getNumberOfLeadingZeros = function() {\n  return this.get$Value(8);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getNumberOfLeadingZerosOrDefault = function() {\n  return this.get$ValueOrDefault(8);\n};\ni18n.phonenumbers.PhoneNumber.prototype.setNumberOfLeadingZeros = function(a) {\n  this.set$Value(8, a);\n};\ni18n.phonenumbers.PhoneNumber.prototype.hasNumberOfLeadingZeros = function() {\n  return this.has$Value(8);\n};\ni18n.phonenumbers.PhoneNumber.prototype.numberOfLeadingZerosCount = function() {\n  return this.count$Values(8);\n};\ni18n.phonenumbers.PhoneNumber.prototype.clearNumberOfLeadingZeros = function() {\n  this.clear$Field(8);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getRawInput = function() {\n  return this.get$Value(5);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getRawInputOrDefault = function() {\n  return this.get$ValueOrDefault(5);\n};\ni18n.phonenumbers.PhoneNumber.prototype.setRawInput = function(a) {\n  this.set$Value(5, a);\n};\ni18n.phonenumbers.PhoneNumber.prototype.hasRawInput = function() {\n  return this.has$Value(5);\n};\ni18n.phonenumbers.PhoneNumber.prototype.rawInputCount = function() {\n  return this.count$Values(5);\n};\ni18n.phonenumbers.PhoneNumber.prototype.clearRawInput = function() {\n  this.clear$Field(5);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getCountryCodeSource = function() {\n  return this.get$Value(6);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getCountryCodeSourceOrDefault = function() {\n  return this.get$ValueOrDefault(6);\n};\ni18n.phonenumbers.PhoneNumber.prototype.setCountryCodeSource = function(a) {\n  this.set$Value(6, a);\n};\ni18n.phonenumbers.PhoneNumber.prototype.hasCountryCodeSource = function() {\n  return this.has$Value(6);\n};\ni18n.phonenumbers.PhoneNumber.prototype.countryCodeSourceCount = function() {\n  return this.count$Values(6);\n};\ni18n.phonenumbers.PhoneNumber.prototype.clearCountryCodeSource = function() {\n  this.clear$Field(6);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getPreferredDomesticCarrierCode = function() {\n  return this.get$Value(7);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getPreferredDomesticCarrierCodeOrDefault = function() {\n  return this.get$ValueOrDefault(7);\n};\ni18n.phonenumbers.PhoneNumber.prototype.setPreferredDomesticCarrierCode = function(a) {\n  this.set$Value(7, a);\n};\ni18n.phonenumbers.PhoneNumber.prototype.hasPreferredDomesticCarrierCode = function() {\n  return this.has$Value(7);\n};\ni18n.phonenumbers.PhoneNumber.prototype.preferredDomesticCarrierCodeCount = function() {\n  return this.count$Values(7);\n};\ni18n.phonenumbers.PhoneNumber.prototype.clearPreferredDomesticCarrierCode = function() {\n  this.clear$Field(7);\n};\ni18n.phonenumbers.PhoneNumber.CountryCodeSource = {UNSPECIFIED:0, FROM_NUMBER_WITH_PLUS_SIGN:1, FROM_NUMBER_WITH_IDD:5, FROM_NUMBER_WITHOUT_PLUS_SIGN:10, FROM_DEFAULT_COUNTRY:20};\ni18n.phonenumbers.PhoneNumber.prototype.getDescriptor = function() {\n  var a = i18n.phonenumbers.PhoneNumber.descriptor_;\n  a || (i18n.phonenumbers.PhoneNumber.descriptor_ = a = goog.proto2.Message.createDescriptor(i18n.phonenumbers.PhoneNumber, {0:{name:\"PhoneNumber\", fullName:\"i18n.phonenumbers.PhoneNumber\"}, 1:{name:\"country_code\", required:!0, fieldType:goog.proto2.Message.FieldType.INT32, type:Number}, 2:{name:\"national_number\", required:!0, fieldType:goog.proto2.Message.FieldType.UINT64, type:Number}, 3:{name:\"extension\", fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 4:{name:\"italian_leading_zero\",\n  fieldType:goog.proto2.Message.FieldType.BOOL, type:Boolean}, 8:{name:\"number_of_leading_zeros\", fieldType:goog.proto2.Message.FieldType.INT32, defaultValue:1, type:Number}, 5:{name:\"raw_input\", fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 6:{name:\"country_code_source\", fieldType:goog.proto2.Message.FieldType.ENUM, defaultValue:i18n.phonenumbers.PhoneNumber.CountryCodeSource.UNSPECIFIED, type:i18n.phonenumbers.PhoneNumber.CountryCodeSource}, 7:{name:\"preferred_domestic_carrier_code\",\n  fieldType:goog.proto2.Message.FieldType.STRING, type:String}}));\n  return a;\n};\ni18n.phonenumbers.PhoneNumber.ctor = i18n.phonenumbers.PhoneNumber;\ni18n.phonenumbers.PhoneNumber.ctor.getDescriptor = i18n.phonenumbers.PhoneNumber.prototype.getDescriptor;\n/*\n\n Copyright (C) 2010 The Libphonenumber Authors\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n*/\ni18n.phonenumbers.metadata = {};\ni18n.phonenumbers.metadata.countryCodeToRegionCodeMap = {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\".split(\" \"), 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\",\n\"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\"],\n241:[\"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\"],\n358:[\"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\"],\n599:[\"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\"], 800:[\"001\"], 808:[\"001\"], 850:[\"KP\"], 852:[\"HK\"], 853:[\"MO\"], 855:[\"KH\"], 856:[\"LA\"], 870:[\"001\"], 878:[\"001\"], 880:[\"BD\"], 881:[\"001\"], 882:[\"001\"], 883:[\"001\"], 886:[\"TW\"], 888:[\"001\"], 960:[\"MV\"], 961:[\"LB\"], 962:[\"JO\"], 963:[\"SY\"],\n964:[\"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\"], 979:[\"001\"], 992:[\"TJ\"], 993:[\"TM\"], 994:[\"AZ\"], 995:[\"GE\"], 996:[\"KG\"], 998:[\"UZ\"]};\ni18n.phonenumbers.metadata.countryToMetadata = {AC:[, [, , \"(?:[01589]\\\\d|[46])\\\\d{4}\", , , , , , , [5, 6]], [, , \"6[2-467]\\\\d{3}\", , , , \"62889\", , , [5]], [, , \"4\\\\d{4}\", , , , \"40123\", , , [5]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"AC\", 247, \"00\", , , , , , , , , , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"(?:0[1-9]|[1589]\\\\d)\\\\d{4}\", , , , \"542011\", , , [6]], , , [, , , , , , , ,\n, [-1]]], AD:[, [, , \"(?:1|6\\\\d)\\\\d{7}|[136-9]\\\\d{5}\", , , , , , , [6, 8, 9]], [, , \"[78]\\\\d{5}\", , , , \"712345\", , , [6]], [, , \"690\\\\d{6}|[36]\\\\d{5}\", , , , \"312345\", , , [6, 9]], [, , \"180[02]\\\\d{4}\", , , , \"18001234\", , , [8]], [, , \"[19]\\\\d{5}\", , , , \"912345\", , , [6]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"AD\", 376, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{3})\", \"$1 $2\", [\"[136-9]\"]], [, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"1\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\n\"$1 $2 $3\", [\"6\"]]], , [, , , , , , , , , [-1]], , , [, , \"1800\\\\d{4}\", , , , , , , [8]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], AE:[, [, , \"(?:[4-7]\\\\d|9[0-689])\\\\d{7}|800\\\\d{2,9}|[2-4679]\\\\d{7}\", , , , , , , [5, 6, 7, 8, 9, 10, 11, 12]], [, , \"[2-4679][2-8]\\\\d{6}\", , , , \"22345678\", , , [8], [7]], [, , \"5[024-68]\\\\d{7}\", , , , \"501234567\", , , [9]], [, , \"400\\\\d{6}|800\\\\d{2,9}\", , , , \"800123456\"], [, , \"900[02]\\\\d{5}\", , , , \"900234567\", , , [9]], [, , \"700[05]\\\\d{5}\", , , ,\n\"700012345\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"AE\", 971, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"600[25]\\\\d{5}\", , , , \"600212345\", , , [9]], , , [, , , , , , , , , [-1]]], AF:[, [, , \"[2-7]\\\\d{8}\",\n, , , , , , [9], [7]], [, , \"(?:[25][0-8]|[34][0-4]|6[0-5])[2-9]\\\\d{6}\", , , , \"234567890\", , , , [7]], [, , \"7(?:[014-9]\\\\d|2[89]|3[01])\\\\d{6}\", , , , \"701234567\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"AF\", 93, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[2-9]\"]], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[2-7]\"], \"0$1\"]], [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[2-7]\"], \"0$1\"]],\n[, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], AG:[, [, , \"(?:268|[58]\\\\d\\\\d|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"268(?:4(?:6[0-38]|84)|56[0-2])\\\\d{4}\", , , , \"2684601234\", , , , [7]], [, , \"268(?:464|7(?:1[3-9]|2\\\\d|3[246]|64|[78][0-689]))\\\\d{4}\", , , , \"2684641234\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\",\n, , , \"5002345678\"], [, , \"26848[01]\\\\d{4}\", , , , \"2684801234\", , , , [7]], \"AG\", 1, \"011\", \"1\", , , \"1|([457]\\\\d{6})$\", \"268$1\", , , , , [, , \"26840[69]\\\\d{4}\", , , , \"2684061234\", , , , [7]], , \"268\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], AI:[, [, , \"(?:264|[58]\\\\d\\\\d|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"2644(?:6[12]|9[78])\\\\d{4}\", , , , \"2644612345\", , , , [7]], [, , \"264(?:235|476|5(?:3[6-9]|8[1-4])|7(?:29|72))\\\\d{4}\", , , , \"2642351234\", ,\n, , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"AI\", 1, \"011\", \"1\", , , \"1|([2457]\\\\d{6})$\", \"264$1\", , , , , [, , , , , , , , , [-1]], , \"264\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], AL:[, [, , \"(?:700\\\\d\\\\d|900)\\\\d{3}|8\\\\d{5,7}|(?:[2-5]|6\\\\d)\\\\d{7}\", , , , , ,\n, [6, 7, 8, 9], [5]], [, , \"(?:[2358](?:[16-9]\\\\d[2-9]|[2-5][2-9]\\\\d)|4(?:[2-57-9][2-9]|6\\\\d)\\\\d)\\\\d{4}\", , , , \"22345678\", , , [8], [5, 6, 7]], [, , \"6(?:[689][2-9]|7[2-6])\\\\d{6}\", , , , \"662123456\", , , [9]], [, , \"800\\\\d{4}\", , , , \"8001234\", , , [7]], [, , \"900[1-9]\\\\d\\\\d\", , , , \"900123\", , , [6]], [, , \"808[1-9]\\\\d\\\\d\", , , , \"808123\", , , [6]], [, , \"700[2-9]\\\\d{4}\", , , , \"70021234\", , , [8]], [, , , , , , , , , [-1]], \"AL\", 355, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{3,4})\", \"$1 $2\",\n[\"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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], AM:[, [, , \"(?:[1-489]\\\\d|55|60|77)\\\\d{6}\", , , , , , , [8], [5, 6]], [, , \"(?:(?:1[0-25]|47)\\\\d|2(?:2[2-46]|3[1-8]|4[2-69]|5[2-7]|6[1-9]|8[1-7])|3[12]2)\\\\d{5}\",\n, , , \"10123456\", , , , [5, 6]], [, , \"(?:33|4[1349]|55|77|88|9[13-9])\\\\d{6}\", , , , \"77123456\"], [, , \"800\\\\d{5}\", , , , \"80012345\"], [, , \"90[016]\\\\d{5}\", , , , \"90012345\"], [, , \"80[1-4]\\\\d{5}\", , , , \"80112345\"], [, , , , , , , , , [-1]], [, , \"60(?:2[78]|3[5-9]|4[02-9]|5[0-46-9]|[6-8]\\\\d|90)\\\\d{4}\", , , , \"60271234\"], \"AM\", 374, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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})\",\n\"$1 $2\", [\"1|47\"], \"(0$1)\"], [, \"(\\\\d{2})(\\\\d{6})\", \"$1 $2\", [\"[3-9]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], AO:[, [, , \"[29]\\\\d{8}\", , , , , , , [9]], [, , \"2\\\\d(?:[0134][25-9]|[25-9]\\\\d)\\\\d{5}\", , , , \"222123456\"], [, , \"9[1-49]\\\\d{7}\", , , , \"923123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"AO\", 244, \"00\", , , , ,\n, , , [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[29]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], AR:[, [, , \"11\\\\d{8}|(?:[2368]|9\\\\d)\\\\d{9}\", , , , , , , [10, 11], [6, 7, 8]], [, , \"(?:2(?:646[0-46-9]|9(?:45[02-69]|54[2-8]))|3(?:4(?:3(?:5[0-7]|6[1-69])|5(?:4[0-4679]|[56][024-6]))|585[013-7]|7(?:(?:1[15]|81)[46]|77[2-8])|8(?:(?:21|4[16]|9[12])[46]|35[124-6]|5(?:5[0-46-9]|6[0-246-9])|6(?:5[2-8]|9[46])|86[0-68])))\\\\d{5}|(?:2(?:284|657|9(?:20|66))|3(?:4(?:8[27]|92)|755|878))[2-7]\\\\d{5}|(?:2(?:2(?:2[59]|44|52)|3(?:26|4[24])|473|9(?:[07]2|2[26]|34|46))|3327)[45]\\\\d{5}|(?:2(?:(?:26|62)2|3(?:02|2[03])|477|9(?:42|83))|3(?:4(?:[47]6|62|89)|5(?:41|64)|873))[2-6]\\\\d{5}|(?:(?:11[2-7]|670)\\\\d|2(?:2(?:0[45]|1[2-6]|3[3-6])|3(?:[06]4|7[45])|494|6(?:04|1[2-7]|[346][45])|80[45]|9(?:[17][4-6]|44|8[45]|9[3-6]))|3(?:364|4(?:1[2-7]|2[4-6]|[38]4)|5(?:1[2-8]|3[4-6]|8[46])|6(?:2[45]|44)|7[069][45]|8(?:0[45]|1[2-6]|34|5[34]|7[24-6]|8[3-5])))\\\\d{6}|2(?:2(?:21|4[23]|6[145]|7[1-4]|8[356]|9[267])|3(?:16|3[13-8]|43|5[346-8]|9[3-5])|475|6(?:2[46]|4[78]|5[1568])|9(?:03|2[1457-9]|3[1356]|4[08]|[56][23]|82))4\\\\d{5}|(?:2(?:2(?:57|81)|3(?:24|46|92)|9(?:01|23|64))|3(?:329|4(?:42|71)|5(?:25|37|4[347]|71)|7(?:18|5[17])|888))[3-6]\\\\d{5}|(?:2(?:2(?:02|2[3467]|4[156]|5[45]|6[6-8]|91)|3(?:1[47]|[24]5|5[25]|96)|47[48]|625|932)|3(?:38[2578]|4(?:0[0-24-9]|3[78]|4[457]|58|6[03-9]|72|83|9[136-8])|5(?:2[124]|[368][23]|4[2689]|7[2-6])|7(?:16|2[15]|3[145]|4[13]|5[468]|7[2-5]|8[26])|8(?:2[5-7]|3[278]|4[3-5]|5[78]|6[1-378]|[78]7|94)))[4-6]\\\\d{5}\",\n, , , \"1123456789\", , , [10], [6, 7, 8]], [, , \"9(?:2(?:646[0-46-9]|9(?:45[02-69]|54[2-8]))|3(?:4(?:3(?:5[0-7]|6[1-69])|5(?:4[0-4679]|[56][024-6]))|585[013-7]|7(?:(?:1[15]|81)[46]|77[2-8])|8(?:(?:21|4[16]|9[12])[46]|35[124-6]|5(?:5[0-46-9]|6[0-246-9])|6(?:5[2-8]|9[46])|86[0-68])))\\\\d{5}|9(?:2(?:284|657|9(?:20|66))|3(?:4(?:8[27]|92)|755|878))[2-7]\\\\d{5}|9(?:2(?:2(?:2[59]|44|52)|3(?:26|4[24])|473|9(?:[07]2|2[26]|34|46))|3327)[45]\\\\d{5}|9(?:2(?:(?:26|62)2|3(?:02|2[03])|477|9(?:42|83))|3(?:4(?:[47]6|62|89)|5(?:41|64)|873))[2-6]\\\\d{5}|(?:675\\\\d|9(?:11[2-7]\\\\d|2(?:2(?:0[45]|1[2-6]|3[3-6])|3(?:[06]4|7[45])|494|6(?:04|1[2-7]|[346][45])|80[45]|9(?:[17][4-6]|44|8[45]|9[3-6]))|3(?:364|4(?:1[2-7]|2[4-6]|[38]4)|5(?:1[2-8]|3[4-6]|8[46])|6(?:2[45]|44)|7[069][45]|8(?:0[45]|1[2-6]|34|5[34]|7[24-6]|8[3-5]))))\\\\d{6}|92(?:2(?:21|4[23]|6[145]|7[1-4]|8[356]|9[267])|3(?:16|3[13-8]|43|5[346-8]|9[3-5])|475|6(?:2[46]|4[78]|5[1568])|9(?:03|2[1457-9]|3[1356]|4[08]|[56][23]|82))4\\\\d{5}|9(?:2(?:2(?:57|81)|3(?:24|46|92)|9(?:01|23|64))|3(?:329|4(?:42|71)|5(?:25|37|4[347]|71)|7(?:18|5[17])|888))[3-6]\\\\d{5}|9(?:2(?:2(?:02|2[3467]|4[156]|5[45]|6[6-8]|91)|3(?:1[47]|[24]5|5[25]|96)|47[48]|625|932)|3(?:38[2578]|4(?:0[0-24-9]|3[78]|4[457]|58|6[03-9]|72|83|9[136-8])|5(?:2[124]|[368][23]|4[2689]|7[2-6])|7(?:16|2[15]|3[145]|4[13]|5[468]|7[2-5]|8[26])|8(?:2[5-7]|3[278]|4[3-5]|5[78]|6[1-378]|[78]7|94)))[4-6]\\\\d{5}\",\n, , , \"91123456789\", , , , [6, 7, 8]], [, , \"800\\\\d{7}\", , , , \"8001234567\", , , [10]], [, , \"60[04579]\\\\d{7}\", , , , \"6001234567\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"AR\", 54, \"00\", \"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)?\",\n\"9$1\", , , [[, \"(\\\\d{3})\", \"$1\", [\"[09]|1(?:[02]|1[02-5])\"]], [, \"(\\\\d{2})(\\\\d{4})\", \"$1-$2\", [\"[2-7]|8[0-7]\"]], [, \"(\\\\d{3})(\\\\d{4})\", \"$1-$2\", [\"[2-7]|8[013-8]\"]], [, \"(\\\\d{4})(\\\\d{4})\", \"$1-$2\", [\"2[0-8]|[3-7]\"]], [, \"(\\\\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)\",\n\"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(?:[24-6]|3[2-5]))|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]\"],\n\"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\", [\"[23]\"], \"0$1\", , 1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"[68]\"], \"0$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)\",\n\"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(?:[24-6]|3[2-5]))|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]\"],\n\"0$1\"], [, \"(\\\\d)(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$2 15-$3-$4\", [\"91\"], \"0$1\"], [, \"(\\\\d)(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$2 15-$3-$4\", [\"9\"], \"0$1\"]], [[, \"(\\\\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]\",\n\"2(?:[23]02|6(?:[25]|4(?:64|[78]))|9(?:[02356]|4(?:[0268]|5(?:[24-6]|3[2-5]))|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\", [\"[23]\"],\n\"0$1\", , 1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"[68]\"], \"0$1\"], [, \"(\\\\d)(\\\\d{4})(\\\\d{2})(\\\\d{4})\", \"$1 $2 $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]\",\n\"9(?:2(?:[23]02|6(?:[25]|4(?:64|[78]))|9(?:[02356]|4(?:[0268]|5(?:[24-6]|3[2-5]))|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]\"]], [, \"(\\\\d)(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3-$4\", [\"91\"]], [, \"(\\\\d)(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3-$4\",\n[\"9\"]]], [, , , , , , , , , [-1]], , , [, , \"810\\\\d{7}\", , , , , , , [10]], [, , \"810\\\\d{7}\", , , , \"8101234567\", , , [10]], , , [, , , , , , , , , [-1]]], AS:[, [, , \"(?:[58]\\\\d\\\\d|684|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"6846(?:22|33|44|55|77|88|9[19])\\\\d{4}\", , , , \"6846221234\", , , , [7]], [, , \"684(?:2(?:5[2468]|72)|7(?:3[13]|70))\\\\d{4}\", , , , \"6847331234\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , ,\n, , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"AS\", 1, \"011\", \"1\", , , \"1|([267]\\\\d{6})$\", \"684$1\", , , , , [, , , , , , , , , [-1]], , \"684\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], AT:[, [, , \"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,\n11, 12, 13], [3]], [, , \"1(?:11\\\\d|[2-9]\\\\d{3,11})|(?:316|463|(?:51|66|73)2)\\\\d{3,10}|(?:2(?:1[467]|2[13-8]|5[2357]|6[1-46-8]|7[1-8]|8[124-7]|9[1458])|3(?:1[1-578]|3[23568]|4[5-7]|5[1378]|6[1-38]|8[3-68])|4(?:2[1-8]|35|7[1368]|8[2457])|5(?:2[1-8]|3[357]|4[147]|5[12578]|6[37])|6(?:13|2[1-47]|4[135-8]|5[468])|7(?:2[1-8]|35|4[13478]|5[68]|6[16-8]|7[1-6]|9[45]))\\\\d{4,10}\", , , , \"1234567890\", , , , [3]], [, , \"6(?:5[0-3579]|6[013-9]|[7-9]\\\\d)\\\\d{4,10}\", , , , \"664123456\", , , [7, 8, 9, 10, 11, 12, 13]],\n[, , \"800\\\\d{6,10}\", , , , \"800123456\", , , [9, 10, 11, 12, 13]], [, , \"9(?:0[01]|3[019])\\\\d{6,10}\", , , , \"900123456\", , , [9, 10, 11, 12, 13]], [, , \"8(?:10|2[018])\\\\d{6,10}|828\\\\d{5}\", , , , \"810123456\", , , [8, 9, 10, 11, 12, 13]], [, , , , , , , , , [-1]], [, , \"5(?:0[1-9]|17|[79]\\\\d)\\\\d{2,10}|7[28]0\\\\d{6,10}\", , , , \"780123456\", , , [5, 6, 7, 8, 9, 10, 11, 12, 13]], \"AT\", 43, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d)(\\\\d{3,12})\", \"$1 $2\", [\"1(?:11|[2-9])\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{2})\", \"$1 $2\",\n[\"517\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3,5})\", \"$1 $2\", [\"5[079]\"], \"0$1\"], [, \"(\\\\d{6})\", \"$1\", [\"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\"]], [[, \"(\\\\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})\",\n\"$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\"]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], AU:[, [, , \"1(?:[0-79]\\\\d{7,8}|8[0-24-9]\\\\d{7})|(?:[2-478]\\\\d\\\\d|550)\\\\d{6}|1\\\\d{4,7}\",\n, , , , , , [5, 6, 7, 8, 9, 10]], [, , \"(?:[237]\\\\d{5}|8(?:51(?:0(?:0[03-9]|[1247]\\\\d|3[2-9]|5[0-8]|6[1-9]|8[0-6])|1(?:1[69]|[23]\\\\d|4[0-4]))|(?:[6-8]\\\\d{3}|9(?:[02-9]\\\\d\\\\d|1(?:[0-57-9]\\\\d|6[0135-9])))\\\\d))\\\\d{3}\", , , , \"212345678\", , , [9], [8]], [, , \"483[0-3]\\\\d{5}|4(?:[0-3]\\\\d|4[047-9]|5[0-25-9]|6[06-9]|7[02-9]|8[0-2457-9]|9[0-27-9])\\\\d{6}\", , , , \"412345678\", , , [9]], [, , \"180(?:0\\\\d{3}|2)\\\\d{3}\", , , , \"1800123456\", , , [7, 10]], [, , \"190[0-26]\\\\d{6}\", , , , \"1900123456\", , , [10]], [,\n, \"13(?:00\\\\d{3}|45[0-4])\\\\d{3}|13\\\\d{4}\", , , , \"1300123456\", , , [6, 8, 10]], [, , , , , , , , , [-1]], [, , \"(?:14(?:5(?:1[0458]|[23][458])|71\\\\d)|550\\\\d\\\\d)\\\\d{4}\", , , , \"550123456\", , , [9]], \"AU\", 61, \"001[14-689]|14(?:1[14]|34|4[17]|[56]6|7[47]|88)0011\", \"0\", , , \"0|(183[12])\", , \"0011\", , [[, \"(\\\\d{2})(\\\\d{3,4})\", \"$1 $2\", [\"16\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3\", [\"13\"]], [, \"(\\\\d{3})(\\\\d{3})\", \"$1 $2\", [\"19\"]], [, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"180\", \"1802\"]], [, \"(\\\\d{4})(\\\\d{3,4})\",\n\"$1 $2\", [\"19\"]], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{2,4})\", \"$1 $2 $3\", [\"16\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"14|[45]\"], \"0$1\"], [, \"(\\\\d)(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"[2378]\"], \"(0$1)\", \"$CC ($1)\"], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"1(?:30|[89])\"]]], [[, \"(\\\\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|[45]\"], \"0$1\"], [, \"(\\\\d)(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"[2378]\"],\n\"(0$1)\", \"$CC ($1)\"], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"1(?:30|[89])\"]]], [, , \"16\\\\d{3,7}\", , , , \"1612345\", , , [5, 6, 7, 8, 9]], 1, , [, , \"1[38]00\\\\d{6}|1(?:345[0-4]|802)\\\\d{3}|13\\\\d{4}\", , , , , , , [6, 7, 8, 10]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], AW:[, [, , \"(?:[25-79]\\\\d\\\\d|800)\\\\d{4}\", , , , , , , [7]], [, , \"5(?:2\\\\d|8[1-9])\\\\d{4}\", , , , \"5212345\"], [, , \"(?:290|5[69]\\\\d|6(?:[03]0|22|4[0-2]|[69]\\\\d)|7(?:[34]\\\\d|7[07])|9(?:6[45]|9[4-8]))\\\\d{4}\", , , , \"5601234\"],\n[, , \"800\\\\d{4}\", , , , \"8001234\"], [, , \"900\\\\d{4}\", , , , \"9001234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"(?:28\\\\d|501)\\\\d{4}\", , , , \"5011234\"], \"AW\", 297, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[25-9]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], AX:[, [, , \"2\\\\d{4,9}|35\\\\d{4,5}|(?:60\\\\d\\\\d|800)\\\\d{4,6}|(?:[147]\\\\d|3[0-46-9]|50)\\\\d{4,8}\", , , , , , , [5, 6, 7, 8, 9, 10]], [, , \"18[1-8]\\\\d{3,6}\",\n, , , \"181234567\", , , [6, 7, 8, 9]], [, , \"(?:4[0-8]|50)\\\\d{4,8}\", , , , \"412345678\", , , [6, 7, 8, 9, 10]], [, , \"800\\\\d{4,6}\", , , , \"800123456\", , , [7, 8, 9]], [, , \"[67]00\\\\d{5,6}\", , , , \"600123456\", , , [8, 9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"AX\", 358, \"00|99(?:[01469]|5(?:[14]1|3[23]|5[59]|77|88|9[09]))\", \"0\", , , \"0\", , \"00\", , , , [, , , , , , , , , [-1]], , \"18\", [, , , , , , , , , [-1]], [, , \"(?:10|[23][09])\\\\d{4,8}|60(?:[12]\\\\d{5,6}|6\\\\d{7})|7(?:(?:1|3\\\\d)\\\\d{7}|5[03-9]\\\\d{3,7})|20[2-59]\\\\d\\\\d\",\n, , , \"10112345\"], , , [, , , , , , , , , [-1]]], AZ:[, [, , \"(?:365\\\\d{3}|900200)\\\\d{3}|(?:[12457]\\\\d|60|88)\\\\d{7}\", , , , , , , [9], [7]], [, , \"365(?:[0-46-9]\\\\d|5[0-35-9])\\\\d{4}|(?:1[28]\\\\d|2(?:[045]2|1[24]|2[2-4]|33|6[23]))\\\\d{6}\", , , , \"123123456\", , , , [7]], [, , \"36554\\\\d{4}|(?:4[04]|5[015]|60|7[07])\\\\d{7}\", , , , \"401234567\"], [, , \"88\\\\d{7}\", , , , \"881234567\"], [, , \"900200\\\\d{3}\", , , , \"900200123\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"AZ\",\n994, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3\", [\"[1-9]\"]], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"9\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[12]|365\", \"[12]|365\", \"[12]|365(?:[0-46-9]|5[0-35-9])\"], \"(0$1)\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[3-8]\"], \"0$1\"]], [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"9\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[12]|365\", \"[12]|365\",\n\"[12]|365(?:[0-46-9]|5[0-35-9])\"], \"(0$1)\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[3-8]\"], \"0$1\"]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BA:[, [, , \"6\\\\d{8}|(?:[35689]\\\\d|49|70)\\\\d{6}\", , , , , , , [8, 9], [6]], [, , \"(?:3(?:[05-79][2-9]|1[4579]|[23][24-9]|4[2-4689]|8[2457-9])|49[2-579]|5(?:0[2-49]|[13][2-9]|[268][2-4679]|4[4689]|5[2-79]|7[2-69]|9[2-4689]))\\\\d{5}\", , , , \"30212345\", , , [8], [6]], [, ,\n\"6(?:0(?:3\\\\d|40)|[1-356]\\\\d|44[0-6]|71[137])\\\\d{5}\", , , , \"61123456\"], [, , \"8[08]\\\\d{6}\", , , , \"80123456\", , , [8]], [, , \"9[0246]\\\\d{6}\", , , , \"90123456\", , , [8]], [, , \"8[12]\\\\d{6}\", , , , \"82123456\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"BA\", 387, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{3})\", \"$1-$2\", [\"[2-9]\"]], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"6[1-356]|[7-9]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2-$3\", [\"[3-5]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{3})\",\n\"$1 $2 $3 $4\", [\"6\"], \"0$1\"]], [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"6[1-356]|[7-9]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2-$3\", [\"[3-5]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{3})\", \"$1 $2 $3 $4\", [\"6\"], \"0$1\"]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"70(?:3[0146]|[56]0)\\\\d{4}\", , , , \"70341234\", , , [8]], , , [, , , , , , , , , [-1]]], BB:[, [, , \"(?:246|[58]\\\\d\\\\d|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"246(?:2(?:2[78]|7[0-4])|4(?:1[024-6]|2\\\\d|3[2-9])|5(?:20|[34]\\\\d|54|7[1-3])|6(?:2\\\\d|38)|7[35]7|9(?:1[89]|63))\\\\d{4}\",\n, , , \"2464123456\", , , , [7]], [, , \"246(?:2(?:[356]\\\\d|4[0-57-9]|8[0-79])|45\\\\d|69[5-7]|8(?:[2-5]\\\\d|83))\\\\d{4}\", , , , \"2462501234\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"(?:246976|900[2-9]\\\\d\\\\d)\\\\d{4}\", , , , \"9002123456\", , , , [7]], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , \"24631\\\\d{5}\", , , , \"2463101234\", , , , [7]], \"BB\", 1, \"011\", \"1\", , , \"1|([2-9]\\\\d{6})$\", \"246$1\", , , , , [, , ,\n, , , , , , [-1]], , \"246\", [, , , , , , , , , [-1]], [, , \"246(?:292|367|4(?:1[7-9]|3[01]|44|67)|7(?:36|53))\\\\d{4}\", , , , \"2464301234\", , , , [7]], , , [, , , , , , , , , [-1]]], BD:[, [, , \"[13469]\\\\d{9}|8[0-79]\\\\d{7,8}|[2-7]\\\\d{8}|[2-9]\\\\d{7}|[3-689]\\\\d{6}|[57-9]\\\\d{5}\", , , , , , , [6, 7, 8, 9, 10]], [, , \"(?:3(?:03[56]|224)|4(?:22[25]|653))\\\\d{3,4}|(?:4(?:31\\\\d\\\\d|[46]23)|5(?:222|32[37]))\\\\d{3}(?:\\\\d{2})?|(?:3(?:42[47]|529|823)|4(?:027|525|658)|(?:56|73)2|6257|9[35]1)\\\\d{3}|(?:3(?:02[348]|22[35]|324|422)|4(?:22[67]|32[236-9]|6(?:2[46]|5[57])|953)|5526|6(?:024|6655)|81)\\\\d{4,5}|(?:2(?:7(?:1[0-267]|2[0-289]|3[0-29]|4[01]|5[1-3]|6[013]|7[0178]|91)|8(?:0[125]|1[1-6]|2[0157-9]|3[1-69]|41|6[1-35]|7[1-5]|8[1-8]|9[0-6])|9(?:0[0-2]|1[0-4]|2[568]|3[3-6]|5[5-7]|6[01367]|7[15]|8[014-9]))|3(?:0(?:2[025-79]|3[2-4])|22[12]|32[2356]|824)|4(?:02[09]|22[348]|32[045]|523|6(?:27|54))|666(?:22|53)|8(?:4[12]|[5-7]2)|9(?:[024]2|81))\\\\d{4}|(?:2[45]\\\\d\\\\d|3(?:1(?:2[5-7]|[5-7])|425|822)|4(?:033|1\\\\d|[257]1|332|4(?:2[246]|5[25])|6(?:25|56|62)|8(?:23|54)|92[2-5])|5(?:02[03489]|22[457]|32[569]|42[46]|6(?:[18]|53)|724|826)|6(?:023|2(?:2[2-5]|5[3-5]|8)|32[3478]|42[34]|52[47]|6(?:[18]|6(?:2[34]|5[24]))|[78]2[2-5]|92[2-6])|7(?:02|21\\\\d|[3-589]1|6[12]|72[24])|8(?:0|217|3[12]|[5-7]1)|9[24]1)\\\\d{5}|(?:(?:3[2-8]|5[2-57-9]|6[03-589])1|4[4689][18])\\\\d{5}|[59]1\\\\d{5}\",\n, , , \"27111234\"], [, , \"(?:1[13-9]\\\\d|644)\\\\d{7}|(?:3[78]|44|66)[02-9]\\\\d{7}\", , , , \"1812345678\", , , [10]], [, , \"80[03]\\\\d{7}\", , , , \"8001234567\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"96(?:0[469]|1[0-47]|3[389]|6[69]|7[78])\\\\d{6}\", , , , \"9604123456\", , , [10]], \"BD\", 880, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{4,6})\", \"$1-$2\", [\"31[5-7]|[459]1\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{3,7})\", \"$1-$2\", [\"3(?:[67]|8[013-9])|4(?:6[168]|7|[89][18])|5(?:6[128]|9)|6(?:28|4[14]|5)|7[2-589]|8(?:0[014-9]|[12])|9[358]|(?:3[2-5]|4[235]|5[2-578]|6[0389]|76|8[3-7]|9[24])1|(?:44|66)[01346-9]\"],\n\"0$1\"], [, \"(\\\\d{4})(\\\\d{3,6})\", \"$1-$2\", [\"[13-9]\"], \"0$1\"], [, \"(\\\\d)(\\\\d{7,8})\", \"$1-$2\", [\"2\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BE:[, [, , \"4\\\\d{8}|[1-9]\\\\d{7}\", , , , , , , [8, 9]], [, , \"80[2-8]\\\\d{5}|(?:1[0-69]|[23][2-8]|4[23]|5\\\\d|6[013-57-9]|71|8[1-79]|9[2-4])\\\\d{6}\", , , , \"12345678\", , , [8]], [, , \"4(?:5[56]|6[0135-8]|[79]\\\\d|8[3-9])\\\\d{6}\", , , , \"470123456\", , , [9]], [, , \"800[1-9]\\\\d{4}\", ,\n, , \"80012345\", , , [8]], [, , \"(?:70(?:2[0-57]|3[0457]|44|69|7[0579])|90(?:0[0-35-8]|1[36]|2[0-3568]|3[0135689]|4[2-68]|5[1-68]|6[0-378]|7[23568]|9[34679]))\\\\d{4}\", , , , \"90012345\", , , [8]], [, , \"7879\\\\d{4}\", , , , \"78791234\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"BE\", 32, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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})\",\n\"$1 $2 $3 $4\", [\"[15-8]\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"4\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"78(?:0[57]|1[0458]|2[25]|3[5-8]|48|[56]0|7[078])\\\\d{4}\", , , , \"78102345\", , , [8]], , , [, , , , , , , , , [-1]]], BF:[, [, , \"[025-7]\\\\d{7}\", , , , , , , [8]], [, , \"2(?:0(?:49|5[23]|6[56]|9[016-9])|4(?:4[569]|5[4-6]|6[56]|7[0179])|5(?:[34]\\\\d|50|6[5-7]))\\\\d{4}\", , , , \"20491234\"], [, , \"(?:0[17]|5[124-8]|[67]\\\\d)\\\\d{6}\", , , ,\n\"70123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"BF\", 226, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[025-7]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BG:[, [, , \"[2-7]\\\\d{6,7}|[89]\\\\d{6,8}|2\\\\d{5}\", , , , , , , [6, 7, 8, 9], [4, 5]], [, , \"2\\\\d{5,7}|(?:43[1-6]|70[1-9])\\\\d{4,5}|(?:[36]\\\\d|4[124-7]|[57][1-9]|8[1-6]|9[1-7])\\\\d{5,6}\",\n, , , \"2123456\", , , [6, 7, 8], [4, 5]], [, , \"43[07-9]\\\\d{5}|(?:48|8[7-9]\\\\d|9(?:8\\\\d|9[69]))\\\\d{6}\", , , , \"48123456\", , , [8, 9]], [, , \"800\\\\d{5}\", , , , \"80012345\", , , [8]], [, , \"90\\\\d{6}\", , , , \"90123456\", , , [8]], [, , \"700\\\\d{5}\", , , , \"70012345\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"BG\", 359, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{6})\", \"$1\", [\"1\"]], [, \"(\\\\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]\"],\n\"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\"]], [[, \"(\\\\d)(\\\\d)(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"2\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{4})\",\n\"$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\"]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]],\n[, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BH:[, [, , \"[136-9]\\\\d{7}\", , , , , , , [8]], [, , \"(?:1(?:3[1356]|6[0156]|7\\\\d)\\\\d|6(?:1[16]\\\\d|500|6(?:0\\\\d|3[12]|44|7[7-9]|88)|9[69][69])|7(?:1(?:11|78)|7\\\\d\\\\d))\\\\d{4}\", , , , \"17001234\"], [, , \"(?:3(?:[1-4679]\\\\d|5[013-69]|8[0-47-9])\\\\d|6(?:3(?:00|33|6[16])|6(?:3[03-9]|[69]\\\\d|7[0-6])))\\\\d{4}\", , , , \"36001234\"], [, , \"80\\\\d{6}\", , , , \"80123456\"], [, , \"(?:87|9[014578])\\\\d{6}\", , , , \"90123456\"], [, , \"84\\\\d{6}\", , , , \"84123456\"], [,\n, , , , , , , , [-1]], [, , , , , , , , , [-1]], \"BH\", 973, \"00\", , , , , , , , [[, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[13679]|8[047]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BI:[, [, , \"(?:[267]\\\\d|31)\\\\d{6}\", , , , , , , [8]], [, , \"22\\\\d{6}\", , , , \"22201234\"], [, , \"(?:29|31|6[189]|7[125-9])\\\\d{6}\", , , , \"79561234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]],\n[, , , , , , , , , [-1]], \"BI\", 257, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[2367]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BJ:[, [, , \"[2689]\\\\d{7}\", , , , , , , [8]], [, , \"2(?:02|1[037]|2[45]|3[68])\\\\d{5}\", , , , \"20211234\"], [, , \"(?:6\\\\d|9[013-9])\\\\d{6}\", , , , \"90011234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]],\n[, , \"857[58]\\\\d{4}\", , , , \"85751234\"], \"BJ\", 229, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[2689]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"81\\\\d{6}\", , , , \"81123456\"], , , [, , , , , , , , , [-1]]], BL:[, [, , \"(?:590|69\\\\d)\\\\d{6}\", , , , , , , [9]], [, , \"590(?:2[7-9]|5[12]|87)\\\\d{4}\", , , , \"590271234\"], [, , \"69(?:0\\\\d\\\\d|1(?:2[29]|3[0-5]))\\\\d{4}\", , , , \"690001234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , ,\n, , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"BL\", 590, \"00\", \"0\", , , \"0\", , , , , , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BM:[, [, , \"(?:441|[58]\\\\d\\\\d|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"441(?:2(?:02|23|[3479]\\\\d|61)|[46]\\\\d\\\\d|5(?:4\\\\d|60|89)|824)\\\\d{4}\", , , , \"4412345678\", , , , [7]], [, , \"441(?:[37]\\\\d|5[0-39])\\\\d{5}\", , , , \"4413701234\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\",\n, , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"BM\", 1, \"011\", \"1\", , , \"1|([2-8]\\\\d{6})$\", \"441$1\", , , , , [, , , , , , , , , [-1]], , \"441\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BN:[, [, , \"[2-578]\\\\d{6}\", , , , , , , [7]], [, , \"22[0-7]\\\\d{4}|(?:2[013-9]|[3-5]\\\\d)\\\\d{5}\", , , , \"2345678\"], [, , \"(?:22[89]|[78]\\\\d\\\\d)\\\\d{4}\",\n, , , \"7123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"BN\", 673, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[2-578]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BO:[, [, , \"(?:[2-467]\\\\d\\\\d|8001)\\\\d{5}\", , , , , , , [8, 9], [7]], [, , \"(?:2(?:2\\\\d\\\\d|5(?:11|[258]\\\\d|9[67])|6(?:12|2\\\\d|9[34])|8(?:2[34]|39|62))|3(?:3\\\\d\\\\d|4(?:6\\\\d|8[24])|8(?:25|42|5[257]|86|9[25])|9(?:[27]\\\\d|3[2-4]|4[248]|5[24]|6[2-6]))|4(?:4\\\\d\\\\d|6(?:11|[24689]\\\\d|72)))\\\\d{4}\",\n, , , \"22123456\", , , [8], [7]], [, , \"[67]\\\\d{7}\", , , , \"71234567\", , , [8]], [, , \"8001[07]\\\\d{4}\", , , , \"800171234\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"BO\", 591, \"00(?:1\\\\d)?\", \"0\", , , \"0(1\\\\d)?\", , , , [[, \"(\\\\d)(\\\\d{7})\", \"$1 $2\", [\"[23]|4[46]\"], , \"0$CC $1\"], [, \"(\\\\d{8})\", \"$1\", [\"[67]\"], , \"0$CC $1\"], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{4})\", \"$1 $2 $3\", [\"8\"], , \"0$CC $1\"]], , [, , , , , , , , , [-1]], , , [, , \"8001[07]\\\\d{4}\",\n, , , , , , [9]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BQ:[, [, , \"(?:[34]1|7\\\\d)\\\\d{5}\", , , , , , , [7]], [, , \"(?:318[023]|41(?:6[023]|70)|7(?:1[578]|50)\\\\d)\\\\d{3}\", , , , \"7151234\"], [, , \"(?:31(?:8[14-8]|9[14578])|416[14-9]|7(?:0[01]|7[07]|8\\\\d|9[056])\\\\d)\\\\d{3}\", , , , \"3181234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"BQ\", 599, \"00\", , , , , , , , , , [, , , , , , , , , [-1]], ,\n\"[347]\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BR:[, [, , \"(?:[1-46-9]\\\\d\\\\d|5(?:[0-46-9]\\\\d|5[0-24679]))\\\\d{8}|[1-9]\\\\d{9}|[3589]\\\\d{8}|[34]\\\\d{7}\", , , , , , , [8, 9, 10, 11]], [, , \"(?:[14689][1-9]|2[12478]|3[1-578]|5[13-5]|7[13-579])[2-5]\\\\d{7}\", , , , \"1123456789\", , , [10], [8]], [, , \"(?:[14689][1-9]|2[12478]|3[1-578]|5[13-5]|7[13-579])(?:7|9\\\\d)\\\\d{7}\", , , , \"11961234567\", , , [10, 11], [8, 9]], [, , \"800\\\\d{6,7}\", , , , \"800123456\", , , [9, 10]],\n[, , \"300\\\\d{6}|[59]00\\\\d{6,7}\", , , , \"300123456\", , , [9, 10]], [, , \"300\\\\d{7}|[34]00\\\\d{5}|4(?:02|37)0\\\\d{4}\", , , , \"40041234\", , , [8, 10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"BR\", 55, \"00(?:1[245]|2[1-35]|31|4[13]|[56]5|99)\", \"0\", , , \"0(?:(1[245]|2[1-35]|31|4[13]|[56]5|99)(\\\\d{10,11}))?\", \"$2\", , , [[, \"(\\\\d{3,6})\", \"$1\", [\"1(?:1[25-8]|2[357-9]|3[02-68]|4[12568]|5|6[0-8]|8[015]|9[0-47-9])|321|610\"]], [, \"(\\\\d{4})(\\\\d{4})\", \"$1-$2\", [\"300|4(?:0[02]|37)\", \"4(?:02|37)0|[34]00\"]],\n[, \"(\\\\d{4})(\\\\d{4})\", \"$1-$2\", [\"[2-57]\", \"[2357]|4(?:[0-24-9]|3(?:[0-689]|7[1-9]))\"]], [, \"(\\\\d{3})(\\\\d{2,3})(\\\\d{4})\", \"$1 $2 $3\", [\"(?:[358]|90)0\"], \"0$1\"], [, \"(\\\\d{5})(\\\\d{4})\", \"$1-$2\", [\"9\"]], [, \"(\\\\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)\", \"0 $CC ($1)\"], [, \"(\\\\d{2})(\\\\d{5})(\\\\d{4})\", \"$1 $2-$3\", [\"[16][1-9]|[2-57-9]\"], \"($1)\", \"0 $CC ($1)\"]], [[, \"(\\\\d{4})(\\\\d{4})\", \"$1-$2\", [\"300|4(?:0[02]|37)\", \"4(?:02|37)0|[34]00\"]],\n[, \"(\\\\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)\", \"0 $CC ($1)\"], [, \"(\\\\d{2})(\\\\d{5})(\\\\d{4})\", \"$1 $2-$3\", [\"[16][1-9]|[2-57-9]\"], \"($1)\", \"0 $CC ($1)\"]], [, , , , , , , , , [-1]], , , [, , \"4020\\\\d{4}|[34]00\\\\d{5}\", , , , , , , [8]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BS:[, [, , \"(?:242|[58]\\\\d\\\\d|900)\\\\d{7}\", , , , , , , [10], [7]], [, ,\n\"242(?:3(?:02|[236][1-9]|4[0-24-9]|5[0-68]|7[347]|8[0-4]|9[2-467])|461|502|6(?:0[1-4]|12|2[013]|[45]0|7[67]|8[78]|9[89])|7(?:02|88))\\\\d{4}\", , , , \"2423456789\", , , , [7]], [, , \"242(?:3(?:5[79]|7[56]|95)|4(?:[23][1-9]|4[1-35-9]|5[1-8]|6[2-8]|7\\\\d|81)|5(?:2[45]|3[35]|44|5[1-46-9]|65|77)|6[34]6|7(?:27|38)|8(?:0[1-9]|1[02-9]|2\\\\d|[89]9))\\\\d{4}\", , , , \"2423591234\", , , , [7]], [, , \"242300\\\\d{4}|8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\", , , , [7]], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"],\n[, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"BS\", 1, \"011\", \"1\", , , \"1|([3-8]\\\\d{6})$\", \"242$1\", , , , , [, , , , , , , , , [-1]], , \"242\", [, , , , , , , , , [-1]], [, , \"242225[0-46-9]\\\\d{3}\", , , , \"2422250123\"], , , [, , , , , , , , , [-1]]], BT:[, [, , \"[17]\\\\d{7}|[2-8]\\\\d{6}\", , , , , , , [7, 8], [6]], [, , \"(?:2[3-6]|[34][5-7]|5[236]|6[2-46]|7[246]|8[2-4])\\\\d{5}\", , , , \"2345678\", , , [7], [6]], [, , \"(?:1[67]|77)\\\\d{6}\",\n, , , \"17123456\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"BT\", 975, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{3})\", \"$1 $2\", [\"[2-7]\"]], [, \"(\\\\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\"]]], [[, \"(\\\\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\"]]], [, , , ,\n, , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BW:[, [, , \"90\\\\d{5}|(?:[2-6]|7\\\\d)\\\\d{6}\", , , , , , , [7, 8]], [, , \"(?:2(?:4[0-48]|6[0-24]|9[0578])|3(?:1[0-35-9]|55|[69]\\\\d|7[013])|4(?:6[03]|7[1267]|9[0-5])|5(?:3[0389]|4[0489]|7[1-47]|88|9[0-49])|6(?:2[1-35]|5[149]|8[067]))\\\\d{4}\", , , , \"2401234\", , , [7]], [, , \"77200\\\\d{3}|7(?:[1-6]\\\\d|7[014-8])\\\\d{5}\", , , , \"71123456\", , , [8]], [, , , , , , , , , [-1]], [, , \"90\\\\d{5}\", , , , \"9012345\",\n, , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"79(?:1(?:[01]\\\\d|20)|2[0-2]\\\\d)\\\\d{3}\", , , , \"79101234\", , , [8]], \"BW\", 267, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{5})\", \"$1 $2\", [\"90\"]], [, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[2-6]\"]], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"7\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BY:[, [, , \"(?:[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}\",\n, , , , , , [6, 7, 8, 9, 10, 11], [5]], [, , \"(?:1(?:5(?:1[1-5]|[24]\\\\d|6[2-4]|9[1-7])|6(?:[235]\\\\d|4[1-7])|7\\\\d\\\\d)|2(?:1(?:[246]\\\\d|3[0-35-9]|5[1-9])|2(?:[235]\\\\d|4[0-8])|3(?:[26]\\\\d|3[02-79]|4[024-7]|5[03-7])))\\\\d{5}\", , , , \"152450911\", , , [9], [5, 6, 7]], [, , \"(?:2(?:5[5-79]|9[1-9])|(?:33|44)\\\\d)\\\\d{6}\", , , , \"294911911\", , , [9]], [, , \"800\\\\d{3,7}|8(?:0[13]|20\\\\d)\\\\d{7}\", , , , \"8011234567\"], [, , \"(?:810|902)\\\\d{7}\", , , , \"9021234567\", , , [10]], [, , , , , , , , , [-1]], [, , , , , ,\n, , , [-1]], [, , \"249\\\\d{6}\", , , , \"249123456\", , , [9]], \"BY\", 375, \"810\", \"8\", , , \"0|80?\", , \"8~10\", , [[, \"(\\\\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]\"],\n\"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\"]], , [, , , , , , , , , [-1]], , , [, , \"800\\\\d{3,7}|(?:8(?:0[13]|10|20\\\\d)|902)\\\\d{7}\"], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BZ:[, [, , \"(?:0800\\\\d|[2-8])\\\\d{6}\", , , , , , , [7, 11]], [, , \"(?:236|732)\\\\d{4}|[2-578][02]\\\\d{5}\", , , , \"2221234\", , , [7]], [, , \"6[0-35-7]\\\\d{5}\", , , , \"6221234\", , , [7]], [, , \"0800\\\\d{7}\", , , ,\n\"08001234123\", , , [11]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"BZ\", 501, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1-$2\", [\"[2-8]\"]], [, \"(\\\\d)(\\\\d{3})(\\\\d{4})(\\\\d{3})\", \"$1-$2-$3-$4\", [\"0\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CA:[, [, , \"(?:[2-8]\\\\d|90)\\\\d{8}\", , , , , , , [10], [7]], [, , \"(?:2(?:04|[23]6|[48]9|50)|3(?:06|43|65)|4(?:03|1[68]|3[178]|50)|5(?:06|1[49]|48|79|8[17])|6(?:04|13|39|47)|7(?:0[59]|78|8[02])|8(?:[06]7|19|25|73)|90[25])[2-9]\\\\d{6}\",\n, , , \"5062345678\", , , , [7]], [, , \"(?:2(?:04|[23]6|[48]9|50)|3(?:06|43|65)|4(?:03|1[68]|3[178]|50)|5(?:06|1[49]|48|79|8[17])|6(?:04|13|39|47)|7(?:0[59]|78|8[02])|8(?:[06]7|19|25|73)|90[25])[2-9]\\\\d{6}\", , , , \"5062345678\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"(?:5(?:00|2[12]|33|44|66|77|88)|622)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , \"600[2-9]\\\\d{6}\", , , , \"6002012345\"], \"CA\",\n1, \"011\", \"1\", , , \"1\", , , 1, , , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CC:[, [, , \"1(?:[0-79]\\\\d|8[0-24-9])\\\\d{7}|(?:[148]\\\\d\\\\d|550)\\\\d{6}|1\\\\d{5,7}\", , , , , , , [6, 7, 8, 9, 10]], [, , \"8(?:51(?:0(?:02|31|60)|118)|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}\", , , , \"891621234\", , , [9], [8]], [, , \"483[0-3]\\\\d{5}|4(?:[0-3]\\\\d|4[047-9]|5[0-25-9]|6[06-9]|7[02-9]|8[0-2457-9]|9[0-27-9])\\\\d{6}\",\n, , , \"412345678\", , , [9]], [, , \"180(?:0\\\\d{3}|2)\\\\d{3}\", , , , \"1800123456\", , , [7, 10]], [, , \"190[0-26]\\\\d{6}\", , , , \"1900123456\", , , [10]], [, , \"13(?:00\\\\d{3}|45[0-4])\\\\d{3}|13\\\\d{4}\", , , , \"1300123456\", , , [6, 8, 10]], [, , , , , , , , , [-1]], [, , \"(?:14(?:5(?:1[0458]|[23][458])|71\\\\d)|550\\\\d\\\\d)\\\\d{4}\", , , , \"550123456\", , , [9]], \"CC\", 61, \"001[14-689]|14(?:1[14]|34|4[17]|[56]6|7[47]|88)0011\", \"0\", , , \"0|([59]\\\\d{7})$\", \"8$1\", \"0011\", , , , [, , , , , , , , , [-1]], , , [, , ,\n, , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CD:[, [, , \"[189]\\\\d{8}|[1-68]\\\\d{6}\", , , , , , , [7, 9]], [, , \"12\\\\d{7}|[1-6]\\\\d{6}\", , , , \"1234567\"], [, , \"88\\\\d{5}|(?:8[0-2459]|9[017-9])\\\\d{7}\", , , , \"991234567\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"CD\", 243, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{3})\", \"$1 $2 $3\", [\"88\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{5})\", \"$1 $2\",\n[\"[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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CF:[, [, , \"(?:[27]\\\\d{3}|8776)\\\\d{4}\", , , , , , , [8]], [, , \"2[12]\\\\d{6}\", , , , \"21612345\"], [, , \"7[0257]\\\\d{6}\", , , , \"70012345\"], [, , , , , , , , , [-1]], [, , \"8776\\\\d{4}\", , , , \"87761234\"], [, , , , , , , , , [-1]], [, , , , , , , , ,\n[-1]], [, , , , , , , , , [-1]], \"CF\", 236, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[278]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CG:[, [, , \"222\\\\d{6}|(?:0\\\\d|80)\\\\d{7}\", , , , , , , [9]], [, , \"222[1-589]\\\\d{5}\", , , , \"222123456\"], [, , \"0[14-6]\\\\d{7}\", , , , \"061234567\"], [, , , , , , , , , [-1]], [, , \"80(?:0\\\\d\\\\d|11[0-4])\\\\d{4}\", , , , \"800123456\"], [, , , , , , , , , [-1]],\n[, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"CG\", 242, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"801\"]], [, \"(\\\\d)(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"8\"]], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[02]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CH:[, [, , \"8\\\\d{11}|[2-9]\\\\d{8}\", , , , , , , [9, 12]], [, , \"(?:2[12467]|3[1-4]|4[134]|5[256]|6[12]|[7-9]1)\\\\d{7}\", , , , \"212345678\",\n, , [9]], [, , \"7[35-9]\\\\d{7}\", , , , \"781234567\", , , [9]], [, , \"800\\\\d{6}\", , , , \"800123456\", , , [9]], [, , \"90[016]\\\\d{6}\", , , , \"900123456\", , , [9]], [, , \"84[0248]\\\\d{6}\", , , , \"840123456\", , , [9]], [, , \"878\\\\d{6}\", , , , \"878123456\", , , [9]], [, , , , , , , , , [-1]], \"CH\", 41, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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})\",\n\"$1 $2 $3 $4 $5\", [\"8\"], \"0$1\"]], , [, , \"74[0248]\\\\d{6}\", , , , \"740123456\", , , [9]], , , [, , , , , , , , , [-1]], [, , \"5[18]\\\\d{7}\", , , , \"581234567\", , , [9]], , , [, , \"860\\\\d{9}\", , , , \"860123456789\", , , [12]]], CI:[, [, , \"[02-8]\\\\d{7}\", , , , , , , [8]], [, , \"(?:2(?:0[023]|1[02357]|[23][045]|4[03-5])|3(?:0[06]|1[069]|[2-4][07]|5[09]|6[08]))\\\\d{5}\", , , , \"21234567\"], [, , \"(?:0[1-9]|[457]\\\\d|6[014-9]|8[4-9])\\\\d{6}\", , , , \"01234567\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]],\n[, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"CI\", 225, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[02-8]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CK:[, [, , \"[2-8]\\\\d{4}\", , , , , , , [5]], [, , \"(?:2\\\\d|3[13-7]|4[1-5])\\\\d{3}\", , , , \"21234\"], [, , \"[5-8]\\\\d{4}\", , , , \"71234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]],\n[, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"CK\", 682, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{3})\", \"$1 $2\", [\"[2-8]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CL:[, [, , \"12300\\\\d{6}|6\\\\d{9,10}|[2-9]\\\\d{8}\", , , , , , , [9, 10, 11]], [, , \"(?:2(?:1962|3(?:2\\\\d\\\\d|300))|80[1-9]\\\\d\\\\d)\\\\d{4}|(?:22|3[2-5]|[47][1-35]|5[1-3578]|6[13-57]|8[1-9]|9[2-9])\\\\d{7}\", , , , \"221234567\", , , [9]], [, , \"(?:2(?:1962|3(?:2\\\\d\\\\d|300))|80[1-9]\\\\d\\\\d)\\\\d{4}|(?:22|3[2-5]|[47][1-35]|5[1-3578]|6[13-57]|8[1-9]|9[2-9])\\\\d{7}\",\n, , , \"221234567\", , , [9]], [, , \"(?:123|8)00\\\\d{6}\", , , , \"800123456\", , , [9, 11]], [, , , , , , , , , [-1]], [, , \"600\\\\d{7,8}\", , , , \"6001234567\", , , [10, 11]], [, , , , , , , , , [-1]], [, , \"44\\\\d{7}\", , , , \"441234567\", , , [9]], \"CL\", 56, \"(?:0|1(?:1[0-69]|2[0-57]|5[13-58]|69|7[0167]|8[018]))0\", , , , , , , 1, [[, \"(\\\\d{4})\", \"$1\", [\"1(?:[03-589]|21)|[29]0|78\"]], [, \"(\\\\d{5})(\\\\d{4})\", \"$1 $2\", [\"21\"], \"($1)\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"44\"]], [, \"(\\\\d)(\\\\d{4})(\\\\d{4})\",\n\"$1 $2 $3\", [\"2[23]\"], \"($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\"]]], [[, \"(\\\\d{5})(\\\\d{4})\", \"$1 $2\", [\"21\"], \"($1)\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"44\"]], [, \"(\\\\d)(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\",\n[\"2[23]\"], \"($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\"]]], [, , , , , , , , , [-1]], , , [, , \"600\\\\d{7,8}\", , , , , , , [10, 11]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CM:[, [, , \"(?:[26]\\\\d\\\\d|88)\\\\d{6}\",\n, , , , , , [8, 9]], [, , \"2(?:22|33|4[23])\\\\d{6}\", , , , \"222123456\", , , [9]], [, , \"6[5-9]\\\\d{7}\", , , , \"671234567\", , , [9]], [, , \"88\\\\d{6}\", , , , \"88012345\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"CM\", 237, \"00\", , , , , , , , [[, \"(\\\\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]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]],\n[, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CN:[, [, , \"1[1279]\\\\d{8,9}|2\\\\d{9}(?:\\\\d{2})?|[12]\\\\d{6,7}|86\\\\d{6}|(?:1[03-68]\\\\d|6)\\\\d{7,9}|(?:[3-579]\\\\d|8[0-57-9])\\\\d{6,9}\", , , , , , , [7, 8, 9, 10, 11, 12], [5, 6]], [, , \"(?:10(?:[02-79]\\\\d\\\\d|[18](?:0[1-9]|[1-9]\\\\d))|21(?:[18](?:0[1-9]|[1-9]\\\\d)|[2-79]\\\\d\\\\d))\\\\d{5}|(?:43[35]|754)\\\\d{7,8}|8(?:078\\\\d{7}|51\\\\d{7,8})|(?:10|(?:2|85)1|43[35]|754)(?:100\\\\d\\\\d|95\\\\d{3,4})|(?:2[02-57-9]|3(?:11|7[179])|4(?:[15]1|3[12])|5(?:1\\\\d|2[37]|3[12]|51|7[13-79]|9[15])|7(?:[39]1|5[57]|6[09])|8(?:71|98))(?:[02-8]\\\\d{7}|1(?:0(?:0\\\\d\\\\d(?:\\\\d{3})?|[1-9]\\\\d{5})|[1-9]\\\\d{6})|9(?:[0-46-9]\\\\d{6}|5\\\\d{3}(?:\\\\d(?:\\\\d{2})?)?))|(?:3(?:1[02-9]|35|49|5\\\\d|7[02-68]|9[1-68])|4(?:1[02-9]|2[179]|3[46-9]|5[2-9]|6[47-9]|7\\\\d|8[23])|5(?:3[03-9]|4[36]|5[02-9]|6[1-46]|7[028]|80|9[2-46-9])|6(?:3[1-5]|6[0238]|9[12])|7(?:01|[17]\\\\d|2[248]|3[04-9]|4[3-6]|5[0-3689]|6[2368]|9[02-9])|8(?:1[236-8]|2[5-7]|3\\\\d|5[2-9]|7[02-9]|8[36-8]|9[1-7])|9(?:0[1-3689]|1[1-79]|[379]\\\\d|4[13]|5[1-5]))(?:[02-8]\\\\d{6}|1(?:0(?:0\\\\d\\\\d(?:\\\\d{2})?|[1-9]\\\\d{4})|[1-9]\\\\d{5})|9(?:[0-46-9]\\\\d{5}|5\\\\d{3,5}))\",\n, , , \"1012345678\", , , [7, 8, 9, 10, 11], [5, 6]], [, , \"1740[0-5]\\\\d{6}|1(?:[38]\\\\d|4[57]|5[0-35-9]|6[25-7]|7[0-35-8]|9[189])\\\\d{8}\", , , , \"13123456789\", , , [11]], [, , \"(?:(?:10|21)8|8)00\\\\d{7}\", , , , \"8001234567\", , , [10, 12]], [, , \"16[08]\\\\d{5}\", , , , \"16812345\", , , [8]], [, , \"400\\\\d{7}|950\\\\d{7,8}|(?:10|2[0-57-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[14-9]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|[379]\\\\d|4[13]|5[1-5]))96\\\\d{3,4}\",\n, , , \"4001234567\", , , [7, 8, 9, 10, 11], [5, 6]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"CN\", 86, \"00|1(?:[12]\\\\d|79|9[0235-7])\\\\d\\\\d00\", \"0\", , , \"0|(1(?:[12]\\\\d|79|9[0235-7])\\\\d\\\\d)\", , \"00\", , [[, \"(\\\\d{5,6})\", \"$1\", [\"96\"]], [, \"(\\\\d{2})(\\\\d{5,6})\", \"$1 $2\", [\"(?:10|2[0-57-9])[19]\", \"(?:10|2[0-57-9])(?:10|9[56])\", \"(?:10|2[0-57-9])(?:100|9[56])\"], \"0$1\", \"$CC $1\"], [, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[1-9]\", \"1[1-9]|26|[3-9]|(?:10|2[0-57-9])(?:[0-8]|9[0-47-9])\", \"1[1-9]|26|[3-9]|(?:10|2[0-57-9])(?:[02-8]|1(?:0[1-9]|[1-9])|9[0-47-9])\"]],\n[, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"16[08]\"]], [, \"(\\\\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]\",\n\"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])\"],\n\"0$1\", \"$CC $1\"], [, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[1-9]\", \"1[1-9]|26|[3-9]|(?:10|2[0-57-9])(?:[0-8]|9[0-47-9])\", \"26|3(?:[0268]|9[079])|4(?:[049]|2[02-68]|[35]0|6[0-356]|8[014-9])|5(?:0|2[0-24-689]|4[0-2457-9]|6[057-9]|90)|6(?:[0-24578]|6[14-79]|9[03-9])|7(?:0[02-9]|2[0135-79]|3[23]|4[0-27-9]|6[1457]|8)|8(?:[046]|1[01459]|2[0-489]|50|8[0-2459]|9[09])|9(?:0[0457]|1[08]|[268]|4[024-9])|(?:34|85[23])[0-8]|(?:1|58)[1-9]|(?:63|95)[06-9]|(?:33|85[23]9)[0-46-9]|(?:10|2[0-57-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[14-9]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|[379]\\\\d|4[13]|5[1-5]))(?:[0-8]|9[0-47-9])\",\n\"26|3(?:[0268]|3[0-46-9]|4[0-8]|9[079])|4(?:[049]|2[02-68]|[35]0|6[0-356]|8[014-9])|5(?:0|2[0-24-689]|4[0-2457-9]|6[057-9]|90)|6(?:[0-24578]|3[06-9]|6[14-79]|9[03-9])|7(?:0[02-9]|2[0135-79]|3[23]|4[0-27-9]|6[1457]|8)|8(?:[046]|1[01459]|2[0-489]|5(?:0|[23](?:[02-8]|1[1-9]|9[0-46-9]))|8[0-2459]|9[09])|9(?:0[0457]|1[08]|[268]|4[024-9]|5[06-9])|(?:1|58|85[23]10)[1-9]|(?:10|2[0-57-9])(?:[0-8]|9[0-47-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[14-9]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|[379]\\\\d|4[13]|5[1-5]))(?:[02-8]|1(?:0[1-9]|[1-9])|9[0-47-9])\"]],\n[, \"(\\\\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\", \"$CC $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\", \"$CC $1\", 1],\n[, \"(\\\\d{3})(\\\\d{7,8})\", \"$1 $2\", [\"9\"]], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"80\"], \"0$1\", \"$CC $1\", 1], [, \"(\\\\d{3})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"[3-578]\"], \"0$1\", \"$CC $1\", 1], [, \"(\\\\d{3})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"1[3-9]\"], , \"$CC $1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3 $4\", [\"[12]\"], \"0$1\", , 1]], [[, \"(\\\\d{2})(\\\\d{5,6})\", \"$1 $2\", [\"(?:10|2[0-57-9])[19]\", \"(?:10|2[0-57-9])(?:10|9[56])\", \"(?:10|2[0-57-9])(?:100|9[56])\"], \"0$1\", \"$CC $1\"], [, \"(\\\\d{3})(\\\\d{5,6})\",\n\"$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]\",\n\"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])\"],\n\"0$1\", \"$CC $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\", \"$CC $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\",\n\"$CC $1\", 1], [, \"(\\\\d{3})(\\\\d{7,8})\", \"$1 $2\", [\"9\"]], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"80\"], \"0$1\", \"$CC $1\", 1], [, \"(\\\\d{3})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"[3-578]\"], \"0$1\", \"$CC $1\", 1], [, \"(\\\\d{3})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"1[3-9]\"], , \"$CC $1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3 $4\", [\"[12]\"], \"0$1\", , 1]], [, , , , , , , , , [-1]], , , [, , \"(?:(?:10|21)8|[48])00\\\\d{7}|950\\\\d{7,8}\", , , , , , , [10, 11, 12]], [, , , , , , , , , [-1]], , , [, , , , , , ,\n, , [-1]]], CO:[, [, , \"(?:1\\\\d|3)\\\\d{9}|[124-8]\\\\d{7}\", , , , , , , [8, 10, 11], [7]], [, , \"[124-8][2-9]\\\\d{6}\", , , , \"12345678\", , , [8], [7]], [, , \"3(?:0[0-5]|1\\\\d|2[0-3]|5[01])\\\\d{7}\", , , , \"3211234567\", , , [10]], [, , \"1800\\\\d{7}\", , , , \"18001234567\", , , [11]], [, , \"19(?:0[01]|4[78])\\\\d{7}\", , , , \"19001234567\", , , [11]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"CO\", 57, \"00(?:4(?:[14]4|56)|[579])\", \"0\", , , \"0([3579]|4(?:[14]4|56))?\", , , , [[,\n\"(\\\\d)(\\\\d{7})\", \"$1 $2\", [\"1[2-79]|[25-8]|(?:18|4)[2-9]\"], \"($1)\", \"0$CC $1\"], [, \"(\\\\d{3})(\\\\d{7})\", \"$1 $2\", [\"3\"], , \"0$CC $1\"], [, \"(\\\\d)(\\\\d{3})(\\\\d{7})\", \"$1-$2-$3\", [\"1(?:80|9)\", \"1(?:800|9)\"], \"0$1\"]], [[, \"(\\\\d)(\\\\d{7})\", \"$1 $2\", [\"1[2-79]|[25-8]|(?:18|4)[2-9]\"], \"($1)\", \"0$CC $1\"], [, \"(\\\\d{3})(\\\\d{7})\", \"$1 $2\", [\"3\"], , \"0$CC $1\"], [, \"(\\\\d)(\\\\d{3})(\\\\d{7})\", \"$1 $2 $3\", [\"1(?:80|9)\", \"1(?:800|9)\"]]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]],\n, , [, , , , , , , , , [-1]]], CR:[, [, , \"(?:8\\\\d|90)\\\\d{8}|[24-8]\\\\d{7}\", , , , , , , [8, 10]], [, , \"210[7-9]\\\\d{4}|2(?:[024-7]\\\\d|1[1-9])\\\\d{5}\", , , , \"22123456\", , , [8]], [, , \"6500[01]\\\\d{3}|5(?:0[01]|7[0-3])\\\\d{5}|(?:6[0-4]|7[0-3]|8[3-9])\\\\d{6}\", , , , \"83123456\", , , [8]], [, , \"800\\\\d{7}\", , , , \"8001234567\", , , [10]], [, , \"90[059]\\\\d{7}\", , , , \"9001234567\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"(?:210[0-6]|4\\\\d{3}|5100)\\\\d{4}\", , , , \"40001234\", , , [8]],\n\"CR\", 506, \"00\", , , , \"(19(?:0[0-2468]|1[09]|20|66|77|99))\", , , , [[, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[24-7]|8[3-9]\"], , \"$CC $1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"[89]\"], , \"$CC $1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CU:[, [, , \"[27]\\\\d{6,7}|[34]\\\\d{5,7}|5\\\\d{7}\", , , , , , , [6, 7, 8], [4, 5]], [, , \"(?:3[23]|48)\\\\d{4,6}|(?:31|4[36])\\\\d{6}|(?:2[1-4]|4[1257]|7\\\\d)\\\\d{5,6}\", , , , \"71234567\", , , , [4,\n5]], [, , \"5\\\\d{7}\", , , , \"51234567\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"CU\", 53, \"119\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{4,6})\", \"$1 $2\", [\"2[1-4]|[34]\"], \"(0$1)\"], [, \"(\\\\d)(\\\\d{6,7})\", \"$1 $2\", [\"7\"], \"(0$1)\"], [, \"(\\\\d)(\\\\d{7})\", \"$1 $2\", [\"5\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CV:[, [, , \"[2-59]\\\\d{6}\",\n, , , , , , [7]], [, , \"2(?:2[1-7]|3[0-8]|4[12]|5[1256]|6\\\\d|7[1-3]|8[1-5])\\\\d{4}\", , , , \"2211234\"], [, , \"(?:[34][36]|5[1-389]|9\\\\d)\\\\d{5}\", , , , \"9911234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"CV\", 238, \"0\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3\", [\"[2-59]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CW:[, [,\n, \"(?:[34]1|60|(?:7|9\\\\d)\\\\d)\\\\d{5}\", , , , , , , [7, 8]], [, , \"9(?:4(?:3[0-5]|4[14]|6\\\\d)|50\\\\d|7(?:2[014]|3[02-9]|4[4-9]|6[357]|77|8[7-9])|8(?:3[39]|[46]\\\\d|7[01]|8[57-9]))\\\\d{4}\", , , , \"94351234\"], [, , \"953[01]\\\\d{4}|9(?:5[12467]|6[5-9])\\\\d{5}\", , , , \"95181234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"60[0-2]\\\\d{4}\", , , , \"6001234\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"CW\", 599, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[3467]\"]],\n[, \"(\\\\d)(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"9[4-8]\"]]], , [, , \"955\\\\d{5}\", , , , \"95581234\", , , [8]], 1, \"[69]\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CX:[, [, , \"1(?:[0-79]\\\\d|8[0-24-9])\\\\d{7}|(?:[148]\\\\d\\\\d|550)\\\\d{6}|1\\\\d{5,7}\", , , , , , , [6, 7, 8, 9, 10]], [, , \"8(?:51(?:0(?:01|30|59)|117)|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}\", , , , \"891641234\", , , [9], [8]], [, , \"483[0-3]\\\\d{5}|4(?:[0-3]\\\\d|4[047-9]|5[0-25-9]|6[06-9]|7[02-9]|8[0-2457-9]|9[0-27-9])\\\\d{6}\",\n, , , \"412345678\", , , [9]], [, , \"180(?:0\\\\d{3}|2)\\\\d{3}\", , , , \"1800123456\", , , [7, 10]], [, , \"190[0-26]\\\\d{6}\", , , , \"1900123456\", , , [10]], [, , \"13(?:00\\\\d{3}|45[0-4])\\\\d{3}|13\\\\d{4}\", , , , \"1300123456\", , , [6, 8, 10]], [, , , , , , , , , [-1]], [, , \"(?:14(?:5(?:1[0458]|[23][458])|71\\\\d)|550\\\\d\\\\d)\\\\d{4}\", , , , \"550123456\", , , [9]], \"CX\", 61, \"001[14-689]|14(?:1[14]|34|4[17]|[56]6|7[47]|88)0011\", \"0\", , , \"0|([59]\\\\d{7})$\", \"8$1\", \"0011\", , , , [, , , , , , , , , [-1]], , , [, , ,\n, , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CY:[, [, , \"(?:[279]\\\\d|[58]0)\\\\d{6}\", , , , , , , [8]], [, , \"2[2-6]\\\\d{6}\", , , , \"22345678\"], [, , \"9[4-79]\\\\d{6}\", , , , \"96123456\"], [, , \"800\\\\d{5}\", , , , \"80001234\"], [, , \"90[09]\\\\d{5}\", , , , \"90012345\"], [, , \"80[1-9]\\\\d{5}\", , , , \"80112345\"], [, , \"700\\\\d{5}\", , , , \"70012345\"], [, , , , , , , , , [-1]], \"CY\", 357, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{6})\", \"$1 $2\", [\"[257-9]\"]]], , [, , , , , , , , , [-1]],\n, , [, , , , , , , , , [-1]], [, , \"(?:50|77)\\\\d{6}\", , , , \"77123456\"], , , [, , , , , , , , , [-1]]], CZ:[, [, , \"(?:[2-578]\\\\d|60)\\\\d{7}|9\\\\d{8,11}\", , , , , , , [9, 10, 11, 12]], [, , \"(?:2\\\\d|3[1257-9]|4[16-9]|5[13-9])\\\\d{7}\", , , , \"212345678\", , , [9]], [, , \"(?:60[1-8]|7(?:0[2-5]|[2379]\\\\d))\\\\d{6}\", , , , \"601123456\", , , [9]], [, , \"800\\\\d{6}\", , , , \"800123456\", , , [9]], [, , \"9(?:0[05689]|76)\\\\d{6}\", , , , \"900123456\", , , [9]], [, , \"8[134]\\\\d{7}\", , , , \"811234567\", , , [9]], [, , \"70[01]\\\\d{6}\",\n, , , \"700123456\", , , [9]], [, , \"9[17]0\\\\d{6}\", , , , \"910123456\", , , [9]], \"CZ\", 420, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[2-8]|9[015-7]\"]], [, \"(\\\\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\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"9(?:5\\\\d|7[2-4])\\\\d{6}\", , , , \"972123456\", , , [9]], , , [, , \"9(?:3\\\\d{9}|6\\\\d{7,10})\", , , , \"93123456789\"]], DE:[, [, , \"[2579]\\\\d{5,14}|49(?:[05]\\\\d{10}|[46][1-8]\\\\d{4,9})|49(?:[0-25]\\\\d|3[1-689]|7[1-7])\\\\d{4,8}|49(?:[0-2579]\\\\d|[34][1-9]|6[0-8])\\\\d{3}|49\\\\d{3,4}|(?:1|[368]\\\\d|4[0-8])\\\\d{3,13}\",\n, , , , , , [4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15], [2, 3]], [, , \"(?:32|49[4-6]\\\\d)\\\\d{9}|49[0-7]\\\\d{3,9}|(?:[34]0|[68]9)\\\\d{3,13}|(?:2(?:0[1-689]|[1-3569]\\\\d|4[0-8]|7[1-7]|8[0-7])|3(?:[3569]\\\\d|4[0-79]|7[1-7]|8[1-8])|4(?:1[02-9]|[2-48]\\\\d|5[0-6]|6[0-8]|7[0-79])|5(?:0[2-8]|[124-6]\\\\d|[38][0-8]|[79][0-7])|6(?:0[02-9]|[1-358]\\\\d|[47][0-8]|6[1-9])|7(?:0[2-8]|1[1-9]|[27][0-7]|3\\\\d|[4-6][0-8]|8[0-5]|9[013-7])|8(?:0[2-9]|1[0-79]|2\\\\d|3[0-46-9]|4[0-6]|5[013-9]|6[1-8]|7[0-8]|8[0-24-6])|9(?:0[6-9]|[1-4]\\\\d|[589][0-7]|6[0-8]|7[0-467]))\\\\d{3,12}\",\n, , , \"30123456\", , , [5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15], [2, 3, 4]], [, , \"15[0-25-9]\\\\d{8}|1(?:6[023]|7\\\\d)\\\\d{7,8}\", , , , \"15123456789\", , , [10, 11]], [, , \"800\\\\d{7,12}\", , , , \"8001234567890\", , , [10, 11, 12, 13, 14, 15]], [, , \"(?:137[7-9]|900(?:[135]|9\\\\d))\\\\d{6}\", , , , \"9001234567\", , , [10, 11]], [, , \"180\\\\d{5,11}|13(?:7[1-6]\\\\d\\\\d|8)\\\\d{4}\", , , , \"18012345\", , , [7, 8, 9, 10, 11, 12, 13, 14]], [, , \"700\\\\d{8}\", , , , \"70012345678\", , , [11]], [, , , , , , , , , [-1]], \"DE\", 49,\n\"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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]\"],\n\"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\"],\n[, \"(\\\\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\"]], , [, , \"16(?:4\\\\d{1,10}|[89]\\\\d{1,11})\", , , , \"16412345\", , , [4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14]], , , [, , , , , , , , , [-1]], [, , \"18(?:1\\\\d{5,11}|[2-9]\\\\d{8})\",\n, , , \"18500123456\", , , [8, 9, 10, 11, 12, 13, 14]], , , [, , \"1(?:6(?:013|255|399)|7(?:(?:[015]1|[69]3)3|[2-4]55|[78]99))\\\\d{7,8}|15(?:(?:[03-68]00|113)\\\\d|2\\\\d55|7\\\\d99|9\\\\d33)\\\\d{7}\", , , , \"177991234567\", , , [12, 13]]], DJ:[, [, , \"(?:2\\\\d|77)\\\\d{6}\", , , , , , , [8]], [, , \"2(?:1[2-5]|7[45])\\\\d{5}\", , , , \"21360003\"], [, , \"77\\\\d{6}\", , , , \"77831001\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"DJ\", 253,\n\"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[27]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], DK:[, [, , \"[2-9]\\\\d{7}\", , , , , , , [8]], [, , \"(?:[2-7]\\\\d|8[126-9]|9[1-36-9])\\\\d{6}\", , , , \"32123456\"], [, , \"(?:[2-7]\\\\d|8[126-9]|9[1-36-9])\\\\d{6}\", , , , \"32123456\"], [, , \"80\\\\d{6}\", , , , \"80123456\"], [, , \"90\\\\d{6}\", , , , \"90123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [,\n, , , , , , , , [-1]], \"DK\", 45, \"00\", , , , , , , 1, [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[2-9]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], DM:[, [, , \"(?:[58]\\\\d\\\\d|767|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"767(?:2(?:55|66)|4(?:2[01]|4[0-25-9])|50[0-4]|70[1-3])\\\\d{4}\", , , , \"7674201234\", , , , [7]], [, , \"767(?:2(?:[2-4689]5|7[5-7])|31[5-7]|61[1-7])\\\\d{4}\", , , , \"7672251234\", , , , [7]], [, ,\n\"8(?:00(?:14|[2-9]\\\\d)|(?:33|44|55|66|77|88)[2-9]\\\\d)\\\\d{5}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"DM\", 1, \"011\", \"1\", , , \"1|([2-7]\\\\d{6})$\", \"767$1\", , , , , [, , , , , , , , , [-1]], , \"767|8001\", [, , \"80014\\\\d{5}\"], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], DO:[, [, , \"(?:[58]\\\\d\\\\d|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"8(?:[04]9[2-9]\\\\d\\\\d|29(?:2(?:[0-59]\\\\d|6[04-9]|7[0-27]|8[0237-9])|3(?:[0-35-9]\\\\d|4[7-9])|[45]\\\\d\\\\d|6(?:[0-27-9]\\\\d|[3-5][1-9]|6[0135-8])|7(?:0[013-9]|[1-37]\\\\d|4[1-35689]|5[1-4689]|6[1-57-9]|8[1-79]|9[1-8])|8(?:0[146-9]|1[0-48]|[248]\\\\d|3[1-79]|5[01589]|6[013-68]|7[124-8]|9[0-8])|9(?:[0-24]\\\\d|3[02-46-9]|5[0-79]|60|7[0169]|8[57-9]|9[02-9])))\\\\d{4}\",\n, , , \"8092345678\", , , , [7]], [, , \"8[024]9[2-9]\\\\d{6}\", , , , \"8092345678\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"DO\", 1, \"011\", \"1\", , , \"1\", , , , , , [, , , , , , , , , [-1]], , \"8[024]9\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], DZ:[, [, , \"(?:[1-4]|[5-79]\\\\d|80)\\\\d{7}\",\n, , , , , , [8, 9]], [, , \"9619\\\\d{5}|(?:1\\\\d|2[013-79]|3[0-8]|4[0135689])\\\\d{6}\", , , , \"12345678\"], [, , \"67[0-6]\\\\d{6}|(?:5[4-6]|6[569]|7[7-9])\\\\d{7}\", , , , \"551234567\", , , [9]], [, , \"800\\\\d{6}\", , , , \"800123456\", , , [9]], [, , \"80[3-689]1\\\\d{5}\", , , , \"808123456\", , , [9]], [, , \"80[12]1\\\\d{5}\", , , , \"801123456\", , , [9]], [, , , , , , , , , [-1]], [, , \"98[23]\\\\d{6}\", , , , \"983123456\", , , [9]], \"DZ\", 213, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\",\n[\"[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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], EC:[, [, , \"1800\\\\d{6,7}|(?:[2-7]|9\\\\d)\\\\d{7}\", , , , , , , [8, 9, 10, 11], [7]], [, , \"[2-7][2-7]\\\\d{6}\", , , , \"22123456\", , , [8], [7]], [, , \"964[0-2]\\\\d{5}|9(?:39|[57][89]|6[0-37-9]|[89]\\\\d)\\\\d{6}\", , , , \"991234567\", ,\n, [9]], [, , \"1800\\\\d{6,7}\", , , , \"18001234567\", , , [10, 11]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"[2-7]890\\\\d{4}\", , , , \"28901234\", , , [8]], \"EC\", 593, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1-$2\", [\"[2-7]\"]], [, \"(\\\\d)(\\\\d{3})(\\\\d{4})\", \"$1 $2-$3\", [\"[2-7]\"], \"(0$1)\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"9\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{3,4})\", \"$1 $2 $3\", [\"1\"]]], [[, \"(\\\\d)(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"[2-7]\"]],\n[, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"9\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{3,4})\", \"$1 $2 $3\", [\"1\"]]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], EE:[, [, , \"8\\\\d{9}|[4578]\\\\d{7}|(?:[3-8]\\\\d\\\\d|900)\\\\d{4}\", , , , , , , [7, 8, 10]], [, , \"(?:3[23589]|4[3-8]|6\\\\d|7[1-9]|88)\\\\d{5}\", , , , \"3212345\", , , [7]], [, , \"(?:5\\\\d|8[1-4])\\\\d{6}|5(?:(?:[02]\\\\d|5[0-478])\\\\d|1(?:[0-8]\\\\d|95)|6(?:4[0-4]|5[1-589]))\\\\d{3}\", , , , \"51234567\",\n, , [7, 8]], [, , \"800(?:(?:0\\\\d\\\\d|1)\\\\d|[2-9])\\\\d{3}\", , , , \"80012345\"], [, , \"(?:40\\\\d\\\\d|900)\\\\d{4}\", , , , \"9001234\", , , [7, 8]], [, , , , , , , , , [-1]], [, , \"70[0-2]\\\\d{5}\", , , , \"70012345\", , , [8]], [, , , , , , , , , [-1]], \"EE\", 372, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[369]|4[3-8]|5(?:[0-2]|5[0-478]|6[45])|7[1-9]\", \"[369]|4[3-8]|5(?:[02]|1(?:[0-8]|95)|5[0-478]|6(?:4[0-4]|5[1-589]))|7[1-9]\"]], [, \"(\\\\d{4})(\\\\d{3,4})\", \"$1 $2\", [\"[45]|8(?:00|[1-4])\", \"[45]|8(?:00[1-9]|[1-4])\"]],\n[, \"(\\\\d{2})(\\\\d{2})(\\\\d{4})\", \"$1 $2 $3\", [\"7\"]], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"80\"]]], , [, , , , , , , , , [-1]], , , [, , \"800[2-9]\\\\d{3}\", , , , , , , [7]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], EG:[, [, , \"[189]\\\\d{8,9}|[24-6]\\\\d{8}|[135]\\\\d{7}\", , , , , , , [8, 9, 10], [6, 7]], [, , \"(?:15\\\\d|57[23])\\\\d{5,6}|(?:13[23]|(?:2[2-4]|3)\\\\d|4(?:0[2-5]|[578][23]|64)|5(?:0[2-7]|5\\\\d)|6[24-689]3|8(?:2[2-57]|4[26]|6[237]|8[2-4])|9(?:2[27]|3[24]|52|6[2356]|7[2-4]))\\\\d{6}\",\n, , , \"234567890\", , , [8, 9], [6, 7]], [, , \"1[0-25]\\\\d{8}\", , , , \"1001234567\", , , [10]], [, , \"800\\\\d{7}\", , , , \"8001234567\", , , [10]], [, , \"900\\\\d{7}\", , , , \"9001234567\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"EG\", 20, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d)(\\\\d{7,8})\", \"$1 $2\", [\"[23]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{6,7})\", \"$1 $2\", [\"1[35]|[4-6]|8[2468]|9[235-7]\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[189]\"], \"0$1\"]], , [, ,\n, , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], EH:[, [, , \"[5-8]\\\\d{8}\", , , , , , , [9]], [, , \"528[89]\\\\d{5}\", , , , \"528812345\"], [, , \"692[12]\\\\d{5}|(?:6(?:[0-7]\\\\d|8[0-247-9]|9[013-9])|7(?:0[06-8]|6[1267]|7[0-27]))\\\\d{6}\", , , , \"650123456\"], [, , \"80\\\\d{7}\", , , , \"801234567\"], [, , \"89\\\\d{7}\", , , , \"891234567\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"5924[0-2]\\\\d{4}\", , , , \"592401234\"], \"EH\", 212, \"00\", \"0\",\n, , \"0\", , , , , , [, , , , , , , , , [-1]], , \"528[89]\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], ER:[, [, , \"[178]\\\\d{6}\", , , , , , , [7], [6]], [, , \"(?:1(?:1[12568]|[24]0|55|6[146])|8\\\\d\\\\d)\\\\d{4}\", , , , \"8370362\", , , , [6]], [, , \"(?:17[1-3]|7\\\\d\\\\d)\\\\d{4}\", , , , \"7123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"ER\", 291, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d)(\\\\d{3})(\\\\d{3})\",\n\"$1 $2 $3\", [\"[178]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], ES:[, [, , \"(?:51|[6-9]\\\\d)\\\\d{7}\", , , , , , , [9]], [, , \"96906(?:0[0-8]|1[1-9]|[2-9]\\\\d)\\\\d\\\\d|9(?:69(?:0[0-57-9]|[1-9]\\\\d)|73(?:[0-8]\\\\d|9[1-9]))\\\\d{4}|(?:8(?:[1356]\\\\d|[28][0-8]|[47][1-9])|9(?:[135]\\\\d|[268][0-8]|4[1-9]|7[124-9]))\\\\d{6}\", , , , \"810123456\"], [, , \"9(?:6906(?:09|10)|7390\\\\d\\\\d)\\\\d\\\\d|(?:6\\\\d|7[1-48])\\\\d{7}\", , , , \"612345678\"], [,\n, \"[89]00\\\\d{6}\", , , , \"800123456\"], [, , \"80[367]\\\\d{6}\", , , , \"803123456\"], [, , \"90[12]\\\\d{6}\", , , , \"901123456\"], [, , \"70\\\\d{7}\", , , , \"701234567\"], [, , , , , , , , , [-1]], \"ES\", 34, \"00\", , , , , , , , [[, \"(\\\\d{4})\", \"$1\", [\"905\"]], [, \"(\\\\d{6})\", \"$1\", [\"[79]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]\"]]], [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[89]00\"]], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\",\n[\"[5-9]\"]]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"51\\\\d{7}\", , , , \"511234567\"], , , [, , , , , , , , , [-1]]], ET:[, [, , \"(?:11|[2-59]\\\\d)\\\\d{7}\", , , , , , , [9], [7]], [, , \"(?:11(?:1(?:1[124]|2[2-57]|3[1-5]|5[5-8]|8[6-8])|2(?:13|3[6-8]|5[89]|7[05-9]|8[2-6])|3(?:2[01]|3[0-289]|4[1289]|7[1-4]|87)|4(?:1[69]|3[2-49]|4[0-3]|6[5-8])|5(?:1[578]|44|5[0-4])|6(?:1[78]|2[69]|39|4[5-7]|5[1-5]|6[0-59]|8[015-8]))|2(?:2(?:11[1-9]|22[0-7]|33\\\\d|44[1467]|66[1-68])|5(?:11[124-6]|33[2-8]|44[1467]|55[14]|66[1-3679]|77[124-79]|880))|3(?:3(?:11[0-46-8]|(?:22|55)[0-6]|33[0134689]|44[04]|66[01467])|4(?:44[0-8]|55[0-69]|66[0-3]|77[1-5]))|4(?:6(?:22[0-24-7]|33[1-5]|44[13-69]|55[14-689]|660|88[1-4])|7(?:(?:11|22)[1-9]|33[13-7]|44[13-6]|55[1-689]))|5(?:7(?:227|55[05]|(?:66|77)[14-8])|8(?:11[149]|22[013-79]|33[0-68]|44[013-8]|550|66[1-5]|77\\\\d)))\\\\d{4}\",\n, , , \"111112345\", , , , [7]], [, , \"9\\\\d{8}\", , , , \"911234567\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"ET\", 251, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[1-59]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], FI:[, [, , \"(?:[124-7]\\\\d|3[0-46-9])\\\\d{8}|[1-9]\\\\d{5,8}|[1-35689]\\\\d{4}\", , , , , , ,\n[5, 6, 7, 8, 9, 10]], [, , \"(?:1[3-79][1-8]|[235689][1-8]\\\\d)\\\\d{2,6}\", , , , \"131234567\", , , [5, 6, 7, 8, 9]], [, , \"(?:4[0-8]|50)\\\\d{4,8}\", , , , \"412345678\", , , [6, 7, 8, 9, 10]], [, , \"800\\\\d{4,6}\", , , , \"800123456\", , , [7, 8, 9]], [, , \"[67]00\\\\d{5,6}\", , , , \"600123456\", , , [8, 9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"FI\", 358, \"00|99(?:[01469]|5(?:[14]1|3[23]|5[59]|77|88|9[09]))\", \"0\", , , \"0\", , \"00\", , [[, \"(\\\\d{5})\", \"$1\", [\"75[12]\"], \"0$1\"],\n[, \"(\\\\d)(\\\\d{4,9})\", \"$1 $2\", [\"[2568][1-8]|3(?:0[1-9]|[1-9])|9\"], \"0$1\"], [, \"(\\\\d{6})\", \"$1\", [\"11\"]], [, \"(\\\\d{3})(\\\\d{3,7})\", \"$1 $2\", [\"(?:[12]0|7)0|[368]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{4,8})\", \"$1 $2\", [\"[12457]\"], \"0$1\"]], [[, \"(\\\\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]0|7)0|[368]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{4,8})\", \"$1 $2\", [\"[12457]\"], \"0$1\"]], [, , , , , , , , , [-1]], 1, \"1[03-79]|[2-9]\", [, , \"20(?:2[023]|9[89])\\\\d{1,6}|60[12]\\\\d{5,6}|(?:606|7(?:1|3\\\\d))\\\\d{7}|(?:[1-3]00|75[03-9])\\\\d{3,7}\"],\n[, , \"(?:10|[23][09])\\\\d{4,8}|60(?:[12]\\\\d{5,6}|6\\\\d{7})|7(?:(?:1|3\\\\d)\\\\d{7}|5[03-9]\\\\d{3,7})|20[2-59]\\\\d\\\\d\", , , , \"10112345\"], , , [, , , , , , , , , [-1]]], FJ:[, [, , \"45\\\\d{5}|(?:0800\\\\d|[235-9])\\\\d{6}\", , , , , , , [7, 11]], [, , \"603\\\\d{4}|(?:3[0-5]|6[25-7]|8[58])\\\\d{5}\", , , , \"3212345\", , , [7]], [, , \"(?:[279]\\\\d|45|5[01568]|8[034679])\\\\d{5}\", , , , \"7012345\", , , [7]], [, , \"0800\\\\d{7}\", , , , \"08001234567\", , , [11]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , ,\n, , , [-1]], [, , , , , , , , , [-1]], \"FJ\", 679, \"0(?:0|52)\", , , , , , \"00\", , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[235-9]|45\"]], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"0\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], FK:[, [, , \"[2-7]\\\\d{4}\", , , , , , , [5]], [, , \"[2-47]\\\\d{4}\", , , , \"31234\"], [, , \"[56]\\\\d{4}\", , , , \"51234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , ,\n, , , , , [-1]], [, , , , , , , , , [-1]], \"FK\", 500, \"00\", , , , , , , , , , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], FM:[, [, , \"[39]\\\\d{6}\", , , , , , , [7]], [, , \"(?:3[2357]0[1-9]|9[2-6]\\\\d\\\\d)\\\\d{3}\", , , , \"3201234\"], [, , \"(?:3[2357]0[1-9]|9[2-7]\\\\d\\\\d)\\\\d{3}\", , , , \"3501234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"FM\", 691,\n\"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[39]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], FO:[, [, , \"(?:[2-8]\\\\d|90)\\\\d{4}\", , , , , , , [6]], [, , \"(?:20|[34]\\\\d|8[19])\\\\d{4}\", , , , \"201234\"], [, , \"(?:[27][1-9]|5\\\\d)\\\\d{4}\", , , , \"211234\"], [, , \"80[257-9]\\\\d{3}\", , , , \"802123\"], [, , \"90(?:[13-5][15-7]|2[125-7]|99)\\\\d\\\\d\", , , , \"901123\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"(?:6[0-36]|88)\\\\d{4}\",\n, , , \"601234\"], \"FO\", 298, \"00\", , , , \"(10(?:01|[12]0|88))\", , , , [[, \"(\\\\d{6})\", \"$1\", [\"[2-9]\"], , \"$CC $1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], FR:[, [, , \"[1-9]\\\\d{8}\", , , , , , , [9]], [, , \"[1-5]\\\\d{8}\", , , , \"123456789\"], [, , \"700\\\\d{6}|(?:6\\\\d|7[3-9])\\\\d{7}\", , , , \"612345678\"], [, , \"80[0-5]\\\\d{6}\", , , , \"801234567\"], [, , \"8[129]\\\\d{7}\", , , , \"891123456\"], [, , \"884\\\\d{6}\", , , , \"884012345\"], [, ,\n, , , , , , , [-1]], [, , \"9\\\\d{8}\", , , , \"912345678\"], \"FR\", 33, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{4})\", \"$1\", [\"10\"]], [, \"(\\\\d{3})(\\\\d{3})\", \"$1 $2\", [\"1\"]], [, \"(\\\\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\"]], [[, \"(\\\\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\"]], [, , , , , , , , , [-1]], , ,\n[, , , , , , , , , [-1]], [, , \"80[6-9]\\\\d{6}\", , , , \"806123456\"], , , [, , , , , , , , , [-1]]], GA:[, [, , \"(?:0\\\\d|[2-7])\\\\d{6}\", , , , , , , [7, 8]], [, , \"01\\\\d{6}\", , , , \"01441234\", , , [8]], [, , \"(?:0[2-7]|[2-7])\\\\d{6}\", , , , \"06031234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"GA\", 241, \"00\", , , , , , , , [[, \"(\\\\d)(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[2-7]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\n\"$1 $2 $3 $4\", [\"0\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GB:[, [, , \"[1-357-9]\\\\d{9}|[18]\\\\d{8}|8\\\\d{6}\", , , , , , , [7, 9, 10], [4, 5, 6, 8]], [, , \"(?:1(?:(?:1(?:3[0-58]|4[0-5]|5[0-26-9]|6[0-4]|[78][0-49])|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[024-9]|2[3-9]|3[3-79]|4[1-689]|[58][02-9]|6[0-47-9]|7[013-9]|9\\\\d)\\\\d\\\\d|1(?:[0-7]\\\\d\\\\d|80[04589])))|2(?:0[01378]|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]))|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|7(?:(?:26(?:6[13-9]|7[0-7])|442\\\\d|50(?:2[0-3]|[3-68]2|76))\\\\d|6888[2-46-8]))\\\\d\\\\d\",\n, , , \"1212345678\", , , [9, 10], [4, 5, 6, 7, 8]], [, , \"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}\", , , , \"7400123456\", , , [10]], [, , \"80[08]\\\\d{7}|800\\\\d{6}|8001111\", , , , \"8001234567\"], [, , \"(?:8(?:4[2-5]|7[0-3])|9(?:[01]\\\\d|8[2-49]))\\\\d{7}|845464\\\\d\", , , , \"9012345678\", , , [7, 10]], [, , , , , , , , , [-1]], [, ,\n\"70\\\\d{8}\", , , , \"7012345678\", , , [10]], [, , \"56\\\\d{8}\", , , , \"5612345678\", , , [10]], \"GB\", 44, \"00\", \"0\", \" x\", , \"0\", , , , [[, \"(\\\\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)\"],\n\"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[024-9])\", \"[25]|7(?:0|6(?:[04-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\"]], , [, , \"76(?:0[0-2]|2[356]|4[0134]|5[49]|6[0-369]|77|81|9[39])\\\\d{6}\", , , , \"7640123456\", , , [10]], 1, , [, , , , , , , , , [-1]], [, , \"(?:3[0347]|55)\\\\d{8}\", , , , \"5512345678\", , , [10]], , , [, ,\n, , , , , , , [-1]]], GD:[, [, , \"(?:473|[58]\\\\d\\\\d|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"473(?:2(?:3[0-2]|69)|3(?:2[89]|86)|4(?:[06]8|3[5-9]|4[0-49]|5[5-79]|73|90)|63[68]|7(?:58|84)|800|938)\\\\d{4}\", , , , \"4732691234\", , , , [7]], [, , \"473(?:4(?:0[2-79]|1[04-9]|2[0-5]|58)|5(?:2[01]|3[3-8])|901)\\\\d{4}\", , , , \"4734031234\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\",\n, , , \"5002345678\"], [, , , , , , , , , [-1]], \"GD\", 1, \"011\", \"1\", , , \"1|([2-9]\\\\d{6})$\", \"473$1\", , , , , [, , , , , , , , , [-1]], , \"473\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GE:[, [, , \"(?:[3-57]\\\\d\\\\d|800)\\\\d{6}\", , , , , , , [9], [6, 7]], [, , \"(?:3(?:[256]\\\\d|4[124-9]|7[0-4])|4(?:1\\\\d|2[2-7]|3[1-79]|4[2-8]|7[239]|9[1-7]))\\\\d{6}\", , , , \"322123456\", , , , [6, 7]], [, , \"5(?:0(?:0[05]|55)\\\\d|1111|2222|3333|5200|75(?:00|7[78])|8(?:58[89]|888))\\\\d{4}|(?:5(?:[14]4|5[0157-9]|68|7[0147-9]|9[1-35-9])|790)\\\\d{6}\",\n, , , \"555123456\"], [, , \"800\\\\d{6}\", , , , \"800123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"706\\\\d{6}\", , , , \"706123456\"], \"GE\", 995, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\"]], , [, , , , , , , , ,\n[-1]], , , [, , \"706\\\\d{6}\"], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GF:[, [, , \"[56]94\\\\d{6}\", , , , , , , [9]], [, , \"594(?:[023]\\\\d|1[01]|4[03-9]|5[6-9]|6[0-3]|80|9[014])\\\\d{4}\", , , , \"594101234\"], [, , \"694(?:[0-249]\\\\d|3[0-48])\\\\d{4}\", , , , \"694201234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"GF\", 594, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\",\n[\"[56]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GG:[, [, , \"(?:1481|[357-9]\\\\d{3})\\\\d{6}|8\\\\d{6}(?:\\\\d{2})?\", , , , , , , [7, 9, 10], [6]], [, , \"1481[25-9]\\\\d{5}\", , , , \"1481256789\", , , [10], [6]], [, , \"7(?:(?:781|839)\\\\d|911[17])\\\\d{5}\", , , , \"7781123456\", , , [10]], [, , \"80[08]\\\\d{7}|800\\\\d{6}|8001111\", , , , \"8001234567\"], [, , \"(?:8(?:4[2-5]|7[0-3])|9(?:[01]\\\\d|8[0-3]))\\\\d{7}|845464\\\\d\", , , , \"9012345678\",\n, , [7, 10]], [, , , , , , , , , [-1]], [, , \"70\\\\d{8}\", , , , \"7012345678\", , , [10]], [, , \"56\\\\d{8}\", , , , \"5612345678\", , , [10]], \"GG\", 44, \"00\", \"0\", , , \"0|([25-9]\\\\d{5})$\", \"1481$1\", , , , , [, , \"76(?:0[0-2]|2[356]|4[0134]|5[49]|6[0-369]|77|81|9[39])\\\\d{6}\", , , , \"7640123456\", , , [10]], , , [, , , , , , , , , [-1]], [, , \"(?:3[0347]|55)\\\\d{8}\", , , , \"5512345678\", , , [10]], , , [, , , , , , , , , [-1]]], GH:[, [, , \"(?:[235]\\\\d{3}|800)\\\\d{5}\", , , , , , , [8, 9], [7]], [, , \"3(?:[167]2[0-6]|22[0-5]|32[0-3]|4(?:2[013-9]|3[01])|52[0-7]|82[0-2])\\\\d{5}|3(?:[0-8]8|9[28])0\\\\d{5}|3(?:0[237]|[1-9]7)\\\\d{6}\",\n, , , \"302345678\", , , [9], [7]], [, , \"56[01]\\\\d{6}|(?:2[0346-8]|5[0457])\\\\d{7}\", , , , \"231234567\", , , [9]], [, , \"800\\\\d{5}\", , , , \"80012345\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"GH\", 233, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[237]|80\"]], [, \"(\\\\d{3})(\\\\d{5})\", \"$1 $2\", [\"8\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[235]\"], \"0$1\"]], [[, \"(\\\\d{3})(\\\\d{5})\", \"$1 $2\", [\"8\"], \"0$1\"],\n[, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[235]\"], \"0$1\"]], [, , , , , , , , , [-1]], , , [, , \"800\\\\d{5}\", , , , , , , [8]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GI:[, [, , \"(?:[25]\\\\d\\\\d|629)\\\\d{5}\", , , , , , , [8]], [, , \"2190[0-2]\\\\d{3}|2(?:00\\\\d|16[24-7]|2(?:2[2457]|50))\\\\d{4}\", , , , \"20012345\"], [, , \"(?:5[46-8]\\\\d|629)\\\\d{5}\", , , , \"57123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , ,\n, [-1]], \"GI\", 350, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{5})\", \"$1 $2\", [\"2\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GL:[, [, , \"(?:19|[2-689]\\\\d)\\\\d{4}\", , , , , , , [6]], [, , \"(?:19|3[1-7]|6[14689]|8[14-79]|9\\\\d)\\\\d{4}\", , , , \"321000\"], [, , \"(?:[25][1-9]|4[2-9])\\\\d{4}\", , , , \"221234\"], [, , \"80\\\\d{4}\", , , , \"801234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"3[89]\\\\d{4}\",\n, , , \"381234\"], \"GL\", 299, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3\", [\"19|[2-689]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GM:[, [, , \"[2-9]\\\\d{6}\", , , , , , , [7]], [, , \"(?:4(?:[23]\\\\d\\\\d|4(?:1[024679]|[6-9]\\\\d))|5(?:54[0-7]|6[67]\\\\d|7(?:1[04]|2[035]|3[58]|48))|8\\\\d{3})\\\\d{3}\", , , , \"5661234\"], [, , \"(?:[23679]\\\\d|5[0-3])\\\\d{5}\", , , , \"3012345\"], [, , , , , , , , , [-1]], [, , , , , , , , ,\n[-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"GM\", 220, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[2-9]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GN:[, [, , \"(?:30|6\\\\d\\\\d|722)\\\\d{6}\", , , , , , , [8, 9]], [, , \"30(?:24|3[12]|4[1-35-7]|5[13]|6[189]|[78]1|9[1478])\\\\d{4}\", , , , \"30241234\", , , [8]], [, , \"6[02356]\\\\d{7}\", , , , \"601123456\", , , [9]], [, , , , , , , , ,\n[-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"722\\\\d{6}\", , , , \"722123456\", , , [9]], \"GN\", 224, \"00\", , , , , , , , [[, \"(\\\\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]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GP:[, [, , \"(?:590|69\\\\d)\\\\d{6}\", , , , , , , [9]], [, , \"590(?:0[1-68]|1[0-2]|2[0-68]|3[1289]|4[0-24-9]|5[3-579]|6[0189]|7[08]|8[0-689]|9\\\\d)\\\\d{4}\",\n, , , \"590201234\"], [, , \"69(?:0\\\\d\\\\d|1(?:2[29]|3[0-5]))\\\\d{4}\", , , , \"690001234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"GP\", 590, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[56]\"], \"0$1\"]], , [, , , , , , , , , [-1]], 1, , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GQ:[, [, , \"222\\\\d{6}|(?:3\\\\d|55|[89]0)\\\\d{7}\", , , , , ,\n, [9]], [, , \"33[0-24-9]\\\\d[46]\\\\d{4}|3(?:33|5\\\\d)\\\\d[7-9]\\\\d{4}\", , , , \"333091234\"], [, , \"(?:222|55[015])\\\\d{6}\", , , , \"222123456\"], [, , \"80\\\\d[1-9]\\\\d{5}\", , , , \"800123456\"], [, , \"90\\\\d[1-9]\\\\d{5}\", , , , \"900123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"GQ\", 240, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[235]\"]], [, \"(\\\\d{3})(\\\\d{6})\", \"$1 $2\", [\"[89]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , ,\n, , , , , , [-1]], , , [, , , , , , , , , [-1]]], GR:[, [, , \"(?:[268]\\\\d|[79]0)\\\\d{8}\", , , , , , , [10]], [, , \"2(?:1\\\\d\\\\d|2(?:2[1-46-9]|[36][1-8]|4[1-7]|5[1-4]|7[1-5]|[89][1-9])|3(?:1\\\\d|2[1-57]|[35][1-3]|4[13]|7[1-7]|8[124-6]|9[1-79])|4(?:1\\\\d|2[1-8]|3[1-4]|4[13-5]|6[1-578]|9[1-5])|5(?:1\\\\d|[29][1-4]|3[1-5]|4[124]|5[1-6])|6(?:1\\\\d|[269][1-6]|3[1245]|4[1-7]|5[13-9]|7[14]|8[1-5])|7(?:1\\\\d|2[1-5]|3[1-6]|4[1-7]|5[1-57]|6[135]|9[125-7])|8(?:1\\\\d|2[1-5]|[34][1-4]|9[1-57]))\\\\d{6}\", , , , \"2123456789\"],\n[, , \"6(?:8[57-9]|9\\\\d)\\\\d{7}\", , , , \"6912345678\"], [, , \"800\\\\d{7}\", , , , \"8001234567\"], [, , \"90[19]\\\\d{7}\", , , , \"9091234567\"], [, , \"8(?:0[16]|12|25)\\\\d{7}\", , , , \"8011234567\"], [, , \"70(?:0[3-8]0|707)\\\\d{5}\", , , , \"7003000123\"], [, , , , , , , , , [-1]], \"GR\", 30, \"00\", , , , , , , , [[, \"(\\\\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])\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[2689]\"]]],\n, [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GT:[, [, , \"(?:1\\\\d{3}|[2-7])\\\\d{7}\", , , , , , , [8, 11]], [, , \"[267][2-9]\\\\d{6}\", , , , \"22456789\", , , [8]], [, , \"[3-5]\\\\d{7}\", , , , \"51234567\", , , [8]], [, , \"18[01]\\\\d{8}\", , , , \"18001112222\", , , [11]], [, , \"19\\\\d{9}\", , , , \"19001112222\", , , [11]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"GT\", 502, \"00\", , , , , , , , [[, \"(\\\\d{4})(\\\\d{4})\",\n\"$1 $2\", [\"[2-7]\"]], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"1\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GU:[, [, , \"(?:[58]\\\\d\\\\d|671|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"671(?:3(?:00|3[39]|4[349]|55|6[26])|4(?:00|56|7[1-9]|8[0236-9])|5(?:55|6[2-5]|88)|6(?:3[2-578]|4[24-9]|5[34]|78|8[235-9])|7(?:[0479]7|2[0167]|3[45]|8[7-9])|8(?:[2-57-9]8|6[48])|9(?:2[29]|6[79]|7[1279]|8[7-9]|9[78]))\\\\d{4}\", , , , \"6713001234\",\n, , , [7]], [, , \"671(?:3(?:00|3[39]|4[349]|55|6[26])|4(?:00|56|7[1-9]|8[0236-9])|5(?:55|6[2-5]|88)|6(?:3[2-578]|4[24-9]|5[34]|78|8[235-9])|7(?:[0479]7|2[0167]|3[45]|8[7-9])|8(?:[2-57-9]8|6[48])|9(?:2[29]|6[79]|7[1279]|8[7-9]|9[78]))\\\\d{4}\", , , , \"6713001234\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]],\n\"GU\", 1, \"011\", \"1\", , , \"1|([3-9]\\\\d{6})$\", \"671$1\", , 1, , , [, , , , , , , , , [-1]], , \"671\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GW:[, [, , \"[49]\\\\d{8}|4\\\\d{6}\", , , , , , , [7, 9]], [, , \"443\\\\d{6}\", , , , \"443201234\", , , [9]], [, , \"9(?:5\\\\d|6[569]|77)\\\\d{6}\", , , , \"955012345\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"40\\\\d{5}\", , , , \"4012345\", , , [7]], \"GW\", 245,\n\"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"40\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[49]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GY:[, [, , \"(?:862\\\\d|9008)\\\\d{3}|(?:[2-46]\\\\d|77)\\\\d{5}\", , , , , , , [7]], [, , \"(?:2(?:1[6-9]|2[0-35-9]|3[1-4]|5[3-9]|6\\\\d|7[0-24-79])|3(?:2[25-9]|3\\\\d)|4(?:4[0-24]|5[56])|77[1-57])\\\\d{4}\", , , , \"2201234\"], [, , \"6\\\\d{6}\", , , , \"6091234\"], [, , \"(?:289|862)\\\\d{4}\",\n, , , \"2891234\"], [, , \"9008\\\\d{3}\", , , , \"9008123\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"GY\", 592, \"001\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[2-46-9]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], HK:[, [, , \"8[0-46-9]\\\\d{6,7}|9\\\\d{4}(?:\\\\d(?:\\\\d(?:\\\\d{4})?)?)?|(?:[235-79]\\\\d|46)\\\\d{6}\", , , , , , , [5, 6, 7, 8, 9, 11]], [, , \"(?:384[0-24]|58(?:0[1-8]|1[2-9]))\\\\d{4}|(?:2(?:[13-8]\\\\d|2[013-9]|9[0-24-9])|3(?:[1569][0-24-9]|4[0-246-9]|7[0-24-69]|89))\\\\d{5}\",\n, , , \"21234567\", , , [8]], [, , \"(?:46(?:0[0-6]|1[0-2]|4[0-57-9])|5730|(?:626|848)[01]|707[1-5]|929[03-9])\\\\d{4}|(?:5(?:[1-59][0-46-9]|6[0-4689]|7[0-2469])|6(?:0[1-9]|[13-59]\\\\d|[268][0-57-9]|7[0-79])|9(?:0[1-9]|1[02-9]|[2358][0-8]|[467]\\\\d))\\\\d{5}\", , , , \"51234567\", , , [8]], [, , \"800\\\\d{6}\", , , , \"800123456\", , , [9]], [, , \"900(?:[0-24-9]\\\\d{7}|3\\\\d{1,4})\", , , , \"90012345678\", , , [5, 6, 7, 8, 11]], [, , , , , , , , , [-1]], [, , \"8(?:1[0-4679]\\\\d|2(?:[0-36]\\\\d|7[0-4])|3(?:[034]\\\\d|2[09]|70))\\\\d{4}\",\n, , , \"81123456\", , , [8]], [, , , , , , , , , [-1]], \"HK\", 852, \"00(?:30|5[09]|[126-9]?)\", , , , , , \"00\", , [[, \"(\\\\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\"]]], , [, , \"7(?:1(?:0[0-38]|1[0-3679]|3[013]|69|9[136])|2(?:[02389]\\\\d|1[18]|7[27-9])|3(?:[0-38]\\\\d|7[0-369]|9[2357-9])|47\\\\d|5(?:[178]\\\\d|5[0-5])|6(?:0[0-7]|2[236-9]|[35]\\\\d)|7(?:[27]\\\\d|8[7-9])|8(?:[23689]\\\\d|7[1-9])|9(?:[025]\\\\d|6[0-246-8]|7[0-36-9]|8[238]))\\\\d{4}\",\n, , , \"71123456\", , , [8]], , , [, , , , , , , , , [-1]], [, , \"30(?:0[1-9]|[15-7]\\\\d|2[047]|89)\\\\d{4}\", , , , \"30161234\", , , [8]], , , [, , , , , , , , , [-1]]], HN:[, [, , \"8\\\\d{10}|[237-9]\\\\d{7}\", , , , , , , [8, 11]], [, , \"2(?:2(?:0[019]|1[1-36]|[23]\\\\d|4[04-6]|5[57]|6[24]|7[0135689]|8[01346-9]|9[0-2])|4(?:07|2[3-59]|3[13-689]|4[0-68]|5[1-35])|5(?:0[78]|16|4[03-5]|5\\\\d|6[14-6]|74|80)|6(?:[056]\\\\d|17|2[07]|3[04]|4[0-378]|[78][0-8]|9[01])|7(?:6[46-9]|7[02-9]|8[034]|91)|8(?:79|8[0-357-9]|9[1-57-9]))\\\\d{4}\",\n, , , \"22123456\", , , [8]], [, , \"[37-9]\\\\d{7}\", , , , \"91234567\", , , [8]], [, , \"8002\\\\d{7}\", , , , \"80021234567\", , , [11]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"HN\", 504, \"00\", , , , , , , , [[, \"(\\\\d{4})(\\\\d{4})\", \"$1-$2\", [\"[237-9]\"]], [, \"(\\\\d{3})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"8\"]]], [[, \"(\\\\d{4})(\\\\d{4})\", \"$1-$2\", [\"[237-9]\"]]], [, , , , , , , , , [-1]], , , [, , \"8002\\\\d{7}\", , , , , , , [11]], [, , , , , , , , , [-1]],\n, , [, , , , , , , , , [-1]]], HR:[, [, , \"(?:[24-69]\\\\d|3[0-79])\\\\d{7}|80\\\\d{5,7}|[1-79]\\\\d{7}|6\\\\d{5,6}\", , , , , , , [6, 7, 8, 9]], [, , \"1\\\\d{7}|(?:2[0-3]|3[1-5]|4[02-47-9]|5[1-3])\\\\d{6,7}\", , , , \"12345678\", , , [8, 9], [6, 7]], [, , \"9(?:751\\\\d{5}|8\\\\d{6,7})|9(?:01|[1259]\\\\d|7[0679])\\\\d{6}\", , , , \"921234567\", , , [8, 9]], [, , \"80[01]\\\\d{4,6}\", , , , \"800123456\", , , [7, 8, 9]], [, , \"6[01459]\\\\d{6}|6[01]\\\\d{4,5}\", , , , \"611234\", , , [6, 7, 8]], [, , , , , , , , , [-1]], [, , \"7[45]\\\\d{6}\",\n, , , \"74123456\", , , [8]], [, , , , , , , , , [-1]], \"HR\", 385, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\",\n[\"8\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"62\\\\d{6,7}|72\\\\d{6}\", , , , \"62123456\", , , [8, 9]], , , [, , , , , , , , , [-1]]], HT:[, [, , \"[2-489]\\\\d{7}\", , , , , , , [8]], [, , \"2(?:2\\\\d|5[1-5]|81|9[149])\\\\d{5}\", , , , \"22453300\"], [, , \"[34]\\\\d{7}\", , , , \"34101234\"], [, , \"8\\\\d{7}\", , , , \"80012345\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"9(?:[67][0-4]|8[0-3589]|9\\\\d)\\\\d{5}\", , , , \"98901234\"], \"HT\", 509, \"00\",\n, , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{4})\", \"$1 $2 $3\", [\"[2-489]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], HU:[, [, , \"[2357]\\\\d{8}|[1-9]\\\\d{7}\", , , , , , , [8, 9], [6, 7]], [, , \"(?:1\\\\d|[27][2-9]|3[2-7]|4[24-9]|5[2-79]|6[23689]|8[2-57-9]|9[2-69])\\\\d{6}\", , , , \"12345678\", , , [8], [6, 7]], [, , \"(?:[257]0|3[01])\\\\d{7}\", , , , \"201234567\", , , [9]], [, , \"[48]0\\\\d{6}\", , , , \"80123456\", , , [8]], [, , \"9[01]\\\\d{6}\",\n, , , \"90123456\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"21\\\\d{7}\", , , , \"211234567\", , , [9]], \"HU\", 36, \"00\", \"06\", , , \"06\", , , , [[, \"(\\\\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-57-9]\"], \"06 $1\"]], , [, , , , , , , , , [-1]], , , [, , \"[48]0\\\\d{6}\", , , , , , , [8]], [, , \"38\\\\d{7}\", , , , \"381234567\",\n, , [9]], , , [, , , , , , , , , [-1]]], ID:[, [, , \"(?:(?:007803|8\\\\d{4})\\\\d|[1-36])\\\\d{6}|[1-9]\\\\d{8,10}|[2-9]\\\\d{7}\", , , , , , , [7, 8, 9, 10, 11, 12, 13], [5, 6]], [, , \"2[124]\\\\d{7,8}|619\\\\d{8}|2(?:1(?:14|500)|2\\\\d{3})\\\\d{3}|61\\\\d{5,8}|(?:2(?:[35][1-4]|6[0-8]|7[1-6]|8\\\\d|9[1-8])|3(?:1|[25][1-8]|3[1-68]|4[1-3]|6[1-3568]|7[0-469]|8\\\\d)|4(?:0[1-589]|1[01347-9]|2[0-36-8]|3[0-24-68]|43|5[1-378]|6[1-5]|7[134]|8[1245])|5(?:1[1-35-9]|2[25-8]|3[124-9]|4[1-3589]|5[1-46]|6[1-8])|6(?:[25]\\\\d|3[1-69]|4[1-6])|7(?:02|[125][1-9]|[36]\\\\d|4[1-8]|7[0-36-9])|9(?:0[12]|1[013-8]|2[0-479]|5[125-8]|6[23679]|7[159]|8[01346]))\\\\d{5,8}\",\n, , , \"218350123\", , , [7, 8, 9, 10, 11], [5, 6]], [, , \"8[1-35-9]\\\\d{7,10}\", , , , \"812345678\", , , [9, 10, 11, 12]], [, , \"007803\\\\d{7}|(?:177\\\\d|800)\\\\d{5,7}\", , , , \"8001234567\", , , [8, 9, 10, 11, 13]], [, , \"809\\\\d{7}\", , , , \"8091234567\", , , [10]], [, , \"804\\\\d{7}\", , , , \"8041234567\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"ID\", 62, \"00[189]\", \"0\", , , \"0\", , , , [[, \"(\\\\d)(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"15\"]], [, \"(\\\\d{2})(\\\\d{5,9})\", \"$1 $2\", [\"2[124]|[36]1\"],\n\"(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\"], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3 $4\", [\"0\"]]], [[, \"(\\\\d)(\\\\d{3})(\\\\d{3})\",\n\"$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\"]], [, , ,\n, , , , , , [-1]], , , [, , \"(?:007803\\\\d|8071)\\\\d{6}\", , , , , , , [10, 13]], [, , \"(?:1500|8071\\\\d{3})\\\\d{3}\", , , , \"8071123456\", , , [7, 10]], , , [, , , , , , , , , [-1]]], IE:[, [, , \"(?:1\\\\d|[2569])\\\\d{6,8}|4\\\\d{6,9}|7\\\\d{8}|8\\\\d{8,9}\", , , , , , , [7, 8, 9, 10], [5, 6]], [, , \"(?:1\\\\d|21)\\\\d{6,7}|(?:2[24-9]|4(?:0[24]|5\\\\d|7)|5(?:0[45]|1\\\\d|8)|6(?:1\\\\d|[237-9])|9(?:1\\\\d|[35-9]))\\\\d{5}|(?:23|4(?:[1-469]|8[0-46-9])|5[23679]|6[4-6]|7[14]|9[04])\\\\d{7}\", , , , \"2212345\", , , , [5, 6]], [, , \"8(?:22|[35-9]\\\\d)\\\\d{6}\",\n, , , \"850123456\", , , [9]], [, , \"1800\\\\d{6}\", , , , \"1800123456\", , , [10]], [, , \"15(?:1[2-8]|[2-8]0|9[089])\\\\d{6}\", , , , \"1520123456\", , , [10]], [, , \"18[59]0\\\\d{6}\", , , , \"1850123456\", , , [10]], [, , \"700\\\\d{6}\", , , , \"700123456\", , , [9]], [, , \"76\\\\d{7}\", , , , \"761234567\", , , [9]], \"IE\", 353, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\",\n[\"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)(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3 $4\", [\"8\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"4\"], \"(0$1)\"]], , [, , , , , , , , , [-1]], , , [, , \"18[59]0\\\\d{6}\",\n, , , , , , [10]], [, , \"818\\\\d{6}\", , , , \"818123456\", , , [9]], , , [, , \"8[35-9]5\\\\d{7}\", , , , \"8551234567\", , , [10]]], IL:[, [, , \"1\\\\d{6}(?:\\\\d{3,5})?|[57]\\\\d{8}|[1-489]\\\\d{7}\", , , , , , , [7, 8, 9, 10, 11, 12]], [, , \"153\\\\d{8,9}|[2-489]\\\\d{7}\", , , , \"21234567\", , , [8, 11, 12], [7]], [, , \"5(?:(?:[0-389][2-9]|4[1-9]|6\\\\d)\\\\d|5(?:01|2[2-6]|3[23]|4[45]|5[05689]|6[6-8]|7[0-267]|8[7-9]|9[1-9]))\\\\d{5}\", , , , \"502345678\", , , [9]], [, , \"1(?:255|80[019]\\\\d{3})\\\\d{3}\", , , , \"1800123456\", ,\n, [7, 10]], [, , \"1212\\\\d{4}|1(?:200|9(?:0[01]|19))\\\\d{6}\", , , , \"1919123456\", , , [8, 10]], [, , \"1700\\\\d{6}\", , , , \"1700123456\", , , [10]], [, , , , , , , , , [-1]], [, , \"78(?:33|55|77|81)\\\\d{5}|7(?:18|2[23]|3[237]|47|6[58]|7\\\\d|82|9[235-9])\\\\d{6}\", , , , \"771234567\", , , [9]], \"IL\", 972, \"0(?:0|1[2-9])\", \"0\", , , \"0\", , , , [[, \"(\\\\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})\",\n\"$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\"]]], , [, , , , , , , , , [-1]], , , [, , \"1700\\\\d{6}\", , , , , , , [10]], [, , \"1599\\\\d{6}\", , , , \"1599123456\", , , [10]], , , [, , \"151\\\\d{8,9}\", , , , \"15112340000\", , , [11, 12]]], IM:[, [, , \"1624\\\\d{6}|(?:[3578]\\\\d|90)\\\\d{8}\", , , , , , , [10],\n[6]], [, , \"1624[5-8]\\\\d{5}\", , , , \"1624756789\", , , , [6]], [, , \"76245[06]\\\\d{4}|7(?:4576|[59]24\\\\d|624[0-4689])\\\\d{5}\", , , , \"7924123456\"], [, , \"808162\\\\d{4}\", , , , \"8081624567\"], [, , \"8(?:440[49]06|72299\\\\d)\\\\d{3}|(?:8(?:45|70)|90[0167])624\\\\d{4}\", , , , \"9016247890\"], [, , , , , , , , , [-1]], [, , \"70\\\\d{8}\", , , , \"7012345678\"], [, , \"56\\\\d{8}\", , , , \"5612345678\"], \"IM\", 44, \"00\", \"0\", , , \"0|([5-8]\\\\d{5})$\", \"1624$1\", , , , , [, , , , , , , , , [-1]], , \"74576|(?:16|7[56])24\", [, ,\n, , , , , , , [-1]], [, , \"3440[49]06\\\\d{3}|(?:3(?:08162|3\\\\d{4}|45624|7(?:0624|2299))|55\\\\d{4})\\\\d{4}\", , , , \"5512345678\"], , , [, , , , , , , , , [-1]]], IN:[, [, , \"(?:00800|[2-9]\\\\d\\\\d)\\\\d{7}|1\\\\d{7,12}\", , , , , , , [8, 9, 10, 11, 12, 13], [6, 7]], [, , \"782[0-6][2-7]\\\\d{5}|(?:170[24]|2(?:80[13468]|90\\\\d)|380\\\\d|4(?:20[24]|72[2-8])|552[1-7])\\\\d{6}|(?:342|674|788)(?:[0189][2-7]|[2-7]\\\\d)\\\\d{5}|(?:11|2[02]|33|4[04]|79|80)[2-7]\\\\d{7}|(?:1(?:2[0-249]|3[0-25]|4[145]|[59][14]|6[014]|7[1257]|8[01346])|2(?:1[257]|3[013]|4[01]|5[0137]|6[0158]|78|8[1568]|9[14])|3(?:26|4[13]|5[34]|6[01489]|7[02-46]|8[159])|4(?:1[36]|2[1-47]|3[15]|5[12]|6[0-26-9]|7[014-9]|8[013-57]|9[014-7])|5(?:1[025]|22|[36][25]|4[28]|[578]1|9[15])|6(?:12|[2-47]1|5[17]|6[13]|80)|7(?:12|2[14]|3[134]|4[47]|5[15]|[67]1)|8(?:16|2[014]|3[126]|6[136]|7[078]|8[34]|91))[2-7]\\\\d{6}|(?:1(?:2[35-8]|3[346-9]|4[236-9]|[59][0235-9]|6[235-9]|7[34689]|8[257-9])|2(?:1[134689]|3[24-8]|4[2-8]|5[25689]|6[2-4679]|7[13-79]|8[2-479]|9[235-9])|3(?:01|1[79]|2[1-5]|4[5-8]|5[125689]|6[235-7]|7[157-9]|8[2-46-8])|4(?:1[14578]|2[5689]|3[2-467]|5[4-7]|6[35]|73|8[2689]|9[2389])|5(?:[16][146-9]|2[14-8]|3[1346]|4[14-69]|5[46]|7[2-4]|8[2-8]|9[246])|6(?:1[1358]|2[2457]|3[2-4]|4[235-7]|5[2-689]|6[24578]|7[235689]|8[1-6])|7(?:1[013-9]|2[0235-9]|3[2679]|4[1-35689]|5[2-46-9]|[67][02-9]|8[013-7]|9[0189])|8(?:1[1357-9]|2[235-8]|3[03-57-9]|4[0-24-9]|5\\\\d|6[2457-9]|7[1-6]|8[1256]|9[2-4]))\\\\d[2-7]\\\\d{5}\",\n, , , \"7410410123\", , , [10], [6, 7, 8]], [, , \"(?:6(?:1279|350[0-6])|7(?:3(?:1(?:11|7[02-8])|411)|4[47](?:11|7[02-8])|5111|700[02-9]|88(?:11|7[02-9])|9(?:313|79[07-9]))|8(?:079[04-9]|(?:16|2[014]|3[126]|6[136]|7[78]|8[34]|91)7[02-8]))\\\\d{5}|7(?:28[6-8]|3(?:2[0-49]|9[2-5])|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])[089]\\\\d{5}|(?:6(?:0(?:0[0-3569]|26|33)|2(?:[06]\\\\d|3[02589]|8[0-479]|9[0-79])|3(?:0[0-79]|5[1-9]|6[0-4679]|7[0-24-9]|[89]\\\\d)|9(?:0[019]|13))|7(?:0\\\\d\\\\d|19[0-5]|2(?:[0235-79]\\\\d|[14][017-9]|8[0-59])|3(?:[05-8]\\\\d|1[089]|2[5-8]|3[017-9]|4[07-9]|9[016-9])|4(?:0\\\\d|1[015-9]|[29][89]|39|[47][089]|8[389])|5(?:[0346-8]\\\\d|1[07-9]|2[04-9]|5[017-9]|9[7-9])|6(?:0[0-47]|1[0-257-9]|2[0-4]|3[19]|5[4589]|[6-9]\\\\d)|7(?:0[289]|[1-9]\\\\d)|8(?:[0-79]\\\\d|8[089])|9(?:[089]\\\\d|7[02-8]))|8(?:0(?:[01589]\\\\d|6[67]|7[02-8])|1(?:[0-57-9]\\\\d|6[089])|2(?:[014][089]|[235-9]\\\\d)|3(?:[03-57-9]\\\\d|[126][089])|[45]\\\\d\\\\d|6(?:[02457-9]\\\\d|[136][089])|7(?:0[07-9]|[1-69]\\\\d|[78][089])|8(?:[0-25-9]\\\\d|3[089]|4[0489])|9(?:[02-9]\\\\d|1[0289]))|9\\\\d{3})\\\\d{6}\",\n, , , \"8123456789\", , , [10]], [, , \"00800\\\\d{7}|1(?:600\\\\d{6}|80(?:0\\\\d{4,9}|3\\\\d{9}))\", , , , \"1800123456\"], [, , \"186[12]\\\\d{9}\", , , , \"1861123456789\", , , [13]], [, , \"1860\\\\d{7}\", , , , \"18603451234\", , , [11]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"IN\", 91, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{7})\", \"$1\", [\"575\"]], [, \"(\\\\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)\"], , , 1], [, \"(\\\\d{4})(\\\\d{4,5})\",\n\"$1 $2\", [\"180\", \"1800\"], , , 1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"140\"], , , 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]\",\n\"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(?:[2-4]1|5[17]|6[13]|7[14]|80)|7(?:12|(?: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|(?:55|61)2|7(?: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])|[2-4]1|5[17]|6[13]|7[14]|80)|7(?:12|(?: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]|(?:1(?:29|60|8[06])|261|552|788[01])[2-7]|(?:74[47]|8(?:16|2[014]|3[126]|6[136]|7[78]|83))(?:[2-6]|7[19])\"],\n\"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-8])|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-8])|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(?:1[1358]|2(?:[2457]|84|95)|3(?:[2-4]|55)|[4-8])|7(?:1(?:[013-8]|9[6-9])|3179)|807(?:1|9[1-3])|(?:1552|7(?: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]\"],\n\"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)\"], , , 1], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})(\\\\d{3})\", \"$1 $2 $3 $4\", [\"0\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3 $4\", [\"18\"], , , 1]], [[, \"(\\\\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)\"], , , 1], [, \"(\\\\d{4})(\\\\d{4,5})\", \"$1 $2\", [\"180\", \"1800\"],\n, , 1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"140\"], , , 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]\",\n\"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(?:[2-4]1|5[17]|6[13]|7[14]|80)|7(?:12|(?: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|(?:55|61)2|7(?: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])|[2-4]1|5[17]|6[13]|7[14]|80)|7(?:12|(?: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]|(?:1(?:29|60|8[06])|261|552|788[01])[2-7]|(?:74[47]|8(?:16|2[014]|3[126]|6[136]|7[78]|83))(?:[2-6]|7[19])\"],\n\"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-8])|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-8])|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(?:1[1358]|2(?:[2457]|84|95)|3(?:[2-4]|55)|[4-8])|7(?:1(?:[013-8]|9[6-9])|3179)|807(?:1|9[1-3])|(?:1552|7(?: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]\"],\n\"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)\"], , , 1], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3 $4\", [\"18\"], , , 1]], [, , , , , , , , , [-1]], , , [, , \"1(?:600\\\\d{6}|800\\\\d{4,9})|(?:00800|18(?:03\\\\d\\\\d|6(?:0|[12]\\\\d\\\\d)))\\\\d{7}\"], [, , \"140\\\\d{7}\", , , , \"1409305260\", , , [10]], , , [, , , , , , , , , [-1]]], IO:[, [, , \"3\\\\d{6}\", , , , , , , [7]], [, , \"37\\\\d{5}\", , , , \"3709100\"], [,\n, \"38\\\\d{5}\", , , , \"3801234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"IO\", 246, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"3\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], IQ:[, [, , \"(?:1|7\\\\d\\\\d)\\\\d{7}|[2-6]\\\\d{7,8}\", , , , , , , [8, 9, 10], [6, 7]], [, , \"1\\\\d{7}|(?:2[13-5]|3[02367]|4[023]|5[03]|6[026])\\\\d{6,7}\", , , ,\n\"12345678\", , , [8, 9], [6, 7]], [, , \"7[3-9]\\\\d{8}\", , , , \"7912345678\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"IQ\", 964, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , ,\n, , , [-1]], , , [, , , , , , , , , [-1]]], IR:[, [, , \"[1-9]\\\\d{9}|(?:[1-8]\\\\d\\\\d|9)\\\\d{3,4}\", , , , , , , [4, 5, 6, 7, 10], [8]], [, , \"(?:1[137]|2[13-68]|3[1458]|4[145]|5[1468]|6[16]|7[1467]|8[13467])(?:[03-57]\\\\d{7}|[16]\\\\d{3}(?:\\\\d{4})?|[289]\\\\d{3}(?:\\\\d(?:\\\\d{3})?)?)|94(?:000[09]|2(?:121|[2689]0\\\\d)|30[0-2]\\\\d|4(?:111|40\\\\d))\\\\d{4}\", , , , \"2123456789\", , , [6, 7, 10], [4, 5, 8]], [, , \"9(?:(?:0(?:[1-35]\\\\d|44)|(?:[13]\\\\d|2[0-2])\\\\d)\\\\d|9(?:(?:[0-2]\\\\d|44)\\\\d|5[15]0|8(?:1\\\\d|88)|9(?:0[013]|1[0134]|21|77|9[6-9])))\\\\d{5}\",\n, , , \"9123456789\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"993\\\\d{7}\", , , , \"9932123456\", , , [10]], \"IR\", 98, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\"]],\n, [, , , , , , , , , [-1]], , , [, , \"9(?:4440\\\\d{5}|6(?:0[12]|2[16-8]|3(?:08|[14]5|[23]|66)|4(?:0|80)|5[01]|6[89]|86|9[19]))\", , , , , , , [4, 5, 10]], [, , \"96(?:0[12]|2[16-8]|3(?:08|[14]5|[23]|66)|4(?:0|80)|5[01]|6[89]|86|9[19])\", , , , \"9601\", , , [4, 5]], , , [, , , , , , , , , [-1]]], IS:[, [, , \"(?:38\\\\d|[4-9])\\\\d{6}\", , , , , , , [7, 9]], [, , \"(?:4(?:1[0-24-69]|2[0-7]|[37][0-8]|4[0-245]|5[0-68]|6\\\\d|8[0-36-8])|5(?:05|[156]\\\\d|2[02578]|3[0-579]|4[03-7]|7[0-2578]|8[0-35-9]|9[013-689])|87[23])\\\\d{4}\",\n, , , \"4101234\", , , [7]], [, , \"(?:38[589]\\\\d\\\\d|6(?:1[1-8]|2[0-6]|3[027-9]|4[014679]|5[0159]|6[0-69]|70|8[06-8]|9\\\\d)|7(?:5[057]|[6-8]\\\\d|9[0-3])|8(?:2[0-59]|[3469]\\\\d|5[1-9]|8[28]))\\\\d{4}\", , , , \"6111234\"], [, , \"800\\\\d{4}\", , , , \"8001234\", , , [7]], [, , \"90\\\\d{5}\", , , , \"9011234\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"49\\\\d{5}\", , , , \"4921234\", , , [7]], \"IS\", 354, \"00|1(?:0(?:01|[12]0)|100)\", , , , , , \"00\", , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[4-9]\"]], [,\n\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"3\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"809\\\\d{4}\", , , , \"8091234\", , , [7]], , , [, , \"(?:689|8(?:7[0189]|80)|95[48])\\\\d{4}\", , , , \"6891234\", , , [7]]], IT:[, [, , \"0\\\\d{5,10}|3[0-8]\\\\d{7,10}|55\\\\d{8}|8\\\\d{5}(?:\\\\d{2,4})?|(?:1\\\\d|39)\\\\d{7,8}\", , , , , , , [6, 7, 8, 9, 10, 11, 12]], [, , \"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}\",\n, , , \"0212345678\", , , [6, 7, 8, 9, 10, 11]], [, , \"3[1-9]\\\\d{8}|3[2-9]\\\\d{7}\", , , , \"3123456789\", , , [9, 10]], [, , \"80(?:0\\\\d{3}|3)\\\\d{3}\", , , , \"800123456\", , , [6, 9]], [, , \"(?:0878\\\\d\\\\d|89(?:2|4[5-9]\\\\d))\\\\d{3}|89[45][0-4]\\\\d\\\\d|(?:1(?:44|6[346])|89(?:5[5-9]|9))\\\\d{6}\", , , , \"899123456\", , , [6, 8, 9, 10]], [, , \"84(?:[08]\\\\d{3}|[17])\\\\d{3}\", , , , \"848123456\", , , [6, 9]], [, , \"1(?:78\\\\d|99)\\\\d{6}\", , , , \"1781234567\", , , [9, 10]], [, , \"55\\\\d{8}\", , , , \"5512345678\", , , [10]], \"IT\",\n39, \"00\", , , , , , , , [[, \"(\\\\d{4,5})\", \"$1\", [\"1(?:0|9[246])\", \"1(?:0|9(?:2[2-9]|[46]))\"]], [, \"(\\\\d{6})\", \"$1\", [\"1(?:1|92)\"]], [, \"(\\\\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[245])\", \"0[13-57-9][0159]|8(?:03|4[17]|9(?:2|[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})\",\n\"$1 $2 $3\", [\"1[4679]|[38]\"]], [, \"(\\\\d{3})(\\\\d{3,4})(\\\\d{4})\", \"$1 $2 $3\", [\"0[13-57-9][0159]\"]], [, \"(\\\\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\"]]], [[, \"(\\\\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[245])\", \"0[13-57-9][0159]|8(?:03|4[17]|9(?:2|[45][0-4]))\"]], [, \"(\\\\d{4})(\\\\d{2,6})\", \"$1 $2\", [\"0(?:[13-579][2-46-8]|8[236-8])\"]],\n[, \"(\\\\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[4679]|[38]\"]], [, \"(\\\\d{3})(\\\\d{3,4})(\\\\d{4})\", \"$1 $2 $3\", [\"0[13-57-9][0159]\"]], [, \"(\\\\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\"]]], [, , , , , , , , , [-1]], 1, , [, , \"848\\\\d{6}\", , , , , , , [9]], [, , , , , , , , , [-1]], , , [, , \"3[2-8]\\\\d{9,10}\",\n, , , \"33101234501\", , , [11, 12]]], JE:[, [, , \"1534\\\\d{6}|(?:[3578]\\\\d|90)\\\\d{8}\", , , , , , , [10], [6]], [, , \"1534[0-24-8]\\\\d{5}\", , , , \"1534456789\", , , , [6]], [, , \"7(?:(?:(?:50|82)9|937)\\\\d|7(?:00[378]|97[7-9]))\\\\d{5}\", , , , \"7797712345\"], [, , \"80(?:07(?:35|81)|8901)\\\\d{4}\", , , , \"8007354567\"], [, , \"(?:8(?:4(?:4(?:4(?:05|42|69)|703)|5(?:041|800))|7(?:0002|1206))|90(?:066[59]|1810|71(?:07|55)))\\\\d{4}\", , , , \"9018105678\"], [, , , , , , , , , [-1]], [, , \"701511\\\\d{4}\", , , , \"7015115678\"],\n[, , \"56\\\\d{8}\", , , , \"5612345678\"], \"JE\", 44, \"00\", \"0\", , , \"0|([0-24-8]\\\\d{5})$\", \"1534$1\", , , , , [, , \"76(?:0[0-2]|2[356]|4[0134]|5[49]|6[0-369]|77|81|9[39])\\\\d{6}\", , , , \"7640123456\"], , , [, , , , , , , , , [-1]], [, , \"(?: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}\", , , , \"5512345678\"], , , [, , , , , , , , , [-1]]], JM:[, [, , \"(?:[58]\\\\d\\\\d|658|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"(?:658(?:2(?:[0-8]\\\\d|9[0-46-9])|[3-9]\\\\d\\\\d)|876(?:5(?:02|1[0-468]|2[35]|63)|6(?:0[1-3579]|1[0237-9]|[23]\\\\d|40|5[06]|6[2-589]|7[05]|8[04]|9[4-9])|7(?:0[2-689]|[1-6]\\\\d|8[056]|9[45])|9(?:0[1-8]|1[02378]|[2-8]\\\\d|9[2-468])))\\\\d{4}\",\n, , , \"8765230123\", , , , [7]], [, , \"(?:658295|876(?:(?:2[14-9]|[348]\\\\d)\\\\d|5(?:0[13-9]|17|[2-57-9]\\\\d|6[0-24-9])|7(?:0[07]|7\\\\d|8[1-47-9]|9[0-36-9])|9(?:[01]9|9[0579])))\\\\d{4}\", , , , \"8762101234\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"JM\", 1, \"011\", \"1\", , , \"1\", , , , , , [, , , , , , , ,\n, [-1]], , \"658|876\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], JO:[, [, , \"900\\\\d{5}|(?:(?:[268]|7\\\\d)\\\\d|32|53)\\\\d{6}\", , , , , , , [8, 9]], [, , \"(?:2(?:6(?:2[0-35-9]|3[0-578]|4[24-7]|5[0-24-8]|[6-8][023]|9[0-3])|7(?:0[1-79]|10|2[014-7]|3[0-689]|4[019]|5[0-3578]))|32(?:0[1-69]|1[1-35-7]|2[024-7]|3\\\\d|4[0-3]|[57][023]|6[03])|53(?:0[0-3]|[13][023]|2[0-59]|49|5[0-35-9]|6[15]|7[45]|8[1-6]|9[0-36-9])|6(?:2(?:[05]0|22)|3(?:00|33)|4(?:0[0-25]|1[2-7]|2[0569]|[38][07-9]|4[025689]|6[0-589]|7\\\\d|9[0-2])|5(?:[01][056]|2[034]|3[0-57-9]|4[178]|5[0-69]|6[0-35-9]|7[1-379]|8[0-68]|9[0239]))|87(?:[029]0|7[08]))\\\\d{4}\",\n, , , \"62001234\", , , [8]], [, , \"7(?:55[0-49]|(?:7[025-9]|[89][0-25-9])\\\\d)\\\\d{5}\", , , , \"790123456\", , , [9]], [, , \"80\\\\d{6}\", , , , \"80012345\", , , [8]], [, , \"900\\\\d{5}\", , , , \"90012345\", , , [8]], [, , \"85\\\\d{6}\", , , , \"85012345\", , , [8]], [, , \"70\\\\d{7}\", , , , \"700123456\", , , [9]], [, , , , , , , , , [-1]], \"JO\", 962, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\",\n[\"70\"], \"0$1\"], [, \"(\\\\d)(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"7\"], \"0$1\"]], , [, , \"74(?:66|77)\\\\d{5}\", , , , \"746612345\", , , [9]], , , [, , , , , , , , , [-1]], [, , \"8(?:10|8\\\\d)\\\\d{5}\", , , , \"88101234\", , , [8]], , , [, , , , , , , , , [-1]]], JP:[, [, , \"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]], [, , \"(?:1(?:1[235-8]|2[3-6]|3[3-9]|4[2-6]|[58][2-8]|6[2-7]|7[2-9]|9[1-9])|(?:2[2-9]|[36][1-9])\\\\d|4(?:[2-578]\\\\d|6[02-8]|9[2-59])|5(?:[2-589]\\\\d|6[1-9]|7[2-8])|7(?:[25-9]\\\\d|3[4-9]|4[02-9])|8(?:[2679]\\\\d|3[2-9]|4[5-9]|5[1-9]|8[03-9])|9(?:[2-58]\\\\d|[679][1-9]))\\\\d{6}\",\n, , , \"312345678\", , , [9]], [, , \"[7-9]0[1-9]\\\\d{7}\", , , , \"9012345678\", , , [10]], [, , \"00(?:(?:37|66)\\\\d{6,13}|(?:777(?:[01]|(?:5|8\\\\d)\\\\d)|882[1245]\\\\d\\\\d)\\\\d\\\\d)|(?:120|800\\\\d)\\\\d{6}\", , , , \"120123456\"], [, , \"990\\\\d{6}\", , , , \"990123456\", , , [9]], [, , , , , , , , , [-1]], [, , \"60\\\\d{7}\", , , , \"601234567\", , , [9]], [, , \"50[1-9]\\\\d{7}\", , , , \"5012345678\", , , [10]], \"JP\", 81, \"010\", \"0\", , , \"0\", , , , [[, \"(\\\\d{4})(\\\\d{4})\", \"$1-$2\", [\"007\", \"0077\", \"00777\", \"00777[01]\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\n\"$1-$2-$3\", [\"(?:12|57|99)0\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d)(\\\\d{4})\", \"$1-$2-$3\", [\"1(?:26|3[79]|4[56]|5[4-68]|6[3-5])|499|5(?:76|97)|746|8(?:3[89]|47|51|63)|9(?:49|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[78]|96)|477|51[24]|636)|9(?:496|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[78]|96[2457-9])|477|51[24]|636[2-57-9])|9(?:496|802|9(?:1[23]|69))|1(?:45|58)[67]\"],\n\"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"60\"], \"0$1\"], [, \"(\\\\d)(\\\\d{4})(\\\\d{4})\", \"$1-$2-$3\", [\"[36]|4(?:2[09]|7[01])\", \"[36]|4(?:2(?:0|9[02-69])|7(?:0[019]|1))\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"1(?:1|5[45]|77|88|9[69])|2(?:2[1-37]|3[0-269]|4[59]|5|6[24]|7[1-358]|8[1369]|9[0-38])|4(?:[28][1-9]|3[0-57]|[45]|6[248]|7[2-579]|9[29])|5(?:2|3[045]|4[0-369]|5[29]|8[02389]|9[0-389])|7(?:2[02-46-9]|34|[58]|6[0249]|7[57]|9[2-6])|8(?:2[124589]|3[279]|49|6[0-24-689]|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])\",\n\"1(?:1|5(?:4[018]|5[017])|77|88|9[69])|2(?:2(?:[127]|3[014-9])|3[0-269]|4[59]|5(?:[0468][01]|[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]|2[01]|8[014-6])|3[0-57]|[45]|6[248]|7[2-47]|8[1-9])|5(?:2|3[045]|4[0-369]|8[02389]|9[0-3])|7(?:2[02-46-9]|34|[58]|6[0249]|7[57]|9(?:[23]|4[0-59]|5[01569]|6[0167]))|8(?:2(?:[1258]|4[0-39]|9[0-2469])|49|6(?:[0-24]|5[0-3589]|9[01459])|7[0-468]|8[68])|9(?:[23][1-9]|4[15]|5[138]|6[1-3]|7[156]|8[189]|9(?:[1289]|3[34]|4[0178]))|(?:49|55|83)[29]|(?:264|837)[016-9]|2(?:57|93)[015-9]|(?:47[59]|59[89]|8(?:6[68]|9))[019]\",\n\"1(?:1|5(?:4[018]|5[017])|77|88|9[69])|2(?:2[127]|3[0-269]|4[59]|5(?:[0468][01]|[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]|2[01]|8[014-6])|3[0-57]|[45]|6[248]|7[2-47]|9[29])|5(?:2|3[045]|4[0-369]|5[29]|8[02389]|9[0-3])|7(?:2[02-46-9]|34|[58]|6[0249]|7[57]|9(?:[23]|4[0-59]|5[01569]|6[0167]))|8(?:2(?:[1258]|4[0-39]|9[0169])|3(?:[29]|7(?:[017-9]|6[6-8]))|49|6(?:[0-24]|5(?:[0-389]|5[23])|6(?:[01]|9[178])|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]|(?:48|8292|9[23])[1-9]|(?:47[59]|59[89]|8(?:68|9))[019]\",\n\"1(?:1|5(?:4[018]|5[017])|77|88|9[69])|2(?:2[127]|3[0-269]|4[59]|5(?:[0468][01]|[1-3]|5[0-69]|7[015-9]|9(?:17|99))|6(?:2|4[016-9])|7(?:[1-35]|8[0189])|8(?:[16]|3[0134]|9[0-5])|9(?:[028]|17|3[015-9]))|4(?:2(?:[13-79]|2[01]|8[014-6])|3[0-57]|[45]|6[248]|7[2-47]|9[29])|5(?:2|3[045]|4[0-369]|5[29]|8[02389]|9[0-3])|7(?:2[02-46-9]|34|[58]|6[0249]|7[57]|9(?:[23]|4[0-59]|5[01569]|6[0167]))|8(?:2(?:[1258]|4[0-39]|9(?:[019]|4[1-3]|6(?:[0-47-9]|5[01346-9])))|3(?:[29]|7(?:[017-9]|6[6-8]))|49|6(?:[0-24]|5(?:[0-389]|5[23])|6(?:[01]|9[178])|9[0145])|7[0-468]|8[68])|9(?:4[15]|5[138]|6[1-3]|7[156]|8[189]|9(?:[1289]|3(?:31|4[357])|4[0178]))|(?:223|8699)[014-9]|(?:48|829(?:2|66)|9[23])[1-9]|(?:47[59]|59[89]|8(?:68|9))[019]\"],\n\"0$1\"], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{4})\", \"$1-$2-$3\", [\"[14]|[29][2-9]|5[3-9]|7[2-4679]|8(?:[246-9]|3[3-8]|5[2-9])\", \"[14]|[29][2-9]|5[3-9]|7[2-4679]|8(?:[246-9]|3(?:[3-6][2-9]|7|8[2-5])|5[2-9])\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d{2})(\\\\d{3,4})\", \"$1-$2-$3\", [\"007\"]], [, \"(\\\\d{4})(\\\\d{2})(\\\\d{4})\", \"$1-$2-$3\", [\"008\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"800\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1-$2-$3\", [\"[2579]|80\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{3,4})\", \"$1-$2-$3\", [\"0\"]], [, \"(\\\\d{4})(\\\\d{4})(\\\\d{4,5})\",\n\"$1-$2-$3\", [\"0\"]], [, \"(\\\\d{4})(\\\\d{5})(\\\\d{5,6})\", \"$1-$2-$3\", [\"0\"]], [, \"(\\\\d{4})(\\\\d{6})(\\\\d{6,7})\", \"$1-$2-$3\", [\"0\"]]], [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1-$2-$3\", [\"(?:12|57|99)0\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d)(\\\\d{4})\", \"$1-$2-$3\", [\"1(?:26|3[79]|4[56]|5[4-68]|6[3-5])|499|5(?:76|97)|746|8(?:3[89]|47|51|63)|9(?:49|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[78]|96)|477|51[24]|636)|9(?:496|802|9(?:1[23]|69))|1(?:45|58)[67]\",\n\"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[78]|96[2457-9])|477|51[24]|636[2-57-9])|9(?:496|802|9(?:1[23]|69))|1(?:45|58)[67]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"60\"], \"0$1\"], [, \"(\\\\d)(\\\\d{4})(\\\\d{4})\", \"$1-$2-$3\", [\"[36]|4(?:2[09]|7[01])\", \"[36]|4(?:2(?:0|9[02-69])|7(?:0[019]|1))\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"1(?:1|5[45]|77|88|9[69])|2(?:2[1-37]|3[0-269]|4[59]|5|6[24]|7[1-358]|8[1369]|9[0-38])|4(?:[28][1-9]|3[0-57]|[45]|6[248]|7[2-579]|9[29])|5(?:2|3[045]|4[0-369]|5[29]|8[02389]|9[0-389])|7(?:2[02-46-9]|34|[58]|6[0249]|7[57]|9[2-6])|8(?:2[124589]|3[279]|49|6[0-24-689]|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])\",\n\"1(?:1|5(?:4[018]|5[017])|77|88|9[69])|2(?:2(?:[127]|3[014-9])|3[0-269]|4[59]|5(?:[0468][01]|[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]|2[01]|8[014-6])|3[0-57]|[45]|6[248]|7[2-47]|8[1-9])|5(?:2|3[045]|4[0-369]|8[02389]|9[0-3])|7(?:2[02-46-9]|34|[58]|6[0249]|7[57]|9(?:[23]|4[0-59]|5[01569]|6[0167]))|8(?:2(?:[1258]|4[0-39]|9[0-2469])|49|6(?:[0-24]|5[0-3589]|9[01459])|7[0-468]|8[68])|9(?:[23][1-9]|4[15]|5[138]|6[1-3]|7[156]|8[189]|9(?:[1289]|3[34]|4[0178]))|(?:49|55|83)[29]|(?:264|837)[016-9]|2(?:57|93)[015-9]|(?:47[59]|59[89]|8(?:6[68]|9))[019]\",\n\"1(?:1|5(?:4[018]|5[017])|77|88|9[69])|2(?:2[127]|3[0-269]|4[59]|5(?:[0468][01]|[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]|2[01]|8[014-6])|3[0-57]|[45]|6[248]|7[2-47]|9[29])|5(?:2|3[045]|4[0-369]|5[29]|8[02389]|9[0-3])|7(?:2[02-46-9]|34|[58]|6[0249]|7[57]|9(?:[23]|4[0-59]|5[01569]|6[0167]))|8(?:2(?:[1258]|4[0-39]|9[0169])|3(?:[29]|7(?:[017-9]|6[6-8]))|49|6(?:[0-24]|5(?:[0-389]|5[23])|6(?:[01]|9[178])|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]|(?:48|8292|9[23])[1-9]|(?:47[59]|59[89]|8(?:68|9))[019]\",\n\"1(?:1|5(?:4[018]|5[017])|77|88|9[69])|2(?:2[127]|3[0-269]|4[59]|5(?:[0468][01]|[1-3]|5[0-69]|7[015-9]|9(?:17|99))|6(?:2|4[016-9])|7(?:[1-35]|8[0189])|8(?:[16]|3[0134]|9[0-5])|9(?:[028]|17|3[015-9]))|4(?:2(?:[13-79]|2[01]|8[014-6])|3[0-57]|[45]|6[248]|7[2-47]|9[29])|5(?:2|3[045]|4[0-369]|5[29]|8[02389]|9[0-3])|7(?:2[02-46-9]|34|[58]|6[0249]|7[57]|9(?:[23]|4[0-59]|5[01569]|6[0167]))|8(?:2(?:[1258]|4[0-39]|9(?:[019]|4[1-3]|6(?:[0-47-9]|5[01346-9])))|3(?:[29]|7(?:[017-9]|6[6-8]))|49|6(?:[0-24]|5(?:[0-389]|5[23])|6(?:[01]|9[178])|9[0145])|7[0-468]|8[68])|9(?:4[15]|5[138]|6[1-3]|7[156]|8[189]|9(?:[1289]|3(?:31|4[357])|4[0178]))|(?:223|8699)[014-9]|(?:48|829(?:2|66)|9[23])[1-9]|(?:47[59]|59[89]|8(?:68|9))[019]\"],\n\"0$1\"], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{4})\", \"$1-$2-$3\", [\"[14]|[29][2-9]|5[3-9]|7[2-4679]|8(?:[246-9]|3[3-8]|5[2-9])\", \"[14]|[29][2-9]|5[3-9]|7[2-4679]|8(?:[246-9]|3(?:[3-6][2-9]|7|8[2-5])|5[2-9])\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"800\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1-$2-$3\", [\"[2579]|80\"], \"0$1\"]], [, , \"20\\\\d{8}\", , , , \"2012345678\", , , [10]], , , [, , \"00(?:777(?:[01]|(?:5|8\\\\d)\\\\d)|882[1245]\\\\d\\\\d)\\\\d\\\\d|00(?:37|66)\\\\d{6,13}\"], [, , \"570\\\\d{6}\", , , , \"570123456\",\n, , [9]], , , [, , , , , , , , , [-1]]], KE:[, [, , \"(?:[17]\\\\d\\\\d|900)\\\\d{6}|(?:2|80)0\\\\d{6,7}|[4-6]\\\\d{6,8}\", , , , , , , [7, 8, 9, 10]], [, , \"(?:4[245]|5[2-79]|6[01457-9])\\\\d{5,7}|(?:4[136]|5[08]|62)\\\\d{7}|(?:[24]0|51|66)\\\\d{6,7}\", , , , \"202012345\", , , [7, 8, 9]], [, , \"(?:1(?:0[0-2]|1[01])|7\\\\d\\\\d)\\\\d{6}\", , , , \"712123456\", , , [9]], [, , \"800[24-8]\\\\d{5,6}\", , , , \"800223456\", , , [9, 10]], [, , \"900[02-9]\\\\d{5}\", , , , \"900223456\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , ,\n[-1]], [, , , , , , , , , [-1]], \"KE\", 254, \"000\", \"0\", , , \"0\", , , , [[, \"(\\\\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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], KG:[, [, , \"8\\\\d{9}|(?:[235-8]\\\\d|99)\\\\d{7}\", , , , , , , [9, 10], [5, 6]], [, , \"(?:3(?:1(?:[256]\\\\d|3[1-9]|47)|2(?:22|3[0-479]|6[0-7])|4(?:22|5[6-9]|6\\\\d)|5(?:22|3[4-7]|59|6\\\\d)|6(?:22|5[35-7]|6\\\\d)|7(?:22|3[468]|4[1-9]|59|[67]\\\\d)|9(?:22|4[1-8]|6\\\\d))|6(?:09|12|2[2-4])\\\\d)\\\\d{5}\",\n, , , \"312123456\", , , [9], [5, 6]], [, , \"8801\\\\d{5}|(?:2(?:0[0-35]|2\\\\d)|5(?:0[0-57-9]|[124-7]\\\\d)|7(?:[07]\\\\d|55)|99[05-9])\\\\d{6}\", , , , \"700123456\", , , [9]], [, , \"800\\\\d{6,7}\", , , , \"800123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"KG\", 996, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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})\",\n\"$1 $2 $3 $4\", [\"8\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], KH:[, [, , \"1\\\\d{9}|[1-9]\\\\d{7,8}\", , , , , , , [8, 9, 10], [6, 7]], [, , \"23(?:4(?:[2-4]|[56]\\\\d)|[568]\\\\d\\\\d)\\\\d{4}|23[236-9]\\\\d{5}|(?:2[4-6]|3[2-6]|4[2-4]|[5-7][2-5])(?:(?:[237-9]|4[56]|5\\\\d)\\\\d{5}|6\\\\d{5,6})\", , , , \"23756789\", , , [8, 9], [6, 7]], [, , \"(?:(?:1[28]|3[18]|9[67])\\\\d|6[016-9]|7(?:[07-9]|[16]\\\\d)|8(?:[013-79]|8\\\\d))\\\\d{6}|(?:1\\\\d|9[0-57-9])\\\\d{6}|(?:2[3-6]|3[2-6]|4[2-4]|[5-7][2-5])48\\\\d{5}\",\n, , , \"91234567\", , , [8, 9]], [, , \"1800(?:1\\\\d|2[019])\\\\d{4}\", , , , \"1800123456\", , , [10]], [, , \"1900(?:1\\\\d|2[09])\\\\d{4}\", , , , \"1900123456\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"KH\", 855, \"00[14-9]\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{3,4})\", \"$1 $2 $3\", [\"[1-9]\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"1\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , ,\n, , [-1]]], KI:[, [, , \"(?:[37]\\\\d|6[0-79])\\\\d{6}|(?:[2-48]\\\\d|50)\\\\d{3}\", , , , , , , [5, 8]], [, , \"(?:[24]\\\\d|3[1-9]|50|65(?:02[12]|12[56]|22[89]|[3-5]00)|7(?:27\\\\d\\\\d|3100|5(?:02[12]|12[56]|22[89]|[34](?:00|81)|500))|8[0-5])\\\\d{3}\", , , , \"31234\"], [, , \"73140\\\\d{3}|(?:630[01]|730[0-5])\\\\d{4}|[67]200[01]\\\\d{3}\", , , , \"72001234\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"30(?:0[01]\\\\d\\\\d|12(?:11|20))\\\\d\\\\d\", , , , \"30010000\",\n, , [8]], \"KI\", 686, \"00\", \"0\", , , \"0\", , , , , , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], KM:[, [, , \"[3478]\\\\d{6}\", , , , , , , [7]], [, , \"7[4-7]\\\\d{5}\", , , , \"7712345\"], [, , \"[34]\\\\d{6}\", , , , \"3212345\"], [, , , , , , , , , [-1]], [, , \"8\\\\d{6}\", , , , \"8001234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"KM\", 269, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3\", [\"[3478]\"]]],\n, [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], KN:[, [, , \"(?:[58]\\\\d\\\\d|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"869(?:2(?:29|36)|302|4(?:6[015-9]|70))\\\\d{4}\", , , , \"8692361234\", , , , [7]], [, , \"869(?:5(?:5[6-8]|6[5-7])|66\\\\d|76[02-7])\\\\d{4}\", , , , \"8697652917\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\",\n, , , \"5002345678\"], [, , , , , , , , , [-1]], \"KN\", 1, \"011\", \"1\", , , \"1|([2-7]\\\\d{6})$\", \"869$1\", , , , , [, , , , , , , , , [-1]], , \"869\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], KP:[, [, , \"85\\\\d{6}|(?:19\\\\d|2)\\\\d{7}\", , , , , , , [8, 10], [6, 7]], [, , \"(?:2\\\\d|85)\\\\d{6}\", , , , \"21234567\", , , [8], [6, 7]], [, , \"19[1-3]\\\\d{7}\", , , , \"1921234567\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , ,\n, , , , [-1]], [, , , , , , , , , [-1]], \"KP\", 850, \"00|99\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"8\"], \"0$1\"], [, \"(\\\\d)(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"2\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"1\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , \"238[02-9]\\\\d{4}|2(?:[0-24-9]\\\\d|3[0-79])\\\\d{5}\", , , , , , , [8]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], KR:[, [, , \"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}\",\n, , , , , , [5, 6, 8, 9, 10, 11, 12, 13, 14], [3, 4, 7]], [, , \"(?:2|3[1-3]|[46][1-4]|5[1-5])[1-9]\\\\d{6,7}|(?:3[1-3]|[46][1-4]|5[1-5])1\\\\d{2,3}\", , , , \"22123456\", , , [5, 6, 8, 9, 10], [3, 4, 7]], [, , \"10[01]\\\\d{6}|1(?:0[2-9]|[126-9]\\\\d)\\\\d{6,7}\", , , , \"1020000000\", , , [9, 10]], [, , \"00(?:308\\\\d{6,7}|798\\\\d{7,9})|(?:00368|80)\\\\d{7}\", , , , \"801234567\", , , [9, 11, 12, 13, 14]], [, , \"60[2-9]\\\\d{6}\", , , , \"602345678\", , , [9]], [, , , , , , , , , [-1]], [, , \"50\\\\d{8,9}\", , , , \"5012345678\",\n, , [10, 11]], [, , \"70\\\\d{8}\", , , , \"7012345678\", , , [10]], \"KR\", 82, \"00(?:[125689]|3(?:[46]5|91)|7(?:00|27|3|55|6[126]))\", \"0\", , , \"0(8(?:[1-46-8]|5\\\\d\\\\d))?\", , , , [[, \"(\\\\d{5})\", \"$1\", [\"1[016-9]1\", \"1[016-9]11\", \"1[016-9]114\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3,4})\", \"$1-$2\", [\"(?:3[1-3]|[46][1-4]|5[1-5])1\"], \"0$1\", \"0$CC-$1\"], [, \"(\\\\d{4})(\\\\d{4})\", \"$1-$2\", [\"1\"]], [, \"(\\\\d)(\\\\d{3,4})(\\\\d{4})\", \"$1-$2-$3\", [\"2\"], \"0$1\", \"0$CC-$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"60|8\"], \"0$1\",\n\"0$CC-$1\"], [, \"(\\\\d{2})(\\\\d{3,4})(\\\\d{4})\", \"$1-$2-$3\", [\"[1346]|5[1-5]\"], \"0$1\", \"0$CC-$1\"], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1-$2-$3\", [\"[57]\"], \"0$1\", \"0$CC-$1\"], [, \"(\\\\d{5})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"003\", \"0030\"]], [, \"(\\\\d{2})(\\\\d{5})(\\\\d{4})\", \"$1-$2-$3\", [\"5\"], \"0$1\", \"0$CC-$1\"], [, \"(\\\\d{5})(\\\\d{3,4})(\\\\d{4})\", \"$1 $2 $3\", [\"0\"]], [, \"(\\\\d{5})(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3 $4\", [\"0\"]]], [[, \"(\\\\d{2})(\\\\d{3,4})\", \"$1-$2\", [\"(?:3[1-3]|[46][1-4]|5[1-5])1\"], \"0$1\", \"0$CC-$1\"],\n[, \"(\\\\d{4})(\\\\d{4})\", \"$1-$2\", [\"1\"]], [, \"(\\\\d)(\\\\d{3,4})(\\\\d{4})\", \"$1-$2-$3\", [\"2\"], \"0$1\", \"0$CC-$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"60|8\"], \"0$1\", \"0$CC-$1\"], [, \"(\\\\d{2})(\\\\d{3,4})(\\\\d{4})\", \"$1-$2-$3\", [\"[1346]|5[1-5]\"], \"0$1\", \"0$CC-$1\"], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1-$2-$3\", [\"[57]\"], \"0$1\", \"0$CC-$1\"], [, \"(\\\\d{2})(\\\\d{5})(\\\\d{4})\", \"$1-$2-$3\", [\"5\"], \"0$1\", \"0$CC-$1\"]], [, , \"15\\\\d{7,8}\", , , , \"1523456789\", , , [9, 10]], , , [, , \"00(?:3(?:08\\\\d{6,7}|68\\\\d{7})|798\\\\d{7,9})\",\n, , , , , , [11, 12, 13, 14]], [, , \"1(?:5(?:22|44|66|77|88|99)|6(?:[07]0|44|6[16]|88)|8(?:00|33|55|77|99))\\\\d{4}\", , , , \"15441234\", , , [8]], , , [, , , , , , , , , [-1]]], KW:[, [, , \"(?:18|[2569]\\\\d\\\\d)\\\\d{5}\", , , , , , , [7, 8]], [, , \"2(?:[23]\\\\d\\\\d|4(?:[1-35-9]\\\\d|44)|5(?:0[034]|[2-46]\\\\d|5[1-3]|7[1-7]))\\\\d{4}\", , , , \"22345678\", , , [8]], [, , \"(?:52(?:22|5[25])|6(?:222|70[013-9]|93[039])|9(?:11[01]|333|702))\\\\d{4}|(?:5(?:[05]\\\\d|1[0-7]|6[56])|6(?:0[034679]|5[015-9]|6\\\\d|7[67]|9[069])|9(?:0[09]|22|4[01479]|55|6[0679]|7[1-9]|8[057-9]|9\\\\d))\\\\d{5}\",\n, , , \"50012345\", , , [8]], [, , \"18\\\\d{5}\", , , , \"1801234\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"KW\", 965, \"00\", , , , , , , , [[, \"(\\\\d{4})(\\\\d{3,4})\", \"$1 $2\", [\"[169]|2(?:[235]|4[1-35-9])|52\"]], [, \"(\\\\d{3})(\\\\d{5})\", \"$1 $2\", [\"[25]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], KY:[, [, , \"(?:345|[58]\\\\d\\\\d|900)\\\\d{7}\", , , , , , , [10], [7]],\n[, , \"345(?:2(?:22|44)|444|6(?:23|38|40)|7(?:4[35-79]|6[6-9]|77)|8(?:00|1[45]|25|[48]8)|9(?:14|4[035-9]))\\\\d{4}\", , , , \"3452221234\", , , , [7]], [, , \"345(?:32[1-9]|5(?:1[67]|2[5-79]|4[6-9]|50|76)|649|9(?:1[67]|2[2-9]|3[689]))\\\\d{4}\", , , , \"3453231234\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002345678\"], [, , \"(?:345976|900[2-9]\\\\d\\\\d)\\\\d{4}\", , , , \"9002345678\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , ,\n, , , , [-1]], \"KY\", 1, \"011\", \"1\", , , \"1|([2-9]\\\\d{6})$\", \"345$1\", , , , , [, , \"345849\\\\d{4}\", , , , \"3458491234\"], , \"345\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], KZ:[, [, , \"33622\\\\d{5}|(?:7\\\\d|80)\\\\d{8}\", , , , , , , [10], [5, 6]], [, , \"(?:33622|7(?:1(?:0(?:[23]\\\\d|4[0-3]|59|63)|1(?:[23]\\\\d|4[0-79]|59)|2(?:[23]\\\\d|59)|3(?:2\\\\d|3[0-79]|4[0-35-9]|59)|4(?:[24]\\\\d|3[013-9]|5[1-9])|5(?:2\\\\d|3[1-9]|4[0-7]|59)|6(?:[2-4]\\\\d|5[19]|61)|72\\\\d|8(?:[27]\\\\d|3[1-46-9]|4[0-5]))|2(?:1(?:[23]\\\\d|4[46-9]|5[3469])|2(?:2\\\\d|3[0679]|46|5[12679])|3(?:[2-4]\\\\d|5[139])|4(?:2\\\\d|3[1-35-9]|59)|5(?:[23]\\\\d|4[0-246-8]|59|61)|6(?:2\\\\d|3[1-9]|4[0-4]|59)|7(?:[2379]\\\\d|40|5[279])|8(?:[23]\\\\d|4[0-3]|59)|9(?:2\\\\d|3[124578]|59))))\\\\d{5}\",\n, , , \"7123456789\", , , , [5, 6]], [, , \"7(?:0[0-25-8]|47|6[02-4]|7[15-8]|85)\\\\d{7}\", , , , \"7710009998\"], [, , \"800\\\\d{7}\", , , , \"8001234567\"], [, , \"809\\\\d{7}\", , , , \"8091234567\"], [, , , , , , , , , [-1]], [, , \"808\\\\d{7}\", , , , \"8081234567\"], [, , \"751\\\\d{7}\", , , , \"7511234567\"], \"KZ\", 7, \"810\", \"8\", , , \"8\", , \"8~10\", , , , [, , , , , , , , , [-1]], , \"33|7\", [, , \"751\\\\d{7}\"], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], LA:[, [, , \"(?:2\\\\d|3)\\\\d{8}|(?:[235-8]\\\\d|41)\\\\d{6}\",\n, , , , , , [8, 9, 10], [6]], [, , \"(?:2[13]|[35-7][14]|41|8[1468])\\\\d{6}\", , , , \"21212862\", , , [8], [6]], [, , \"20(?:[29]\\\\d|5[24-689]|7[6-8])\\\\d{6}\", , , , \"2023123456\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"LA\", 856, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"2[13]|3[14]|[4-8]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{3})\", \"$1 $2 $3 $4\", [\"3\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{3})(\\\\d{3})\",\n\"$1 $2 $3 $4\", [\"2\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"30\\\\d{7}\", , , , \"301234567\", , , [9]], , , [, , , , , , , , , [-1]]], LB:[, [, , \"[7-9]\\\\d{7}|[13-9]\\\\d{6}\", , , , , , , [7, 8]], [, , \"(?:(?:[14-69]\\\\d|8[02-9])\\\\d|7(?:[2-57]\\\\d|62|8[0-7]|9[04-9]))\\\\d{4}\", , , , \"1123456\", , , [7]], [, , \"(?:(?:3|81)\\\\d|7(?:[01]\\\\d|6[013-9]|8[89]|9[1-3]))\\\\d{5}\", , , , \"71123456\"], [, , , , , , , , , [-1]], [, , \"9[01]\\\\d{6}\", , , , \"90123456\", , , [8]], [, , \"80\\\\d{6}\",\n, , , \"80123456\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"LB\", 961, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\", [\"[7-9]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], LC:[, [, , \"(?:[58]\\\\d\\\\d|758|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"758(?:4(?:30|5\\\\d|6[2-9]|8[0-2])|57[0-2]|638)\\\\d{4}\",\n, , , \"7584305678\", , , , [7]], [, , \"758(?:28[4-7]|384|4(?:6[01]|8[4-9])|5(?:1[89]|20|84)|7(?:1[2-9]|2\\\\d|3[01]))\\\\d{4}\", , , , \"7582845678\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"LC\", 1, \"011\", \"1\", , , \"1|([2-7]\\\\d{6})$\", \"758$1\", , , , , [, , , , , , , , , [-1]], , \"758\", [, , , , , , , , ,\n[-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], LI:[, [, , \"90\\\\d{5}|(?:[2378]|6\\\\d\\\\d)\\\\d{6}\", , , , , , , [7, 9]], [, , \"(?:2(?:01|1[27]|22|3\\\\d|6[02-578]|96)|3(?:33|40|7[0135-7]|8[048]|9[0269]))\\\\d{4}\", , , , \"2345678\", , , [7]], [, , \"756\\\\d{4}|(?:6(?:499|5[0-3]\\\\d|6(?:0[0-7]|10|2[06-9]|39))|7[37-9])\\\\d{5}\", , , , \"660234567\"], [, , \"80(?:02[28]|9\\\\d\\\\d)\\\\d\\\\d\", , , , \"8002222\", , , [7]], [, , \"90(?:02[258]|1(?:23|3[14])|66[136])\\\\d\\\\d\", , , , \"9002222\", , , [7]], [, , , , , ,\n, , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"LI\", 423, \"00\", \"0\", , , \"0|(10(?:01|20|66))\", , , , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3\", [\"[237-9]\"], , \"$CC $1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"69\"], , \"$CC $1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"6\"], , \"$CC $1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"870(?:28|87)\\\\d\\\\d\", , , , \"8702812\", , , [7]], , , [, , \"697(?:56|[78]\\\\d)\\\\d{4}\", , , , \"697861234\", , , [9]]], LK:[,\n[, , \"(?:[1-7]\\\\d|[89]1)\\\\d{7}\", , , , , , , [9], [7]], [, , \"(?:[189]1|2[13-7]|3[1-8]|4[157]|5[12457]|6[35-7])[2-57]\\\\d{6}\", , , , \"112345678\", , , , [7]], [, , \"7[0-25-8]\\\\d{7}\", , , , \"712345678\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"LK\", 94, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\"]], , [, , , ,\n, , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"1973\\\\d{5}\", , , , \"197312345\"], , , [, , , , , , , , , [-1]]], LR:[, [, , \"(?:2|33|5\\\\d|77|88)\\\\d{7}|[45]\\\\d{6}\", , , , , , , [7, 8, 9]], [, , \"(?:2\\\\d{3}|33333)\\\\d{4}\", , , , \"21234567\", , , [8, 9]], [, , \"(?:(?:330|555|(?:77|88)\\\\d)\\\\d|4[67])\\\\d{5}|5\\\\d{6}\", , , , \"770123456\", , , [7, 9]], [, , , , , , , , , [-1]], [, , \"332(?:02|[34]\\\\d)\\\\d{4}\", , , , \"332021234\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , ,\n, , [-1]], \"LR\", 231, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d)(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[45]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"2\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[3578]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], LS:[, [, , \"(?:[256]\\\\d\\\\d|800)\\\\d{5}\", , , , , , , [8]], [, , \"2\\\\d{7}\", , , , \"22123456\"], [, , \"[56]\\\\d{7}\", , , , \"50123456\"], [, , \"800[256]\\\\d{4}\", , ,\n, \"80021234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"LS\", 266, \"00\", , , , , , , , [[, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[2568]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], LT:[, [, , \"(?:[3469]\\\\d|52|[78]0)\\\\d{6}\", , , , , , , [8]], [, , \"(?:3[1478]|4[124-6]|52)\\\\d{6}\", , , , \"31234567\"], [, , \"6\\\\d{7}\", , , , \"61234567\"], [, , \"800\\\\d{5}\", , , , \"80012345\"],\n[, , \"9(?:0[0239]|10)\\\\d{5}\", , , , \"90012345\"], [, , \"808\\\\d{5}\", , , , \"80812345\"], [, , \"700\\\\d{5}\", , , , \"70012345\"], [, , , , , , , , , [-1]], \"LT\", 370, \"00\", \"8\", , , \"[08]\", , , , [[, \"(\\\\d)(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"52[0-79]\"], \"(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]], , [, , , , , , , , , [-1]], , , [, , , ,\n, , , , , [-1]], [, , \"70[67]\\\\d{5}\", , , , \"70712345\"], , , [, , , , , , , , , [-1]]], LU:[, [, , \"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]], [, , \"(?:35[013-9]|80[2-9]|90[89])\\\\d{1,8}|(?:2[2-9]|3[0-46-9]|[457]\\\\d|8[13-9]|9[2-579])\\\\d{2,9}\", , , , \"27123456\"], [, , \"6(?:[269][18]|5[158]|7[189]|81)\\\\d{6}\", , , , \"628123456\", , , [9]], [, , \"800\\\\d{5}\", , , , \"80012345\", , , [8]], [, , \"90[015]\\\\d{5}\", , , , \"90012345\", , , [8]],\n[, , \"801\\\\d{5}\", , , , \"80112345\", , , [8]], [, , , , , , , , , [-1]], [, , \"20(?:1\\\\d{5}|[2-689]\\\\d{1,7})\", , , , \"20201234\", , , [4, 5, 6, 7, 8, 9, 10]], \"LU\", 352, \"00\", , , , \"(15(?:0[06]|1[12]|[35]5|4[04]|6[26]|77|88|99)\\\\d)\", , , , [[, \"(\\\\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])\"], , \"$CC $1\"], [, \"(\\\\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])\"], , \"$CC $1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{3})\",\n\"$1 $2 $3\", [\"20[2-689]\"], , \"$CC $1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{1,2})\", \"$1 $2 $3 $4\", [\"2(?:[0367]|4[3-8])\"], , \"$CC $1\"], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{3})\", \"$1 $2 $3\", [\"80[01]|90[015]\"], , \"$CC $1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{3})\", \"$1 $2 $3 $4\", [\"20\"], , \"$CC $1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"6\"], , \"$CC $1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{1,2})\", \"$1 $2 $3 $4 $5\", [\"2(?:[0367]|4[3-8])\"], , \"$CC $1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{1,5})\", \"$1 $2 $3 $4\",\n[\"[3-57]|8[13-9]|9(?:0[89]|[2-579])|(?:2|80)[2-9]\"], , \"$CC $1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], LV:[, [, , \"(?:[268]\\\\d|90)\\\\d{6}\", , , , , , , [8]], [, , \"6\\\\d{7}\", , , , \"63123456\"], [, , \"2\\\\d{7}\", , , , \"21234567\"], [, , \"80\\\\d{6}\", , , , \"80123456\"], [, , \"90\\\\d{6}\", , , , \"90123456\"], [, , \"81\\\\d{6}\", , , , \"81123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"LV\", 371, \"00\", , , , , , , , [[,\n\"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[269]|8[01]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], LY:[, [, , \"(?:[2569]\\\\d|71)\\\\d{7}\", , , , , , , [9], [7]], [, , \"(?:2[13-5]|5[1347]|6[1-479]|71)\\\\d{7}\", , , , \"212345678\", , , , [7]], [, , \"9[1-6]\\\\d{7}\", , , , \"912345678\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"LY\", 218, \"00\", \"0\",\n, , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{7})\", \"$1-$2\", [\"[25-79]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MA:[, [, , \"[5-8]\\\\d{8}\", , , , , , , [9]], [, , \"5(?:29|38)[89]0\\\\d{4}|5(?:2(?:[015-7]\\\\d|2[2-9]|3[2-57]|4[2-46-8]|8[235-7]|90)|3(?:[0-4]\\\\d|[57][2-9]|6[2-8]|80|9[3-9])|(?:4[067]|5[03])\\\\d)\\\\d{5}\", , , , \"520123456\"], [, , \"692[12]\\\\d{5}|(?:6(?:[0-7]\\\\d|8[0-247-9]|9[013-9])|7(?:0[06-8]|6[1267]|7[0-27]))\\\\d{6}\", ,\n, , \"650123456\"], [, , \"80\\\\d{7}\", , , , \"801234567\"], [, , \"89\\\\d{7}\", , , , \"891234567\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"5924[0-2]\\\\d{4}\", , , , \"592401234\"], \"MA\", 212, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{5})(\\\\d{4})\", \"$1-$2\", [\"5(?:29|38)\", \"5(?:29|38)[89]\"], \"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\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{7})\", \"$1-$2\", [\"8\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{6})\",\n\"$1-$2\", [\"[5-7]\"], \"0$1\"]], , [, , , , , , , , , [-1]], 1, , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MC:[, [, , \"870\\\\d{5}|(?:[349]|6\\\\d)\\\\d{7}\", , , , , , , [8, 9]], [, , \"(?:870|9[2-47-9]\\\\d)\\\\d{5}\", , , , \"99123456\", , , [8]], [, , \"4(?:4\\\\d|5[1-9])\\\\d{5}|(?:3|6\\\\d)\\\\d{7}\", , , , \"612345678\"], [, , \"90\\\\d{6}\", , , , \"90123456\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"MC\", 377,\n\"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{2})\", \"$1 $2 $3\", [\"8\"]], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"4\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[39]\"]], [, \"(\\\\d)(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4 $5\", [\"6\"], \"0$1\"]], [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"4\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[39]\"]], [, \"(\\\\d)(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4 $5\", [\"6\"], \"0$1\"]], [, , , , , , , , , [-1]],\n, , [, , \"870\\\\d{5}\", , , , , , , [8]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MD:[, [, , \"(?:[235-7]\\\\d|[89]0)\\\\d{6}\", , , , , , , [8]], [, , \"(?:(?:2[1-9]|3[1-79])\\\\d|5(?:33|5[257]))\\\\d{5}\", , , , \"22212345\"], [, , \"(?:562|6\\\\d\\\\d|7(?:[189]\\\\d|6[07]|7[457-9]))\\\\d{5}\", , , , \"62112345\"], [, , \"800\\\\d{5}\", , , , \"80012345\"], [, , \"90[056]\\\\d{5}\", , , , \"90012345\"], [, , \"808\\\\d{5}\", , , , \"80812345\"], [, , , , , , , , , [-1]], [, , \"3[08]\\\\d{6}\", , , , \"30123456\"], \"MD\", 373, \"00\",\n\"0\", , , \"0\", , , , [[, \"(\\\\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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"803\\\\d{5}\", , , , \"80312345\"], , , [, , , , , , , , , [-1]]], ME:[, [, , \"(?:20|[3-79]\\\\d)\\\\d{6}|80\\\\d{6,7}\", , , , , , , [8, 9], [6]], [, , \"(?:20[2-8]|3(?:[0-2][2-7]|3[24-7])|4(?:0[2-467]|1[2467])|5(?:[01][2467]|2[2-467]))\\\\d{5}\", , , , \"30234567\",\n, , [8], [6]], [, , \"6(?:00|3[024]|6[0-25]|[7-9]\\\\d)\\\\d{5}\", , , , \"67622901\", , , [8]], [, , \"80(?:[0-2578]|9\\\\d)\\\\d{5}\", , , , \"80080002\"], [, , \"9(?:4[1568]|5[178])\\\\d{5}\", , , , \"94515151\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"78[1-49]\\\\d{5}\", , , , \"78108780\", , , [8]], \"ME\", 382, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{3,4})\", \"$1 $2 $3\", [\"[2-9]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"77[1-9]\\\\d{5}\", , , , \"77273012\",\n, , [8]], , , [, , , , , , , , , [-1]]], MF:[, [, , \"(?:590|69\\\\d)\\\\d{6}\", , , , , , , [9]], [, , \"590(?:0[079]|[14]3|[27][79]|30|5[0-268]|87)\\\\d{4}\", , , , \"590271234\"], [, , \"69(?:0\\\\d\\\\d|1(?:2[29]|3[0-5]))\\\\d{4}\", , , , \"690001234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"MF\", 590, \"00\", \"0\", , , \"0\", , , , , , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , ,\n, , , , , , [-1]]], MG:[, [, , \"[23]\\\\d{8}\", , , , , , , [9], [7]], [, , \"2072[29]\\\\d{4}|20(?:2\\\\d|4[47]|5[3467]|6[279]|7[35]|8[268]|9[245])\\\\d{5}\", , , , \"202123456\", , , , [7]], [, , \"3[2-49]\\\\d{7}\", , , , \"321234567\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"22\\\\d{7}\", , , , \"221234567\"], \"MG\", 261, \"00\", \"0\", , , \"0|([24-9]\\\\d{6})$\", \"20$1\", , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{3})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[23]\"], \"0$1\"]], , [,\n, , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MH:[, [, , \"329\\\\d{4}|(?:[256]\\\\d|45)\\\\d{5}\", , , , , , , [7]], [, , \"(?:247|528|625)\\\\d{4}\", , , , \"2471234\"], [, , \"(?:(?:23|54)5|329|45[56])\\\\d{4}\", , , , \"2351234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"635\\\\d{4}\", , , , \"6351234\"], \"MH\", 692, \"011\", \"1\", , , \"1\", , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1-$2\", [\"[2-6]\"]]],\n, [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MK:[, [, , \"[2-578]\\\\d{7}\", , , , , , , [8], [6, 7]], [, , \"(?:2(?:[23]\\\\d|5[0-24578]|6[01]|82)|3(?:1[3-68]|[23][2-68]|4[23568])|4(?:[23][2-68]|4[3-68]|5[2568]|6[25-8]|7[24-68]|8[4-68]))\\\\d{5}\", , , , \"22012345\", , , , [6, 7]], [, , \"7(?:(?:[0-25-8]\\\\d|3[2-4]|9[23])\\\\d|4(?:21|60))\\\\d{4}\", , , , \"72345678\"], [, , \"800\\\\d{5}\", , , , \"80012345\"], [, , \"5[02-9]\\\\d{6}\", , , , \"50012345\"],\n[, , \"8(?:0[1-9]|[1-9]\\\\d)\\\\d{5}\", , , , \"80123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"MK\", 389, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d)(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"2\"], \"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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], ML:[, [, , \"(?:[246-9]\\\\d|50)\\\\d{6}\", , , , , , , [8]],\n[, , \"2(?:07[0-8]|12[67])\\\\d{4}|(?:2(?:02|1[4-689])|4(?:0[0-4]|4[1-39]))\\\\d{5}\", , , , \"20212345\"], [, , \"2(?:079|17\\\\d)\\\\d{4}|(?:50|[679]\\\\d|8[239])\\\\d{6}\", , , , \"65012345\"], [, , \"80\\\\d{6}\", , , , \"80012345\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"ML\", 223, \"00\", , , , , , , , [[, \"(\\\\d{4})\", \"$1\", [\"67[057-9]|74[045]\", \"67(?:0[09]|[59]9|77|8[89])|74(?:0[02]|44|55)\"]], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[24-9]\"]]],\n[[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[24-9]\"]]], [, , , , , , , , , [-1]], , , [, , \"80\\\\d{6}\"], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MM:[, [, , \"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], [5]], [, , \"(?:1(?:(?:2\\\\d|3[56]|[89][0-6])\\\\d|4(?:2[2-469]|39|46|6[25]|7[0-2])|6)|2(?:2(?:00|8[34])|4(?:0\\\\d|2[246]|39|46|62|7[0-2])|51\\\\d\\\\d)|4(?:2(?:2\\\\d\\\\d|48[0-2])|[34]20\\\\d)|6(?:0(?:[23]|88\\\\d)|(?:124|320|[56]2\\\\d)\\\\d|247[23]|4(?:2[04]\\\\d|47[23])|7(?:(?:3\\\\d|8[01459])\\\\d|4(?:39|60|7[01])))|8(?:[1-3]2\\\\d|5(?:2\\\\d|4[1-9]|51))\\\\d)\\\\d{4}|5(?:2(?:2\\\\d{5,6}|47[023]\\\\d{4})|(?:347[23]|42(?:1|86)|(?:522|[68]20)\\\\d|7(?:20\\\\d|48[0-2])|9(?:20\\\\d|47[01]))\\\\d{4})|7(?:120\\\\d{4,5}|(?:425\\\\d|5(?:202|96\\\\d))\\\\d{4})|(?:(?:1[2-6]\\\\d|4(?:2[24-8]|356|[46][2-6]|5[35])|5(?:[27][2-8]|3[2-68]|4[25-8]|5[23]|6[2-4]|8[25-7]|9[2-7])|6(?:[19]20|42[03-6]|(?:52|7[45])\\\\d)|7(?:[04][25-8]|[15][235-7]|22|3[2-4]))\\\\d|8(?:[135]2\\\\d\\\\d|2(?:2\\\\d\\\\d|320)))\\\\d{3}|25\\\\d{5,6}|(?:2[2-9]|43[235-7]|6(?:1[2356]|[24][2-6]|3[256]|5[2-4]|6[2-8]|7[235-7]|8[245]|9[24])|8(?:1[235689]|2[2-8]|32|4[24-7]|5[245]|6[23]))\\\\d{4}|(?:4[35]|5[48]|63|7[0145]|8[13])470\\\\d{4}|(?:4[35]|5[48]|63|7[0145]|8[13])4\\\\d{4}\",\n, , , \"1234567\", , , [6, 7, 8, 9], [5]], [, , \"(?:17[01]|9(?:2(?:[0-4]|[56]\\\\d\\\\d)|(?:3(?:[0-36]|4\\\\d)|6[7-9]\\\\d|7(?:3|5[0-2]|[6-9]\\\\d)|8(?:8[7-9]|9\\\\d))\\\\d|4(?:(?:[0245]\\\\d|[1379])\\\\d|88)|5[0-6]|9(?:[089]|[5-7]\\\\d\\\\d))\\\\d)\\\\d{4}|9[69]1\\\\d{6}|9[68]\\\\d{6}\", , , , \"92123456\", , , [7, 8, 9, 10]], [, , \"80080(?:[01][1-9]|2\\\\d)\\\\d{3}\", , , , \"8008001234\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"1333\\\\d{4}|[12]468\\\\d{4}\", , , , \"13331234\", , , [8]],\n\"MM\", 95, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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})\",\n\"$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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MN:[, [, , \"[12]\\\\d{7,9}|[57-9]\\\\d{7}\", , , , , , , [8, 9, 10], [4, 5, 6]], [, , \"[12](?:3[2-8]|4[2-68]|5[1-4689])\\\\d{6,7}|(?:11(?:3\\\\d|4[568])|(?:(?:21|5[0568])\\\\d|70[0-5])\\\\d)\\\\d{4}|[12]2(?:[1-3]\\\\d{5,6}|7\\\\d{6})\", , , , \"50123456\", ,\n, , [4, 5, 6]], [, , \"(?:8(?:[05689]\\\\d|3[01])|9(?:[014-9]\\\\d|20|3[0-4]))\\\\d{5}\", , , , \"88123456\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"7(?:100|5(?:0[0579]|1[015]|[389]5|[57][57])|(?:6[0167]|7\\\\d|8[01])\\\\d)\\\\d{4}\", , , , \"75153456\", , , [8]], \"MN\", 976, \"001\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{4})\", \"$1 $2 $3\", [\"[12]1\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[57-9]\"]], [, \"(\\\\d{3})(\\\\d{5,6})\", \"$1 $2\",\n[\"[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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MO:[, [, , \"(?:28|[68]\\\\d)\\\\d{6}\", , , , , , , [8]], [, , \"(?:28[2-57-9]|8(?:11|[2-57-9]\\\\d))\\\\d{5}\", , , , \"28212345\"], [, , \"6(?:[2356]\\\\d\\\\d|8(?:[02][5-9]|[1478]\\\\d|[356][0-4]))\\\\d{4}\",\n, , , \"66123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"MO\", 853, \"00\", , , , , , , , [[, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[268]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MP:[, [, , \"[58]\\\\d{9}|(?:67|90)0\\\\d{7}\", , , , , , , [10], [7]], [, , \"670(?:2(?:3[3-7]|56|8[5-8])|32[1-38]|4(?:33|8[348])|5(?:32|55|88)|6(?:64|70|82)|78[3589]|8[3-9]8|989)\\\\d{4}\",\n, , , \"6702345678\", , , , [7]], [, , \"670(?:2(?:3[3-7]|56|8[5-8])|32[1-38]|4(?:33|8[348])|5(?:32|55|88)|6(?:64|70|82)|78[3589]|8[3-9]8|989)\\\\d{4}\", , , , \"6702345678\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"MP\", 1, \"011\", \"1\", , , \"1|([2-9]\\\\d{6})$\", \"670$1\", , 1, , , [, , , , , , , , , [-1]], ,\n\"670\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MQ:[, [, , \"(?:596|69\\\\d)\\\\d{6}\", , , , , , , [9]], [, , \"596(?:0[0-7]|10|2[7-9]|3[05-9]|4[0-46-8]|[5-7]\\\\d|8[09]|9[4-8])\\\\d{4}\", , , , \"596301234\"], [, , \"69(?:6(?:[0-47-9]\\\\d|5[0-6]|6[0-4])|727)\\\\d{4}\", , , , \"696201234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"MQ\", 596, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\n\"$1 $2 $3 $4\", [\"[56]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MR:[, [, , \"(?:[2-4]\\\\d\\\\d|800)\\\\d{5}\", , , , , , , [8]], [, , \"(?:25[08]|35\\\\d|45[1-7])\\\\d{5}\", , , , \"35123456\"], [, , \"[2-4][0-46-9]\\\\d{6}\", , , , \"22123456\"], [, , \"800\\\\d{5}\", , , , \"80012345\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"MR\", 222, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\n\"$1 $2 $3 $4\", [\"[2-48]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MS:[, [, , \"66449\\\\d{5}|(?:[58]\\\\d\\\\d|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"664491\\\\d{4}\", , , , \"6644912345\", , , , [7]], [, , \"66449[2-6]\\\\d{4}\", , , , \"6644923456\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\",\n, , , \"5002345678\"], [, , , , , , , , , [-1]], \"MS\", 1, \"011\", \"1\", , , \"1|(4\\\\d{6})$\", \"664$1\", , , , , [, , , , , , , , , [-1]], , \"664\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MT:[, [, , \"3550\\\\d{4}|(?:[2579]\\\\d\\\\d|800)\\\\d{5}\", , , , , , , [8]], [, , \"2(?:0(?:[19]\\\\d|3[1-4]|6[059])|[1-357]\\\\d\\\\d)\\\\d{4}\", , , , \"21001234\"], [, , \"(?:7(?:210|[79]\\\\d\\\\d)|9(?:2(?:1[01]|31)|69[67]|8(?:1[1-3]|89|97)|9\\\\d\\\\d))\\\\d{4}\", , , , \"96961234\"], [, , \"800[3467]\\\\d{4}\",\n, , , \"80071234\"], [, , \"5(?:0(?:0(?:37|43)|(?:6\\\\d|70|9[0168])\\\\d)|[12]\\\\d0[1-5])\\\\d{3}\", , , , \"50037123\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"3550\\\\d{4}\", , , , \"35501234\"], \"MT\", 356, \"00\", , , , , , , , [[, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[2357-9]\"]]], , [, , \"7117\\\\d{4}\", , , , \"71171234\"], , , [, , , , , , , , , [-1]], [, , \"501\\\\d{5}\", , , , \"50112345\"], , , [, , , , , , , , , [-1]]], MU:[, [, , \"(?:[2-468]|5\\\\d)\\\\d{6}\", , , , , , , [7, 8]], [, , \"(?:2(?:[03478]\\\\d|1[0-7]|6[0-79])|4(?:[013568]\\\\d|2[4-7])|54(?:[34]\\\\d|71)|6\\\\d\\\\d|8(?:14|3[129]))\\\\d{4}\",\n, , , \"54480123\"], [, , \"5(?:4(?:2[1-389]|7[1-9])|87[15-8])\\\\d{4}|5(?:2[589]|4[3489]|7\\\\d|8[0-689]|9[0-8])\\\\d{5}\", , , , \"52512345\", , , [8]], [, , \"80[0-2]\\\\d{4}\", , , , \"8001234\", , , [7]], [, , \"30\\\\d{5}\", , , , \"3012345\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"3(?:20|9\\\\d)\\\\d{4}\", , , , \"3201234\", , , [7]], \"MU\", 230, \"0(?:0|[24-7]0|3[03])\", , , , , , \"020\", , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[2-46]|8[013]\"]], [, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"5\"]]], , [, , , ,\n, , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MV:[, [, , \"(?:800|9[0-57-9]\\\\d)\\\\d{7}|[34679]\\\\d{6}\", , , , , , , [7, 10]], [, , \"(?:3(?:0[0-3]|3[0-59])|6(?:[57][02468]|6[024-68]|8[024689]))\\\\d{4}\", , , , \"6701234\", , , [7]], [, , \"46[46]\\\\d{4}|(?:7[2-9]|9[13-9])\\\\d{5}\", , , , \"7712345\", , , [7]], [, , \"800\\\\d{7}\", , , , \"8001234567\", , , [10]], [, , \"900\\\\d{7}\", , , , \"9001234567\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]],\n[, , , , , , , , , [-1]], \"MV\", 960, \"0(?:0|19)\", , , , , , \"00\", , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1-$2\", [\"[3467]|9[13-9]\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[89]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"4[05]0\\\\d{4}\", , , , \"4001234\", , , [7]], , , [, , , , , , , , , [-1]]], MW:[, [, , \"1\\\\d{6}(?:\\\\d{2})?|(?:[23]1|77|88|99)\\\\d{7}\", , , , , , , [7, 9]], [, , \"(?:1[2-9]|21\\\\d\\\\d)\\\\d{5}\", , , , \"1234567\"], [, , \"111\\\\d{6}|(?:77|88|99)\\\\d{7}\", , , , \"991234567\",\n, , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"31\\\\d{7}\", , , , \"310123456\", , , [9]], \"MW\", 265, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"3\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[17-9]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]],\n[, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MX:[, [, , \"(?:1(?:[01467]\\\\d|[2359][1-9]|8[1-79])|[2-9]\\\\d)\\\\d{8}\", , , , , , , [10, 11], [7, 8]], [, , \"(?:2(?:0[01]|2[1-9]|3[1-35-8]|4[13-9]|7[1-689]|8[1-578]|9[467])|3(?:1[1-79]|[2458][1-9]|3\\\\d|7[1-8]|9[1-5])|4(?:1[1-57-9]|[24-7][1-9]|3[1-8]|8[1-35-9]|9[2-689])|5(?:[56]\\\\d|88|9[1-79])|6(?:1[2-68]|[2-4][1-9]|5[1-3689]|6[1-57-9]|7[1-7]|8[67]|9[4-8])|7(?:[1-467][1-9]|5[13-9]|8[1-69]|9[17])|8(?:1\\\\d|2[13-689]|3[1-6]|4[124-6]|6[1246-9]|7[1-378]|9[12479])|9(?:1[346-9]|2[1-4]|3[2-46-8]|5[1348]|[69][1-9]|7[12]|8[1-8]))\\\\d{7}\",\n, , , \"2001234567\", , , [10], [7, 8]], [, , \"(?:1(?:2(?:2[1-9]|3[1-35-8]|4[13-9]|7[1-689]|8[1-578]|9[467])|3(?:1[1-79]|[2458][1-9]|3\\\\d|7[1-8]|9[1-5])|4(?:1[1-57-9]|[24-7][1-9]|3[1-8]|8[1-35-9]|9[2-689])|5(?:[56]\\\\d|88|9[1-79])|6(?:1[2-68]|[2-4][1-9]|5[1-3689]|6[1-57-9]|7[1-7]|8[67]|9[4-8])|7(?:[1-467][1-9]|5[13-9]|8[1-69]|9[17])|8(?:1\\\\d|2[13-689]|3[1-6]|4[124-6]|6[1246-9]|7[1-378]|9[12479])|9(?:1[346-9]|2[1-4]|3[2-46-8]|5[1348]|[69][1-9]|7[12]|8[1-8]))|2(?:2[1-9]|3[1-35-8]|4[13-9]|7[1-689]|8[1-578]|9[467])|3(?:1[1-79]|[2458][1-9]|3\\\\d|7[1-8]|9[1-5])|4(?:1[1-57-9]|[24-7][1-9]|3[1-8]|8[1-35-9]|9[2-689])|5(?:[56]\\\\d|88|9[1-79])|6(?:1[2-68]|[2-4][1-9]|5[1-3689]|6[1-57-9]|7[1-7]|8[67]|9[4-8])|7(?:[1-467][1-9]|5[13-9]|8[1-69]|9[17])|8(?:1\\\\d|2[13-689]|3[1-6]|4[124-6]|6[1246-9]|7[1-378]|9[12479])|9(?:1[346-9]|2[1-4]|3[2-46-8]|5[1348]|[69][1-9]|7[12]|8[1-8]))\\\\d{7}\",\n, , , \"12221234567\", , , , [7, 8]], [, , \"8(?:00|88)\\\\d{7}\", , , , \"8001234567\", , , [10]], [, , \"900\\\\d{7}\", , , , \"9001234567\", , , [10]], [, , \"300\\\\d{7}\", , , , \"3001234567\", , , [10]], [, , \"500\\\\d{7}\", , , , \"5001234567\", , , [10]], [, , , , , , , , , [-1]], \"MX\", 52, \"0[09]\", \"01\", , , \"0(?:[12]|4[45])|1\", , \"00\", , [[, \"(\\\\d{5})\", \"$1\", [\"53\"]], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"33|5[56]|81\"], , , 1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[2-9]\"], , , 1], [, \"(\\\\d)(\\\\d{2})(\\\\d{4})(\\\\d{4})\",\n\"$2 $3 $4\", [\"1(?:33|5[56]|81)\"], , , 1], [, \"(\\\\d)(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$2 $3 $4\", [\"1\"], , , 1]], [[, \"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"33|5[56]|81\"], , , 1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[2-9]\"], , , 1], [, \"(\\\\d)(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$2 $3 $4\", [\"1(?:33|5[56]|81)\"], , , 1], [, \"(\\\\d)(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$2 $3 $4\", [\"1\"], , , 1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MY:[, [,\n, \"1\\\\d{8,9}|(?:3\\\\d|[4-9])\\\\d{7}\", , , , , , , [8, 9, 10], [6, 7]], [, , \"(?:3(?:2[0-36-9]|3[0-368]|4[0-278]|5[0-24-8]|6[0-467]|7[1246-9]|8\\\\d|9[0-57])\\\\d|4(?:2[0-689]|[3-79]\\\\d|8[1-35689])|5(?:2[0-589]|[3468]\\\\d|5[0-489]|7[1-9]|9[23])|6(?:2[2-9]|3[1357-9]|[46]\\\\d|5[0-6]|7[0-35-9]|85|9[015-8])|7(?:[2579]\\\\d|3[03-68]|4[0-8]|6[5-9]|8[0-35-9])|8(?:[24][2-8]|3[2-5]|5[2-7]|6[2-589]|7[2-578]|[89][2-9])|9(?:0[57]|13|[25-7]\\\\d|[3489][0-8]))\\\\d{5}\", , , , \"323856789\", , , [8, 9], [6, 7]], [, , \"1(?:4400|8(?:47|8[27])[0-4])\\\\d{4}|1(?:0(?:[23568]\\\\d|4[0-6]|7[016-9]|9[0-8])|1(?:[1-5]\\\\d\\\\d|6(?:0[5-9]|[1-9]\\\\d))|(?:[23679][2-9]|4[235-9]|59\\\\d)\\\\d|8(?:1[23]|[236]\\\\d|4[06]|5[7-9]|7[016-9]|8[01]|9[0-8]))\\\\d{5}\",\n, , , \"123456789\", , , [9, 10]], [, , \"1[378]00\\\\d{6}\", , , , \"1300123456\", , , [10]], [, , \"1600\\\\d{6}\", , , , \"1600123456\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"154(?:6(?:0\\\\d|1[0-3])|8(?:[25]1|4[0189]|7[0-4679]))\\\\d{4}\", , , , \"1546012345\", , , [10]], \"MY\", 60, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d)(\\\\d{3})(\\\\d{4})\", \"$1-$2 $3\", [\"[4-79]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3,4})\", \"$1-$2 $3\", [\"1(?:[0249]|[367][2-9]|8[1-9])|8\"], \"0$1\"], [, \"(\\\\d)(\\\\d{4})(\\\\d{4})\",\n\"$1-$2 $3\", [\"3\"], \"0$1\"], [, \"(\\\\d)(\\\\d{3})(\\\\d{2})(\\\\d{4})\", \"$1-$2-$3-$4\", [\"1[36-8]\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1-$2 $3\", [\"15\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1-$2 $3\", [\"1\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MZ:[, [, , \"(?:2|8\\\\d)\\\\d{7}\", , , , , , , [8, 9]], [, , \"2(?:[1346]\\\\d|5[0-2]|[78][12]|93)\\\\d{5}\", , , , \"21123456\", , , [8]], [, , \"8[2-7]\\\\d{7}\", , , , \"821234567\", , , [9]],\n[, , \"800\\\\d{6}\", , , , \"800123456\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"MZ\", 258, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{3,4})\", \"$1 $2 $3\", [\"2|8[2-7]\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"8\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], NA:[, [, , \"[68]\\\\d{7,8}\", , , , , , , [8, 9]], [, , \"6(?:1(?:[02-4]\\\\d\\\\d|17)|2(?:17|54\\\\d|69|70)|3(?:17|2[0237]\\\\d|34|6[289]|7[01]|81)|4(?:17|(?:27|41|5[25])\\\\d|69|7[01])|5(?:17|2[236-8]\\\\d|69|7[01])|6(?:17|26\\\\d|38|42|69|7[01])|7(?:17|(?:2[2-4]|30)\\\\d|6[89]|7[01]))\\\\d{4}|6(?:1(?:2[2-7]|3[01378]|4[0-4]|69|7[014])|25[0-46-8]|32\\\\d|4(?:2[0-27]|4[016]|5[0-357])|52[02-9]|62[56]|7(?:2[2-69]|3[013]))\\\\d{4}\",\n, , , \"61221234\"], [, , \"(?:60|8[1245])\\\\d{7}\", , , , \"811234567\", , , [9]], [, , \"80\\\\d{7}\", , , , \"800123456\", , , [9]], [, , \"8701\\\\d{5}\", , , , \"870123456\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"8(?:3\\\\d\\\\d|86)\\\\d{5}\", , , , \"88612345\"], \"NA\", 264, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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})\",\n\"$1 $2 $3\", [\"8\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], NC:[, [, , \"[2-57-9]\\\\d{5}\", , , , , , , [6]], [, , \"(?:2[03-9]|3[0-5]|4[1-7]|88)\\\\d{4}\", , , , \"201234\"], [, , \"(?:5[0-4]|[79]\\\\d|8[0-79])\\\\d{4}\", , , , \"751234\"], [, , , , , , , , , [-1]], [, , \"36\\\\d{4}\", , , , \"366711\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"NC\", 687, \"00\", , , , , , , , [[, \"(\\\\d{3})\", \"$1\", [\"5[6-8]\"]],\n[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1.$2.$3\", [\"[2-57-9]\"]]], [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1.$2.$3\", [\"[2-57-9]\"]]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], NE:[, [, , \"[0289]\\\\d{7}\", , , , , , , [8]], [, , \"2(?:0(?:20|3[1-8]|4[13-5]|5[14]|6[14578]|7[1-578])|1(?:4[145]|5[14]|6[14-68]|7[169]|88))\\\\d{4}\", , , , \"20201234\"], [, , \"(?:8[014589]|9\\\\d)\\\\d{6}\", , , , \"93123456\"], [, , \"08\\\\d{6}\", , , , \"08123456\"], [, , \"09\\\\d{6}\",\n, , , \"09123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"NE\", 227, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"08\"]], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[089]|2[01]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], NF:[, [, , \"[13]\\\\d{5}\", , , , , , , [6], [5]], [, , \"(?:1(?:06|17|28|39)|3[0-2]\\\\d)\\\\d{3}\", , , , \"106609\", , , , [5]], [, , \"3[58]\\\\d{4}\",\n, , , \"381234\", , , , [5]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"NF\", 672, \"00\", , , , \"([0-258]\\\\d{4})$\", \"3$1\", , , [[, \"(\\\\d{2})(\\\\d{4})\", \"$1 $2\", [\"1\"]], [, \"(\\\\d)(\\\\d{5})\", \"$1 $2\", [\"3\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], NG:[, [, , \"(?:[124-7]|9\\\\d{3})\\\\d{6}|[1-9]\\\\d{7}|[78]\\\\d{9,13}\", , , , , , , [7, 8, 10, 11, 12,\n13, 14], [5, 6]], [, , \"(?:(?:[1-356]\\\\d|4[02-8]|7[0-79]|8[2-9])\\\\d|9(?:0[3-9]|[1-9]\\\\d))\\\\d{5}|(?:[12]\\\\d|4[147]|5[14579]|6[1578]|7[0-3578])\\\\d{5}\", , , , \"18040123\", , , [7, 8], [5, 6]], [, , \"(?:707[0-3]|8(?:01|19)[01])\\\\d{6}|(?:70[1-689]|8(?:0[2-9]|1[0-8])|90[1-35-9])\\\\d{7}\", , , , \"8021234567\", , , [10]], [, , \"800\\\\d{7,11}\", , , , \"80017591759\", , , [10, 11, 12, 13, 14]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"NG\", 234, \"009\",\n\"0\", , , \"0\", , , , [[, \"(\\\\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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"700\\\\d{7,11}\", ,\n, , \"7001234567\", , , [10, 11, 12, 13, 14]], , , [, , , , , , , , , [-1]]], NI:[, [, , \"(?:1800|[25-8]\\\\d{3})\\\\d{4}\", , , , , , , [8]], [, , \"2\\\\d{7}\", , , , \"21234567\"], [, , \"(?:5(?:5[0-7]|[78]\\\\d)|6(?:20|3[035]|4[045]|5[05]|77|8[1-9]|9[059])|(?:7[5-8]|8\\\\d)\\\\d)\\\\d{5}\", , , , \"81234567\"], [, , \"1800\\\\d{4}\", , , , \"18001234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"NI\", 505, \"00\", , , , , , , , [[, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[125-8]\"]]],\n, [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], NL:[, [, , \"(?:[124-7]\\\\d\\\\d|3(?:[02-9]\\\\d|1[0-8]))\\\\d{6}|[89]\\\\d{6,9}|1\\\\d{4,5}\", , , , , , , [5, 6, 7, 8, 9, 10]], [, , \"(?:1(?:[035]\\\\d|1[13-578]|6[124-8]|7[24]|8[0-467])|2(?:[0346]\\\\d|2[2-46-9]|5[125]|9[479])|3(?:[03568]\\\\d|1[3-8]|2[01]|4[1-8])|4(?:[0356]\\\\d|1[1-368]|7[58]|8[15-8]|9[23579])|5(?:[0358]\\\\d|[19][1-9]|2[1-57-9]|4[13-8]|6[126]|7[0-3578])|7\\\\d\\\\d)\\\\d{6}\", , , , \"101234567\",\n, , [9]], [, , \"6[1-58]\\\\d{7}\", , , , \"612345678\", , , [9]], [, , \"800\\\\d{4,7}\", , , , \"8001234\", , , [7, 8, 9, 10]], [, , \"90[069]\\\\d{4,7}\", , , , \"9061234\", , , [7, 8, 9, 10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"(?:85|91)\\\\d{7}\", , , , \"851234567\", , , [9]], \"NL\", 31, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{4})\", \"$1\", [\"1[238]|[34]\"]], [, \"(\\\\d{2})(\\\\d{3,4})\", \"$1 $2\", [\"14\"]], [, \"(\\\\d{6})\", \"$1\", [\"1\"]], [, \"(\\\\d{3})(\\\\d{4,7})\", \"$1 $2\", [\"[89]0\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{7})\",\n\"$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-57-9]\"], \"0$1\"]], [[, \"(\\\\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})\",\n\"$1 $2 $3\", [\"[1-57-9]\"], \"0$1\"]], [, , \"66\\\\d{7}\", , , , \"662345678\", , , [9]], , , [, , \"140(?:1[035]|2[0346]|3[03568]|4[0356]|5[0358]|8[458])|140(?:1[16-8]|2[259]|3[124]|4[17-9]|5[124679]|7)\\\\d\", , , , , , , [5, 6]], [, , \"140(?:1[035]|2[0346]|3[03568]|4[0356]|5[0358]|8[458])|(?:140(?:1[16-8]|2[259]|3[124]|4[17-9]|5[124679]|7)|8[478]\\\\d{6})\\\\d\", , , , \"14020\", , , [5, 6, 9]], , , [, , , , , , , , , [-1]]], NO:[, [, , \"(?:0|[2-9]\\\\d{3})\\\\d{4}\", , , , , , , [5, 8]], [, , \"(?:2[1-4]|3[1-3578]|5[1-35-7]|6[1-4679]|7[0-8])\\\\d{6}\",\n, , , \"21234567\", , , [8]], [, , \"(?:4[015-8]|5[89]|9\\\\d)\\\\d{6}\", , , , \"40612345\", , , [8]], [, , \"80[01]\\\\d{5}\", , , , \"80012345\", , , [8]], [, , \"82[09]\\\\d{5}\", , , , \"82012345\", , , [8]], [, , \"810(?:0[0-6]|[2-8]\\\\d)\\\\d{3}\", , , , \"81021234\", , , [8]], [, , \"880\\\\d{5}\", , , , \"88012345\", , , [8]], [, , \"85[0-5]\\\\d{5}\", , , , \"85012345\", , , [8]], \"NO\", 47, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{3})\", \"$1 $2 $3\", [\"[489]\"]], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[235-7]\"]]],\n, [, , , , , , , , , [-1]], 1, \"[02-689]|7[0-8]\", [, , , , , , , , , [-1]], [, , \"(?:0[2-9]|81(?:0(?:0[7-9]|1\\\\d)|5\\\\d\\\\d))\\\\d{3}\", , , , \"02000\"], , , [, , \"81[23]\\\\d{5}\", , , , \"81212345\", , , [8]]], NP:[, [, , \"9\\\\d{9}|[1-9]\\\\d{7}\", , , , , , , [8, 10], [6, 7]], [, , \"1[0-6]\\\\d{6}|(?:2[13-79]|3[135-8]|4[146-9]|5[135-7]|6[13-9]|7[15-9]|8[1-46-9]|9[1-79])[2-6]\\\\d{5}\", , , , \"14567890\", , , [8], [6, 7]], [, , \"9(?:6[0-3]|7[245]|8[0-24-68])\\\\d{7}\", , , , \"9841234567\", , , [10]], [, , , , , , , , ,\n[-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"NP\", 977, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d)(\\\\d{7})\", \"$1-$2\", [\"1[2-6]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{6})\", \"$1-$2\", [\"[1-8]|9(?:[1-579]|6[2-6])\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{7})\", \"$1-$2\", [\"9\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], NR:[, [, , \"(?:444|55\\\\d|888)\\\\d{4}\", , , , , , , [7]], [, , \"(?:444|888)\\\\d{4}\",\n, , , \"4441234\"], [, , \"55[4-9]\\\\d{4}\", , , , \"5551234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"NR\", 674, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[458]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], NU:[, [, , \"(?:[47]|888\\\\d)\\\\d{3}\", , , , , , , [4, 7]], [, , \"[47]\\\\d{3}\", , , , \"7012\", , , [4]], [, , \"888[4-9]\\\\d{3}\",\n, , , \"8884012\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"NU\", 683, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"8\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], NZ:[, [, , \"[28]\\\\d{7,9}|[346]\\\\d{7}|(?:508|[79]\\\\d)\\\\d{6,7}\", , , , , , , [8, 9, 10], [7]], [, , \"24099\\\\d{3}|(?:3[2-79]|[49][2-9]|6[235-9]|7[2-57-9])\\\\d{6}\",\n, , , \"32345678\", , , [8], [7]], [, , \"2[0-28]\\\\d{8}|2[0-27-9]\\\\d{7}|21\\\\d{6}\", , , , \"211234567\"], [, , \"508\\\\d{6,7}|80\\\\d{6,8}\", , , , \"800123456\"], [, , \"90\\\\d{6,7}\", , , , \"900123456\", , , [8, 9]], [, , , , , , , , , [-1]], [, , \"70\\\\d{7}\", , , , \"701234567\", , , [9]], [, , , , , , , , , [-1]], \"NZ\", 64, \"0(?:0|161)\", \"0\", , , \"0\", , \"00\", , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{3})\", \"$1 $2 $3\", [\"[89]0\"], \"0$1\"], [, \"(\\\\d)(\\\\d{3})(\\\\d{4})\", \"$1-$2 $3\", [\"24|[346]|7[2-57-9]|9[2-9]\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3,4})\",\n\"$1 $2 $3\", [\"2(?:10|74)|[59]|80\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3,4})(\\\\d{4})\", \"$1 $2 $3\", [\"2[028]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3,5})\", \"$1 $2 $3\", [\"2(?:[169]|7[0-35-9])|7|86\"], \"0$1\"]], , [, , \"[28]6\\\\d{6,7}\", , , , \"26123456\", , , [8, 9]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], OM:[, [, , \"(?:[279]\\\\d{3}|500)\\\\d{4}|8007\\\\d{4,5}\", , , , , , , [7, 8, 9]], [, , \"2[2-6]\\\\d{6}\", , , , \"23123456\", , , [8]], [, , \"90[1-9]\\\\d{5}|(?:7[129]|9[1-9])\\\\d{6}\",\n, , , \"92123456\", , , [8]], [, , \"500\\\\d{4}|8007\\\\d{4,5}\", , , , \"80071234\"], [, , \"900\\\\d{5}\", , , , \"90012345\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"OM\", 968, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4,6})\", \"$1 $2\", [\"[58]\"]], [, \"(\\\\d{2})(\\\\d{6})\", \"$1 $2\", [\"2\"]], [, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[79]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], PA:[, [, , \"(?:[1-57-9]|6\\\\d)\\\\d{6}\",\n, , , , , , [7, 8]], [, , \"(?:1(?:0\\\\d|1[479]|2[37]|3[0137]|4[17]|5[05]|[68][58]|7[0167]|9[39])|2(?:[0235-79]\\\\d|1[0-7]|4[013-9]|8[026-9])|3(?:[089]\\\\d|1[014-7]|2[0-35]|33|4[0-579]|55|6[068]|7[06-8])|4(?:00|3[0-579]|4\\\\d|7[0-57-9])|5(?:[01]\\\\d|2[0-7]|[56]0|79)|7(?:0[09]|2[0-26-8]|3[03]|4[04]|5[05-9]|6[05]|7[0-24-9]|8[7-9]|90)|8(?:09|2[89]|3\\\\d|4[0-24-689]|5[014]|8[02])|9(?:0[5-9]|1[0135-8]|2[036-9]|3[35-79]|40|5[0457-9]|6[05-9]|7[04-9]|8[35-8]|9\\\\d))\\\\d{4}\", , , , \"2001234\", , , [7]], [, , \"(?:1[16]1|21[89]|6(?:[02-9]\\\\d|1[0-6])\\\\d|8(?:1[01]|7[23]))\\\\d{4}\",\n, , , \"61234567\"], [, , \"800\\\\d{4}\", , , , \"8001234\", , , [7]], [, , \"(?:8(?:22|55|60|7[78]|86)|9(?:00|81))\\\\d{4}\", , , , \"8601234\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"PA\", 507, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1-$2\", [\"[1-57-9]\"]], [, \"(\\\\d{4})(\\\\d{4})\", \"$1-$2\", [\"6\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], PE:[, [, , \"(?:[14-8]|9\\\\d)\\\\d{7}\", , , , , ,\n, [8, 9], [6, 7]], [, , \"19(?:[02-68]\\\\d|1[035-9]|7[0-689]|9[1-9])\\\\d{4}|(?:1[0-8]|4[1-4]|5[1-46]|6[1-7]|7[2-46]|8[2-4])\\\\d{6}\", , , , \"11234567\", , , [8], [6, 7]], [, , \"9\\\\d{8}\", , , , \"912345678\", , , [9]], [, , \"800\\\\d{5}\", , , , \"80012345\", , , [8]], [, , \"805\\\\d{5}\", , , , \"80512345\", , , [8]], [, , \"801\\\\d{5}\", , , , \"80112345\", , , [8]], [, , \"80[24]\\\\d{5}\", , , , \"80212345\", , , [8]], [, , , , , , , , , [-1]], \"PE\", 51, \"19(?:1[124]|77|90)00\", \"0\", \" Anexo \", , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{5})\",\n\"$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\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], PF:[, [, , \"[48]\\\\d{7}|4\\\\d{5}\", , , , , , , [6, 8]], [, , \"4(?:[09][4-689]\\\\d|4)\\\\d{4}\", , , , \"40412345\"], [, , \"8[7-9]\\\\d{6}\", , , , \"87123456\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]],\n[, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"PF\", 689, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3\", [\"44\"]], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[48]\"]]], , [, , , , , , , , , [-1]], , , [, , \"44\\\\d{4}\", , , , , , , [6]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], PG:[, [, , \"(?:180|[78]\\\\d{3})\\\\d{4}|(?:[2-589]\\\\d|64)\\\\d{5}\", , , , , , , [7, 8]], [, , \"(?:64[1-9]|7730|85[02-46-9])\\\\d{4}|(?:3[0-2]|4[257]|5[34]|77[0-24]|9[78])\\\\d{5}\",\n, , , \"3123456\"], [, , \"775\\\\d{5}|(?:7[0-689]|81)\\\\d{6}\", , , , \"70123456\", , , [8]], [, , \"180\\\\d{4}\", , , , \"1801234\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"2(?:0[0-47]|7[568])\\\\d{4}\", , , , \"2751234\", , , [7]], \"PG\", 675, \"00|140[1-3]\", , , , , , \"00\", , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"18|[2-69]|85\"]], [, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[78]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [,\n, , , , , , , , [-1]]], PH:[, [, , \"1800\\\\d{7,9}|(?:2|[89]\\\\d{4})\\\\d{5}|[2-8]\\\\d{8}|[28]\\\\d{7}\", , , , , , , [6, 8, 9, 10, 11, 12, 13], [4, 5, 7]], [, , \"(?:(?:2[3-8]|3[2-68]|4[2-9]|5[2-6]|6[2-58]|7[24578])\\\\d{3}|88(?:22\\\\d\\\\d|42))\\\\d{4}|2\\\\d{5}(?:\\\\d{2})?|8[2-8]\\\\d{7}\", , , , \"21234567\", , , [6, 8, 9, 10], [4, 5, 7]], [, , \"(?:81[37]|9(?:0[5-9]|1[0-24-9]|2[0-35-9]|[35]\\\\d|4[235-9]|6[0-25-8]|7[1-9]|8[19]|9[4-9]))\\\\d{7}\", , , , \"9051234567\", , , [10]], [, , \"1800\\\\d{7,9}\", , , , \"180012345678\", ,\n, [11, 12, 13]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"PH\", 63, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d)(\\\\d{5})\", \"$1 $2\", [\"2\"], \"(0$1)\"], [, \"(\\\\d)(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"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})\",\n\"$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\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], PK:[,\n[, , \"122\\\\d{6}|[24-8]\\\\d{10,11}|9(?:[013-9]\\\\d{8,10}|2(?:[01]\\\\d\\\\d|2(?:[025-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], [5, 6, 7]], [, , \"(?:(?:21|42)[2-9]|58[126])\\\\d{7}|(?:2[25]|4[0146-9]|5[1-35-7]|6[1-8]|7[14]|8[16]|91)[2-9]\\\\d{6}|(?: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]))[2-9]\\\\d{5,6}\", , , , \"2123456789\", , ,\n[9, 10], [5, 6, 7, 8]], [, , \"3(?:[014]\\\\d|2[0-5]|3[0-7]|55|64)\\\\d{7}\", , , , \"3012345678\", , , [10]], [, , \"800\\\\d{5}\", , , , \"80012345\", , , [8]], [, , \"900\\\\d{5}\", , , , \"90012345\", , , [8]], [, , , , , , , , , [-1]], [, , \"122\\\\d{6}\", , , , \"122044444\", , , [9]], [, , , , , , , , , [-1]], \"PK\", 92, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{2})\", \"$1 $2 $3\", [\"[89]0\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d{5})\", \"$1 $2\", [\"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]\"],\n\"(0$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{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})\",\n\"$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)\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"(?:2(?:[125]|3[2358]|4[2-4]|9[2-8])|4(?:[0-246-9]|5[3479])|5(?:[1-35-7]|4[2-467])|6(?:0[468]|[1-8])|7(?:[14]|2[236])|8(?:[16]|2[2-689]|3[23578]|4[3478]|5[2356])|9(?:1|22|3[27-9]|4[2-6]|6[3569]|9[2-7]))111\\\\d{6}\", , , , \"21111825888\", , , [11, 12]], , , [, , , , , , , , , [-1]]],\nPL:[, [, , \"[1-57-9]\\\\d{6}(?:\\\\d{2})?|6\\\\d{5,8}\", , , , , , , [6, 7, 8, 9]], [, , \"(?: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])(?:[02-9]\\\\d{6}|1(?:[0-8]\\\\d{5}|9\\\\d{3}(?:\\\\d{2})?))\", , , , \"123456789\", , , [7, 9]], [, , \"(?:45|5[0137]|6[069]|7[2389]|88)\\\\d{7}\", , , , \"512345678\", , , [9]], [, , \"800\\\\d{6}\", , , , \"800123456\", , , [9]], [, , \"70[01346-8]\\\\d{6}\", , , , \"701234567\", , , [9]], [, , \"801\\\\d{6}\", , , , \"801234567\", , , [9]], [, , , , , , , , , [-1]], [,\n, \"39\\\\d{7}\", , , , \"391234567\", , , [9]], \"PL\", 48, \"00\", , , , , , , , [[, \"(\\\\d{5})\", \"$1\", [\"19\"]], [, \"(\\\\d{3})(\\\\d{3})\", \"$1 $2\", [\"11|64\"]], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{3})\", \"$1 $2 $3\", [\"(?:1[2-8]|2[2-69]|3[2-4]|4[1-468]|5[24-689]|6[1-3578]|7[14-7]|8[1-79]|9[145])1\", \"(?:1[2-8]|2[2-69]|3[2-4]|4[1-468]|5[24-689]|6[1-3578]|7[14-7]|8[1-79]|9[145])19\"]], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{2,3})\", \"$1 $2 $3\", [\"64\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"39|45|5[0137]|6[0469]|7[02389]|8[08]\"]], [,\n\"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"1[2-8]|[2-8]|9[145]\"]]], , [, , \"64\\\\d{4,7}\", , , , \"641234567\"], , , [, , , , , , , , , [-1]], [, , \"804\\\\d{6}\", , , , \"804123456\", , , [9]], , , [, , , , , , , , , [-1]]], PM:[, [, , \"[45]\\\\d{5}\", , , , , , , [6]], [, , \"(?:4[1-3]|50)\\\\d{4}\", , , , \"430123\"], [, , \"(?:4[02-4]|5[05])\\\\d{4}\", , , , \"551234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"PM\", 508,\n\"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3\", [\"[45]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], PR:[, [, , \"(?:[589]\\\\d\\\\d|787)\\\\d{7}\", , , , , , , [10], [7]], [, , \"(?:787|939)[2-9]\\\\d{6}\", , , , \"7872345678\", , , , [7]], [, , \"(?:787|939)[2-9]\\\\d{6}\", , , , \"7872345678\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002345678\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002345678\"],\n[, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"PR\", 1, \"011\", \"1\", , , \"1\", , , 1, , , [, , , , , , , , , [-1]], , \"787|939\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], PS:[, [, , \"[2489]2\\\\d{6}|(?:1\\\\d|5)\\\\d{8}\", , , , , , , [8, 9, 10], [7]], [, , \"(?:22[2-47-9]|42[45]|82[01458]|92[369])\\\\d{5}\", , , , \"22234567\", , , [8], [7]], [, , \"5[69]\\\\d{7}\", , , , \"599123456\", , , [9]], [, , \"1800\\\\d{6}\",\n, , , \"1800123456\", , , [10]], [, , , , , , , , , [-1]], [, , \"1700\\\\d{6}\", , , , \"1700123456\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"PS\", 970, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], PT:[, [, , \"(?:[26-9]\\\\d|30)\\\\d{7}\",\n, , , , , , [9]], [, , \"2(?:[12]\\\\d|[35][1-689]|4[1-59]|6[1-35689]|7[1-9]|8[1-69]|9[1256])\\\\d{6}\", , , , \"212345678\"], [, , \"9(?:[1-36]\\\\d\\\\d|480)\\\\d{5}\", , , , \"912345678\"], [, , \"80[02]\\\\d{6}\", , , , \"800123456\"], [, , \"(?:6(?:0[178]|4[68])\\\\d|76(?:0[1-57]|1[2-47]|2[237]))\\\\d{5}\", , , , \"760123456\"], [, , \"80(?:8\\\\d|9[1579])\\\\d{5}\", , , , \"808123456\"], [, , \"884[0-4689]\\\\d{5}\", , , , \"884123456\"], [, , \"30\\\\d{7}\", , , , \"301234567\"], \"PT\", 351, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\",\n\"$1 $2 $3\", [\"2[12]\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[236-9]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"70(?:7\\\\d|8[17])\\\\d{5}\", , , , \"707123456\"], , , [, , \"600\\\\d{6}\", , , , \"600110000\"]], PW:[, [, , \"(?:[25-8]\\\\d\\\\d|345|488|900)\\\\d{4}\", , , , , , , [7]], [, , \"(?:2(?:55|77)|345|488|5(?:35|44|87)|6(?:22|54|79)|7(?:33|47)|8(?:24|55|76)|900)\\\\d{4}\", , , , \"2771234\"], [, , \"(?:6[2-4689]0|77\\\\d|88[0-4])\\\\d{4}\", , , , \"6201234\"], [, , , , , , , , , [-1]], [,\n, , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"PW\", 680, \"01[12]\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[2-9]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], PY:[, [, , \"59\\\\d{4,6}|(?:[2-46-9]\\\\d|5[0-8])\\\\d{4,7}\", , , , , , , [6, 7, 8, 9], [5]], [, , \"(?:[26]1|3[289]|4[1246-8]|7[1-3]|8[1-36])\\\\d{5,7}|(?:2(?:2[4-68]|7[15]|9[1-5])|3(?:18|3[167]|4[2357]|51)|4(?:3[12]|5[13]|9[1-47])|5(?:[1-4]\\\\d|5[02-4])|6(?:3[1-3]|44|7[1-46-8])|7(?:4[0-4]|6[1-578]|75|8[0-8])|858)\\\\d{5,6}\",\n, , , \"212345678\", , , [7, 8, 9], [5, 6]], [, , \"9(?:51|6[129]|[78][1-6]|9[1-5])\\\\d{6}\", , , , \"961456789\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"8700[0-4]\\\\d{4}\", , , , \"870012345\", , , [9]], \"PY\", 595, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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[347]|7[46-8]|85\"],\n\"(0$1)\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3,4})\", \"$1 $2 $3\", [\"[26]1|3[289]|4[1246-8]|7[1-3]|8[1-36]\"], \"(0$1)\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"87\"]], [, \"(\\\\d{3})(\\\\d{6})\", \"$1 $2\", [\"9\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[2-8]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"[2-9]0\\\\d{4,7}\", , , , \"201234567\"], , , [, , , , , , , , , [-1]]], QA:[, [, , \"800\\\\d{4}|(?:2|[3-7]\\\\d)\\\\d{6}\", , , , , , , [7, 8]], [, , \"4[04]\\\\d{6}\", , , , \"44123456\",\n, , [8]], [, , \"[35-7]\\\\d{7}\", , , , \"33123456\", , , [8]], [, , \"800\\\\d{4}\", , , , \"8001234\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"QA\", 974, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"2[126]|8\"]], [, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[3-7]\"]]], , [, , \"2(?:[12]\\\\d|61)\\\\d{4}\", , , , \"2123456\", , , [7]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], RE:[, [, , \"(?:26|[68]\\\\d)\\\\d{7}\",\n, , , , , , [9]], [, , \"262\\\\d{6}\", , , , \"262161234\"], [, , \"69(?:2\\\\d\\\\d|3(?:0[0-46]|1[013]|2[0-2]|3[0-39]|4\\\\d|5[05]|6[0-26]|7[0-27]|8[0-8]|9[0-479]))\\\\d{4}\", , , , \"692123456\"], [, , \"80\\\\d{7}\", , , , \"801234567\"], [, , \"89[1-37-9]\\\\d{6}\", , , , \"891123456\"], [, , \"8(?:1[019]|2[0156]|84|90)\\\\d{6}\", , , , \"810123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"RE\", 262, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[268]\"], \"0$1\"]], , [, , , , ,\n, , , , [-1]], 1, \"262|69|8\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], RO:[, [, , \"(?:[237]\\\\d|[89]0)\\\\d{7}|[23]\\\\d{5}\", , , , , , , [6, 9]], [, , \"[23][13-6]\\\\d{7}|(?:2(?:19\\\\d|[3-6]\\\\d9)|31\\\\d\\\\d)\\\\d\\\\d\", , , , \"211234567\"], [, , \"7120\\\\d{5}|7(?:[02-7]\\\\d|1[01]|8[03-8]|99)\\\\d{6}\", , , , \"712034567\", , , [9]], [, , \"800\\\\d{6}\", , , , \"800123456\", , , [9]], [, , \"90[036]\\\\d{6}\", , , , \"900123456\", , , [9]], [, , \"801\\\\d{6}\", , , , \"801123456\", , , [9]], [,\n, , , , , , , , [-1]], [, , , , , , , , , [-1]], \"RO\", 40, \"00\", \"0\", \" int \", , \"0\", , , , [[, \"(\\\\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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"37\\\\d{7}\", , , , \"372123456\", , , [9]], , , [, , , , , , , , , [-1]]], RS:[, [, , \"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}\",\n, , , , , , [6, 7, 8, 9, 10, 11, 12], [4, 5]], [, , \"(?:11[1-9]\\\\d|(?:2[389]|39)(?:0[2-9]|[2-9]\\\\d))\\\\d{3,8}|(?:1[02-9]|2[0-24-7]|3[0-8])[2-9]\\\\d{4,9}\", , , , \"10234567\", , , [7, 8, 9, 10, 11, 12], [4, 5, 6]], [, , \"6(?:[0-689]|7\\\\d)\\\\d{6,7}\", , , , \"601234567\", , , [8, 9, 10]], [, , \"800\\\\d{3,9}\", , , , \"80012345\"], [, , \"(?:78\\\\d|90[0169])\\\\d{3,7}\", , , , \"90012345\", , , [6, 7, 8, 9, 10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"RS\", 381, \"00\", \"0\", , , \"0\",\n, , , [[, \"(\\\\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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"7[06]\\\\d{4,10}\", , , , \"700123456\"], , , [, , , , , , , , , [-1]]], RU:[, [, , \"[347-9]\\\\d{9}\", , , , , , , [10], [7]], [, , \"(?:3(?:0[12]|4[1-35-79]|5[1-3]|65|8[1-58]|9[0145])|4(?:01|1[1356]|2[13467]|7[1-5]|8[1-7]|9[1-689])|8(?:1[1-8]|2[01]|3[13-6]|4[0-8]|5[15]|6[1-35-79]|7[1-37-9]))\\\\d{7}\", , , , \"3011234567\",\n, , , [7]], [, , \"9\\\\d{9}\", , , , \"9123456789\"], [, , \"80[04]\\\\d{7}\", , , , \"8001234567\"], [, , \"80[39]\\\\d{7}\", , , , \"8091234567\"], [, , , , , , , , , [-1]], [, , \"808\\\\d{7}\", , , , \"8081234567\"], [, , , , , , , , , [-1]], \"RU\", 7, \"810\", \"8\", , , \"8\", , \"8~10\", , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1-$2-$3\", [\"[0-79]\"]], [, \"(\\\\d{4})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"7(?:1[0-8]|2[1-9])\", \"7(?:1(?:[0-6]2|7|8[27])|2(?:1[23]|[2-9]2))\", \"7(?:1(?:[0-6]2|7|8[27])|2(?:13[03-69]|62[013-9]))|72[1-57-9]2\"],\n\"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\", [\"[3489]\"],\n\"8 ($1)\", , 1]], [[, \"(\\\\d{4})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"7(?:1[0-8]|2[1-9])\", \"7(?:1(?:[0-6]2|7|8[27])|2(?:1[23]|[2-9]2))\", \"7(?:1(?:[0-6]2|7|8[27])|2(?:13[03-69]|62[013-9]))|72[1-57-9]2\"], \"8 ($1)\", , 1], [, \"(\\\\d{5})(\\\\d)(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"7(?:1[0-68]|2[1-9])\", \"7(?:1(?:[06][3-6]|[18]|2[35]|[3-5][3-5])|2(?:[13][3-5]|[24-689]|7[457]))\", \"7(?:1(?:0(?:[356]|4[023])|[18]|2(?:3[013-9]|5)|3[45]|43[013-79]|5(?:3[1-8]|4[1-7]|5)|6(?:3[0-35-9]|[4-6]))|2(?:1(?:3[178]|[45])|[24-689]|3[35]|7[457]))|7(?:14|23)4[0-8]|71(?:33|45)[1-79]\"],\n\"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\", [\"[3489]\"], \"8 ($1)\", , 1]], [, , , , , , , , , [-1]], 1, \"3[04-689]|[489]\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], RW:[, [, , \"(?:06|[27]\\\\d\\\\d|[89]00)\\\\d{6}\", , , , , , , [8, 9]], [, , \"(?:06|2[258]\\\\d)\\\\d{6}\", , , , \"250123456\"], [, , \"7[238]\\\\d{7}\", , , , \"720123456\", , , [9]], [, , \"800\\\\d{6}\", , , , \"800123456\", ,\n, [9]], [, , \"900\\\\d{6}\", , , , \"900123456\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"RW\", 250, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SA:[, [, , \"92\\\\d{7}|(?:[15]|8\\\\d)\\\\d{8}\",\n, , , , , , [9, 10], [7]], [, , \"1(?:1\\\\d|2[24-8]|3[35-8]|4[3-68]|6[2-5]|7[235-7])\\\\d{6}\", , , , \"112345678\", , , [9], [7]], [, , \"5(?:[013-689]\\\\d|7[0-36-8])\\\\d{6}\", , , , \"512345678\", , , [9]], [, , \"800\\\\d{7}\", , , , \"8001234567\", , , [10]], [, , \"925\\\\d{6}\", , , , \"925012345\", , , [9]], [, , \"920\\\\d{6}\", , , , \"920012345\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"SA\", 966, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{4})(\\\\d{5})\", \"$1 $2\", [\"9\"]], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\",\n[\"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\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"811\\\\d{7}\", , , , \"8110123456\", , , [10]], , , [, , , , , , , , , [-1]]], SB:[, [, , \"(?:[1-6]|[7-9]\\\\d\\\\d)\\\\d{4}\", , , , , , , [5, 7]], [, , \"(?:1[4-79]|[23]\\\\d|4[0-2]|5[03]|6[0-37])\\\\d{3}\", , , , \"40123\", , , [5]], [, , \"48\\\\d{3}|(?:(?:7[1-9]|8[4-9])\\\\d|9(?:1[2-9]|2[013-9]|3[0-2]|[46]\\\\d|5[0-46-9]|7[0-689]|8[0-79]|9[0-8]))\\\\d{4}\",\n, , , \"7421234\"], [, , \"1[38]\\\\d{3}\", , , , \"18123\", , , [5]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"5[12]\\\\d{3}\", , , , \"51123\", , , [5]], \"SB\", 677, \"0[01]\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{5})\", \"$1 $2\", [\"7|8[4-9]|9(?:[1-8]|9[0-8])\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SC:[, [, , \"8000\\\\d{3}|(?:[249]\\\\d|64)\\\\d{5}\", , , , , , , [7]], [, , \"4[2-46]\\\\d{5}\", , , , \"4217123\"],\n[, , \"2[5-8]\\\\d{5}\", , , , \"2510123\"], [, , \"8000\\\\d{3}\", , , , \"8000000\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"971\\\\d{4}|(?:64|95)\\\\d{5}\", , , , \"6412345\"], \"SC\", 248, \"010|0[0-2]\", , , , , , \"00\", , [[, \"(\\\\d)(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[246]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SD:[, [, , \"[19]\\\\d{8}\", , , , , , , [9]], [, , \"1(?:5[3-7]|8[35-7])\\\\d{6}\", , , ,\n\"153123456\"], [, , \"(?:1[0-2]|9[0-3569])\\\\d{7}\", , , , \"911231234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"SD\", 249, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[19]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SE:[, [, , \"(?:[26]\\\\d\\\\d|9)\\\\d{9}|[1-9]\\\\d{8}|[1-689]\\\\d{7}|[1-4689]\\\\d{6}|2\\\\d{5}\", ,\n, , , , , [6, 7, 8, 9, 10, 12]], [, , \"10[1-8]\\\\d{6}|90[1-9]\\\\d{4,6}|(?:[12][136]|3[356]|4[0246]|6[03]|8\\\\d)\\\\d{5,7}|(?:1(?:2[0-35]|4[0-4]|5[0-25-9]|7[13-6]|[89]\\\\d)|2(?:2[0-7]|4[0136-8]|5[0138]|7[018]|8[01]|9[0-57])|3(?:0[0-4]|1\\\\d|2[0-25]|4[056]|7[0-2]|8[0-3]|9[023])|4(?:1[013-8]|3[0135]|5[14-79]|7[0-246-9]|8[0156]|9[0-689])|5(?:0[0-6]|[15][0-5]|2[0-68]|3[0-4]|4\\\\d|6[03-5]|7[013]|8[0-79]|9[01])|6(?:1[1-3]|2[0-4]|4[02-57]|5[0-37]|6[0-3]|7[0-2]|8[0247]|9[0-356])|9(?:1[0-68]|2\\\\d|3[02-5]|4[0-3]|5[0-4]|[68][01]|7[0135-8]))\\\\d{5,6}\",\n, , , \"8123456\", , , [7, 8, 9]], [, , \"7[02369]\\\\d{7}\", , , , \"701234567\", , , [9]], [, , \"20\\\\d{4,7}\", , , , \"20123456\", , , [6, 7, 8, 9]], [, , \"649\\\\d{6}|9(?:00|39|44)[1-8]\\\\d{3,6}\", , , , \"9001234567\", , , [7, 8, 9, 10]], [, , \"77[0-7]\\\\d{6}\", , , , \"771234567\", , , [9]], [, , \"75[1-8]\\\\d{6}\", , , , \"751234567\", , , [9]], [, , , , , , , , , [-1]], \"SE\", 46, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{2,3})(\\\\d{2})\", \"$1-$2 $3\", [\"20\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{4})\", \"$1-$2\", [\"9(?:00|39|44)\"],\n\"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{2})\", \"$1-$2 $3\", [\"[12][136]|3[356]|4[0246]|6[03]|90[1-9]\"], \"0$1\"], [, \"(\\\\d)(\\\\d{2,3})(\\\\d{2})(\\\\d{2})\", \"$1-$2 $3 $4\", [\"8\"], \"0$1\"], [, \"(\\\\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\"], [, \"(\\\\d{3})(\\\\d{2,3})(\\\\d{3})\", \"$1-$2 $3\", [\"9(?:00|39|44)\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{2,3})(\\\\d{2})(\\\\d{2})\", \"$1-$2 $3 $4\", [\"1[013689]|2[0136]|3[1356]|4[0246]|54|6[03]|90[1-9]\"],\n\"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1-$2 $3 $4\", [\"7\"], \"0$1\"], [, \"(\\\\d)(\\\\d{3})(\\\\d{3})(\\\\d{2})\", \"$1-$2 $3 $4\", [\"8\"], \"0$1\"], [, \"(\\\\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\"], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{3})\", \"$1-$2 $3 $4\", [\"9\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1-$2 $3 $4 $5\", [\"[26]\"], \"0$1\"]], [[, \"(\\\\d{2})(\\\\d{2,3})(\\\\d{2})\", \"$1 $2 $3\", [\"20\"]], [, \"(\\\\d{3})(\\\\d{4})\",\n\"$1 $2\", [\"9(?:00|39|44)\"]], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{2})\", \"$1 $2 $3\", [\"[12][136]|3[356]|4[0246]|6[03]|90[1-9]\"]], [, \"(\\\\d)(\\\\d{2,3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"8\"]], [, \"(\\\\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])\"]], [, \"(\\\\d{3})(\\\\d{2,3})(\\\\d{3})\", \"$1 $2 $3\", [\"9(?:00|39|44)\"]], [, \"(\\\\d{2})(\\\\d{2,3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"1[013689]|2[0136]|3[1356]|4[0246]|54|6[03]|90[1-9]\"]],\n[, \"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"7\"]], [, \"(\\\\d)(\\\\d{3})(\\\\d{3})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"8\"]], [, \"(\\\\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])\"]], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{3})\", \"$1 $2 $3 $4\", [\"9\"]], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4 $5\", [\"[26]\"]]], [, , \"74[02-9]\\\\d{6}\", , , , \"740123456\", , , [9]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]],\n, , [, , \"(?:25[245]|67[3-68])\\\\d{9}\", , , , \"254123456789\", , , [12]]], SG:[, [, , \"(?:(?:1\\\\d|8)\\\\d\\\\d|7000)\\\\d{7}|[3689]\\\\d{7}\", , , , , , , [8, 10, 11]], [, , \"6[1-9]\\\\d{6}\", , , , \"61234567\", , , [8]], [, , \"89[01]\\\\d{5}|(?:8[1-8]|9[0-8])\\\\d{6}\", , , , \"81234567\", , , [8]], [, , \"(?:18|8)00\\\\d{7}\", , , , \"18001234567\", , , [10, 11]], [, , \"1900\\\\d{7}\", , , , \"19001234567\", , , [11]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"3[12]\\\\d{6}\", , , , \"31234567\", , , [8]], \"SG\", 65,\n\"0[0-3]\\\\d\", , , , , , , , [[, \"(\\\\d{4,5})\", \"$1\", [\"1[0135-7]|77\"]], [, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[369]|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\"]]], [[, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[369]|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\"]]], [, , , , , , , , , [-1]],\n, , [, , , , , , , , , [-1]], [, , \"7000\\\\d{7}\", , , , \"70001234567\", , , [11]], , , [, , , , , , , , , [-1]]], SH:[, [, , \"(?:[256]\\\\d|8)\\\\d{3}\", , , , , , , [4, 5]], [, , \"2(?:[0-57-9]\\\\d|6[4-9])\\\\d\\\\d\", , , , \"22158\"], [, , \"[56]\\\\d{4}\", , , , \"51234\", , , [5]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"262\\\\d\\\\d\", , , , \"26212\", , , [5]], \"SH\", 290, \"00\", , , , , , , , , , [, , , , , , , , , [-1]], 1, \"[256]\", [, , , , , , ,\n, , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SI:[, [, , \"[1-7]\\\\d{7}|8\\\\d{4,7}|90\\\\d{4,6}\", , , , , , , [5, 6, 7, 8]], [, , \"(?:[1-357][2-8]|4[24-8])\\\\d{6}\", , , , \"12345678\", , , [8], [7]], [, , \"6(?:5(?:1\\\\d|55|[67]0)|9(?:10|[69]\\\\d))\\\\d{4}|(?:[37][01]|4[0139]|51|6[48])\\\\d{6}\", , , , \"31234567\", , , [8]], [, , \"80\\\\d{4,6}\", , , , \"80123456\", , , [6, 7, 8]], [, , \"89[1-3]\\\\d{2,5}|90\\\\d{4,6}\", , , , \"90123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"(?:59\\\\d\\\\d|8(?:1(?:[67]\\\\d|8[01389])|2(?:0\\\\d|2[0378]|8[0-2489])|3[389]\\\\d))\\\\d{4}\",\n, , , \"59012345\", , , [8]], \"SI\", 386, \"00|10(?:22|66|88|99)\", \"0\", , , \"0\", , \"00\", , [[, \"(\\\\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)\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SJ:[, [, , \"0\\\\d{4}|(?:[4589]\\\\d|79)\\\\d{6}\",\n, , , , , , [5, 8]], [, , \"79\\\\d{6}\", , , , \"79123456\", , , [8]], [, , \"(?:4[015-8]|5[89]|9\\\\d)\\\\d{6}\", , , , \"41234567\", , , [8]], [, , \"80[01]\\\\d{5}\", , , , \"80012345\", , , [8]], [, , \"82[09]\\\\d{5}\", , , , \"82012345\", , , [8]], [, , \"810(?:0[0-6]|[2-8]\\\\d)\\\\d{3}\", , , , \"81021234\", , , [8]], [, , \"880\\\\d{5}\", , , , \"88012345\", , , [8]], [, , \"85[0-5]\\\\d{5}\", , , , \"85012345\", , , [8]], \"SJ\", 47, \"00\", , , , , , , , , , [, , , , , , , , , [-1]], , \"79\", [, , , , , , , , , [-1]], [, , \"(?:0[2-9]|81(?:0(?:0[7-9]|1\\\\d)|5\\\\d\\\\d))\\\\d{3}\",\n, , , \"02000\"], , , [, , \"81[23]\\\\d{5}\", , , , \"81212345\", , , [8]]], SK:[, [, , \"[2-689]\\\\d{8}|[2-59]\\\\d{6}|[2-5]\\\\d{5}\", , , , , , , [6, 7, 9]], [, , \"(?:2(?:16|[2-9]\\\\d{3})|[3-5][1-8]\\\\d{3})\\\\d{4}|(?:2|[3-5][1-8])1[67]\\\\d{3}|[3-5][1-8]16\\\\d\\\\d\", , , , \"221234567\"], [, , \"909[1-9]\\\\d{5}|9(?:0[1-8]|1[0-24-9]|[45]\\\\d)\\\\d{6}\", , , , \"912123456\", , , [9]], [, , \"800\\\\d{6}\", , , , \"800123456\", , , [9]], [, , \"9(?:00|[78]\\\\d)\\\\d{6}\", , , , \"900123456\", , , [9]], [, , \"8[5-9]\\\\d{7}\", , , , \"850123456\",\n, , [9]], [, , , , , , , , , [-1]], [, , \"6(?:02|5[0-4]|9[0-6])\\\\d{6}\", , , , \"690123456\", , , [9]], \"SK\", 421, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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{4})(\\\\d{3})\", \"$1 $2\", [\"909\", \"9090\"], \"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})\",\n\"$1/$2 $3 $4\", [\"[3-5]\"], \"0$1\"]], [[, \"(\\\\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\"]], [, , \"9090\\\\d{3}\", , , , \"9090123\", , , [7]], , , [, , \"9090\\\\d{3}|(?:602|8(?:00|[5-9]\\\\d)|9(?:00|[78]\\\\d))\\\\d{6}\",\n, , , , , , [7, 9]], [, , \"96\\\\d{7}\", , , , \"961234567\", , , [9]], , , [, , , , , , , , , [-1]]], SL:[, [, , \"(?:[2378]\\\\d|99)\\\\d{6}\", , , , , , , [8], [6]], [, , \"22\\\\d{6}\", , , , \"22221234\", , , , [6]], [, , \"(?:25|3[0134]|7[5-9]|8[08]|99)\\\\d{6}\", , , , \"25123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"SL\", 232, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{6})\", \"$1 $2\", [\"[237-9]\"], \"(0$1)\"]], , [, , ,\n, , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SM:[, [, , \"(?:0549|[5-7]\\\\d)\\\\d{6}\", , , , , , , [8, 10], [6]], [, , \"0549(?:8[0157-9]|9\\\\d)\\\\d{4}\", , , , \"0549886377\", , , [10], [6]], [, , \"6[16]\\\\d{6}\", , , , \"66661212\", , , [8]], [, , , , , , , , , [-1]], [, , \"7[178]\\\\d{6}\", , , , \"71123456\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"5[158]\\\\d{6}\", , , , \"58001110\", , , [8]], \"SM\", 378, \"00\", , , , \"([89]\\\\d{5})$\",\n\"0549$1\", , , [[, \"(\\\\d{6})\", \"$1\", [\"[89]\"]], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[5-7]\"]], [, \"(\\\\d{4})(\\\\d{6})\", \"$1 $2\", [\"0\"]]], [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[5-7]\"]], [, \"(\\\\d{4})(\\\\d{6})\", \"$1 $2\", [\"0\"]]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SN:[, [, , \"(?:[378]\\\\d{4}|93330)\\\\d{4}\", , , , , , , [9]], [, , \"3(?:0(?:1[0-2]|80)|282|3(?:8[1-9]|9[3-9])|611)\\\\d{5}\", , , ,\n\"301012345\"], [, , \"7(?:[06-8]\\\\d|21|90)\\\\d{6}\", , , , \"701234567\"], [, , \"800\\\\d{6}\", , , , \"800123456\"], [, , \"88[4689]\\\\d{6}\", , , , \"884123456\"], [, , \"81[02468]\\\\d{6}\", , , , \"810123456\"], [, , , , , , , , , [-1]], [, , \"93330\\\\d{4}|3(?:392|9[01]\\\\d)\\\\d{5}\", , , , \"933301234\"], \"SN\", 221, \"00\", , , , , , , , [[, \"(\\\\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]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]],\n[, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SO:[, [, , \"[346-9]\\\\d{8}|[12679]\\\\d{7}|(?:[1-4]\\\\d|59)\\\\d{5}|[1348]\\\\d{5}\", , , , , , , [6, 7, 8, 9]], [, , \"(?:1\\\\d|2[0-79]|3[0-46-8]|4[0-7]|59)\\\\d{5}|(?:[134]\\\\d|8[125])\\\\d{4}\", , , , \"4012345\", , , [6, 7]], [, , \"28\\\\d{5}|(?:6[1-9]|79)\\\\d{6,7}|(?:15|24|(?:3[59]|4[89]|8[08])\\\\d|60|7[1-8]|9(?:0[67]|[2-9]))\\\\d{6}\", , , , \"71123456\", , , [7, 8, 9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , ,\n, , [-1]], [, , , , , , , , , [-1]], \"SO\", 252, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{4})\", \"$1 $2\", [\"8[125]\"]], [, \"(\\\\d{6})\", \"$1\", [\"[134]\"]], [, \"(\\\\d)(\\\\d{6})\", \"$1 $2\", [\"1|2[0-79]|3[0-46-8]|4[0-7]|59\"]], [, \"(\\\\d)(\\\\d{7})\", \"$1 $2\", [\"24|[67]\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[348]|64|79[0-8]|90\"]], [, \"(\\\\d{2})(\\\\d{5,7})\", \"$1 $2\", [\"1|28|6[1-35-9]|799|9[2-9]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , ,\n, [-1]]], SR:[, [, , \"(?:[2-5]|68|[78]\\\\d)\\\\d{5}\", , , , , , , [6, 7]], [, , \"(?:2[1-3]|3[0-7]|(?:4|68)\\\\d|5[2-58])\\\\d{4}\", , , , \"211234\"], [, , \"(?:7[124-7]|8[125-9])\\\\d{5}\", , , , \"7412345\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"56\\\\d{4}\", , , , \"561234\", , , [6]], \"SR\", 597, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1-$2-$3\", [\"56\"]], [, \"(\\\\d{3})(\\\\d{3})\", \"$1-$2\", [\"[2-5]\"]], [, \"(\\\\d{3})(\\\\d{4})\",\n\"$1-$2\", [\"[6-8]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SS:[, [, , \"[19]\\\\d{8}\", , , , , , , [9]], [, , \"18\\\\d{7}\", , , , \"181234567\"], [, , \"(?:12|9[1257])\\\\d{7}\", , , , \"977123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"SS\", 211, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[19]\"], \"0$1\"]], , [,\n, , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], ST:[, [, , \"(?:22|9\\\\d)\\\\d{5}\", , , , , , , [7]], [, , \"22\\\\d{5}\", , , , \"2221234\"], [, , \"900[5-9]\\\\d{3}|9(?:0[1-9]|[89]\\\\d)\\\\d{4}\", , , , \"9812345\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"ST\", 239, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[29]\"]]], , [, , , , , , , , , [-1]], , , [,\n, , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SV:[, [, , \"[267]\\\\d{7}|[89]00\\\\d{4}(?:\\\\d{4})?\", , , , , , , [7, 8, 11]], [, , \"2[1-6]\\\\d{6}\", , , , \"21234567\", , , [8]], [, , \"[67]\\\\d{7}\", , , , \"70123456\", , , [8]], [, , \"800\\\\d{4}(?:\\\\d{4})?\", , , , \"8001234\", , , [7, 11]], [, , \"900\\\\d{4}(?:\\\\d{4})?\", , , , \"9001234\", , , [7, 11]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"SV\", 503, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\",\n\"$1 $2\", [\"[89]\"]], [, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[267]\"]], [, \"(\\\\d{3})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"[89]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SX:[, [, , \"7215\\\\d{6}|(?:[58]\\\\d\\\\d|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"7215(?:4[2-8]|8[239]|9[056])\\\\d{4}\", , , , \"7215425678\", , , , [7]], [, , \"7215(?:1[02]|2\\\\d|5[034679]|8[014-8])\\\\d{4}\", , , , \"7215205678\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\",\n, , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"SX\", 1, \"011\", \"1\", , , \"1|(5\\\\d{6})$\", \"721$1\", , , , , [, , , , , , , , , [-1]], , \"721\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SY:[, [, , \"[1-39]\\\\d{8}|[1-5]\\\\d{7}\", , , , , , , [8, 9], [6, 7]], [, , \"[12]1\\\\d{6,7}|(?:1(?:[2356]|4\\\\d)|2[235]|3(?:[13]\\\\d|4)|4[13]|5[1-3])\\\\d{6}\",\n, , , \"112345678\", , , , [6, 7]], [, , \"9(?:22|[3-589]\\\\d|6[024-9])\\\\d{6}\", , , , \"944567890\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"SY\", 963, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , ,\n, , , , , , [-1]]], SZ:[, [, , \"0800\\\\d{4}|(?:[237]\\\\d|900)\\\\d{6}\", , , , , , , [8, 9]], [, , \"[23][2-5]\\\\d{6}\", , , , \"22171234\", , , [8]], [, , \"7[6-9]\\\\d{6}\", , , , \"76123456\", , , [8]], [, , \"0800\\\\d{4}\", , , , \"08001234\", , , [8]], [, , \"900\\\\d{6}\", , , , \"900012345\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"70\\\\d{6}\", , , , \"70012345\", , , [8]], \"SZ\", 268, \"00\", , , , , , , , [[, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[0237]\"]], [, \"(\\\\d{5})(\\\\d{4})\", \"$1 $2\", [\"9\"]]], ,\n[, , , , , , , , , [-1]], , , [, , \"0800\\\\d{4}\", , , , , , , [8]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], TA:[, [, , \"8\\\\d{3}\", , , , , , , [4]], [, , \"8\\\\d{3}\", , , , \"8999\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"TA\", 290, \"00\", , , , , , , , , , [, , , , , , , , , [-1]], , \"8\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]],\nTC:[, [, , \"(?:[58]\\\\d\\\\d|649|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"649(?:712|9(?:4\\\\d|50))\\\\d{4}\", , , , \"6497121234\", , , , [7]], [, , \"649(?:2(?:3[129]|4[1-7])|3(?:3[1-389]|4[1-8])|4[34][1-3])\\\\d{4}\", , , , \"6492311234\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002345678\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002345678\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , \"64971[01]\\\\d{4}\", , , , \"6497101234\", , , , [7]],\n\"TC\", 1, \"011\", \"1\", , , \"1|([2-479]\\\\d{6})$\", \"649$1\", , , , , [, , , , , , , , , [-1]], , \"649\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], TD:[, [, , \"(?:22|[69]\\\\d|77)\\\\d{6}\", , , , , , , [8]], [, , \"22(?:[37-9]0|5[0-5]|6[89])\\\\d{4}\", , , , \"22501234\"], [, , \"(?:6[023568]|77|9\\\\d)\\\\d{6}\", , , , \"63012345\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"TD\", 235, \"00|16\",\n, , , , , \"00\", , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[2679]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], TG:[, [, , \"[279]\\\\d{7}\", , , , , , , [8]], [, , \"2(?:2[2-7]|3[23]|4[45]|55|6[67]|77)\\\\d{5}\", , , , \"22212345\"], [, , \"(?:7[09]|9[0-36-9])\\\\d{6}\", , , , \"90112345\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"TG\",\n228, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[279]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], TH:[, [, , \"1\\\\d{8,9}|(?:[2-57]|[689]\\\\d)\\\\d{7}\", , , , , , , [8, 9, 10]], [, , \"(?:2\\\\d|3[2-9]|4[2-5]|5[2-6]|7[3-7])\\\\d{6}\", , , , \"21234567\", , , [8]], [, , \"(?:14|6[1-6]|[89]\\\\d)\\\\d{7}\", , , , \"812345678\", , , [9]], [, , \"1800\\\\d{6}\", , , , \"1800123456\", , , [10]], [, , \"1900\\\\d{6}\", , , ,\n\"1900123456\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"6[08]\\\\d{7}\", , , , \"601234567\", , , [9]], \"TH\", 66, \"00[1-9]\", \"0\", , , \"0\", , , , [[, \"(\\\\d)(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"2\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3,4})\", \"$1 $2 $3\", [\"14|[3-9]\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"1\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], TJ:[, [, , \"(?:[3-59]\\\\d|77|88)\\\\d{7}\", , ,\n, , , , [9], [3, 5, 6, 7]], [, , \"(?:3(?:1[3-5]|2[245]|3[12]|4[24-7]|5[25]|72)|4(?:46|74|87))\\\\d{6}\", , , , \"372123456\", , , , [3, 5, 6, 7]], [, , \"41[18]\\\\d{6}|(?:5[05]|77|88|9\\\\d)\\\\d{7}\", , , , \"917123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"TJ\", 992, \"810\", \"8\", , , \"8\", , \"8~10\", , [[, \"(\\\\d{6})(\\\\d)(\\\\d{2})\", \"$1 $2 $3\", [\"331\", \"3317\"], , , 1], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{4})\", \"$1 $2 $3\", [\"[34]7|91[78]\"],\n, , 1], [, \"(\\\\d{4})(\\\\d)(\\\\d{4})\", \"$1 $2 $3\", [\"3\"], , , 1], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[457-9]\"], , , 1]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], TK:[, [, , \"[2-47]\\\\d{3,6}\", , , , , , , [4, 5, 6, 7]], [, , \"(?:2[2-4]|[34]\\\\d)\\\\d{2,5}\", , , , \"3101\"], [, , \"7[2-4]\\\\d{2,5}\", , , , \"7290\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , ,\n, , , , [-1]], \"TK\", 690, \"00\", , , , , , , , , , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], TL:[, [, , \"7\\\\d{7}|(?:[2-47]\\\\d|[89]0)\\\\d{5}\", , , , , , , [7, 8]], [, , \"(?:2[1-5]|3[1-9]|4[1-4])\\\\d{5}\", , , , \"2112345\", , , [7]], [, , \"7[3-8]\\\\d{6}\", , , , \"77212345\", , , [8]], [, , \"80\\\\d{5}\", , , , \"8012345\", , , [7]], [, , \"90\\\\d{5}\", , , , \"9012345\", , , [7]], [, , , , , , , , , [-1]], [, , \"70\\\\d{5}\", , , , \"7012345\", , , [7]],\n[, , , , , , , , , [-1]], \"TL\", 670, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[2-489]|70\"]], [, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"7\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], TM:[, [, , \"[1-6]\\\\d{7}\", , , , , , , [8]], [, , \"(?:1(?:2\\\\d|3[1-9])|2(?:22|4[0-35-8])|3(?:22|4[03-9])|4(?:22|3[128]|4\\\\d|6[15])|5(?:22|5[7-9]|6[014-689]))\\\\d{5}\", , , , \"12345678\"], [, , \"6[1-9]\\\\d{6}\", , , , \"66123456\"], [, , , , , , ,\n, , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"TM\", 993, \"810\", \"8\", , , \"8\", , \"8~10\", , [[, \"(\\\\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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], TN:[, [, , \"[2-57-9]\\\\d{7}\", ,\n, , , , , [8]], [, , \"81200\\\\d{3}|(?:3[0-2]|7\\\\d)\\\\d{6}\", , , , \"30010123\"], [, , \"3(?:001|[12]40)\\\\d{4}|(?:(?:[259]\\\\d|4[0-6])\\\\d|3(?:1[1-35]|6[0-4]|91))\\\\d{5}\", , , , \"20123456\"], [, , \"8010\\\\d{4}\", , , , \"80101234\"], [, , \"88\\\\d{6}\", , , , \"88123456\"], [, , \"8[12]10\\\\d{4}\", , , , \"81101234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"TN\", 216, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[2-57-9]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [,\n, , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], TO:[, [, , \"(?:0800|[5-8]\\\\d{3})\\\\d{3}|[2-8]\\\\d{4}\", , , , , , , [5, 7]], [, , \"(?:2\\\\d|3[0-8]|4[0-4]|50|6[09]|7[0-24-69]|8[05])\\\\d{3}\", , , , \"20123\", , , [5]], [, , \"(?:6(?:3[02]|85|90)|7(?:[2-46]0|[578]\\\\d)|8[46-9]\\\\d)\\\\d{4}\", , , , \"7715123\", , , [7]], [, , \"0800\\\\d{3}\", , , , \"0800222\", , , [7]], [, , \"55[04]\\\\d{4}\", , , , \"5501234\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"TO\", 676, \"00\", ,\n, , , , , , [[, \"(\\\\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-8]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], TR:[, [, , \"(?:[2-58]\\\\d\\\\d|900)\\\\d{7}|4\\\\d{6}\", , , , , , , [7, 10]], [, , \"(?:2(?:[13][26]|[28][2468]|[45][268]|[67][246])|3(?:[13][28]|[24-6][2468]|[78][02468]|92)|4(?:[16][246]|[23578][2468]|4[26]))\\\\d{7}\", , , , \"2123456789\",\n, , [10]], [, , \"56161\\\\d{5}|5(?:0[15-7]|1[06]|24|[34]\\\\d|5[1-59]|9[46])\\\\d{7}\", , , , \"5012345678\", , , [10]], [, , \"800\\\\d{7}\", , , , \"8001234567\", , , [10]], [, , \"(?:8[89]8|900)\\\\d{7}\", , , , \"9001234567\", , , [10]], [, , , , , , , , , [-1]], [, , \"592(?:21[12]|461)\\\\d{4}\", , , , \"5922121234\", , , [10]], [, , , , , , , , , [-1]], \"TR\", 90, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d)(\\\\d{3})\", \"$1 $2 $3\", [\"444\"], , , 1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"512|8[0589]|90\"], \"0$1\", ,\n1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"5(?:[0-59]|61)\", \"5(?:[0-59]|616)\", \"5(?:[0-59]|6161)\"], \"0$1\", , 1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[24][1-8]|3[1-9]\"], \"(0$1)\", , 1]], [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"512|8[0589]|90\"], \"0$1\", , 1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"5(?:[0-59]|61)\", \"5(?:[0-59]|616)\", \"5(?:[0-59]|6161)\"], \"0$1\", , 1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[24][1-8]|3[1-9]\"],\n\"(0$1)\", , 1]], [, , \"512\\\\d{7}\", , , , \"5123456789\", , , [10]], , , [, , \"444\\\\d{4}\", , , , , , , [7]], [, , \"(?:444|850\\\\d{3})\\\\d{4}\", , , , \"4441444\"], , , [, , , , , , , , , [-1]]], TT:[, [, , \"(?:[58]\\\\d\\\\d|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"868(?:2(?:01|1[89]|[23]\\\\d|4[0-2])|6(?:0[7-9]|1[02-8]|2[1-9]|[3-69]\\\\d|7[0-79])|82[124])\\\\d{4}\", , , , \"8682211234\", , , , [7]], [, , \"868(?:2(?:6[6-9]|[7-9]\\\\d)|[37](?:0[1-9]|1[02-9]|[2-9]\\\\d)|4[6-9]\\\\d|6(?:20|78|8\\\\d))\\\\d{4}\", , , , \"8682911234\",\n, , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002345678\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002345678\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"TT\", 1, \"011\", \"1\", , , \"1|([2-46-8]\\\\d{6})$\", \"868$1\", , , , , [, , , , , , , , , [-1]], , \"868\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , \"868619\\\\d{4}\", , , , \"8686191234\", , , , [7]]], TV:[, [, , \"(?:2|7\\\\d\\\\d|90)\\\\d{4}\", , , , , , ,\n[5, 6, 7]], [, , \"2[02-9]\\\\d{3}\", , , , \"20123\", , , [5]], [, , \"(?:7[01]\\\\d|90)\\\\d{4}\", , , , \"901234\", , , [6, 7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"TV\", 688, \"00\", , , , , , , , , , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], TW:[, [, , \"(?:[24589]|7\\\\d)\\\\d{8}|[2-8]\\\\d{7}|2\\\\d{6}\", , , , , , , [7, 8, 9, 10]], [, , \"24\\\\d{6,7}|(?:6412|8(?:2(?:3\\\\d|66)|36[24-9]))\\\\d{4}|(?:2[235-8]\\\\d|3[2-9]|4(?:[239]\\\\d|[78])|5[2-8]|6[235-79]|7[1-9]|8[7-9])\\\\d{6}\",\n, , , \"221234567\", , , [8, 9]], [, , \"9[0-8]\\\\d{7}\", , , , \"912345678\", , , [9]], [, , \"80[0-79]\\\\d{6}\", , , , \"800123456\", , , [9]], [, , \"20(?:[013-9]\\\\d\\\\d|2)\\\\d{4}\", , , , \"203123456\", , , [7, 9]], [, , , , , , , , , [-1]], [, , \"99\\\\d{7}\", , , , \"990123456\", , , [9]], [, , \"70\\\\d{8}\", , , , \"7012345678\", , , [10]], \"TW\", 886, \"0(?:0[25-79]|19)\", \"0\", \"#\", , \"0\", , , , [[, \"(\\\\d{2})(\\\\d)(\\\\d{4})\", \"$1 $2 $3\", [\"202\"], \"0$1\"], [, \"(\\\\d)(\\\\d{3,4})(\\\\d{4})\", \"$1 $2 $3\", [\"[25][2-8]|[346]|7[1-9]|8[237-9]\"],\n\"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[258]\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"9\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"7\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"50[0-46-9]\\\\d{6}\", , , , \"500123456\", , , [9]], , , [, , , , , , , , , [-1]]], TZ:[, [, , \"(?:[26-8]\\\\d|41|90)\\\\d{7}\", , , , , , , [9]], [, , \"2[2-8]\\\\d{7}\", , , , \"222345678\"], [, , \"(?:6[2-9]|7[13-9])\\\\d{7}\", , , , \"621234567\"], [, , \"80[08]\\\\d{6}\",\n, , , \"800123456\"], [, , \"90\\\\d{7}\", , , , \"900123456\"], [, , \"8(?:40|6[01])\\\\d{6}\", , , , \"840123456\"], [, , , , , , , , , [-1]], [, , \"41\\\\d{7}\", , , , \"412345678\"], \"TZ\", 255, \"00[056]\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{4})\", \"$1 $2 $3\", [\"[89]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[24]\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[67]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , \"(?:8(?:[04]0|6[01])|90\\\\d)\\\\d{6}\"], [, , , , , , , , , [-1]], , , [,\n, , , , , , , , [-1]]], UA:[, [, , \"[89]\\\\d{9}|[3-9]\\\\d{8}\", , , , , , , [9, 10], [5, 6, 7]], [, , \"(?:3[1-8]|4[13-8]|5[1-7]|6[12459])\\\\d{7}\", , , , \"311234567\", , , [9], [5, 6, 7]], [, , \"(?:50|6[36-8]|7[1-3]|9[1-9])\\\\d{7}\", , , , \"501234567\", , , [9]], [, , \"800[1-8]\\\\d{5,6}\", , , , \"800123456\"], [, , \"900[239]\\\\d{5,6}\", , , , \"900212345\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"89[1-579]\\\\d{6}\", , , , \"891234567\", , , [9]], \"UA\", 380, \"00\", \"0\", , , \"0\", , \"0~0\", , [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\n\"$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{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"4[45][0-5]|5(?:0|6[37])|6(?:[12][018]|[36-8])|7|89|9[1-9]|(?:48|57)[0137-9]\", \"4[45][0-5]|5(?:0|6(?:3[14-7]|7))|6(?:[12][018]|[36-8])|7|89|9[1-9]|(?:48|57)[0137-9]\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d{5})\", \"$1 $2\", [\"[3-6]\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3,4})\", \"$1 $2 $3\", [\"[89]\"], \"0$1\"]],\n, [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], UG:[, [, , \"800\\\\d{6}|(?:[29]0|[347]\\\\d)\\\\d{7}\", , , , , , , [9], [5, 6, 7]], [, , \"(?:20(?:(?:(?:[0147]\\\\d|5[0-4])\\\\d|2(?:40|[5-9]\\\\d)|3(?:0[67]|2[0-4])|810)\\\\d|6(?:00[0-2]|[15-9]\\\\d\\\\d|30[0-4]))|[34]\\\\d{5})\\\\d{3}\", , , , \"312345678\", , , , [5, 6, 7]], [, , \"7260\\\\d{5}|7(?:[0157-9]\\\\d|20|4[0-4])\\\\d{6}\", , , , \"712345678\"], [, , \"800[1-3]\\\\d{5}\", , , , \"800123456\"], [, , \"90[1-3]\\\\d{6}\",\n, , , \"901123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"UG\", 256, \"00[057]\", \"0\", , , \"0\", , , , [[, \"(\\\\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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], US:[, [, , \"[2-9]\\\\d{9}\", , , , , , , [10], [7]], [, , \"(?: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[0135]|3[0-24679]|4[167]|5[12]|6[014]|8[056])|4(?:0[124-9]|1[02-579]|2[3-5]|3[0245]|4[0235]|58|6[39]|7[0589]|8[04])|5(?:0[1-57-9]|1[0235-8]|20|3[0149]|4[01]|5[19]|6[1-47]|7[013-5]|8[056])|6(?:0[1-35-9]|1[024-9]|2[03689]|[34][016]|5[017]|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[02-59]|8[156])|8(?:0[1-68]|1[02-8]|2[08]|3[0-28]|4[3578]|5[046-9]|6[02-5]|7[028])|9(?:0[1346-9]|1[02-9]|2[0589]|3[0146-8]|4[0179]|5[12469]|7[0-389]|8[04-69]))[2-9]\\\\d{6}\",\n, , , \"2015550123\", , , , [7]], [, , \"(?: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[0135]|3[0-24679]|4[167]|5[12]|6[014]|8[056])|4(?:0[124-9]|1[02-579]|2[3-5]|3[0245]|4[0235]|58|6[39]|7[0589]|8[04])|5(?:0[1-57-9]|1[0235-8]|20|3[0149]|4[01]|5[19]|6[1-47]|7[013-5]|8[056])|6(?:0[1-35-9]|1[024-9]|2[03689]|[34][016]|5[017]|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[02-59]|8[156])|8(?:0[1-68]|1[02-8]|2[08]|3[0-28]|4[3578]|5[046-9]|6[02-5]|7[028])|9(?:0[1346-9]|1[02-9]|2[0589]|3[0146-8]|4[0179]|5[12469]|7[0-389]|8[04-69]))[2-9]\\\\d{6}\",\n, , , \"2015550123\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002345678\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002345678\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"US\", 1, \"011\", \"1\", , , \"1\", , , 1, [[, \"(\\\\d{3})(\\\\d{4})\", \"$1-$2\", [\"[2-9]\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"($1) $2-$3\", [\"[2-9]\"], , , 1]], [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"[2-9]\"]]], [, , , , , , , , , [-1]], 1, , [,\n, , , , , , , , [-1]], [, , \"710[2-9]\\\\d{6}\", , , , \"7102123456\"], , , [, , , , , , , , , [-1]]], UY:[, [, , \"(?:[249]\\\\d\\\\d|80)\\\\d{5}|9\\\\d{6}\", , , , , , , [7, 8]], [, , \"(?:2\\\\d|4[2-7])\\\\d{6}\", , , , \"21231234\", , , [8], [7]], [, , \"9[1-9]\\\\d{6}\", , , , \"94231234\", , , [8]], [, , \"80[05]\\\\d{4}\", , , , \"8001234\", , , [7]], [, , \"90[0-8]\\\\d{4}\", , , , \"9001234\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"UY\", 598, \"0(?:0|1[3-9]\\\\d)\", \"0\", \" int. \", ,\n\"0\", , \"00\", , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"8|90\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"9\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[24]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], UZ:[, [, , \"[679]\\\\d{8}\", , , , , , , [9]], [, , \"78(?:1(?:13|2[02]|50)|2(?:10|2[139]|98)|77[01])\\\\d{4}|(?:6(?:1(?:22|3[124]|4[1-4]|5[1-3578]|64)|2(?:22|3[0-57-9]|41)|5(?:22|3[3-7]|5[024-8])|6\\\\d\\\\d|7(?:[23]\\\\d|7[69])|9(?:22|4[1-8]|6[135]))|7(?:0(?:5[4-9]|6[0146]|7[124-6]|9[135-8])|1[12]\\\\d|2(?:22|3[13-57-9]|4[1-3579]|5[14])|3(?:2\\\\d|3[1578]|4[1-35-7]|5[1-57]|61)|4(?:2\\\\d|3[1-579]|7[1-79])|5(?:22|5[1-9]|6[1457])|6(?:22|3[12457]|4[13-8])|9(?:22|5[1-9])))\\\\d{5}\",\n, , , \"669050123\"], [, , \"(?:6(?:1(?:2(?:2[01]|98)|35[0-4]|50\\\\d|61[23]|7(?:[01][017]|4\\\\d|55|9[5-9]))|2(?:(?:11|7\\\\d)\\\\d|2(?:[12]1|9[01379])|5(?:[126]\\\\d|3[0-4]))|5(?:19[01]|2(?:27|9[26])|(?:30|59|7\\\\d)\\\\d)|6(?:2(?:1[5-9]|2[0367]|38|41|52|60)|(?:3[79]|9[0-3])\\\\d|4(?:56|83)|7(?:[07]\\\\d|1[017]|3[07]|4[047]|5[057]|67|8[0178]|9[79]))|7(?:2(?:24|3[237]|4[5-9]|7[15-8])|5(?:7[12]|8[0589])|7(?:0\\\\d|[39][07])|9(?:0\\\\d|7[079]))|9(?:2(?:1[1267]|3[01]|5\\\\d|7[0-4])|(?:5[67]|7\\\\d)\\\\d|6(?:2[0-26]|8\\\\d)))|7(?:0\\\\d{3}|1(?:13[01]|6(?:0[47]|1[67]|66)|71[3-69]|98\\\\d)|2(?:2(?:2[79]|95)|3(?:2[5-9]|6[0-6])|57\\\\d|7(?:0\\\\d|1[17]|2[27]|3[37]|44|5[057]|66|88))|3(?:2(?:1[0-6]|21|3[469]|7[159])|(?:33|9[4-6])\\\\d|5(?:0[0-4]|5[579]|9\\\\d)|7(?:[0-3579]\\\\d|4[0467]|6[67]|8[078]))|4(?:2(?:29|5[0257]|6[0-7]|7[1-57])|5(?:1[0-4]|8\\\\d|9[5-9])|7(?:0\\\\d|1[024589]|2[0-27]|3[0137]|[46][07]|5[01]|7[5-9]|9[079])|9(?:7[015-9]|[89]\\\\d))|5(?:112|2(?:0\\\\d|2[29]|[49]4)|3[1568]\\\\d|52[6-9]|7(?:0[01578]|1[017]|[23]7|4[047]|[5-7]\\\\d|8[78]|9[079]))|6(?:2(?:2[1245]|4[2-4])|39\\\\d|41[179]|5(?:[349]\\\\d|5[0-2])|7(?:0[017]|[13]\\\\d|22|44|55|67|88))|9(?:22[128]|3(?:2[0-4]|7\\\\d)|57[02569]|7(?:2[05-9]|3[37]|4\\\\d|60|7[2579]|87|9[07])))|9[0-57-9]\\\\d{3})\\\\d{4}\",\n, , , \"912345678\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"UZ\", 998, \"810\", \"8\", , , \"8\", , \"8~10\", , [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[679]\"], \"8 $1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], VA:[, [, , \"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,\n10, 11, 12]], [, , \"06698\\\\d{1,6}\", , , , \"0669812345\", , , [6, 7, 8, 9, 10, 11]], [, , \"3[1-9]\\\\d{8}|3[2-9]\\\\d{7}\", , , , \"3123456789\", , , [9, 10]], [, , \"80(?:0\\\\d{3}|3)\\\\d{3}\", , , , \"800123456\", , , [6, 9]], [, , \"(?:0878\\\\d\\\\d|89(?:2|4[5-9]\\\\d))\\\\d{3}|89[45][0-4]\\\\d\\\\d|(?:1(?:44|6[346])|89(?:5[5-9]|9))\\\\d{6}\", , , , \"899123456\", , , [6, 8, 9, 10]], [, , \"84(?:[08]\\\\d{3}|[17])\\\\d{3}\", , , , \"848123456\", , , [6, 9]], [, , \"1(?:78\\\\d|99)\\\\d{6}\", , , , \"1781234567\", , , [9, 10]], [, , \"55\\\\d{8}\",\n, , , \"5512345678\", , , [10]], \"VA\", 39, \"00\", , , , , , , , , , [, , , , , , , , , [-1]], , \"06698\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , \"3[2-8]\\\\d{9,10}\", , , , \"33101234501\", , , [11, 12]]], VC:[, [, , \"(?:[58]\\\\d\\\\d|784|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"784(?:266|3(?:6[6-9]|7\\\\d|8[0-24-6])|4(?:38|5[0-36-8]|8[0-8])|5(?:55|7[0-2]|93)|638|784)\\\\d{4}\", , , , \"7842661234\", , , , [7]], [, , \"784(?:4(?:3[0-5]|5[45]|89|9[0-8])|5(?:2[6-9]|3[0-4]))\\\\d{4}\", , , , \"7844301234\",\n, , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002345678\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002345678\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"VC\", 1, \"011\", \"1\", , , \"1|([2-7]\\\\d{6})$\", \"784$1\", , , , , [, , , , , , , , , [-1]], , \"784\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], VE:[, [, , \"[89]00\\\\d{7}|(?:[24]\\\\d|50)\\\\d{8}\", , , , , , , [10], [7]], [, , \"(?:2(?:12|3[457-9]|[467]\\\\d|[58][1-9]|9[1-6])|50[01])\\\\d{7}\",\n, , , \"2121234567\", , , , [7]], [, , \"4(?:1[24-8]|2[46])\\\\d{7}\", , , , \"4121234567\"], [, , \"800\\\\d{7}\", , , , \"8001234567\"], [, , \"900\\\\d{7}\", , , , \"9001234567\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"VE\", 58, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{7})\", \"$1-$2\", [\"[24589]\"], \"0$1\", \"$CC $1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], VG:[, [, , \"(?:284|[58]\\\\d\\\\d|900)\\\\d{7}\",\n, , , , , , [10], [7]], [, , \"284496[0-5]\\\\d{3}|284(?:229|4(?:22|9[45])|774|8(?:52|6[459]))\\\\d{4}\", , , , \"2842291234\", , , , [7]], [, , \"284496[6-9]\\\\d{3}|284(?:3(?:0[0-3]|4[0-7]|68|9[34])|4(?:4[0-6]|68|99)|54[0-57])\\\\d{4}\", , , , \"2843001234\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002345678\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002345678\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"VG\", 1, \"011\",\n\"1\", , , \"1|([2-578]\\\\d{6})$\", \"284$1\", , , , , [, , , , , , , , , [-1]], , \"284\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], VI:[, [, , \"[58]\\\\d{9}|(?:34|90)0\\\\d{7}\", , , , , , , [10], [7]], [, , \"340(?:2(?:0[12]|2[06-8]|4[49]|77)|3(?:32|44)|4(?:22|7[34]|89)|5(?:1[34]|55)|6(?:2[56]|4[23]|77|9[023])|7(?:1[2-57-9]|27|7\\\\d)|884|998)\\\\d{4}\", , , , \"3406421234\", , , , [7]], [, , \"340(?:2(?:0[12]|2[06-8]|4[49]|77)|3(?:32|44)|4(?:22|7[34]|89)|5(?:1[34]|55)|6(?:2[56]|4[23]|77|9[023])|7(?:1[2-57-9]|27|7\\\\d)|884|998)\\\\d{4}\",\n, , , \"3406421234\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002345678\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002345678\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"VI\", 1, \"011\", \"1\", , , \"1|([2-9]\\\\d{6})$\", \"340$1\", , 1, , , [, , , , , , , , , [-1]], , \"340\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], VN:[, [, , \"[12]\\\\d{9}|[135-9]\\\\d{8}|[16]\\\\d{7}|[16-8]\\\\d{6}\",\n, , , , , , [7, 8, 9, 10]], [, , \"2(?:0[3-9]|1[0-689]|2[0-25-9]|3[2-9]|4[2-8]|5[124-9]|6[0-39]|7[0-7]|8[2-79]|9[0-4679])\\\\d{7}\", , , , \"2101234567\", , , [10]], [, , \"(?:52[238]|8(?:79|9[689])|99[013-9])\\\\d{6}|(?:3\\\\d|5[689]|7[06-9]|8[1-68]|9[0-8])\\\\d{7}\", , , , \"912345678\", , , [9]], [, , \"1(?:228\\\\d{4}|800\\\\d{4,6})\", , , , \"1800123456\", , , [8, 9, 10]], [, , \"1900\\\\d{4,6}\", , , , \"1900123456\", , , [8, 9, 10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"672\\\\d{6}\", , , , \"672012345\",\n, , [9]], \"VN\", 84, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[17]99\"], \"0$1\", , 1], [, \"(\\\\d{2})(\\\\d{5})\", \"$1 $2\", [\"80\"], \"0$1\", , 1], [, \"(\\\\d{3})(\\\\d{4,5})\", \"$1 $2\", [\"69\"], \"0$1\", , 1], [, \"(\\\\d{4})(\\\\d{4,6})\", \"$1 $2\", [\"1\"], , , 1], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[69]\"], \"0$1\", , 1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[3578]\"], \"0$1\", , 1], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"2[48]\"], \"0$1\", , 1], [, \"(\\\\d{3})(\\\\d{4})(\\\\d{3})\",\n\"$1 $2 $3\", [\"2\"], \"0$1\", , 1]], [[, \"(\\\\d{2})(\\\\d{5})\", \"$1 $2\", [\"80\"], \"0$1\", , 1], [, \"(\\\\d{4})(\\\\d{4,6})\", \"$1 $2\", [\"1\"], , , 1], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[69]\"], \"0$1\", , 1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[3578]\"], \"0$1\", , 1], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"2[48]\"], \"0$1\", , 1], [, \"(\\\\d{3})(\\\\d{4})(\\\\d{3})\", \"$1 $2 $3\", [\"2\"], \"0$1\", , 1]], [, , , , , , , , , [-1]], , , [, , \"[17]99\\\\d{4}|69\\\\d{5,6}\", , , , , , , [7, 8]], [, , \"(?:[17]99|80\\\\d)\\\\d{4}|69\\\\d{5,6}\",\n, , , \"1992000\", , , [7, 8]], , , [, , , , , , , , , [-1]]], VU:[, [, , \"(?:[23]\\\\d|[48]8)\\\\d{3}|(?:[57]\\\\d|90)\\\\d{5}\", , , , , , , [5, 7]], [, , \"(?:38[0-8]|48[4-9])\\\\d\\\\d|(?:2[02-9]|3[4-7]|88)\\\\d{3}\", , , , \"22123\", , , [5]], [, , \"57[2-5]\\\\d{4}|(?:5[0-689]|7[013-7])\\\\d{5}\", , , , \"5912345\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"90[1-9]\\\\d{4}\", , , , \"9010123\", , , [7]], \"VU\", 678, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\",\n\"$1 $2\", [\"[579]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"(?:3[03]|900\\\\d)\\\\d{3}\", , , , \"30123\"], , , [, , , , , , , , , [-1]]], WF:[, [, , \"(?:[45]0|68|72|8\\\\d)\\\\d{4}\", , , , , , , [6]], [, , \"(?:50|68|72)\\\\d{4}\", , , , \"501234\"], [, , \"(?:50|68|72|8[23])\\\\d{4}\", , , , \"501234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"WF\", 681, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\n\"$1 $2 $3\", [\"[4-8]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , \"[48]0\\\\d{4}\", , , , \"401234\"]], WS:[, [, , \"[2-6]\\\\d{4}|8\\\\d{5}(?:\\\\d{4})?|[78]\\\\d{6}\", , , , , , , [5, 6, 7, 10]], [, , \"(?:[2-5]\\\\d|6[1-9])\\\\d{3}\", , , , \"22123\", , , [5]], [, , \"(?:7[25-7]|8(?:[3-7]|9\\\\d{3}))\\\\d{5}\", , , , \"7212345\", , , [7, 10]], [, , \"800\\\\d{3}\", , , , \"800123\", , , [6]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , ,\n, , , , , [-1]], \"WS\", 685, \"0\", , , , , , , , [[, \"(\\\\d{5})\", \"$1\", [\"[2-6]\"]], [, \"(\\\\d{3})(\\\\d{3,7})\", \"$1 $2\", [\"8\"]], [, \"(\\\\d{2})(\\\\d{5})\", \"$1 $2\", [\"7\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], XK:[, [, , \"[23]\\\\d{7,8}|(?:4\\\\d\\\\d|[89]00)\\\\d{5}\", , , , , , , [8, 9]], [, , \"(?:2[89]|39)0\\\\d{6}|[23][89]\\\\d{6}\", , , , \"28012345\"], [, , \"4[3-79]\\\\d{6}\", , , , \"43201234\", , , [8]], [, , \"800\\\\d{5}\", , , , \"80001234\", ,\n, [8]], [, , \"900\\\\d{5}\", , , , \"90001234\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"XK\", 383, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], YE:[, [, , \"(?:1|7\\\\d)\\\\d{7}|[1-7]\\\\d{6}\",\n, , , , , , [7, 8, 9], [6]], [, , \"17\\\\d{6}|(?:[12][2-68]|3[2358]|4[2-58]|5[2-6]|6[3-58]|7[24-68])\\\\d{5}\", , , , \"1234567\", , , [7, 8], [6]], [, , \"7[0137]\\\\d{7}\", , , , \"712345678\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"YE\", 967, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d)(\\\\d{3})(\\\\d{3,4})\", \"$1 $2 $3\", [\"[1-6]|7[24-68]\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"7\"], \"0$1\"]], , [, , , ,\n, , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], YT:[, [, , \"80\\\\d{7}|(?:26|63)9\\\\d{6}\", , , , , , , [9]], [, , \"269(?:0[67]|5[01]|6\\\\d|[78]0)\\\\d{4}\", , , , \"269601234\"], [, , \"639(?:0[0-79]|1[019]|[267]\\\\d|3[09]|[45]0|9[04-79])\\\\d{4}\", , , , \"639012345\"], [, , \"80\\\\d{7}\", , , , \"801234567\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"YT\", 262, \"00\", \"0\", , , \"0\", , , , , , [, , ,\n, , , , , , [-1]], , \"269|63\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], ZA:[, [, , \"[1-9]\\\\d{8}|8\\\\d{4,7}\", , , , , , , [5, 6, 7, 8, 9]], [, , \"(?:1[0-8]|2[1-378]|3[1-69]|4\\\\d|5[1346-8])\\\\d{7}\", , , , \"101234567\", , , [9]], [, , \"8[1-4]\\\\d{3,7}|(?:6\\\\d|7[0-46-9]|85)\\\\d{7}\", , , , \"711234567\"], [, , \"80\\\\d{7}\", , , , \"801234567\", , , [9]], [, , \"(?:86[2-9]|9[0-2]\\\\d)\\\\d{6}\", , , , \"862345678\", , , [9]], [, , \"860\\\\d{6}\", , , , \"860123456\", , , [9]], [, , ,\n, , , , , , [-1]], [, , \"87\\\\d{7}\", , , , \"871234567\", , , [9]], \"ZA\", 27, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"861\\\\d{6}\", , , , \"861123456\", , , [9]], , , [, , , , , , , , , [-1]]], ZM:[, [, , \"800\\\\d{6}|(?:21|76|9\\\\d)\\\\d{7}\",\n, , , , , , [9], [6]], [, , \"21[1-8]\\\\d{6}\", , , , \"211234567\", , , , [6]], [, , \"(?:76|9[5-8])\\\\d{7}\", , , , \"955123456\"], [, , \"800\\\\d{6}\", , , , \"800123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"ZM\", 260, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{3})\", \"$1 $2\", [\"[1-9]\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[28]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{7})\", \"$1 $2\", [\"[79]\"], \"0$1\"]], [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\",\n[\"[28]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{7})\", \"$1 $2\", [\"[79]\"], \"0$1\"]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], ZW:[, [, , \"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], [3, 4]], [, , \"(?:1(?:(?:3\\\\d|9)\\\\d|[4-8])|2(?:(?:(?:0(?:2[014]|5)|(?:2[0157]|31|84|9)\\\\d\\\\d|[56](?:[14]\\\\d\\\\d|20)|7(?:[089]|2[03]|[35]\\\\d\\\\d))\\\\d|4(?:2\\\\d\\\\d|8))\\\\d|1(?:2|[39]\\\\d{4}))|3(?:(?:123|(?:29\\\\d|92)\\\\d)\\\\d\\\\d|7(?:[19]|[56]\\\\d))|5(?:0|1[2-478]|26|[37]2|4(?:2\\\\d{3}|83)|5(?:25\\\\d\\\\d|[78])|[689]\\\\d)|6(?:(?:[16-8]21|28|52[013])\\\\d\\\\d|[39])|8(?:[1349]28|523)\\\\d\\\\d)\\\\d{3}|(?:4\\\\d\\\\d|9[2-9])\\\\d{4,5}|(?:(?:2(?:(?:(?:0|8[146])\\\\d|7[1-7])\\\\d|2(?:[278]\\\\d|92)|58(?:2\\\\d|3))|3(?:[26]|9\\\\d{3})|5(?:4\\\\d|5)\\\\d\\\\d)\\\\d|6(?:(?:(?:[0-246]|[78]\\\\d)\\\\d|37)\\\\d|5[2-8]))\\\\d\\\\d|(?:2(?:[569]\\\\d|8[2-57-9])|3(?:[013-59]\\\\d|8[37])|6[89]8)\\\\d{3}\",\n, , , \"1312345\", , , , [3, 4]], [, , \"7(?:1[2-9]|[37][1-9]|8[2-7])\\\\d{6}\", , , , \"712345678\", , , [9]], [, , \"80(?:[01]\\\\d|20|8[0-8])\\\\d{3}\", , , , \"8001234\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"86(?:1[12]|22|30|44|55|77|8[368])\\\\d{6}\", , , , \"8686123456\", , , [10]], \"ZW\", 263, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\"], [,\n\"(\\\\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})\",\n\"$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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], 800:[, [, , \"\\\\d{8}\", , , , , ,\n, [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"\\\\d{8}\", , , , \"12345678\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"001\", 800, , , , , , , , 1, [[, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], 808:[, [, , \"\\\\d{8}\", , , , , , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , ,\n, , , , , , [-1]], [, , \"\\\\d{8}\", , , , \"12345678\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"001\", 808, , , , , , , , 1, [[, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], 870:[, [, , \"[35-7]\\\\d{8}\", , , , , , , [9]], [, , , , , , , , , [-1]], [, , \"(?:[356]\\\\d|7[6-8])\\\\d{7}\", , , , \"301234567\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , ,\n, , , [-1]], [, , , , , , , , , [-1]], \"001\", 870, , , , , , , , , [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[35-7]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], 878:[, [, , \"10\\\\d{10}\", , , , , , , [12]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"10\\\\d{10}\", , , , \"101234567890\"], \"001\", 878, , , , ,\n, , , 1, [[, \"(\\\\d{2})(\\\\d{5})(\\\\d{5})\", \"$1 $2 $3\", [\"1\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], 881:[, [, , \"[67]\\\\d{8}\", , , , , , , [9]], [, , , , , , , , , [-1]], [, , \"[67]\\\\d{8}\", , , , \"612345678\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"001\", 881, , , , , , , , , [[, \"(\\\\d)(\\\\d{3})(\\\\d{5})\", \"$1 $2 $3\", [\"[67]\"]]], , [,\n, , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], 882:[, [, , \"1\\\\d{6,11}|3\\\\d{6}(?:\\\\d{2,5})?\", , , , , , , [7, 8, 9, 10, 11, 12]], [, , , , , , , , , [-1]], [, , \"3(?:37\\\\d\\\\d|42)\\\\d{4}|3(?:2|47|7\\\\d{3})\\\\d{7}\", , , , \"3421234\", , , [7, 9, 10, 12]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"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})|3(?:45|9\\\\d{3})\\\\d{7}\",\n, , , \"390123456789\"], \"001\", 882, , , , , , , , , [[, \"(\\\\d{2})(\\\\d{5})\", \"$1 $2\", [\"16|342\"]], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{4})\", \"$1 $2 $3\", [\"1\"]], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{3})\", \"$1 $2 $3\", [\"3[23]\"]], [, \"(\\\\d{2})(\\\\d{3,4})(\\\\d{4})\", \"$1 $2 $3\", [\"1\"]], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"34[57]\"]], [, \"(\\\\d{3})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"34\"]], [, \"(\\\\d{2})(\\\\d{4,5})(\\\\d{5})\", \"$1 $2 $3\", [\"[13]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]],\n, , [, , \"348[57]\\\\d{7}\", , , , \"34851234567\", , , [11]]], 883:[, [, , \"51\\\\d{7}(?:\\\\d{3})?\", , , , , , , [9, 12]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"51[013]0\\\\d{8}|5100\\\\d{5}\", , , , \"510012345\"], \"001\", 883, , , , , , , , 1, [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"510\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3 $4\", [\"510\"]], [, \"(\\\\d{4})(\\\\d{4})(\\\\d{4})\",\n\"$1 $2 $3\", [\"5\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], 888:[, [, , \"\\\\d{11}\", , , , , , , [11]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"001\", 888, , , , , , , , 1, [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{5})\", \"$1 $2 $3\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"\\\\d{11}\",\n, , , \"12345678901\"], , , [, , , , , , , , , [-1]]], 979:[, [, , \"\\\\d{9}\", , , , , , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"\\\\d{9}\", , , , \"123456789\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"001\", 979, , , , , , , , 1, [[, \"(\\\\d)(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]]};\n/*\n\n Copyright (C) 2010 The Libphonenumber Authors.\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n*/\ni18n.phonenumbers.PhoneNumberUtil = function() {\n  this.regionToMetadataMap = {};\n};\ngoog.addSingletonGetter(i18n.phonenumbers.PhoneNumberUtil);\ni18n.phonenumbers.Error = {INVALID_COUNTRY_CODE:\"Invalid country calling code\", NOT_A_NUMBER:\"The string supplied did not seem to be a phone number\", TOO_SHORT_AFTER_IDD:\"Phone number too short after IDD\", TOO_SHORT_NSN:\"The string supplied is too short to be a phone number\", TOO_LONG:\"The string supplied is too long to be a phone number\"};\ni18n.phonenumbers.PhoneNumberUtil.NANPA_COUNTRY_CODE_ = 1;\ni18n.phonenumbers.PhoneNumberUtil.MIN_LENGTH_FOR_NSN_ = 2;\ni18n.phonenumbers.PhoneNumberUtil.MAX_LENGTH_FOR_NSN_ = 17;\ni18n.phonenumbers.PhoneNumberUtil.MAX_LENGTH_COUNTRY_CODE_ = 3;\ni18n.phonenumbers.PhoneNumberUtil.MAX_INPUT_STRING_LENGTH_ = 250;\ni18n.phonenumbers.PhoneNumberUtil.UNKNOWN_REGION_ = \"ZZ\";\ni18n.phonenumbers.PhoneNumberUtil.COLOMBIA_MOBILE_TO_FIXED_LINE_PREFIX_ = \"3\";\ni18n.phonenumbers.PhoneNumberUtil.MOBILE_TOKEN_MAPPINGS_ = {54:\"9\"};\ni18n.phonenumbers.PhoneNumberUtil.GEO_MOBILE_COUNTRIES_ = [52, 54, 55];\ni18n.phonenumbers.PhoneNumberUtil.PLUS_SIGN = \"+\";\ni18n.phonenumbers.PhoneNumberUtil.STAR_SIGN_ = \"*\";\ni18n.phonenumbers.PhoneNumberUtil.RFC3966_EXTN_PREFIX_ = \";ext=\";\ni18n.phonenumbers.PhoneNumberUtil.RFC3966_PREFIX_ = \"tel:\";\ni18n.phonenumbers.PhoneNumberUtil.RFC3966_PHONE_CONTEXT_ = \";phone-context=\";\ni18n.phonenumbers.PhoneNumberUtil.RFC3966_ISDN_SUBADDRESS_ = \";isub=\";\ni18n.phonenumbers.PhoneNumberUtil.DIGIT_MAPPINGS = {0:\"0\", 1:\"1\", 2:\"2\", 3:\"3\", 4:\"4\", 5:\"5\", 6:\"6\", 7:\"7\", 8:\"8\", 9:\"9\", \"\\uff10\":\"0\", \"\\uff11\":\"1\", \"\\uff12\":\"2\", \"\\uff13\":\"3\", \"\\uff14\":\"4\", \"\\uff15\":\"5\", \"\\uff16\":\"6\", \"\\uff17\":\"7\", \"\\uff18\":\"8\", \"\\uff19\":\"9\", \"\\u0660\":\"0\", \"\\u0661\":\"1\", \"\\u0662\":\"2\", \"\\u0663\":\"3\", \"\\u0664\":\"4\", \"\\u0665\":\"5\", \"\\u0666\":\"6\", \"\\u0667\":\"7\", \"\\u0668\":\"8\", \"\\u0669\":\"9\", \"\\u06f0\":\"0\", \"\\u06f1\":\"1\", \"\\u06f2\":\"2\", \"\\u06f3\":\"3\", \"\\u06f4\":\"4\", \"\\u06f5\":\"5\", \"\\u06f6\":\"6\", \"\\u06f7\":\"7\",\n\"\\u06f8\":\"8\", \"\\u06f9\":\"9\"};\ni18n.phonenumbers.PhoneNumberUtil.DIALLABLE_CHAR_MAPPINGS_ = {0:\"0\", 1:\"1\", 2:\"2\", 3:\"3\", 4:\"4\", 5:\"5\", 6:\"6\", 7:\"7\", 8:\"8\", 9:\"9\", \"+\":i18n.phonenumbers.PhoneNumberUtil.PLUS_SIGN, \"*\":\"*\", \"#\":\"#\"};\ni18n.phonenumbers.PhoneNumberUtil.ALPHA_MAPPINGS_ = {A:\"2\", B:\"2\", C:\"2\", D:\"3\", E:\"3\", F:\"3\", G:\"4\", H:\"4\", I:\"4\", J:\"5\", K:\"5\", L:\"5\", M:\"6\", N:\"6\", O:\"6\", P:\"7\", Q:\"7\", R:\"7\", S:\"7\", T:\"8\", U:\"8\", V:\"8\", W:\"9\", X:\"9\", Y:\"9\", Z:\"9\"};\ni18n.phonenumbers.PhoneNumberUtil.ALL_NORMALIZATION_MAPPINGS_ = {0:\"0\", 1:\"1\", 2:\"2\", 3:\"3\", 4:\"4\", 5:\"5\", 6:\"6\", 7:\"7\", 8:\"8\", 9:\"9\", \"\\uff10\":\"0\", \"\\uff11\":\"1\", \"\\uff12\":\"2\", \"\\uff13\":\"3\", \"\\uff14\":\"4\", \"\\uff15\":\"5\", \"\\uff16\":\"6\", \"\\uff17\":\"7\", \"\\uff18\":\"8\", \"\\uff19\":\"9\", \"\\u0660\":\"0\", \"\\u0661\":\"1\", \"\\u0662\":\"2\", \"\\u0663\":\"3\", \"\\u0664\":\"4\", \"\\u0665\":\"5\", \"\\u0666\":\"6\", \"\\u0667\":\"7\", \"\\u0668\":\"8\", \"\\u0669\":\"9\", \"\\u06f0\":\"0\", \"\\u06f1\":\"1\", \"\\u06f2\":\"2\", \"\\u06f3\":\"3\", \"\\u06f4\":\"4\", \"\\u06f5\":\"5\", \"\\u06f6\":\"6\",\n\"\\u06f7\":\"7\", \"\\u06f8\":\"8\", \"\\u06f9\":\"9\", A:\"2\", B:\"2\", C:\"2\", D:\"3\", E:\"3\", F:\"3\", G:\"4\", H:\"4\", I:\"4\", J:\"5\", K:\"5\", L:\"5\", M:\"6\", N:\"6\", O:\"6\", P:\"7\", Q:\"7\", R:\"7\", S:\"7\", T:\"8\", U:\"8\", V:\"8\", W:\"9\", X:\"9\", Y:\"9\", Z:\"9\"};\ni18n.phonenumbers.PhoneNumberUtil.ALL_PLUS_NUMBER_GROUPING_SYMBOLS_ = {0:\"0\", 1:\"1\", 2:\"2\", 3:\"3\", 4:\"4\", 5:\"5\", 6:\"6\", 7:\"7\", 8:\"8\", 9:\"9\", A:\"A\", B:\"B\", C:\"C\", D:\"D\", E:\"E\", F:\"F\", G:\"G\", H:\"H\", I:\"I\", J:\"J\", K:\"K\", L:\"L\", M:\"M\", N:\"N\", O:\"O\", P:\"P\", Q:\"Q\", R:\"R\", S:\"S\", T:\"T\", U:\"U\", V:\"V\", W:\"W\", X:\"X\", Y:\"Y\", Z:\"Z\", a:\"A\", b:\"B\", c:\"C\", d:\"D\", e:\"E\", f:\"F\", g:\"G\", h:\"H\", i:\"I\", j:\"J\", k:\"K\", l:\"L\", m:\"M\", n:\"N\", o:\"O\", p:\"P\", q:\"Q\", r:\"R\", s:\"S\", t:\"T\", u:\"U\", v:\"V\", w:\"W\", x:\"X\", y:\"Y\", z:\"Z\",\n\"-\":\"-\", \"\\uff0d\":\"-\", \"\\u2010\":\"-\", \"\\u2011\":\"-\", \"\\u2012\":\"-\", \"\\u2013\":\"-\", \"\\u2014\":\"-\", \"\\u2015\":\"-\", \"\\u2212\":\"-\", \"/\":\"/\", \"\\uff0f\":\"/\", \" \":\" \", \"\\u3000\":\" \", \"\\u2060\":\" \", \".\":\".\", \"\\uff0e\":\".\"};\ni18n.phonenumbers.PhoneNumberUtil.SINGLE_INTERNATIONAL_PREFIX_ = /[\\d]+(?:[~\\u2053\\u223C\\uFF5E][\\d]+)?/;\ni18n.phonenumbers.PhoneNumberUtil.VALID_PUNCTUATION = \"-x\\u2010-\\u2015\\u2212\\u30fc\\uff0d-\\uff0f \\u00a0\\u00ad\\u200b\\u2060\\u3000()\\uff08\\uff09\\uff3b\\uff3d.\\\\[\\\\]/~\\u2053\\u223c\\uff5e\";\ni18n.phonenumbers.PhoneNumberUtil.VALID_DIGITS_ = \"0-9\\uff10-\\uff19\\u0660-\\u0669\\u06f0-\\u06f9\";\ni18n.phonenumbers.PhoneNumberUtil.VALID_ALPHA_ = \"A-Za-z\";\ni18n.phonenumbers.PhoneNumberUtil.PLUS_CHARS_ = \"+\\uff0b\";\ni18n.phonenumbers.PhoneNumberUtil.PLUS_CHARS_PATTERN = new RegExp(\"[\" + i18n.phonenumbers.PhoneNumberUtil.PLUS_CHARS_ + \"]+\");\ni18n.phonenumbers.PhoneNumberUtil.LEADING_PLUS_CHARS_PATTERN = new RegExp(\"^[\" + i18n.phonenumbers.PhoneNumberUtil.PLUS_CHARS_ + \"]+\");\ni18n.phonenumbers.PhoneNumberUtil.SEPARATOR_PATTERN_ = \"[\" + i18n.phonenumbers.PhoneNumberUtil.VALID_PUNCTUATION + \"]+\";\ni18n.phonenumbers.PhoneNumberUtil.CAPTURING_DIGIT_PATTERN = new RegExp(\"([\" + i18n.phonenumbers.PhoneNumberUtil.VALID_DIGITS_ + \"])\");\ni18n.phonenumbers.PhoneNumberUtil.VALID_START_CHAR_PATTERN_ = new RegExp(\"[\" + i18n.phonenumbers.PhoneNumberUtil.PLUS_CHARS_ + i18n.phonenumbers.PhoneNumberUtil.VALID_DIGITS_ + \"]\");\ni18n.phonenumbers.PhoneNumberUtil.SECOND_NUMBER_START_PATTERN_ = /[\\\\\\/] *x/;\ni18n.phonenumbers.PhoneNumberUtil.UNWANTED_END_CHAR_PATTERN_ = new RegExp(\"[^\" + i18n.phonenumbers.PhoneNumberUtil.VALID_DIGITS_ + i18n.phonenumbers.PhoneNumberUtil.VALID_ALPHA_ + \"#]+$\");\ni18n.phonenumbers.PhoneNumberUtil.VALID_ALPHA_PHONE_PATTERN_ = /(?:.*?[A-Za-z]){3}.*/;\ni18n.phonenumbers.PhoneNumberUtil.MIN_LENGTH_PHONE_NUMBER_PATTERN_ = \"[\" + i18n.phonenumbers.PhoneNumberUtil.VALID_DIGITS_ + \"]{\" + i18n.phonenumbers.PhoneNumberUtil.MIN_LENGTH_FOR_NSN_ + \"}\";\ni18n.phonenumbers.PhoneNumberUtil.VALID_PHONE_NUMBER_ = \"[\" + i18n.phonenumbers.PhoneNumberUtil.PLUS_CHARS_ + \"]*(?:[\" + i18n.phonenumbers.PhoneNumberUtil.VALID_PUNCTUATION + i18n.phonenumbers.PhoneNumberUtil.STAR_SIGN_ + \"]*[\" + i18n.phonenumbers.PhoneNumberUtil.VALID_DIGITS_ + \"]){3,}[\" + i18n.phonenumbers.PhoneNumberUtil.VALID_PUNCTUATION + i18n.phonenumbers.PhoneNumberUtil.STAR_SIGN_ + i18n.phonenumbers.PhoneNumberUtil.VALID_ALPHA_ + i18n.phonenumbers.PhoneNumberUtil.VALID_DIGITS_ + \"]*\";\ni18n.phonenumbers.PhoneNumberUtil.DEFAULT_EXTN_PREFIX_ = \" ext. \";\ni18n.phonenumbers.PhoneNumberUtil.CAPTURING_EXTN_DIGITS_ = \"([\" + i18n.phonenumbers.PhoneNumberUtil.VALID_DIGITS_ + \"]{1,7})\";\ni18n.phonenumbers.PhoneNumberUtil.EXTN_PATTERNS_FOR_PARSING_ = i18n.phonenumbers.PhoneNumberUtil.RFC3966_EXTN_PREFIX_ + i18n.phonenumbers.PhoneNumberUtil.CAPTURING_EXTN_DIGITS_ + \"|[ \\u00a0\\\\t,]*(?:e?xt(?:ensi(?:o\\u0301?|\\u00f3))?n?|\\uff45?\\uff58\\uff54\\uff4e?|\\u0434\\u043e\\u0431|[;,x\\uff58#\\uff03~\\uff5e]|int|anexo|\\uff49\\uff4e\\uff54)[:\\\\.\\uff0e]?[ \\u00a0\\\\t,-]*\" + i18n.phonenumbers.PhoneNumberUtil.CAPTURING_EXTN_DIGITS_ + \"#?|[- ]+([\" + i18n.phonenumbers.PhoneNumberUtil.VALID_DIGITS_ + \"]{1,5})#\";\ni18n.phonenumbers.PhoneNumberUtil.EXTN_PATTERN_ = new RegExp(\"(?:\" + i18n.phonenumbers.PhoneNumberUtil.EXTN_PATTERNS_FOR_PARSING_ + \")$\", \"i\");\ni18n.phonenumbers.PhoneNumberUtil.VALID_PHONE_NUMBER_PATTERN_ = new RegExp(\"^\" + i18n.phonenumbers.PhoneNumberUtil.MIN_LENGTH_PHONE_NUMBER_PATTERN_ + \"$|^\" + i18n.phonenumbers.PhoneNumberUtil.VALID_PHONE_NUMBER_ + \"(?:\" + i18n.phonenumbers.PhoneNumberUtil.EXTN_PATTERNS_FOR_PARSING_ + \")?$\", \"i\");\ni18n.phonenumbers.PhoneNumberUtil.NON_DIGITS_PATTERN_ = /\\D+/;\ni18n.phonenumbers.PhoneNumberUtil.FIRST_GROUP_PATTERN_ = /(\\$\\d)/;\ni18n.phonenumbers.PhoneNumberUtil.NP_PATTERN_ = /\\$NP/;\ni18n.phonenumbers.PhoneNumberUtil.FG_PATTERN_ = /\\$FG/;\ni18n.phonenumbers.PhoneNumberUtil.CC_PATTERN_ = /\\$CC/;\ni18n.phonenumbers.PhoneNumberUtil.FIRST_GROUP_ONLY_PREFIX_PATTERN_ = /^\\(?\\$1\\)?$/;\ni18n.phonenumbers.PhoneNumberUtil.REGION_CODE_FOR_NON_GEO_ENTITY = \"001\";\ni18n.phonenumbers.PhoneNumberFormat = {E164:0, INTERNATIONAL:1, NATIONAL:2, RFC3966:3};\ni18n.phonenumbers.PhoneNumberType = {FIXED_LINE:0, MOBILE:1, FIXED_LINE_OR_MOBILE:2, TOLL_FREE:3, PREMIUM_RATE:4, SHARED_COST:5, VOIP:6, PERSONAL_NUMBER:7, PAGER:8, UAN:9, VOICEMAIL:10, UNKNOWN:-1};\ni18n.phonenumbers.PhoneNumberUtil.MatchType = {NOT_A_NUMBER:0, NO_MATCH:1, SHORT_NSN_MATCH:2, NSN_MATCH:3, EXACT_MATCH:4};\ni18n.phonenumbers.PhoneNumberUtil.ValidationResult = {IS_POSSIBLE:0, IS_POSSIBLE_LOCAL_ONLY:4, INVALID_COUNTRY_CODE:1, TOO_SHORT:2, INVALID_LENGTH:5, TOO_LONG:3};\ni18n.phonenumbers.PhoneNumberUtil.extractPossibleNumber = function(a) {\n  var b = a.search(i18n.phonenumbers.PhoneNumberUtil.VALID_START_CHAR_PATTERN_);\n  0 <= b ? (a = a.substring(b), a = a.replace(i18n.phonenumbers.PhoneNumberUtil.UNWANTED_END_CHAR_PATTERN_, \"\"), b = a.search(i18n.phonenumbers.PhoneNumberUtil.SECOND_NUMBER_START_PATTERN_), 0 <= b && (a = a.substring(0, b))) : a = \"\";\n  return a;\n};\ni18n.phonenumbers.PhoneNumberUtil.isViablePhoneNumber = function(a) {\n  return a.length < i18n.phonenumbers.PhoneNumberUtil.MIN_LENGTH_FOR_NSN_ ? !1 : i18n.phonenumbers.PhoneNumberUtil.matchesEntirely(i18n.phonenumbers.PhoneNumberUtil.VALID_PHONE_NUMBER_PATTERN_, a);\n};\ni18n.phonenumbers.PhoneNumberUtil.normalize = function(a) {\n  return i18n.phonenumbers.PhoneNumberUtil.matchesEntirely(i18n.phonenumbers.PhoneNumberUtil.VALID_ALPHA_PHONE_PATTERN_, a) ? i18n.phonenumbers.PhoneNumberUtil.normalizeHelper_(a, i18n.phonenumbers.PhoneNumberUtil.ALL_NORMALIZATION_MAPPINGS_, !0) : i18n.phonenumbers.PhoneNumberUtil.normalizeDigitsOnly(a);\n};\ni18n.phonenumbers.PhoneNumberUtil.normalizeSB_ = function(a) {\n  var b = i18n.phonenumbers.PhoneNumberUtil.normalize(a.toString());\n  a.clear();\n  a.append(b);\n};\ni18n.phonenumbers.PhoneNumberUtil.normalizeDigitsOnly = function(a) {\n  return i18n.phonenumbers.PhoneNumberUtil.normalizeHelper_(a, i18n.phonenumbers.PhoneNumberUtil.DIGIT_MAPPINGS, !0);\n};\ni18n.phonenumbers.PhoneNumberUtil.normalizeDiallableCharsOnly = function(a) {\n  return i18n.phonenumbers.PhoneNumberUtil.normalizeHelper_(a, i18n.phonenumbers.PhoneNumberUtil.DIALLABLE_CHAR_MAPPINGS_, !0);\n};\ni18n.phonenumbers.PhoneNumberUtil.convertAlphaCharactersInNumber = function(a) {\n  return i18n.phonenumbers.PhoneNumberUtil.normalizeHelper_(a, i18n.phonenumbers.PhoneNumberUtil.ALL_NORMALIZATION_MAPPINGS_, !1);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getLengthOfGeographicalAreaCode = function(a) {\n  var b = this.getMetadataForRegion(this.getRegionCodeForNumber(a));\n  return null != b && (b.hasNationalPrefix() || a.hasItalianLeadingZero()) && this.isNumberGeographical(a) ? this.getLengthOfNationalDestinationCode(a) : 0;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getLengthOfNationalDestinationCode = function(a) {\n  if (a.hasExtension()) {\n    var b = a.clone();\n    b.clearExtension();\n  } else {\n    b = a;\n  }\n  b = this.format(b, i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL).split(i18n.phonenumbers.PhoneNumberUtil.NON_DIGITS_PATTERN_);\n  0 == b[0].length && b.shift();\n  return 2 >= b.length ? 0 : this.getNumberType(a) == i18n.phonenumbers.PhoneNumberType.MOBILE && (a = i18n.phonenumbers.PhoneNumberUtil.getCountryMobileToken(a.getCountryCodeOrDefault()), \"\" != a) ? b[2].length + a.length : b[1].length;\n};\ni18n.phonenumbers.PhoneNumberUtil.getCountryMobileToken = function(a) {\n  return i18n.phonenumbers.PhoneNumberUtil.MOBILE_TOKEN_MAPPINGS_[a] || \"\";\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getSupportedRegions = function() {\n  return goog.array.filter(Object.keys(i18n.phonenumbers.metadata.countryToMetadata), function(a) {\n    return isNaN(a);\n  });\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getSupportedGlobalNetworkCallingCodes = function() {\n  var a = goog.array.filter(Object.keys(i18n.phonenumbers.metadata.countryToMetadata), function(a) {\n    return !isNaN(a);\n  });\n  return goog.array.map(a, function(a) {\n    return parseInt(a, 10);\n  });\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getSupportedCallingCodes = function() {\n  var a = Object.keys(i18n.phonenumbers.metadata.countryCodeToRegionCodeMap);\n  return goog.array.join(this.getSupportedGlobalNetworkCallingCodes(), goog.array.map(a, function(a) {\n    return parseInt(a, 10);\n  }));\n};\ni18n.phonenumbers.PhoneNumberUtil.descHasPossibleNumberData_ = function(a) {\n  return null != a && (1 != a.possibleLengthCount() || -1 != a.possibleLengthArray()[0]);\n};\ni18n.phonenumbers.PhoneNumberUtil.descHasData_ = function(a) {\n  return null != a && (a.hasExampleNumber() || i18n.phonenumbers.PhoneNumberUtil.descHasPossibleNumberData_(a) || a.hasNationalNumberPattern());\n};\ni18n.phonenumbers.PhoneNumberUtil.getSupportedTypesForMetadata_ = function(a) {\n  var b = [];\n  goog.object.forEach(i18n.phonenumbers.PhoneNumberType, function(c) {\n    if (c != i18n.phonenumbers.PhoneNumberType.FIXED_LINE_OR_MOBILE && c != i18n.phonenumbers.PhoneNumberType.UNKNOWN) {\n      var d = i18n.phonenumbers.PhoneNumberUtil.getNumberDescByType_(a, c);\n      i18n.phonenumbers.PhoneNumberUtil.descHasData_(d) && b.push(c);\n    }\n  });\n  return b;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getSupportedTypesForRegion = function(a) {\n  return this.isValidRegionCode_(a) ? i18n.phonenumbers.PhoneNumberUtil.getSupportedTypesForMetadata_(this.getMetadataForRegion(a)) : [];\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getSupportedTypesForNonGeoEntity = function(a) {\n  a = this.getMetadataForNonGeographicalRegion(a);\n  return null == a ? [] : i18n.phonenumbers.PhoneNumberUtil.getSupportedTypesForMetadata_(a);\n};\ni18n.phonenumbers.PhoneNumberUtil.normalizeHelper_ = function(a, b, c) {\n  for (var d = new goog.string.StringBuffer, e, f, g = a.length, h = 0; h < g; ++h) {\n    e = a.charAt(h), f = b[e.toUpperCase()], null != f ? d.append(f) : c || d.append(e);\n  }\n  return d.toString();\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.formattingRuleHasFirstGroupOnly = function(a) {\n  return 0 == a.length || i18n.phonenumbers.PhoneNumberUtil.FIRST_GROUP_ONLY_PREFIX_PATTERN_.test(a);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isNumberGeographical = function(a) {\n  var b = this.getNumberType(a);\n  return b == i18n.phonenumbers.PhoneNumberType.FIXED_LINE || b == i18n.phonenumbers.PhoneNumberType.FIXED_LINE_OR_MOBILE || goog.array.contains(i18n.phonenumbers.PhoneNumberUtil.GEO_MOBILE_COUNTRIES_, a.getCountryCodeOrDefault()) && b == i18n.phonenumbers.PhoneNumberType.MOBILE;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isValidRegionCode_ = function(a) {\n  return null != a && isNaN(a) && a.toUpperCase() in i18n.phonenumbers.metadata.countryToMetadata;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.hasValidCountryCallingCode_ = function(a) {\n  return a in i18n.phonenumbers.metadata.countryCodeToRegionCodeMap;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.format = function(a, b) {\n  if (0 == a.getNationalNumber() && a.hasRawInput()) {\n    var c = a.getRawInputOrDefault();\n    if (0 < c.length) {\n      return c;\n    }\n  }\n  c = a.getCountryCodeOrDefault();\n  var d = this.getNationalSignificantNumber(a);\n  if (b == i18n.phonenumbers.PhoneNumberFormat.E164) {\n    return this.prefixNumberWithCountryCallingCode_(c, i18n.phonenumbers.PhoneNumberFormat.E164, d, \"\");\n  }\n  if (!this.hasValidCountryCallingCode_(c)) {\n    return d;\n  }\n  var e = this.getRegionCodeForCountryCode(c), f = this.getMetadataForRegionOrCallingCode_(c, e);\n  e = this.maybeGetFormattedExtension_(a, f, b);\n  d = this.formatNsn_(d, f, b);\n  return this.prefixNumberWithCountryCallingCode_(c, b, d, e);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.formatByPattern = function(a, b, c) {\n  var d = a.getCountryCodeOrDefault(), e = this.getNationalSignificantNumber(a);\n  if (!this.hasValidCountryCallingCode_(d)) {\n    return e;\n  }\n  var f = this.getRegionCodeForCountryCode(d);\n  f = this.getMetadataForRegionOrCallingCode_(d, f);\n  var g = this.chooseFormattingPatternForNumber_(c, e);\n  if (null != g) {\n    c = g.clone();\n    g = g.getNationalPrefixFormattingRuleOrDefault();\n    if (0 < g.length) {\n      var h = f.getNationalPrefixOrDefault();\n      0 < h.length ? (g = g.replace(i18n.phonenumbers.PhoneNumberUtil.NP_PATTERN_, h).replace(i18n.phonenumbers.PhoneNumberUtil.FG_PATTERN_, \"$1\"), c.setNationalPrefixFormattingRule(g)) : c.clearNationalPrefixFormattingRule();\n    }\n    e = this.formatNsnUsingPattern_(e, c, b);\n  }\n  a = this.maybeGetFormattedExtension_(a, f, b);\n  return this.prefixNumberWithCountryCallingCode_(d, b, e, a);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.formatNationalNumberWithCarrierCode = function(a, b) {\n  var c = a.getCountryCodeOrDefault(), d = this.getNationalSignificantNumber(a);\n  if (!this.hasValidCountryCallingCode_(c)) {\n    return d;\n  }\n  var e = this.getRegionCodeForCountryCode(c), f = this.getMetadataForRegionOrCallingCode_(c, e);\n  e = this.maybeGetFormattedExtension_(a, f, i18n.phonenumbers.PhoneNumberFormat.NATIONAL);\n  d = this.formatNsn_(d, f, i18n.phonenumbers.PhoneNumberFormat.NATIONAL, b);\n  return this.prefixNumberWithCountryCallingCode_(c, i18n.phonenumbers.PhoneNumberFormat.NATIONAL, d, e);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getMetadataForRegionOrCallingCode_ = function(a, b) {\n  return i18n.phonenumbers.PhoneNumberUtil.REGION_CODE_FOR_NON_GEO_ENTITY == b ? this.getMetadataForNonGeographicalRegion(a) : this.getMetadataForRegion(b);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.formatNationalNumberWithPreferredCarrierCode = function(a, b) {\n  return this.formatNationalNumberWithCarrierCode(a, 0 < a.getPreferredDomesticCarrierCodeOrDefault().length ? a.getPreferredDomesticCarrierCodeOrDefault() : b);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.formatNumberForMobileDialing = function(a, b, c) {\n  var d = a.getCountryCodeOrDefault();\n  if (!this.hasValidCountryCallingCode_(d)) {\n    return a.hasRawInput() ? a.getRawInputOrDefault() : \"\";\n  }\n  var e = \"\";\n  a = a.clone();\n  a.clearExtension();\n  var f = this.getRegionCodeForCountryCode(d), g = this.getNumberType(a), h = g != i18n.phonenumbers.PhoneNumberType.UNKNOWN;\n  if (b == f) {\n    e = g == i18n.phonenumbers.PhoneNumberType.FIXED_LINE || g == i18n.phonenumbers.PhoneNumberType.MOBILE || g == i18n.phonenumbers.PhoneNumberType.FIXED_LINE_OR_MOBILE, \"CO\" == f && g == i18n.phonenumbers.PhoneNumberType.FIXED_LINE ? e = this.formatNationalNumberWithCarrierCode(a, i18n.phonenumbers.PhoneNumberUtil.COLOMBIA_MOBILE_TO_FIXED_LINE_PREFIX_) : \"BR\" == f && e ? e = 0 < a.getPreferredDomesticCarrierCodeOrDefault().length ? this.formatNationalNumberWithPreferredCarrierCode(a, \"\") : \"\" :\n    d == i18n.phonenumbers.PhoneNumberUtil.NANPA_COUNTRY_CODE_ ? (b = this.getMetadataForRegion(b), e = this.canBeInternationallyDialled(a) && this.testNumberLength_(this.getNationalSignificantNumber(a), b) != i18n.phonenumbers.PhoneNumberUtil.ValidationResult.TOO_SHORT ? this.format(a, i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL) : this.format(a, i18n.phonenumbers.PhoneNumberFormat.NATIONAL)) : e = (f == i18n.phonenumbers.PhoneNumberUtil.REGION_CODE_FOR_NON_GEO_ENTITY || (\"MX\" == f || \"CL\" ==\n    f || \"UZ\" == f) && e) && this.canBeInternationallyDialled(a) ? this.format(a, i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL) : this.format(a, i18n.phonenumbers.PhoneNumberFormat.NATIONAL);\n  } else {\n    if (h && this.canBeInternationallyDialled(a)) {\n      return c ? this.format(a, i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL) : this.format(a, i18n.phonenumbers.PhoneNumberFormat.E164);\n    }\n  }\n  return c ? e : i18n.phonenumbers.PhoneNumberUtil.normalizeDiallableCharsOnly(e);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.formatOutOfCountryCallingNumber = function(a, b) {\n  if (!this.isValidRegionCode_(b)) {\n    return this.format(a, i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL);\n  }\n  var c = a.getCountryCodeOrDefault(), d = this.getNationalSignificantNumber(a);\n  if (!this.hasValidCountryCallingCode_(c)) {\n    return d;\n  }\n  if (c == i18n.phonenumbers.PhoneNumberUtil.NANPA_COUNTRY_CODE_) {\n    if (this.isNANPACountry(b)) {\n      return c + \" \" + this.format(a, i18n.phonenumbers.PhoneNumberFormat.NATIONAL);\n    }\n  } else {\n    if (c == this.getCountryCodeForValidRegion_(b)) {\n      return this.format(a, i18n.phonenumbers.PhoneNumberFormat.NATIONAL);\n    }\n  }\n  var e = this.getMetadataForRegion(b), f = e.getInternationalPrefixOrDefault(), g = \"\";\n  i18n.phonenumbers.PhoneNumberUtil.matchesEntirely(i18n.phonenumbers.PhoneNumberUtil.SINGLE_INTERNATIONAL_PREFIX_, f) ? g = f : e.hasPreferredInternationalPrefix() && (g = e.getPreferredInternationalPrefixOrDefault());\n  e = this.getRegionCodeForCountryCode(c);\n  e = this.getMetadataForRegionOrCallingCode_(c, e);\n  d = this.formatNsn_(d, e, i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL);\n  e = this.maybeGetFormattedExtension_(a, e, i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL);\n  return 0 < g.length ? g + \" \" + c + \" \" + d + e : this.prefixNumberWithCountryCallingCode_(c, i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL, d, e);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.formatInOriginalFormat = function(a, b) {\n  if (a.hasRawInput() && !this.hasFormattingPatternForNumber_(a)) {\n    return a.getRawInputOrDefault();\n  }\n  if (!a.hasCountryCodeSource()) {\n    return this.format(a, i18n.phonenumbers.PhoneNumberFormat.NATIONAL);\n  }\n  switch(a.getCountryCodeSource()) {\n    case i18n.phonenumbers.PhoneNumber.CountryCodeSource.FROM_NUMBER_WITH_PLUS_SIGN:\n      var c = this.format(a, i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL);\n      break;\n    case i18n.phonenumbers.PhoneNumber.CountryCodeSource.FROM_NUMBER_WITH_IDD:\n      c = this.formatOutOfCountryCallingNumber(a, b);\n      break;\n    case i18n.phonenumbers.PhoneNumber.CountryCodeSource.FROM_NUMBER_WITHOUT_PLUS_SIGN:\n      c = this.format(a, i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL).substring(1);\n      break;\n    default:\n      var d = this.getRegionCodeForCountryCode(a.getCountryCodeOrDefault()), e = this.getNddPrefixForRegion(d, !0);\n      c = this.format(a, i18n.phonenumbers.PhoneNumberFormat.NATIONAL);\n      if (null != e && 0 != e.length && !this.rawInputContainsNationalPrefix_(a.getRawInputOrDefault(), e, d) && (d = this.getMetadataForRegion(d), e = this.getNationalSignificantNumber(a), d = this.chooseFormattingPatternForNumber_(d.numberFormatArray(), e), null != d)) {\n        e = d.getNationalPrefixFormattingRuleOrDefault();\n        var f = e.indexOf(\"$1\");\n        0 >= f || (e = e.substring(0, f), e = i18n.phonenumbers.PhoneNumberUtil.normalizeDigitsOnly(e), 0 != e.length && (c = d.clone(), c.clearNationalPrefixFormattingRule(), c = this.formatByPattern(a, i18n.phonenumbers.PhoneNumberFormat.NATIONAL, [c])));\n      }\n  }\n  d = a.getRawInputOrDefault();\n  null != c && 0 < d.length && (e = i18n.phonenumbers.PhoneNumberUtil.normalizeDiallableCharsOnly(c), f = i18n.phonenumbers.PhoneNumberUtil.normalizeDiallableCharsOnly(d), e != f && (c = d));\n  return c;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.rawInputContainsNationalPrefix_ = function(a, b, c) {\n  a = i18n.phonenumbers.PhoneNumberUtil.normalizeDigitsOnly(a);\n  if (goog.string.startsWith(a, b)) {\n    try {\n      return this.isValidNumber(this.parse(a.substring(b.length), c));\n    } catch (d) {\n    }\n  }\n  return !1;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.hasFormattingPatternForNumber_ = function(a) {\n  var b = a.getCountryCodeOrDefault(), c = this.getRegionCodeForCountryCode(b);\n  b = this.getMetadataForRegionOrCallingCode_(b, c);\n  if (null == b) {\n    return !1;\n  }\n  a = this.getNationalSignificantNumber(a);\n  return null != this.chooseFormattingPatternForNumber_(b.numberFormatArray(), a);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.formatOutOfCountryKeepingAlphaChars = function(a, b) {\n  var c = a.getRawInputOrDefault();\n  if (0 == c.length) {\n    return this.formatOutOfCountryCallingNumber(a, b);\n  }\n  var d = a.getCountryCodeOrDefault();\n  if (!this.hasValidCountryCallingCode_(d)) {\n    return c;\n  }\n  c = i18n.phonenumbers.PhoneNumberUtil.normalizeHelper_(c, i18n.phonenumbers.PhoneNumberUtil.ALL_PLUS_NUMBER_GROUPING_SYMBOLS_, !0);\n  var e = this.getNationalSignificantNumber(a);\n  if (3 < e.length) {\n    var f = c.indexOf(e.substring(0, 3));\n    -1 != f && (c = c.substring(f));\n  }\n  f = this.getMetadataForRegion(b);\n  if (d == i18n.phonenumbers.PhoneNumberUtil.NANPA_COUNTRY_CODE_) {\n    if (this.isNANPACountry(b)) {\n      return d + \" \" + c;\n    }\n  } else {\n    if (null != f && d == this.getCountryCodeForValidRegion_(b)) {\n      d = this.chooseFormattingPatternForNumber_(f.numberFormatArray(), e);\n      if (null == d) {\n        return c;\n      }\n      d = d.clone();\n      d.setPattern(\"(\\\\d+)(.*)\");\n      d.setFormat(\"$1$2\");\n      return this.formatNsnUsingPattern_(c, d, i18n.phonenumbers.PhoneNumberFormat.NATIONAL);\n    }\n  }\n  e = \"\";\n  null != f && (e = f.getInternationalPrefixOrDefault(), e = i18n.phonenumbers.PhoneNumberUtil.matchesEntirely(i18n.phonenumbers.PhoneNumberUtil.SINGLE_INTERNATIONAL_PREFIX_, e) ? e : f.getPreferredInternationalPrefixOrDefault());\n  f = this.getRegionCodeForCountryCode(d);\n  f = this.getMetadataForRegionOrCallingCode_(d, f);\n  f = this.maybeGetFormattedExtension_(a, f, i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL);\n  return 0 < e.length ? e + \" \" + d + \" \" + c + f : this.prefixNumberWithCountryCallingCode_(d, i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL, c, f);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getNationalSignificantNumber = function(a) {\n  if (!a.hasNationalNumber()) {\n    return \"\";\n  }\n  var b = \"\" + a.getNationalNumber();\n  return a.hasItalianLeadingZero() && a.getItalianLeadingZero() && 0 < a.getNumberOfLeadingZerosOrDefault() ? Array(a.getNumberOfLeadingZerosOrDefault() + 1).join(\"0\") + b : b;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.prefixNumberWithCountryCallingCode_ = function(a, b, c, d) {\n  switch(b) {\n    case i18n.phonenumbers.PhoneNumberFormat.E164:\n      return i18n.phonenumbers.PhoneNumberUtil.PLUS_SIGN + a + c + d;\n    case i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL:\n      return i18n.phonenumbers.PhoneNumberUtil.PLUS_SIGN + a + \" \" + c + d;\n    case i18n.phonenumbers.PhoneNumberFormat.RFC3966:\n      return i18n.phonenumbers.PhoneNumberUtil.RFC3966_PREFIX_ + i18n.phonenumbers.PhoneNumberUtil.PLUS_SIGN + a + \"-\" + c + d;\n    default:\n      return c + d;\n  }\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.formatNsn_ = function(a, b, c, d) {\n  b = 0 == b.intlNumberFormatArray().length || c == i18n.phonenumbers.PhoneNumberFormat.NATIONAL ? b.numberFormatArray() : b.intlNumberFormatArray();\n  b = this.chooseFormattingPatternForNumber_(b, a);\n  return null == b ? a : this.formatNsnUsingPattern_(a, b, c, d);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.chooseFormattingPatternForNumber_ = function(a, b) {\n  for (var c, d = a.length, e = 0; e < d; ++e) {\n    c = a[e];\n    var f = c.leadingDigitsPatternCount();\n    if (0 == f || 0 == b.search(c.getLeadingDigitsPattern(f - 1))) {\n      if (f = new RegExp(c.getPattern()), i18n.phonenumbers.PhoneNumberUtil.matchesEntirely(f, b)) {\n        return c;\n      }\n    }\n  }\n  return null;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.formatNsnUsingPattern_ = function(a, b, c, d) {\n  var e = b.getFormatOrDefault(), f = new RegExp(b.getPattern()), g = b.getDomesticCarrierCodeFormattingRuleOrDefault();\n  c == i18n.phonenumbers.PhoneNumberFormat.NATIONAL && null != d && 0 < d.length && 0 < g.length ? (b = g.replace(i18n.phonenumbers.PhoneNumberUtil.CC_PATTERN_, d), e = e.replace(i18n.phonenumbers.PhoneNumberUtil.FIRST_GROUP_PATTERN_, b), a = a.replace(f, e)) : (b = b.getNationalPrefixFormattingRuleOrDefault(), a = c == i18n.phonenumbers.PhoneNumberFormat.NATIONAL && null != b && 0 < b.length ? a.replace(f, e.replace(i18n.phonenumbers.PhoneNumberUtil.FIRST_GROUP_PATTERN_, b)) : a.replace(f, e));\n  c == i18n.phonenumbers.PhoneNumberFormat.RFC3966 && (a = a.replace(new RegExp(\"^\" + i18n.phonenumbers.PhoneNumberUtil.SEPARATOR_PATTERN_), \"\"), a = a.replace(new RegExp(i18n.phonenumbers.PhoneNumberUtil.SEPARATOR_PATTERN_, \"g\"), \"-\"));\n  return a;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getExampleNumber = function(a) {\n  return this.getExampleNumberForType(a, i18n.phonenumbers.PhoneNumberType.FIXED_LINE);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getExampleNumberForType = function(a, b) {\n  if (!this.isValidRegionCode_(a)) {\n    return null;\n  }\n  var c = i18n.phonenumbers.PhoneNumberUtil.getNumberDescByType_(this.getMetadataForRegion(a), b);\n  try {\n    if (c.hasExampleNumber()) {\n      return this.parse(c.getExampleNumber(), a);\n    }\n  } catch (d) {\n  }\n  return null;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getExampleNumberForNonGeoEntity = function(a) {\n  var b = this.getMetadataForNonGeographicalRegion(a);\n  if (null != b && (b = goog.array.find([b.getMobile(), b.getTollFree(), b.getSharedCost(), b.getVoip(), b.getVoicemail(), b.getUan(), b.getPremiumRate()], function(a, b) {\n    return a.hasExampleNumber();\n  }), null != b)) {\n    try {\n      return this.parse(\"+\" + a + b.getExampleNumber(), \"ZZ\");\n    } catch (c) {\n    }\n  }\n  return null;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.maybeGetFormattedExtension_ = function(a, b, c) {\n  return a.hasExtension() && 0 != a.getExtension().length ? c == i18n.phonenumbers.PhoneNumberFormat.RFC3966 ? i18n.phonenumbers.PhoneNumberUtil.RFC3966_EXTN_PREFIX_ + a.getExtension() : b.hasPreferredExtnPrefix() ? b.getPreferredExtnPrefix() + a.getExtensionOrDefault() : i18n.phonenumbers.PhoneNumberUtil.DEFAULT_EXTN_PREFIX_ + a.getExtensionOrDefault() : \"\";\n};\ni18n.phonenumbers.PhoneNumberUtil.getNumberDescByType_ = function(a, b) {\n  switch(b) {\n    case i18n.phonenumbers.PhoneNumberType.PREMIUM_RATE:\n      return a.getPremiumRate();\n    case i18n.phonenumbers.PhoneNumberType.TOLL_FREE:\n      return a.getTollFree();\n    case i18n.phonenumbers.PhoneNumberType.MOBILE:\n      return a.getMobile();\n    case i18n.phonenumbers.PhoneNumberType.FIXED_LINE:\n    case i18n.phonenumbers.PhoneNumberType.FIXED_LINE_OR_MOBILE:\n      return a.getFixedLine();\n    case i18n.phonenumbers.PhoneNumberType.SHARED_COST:\n      return a.getSharedCost();\n    case i18n.phonenumbers.PhoneNumberType.VOIP:\n      return a.getVoip();\n    case i18n.phonenumbers.PhoneNumberType.PERSONAL_NUMBER:\n      return a.getPersonalNumber();\n    case i18n.phonenumbers.PhoneNumberType.PAGER:\n      return a.getPager();\n    case i18n.phonenumbers.PhoneNumberType.UAN:\n      return a.getUan();\n    case i18n.phonenumbers.PhoneNumberType.VOICEMAIL:\n      return a.getVoicemail();\n    default:\n      return a.getGeneralDesc();\n  }\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getNumberType = function(a) {\n  var b = this.getRegionCodeForNumber(a);\n  b = this.getMetadataForRegionOrCallingCode_(a.getCountryCodeOrDefault(), b);\n  if (null == b) {\n    return i18n.phonenumbers.PhoneNumberType.UNKNOWN;\n  }\n  a = this.getNationalSignificantNumber(a);\n  return this.getNumberTypeHelper_(a, b);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getNumberTypeHelper_ = function(a, b) {\n  return this.isNumberMatchingDesc_(a, b.getGeneralDesc()) ? this.isNumberMatchingDesc_(a, b.getPremiumRate()) ? i18n.phonenumbers.PhoneNumberType.PREMIUM_RATE : this.isNumberMatchingDesc_(a, b.getTollFree()) ? i18n.phonenumbers.PhoneNumberType.TOLL_FREE : this.isNumberMatchingDesc_(a, b.getSharedCost()) ? i18n.phonenumbers.PhoneNumberType.SHARED_COST : this.isNumberMatchingDesc_(a, b.getVoip()) ? i18n.phonenumbers.PhoneNumberType.VOIP : this.isNumberMatchingDesc_(a, b.getPersonalNumber()) ? i18n.phonenumbers.PhoneNumberType.PERSONAL_NUMBER :\n  this.isNumberMatchingDesc_(a, b.getPager()) ? i18n.phonenumbers.PhoneNumberType.PAGER : this.isNumberMatchingDesc_(a, b.getUan()) ? i18n.phonenumbers.PhoneNumberType.UAN : this.isNumberMatchingDesc_(a, b.getVoicemail()) ? i18n.phonenumbers.PhoneNumberType.VOICEMAIL : this.isNumberMatchingDesc_(a, b.getFixedLine()) ? b.getSameMobileAndFixedLinePattern() || this.isNumberMatchingDesc_(a, b.getMobile()) ? i18n.phonenumbers.PhoneNumberType.FIXED_LINE_OR_MOBILE : i18n.phonenumbers.PhoneNumberType.FIXED_LINE :\n  !b.getSameMobileAndFixedLinePattern() && this.isNumberMatchingDesc_(a, b.getMobile()) ? i18n.phonenumbers.PhoneNumberType.MOBILE : i18n.phonenumbers.PhoneNumberType.UNKNOWN : i18n.phonenumbers.PhoneNumberType.UNKNOWN;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getMetadataForRegion = function(a) {\n  if (null == a) {\n    return null;\n  }\n  a = a.toUpperCase();\n  var b = this.regionToMetadataMap[a];\n  if (null == b) {\n    b = new goog.proto2.PbLiteSerializer;\n    var c = i18n.phonenumbers.metadata.countryToMetadata[a];\n    if (null == c) {\n      return null;\n    }\n    b = b.deserialize(i18n.phonenumbers.PhoneMetadata.getDescriptor(), c);\n    this.regionToMetadataMap[a] = b;\n  }\n  return b;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getMetadataForNonGeographicalRegion = function(a) {\n  return this.getMetadataForRegion(\"\" + a);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isNumberMatchingDesc_ = function(a, b) {\n  var c = a.length;\n  return 0 < b.possibleLengthCount() && -1 == goog.array.indexOf(b.possibleLengthArray(), c) ? !1 : i18n.phonenumbers.PhoneNumberUtil.matchesEntirely(b.getNationalNumberPatternOrDefault(), a);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isValidNumber = function(a) {\n  var b = this.getRegionCodeForNumber(a);\n  return this.isValidNumberForRegion(a, b);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isValidNumberForRegion = function(a, b) {\n  var c = a.getCountryCodeOrDefault(), d = this.getMetadataForRegionOrCallingCode_(c, b);\n  if (null == d || i18n.phonenumbers.PhoneNumberUtil.REGION_CODE_FOR_NON_GEO_ENTITY != b && c != this.getCountryCodeForValidRegion_(b)) {\n    return !1;\n  }\n  c = this.getNationalSignificantNumber(a);\n  return this.getNumberTypeHelper_(c, d) != i18n.phonenumbers.PhoneNumberType.UNKNOWN;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getRegionCodeForNumber = function(a) {\n  if (null == a) {\n    return null;\n  }\n  var b = a.getCountryCodeOrDefault();\n  b = i18n.phonenumbers.metadata.countryCodeToRegionCodeMap[b];\n  return null == b ? null : 1 == b.length ? b[0] : this.getRegionCodeForNumberFromRegionList_(a, b);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getRegionCodeForNumberFromRegionList_ = function(a, b) {\n  for (var c = this.getNationalSignificantNumber(a), d, e = b.length, f = 0; f < e; f++) {\n    d = b[f];\n    var g = this.getMetadataForRegion(d);\n    if (g.hasLeadingDigits()) {\n      if (0 == c.search(g.getLeadingDigits())) {\n        return d;\n      }\n    } else {\n      if (this.getNumberTypeHelper_(c, g) != i18n.phonenumbers.PhoneNumberType.UNKNOWN) {\n        return d;\n      }\n    }\n  }\n  return null;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getRegionCodeForCountryCode = function(a) {\n  a = i18n.phonenumbers.metadata.countryCodeToRegionCodeMap[a];\n  return null == a ? i18n.phonenumbers.PhoneNumberUtil.UNKNOWN_REGION_ : a[0];\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getRegionCodesForCountryCode = function(a) {\n  a = i18n.phonenumbers.metadata.countryCodeToRegionCodeMap[a];\n  return null == a ? [] : a;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getCountryCodeForRegion = function(a) {\n  return this.isValidRegionCode_(a) ? this.getCountryCodeForValidRegion_(a) : 0;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getCountryCodeForValidRegion_ = function(a) {\n  var b = this.getMetadataForRegion(a);\n  if (null == b) {\n    throw Error(\"Invalid region code: \" + a);\n  }\n  return b.getCountryCodeOrDefault();\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getNddPrefixForRegion = function(a, b) {\n  var c = this.getMetadataForRegion(a);\n  if (null == c) {\n    return null;\n  }\n  c = c.getNationalPrefixOrDefault();\n  if (0 == c.length) {\n    return null;\n  }\n  b && (c = c.replace(\"~\", \"\"));\n  return c;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isNANPACountry = function(a) {\n  return null != a && goog.array.contains(i18n.phonenumbers.metadata.countryCodeToRegionCodeMap[i18n.phonenumbers.PhoneNumberUtil.NANPA_COUNTRY_CODE_], a.toUpperCase());\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isAlphaNumber = function(a) {\n  if (!i18n.phonenumbers.PhoneNumberUtil.isViablePhoneNumber(a)) {\n    return !1;\n  }\n  a = new goog.string.StringBuffer(a);\n  this.maybeStripExtension(a);\n  return i18n.phonenumbers.PhoneNumberUtil.matchesEntirely(i18n.phonenumbers.PhoneNumberUtil.VALID_ALPHA_PHONE_PATTERN_, a.toString());\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isPossibleNumber = function(a) {\n  a = this.isPossibleNumberWithReason(a);\n  return a == i18n.phonenumbers.PhoneNumberUtil.ValidationResult.IS_POSSIBLE || a == i18n.phonenumbers.PhoneNumberUtil.ValidationResult.IS_POSSIBLE_LOCAL_ONLY;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isPossibleNumberForType = function(a, b) {\n  var c = this.isPossibleNumberForTypeWithReason(a, b);\n  return c == i18n.phonenumbers.PhoneNumberUtil.ValidationResult.IS_POSSIBLE || c == i18n.phonenumbers.PhoneNumberUtil.ValidationResult.IS_POSSIBLE_LOCAL_ONLY;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.testNumberLength_ = function(a, b) {\n  return this.testNumberLengthForType_(a, b, i18n.phonenumbers.PhoneNumberType.UNKNOWN);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.testNumberLengthForType_ = function(a, b, c) {\n  var d = i18n.phonenumbers.PhoneNumberUtil.getNumberDescByType_(b, c), e = 0 == d.possibleLengthCount() ? b.getGeneralDesc().possibleLengthArray() : d.possibleLengthArray();\n  d = d.possibleLengthLocalOnlyArray();\n  if (c == i18n.phonenumbers.PhoneNumberType.FIXED_LINE_OR_MOBILE) {\n    if (i18n.phonenumbers.PhoneNumberUtil.descHasPossibleNumberData_(i18n.phonenumbers.PhoneNumberUtil.getNumberDescByType_(b, i18n.phonenumbers.PhoneNumberType.FIXED_LINE))) {\n      c = i18n.phonenumbers.PhoneNumberUtil.getNumberDescByType_(b, i18n.phonenumbers.PhoneNumberType.MOBILE), i18n.phonenumbers.PhoneNumberUtil.descHasPossibleNumberData_(c) && (e = e.concat(0 == c.possibleLengthCount() ? b.getGeneralDesc().possibleLengthArray() : c.possibleLengthArray()), goog.array.sort(e), 0 == d.length ? d = c.possibleLengthLocalOnlyArray() : (d = d.concat(c.possibleLengthLocalOnlyArray()), goog.array.sort(d)));\n    } else {\n      return this.testNumberLengthForType_(a, b, i18n.phonenumbers.PhoneNumberType.MOBILE);\n    }\n  }\n  if (-1 == e[0]) {\n    return i18n.phonenumbers.PhoneNumberUtil.ValidationResult.INVALID_LENGTH;\n  }\n  a = a.length;\n  if (-1 < goog.array.indexOf(d, a)) {\n    return i18n.phonenumbers.PhoneNumberUtil.ValidationResult.IS_POSSIBLE_LOCAL_ONLY;\n  }\n  b = e[0];\n  return b == a ? i18n.phonenumbers.PhoneNumberUtil.ValidationResult.IS_POSSIBLE : b > a ? i18n.phonenumbers.PhoneNumberUtil.ValidationResult.TOO_SHORT : e[e.length - 1] < a ? i18n.phonenumbers.PhoneNumberUtil.ValidationResult.TOO_LONG : -1 < goog.array.indexOf(e, a, 1) ? i18n.phonenumbers.PhoneNumberUtil.ValidationResult.IS_POSSIBLE : i18n.phonenumbers.PhoneNumberUtil.ValidationResult.INVALID_LENGTH;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isPossibleNumberWithReason = function(a) {\n  return this.isPossibleNumberForTypeWithReason(a, i18n.phonenumbers.PhoneNumberType.UNKNOWN);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isPossibleNumberForTypeWithReason = function(a, b) {\n  var c = this.getNationalSignificantNumber(a), d = a.getCountryCodeOrDefault();\n  if (!this.hasValidCountryCallingCode_(d)) {\n    return i18n.phonenumbers.PhoneNumberUtil.ValidationResult.INVALID_COUNTRY_CODE;\n  }\n  var e = this.getRegionCodeForCountryCode(d);\n  d = this.getMetadataForRegionOrCallingCode_(d, e);\n  return this.testNumberLengthForType_(c, d, b);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isPossibleNumberString = function(a, b) {\n  try {\n    return this.isPossibleNumber(this.parse(a, b));\n  } catch (c) {\n    return !1;\n  }\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.truncateTooLongNumber = function(a) {\n  if (this.isValidNumber(a)) {\n    return !0;\n  }\n  var b = a.clone(), c = a.getNationalNumberOrDefault();\n  do {\n    if (c = Math.floor(c / 10), b.setNationalNumber(c), 0 == c || this.isPossibleNumberWithReason(b) == i18n.phonenumbers.PhoneNumberUtil.ValidationResult.TOO_SHORT) {\n      return !1;\n    }\n  } while (!this.isValidNumber(b));\n  a.setNationalNumber(c);\n  return !0;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.extractCountryCode = function(a, b) {\n  var c = a.toString();\n  if (0 == c.length || \"0\" == c.charAt(0)) {\n    return 0;\n  }\n  for (var d, e = c.length, f = 1; f <= i18n.phonenumbers.PhoneNumberUtil.MAX_LENGTH_COUNTRY_CODE_ && f <= e; ++f) {\n    if (d = parseInt(c.substring(0, f), 10), d in i18n.phonenumbers.metadata.countryCodeToRegionCodeMap) {\n      return b.append(c.substring(f)), d;\n    }\n  }\n  return 0;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.maybeExtractCountryCode = function(a, b, c, d, e) {\n  if (0 == a.length) {\n    return 0;\n  }\n  a = new goog.string.StringBuffer(a);\n  var f;\n  null != b && (f = b.getInternationalPrefix());\n  null == f && (f = \"NonMatch\");\n  f = this.maybeStripInternationalPrefixAndNormalize(a, f);\n  d && e.setCountryCodeSource(f);\n  if (f != i18n.phonenumbers.PhoneNumber.CountryCodeSource.FROM_DEFAULT_COUNTRY) {\n    if (a.getLength() <= i18n.phonenumbers.PhoneNumberUtil.MIN_LENGTH_FOR_NSN_) {\n      throw Error(i18n.phonenumbers.Error.TOO_SHORT_AFTER_IDD);\n    }\n    b = this.extractCountryCode(a, c);\n    if (0 != b) {\n      return e.setCountryCode(b), b;\n    }\n    throw Error(i18n.phonenumbers.Error.INVALID_COUNTRY_CODE);\n  }\n  if (null != b) {\n    f = b.getCountryCodeOrDefault();\n    var g = \"\" + f, h = a.toString();\n    if (goog.string.startsWith(h, g) && (g = new goog.string.StringBuffer(h.substring(g.length)), h = b.getGeneralDesc(), h = new RegExp(h.getNationalNumberPatternOrDefault()), this.maybeStripNationalPrefixAndCarrierCode(g, b, null), g = g.toString(), !i18n.phonenumbers.PhoneNumberUtil.matchesEntirely(h, a.toString()) && i18n.phonenumbers.PhoneNumberUtil.matchesEntirely(h, g) || this.testNumberLength_(a.toString(), b) == i18n.phonenumbers.PhoneNumberUtil.ValidationResult.TOO_LONG)) {\n      return c.append(g), d && e.setCountryCodeSource(i18n.phonenumbers.PhoneNumber.CountryCodeSource.FROM_NUMBER_WITHOUT_PLUS_SIGN), e.setCountryCode(f), f;\n    }\n  }\n  e.setCountryCode(0);\n  return 0;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.parsePrefixAsIdd_ = function(a, b) {\n  var c = b.toString();\n  if (0 == c.search(a)) {\n    var d = c.match(a)[0].length, e = c.substring(d).match(i18n.phonenumbers.PhoneNumberUtil.CAPTURING_DIGIT_PATTERN);\n    if (e && null != e[1] && 0 < e[1].length && \"0\" == i18n.phonenumbers.PhoneNumberUtil.normalizeDigitsOnly(e[1])) {\n      return !1;\n    }\n    b.clear();\n    b.append(c.substring(d));\n    return !0;\n  }\n  return !1;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.maybeStripInternationalPrefixAndNormalize = function(a, b) {\n  var c = a.toString();\n  if (0 == c.length) {\n    return i18n.phonenumbers.PhoneNumber.CountryCodeSource.FROM_DEFAULT_COUNTRY;\n  }\n  if (i18n.phonenumbers.PhoneNumberUtil.LEADING_PLUS_CHARS_PATTERN.test(c)) {\n    return c = c.replace(i18n.phonenumbers.PhoneNumberUtil.LEADING_PLUS_CHARS_PATTERN, \"\"), a.clear(), a.append(i18n.phonenumbers.PhoneNumberUtil.normalize(c)), i18n.phonenumbers.PhoneNumber.CountryCodeSource.FROM_NUMBER_WITH_PLUS_SIGN;\n  }\n  c = new RegExp(b);\n  i18n.phonenumbers.PhoneNumberUtil.normalizeSB_(a);\n  return this.parsePrefixAsIdd_(c, a) ? i18n.phonenumbers.PhoneNumber.CountryCodeSource.FROM_NUMBER_WITH_IDD : i18n.phonenumbers.PhoneNumber.CountryCodeSource.FROM_DEFAULT_COUNTRY;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.maybeStripNationalPrefixAndCarrierCode = function(a, b, c) {\n  var d = a.toString(), e = d.length, f = b.getNationalPrefixForParsing();\n  if (0 == e || null == f || 0 == f.length) {\n    return !1;\n  }\n  var g = new RegExp(\"^(?:\" + f + \")\");\n  if (e = g.exec(d)) {\n    f = new RegExp(b.getGeneralDesc().getNationalNumberPatternOrDefault());\n    var h = i18n.phonenumbers.PhoneNumberUtil.matchesEntirely(f, d), k = e.length - 1;\n    b = b.getNationalPrefixTransformRule();\n    if (null == b || 0 == b.length || null == e[k] || 0 == e[k].length) {\n      if (h && !i18n.phonenumbers.PhoneNumberUtil.matchesEntirely(f, d.substring(e[0].length))) {\n        return !1;\n      }\n      null != c && 0 < k && null != e[k] && c.append(e[1]);\n      a.set(d.substring(e[0].length));\n    } else {\n      d = d.replace(g, b);\n      if (h && !i18n.phonenumbers.PhoneNumberUtil.matchesEntirely(f, d)) {\n        return !1;\n      }\n      null != c && 0 < k && c.append(e[1]);\n      a.set(d);\n    }\n    return !0;\n  }\n  return !1;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.maybeStripExtension = function(a) {\n  var b = a.toString(), c = b.search(i18n.phonenumbers.PhoneNumberUtil.EXTN_PATTERN_);\n  if (0 <= c && i18n.phonenumbers.PhoneNumberUtil.isViablePhoneNumber(b.substring(0, c))) {\n    for (var d = b.match(i18n.phonenumbers.PhoneNumberUtil.EXTN_PATTERN_), e = d.length, f = 1; f < e; ++f) {\n      if (null != d[f] && 0 < d[f].length) {\n        return a.clear(), a.append(b.substring(0, c)), d[f];\n      }\n    }\n  }\n  return \"\";\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.checkRegionForParsing_ = function(a, b) {\n  return this.isValidRegionCode_(b) || null != a && 0 < a.length && i18n.phonenumbers.PhoneNumberUtil.LEADING_PLUS_CHARS_PATTERN.test(a);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.parse = function(a, b) {\n  return this.parseHelper_(a, b, !1, !0);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.parseAndKeepRawInput = function(a, b) {\n  if (!this.isValidRegionCode_(b) && 0 < a.length && a.charAt(0) != i18n.phonenumbers.PhoneNumberUtil.PLUS_SIGN) {\n    throw Error(i18n.phonenumbers.Error.INVALID_COUNTRY_CODE);\n  }\n  return this.parseHelper_(a, b, !0, !0);\n};\ni18n.phonenumbers.PhoneNumberUtil.setItalianLeadingZerosForPhoneNumber_ = function(a, b) {\n  if (1 < a.length && \"0\" == a.charAt(0)) {\n    b.setItalianLeadingZero(!0);\n    for (var c = 1; c < a.length - 1 && \"0\" == a.charAt(c);) {\n      c++;\n    }\n    1 != c && b.setNumberOfLeadingZeros(c);\n  }\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.parseHelper_ = function(a, b, c, d) {\n  if (null == a) {\n    throw Error(i18n.phonenumbers.Error.NOT_A_NUMBER);\n  }\n  if (a.length > i18n.phonenumbers.PhoneNumberUtil.MAX_INPUT_STRING_LENGTH_) {\n    throw Error(i18n.phonenumbers.Error.TOO_LONG);\n  }\n  var e = new goog.string.StringBuffer;\n  this.buildNationalNumberForParsing_(a, e);\n  if (!i18n.phonenumbers.PhoneNumberUtil.isViablePhoneNumber(e.toString())) {\n    throw Error(i18n.phonenumbers.Error.NOT_A_NUMBER);\n  }\n  if (d && !this.checkRegionForParsing_(e.toString(), b)) {\n    throw Error(i18n.phonenumbers.Error.INVALID_COUNTRY_CODE);\n  }\n  d = new i18n.phonenumbers.PhoneNumber;\n  c && d.setRawInput(a);\n  a = this.maybeStripExtension(e);\n  0 < a.length && d.setExtension(a);\n  var f = this.getMetadataForRegion(b);\n  a = new goog.string.StringBuffer;\n  var g = 0, h = e.toString();\n  try {\n    g = this.maybeExtractCountryCode(h, f, a, c, d);\n  } catch (k) {\n    if (k.message == i18n.phonenumbers.Error.INVALID_COUNTRY_CODE && i18n.phonenumbers.PhoneNumberUtil.LEADING_PLUS_CHARS_PATTERN.test(h)) {\n      if (h = h.replace(i18n.phonenumbers.PhoneNumberUtil.LEADING_PLUS_CHARS_PATTERN, \"\"), g = this.maybeExtractCountryCode(h, f, a, c, d), 0 == g) {\n        throw k;\n      }\n    } else {\n      throw k;\n    }\n  }\n  0 != g ? (e = this.getRegionCodeForCountryCode(g), e != b && (f = this.getMetadataForRegionOrCallingCode_(g, e))) : (i18n.phonenumbers.PhoneNumberUtil.normalizeSB_(e), a.append(e.toString()), null != b ? (g = f.getCountryCodeOrDefault(), d.setCountryCode(g)) : c && d.clearCountryCodeSource());\n  if (a.getLength() < i18n.phonenumbers.PhoneNumberUtil.MIN_LENGTH_FOR_NSN_) {\n    throw Error(i18n.phonenumbers.Error.TOO_SHORT_NSN);\n  }\n  null != f && (b = new goog.string.StringBuffer, e = new goog.string.StringBuffer(a.toString()), this.maybeStripNationalPrefixAndCarrierCode(e, f, b), f = this.testNumberLength_(e.toString(), f), g = i18n.phonenumbers.PhoneNumberUtil.ValidationResult, f != g.TOO_SHORT && f != g.IS_POSSIBLE_LOCAL_ONLY && f != g.INVALID_LENGTH && (a = e, c && 0 < b.toString().length && d.setPreferredDomesticCarrierCode(b.toString())));\n  c = a.toString();\n  a = c.length;\n  if (a < i18n.phonenumbers.PhoneNumberUtil.MIN_LENGTH_FOR_NSN_) {\n    throw Error(i18n.phonenumbers.Error.TOO_SHORT_NSN);\n  }\n  if (a > i18n.phonenumbers.PhoneNumberUtil.MAX_LENGTH_FOR_NSN_) {\n    throw Error(i18n.phonenumbers.Error.TOO_LONG);\n  }\n  i18n.phonenumbers.PhoneNumberUtil.setItalianLeadingZerosForPhoneNumber_(c, d);\n  d.setNationalNumber(parseInt(c, 10));\n  return d;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.buildNationalNumberForParsing_ = function(a, b) {\n  var c = a.indexOf(i18n.phonenumbers.PhoneNumberUtil.RFC3966_PHONE_CONTEXT_);\n  if (0 <= c) {\n    var d = c + i18n.phonenumbers.PhoneNumberUtil.RFC3966_PHONE_CONTEXT_.length;\n    if (a.charAt(d) == i18n.phonenumbers.PhoneNumberUtil.PLUS_SIGN) {\n      var e = a.indexOf(\";\", d);\n      0 < e ? b.append(a.substring(d, e)) : b.append(a.substring(d));\n    }\n    d = a.indexOf(i18n.phonenumbers.PhoneNumberUtil.RFC3966_PREFIX_);\n    b.append(a.substring(0 <= d ? d + i18n.phonenumbers.PhoneNumberUtil.RFC3966_PREFIX_.length : 0, c));\n  } else {\n    b.append(i18n.phonenumbers.PhoneNumberUtil.extractPossibleNumber(a));\n  }\n  c = b.toString();\n  d = c.indexOf(i18n.phonenumbers.PhoneNumberUtil.RFC3966_ISDN_SUBADDRESS_);\n  0 < d && (b.clear(), b.append(c.substring(0, d)));\n};\ni18n.phonenumbers.PhoneNumberUtil.copyCoreFieldsOnly_ = function(a) {\n  var b = new i18n.phonenumbers.PhoneNumber;\n  b.setCountryCode(a.getCountryCodeOrDefault());\n  b.setNationalNumber(a.getNationalNumberOrDefault());\n  0 < a.getExtensionOrDefault().length && b.setExtension(a.getExtensionOrDefault());\n  a.getItalianLeadingZero() && (b.setItalianLeadingZero(!0), b.setNumberOfLeadingZeros(a.getNumberOfLeadingZerosOrDefault()));\n  return b;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isNumberMatch = function(a, b) {\n  if (\"string\" == typeof a) {\n    try {\n      var c = this.parse(a, i18n.phonenumbers.PhoneNumberUtil.UNKNOWN_REGION_);\n    } catch (g) {\n      if (g.message != i18n.phonenumbers.Error.INVALID_COUNTRY_CODE) {\n        return i18n.phonenumbers.PhoneNumberUtil.MatchType.NOT_A_NUMBER;\n      }\n      if (\"string\" != typeof b) {\n        var d = this.getRegionCodeForCountryCode(b.getCountryCodeOrDefault());\n        if (d != i18n.phonenumbers.PhoneNumberUtil.UNKNOWN_REGION_) {\n          try {\n            c = this.parse(a, d);\n          } catch (h) {\n            return i18n.phonenumbers.PhoneNumberUtil.MatchType.NOT_A_NUMBER;\n          }\n          c = this.isNumberMatch(c, b);\n          return c == i18n.phonenumbers.PhoneNumberUtil.MatchType.EXACT_MATCH ? i18n.phonenumbers.PhoneNumberUtil.MatchType.NSN_MATCH : c;\n        }\n      }\n      try {\n        c = this.parseHelper_(a, null, !1, !1);\n      } catch (h) {\n        return i18n.phonenumbers.PhoneNumberUtil.MatchType.NOT_A_NUMBER;\n      }\n    }\n  } else {\n    c = a.clone();\n  }\n  if (\"string\" == typeof b) {\n    try {\n      var e = this.parse(b, i18n.phonenumbers.PhoneNumberUtil.UNKNOWN_REGION_);\n      return this.isNumberMatch(a, e);\n    } catch (g) {\n      return g.message != i18n.phonenumbers.Error.INVALID_COUNTRY_CODE ? i18n.phonenumbers.PhoneNumberUtil.MatchType.NOT_A_NUMBER : this.isNumberMatch(b, c);\n    }\n  } else {\n    e = b.clone();\n  }\n  c = i18n.phonenumbers.PhoneNumberUtil.copyCoreFieldsOnly_(c);\n  e = i18n.phonenumbers.PhoneNumberUtil.copyCoreFieldsOnly_(e);\n  if (c.hasExtension() && e.hasExtension() && c.getExtension() != e.getExtension()) {\n    return i18n.phonenumbers.PhoneNumberUtil.MatchType.NO_MATCH;\n  }\n  d = c.getCountryCodeOrDefault();\n  var f = e.getCountryCodeOrDefault();\n  if (0 != d && 0 != f) {\n    return c.equals(e) ? i18n.phonenumbers.PhoneNumberUtil.MatchType.EXACT_MATCH : d == f && this.isNationalNumberSuffixOfTheOther_(c, e) ? i18n.phonenumbers.PhoneNumberUtil.MatchType.SHORT_NSN_MATCH : i18n.phonenumbers.PhoneNumberUtil.MatchType.NO_MATCH;\n  }\n  c.setCountryCode(0);\n  e.setCountryCode(0);\n  return c.equals(e) ? i18n.phonenumbers.PhoneNumberUtil.MatchType.NSN_MATCH : this.isNationalNumberSuffixOfTheOther_(c, e) ? i18n.phonenumbers.PhoneNumberUtil.MatchType.SHORT_NSN_MATCH : i18n.phonenumbers.PhoneNumberUtil.MatchType.NO_MATCH;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isNationalNumberSuffixOfTheOther_ = function(a, b) {\n  var c = \"\" + a.getNationalNumber(), d = \"\" + b.getNationalNumber();\n  return goog.string.endsWith(c, d) || goog.string.endsWith(d, c);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.canBeInternationallyDialled = function(a) {\n  var b = this.getMetadataForRegion(this.getRegionCodeForNumber(a));\n  if (null == b) {\n    return !0;\n  }\n  a = this.getNationalSignificantNumber(a);\n  return !this.isNumberMatchingDesc_(a, b.getNoInternationalDialling());\n};\ni18n.phonenumbers.PhoneNumberUtil.matchesEntirely = function(a, b) {\n  var c = \"string\" == typeof a ? b.match(\"^(?:\" + a + \")$\") : b.match(a);\n  return c && c[0].length == b.length ? !0 : !1;\n};\ni18n.phonenumbers.PhoneNumberUtil.matchesPrefix = function(a, b) {\n  var c = \"string\" == typeof a ? b.match(\"^(?:\" + a + \")\") : b.match(a);\n  return c && goog.string.startsWith(b, c[0]) ? !0 : !1;\n};\ni18n.phonenumbers.AsYouTypeFormatter = function(a) {\n  this.DIGIT_PLACEHOLDER_ = \"\\u2008\";\n  this.DIGIT_PATTERN_ = new RegExp(this.DIGIT_PLACEHOLDER_);\n  this.currentOutput_ = \"\";\n  this.formattingTemplate_ = new goog.string.StringBuffer;\n  this.currentFormattingPattern_ = \"\";\n  this.accruedInput_ = new goog.string.StringBuffer;\n  this.accruedInputWithoutFormatting_ = new goog.string.StringBuffer;\n  this.ableToFormat_ = !0;\n  this.isExpectingCountryCallingCode_ = this.isCompleteNumber_ = this.inputHasFormatting_ = !1;\n  this.phoneUtil_ = i18n.phonenumbers.PhoneNumberUtil.getInstance();\n  this.positionToRemember_ = this.originalPosition_ = this.lastMatchPosition_ = 0;\n  this.prefixBeforeNationalNumber_ = new goog.string.StringBuffer;\n  this.shouldAddSpaceAfterNationalPrefix_ = !1;\n  this.extractedNationalPrefix_ = \"\";\n  this.nationalNumber_ = new goog.string.StringBuffer;\n  this.possibleFormats_ = [];\n  this.defaultCountry_ = a;\n  this.defaultMetadata_ = this.currentMetadata_ = this.getMetadataForRegion_(this.defaultCountry_);\n};\ni18n.phonenumbers.AsYouTypeFormatter.SEPARATOR_BEFORE_NATIONAL_NUMBER_ = \" \";\ni18n.phonenumbers.AsYouTypeFormatter.EMPTY_METADATA_ = new i18n.phonenumbers.PhoneMetadata;\ni18n.phonenumbers.AsYouTypeFormatter.EMPTY_METADATA_.setInternationalPrefix(\"NA\");\ni18n.phonenumbers.AsYouTypeFormatter.ELIGIBLE_FORMAT_PATTERN_ = new RegExp(\"^[\" + i18n.phonenumbers.PhoneNumberUtil.VALID_PUNCTUATION + \"]*(\\\\$\\\\d[\" + i18n.phonenumbers.PhoneNumberUtil.VALID_PUNCTUATION + \"]*)+$\");\ni18n.phonenumbers.AsYouTypeFormatter.NATIONAL_PREFIX_SEPARATORS_PATTERN_ = /[- ]/;\ni18n.phonenumbers.AsYouTypeFormatter.MIN_LEADING_DIGITS_LENGTH_ = 3;\ni18n.phonenumbers.AsYouTypeFormatter.prototype.getMetadataForRegion_ = function(a) {\n  a = this.phoneUtil_.getCountryCodeForRegion(a);\n  a = this.phoneUtil_.getRegionCodeForCountryCode(a);\n  a = this.phoneUtil_.getMetadataForRegion(a);\n  return null != a ? a : i18n.phonenumbers.AsYouTypeFormatter.EMPTY_METADATA_;\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.maybeCreateNewTemplate_ = function() {\n  for (var a = this.possibleFormats_.length, b = 0; b < a; ++b) {\n    var c = this.possibleFormats_[b], d = c.getPatternOrDefault();\n    if (this.currentFormattingPattern_ == d) {\n      return !1;\n    }\n    if (this.createFormattingTemplate_(c)) {\n      return this.currentFormattingPattern_ = d, this.shouldAddSpaceAfterNationalPrefix_ = i18n.phonenumbers.AsYouTypeFormatter.NATIONAL_PREFIX_SEPARATORS_PATTERN_.test(c.getNationalPrefixFormattingRule()), this.lastMatchPosition_ = 0, !0;\n    }\n  }\n  return this.ableToFormat_ = !1;\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.getAvailableFormats_ = function(a) {\n  for (var b = this.isCompleteNumber_ && 0 == this.extractedNationalPrefix_.length && 0 < this.currentMetadata_.intlNumberFormatCount() ? this.currentMetadata_.intlNumberFormatArray() : this.currentMetadata_.numberFormatArray(), c = b.length, d = 0; d < c; ++d) {\n    var e = b[d];\n    0 < this.extractedNationalPrefix_.length && this.phoneUtil_.formattingRuleHasFirstGroupOnly(e.getNationalPrefixFormattingRuleOrDefault()) && !e.getNationalPrefixOptionalWhenFormatting() && !e.hasDomesticCarrierCodeFormattingRule() || (0 != this.extractedNationalPrefix_.length || this.isCompleteNumber_ || this.phoneUtil_.formattingRuleHasFirstGroupOnly(e.getNationalPrefixFormattingRuleOrDefault()) || e.getNationalPrefixOptionalWhenFormatting()) && i18n.phonenumbers.AsYouTypeFormatter.ELIGIBLE_FORMAT_PATTERN_.test(e.getFormatOrDefault()) &&\n    this.possibleFormats_.push(e);\n  }\n  this.narrowDownPossibleFormats_(a);\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.narrowDownPossibleFormats_ = function(a) {\n  for (var b = [], c = a.length - i18n.phonenumbers.AsYouTypeFormatter.MIN_LEADING_DIGITS_LENGTH_, d = this.possibleFormats_.length, e = 0; e < d; ++e) {\n    var f = this.possibleFormats_[e];\n    if (0 == f.leadingDigitsPatternCount()) {\n      b.push(this.possibleFormats_[e]);\n    } else {\n      var g = Math.min(c, f.leadingDigitsPatternCount() - 1);\n      f = f.getLeadingDigitsPattern(g);\n      0 == a.search(f) && b.push(this.possibleFormats_[e]);\n    }\n  }\n  this.possibleFormats_ = b;\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.createFormattingTemplate_ = function(a) {\n  var b = a.getPatternOrDefault();\n  this.formattingTemplate_.clear();\n  a = this.getFormattingTemplate_(b, a.getFormatOrDefault());\n  return 0 < a.length ? (this.formattingTemplate_.append(a), !0) : !1;\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.getFormattingTemplate_ = function(a, b) {\n  var c = \"999999999999999\".match(a)[0];\n  if (c.length < this.nationalNumber_.getLength()) {\n    return \"\";\n  }\n  c = c.replace(new RegExp(a, \"g\"), b);\n  return c = c.replace(RegExp(\"9\", \"g\"), this.DIGIT_PLACEHOLDER_);\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.clear = function() {\n  this.currentOutput_ = \"\";\n  this.accruedInput_.clear();\n  this.accruedInputWithoutFormatting_.clear();\n  this.formattingTemplate_.clear();\n  this.lastMatchPosition_ = 0;\n  this.currentFormattingPattern_ = \"\";\n  this.prefixBeforeNationalNumber_.clear();\n  this.extractedNationalPrefix_ = \"\";\n  this.nationalNumber_.clear();\n  this.ableToFormat_ = !0;\n  this.inputHasFormatting_ = !1;\n  this.originalPosition_ = this.positionToRemember_ = 0;\n  this.isExpectingCountryCallingCode_ = this.isCompleteNumber_ = !1;\n  this.possibleFormats_ = [];\n  this.shouldAddSpaceAfterNationalPrefix_ = !1;\n  this.currentMetadata_ != this.defaultMetadata_ && (this.currentMetadata_ = this.getMetadataForRegion_(this.defaultCountry_));\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.inputDigit = function(a) {\n  return this.currentOutput_ = this.inputDigitWithOptionToRememberPosition_(a, !1);\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.inputDigitAndRememberPosition = function(a) {\n  return this.currentOutput_ = this.inputDigitWithOptionToRememberPosition_(a, !0);\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.inputDigitWithOptionToRememberPosition_ = function(a, b) {\n  this.accruedInput_.append(a);\n  b && (this.originalPosition_ = this.accruedInput_.getLength());\n  this.isDigitOrLeadingPlusSign_(a) ? a = this.normalizeAndAccrueDigitsAndPlusSign_(a, b) : (this.ableToFormat_ = !1, this.inputHasFormatting_ = !0);\n  if (!this.ableToFormat_) {\n    if (!this.inputHasFormatting_) {\n      if (this.attemptToExtractIdd_()) {\n        if (this.attemptToExtractCountryCallingCode_()) {\n          return this.attemptToChoosePatternWithPrefixExtracted_();\n        }\n      } else {\n        if (this.ableToExtractLongerNdd_()) {\n          return this.prefixBeforeNationalNumber_.append(i18n.phonenumbers.AsYouTypeFormatter.SEPARATOR_BEFORE_NATIONAL_NUMBER_), this.attemptToChoosePatternWithPrefixExtracted_();\n        }\n      }\n    }\n    return this.accruedInput_.toString();\n  }\n  switch(this.accruedInputWithoutFormatting_.getLength()) {\n    case 0:\n    case 1:\n    case 2:\n      return this.accruedInput_.toString();\n    case 3:\n      if (this.attemptToExtractIdd_()) {\n        this.isExpectingCountryCallingCode_ = !0;\n      } else {\n        return this.extractedNationalPrefix_ = this.removeNationalPrefixFromNationalNumber_(), this.attemptToChooseFormattingPattern_();\n      }\n    default:\n      if (this.isExpectingCountryCallingCode_) {\n        return this.attemptToExtractCountryCallingCode_() && (this.isExpectingCountryCallingCode_ = !1), this.prefixBeforeNationalNumber_.toString() + this.nationalNumber_.toString();\n      }\n      if (0 < this.possibleFormats_.length) {\n        var c = this.inputDigitHelper_(a), d = this.attemptToFormatAccruedDigits_();\n        if (0 < d.length) {\n          return d;\n        }\n        this.narrowDownPossibleFormats_(this.nationalNumber_.toString());\n        return this.maybeCreateNewTemplate_() ? this.inputAccruedNationalNumber_() : this.ableToFormat_ ? this.appendNationalNumber_(c) : this.accruedInput_.toString();\n      }\n      return this.attemptToChooseFormattingPattern_();\n  }\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.attemptToChoosePatternWithPrefixExtracted_ = function() {\n  this.ableToFormat_ = !0;\n  this.isExpectingCountryCallingCode_ = !1;\n  this.possibleFormats_ = [];\n  this.lastMatchPosition_ = 0;\n  this.formattingTemplate_.clear();\n  this.currentFormattingPattern_ = \"\";\n  return this.attemptToChooseFormattingPattern_();\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.getExtractedNationalPrefix_ = function() {\n  return this.extractedNationalPrefix_;\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.ableToExtractLongerNdd_ = function() {\n  if (0 < this.extractedNationalPrefix_.length) {\n    var a = this.nationalNumber_.toString();\n    this.nationalNumber_.clear();\n    this.nationalNumber_.append(this.extractedNationalPrefix_);\n    this.nationalNumber_.append(a);\n    a = this.prefixBeforeNationalNumber_.toString();\n    var b = a.lastIndexOf(this.extractedNationalPrefix_);\n    this.prefixBeforeNationalNumber_.clear();\n    this.prefixBeforeNationalNumber_.append(a.substring(0, b));\n  }\n  return this.extractedNationalPrefix_ != this.removeNationalPrefixFromNationalNumber_();\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.isDigitOrLeadingPlusSign_ = function(a) {\n  return i18n.phonenumbers.PhoneNumberUtil.CAPTURING_DIGIT_PATTERN.test(a) || 1 == this.accruedInput_.getLength() && i18n.phonenumbers.PhoneNumberUtil.PLUS_CHARS_PATTERN.test(a);\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.attemptToFormatAccruedDigits_ = function() {\n  for (var a = this.nationalNumber_.toString(), b = this.possibleFormats_.length, c = 0; c < b; ++c) {\n    var d = this.possibleFormats_[c], e = d.getPatternOrDefault();\n    if ((new RegExp(\"^(?:\" + e + \")$\")).test(a) && (this.shouldAddSpaceAfterNationalPrefix_ = i18n.phonenumbers.AsYouTypeFormatter.NATIONAL_PREFIX_SEPARATORS_PATTERN_.test(d.getNationalPrefixFormattingRule()), d = a.replace(new RegExp(e, \"g\"), d.getFormat()), d = this.appendNationalNumber_(d), i18n.phonenumbers.PhoneNumberUtil.normalizeDiallableCharsOnly(d) == this.accruedInputWithoutFormatting_)) {\n      return d;\n    }\n  }\n  return \"\";\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.appendNationalNumber_ = function(a) {\n  var b = this.prefixBeforeNationalNumber_.getLength();\n  return this.shouldAddSpaceAfterNationalPrefix_ && 0 < b && this.prefixBeforeNationalNumber_.toString().charAt(b - 1) != i18n.phonenumbers.AsYouTypeFormatter.SEPARATOR_BEFORE_NATIONAL_NUMBER_ ? this.prefixBeforeNationalNumber_ + i18n.phonenumbers.AsYouTypeFormatter.SEPARATOR_BEFORE_NATIONAL_NUMBER_ + a : this.prefixBeforeNationalNumber_ + a;\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.getRememberedPosition = function() {\n  if (!this.ableToFormat_) {\n    return this.originalPosition_;\n  }\n  for (var a = 0, b = 0, c = this.accruedInputWithoutFormatting_.toString(), d = this.currentOutput_.toString(); a < this.positionToRemember_ && b < d.length;) {\n    c.charAt(a) == d.charAt(b) && a++, b++;\n  }\n  return b;\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.attemptToChooseFormattingPattern_ = function() {\n  var a = this.nationalNumber_.toString();\n  return a.length >= i18n.phonenumbers.AsYouTypeFormatter.MIN_LEADING_DIGITS_LENGTH_ ? (this.getAvailableFormats_(a), a = this.attemptToFormatAccruedDigits_(), 0 < a.length ? a : this.maybeCreateNewTemplate_() ? this.inputAccruedNationalNumber_() : this.accruedInput_.toString()) : this.appendNationalNumber_(a);\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.inputAccruedNationalNumber_ = function() {\n  var a = this.nationalNumber_.toString(), b = a.length;\n  if (0 < b) {\n    for (var c = \"\", d = 0; d < b; d++) {\n      c = this.inputDigitHelper_(a.charAt(d));\n    }\n    return this.ableToFormat_ ? this.appendNationalNumber_(c) : this.accruedInput_.toString();\n  }\n  return this.prefixBeforeNationalNumber_.toString();\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.isNanpaNumberWithNationalPrefix_ = function() {\n  if (1 != this.currentMetadata_.getCountryCode()) {\n    return !1;\n  }\n  var a = this.nationalNumber_.toString();\n  return \"1\" == a.charAt(0) && \"0\" != a.charAt(1) && \"1\" != a.charAt(1);\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.removeNationalPrefixFromNationalNumber_ = function() {\n  var a = this.nationalNumber_.toString(), b = 0;\n  if (this.isNanpaNumberWithNationalPrefix_()) {\n    b = 1, this.prefixBeforeNationalNumber_.append(\"1\").append(i18n.phonenumbers.AsYouTypeFormatter.SEPARATOR_BEFORE_NATIONAL_NUMBER_), this.isCompleteNumber_ = !0;\n  } else {\n    if (this.currentMetadata_.hasNationalPrefixForParsing()) {\n      var c = new RegExp(\"^(?:\" + this.currentMetadata_.getNationalPrefixForParsing() + \")\");\n      c = a.match(c);\n      null != c && null != c[0] && 0 < c[0].length && (this.isCompleteNumber_ = !0, b = c[0].length, this.prefixBeforeNationalNumber_.append(a.substring(0, b)));\n    }\n  }\n  this.nationalNumber_.clear();\n  this.nationalNumber_.append(a.substring(b));\n  return a.substring(0, b);\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.attemptToExtractIdd_ = function() {\n  var a = this.accruedInputWithoutFormatting_.toString(), b = new RegExp(\"^(?:\\\\\" + i18n.phonenumbers.PhoneNumberUtil.PLUS_SIGN + \"|\" + this.currentMetadata_.getInternationalPrefix() + \")\");\n  b = a.match(b);\n  return null != b && null != b[0] && 0 < b[0].length ? (this.isCompleteNumber_ = !0, b = b[0].length, this.nationalNumber_.clear(), this.nationalNumber_.append(a.substring(b)), this.prefixBeforeNationalNumber_.clear(), this.prefixBeforeNationalNumber_.append(a.substring(0, b)), a.charAt(0) != i18n.phonenumbers.PhoneNumberUtil.PLUS_SIGN && this.prefixBeforeNationalNumber_.append(i18n.phonenumbers.AsYouTypeFormatter.SEPARATOR_BEFORE_NATIONAL_NUMBER_), !0) : !1;\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.attemptToExtractCountryCallingCode_ = function() {\n  if (0 == this.nationalNumber_.getLength()) {\n    return !1;\n  }\n  var a = new goog.string.StringBuffer, b = this.phoneUtil_.extractCountryCode(this.nationalNumber_, a);\n  if (0 == b) {\n    return !1;\n  }\n  this.nationalNumber_.clear();\n  this.nationalNumber_.append(a.toString());\n  a = this.phoneUtil_.getRegionCodeForCountryCode(b);\n  i18n.phonenumbers.PhoneNumberUtil.REGION_CODE_FOR_NON_GEO_ENTITY == a ? this.currentMetadata_ = this.phoneUtil_.getMetadataForNonGeographicalRegion(b) : a != this.defaultCountry_ && (this.currentMetadata_ = this.getMetadataForRegion_(a));\n  this.prefixBeforeNationalNumber_.append(\"\" + b).append(i18n.phonenumbers.AsYouTypeFormatter.SEPARATOR_BEFORE_NATIONAL_NUMBER_);\n  this.extractedNationalPrefix_ = \"\";\n  return !0;\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.normalizeAndAccrueDigitsAndPlusSign_ = function(a, b) {\n  if (a == i18n.phonenumbers.PhoneNumberUtil.PLUS_SIGN) {\n    var c = a;\n    this.accruedInputWithoutFormatting_.append(a);\n  } else {\n    c = i18n.phonenumbers.PhoneNumberUtil.DIGIT_MAPPINGS[a], this.accruedInputWithoutFormatting_.append(c), this.nationalNumber_.append(c);\n  }\n  b && (this.positionToRemember_ = this.accruedInputWithoutFormatting_.getLength());\n  return c;\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.inputDigitHelper_ = function(a) {\n  var b = this.formattingTemplate_.toString();\n  if (0 <= b.substring(this.lastMatchPosition_).search(this.DIGIT_PATTERN_)) {\n    var c = b.search(this.DIGIT_PATTERN_);\n    a = b.replace(this.DIGIT_PATTERN_, a);\n    this.formattingTemplate_.clear();\n    this.formattingTemplate_.append(a);\n    this.lastMatchPosition_ = c;\n    return a.substring(0, this.lastMatchPosition_ + 1);\n  }\n  1 == this.possibleFormats_.length && (this.ableToFormat_ = !1);\n  this.currentFormattingPattern_ = \"\";\n  return this.accruedInput_.toString();\n};\n/*\n\n Copyright (C) 2011 The Libphonenumber Authors.\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n*/\ni18n.phonenumbers.RegionCode = {UN001:\"001\", AD:\"AD\", AE:\"AE\", AO:\"AO\", AQ:\"AQ\", AR:\"AR\", AM:\"AM\", AU:\"AU\", BB:\"BB\", BR:\"BR\", BS:\"BS\", BY:\"BY\", CA:\"CA\", CH:\"CH\", CL:\"CL\", CN:\"CN\", CS:\"CS\", CX:\"CX\", DE:\"DE\", FR:\"FR\", GB:\"GB\", HU:\"HU\", IT:\"IT\", JP:\"JP\", KR:\"KR\", MX:\"MX\", NZ:\"NZ\", PL:\"PL\", RE:\"RE\", RU:\"RU\", SE:\"SE\", SG:\"SG\", US:\"US\", UZ:\"UZ\", YT:\"YT\", ZW:\"ZW\", ZZ:\"ZZ\"};\n/*\n\nCompiled Wednesday July 30, 2014 at 2:15pm America/New_York\n\nVersion: libphonenumber r680\n\n------------------------------------------------------------------------\n\n\n Copyright (C) Alan Beebe (alan.beebe@gmail.com).\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n\n\nUsage...\n\nThis is the same type of code used by cell phones when you enter\na phone number into your dialer app.  Your phone already knows\nwhat country you are a subscriber in, so it assumes you are entering\na local number, unless of course you prefix the number with a +, or\nin the USA you could also prefix the number with 011 to indicate you\nwish to dial internationally.  This code functions the same way.\n\nLets assume your in the United States and you enter the following\nphone number: 8646978257\n\nformatE164(\"US\", \"8646978257\");\n Returns: +18646978257\n\ncountryForE164Number(\"US\", \"+18646978257\");\n Returns: US\n\nformatInternational(\"US\", \"8646978257\");\n Returns: (864) 697-8257\n Info: This is the format you use if you are displaying this number to users outside the US\n\nformatLocal(\"US\", \"8646978257\");\n Returns: (864) 697-8257\n Info: This is the format you use if you are displaying this number to users inside the US\n       (In certain countries, this format will be different then the international format)\n\ncountryCodeToName(\"US\");\n Returns: United States\n\n\n\n*/\n\n\n// -------------------------------------------------------------------------\nfunction countryForE164Number(phone) {\n    /*\n\n    Return the country code for an e164 formatted number\n\n    phone (String) phone number in e164 format to return the country code for\n\n    */\n    try {\n        var phone = cleanPhone(phone);\n        var phoneUtil = i18n.phonenumbers.PhoneNumberUtil.getInstance();\n        var number = phoneUtil.parseAndKeepRawInput(phone);\n        var output = new goog.string.StringBuffer();\n        output = phoneUtil.getRegionCodeForNumber(number);\n        return output.toString();\n    } catch (e) {\n        return \"\";\n    }\n}\n\n// -------------------------------------------------------------------------\nfunction formatNumberForMobileDialing(country, phone) {\n    /*\n\n    Returns a number formatted in such a way that it can be dialed from a mobile\n    phone in a specific region. If the number cannot be reached from the region\n    (e.g. some countries block toll-free numbers from being called outside of the\n    country), the method returns an empty string.\n\n    */\n\n    try {\n        var phone = cleanPhone(phone);\n        var phoneUtil = i18n.phonenumbers.PhoneNumberUtil.getInstance();\n        var number = phoneUtil.parseAndKeepRawInput(phone, country);\n        var output = new goog.string.StringBuffer();\n        output = phoneUtil.formatNumberForMobileDialing(number, country, true);\n        return output.toString();\n    } catch (e) {\n        return \"\";\n    }\n}\n\n// -------------------------------------------------------------------------\nfunction isValidNumber(phone, country, type) {\n    /*\n\n    Tests whether a phone number matches a valid pattern. Note this doesn't\n    verify the number is actually in use, which is impossible to tell by just\n    looking at a number itself.\n\n    */\n\n    try {\n        var phone = cleanPhone(phone);\n        var phoneUtil = i18n.phonenumbers.PhoneNumberUtil.getInstance();\n        var number = phoneUtil.parseAndKeepRawInput(phone, country);\n        if (typeof type === 'string') {\n            var type = type.toUpperCase();\n            if (phoneUtil.isValidNumber(number) &&\n                phoneUtil.getNumberType(number) === i18n.phonenumbers.PhoneNumberType[type]) {\n                return true;\n            }\n            else {\n                return false;\n            }\n        }\n        else {\n            return phoneUtil.isValidNumber(number);\n        }\n    } catch (e) {\n        return false;\n    }\n}\n\n// -------------------------------------------------------------------------\nfunction formatE164(country, phone) {\n    /*\n\n    Return the phone number in e164 format\n\n    country (String) 2 digit country code\n    phone (String) phone number to format\n\n    */\n\n    try {\n        var phone = cleanPhone(phone);\n        var phoneUtil = i18n.phonenumbers.PhoneNumberUtil.getInstance();\n        var number = phoneUtil.parseAndKeepRawInput(phone, country);\n        var PNF = i18n.phonenumbers.PhoneNumberFormat;\n        var output = new goog.string.StringBuffer();\n        output = phoneUtil.format(number, PNF.E164);\n        return output.toString();\n    } catch (e) {\n        return phone\n    }\n}\n\n\n// -------------------------------------------------------------------------\nfunction formatInternational(country, phone) {\n    /*\n\n    Return the phone number in international format\n\n    country (String) 2 digit country code\n    phone (String) phone number to format\n\n    */\n\n    try {\n        var phone = cleanPhone(phone);\n        var formatter = new i18n.phonenumbers.AsYouTypeFormatter(country);\n        var output = new goog.string.StringBuffer();\n        for (var i = 0; i < phone.length; ++i) {\n            var inputChar = phone.charAt(i);\n            output = (formatter.inputDigit(inputChar));\n        }\n        return output.toString();\n    } catch (e) {\n        return phone;\n    }\n}\n\n// -------------------------------------------------------------------------\nfunction formatLocal(country, phone) {\n    /*\n\n    Return the phone number in the format local to the user\n\n    country (String) 2 digit country code\n    phone (String) phone number to format\n\n    */\n\n    try {\n        var phone = cleanPhone(phone);\n        var phoneUtil = i18n.phonenumbers.PhoneNumberUtil.getInstance();\n        var number = phoneUtil.parseAndKeepRawInput(phone, country);\n        if (phoneUtil.isValidNumberForRegion(number, country)) {\n            var PNF = i18n.phonenumbers.PhoneNumberFormat;\n            var output = new goog.string.StringBuffer();\n            output = phoneUtil.format(number, PNF.NATIONAL);\n            return output.toString();\n        } else {\n            return formatInternational(country, phone);\n        }\n    } catch (e) {\n        return formatInternational(country, phone);\n    }\n}\n\n// -------------------------------------------------------------------------\nfunction exampleLandlineNumber(country) {\n    /*\n\n    Returns an example land line phone number for the specified country\n\n    country (String) 2 digit country code\n\n    */\n\n    try {\n        var phoneUtil = i18n.phonenumbers.PhoneNumberUtil.getInstance();\n        var output = phoneUtil.getExampleNumber(country);\n        return \"\"+output.getNationalNumber();\n    } catch (e) {\n        return \"\";\n    }\n}\n\n// -------------------------------------------------------------------------\nfunction exampleMobileNumber(country) {\n    /*\n\n    Returns an example mobile phone number for the specified country\n\n    country (String) 2 digit country code\n\n    */\n\n    try {\n        var phoneUtil = i18n.phonenumbers.PhoneNumberUtil.getInstance();\n        var output = phoneUtil.getExampleNumberForType(country, i18n.phonenumbers.PhoneNumberType.MOBILE);\n        return \"\"+output.getNationalNumber();\n    } catch (e) {\n        return \"\";\n    }\n}\n\n// -------------------------------------------------------------------------\nfunction cleanPhone(phone) {\n    /*\n\n    Remove any non numeric characters from the phone number but leave any plus sign at the beginning\n\n    phone (String) phone number to clean\n\n    */\n\n    phone = phone.replace(/[^\\d\\+]/g,'');\n    if (phone.substr(0, 1) == \"+\") {\n        phone = \"+\" + phone.replace(/[^\\d]/g,'');\n    } else {\n        phone = phone.replace(/[^\\d]/g,'');\n    }\n    return phone;\n}\n\n// -------------------------------------------------------------------------\nfunction countryCodeToName(countryCode) {\n    /*\n\n    Convert the country code to a name\n\n    country (String) 2 digit country code\n\n    */\n\n    var arrCountry = new Array();\n    arrCountry['AF'] = \"Afghanistan\";\n    arrCountry['AL'] = \"Albania\";\n    arrCountry['DZ'] = \"Algeria\";\n    arrCountry['AS'] = \"American Samoa\";\n    arrCountry['AD'] = \"Andorra\";\n    arrCountry['AO'] = \"Angola\";\n    arrCountry['AI'] = \"Anguilla\";\n    arrCountry['AQ'] = \"Antarctica\";\n    arrCountry['AG'] = \"Antigua And Barbuda\";\n    arrCountry['AR'] = \"Argentina\";\n    arrCountry['AM'] = \"Armenia\";\n    arrCountry['AW'] = \"Aruba\";\n    arrCountry['AC'] = \"Ascension Island\";\n    arrCountry['AU'] = \"Australia\";\n    arrCountry['AT'] = \"Austria\";\n    arrCountry['AZ'] = \"Azerbaijan\";\n    arrCountry['BS'] = \"Bahamas\";\n    arrCountry['BH'] = \"Bahrain\";\n    arrCountry['BD'] = \"Bangladesh\";\n    arrCountry['BB'] = \"Barbados\";\n    arrCountry['BY'] = \"Belarus\";\n    arrCountry['BE'] = \"Belgium\";\n    arrCountry['BZ'] = \"Belize\";\n    arrCountry['BJ'] = \"Benin\";\n    arrCountry['BM'] = \"Bermuda\";\n    arrCountry['BT'] = \"Bhutan\";\n    arrCountry['BO'] = \"Bolivia\";\n    arrCountry['BA'] = \"Bosnia And Herzegovina\";\n    arrCountry['BW'] = \"Botswana\";\n    arrCountry['BV'] = \"Bouvet Island\";\n    arrCountry['BR'] = \"Brazil\";\n    arrCountry['IO'] = \"British Indian Ocean Territory\";\n    arrCountry['BN'] = \"Brunei\";\n    arrCountry['BG'] = \"Bulgaria\";\n    arrCountry['BF'] = \"Burkina Faso\";\n    arrCountry['BI'] = \"Burundi\";\n    arrCountry['KH'] = \"Cambodia\";\n    arrCountry['CM'] = \"Cameroon\";\n    arrCountry['CA'] = \"Canada\";\n    arrCountry['CV'] = \"Cape Verde\";\n    arrCountry['KY'] = \"Cayman Islands\";\n    arrCountry['CF'] = \"Central African Republic\";\n    arrCountry['TD'] = \"Chad\";\n    arrCountry['CL'] = \"Chile\";\n    arrCountry['CN'] = \"China\";\n    arrCountry['CX'] = \"Christmas Island\";\n    arrCountry['CC'] = \"Cocos (Keeling) Islands\";\n    arrCountry['CO'] = \"Colombia\";\n    arrCountry['KM'] = \"Comoros\";\n    arrCountry['CG'] = \"Congo\";\n    arrCountry['CK'] = \"Cook Islands\";\n    arrCountry['CR'] = \"Costa Rica\";\n    arrCountry['CI'] = \"Cote D'Ivorie (Ivory Coast)\";\n    arrCountry['HR'] = \"Croatia (Hrvatska)\";\n    arrCountry['CU'] = \"Cuba\";\n    arrCountry['CY'] = \"Cyprus\";\n    arrCountry['CZ'] = \"Czech Republic\";\n    arrCountry['CD'] = \"Democratic Republic Of Congo (Zaire)\";\n    arrCountry['DK'] = \"Denmark\";\n    arrCountry['DJ'] = \"Djibouti\";\n    arrCountry['DM'] = \"Dominica\";\n    arrCountry['DO'] = \"Dominican Republic\";\n    arrCountry['TL'] = \"East Timor\";\n    arrCountry['EC'] = \"Ecuador\";\n    arrCountry['EG'] = \"Egypt\";\n    arrCountry['SV'] = \"El Salvador\";\n    arrCountry['GQ'] = \"Equatorial Guinea\";\n    arrCountry['ER'] = \"Eritrea\";\n    arrCountry['EE'] = \"Estonia\";\n    arrCountry['ET'] = \"Ethiopia\";\n    arrCountry['FK'] = \"Falkland Islands (Malvinas)\";\n    arrCountry['FO'] = \"Faroe Islands\";\n    arrCountry['FJ'] = \"Fiji\";\n    arrCountry['FI'] = \"Finland\";\n    arrCountry['FR'] = \"France\";\n    arrCountry['FX'] = \"France, Metropolitan\";\n    arrCountry['GF'] = \"French Guinea\";\n    arrCountry['PF'] = \"French Polynesia\";\n    arrCountry['TF'] = \"French Southern Territories\";\n    arrCountry['GA'] = \"Gabon\";\n    arrCountry['GM'] = \"Gambia\";\n    arrCountry['GE'] = \"Georgia\";\n    arrCountry['DE'] = \"Germany\";\n    arrCountry['GH'] = \"Ghana\";\n    arrCountry['GI'] = \"Gibraltar\";\n    arrCountry['GR'] = \"Greece\";\n    arrCountry['GL'] = \"Greenland\";\n    arrCountry['GD'] = \"Grenada\";\n    arrCountry['GP'] = \"Guadeloupe\";\n    arrCountry['GU'] = \"Guam\";\n    arrCountry['GT'] = \"Guatemala\";\n    arrCountry['GN'] = \"Guinea\";\n    arrCountry['GW'] = \"Guinea-Bissau\";\n    arrCountry['GY'] = \"Guyana\";\n    arrCountry['HT'] = \"Haiti\";\n    arrCountry['HM'] = \"Heard And McDonald Islands\";\n    arrCountry['HN'] = \"Honduras\";\n    arrCountry['HK'] = \"Hong Kong\";\n    arrCountry['HU'] = \"Hungary\";\n    arrCountry['IS'] = \"Iceland\";\n    arrCountry['IN'] = \"India\";\n    arrCountry['ID'] = \"Indonesia\";\n    arrCountry['IR'] = \"Iran\";\n    arrCountry['IQ'] = \"Iraq\";\n    arrCountry['IE'] = \"Ireland\";\n    arrCountry['IM'] = \"Isle of Man\";\n    arrCountry['IL'] = \"Israel\";\n    arrCountry['IT'] = \"Italy\";\n    arrCountry['JM'] = \"Jamaica\";\n    arrCountry['JP'] = \"Japan\";\n    arrCountry['JO'] = \"Jordan\";\n    arrCountry['KZ'] = \"Kazakhstan\";\n    arrCountry['KE'] = \"Kenya\";\n    arrCountry['KI'] = \"Kiribati\";\n    arrCountry['KW'] = \"Kuwait\";\n    arrCountry['KG'] = \"Kyrgyzstan\";\n    arrCountry['LA'] = \"Laos\";\n    arrCountry['LV'] = \"Latvia\";\n    arrCountry['LB'] = \"Lebanon\";\n    arrCountry['LS'] = \"Lesotho\";\n    arrCountry['LR'] = \"Liberia\";\n    arrCountry['LY'] = \"Libya\";\n    arrCountry['LI'] = \"Liechtenstein\";\n    arrCountry['LT'] = \"Lithuania\";\n    arrCountry['LU'] = \"Luxembourg\";\n    arrCountry['MO'] = \"Macau\";\n    arrCountry['MK'] = \"Macedonia\";\n    arrCountry['MG'] = \"Madagascar\";\n    arrCountry['MW'] = \"Malawi\";\n    arrCountry['MY'] = \"Malaysia\";\n    arrCountry['MV'] = \"Maldives\";\n    arrCountry['ML'] = \"Mali\";\n    arrCountry['MT'] = \"Malta\";\n    arrCountry['MH'] = \"Marshall Islands\";\n    arrCountry['MQ'] = \"Martinique\";\n    arrCountry['MR'] = \"Mauritania\";\n    arrCountry['MU'] = \"Mauritius\";\n    arrCountry['YT'] = \"Mayotte\";\n    arrCountry['MX'] = \"Mexico\";\n    arrCountry['FM'] = \"Micronesia\";\n    arrCountry['MD'] = \"Moldova\";\n    arrCountry['MC'] = \"Monaco\";\n    arrCountry['MN'] = \"Mongolia\";\n    arrCountry['ME'] = \"Montenegro\";\n    arrCountry['MS'] = \"Montserrat\";\n    arrCountry['MA'] = \"Morocco\";\n    arrCountry['MZ'] = \"Mozambique\";\n    arrCountry['MM'] = \"Myanmar (Burma)\";\n    arrCountry['NA'] = \"Namibia\";\n    arrCountry['NR'] = \"Nauru\";\n    arrCountry['NP'] = \"Nepal\";\n    arrCountry['NL'] = \"Netherlands\";\n    arrCountry['AN'] = \"Netherlands Antilles\";\n    arrCountry['NC'] = \"New Caledonia\";\n    arrCountry['NZ'] = \"New Zealand\";\n    arrCountry['NI'] = \"Nicaragua\";\n    arrCountry['NE'] = \"Niger\";\n    arrCountry['NG'] = \"Nigeria\";\n    arrCountry['NU'] = \"Niue\";\n    arrCountry['NF'] = \"Norfolk Island\";\n    arrCountry['KP'] = \"North Korea\";\n    arrCountry['MP'] = \"Northern Mariana Islands\";\n    arrCountry['NO'] = \"Norway\";\n    arrCountry['OM'] = \"Oman\";\n    arrCountry['PK'] = \"Pakistan\";\n    arrCountry['PW'] = \"Palau\";\n    arrCountry['PS'] = \"Palestine\";\n    arrCountry['PA'] = \"Panama\";\n    arrCountry['PG'] = \"Papua New Guinea\";\n    arrCountry['PY'] = \"Paraguay\";\n    arrCountry['PE'] = \"Peru\";\n    arrCountry['PH'] = \"Philippines\";\n    arrCountry['PN'] = \"Pitcairn\";\n    arrCountry['PL'] = \"Poland\";\n    arrCountry['PT'] = \"Portugal\";\n    arrCountry['PR'] = \"Puerto Rico\";\n    arrCountry['QA'] = \"Qatar\";\n    arrCountry['RE'] = \"Reunion\";\n    arrCountry['RO'] = \"Romania\";\n    arrCountry['RU'] = \"Russia\";\n    arrCountry['RW'] = \"Rwanda\";\n    arrCountry['SH'] = \"Saint Helena\";\n    arrCountry['KN'] = \"Saint Kitts And Nevis\";\n    arrCountry['LC'] = \"Saint Lucia\";\n    arrCountry['PM'] = \"Saint Pierre And Miquelon\";\n    arrCountry['VC'] = \"Saint Vincent And The Grenadines\";\n    arrCountry['SM'] = \"San Marino\";\n    arrCountry['ST'] = \"Sao Tome And Principe\";\n    arrCountry['SA'] = \"Saudi Arabia\";\n    arrCountry['SN'] = \"Senegal\";\n    arrCountry['RS'] = \"Serbia\";\n    arrCountry['SC'] = \"Seychelles\";\n    arrCountry['SL'] = \"Sierra Leone\";\n    arrCountry['SG'] = \"Singapore\";\n    arrCountry['SK'] = \"Slovak Republic\";\n    arrCountry['SI'] = \"Slovenia\";\n    arrCountry['SB'] = \"Solomon Islands\";\n    arrCountry['SO'] = \"Somalia\";\n    arrCountry['ZA'] = \"South Africa\";\n    arrCountry['GS'] = \"South Georgia And South Sandwich Islands\";\n    arrCountry['KR'] = \"South Korea\";\n    arrCountry['ES'] = \"Spain\";\n    arrCountry['LK'] = \"Sri Lanka\";\n    arrCountry['SD'] = \"Sudan\";\n    arrCountry['SR'] = \"Suriname\";\n    arrCountry['SJ'] = \"Svalbard And Jan Mayen\";\n    arrCountry['SZ'] = \"Swaziland\";\n    arrCountry['SE'] = \"Sweden\";\n    arrCountry['CH'] = \"Switzerland\";\n    arrCountry['SY'] = \"Syria\";\n    arrCountry['TW'] = \"Taiwan\";\n    arrCountry['TJ'] = \"Tajikistan\";\n    arrCountry['TZ'] = \"Tanzania\";\n    arrCountry['TH'] = \"Thailand\";\n    arrCountry['TG'] = \"Togo\";\n    arrCountry['TK'] = \"Tokelau\";\n    arrCountry['TO'] = \"Tonga\";\n    arrCountry['TT'] = \"Trinidad And Tobago\";\n    arrCountry['TN'] = \"Tunisia\";\n    arrCountry['TR'] = \"Turkey\";\n    arrCountry['TM'] = \"Turkmenistan\";\n    arrCountry['TC'] = \"Turks And Caicos Islands\";\n    arrCountry['TV'] = \"Tuvalu\";\n    arrCountry['UG'] = \"Uganda\";\n    arrCountry['UA'] = \"Ukraine\";\n    arrCountry['AE'] = \"United Arab Emirates\";\n    arrCountry['GB'] = \"United Kingdom\";\n    arrCountry['US'] = \"United States\";\n    arrCountry['UM'] = \"United States Minor Outlying Islands\";\n    arrCountry['UY'] = \"Uruguay\";\n    arrCountry['UZ'] = \"Uzbekistan\";\n    arrCountry['VU'] = \"Vanuatu\";\n    arrCountry['VA'] = \"Vatican City (Holy See)\";\n    arrCountry['VE'] = \"Venezuela\";\n    arrCountry['VN'] = \"Vietnam\";\n    arrCountry['VG'] = \"Virgin Islands (British)\";\n    arrCountry['VI'] = \"Virgin Islands (US)\";\n    arrCountry['WF'] = \"Wallis And Futuna Islands\";\n    arrCountry['EH'] = \"Western Sahara\";\n    arrCountry['WS'] = \"Western Samoa\";\n    arrCountry['YE'] = \"Yemen\";\n    arrCountry['YU'] = \"Yugoslavia\";\n    arrCountry['ZM'] = \"Zambia\";\n    arrCountry['ZW'] = \"Zimbabwe\";\n\n    var name = arrCountry[countryCode.toUpperCase()];\n    if (name === undefined) {\n        return \"\";\n    }\n    return name;\n}\n\n\nwindow.PhoneFormat = {\n  countryForE164Number: countryForE164Number,\n  formatNumberForMobileDialing: formatNumberForMobileDialing,\n  isValidNumber: isValidNumber,\n  formatE164: formatE164,\n  formatInternational: formatInternational,\n  formatLocal: formatLocal,\n  exampleLandlineNumber: exampleLandlineNumber,\n  exampleMobileNumber: exampleMobileNumber,\n  cleanPhone: cleanPhone,\n  countryCodeToName: countryCodeToName\n};\n\n})(window);\n"
  },
  {
    "path": "dist/phone-format.js",
    "content": "var COMPILED = !0, goog = goog || {};\ngoog.global = this || self;\ngoog.isDef = function(a) {\n  return void 0 !== a;\n};\ngoog.isString = function(a) {\n  return \"string\" == typeof a;\n};\ngoog.isBoolean = function(a) {\n  return \"boolean\" == typeof a;\n};\ngoog.isNumber = function(a) {\n  return \"number\" == typeof a;\n};\ngoog.exportPath_ = function(a, b, c) {\n  a = a.split(\".\");\n  c = c || goog.global;\n  a[0] in c || \"undefined\" == typeof c.execScript || c.execScript(\"var \" + a[0]);\n  for (var d; a.length && (d = a.shift());) {\n    a.length || void 0 === b ? c = c[d] && c[d] !== Object.prototype[d] ? c[d] : c[d] = {} : c[d] = b;\n  }\n};\ngoog.define = function(a, b) {\n  var c = b;\n  if (!COMPILED) {\n    var d = goog.global.CLOSURE_UNCOMPILED_DEFINES, e = goog.global.CLOSURE_DEFINES;\n    d && void 0 === d.nodeType && Object.prototype.hasOwnProperty.call(d, a) ? c = d[a] : e && void 0 === e.nodeType && Object.prototype.hasOwnProperty.call(e, a) && (c = e[a]);\n  }\n  return c;\n};\ngoog.FEATURESET_YEAR = 2012;\ngoog.DEBUG = !0;\ngoog.LOCALE = \"en\";\ngoog.TRUSTED_SITE = !0;\ngoog.STRICT_MODE_COMPATIBLE = !1;\ngoog.DISALLOW_TEST_ONLY_CODE = COMPILED && !goog.DEBUG;\ngoog.ENABLE_CHROME_APP_SAFE_SCRIPT_LOADING = !1;\ngoog.provide = function(a) {\n  if (goog.isInModuleLoader_()) {\n    throw Error(\"goog.provide cannot be used within a module.\");\n  }\n  if (!COMPILED && goog.isProvided_(a)) {\n    throw Error('Namespace \"' + a + '\" already declared.');\n  }\n  goog.constructNamespace_(a);\n};\ngoog.constructNamespace_ = function(a, b) {\n  if (!COMPILED) {\n    delete goog.implicitNamespaces_[a];\n    for (var c = a; (c = c.substring(0, c.lastIndexOf(\".\"))) && !goog.getObjectByName(c);) {\n      goog.implicitNamespaces_[c] = !0;\n    }\n  }\n  goog.exportPath_(a, b);\n};\ngoog.getScriptNonce = function(a) {\n  if (a && a != goog.global) {\n    return goog.getScriptNonce_(a.document);\n  }\n  null === goog.cspNonce_ && (goog.cspNonce_ = goog.getScriptNonce_(goog.global.document));\n  return goog.cspNonce_;\n};\ngoog.NONCE_PATTERN_ = /^[\\w+/_-]+[=]{0,2}$/;\ngoog.cspNonce_ = null;\ngoog.getScriptNonce_ = function(a) {\n  return (a = a.querySelector && a.querySelector(\"script[nonce]\")) && (a = a.nonce || a.getAttribute(\"nonce\")) && goog.NONCE_PATTERN_.test(a) ? a : \"\";\n};\ngoog.VALID_MODULE_RE_ = /^[a-zA-Z_$][a-zA-Z0-9._$]*$/;\ngoog.module = function(a) {\n  if (\"string\" !== typeof a || !a || -1 == a.search(goog.VALID_MODULE_RE_)) {\n    throw Error(\"Invalid module identifier\");\n  }\n  if (!goog.isInGoogModuleLoader_()) {\n    throw Error(\"Module \" + a + \" has been loaded incorrectly. Note, modules cannot be loaded as normal scripts. They require some kind of pre-processing step. You're likely trying to load a module via a script tag or as a part of a concatenated bundle without rewriting the module. For more info see: https://github.com/google/closure-library/wiki/goog.module:-an-ES6-module-like-alternative-to-goog.provide.\");\n  }\n  if (goog.moduleLoaderState_.moduleName) {\n    throw Error(\"goog.module may only be called once per module.\");\n  }\n  goog.moduleLoaderState_.moduleName = a;\n  if (!COMPILED) {\n    if (goog.isProvided_(a)) {\n      throw Error('Namespace \"' + a + '\" already declared.');\n    }\n    delete goog.implicitNamespaces_[a];\n  }\n};\ngoog.module.get = function(a) {\n  return goog.module.getInternal_(a);\n};\ngoog.module.getInternal_ = function(a) {\n  if (!COMPILED) {\n    if (a in goog.loadedModules_) {\n      return goog.loadedModules_[a].exports;\n    }\n    if (!goog.implicitNamespaces_[a]) {\n      return a = goog.getObjectByName(a), null != a ? a : null;\n    }\n  }\n  return null;\n};\ngoog.ModuleType = {ES6:\"es6\", GOOG:\"goog\"};\ngoog.moduleLoaderState_ = null;\ngoog.isInModuleLoader_ = function() {\n  return goog.isInGoogModuleLoader_() || goog.isInEs6ModuleLoader_();\n};\ngoog.isInGoogModuleLoader_ = function() {\n  return !!goog.moduleLoaderState_ && goog.moduleLoaderState_.type == goog.ModuleType.GOOG;\n};\ngoog.isInEs6ModuleLoader_ = function() {\n  if (goog.moduleLoaderState_ && goog.moduleLoaderState_.type == goog.ModuleType.ES6) {\n    return !0;\n  }\n  var a = goog.global.$jscomp;\n  return a ? \"function\" != typeof a.getCurrentModulePath ? !1 : !!a.getCurrentModulePath() : !1;\n};\ngoog.module.declareLegacyNamespace = function() {\n  if (!COMPILED && !goog.isInGoogModuleLoader_()) {\n    throw Error(\"goog.module.declareLegacyNamespace must be called from within a goog.module\");\n  }\n  if (!COMPILED && !goog.moduleLoaderState_.moduleName) {\n    throw Error(\"goog.module must be called prior to goog.module.declareLegacyNamespace.\");\n  }\n  goog.moduleLoaderState_.declareLegacyNamespace = !0;\n};\ngoog.declareModuleId = function(a) {\n  if (!COMPILED) {\n    if (!goog.isInEs6ModuleLoader_()) {\n      throw Error(\"goog.declareModuleId may only be called from within an ES6 module\");\n    }\n    if (goog.moduleLoaderState_ && goog.moduleLoaderState_.moduleName) {\n      throw Error(\"goog.declareModuleId may only be called once per module.\");\n    }\n    if (a in goog.loadedModules_) {\n      throw Error('Module with namespace \"' + a + '\" already exists.');\n    }\n  }\n  if (goog.moduleLoaderState_) {\n    goog.moduleLoaderState_.moduleName = a;\n  } else {\n    var b = goog.global.$jscomp;\n    if (!b || \"function\" != typeof b.getCurrentModulePath) {\n      throw Error('Module with namespace \"' + a + '\" has been loaded incorrectly.');\n    }\n    b = b.require(b.getCurrentModulePath());\n    goog.loadedModules_[a] = {exports:b, type:goog.ModuleType.ES6, moduleId:a};\n  }\n};\ngoog.setTestOnly = function(a) {\n  if (goog.DISALLOW_TEST_ONLY_CODE) {\n    throw a = a || \"\", Error(\"Importing test-only code into non-debug environment\" + (a ? \": \" + a : \".\"));\n  }\n};\ngoog.forwardDeclare = function(a) {\n};\nCOMPILED || (goog.isProvided_ = function(a) {\n  return a in goog.loadedModules_ || !goog.implicitNamespaces_[a] && null != goog.getObjectByName(a);\n}, goog.implicitNamespaces_ = {\"goog.module\":!0});\ngoog.getObjectByName = function(a, b) {\n  for (var c = a.split(\".\"), d = b || goog.global, e = 0; e < c.length; e++) {\n    if (d = d[c[e]], null == d) {\n      return null;\n    }\n  }\n  return d;\n};\ngoog.globalize = function(a, b) {\n  var c = b || goog.global, d;\n  for (d in a) {\n    c[d] = a[d];\n  }\n};\ngoog.addDependency = function(a, b, c, d) {\n  !COMPILED && goog.DEPENDENCIES_ENABLED && goog.debugLoader_.addDependency(a, b, c, d);\n};\ngoog.ENABLE_DEBUG_LOADER = !0;\ngoog.logToConsole_ = function(a) {\n  goog.global.console && goog.global.console.error(a);\n};\ngoog.require = function(a) {\n  if (!COMPILED) {\n    goog.ENABLE_DEBUG_LOADER && goog.debugLoader_.requested(a);\n    if (goog.isProvided_(a)) {\n      if (goog.isInModuleLoader_()) {\n        return goog.module.getInternal_(a);\n      }\n    } else {\n      if (goog.ENABLE_DEBUG_LOADER) {\n        var b = goog.moduleLoaderState_;\n        goog.moduleLoaderState_ = null;\n        try {\n          goog.debugLoader_.load_(a);\n        } finally {\n          goog.moduleLoaderState_ = b;\n        }\n      }\n    }\n    return null;\n  }\n};\ngoog.requireType = function(a) {\n  return {};\n};\ngoog.basePath = \"\";\ngoog.nullFunction = function() {\n};\ngoog.abstractMethod = function() {\n  throw Error(\"unimplemented abstract method\");\n};\ngoog.addSingletonGetter = function(a) {\n  a.instance_ = void 0;\n  a.getInstance = function() {\n    if (a.instance_) {\n      return a.instance_;\n    }\n    goog.DEBUG && (goog.instantiatedSingletons_[goog.instantiatedSingletons_.length] = a);\n    return a.instance_ = new a;\n  };\n};\ngoog.instantiatedSingletons_ = [];\ngoog.LOAD_MODULE_USING_EVAL = !0;\ngoog.SEAL_MODULE_EXPORTS = goog.DEBUG;\ngoog.loadedModules_ = {};\ngoog.DEPENDENCIES_ENABLED = !COMPILED && goog.ENABLE_DEBUG_LOADER;\ngoog.TRANSPILE = \"detect\";\ngoog.ASSUME_ES_MODULES_TRANSPILED = !1;\ngoog.TRANSPILE_TO_LANGUAGE = \"\";\ngoog.TRANSPILER = \"transpile.js\";\ngoog.hasBadLetScoping = null;\ngoog.useSafari10Workaround = function() {\n  if (null == goog.hasBadLetScoping) {\n    try {\n      var a = !eval('\"use strict\";let x = 1; function f() { return typeof x; };f() == \"number\";');\n    } catch (b) {\n      a = !1;\n    }\n    goog.hasBadLetScoping = a;\n  }\n  return goog.hasBadLetScoping;\n};\ngoog.workaroundSafari10EvalBug = function(a) {\n  return \"(function(){\" + a + \"\\n;})();\\n\";\n};\ngoog.loadModule = function(a) {\n  var b = goog.moduleLoaderState_;\n  try {\n    goog.moduleLoaderState_ = {moduleName:\"\", declareLegacyNamespace:!1, type:goog.ModuleType.GOOG};\n    if (goog.isFunction(a)) {\n      var c = a.call(void 0, {});\n    } else {\n      if (\"string\" === typeof a) {\n        goog.useSafari10Workaround() && (a = goog.workaroundSafari10EvalBug(a)), c = goog.loadModuleFromSource_.call(void 0, a);\n      } else {\n        throw Error(\"Invalid module definition\");\n      }\n    }\n    var d = goog.moduleLoaderState_.moduleName;\n    if (\"string\" === typeof d && d) {\n      goog.moduleLoaderState_.declareLegacyNamespace ? goog.constructNamespace_(d, c) : goog.SEAL_MODULE_EXPORTS && Object.seal && \"object\" == typeof c && null != c && Object.seal(c), goog.loadedModules_[d] = {exports:c, type:goog.ModuleType.GOOG, moduleId:goog.moduleLoaderState_.moduleName};\n    } else {\n      throw Error('Invalid module name \"' + d + '\"');\n    }\n  } finally {\n    goog.moduleLoaderState_ = b;\n  }\n};\ngoog.loadModuleFromSource_ = function(a) {\n  eval(a);\n  return {};\n};\ngoog.normalizePath_ = function(a) {\n  a = a.split(\"/\");\n  for (var b = 0; b < a.length;) {\n    \".\" == a[b] ? a.splice(b, 1) : b && \"..\" == a[b] && a[b - 1] && \"..\" != a[b - 1] ? a.splice(--b, 2) : b++;\n  }\n  return a.join(\"/\");\n};\ngoog.loadFileSync_ = function(a) {\n  if (goog.global.CLOSURE_LOAD_FILE_SYNC) {\n    return goog.global.CLOSURE_LOAD_FILE_SYNC(a);\n  }\n  try {\n    var b = new goog.global.XMLHttpRequest;\n    b.open(\"get\", a, !1);\n    b.send();\n    return 0 == b.status || 200 == b.status ? b.responseText : null;\n  } catch (c) {\n    return null;\n  }\n};\ngoog.transpile_ = function(a, b, c) {\n  var d = goog.global.$jscomp;\n  d || (goog.global.$jscomp = d = {});\n  var e = d.transpile;\n  if (!e) {\n    var f = goog.basePath + goog.TRANSPILER, g = goog.loadFileSync_(f);\n    if (g) {\n      (function() {\n        (0,eval)(g + \"\\n//# sourceURL=\" + f);\n      }).call(goog.global);\n      if (goog.global.$gwtExport && goog.global.$gwtExport.$jscomp && !goog.global.$gwtExport.$jscomp.transpile) {\n        throw Error('The transpiler did not properly export the \"transpile\" method. $gwtExport: ' + JSON.stringify(goog.global.$gwtExport));\n      }\n      goog.global.$jscomp.transpile = goog.global.$gwtExport.$jscomp.transpile;\n      d = goog.global.$jscomp;\n      e = d.transpile;\n    }\n  }\n  e || (e = d.transpile = function(a, b) {\n    goog.logToConsole_(b + \" requires transpilation but no transpiler was found.\");\n    return a;\n  });\n  return e(a, b, c);\n};\ngoog.typeOf = function(a) {\n  var b = typeof a;\n  if (\"object\" == b) {\n    if (a) {\n      if (a instanceof Array) {\n        return \"array\";\n      }\n      if (a instanceof Object) {\n        return b;\n      }\n      var c = Object.prototype.toString.call(a);\n      if (\"[object Window]\" == c) {\n        return \"object\";\n      }\n      if (\"[object Array]\" == c || \"number\" == typeof a.length && \"undefined\" != typeof a.splice && \"undefined\" != typeof a.propertyIsEnumerable && !a.propertyIsEnumerable(\"splice\")) {\n        return \"array\";\n      }\n      if (\"[object Function]\" == c || \"undefined\" != typeof a.call && \"undefined\" != typeof a.propertyIsEnumerable && !a.propertyIsEnumerable(\"call\")) {\n        return \"function\";\n      }\n    } else {\n      return \"null\";\n    }\n  } else {\n    if (\"function\" == b && \"undefined\" == typeof a.call) {\n      return \"object\";\n    }\n  }\n  return b;\n};\ngoog.isNull = function(a) {\n  return null === a;\n};\ngoog.isDefAndNotNull = function(a) {\n  return null != a;\n};\ngoog.isArray = function(a) {\n  return \"array\" == goog.typeOf(a);\n};\ngoog.isArrayLike = function(a) {\n  var b = goog.typeOf(a);\n  return \"array\" == b || \"object\" == b && \"number\" == typeof a.length;\n};\ngoog.isDateLike = function(a) {\n  return goog.isObject(a) && \"function\" == typeof a.getFullYear;\n};\ngoog.isFunction = function(a) {\n  return \"function\" == goog.typeOf(a);\n};\ngoog.isObject = function(a) {\n  var b = typeof a;\n  return \"object\" == b && null != a || \"function\" == b;\n};\ngoog.getUid = function(a) {\n  return a[goog.UID_PROPERTY_] || (a[goog.UID_PROPERTY_] = ++goog.uidCounter_);\n};\ngoog.hasUid = function(a) {\n  return !!a[goog.UID_PROPERTY_];\n};\ngoog.removeUid = function(a) {\n  null !== a && \"removeAttribute\" in a && a.removeAttribute(goog.UID_PROPERTY_);\n  try {\n    delete a[goog.UID_PROPERTY_];\n  } catch (b) {\n  }\n};\ngoog.UID_PROPERTY_ = \"closure_uid_\" + (1e9 * Math.random() >>> 0);\ngoog.uidCounter_ = 0;\ngoog.getHashCode = goog.getUid;\ngoog.removeHashCode = goog.removeUid;\ngoog.cloneObject = function(a) {\n  var b = goog.typeOf(a);\n  if (\"object\" == b || \"array\" == b) {\n    if (\"function\" === typeof a.clone) {\n      return a.clone();\n    }\n    b = \"array\" == b ? [] : {};\n    for (var c in a) {\n      b[c] = goog.cloneObject(a[c]);\n    }\n    return b;\n  }\n  return a;\n};\ngoog.bindNative_ = function(a, b, c) {\n  return a.call.apply(a.bind, arguments);\n};\ngoog.bindJs_ = function(a, b, c) {\n  if (!a) {\n    throw Error();\n  }\n  if (2 < arguments.length) {\n    var d = Array.prototype.slice.call(arguments, 2);\n    return function() {\n      var c = Array.prototype.slice.call(arguments);\n      Array.prototype.unshift.apply(c, d);\n      return a.apply(b, c);\n    };\n  }\n  return function() {\n    return a.apply(b, arguments);\n  };\n};\ngoog.bind = function(a, b, c) {\n  Function.prototype.bind && -1 != Function.prototype.bind.toString().indexOf(\"native code\") ? goog.bind = goog.bindNative_ : goog.bind = goog.bindJs_;\n  return goog.bind.apply(null, arguments);\n};\ngoog.partial = function(a, b) {\n  var c = Array.prototype.slice.call(arguments, 1);\n  return function() {\n    var b = c.slice();\n    b.push.apply(b, arguments);\n    return a.apply(this, b);\n  };\n};\ngoog.mixin = function(a, b) {\n  for (var c in b) {\n    a[c] = b[c];\n  }\n};\ngoog.now = goog.TRUSTED_SITE && Date.now || function() {\n  return +new Date;\n};\ngoog.globalEval = function(a) {\n  if (goog.global.execScript) {\n    goog.global.execScript(a, \"JavaScript\");\n  } else {\n    if (goog.global.eval) {\n      if (null == goog.evalWorksForGlobals_) {\n        try {\n          goog.global.eval(\"var _evalTest_ = 1;\");\n        } catch (d) {\n        }\n        if (\"undefined\" != typeof goog.global._evalTest_) {\n          try {\n            delete goog.global._evalTest_;\n          } catch (d) {\n          }\n          goog.evalWorksForGlobals_ = !0;\n        } else {\n          goog.evalWorksForGlobals_ = !1;\n        }\n      }\n      if (goog.evalWorksForGlobals_) {\n        goog.global.eval(a);\n      } else {\n        var b = goog.global.document, c = b.createElement(\"script\");\n        c.type = \"text/javascript\";\n        c.defer = !1;\n        c.appendChild(b.createTextNode(a));\n        b.head.appendChild(c);\n        b.head.removeChild(c);\n      }\n    } else {\n      throw Error(\"goog.globalEval not available\");\n    }\n  }\n};\ngoog.evalWorksForGlobals_ = null;\ngoog.getCssName = function(a, b) {\n  if (\".\" == String(a).charAt(0)) {\n    throw Error('className passed in goog.getCssName must not start with \".\". You passed: ' + a);\n  }\n  var c = function(a) {\n    return goog.cssNameMapping_[a] || a;\n  }, d = function(a) {\n    a = a.split(\"-\");\n    for (var b = [], d = 0; d < a.length; d++) {\n      b.push(c(a[d]));\n    }\n    return b.join(\"-\");\n  };\n  d = goog.cssNameMapping_ ? \"BY_WHOLE\" == goog.cssNameMappingStyle_ ? c : d : function(a) {\n    return a;\n  };\n  d = b ? a + \"-\" + d(b) : d(a);\n  return goog.global.CLOSURE_CSS_NAME_MAP_FN ? goog.global.CLOSURE_CSS_NAME_MAP_FN(d) : d;\n};\ngoog.setCssNameMapping = function(a, b) {\n  goog.cssNameMapping_ = a;\n  goog.cssNameMappingStyle_ = b;\n};\n!COMPILED && goog.global.CLOSURE_CSS_NAME_MAPPING && (goog.cssNameMapping_ = goog.global.CLOSURE_CSS_NAME_MAPPING);\ngoog.getMsg = function(a, b, c) {\n  c && c.html && (a = a.replace(/</g, \"&lt;\"));\n  b && (a = a.replace(/\\{\\$([^}]+)}/g, function(a, c) {\n    return null != b && c in b ? b[c] : a;\n  }));\n  return a;\n};\ngoog.getMsgWithFallback = function(a, b) {\n  return a;\n};\ngoog.exportSymbol = function(a, b, c) {\n  goog.exportPath_(a, b, c);\n};\ngoog.exportProperty = function(a, b, c) {\n  a[b] = c;\n};\ngoog.inherits = function(a, b) {\n  function c() {\n  }\n  c.prototype = b.prototype;\n  a.superClass_ = b.prototype;\n  a.prototype = new c;\n  a.prototype.constructor = a;\n  a.base = function(a, c, f) {\n    for (var d = Array(arguments.length - 2), e = 2; e < arguments.length; e++) {\n      d[e - 2] = arguments[e];\n    }\n    return b.prototype[c].apply(a, d);\n  };\n};\ngoog.base = function(a, b, c) {\n  var d = arguments.callee.caller;\n  if (goog.STRICT_MODE_COMPATIBLE || goog.DEBUG && !d) {\n    throw Error(\"arguments.caller not defined.  goog.base() cannot be used with strict mode code. See http://www.ecma-international.org/ecma-262/5.1/#sec-C\");\n  }\n  if (\"undefined\" !== typeof d.superClass_) {\n    for (var e = Array(arguments.length - 1), f = 1; f < arguments.length; f++) {\n      e[f - 1] = arguments[f];\n    }\n    return d.superClass_.constructor.apply(a, e);\n  }\n  if (\"string\" != typeof b && \"symbol\" != typeof b) {\n    throw Error(\"method names provided to goog.base must be a string or a symbol\");\n  }\n  e = Array(arguments.length - 2);\n  for (f = 2; f < arguments.length; f++) {\n    e[f - 2] = arguments[f];\n  }\n  f = !1;\n  for (var g = a.constructor.prototype; g; g = Object.getPrototypeOf(g)) {\n    if (g[b] === d) {\n      f = !0;\n    } else {\n      if (f) {\n        return g[b].apply(a, e);\n      }\n    }\n  }\n  if (a[b] === d) {\n    return a.constructor.prototype[b].apply(a, e);\n  }\n  throw Error(\"goog.base called from a method of one name to a method of a different name\");\n};\ngoog.scope = function(a) {\n  if (goog.isInModuleLoader_()) {\n    throw Error(\"goog.scope is not supported within a module.\");\n  }\n  a.call(goog.global);\n};\nCOMPILED || (goog.global.COMPILED = COMPILED);\ngoog.defineClass = function(a, b) {\n  var c = b.constructor, d = b.statics;\n  c && c != Object.prototype.constructor || (c = function() {\n    throw Error(\"cannot instantiate an interface (no constructor defined).\");\n  });\n  c = goog.defineClass.createSealingConstructor_(c, a);\n  a && goog.inherits(c, a);\n  delete b.constructor;\n  delete b.statics;\n  goog.defineClass.applyProperties_(c.prototype, b);\n  null != d && (d instanceof Function ? d(c) : goog.defineClass.applyProperties_(c, d));\n  return c;\n};\ngoog.defineClass.SEAL_CLASS_INSTANCES = goog.DEBUG;\ngoog.defineClass.createSealingConstructor_ = function(a, b) {\n  if (!goog.defineClass.SEAL_CLASS_INSTANCES) {\n    return a;\n  }\n  var c = !goog.defineClass.isUnsealable_(b), d = function() {\n    var b = a.apply(this, arguments) || this;\n    b[goog.UID_PROPERTY_] = b[goog.UID_PROPERTY_];\n    this.constructor === d && c && Object.seal instanceof Function && Object.seal(b);\n    return b;\n  };\n  return d;\n};\ngoog.defineClass.isUnsealable_ = function(a) {\n  return a && a.prototype && a.prototype[goog.UNSEALABLE_CONSTRUCTOR_PROPERTY_];\n};\ngoog.defineClass.OBJECT_PROTOTYPE_FIELDS_ = \"constructor hasOwnProperty isPrototypeOf propertyIsEnumerable toLocaleString toString valueOf\".split(\" \");\ngoog.defineClass.applyProperties_ = function(a, b) {\n  for (var c in b) {\n    Object.prototype.hasOwnProperty.call(b, c) && (a[c] = b[c]);\n  }\n  for (var d = 0; d < goog.defineClass.OBJECT_PROTOTYPE_FIELDS_.length; d++) {\n    c = goog.defineClass.OBJECT_PROTOTYPE_FIELDS_[d], Object.prototype.hasOwnProperty.call(b, c) && (a[c] = b[c]);\n  }\n};\ngoog.tagUnsealableClass = function(a) {\n  !COMPILED && goog.defineClass.SEAL_CLASS_INSTANCES && (a.prototype[goog.UNSEALABLE_CONSTRUCTOR_PROPERTY_] = !0);\n};\ngoog.UNSEALABLE_CONSTRUCTOR_PROPERTY_ = \"goog_defineClass_legacy_unsealable\";\n!COMPILED && goog.DEPENDENCIES_ENABLED && (goog.inHtmlDocument_ = function() {\n  var a = goog.global.document;\n  return null != a && \"write\" in a;\n}, goog.isDocumentLoading_ = function() {\n  var a = goog.global.document;\n  return a.attachEvent ? \"complete\" != a.readyState : \"loading\" == a.readyState;\n}, goog.findBasePath_ = function() {\n  if (void 0 != goog.global.CLOSURE_BASE_PATH && \"string\" === typeof goog.global.CLOSURE_BASE_PATH) {\n    goog.basePath = goog.global.CLOSURE_BASE_PATH;\n  } else {\n    if (goog.inHtmlDocument_()) {\n      var a = goog.global.document, b = a.currentScript;\n      a = b ? [b] : a.getElementsByTagName(\"SCRIPT\");\n      for (b = a.length - 1; 0 <= b; --b) {\n        var c = a[b].src, d = c.lastIndexOf(\"?\");\n        d = -1 == d ? c.length : d;\n        if (\"base.js\" == c.substr(d - 7, 7)) {\n          goog.basePath = c.substr(0, d - 7);\n          break;\n        }\n      }\n    }\n  }\n}, goog.findBasePath_(), goog.Transpiler = function() {\n  this.requiresTranspilation_ = null;\n  this.transpilationTarget_ = goog.TRANSPILE_TO_LANGUAGE;\n}, goog.Transpiler.prototype.createRequiresTranspilation_ = function() {\n  function a(a, b) {\n    e ? d[a] = !0 : b() ? (c = a, d[a] = !1) : e = d[a] = !0;\n  }\n  function b(a) {\n    try {\n      return !!eval(a);\n    } catch (h) {\n      return !1;\n    }\n  }\n  var c = \"es3\", d = {es3:!1}, e = !1, f = goog.global.navigator && goog.global.navigator.userAgent ? goog.global.navigator.userAgent : \"\";\n  a(\"es5\", function() {\n    return b(\"[1,].length==1\");\n  });\n  a(\"es6\", function() {\n    return f.match(/Edge\\/(\\d+)(\\.\\d)*/i) ? !1 : b('(()=>{\"use strict\";class X{constructor(){if(new.target!=String)throw 1;this.x=42}}let q=Reflect.construct(X,[],String);if(q.x!=42||!(q instanceof String))throw 1;for(const a of[2,3]){if(a==2)continue;function f(z={a}){let a=0;return z.a}{function f(){return 0;}}return f()==3}})()');\n  });\n  a(\"es7\", function() {\n    return b(\"2 ** 2 == 4\");\n  });\n  a(\"es8\", function() {\n    return b(\"async () => 1, true\");\n  });\n  a(\"es9\", function() {\n    return b(\"({...rest} = {}), true\");\n  });\n  a(\"es_next\", function() {\n    return !1;\n  });\n  return {target:c, map:d};\n}, goog.Transpiler.prototype.needsTranspile = function(a, b) {\n  if (\"always\" == goog.TRANSPILE) {\n    return !0;\n  }\n  if (\"never\" == goog.TRANSPILE) {\n    return !1;\n  }\n  if (!this.requiresTranspilation_) {\n    var c = this.createRequiresTranspilation_();\n    this.requiresTranspilation_ = c.map;\n    this.transpilationTarget_ = this.transpilationTarget_ || c.target;\n  }\n  if (a in this.requiresTranspilation_) {\n    return this.requiresTranspilation_[a] ? !0 : !goog.inHtmlDocument_() || \"es6\" != b || \"noModule\" in goog.global.document.createElement(\"script\") ? !1 : !0;\n  }\n  throw Error(\"Unknown language mode: \" + a);\n}, goog.Transpiler.prototype.transpile = function(a, b) {\n  return goog.transpile_(a, b, this.transpilationTarget_);\n}, goog.transpiler_ = new goog.Transpiler, goog.protectScriptTag_ = function(a) {\n  return a.replace(/<\\/(SCRIPT)/ig, \"\\\\x3c/$1\");\n}, goog.DebugLoader_ = function() {\n  this.dependencies_ = {};\n  this.idToPath_ = {};\n  this.written_ = {};\n  this.loadingDeps_ = [];\n  this.depsToLoad_ = [];\n  this.paused_ = !1;\n  this.factory_ = new goog.DependencyFactory(goog.transpiler_);\n  this.deferredCallbacks_ = {};\n  this.deferredQueue_ = [];\n}, goog.DebugLoader_.prototype.bootstrap = function(a, b) {\n  function c() {\n    d && (goog.global.setTimeout(d, 0), d = null);\n  }\n  var d = b;\n  if (a.length) {\n    for (var e = [], f = 0; f < a.length; f++) {\n      var g = this.getPathFromDeps_(a[f]);\n      if (!g) {\n        throw Error(\"Unregonized namespace: \" + a[f]);\n      }\n      e.push(this.dependencies_[g]);\n    }\n    g = goog.require;\n    var h = 0;\n    for (f = 0; f < a.length; f++) {\n      g(a[f]), e[f].onLoad(function() {\n        ++h == a.length && c();\n      });\n    }\n  } else {\n    c();\n  }\n}, goog.DebugLoader_.prototype.loadClosureDeps = function() {\n  this.depsToLoad_.push(this.factory_.createDependency(goog.normalizePath_(goog.basePath + \"deps.js\"), \"deps.js\", [], [], {}, !1));\n  this.loadDeps_();\n}, goog.DebugLoader_.prototype.requested = function(a, b) {\n  var c = this.getPathFromDeps_(a);\n  if (c && (b || this.areDepsLoaded_(this.dependencies_[c].requires))) {\n    var d = this.deferredCallbacks_[c];\n    d && (delete this.deferredCallbacks_[c], d());\n  }\n}, goog.DebugLoader_.prototype.setDependencyFactory = function(a) {\n  this.factory_ = a;\n}, goog.DebugLoader_.prototype.load_ = function(a) {\n  if (this.getPathFromDeps_(a)) {\n    var b = this, c = [], d = function(a) {\n      var e = b.getPathFromDeps_(a);\n      if (!e) {\n        throw Error(\"Bad dependency path or symbol: \" + a);\n      }\n      if (!b.written_[e]) {\n        b.written_[e] = !0;\n        a = b.dependencies_[e];\n        for (e = 0; e < a.requires.length; e++) {\n          goog.isProvided_(a.requires[e]) || d(a.requires[e]);\n        }\n        c.push(a);\n      }\n    };\n    d(a);\n    a = !!this.depsToLoad_.length;\n    this.depsToLoad_ = this.depsToLoad_.concat(c);\n    this.paused_ || a || this.loadDeps_();\n  } else {\n    throw a = \"goog.require could not find: \" + a, goog.logToConsole_(a), Error(a);\n  }\n}, goog.DebugLoader_.prototype.loadDeps_ = function() {\n  for (var a = this, b = this.paused_; this.depsToLoad_.length && !b;) {\n    (function() {\n      var c = !1, d = a.depsToLoad_.shift(), e = !1;\n      a.loading_(d);\n      var f = {pause:function() {\n        if (c) {\n          throw Error(\"Cannot call pause after the call to load.\");\n        }\n        b = !0;\n      }, resume:function() {\n        c ? a.resume_() : b = !1;\n      }, loaded:function() {\n        if (e) {\n          throw Error(\"Double call to loaded.\");\n        }\n        e = !0;\n        a.loaded_(d);\n      }, pending:function() {\n        for (var b = [], c = 0; c < a.loadingDeps_.length; c++) {\n          b.push(a.loadingDeps_[c]);\n        }\n        return b;\n      }, setModuleState:function(a) {\n        goog.moduleLoaderState_ = {type:a, moduleName:\"\", declareLegacyNamespace:!1};\n      }, registerEs6ModuleExports:function(a, b, c) {\n        c && (goog.loadedModules_[c] = {exports:b, type:goog.ModuleType.ES6, moduleId:c || \"\"});\n      }, registerGoogModuleExports:function(a, b) {\n        goog.loadedModules_[a] = {exports:b, type:goog.ModuleType.GOOG, moduleId:a};\n      }, clearModuleState:function() {\n        goog.moduleLoaderState_ = null;\n      }, defer:function(b) {\n        if (c) {\n          throw Error(\"Cannot register with defer after the call to load.\");\n        }\n        a.defer_(d, b);\n      }, areDepsLoaded:function() {\n        return a.areDepsLoaded_(d.requires);\n      }};\n      try {\n        d.load(f);\n      } finally {\n        c = !0;\n      }\n    })();\n  }\n  b && this.pause_();\n}, goog.DebugLoader_.prototype.pause_ = function() {\n  this.paused_ = !0;\n}, goog.DebugLoader_.prototype.resume_ = function() {\n  this.paused_ && (this.paused_ = !1, this.loadDeps_());\n}, goog.DebugLoader_.prototype.loading_ = function(a) {\n  this.loadingDeps_.push(a);\n}, goog.DebugLoader_.prototype.loaded_ = function(a) {\n  for (var b = 0; b < this.loadingDeps_.length; b++) {\n    if (this.loadingDeps_[b] == a) {\n      this.loadingDeps_.splice(b, 1);\n      break;\n    }\n  }\n  for (b = 0; b < this.deferredQueue_.length; b++) {\n    if (this.deferredQueue_[b] == a.path) {\n      this.deferredQueue_.splice(b, 1);\n      break;\n    }\n  }\n  if (this.loadingDeps_.length == this.deferredQueue_.length && !this.depsToLoad_.length) {\n    for (; this.deferredQueue_.length;) {\n      this.requested(this.deferredQueue_.shift(), !0);\n    }\n  }\n  a.loaded();\n}, goog.DebugLoader_.prototype.areDepsLoaded_ = function(a) {\n  for (var b = 0; b < a.length; b++) {\n    var c = this.getPathFromDeps_(a[b]);\n    if (!c || !(c in this.deferredCallbacks_ || goog.isProvided_(a[b]))) {\n      return !1;\n    }\n  }\n  return !0;\n}, goog.DebugLoader_.prototype.getPathFromDeps_ = function(a) {\n  return a in this.idToPath_ ? this.idToPath_[a] : a in this.dependencies_ ? a : null;\n}, goog.DebugLoader_.prototype.defer_ = function(a, b) {\n  this.deferredCallbacks_[a.path] = b;\n  this.deferredQueue_.push(a.path);\n}, goog.LoadController = function() {\n}, goog.LoadController.prototype.pause = function() {\n}, goog.LoadController.prototype.resume = function() {\n}, goog.LoadController.prototype.loaded = function() {\n}, goog.LoadController.prototype.pending = function() {\n}, goog.LoadController.prototype.registerEs6ModuleExports = function(a, b, c) {\n}, goog.LoadController.prototype.setModuleState = function(a) {\n}, goog.LoadController.prototype.clearModuleState = function() {\n}, goog.LoadController.prototype.defer = function(a) {\n}, goog.LoadController.prototype.areDepsLoaded = function() {\n}, goog.Dependency = function(a, b, c, d, e) {\n  this.path = a;\n  this.relativePath = b;\n  this.provides = c;\n  this.requires = d;\n  this.loadFlags = e;\n  this.loaded_ = !1;\n  this.loadCallbacks_ = [];\n}, goog.Dependency.prototype.getPathName = function() {\n  var a = this.path, b = a.indexOf(\"://\");\n  0 <= b && (a = a.substring(b + 3), b = a.indexOf(\"/\"), 0 <= b && (a = a.substring(b + 1)));\n  return a;\n}, goog.Dependency.prototype.onLoad = function(a) {\n  this.loaded_ ? a() : this.loadCallbacks_.push(a);\n}, goog.Dependency.prototype.loaded = function() {\n  this.loaded_ = !0;\n  var a = this.loadCallbacks_;\n  this.loadCallbacks_ = [];\n  for (var b = 0; b < a.length; b++) {\n    a[b]();\n  }\n}, goog.Dependency.defer_ = !1, goog.Dependency.callbackMap_ = {}, goog.Dependency.registerCallback_ = function(a) {\n  var b = Math.random().toString(32);\n  goog.Dependency.callbackMap_[b] = a;\n  return b;\n}, goog.Dependency.unregisterCallback_ = function(a) {\n  delete goog.Dependency.callbackMap_[a];\n}, goog.Dependency.callback_ = function(a, b) {\n  if (a in goog.Dependency.callbackMap_) {\n    for (var c = goog.Dependency.callbackMap_[a], d = [], e = 1; e < arguments.length; e++) {\n      d.push(arguments[e]);\n    }\n    c.apply(void 0, d);\n  } else {\n    throw Error(\"Callback key \" + a + \" does not exist (was base.js loaded more than once?).\");\n  }\n}, goog.Dependency.prototype.load = function(a) {\n  if (goog.global.CLOSURE_IMPORT_SCRIPT) {\n    goog.global.CLOSURE_IMPORT_SCRIPT(this.path) ? a.loaded() : a.pause();\n  } else {\n    if (goog.inHtmlDocument_()) {\n      var b = goog.global.document;\n      if (\"complete\" == b.readyState && !goog.ENABLE_CHROME_APP_SAFE_SCRIPT_LOADING) {\n        if (/\\bdeps.js$/.test(this.path)) {\n          a.loaded();\n          return;\n        }\n        throw Error('Cannot write \"' + this.path + '\" after document load');\n      }\n      if (!goog.ENABLE_CHROME_APP_SAFE_SCRIPT_LOADING && goog.isDocumentLoading_()) {\n        var c = goog.Dependency.registerCallback_(function(b) {\n          goog.DebugLoader_.IS_OLD_IE_ && \"complete\" != b.readyState || (goog.Dependency.unregisterCallback_(c), a.loaded());\n        }), d = !goog.DebugLoader_.IS_OLD_IE_ && goog.getScriptNonce() ? ' nonce=\"' + goog.getScriptNonce() + '\"' : \"\";\n        d = '<script src=\"' + this.path + '\" ' + (goog.DebugLoader_.IS_OLD_IE_ ? \"onreadystatechange\" : \"onload\") + \"=\\\"goog.Dependency.callback_('\" + c + '\\', this)\" type=\"text/javascript\" ' + (goog.Dependency.defer_ ? \"defer\" : \"\") + d + \">\\x3c/script>\";\n        b.write(goog.TRUSTED_TYPES_POLICY_ ? goog.TRUSTED_TYPES_POLICY_.createHTML(d) : d);\n      } else {\n        var e = b.createElement(\"script\");\n        e.defer = goog.Dependency.defer_;\n        e.async = !1;\n        e.type = \"text/javascript\";\n        (d = goog.getScriptNonce()) && e.setAttribute(\"nonce\", d);\n        goog.DebugLoader_.IS_OLD_IE_ ? (a.pause(), e.onreadystatechange = function() {\n          if (\"loaded\" == e.readyState || \"complete\" == e.readyState) {\n            a.loaded(), a.resume();\n          }\n        }) : e.onload = function() {\n          e.onload = null;\n          a.loaded();\n        };\n        e.src = goog.TRUSTED_TYPES_POLICY_ ? goog.TRUSTED_TYPES_POLICY_.createScriptURL(this.path) : this.path;\n        b.head.appendChild(e);\n      }\n    } else {\n      goog.logToConsole_(\"Cannot use default debug loader outside of HTML documents.\"), \"deps.js\" == this.relativePath ? (goog.logToConsole_(\"Consider setting CLOSURE_IMPORT_SCRIPT before loading base.js, or setting CLOSURE_NO_DEPS to true.\"), a.loaded()) : a.pause();\n    }\n  }\n}, goog.Es6ModuleDependency = function(a, b, c, d, e) {\n  goog.Dependency.call(this, a, b, c, d, e);\n}, goog.inherits(goog.Es6ModuleDependency, goog.Dependency), goog.Es6ModuleDependency.prototype.load = function(a) {\n  function b(a, b) {\n    var c = b ? '<script type=\"module\" crossorigin>' + b + \"\\x3c/script>\" : '<script type=\"module\" crossorigin src=\"' + a + '\">\\x3c/script>';\n    d.write(goog.TRUSTED_TYPES_POLICY_ ? goog.TRUSTED_TYPES_POLICY_.createHTML(c) : c);\n  }\n  function c(a, b) {\n    var c = d.createElement(\"script\");\n    c.defer = !0;\n    c.async = !1;\n    c.type = \"module\";\n    c.setAttribute(\"crossorigin\", !0);\n    var e = goog.getScriptNonce();\n    e && c.setAttribute(\"nonce\", e);\n    b ? c.textContent = goog.TRUSTED_TYPES_POLICY_ ? goog.TRUSTED_TYPES_POLICY_.createScript(b) : b : c.src = goog.TRUSTED_TYPES_POLICY_ ? goog.TRUSTED_TYPES_POLICY_.createScriptURL(a) : a;\n    d.head.appendChild(c);\n  }\n  if (goog.global.CLOSURE_IMPORT_SCRIPT) {\n    goog.global.CLOSURE_IMPORT_SCRIPT(this.path) ? a.loaded() : a.pause();\n  } else {\n    if (goog.inHtmlDocument_()) {\n      var d = goog.global.document, e = this;\n      if (goog.isDocumentLoading_()) {\n        var f = b;\n        goog.Dependency.defer_ = !0;\n      } else {\n        f = c;\n      }\n      var g = goog.Dependency.registerCallback_(function() {\n        goog.Dependency.unregisterCallback_(g);\n        a.setModuleState(goog.ModuleType.ES6);\n      });\n      f(void 0, 'goog.Dependency.callback_(\"' + g + '\")');\n      f(this.path, void 0);\n      var h = goog.Dependency.registerCallback_(function(b) {\n        goog.Dependency.unregisterCallback_(h);\n        a.registerEs6ModuleExports(e.path, b, goog.moduleLoaderState_.moduleName);\n      });\n      f(void 0, 'import * as m from \"' + this.path + '\"; goog.Dependency.callback_(\"' + h + '\", m)');\n      var k = goog.Dependency.registerCallback_(function() {\n        goog.Dependency.unregisterCallback_(k);\n        a.clearModuleState();\n        a.loaded();\n      });\n      f(void 0, 'goog.Dependency.callback_(\"' + k + '\")');\n    } else {\n      goog.logToConsole_(\"Cannot use default debug loader outside of HTML documents.\"), a.pause();\n    }\n  }\n}, goog.TransformedDependency = function(a, b, c, d, e) {\n  goog.Dependency.call(this, a, b, c, d, e);\n  this.contents_ = null;\n  this.lazyFetch_ = !goog.inHtmlDocument_() || !(\"noModule\" in goog.global.document.createElement(\"script\"));\n}, goog.inherits(goog.TransformedDependency, goog.Dependency), goog.TransformedDependency.prototype.load = function(a) {\n  function b() {\n    e.contents_ = goog.loadFileSync_(e.path);\n    e.contents_ && (e.contents_ = e.transform(e.contents_), e.contents_ && (e.contents_ += \"\\n//# sourceURL=\" + e.path));\n  }\n  function c() {\n    e.lazyFetch_ && b();\n    if (e.contents_) {\n      f && a.setModuleState(goog.ModuleType.ES6);\n      try {\n        var c = e.contents_;\n        e.contents_ = null;\n        goog.globalEval(c);\n        if (f) {\n          var d = goog.moduleLoaderState_.moduleName;\n        }\n      } finally {\n        f && a.clearModuleState();\n      }\n      f && goog.global.$jscomp.require.ensure([e.getPathName()], function() {\n        a.registerEs6ModuleExports(e.path, goog.global.$jscomp.require(e.getPathName()), d);\n      });\n      a.loaded();\n    }\n  }\n  function d() {\n    var a = goog.global.document, b = goog.Dependency.registerCallback_(function() {\n      goog.Dependency.unregisterCallback_(b);\n      c();\n    }), d = '<script type=\"text/javascript\">' + goog.protectScriptTag_('goog.Dependency.callback_(\"' + b + '\");') + \"\\x3c/script>\";\n    a.write(goog.TRUSTED_TYPES_POLICY_ ? goog.TRUSTED_TYPES_POLICY_.createHTML(d) : d);\n  }\n  var e = this;\n  if (goog.global.CLOSURE_IMPORT_SCRIPT) {\n    b(), this.contents_ && goog.global.CLOSURE_IMPORT_SCRIPT(\"\", this.contents_) ? (this.contents_ = null, a.loaded()) : a.pause();\n  } else {\n    var f = this.loadFlags.module == goog.ModuleType.ES6;\n    this.lazyFetch_ || b();\n    var g = 1 < a.pending().length, h = g && goog.DebugLoader_.IS_OLD_IE_;\n    g = goog.Dependency.defer_ && (g || goog.isDocumentLoading_());\n    if (h || g) {\n      a.defer(function() {\n        c();\n      });\n    } else {\n      var k = goog.global.document;\n      h = goog.inHtmlDocument_() && \"ActiveXObject\" in goog.global;\n      if (f && goog.inHtmlDocument_() && goog.isDocumentLoading_() && !h) {\n        goog.Dependency.defer_ = !0;\n        a.pause();\n        var l = k.onreadystatechange;\n        k.onreadystatechange = function() {\n          \"interactive\" == k.readyState && (k.onreadystatechange = l, c(), a.resume());\n          goog.isFunction(l) && l.apply(void 0, arguments);\n        };\n      } else {\n        !goog.DebugLoader_.IS_OLD_IE_ && goog.inHtmlDocument_() && goog.isDocumentLoading_() ? d() : c();\n      }\n    }\n  }\n}, goog.TransformedDependency.prototype.transform = function(a) {\n}, goog.TranspiledDependency = function(a, b, c, d, e, f) {\n  goog.TransformedDependency.call(this, a, b, c, d, e);\n  this.transpiler = f;\n}, goog.inherits(goog.TranspiledDependency, goog.TransformedDependency), goog.TranspiledDependency.prototype.transform = function(a) {\n  return this.transpiler.transpile(a, this.getPathName());\n}, goog.PreTranspiledEs6ModuleDependency = function(a, b, c, d, e) {\n  goog.TransformedDependency.call(this, a, b, c, d, e);\n}, goog.inherits(goog.PreTranspiledEs6ModuleDependency, goog.TransformedDependency), goog.PreTranspiledEs6ModuleDependency.prototype.transform = function(a) {\n  return a;\n}, goog.GoogModuleDependency = function(a, b, c, d, e, f, g) {\n  goog.TransformedDependency.call(this, a, b, c, d, e);\n  this.needsTranspile_ = f;\n  this.transpiler_ = g;\n}, goog.inherits(goog.GoogModuleDependency, goog.TransformedDependency), goog.GoogModuleDependency.prototype.transform = function(a) {\n  this.needsTranspile_ && (a = this.transpiler_.transpile(a, this.getPathName()));\n  return goog.LOAD_MODULE_USING_EVAL && void 0 !== goog.global.JSON ? \"goog.loadModule(\" + goog.global.JSON.stringify(a + \"\\n//# sourceURL=\" + this.path + \"\\n\") + \");\" : 'goog.loadModule(function(exports) {\"use strict\";' + a + \"\\n;return exports});\\n//# sourceURL=\" + this.path + \"\\n\";\n}, goog.DebugLoader_.IS_OLD_IE_ = !(goog.global.atob || !goog.global.document || !goog.global.document.all), goog.DebugLoader_.prototype.addDependency = function(a, b, c, d) {\n  b = b || [];\n  a = a.replace(/\\\\/g, \"/\");\n  var e = goog.normalizePath_(goog.basePath + a);\n  d && \"boolean\" !== typeof d || (d = d ? {module:goog.ModuleType.GOOG} : {});\n  c = this.factory_.createDependency(e, a, b, c, d, goog.transpiler_.needsTranspile(d.lang || \"es3\", d.module));\n  this.dependencies_[e] = c;\n  for (c = 0; c < b.length; c++) {\n    this.idToPath_[b[c]] = e;\n  }\n  this.idToPath_[a] = e;\n}, goog.DependencyFactory = function(a) {\n  this.transpiler = a;\n}, goog.DependencyFactory.prototype.createDependency = function(a, b, c, d, e, f) {\n  return e.module == goog.ModuleType.GOOG ? new goog.GoogModuleDependency(a, b, c, d, e, f, this.transpiler) : f ? new goog.TranspiledDependency(a, b, c, d, e, this.transpiler) : e.module == goog.ModuleType.ES6 ? \"never\" == goog.TRANSPILE && goog.ASSUME_ES_MODULES_TRANSPILED ? new goog.PreTranspiledEs6ModuleDependency(a, b, c, d, e) : new goog.Es6ModuleDependency(a, b, c, d, e) : new goog.Dependency(a, b, c, d, e);\n}, goog.debugLoader_ = new goog.DebugLoader_, goog.loadClosureDeps = function() {\n  goog.debugLoader_.loadClosureDeps();\n}, goog.setDependencyFactory = function(a) {\n  goog.debugLoader_.setDependencyFactory(a);\n}, goog.global.CLOSURE_NO_DEPS || goog.debugLoader_.loadClosureDeps(), goog.bootstrap = function(a, b) {\n  goog.debugLoader_.bootstrap(a, b);\n});\ngoog.TRUSTED_TYPES_POLICY_NAME = \"\";\ngoog.identity_ = function(a) {\n  return a;\n};\ngoog.createTrustedTypesPolicy = function(a) {\n  var b = null, c = goog.global.trustedTypes || goog.global.TrustedTypes;\n  if (!c || !c.createPolicy) {\n    return b;\n  }\n  try {\n    b = c.createPolicy(a, {createHTML:goog.identity_, createScript:goog.identity_, createScriptURL:goog.identity_, createURL:goog.identity_});\n  } catch (d) {\n    goog.logToConsole_(d.message);\n  }\n  return b;\n};\ngoog.TRUSTED_TYPES_POLICY_ = goog.TRUSTED_TYPES_POLICY_NAME ? goog.createTrustedTypesPolicy(goog.TRUSTED_TYPES_POLICY_NAME + \"#base\") : null;\ngoog.string = {};\ngoog.string.StringBuffer = function(a, b) {\n  null != a && this.append.apply(this, arguments);\n};\ngoog.string.StringBuffer.prototype.buffer_ = \"\";\ngoog.string.StringBuffer.prototype.set = function(a) {\n  this.buffer_ = \"\" + a;\n};\ngoog.string.StringBuffer.prototype.append = function(a, b, c) {\n  this.buffer_ += String(a);\n  if (null != b) {\n    for (var d = 1; d < arguments.length; d++) {\n      this.buffer_ += arguments[d];\n    }\n  }\n  return this;\n};\ngoog.string.StringBuffer.prototype.clear = function() {\n  this.buffer_ = \"\";\n};\ngoog.string.StringBuffer.prototype.getLength = function() {\n  return this.buffer_.length;\n};\ngoog.string.StringBuffer.prototype.toString = function() {\n  return this.buffer_;\n};\ngoog.debug = {};\ngoog.debug.Error = function(a) {\n  if (Error.captureStackTrace) {\n    Error.captureStackTrace(this, goog.debug.Error);\n  } else {\n    var b = Error().stack;\n    b && (this.stack = b);\n  }\n  a && (this.message = String(a));\n  this.reportErrorToServer = !0;\n};\ngoog.inherits(goog.debug.Error, Error);\ngoog.debug.Error.prototype.name = \"CustomError\";\ngoog.dom = {};\ngoog.dom.NodeType = {ELEMENT:1, ATTRIBUTE:2, TEXT:3, CDATA_SECTION:4, ENTITY_REFERENCE:5, ENTITY:6, PROCESSING_INSTRUCTION:7, COMMENT:8, DOCUMENT:9, DOCUMENT_TYPE:10, DOCUMENT_FRAGMENT:11, NOTATION:12};\ngoog.asserts = {};\ngoog.asserts.ENABLE_ASSERTS = goog.DEBUG;\ngoog.asserts.AssertionError = function(a, b) {\n  goog.debug.Error.call(this, goog.asserts.subs_(a, b));\n  this.messagePattern = a;\n};\ngoog.inherits(goog.asserts.AssertionError, goog.debug.Error);\ngoog.asserts.AssertionError.prototype.name = \"AssertionError\";\ngoog.asserts.DEFAULT_ERROR_HANDLER = function(a) {\n  throw a;\n};\ngoog.asserts.errorHandler_ = goog.asserts.DEFAULT_ERROR_HANDLER;\ngoog.asserts.subs_ = function(a, b) {\n  for (var c = a.split(\"%s\"), d = \"\", e = c.length - 1, f = 0; f < e; f++) {\n    d += c[f] + (f < b.length ? b[f] : \"%s\");\n  }\n  return d + c[e];\n};\ngoog.asserts.doAssertFailure_ = function(a, b, c, d) {\n  var e = \"Assertion failed\";\n  if (c) {\n    e += \": \" + c;\n    var f = d;\n  } else {\n    a && (e += \": \" + a, f = b);\n  }\n  a = new goog.asserts.AssertionError(\"\" + e, f || []);\n  goog.asserts.errorHandler_(a);\n};\ngoog.asserts.setErrorHandler = function(a) {\n  goog.asserts.ENABLE_ASSERTS && (goog.asserts.errorHandler_ = a);\n};\ngoog.asserts.assert = function(a, b, c) {\n  goog.asserts.ENABLE_ASSERTS && !a && goog.asserts.doAssertFailure_(\"\", null, b, Array.prototype.slice.call(arguments, 2));\n  return a;\n};\ngoog.asserts.assertExists = function(a, b, c) {\n  goog.asserts.ENABLE_ASSERTS && null == a && goog.asserts.doAssertFailure_(\"Expected to exist: %s.\", [a], b, Array.prototype.slice.call(arguments, 2));\n  return a;\n};\ngoog.asserts.fail = function(a, b) {\n  goog.asserts.ENABLE_ASSERTS && goog.asserts.errorHandler_(new goog.asserts.AssertionError(\"Failure\" + (a ? \": \" + a : \"\"), Array.prototype.slice.call(arguments, 1)));\n};\ngoog.asserts.assertNumber = function(a, b, c) {\n  goog.asserts.ENABLE_ASSERTS && \"number\" !== typeof a && goog.asserts.doAssertFailure_(\"Expected number but got %s: %s.\", [goog.typeOf(a), a], b, Array.prototype.slice.call(arguments, 2));\n  return a;\n};\ngoog.asserts.assertString = function(a, b, c) {\n  goog.asserts.ENABLE_ASSERTS && \"string\" !== typeof a && goog.asserts.doAssertFailure_(\"Expected string but got %s: %s.\", [goog.typeOf(a), a], b, Array.prototype.slice.call(arguments, 2));\n  return a;\n};\ngoog.asserts.assertFunction = function(a, b, c) {\n  goog.asserts.ENABLE_ASSERTS && !goog.isFunction(a) && goog.asserts.doAssertFailure_(\"Expected function but got %s: %s.\", [goog.typeOf(a), a], b, Array.prototype.slice.call(arguments, 2));\n  return a;\n};\ngoog.asserts.assertObject = function(a, b, c) {\n  goog.asserts.ENABLE_ASSERTS && !goog.isObject(a) && goog.asserts.doAssertFailure_(\"Expected object but got %s: %s.\", [goog.typeOf(a), a], b, Array.prototype.slice.call(arguments, 2));\n  return a;\n};\ngoog.asserts.assertArray = function(a, b, c) {\n  goog.asserts.ENABLE_ASSERTS && !goog.isArray(a) && goog.asserts.doAssertFailure_(\"Expected array but got %s: %s.\", [goog.typeOf(a), a], b, Array.prototype.slice.call(arguments, 2));\n  return a;\n};\ngoog.asserts.assertBoolean = function(a, b, c) {\n  goog.asserts.ENABLE_ASSERTS && \"boolean\" !== typeof a && goog.asserts.doAssertFailure_(\"Expected boolean but got %s: %s.\", [goog.typeOf(a), a], b, Array.prototype.slice.call(arguments, 2));\n  return a;\n};\ngoog.asserts.assertElement = function(a, b, c) {\n  !goog.asserts.ENABLE_ASSERTS || goog.isObject(a) && a.nodeType == goog.dom.NodeType.ELEMENT || goog.asserts.doAssertFailure_(\"Expected Element but got %s: %s.\", [goog.typeOf(a), a], b, Array.prototype.slice.call(arguments, 2));\n  return a;\n};\ngoog.asserts.assertInstanceof = function(a, b, c, d) {\n  !goog.asserts.ENABLE_ASSERTS || a instanceof b || goog.asserts.doAssertFailure_(\"Expected instanceof %s but got %s.\", [goog.asserts.getType_(b), goog.asserts.getType_(a)], c, Array.prototype.slice.call(arguments, 3));\n  return a;\n};\ngoog.asserts.assertFinite = function(a, b, c) {\n  !goog.asserts.ENABLE_ASSERTS || \"number\" == typeof a && isFinite(a) || goog.asserts.doAssertFailure_(\"Expected %s to be a finite number but it is not.\", [a], b, Array.prototype.slice.call(arguments, 2));\n  return a;\n};\ngoog.asserts.assertObjectPrototypeIsIntact = function() {\n  for (var a in Object.prototype) {\n    goog.asserts.fail(a + \" should not be enumerable in Object.prototype.\");\n  }\n};\ngoog.asserts.getType_ = function(a) {\n  return a instanceof Function ? a.displayName || a.name || \"unknown type name\" : a instanceof Object ? a.constructor.displayName || a.constructor.name || Object.prototype.toString.call(a) : null === a ? \"null\" : typeof a;\n};\ngoog.array = {};\ngoog.NATIVE_ARRAY_PROTOTYPES = goog.TRUSTED_SITE;\ngoog.array.ASSUME_NATIVE_FUNCTIONS = 2012 < goog.FEATURESET_YEAR;\ngoog.array.peek = function(a) {\n  return a[a.length - 1];\n};\ngoog.array.last = goog.array.peek;\ngoog.array.indexOf = goog.NATIVE_ARRAY_PROTOTYPES && (goog.array.ASSUME_NATIVE_FUNCTIONS || Array.prototype.indexOf) ? function(a, b, c) {\n  goog.asserts.assert(null != a.length);\n  return Array.prototype.indexOf.call(a, b, c);\n} : function(a, b, c) {\n  c = null == c ? 0 : 0 > c ? Math.max(0, a.length + c) : c;\n  if (\"string\" === typeof a) {\n    return \"string\" !== typeof b || 1 != b.length ? -1 : a.indexOf(b, c);\n  }\n  for (; c < a.length; c++) {\n    if (c in a && a[c] === b) {\n      return c;\n    }\n  }\n  return -1;\n};\ngoog.array.lastIndexOf = goog.NATIVE_ARRAY_PROTOTYPES && (goog.array.ASSUME_NATIVE_FUNCTIONS || Array.prototype.lastIndexOf) ? function(a, b, c) {\n  goog.asserts.assert(null != a.length);\n  return Array.prototype.lastIndexOf.call(a, b, null == c ? a.length - 1 : c);\n} : function(a, b, c) {\n  c = null == c ? a.length - 1 : c;\n  0 > c && (c = Math.max(0, a.length + c));\n  if (\"string\" === typeof a) {\n    return \"string\" !== typeof b || 1 != b.length ? -1 : a.lastIndexOf(b, c);\n  }\n  for (; 0 <= c; c--) {\n    if (c in a && a[c] === b) {\n      return c;\n    }\n  }\n  return -1;\n};\ngoog.array.forEach = goog.NATIVE_ARRAY_PROTOTYPES && (goog.array.ASSUME_NATIVE_FUNCTIONS || Array.prototype.forEach) ? function(a, b, c) {\n  goog.asserts.assert(null != a.length);\n  Array.prototype.forEach.call(a, b, c);\n} : function(a, b, c) {\n  for (var d = a.length, e = \"string\" === typeof a ? a.split(\"\") : a, f = 0; f < d; f++) {\n    f in e && b.call(c, e[f], f, a);\n  }\n};\ngoog.array.forEachRight = function(a, b, c) {\n  var d = a.length, e = \"string\" === typeof a ? a.split(\"\") : a;\n  for (--d; 0 <= d; --d) {\n    d in e && b.call(c, e[d], d, a);\n  }\n};\ngoog.array.filter = goog.NATIVE_ARRAY_PROTOTYPES && (goog.array.ASSUME_NATIVE_FUNCTIONS || Array.prototype.filter) ? function(a, b, c) {\n  goog.asserts.assert(null != a.length);\n  return Array.prototype.filter.call(a, b, c);\n} : function(a, b, c) {\n  for (var d = a.length, e = [], f = 0, g = \"string\" === typeof a ? a.split(\"\") : a, h = 0; h < d; h++) {\n    if (h in g) {\n      var k = g[h];\n      b.call(c, k, h, a) && (e[f++] = k);\n    }\n  }\n  return e;\n};\ngoog.array.map = goog.NATIVE_ARRAY_PROTOTYPES && (goog.array.ASSUME_NATIVE_FUNCTIONS || Array.prototype.map) ? function(a, b, c) {\n  goog.asserts.assert(null != a.length);\n  return Array.prototype.map.call(a, b, c);\n} : function(a, b, c) {\n  for (var d = a.length, e = Array(d), f = \"string\" === typeof a ? a.split(\"\") : a, g = 0; g < d; g++) {\n    g in f && (e[g] = b.call(c, f[g], g, a));\n  }\n  return e;\n};\ngoog.array.reduce = goog.NATIVE_ARRAY_PROTOTYPES && (goog.array.ASSUME_NATIVE_FUNCTIONS || Array.prototype.reduce) ? function(a, b, c, d) {\n  goog.asserts.assert(null != a.length);\n  d && (b = goog.bind(b, d));\n  return Array.prototype.reduce.call(a, b, c);\n} : function(a, b, c, d) {\n  var e = c;\n  goog.array.forEach(a, function(c, g) {\n    e = b.call(d, e, c, g, a);\n  });\n  return e;\n};\ngoog.array.reduceRight = goog.NATIVE_ARRAY_PROTOTYPES && (goog.array.ASSUME_NATIVE_FUNCTIONS || Array.prototype.reduceRight) ? function(a, b, c, d) {\n  goog.asserts.assert(null != a.length);\n  goog.asserts.assert(null != b);\n  d && (b = goog.bind(b, d));\n  return Array.prototype.reduceRight.call(a, b, c);\n} : function(a, b, c, d) {\n  var e = c;\n  goog.array.forEachRight(a, function(c, g) {\n    e = b.call(d, e, c, g, a);\n  });\n  return e;\n};\ngoog.array.some = goog.NATIVE_ARRAY_PROTOTYPES && (goog.array.ASSUME_NATIVE_FUNCTIONS || Array.prototype.some) ? function(a, b, c) {\n  goog.asserts.assert(null != a.length);\n  return Array.prototype.some.call(a, b, c);\n} : function(a, b, c) {\n  for (var d = a.length, e = \"string\" === typeof a ? a.split(\"\") : a, f = 0; f < d; f++) {\n    if (f in e && b.call(c, e[f], f, a)) {\n      return !0;\n    }\n  }\n  return !1;\n};\ngoog.array.every = goog.NATIVE_ARRAY_PROTOTYPES && (goog.array.ASSUME_NATIVE_FUNCTIONS || Array.prototype.every) ? function(a, b, c) {\n  goog.asserts.assert(null != a.length);\n  return Array.prototype.every.call(a, b, c);\n} : function(a, b, c) {\n  for (var d = a.length, e = \"string\" === typeof a ? a.split(\"\") : a, f = 0; f < d; f++) {\n    if (f in e && !b.call(c, e[f], f, a)) {\n      return !1;\n    }\n  }\n  return !0;\n};\ngoog.array.count = function(a, b, c) {\n  var d = 0;\n  goog.array.forEach(a, function(a, f, g) {\n    b.call(c, a, f, g) && ++d;\n  }, c);\n  return d;\n};\ngoog.array.find = function(a, b, c) {\n  b = goog.array.findIndex(a, b, c);\n  return 0 > b ? null : \"string\" === typeof a ? a.charAt(b) : a[b];\n};\ngoog.array.findIndex = function(a, b, c) {\n  for (var d = a.length, e = \"string\" === typeof a ? a.split(\"\") : a, f = 0; f < d; f++) {\n    if (f in e && b.call(c, e[f], f, a)) {\n      return f;\n    }\n  }\n  return -1;\n};\ngoog.array.findRight = function(a, b, c) {\n  b = goog.array.findIndexRight(a, b, c);\n  return 0 > b ? null : \"string\" === typeof a ? a.charAt(b) : a[b];\n};\ngoog.array.findIndexRight = function(a, b, c) {\n  var d = a.length, e = \"string\" === typeof a ? a.split(\"\") : a;\n  for (--d; 0 <= d; d--) {\n    if (d in e && b.call(c, e[d], d, a)) {\n      return d;\n    }\n  }\n  return -1;\n};\ngoog.array.contains = function(a, b) {\n  return 0 <= goog.array.indexOf(a, b);\n};\ngoog.array.isEmpty = function(a) {\n  return 0 == a.length;\n};\ngoog.array.clear = function(a) {\n  if (!goog.isArray(a)) {\n    for (var b = a.length - 1; 0 <= b; b--) {\n      delete a[b];\n    }\n  }\n  a.length = 0;\n};\ngoog.array.insert = function(a, b) {\n  goog.array.contains(a, b) || a.push(b);\n};\ngoog.array.insertAt = function(a, b, c) {\n  goog.array.splice(a, c, 0, b);\n};\ngoog.array.insertArrayAt = function(a, b, c) {\n  goog.partial(goog.array.splice, a, c, 0).apply(null, b);\n};\ngoog.array.insertBefore = function(a, b, c) {\n  var d;\n  2 == arguments.length || 0 > (d = goog.array.indexOf(a, c)) ? a.push(b) : goog.array.insertAt(a, b, d);\n};\ngoog.array.remove = function(a, b) {\n  var c = goog.array.indexOf(a, b), d;\n  (d = 0 <= c) && goog.array.removeAt(a, c);\n  return d;\n};\ngoog.array.removeLast = function(a, b) {\n  var c = goog.array.lastIndexOf(a, b);\n  return 0 <= c ? (goog.array.removeAt(a, c), !0) : !1;\n};\ngoog.array.removeAt = function(a, b) {\n  goog.asserts.assert(null != a.length);\n  return 1 == Array.prototype.splice.call(a, b, 1).length;\n};\ngoog.array.removeIf = function(a, b, c) {\n  b = goog.array.findIndex(a, b, c);\n  return 0 <= b ? (goog.array.removeAt(a, b), !0) : !1;\n};\ngoog.array.removeAllIf = function(a, b, c) {\n  var d = 0;\n  goog.array.forEachRight(a, function(e, f) {\n    b.call(c, e, f, a) && goog.array.removeAt(a, f) && d++;\n  });\n  return d;\n};\ngoog.array.concat = function(a) {\n  return Array.prototype.concat.apply([], arguments);\n};\ngoog.array.join = function(a) {\n  return Array.prototype.concat.apply([], arguments);\n};\ngoog.array.toArray = function(a) {\n  var b = a.length;\n  if (0 < b) {\n    for (var c = Array(b), d = 0; d < b; d++) {\n      c[d] = a[d];\n    }\n    return c;\n  }\n  return [];\n};\ngoog.array.clone = goog.array.toArray;\ngoog.array.extend = function(a, b) {\n  for (var c = 1; c < arguments.length; c++) {\n    var d = arguments[c];\n    if (goog.isArrayLike(d)) {\n      var e = a.length || 0, f = d.length || 0;\n      a.length = e + f;\n      for (var g = 0; g < f; g++) {\n        a[e + g] = d[g];\n      }\n    } else {\n      a.push(d);\n    }\n  }\n};\ngoog.array.splice = function(a, b, c, d) {\n  goog.asserts.assert(null != a.length);\n  return Array.prototype.splice.apply(a, goog.array.slice(arguments, 1));\n};\ngoog.array.slice = function(a, b, c) {\n  goog.asserts.assert(null != a.length);\n  return 2 >= arguments.length ? Array.prototype.slice.call(a, b) : Array.prototype.slice.call(a, b, c);\n};\ngoog.array.removeDuplicates = function(a, b, c) {\n  b = b || a;\n  var d = function(a) {\n    return goog.isObject(a) ? \"o\" + goog.getUid(a) : (typeof a).charAt(0) + a;\n  };\n  c = c || d;\n  d = {};\n  for (var e = 0, f = 0; f < a.length;) {\n    var g = a[f++], h = c(g);\n    Object.prototype.hasOwnProperty.call(d, h) || (d[h] = !0, b[e++] = g);\n  }\n  b.length = e;\n};\ngoog.array.binarySearch = function(a, b, c) {\n  return goog.array.binarySearch_(a, c || goog.array.defaultCompare, !1, b);\n};\ngoog.array.binarySelect = function(a, b, c) {\n  return goog.array.binarySearch_(a, b, !0, void 0, c);\n};\ngoog.array.binarySearch_ = function(a, b, c, d, e) {\n  for (var f = 0, g = a.length, h; f < g;) {\n    var k = f + (g - f >>> 1);\n    var l = c ? b.call(e, a[k], k, a) : b(d, a[k]);\n    0 < l ? f = k + 1 : (g = k, h = !l);\n  }\n  return h ? f : -f - 1;\n};\ngoog.array.sort = function(a, b) {\n  a.sort(b || goog.array.defaultCompare);\n};\ngoog.array.stableSort = function(a, b) {\n  for (var c = Array(a.length), d = 0; d < a.length; d++) {\n    c[d] = {index:d, value:a[d]};\n  }\n  var e = b || goog.array.defaultCompare;\n  goog.array.sort(c, function(a, b) {\n    return e(a.value, b.value) || a.index - b.index;\n  });\n  for (d = 0; d < a.length; d++) {\n    a[d] = c[d].value;\n  }\n};\ngoog.array.sortByKey = function(a, b, c) {\n  var d = c || goog.array.defaultCompare;\n  goog.array.sort(a, function(a, c) {\n    return d(b(a), b(c));\n  });\n};\ngoog.array.sortObjectsByKey = function(a, b, c) {\n  goog.array.sortByKey(a, function(a) {\n    return a[b];\n  }, c);\n};\ngoog.array.isSorted = function(a, b, c) {\n  b = b || goog.array.defaultCompare;\n  for (var d = 1; d < a.length; d++) {\n    var e = b(a[d - 1], a[d]);\n    if (0 < e || 0 == e && c) {\n      return !1;\n    }\n  }\n  return !0;\n};\ngoog.array.equals = function(a, b, c) {\n  if (!goog.isArrayLike(a) || !goog.isArrayLike(b) || a.length != b.length) {\n    return !1;\n  }\n  var d = a.length;\n  c = c || goog.array.defaultCompareEquality;\n  for (var e = 0; e < d; e++) {\n    if (!c(a[e], b[e])) {\n      return !1;\n    }\n  }\n  return !0;\n};\ngoog.array.compare3 = function(a, b, c) {\n  c = c || goog.array.defaultCompare;\n  for (var d = Math.min(a.length, b.length), e = 0; e < d; e++) {\n    var f = c(a[e], b[e]);\n    if (0 != f) {\n      return f;\n    }\n  }\n  return goog.array.defaultCompare(a.length, b.length);\n};\ngoog.array.defaultCompare = function(a, b) {\n  return a > b ? 1 : a < b ? -1 : 0;\n};\ngoog.array.inverseDefaultCompare = function(a, b) {\n  return -goog.array.defaultCompare(a, b);\n};\ngoog.array.defaultCompareEquality = function(a, b) {\n  return a === b;\n};\ngoog.array.binaryInsert = function(a, b, c) {\n  c = goog.array.binarySearch(a, b, c);\n  return 0 > c ? (goog.array.insertAt(a, b, -(c + 1)), !0) : !1;\n};\ngoog.array.binaryRemove = function(a, b, c) {\n  b = goog.array.binarySearch(a, b, c);\n  return 0 <= b ? goog.array.removeAt(a, b) : !1;\n};\ngoog.array.bucket = function(a, b, c) {\n  for (var d = {}, e = 0; e < a.length; e++) {\n    var f = a[e], g = b.call(c, f, e, a);\n    void 0 !== g && (d[g] || (d[g] = [])).push(f);\n  }\n  return d;\n};\ngoog.array.toObject = function(a, b, c) {\n  var d = {};\n  goog.array.forEach(a, function(e, f) {\n    d[b.call(c, e, f, a)] = e;\n  });\n  return d;\n};\ngoog.array.range = function(a, b, c) {\n  var d = [], e = 0, f = a;\n  c = c || 1;\n  void 0 !== b && (e = a, f = b);\n  if (0 > c * (f - e)) {\n    return [];\n  }\n  if (0 < c) {\n    for (a = e; a < f; a += c) {\n      d.push(a);\n    }\n  } else {\n    for (a = e; a > f; a += c) {\n      d.push(a);\n    }\n  }\n  return d;\n};\ngoog.array.repeat = function(a, b) {\n  for (var c = [], d = 0; d < b; d++) {\n    c[d] = a;\n  }\n  return c;\n};\ngoog.array.flatten = function(a) {\n  for (var b = [], c = 0; c < arguments.length; c++) {\n    var d = arguments[c];\n    if (goog.isArray(d)) {\n      for (var e = 0; e < d.length; e += 8192) {\n        var f = goog.array.slice(d, e, e + 8192);\n        f = goog.array.flatten.apply(null, f);\n        for (var g = 0; g < f.length; g++) {\n          b.push(f[g]);\n        }\n      }\n    } else {\n      b.push(d);\n    }\n  }\n  return b;\n};\ngoog.array.rotate = function(a, b) {\n  goog.asserts.assert(null != a.length);\n  a.length && (b %= a.length, 0 < b ? Array.prototype.unshift.apply(a, a.splice(-b, b)) : 0 > b && Array.prototype.push.apply(a, a.splice(0, -b)));\n  return a;\n};\ngoog.array.moveItem = function(a, b, c) {\n  goog.asserts.assert(0 <= b && b < a.length);\n  goog.asserts.assert(0 <= c && c < a.length);\n  b = Array.prototype.splice.call(a, b, 1);\n  Array.prototype.splice.call(a, c, 0, b[0]);\n};\ngoog.array.zip = function(a) {\n  if (!arguments.length) {\n    return [];\n  }\n  for (var b = [], c = arguments[0].length, d = 1; d < arguments.length; d++) {\n    arguments[d].length < c && (c = arguments[d].length);\n  }\n  for (d = 0; d < c; d++) {\n    for (var e = [], f = 0; f < arguments.length; f++) {\n      e.push(arguments[f][d]);\n    }\n    b.push(e);\n  }\n  return b;\n};\ngoog.array.shuffle = function(a, b) {\n  for (var c = b || Math.random, d = a.length - 1; 0 < d; d--) {\n    var e = Math.floor(c() * (d + 1)), f = a[d];\n    a[d] = a[e];\n    a[e] = f;\n  }\n};\ngoog.array.copyByIndex = function(a, b) {\n  var c = [];\n  goog.array.forEach(b, function(b) {\n    c.push(a[b]);\n  });\n  return c;\n};\ngoog.array.concatMap = function(a, b, c) {\n  return goog.array.concat.apply([], goog.array.map(a, b, c));\n};\ngoog.object = {};\ngoog.object.is = function(a, b) {\n  return a === b ? 0 !== a || 1 / a === 1 / b : a !== a && b !== b;\n};\ngoog.object.forEach = function(a, b, c) {\n  for (var d in a) {\n    b.call(c, a[d], d, a);\n  }\n};\ngoog.object.filter = function(a, b, c) {\n  var d = {}, e;\n  for (e in a) {\n    b.call(c, a[e], e, a) && (d[e] = a[e]);\n  }\n  return d;\n};\ngoog.object.map = function(a, b, c) {\n  var d = {}, e;\n  for (e in a) {\n    d[e] = b.call(c, a[e], e, a);\n  }\n  return d;\n};\ngoog.object.some = function(a, b, c) {\n  for (var d in a) {\n    if (b.call(c, a[d], d, a)) {\n      return !0;\n    }\n  }\n  return !1;\n};\ngoog.object.every = function(a, b, c) {\n  for (var d in a) {\n    if (!b.call(c, a[d], d, a)) {\n      return !1;\n    }\n  }\n  return !0;\n};\ngoog.object.getCount = function(a) {\n  var b = 0, c;\n  for (c in a) {\n    b++;\n  }\n  return b;\n};\ngoog.object.getAnyKey = function(a) {\n  for (var b in a) {\n    return b;\n  }\n};\ngoog.object.getAnyValue = function(a) {\n  for (var b in a) {\n    return a[b];\n  }\n};\ngoog.object.contains = function(a, b) {\n  return goog.object.containsValue(a, b);\n};\ngoog.object.getValues = function(a) {\n  var b = [], c = 0, d;\n  for (d in a) {\n    b[c++] = a[d];\n  }\n  return b;\n};\ngoog.object.getKeys = function(a) {\n  var b = [], c = 0, d;\n  for (d in a) {\n    b[c++] = d;\n  }\n  return b;\n};\ngoog.object.getValueByKeys = function(a, b) {\n  var c = goog.isArrayLike(b), d = c ? b : arguments;\n  for (c = c ? 0 : 1; c < d.length; c++) {\n    if (null == a) {\n      return;\n    }\n    a = a[d[c]];\n  }\n  return a;\n};\ngoog.object.containsKey = function(a, b) {\n  return null !== a && b in a;\n};\ngoog.object.containsValue = function(a, b) {\n  for (var c in a) {\n    if (a[c] == b) {\n      return !0;\n    }\n  }\n  return !1;\n};\ngoog.object.findKey = function(a, b, c) {\n  for (var d in a) {\n    if (b.call(c, a[d], d, a)) {\n      return d;\n    }\n  }\n};\ngoog.object.findValue = function(a, b, c) {\n  return (b = goog.object.findKey(a, b, c)) && a[b];\n};\ngoog.object.isEmpty = function(a) {\n  for (var b in a) {\n    return !1;\n  }\n  return !0;\n};\ngoog.object.clear = function(a) {\n  for (var b in a) {\n    delete a[b];\n  }\n};\ngoog.object.remove = function(a, b) {\n  var c;\n  (c = b in a) && delete a[b];\n  return c;\n};\ngoog.object.add = function(a, b, c) {\n  if (null !== a && b in a) {\n    throw Error('The object already contains the key \"' + b + '\"');\n  }\n  goog.object.set(a, b, c);\n};\ngoog.object.get = function(a, b, c) {\n  return null !== a && b in a ? a[b] : c;\n};\ngoog.object.set = function(a, b, c) {\n  a[b] = c;\n};\ngoog.object.setIfUndefined = function(a, b, c) {\n  return b in a ? a[b] : a[b] = c;\n};\ngoog.object.setWithReturnValueIfNotSet = function(a, b, c) {\n  if (b in a) {\n    return a[b];\n  }\n  c = c();\n  return a[b] = c;\n};\ngoog.object.equals = function(a, b) {\n  for (var c in a) {\n    if (!(c in b) || a[c] !== b[c]) {\n      return !1;\n    }\n  }\n  for (var d in b) {\n    if (!(d in a)) {\n      return !1;\n    }\n  }\n  return !0;\n};\ngoog.object.clone = function(a) {\n  var b = {}, c;\n  for (c in a) {\n    b[c] = a[c];\n  }\n  return b;\n};\ngoog.object.unsafeClone = function(a) {\n  var b = goog.typeOf(a);\n  if (\"object\" == b || \"array\" == b) {\n    if (goog.isFunction(a.clone)) {\n      return a.clone();\n    }\n    b = \"array\" == b ? [] : {};\n    for (var c in a) {\n      b[c] = goog.object.unsafeClone(a[c]);\n    }\n    return b;\n  }\n  return a;\n};\ngoog.object.transpose = function(a) {\n  var b = {}, c;\n  for (c in a) {\n    b[a[c]] = c;\n  }\n  return b;\n};\ngoog.object.PROTOTYPE_FIELDS_ = \"constructor hasOwnProperty isPrototypeOf propertyIsEnumerable toLocaleString toString valueOf\".split(\" \");\ngoog.object.extend = function(a, b) {\n  for (var c, d, e = 1; e < arguments.length; e++) {\n    d = arguments[e];\n    for (c in d) {\n      a[c] = d[c];\n    }\n    for (var f = 0; f < goog.object.PROTOTYPE_FIELDS_.length; f++) {\n      c = goog.object.PROTOTYPE_FIELDS_[f], Object.prototype.hasOwnProperty.call(d, c) && (a[c] = d[c]);\n    }\n  }\n};\ngoog.object.create = function(a) {\n  var b = arguments.length;\n  if (1 == b && goog.isArray(arguments[0])) {\n    return goog.object.create.apply(null, arguments[0]);\n  }\n  if (b % 2) {\n    throw Error(\"Uneven number of arguments\");\n  }\n  for (var c = {}, d = 0; d < b; d += 2) {\n    c[arguments[d]] = arguments[d + 1];\n  }\n  return c;\n};\ngoog.object.createSet = function(a) {\n  var b = arguments.length;\n  if (1 == b && goog.isArray(arguments[0])) {\n    return goog.object.createSet.apply(null, arguments[0]);\n  }\n  for (var c = {}, d = 0; d < b; d++) {\n    c[arguments[d]] = !0;\n  }\n  return c;\n};\ngoog.object.createImmutableView = function(a) {\n  var b = a;\n  Object.isFrozen && !Object.isFrozen(a) && (b = Object.create(a), Object.freeze(b));\n  return b;\n};\ngoog.object.isImmutableView = function(a) {\n  return !!Object.isFrozen && Object.isFrozen(a);\n};\ngoog.object.getAllPropertyNames = function(a, b, c) {\n  if (!a) {\n    return [];\n  }\n  if (!Object.getOwnPropertyNames || !Object.getPrototypeOf) {\n    return goog.object.getKeys(a);\n  }\n  for (var d = {}; a && (a !== Object.prototype || b) && (a !== Function.prototype || c);) {\n    for (var e = Object.getOwnPropertyNames(a), f = 0; f < e.length; f++) {\n      d[e[f]] = !0;\n    }\n    a = Object.getPrototypeOf(a);\n  }\n  return goog.object.getKeys(d);\n};\ngoog.object.getSuperClass = function(a) {\n  return (a = Object.getPrototypeOf(a.prototype)) && a.constructor;\n};\ngoog.dom.asserts = {};\ngoog.dom.asserts.assertIsLocation = function(a) {\n  if (goog.asserts.ENABLE_ASSERTS) {\n    var b = goog.dom.asserts.getWindow_(a);\n    b && (!a || !(a instanceof b.Location) && a instanceof b.Element) && goog.asserts.fail(\"Argument is not a Location (or a non-Element mock); got: %s\", goog.dom.asserts.debugStringForType_(a));\n  }\n  return a;\n};\ngoog.dom.asserts.assertIsElementType_ = function(a, b) {\n  if (goog.asserts.ENABLE_ASSERTS) {\n    var c = goog.dom.asserts.getWindow_(a);\n    c && \"undefined\" != typeof c[b] && (a && (a instanceof c[b] || !(a instanceof c.Location || a instanceof c.Element)) || goog.asserts.fail(\"Argument is not a %s (or a non-Element, non-Location mock); got: %s\", b, goog.dom.asserts.debugStringForType_(a)));\n  }\n  return a;\n};\ngoog.dom.asserts.assertIsHTMLAnchorElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLAnchorElement\");\n};\ngoog.dom.asserts.assertIsHTMLButtonElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLButtonElement\");\n};\ngoog.dom.asserts.assertIsHTMLLinkElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLLinkElement\");\n};\ngoog.dom.asserts.assertIsHTMLImageElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLImageElement\");\n};\ngoog.dom.asserts.assertIsHTMLAudioElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLAudioElement\");\n};\ngoog.dom.asserts.assertIsHTMLVideoElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLVideoElement\");\n};\ngoog.dom.asserts.assertIsHTMLInputElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLInputElement\");\n};\ngoog.dom.asserts.assertIsHTMLTextAreaElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLTextAreaElement\");\n};\ngoog.dom.asserts.assertIsHTMLCanvasElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLCanvasElement\");\n};\ngoog.dom.asserts.assertIsHTMLEmbedElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLEmbedElement\");\n};\ngoog.dom.asserts.assertIsHTMLFormElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLFormElement\");\n};\ngoog.dom.asserts.assertIsHTMLFrameElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLFrameElement\");\n};\ngoog.dom.asserts.assertIsHTMLIFrameElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLIFrameElement\");\n};\ngoog.dom.asserts.assertIsHTMLObjectElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLObjectElement\");\n};\ngoog.dom.asserts.assertIsHTMLScriptElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLScriptElement\");\n};\ngoog.dom.asserts.debugStringForType_ = function(a) {\n  if (goog.isObject(a)) {\n    try {\n      return a.constructor.displayName || a.constructor.name || Object.prototype.toString.call(a);\n    } catch (b) {\n      return \"<object could not be stringified>\";\n    }\n  } else {\n    return void 0 === a ? \"undefined\" : null === a ? \"null\" : typeof a;\n  }\n};\ngoog.dom.asserts.getWindow_ = function(a) {\n  try {\n    var b = a && a.ownerDocument, c = b && (b.defaultView || b.parentWindow);\n    c = c || goog.global;\n    if (c.Element && c.Location) {\n      return c;\n    }\n  } catch (d) {\n  }\n  return null;\n};\ngoog.functions = {};\ngoog.functions.constant = function(a) {\n  return function() {\n    return a;\n  };\n};\ngoog.functions.FALSE = function() {\n  return !1;\n};\ngoog.functions.TRUE = function() {\n  return !0;\n};\ngoog.functions.NULL = function() {\n  return null;\n};\ngoog.functions.identity = function(a, b) {\n  return a;\n};\ngoog.functions.error = function(a) {\n  return function() {\n    throw Error(a);\n  };\n};\ngoog.functions.fail = function(a) {\n  return function() {\n    throw a;\n  };\n};\ngoog.functions.lock = function(a, b) {\n  b = b || 0;\n  return function() {\n    return a.apply(this, Array.prototype.slice.call(arguments, 0, b));\n  };\n};\ngoog.functions.nth = function(a) {\n  return function() {\n    return arguments[a];\n  };\n};\ngoog.functions.partialRight = function(a, b) {\n  var c = Array.prototype.slice.call(arguments, 1);\n  return function() {\n    var b = Array.prototype.slice.call(arguments);\n    b.push.apply(b, c);\n    return a.apply(this, b);\n  };\n};\ngoog.functions.withReturnValue = function(a, b) {\n  return goog.functions.sequence(a, goog.functions.constant(b));\n};\ngoog.functions.equalTo = function(a, b) {\n  return function(c) {\n    return b ? a == c : a === c;\n  };\n};\ngoog.functions.compose = function(a, b) {\n  var c = arguments, d = c.length;\n  return function() {\n    var a;\n    d && (a = c[d - 1].apply(this, arguments));\n    for (var b = d - 2; 0 <= b; b--) {\n      a = c[b].call(this, a);\n    }\n    return a;\n  };\n};\ngoog.functions.sequence = function(a) {\n  var b = arguments, c = b.length;\n  return function() {\n    for (var a, e = 0; e < c; e++) {\n      a = b[e].apply(this, arguments);\n    }\n    return a;\n  };\n};\ngoog.functions.and = function(a) {\n  var b = arguments, c = b.length;\n  return function() {\n    for (var a = 0; a < c; a++) {\n      if (!b[a].apply(this, arguments)) {\n        return !1;\n      }\n    }\n    return !0;\n  };\n};\ngoog.functions.or = function(a) {\n  var b = arguments, c = b.length;\n  return function() {\n    for (var a = 0; a < c; a++) {\n      if (b[a].apply(this, arguments)) {\n        return !0;\n      }\n    }\n    return !1;\n  };\n};\ngoog.functions.not = function(a) {\n  return function() {\n    return !a.apply(this, arguments);\n  };\n};\ngoog.functions.create = function(a, b) {\n  var c = function() {\n  };\n  c.prototype = a.prototype;\n  c = new c;\n  a.apply(c, Array.prototype.slice.call(arguments, 1));\n  return c;\n};\ngoog.functions.CACHE_RETURN_VALUE = !0;\ngoog.functions.cacheReturnValue = function(a) {\n  var b = !1, c;\n  return function() {\n    if (!goog.functions.CACHE_RETURN_VALUE) {\n      return a();\n    }\n    b || (c = a(), b = !0);\n    return c;\n  };\n};\ngoog.functions.once = function(a) {\n  var b = a;\n  return function() {\n    if (b) {\n      var a = b;\n      b = null;\n      a();\n    }\n  };\n};\ngoog.functions.debounce = function(a, b, c) {\n  var d = 0;\n  return function(e) {\n    goog.global.clearTimeout(d);\n    var f = arguments;\n    d = goog.global.setTimeout(function() {\n      a.apply(c, f);\n    }, b);\n  };\n};\ngoog.functions.throttle = function(a, b, c) {\n  var d = 0, e = !1, f = [], g = function() {\n    d = 0;\n    e && (e = !1, h());\n  }, h = function() {\n    d = goog.global.setTimeout(g, b);\n    a.apply(c, f);\n  };\n  return function(a) {\n    f = arguments;\n    d ? e = !0 : h();\n  };\n};\ngoog.functions.rateLimit = function(a, b, c) {\n  var d = 0, e = function() {\n    d = 0;\n  };\n  return function(f) {\n    d || (d = goog.global.setTimeout(e, b), a.apply(c, arguments));\n  };\n};\ngoog.dom.HtmlElement = function() {\n};\ngoog.dom.TagName = function(a) {\n  this.tagName_ = a;\n};\ngoog.dom.TagName.prototype.toString = function() {\n  return this.tagName_;\n};\ngoog.dom.TagName.A = new goog.dom.TagName(\"A\");\ngoog.dom.TagName.ABBR = new goog.dom.TagName(\"ABBR\");\ngoog.dom.TagName.ACRONYM = new goog.dom.TagName(\"ACRONYM\");\ngoog.dom.TagName.ADDRESS = new goog.dom.TagName(\"ADDRESS\");\ngoog.dom.TagName.APPLET = new goog.dom.TagName(\"APPLET\");\ngoog.dom.TagName.AREA = new goog.dom.TagName(\"AREA\");\ngoog.dom.TagName.ARTICLE = new goog.dom.TagName(\"ARTICLE\");\ngoog.dom.TagName.ASIDE = new goog.dom.TagName(\"ASIDE\");\ngoog.dom.TagName.AUDIO = new goog.dom.TagName(\"AUDIO\");\ngoog.dom.TagName.B = new goog.dom.TagName(\"B\");\ngoog.dom.TagName.BASE = new goog.dom.TagName(\"BASE\");\ngoog.dom.TagName.BASEFONT = new goog.dom.TagName(\"BASEFONT\");\ngoog.dom.TagName.BDI = new goog.dom.TagName(\"BDI\");\ngoog.dom.TagName.BDO = new goog.dom.TagName(\"BDO\");\ngoog.dom.TagName.BIG = new goog.dom.TagName(\"BIG\");\ngoog.dom.TagName.BLOCKQUOTE = new goog.dom.TagName(\"BLOCKQUOTE\");\ngoog.dom.TagName.BODY = new goog.dom.TagName(\"BODY\");\ngoog.dom.TagName.BR = new goog.dom.TagName(\"BR\");\ngoog.dom.TagName.BUTTON = new goog.dom.TagName(\"BUTTON\");\ngoog.dom.TagName.CANVAS = new goog.dom.TagName(\"CANVAS\");\ngoog.dom.TagName.CAPTION = new goog.dom.TagName(\"CAPTION\");\ngoog.dom.TagName.CENTER = new goog.dom.TagName(\"CENTER\");\ngoog.dom.TagName.CITE = new goog.dom.TagName(\"CITE\");\ngoog.dom.TagName.CODE = new goog.dom.TagName(\"CODE\");\ngoog.dom.TagName.COL = new goog.dom.TagName(\"COL\");\ngoog.dom.TagName.COLGROUP = new goog.dom.TagName(\"COLGROUP\");\ngoog.dom.TagName.COMMAND = new goog.dom.TagName(\"COMMAND\");\ngoog.dom.TagName.DATA = new goog.dom.TagName(\"DATA\");\ngoog.dom.TagName.DATALIST = new goog.dom.TagName(\"DATALIST\");\ngoog.dom.TagName.DD = new goog.dom.TagName(\"DD\");\ngoog.dom.TagName.DEL = new goog.dom.TagName(\"DEL\");\ngoog.dom.TagName.DETAILS = new goog.dom.TagName(\"DETAILS\");\ngoog.dom.TagName.DFN = new goog.dom.TagName(\"DFN\");\ngoog.dom.TagName.DIALOG = new goog.dom.TagName(\"DIALOG\");\ngoog.dom.TagName.DIR = new goog.dom.TagName(\"DIR\");\ngoog.dom.TagName.DIV = new goog.dom.TagName(\"DIV\");\ngoog.dom.TagName.DL = new goog.dom.TagName(\"DL\");\ngoog.dom.TagName.DT = new goog.dom.TagName(\"DT\");\ngoog.dom.TagName.EM = new goog.dom.TagName(\"EM\");\ngoog.dom.TagName.EMBED = new goog.dom.TagName(\"EMBED\");\ngoog.dom.TagName.FIELDSET = new goog.dom.TagName(\"FIELDSET\");\ngoog.dom.TagName.FIGCAPTION = new goog.dom.TagName(\"FIGCAPTION\");\ngoog.dom.TagName.FIGURE = new goog.dom.TagName(\"FIGURE\");\ngoog.dom.TagName.FONT = new goog.dom.TagName(\"FONT\");\ngoog.dom.TagName.FOOTER = new goog.dom.TagName(\"FOOTER\");\ngoog.dom.TagName.FORM = new goog.dom.TagName(\"FORM\");\ngoog.dom.TagName.FRAME = new goog.dom.TagName(\"FRAME\");\ngoog.dom.TagName.FRAMESET = new goog.dom.TagName(\"FRAMESET\");\ngoog.dom.TagName.H1 = new goog.dom.TagName(\"H1\");\ngoog.dom.TagName.H2 = new goog.dom.TagName(\"H2\");\ngoog.dom.TagName.H3 = new goog.dom.TagName(\"H3\");\ngoog.dom.TagName.H4 = new goog.dom.TagName(\"H4\");\ngoog.dom.TagName.H5 = new goog.dom.TagName(\"H5\");\ngoog.dom.TagName.H6 = new goog.dom.TagName(\"H6\");\ngoog.dom.TagName.HEAD = new goog.dom.TagName(\"HEAD\");\ngoog.dom.TagName.HEADER = new goog.dom.TagName(\"HEADER\");\ngoog.dom.TagName.HGROUP = new goog.dom.TagName(\"HGROUP\");\ngoog.dom.TagName.HR = new goog.dom.TagName(\"HR\");\ngoog.dom.TagName.HTML = new goog.dom.TagName(\"HTML\");\ngoog.dom.TagName.I = new goog.dom.TagName(\"I\");\ngoog.dom.TagName.IFRAME = new goog.dom.TagName(\"IFRAME\");\ngoog.dom.TagName.IMG = new goog.dom.TagName(\"IMG\");\ngoog.dom.TagName.INPUT = new goog.dom.TagName(\"INPUT\");\ngoog.dom.TagName.INS = new goog.dom.TagName(\"INS\");\ngoog.dom.TagName.ISINDEX = new goog.dom.TagName(\"ISINDEX\");\ngoog.dom.TagName.KBD = new goog.dom.TagName(\"KBD\");\ngoog.dom.TagName.KEYGEN = new goog.dom.TagName(\"KEYGEN\");\ngoog.dom.TagName.LABEL = new goog.dom.TagName(\"LABEL\");\ngoog.dom.TagName.LEGEND = new goog.dom.TagName(\"LEGEND\");\ngoog.dom.TagName.LI = new goog.dom.TagName(\"LI\");\ngoog.dom.TagName.LINK = new goog.dom.TagName(\"LINK\");\ngoog.dom.TagName.MAIN = new goog.dom.TagName(\"MAIN\");\ngoog.dom.TagName.MAP = new goog.dom.TagName(\"MAP\");\ngoog.dom.TagName.MARK = new goog.dom.TagName(\"MARK\");\ngoog.dom.TagName.MATH = new goog.dom.TagName(\"MATH\");\ngoog.dom.TagName.MENU = new goog.dom.TagName(\"MENU\");\ngoog.dom.TagName.MENUITEM = new goog.dom.TagName(\"MENUITEM\");\ngoog.dom.TagName.META = new goog.dom.TagName(\"META\");\ngoog.dom.TagName.METER = new goog.dom.TagName(\"METER\");\ngoog.dom.TagName.NAV = new goog.dom.TagName(\"NAV\");\ngoog.dom.TagName.NOFRAMES = new goog.dom.TagName(\"NOFRAMES\");\ngoog.dom.TagName.NOSCRIPT = new goog.dom.TagName(\"NOSCRIPT\");\ngoog.dom.TagName.OBJECT = new goog.dom.TagName(\"OBJECT\");\ngoog.dom.TagName.OL = new goog.dom.TagName(\"OL\");\ngoog.dom.TagName.OPTGROUP = new goog.dom.TagName(\"OPTGROUP\");\ngoog.dom.TagName.OPTION = new goog.dom.TagName(\"OPTION\");\ngoog.dom.TagName.OUTPUT = new goog.dom.TagName(\"OUTPUT\");\ngoog.dom.TagName.P = new goog.dom.TagName(\"P\");\ngoog.dom.TagName.PARAM = new goog.dom.TagName(\"PARAM\");\ngoog.dom.TagName.PICTURE = new goog.dom.TagName(\"PICTURE\");\ngoog.dom.TagName.PRE = new goog.dom.TagName(\"PRE\");\ngoog.dom.TagName.PROGRESS = new goog.dom.TagName(\"PROGRESS\");\ngoog.dom.TagName.Q = new goog.dom.TagName(\"Q\");\ngoog.dom.TagName.RP = new goog.dom.TagName(\"RP\");\ngoog.dom.TagName.RT = new goog.dom.TagName(\"RT\");\ngoog.dom.TagName.RTC = new goog.dom.TagName(\"RTC\");\ngoog.dom.TagName.RUBY = new goog.dom.TagName(\"RUBY\");\ngoog.dom.TagName.S = new goog.dom.TagName(\"S\");\ngoog.dom.TagName.SAMP = new goog.dom.TagName(\"SAMP\");\ngoog.dom.TagName.SCRIPT = new goog.dom.TagName(\"SCRIPT\");\ngoog.dom.TagName.SECTION = new goog.dom.TagName(\"SECTION\");\ngoog.dom.TagName.SELECT = new goog.dom.TagName(\"SELECT\");\ngoog.dom.TagName.SMALL = new goog.dom.TagName(\"SMALL\");\ngoog.dom.TagName.SOURCE = new goog.dom.TagName(\"SOURCE\");\ngoog.dom.TagName.SPAN = new goog.dom.TagName(\"SPAN\");\ngoog.dom.TagName.STRIKE = new goog.dom.TagName(\"STRIKE\");\ngoog.dom.TagName.STRONG = new goog.dom.TagName(\"STRONG\");\ngoog.dom.TagName.STYLE = new goog.dom.TagName(\"STYLE\");\ngoog.dom.TagName.SUB = new goog.dom.TagName(\"SUB\");\ngoog.dom.TagName.SUMMARY = new goog.dom.TagName(\"SUMMARY\");\ngoog.dom.TagName.SUP = new goog.dom.TagName(\"SUP\");\ngoog.dom.TagName.SVG = new goog.dom.TagName(\"SVG\");\ngoog.dom.TagName.TABLE = new goog.dom.TagName(\"TABLE\");\ngoog.dom.TagName.TBODY = new goog.dom.TagName(\"TBODY\");\ngoog.dom.TagName.TD = new goog.dom.TagName(\"TD\");\ngoog.dom.TagName.TEMPLATE = new goog.dom.TagName(\"TEMPLATE\");\ngoog.dom.TagName.TEXTAREA = new goog.dom.TagName(\"TEXTAREA\");\ngoog.dom.TagName.TFOOT = new goog.dom.TagName(\"TFOOT\");\ngoog.dom.TagName.TH = new goog.dom.TagName(\"TH\");\ngoog.dom.TagName.THEAD = new goog.dom.TagName(\"THEAD\");\ngoog.dom.TagName.TIME = new goog.dom.TagName(\"TIME\");\ngoog.dom.TagName.TITLE = new goog.dom.TagName(\"TITLE\");\ngoog.dom.TagName.TR = new goog.dom.TagName(\"TR\");\ngoog.dom.TagName.TRACK = new goog.dom.TagName(\"TRACK\");\ngoog.dom.TagName.TT = new goog.dom.TagName(\"TT\");\ngoog.dom.TagName.U = new goog.dom.TagName(\"U\");\ngoog.dom.TagName.UL = new goog.dom.TagName(\"UL\");\ngoog.dom.TagName.VAR = new goog.dom.TagName(\"VAR\");\ngoog.dom.TagName.VIDEO = new goog.dom.TagName(\"VIDEO\");\ngoog.dom.TagName.WBR = new goog.dom.TagName(\"WBR\");\ngoog.dom.tags = {};\ngoog.dom.tags.VOID_TAGS_ = {area:!0, base:!0, br:!0, col:!0, command:!0, embed:!0, hr:!0, img:!0, input:!0, keygen:!0, link:!0, meta:!0, param:!0, source:!0, track:!0, wbr:!0};\ngoog.dom.tags.isVoidTag = function(a) {\n  return !0 === goog.dom.tags.VOID_TAGS_[a];\n};\ngoog.html = {};\ngoog.html.trustedtypes = {};\ngoog.html.trustedtypes.PRIVATE_DO_NOT_ACCESS_OR_ELSE_POLICY = goog.TRUSTED_TYPES_POLICY_NAME ? goog.createTrustedTypesPolicy(goog.TRUSTED_TYPES_POLICY_NAME + \"#html\") : null;\ngoog.string.TypedString = function() {\n};\ngoog.string.Const = function(a, b) {\n  this.stringConstValueWithSecurityContract__googStringSecurityPrivate_ = a === goog.string.Const.GOOG_STRING_CONSTRUCTOR_TOKEN_PRIVATE_ && b || \"\";\n  this.STRING_CONST_TYPE_MARKER__GOOG_STRING_SECURITY_PRIVATE_ = goog.string.Const.TYPE_MARKER_;\n};\ngoog.string.Const.prototype.implementsGoogStringTypedString = !0;\ngoog.string.Const.prototype.getTypedStringValue = function() {\n  return this.stringConstValueWithSecurityContract__googStringSecurityPrivate_;\n};\ngoog.DEBUG && (goog.string.Const.prototype.toString = function() {\n  return \"Const{\" + this.stringConstValueWithSecurityContract__googStringSecurityPrivate_ + \"}\";\n});\ngoog.string.Const.unwrap = function(a) {\n  if (a instanceof goog.string.Const && a.constructor === goog.string.Const && a.STRING_CONST_TYPE_MARKER__GOOG_STRING_SECURITY_PRIVATE_ === goog.string.Const.TYPE_MARKER_) {\n    return a.stringConstValueWithSecurityContract__googStringSecurityPrivate_;\n  }\n  goog.asserts.fail(\"expected object of type Const, got '\" + a + \"'\");\n  return \"type_error:Const\";\n};\ngoog.string.Const.from = function(a) {\n  return new goog.string.Const(goog.string.Const.GOOG_STRING_CONSTRUCTOR_TOKEN_PRIVATE_, a);\n};\ngoog.string.Const.TYPE_MARKER_ = {};\ngoog.string.Const.GOOG_STRING_CONSTRUCTOR_TOKEN_PRIVATE_ = {};\ngoog.string.Const.EMPTY = goog.string.Const.from(\"\");\ngoog.html.SafeScript = function() {\n  this.privateDoNotAccessOrElseSafeScriptWrappedValue_ = \"\";\n  this.SAFE_SCRIPT_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ = goog.html.SafeScript.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_;\n};\ngoog.html.SafeScript.prototype.implementsGoogStringTypedString = !0;\ngoog.html.SafeScript.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ = {};\ngoog.html.SafeScript.fromConstant = function(a) {\n  a = goog.string.Const.unwrap(a);\n  return 0 === a.length ? goog.html.SafeScript.EMPTY : goog.html.SafeScript.createSafeScriptSecurityPrivateDoNotAccessOrElse(a);\n};\ngoog.html.SafeScript.fromConstantAndArgs = function(a, b) {\n  for (var c = [], d = 1; d < arguments.length; d++) {\n    c.push(goog.html.SafeScript.stringify_(arguments[d]));\n  }\n  return goog.html.SafeScript.createSafeScriptSecurityPrivateDoNotAccessOrElse(\"(\" + goog.string.Const.unwrap(a) + \")(\" + c.join(\", \") + \");\");\n};\ngoog.html.SafeScript.fromJson = function(a) {\n  return goog.html.SafeScript.createSafeScriptSecurityPrivateDoNotAccessOrElse(goog.html.SafeScript.stringify_(a));\n};\ngoog.html.SafeScript.prototype.getTypedStringValue = function() {\n  return this.privateDoNotAccessOrElseSafeScriptWrappedValue_.toString();\n};\ngoog.DEBUG && (goog.html.SafeScript.prototype.toString = function() {\n  return \"SafeScript{\" + this.privateDoNotAccessOrElseSafeScriptWrappedValue_ + \"}\";\n});\ngoog.html.SafeScript.unwrap = function(a) {\n  return goog.html.SafeScript.unwrapTrustedScript(a).toString();\n};\ngoog.html.SafeScript.unwrapTrustedScript = function(a) {\n  if (a instanceof goog.html.SafeScript && a.constructor === goog.html.SafeScript && a.SAFE_SCRIPT_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ === goog.html.SafeScript.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_) {\n    return a.privateDoNotAccessOrElseSafeScriptWrappedValue_;\n  }\n  goog.asserts.fail(\"expected object of type SafeScript, got '\" + a + \"' of type \" + goog.typeOf(a));\n  return \"type_error:SafeScript\";\n};\ngoog.html.SafeScript.stringify_ = function(a) {\n  return JSON.stringify(a).replace(/</g, \"\\\\x3c\");\n};\ngoog.html.SafeScript.createSafeScriptSecurityPrivateDoNotAccessOrElse = function(a) {\n  return (new goog.html.SafeScript).initSecurityPrivateDoNotAccessOrElse_(a);\n};\ngoog.html.SafeScript.prototype.initSecurityPrivateDoNotAccessOrElse_ = function(a) {\n  this.privateDoNotAccessOrElseSafeScriptWrappedValue_ = goog.html.trustedtypes.PRIVATE_DO_NOT_ACCESS_OR_ELSE_POLICY ? goog.html.trustedtypes.PRIVATE_DO_NOT_ACCESS_OR_ELSE_POLICY.createScript(a) : a;\n  return this;\n};\ngoog.html.SafeScript.EMPTY = goog.html.SafeScript.createSafeScriptSecurityPrivateDoNotAccessOrElse(\"\");\ngoog.fs = {};\ngoog.fs.url = {};\ngoog.fs.url.createObjectUrl = function(a) {\n  return goog.fs.url.getUrlObject_().createObjectURL(a);\n};\ngoog.fs.url.revokeObjectUrl = function(a) {\n  goog.fs.url.getUrlObject_().revokeObjectURL(a);\n};\ngoog.fs.url.getUrlObject_ = function() {\n  var a = goog.fs.url.findUrlObject_();\n  if (null != a) {\n    return a;\n  }\n  throw Error(\"This browser doesn't seem to support blob URLs\");\n};\ngoog.fs.url.findUrlObject_ = function() {\n  return void 0 !== goog.global.URL && void 0 !== goog.global.URL.createObjectURL ? goog.global.URL : void 0 !== goog.global.webkitURL && void 0 !== goog.global.webkitURL.createObjectURL ? goog.global.webkitURL : void 0 !== goog.global.createObjectURL ? goog.global : null;\n};\ngoog.fs.url.browserSupportsObjectUrls = function() {\n  return null != goog.fs.url.findUrlObject_();\n};\ngoog.i18n = {};\ngoog.i18n.bidi = {};\ngoog.i18n.bidi.FORCE_RTL = !1;\ngoog.i18n.bidi.IS_RTL = goog.i18n.bidi.FORCE_RTL || (\"ar\" == goog.LOCALE.substring(0, 2).toLowerCase() || \"fa\" == goog.LOCALE.substring(0, 2).toLowerCase() || \"he\" == goog.LOCALE.substring(0, 2).toLowerCase() || \"iw\" == goog.LOCALE.substring(0, 2).toLowerCase() || \"ps\" == goog.LOCALE.substring(0, 2).toLowerCase() || \"sd\" == goog.LOCALE.substring(0, 2).toLowerCase() || \"ug\" == goog.LOCALE.substring(0, 2).toLowerCase() || \"ur\" == goog.LOCALE.substring(0, 2).toLowerCase() || \"yi\" == goog.LOCALE.substring(0,\n2).toLowerCase()) && (2 == goog.LOCALE.length || \"-\" == goog.LOCALE.substring(2, 3) || \"_\" == goog.LOCALE.substring(2, 3)) || 3 <= goog.LOCALE.length && \"ckb\" == goog.LOCALE.substring(0, 3).toLowerCase() && (3 == goog.LOCALE.length || \"-\" == goog.LOCALE.substring(3, 4) || \"_\" == goog.LOCALE.substring(3, 4)) || 7 <= goog.LOCALE.length && (\"-\" == goog.LOCALE.substring(2, 3) || \"_\" == goog.LOCALE.substring(2, 3)) && (\"adlm\" == goog.LOCALE.substring(3, 7).toLowerCase() || \"arab\" == goog.LOCALE.substring(3,\n7).toLowerCase() || \"hebr\" == goog.LOCALE.substring(3, 7).toLowerCase() || \"nkoo\" == goog.LOCALE.substring(3, 7).toLowerCase() || \"rohg\" == goog.LOCALE.substring(3, 7).toLowerCase() || \"thaa\" == goog.LOCALE.substring(3, 7).toLowerCase()) || 8 <= goog.LOCALE.length && (\"-\" == goog.LOCALE.substring(3, 4) || \"_\" == goog.LOCALE.substring(3, 4)) && (\"adlm\" == goog.LOCALE.substring(4, 8).toLowerCase() || \"arab\" == goog.LOCALE.substring(4, 8).toLowerCase() || \"hebr\" == goog.LOCALE.substring(4, 8).toLowerCase() ||\n\"nkoo\" == goog.LOCALE.substring(4, 8).toLowerCase() || \"rohg\" == goog.LOCALE.substring(4, 8).toLowerCase() || \"thaa\" == goog.LOCALE.substring(4, 8).toLowerCase());\ngoog.i18n.bidi.Format = {LRE:\"\\u202a\", RLE:\"\\u202b\", PDF:\"\\u202c\", LRM:\"\\u200e\", RLM:\"\\u200f\"};\ngoog.i18n.bidi.Dir = {LTR:1, RTL:-1, NEUTRAL:0};\ngoog.i18n.bidi.RIGHT = \"right\";\ngoog.i18n.bidi.LEFT = \"left\";\ngoog.i18n.bidi.I18N_RIGHT = goog.i18n.bidi.IS_RTL ? goog.i18n.bidi.LEFT : goog.i18n.bidi.RIGHT;\ngoog.i18n.bidi.I18N_LEFT = goog.i18n.bidi.IS_RTL ? goog.i18n.bidi.RIGHT : goog.i18n.bidi.LEFT;\ngoog.i18n.bidi.toDir = function(a, b) {\n  return \"number\" == typeof a ? 0 < a ? goog.i18n.bidi.Dir.LTR : 0 > a ? goog.i18n.bidi.Dir.RTL : b ? null : goog.i18n.bidi.Dir.NEUTRAL : null == a ? null : a ? goog.i18n.bidi.Dir.RTL : goog.i18n.bidi.Dir.LTR;\n};\ngoog.i18n.bidi.ltrChars_ = \"A-Za-z\\u00c0-\\u00d6\\u00d8-\\u00f6\\u00f8-\\u02b8\\u0300-\\u0590\\u0900-\\u1fff\\u200e\\u2c00-\\ud801\\ud804-\\ud839\\ud83c-\\udbff\\uf900-\\ufb1c\\ufe00-\\ufe6f\\ufefd-\\uffff\";\ngoog.i18n.bidi.rtlChars_ = \"\\u0591-\\u06ef\\u06fa-\\u08ff\\u200f\\ud802-\\ud803\\ud83a-\\ud83b\\ufb1d-\\ufdff\\ufe70-\\ufefc\";\ngoog.i18n.bidi.htmlSkipReg_ = /<[^>]*>|&[^;]+;/g;\ngoog.i18n.bidi.stripHtmlIfNeeded_ = function(a, b) {\n  return b ? a.replace(goog.i18n.bidi.htmlSkipReg_, \"\") : a;\n};\ngoog.i18n.bidi.rtlCharReg_ = new RegExp(\"[\" + goog.i18n.bidi.rtlChars_ + \"]\");\ngoog.i18n.bidi.ltrCharReg_ = new RegExp(\"[\" + goog.i18n.bidi.ltrChars_ + \"]\");\ngoog.i18n.bidi.hasAnyRtl = function(a, b) {\n  return goog.i18n.bidi.rtlCharReg_.test(goog.i18n.bidi.stripHtmlIfNeeded_(a, b));\n};\ngoog.i18n.bidi.hasRtlChar = goog.i18n.bidi.hasAnyRtl;\ngoog.i18n.bidi.hasAnyLtr = function(a, b) {\n  return goog.i18n.bidi.ltrCharReg_.test(goog.i18n.bidi.stripHtmlIfNeeded_(a, b));\n};\ngoog.i18n.bidi.ltrRe_ = new RegExp(\"^[\" + goog.i18n.bidi.ltrChars_ + \"]\");\ngoog.i18n.bidi.rtlRe_ = new RegExp(\"^[\" + goog.i18n.bidi.rtlChars_ + \"]\");\ngoog.i18n.bidi.isRtlChar = function(a) {\n  return goog.i18n.bidi.rtlRe_.test(a);\n};\ngoog.i18n.bidi.isLtrChar = function(a) {\n  return goog.i18n.bidi.ltrRe_.test(a);\n};\ngoog.i18n.bidi.isNeutralChar = function(a) {\n  return !goog.i18n.bidi.isLtrChar(a) && !goog.i18n.bidi.isRtlChar(a);\n};\ngoog.i18n.bidi.ltrDirCheckRe_ = new RegExp(\"^[^\" + goog.i18n.bidi.rtlChars_ + \"]*[\" + goog.i18n.bidi.ltrChars_ + \"]\");\ngoog.i18n.bidi.rtlDirCheckRe_ = new RegExp(\"^[^\" + goog.i18n.bidi.ltrChars_ + \"]*[\" + goog.i18n.bidi.rtlChars_ + \"]\");\ngoog.i18n.bidi.startsWithRtl = function(a, b) {\n  return goog.i18n.bidi.rtlDirCheckRe_.test(goog.i18n.bidi.stripHtmlIfNeeded_(a, b));\n};\ngoog.i18n.bidi.isRtlText = goog.i18n.bidi.startsWithRtl;\ngoog.i18n.bidi.startsWithLtr = function(a, b) {\n  return goog.i18n.bidi.ltrDirCheckRe_.test(goog.i18n.bidi.stripHtmlIfNeeded_(a, b));\n};\ngoog.i18n.bidi.isLtrText = goog.i18n.bidi.startsWithLtr;\ngoog.i18n.bidi.isRequiredLtrRe_ = /^http:\\/\\/.*/;\ngoog.i18n.bidi.isNeutralText = function(a, b) {\n  a = goog.i18n.bidi.stripHtmlIfNeeded_(a, b);\n  return goog.i18n.bidi.isRequiredLtrRe_.test(a) || !goog.i18n.bidi.hasAnyLtr(a) && !goog.i18n.bidi.hasAnyRtl(a);\n};\ngoog.i18n.bidi.ltrExitDirCheckRe_ = new RegExp(\"[\" + goog.i18n.bidi.ltrChars_ + \"][^\" + goog.i18n.bidi.rtlChars_ + \"]*$\");\ngoog.i18n.bidi.rtlExitDirCheckRe_ = new RegExp(\"[\" + goog.i18n.bidi.rtlChars_ + \"][^\" + goog.i18n.bidi.ltrChars_ + \"]*$\");\ngoog.i18n.bidi.endsWithLtr = function(a, b) {\n  return goog.i18n.bidi.ltrExitDirCheckRe_.test(goog.i18n.bidi.stripHtmlIfNeeded_(a, b));\n};\ngoog.i18n.bidi.isLtrExitText = goog.i18n.bidi.endsWithLtr;\ngoog.i18n.bidi.endsWithRtl = function(a, b) {\n  return goog.i18n.bidi.rtlExitDirCheckRe_.test(goog.i18n.bidi.stripHtmlIfNeeded_(a, b));\n};\ngoog.i18n.bidi.isRtlExitText = goog.i18n.bidi.endsWithRtl;\ngoog.i18n.bidi.rtlLocalesRe_ = /^(ar|ckb|dv|he|iw|fa|nqo|ps|sd|ug|ur|yi|.*[-_](Adlm|Arab|Hebr|Nkoo|Rohg|Thaa))(?!.*[-_](Latn|Cyrl)($|-|_))($|-|_)/i;\ngoog.i18n.bidi.isRtlLanguage = function(a) {\n  return goog.i18n.bidi.rtlLocalesRe_.test(a);\n};\ngoog.i18n.bidi.bracketGuardTextRe_ = /(\\(.*?\\)+)|(\\[.*?\\]+)|(\\{.*?\\}+)|(<.*?>+)/g;\ngoog.i18n.bidi.guardBracketInText = function(a, b) {\n  var c = (void 0 === b ? goog.i18n.bidi.hasAnyRtl(a) : b) ? goog.i18n.bidi.Format.RLM : goog.i18n.bidi.Format.LRM;\n  return a.replace(goog.i18n.bidi.bracketGuardTextRe_, c + \"$&\" + c);\n};\ngoog.i18n.bidi.enforceRtlInHtml = function(a) {\n  return \"<\" == a.charAt(0) ? a.replace(/<\\w+/, \"$& dir=rtl\") : \"\\n<span dir=rtl>\" + a + \"</span>\";\n};\ngoog.i18n.bidi.enforceRtlInText = function(a) {\n  return goog.i18n.bidi.Format.RLE + a + goog.i18n.bidi.Format.PDF;\n};\ngoog.i18n.bidi.enforceLtrInHtml = function(a) {\n  return \"<\" == a.charAt(0) ? a.replace(/<\\w+/, \"$& dir=ltr\") : \"\\n<span dir=ltr>\" + a + \"</span>\";\n};\ngoog.i18n.bidi.enforceLtrInText = function(a) {\n  return goog.i18n.bidi.Format.LRE + a + goog.i18n.bidi.Format.PDF;\n};\ngoog.i18n.bidi.dimensionsRe_ = /:\\s*([.\\d][.\\w]*)\\s+([.\\d][.\\w]*)\\s+([.\\d][.\\w]*)\\s+([.\\d][.\\w]*)/g;\ngoog.i18n.bidi.leftRe_ = /left/gi;\ngoog.i18n.bidi.rightRe_ = /right/gi;\ngoog.i18n.bidi.tempRe_ = /%%%%/g;\ngoog.i18n.bidi.mirrorCSS = function(a) {\n  return a.replace(goog.i18n.bidi.dimensionsRe_, \":$1 $4 $3 $2\").replace(goog.i18n.bidi.leftRe_, \"%%%%\").replace(goog.i18n.bidi.rightRe_, goog.i18n.bidi.LEFT).replace(goog.i18n.bidi.tempRe_, goog.i18n.bidi.RIGHT);\n};\ngoog.i18n.bidi.doubleQuoteSubstituteRe_ = /([\\u0591-\\u05f2])\"/g;\ngoog.i18n.bidi.singleQuoteSubstituteRe_ = /([\\u0591-\\u05f2])'/g;\ngoog.i18n.bidi.normalizeHebrewQuote = function(a) {\n  return a.replace(goog.i18n.bidi.doubleQuoteSubstituteRe_, \"$1\\u05f4\").replace(goog.i18n.bidi.singleQuoteSubstituteRe_, \"$1\\u05f3\");\n};\ngoog.i18n.bidi.wordSeparatorRe_ = /\\s+/;\ngoog.i18n.bidi.hasNumeralsRe_ = /[\\d\\u06f0-\\u06f9]/;\ngoog.i18n.bidi.rtlDetectionThreshold_ = 0.40;\ngoog.i18n.bidi.estimateDirection = function(a, b) {\n  for (var c = 0, d = 0, e = !1, f = goog.i18n.bidi.stripHtmlIfNeeded_(a, b).split(goog.i18n.bidi.wordSeparatorRe_), g = 0; g < f.length; g++) {\n    var h = f[g];\n    goog.i18n.bidi.startsWithRtl(h) ? (c++, d++) : goog.i18n.bidi.isRequiredLtrRe_.test(h) ? e = !0 : goog.i18n.bidi.hasAnyLtr(h) ? d++ : goog.i18n.bidi.hasNumeralsRe_.test(h) && (e = !0);\n  }\n  return 0 == d ? e ? goog.i18n.bidi.Dir.LTR : goog.i18n.bidi.Dir.NEUTRAL : c / d > goog.i18n.bidi.rtlDetectionThreshold_ ? goog.i18n.bidi.Dir.RTL : goog.i18n.bidi.Dir.LTR;\n};\ngoog.i18n.bidi.detectRtlDirectionality = function(a, b) {\n  return goog.i18n.bidi.estimateDirection(a, b) == goog.i18n.bidi.Dir.RTL;\n};\ngoog.i18n.bidi.setElementDirAndAlign = function(a, b) {\n  a && (b = goog.i18n.bidi.toDir(b)) && (a.style.textAlign = b == goog.i18n.bidi.Dir.RTL ? goog.i18n.bidi.RIGHT : goog.i18n.bidi.LEFT, a.dir = b == goog.i18n.bidi.Dir.RTL ? \"rtl\" : \"ltr\");\n};\ngoog.i18n.bidi.setElementDirByTextDirectionality = function(a, b) {\n  switch(goog.i18n.bidi.estimateDirection(b)) {\n    case goog.i18n.bidi.Dir.LTR:\n      a.dir = \"ltr\";\n      break;\n    case goog.i18n.bidi.Dir.RTL:\n      a.dir = \"rtl\";\n      break;\n    default:\n      a.removeAttribute(\"dir\");\n  }\n};\ngoog.i18n.bidi.DirectionalString = function() {\n};\ngoog.html.TrustedResourceUrl = function(a, b, c) {\n  this.privateDoNotAccessOrElseTrustedResourceUrlWrappedValue_ = a === goog.html.TrustedResourceUrl.CONSTRUCTOR_TOKEN_PRIVATE_ && b || \"\";\n  this.trustedURL_ = a === goog.html.TrustedResourceUrl.CONSTRUCTOR_TOKEN_PRIVATE_ && c || null;\n  this.TRUSTED_RESOURCE_URL_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ = goog.html.TrustedResourceUrl.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_;\n};\ngoog.html.TrustedResourceUrl.prototype.implementsGoogStringTypedString = !0;\ngoog.html.TrustedResourceUrl.prototype.getTypedStringValue = function() {\n  return this.privateDoNotAccessOrElseTrustedResourceUrlWrappedValue_.toString();\n};\ngoog.html.TrustedResourceUrl.prototype.implementsGoogI18nBidiDirectionalString = !0;\ngoog.html.TrustedResourceUrl.prototype.getDirection = function() {\n  return goog.i18n.bidi.Dir.LTR;\n};\ngoog.html.TrustedResourceUrl.prototype.cloneWithParams = function(a, b) {\n  var c = goog.html.TrustedResourceUrl.unwrap(this);\n  c = goog.html.TrustedResourceUrl.URL_PARAM_PARSER_.exec(c);\n  var d = c[3] || \"\";\n  return goog.html.TrustedResourceUrl.createTrustedResourceUrlSecurityPrivateDoNotAccessOrElse(c[1] + goog.html.TrustedResourceUrl.stringifyParams_(\"?\", c[2] || \"\", a) + goog.html.TrustedResourceUrl.stringifyParams_(\"#\", d, b));\n};\ngoog.DEBUG && (goog.html.TrustedResourceUrl.prototype.toString = function() {\n  return \"TrustedResourceUrl{\" + this.privateDoNotAccessOrElseTrustedResourceUrlWrappedValue_ + \"}\";\n});\ngoog.html.TrustedResourceUrl.unwrap = function(a) {\n  return goog.html.TrustedResourceUrl.unwrapTrustedScriptURL(a).toString();\n};\ngoog.html.TrustedResourceUrl.unwrapTrustedScriptURL = function(a) {\n  if (a instanceof goog.html.TrustedResourceUrl && a.constructor === goog.html.TrustedResourceUrl && a.TRUSTED_RESOURCE_URL_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ === goog.html.TrustedResourceUrl.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_) {\n    return a.privateDoNotAccessOrElseTrustedResourceUrlWrappedValue_;\n  }\n  goog.asserts.fail(\"expected object of type TrustedResourceUrl, got '\" + a + \"' of type \" + goog.typeOf(a));\n  return \"type_error:TrustedResourceUrl\";\n};\ngoog.html.TrustedResourceUrl.unwrapTrustedURL = function(a) {\n  return a.trustedURL_ ? a.trustedURL_ : goog.html.TrustedResourceUrl.unwrap(a);\n};\ngoog.html.TrustedResourceUrl.format = function(a, b) {\n  var c = goog.string.Const.unwrap(a);\n  if (!goog.html.TrustedResourceUrl.BASE_URL_.test(c)) {\n    throw Error(\"Invalid TrustedResourceUrl format: \" + c);\n  }\n  var d = c.replace(goog.html.TrustedResourceUrl.FORMAT_MARKER_, function(a, d) {\n    if (!Object.prototype.hasOwnProperty.call(b, d)) {\n      throw Error('Found marker, \"' + d + '\", in format string, \"' + c + '\", but no valid label mapping found in args: ' + JSON.stringify(b));\n    }\n    var e = b[d];\n    return e instanceof goog.string.Const ? goog.string.Const.unwrap(e) : encodeURIComponent(String(e));\n  });\n  return goog.html.TrustedResourceUrl.createTrustedResourceUrlSecurityPrivateDoNotAccessOrElse(d);\n};\ngoog.html.TrustedResourceUrl.FORMAT_MARKER_ = /%{(\\w+)}/g;\ngoog.html.TrustedResourceUrl.BASE_URL_ = /^((https:)?\\/\\/[0-9a-z.:[\\]-]+\\/|\\/[^/\\\\]|[^:/\\\\%]+\\/|[^:/\\\\%]*[?#]|about:blank#)/i;\ngoog.html.TrustedResourceUrl.URL_PARAM_PARSER_ = /^([^?#]*)(\\?[^#]*)?(#[\\s\\S]*)?/;\ngoog.html.TrustedResourceUrl.formatWithParams = function(a, b, c, d) {\n  return goog.html.TrustedResourceUrl.format(a, b).cloneWithParams(c, d);\n};\ngoog.html.TrustedResourceUrl.fromConstant = function(a) {\n  return goog.html.TrustedResourceUrl.createTrustedResourceUrlSecurityPrivateDoNotAccessOrElse(goog.string.Const.unwrap(a));\n};\ngoog.html.TrustedResourceUrl.fromConstants = function(a) {\n  for (var b = \"\", c = 0; c < a.length; c++) {\n    b += goog.string.Const.unwrap(a[c]);\n  }\n  return goog.html.TrustedResourceUrl.createTrustedResourceUrlSecurityPrivateDoNotAccessOrElse(b);\n};\ngoog.html.TrustedResourceUrl.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ = {};\ngoog.html.TrustedResourceUrl.createTrustedResourceUrlSecurityPrivateDoNotAccessOrElse = function(a) {\n  var b = goog.html.trustedtypes.PRIVATE_DO_NOT_ACCESS_OR_ELSE_POLICY ? goog.html.trustedtypes.PRIVATE_DO_NOT_ACCESS_OR_ELSE_POLICY.createScriptURL(a) : a;\n  a = goog.html.trustedtypes.PRIVATE_DO_NOT_ACCESS_OR_ELSE_POLICY ? goog.html.trustedtypes.PRIVATE_DO_NOT_ACCESS_OR_ELSE_POLICY.createURL(a) : null;\n  return new goog.html.TrustedResourceUrl(goog.html.TrustedResourceUrl.CONSTRUCTOR_TOKEN_PRIVATE_, b, a);\n};\ngoog.html.TrustedResourceUrl.stringifyParams_ = function(a, b, c) {\n  if (null == c) {\n    return b;\n  }\n  if (\"string\" === typeof c) {\n    return c ? a + encodeURIComponent(c) : \"\";\n  }\n  for (var d in c) {\n    var e = c[d];\n    e = goog.isArray(e) ? e : [e];\n    for (var f = 0; f < e.length; f++) {\n      var g = e[f];\n      null != g && (b || (b = a), b += (b.length > a.length ? \"&\" : \"\") + encodeURIComponent(d) + \"=\" + encodeURIComponent(String(g)));\n    }\n  }\n  return b;\n};\ngoog.html.TrustedResourceUrl.CONSTRUCTOR_TOKEN_PRIVATE_ = {};\ngoog.string.internal = {};\ngoog.string.internal.startsWith = function(a, b) {\n  return 0 == a.lastIndexOf(b, 0);\n};\ngoog.string.internal.endsWith = function(a, b) {\n  var c = a.length - b.length;\n  return 0 <= c && a.indexOf(b, c) == c;\n};\ngoog.string.internal.caseInsensitiveStartsWith = function(a, b) {\n  return 0 == goog.string.internal.caseInsensitiveCompare(b, a.substr(0, b.length));\n};\ngoog.string.internal.caseInsensitiveEndsWith = function(a, b) {\n  return 0 == goog.string.internal.caseInsensitiveCompare(b, a.substr(a.length - b.length, b.length));\n};\ngoog.string.internal.caseInsensitiveEquals = function(a, b) {\n  return a.toLowerCase() == b.toLowerCase();\n};\ngoog.string.internal.isEmptyOrWhitespace = function(a) {\n  return /^[\\s\\xa0]*$/.test(a);\n};\ngoog.string.internal.trim = goog.TRUSTED_SITE && String.prototype.trim ? function(a) {\n  return a.trim();\n} : function(a) {\n  return /^[\\s\\xa0]*([\\s\\S]*?)[\\s\\xa0]*$/.exec(a)[1];\n};\ngoog.string.internal.caseInsensitiveCompare = function(a, b) {\n  var c = String(a).toLowerCase(), d = String(b).toLowerCase();\n  return c < d ? -1 : c == d ? 0 : 1;\n};\ngoog.string.internal.newLineToBr = function(a, b) {\n  return a.replace(/(\\r\\n|\\r|\\n)/g, b ? \"<br />\" : \"<br>\");\n};\ngoog.string.internal.htmlEscape = function(a, b) {\n  if (b) {\n    a = a.replace(goog.string.internal.AMP_RE_, \"&amp;\").replace(goog.string.internal.LT_RE_, \"&lt;\").replace(goog.string.internal.GT_RE_, \"&gt;\").replace(goog.string.internal.QUOT_RE_, \"&quot;\").replace(goog.string.internal.SINGLE_QUOTE_RE_, \"&#39;\").replace(goog.string.internal.NULL_RE_, \"&#0;\");\n  } else {\n    if (!goog.string.internal.ALL_RE_.test(a)) {\n      return a;\n    }\n    -1 != a.indexOf(\"&\") && (a = a.replace(goog.string.internal.AMP_RE_, \"&amp;\"));\n    -1 != a.indexOf(\"<\") && (a = a.replace(goog.string.internal.LT_RE_, \"&lt;\"));\n    -1 != a.indexOf(\">\") && (a = a.replace(goog.string.internal.GT_RE_, \"&gt;\"));\n    -1 != a.indexOf('\"') && (a = a.replace(goog.string.internal.QUOT_RE_, \"&quot;\"));\n    -1 != a.indexOf(\"'\") && (a = a.replace(goog.string.internal.SINGLE_QUOTE_RE_, \"&#39;\"));\n    -1 != a.indexOf(\"\\x00\") && (a = a.replace(goog.string.internal.NULL_RE_, \"&#0;\"));\n  }\n  return a;\n};\ngoog.string.internal.AMP_RE_ = /&/g;\ngoog.string.internal.LT_RE_ = /</g;\ngoog.string.internal.GT_RE_ = />/g;\ngoog.string.internal.QUOT_RE_ = /\"/g;\ngoog.string.internal.SINGLE_QUOTE_RE_ = /'/g;\ngoog.string.internal.NULL_RE_ = /\\x00/g;\ngoog.string.internal.ALL_RE_ = /[\\x00&<>\"']/;\ngoog.string.internal.whitespaceEscape = function(a, b) {\n  return goog.string.internal.newLineToBr(a.replace(/  /g, \" &#160;\"), b);\n};\ngoog.string.internal.contains = function(a, b) {\n  return -1 != a.indexOf(b);\n};\ngoog.string.internal.caseInsensitiveContains = function(a, b) {\n  return goog.string.internal.contains(a.toLowerCase(), b.toLowerCase());\n};\ngoog.string.internal.compareVersions = function(a, b) {\n  for (var c = 0, d = goog.string.internal.trim(String(a)).split(\".\"), e = goog.string.internal.trim(String(b)).split(\".\"), f = Math.max(d.length, e.length), g = 0; 0 == c && g < f; g++) {\n    var h = d[g] || \"\", k = e[g] || \"\";\n    do {\n      h = /(\\d*)(\\D*)(.*)/.exec(h) || [\"\", \"\", \"\", \"\"];\n      k = /(\\d*)(\\D*)(.*)/.exec(k) || [\"\", \"\", \"\", \"\"];\n      if (0 == h[0].length && 0 == k[0].length) {\n        break;\n      }\n      c = 0 == h[1].length ? 0 : parseInt(h[1], 10);\n      var l = 0 == k[1].length ? 0 : parseInt(k[1], 10);\n      c = goog.string.internal.compareElements_(c, l) || goog.string.internal.compareElements_(0 == h[2].length, 0 == k[2].length) || goog.string.internal.compareElements_(h[2], k[2]);\n      h = h[3];\n      k = k[3];\n    } while (0 == c);\n  }\n  return c;\n};\ngoog.string.internal.compareElements_ = function(a, b) {\n  return a < b ? -1 : a > b ? 1 : 0;\n};\ngoog.html.SafeUrl = function(a, b) {\n  this.privateDoNotAccessOrElseSafeUrlWrappedValue_ = a === goog.html.SafeUrl.CONSTRUCTOR_TOKEN_PRIVATE_ && b || \"\";\n  this.SAFE_URL_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ = goog.html.SafeUrl.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_;\n};\ngoog.html.SafeUrl.INNOCUOUS_STRING = \"about:invalid#zClosurez\";\ngoog.html.SafeUrl.prototype.implementsGoogStringTypedString = !0;\ngoog.html.SafeUrl.prototype.getTypedStringValue = function() {\n  return this.privateDoNotAccessOrElseSafeUrlWrappedValue_.toString();\n};\ngoog.html.SafeUrl.prototype.implementsGoogI18nBidiDirectionalString = !0;\ngoog.html.SafeUrl.prototype.getDirection = function() {\n  return goog.i18n.bidi.Dir.LTR;\n};\ngoog.DEBUG && (goog.html.SafeUrl.prototype.toString = function() {\n  return \"SafeUrl{\" + this.privateDoNotAccessOrElseSafeUrlWrappedValue_ + \"}\";\n});\ngoog.html.SafeUrl.unwrap = function(a) {\n  return goog.html.SafeUrl.unwrapTrustedURL(a).toString();\n};\ngoog.html.SafeUrl.unwrapTrustedURL = function(a) {\n  if (a instanceof goog.html.SafeUrl && a.constructor === goog.html.SafeUrl && a.SAFE_URL_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ === goog.html.SafeUrl.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_) {\n    return a.privateDoNotAccessOrElseSafeUrlWrappedValue_;\n  }\n  goog.asserts.fail(\"expected object of type SafeUrl, got '\" + a + \"' of type \" + goog.typeOf(a));\n  return \"type_error:SafeUrl\";\n};\ngoog.html.SafeUrl.fromConstant = function(a) {\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(goog.string.Const.unwrap(a));\n};\ngoog.html.SAFE_MIME_TYPE_PATTERN_ = /^(?:audio\\/(?:3gpp2|3gpp|aac|L16|midi|mp3|mp4|mpeg|oga|ogg|opus|x-m4a|x-wav|wav|webm)|image\\/(?:bmp|gif|jpeg|jpg|png|tiff|webp|x-icon)|text\\/csv|video\\/(?:mpeg|mp4|ogg|webm|quicktime))(?:;\\w+=(?:\\w+|\"[\\w;=]+\"))*$/i;\ngoog.html.SafeUrl.isSafeMimeType = function(a) {\n  return goog.html.SAFE_MIME_TYPE_PATTERN_.test(a);\n};\ngoog.html.SafeUrl.fromBlob = function(a) {\n  a = goog.html.SAFE_MIME_TYPE_PATTERN_.test(a.type) ? goog.fs.url.createObjectUrl(a) : goog.html.SafeUrl.INNOCUOUS_STRING;\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(a);\n};\ngoog.html.DATA_URL_PATTERN_ = /^data:([^,]*);base64,[a-z0-9+\\/]+=*$/i;\ngoog.html.SafeUrl.fromDataUrl = function(a) {\n  a = a.replace(/(%0A|%0D)/g, \"\");\n  var b = a.match(goog.html.DATA_URL_PATTERN_);\n  b = b && goog.html.SAFE_MIME_TYPE_PATTERN_.test(b[1]);\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(b ? a : goog.html.SafeUrl.INNOCUOUS_STRING);\n};\ngoog.html.SafeUrl.fromTelUrl = function(a) {\n  goog.string.internal.caseInsensitiveStartsWith(a, \"tel:\") || (a = goog.html.SafeUrl.INNOCUOUS_STRING);\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(a);\n};\ngoog.html.SIP_URL_PATTERN_ = /^sip[s]?:[+a-z0-9_.!$%&'*\\/=^`{|}~-]+@([a-z0-9-]+\\.)+[a-z0-9]{2,63}$/i;\ngoog.html.SafeUrl.fromSipUrl = function(a) {\n  goog.html.SIP_URL_PATTERN_.test(decodeURIComponent(a)) || (a = goog.html.SafeUrl.INNOCUOUS_STRING);\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(a);\n};\ngoog.html.SafeUrl.fromFacebookMessengerUrl = function(a) {\n  goog.string.internal.caseInsensitiveStartsWith(a, \"fb-messenger://share\") || (a = goog.html.SafeUrl.INNOCUOUS_STRING);\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(a);\n};\ngoog.html.SafeUrl.fromWhatsAppUrl = function(a) {\n  goog.string.internal.caseInsensitiveStartsWith(a, \"whatsapp://send\") || (a = goog.html.SafeUrl.INNOCUOUS_STRING);\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(a);\n};\ngoog.html.SafeUrl.fromSmsUrl = function(a) {\n  goog.string.internal.caseInsensitiveStartsWith(a, \"sms:\") && goog.html.SafeUrl.isSmsUrlBodyValid_(a) || (a = goog.html.SafeUrl.INNOCUOUS_STRING);\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(a);\n};\ngoog.html.SafeUrl.isSmsUrlBodyValid_ = function(a) {\n  var b = a.indexOf(\"#\");\n  0 < b && (a = a.substring(0, b));\n  b = a.match(/[?&]body=/gi);\n  if (!b) {\n    return !0;\n  }\n  if (1 < b.length) {\n    return !1;\n  }\n  a = a.match(/[?&]body=([^&]*)/)[1];\n  if (!a) {\n    return !0;\n  }\n  try {\n    decodeURIComponent(a);\n  } catch (c) {\n    return !1;\n  }\n  return /^(?:[a-z0-9\\-_.~]|%[0-9a-f]{2})+$/i.test(a);\n};\ngoog.html.SafeUrl.fromSshUrl = function(a) {\n  goog.string.internal.caseInsensitiveStartsWith(a, \"ssh://\") || (a = goog.html.SafeUrl.INNOCUOUS_STRING);\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(a);\n};\ngoog.html.SafeUrl.sanitizeChromeExtensionUrl = function(a, b) {\n  return goog.html.SafeUrl.sanitizeExtensionUrl_(/^chrome-extension:\\/\\/([^\\/]+)\\//, a, b);\n};\ngoog.html.SafeUrl.sanitizeFirefoxExtensionUrl = function(a, b) {\n  return goog.html.SafeUrl.sanitizeExtensionUrl_(/^moz-extension:\\/\\/([^\\/]+)\\//, a, b);\n};\ngoog.html.SafeUrl.sanitizeEdgeExtensionUrl = function(a, b) {\n  return goog.html.SafeUrl.sanitizeExtensionUrl_(/^ms-browser-extension:\\/\\/([^\\/]+)\\//, a, b);\n};\ngoog.html.SafeUrl.sanitizeExtensionUrl_ = function(a, b, c) {\n  (a = a.exec(b)) ? (a = a[1], -1 == (c instanceof goog.string.Const ? [goog.string.Const.unwrap(c)] : c.map(function(a) {\n    return goog.string.Const.unwrap(a);\n  })).indexOf(a) && (b = goog.html.SafeUrl.INNOCUOUS_STRING)) : b = goog.html.SafeUrl.INNOCUOUS_STRING;\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(b);\n};\ngoog.html.SafeUrl.fromTrustedResourceUrl = function(a) {\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(goog.html.TrustedResourceUrl.unwrap(a));\n};\ngoog.html.SAFE_URL_PATTERN_ = /^(?:(?:https?|mailto|ftp):|[^:/?#]*(?:[/?#]|$))/i;\ngoog.html.SafeUrl.SAFE_URL_PATTERN = goog.html.SAFE_URL_PATTERN_;\ngoog.html.SafeUrl.sanitize = function(a) {\n  if (a instanceof goog.html.SafeUrl) {\n    return a;\n  }\n  a = \"object\" == typeof a && a.implementsGoogStringTypedString ? a.getTypedStringValue() : String(a);\n  goog.html.SAFE_URL_PATTERN_.test(a) || (a = goog.html.SafeUrl.INNOCUOUS_STRING);\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(a);\n};\ngoog.html.SafeUrl.sanitizeAssertUnchanged = function(a, b) {\n  if (a instanceof goog.html.SafeUrl) {\n    return a;\n  }\n  a = \"object\" == typeof a && a.implementsGoogStringTypedString ? a.getTypedStringValue() : String(a);\n  if (b && /^data:/i.test(a)) {\n    var c = goog.html.SafeUrl.fromDataUrl(a);\n    if (c.getTypedStringValue() == a) {\n      return c;\n    }\n  }\n  goog.asserts.assert(goog.html.SAFE_URL_PATTERN_.test(a), \"%s does not match the safe URL pattern\", a) || (a = goog.html.SafeUrl.INNOCUOUS_STRING);\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(a);\n};\ngoog.html.SafeUrl.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ = {};\ngoog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse = function(a) {\n  return new goog.html.SafeUrl(goog.html.SafeUrl.CONSTRUCTOR_TOKEN_PRIVATE_, goog.html.trustedtypes.PRIVATE_DO_NOT_ACCESS_OR_ELSE_POLICY ? goog.html.trustedtypes.PRIVATE_DO_NOT_ACCESS_OR_ELSE_POLICY.createURL(a) : a);\n};\ngoog.html.SafeUrl.ABOUT_BLANK = goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(\"about:blank\");\ngoog.html.SafeUrl.CONSTRUCTOR_TOKEN_PRIVATE_ = {};\ngoog.html.SafeStyle = function() {\n  this.privateDoNotAccessOrElseSafeStyleWrappedValue_ = \"\";\n  this.SAFE_STYLE_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ = goog.html.SafeStyle.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_;\n};\ngoog.html.SafeStyle.prototype.implementsGoogStringTypedString = !0;\ngoog.html.SafeStyle.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ = {};\ngoog.html.SafeStyle.fromConstant = function(a) {\n  a = goog.string.Const.unwrap(a);\n  if (0 === a.length) {\n    return goog.html.SafeStyle.EMPTY;\n  }\n  goog.asserts.assert(goog.string.internal.endsWith(a, \";\"), \"Last character of style string is not ';': \" + a);\n  goog.asserts.assert(goog.string.internal.contains(a, \":\"), \"Style string must contain at least one ':', to specify a \\\"name: value\\\" pair: \" + a);\n  return goog.html.SafeStyle.createSafeStyleSecurityPrivateDoNotAccessOrElse(a);\n};\ngoog.html.SafeStyle.prototype.getTypedStringValue = function() {\n  return this.privateDoNotAccessOrElseSafeStyleWrappedValue_;\n};\ngoog.DEBUG && (goog.html.SafeStyle.prototype.toString = function() {\n  return \"SafeStyle{\" + this.privateDoNotAccessOrElseSafeStyleWrappedValue_ + \"}\";\n});\ngoog.html.SafeStyle.unwrap = function(a) {\n  if (a instanceof goog.html.SafeStyle && a.constructor === goog.html.SafeStyle && a.SAFE_STYLE_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ === goog.html.SafeStyle.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_) {\n    return a.privateDoNotAccessOrElseSafeStyleWrappedValue_;\n  }\n  goog.asserts.fail(\"expected object of type SafeStyle, got '\" + a + \"' of type \" + goog.typeOf(a));\n  return \"type_error:SafeStyle\";\n};\ngoog.html.SafeStyle.createSafeStyleSecurityPrivateDoNotAccessOrElse = function(a) {\n  return (new goog.html.SafeStyle).initSecurityPrivateDoNotAccessOrElse_(a);\n};\ngoog.html.SafeStyle.prototype.initSecurityPrivateDoNotAccessOrElse_ = function(a) {\n  this.privateDoNotAccessOrElseSafeStyleWrappedValue_ = a;\n  return this;\n};\ngoog.html.SafeStyle.EMPTY = goog.html.SafeStyle.createSafeStyleSecurityPrivateDoNotAccessOrElse(\"\");\ngoog.html.SafeStyle.INNOCUOUS_STRING = \"zClosurez\";\ngoog.html.SafeStyle.create = function(a) {\n  var b = \"\", c;\n  for (c in a) {\n    if (!/^[-_a-zA-Z0-9]+$/.test(c)) {\n      throw Error(\"Name allows only [-_a-zA-Z0-9], got: \" + c);\n    }\n    var d = a[c];\n    null != d && (d = goog.isArray(d) ? goog.array.map(d, goog.html.SafeStyle.sanitizePropertyValue_).join(\" \") : goog.html.SafeStyle.sanitizePropertyValue_(d), b += c + \":\" + d + \";\");\n  }\n  return b ? goog.html.SafeStyle.createSafeStyleSecurityPrivateDoNotAccessOrElse(b) : goog.html.SafeStyle.EMPTY;\n};\ngoog.html.SafeStyle.sanitizePropertyValue_ = function(a) {\n  if (a instanceof goog.html.SafeUrl) {\n    return 'url(\"' + goog.html.SafeUrl.unwrap(a).replace(/</g, \"%3c\").replace(/[\\\\\"]/g, \"\\\\$&\") + '\")';\n  }\n  a = a instanceof goog.string.Const ? goog.string.Const.unwrap(a) : goog.html.SafeStyle.sanitizePropertyValueString_(String(a));\n  if (/[{;}]/.test(a)) {\n    throw new goog.asserts.AssertionError(\"Value does not allow [{;}], got: %s.\", [a]);\n  }\n  return a;\n};\ngoog.html.SafeStyle.sanitizePropertyValueString_ = function(a) {\n  var b = a.replace(goog.html.SafeStyle.FUNCTIONS_RE_, \"$1\").replace(goog.html.SafeStyle.FUNCTIONS_RE_, \"$1\").replace(goog.html.SafeStyle.URL_RE_, \"url\");\n  if (goog.html.SafeStyle.VALUE_RE_.test(b)) {\n    if (goog.html.SafeStyle.COMMENT_RE_.test(a)) {\n      return goog.asserts.fail(\"String value disallows comments, got: \" + a), goog.html.SafeStyle.INNOCUOUS_STRING;\n    }\n    if (!goog.html.SafeStyle.hasBalancedQuotes_(a)) {\n      return goog.asserts.fail(\"String value requires balanced quotes, got: \" + a), goog.html.SafeStyle.INNOCUOUS_STRING;\n    }\n    if (!goog.html.SafeStyle.hasBalancedSquareBrackets_(a)) {\n      return goog.asserts.fail(\"String value requires balanced square brackets and one identifier per pair of brackets, got: \" + a), goog.html.SafeStyle.INNOCUOUS_STRING;\n    }\n  } else {\n    return goog.asserts.fail(\"String value allows only \" + goog.html.SafeStyle.VALUE_ALLOWED_CHARS_ + \" and simple functions, got: \" + a), goog.html.SafeStyle.INNOCUOUS_STRING;\n  }\n  return goog.html.SafeStyle.sanitizeUrl_(a);\n};\ngoog.html.SafeStyle.hasBalancedQuotes_ = function(a) {\n  for (var b = !0, c = !0, d = 0; d < a.length; d++) {\n    var e = a.charAt(d);\n    \"'\" == e && c ? b = !b : '\"' == e && b && (c = !c);\n  }\n  return b && c;\n};\ngoog.html.SafeStyle.hasBalancedSquareBrackets_ = function(a) {\n  for (var b = !0, c = /^[-_a-zA-Z0-9]$/, d = 0; d < a.length; d++) {\n    var e = a.charAt(d);\n    if (\"]\" == e) {\n      if (b) {\n        return !1;\n      }\n      b = !0;\n    } else {\n      if (\"[\" == e) {\n        if (!b) {\n          return !1;\n        }\n        b = !1;\n      } else {\n        if (!b && !c.test(e)) {\n          return !1;\n        }\n      }\n    }\n  }\n  return b;\n};\ngoog.html.SafeStyle.VALUE_ALLOWED_CHARS_ = \"[-,.\\\"'%_!# a-zA-Z0-9\\\\[\\\\]]\";\ngoog.html.SafeStyle.VALUE_RE_ = new RegExp(\"^\" + goog.html.SafeStyle.VALUE_ALLOWED_CHARS_ + \"+$\");\ngoog.html.SafeStyle.URL_RE_ = RegExp(\"\\\\b(url\\\\([ \\t\\n]*)('[ -&(-\\\\[\\\\]-~]*'|\\\"[ !#-\\\\[\\\\]-~]*\\\"|[!#-&*-\\\\[\\\\]-~]*)([ \\t\\n]*\\\\))\", \"g\");\ngoog.html.SafeStyle.ALLOWED_FUNCTIONS_ = \"calc cubic-bezier fit-content hsl hsla matrix minmax repeat rgb rgba (rotate|scale|translate)(X|Y|Z|3d)?\".split(\" \");\ngoog.html.SafeStyle.FUNCTIONS_RE_ = new RegExp(\"\\\\b(\" + goog.html.SafeStyle.ALLOWED_FUNCTIONS_.join(\"|\") + \")\\\\([-+*/0-9a-z.%\\\\[\\\\], ]+\\\\)\", \"g\");\ngoog.html.SafeStyle.COMMENT_RE_ = /\\/\\*/;\ngoog.html.SafeStyle.sanitizeUrl_ = function(a) {\n  return a.replace(goog.html.SafeStyle.URL_RE_, function(a, c, d, e) {\n    var b = \"\";\n    d = d.replace(/^(['\"])(.*)\\1$/, function(a, c, d) {\n      b = c;\n      return d;\n    });\n    a = goog.html.SafeUrl.sanitize(d).getTypedStringValue();\n    return c + b + a + b + e;\n  });\n};\ngoog.html.SafeStyle.concat = function(a) {\n  var b = \"\", c = function(a) {\n    goog.isArray(a) ? goog.array.forEach(a, c) : b += goog.html.SafeStyle.unwrap(a);\n  };\n  goog.array.forEach(arguments, c);\n  return b ? goog.html.SafeStyle.createSafeStyleSecurityPrivateDoNotAccessOrElse(b) : goog.html.SafeStyle.EMPTY;\n};\ngoog.html.SafeStyleSheet = function() {\n  this.privateDoNotAccessOrElseSafeStyleSheetWrappedValue_ = \"\";\n  this.SAFE_STYLE_SHEET_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ = goog.html.SafeStyleSheet.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_;\n};\ngoog.html.SafeStyleSheet.prototype.implementsGoogStringTypedString = !0;\ngoog.html.SafeStyleSheet.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ = {};\ngoog.html.SafeStyleSheet.createRule = function(a, b) {\n  if (goog.string.internal.contains(a, \"<\")) {\n    throw Error(\"Selector does not allow '<', got: \" + a);\n  }\n  var c = a.replace(/('|\")((?!\\1)[^\\r\\n\\f\\\\]|\\\\[\\s\\S])*\\1/g, \"\");\n  if (!/^[-_a-zA-Z0-9#.:* ,>+~[\\]()=^$|]+$/.test(c)) {\n    throw Error(\"Selector allows only [-_a-zA-Z0-9#.:* ,>+~[\\\\]()=^$|] and strings, got: \" + a);\n  }\n  if (!goog.html.SafeStyleSheet.hasBalancedBrackets_(c)) {\n    throw Error(\"() and [] in selector must be balanced, got: \" + a);\n  }\n  b instanceof goog.html.SafeStyle || (b = goog.html.SafeStyle.create(b));\n  c = a + \"{\" + goog.html.SafeStyle.unwrap(b).replace(/</g, \"\\\\3C \") + \"}\";\n  return goog.html.SafeStyleSheet.createSafeStyleSheetSecurityPrivateDoNotAccessOrElse(c);\n};\ngoog.html.SafeStyleSheet.hasBalancedBrackets_ = function(a) {\n  for (var b = {\"(\":\")\", \"[\":\"]\"}, c = [], d = 0; d < a.length; d++) {\n    var e = a[d];\n    if (b[e]) {\n      c.push(b[e]);\n    } else {\n      if (goog.object.contains(b, e) && c.pop() != e) {\n        return !1;\n      }\n    }\n  }\n  return 0 == c.length;\n};\ngoog.html.SafeStyleSheet.concat = function(a) {\n  var b = \"\", c = function(a) {\n    goog.isArray(a) ? goog.array.forEach(a, c) : b += goog.html.SafeStyleSheet.unwrap(a);\n  };\n  goog.array.forEach(arguments, c);\n  return goog.html.SafeStyleSheet.createSafeStyleSheetSecurityPrivateDoNotAccessOrElse(b);\n};\ngoog.html.SafeStyleSheet.fromConstant = function(a) {\n  a = goog.string.Const.unwrap(a);\n  if (0 === a.length) {\n    return goog.html.SafeStyleSheet.EMPTY;\n  }\n  goog.asserts.assert(!goog.string.internal.contains(a, \"<\"), \"Forbidden '<' character in style sheet string: \" + a);\n  return goog.html.SafeStyleSheet.createSafeStyleSheetSecurityPrivateDoNotAccessOrElse(a);\n};\ngoog.html.SafeStyleSheet.prototype.getTypedStringValue = function() {\n  return this.privateDoNotAccessOrElseSafeStyleSheetWrappedValue_;\n};\ngoog.DEBUG && (goog.html.SafeStyleSheet.prototype.toString = function() {\n  return \"SafeStyleSheet{\" + this.privateDoNotAccessOrElseSafeStyleSheetWrappedValue_ + \"}\";\n});\ngoog.html.SafeStyleSheet.unwrap = function(a) {\n  if (a instanceof goog.html.SafeStyleSheet && a.constructor === goog.html.SafeStyleSheet && a.SAFE_STYLE_SHEET_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ === goog.html.SafeStyleSheet.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_) {\n    return a.privateDoNotAccessOrElseSafeStyleSheetWrappedValue_;\n  }\n  goog.asserts.fail(\"expected object of type SafeStyleSheet, got '\" + a + \"' of type \" + goog.typeOf(a));\n  return \"type_error:SafeStyleSheet\";\n};\ngoog.html.SafeStyleSheet.createSafeStyleSheetSecurityPrivateDoNotAccessOrElse = function(a) {\n  return (new goog.html.SafeStyleSheet).initSecurityPrivateDoNotAccessOrElse_(a);\n};\ngoog.html.SafeStyleSheet.prototype.initSecurityPrivateDoNotAccessOrElse_ = function(a) {\n  this.privateDoNotAccessOrElseSafeStyleSheetWrappedValue_ = a;\n  return this;\n};\ngoog.html.SafeStyleSheet.EMPTY = goog.html.SafeStyleSheet.createSafeStyleSheetSecurityPrivateDoNotAccessOrElse(\"\");\ngoog.labs = {};\ngoog.labs.userAgent = {};\ngoog.labs.userAgent.util = {};\ngoog.labs.userAgent.util.getNativeUserAgentString_ = function() {\n  var a = goog.labs.userAgent.util.getNavigator_();\n  return a && (a = a.userAgent) ? a : \"\";\n};\ngoog.labs.userAgent.util.getNavigator_ = function() {\n  return goog.global.navigator;\n};\ngoog.labs.userAgent.util.userAgent_ = goog.labs.userAgent.util.getNativeUserAgentString_();\ngoog.labs.userAgent.util.setUserAgent = function(a) {\n  goog.labs.userAgent.util.userAgent_ = a || goog.labs.userAgent.util.getNativeUserAgentString_();\n};\ngoog.labs.userAgent.util.getUserAgent = function() {\n  return goog.labs.userAgent.util.userAgent_;\n};\ngoog.labs.userAgent.util.matchUserAgent = function(a) {\n  var b = goog.labs.userAgent.util.getUserAgent();\n  return goog.string.internal.contains(b, a);\n};\ngoog.labs.userAgent.util.matchUserAgentIgnoreCase = function(a) {\n  var b = goog.labs.userAgent.util.getUserAgent();\n  return goog.string.internal.caseInsensitiveContains(b, a);\n};\ngoog.labs.userAgent.util.extractVersionTuples = function(a) {\n  for (var b = RegExp(\"(\\\\w[\\\\w ]+)/([^\\\\s]+)\\\\s*(?:\\\\((.*?)\\\\))?\", \"g\"), c = [], d; d = b.exec(a);) {\n    c.push([d[1], d[2], d[3] || void 0]);\n  }\n  return c;\n};\ngoog.labs.userAgent.browser = {};\ngoog.labs.userAgent.browser.matchOpera_ = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Opera\");\n};\ngoog.labs.userAgent.browser.matchIE_ = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Trident\") || goog.labs.userAgent.util.matchUserAgent(\"MSIE\");\n};\ngoog.labs.userAgent.browser.matchEdgeHtml_ = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Edge\");\n};\ngoog.labs.userAgent.browser.matchEdgeChromium_ = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Edg/\");\n};\ngoog.labs.userAgent.browser.matchOperaChromium_ = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"OPR\");\n};\ngoog.labs.userAgent.browser.matchFirefox_ = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Firefox\") || goog.labs.userAgent.util.matchUserAgent(\"FxiOS\");\n};\ngoog.labs.userAgent.browser.matchSafari_ = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Safari\") && !(goog.labs.userAgent.browser.matchChrome_() || goog.labs.userAgent.browser.matchCoast_() || goog.labs.userAgent.browser.matchOpera_() || goog.labs.userAgent.browser.matchEdgeHtml_() || goog.labs.userAgent.browser.matchEdgeChromium_() || goog.labs.userAgent.browser.matchOperaChromium_() || goog.labs.userAgent.browser.matchFirefox_() || goog.labs.userAgent.browser.isSilk() || goog.labs.userAgent.util.matchUserAgent(\"Android\"));\n};\ngoog.labs.userAgent.browser.matchCoast_ = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Coast\");\n};\ngoog.labs.userAgent.browser.matchIosWebview_ = function() {\n  return (goog.labs.userAgent.util.matchUserAgent(\"iPad\") || goog.labs.userAgent.util.matchUserAgent(\"iPhone\")) && !goog.labs.userAgent.browser.matchSafari_() && !goog.labs.userAgent.browser.matchChrome_() && !goog.labs.userAgent.browser.matchCoast_() && !goog.labs.userAgent.browser.matchFirefox_() && goog.labs.userAgent.util.matchUserAgent(\"AppleWebKit\");\n};\ngoog.labs.userAgent.browser.matchChrome_ = function() {\n  return (goog.labs.userAgent.util.matchUserAgent(\"Chrome\") || goog.labs.userAgent.util.matchUserAgent(\"CriOS\")) && !goog.labs.userAgent.browser.matchEdgeHtml_();\n};\ngoog.labs.userAgent.browser.matchAndroidBrowser_ = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Android\") && !(goog.labs.userAgent.browser.isChrome() || goog.labs.userAgent.browser.isFirefox() || goog.labs.userAgent.browser.isOpera() || goog.labs.userAgent.browser.isSilk());\n};\ngoog.labs.userAgent.browser.isOpera = goog.labs.userAgent.browser.matchOpera_;\ngoog.labs.userAgent.browser.isIE = goog.labs.userAgent.browser.matchIE_;\ngoog.labs.userAgent.browser.isEdge = goog.labs.userAgent.browser.matchEdgeHtml_;\ngoog.labs.userAgent.browser.isEdgeChromium = goog.labs.userAgent.browser.matchEdgeChromium_;\ngoog.labs.userAgent.browser.isOperaChromium = goog.labs.userAgent.browser.matchOperaChromium_;\ngoog.labs.userAgent.browser.isFirefox = goog.labs.userAgent.browser.matchFirefox_;\ngoog.labs.userAgent.browser.isSafari = goog.labs.userAgent.browser.matchSafari_;\ngoog.labs.userAgent.browser.isCoast = goog.labs.userAgent.browser.matchCoast_;\ngoog.labs.userAgent.browser.isIosWebview = goog.labs.userAgent.browser.matchIosWebview_;\ngoog.labs.userAgent.browser.isChrome = goog.labs.userAgent.browser.matchChrome_;\ngoog.labs.userAgent.browser.isAndroidBrowser = goog.labs.userAgent.browser.matchAndroidBrowser_;\ngoog.labs.userAgent.browser.isSilk = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Silk\");\n};\ngoog.labs.userAgent.browser.getVersion = function() {\n  function a(a) {\n    a = goog.array.find(a, d);\n    return c[a] || \"\";\n  }\n  var b = goog.labs.userAgent.util.getUserAgent();\n  if (goog.labs.userAgent.browser.isIE()) {\n    return goog.labs.userAgent.browser.getIEVersion_(b);\n  }\n  b = goog.labs.userAgent.util.extractVersionTuples(b);\n  var c = {};\n  goog.array.forEach(b, function(a) {\n    c[a[0]] = a[1];\n  });\n  var d = goog.partial(goog.object.containsKey, c);\n  return goog.labs.userAgent.browser.isOpera() ? a([\"Version\", \"Opera\"]) : goog.labs.userAgent.browser.isEdge() ? a([\"Edge\"]) : goog.labs.userAgent.browser.isEdgeChromium() ? a([\"Edg\"]) : goog.labs.userAgent.browser.isChrome() ? a([\"Chrome\", \"CriOS\"]) : (b = b[2]) && b[1] || \"\";\n};\ngoog.labs.userAgent.browser.isVersionOrHigher = function(a) {\n  return 0 <= goog.string.internal.compareVersions(goog.labs.userAgent.browser.getVersion(), a);\n};\ngoog.labs.userAgent.browser.getIEVersion_ = function(a) {\n  var b = /rv: *([\\d\\.]*)/.exec(a);\n  if (b && b[1]) {\n    return b[1];\n  }\n  b = \"\";\n  var c = /MSIE +([\\d\\.]+)/.exec(a);\n  if (c && c[1]) {\n    if (a = /Trident\\/(\\d.\\d)/.exec(a), \"7.0\" == c[1]) {\n      if (a && a[1]) {\n        switch(a[1]) {\n          case \"4.0\":\n            b = \"8.0\";\n            break;\n          case \"5.0\":\n            b = \"9.0\";\n            break;\n          case \"6.0\":\n            b = \"10.0\";\n            break;\n          case \"7.0\":\n            b = \"11.0\";\n        }\n      } else {\n        b = \"7.0\";\n      }\n    } else {\n      b = c[1];\n    }\n  }\n  return b;\n};\ngoog.html.SafeHtml = function() {\n  this.privateDoNotAccessOrElseSafeHtmlWrappedValue_ = \"\";\n  this.SAFE_HTML_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ = goog.html.SafeHtml.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_;\n  this.dir_ = null;\n};\ngoog.html.SafeHtml.ENABLE_ERROR_MESSAGES = goog.DEBUG;\ngoog.html.SafeHtml.SUPPORT_STYLE_ATTRIBUTE = !0;\ngoog.html.SafeHtml.prototype.implementsGoogI18nBidiDirectionalString = !0;\ngoog.html.SafeHtml.prototype.getDirection = function() {\n  return this.dir_;\n};\ngoog.html.SafeHtml.prototype.implementsGoogStringTypedString = !0;\ngoog.html.SafeHtml.prototype.getTypedStringValue = function() {\n  return this.privateDoNotAccessOrElseSafeHtmlWrappedValue_.toString();\n};\ngoog.DEBUG && (goog.html.SafeHtml.prototype.toString = function() {\n  return \"SafeHtml{\" + this.privateDoNotAccessOrElseSafeHtmlWrappedValue_ + \"}\";\n});\ngoog.html.SafeHtml.unwrap = function(a) {\n  return goog.html.SafeHtml.unwrapTrustedHTML(a).toString();\n};\ngoog.html.SafeHtml.unwrapTrustedHTML = function(a) {\n  if (a instanceof goog.html.SafeHtml && a.constructor === goog.html.SafeHtml && a.SAFE_HTML_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ === goog.html.SafeHtml.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_) {\n    return a.privateDoNotAccessOrElseSafeHtmlWrappedValue_;\n  }\n  goog.asserts.fail(\"expected object of type SafeHtml, got '\" + a + \"' of type \" + goog.typeOf(a));\n  return \"type_error:SafeHtml\";\n};\ngoog.html.SafeHtml.htmlEscape = function(a) {\n  if (a instanceof goog.html.SafeHtml) {\n    return a;\n  }\n  var b = \"object\" == typeof a, c = null;\n  b && a.implementsGoogI18nBidiDirectionalString && (c = a.getDirection());\n  a = b && a.implementsGoogStringTypedString ? a.getTypedStringValue() : String(a);\n  return goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(goog.string.internal.htmlEscape(a), c);\n};\ngoog.html.SafeHtml.htmlEscapePreservingNewlines = function(a) {\n  if (a instanceof goog.html.SafeHtml) {\n    return a;\n  }\n  a = goog.html.SafeHtml.htmlEscape(a);\n  return goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(goog.string.internal.newLineToBr(goog.html.SafeHtml.unwrap(a)), a.getDirection());\n};\ngoog.html.SafeHtml.htmlEscapePreservingNewlinesAndSpaces = function(a) {\n  if (a instanceof goog.html.SafeHtml) {\n    return a;\n  }\n  a = goog.html.SafeHtml.htmlEscape(a);\n  return goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(goog.string.internal.whitespaceEscape(goog.html.SafeHtml.unwrap(a)), a.getDirection());\n};\ngoog.html.SafeHtml.from = goog.html.SafeHtml.htmlEscape;\ngoog.html.SafeHtml.VALID_NAMES_IN_TAG_ = /^[a-zA-Z0-9-]+$/;\ngoog.html.SafeHtml.URL_ATTRIBUTES_ = {action:!0, cite:!0, data:!0, formaction:!0, href:!0, manifest:!0, poster:!0, src:!0};\ngoog.html.SafeHtml.NOT_ALLOWED_TAG_NAMES_ = {APPLET:!0, BASE:!0, EMBED:!0, IFRAME:!0, LINK:!0, MATH:!0, META:!0, OBJECT:!0, SCRIPT:!0, STYLE:!0, SVG:!0, TEMPLATE:!0};\ngoog.html.SafeHtml.create = function(a, b, c) {\n  goog.html.SafeHtml.verifyTagName(String(a));\n  return goog.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse(String(a), b, c);\n};\ngoog.html.SafeHtml.verifyTagName = function(a) {\n  if (!goog.html.SafeHtml.VALID_NAMES_IN_TAG_.test(a)) {\n    throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES ? \"Invalid tag name <\" + a + \">.\" : \"\");\n  }\n  if (a.toUpperCase() in goog.html.SafeHtml.NOT_ALLOWED_TAG_NAMES_) {\n    throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES ? \"Tag name <\" + a + \"> is not allowed for SafeHtml.\" : \"\");\n  }\n};\ngoog.html.SafeHtml.createIframe = function(a, b, c, d) {\n  a && goog.html.TrustedResourceUrl.unwrap(a);\n  var e = {};\n  e.src = a || null;\n  e.srcdoc = b && goog.html.SafeHtml.unwrap(b);\n  a = goog.html.SafeHtml.combineAttributes(e, {sandbox:\"\"}, c);\n  return goog.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse(\"iframe\", a, d);\n};\ngoog.html.SafeHtml.createSandboxIframe = function(a, b, c, d) {\n  if (!goog.html.SafeHtml.canUseSandboxIframe()) {\n    throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES ? \"The browser does not support sandboxed iframes.\" : \"\");\n  }\n  var e = {};\n  e.src = a ? goog.html.SafeUrl.unwrap(goog.html.SafeUrl.sanitize(a)) : null;\n  e.srcdoc = b || null;\n  e.sandbox = \"\";\n  a = goog.html.SafeHtml.combineAttributes(e, {}, c);\n  return goog.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse(\"iframe\", a, d);\n};\ngoog.html.SafeHtml.canUseSandboxIframe = function() {\n  return goog.global.HTMLIFrameElement && \"sandbox\" in goog.global.HTMLIFrameElement.prototype;\n};\ngoog.html.SafeHtml.createScriptSrc = function(a, b) {\n  goog.html.TrustedResourceUrl.unwrap(a);\n  var c = goog.html.SafeHtml.combineAttributes({src:a}, {}, b);\n  return goog.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse(\"script\", c);\n};\ngoog.html.SafeHtml.createScript = function(a, b) {\n  for (var c in b) {\n    var d = c.toLowerCase();\n    if (\"language\" == d || \"src\" == d || \"text\" == d || \"type\" == d) {\n      throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES ? 'Cannot set \"' + d + '\" attribute' : \"\");\n    }\n  }\n  c = \"\";\n  a = goog.array.concat(a);\n  for (d = 0; d < a.length; d++) {\n    c += goog.html.SafeScript.unwrap(a[d]);\n  }\n  c = goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(c, goog.i18n.bidi.Dir.NEUTRAL);\n  return goog.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse(\"script\", b, c);\n};\ngoog.html.SafeHtml.createStyle = function(a, b) {\n  var c = goog.html.SafeHtml.combineAttributes({type:\"text/css\"}, {}, b), d = \"\";\n  a = goog.array.concat(a);\n  for (var e = 0; e < a.length; e++) {\n    d += goog.html.SafeStyleSheet.unwrap(a[e]);\n  }\n  d = goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(d, goog.i18n.bidi.Dir.NEUTRAL);\n  return goog.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse(\"style\", c, d);\n};\ngoog.html.SafeHtml.createMetaRefresh = function(a, b) {\n  var c = goog.html.SafeUrl.unwrap(goog.html.SafeUrl.sanitize(a));\n  (goog.labs.userAgent.browser.isIE() || goog.labs.userAgent.browser.isEdge()) && goog.string.internal.contains(c, \";\") && (c = \"'\" + c.replace(/'/g, \"%27\") + \"'\");\n  return goog.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse(\"meta\", {\"http-equiv\":\"refresh\", content:(b || 0) + \"; url=\" + c});\n};\ngoog.html.SafeHtml.getAttrNameAndValue_ = function(a, b, c) {\n  if (c instanceof goog.string.Const) {\n    c = goog.string.Const.unwrap(c);\n  } else {\n    if (\"style\" == b.toLowerCase()) {\n      if (goog.html.SafeHtml.SUPPORT_STYLE_ATTRIBUTE) {\n        c = goog.html.SafeHtml.getStyleValue_(c);\n      } else {\n        throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES ? 'Attribute \"style\" not supported.' : \"\");\n      }\n    } else {\n      if (/^on/i.test(b)) {\n        throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES ? 'Attribute \"' + b + '\" requires goog.string.Const value, \"' + c + '\" given.' : \"\");\n      }\n      if (b.toLowerCase() in goog.html.SafeHtml.URL_ATTRIBUTES_) {\n        if (c instanceof goog.html.TrustedResourceUrl) {\n          c = goog.html.TrustedResourceUrl.unwrap(c);\n        } else {\n          if (c instanceof goog.html.SafeUrl) {\n            c = goog.html.SafeUrl.unwrap(c);\n          } else {\n            if (\"string\" === typeof c) {\n              c = goog.html.SafeUrl.sanitize(c).getTypedStringValue();\n            } else {\n              throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES ? 'Attribute \"' + b + '\" on tag \"' + a + '\" requires goog.html.SafeUrl, goog.string.Const, or string, value \"' + c + '\" given.' : \"\");\n            }\n          }\n        }\n      }\n    }\n  }\n  c.implementsGoogStringTypedString && (c = c.getTypedStringValue());\n  goog.asserts.assert(\"string\" === typeof c || \"number\" === typeof c, \"String or number value expected, got \" + typeof c + \" with value: \" + c);\n  return b + '=\"' + goog.string.internal.htmlEscape(String(c)) + '\"';\n};\ngoog.html.SafeHtml.getStyleValue_ = function(a) {\n  if (!goog.isObject(a)) {\n    throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES ? 'The \"style\" attribute requires goog.html.SafeStyle or map of style properties, ' + typeof a + \" given: \" + a : \"\");\n  }\n  a instanceof goog.html.SafeStyle || (a = goog.html.SafeStyle.create(a));\n  return goog.html.SafeStyle.unwrap(a);\n};\ngoog.html.SafeHtml.createWithDir = function(a, b, c, d) {\n  b = goog.html.SafeHtml.create(b, c, d);\n  b.dir_ = a;\n  return b;\n};\ngoog.html.SafeHtml.join = function(a, b) {\n  var c = goog.html.SafeHtml.htmlEscape(a), d = c.getDirection(), e = [], f = function(a) {\n    goog.isArray(a) ? goog.array.forEach(a, f) : (a = goog.html.SafeHtml.htmlEscape(a), e.push(goog.html.SafeHtml.unwrap(a)), a = a.getDirection(), d == goog.i18n.bidi.Dir.NEUTRAL ? d = a : a != goog.i18n.bidi.Dir.NEUTRAL && d != a && (d = null));\n  };\n  goog.array.forEach(b, f);\n  return goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(e.join(goog.html.SafeHtml.unwrap(c)), d);\n};\ngoog.html.SafeHtml.concat = function(a) {\n  return goog.html.SafeHtml.join(goog.html.SafeHtml.EMPTY, Array.prototype.slice.call(arguments));\n};\ngoog.html.SafeHtml.concatWithDir = function(a, b) {\n  var c = goog.html.SafeHtml.concat(goog.array.slice(arguments, 1));\n  c.dir_ = a;\n  return c;\n};\ngoog.html.SafeHtml.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ = {};\ngoog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse = function(a, b) {\n  return (new goog.html.SafeHtml).initSecurityPrivateDoNotAccessOrElse_(a, b);\n};\ngoog.html.SafeHtml.prototype.initSecurityPrivateDoNotAccessOrElse_ = function(a, b) {\n  this.privateDoNotAccessOrElseSafeHtmlWrappedValue_ = goog.html.trustedtypes.PRIVATE_DO_NOT_ACCESS_OR_ELSE_POLICY ? goog.html.trustedtypes.PRIVATE_DO_NOT_ACCESS_OR_ELSE_POLICY.createHTML(a) : a;\n  this.dir_ = b;\n  return this;\n};\ngoog.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse = function(a, b, c) {\n  var d = null;\n  var e = \"<\" + a + goog.html.SafeHtml.stringifyAttributes(a, b);\n  null == c ? c = [] : goog.isArray(c) || (c = [c]);\n  goog.dom.tags.isVoidTag(a.toLowerCase()) ? (goog.asserts.assert(!c.length, \"Void tag <\" + a + \"> does not allow content.\"), e += \">\") : (d = goog.html.SafeHtml.concat(c), e += \">\" + goog.html.SafeHtml.unwrap(d) + \"</\" + a + \">\", d = d.getDirection());\n  (a = b && b.dir) && (d = /^(ltr|rtl|auto)$/i.test(a) ? goog.i18n.bidi.Dir.NEUTRAL : null);\n  return goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(e, d);\n};\ngoog.html.SafeHtml.stringifyAttributes = function(a, b) {\n  var c = \"\";\n  if (b) {\n    for (var d in b) {\n      if (!goog.html.SafeHtml.VALID_NAMES_IN_TAG_.test(d)) {\n        throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES ? 'Invalid attribute name \"' + d + '\".' : \"\");\n      }\n      var e = b[d];\n      null != e && (c += \" \" + goog.html.SafeHtml.getAttrNameAndValue_(a, d, e));\n    }\n  }\n  return c;\n};\ngoog.html.SafeHtml.combineAttributes = function(a, b, c) {\n  var d = {}, e;\n  for (e in a) {\n    goog.asserts.assert(e.toLowerCase() == e, \"Must be lower case\"), d[e] = a[e];\n  }\n  for (e in b) {\n    goog.asserts.assert(e.toLowerCase() == e, \"Must be lower case\"), d[e] = b[e];\n  }\n  if (c) {\n    for (e in c) {\n      var f = e.toLowerCase();\n      if (f in a) {\n        throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES ? 'Cannot override \"' + f + '\" attribute, got \"' + e + '\" with value \"' + c[e] + '\"' : \"\");\n      }\n      f in b && delete d[f];\n      d[e] = c[e];\n    }\n  }\n  return d;\n};\ngoog.html.SafeHtml.DOCTYPE_HTML = goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(\"<!DOCTYPE html>\", goog.i18n.bidi.Dir.NEUTRAL);\ngoog.html.SafeHtml.EMPTY = goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(\"\", goog.i18n.bidi.Dir.NEUTRAL);\ngoog.html.SafeHtml.BR = goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(\"<br>\", goog.i18n.bidi.Dir.NEUTRAL);\ngoog.html.uncheckedconversions = {};\ngoog.html.uncheckedconversions.safeHtmlFromStringKnownToSatisfyTypeContract = function(a, b, c) {\n  goog.asserts.assertString(goog.string.Const.unwrap(a), \"must provide justification\");\n  goog.asserts.assert(!goog.string.internal.isEmptyOrWhitespace(goog.string.Const.unwrap(a)), \"must provide non-empty justification\");\n  return goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(b, c || null);\n};\ngoog.html.uncheckedconversions.safeScriptFromStringKnownToSatisfyTypeContract = function(a, b) {\n  goog.asserts.assertString(goog.string.Const.unwrap(a), \"must provide justification\");\n  goog.asserts.assert(!goog.string.internal.isEmptyOrWhitespace(goog.string.Const.unwrap(a)), \"must provide non-empty justification\");\n  return goog.html.SafeScript.createSafeScriptSecurityPrivateDoNotAccessOrElse(b);\n};\ngoog.html.uncheckedconversions.safeStyleFromStringKnownToSatisfyTypeContract = function(a, b) {\n  goog.asserts.assertString(goog.string.Const.unwrap(a), \"must provide justification\");\n  goog.asserts.assert(!goog.string.internal.isEmptyOrWhitespace(goog.string.Const.unwrap(a)), \"must provide non-empty justification\");\n  return goog.html.SafeStyle.createSafeStyleSecurityPrivateDoNotAccessOrElse(b);\n};\ngoog.html.uncheckedconversions.safeStyleSheetFromStringKnownToSatisfyTypeContract = function(a, b) {\n  goog.asserts.assertString(goog.string.Const.unwrap(a), \"must provide justification\");\n  goog.asserts.assert(!goog.string.internal.isEmptyOrWhitespace(goog.string.Const.unwrap(a)), \"must provide non-empty justification\");\n  return goog.html.SafeStyleSheet.createSafeStyleSheetSecurityPrivateDoNotAccessOrElse(b);\n};\ngoog.html.uncheckedconversions.safeUrlFromStringKnownToSatisfyTypeContract = function(a, b) {\n  goog.asserts.assertString(goog.string.Const.unwrap(a), \"must provide justification\");\n  goog.asserts.assert(!goog.string.internal.isEmptyOrWhitespace(goog.string.Const.unwrap(a)), \"must provide non-empty justification\");\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(b);\n};\ngoog.html.uncheckedconversions.trustedResourceUrlFromStringKnownToSatisfyTypeContract = function(a, b) {\n  goog.asserts.assertString(goog.string.Const.unwrap(a), \"must provide justification\");\n  goog.asserts.assert(!goog.string.internal.isEmptyOrWhitespace(goog.string.Const.unwrap(a)), \"must provide non-empty justification\");\n  return goog.html.TrustedResourceUrl.createTrustedResourceUrlSecurityPrivateDoNotAccessOrElse(b);\n};\ngoog.dom.safe = {};\ngoog.dom.safe.InsertAdjacentHtmlPosition = {AFTERBEGIN:\"afterbegin\", AFTEREND:\"afterend\", BEFOREBEGIN:\"beforebegin\", BEFOREEND:\"beforeend\"};\ngoog.dom.safe.insertAdjacentHtml = function(a, b, c) {\n  a.insertAdjacentHTML(b, goog.html.SafeHtml.unwrapTrustedHTML(c));\n};\ngoog.dom.safe.SET_INNER_HTML_DISALLOWED_TAGS_ = {MATH:!0, SCRIPT:!0, STYLE:!0, SVG:!0, TEMPLATE:!0};\ngoog.dom.safe.isInnerHtmlCleanupRecursive_ = goog.functions.cacheReturnValue(function() {\n  if (goog.DEBUG && \"undefined\" === typeof document) {\n    return !1;\n  }\n  var a = document.createElement(\"div\"), b = document.createElement(\"div\");\n  b.appendChild(document.createElement(\"div\"));\n  a.appendChild(b);\n  if (goog.DEBUG && !a.firstChild) {\n    return !1;\n  }\n  b = a.firstChild.firstChild;\n  a.innerHTML = goog.html.SafeHtml.unwrapTrustedHTML(goog.html.SafeHtml.EMPTY);\n  return !b.parentElement;\n});\ngoog.dom.safe.unsafeSetInnerHtmlDoNotUseOrElse = function(a, b) {\n  if (goog.dom.safe.isInnerHtmlCleanupRecursive_()) {\n    for (; a.lastChild;) {\n      a.removeChild(a.lastChild);\n    }\n  }\n  a.innerHTML = goog.html.SafeHtml.unwrapTrustedHTML(b);\n};\ngoog.dom.safe.setInnerHtml = function(a, b) {\n  if (goog.asserts.ENABLE_ASSERTS) {\n    var c = a.tagName.toUpperCase();\n    if (goog.dom.safe.SET_INNER_HTML_DISALLOWED_TAGS_[c]) {\n      throw Error(\"goog.dom.safe.setInnerHtml cannot be used to set content of \" + a.tagName + \".\");\n    }\n  }\n  goog.dom.safe.unsafeSetInnerHtmlDoNotUseOrElse(a, b);\n};\ngoog.dom.safe.setOuterHtml = function(a, b) {\n  a.outerHTML = goog.html.SafeHtml.unwrapTrustedHTML(b);\n};\ngoog.dom.safe.setFormElementAction = function(a, b) {\n  var c = b instanceof goog.html.SafeUrl ? b : goog.html.SafeUrl.sanitizeAssertUnchanged(b);\n  goog.dom.asserts.assertIsHTMLFormElement(a).action = goog.html.SafeUrl.unwrapTrustedURL(c);\n};\ngoog.dom.safe.setButtonFormAction = function(a, b) {\n  var c = b instanceof goog.html.SafeUrl ? b : goog.html.SafeUrl.sanitizeAssertUnchanged(b);\n  goog.dom.asserts.assertIsHTMLButtonElement(a).formAction = goog.html.SafeUrl.unwrapTrustedURL(c);\n};\ngoog.dom.safe.setInputFormAction = function(a, b) {\n  var c = b instanceof goog.html.SafeUrl ? b : goog.html.SafeUrl.sanitizeAssertUnchanged(b);\n  goog.dom.asserts.assertIsHTMLInputElement(a).formAction = goog.html.SafeUrl.unwrapTrustedURL(c);\n};\ngoog.dom.safe.setStyle = function(a, b) {\n  a.style.cssText = goog.html.SafeStyle.unwrap(b);\n};\ngoog.dom.safe.documentWrite = function(a, b) {\n  a.write(goog.html.SafeHtml.unwrapTrustedHTML(b));\n};\ngoog.dom.safe.setAnchorHref = function(a, b) {\n  goog.dom.asserts.assertIsHTMLAnchorElement(a);\n  var c = b instanceof goog.html.SafeUrl ? b : goog.html.SafeUrl.sanitizeAssertUnchanged(b);\n  a.href = goog.html.SafeUrl.unwrapTrustedURL(c);\n};\ngoog.dom.safe.setImageSrc = function(a, b) {\n  goog.dom.asserts.assertIsHTMLImageElement(a);\n  if (b instanceof goog.html.SafeUrl) {\n    var c = b;\n  } else {\n    c = /^data:image\\//i.test(b), c = goog.html.SafeUrl.sanitizeAssertUnchanged(b, c);\n  }\n  a.src = goog.html.SafeUrl.unwrapTrustedURL(c);\n};\ngoog.dom.safe.setAudioSrc = function(a, b) {\n  goog.dom.asserts.assertIsHTMLAudioElement(a);\n  if (b instanceof goog.html.SafeUrl) {\n    var c = b;\n  } else {\n    c = /^data:audio\\//i.test(b), c = goog.html.SafeUrl.sanitizeAssertUnchanged(b, c);\n  }\n  a.src = goog.html.SafeUrl.unwrapTrustedURL(c);\n};\ngoog.dom.safe.setVideoSrc = function(a, b) {\n  goog.dom.asserts.assertIsHTMLVideoElement(a);\n  if (b instanceof goog.html.SafeUrl) {\n    var c = b;\n  } else {\n    c = /^data:video\\//i.test(b), c = goog.html.SafeUrl.sanitizeAssertUnchanged(b, c);\n  }\n  a.src = goog.html.SafeUrl.unwrapTrustedURL(c);\n};\ngoog.dom.safe.setEmbedSrc = function(a, b) {\n  goog.dom.asserts.assertIsHTMLEmbedElement(a);\n  a.src = goog.html.TrustedResourceUrl.unwrapTrustedScriptURL(b);\n};\ngoog.dom.safe.setFrameSrc = function(a, b) {\n  goog.dom.asserts.assertIsHTMLFrameElement(a);\n  a.src = goog.html.TrustedResourceUrl.unwrapTrustedURL(b);\n};\ngoog.dom.safe.setIframeSrc = function(a, b) {\n  goog.dom.asserts.assertIsHTMLIFrameElement(a);\n  a.src = goog.html.TrustedResourceUrl.unwrapTrustedURL(b);\n};\ngoog.dom.safe.setIframeSrcdoc = function(a, b) {\n  goog.dom.asserts.assertIsHTMLIFrameElement(a);\n  a.srcdoc = goog.html.SafeHtml.unwrapTrustedHTML(b);\n};\ngoog.dom.safe.setLinkHrefAndRel = function(a, b, c) {\n  goog.dom.asserts.assertIsHTMLLinkElement(a);\n  a.rel = c;\n  goog.string.internal.caseInsensitiveContains(c, \"stylesheet\") ? (goog.asserts.assert(b instanceof goog.html.TrustedResourceUrl, 'URL must be TrustedResourceUrl because \"rel\" contains \"stylesheet\"'), a.href = goog.html.TrustedResourceUrl.unwrapTrustedURL(b)) : a.href = b instanceof goog.html.TrustedResourceUrl ? goog.html.TrustedResourceUrl.unwrapTrustedURL(b) : b instanceof goog.html.SafeUrl ? goog.html.SafeUrl.unwrapTrustedURL(b) : goog.html.SafeUrl.unwrapTrustedURL(goog.html.SafeUrl.sanitizeAssertUnchanged(b));\n};\ngoog.dom.safe.setObjectData = function(a, b) {\n  goog.dom.asserts.assertIsHTMLObjectElement(a);\n  a.data = goog.html.TrustedResourceUrl.unwrapTrustedScriptURL(b);\n};\ngoog.dom.safe.setScriptSrc = function(a, b) {\n  goog.dom.asserts.assertIsHTMLScriptElement(a);\n  a.src = goog.html.TrustedResourceUrl.unwrapTrustedScriptURL(b);\n  var c = goog.getScriptNonce();\n  c && a.setAttribute(\"nonce\", c);\n};\ngoog.dom.safe.setScriptContent = function(a, b) {\n  goog.dom.asserts.assertIsHTMLScriptElement(a);\n  a.text = goog.html.SafeScript.unwrapTrustedScript(b);\n  var c = goog.getScriptNonce();\n  c && a.setAttribute(\"nonce\", c);\n};\ngoog.dom.safe.setLocationHref = function(a, b) {\n  goog.dom.asserts.assertIsLocation(a);\n  var c = b instanceof goog.html.SafeUrl ? b : goog.html.SafeUrl.sanitizeAssertUnchanged(b);\n  a.href = goog.html.SafeUrl.unwrapTrustedURL(c);\n};\ngoog.dom.safe.assignLocation = function(a, b) {\n  goog.dom.asserts.assertIsLocation(a);\n  var c = b instanceof goog.html.SafeUrl ? b : goog.html.SafeUrl.sanitizeAssertUnchanged(b);\n  a.assign(goog.html.SafeUrl.unwrapTrustedURL(c));\n};\ngoog.dom.safe.replaceLocation = function(a, b) {\n  goog.dom.asserts.assertIsLocation(a);\n  var c = b instanceof goog.html.SafeUrl ? b : goog.html.SafeUrl.sanitizeAssertUnchanged(b);\n  a.replace(goog.html.SafeUrl.unwrapTrustedURL(c));\n};\ngoog.dom.safe.openInWindow = function(a, b, c, d, e) {\n  a = a instanceof goog.html.SafeUrl ? a : goog.html.SafeUrl.sanitizeAssertUnchanged(a);\n  return (b || goog.global).open(goog.html.SafeUrl.unwrapTrustedURL(a), c ? goog.string.Const.unwrap(c) : \"\", d, e);\n};\ngoog.dom.safe.parseFromStringHtml = function(a, b) {\n  return goog.dom.safe.parseFromString(a, b, \"text/html\");\n};\ngoog.dom.safe.parseFromString = function(a, b, c) {\n  return a.parseFromString(goog.html.SafeHtml.unwrapTrustedHTML(b), c);\n};\ngoog.dom.safe.createImageFromBlob = function(a) {\n  if (!/^image\\/.*/g.test(a.type)) {\n    throw Error(\"goog.dom.safe.createImageFromBlob only accepts MIME type image/.*.\");\n  }\n  var b = goog.global.URL.createObjectURL(a);\n  a = new goog.global.Image;\n  a.onload = function() {\n    goog.global.URL.revokeObjectURL(b);\n  };\n  goog.dom.safe.setImageSrc(a, goog.html.uncheckedconversions.safeUrlFromStringKnownToSatisfyTypeContract(goog.string.Const.from(\"Image blob URL.\"), b));\n  return a;\n};\ngoog.string.DETECT_DOUBLE_ESCAPING = !1;\ngoog.string.FORCE_NON_DOM_HTML_UNESCAPING = !1;\ngoog.string.Unicode = {NBSP:\"\\u00a0\"};\ngoog.string.startsWith = goog.string.internal.startsWith;\ngoog.string.endsWith = goog.string.internal.endsWith;\ngoog.string.caseInsensitiveStartsWith = goog.string.internal.caseInsensitiveStartsWith;\ngoog.string.caseInsensitiveEndsWith = goog.string.internal.caseInsensitiveEndsWith;\ngoog.string.caseInsensitiveEquals = goog.string.internal.caseInsensitiveEquals;\ngoog.string.subs = function(a, b) {\n  for (var c = a.split(\"%s\"), d = \"\", e = Array.prototype.slice.call(arguments, 1); e.length && 1 < c.length;) {\n    d += c.shift() + e.shift();\n  }\n  return d + c.join(\"%s\");\n};\ngoog.string.collapseWhitespace = function(a) {\n  return a.replace(/[\\s\\xa0]+/g, \" \").replace(/^\\s+|\\s+$/g, \"\");\n};\ngoog.string.isEmptyOrWhitespace = goog.string.internal.isEmptyOrWhitespace;\ngoog.string.isEmptyString = function(a) {\n  return 0 == a.length;\n};\ngoog.string.isEmpty = goog.string.isEmptyOrWhitespace;\ngoog.string.isEmptyOrWhitespaceSafe = function(a) {\n  return goog.string.isEmptyOrWhitespace(goog.string.makeSafe(a));\n};\ngoog.string.isEmptySafe = goog.string.isEmptyOrWhitespaceSafe;\ngoog.string.isBreakingWhitespace = function(a) {\n  return !/[^\\t\\n\\r ]/.test(a);\n};\ngoog.string.isAlpha = function(a) {\n  return !/[^a-zA-Z]/.test(a);\n};\ngoog.string.isNumeric = function(a) {\n  return !/[^0-9]/.test(a);\n};\ngoog.string.isAlphaNumeric = function(a) {\n  return !/[^a-zA-Z0-9]/.test(a);\n};\ngoog.string.isSpace = function(a) {\n  return \" \" == a;\n};\ngoog.string.isUnicodeChar = function(a) {\n  return 1 == a.length && \" \" <= a && \"~\" >= a || \"\\u0080\" <= a && \"\\ufffd\" >= a;\n};\ngoog.string.stripNewlines = function(a) {\n  return a.replace(/(\\r\\n|\\r|\\n)+/g, \" \");\n};\ngoog.string.canonicalizeNewlines = function(a) {\n  return a.replace(/(\\r\\n|\\r|\\n)/g, \"\\n\");\n};\ngoog.string.normalizeWhitespace = function(a) {\n  return a.replace(/\\xa0|\\s/g, \" \");\n};\ngoog.string.normalizeSpaces = function(a) {\n  return a.replace(/\\xa0|[ \\t]+/g, \" \");\n};\ngoog.string.collapseBreakingSpaces = function(a) {\n  return a.replace(/[\\t\\r\\n ]+/g, \" \").replace(/^[\\t\\r\\n ]+|[\\t\\r\\n ]+$/g, \"\");\n};\ngoog.string.trim = goog.string.internal.trim;\ngoog.string.trimLeft = function(a) {\n  return a.replace(/^[\\s\\xa0]+/, \"\");\n};\ngoog.string.trimRight = function(a) {\n  return a.replace(/[\\s\\xa0]+$/, \"\");\n};\ngoog.string.caseInsensitiveCompare = goog.string.internal.caseInsensitiveCompare;\ngoog.string.numberAwareCompare_ = function(a, b, c) {\n  if (a == b) {\n    return 0;\n  }\n  if (!a) {\n    return -1;\n  }\n  if (!b) {\n    return 1;\n  }\n  for (var d = a.toLowerCase().match(c), e = b.toLowerCase().match(c), f = Math.min(d.length, e.length), g = 0; g < f; g++) {\n    c = d[g];\n    var h = e[g];\n    if (c != h) {\n      return a = parseInt(c, 10), !isNaN(a) && (b = parseInt(h, 10), !isNaN(b) && a - b) ? a - b : c < h ? -1 : 1;\n    }\n  }\n  return d.length != e.length ? d.length - e.length : a < b ? -1 : 1;\n};\ngoog.string.intAwareCompare = function(a, b) {\n  return goog.string.numberAwareCompare_(a, b, /\\d+|\\D+/g);\n};\ngoog.string.floatAwareCompare = function(a, b) {\n  return goog.string.numberAwareCompare_(a, b, /\\d+|\\.\\d+|\\D+/g);\n};\ngoog.string.numerateCompare = goog.string.floatAwareCompare;\ngoog.string.urlEncode = function(a) {\n  return encodeURIComponent(String(a));\n};\ngoog.string.urlDecode = function(a) {\n  return decodeURIComponent(a.replace(/\\+/g, \" \"));\n};\ngoog.string.newLineToBr = goog.string.internal.newLineToBr;\ngoog.string.htmlEscape = function(a, b) {\n  a = goog.string.internal.htmlEscape(a, b);\n  goog.string.DETECT_DOUBLE_ESCAPING && (a = a.replace(goog.string.E_RE_, \"&#101;\"));\n  return a;\n};\ngoog.string.E_RE_ = /e/g;\ngoog.string.unescapeEntities = function(a) {\n  return goog.string.contains(a, \"&\") ? !goog.string.FORCE_NON_DOM_HTML_UNESCAPING && \"document\" in goog.global ? goog.string.unescapeEntitiesUsingDom_(a) : goog.string.unescapePureXmlEntities_(a) : a;\n};\ngoog.string.unescapeEntitiesWithDocument = function(a, b) {\n  return goog.string.contains(a, \"&\") ? goog.string.unescapeEntitiesUsingDom_(a, b) : a;\n};\ngoog.string.unescapeEntitiesUsingDom_ = function(a, b) {\n  var c = {\"&amp;\":\"&\", \"&lt;\":\"<\", \"&gt;\":\">\", \"&quot;\":'\"'};\n  var d = b ? b.createElement(\"div\") : goog.global.document.createElement(\"div\");\n  return a.replace(goog.string.HTML_ENTITY_PATTERN_, function(a, b) {\n    var e = c[a];\n    if (e) {\n      return e;\n    }\n    if (\"#\" == b.charAt(0)) {\n      var f = Number(\"0\" + b.substr(1));\n      isNaN(f) || (e = String.fromCharCode(f));\n    }\n    e || (goog.dom.safe.setInnerHtml(d, goog.html.uncheckedconversions.safeHtmlFromStringKnownToSatisfyTypeContract(goog.string.Const.from(\"Single HTML entity.\"), a + \" \")), e = d.firstChild.nodeValue.slice(0, -1));\n    return c[a] = e;\n  });\n};\ngoog.string.unescapePureXmlEntities_ = function(a) {\n  return a.replace(/&([^;]+);/g, function(a, c) {\n    switch(c) {\n      case \"amp\":\n        return \"&\";\n      case \"lt\":\n        return \"<\";\n      case \"gt\":\n        return \">\";\n      case \"quot\":\n        return '\"';\n      default:\n        if (\"#\" == c.charAt(0)) {\n          var b = Number(\"0\" + c.substr(1));\n          if (!isNaN(b)) {\n            return String.fromCharCode(b);\n          }\n        }\n        return a;\n    }\n  });\n};\ngoog.string.HTML_ENTITY_PATTERN_ = /&([^;\\s<&]+);?/g;\ngoog.string.whitespaceEscape = function(a, b) {\n  return goog.string.newLineToBr(a.replace(/  /g, \" &#160;\"), b);\n};\ngoog.string.preserveSpaces = function(a) {\n  return a.replace(/(^|[\\n ]) /g, \"$1\" + goog.string.Unicode.NBSP);\n};\ngoog.string.stripQuotes = function(a, b) {\n  for (var c = b.length, d = 0; d < c; d++) {\n    var e = 1 == c ? b : b.charAt(d);\n    if (a.charAt(0) == e && a.charAt(a.length - 1) == e) {\n      return a.substring(1, a.length - 1);\n    }\n  }\n  return a;\n};\ngoog.string.truncate = function(a, b, c) {\n  c && (a = goog.string.unescapeEntities(a));\n  a.length > b && (a = a.substring(0, b - 3) + \"...\");\n  c && (a = goog.string.htmlEscape(a));\n  return a;\n};\ngoog.string.truncateMiddle = function(a, b, c, d) {\n  c && (a = goog.string.unescapeEntities(a));\n  if (d && a.length > b) {\n    d > b && (d = b);\n    var e = a.length - d;\n    a = a.substring(0, b - d) + \"...\" + a.substring(e);\n  } else {\n    a.length > b && (d = Math.floor(b / 2), e = a.length - d, a = a.substring(0, d + b % 2) + \"...\" + a.substring(e));\n  }\n  c && (a = goog.string.htmlEscape(a));\n  return a;\n};\ngoog.string.specialEscapeChars_ = {\"\\x00\":\"\\\\0\", \"\\b\":\"\\\\b\", \"\\f\":\"\\\\f\", \"\\n\":\"\\\\n\", \"\\r\":\"\\\\r\", \"\\t\":\"\\\\t\", \"\\x0B\":\"\\\\x0B\", '\"':'\\\\\"', \"\\\\\":\"\\\\\\\\\", \"<\":\"\\\\u003C\"};\ngoog.string.jsEscapeCache_ = {\"'\":\"\\\\'\"};\ngoog.string.quote = function(a) {\n  a = String(a);\n  for (var b = ['\"'], c = 0; c < a.length; c++) {\n    var d = a.charAt(c), e = d.charCodeAt(0);\n    b[c + 1] = goog.string.specialEscapeChars_[d] || (31 < e && 127 > e ? d : goog.string.escapeChar(d));\n  }\n  b.push('\"');\n  return b.join(\"\");\n};\ngoog.string.escapeString = function(a) {\n  for (var b = [], c = 0; c < a.length; c++) {\n    b[c] = goog.string.escapeChar(a.charAt(c));\n  }\n  return b.join(\"\");\n};\ngoog.string.escapeChar = function(a) {\n  if (a in goog.string.jsEscapeCache_) {\n    return goog.string.jsEscapeCache_[a];\n  }\n  if (a in goog.string.specialEscapeChars_) {\n    return goog.string.jsEscapeCache_[a] = goog.string.specialEscapeChars_[a];\n  }\n  var b = a.charCodeAt(0);\n  if (31 < b && 127 > b) {\n    var c = a;\n  } else {\n    if (256 > b) {\n      if (c = \"\\\\x\", 16 > b || 256 < b) {\n        c += \"0\";\n      }\n    } else {\n      c = \"\\\\u\", 4096 > b && (c += \"0\");\n    }\n    c += b.toString(16).toUpperCase();\n  }\n  return goog.string.jsEscapeCache_[a] = c;\n};\ngoog.string.contains = goog.string.internal.contains;\ngoog.string.caseInsensitiveContains = goog.string.internal.caseInsensitiveContains;\ngoog.string.countOf = function(a, b) {\n  return a && b ? a.split(b).length - 1 : 0;\n};\ngoog.string.removeAt = function(a, b, c) {\n  var d = a;\n  0 <= b && b < a.length && 0 < c && (d = a.substr(0, b) + a.substr(b + c, a.length - b - c));\n  return d;\n};\ngoog.string.remove = function(a, b) {\n  return a.replace(b, \"\");\n};\ngoog.string.removeAll = function(a, b) {\n  var c = new RegExp(goog.string.regExpEscape(b), \"g\");\n  return a.replace(c, \"\");\n};\ngoog.string.replaceAll = function(a, b, c) {\n  b = new RegExp(goog.string.regExpEscape(b), \"g\");\n  return a.replace(b, c.replace(/\\$/g, \"$$$$\"));\n};\ngoog.string.regExpEscape = function(a) {\n  return String(a).replace(/([-()\\[\\]{}+?*.$\\^|,:#<!\\\\])/g, \"\\\\$1\").replace(/\\x08/g, \"\\\\x08\");\n};\ngoog.string.repeat = String.prototype.repeat ? function(a, b) {\n  return a.repeat(b);\n} : function(a, b) {\n  return Array(b + 1).join(a);\n};\ngoog.string.padNumber = function(a, b, c) {\n  a = void 0 !== c ? a.toFixed(c) : String(a);\n  c = a.indexOf(\".\");\n  -1 == c && (c = a.length);\n  return goog.string.repeat(\"0\", Math.max(0, b - c)) + a;\n};\ngoog.string.makeSafe = function(a) {\n  return null == a ? \"\" : String(a);\n};\ngoog.string.buildString = function(a) {\n  return Array.prototype.join.call(arguments, \"\");\n};\ngoog.string.getRandomString = function() {\n  return Math.floor(2147483648 * Math.random()).toString(36) + Math.abs(Math.floor(2147483648 * Math.random()) ^ goog.now()).toString(36);\n};\ngoog.string.compareVersions = goog.string.internal.compareVersions;\ngoog.string.hashCode = function(a) {\n  for (var b = 0, c = 0; c < a.length; ++c) {\n    b = 31 * b + a.charCodeAt(c) >>> 0;\n  }\n  return b;\n};\ngoog.string.uniqueStringCounter_ = 2147483648 * Math.random() | 0;\ngoog.string.createUniqueString = function() {\n  return \"goog_\" + goog.string.uniqueStringCounter_++;\n};\ngoog.string.toNumber = function(a) {\n  var b = Number(a);\n  return 0 == b && goog.string.isEmptyOrWhitespace(a) ? NaN : b;\n};\ngoog.string.isLowerCamelCase = function(a) {\n  return /^[a-z]+([A-Z][a-z]*)*$/.test(a);\n};\ngoog.string.isUpperCamelCase = function(a) {\n  return /^([A-Z][a-z]*)+$/.test(a);\n};\ngoog.string.toCamelCase = function(a) {\n  return String(a).replace(/\\-([a-z])/g, function(a, c) {\n    return c.toUpperCase();\n  });\n};\ngoog.string.toSelectorCase = function(a) {\n  return String(a).replace(/([A-Z])/g, \"-$1\").toLowerCase();\n};\ngoog.string.toTitleCase = function(a, b) {\n  var c = \"string\" === typeof b ? goog.string.regExpEscape(b) : \"\\\\s\";\n  return a.replace(new RegExp(\"(^\" + (c ? \"|[\" + c + \"]+\" : \"\") + \")([a-z])\", \"g\"), function(a, b, c) {\n    return b + c.toUpperCase();\n  });\n};\ngoog.string.capitalize = function(a) {\n  return String(a.charAt(0)).toUpperCase() + String(a.substr(1)).toLowerCase();\n};\ngoog.string.parseInt = function(a) {\n  isFinite(a) && (a = String(a));\n  return \"string\" === typeof a ? /^\\s*-?0x/i.test(a) ? parseInt(a, 16) : parseInt(a, 10) : NaN;\n};\ngoog.string.splitLimit = function(a, b, c) {\n  a = a.split(b);\n  for (var d = []; 0 < c && a.length;) {\n    d.push(a.shift()), c--;\n  }\n  a.length && d.push(a.join(b));\n  return d;\n};\ngoog.string.lastComponent = function(a, b) {\n  if (b) {\n    \"string\" == typeof b && (b = [b]);\n  } else {\n    return a;\n  }\n  for (var c = -1, d = 0; d < b.length; d++) {\n    if (\"\" != b[d]) {\n      var e = a.lastIndexOf(b[d]);\n      e > c && (c = e);\n    }\n  }\n  return -1 == c ? a : a.slice(c + 1);\n};\ngoog.string.editDistance = function(a, b) {\n  var c = [], d = [];\n  if (a == b) {\n    return 0;\n  }\n  if (!a.length || !b.length) {\n    return Math.max(a.length, b.length);\n  }\n  for (var e = 0; e < b.length + 1; e++) {\n    c[e] = e;\n  }\n  for (e = 0; e < a.length; e++) {\n    d[0] = e + 1;\n    for (var f = 0; f < b.length; f++) {\n      d[f + 1] = Math.min(d[f] + 1, c[f + 1] + 1, c[f] + Number(a[e] != b[f]));\n    }\n    for (f = 0; f < c.length; f++) {\n      c[f] = d[f];\n    }\n  }\n  return d[b.length];\n};\ngoog.proto2 = {};\ngoog.proto2.FieldDescriptor = function(a, b, c) {\n  this.parent_ = a;\n  goog.asserts.assert(goog.string.isNumeric(b));\n  this.tag_ = b;\n  this.name_ = c.name;\n  this.isPacked_ = !!c.packed;\n  this.isRepeated_ = !!c.repeated;\n  this.isRequired_ = !!c.required;\n  this.fieldType_ = c.fieldType;\n  this.nativeType_ = c.type;\n  this.deserializationConversionPermitted_ = !1;\n  switch(this.fieldType_) {\n    case goog.proto2.FieldDescriptor.FieldType.INT64:\n    case goog.proto2.FieldDescriptor.FieldType.UINT64:\n    case goog.proto2.FieldDescriptor.FieldType.FIXED64:\n    case goog.proto2.FieldDescriptor.FieldType.SFIXED64:\n    case goog.proto2.FieldDescriptor.FieldType.SINT64:\n    case goog.proto2.FieldDescriptor.FieldType.FLOAT:\n    case goog.proto2.FieldDescriptor.FieldType.DOUBLE:\n      this.deserializationConversionPermitted_ = !0;\n  }\n  this.defaultValue_ = c.defaultValue;\n};\ngoog.proto2.FieldDescriptor.FieldType = {DOUBLE:1, FLOAT:2, INT64:3, UINT64:4, INT32:5, FIXED64:6, FIXED32:7, BOOL:8, STRING:9, GROUP:10, MESSAGE:11, BYTES:12, UINT32:13, ENUM:14, SFIXED32:15, SFIXED64:16, SINT32:17, SINT64:18};\ngoog.proto2.FieldDescriptor.prototype.getTag = function() {\n  return this.tag_;\n};\ngoog.proto2.FieldDescriptor.prototype.getContainingType = function() {\n  return this.parent_.prototype.getDescriptor();\n};\ngoog.proto2.FieldDescriptor.prototype.getName = function() {\n  return this.name_;\n};\ngoog.proto2.FieldDescriptor.prototype.getDefaultValue = function() {\n  if (void 0 === this.defaultValue_) {\n    var a = this.nativeType_;\n    if (a === Boolean) {\n      this.defaultValue_ = !1;\n    } else {\n      if (a === Number) {\n        this.defaultValue_ = 0;\n      } else {\n        if (a === String) {\n          this.defaultValue_ = this.deserializationConversionPermitted_ ? \"0\" : \"\";\n        } else {\n          return new a;\n        }\n      }\n    }\n  }\n  return this.defaultValue_;\n};\ngoog.proto2.FieldDescriptor.prototype.getFieldType = function() {\n  return this.fieldType_;\n};\ngoog.proto2.FieldDescriptor.prototype.getNativeType = function() {\n  return this.nativeType_;\n};\ngoog.proto2.FieldDescriptor.prototype.deserializationConversionPermitted = function() {\n  return this.deserializationConversionPermitted_;\n};\ngoog.proto2.FieldDescriptor.prototype.getFieldMessageType = function() {\n  return this.nativeType_.prototype.getDescriptor();\n};\ngoog.proto2.FieldDescriptor.prototype.isCompositeType = function() {\n  return this.fieldType_ == goog.proto2.FieldDescriptor.FieldType.MESSAGE || this.fieldType_ == goog.proto2.FieldDescriptor.FieldType.GROUP;\n};\ngoog.proto2.FieldDescriptor.prototype.isPacked = function() {\n  return this.isPacked_;\n};\ngoog.proto2.FieldDescriptor.prototype.isRepeated = function() {\n  return this.isRepeated_;\n};\ngoog.proto2.FieldDescriptor.prototype.isRequired = function() {\n  return this.isRequired_;\n};\ngoog.proto2.FieldDescriptor.prototype.isOptional = function() {\n  return !this.isRepeated_ && !this.isRequired_;\n};\ngoog.proto2.Descriptor = function(a, b, c) {\n  this.messageType_ = a;\n  this.name_ = b.name || null;\n  this.fullName_ = b.fullName || null;\n  this.containingType_ = b.containingType;\n  this.fields_ = {};\n  for (a = 0; a < c.length; a++) {\n    b = c[a], this.fields_[b.getTag()] = b;\n  }\n};\ngoog.proto2.Descriptor.prototype.getName = function() {\n  return this.name_;\n};\ngoog.proto2.Descriptor.prototype.getFullName = function() {\n  return this.fullName_;\n};\ngoog.proto2.Descriptor.prototype.getContainingType = function() {\n  return this.containingType_ ? this.containingType_.getDescriptor() : null;\n};\ngoog.proto2.Descriptor.prototype.getFields = function() {\n  var a = goog.object.getValues(this.fields_);\n  goog.array.sort(a, function(a, c) {\n    return a.getTag() - c.getTag();\n  });\n  return a;\n};\ngoog.proto2.Descriptor.prototype.getFieldsMap = function() {\n  return this.fields_;\n};\ngoog.proto2.Descriptor.prototype.findFieldByName = function(a) {\n  return goog.object.findValue(this.fields_, function(b, c, d) {\n    return b.getName() == a;\n  }) || null;\n};\ngoog.proto2.Descriptor.prototype.findFieldByTag = function(a) {\n  goog.asserts.assert(goog.string.isNumeric(a));\n  return this.fields_[parseInt(a, 10)] || null;\n};\ngoog.proto2.Descriptor.prototype.createMessageInstance = function() {\n  return new this.messageType_;\n};\ngoog.proto2.Message = function() {\n  this.values_ = {};\n  this.fields_ = this.getDescriptor().getFieldsMap();\n  this.deserializedFields_ = this.lazyDeserializer_ = null;\n};\ngoog.proto2.Message.FieldType = {DOUBLE:1, FLOAT:2, INT64:3, UINT64:4, INT32:5, FIXED64:6, FIXED32:7, BOOL:8, STRING:9, GROUP:10, MESSAGE:11, BYTES:12, UINT32:13, ENUM:14, SFIXED32:15, SFIXED64:16, SINT32:17, SINT64:18};\ngoog.proto2.Message.prototype.initializeForLazyDeserializer = function(a, b) {\n  this.lazyDeserializer_ = a;\n  this.values_ = b;\n  this.deserializedFields_ = {};\n};\ngoog.proto2.Message.prototype.setUnknown = function(a, b) {\n  goog.asserts.assert(!this.fields_[a], \"Field is not unknown in this message\");\n  goog.asserts.assert(1 <= a, \"Tag \" + a + ' has value \"' + b + '\" in descriptor ' + this.getDescriptor().getName());\n  goog.asserts.assert(null !== b, \"Value cannot be null\");\n  this.values_[a] = b;\n  this.deserializedFields_ && delete this.deserializedFields_[a];\n};\ngoog.proto2.Message.prototype.forEachUnknown = function(a, b) {\n  var c = b || this, d;\n  for (d in this.values_) {\n    var e = Number(d);\n    this.fields_[e] || a.call(c, e, this.values_[d]);\n  }\n};\ngoog.proto2.Message.prototype.getDescriptor = goog.abstractMethod;\ngoog.proto2.Message.prototype.has = function(a) {\n  goog.asserts.assert(a.getContainingType() == this.getDescriptor(), \"The current message does not contain the given field\");\n  return this.has$Value(a.getTag());\n};\ngoog.proto2.Message.prototype.arrayOf = function(a) {\n  goog.asserts.assert(a.getContainingType() == this.getDescriptor(), \"The current message does not contain the given field\");\n  return this.array$Values(a.getTag());\n};\ngoog.proto2.Message.prototype.countOf = function(a) {\n  goog.asserts.assert(a.getContainingType() == this.getDescriptor(), \"The current message does not contain the given field\");\n  return this.count$Values(a.getTag());\n};\ngoog.proto2.Message.prototype.get = function(a, b) {\n  goog.asserts.assert(a.getContainingType() == this.getDescriptor(), \"The current message does not contain the given field\");\n  return this.get$Value(a.getTag(), b);\n};\ngoog.proto2.Message.prototype.getOrDefault = function(a, b) {\n  goog.asserts.assert(a.getContainingType() == this.getDescriptor(), \"The current message does not contain the given field\");\n  return this.get$ValueOrDefault(a.getTag(), b);\n};\ngoog.proto2.Message.prototype.set = function(a, b) {\n  goog.asserts.assert(a.getContainingType() == this.getDescriptor(), \"The current message does not contain the given field\");\n  this.set$Value(a.getTag(), b);\n};\ngoog.proto2.Message.prototype.add = function(a, b) {\n  goog.asserts.assert(a.getContainingType() == this.getDescriptor(), \"The current message does not contain the given field\");\n  this.add$Value(a.getTag(), b);\n};\ngoog.proto2.Message.prototype.clear = function(a) {\n  goog.asserts.assert(a.getContainingType() == this.getDescriptor(), \"The current message does not contain the given field\");\n  this.clear$Field(a.getTag());\n};\ngoog.proto2.Message.prototype.equals = function(a) {\n  if (!a || this.constructor != a.constructor) {\n    return !1;\n  }\n  for (var b = this.getDescriptor().getFields(), c = 0; c < b.length; c++) {\n    var d = b[c], e = d.getTag();\n    if (this.has$Value(e) != a.has$Value(e)) {\n      return !1;\n    }\n    if (this.has$Value(e)) {\n      var f = d.isCompositeType(), g = this.getValueForTag_(e);\n      e = a.getValueForTag_(e);\n      if (d.isRepeated()) {\n        if (g.length != e.length) {\n          return !1;\n        }\n        for (d = 0; d < g.length; d++) {\n          var h = g[d], k = e[d];\n          if (f ? !h.equals(k) : h != k) {\n            return !1;\n          }\n        }\n      } else {\n        if (f ? !g.equals(e) : g != e) {\n          return !1;\n        }\n      }\n    }\n  }\n  return !0;\n};\ngoog.proto2.Message.prototype.copyFrom = function(a) {\n  goog.asserts.assert(this.constructor == a.constructor, \"The source message must have the same type.\");\n  this != a && (this.values_ = {}, this.deserializedFields_ && (this.deserializedFields_ = {}), this.mergeFrom(a));\n};\ngoog.proto2.Message.prototype.mergeFrom = function(a) {\n  goog.asserts.assert(this.constructor == a.constructor, \"The source message must have the same type.\");\n  for (var b = this.getDescriptor().getFields(), c = 0; c < b.length; c++) {\n    var d = b[c], e = d.getTag();\n    if (a.has$Value(e)) {\n      this.deserializedFields_ && delete this.deserializedFields_[d.getTag()];\n      var f = d.isCompositeType();\n      if (d.isRepeated()) {\n        d = a.array$Values(e);\n        for (var g = 0; g < d.length; g++) {\n          this.add$Value(e, f ? d[g].clone() : d[g]);\n        }\n      } else {\n        d = a.getValueForTag_(e), f ? (f = this.getValueForTag_(e)) ? f.mergeFrom(d) : this.set$Value(e, d.clone()) : this.set$Value(e, d);\n      }\n    }\n  }\n};\ngoog.proto2.Message.prototype.clone = function() {\n  var a = new this.constructor;\n  a.copyFrom(this);\n  return a;\n};\ngoog.proto2.Message.prototype.initDefaults = function(a) {\n  for (var b = this.getDescriptor().getFields(), c = 0; c < b.length; c++) {\n    var d = b[c], e = d.getTag(), f = d.isCompositeType();\n    this.has$Value(e) || d.isRepeated() || (f ? this.values_[e] = new (d.getNativeType()) : a && (this.values_[e] = d.getDefaultValue()));\n    if (f) {\n      if (d.isRepeated()) {\n        for (d = this.array$Values(e), e = 0; e < d.length; e++) {\n          d[e].initDefaults(a);\n        }\n      } else {\n        this.get$Value(e).initDefaults(a);\n      }\n    }\n  }\n};\ngoog.proto2.Message.prototype.has$Value = function(a) {\n  return null != this.values_[a];\n};\ngoog.proto2.Message.prototype.getValueForTag_ = function(a) {\n  var b = this.values_[a];\n  return null == b ? null : this.lazyDeserializer_ ? a in this.deserializedFields_ ? this.deserializedFields_[a] : (b = this.lazyDeserializer_.deserializeField(this, this.fields_[a], b), this.deserializedFields_[a] = b) : b;\n};\ngoog.proto2.Message.prototype.get$Value = function(a, b) {\n  var c = this.getValueForTag_(a);\n  if (this.fields_[a].isRepeated()) {\n    var d = b || 0;\n    goog.asserts.assert(0 <= d && d < c.length, \"Given index %s is out of bounds.  Repeated field length: %s\", d, c.length);\n    return c[d];\n  }\n  return c;\n};\ngoog.proto2.Message.prototype.get$ValueOrDefault = function(a, b) {\n  return this.has$Value(a) ? this.get$Value(a, b) : this.fields_[a].getDefaultValue();\n};\ngoog.proto2.Message.prototype.array$Values = function(a) {\n  return this.getValueForTag_(a) || [];\n};\ngoog.proto2.Message.prototype.count$Values = function(a) {\n  return this.fields_[a].isRepeated() ? this.has$Value(a) ? this.values_[a].length : 0 : this.has$Value(a) ? 1 : 0;\n};\ngoog.proto2.Message.prototype.set$Value = function(a, b) {\n  goog.asserts.ENABLE_ASSERTS && this.checkFieldType_(this.fields_[a], b);\n  this.values_[a] = b;\n  this.deserializedFields_ && (this.deserializedFields_[a] = b);\n};\ngoog.proto2.Message.prototype.add$Value = function(a, b) {\n  goog.asserts.ENABLE_ASSERTS && this.checkFieldType_(this.fields_[a], b);\n  this.values_[a] || (this.values_[a] = []);\n  this.values_[a].push(b);\n  this.deserializedFields_ && delete this.deserializedFields_[a];\n};\ngoog.proto2.Message.prototype.checkFieldType_ = function(a, b) {\n  a.getFieldType() == goog.proto2.FieldDescriptor.FieldType.ENUM ? goog.asserts.assertNumber(b) : goog.asserts.assert(Object(b).constructor == a.getNativeType());\n};\ngoog.proto2.Message.prototype.clear$Field = function(a) {\n  delete this.values_[a];\n  this.deserializedFields_ && delete this.deserializedFields_[a];\n};\ngoog.proto2.Message.createDescriptor = function(a, b) {\n  var c = [], d = b[0], e;\n  for (e in b) {\n    0 != e && c.push(new goog.proto2.FieldDescriptor(a, e, b[e]));\n  }\n  return new goog.proto2.Descriptor(a, d, c);\n};\ngoog.proto2.Serializer = function() {\n};\ngoog.proto2.Serializer.DECODE_SYMBOLIC_ENUMS = !1;\ngoog.proto2.Serializer.prototype.serialize = goog.abstractMethod;\ngoog.proto2.Serializer.prototype.getSerializedValue = function(a, b) {\n  return a.isCompositeType() ? this.serialize(b) : \"number\" !== typeof b || isFinite(b) ? b : b.toString();\n};\ngoog.proto2.Serializer.prototype.deserialize = function(a, b) {\n  var c = a.createMessageInstance();\n  this.deserializeTo(c, b);\n  goog.asserts.assert(c instanceof goog.proto2.Message);\n  return c;\n};\ngoog.proto2.Serializer.prototype.deserializeTo = goog.abstractMethod;\ngoog.proto2.Serializer.prototype.getDeserializedValue = function(a, b) {\n  if (a.isCompositeType()) {\n    return b instanceof goog.proto2.Message ? b : this.deserialize(a.getFieldMessageType(), b);\n  }\n  if (a.getFieldType() == goog.proto2.FieldDescriptor.FieldType.ENUM) {\n    if (goog.proto2.Serializer.DECODE_SYMBOLIC_ENUMS && \"string\" === typeof b) {\n      var c = a.getNativeType();\n      if (c.hasOwnProperty(b)) {\n        return c[b];\n      }\n    }\n    return \"string\" === typeof b && goog.proto2.Serializer.INTEGER_REGEX.test(b) && (c = Number(b), 0 < c) ? c : b;\n  }\n  if (!a.deserializationConversionPermitted()) {\n    return b;\n  }\n  c = a.getNativeType();\n  if (c === String) {\n    if (\"number\" === typeof b) {\n      return String(b);\n    }\n  } else {\n    if (c === Number && \"string\" === typeof b && (\"Infinity\" === b || \"-Infinity\" === b || \"NaN\" === b || goog.proto2.Serializer.INTEGER_REGEX.test(b))) {\n      return Number(b);\n    }\n  }\n  return b;\n};\ngoog.proto2.Serializer.INTEGER_REGEX = /^-?[0-9]+$/;\ngoog.proto2.LazyDeserializer = function() {\n};\ngoog.inherits(goog.proto2.LazyDeserializer, goog.proto2.Serializer);\ngoog.proto2.LazyDeserializer.prototype.deserialize = function(a, b) {\n  var c = a.createMessageInstance();\n  c.initializeForLazyDeserializer(this, b);\n  goog.asserts.assert(c instanceof goog.proto2.Message);\n  return c;\n};\ngoog.proto2.LazyDeserializer.prototype.deserializeTo = function(a, b) {\n  throw Error(\"Unimplemented\");\n};\ngoog.proto2.LazyDeserializer.prototype.deserializeField = goog.abstractMethod;\ngoog.proto2.PbLiteSerializer = function() {\n};\ngoog.inherits(goog.proto2.PbLiteSerializer, goog.proto2.LazyDeserializer);\ngoog.proto2.PbLiteSerializer.prototype.zeroIndexing_ = !1;\ngoog.proto2.PbLiteSerializer.prototype.setZeroIndexed = function(a) {\n  this.zeroIndexing_ = a;\n};\ngoog.proto2.PbLiteSerializer.prototype.serialize = function(a) {\n  for (var b = a.getDescriptor().getFields(), c = [], d = this.zeroIndexing_, e = 0; e < b.length; e++) {\n    var f = b[e];\n    if (a.has(f)) {\n      var g = f.getTag();\n      g = d ? g - 1 : g;\n      if (f.isRepeated()) {\n        c[g] = [];\n        for (var h = 0; h < a.countOf(f); h++) {\n          c[g][h] = this.getSerializedValue(f, a.get(f, h));\n        }\n      } else {\n        c[g] = this.getSerializedValue(f, a.get(f));\n      }\n    }\n  }\n  a.forEachUnknown(function(a, b) {\n    c[d ? a - 1 : a] = b;\n  });\n  return c;\n};\ngoog.proto2.PbLiteSerializer.prototype.deserializeField = function(a, b, c) {\n  if (null == c) {\n    return c;\n  }\n  if (b.isRepeated()) {\n    a = [];\n    goog.asserts.assert(goog.isArray(c), \"Value must be array: %s\", c);\n    for (var d = 0; d < c.length; d++) {\n      a[d] = this.getDeserializedValue(b, c[d]);\n    }\n    return a;\n  }\n  return this.getDeserializedValue(b, c);\n};\ngoog.proto2.PbLiteSerializer.prototype.getSerializedValue = function(a, b) {\n  return a.getFieldType() == goog.proto2.FieldDescriptor.FieldType.BOOL ? b ? 1 : 0 : goog.proto2.Serializer.prototype.getSerializedValue.apply(this, arguments);\n};\ngoog.proto2.PbLiteSerializer.prototype.getDeserializedValue = function(a, b) {\n  return a.getFieldType() == goog.proto2.FieldDescriptor.FieldType.BOOL ? (goog.asserts.assert(\"number\" === typeof b || \"boolean\" === typeof b, \"Value is expected to be a number or boolean\"), !!b) : goog.proto2.Serializer.prototype.getDeserializedValue.apply(this, arguments);\n};\ngoog.proto2.PbLiteSerializer.prototype.deserialize = function(a, b) {\n  var c = b;\n  if (this.zeroIndexing_) {\n    c = [];\n    for (var d in b) {\n      c[parseInt(d, 10) + 1] = b[d];\n    }\n  }\n  return goog.proto2.PbLiteSerializer.superClass_.deserialize.call(this, a, c);\n};\ngoog.labs.userAgent.engine = {};\ngoog.labs.userAgent.engine.isPresto = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Presto\");\n};\ngoog.labs.userAgent.engine.isTrident = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Trident\") || goog.labs.userAgent.util.matchUserAgent(\"MSIE\");\n};\ngoog.labs.userAgent.engine.isEdge = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Edge\");\n};\ngoog.labs.userAgent.engine.isWebKit = function() {\n  return goog.labs.userAgent.util.matchUserAgentIgnoreCase(\"WebKit\") && !goog.labs.userAgent.engine.isEdge();\n};\ngoog.labs.userAgent.engine.isGecko = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Gecko\") && !goog.labs.userAgent.engine.isWebKit() && !goog.labs.userAgent.engine.isTrident() && !goog.labs.userAgent.engine.isEdge();\n};\ngoog.labs.userAgent.engine.getVersion = function() {\n  var a = goog.labs.userAgent.util.getUserAgent();\n  if (a) {\n    a = goog.labs.userAgent.util.extractVersionTuples(a);\n    var b = goog.labs.userAgent.engine.getEngineTuple_(a);\n    if (b) {\n      return \"Gecko\" == b[0] ? goog.labs.userAgent.engine.getVersionForKey_(a, \"Firefox\") : b[1];\n    }\n    a = a[0];\n    var c;\n    if (a && (c = a[2]) && (c = /Trident\\/([^\\s;]+)/.exec(c))) {\n      return c[1];\n    }\n  }\n  return \"\";\n};\ngoog.labs.userAgent.engine.getEngineTuple_ = function(a) {\n  if (!goog.labs.userAgent.engine.isEdge()) {\n    return a[1];\n  }\n  for (var b = 0; b < a.length; b++) {\n    var c = a[b];\n    if (\"Edge\" == c[0]) {\n      return c;\n    }\n  }\n};\ngoog.labs.userAgent.engine.isVersionOrHigher = function(a) {\n  return 0 <= goog.string.compareVersions(goog.labs.userAgent.engine.getVersion(), a);\n};\ngoog.labs.userAgent.engine.getVersionForKey_ = function(a, b) {\n  var c = goog.array.find(a, function(a) {\n    return b == a[0];\n  });\n  return c && c[1] || \"\";\n};\ngoog.labs.userAgent.platform = {};\ngoog.labs.userAgent.platform.isAndroid = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Android\");\n};\ngoog.labs.userAgent.platform.isIpod = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"iPod\");\n};\ngoog.labs.userAgent.platform.isIphone = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"iPhone\") && !goog.labs.userAgent.util.matchUserAgent(\"iPod\") && !goog.labs.userAgent.util.matchUserAgent(\"iPad\");\n};\ngoog.labs.userAgent.platform.isIpad = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"iPad\");\n};\ngoog.labs.userAgent.platform.isIos = function() {\n  return goog.labs.userAgent.platform.isIphone() || goog.labs.userAgent.platform.isIpad() || goog.labs.userAgent.platform.isIpod();\n};\ngoog.labs.userAgent.platform.isMacintosh = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Macintosh\");\n};\ngoog.labs.userAgent.platform.isLinux = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Linux\");\n};\ngoog.labs.userAgent.platform.isWindows = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Windows\");\n};\ngoog.labs.userAgent.platform.isChromeOS = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"CrOS\");\n};\ngoog.labs.userAgent.platform.isChromecast = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"CrKey\");\n};\ngoog.labs.userAgent.platform.isKaiOS = function() {\n  return goog.labs.userAgent.util.matchUserAgentIgnoreCase(\"KaiOS\");\n};\ngoog.labs.userAgent.platform.isGo2Phone = function() {\n  return goog.labs.userAgent.util.matchUserAgentIgnoreCase(\"GAFP\");\n};\ngoog.labs.userAgent.platform.getVersion = function() {\n  var a = goog.labs.userAgent.util.getUserAgent(), b = \"\";\n  goog.labs.userAgent.platform.isWindows() ? (b = /Windows (?:NT|Phone) ([0-9.]+)/, b = (a = b.exec(a)) ? a[1] : \"0.0\") : goog.labs.userAgent.platform.isIos() ? (b = /(?:iPhone|iPod|iPad|CPU)\\s+OS\\s+(\\S+)/, b = (a = b.exec(a)) && a[1].replace(/_/g, \".\")) : goog.labs.userAgent.platform.isMacintosh() ? (b = /Mac OS X ([0-9_.]+)/, b = (a = b.exec(a)) ? a[1].replace(/_/g, \".\") : \"10\") : goog.labs.userAgent.platform.isKaiOS() ? (b = /(?:KaiOS)\\/(\\S+)/i, b = (a = b.exec(a)) && a[1]) : goog.labs.userAgent.platform.isAndroid() ?\n  (b = /Android\\s+([^\\);]+)(\\)|;)/, b = (a = b.exec(a)) && a[1]) : goog.labs.userAgent.platform.isChromeOS() && (b = /(?:CrOS\\s+(?:i686|x86_64)\\s+([0-9.]+))/, b = (a = b.exec(a)) && a[1]);\n  return b || \"\";\n};\ngoog.labs.userAgent.platform.isVersionOrHigher = function(a) {\n  return 0 <= goog.string.compareVersions(goog.labs.userAgent.platform.getVersion(), a);\n};\ngoog.reflect = {};\ngoog.reflect.object = function(a, b) {\n  return b;\n};\ngoog.reflect.objectProperty = function(a, b) {\n  return a;\n};\ngoog.reflect.sinkValue = function(a) {\n  goog.reflect.sinkValue[\" \"](a);\n  return a;\n};\ngoog.reflect.sinkValue[\" \"] = goog.nullFunction;\ngoog.reflect.canAccessProperty = function(a, b) {\n  try {\n    return goog.reflect.sinkValue(a[b]), !0;\n  } catch (c) {\n  }\n  return !1;\n};\ngoog.reflect.cache = function(a, b, c, d) {\n  d = d ? d(b) : b;\n  return Object.prototype.hasOwnProperty.call(a, d) ? a[d] : a[d] = c(b);\n};\ngoog.userAgent = {};\ngoog.userAgent.ASSUME_IE = !1;\ngoog.userAgent.ASSUME_EDGE = !1;\ngoog.userAgent.ASSUME_GECKO = !1;\ngoog.userAgent.ASSUME_WEBKIT = !1;\ngoog.userAgent.ASSUME_MOBILE_WEBKIT = !1;\ngoog.userAgent.ASSUME_OPERA = !1;\ngoog.userAgent.ASSUME_ANY_VERSION = !1;\ngoog.userAgent.BROWSER_KNOWN_ = goog.userAgent.ASSUME_IE || goog.userAgent.ASSUME_EDGE || goog.userAgent.ASSUME_GECKO || goog.userAgent.ASSUME_MOBILE_WEBKIT || goog.userAgent.ASSUME_WEBKIT || goog.userAgent.ASSUME_OPERA;\ngoog.userAgent.getUserAgentString = function() {\n  return goog.labs.userAgent.util.getUserAgent();\n};\ngoog.userAgent.getNavigatorTyped = function() {\n  return goog.global.navigator || null;\n};\ngoog.userAgent.getNavigator = function() {\n  return goog.userAgent.getNavigatorTyped();\n};\ngoog.userAgent.OPERA = goog.userAgent.BROWSER_KNOWN_ ? goog.userAgent.ASSUME_OPERA : goog.labs.userAgent.browser.isOpera();\ngoog.userAgent.IE = goog.userAgent.BROWSER_KNOWN_ ? goog.userAgent.ASSUME_IE : goog.labs.userAgent.browser.isIE();\ngoog.userAgent.EDGE = goog.userAgent.BROWSER_KNOWN_ ? goog.userAgent.ASSUME_EDGE : goog.labs.userAgent.engine.isEdge();\ngoog.userAgent.EDGE_OR_IE = goog.userAgent.EDGE || goog.userAgent.IE;\ngoog.userAgent.GECKO = goog.userAgent.BROWSER_KNOWN_ ? goog.userAgent.ASSUME_GECKO : goog.labs.userAgent.engine.isGecko();\ngoog.userAgent.WEBKIT = goog.userAgent.BROWSER_KNOWN_ ? goog.userAgent.ASSUME_WEBKIT || goog.userAgent.ASSUME_MOBILE_WEBKIT : goog.labs.userAgent.engine.isWebKit();\ngoog.userAgent.isMobile_ = function() {\n  return goog.userAgent.WEBKIT && goog.labs.userAgent.util.matchUserAgent(\"Mobile\");\n};\ngoog.userAgent.MOBILE = goog.userAgent.ASSUME_MOBILE_WEBKIT || goog.userAgent.isMobile_();\ngoog.userAgent.SAFARI = goog.userAgent.WEBKIT;\ngoog.userAgent.determinePlatform_ = function() {\n  var a = goog.userAgent.getNavigatorTyped();\n  return a && a.platform || \"\";\n};\ngoog.userAgent.PLATFORM = goog.userAgent.determinePlatform_();\ngoog.userAgent.ASSUME_MAC = !1;\ngoog.userAgent.ASSUME_WINDOWS = !1;\ngoog.userAgent.ASSUME_LINUX = !1;\ngoog.userAgent.ASSUME_X11 = !1;\ngoog.userAgent.ASSUME_ANDROID = !1;\ngoog.userAgent.ASSUME_IPHONE = !1;\ngoog.userAgent.ASSUME_IPAD = !1;\ngoog.userAgent.ASSUME_IPOD = !1;\ngoog.userAgent.ASSUME_KAIOS = !1;\ngoog.userAgent.ASSUME_GO2PHONE = !1;\ngoog.userAgent.PLATFORM_KNOWN_ = goog.userAgent.ASSUME_MAC || goog.userAgent.ASSUME_WINDOWS || goog.userAgent.ASSUME_LINUX || goog.userAgent.ASSUME_X11 || goog.userAgent.ASSUME_ANDROID || goog.userAgent.ASSUME_IPHONE || goog.userAgent.ASSUME_IPAD || goog.userAgent.ASSUME_IPOD;\ngoog.userAgent.MAC = goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_MAC : goog.labs.userAgent.platform.isMacintosh();\ngoog.userAgent.WINDOWS = goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_WINDOWS : goog.labs.userAgent.platform.isWindows();\ngoog.userAgent.isLegacyLinux_ = function() {\n  return goog.labs.userAgent.platform.isLinux() || goog.labs.userAgent.platform.isChromeOS();\n};\ngoog.userAgent.LINUX = goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_LINUX : goog.userAgent.isLegacyLinux_();\ngoog.userAgent.isX11_ = function() {\n  var a = goog.userAgent.getNavigatorTyped();\n  return !!a && goog.string.contains(a.appVersion || \"\", \"X11\");\n};\ngoog.userAgent.X11 = goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_X11 : goog.userAgent.isX11_();\ngoog.userAgent.ANDROID = goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_ANDROID : goog.labs.userAgent.platform.isAndroid();\ngoog.userAgent.IPHONE = goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_IPHONE : goog.labs.userAgent.platform.isIphone();\ngoog.userAgent.IPAD = goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_IPAD : goog.labs.userAgent.platform.isIpad();\ngoog.userAgent.IPOD = goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_IPOD : goog.labs.userAgent.platform.isIpod();\ngoog.userAgent.IOS = goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_IPHONE || goog.userAgent.ASSUME_IPAD || goog.userAgent.ASSUME_IPOD : goog.labs.userAgent.platform.isIos();\ngoog.userAgent.KAIOS = goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_KAIOS : goog.labs.userAgent.platform.isKaiOS();\ngoog.userAgent.GO2PHONE = goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_GO2PHONE : goog.labs.userAgent.platform.isGo2Phone();\ngoog.userAgent.determineVersion_ = function() {\n  var a = \"\", b = goog.userAgent.getVersionRegexResult_();\n  b && (a = b ? b[1] : \"\");\n  return goog.userAgent.IE && (b = goog.userAgent.getDocumentMode_(), null != b && b > parseFloat(a)) ? String(b) : a;\n};\ngoog.userAgent.getVersionRegexResult_ = function() {\n  var a = goog.userAgent.getUserAgentString();\n  if (goog.userAgent.GECKO) {\n    return /rv:([^\\);]+)(\\)|;)/.exec(a);\n  }\n  if (goog.userAgent.EDGE) {\n    return /Edge\\/([\\d\\.]+)/.exec(a);\n  }\n  if (goog.userAgent.IE) {\n    return /\\b(?:MSIE|rv)[: ]([^\\);]+)(\\)|;)/.exec(a);\n  }\n  if (goog.userAgent.WEBKIT) {\n    return /WebKit\\/(\\S+)/.exec(a);\n  }\n  if (goog.userAgent.OPERA) {\n    return /(?:Version)[ \\/]?(\\S+)/.exec(a);\n  }\n};\ngoog.userAgent.getDocumentMode_ = function() {\n  var a = goog.global.document;\n  return a ? a.documentMode : void 0;\n};\ngoog.userAgent.VERSION = goog.userAgent.determineVersion_();\ngoog.userAgent.compare = function(a, b) {\n  return goog.string.compareVersions(a, b);\n};\ngoog.userAgent.isVersionOrHigherCache_ = {};\ngoog.userAgent.isVersionOrHigher = function(a) {\n  return goog.userAgent.ASSUME_ANY_VERSION || goog.reflect.cache(goog.userAgent.isVersionOrHigherCache_, a, function() {\n    return 0 <= goog.string.compareVersions(goog.userAgent.VERSION, a);\n  });\n};\ngoog.userAgent.isVersion = goog.userAgent.isVersionOrHigher;\ngoog.userAgent.isDocumentModeOrHigher = function(a) {\n  return Number(goog.userAgent.DOCUMENT_MODE) >= a;\n};\ngoog.userAgent.isDocumentMode = goog.userAgent.isDocumentModeOrHigher;\ngoog.userAgent.DOCUMENT_MODE = function() {\n  if (goog.global.document && goog.userAgent.IE) {\n    return goog.userAgent.getDocumentMode_();\n  }\n}();\ngoog.dom.BrowserFeature = {};\ngoog.dom.BrowserFeature.ASSUME_NO_OFFSCREEN_CANVAS = !1;\ngoog.dom.BrowserFeature.ASSUME_OFFSCREEN_CANVAS = !1;\ngoog.dom.BrowserFeature.detectOffscreenCanvas_ = function(a) {\n  try {\n    return !!(new self.OffscreenCanvas(0, 0)).getContext(a);\n  } catch (b) {\n  }\n  return !1;\n};\ngoog.dom.BrowserFeature.OFFSCREEN_CANVAS_2D = !goog.dom.BrowserFeature.ASSUME_NO_OFFSCREEN_CANVAS && (goog.dom.BrowserFeature.ASSUME_OFFSCREEN_CANVAS || goog.dom.BrowserFeature.detectOffscreenCanvas_(\"2d\"));\ngoog.dom.BrowserFeature.CAN_ADD_NAME_OR_TYPE_ATTRIBUTES = !goog.userAgent.IE || goog.userAgent.isDocumentModeOrHigher(9);\ngoog.dom.BrowserFeature.CAN_USE_CHILDREN_ATTRIBUTE = !goog.userAgent.GECKO && !goog.userAgent.IE || goog.userAgent.IE && goog.userAgent.isDocumentModeOrHigher(9) || goog.userAgent.GECKO && goog.userAgent.isVersionOrHigher(\"1.9.1\");\ngoog.dom.BrowserFeature.CAN_USE_INNER_TEXT = goog.userAgent.IE && !goog.userAgent.isVersionOrHigher(\"9\");\ngoog.dom.BrowserFeature.CAN_USE_PARENT_ELEMENT_PROPERTY = goog.userAgent.IE || goog.userAgent.OPERA || goog.userAgent.WEBKIT;\ngoog.dom.BrowserFeature.INNER_HTML_NEEDS_SCOPED_ELEMENT = goog.userAgent.IE;\ngoog.dom.BrowserFeature.LEGACY_IE_RANGES = goog.userAgent.IE && !goog.userAgent.isDocumentModeOrHigher(9);\ngoog.math = {};\ngoog.math.randomInt = function(a) {\n  return Math.floor(Math.random() * a);\n};\ngoog.math.uniformRandom = function(a, b) {\n  return a + Math.random() * (b - a);\n};\ngoog.math.clamp = function(a, b, c) {\n  return Math.min(Math.max(a, b), c);\n};\ngoog.math.modulo = function(a, b) {\n  var c = a % b;\n  return 0 > c * b ? c + b : c;\n};\ngoog.math.lerp = function(a, b, c) {\n  return a + c * (b - a);\n};\ngoog.math.nearlyEquals = function(a, b, c) {\n  return Math.abs(a - b) <= (c || 0.000001);\n};\ngoog.math.standardAngle = function(a) {\n  return goog.math.modulo(a, 360);\n};\ngoog.math.standardAngleInRadians = function(a) {\n  return goog.math.modulo(a, 2 * Math.PI);\n};\ngoog.math.toRadians = function(a) {\n  return a * Math.PI / 180;\n};\ngoog.math.toDegrees = function(a) {\n  return 180 * a / Math.PI;\n};\ngoog.math.angleDx = function(a, b) {\n  return b * Math.cos(goog.math.toRadians(a));\n};\ngoog.math.angleDy = function(a, b) {\n  return b * Math.sin(goog.math.toRadians(a));\n};\ngoog.math.angle = function(a, b, c, d) {\n  return goog.math.standardAngle(goog.math.toDegrees(Math.atan2(d - b, c - a)));\n};\ngoog.math.angleDifference = function(a, b) {\n  var c = goog.math.standardAngle(b) - goog.math.standardAngle(a);\n  180 < c ? c -= 360 : -180 >= c && (c = 360 + c);\n  return c;\n};\ngoog.math.sign = function(a) {\n  return 0 < a ? 1 : 0 > a ? -1 : a;\n};\ngoog.math.longestCommonSubsequence = function(a, b, c, d) {\n  c = c || function(a, b) {\n    return a == b;\n  };\n  d = d || function(b, c) {\n    return a[b];\n  };\n  for (var e = a.length, f = b.length, g = [], h = 0; h < e + 1; h++) {\n    g[h] = [], g[h][0] = 0;\n  }\n  for (var k = 0; k < f + 1; k++) {\n    g[0][k] = 0;\n  }\n  for (h = 1; h <= e; h++) {\n    for (k = 1; k <= f; k++) {\n      c(a[h - 1], b[k - 1]) ? g[h][k] = g[h - 1][k - 1] + 1 : g[h][k] = Math.max(g[h - 1][k], g[h][k - 1]);\n    }\n  }\n  var l = [];\n  h = e;\n  for (k = f; 0 < h && 0 < k;) {\n    c(a[h - 1], b[k - 1]) ? (l.unshift(d(h - 1, k - 1)), h--, k--) : g[h - 1][k] > g[h][k - 1] ? h-- : k--;\n  }\n  return l;\n};\ngoog.math.sum = function(a) {\n  return goog.array.reduce(arguments, function(a, c) {\n    return a + c;\n  }, 0);\n};\ngoog.math.average = function(a) {\n  return goog.math.sum.apply(null, arguments) / arguments.length;\n};\ngoog.math.sampleVariance = function(a) {\n  var b = arguments.length;\n  if (2 > b) {\n    return 0;\n  }\n  var c = goog.math.average.apply(null, arguments);\n  return goog.math.sum.apply(null, goog.array.map(arguments, function(a) {\n    return Math.pow(a - c, 2);\n  })) / (b - 1);\n};\ngoog.math.standardDeviation = function(a) {\n  return Math.sqrt(goog.math.sampleVariance.apply(null, arguments));\n};\ngoog.math.isInt = function(a) {\n  return isFinite(a) && 0 == a % 1;\n};\ngoog.math.isFiniteNumber = function(a) {\n  return isFinite(a);\n};\ngoog.math.isNegativeZero = function(a) {\n  return 0 == a && 0 > 1 / a;\n};\ngoog.math.log10Floor = function(a) {\n  if (0 < a) {\n    var b = Math.round(Math.log(a) * Math.LOG10E);\n    return b - (parseFloat(\"1e\" + b) > a ? 1 : 0);\n  }\n  return 0 == a ? -Infinity : NaN;\n};\ngoog.math.safeFloor = function(a, b) {\n  goog.asserts.assert(void 0 === b || 0 < b);\n  return Math.floor(a + (b || 2e-15));\n};\ngoog.math.safeCeil = function(a, b) {\n  goog.asserts.assert(void 0 === b || 0 < b);\n  return Math.ceil(a - (b || 2e-15));\n};\ngoog.math.Coordinate = function(a, b) {\n  this.x = void 0 !== a ? a : 0;\n  this.y = void 0 !== b ? b : 0;\n};\ngoog.math.Coordinate.prototype.clone = function() {\n  return new goog.math.Coordinate(this.x, this.y);\n};\ngoog.DEBUG && (goog.math.Coordinate.prototype.toString = function() {\n  return \"(\" + this.x + \", \" + this.y + \")\";\n});\ngoog.math.Coordinate.prototype.equals = function(a) {\n  return a instanceof goog.math.Coordinate && goog.math.Coordinate.equals(this, a);\n};\ngoog.math.Coordinate.equals = function(a, b) {\n  return a == b ? !0 : a && b ? a.x == b.x && a.y == b.y : !1;\n};\ngoog.math.Coordinate.distance = function(a, b) {\n  var c = a.x - b.x, d = a.y - b.y;\n  return Math.sqrt(c * c + d * d);\n};\ngoog.math.Coordinate.magnitude = function(a) {\n  return Math.sqrt(a.x * a.x + a.y * a.y);\n};\ngoog.math.Coordinate.azimuth = function(a) {\n  return goog.math.angle(0, 0, a.x, a.y);\n};\ngoog.math.Coordinate.squaredDistance = function(a, b) {\n  var c = a.x - b.x, d = a.y - b.y;\n  return c * c + d * d;\n};\ngoog.math.Coordinate.difference = function(a, b) {\n  return new goog.math.Coordinate(a.x - b.x, a.y - b.y);\n};\ngoog.math.Coordinate.sum = function(a, b) {\n  return new goog.math.Coordinate(a.x + b.x, a.y + b.y);\n};\ngoog.math.Coordinate.prototype.ceil = function() {\n  this.x = Math.ceil(this.x);\n  this.y = Math.ceil(this.y);\n  return this;\n};\ngoog.math.Coordinate.prototype.floor = function() {\n  this.x = Math.floor(this.x);\n  this.y = Math.floor(this.y);\n  return this;\n};\ngoog.math.Coordinate.prototype.round = function() {\n  this.x = Math.round(this.x);\n  this.y = Math.round(this.y);\n  return this;\n};\ngoog.math.Coordinate.prototype.translate = function(a, b) {\n  a instanceof goog.math.Coordinate ? (this.x += a.x, this.y += a.y) : (this.x += Number(a), \"number\" === typeof b && (this.y += b));\n  return this;\n};\ngoog.math.Coordinate.prototype.scale = function(a, b) {\n  this.x *= a;\n  this.y *= \"number\" === typeof b ? b : a;\n  return this;\n};\ngoog.math.Coordinate.prototype.rotateRadians = function(a, b) {\n  var c = b || new goog.math.Coordinate(0, 0), d = this.x, e = this.y, f = Math.cos(a), g = Math.sin(a);\n  this.x = (d - c.x) * f - (e - c.y) * g + c.x;\n  this.y = (d - c.x) * g + (e - c.y) * f + c.y;\n};\ngoog.math.Coordinate.prototype.rotateDegrees = function(a, b) {\n  this.rotateRadians(goog.math.toRadians(a), b);\n};\ngoog.math.Size = function(a, b) {\n  this.width = a;\n  this.height = b;\n};\ngoog.math.Size.equals = function(a, b) {\n  return a == b ? !0 : a && b ? a.width == b.width && a.height == b.height : !1;\n};\ngoog.math.Size.prototype.clone = function() {\n  return new goog.math.Size(this.width, this.height);\n};\ngoog.DEBUG && (goog.math.Size.prototype.toString = function() {\n  return \"(\" + this.width + \" x \" + this.height + \")\";\n});\ngoog.math.Size.prototype.getLongest = function() {\n  return Math.max(this.width, this.height);\n};\ngoog.math.Size.prototype.getShortest = function() {\n  return Math.min(this.width, this.height);\n};\ngoog.math.Size.prototype.area = function() {\n  return this.width * this.height;\n};\ngoog.math.Size.prototype.perimeter = function() {\n  return 2 * (this.width + this.height);\n};\ngoog.math.Size.prototype.aspectRatio = function() {\n  return this.width / this.height;\n};\ngoog.math.Size.prototype.isEmpty = function() {\n  return !this.area();\n};\ngoog.math.Size.prototype.ceil = function() {\n  this.width = Math.ceil(this.width);\n  this.height = Math.ceil(this.height);\n  return this;\n};\ngoog.math.Size.prototype.fitsInside = function(a) {\n  return this.width <= a.width && this.height <= a.height;\n};\ngoog.math.Size.prototype.floor = function() {\n  this.width = Math.floor(this.width);\n  this.height = Math.floor(this.height);\n  return this;\n};\ngoog.math.Size.prototype.round = function() {\n  this.width = Math.round(this.width);\n  this.height = Math.round(this.height);\n  return this;\n};\ngoog.math.Size.prototype.scale = function(a, b) {\n  this.width *= a;\n  this.height *= \"number\" === typeof b ? b : a;\n  return this;\n};\ngoog.math.Size.prototype.scaleToCover = function(a) {\n  a = this.aspectRatio() <= a.aspectRatio() ? a.width / this.width : a.height / this.height;\n  return this.scale(a);\n};\ngoog.math.Size.prototype.scaleToFit = function(a) {\n  a = this.aspectRatio() > a.aspectRatio() ? a.width / this.width : a.height / this.height;\n  return this.scale(a);\n};\ngoog.dom.ASSUME_QUIRKS_MODE = !1;\ngoog.dom.ASSUME_STANDARDS_MODE = !1;\ngoog.dom.COMPAT_MODE_KNOWN_ = goog.dom.ASSUME_QUIRKS_MODE || goog.dom.ASSUME_STANDARDS_MODE;\ngoog.dom.getDomHelper = function(a) {\n  return a ? new goog.dom.DomHelper(goog.dom.getOwnerDocument(a)) : goog.dom.defaultDomHelper_ || (goog.dom.defaultDomHelper_ = new goog.dom.DomHelper);\n};\ngoog.dom.getDocument = function() {\n  return document;\n};\ngoog.dom.getElement = function(a) {\n  return goog.dom.getElementHelper_(document, a);\n};\ngoog.dom.getElementHelper_ = function(a, b) {\n  return \"string\" === typeof b ? a.getElementById(b) : b;\n};\ngoog.dom.getRequiredElement = function(a) {\n  return goog.dom.getRequiredElementHelper_(document, a);\n};\ngoog.dom.getRequiredElementHelper_ = function(a, b) {\n  goog.asserts.assertString(b);\n  var c = goog.dom.getElementHelper_(a, b);\n  return c = goog.asserts.assertElement(c, \"No element found with id: \" + b);\n};\ngoog.dom.$ = goog.dom.getElement;\ngoog.dom.getElementsByTagName = function(a, b) {\n  return (b || document).getElementsByTagName(String(a));\n};\ngoog.dom.getElementsByTagNameAndClass = function(a, b, c) {\n  return goog.dom.getElementsByTagNameAndClass_(document, a, b, c);\n};\ngoog.dom.getElementByTagNameAndClass = function(a, b, c) {\n  return goog.dom.getElementByTagNameAndClass_(document, a, b, c);\n};\ngoog.dom.getElementsByClass = function(a, b) {\n  var c = b || document;\n  return goog.dom.canUseQuerySelector_(c) ? c.querySelectorAll(\".\" + a) : goog.dom.getElementsByTagNameAndClass_(document, \"*\", a, b);\n};\ngoog.dom.getElementByClass = function(a, b) {\n  var c = b || document;\n  return (c.getElementsByClassName ? c.getElementsByClassName(a)[0] : goog.dom.getElementByTagNameAndClass_(document, \"*\", a, b)) || null;\n};\ngoog.dom.getRequiredElementByClass = function(a, b) {\n  var c = goog.dom.getElementByClass(a, b);\n  return goog.asserts.assert(c, \"No element found with className: \" + a);\n};\ngoog.dom.canUseQuerySelector_ = function(a) {\n  return !(!a.querySelectorAll || !a.querySelector);\n};\ngoog.dom.getElementsByTagNameAndClass_ = function(a, b, c, d) {\n  a = d || a;\n  b = b && \"*\" != b ? String(b).toUpperCase() : \"\";\n  if (goog.dom.canUseQuerySelector_(a) && (b || c)) {\n    return a.querySelectorAll(b + (c ? \".\" + c : \"\"));\n  }\n  if (c && a.getElementsByClassName) {\n    a = a.getElementsByClassName(c);\n    if (b) {\n      d = {};\n      for (var e = 0, f = 0, g; g = a[f]; f++) {\n        b == g.nodeName && (d[e++] = g);\n      }\n      d.length = e;\n      return d;\n    }\n    return a;\n  }\n  a = a.getElementsByTagName(b || \"*\");\n  if (c) {\n    d = {};\n    for (f = e = 0; g = a[f]; f++) {\n      b = g.className, \"function\" == typeof b.split && goog.array.contains(b.split(/\\s+/), c) && (d[e++] = g);\n    }\n    d.length = e;\n    return d;\n  }\n  return a;\n};\ngoog.dom.getElementByTagNameAndClass_ = function(a, b, c, d) {\n  var e = d || a, f = b && \"*\" != b ? String(b).toUpperCase() : \"\";\n  return goog.dom.canUseQuerySelector_(e) && (f || c) ? e.querySelector(f + (c ? \".\" + c : \"\")) : goog.dom.getElementsByTagNameAndClass_(a, b, c, d)[0] || null;\n};\ngoog.dom.$$ = goog.dom.getElementsByTagNameAndClass;\ngoog.dom.setProperties = function(a, b) {\n  goog.object.forEach(b, function(b, d) {\n    b && \"object\" == typeof b && b.implementsGoogStringTypedString && (b = b.getTypedStringValue());\n    \"style\" == d ? a.style.cssText = b : \"class\" == d ? a.className = b : \"for\" == d ? a.htmlFor = b : goog.dom.DIRECT_ATTRIBUTE_MAP_.hasOwnProperty(d) ? a.setAttribute(goog.dom.DIRECT_ATTRIBUTE_MAP_[d], b) : goog.string.startsWith(d, \"aria-\") || goog.string.startsWith(d, \"data-\") ? a.setAttribute(d, b) : a[d] = b;\n  });\n};\ngoog.dom.DIRECT_ATTRIBUTE_MAP_ = {cellpadding:\"cellPadding\", cellspacing:\"cellSpacing\", colspan:\"colSpan\", frameborder:\"frameBorder\", height:\"height\", maxlength:\"maxLength\", nonce:\"nonce\", role:\"role\", rowspan:\"rowSpan\", type:\"type\", usemap:\"useMap\", valign:\"vAlign\", width:\"width\"};\ngoog.dom.getViewportSize = function(a) {\n  return goog.dom.getViewportSize_(a || window);\n};\ngoog.dom.getViewportSize_ = function(a) {\n  a = a.document;\n  a = goog.dom.isCss1CompatMode_(a) ? a.documentElement : a.body;\n  return new goog.math.Size(a.clientWidth, a.clientHeight);\n};\ngoog.dom.getDocumentHeight = function() {\n  return goog.dom.getDocumentHeight_(window);\n};\ngoog.dom.getDocumentHeightForWindow = function(a) {\n  return goog.dom.getDocumentHeight_(a);\n};\ngoog.dom.getDocumentHeight_ = function(a) {\n  var b = a.document, c = 0;\n  if (b) {\n    c = b.body;\n    var d = b.documentElement;\n    if (!d || !c) {\n      return 0;\n    }\n    a = goog.dom.getViewportSize_(a).height;\n    if (goog.dom.isCss1CompatMode_(b) && d.scrollHeight) {\n      c = d.scrollHeight != a ? d.scrollHeight : d.offsetHeight;\n    } else {\n      b = d.scrollHeight;\n      var e = d.offsetHeight;\n      d.clientHeight != e && (b = c.scrollHeight, e = c.offsetHeight);\n      c = b > a ? b > e ? b : e : b < e ? b : e;\n    }\n  }\n  return c;\n};\ngoog.dom.getPageScroll = function(a) {\n  return goog.dom.getDomHelper((a || goog.global || window).document).getDocumentScroll();\n};\ngoog.dom.getDocumentScroll = function() {\n  return goog.dom.getDocumentScroll_(document);\n};\ngoog.dom.getDocumentScroll_ = function(a) {\n  var b = goog.dom.getDocumentScrollElement_(a);\n  a = goog.dom.getWindow_(a);\n  return goog.userAgent.IE && goog.userAgent.isVersionOrHigher(\"10\") && a.pageYOffset != b.scrollTop ? new goog.math.Coordinate(b.scrollLeft, b.scrollTop) : new goog.math.Coordinate(a.pageXOffset || b.scrollLeft, a.pageYOffset || b.scrollTop);\n};\ngoog.dom.getDocumentScrollElement = function() {\n  return goog.dom.getDocumentScrollElement_(document);\n};\ngoog.dom.getDocumentScrollElement_ = function(a) {\n  return a.scrollingElement ? a.scrollingElement : !goog.userAgent.WEBKIT && goog.dom.isCss1CompatMode_(a) ? a.documentElement : a.body || a.documentElement;\n};\ngoog.dom.getWindow = function(a) {\n  return a ? goog.dom.getWindow_(a) : window;\n};\ngoog.dom.getWindow_ = function(a) {\n  return a.parentWindow || a.defaultView;\n};\ngoog.dom.createDom = function(a, b, c) {\n  return goog.dom.createDom_(document, arguments);\n};\ngoog.dom.createDom_ = function(a, b) {\n  var c = String(b[0]), d = b[1];\n  if (!goog.dom.BrowserFeature.CAN_ADD_NAME_OR_TYPE_ATTRIBUTES && d && (d.name || d.type)) {\n    c = [\"<\", c];\n    d.name && c.push(' name=\"', goog.string.htmlEscape(d.name), '\"');\n    if (d.type) {\n      c.push(' type=\"', goog.string.htmlEscape(d.type), '\"');\n      var e = {};\n      goog.object.extend(e, d);\n      delete e.type;\n      d = e;\n    }\n    c.push(\">\");\n    c = c.join(\"\");\n  }\n  c = goog.dom.createElement_(a, c);\n  d && (\"string\" === typeof d ? c.className = d : goog.isArray(d) ? c.className = d.join(\" \") : goog.dom.setProperties(c, d));\n  2 < b.length && goog.dom.append_(a, c, b, 2);\n  return c;\n};\ngoog.dom.append_ = function(a, b, c, d) {\n  function e(c) {\n    c && b.appendChild(\"string\" === typeof c ? a.createTextNode(c) : c);\n  }\n  for (; d < c.length; d++) {\n    var f = c[d];\n    goog.isArrayLike(f) && !goog.dom.isNodeLike(f) ? goog.array.forEach(goog.dom.isNodeList(f) ? goog.array.toArray(f) : f, e) : e(f);\n  }\n};\ngoog.dom.$dom = goog.dom.createDom;\ngoog.dom.createElement = function(a) {\n  return goog.dom.createElement_(document, a);\n};\ngoog.dom.createElement_ = function(a, b) {\n  b = String(b);\n  \"application/xhtml+xml\" === a.contentType && (b = b.toLowerCase());\n  return a.createElement(b);\n};\ngoog.dom.createTextNode = function(a) {\n  return document.createTextNode(String(a));\n};\ngoog.dom.createTable = function(a, b, c) {\n  return goog.dom.createTable_(document, a, b, !!c);\n};\ngoog.dom.createTable_ = function(a, b, c, d) {\n  for (var e = goog.dom.createElement_(a, \"TABLE\"), f = e.appendChild(goog.dom.createElement_(a, \"TBODY\")), g = 0; g < b; g++) {\n    for (var h = goog.dom.createElement_(a, \"TR\"), k = 0; k < c; k++) {\n      var l = goog.dom.createElement_(a, \"TD\");\n      d && goog.dom.setTextContent(l, goog.string.Unicode.NBSP);\n      h.appendChild(l);\n    }\n    f.appendChild(h);\n  }\n  return e;\n};\ngoog.dom.constHtmlToNode = function(a) {\n  var b = goog.array.map(arguments, goog.string.Const.unwrap);\n  b = goog.html.uncheckedconversions.safeHtmlFromStringKnownToSatisfyTypeContract(goog.string.Const.from(\"Constant HTML string, that gets turned into a Node later, so it will be automatically balanced.\"), b.join(\"\"));\n  return goog.dom.safeHtmlToNode(b);\n};\ngoog.dom.safeHtmlToNode = function(a) {\n  return goog.dom.safeHtmlToNode_(document, a);\n};\ngoog.dom.safeHtmlToNode_ = function(a, b) {\n  var c = goog.dom.createElement_(a, \"DIV\");\n  goog.dom.BrowserFeature.INNER_HTML_NEEDS_SCOPED_ELEMENT ? (goog.dom.safe.setInnerHtml(c, goog.html.SafeHtml.concat(goog.html.SafeHtml.BR, b)), c.removeChild(goog.asserts.assert(c.firstChild))) : goog.dom.safe.setInnerHtml(c, b);\n  return goog.dom.childrenToNode_(a, c);\n};\ngoog.dom.childrenToNode_ = function(a, b) {\n  if (1 == b.childNodes.length) {\n    return b.removeChild(goog.asserts.assert(b.firstChild));\n  }\n  for (var c = a.createDocumentFragment(); b.firstChild;) {\n    c.appendChild(b.firstChild);\n  }\n  return c;\n};\ngoog.dom.isCss1CompatMode = function() {\n  return goog.dom.isCss1CompatMode_(document);\n};\ngoog.dom.isCss1CompatMode_ = function(a) {\n  return goog.dom.COMPAT_MODE_KNOWN_ ? goog.dom.ASSUME_STANDARDS_MODE : \"CSS1Compat\" == a.compatMode;\n};\ngoog.dom.canHaveChildren = function(a) {\n  if (a.nodeType != goog.dom.NodeType.ELEMENT) {\n    return !1;\n  }\n  switch(a.tagName) {\n    case \"APPLET\":\n    case \"AREA\":\n    case \"BASE\":\n    case \"BR\":\n    case \"COL\":\n    case \"COMMAND\":\n    case \"EMBED\":\n    case \"FRAME\":\n    case \"HR\":\n    case \"IMG\":\n    case \"INPUT\":\n    case \"IFRAME\":\n    case \"ISINDEX\":\n    case \"KEYGEN\":\n    case \"LINK\":\n    case \"NOFRAMES\":\n    case \"NOSCRIPT\":\n    case \"META\":\n    case \"OBJECT\":\n    case \"PARAM\":\n    case \"SCRIPT\":\n    case \"SOURCE\":\n    case \"STYLE\":\n    case \"TRACK\":\n    case \"WBR\":\n      return !1;\n  }\n  return !0;\n};\ngoog.dom.appendChild = function(a, b) {\n  goog.asserts.assert(null != a && null != b, \"goog.dom.appendChild expects non-null arguments\");\n  a.appendChild(b);\n};\ngoog.dom.append = function(a, b) {\n  goog.dom.append_(goog.dom.getOwnerDocument(a), a, arguments, 1);\n};\ngoog.dom.removeChildren = function(a) {\n  for (var b; b = a.firstChild;) {\n    a.removeChild(b);\n  }\n};\ngoog.dom.insertSiblingBefore = function(a, b) {\n  goog.asserts.assert(null != a && null != b, \"goog.dom.insertSiblingBefore expects non-null arguments\");\n  b.parentNode && b.parentNode.insertBefore(a, b);\n};\ngoog.dom.insertSiblingAfter = function(a, b) {\n  goog.asserts.assert(null != a && null != b, \"goog.dom.insertSiblingAfter expects non-null arguments\");\n  b.parentNode && b.parentNode.insertBefore(a, b.nextSibling);\n};\ngoog.dom.insertChildAt = function(a, b, c) {\n  goog.asserts.assert(null != a, \"goog.dom.insertChildAt expects a non-null parent\");\n  a.insertBefore(b, a.childNodes[c] || null);\n};\ngoog.dom.removeNode = function(a) {\n  return a && a.parentNode ? a.parentNode.removeChild(a) : null;\n};\ngoog.dom.replaceNode = function(a, b) {\n  goog.asserts.assert(null != a && null != b, \"goog.dom.replaceNode expects non-null arguments\");\n  var c = b.parentNode;\n  c && c.replaceChild(a, b);\n};\ngoog.dom.flattenElement = function(a) {\n  var b, c = a.parentNode;\n  if (c && c.nodeType != goog.dom.NodeType.DOCUMENT_FRAGMENT) {\n    if (a.removeNode) {\n      return a.removeNode(!1);\n    }\n    for (; b = a.firstChild;) {\n      c.insertBefore(b, a);\n    }\n    return goog.dom.removeNode(a);\n  }\n};\ngoog.dom.getChildren = function(a) {\n  return goog.dom.BrowserFeature.CAN_USE_CHILDREN_ATTRIBUTE && void 0 != a.children ? a.children : goog.array.filter(a.childNodes, function(a) {\n    return a.nodeType == goog.dom.NodeType.ELEMENT;\n  });\n};\ngoog.dom.getFirstElementChild = function(a) {\n  return void 0 !== a.firstElementChild ? a.firstElementChild : goog.dom.getNextElementNode_(a.firstChild, !0);\n};\ngoog.dom.getLastElementChild = function(a) {\n  return void 0 !== a.lastElementChild ? a.lastElementChild : goog.dom.getNextElementNode_(a.lastChild, !1);\n};\ngoog.dom.getNextElementSibling = function(a) {\n  return void 0 !== a.nextElementSibling ? a.nextElementSibling : goog.dom.getNextElementNode_(a.nextSibling, !0);\n};\ngoog.dom.getPreviousElementSibling = function(a) {\n  return void 0 !== a.previousElementSibling ? a.previousElementSibling : goog.dom.getNextElementNode_(a.previousSibling, !1);\n};\ngoog.dom.getNextElementNode_ = function(a, b) {\n  for (; a && a.nodeType != goog.dom.NodeType.ELEMENT;) {\n    a = b ? a.nextSibling : a.previousSibling;\n  }\n  return a;\n};\ngoog.dom.getNextNode = function(a) {\n  if (!a) {\n    return null;\n  }\n  if (a.firstChild) {\n    return a.firstChild;\n  }\n  for (; a && !a.nextSibling;) {\n    a = a.parentNode;\n  }\n  return a ? a.nextSibling : null;\n};\ngoog.dom.getPreviousNode = function(a) {\n  if (!a) {\n    return null;\n  }\n  if (!a.previousSibling) {\n    return a.parentNode;\n  }\n  for (a = a.previousSibling; a && a.lastChild;) {\n    a = a.lastChild;\n  }\n  return a;\n};\ngoog.dom.isNodeLike = function(a) {\n  return goog.isObject(a) && 0 < a.nodeType;\n};\ngoog.dom.isElement = function(a) {\n  return goog.isObject(a) && a.nodeType == goog.dom.NodeType.ELEMENT;\n};\ngoog.dom.isWindow = function(a) {\n  return goog.isObject(a) && a.window == a;\n};\ngoog.dom.getParentElement = function(a) {\n  var b;\n  if (goog.dom.BrowserFeature.CAN_USE_PARENT_ELEMENT_PROPERTY && !(goog.userAgent.IE && goog.userAgent.isVersionOrHigher(\"9\") && !goog.userAgent.isVersionOrHigher(\"10\") && goog.global.SVGElement && a instanceof goog.global.SVGElement) && (b = a.parentElement)) {\n    return b;\n  }\n  b = a.parentNode;\n  return goog.dom.isElement(b) ? b : null;\n};\ngoog.dom.contains = function(a, b) {\n  if (!a || !b) {\n    return !1;\n  }\n  if (a.contains && b.nodeType == goog.dom.NodeType.ELEMENT) {\n    return a == b || a.contains(b);\n  }\n  if (\"undefined\" != typeof a.compareDocumentPosition) {\n    return a == b || !!(a.compareDocumentPosition(b) & 16);\n  }\n  for (; b && a != b;) {\n    b = b.parentNode;\n  }\n  return b == a;\n};\ngoog.dom.compareNodeOrder = function(a, b) {\n  if (a == b) {\n    return 0;\n  }\n  if (a.compareDocumentPosition) {\n    return a.compareDocumentPosition(b) & 2 ? 1 : -1;\n  }\n  if (goog.userAgent.IE && !goog.userAgent.isDocumentModeOrHigher(9)) {\n    if (a.nodeType == goog.dom.NodeType.DOCUMENT) {\n      return -1;\n    }\n    if (b.nodeType == goog.dom.NodeType.DOCUMENT) {\n      return 1;\n    }\n  }\n  if (\"sourceIndex\" in a || a.parentNode && \"sourceIndex\" in a.parentNode) {\n    var c = a.nodeType == goog.dom.NodeType.ELEMENT, d = b.nodeType == goog.dom.NodeType.ELEMENT;\n    if (c && d) {\n      return a.sourceIndex - b.sourceIndex;\n    }\n    var e = a.parentNode, f = b.parentNode;\n    return e == f ? goog.dom.compareSiblingOrder_(a, b) : !c && goog.dom.contains(e, b) ? -1 * goog.dom.compareParentsDescendantNodeIe_(a, b) : !d && goog.dom.contains(f, a) ? goog.dom.compareParentsDescendantNodeIe_(b, a) : (c ? a.sourceIndex : e.sourceIndex) - (d ? b.sourceIndex : f.sourceIndex);\n  }\n  d = goog.dom.getOwnerDocument(a);\n  c = d.createRange();\n  c.selectNode(a);\n  c.collapse(!0);\n  d = d.createRange();\n  d.selectNode(b);\n  d.collapse(!0);\n  return c.compareBoundaryPoints(goog.global.Range.START_TO_END, d);\n};\ngoog.dom.compareParentsDescendantNodeIe_ = function(a, b) {\n  var c = a.parentNode;\n  if (c == b) {\n    return -1;\n  }\n  for (var d = b; d.parentNode != c;) {\n    d = d.parentNode;\n  }\n  return goog.dom.compareSiblingOrder_(d, a);\n};\ngoog.dom.compareSiblingOrder_ = function(a, b) {\n  for (var c = b; c = c.previousSibling;) {\n    if (c == a) {\n      return -1;\n    }\n  }\n  return 1;\n};\ngoog.dom.findCommonAncestor = function(a) {\n  var b, c = arguments.length;\n  if (!c) {\n    return null;\n  }\n  if (1 == c) {\n    return arguments[0];\n  }\n  var d = [], e = Infinity;\n  for (b = 0; b < c; b++) {\n    for (var f = [], g = arguments[b]; g;) {\n      f.unshift(g), g = g.parentNode;\n    }\n    d.push(f);\n    e = Math.min(e, f.length);\n  }\n  f = null;\n  for (b = 0; b < e; b++) {\n    g = d[0][b];\n    for (var h = 1; h < c; h++) {\n      if (g != d[h][b]) {\n        return f;\n      }\n    }\n    f = g;\n  }\n  return f;\n};\ngoog.dom.isInDocument = function(a) {\n  return 16 == (a.ownerDocument.compareDocumentPosition(a) & 16);\n};\ngoog.dom.getOwnerDocument = function(a) {\n  goog.asserts.assert(a, \"Node cannot be null or undefined.\");\n  return a.nodeType == goog.dom.NodeType.DOCUMENT ? a : a.ownerDocument || a.document;\n};\ngoog.dom.getFrameContentDocument = function(a) {\n  return a.contentDocument || a.contentWindow.document;\n};\ngoog.dom.getFrameContentWindow = function(a) {\n  try {\n    return a.contentWindow || (a.contentDocument ? goog.dom.getWindow(a.contentDocument) : null);\n  } catch (b) {\n  }\n  return null;\n};\ngoog.dom.setTextContent = function(a, b) {\n  goog.asserts.assert(null != a, \"goog.dom.setTextContent expects a non-null value for node\");\n  if (\"textContent\" in a) {\n    a.textContent = b;\n  } else {\n    if (a.nodeType == goog.dom.NodeType.TEXT) {\n      a.data = String(b);\n    } else {\n      if (a.firstChild && a.firstChild.nodeType == goog.dom.NodeType.TEXT) {\n        for (; a.lastChild != a.firstChild;) {\n          a.removeChild(goog.asserts.assert(a.lastChild));\n        }\n        a.firstChild.data = String(b);\n      } else {\n        goog.dom.removeChildren(a);\n        var c = goog.dom.getOwnerDocument(a);\n        a.appendChild(c.createTextNode(String(b)));\n      }\n    }\n  }\n};\ngoog.dom.getOuterHtml = function(a) {\n  goog.asserts.assert(null !== a, \"goog.dom.getOuterHtml expects a non-null value for element\");\n  if (\"outerHTML\" in a) {\n    return a.outerHTML;\n  }\n  var b = goog.dom.getOwnerDocument(a);\n  b = goog.dom.createElement_(b, \"DIV\");\n  b.appendChild(a.cloneNode(!0));\n  return b.innerHTML;\n};\ngoog.dom.findNode = function(a, b) {\n  var c = [];\n  return goog.dom.findNodes_(a, b, c, !0) ? c[0] : void 0;\n};\ngoog.dom.findNodes = function(a, b) {\n  var c = [];\n  goog.dom.findNodes_(a, b, c, !1);\n  return c;\n};\ngoog.dom.findNodes_ = function(a, b, c, d) {\n  if (null != a) {\n    for (a = a.firstChild; a;) {\n      if (b(a) && (c.push(a), d) || goog.dom.findNodes_(a, b, c, d)) {\n        return !0;\n      }\n      a = a.nextSibling;\n    }\n  }\n  return !1;\n};\ngoog.dom.findElement = function(a, b) {\n  for (var c = goog.dom.getChildrenReverse_(a); 0 < c.length;) {\n    var d = c.pop();\n    if (b(d)) {\n      return d;\n    }\n    for (d = d.lastElementChild; d; d = d.previousElementSibling) {\n      c.push(d);\n    }\n  }\n  return null;\n};\ngoog.dom.findElements = function(a, b) {\n  for (var c = [], d = goog.dom.getChildrenReverse_(a); 0 < d.length;) {\n    var e = d.pop();\n    b(e) && c.push(e);\n    for (e = e.lastElementChild; e; e = e.previousElementSibling) {\n      d.push(e);\n    }\n  }\n  return c;\n};\ngoog.dom.getChildrenReverse_ = function(a) {\n  if (a.nodeType == goog.dom.NodeType.DOCUMENT) {\n    return [a.documentElement];\n  }\n  var b = [];\n  for (a = a.lastElementChild; a; a = a.previousElementSibling) {\n    b.push(a);\n  }\n  return b;\n};\ngoog.dom.TAGS_TO_IGNORE_ = {SCRIPT:1, STYLE:1, HEAD:1, IFRAME:1, OBJECT:1};\ngoog.dom.PREDEFINED_TAG_VALUES_ = {IMG:\" \", BR:\"\\n\"};\ngoog.dom.isFocusableTabIndex = function(a) {\n  return goog.dom.hasSpecifiedTabIndex_(a) && goog.dom.isTabIndexFocusable_(a);\n};\ngoog.dom.setFocusableTabIndex = function(a, b) {\n  b ? a.tabIndex = 0 : (a.tabIndex = -1, a.removeAttribute(\"tabIndex\"));\n};\ngoog.dom.isFocusable = function(a) {\n  var b;\n  return (b = goog.dom.nativelySupportsFocus_(a) ? !a.disabled && (!goog.dom.hasSpecifiedTabIndex_(a) || goog.dom.isTabIndexFocusable_(a)) : goog.dom.isFocusableTabIndex(a)) && goog.userAgent.IE ? goog.dom.hasNonZeroBoundingRect_(a) : b;\n};\ngoog.dom.hasSpecifiedTabIndex_ = function(a) {\n  return goog.userAgent.IE && !goog.userAgent.isVersionOrHigher(\"9\") ? (a = a.getAttributeNode(\"tabindex\"), null != a && a.specified) : a.hasAttribute(\"tabindex\");\n};\ngoog.dom.isTabIndexFocusable_ = function(a) {\n  a = a.tabIndex;\n  return \"number\" === typeof a && 0 <= a && 32768 > a;\n};\ngoog.dom.nativelySupportsFocus_ = function(a) {\n  return \"A\" == a.tagName && a.hasAttribute(\"href\") || \"INPUT\" == a.tagName || \"TEXTAREA\" == a.tagName || \"SELECT\" == a.tagName || \"BUTTON\" == a.tagName;\n};\ngoog.dom.hasNonZeroBoundingRect_ = function(a) {\n  a = !goog.isFunction(a.getBoundingClientRect) || goog.userAgent.IE && null == a.parentElement ? {height:a.offsetHeight, width:a.offsetWidth} : a.getBoundingClientRect();\n  return null != a && 0 < a.height && 0 < a.width;\n};\ngoog.dom.getTextContent = function(a) {\n  if (goog.dom.BrowserFeature.CAN_USE_INNER_TEXT && null !== a && \"innerText\" in a) {\n    a = goog.string.canonicalizeNewlines(a.innerText);\n  } else {\n    var b = [];\n    goog.dom.getTextContent_(a, b, !0);\n    a = b.join(\"\");\n  }\n  a = a.replace(/ \\xAD /g, \" \").replace(/\\xAD/g, \"\");\n  a = a.replace(/\\u200B/g, \"\");\n  goog.dom.BrowserFeature.CAN_USE_INNER_TEXT || (a = a.replace(/ +/g, \" \"));\n  \" \" != a && (a = a.replace(/^\\s*/, \"\"));\n  return a;\n};\ngoog.dom.getRawTextContent = function(a) {\n  var b = [];\n  goog.dom.getTextContent_(a, b, !1);\n  return b.join(\"\");\n};\ngoog.dom.getTextContent_ = function(a, b, c) {\n  if (!(a.nodeName in goog.dom.TAGS_TO_IGNORE_)) {\n    if (a.nodeType == goog.dom.NodeType.TEXT) {\n      c ? b.push(String(a.nodeValue).replace(/(\\r\\n|\\r|\\n)/g, \"\")) : b.push(a.nodeValue);\n    } else {\n      if (a.nodeName in goog.dom.PREDEFINED_TAG_VALUES_) {\n        b.push(goog.dom.PREDEFINED_TAG_VALUES_[a.nodeName]);\n      } else {\n        for (a = a.firstChild; a;) {\n          goog.dom.getTextContent_(a, b, c), a = a.nextSibling;\n        }\n      }\n    }\n  }\n};\ngoog.dom.getNodeTextLength = function(a) {\n  return goog.dom.getTextContent(a).length;\n};\ngoog.dom.getNodeTextOffset = function(a, b) {\n  for (var c = b || goog.dom.getOwnerDocument(a).body, d = []; a && a != c;) {\n    for (var e = a; e = e.previousSibling;) {\n      d.unshift(goog.dom.getTextContent(e));\n    }\n    a = a.parentNode;\n  }\n  return goog.string.trimLeft(d.join(\"\")).replace(/ +/g, \" \").length;\n};\ngoog.dom.getNodeAtOffset = function(a, b, c) {\n  a = [a];\n  for (var d = 0, e = null; 0 < a.length && d < b;) {\n    if (e = a.pop(), !(e.nodeName in goog.dom.TAGS_TO_IGNORE_)) {\n      if (e.nodeType == goog.dom.NodeType.TEXT) {\n        var f = e.nodeValue.replace(/(\\r\\n|\\r|\\n)/g, \"\").replace(/ +/g, \" \");\n        d += f.length;\n      } else {\n        if (e.nodeName in goog.dom.PREDEFINED_TAG_VALUES_) {\n          d += goog.dom.PREDEFINED_TAG_VALUES_[e.nodeName].length;\n        } else {\n          for (f = e.childNodes.length - 1; 0 <= f; f--) {\n            a.push(e.childNodes[f]);\n          }\n        }\n      }\n    }\n  }\n  goog.isObject(c) && (c.remainder = e ? e.nodeValue.length + b - d - 1 : 0, c.node = e);\n  return e;\n};\ngoog.dom.isNodeList = function(a) {\n  if (a && \"number\" == typeof a.length) {\n    if (goog.isObject(a)) {\n      return \"function\" == typeof a.item || \"string\" == typeof a.item;\n    }\n    if (goog.isFunction(a)) {\n      return \"function\" == typeof a.item;\n    }\n  }\n  return !1;\n};\ngoog.dom.getAncestorByTagNameAndClass = function(a, b, c, d) {\n  if (!b && !c) {\n    return null;\n  }\n  var e = b ? String(b).toUpperCase() : null;\n  return goog.dom.getAncestor(a, function(a) {\n    return (!e || a.nodeName == e) && (!c || \"string\" === typeof a.className && goog.array.contains(a.className.split(/\\s+/), c));\n  }, !0, d);\n};\ngoog.dom.getAncestorByClass = function(a, b, c) {\n  return goog.dom.getAncestorByTagNameAndClass(a, null, b, c);\n};\ngoog.dom.getAncestor = function(a, b, c, d) {\n  a && !c && (a = a.parentNode);\n  for (c = 0; a && (null == d || c <= d);) {\n    goog.asserts.assert(\"parentNode\" != a.name);\n    if (b(a)) {\n      return a;\n    }\n    a = a.parentNode;\n    c++;\n  }\n  return null;\n};\ngoog.dom.getActiveElement = function(a) {\n  try {\n    var b = a && a.activeElement;\n    return b && b.nodeName ? b : null;\n  } catch (c) {\n    return null;\n  }\n};\ngoog.dom.getPixelRatio = function() {\n  var a = goog.dom.getWindow();\n  return void 0 !== a.devicePixelRatio ? a.devicePixelRatio : a.matchMedia ? goog.dom.matchesPixelRatio_(3) || goog.dom.matchesPixelRatio_(2) || goog.dom.matchesPixelRatio_(1.5) || goog.dom.matchesPixelRatio_(1) || .75 : 1;\n};\ngoog.dom.matchesPixelRatio_ = function(a) {\n  return goog.dom.getWindow().matchMedia(\"(min-resolution: \" + a + \"dppx),(min--moz-device-pixel-ratio: \" + a + \"),(min-resolution: \" + 96 * a + \"dpi)\").matches ? a : 0;\n};\ngoog.dom.getCanvasContext2D = function(a) {\n  return a.getContext(\"2d\");\n};\ngoog.dom.DomHelper = function(a) {\n  this.document_ = a || goog.global.document || document;\n};\ngoog.dom.DomHelper.prototype.getDomHelper = goog.dom.getDomHelper;\ngoog.dom.DomHelper.prototype.setDocument = function(a) {\n  this.document_ = a;\n};\ngoog.dom.DomHelper.prototype.getDocument = function() {\n  return this.document_;\n};\ngoog.dom.DomHelper.prototype.getElement = function(a) {\n  return goog.dom.getElementHelper_(this.document_, a);\n};\ngoog.dom.DomHelper.prototype.getRequiredElement = function(a) {\n  return goog.dom.getRequiredElementHelper_(this.document_, a);\n};\ngoog.dom.DomHelper.prototype.$ = goog.dom.DomHelper.prototype.getElement;\ngoog.dom.DomHelper.prototype.getElementsByTagName = function(a, b) {\n  return (b || this.document_).getElementsByTagName(String(a));\n};\ngoog.dom.DomHelper.prototype.getElementsByTagNameAndClass = function(a, b, c) {\n  return goog.dom.getElementsByTagNameAndClass_(this.document_, a, b, c);\n};\ngoog.dom.DomHelper.prototype.getElementByTagNameAndClass = function(a, b, c) {\n  return goog.dom.getElementByTagNameAndClass_(this.document_, a, b, c);\n};\ngoog.dom.DomHelper.prototype.getElementsByClass = function(a, b) {\n  return goog.dom.getElementsByClass(a, b || this.document_);\n};\ngoog.dom.DomHelper.prototype.getElementByClass = function(a, b) {\n  return goog.dom.getElementByClass(a, b || this.document_);\n};\ngoog.dom.DomHelper.prototype.getRequiredElementByClass = function(a, b) {\n  return goog.dom.getRequiredElementByClass(a, b || this.document_);\n};\ngoog.dom.DomHelper.prototype.$$ = goog.dom.DomHelper.prototype.getElementsByTagNameAndClass;\ngoog.dom.DomHelper.prototype.setProperties = goog.dom.setProperties;\ngoog.dom.DomHelper.prototype.getViewportSize = function(a) {\n  return goog.dom.getViewportSize(a || this.getWindow());\n};\ngoog.dom.DomHelper.prototype.getDocumentHeight = function() {\n  return goog.dom.getDocumentHeight_(this.getWindow());\n};\ngoog.dom.DomHelper.prototype.createDom = function(a, b, c) {\n  return goog.dom.createDom_(this.document_, arguments);\n};\ngoog.dom.DomHelper.prototype.$dom = goog.dom.DomHelper.prototype.createDom;\ngoog.dom.DomHelper.prototype.createElement = function(a) {\n  return goog.dom.createElement_(this.document_, a);\n};\ngoog.dom.DomHelper.prototype.createTextNode = function(a) {\n  return this.document_.createTextNode(String(a));\n};\ngoog.dom.DomHelper.prototype.createTable = function(a, b, c) {\n  return goog.dom.createTable_(this.document_, a, b, !!c);\n};\ngoog.dom.DomHelper.prototype.safeHtmlToNode = function(a) {\n  return goog.dom.safeHtmlToNode_(this.document_, a);\n};\ngoog.dom.DomHelper.prototype.isCss1CompatMode = function() {\n  return goog.dom.isCss1CompatMode_(this.document_);\n};\ngoog.dom.DomHelper.prototype.getWindow = function() {\n  return goog.dom.getWindow_(this.document_);\n};\ngoog.dom.DomHelper.prototype.getDocumentScrollElement = function() {\n  return goog.dom.getDocumentScrollElement_(this.document_);\n};\ngoog.dom.DomHelper.prototype.getDocumentScroll = function() {\n  return goog.dom.getDocumentScroll_(this.document_);\n};\ngoog.dom.DomHelper.prototype.getActiveElement = function(a) {\n  return goog.dom.getActiveElement(a || this.document_);\n};\ngoog.dom.DomHelper.prototype.appendChild = goog.dom.appendChild;\ngoog.dom.DomHelper.prototype.append = goog.dom.append;\ngoog.dom.DomHelper.prototype.canHaveChildren = goog.dom.canHaveChildren;\ngoog.dom.DomHelper.prototype.removeChildren = goog.dom.removeChildren;\ngoog.dom.DomHelper.prototype.insertSiblingBefore = goog.dom.insertSiblingBefore;\ngoog.dom.DomHelper.prototype.insertSiblingAfter = goog.dom.insertSiblingAfter;\ngoog.dom.DomHelper.prototype.insertChildAt = goog.dom.insertChildAt;\ngoog.dom.DomHelper.prototype.removeNode = goog.dom.removeNode;\ngoog.dom.DomHelper.prototype.replaceNode = goog.dom.replaceNode;\ngoog.dom.DomHelper.prototype.flattenElement = goog.dom.flattenElement;\ngoog.dom.DomHelper.prototype.getChildren = goog.dom.getChildren;\ngoog.dom.DomHelper.prototype.getFirstElementChild = goog.dom.getFirstElementChild;\ngoog.dom.DomHelper.prototype.getLastElementChild = goog.dom.getLastElementChild;\ngoog.dom.DomHelper.prototype.getNextElementSibling = goog.dom.getNextElementSibling;\ngoog.dom.DomHelper.prototype.getPreviousElementSibling = goog.dom.getPreviousElementSibling;\ngoog.dom.DomHelper.prototype.getNextNode = goog.dom.getNextNode;\ngoog.dom.DomHelper.prototype.getPreviousNode = goog.dom.getPreviousNode;\ngoog.dom.DomHelper.prototype.isNodeLike = goog.dom.isNodeLike;\ngoog.dom.DomHelper.prototype.isElement = goog.dom.isElement;\ngoog.dom.DomHelper.prototype.isWindow = goog.dom.isWindow;\ngoog.dom.DomHelper.prototype.getParentElement = goog.dom.getParentElement;\ngoog.dom.DomHelper.prototype.contains = goog.dom.contains;\ngoog.dom.DomHelper.prototype.compareNodeOrder = goog.dom.compareNodeOrder;\ngoog.dom.DomHelper.prototype.findCommonAncestor = goog.dom.findCommonAncestor;\ngoog.dom.DomHelper.prototype.getOwnerDocument = goog.dom.getOwnerDocument;\ngoog.dom.DomHelper.prototype.getFrameContentDocument = goog.dom.getFrameContentDocument;\ngoog.dom.DomHelper.prototype.getFrameContentWindow = goog.dom.getFrameContentWindow;\ngoog.dom.DomHelper.prototype.setTextContent = goog.dom.setTextContent;\ngoog.dom.DomHelper.prototype.getOuterHtml = goog.dom.getOuterHtml;\ngoog.dom.DomHelper.prototype.findNode = goog.dom.findNode;\ngoog.dom.DomHelper.prototype.findNodes = goog.dom.findNodes;\ngoog.dom.DomHelper.prototype.isFocusableTabIndex = goog.dom.isFocusableTabIndex;\ngoog.dom.DomHelper.prototype.setFocusableTabIndex = goog.dom.setFocusableTabIndex;\ngoog.dom.DomHelper.prototype.isFocusable = goog.dom.isFocusable;\ngoog.dom.DomHelper.prototype.getTextContent = goog.dom.getTextContent;\ngoog.dom.DomHelper.prototype.getNodeTextLength = goog.dom.getNodeTextLength;\ngoog.dom.DomHelper.prototype.getNodeTextOffset = goog.dom.getNodeTextOffset;\ngoog.dom.DomHelper.prototype.getNodeAtOffset = goog.dom.getNodeAtOffset;\ngoog.dom.DomHelper.prototype.isNodeList = goog.dom.isNodeList;\ngoog.dom.DomHelper.prototype.getAncestorByTagNameAndClass = goog.dom.getAncestorByTagNameAndClass;\ngoog.dom.DomHelper.prototype.getAncestorByClass = goog.dom.getAncestorByClass;\ngoog.dom.DomHelper.prototype.getAncestor = goog.dom.getAncestor;\ngoog.dom.DomHelper.prototype.getCanvasContext2D = goog.dom.getCanvasContext2D;\ngoog.json = {};\ngoog.json.USE_NATIVE_JSON = !1;\ngoog.json.TRY_NATIVE_JSON = !1;\ngoog.json.isValid = function(a) {\n  return /^\\s*$/.test(a) ? !1 : /^[\\],:{}\\s\\u2028\\u2029]*$/.test(a.replace(/\\\\[\"\\\\\\/bfnrtu]/g, \"@\").replace(/(?:\"[^\"\\\\\\n\\r\\u2028\\u2029\\x00-\\x08\\x0a-\\x1f]*\"|true|false|null|-?\\d+(?:\\.\\d*)?(?:[eE][+\\-]?\\d+)?)[\\s\\u2028\\u2029]*(?=:|,|]|}|$)/g, \"]\").replace(/(?:^|:|,)(?:[\\s\\u2028\\u2029]*\\[)+/g, \"\"));\n};\ngoog.json.errorLogger_ = goog.nullFunction;\ngoog.json.setErrorLogger = function(a) {\n  goog.json.errorLogger_ = a;\n};\ngoog.json.parse = goog.json.USE_NATIVE_JSON ? goog.global.JSON.parse : function(a) {\n  if (goog.json.TRY_NATIVE_JSON) {\n    try {\n      return goog.global.JSON.parse(a);\n    } catch (d) {\n      var b = d;\n    }\n  }\n  a = String(a);\n  if (goog.json.isValid(a)) {\n    try {\n      var c = eval(\"(\" + a + \")\");\n      b && goog.json.errorLogger_(\"Invalid JSON: \" + a, b);\n      return c;\n    } catch (d) {\n    }\n  }\n  throw Error(\"Invalid JSON string: \" + a);\n};\ngoog.json.serialize = goog.json.USE_NATIVE_JSON ? goog.global.JSON.stringify : function(a, b) {\n  return (new goog.json.Serializer(b)).serialize(a);\n};\ngoog.json.Serializer = function(a) {\n  this.replacer_ = a;\n};\ngoog.json.Serializer.prototype.serialize = function(a) {\n  var b = [];\n  this.serializeInternal(a, b);\n  return b.join(\"\");\n};\ngoog.json.Serializer.prototype.serializeInternal = function(a, b) {\n  if (null == a) {\n    b.push(\"null\");\n  } else {\n    if (\"object\" == typeof a) {\n      if (goog.isArray(a)) {\n        this.serializeArray(a, b);\n        return;\n      }\n      if (a instanceof String || a instanceof Number || a instanceof Boolean) {\n        a = a.valueOf();\n      } else {\n        this.serializeObject_(a, b);\n        return;\n      }\n    }\n    switch(typeof a) {\n      case \"string\":\n        this.serializeString_(a, b);\n        break;\n      case \"number\":\n        this.serializeNumber_(a, b);\n        break;\n      case \"boolean\":\n        b.push(String(a));\n        break;\n      case \"function\":\n        b.push(\"null\");\n        break;\n      default:\n        throw Error(\"Unknown type: \" + typeof a);\n    }\n  }\n};\ngoog.json.Serializer.charToJsonCharCache_ = {'\"':'\\\\\"', \"\\\\\":\"\\\\\\\\\", \"/\":\"\\\\/\", \"\\b\":\"\\\\b\", \"\\f\":\"\\\\f\", \"\\n\":\"\\\\n\", \"\\r\":\"\\\\r\", \"\\t\":\"\\\\t\", \"\\x0B\":\"\\\\u000b\"};\ngoog.json.Serializer.charsToReplace_ = /\\uffff/.test(\"\\uffff\") ? /[\\\\\"\\x00-\\x1f\\x7f-\\uffff]/g : /[\\\\\"\\x00-\\x1f\\x7f-\\xff]/g;\ngoog.json.Serializer.prototype.serializeString_ = function(a, b) {\n  b.push('\"', a.replace(goog.json.Serializer.charsToReplace_, function(a) {\n    var b = goog.json.Serializer.charToJsonCharCache_[a];\n    b || (b = \"\\\\u\" + (a.charCodeAt(0) | 65536).toString(16).substr(1), goog.json.Serializer.charToJsonCharCache_[a] = b);\n    return b;\n  }), '\"');\n};\ngoog.json.Serializer.prototype.serializeNumber_ = function(a, b) {\n  b.push(isFinite(a) && !isNaN(a) ? String(a) : \"null\");\n};\ngoog.json.Serializer.prototype.serializeArray = function(a, b) {\n  var c = a.length;\n  b.push(\"[\");\n  for (var d = \"\", e = 0; e < c; e++) {\n    b.push(d), d = a[e], this.serializeInternal(this.replacer_ ? this.replacer_.call(a, String(e), d) : d, b), d = \",\";\n  }\n  b.push(\"]\");\n};\ngoog.json.Serializer.prototype.serializeObject_ = function(a, b) {\n  b.push(\"{\");\n  var c = \"\", d;\n  for (d in a) {\n    if (Object.prototype.hasOwnProperty.call(a, d)) {\n      var e = a[d];\n      \"function\" != typeof e && (b.push(c), this.serializeString_(d, b), b.push(\":\"), this.serializeInternal(this.replacer_ ? this.replacer_.call(a, d, e) : e, b), c = \",\");\n    }\n  }\n  b.push(\"}\");\n};\ngoog.proto2.ObjectSerializer = function(a, b) {\n  this.keyOption_ = a;\n  this.serializeBooleanAsNumber_ = b;\n};\ngoog.inherits(goog.proto2.ObjectSerializer, goog.proto2.Serializer);\ngoog.proto2.ObjectSerializer.KeyOption = {TAG:0, NAME:1, CAMEL_CASE_NAME:2};\ngoog.proto2.ObjectSerializer.prototype.serialize = function(a) {\n  for (var b = a.getDescriptor().getFields(), c = {}, d = 0; d < b.length; d++) {\n    var e = b[d], f = e.getTag();\n    switch(this.keyOption_) {\n      case goog.proto2.ObjectSerializer.KeyOption.TAG:\n        break;\n      case goog.proto2.ObjectSerializer.KeyOption.NAME:\n        f = e.getName();\n        break;\n      case goog.proto2.ObjectSerializer.KeyOption.CAMEL_CASE_NAME:\n        f = goog.string.toCamelCase(e.getName().replace(/_/g, \"-\"));\n        break;\n      default:\n        goog.asserts.assert(this.keyOption_ !== goog.proto2.ObjectSerializer.KeyOption.TAG && this.keyOption_ !== goog.proto2.ObjectSerializer.KeyOption.NAME && this.keyOption_ !== goog.proto2.ObjectSerializer.KeyOption.CAMEL_CASE_NAME, \"keyOption should be one of TAG, NAME, or CAMEL_CASE_NAME\");\n    }\n    if (a.has(e)) {\n      if (e.isRepeated()) {\n        var g = [];\n        c[f] = g;\n        for (f = 0; f < a.countOf(e); f++) {\n          g.push(this.getSerializedValue(e, a.get(e, f)));\n        }\n      } else {\n        c[f] = this.getSerializedValue(e, a.get(e));\n      }\n    }\n  }\n  a.forEachUnknown(function(a, b) {\n    c[a] = b;\n  });\n  return c;\n};\ngoog.proto2.ObjectSerializer.prototype.getSerializedValue = function(a, b) {\n  return this.serializeBooleanAsNumber_ && a.getFieldType() == goog.proto2.FieldDescriptor.FieldType.BOOL && \"boolean\" === typeof b ? b ? 1 : 0 : goog.proto2.ObjectSerializer.superClass_.getSerializedValue.call(this, a, b);\n};\ngoog.proto2.ObjectSerializer.prototype.getDeserializedValue = function(a, b) {\n  return a.getFieldType() == goog.proto2.FieldDescriptor.FieldType.BOOL && \"number\" === typeof b ? !!b : goog.proto2.ObjectSerializer.superClass_.getDeserializedValue.call(this, a, b);\n};\ngoog.proto2.ObjectSerializer.prototype.deserializeTo = function(a, b) {\n  var c = a.getDescriptor(), d;\n  for (d in b) {\n    var e = b[d], f = goog.string.isNumeric(d);\n    if (f) {\n      var g = c.findFieldByTag(d);\n    } else {\n      goog.asserts.assert(this.keyOption_ == goog.proto2.ObjectSerializer.KeyOption.NAME || this.keyOption_ == goog.proto2.ObjectSerializer.KeyOption.CAMEL_CASE_NAME, \"Key mode \" + this.keyOption_ + \"for key \" + d + \" is not \" + goog.proto2.ObjectSerializer.KeyOption.NAME + \" nor \" + goog.proto2.ObjectSerializer.KeyOption.CAMEL_CASE_NAME), this.keyOption_ == goog.proto2.ObjectSerializer.KeyOption.CAMEL_CASE_NAME && (d = goog.string.toSelectorCase(d).replace(/\\-/g, \"_\")), g = c.findFieldByName(d);\n    }\n    if (g) {\n      if (g.isRepeated()) {\n        for (goog.asserts.assert(goog.isArray(e), \"Value for repeated field \" + g + \" must be an array.\"), f = 0; f < e.length; f++) {\n          a.add(g, this.getDeserializedValue(g, e[f]));\n        }\n      } else {\n        goog.asserts.assert(!goog.isArray(e), \"Value for non-repeated field \" + g + \" must not be an array.\"), a.set(g, this.getDeserializedValue(g, e));\n      }\n    } else {\n      f ? a.setUnknown(Number(d), e) : goog.asserts.fail(\"Failed to find field: \" + d);\n    }\n  }\n};\n/*\n\n Protocol Buffer 2 Copyright 2008 Google Inc.\n All other code copyright its respective owners.\n Copyright (C) 2010 The Libphonenumber Authors\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n*/\nvar i18n = {phonenumbers:{}};\ni18n.phonenumbers.NumberFormat = function() {\n  goog.proto2.Message.call(this);\n};\ngoog.inherits(i18n.phonenumbers.NumberFormat, goog.proto2.Message);\ni18n.phonenumbers.NumberFormat.descriptor_ = null;\ni18n.phonenumbers.NumberFormat.prototype.getPattern = function() {\n  return this.get$Value(1);\n};\ni18n.phonenumbers.NumberFormat.prototype.getPatternOrDefault = function() {\n  return this.get$ValueOrDefault(1);\n};\ni18n.phonenumbers.NumberFormat.prototype.setPattern = function(a) {\n  this.set$Value(1, a);\n};\ni18n.phonenumbers.NumberFormat.prototype.hasPattern = function() {\n  return this.has$Value(1);\n};\ni18n.phonenumbers.NumberFormat.prototype.patternCount = function() {\n  return this.count$Values(1);\n};\ni18n.phonenumbers.NumberFormat.prototype.clearPattern = function() {\n  this.clear$Field(1);\n};\ni18n.phonenumbers.NumberFormat.prototype.getFormat = function() {\n  return this.get$Value(2);\n};\ni18n.phonenumbers.NumberFormat.prototype.getFormatOrDefault = function() {\n  return this.get$ValueOrDefault(2);\n};\ni18n.phonenumbers.NumberFormat.prototype.setFormat = function(a) {\n  this.set$Value(2, a);\n};\ni18n.phonenumbers.NumberFormat.prototype.hasFormat = function() {\n  return this.has$Value(2);\n};\ni18n.phonenumbers.NumberFormat.prototype.formatCount = function() {\n  return this.count$Values(2);\n};\ni18n.phonenumbers.NumberFormat.prototype.clearFormat = function() {\n  this.clear$Field(2);\n};\ni18n.phonenumbers.NumberFormat.prototype.getLeadingDigitsPattern = function(a) {\n  return this.get$Value(3, a);\n};\ni18n.phonenumbers.NumberFormat.prototype.getLeadingDigitsPatternOrDefault = function(a) {\n  return this.get$ValueOrDefault(3, a);\n};\ni18n.phonenumbers.NumberFormat.prototype.addLeadingDigitsPattern = function(a) {\n  this.add$Value(3, a);\n};\ni18n.phonenumbers.NumberFormat.prototype.leadingDigitsPatternArray = function() {\n  return this.array$Values(3);\n};\ni18n.phonenumbers.NumberFormat.prototype.hasLeadingDigitsPattern = function() {\n  return this.has$Value(3);\n};\ni18n.phonenumbers.NumberFormat.prototype.leadingDigitsPatternCount = function() {\n  return this.count$Values(3);\n};\ni18n.phonenumbers.NumberFormat.prototype.clearLeadingDigitsPattern = function() {\n  this.clear$Field(3);\n};\ni18n.phonenumbers.NumberFormat.prototype.getNationalPrefixFormattingRule = function() {\n  return this.get$Value(4);\n};\ni18n.phonenumbers.NumberFormat.prototype.getNationalPrefixFormattingRuleOrDefault = function() {\n  return this.get$ValueOrDefault(4);\n};\ni18n.phonenumbers.NumberFormat.prototype.setNationalPrefixFormattingRule = function(a) {\n  this.set$Value(4, a);\n};\ni18n.phonenumbers.NumberFormat.prototype.hasNationalPrefixFormattingRule = function() {\n  return this.has$Value(4);\n};\ni18n.phonenumbers.NumberFormat.prototype.nationalPrefixFormattingRuleCount = function() {\n  return this.count$Values(4);\n};\ni18n.phonenumbers.NumberFormat.prototype.clearNationalPrefixFormattingRule = function() {\n  this.clear$Field(4);\n};\ni18n.phonenumbers.NumberFormat.prototype.getNationalPrefixOptionalWhenFormatting = function() {\n  return this.get$Value(6);\n};\ni18n.phonenumbers.NumberFormat.prototype.getNationalPrefixOptionalWhenFormattingOrDefault = function() {\n  return this.get$ValueOrDefault(6);\n};\ni18n.phonenumbers.NumberFormat.prototype.setNationalPrefixOptionalWhenFormatting = function(a) {\n  this.set$Value(6, a);\n};\ni18n.phonenumbers.NumberFormat.prototype.hasNationalPrefixOptionalWhenFormatting = function() {\n  return this.has$Value(6);\n};\ni18n.phonenumbers.NumberFormat.prototype.nationalPrefixOptionalWhenFormattingCount = function() {\n  return this.count$Values(6);\n};\ni18n.phonenumbers.NumberFormat.prototype.clearNationalPrefixOptionalWhenFormatting = function() {\n  this.clear$Field(6);\n};\ni18n.phonenumbers.NumberFormat.prototype.getDomesticCarrierCodeFormattingRule = function() {\n  return this.get$Value(5);\n};\ni18n.phonenumbers.NumberFormat.prototype.getDomesticCarrierCodeFormattingRuleOrDefault = function() {\n  return this.get$ValueOrDefault(5);\n};\ni18n.phonenumbers.NumberFormat.prototype.setDomesticCarrierCodeFormattingRule = function(a) {\n  this.set$Value(5, a);\n};\ni18n.phonenumbers.NumberFormat.prototype.hasDomesticCarrierCodeFormattingRule = function() {\n  return this.has$Value(5);\n};\ni18n.phonenumbers.NumberFormat.prototype.domesticCarrierCodeFormattingRuleCount = function() {\n  return this.count$Values(5);\n};\ni18n.phonenumbers.NumberFormat.prototype.clearDomesticCarrierCodeFormattingRule = function() {\n  this.clear$Field(5);\n};\ni18n.phonenumbers.PhoneNumberDesc = function() {\n  goog.proto2.Message.call(this);\n};\ngoog.inherits(i18n.phonenumbers.PhoneNumberDesc, goog.proto2.Message);\ni18n.phonenumbers.PhoneNumberDesc.descriptor_ = null;\ni18n.phonenumbers.PhoneNumberDesc.prototype.getNationalNumberPattern = function() {\n  return this.get$Value(2);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.getNationalNumberPatternOrDefault = function() {\n  return this.get$ValueOrDefault(2);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.setNationalNumberPattern = function(a) {\n  this.set$Value(2, a);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.hasNationalNumberPattern = function() {\n  return this.has$Value(2);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.nationalNumberPatternCount = function() {\n  return this.count$Values(2);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.clearNationalNumberPattern = function() {\n  this.clear$Field(2);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.getPossibleLength = function(a) {\n  return this.get$Value(9, a);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.getPossibleLengthOrDefault = function(a) {\n  return this.get$ValueOrDefault(9, a);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.addPossibleLength = function(a) {\n  this.add$Value(9, a);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.possibleLengthArray = function() {\n  return this.array$Values(9);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.hasPossibleLength = function() {\n  return this.has$Value(9);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.possibleLengthCount = function() {\n  return this.count$Values(9);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.clearPossibleLength = function() {\n  this.clear$Field(9);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.getPossibleLengthLocalOnly = function(a) {\n  return this.get$Value(10, a);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.getPossibleLengthLocalOnlyOrDefault = function(a) {\n  return this.get$ValueOrDefault(10, a);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.addPossibleLengthLocalOnly = function(a) {\n  this.add$Value(10, a);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.possibleLengthLocalOnlyArray = function() {\n  return this.array$Values(10);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.hasPossibleLengthLocalOnly = function() {\n  return this.has$Value(10);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.possibleLengthLocalOnlyCount = function() {\n  return this.count$Values(10);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.clearPossibleLengthLocalOnly = function() {\n  this.clear$Field(10);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.getExampleNumber = function() {\n  return this.get$Value(6);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.getExampleNumberOrDefault = function() {\n  return this.get$ValueOrDefault(6);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.setExampleNumber = function(a) {\n  this.set$Value(6, a);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.hasExampleNumber = function() {\n  return this.has$Value(6);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.exampleNumberCount = function() {\n  return this.count$Values(6);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.clearExampleNumber = function() {\n  this.clear$Field(6);\n};\ni18n.phonenumbers.PhoneMetadata = function() {\n  goog.proto2.Message.call(this);\n};\ngoog.inherits(i18n.phonenumbers.PhoneMetadata, goog.proto2.Message);\ni18n.phonenumbers.PhoneMetadata.descriptor_ = null;\ni18n.phonenumbers.PhoneMetadata.prototype.getGeneralDesc = function() {\n  return this.get$Value(1);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getGeneralDescOrDefault = function() {\n  return this.get$ValueOrDefault(1);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setGeneralDesc = function(a) {\n  this.set$Value(1, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasGeneralDesc = function() {\n  return this.has$Value(1);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.generalDescCount = function() {\n  return this.count$Values(1);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearGeneralDesc = function() {\n  this.clear$Field(1);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getFixedLine = function() {\n  return this.get$Value(2);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getFixedLineOrDefault = function() {\n  return this.get$ValueOrDefault(2);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setFixedLine = function(a) {\n  this.set$Value(2, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasFixedLine = function() {\n  return this.has$Value(2);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.fixedLineCount = function() {\n  return this.count$Values(2);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearFixedLine = function() {\n  this.clear$Field(2);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getMobile = function() {\n  return this.get$Value(3);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getMobileOrDefault = function() {\n  return this.get$ValueOrDefault(3);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setMobile = function(a) {\n  this.set$Value(3, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasMobile = function() {\n  return this.has$Value(3);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.mobileCount = function() {\n  return this.count$Values(3);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearMobile = function() {\n  this.clear$Field(3);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getTollFree = function() {\n  return this.get$Value(4);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getTollFreeOrDefault = function() {\n  return this.get$ValueOrDefault(4);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setTollFree = function(a) {\n  this.set$Value(4, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasTollFree = function() {\n  return this.has$Value(4);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.tollFreeCount = function() {\n  return this.count$Values(4);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearTollFree = function() {\n  this.clear$Field(4);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getPremiumRate = function() {\n  return this.get$Value(5);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getPremiumRateOrDefault = function() {\n  return this.get$ValueOrDefault(5);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setPremiumRate = function(a) {\n  this.set$Value(5, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasPremiumRate = function() {\n  return this.has$Value(5);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.premiumRateCount = function() {\n  return this.count$Values(5);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearPremiumRate = function() {\n  this.clear$Field(5);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getSharedCost = function() {\n  return this.get$Value(6);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getSharedCostOrDefault = function() {\n  return this.get$ValueOrDefault(6);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setSharedCost = function(a) {\n  this.set$Value(6, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasSharedCost = function() {\n  return this.has$Value(6);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.sharedCostCount = function() {\n  return this.count$Values(6);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearSharedCost = function() {\n  this.clear$Field(6);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getPersonalNumber = function() {\n  return this.get$Value(7);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getPersonalNumberOrDefault = function() {\n  return this.get$ValueOrDefault(7);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setPersonalNumber = function(a) {\n  this.set$Value(7, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasPersonalNumber = function() {\n  return this.has$Value(7);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.personalNumberCount = function() {\n  return this.count$Values(7);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearPersonalNumber = function() {\n  this.clear$Field(7);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getVoip = function() {\n  return this.get$Value(8);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getVoipOrDefault = function() {\n  return this.get$ValueOrDefault(8);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setVoip = function(a) {\n  this.set$Value(8, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasVoip = function() {\n  return this.has$Value(8);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.voipCount = function() {\n  return this.count$Values(8);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearVoip = function() {\n  this.clear$Field(8);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getPager = function() {\n  return this.get$Value(21);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getPagerOrDefault = function() {\n  return this.get$ValueOrDefault(21);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setPager = function(a) {\n  this.set$Value(21, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasPager = function() {\n  return this.has$Value(21);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.pagerCount = function() {\n  return this.count$Values(21);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearPager = function() {\n  this.clear$Field(21);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getUan = function() {\n  return this.get$Value(25);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getUanOrDefault = function() {\n  return this.get$ValueOrDefault(25);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setUan = function(a) {\n  this.set$Value(25, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasUan = function() {\n  return this.has$Value(25);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.uanCount = function() {\n  return this.count$Values(25);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearUan = function() {\n  this.clear$Field(25);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getEmergency = function() {\n  return this.get$Value(27);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getEmergencyOrDefault = function() {\n  return this.get$ValueOrDefault(27);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setEmergency = function(a) {\n  this.set$Value(27, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasEmergency = function() {\n  return this.has$Value(27);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.emergencyCount = function() {\n  return this.count$Values(27);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearEmergency = function() {\n  this.clear$Field(27);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getVoicemail = function() {\n  return this.get$Value(28);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getVoicemailOrDefault = function() {\n  return this.get$ValueOrDefault(28);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setVoicemail = function(a) {\n  this.set$Value(28, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasVoicemail = function() {\n  return this.has$Value(28);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.voicemailCount = function() {\n  return this.count$Values(28);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearVoicemail = function() {\n  this.clear$Field(28);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getShortCode = function() {\n  return this.get$Value(29);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getShortCodeOrDefault = function() {\n  return this.get$ValueOrDefault(29);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setShortCode = function(a) {\n  this.set$Value(29, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasShortCode = function() {\n  return this.has$Value(29);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.shortCodeCount = function() {\n  return this.count$Values(29);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearShortCode = function() {\n  this.clear$Field(29);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getStandardRate = function() {\n  return this.get$Value(30);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getStandardRateOrDefault = function() {\n  return this.get$ValueOrDefault(30);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setStandardRate = function(a) {\n  this.set$Value(30, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasStandardRate = function() {\n  return this.has$Value(30);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.standardRateCount = function() {\n  return this.count$Values(30);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearStandardRate = function() {\n  this.clear$Field(30);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getCarrierSpecific = function() {\n  return this.get$Value(31);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getCarrierSpecificOrDefault = function() {\n  return this.get$ValueOrDefault(31);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setCarrierSpecific = function(a) {\n  this.set$Value(31, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasCarrierSpecific = function() {\n  return this.has$Value(31);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.carrierSpecificCount = function() {\n  return this.count$Values(31);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearCarrierSpecific = function() {\n  this.clear$Field(31);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getSmsServices = function() {\n  return this.get$Value(33);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getSmsServicesOrDefault = function() {\n  return this.get$ValueOrDefault(33);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setSmsServices = function(a) {\n  this.set$Value(33, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasSmsServices = function() {\n  return this.has$Value(33);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.smsServicesCount = function() {\n  return this.count$Values(33);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearSmsServices = function() {\n  this.clear$Field(33);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getNoInternationalDialling = function() {\n  return this.get$Value(24);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getNoInternationalDiallingOrDefault = function() {\n  return this.get$ValueOrDefault(24);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setNoInternationalDialling = function(a) {\n  this.set$Value(24, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasNoInternationalDialling = function() {\n  return this.has$Value(24);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.noInternationalDiallingCount = function() {\n  return this.count$Values(24);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearNoInternationalDialling = function() {\n  this.clear$Field(24);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getId = function() {\n  return this.get$Value(9);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getIdOrDefault = function() {\n  return this.get$ValueOrDefault(9);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setId = function(a) {\n  this.set$Value(9, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasId = function() {\n  return this.has$Value(9);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.idCount = function() {\n  return this.count$Values(9);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearId = function() {\n  this.clear$Field(9);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getCountryCode = function() {\n  return this.get$Value(10);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getCountryCodeOrDefault = function() {\n  return this.get$ValueOrDefault(10);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setCountryCode = function(a) {\n  this.set$Value(10, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasCountryCode = function() {\n  return this.has$Value(10);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.countryCodeCount = function() {\n  return this.count$Values(10);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearCountryCode = function() {\n  this.clear$Field(10);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getInternationalPrefix = function() {\n  return this.get$Value(11);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getInternationalPrefixOrDefault = function() {\n  return this.get$ValueOrDefault(11);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setInternationalPrefix = function(a) {\n  this.set$Value(11, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasInternationalPrefix = function() {\n  return this.has$Value(11);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.internationalPrefixCount = function() {\n  return this.count$Values(11);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearInternationalPrefix = function() {\n  this.clear$Field(11);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getPreferredInternationalPrefix = function() {\n  return this.get$Value(17);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getPreferredInternationalPrefixOrDefault = function() {\n  return this.get$ValueOrDefault(17);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setPreferredInternationalPrefix = function(a) {\n  this.set$Value(17, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasPreferredInternationalPrefix = function() {\n  return this.has$Value(17);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.preferredInternationalPrefixCount = function() {\n  return this.count$Values(17);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearPreferredInternationalPrefix = function() {\n  this.clear$Field(17);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getNationalPrefix = function() {\n  return this.get$Value(12);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getNationalPrefixOrDefault = function() {\n  return this.get$ValueOrDefault(12);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setNationalPrefix = function(a) {\n  this.set$Value(12, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasNationalPrefix = function() {\n  return this.has$Value(12);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.nationalPrefixCount = function() {\n  return this.count$Values(12);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearNationalPrefix = function() {\n  this.clear$Field(12);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getPreferredExtnPrefix = function() {\n  return this.get$Value(13);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getPreferredExtnPrefixOrDefault = function() {\n  return this.get$ValueOrDefault(13);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setPreferredExtnPrefix = function(a) {\n  this.set$Value(13, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasPreferredExtnPrefix = function() {\n  return this.has$Value(13);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.preferredExtnPrefixCount = function() {\n  return this.count$Values(13);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearPreferredExtnPrefix = function() {\n  this.clear$Field(13);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getNationalPrefixForParsing = function() {\n  return this.get$Value(15);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getNationalPrefixForParsingOrDefault = function() {\n  return this.get$ValueOrDefault(15);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setNationalPrefixForParsing = function(a) {\n  this.set$Value(15, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasNationalPrefixForParsing = function() {\n  return this.has$Value(15);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.nationalPrefixForParsingCount = function() {\n  return this.count$Values(15);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearNationalPrefixForParsing = function() {\n  this.clear$Field(15);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getNationalPrefixTransformRule = function() {\n  return this.get$Value(16);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getNationalPrefixTransformRuleOrDefault = function() {\n  return this.get$ValueOrDefault(16);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setNationalPrefixTransformRule = function(a) {\n  this.set$Value(16, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasNationalPrefixTransformRule = function() {\n  return this.has$Value(16);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.nationalPrefixTransformRuleCount = function() {\n  return this.count$Values(16);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearNationalPrefixTransformRule = function() {\n  this.clear$Field(16);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getSameMobileAndFixedLinePattern = function() {\n  return this.get$Value(18);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getSameMobileAndFixedLinePatternOrDefault = function() {\n  return this.get$ValueOrDefault(18);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setSameMobileAndFixedLinePattern = function(a) {\n  this.set$Value(18, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasSameMobileAndFixedLinePattern = function() {\n  return this.has$Value(18);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.sameMobileAndFixedLinePatternCount = function() {\n  return this.count$Values(18);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearSameMobileAndFixedLinePattern = function() {\n  this.clear$Field(18);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getNumberFormat = function(a) {\n  return this.get$Value(19, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getNumberFormatOrDefault = function(a) {\n  return this.get$ValueOrDefault(19, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.addNumberFormat = function(a) {\n  this.add$Value(19, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.numberFormatArray = function() {\n  return this.array$Values(19);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasNumberFormat = function() {\n  return this.has$Value(19);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.numberFormatCount = function() {\n  return this.count$Values(19);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearNumberFormat = function() {\n  this.clear$Field(19);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getIntlNumberFormat = function(a) {\n  return this.get$Value(20, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getIntlNumberFormatOrDefault = function(a) {\n  return this.get$ValueOrDefault(20, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.addIntlNumberFormat = function(a) {\n  this.add$Value(20, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.intlNumberFormatArray = function() {\n  return this.array$Values(20);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasIntlNumberFormat = function() {\n  return this.has$Value(20);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.intlNumberFormatCount = function() {\n  return this.count$Values(20);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearIntlNumberFormat = function() {\n  this.clear$Field(20);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getMainCountryForCode = function() {\n  return this.get$Value(22);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getMainCountryForCodeOrDefault = function() {\n  return this.get$ValueOrDefault(22);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setMainCountryForCode = function(a) {\n  this.set$Value(22, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasMainCountryForCode = function() {\n  return this.has$Value(22);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.mainCountryForCodeCount = function() {\n  return this.count$Values(22);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearMainCountryForCode = function() {\n  this.clear$Field(22);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getLeadingDigits = function() {\n  return this.get$Value(23);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getLeadingDigitsOrDefault = function() {\n  return this.get$ValueOrDefault(23);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setLeadingDigits = function(a) {\n  this.set$Value(23, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasLeadingDigits = function() {\n  return this.has$Value(23);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.leadingDigitsCount = function() {\n  return this.count$Values(23);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearLeadingDigits = function() {\n  this.clear$Field(23);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getLeadingZeroPossible = function() {\n  return this.get$Value(26);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getLeadingZeroPossibleOrDefault = function() {\n  return this.get$ValueOrDefault(26);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setLeadingZeroPossible = function(a) {\n  this.set$Value(26, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasLeadingZeroPossible = function() {\n  return this.has$Value(26);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.leadingZeroPossibleCount = function() {\n  return this.count$Values(26);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearLeadingZeroPossible = function() {\n  this.clear$Field(26);\n};\ni18n.phonenumbers.PhoneMetadataCollection = function() {\n  goog.proto2.Message.call(this);\n};\ngoog.inherits(i18n.phonenumbers.PhoneMetadataCollection, goog.proto2.Message);\ni18n.phonenumbers.PhoneMetadataCollection.descriptor_ = null;\ni18n.phonenumbers.PhoneMetadataCollection.prototype.getMetadata = function(a) {\n  return this.get$Value(1, a);\n};\ni18n.phonenumbers.PhoneMetadataCollection.prototype.getMetadataOrDefault = function(a) {\n  return this.get$ValueOrDefault(1, a);\n};\ni18n.phonenumbers.PhoneMetadataCollection.prototype.addMetadata = function(a) {\n  this.add$Value(1, a);\n};\ni18n.phonenumbers.PhoneMetadataCollection.prototype.metadataArray = function() {\n  return this.array$Values(1);\n};\ni18n.phonenumbers.PhoneMetadataCollection.prototype.hasMetadata = function() {\n  return this.has$Value(1);\n};\ni18n.phonenumbers.PhoneMetadataCollection.prototype.metadataCount = function() {\n  return this.count$Values(1);\n};\ni18n.phonenumbers.PhoneMetadataCollection.prototype.clearMetadata = function() {\n  this.clear$Field(1);\n};\ni18n.phonenumbers.NumberFormat.prototype.getDescriptor = function() {\n  var a = i18n.phonenumbers.NumberFormat.descriptor_;\n  a || (i18n.phonenumbers.NumberFormat.descriptor_ = a = goog.proto2.Message.createDescriptor(i18n.phonenumbers.NumberFormat, {0:{name:\"NumberFormat\", fullName:\"i18n.phonenumbers.NumberFormat\"}, 1:{name:\"pattern\", required:!0, fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 2:{name:\"format\", required:!0, fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 3:{name:\"leading_digits_pattern\", repeated:!0, fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 4:{name:\"national_prefix_formatting_rule\",\n  fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 6:{name:\"national_prefix_optional_when_formatting\", fieldType:goog.proto2.Message.FieldType.BOOL, defaultValue:!1, type:Boolean}, 5:{name:\"domestic_carrier_code_formatting_rule\", fieldType:goog.proto2.Message.FieldType.STRING, type:String}}));\n  return a;\n};\ni18n.phonenumbers.NumberFormat.getDescriptor = i18n.phonenumbers.NumberFormat.prototype.getDescriptor;\ni18n.phonenumbers.PhoneNumberDesc.prototype.getDescriptor = function() {\n  var a = i18n.phonenumbers.PhoneNumberDesc.descriptor_;\n  a || (i18n.phonenumbers.PhoneNumberDesc.descriptor_ = a = goog.proto2.Message.createDescriptor(i18n.phonenumbers.PhoneNumberDesc, {0:{name:\"PhoneNumberDesc\", fullName:\"i18n.phonenumbers.PhoneNumberDesc\"}, 2:{name:\"national_number_pattern\", fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 9:{name:\"possible_length\", repeated:!0, fieldType:goog.proto2.Message.FieldType.INT32, type:Number}, 10:{name:\"possible_length_local_only\", repeated:!0, fieldType:goog.proto2.Message.FieldType.INT32,\n  type:Number}, 6:{name:\"example_number\", fieldType:goog.proto2.Message.FieldType.STRING, type:String}}));\n  return a;\n};\ni18n.phonenumbers.PhoneNumberDesc.getDescriptor = i18n.phonenumbers.PhoneNumberDesc.prototype.getDescriptor;\ni18n.phonenumbers.PhoneMetadata.prototype.getDescriptor = function() {\n  var a = i18n.phonenumbers.PhoneMetadata.descriptor_;\n  a || (i18n.phonenumbers.PhoneMetadata.descriptor_ = a = goog.proto2.Message.createDescriptor(i18n.phonenumbers.PhoneMetadata, {0:{name:\"PhoneMetadata\", fullName:\"i18n.phonenumbers.PhoneMetadata\"}, 1:{name:\"general_desc\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 2:{name:\"fixed_line\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 3:{name:\"mobile\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc},\n  4:{name:\"toll_free\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 5:{name:\"premium_rate\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 6:{name:\"shared_cost\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 7:{name:\"personal_number\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 8:{name:\"voip\", fieldType:goog.proto2.Message.FieldType.MESSAGE,\n  type:i18n.phonenumbers.PhoneNumberDesc}, 21:{name:\"pager\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 25:{name:\"uan\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 27:{name:\"emergency\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 28:{name:\"voicemail\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 29:{name:\"short_code\",\n  fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 30:{name:\"standard_rate\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 31:{name:\"carrier_specific\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 33:{name:\"sms_services\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 24:{name:\"no_international_dialling\", fieldType:goog.proto2.Message.FieldType.MESSAGE,\n  type:i18n.phonenumbers.PhoneNumberDesc}, 9:{name:\"id\", required:!0, fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 10:{name:\"country_code\", fieldType:goog.proto2.Message.FieldType.INT32, type:Number}, 11:{name:\"international_prefix\", fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 17:{name:\"preferred_international_prefix\", fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 12:{name:\"national_prefix\", fieldType:goog.proto2.Message.FieldType.STRING, type:String},\n  13:{name:\"preferred_extn_prefix\", fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 15:{name:\"national_prefix_for_parsing\", fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 16:{name:\"national_prefix_transform_rule\", fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 18:{name:\"same_mobile_and_fixed_line_pattern\", fieldType:goog.proto2.Message.FieldType.BOOL, defaultValue:!1, type:Boolean}, 19:{name:\"number_format\", repeated:!0, fieldType:goog.proto2.Message.FieldType.MESSAGE,\n  type:i18n.phonenumbers.NumberFormat}, 20:{name:\"intl_number_format\", repeated:!0, fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.NumberFormat}, 22:{name:\"main_country_for_code\", fieldType:goog.proto2.Message.FieldType.BOOL, defaultValue:!1, type:Boolean}, 23:{name:\"leading_digits\", fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 26:{name:\"leading_zero_possible\", fieldType:goog.proto2.Message.FieldType.BOOL, defaultValue:!1, type:Boolean}}));\n  return a;\n};\ni18n.phonenumbers.PhoneMetadata.getDescriptor = i18n.phonenumbers.PhoneMetadata.prototype.getDescriptor;\ni18n.phonenumbers.PhoneMetadataCollection.prototype.getDescriptor = function() {\n  var a = i18n.phonenumbers.PhoneMetadataCollection.descriptor_;\n  a || (i18n.phonenumbers.PhoneMetadataCollection.descriptor_ = a = goog.proto2.Message.createDescriptor(i18n.phonenumbers.PhoneMetadataCollection, {0:{name:\"PhoneMetadataCollection\", fullName:\"i18n.phonenumbers.PhoneMetadataCollection\"}, 1:{name:\"metadata\", repeated:!0, fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneMetadata}}));\n  return a;\n};\ni18n.phonenumbers.PhoneMetadataCollection.getDescriptor = i18n.phonenumbers.PhoneMetadataCollection.prototype.getDescriptor;\ni18n.phonenumbers.PhoneNumber = function() {\n  goog.proto2.Message.call(this);\n};\ngoog.inherits(i18n.phonenumbers.PhoneNumber, goog.proto2.Message);\ni18n.phonenumbers.PhoneNumber.descriptor_ = null;\ni18n.phonenumbers.PhoneNumber.prototype.getCountryCode = function() {\n  return this.get$Value(1);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getCountryCodeOrDefault = function() {\n  return this.get$ValueOrDefault(1);\n};\ni18n.phonenumbers.PhoneNumber.prototype.setCountryCode = function(a) {\n  this.set$Value(1, a);\n};\ni18n.phonenumbers.PhoneNumber.prototype.hasCountryCode = function() {\n  return this.has$Value(1);\n};\ni18n.phonenumbers.PhoneNumber.prototype.countryCodeCount = function() {\n  return this.count$Values(1);\n};\ni18n.phonenumbers.PhoneNumber.prototype.clearCountryCode = function() {\n  this.clear$Field(1);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getNationalNumber = function() {\n  return this.get$Value(2);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getNationalNumberOrDefault = function() {\n  return this.get$ValueOrDefault(2);\n};\ni18n.phonenumbers.PhoneNumber.prototype.setNationalNumber = function(a) {\n  this.set$Value(2, a);\n};\ni18n.phonenumbers.PhoneNumber.prototype.hasNationalNumber = function() {\n  return this.has$Value(2);\n};\ni18n.phonenumbers.PhoneNumber.prototype.nationalNumberCount = function() {\n  return this.count$Values(2);\n};\ni18n.phonenumbers.PhoneNumber.prototype.clearNationalNumber = function() {\n  this.clear$Field(2);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getExtension = function() {\n  return this.get$Value(3);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getExtensionOrDefault = function() {\n  return this.get$ValueOrDefault(3);\n};\ni18n.phonenumbers.PhoneNumber.prototype.setExtension = function(a) {\n  this.set$Value(3, a);\n};\ni18n.phonenumbers.PhoneNumber.prototype.hasExtension = function() {\n  return this.has$Value(3);\n};\ni18n.phonenumbers.PhoneNumber.prototype.extensionCount = function() {\n  return this.count$Values(3);\n};\ni18n.phonenumbers.PhoneNumber.prototype.clearExtension = function() {\n  this.clear$Field(3);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getItalianLeadingZero = function() {\n  return this.get$Value(4);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getItalianLeadingZeroOrDefault = function() {\n  return this.get$ValueOrDefault(4);\n};\ni18n.phonenumbers.PhoneNumber.prototype.setItalianLeadingZero = function(a) {\n  this.set$Value(4, a);\n};\ni18n.phonenumbers.PhoneNumber.prototype.hasItalianLeadingZero = function() {\n  return this.has$Value(4);\n};\ni18n.phonenumbers.PhoneNumber.prototype.italianLeadingZeroCount = function() {\n  return this.count$Values(4);\n};\ni18n.phonenumbers.PhoneNumber.prototype.clearItalianLeadingZero = function() {\n  this.clear$Field(4);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getNumberOfLeadingZeros = function() {\n  return this.get$Value(8);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getNumberOfLeadingZerosOrDefault = function() {\n  return this.get$ValueOrDefault(8);\n};\ni18n.phonenumbers.PhoneNumber.prototype.setNumberOfLeadingZeros = function(a) {\n  this.set$Value(8, a);\n};\ni18n.phonenumbers.PhoneNumber.prototype.hasNumberOfLeadingZeros = function() {\n  return this.has$Value(8);\n};\ni18n.phonenumbers.PhoneNumber.prototype.numberOfLeadingZerosCount = function() {\n  return this.count$Values(8);\n};\ni18n.phonenumbers.PhoneNumber.prototype.clearNumberOfLeadingZeros = function() {\n  this.clear$Field(8);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getRawInput = function() {\n  return this.get$Value(5);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getRawInputOrDefault = function() {\n  return this.get$ValueOrDefault(5);\n};\ni18n.phonenumbers.PhoneNumber.prototype.setRawInput = function(a) {\n  this.set$Value(5, a);\n};\ni18n.phonenumbers.PhoneNumber.prototype.hasRawInput = function() {\n  return this.has$Value(5);\n};\ni18n.phonenumbers.PhoneNumber.prototype.rawInputCount = function() {\n  return this.count$Values(5);\n};\ni18n.phonenumbers.PhoneNumber.prototype.clearRawInput = function() {\n  this.clear$Field(5);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getCountryCodeSource = function() {\n  return this.get$Value(6);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getCountryCodeSourceOrDefault = function() {\n  return this.get$ValueOrDefault(6);\n};\ni18n.phonenumbers.PhoneNumber.prototype.setCountryCodeSource = function(a) {\n  this.set$Value(6, a);\n};\ni18n.phonenumbers.PhoneNumber.prototype.hasCountryCodeSource = function() {\n  return this.has$Value(6);\n};\ni18n.phonenumbers.PhoneNumber.prototype.countryCodeSourceCount = function() {\n  return this.count$Values(6);\n};\ni18n.phonenumbers.PhoneNumber.prototype.clearCountryCodeSource = function() {\n  this.clear$Field(6);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getPreferredDomesticCarrierCode = function() {\n  return this.get$Value(7);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getPreferredDomesticCarrierCodeOrDefault = function() {\n  return this.get$ValueOrDefault(7);\n};\ni18n.phonenumbers.PhoneNumber.prototype.setPreferredDomesticCarrierCode = function(a) {\n  this.set$Value(7, a);\n};\ni18n.phonenumbers.PhoneNumber.prototype.hasPreferredDomesticCarrierCode = function() {\n  return this.has$Value(7);\n};\ni18n.phonenumbers.PhoneNumber.prototype.preferredDomesticCarrierCodeCount = function() {\n  return this.count$Values(7);\n};\ni18n.phonenumbers.PhoneNumber.prototype.clearPreferredDomesticCarrierCode = function() {\n  this.clear$Field(7);\n};\ni18n.phonenumbers.PhoneNumber.CountryCodeSource = {UNSPECIFIED:0, FROM_NUMBER_WITH_PLUS_SIGN:1, FROM_NUMBER_WITH_IDD:5, FROM_NUMBER_WITHOUT_PLUS_SIGN:10, FROM_DEFAULT_COUNTRY:20};\ni18n.phonenumbers.PhoneNumber.prototype.getDescriptor = function() {\n  var a = i18n.phonenumbers.PhoneNumber.descriptor_;\n  a || (i18n.phonenumbers.PhoneNumber.descriptor_ = a = goog.proto2.Message.createDescriptor(i18n.phonenumbers.PhoneNumber, {0:{name:\"PhoneNumber\", fullName:\"i18n.phonenumbers.PhoneNumber\"}, 1:{name:\"country_code\", required:!0, fieldType:goog.proto2.Message.FieldType.INT32, type:Number}, 2:{name:\"national_number\", required:!0, fieldType:goog.proto2.Message.FieldType.UINT64, type:Number}, 3:{name:\"extension\", fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 4:{name:\"italian_leading_zero\",\n  fieldType:goog.proto2.Message.FieldType.BOOL, type:Boolean}, 8:{name:\"number_of_leading_zeros\", fieldType:goog.proto2.Message.FieldType.INT32, defaultValue:1, type:Number}, 5:{name:\"raw_input\", fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 6:{name:\"country_code_source\", fieldType:goog.proto2.Message.FieldType.ENUM, defaultValue:i18n.phonenumbers.PhoneNumber.CountryCodeSource.UNSPECIFIED, type:i18n.phonenumbers.PhoneNumber.CountryCodeSource}, 7:{name:\"preferred_domestic_carrier_code\",\n  fieldType:goog.proto2.Message.FieldType.STRING, type:String}}));\n  return a;\n};\ni18n.phonenumbers.PhoneNumber.ctor = i18n.phonenumbers.PhoneNumber;\ni18n.phonenumbers.PhoneNumber.ctor.getDescriptor = i18n.phonenumbers.PhoneNumber.prototype.getDescriptor;\n/*\n\n Copyright (C) 2010 The Libphonenumber Authors\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n*/\ni18n.phonenumbers.metadata = {};\ni18n.phonenumbers.metadata.countryCodeToRegionCodeMap = {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\".split(\" \"), 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\",\n\"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\"],\n241:[\"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\"],\n358:[\"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\"],\n599:[\"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\"], 800:[\"001\"], 808:[\"001\"], 850:[\"KP\"], 852:[\"HK\"], 853:[\"MO\"], 855:[\"KH\"], 856:[\"LA\"], 870:[\"001\"], 878:[\"001\"], 880:[\"BD\"], 881:[\"001\"], 882:[\"001\"], 883:[\"001\"], 886:[\"TW\"], 888:[\"001\"], 960:[\"MV\"], 961:[\"LB\"], 962:[\"JO\"], 963:[\"SY\"],\n964:[\"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\"], 979:[\"001\"], 992:[\"TJ\"], 993:[\"TM\"], 994:[\"AZ\"], 995:[\"GE\"], 996:[\"KG\"], 998:[\"UZ\"]};\ni18n.phonenumbers.metadata.countryToMetadata = {AC:[, [, , \"(?:[01589]\\\\d|[46])\\\\d{4}\", , , , , , , [5, 6]], [, , \"6[2-467]\\\\d{3}\", , , , \"62889\", , , [5]], [, , \"4\\\\d{4}\", , , , \"40123\", , , [5]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"AC\", 247, \"00\", , , , , , , , , , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"(?:0[1-9]|[1589]\\\\d)\\\\d{4}\", , , , \"542011\", , , [6]], , , [, , , , , , , ,\n, [-1]]], AD:[, [, , \"(?:1|6\\\\d)\\\\d{7}|[136-9]\\\\d{5}\", , , , , , , [6, 8, 9]], [, , \"[78]\\\\d{5}\", , , , \"712345\", , , [6]], [, , \"690\\\\d{6}|[36]\\\\d{5}\", , , , \"312345\", , , [6, 9]], [, , \"180[02]\\\\d{4}\", , , , \"18001234\", , , [8]], [, , \"[19]\\\\d{5}\", , , , \"912345\", , , [6]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"AD\", 376, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{3})\", \"$1 $2\", [\"[136-9]\"]], [, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"1\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\n\"$1 $2 $3\", [\"6\"]]], , [, , , , , , , , , [-1]], , , [, , \"1800\\\\d{4}\", , , , , , , [8]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], AE:[, [, , \"(?:[4-7]\\\\d|9[0-689])\\\\d{7}|800\\\\d{2,9}|[2-4679]\\\\d{7}\", , , , , , , [5, 6, 7, 8, 9, 10, 11, 12]], [, , \"[2-4679][2-8]\\\\d{6}\", , , , \"22345678\", , , [8], [7]], [, , \"5[024-68]\\\\d{7}\", , , , \"501234567\", , , [9]], [, , \"400\\\\d{6}|800\\\\d{2,9}\", , , , \"800123456\"], [, , \"900[02]\\\\d{5}\", , , , \"900234567\", , , [9]], [, , \"700[05]\\\\d{5}\", , , ,\n\"700012345\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"AE\", 971, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"600[25]\\\\d{5}\", , , , \"600212345\", , , [9]], , , [, , , , , , , , , [-1]]], AF:[, [, , \"[2-7]\\\\d{8}\",\n, , , , , , [9], [7]], [, , \"(?:[25][0-8]|[34][0-4]|6[0-5])[2-9]\\\\d{6}\", , , , \"234567890\", , , , [7]], [, , \"7(?:[014-9]\\\\d|2[89]|3[01])\\\\d{6}\", , , , \"701234567\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"AF\", 93, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[2-9]\"]], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[2-7]\"], \"0$1\"]], [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[2-7]\"], \"0$1\"]],\n[, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], AG:[, [, , \"(?:268|[58]\\\\d\\\\d|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"268(?:4(?:6[0-38]|84)|56[0-2])\\\\d{4}\", , , , \"2684601234\", , , , [7]], [, , \"268(?:464|7(?:1[3-9]|2\\\\d|3[246]|64|[78][0-689]))\\\\d{4}\", , , , \"2684641234\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\",\n, , , \"5002345678\"], [, , \"26848[01]\\\\d{4}\", , , , \"2684801234\", , , , [7]], \"AG\", 1, \"011\", \"1\", , , \"1|([457]\\\\d{6})$\", \"268$1\", , , , , [, , \"26840[69]\\\\d{4}\", , , , \"2684061234\", , , , [7]], , \"268\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], AI:[, [, , \"(?:264|[58]\\\\d\\\\d|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"2644(?:6[12]|9[78])\\\\d{4}\", , , , \"2644612345\", , , , [7]], [, , \"264(?:235|476|5(?:3[6-9]|8[1-4])|7(?:29|72))\\\\d{4}\", , , , \"2642351234\", ,\n, , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"AI\", 1, \"011\", \"1\", , , \"1|([2457]\\\\d{6})$\", \"264$1\", , , , , [, , , , , , , , , [-1]], , \"264\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], AL:[, [, , \"(?:700\\\\d\\\\d|900)\\\\d{3}|8\\\\d{5,7}|(?:[2-5]|6\\\\d)\\\\d{7}\", , , , , ,\n, [6, 7, 8, 9], [5]], [, , \"(?:[2358](?:[16-9]\\\\d[2-9]|[2-5][2-9]\\\\d)|4(?:[2-57-9][2-9]|6\\\\d)\\\\d)\\\\d{4}\", , , , \"22345678\", , , [8], [5, 6, 7]], [, , \"6(?:[689][2-9]|7[2-6])\\\\d{6}\", , , , \"662123456\", , , [9]], [, , \"800\\\\d{4}\", , , , \"8001234\", , , [7]], [, , \"900[1-9]\\\\d\\\\d\", , , , \"900123\", , , [6]], [, , \"808[1-9]\\\\d\\\\d\", , , , \"808123\", , , [6]], [, , \"700[2-9]\\\\d{4}\", , , , \"70021234\", , , [8]], [, , , , , , , , , [-1]], \"AL\", 355, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{3,4})\", \"$1 $2\",\n[\"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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], AM:[, [, , \"(?:[1-489]\\\\d|55|60|77)\\\\d{6}\", , , , , , , [8], [5, 6]], [, , \"(?:(?:1[0-25]|47)\\\\d|2(?:2[2-46]|3[1-8]|4[2-69]|5[2-7]|6[1-9]|8[1-7])|3[12]2)\\\\d{5}\",\n, , , \"10123456\", , , , [5, 6]], [, , \"(?:33|4[1349]|55|77|88|9[13-9])\\\\d{6}\", , , , \"77123456\"], [, , \"800\\\\d{5}\", , , , \"80012345\"], [, , \"90[016]\\\\d{5}\", , , , \"90012345\"], [, , \"80[1-4]\\\\d{5}\", , , , \"80112345\"], [, , , , , , , , , [-1]], [, , \"60(?:2[78]|3[5-9]|4[02-9]|5[0-46-9]|[6-8]\\\\d|90)\\\\d{4}\", , , , \"60271234\"], \"AM\", 374, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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})\",\n\"$1 $2\", [\"1|47\"], \"(0$1)\"], [, \"(\\\\d{2})(\\\\d{6})\", \"$1 $2\", [\"[3-9]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], AO:[, [, , \"[29]\\\\d{8}\", , , , , , , [9]], [, , \"2\\\\d(?:[0134][25-9]|[25-9]\\\\d)\\\\d{5}\", , , , \"222123456\"], [, , \"9[1-49]\\\\d{7}\", , , , \"923123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"AO\", 244, \"00\", , , , ,\n, , , [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[29]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], AR:[, [, , \"11\\\\d{8}|(?:[2368]|9\\\\d)\\\\d{9}\", , , , , , , [10, 11], [6, 7, 8]], [, , \"(?:2(?:646[0-46-9]|9(?:45[02-69]|54[2-8]))|3(?:4(?:3(?:5[0-7]|6[1-69])|5(?:4[0-4679]|[56][024-6]))|585[013-7]|7(?:(?:1[15]|81)[46]|77[2-8])|8(?:(?:21|4[16]|9[12])[46]|35[124-6]|5(?:5[0-46-9]|6[0-246-9])|6(?:5[2-8]|9[46])|86[0-68])))\\\\d{5}|(?:2(?:284|657|9(?:20|66))|3(?:4(?:8[27]|92)|755|878))[2-7]\\\\d{5}|(?:2(?:2(?:2[59]|44|52)|3(?:26|4[24])|473|9(?:[07]2|2[26]|34|46))|3327)[45]\\\\d{5}|(?:2(?:(?:26|62)2|3(?:02|2[03])|477|9(?:42|83))|3(?:4(?:[47]6|62|89)|5(?:41|64)|873))[2-6]\\\\d{5}|(?:(?:11[2-7]|670)\\\\d|2(?:2(?:0[45]|1[2-6]|3[3-6])|3(?:[06]4|7[45])|494|6(?:04|1[2-7]|[346][45])|80[45]|9(?:[17][4-6]|44|8[45]|9[3-6]))|3(?:364|4(?:1[2-7]|2[4-6]|[38]4)|5(?:1[2-8]|3[4-6]|8[46])|6(?:2[45]|44)|7[069][45]|8(?:0[45]|1[2-6]|34|5[34]|7[24-6]|8[3-5])))\\\\d{6}|2(?:2(?:21|4[23]|6[145]|7[1-4]|8[356]|9[267])|3(?:16|3[13-8]|43|5[346-8]|9[3-5])|475|6(?:2[46]|4[78]|5[1568])|9(?:03|2[1457-9]|3[1356]|4[08]|[56][23]|82))4\\\\d{5}|(?:2(?:2(?:57|81)|3(?:24|46|92)|9(?:01|23|64))|3(?:329|4(?:42|71)|5(?:25|37|4[347]|71)|7(?:18|5[17])|888))[3-6]\\\\d{5}|(?:2(?:2(?:02|2[3467]|4[156]|5[45]|6[6-8]|91)|3(?:1[47]|[24]5|5[25]|96)|47[48]|625|932)|3(?:38[2578]|4(?:0[0-24-9]|3[78]|4[457]|58|6[03-9]|72|83|9[136-8])|5(?:2[124]|[368][23]|4[2689]|7[2-6])|7(?:16|2[15]|3[145]|4[13]|5[468]|7[2-5]|8[26])|8(?:2[5-7]|3[278]|4[3-5]|5[78]|6[1-378]|[78]7|94)))[4-6]\\\\d{5}\",\n, , , \"1123456789\", , , [10], [6, 7, 8]], [, , \"9(?:2(?:646[0-46-9]|9(?:45[02-69]|54[2-8]))|3(?:4(?:3(?:5[0-7]|6[1-69])|5(?:4[0-4679]|[56][024-6]))|585[013-7]|7(?:(?:1[15]|81)[46]|77[2-8])|8(?:(?:21|4[16]|9[12])[46]|35[124-6]|5(?:5[0-46-9]|6[0-246-9])|6(?:5[2-8]|9[46])|86[0-68])))\\\\d{5}|9(?:2(?:284|657|9(?:20|66))|3(?:4(?:8[27]|92)|755|878))[2-7]\\\\d{5}|9(?:2(?:2(?:2[59]|44|52)|3(?:26|4[24])|473|9(?:[07]2|2[26]|34|46))|3327)[45]\\\\d{5}|9(?:2(?:(?:26|62)2|3(?:02|2[03])|477|9(?:42|83))|3(?:4(?:[47]6|62|89)|5(?:41|64)|873))[2-6]\\\\d{5}|(?:675\\\\d|9(?:11[2-7]\\\\d|2(?:2(?:0[45]|1[2-6]|3[3-6])|3(?:[06]4|7[45])|494|6(?:04|1[2-7]|[346][45])|80[45]|9(?:[17][4-6]|44|8[45]|9[3-6]))|3(?:364|4(?:1[2-7]|2[4-6]|[38]4)|5(?:1[2-8]|3[4-6]|8[46])|6(?:2[45]|44)|7[069][45]|8(?:0[45]|1[2-6]|34|5[34]|7[24-6]|8[3-5]))))\\\\d{6}|92(?:2(?:21|4[23]|6[145]|7[1-4]|8[356]|9[267])|3(?:16|3[13-8]|43|5[346-8]|9[3-5])|475|6(?:2[46]|4[78]|5[1568])|9(?:03|2[1457-9]|3[1356]|4[08]|[56][23]|82))4\\\\d{5}|9(?:2(?:2(?:57|81)|3(?:24|46|92)|9(?:01|23|64))|3(?:329|4(?:42|71)|5(?:25|37|4[347]|71)|7(?:18|5[17])|888))[3-6]\\\\d{5}|9(?:2(?:2(?:02|2[3467]|4[156]|5[45]|6[6-8]|91)|3(?:1[47]|[24]5|5[25]|96)|47[48]|625|932)|3(?:38[2578]|4(?:0[0-24-9]|3[78]|4[457]|58|6[03-9]|72|83|9[136-8])|5(?:2[124]|[368][23]|4[2689]|7[2-6])|7(?:16|2[15]|3[145]|4[13]|5[468]|7[2-5]|8[26])|8(?:2[5-7]|3[278]|4[3-5]|5[78]|6[1-378]|[78]7|94)))[4-6]\\\\d{5}\",\n, , , \"91123456789\", , , , [6, 7, 8]], [, , \"800\\\\d{7}\", , , , \"8001234567\", , , [10]], [, , \"60[04579]\\\\d{7}\", , , , \"6001234567\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"AR\", 54, \"00\", \"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)?\",\n\"9$1\", , , [[, \"(\\\\d{3})\", \"$1\", [\"[09]|1(?:[02]|1[02-5])\"]], [, \"(\\\\d{2})(\\\\d{4})\", \"$1-$2\", [\"[2-7]|8[0-7]\"]], [, \"(\\\\d{3})(\\\\d{4})\", \"$1-$2\", [\"[2-7]|8[013-8]\"]], [, \"(\\\\d{4})(\\\\d{4})\", \"$1-$2\", [\"2[0-8]|[3-7]\"]], [, \"(\\\\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)\",\n\"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(?:[24-6]|3[2-5]))|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]\"],\n\"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\", [\"[23]\"], \"0$1\", , 1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"[68]\"], \"0$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)\",\n\"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(?:[24-6]|3[2-5]))|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]\"],\n\"0$1\"], [, \"(\\\\d)(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$2 15-$3-$4\", [\"91\"], \"0$1\"], [, \"(\\\\d)(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$2 15-$3-$4\", [\"9\"], \"0$1\"]], [[, \"(\\\\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]\",\n\"2(?:[23]02|6(?:[25]|4(?:64|[78]))|9(?:[02356]|4(?:[0268]|5(?:[24-6]|3[2-5]))|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\", [\"[23]\"],\n\"0$1\", , 1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"[68]\"], \"0$1\"], [, \"(\\\\d)(\\\\d{4})(\\\\d{2})(\\\\d{4})\", \"$1 $2 $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]\",\n\"9(?:2(?:[23]02|6(?:[25]|4(?:64|[78]))|9(?:[02356]|4(?:[0268]|5(?:[24-6]|3[2-5]))|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]\"]], [, \"(\\\\d)(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3-$4\", [\"91\"]], [, \"(\\\\d)(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3-$4\",\n[\"9\"]]], [, , , , , , , , , [-1]], , , [, , \"810\\\\d{7}\", , , , , , , [10]], [, , \"810\\\\d{7}\", , , , \"8101234567\", , , [10]], , , [, , , , , , , , , [-1]]], AS:[, [, , \"(?:[58]\\\\d\\\\d|684|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"6846(?:22|33|44|55|77|88|9[19])\\\\d{4}\", , , , \"6846221234\", , , , [7]], [, , \"684(?:2(?:5[2468]|72)|7(?:3[13]|70))\\\\d{4}\", , , , \"6847331234\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , ,\n, , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"AS\", 1, \"011\", \"1\", , , \"1|([267]\\\\d{6})$\", \"684$1\", , , , , [, , , , , , , , , [-1]], , \"684\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], AT:[, [, , \"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,\n11, 12, 13], [3]], [, , \"1(?:11\\\\d|[2-9]\\\\d{3,11})|(?:316|463|(?:51|66|73)2)\\\\d{3,10}|(?:2(?:1[467]|2[13-8]|5[2357]|6[1-46-8]|7[1-8]|8[124-7]|9[1458])|3(?:1[1-578]|3[23568]|4[5-7]|5[1378]|6[1-38]|8[3-68])|4(?:2[1-8]|35|7[1368]|8[2457])|5(?:2[1-8]|3[357]|4[147]|5[12578]|6[37])|6(?:13|2[1-47]|4[135-8]|5[468])|7(?:2[1-8]|35|4[13478]|5[68]|6[16-8]|7[1-6]|9[45]))\\\\d{4,10}\", , , , \"1234567890\", , , , [3]], [, , \"6(?:5[0-3579]|6[013-9]|[7-9]\\\\d)\\\\d{4,10}\", , , , \"664123456\", , , [7, 8, 9, 10, 11, 12, 13]],\n[, , \"800\\\\d{6,10}\", , , , \"800123456\", , , [9, 10, 11, 12, 13]], [, , \"9(?:0[01]|3[019])\\\\d{6,10}\", , , , \"900123456\", , , [9, 10, 11, 12, 13]], [, , \"8(?:10|2[018])\\\\d{6,10}|828\\\\d{5}\", , , , \"810123456\", , , [8, 9, 10, 11, 12, 13]], [, , , , , , , , , [-1]], [, , \"5(?:0[1-9]|17|[79]\\\\d)\\\\d{2,10}|7[28]0\\\\d{6,10}\", , , , \"780123456\", , , [5, 6, 7, 8, 9, 10, 11, 12, 13]], \"AT\", 43, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d)(\\\\d{3,12})\", \"$1 $2\", [\"1(?:11|[2-9])\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{2})\", \"$1 $2\",\n[\"517\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3,5})\", \"$1 $2\", [\"5[079]\"], \"0$1\"], [, \"(\\\\d{6})\", \"$1\", [\"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\"]], [[, \"(\\\\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})\",\n\"$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\"]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], AU:[, [, , \"1(?:[0-79]\\\\d{7,8}|8[0-24-9]\\\\d{7})|(?:[2-478]\\\\d\\\\d|550)\\\\d{6}|1\\\\d{4,7}\",\n, , , , , , [5, 6, 7, 8, 9, 10]], [, , \"(?:[237]\\\\d{5}|8(?:51(?:0(?:0[03-9]|[1247]\\\\d|3[2-9]|5[0-8]|6[1-9]|8[0-6])|1(?:1[69]|[23]\\\\d|4[0-4]))|(?:[6-8]\\\\d{3}|9(?:[02-9]\\\\d\\\\d|1(?:[0-57-9]\\\\d|6[0135-9])))\\\\d))\\\\d{3}\", , , , \"212345678\", , , [9], [8]], [, , \"483[0-3]\\\\d{5}|4(?:[0-3]\\\\d|4[047-9]|5[0-25-9]|6[06-9]|7[02-9]|8[0-2457-9]|9[0-27-9])\\\\d{6}\", , , , \"412345678\", , , [9]], [, , \"180(?:0\\\\d{3}|2)\\\\d{3}\", , , , \"1800123456\", , , [7, 10]], [, , \"190[0-26]\\\\d{6}\", , , , \"1900123456\", , , [10]], [,\n, \"13(?:00\\\\d{3}|45[0-4])\\\\d{3}|13\\\\d{4}\", , , , \"1300123456\", , , [6, 8, 10]], [, , , , , , , , , [-1]], [, , \"(?:14(?:5(?:1[0458]|[23][458])|71\\\\d)|550\\\\d\\\\d)\\\\d{4}\", , , , \"550123456\", , , [9]], \"AU\", 61, \"001[14-689]|14(?:1[14]|34|4[17]|[56]6|7[47]|88)0011\", \"0\", , , \"0|(183[12])\", , \"0011\", , [[, \"(\\\\d{2})(\\\\d{3,4})\", \"$1 $2\", [\"16\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3\", [\"13\"]], [, \"(\\\\d{3})(\\\\d{3})\", \"$1 $2\", [\"19\"]], [, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"180\", \"1802\"]], [, \"(\\\\d{4})(\\\\d{3,4})\",\n\"$1 $2\", [\"19\"]], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{2,4})\", \"$1 $2 $3\", [\"16\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"14|[45]\"], \"0$1\"], [, \"(\\\\d)(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"[2378]\"], \"(0$1)\", \"$CC ($1)\"], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"1(?:30|[89])\"]]], [[, \"(\\\\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|[45]\"], \"0$1\"], [, \"(\\\\d)(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"[2378]\"],\n\"(0$1)\", \"$CC ($1)\"], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"1(?:30|[89])\"]]], [, , \"16\\\\d{3,7}\", , , , \"1612345\", , , [5, 6, 7, 8, 9]], 1, , [, , \"1[38]00\\\\d{6}|1(?:345[0-4]|802)\\\\d{3}|13\\\\d{4}\", , , , , , , [6, 7, 8, 10]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], AW:[, [, , \"(?:[25-79]\\\\d\\\\d|800)\\\\d{4}\", , , , , , , [7]], [, , \"5(?:2\\\\d|8[1-9])\\\\d{4}\", , , , \"5212345\"], [, , \"(?:290|5[69]\\\\d|6(?:[03]0|22|4[0-2]|[69]\\\\d)|7(?:[34]\\\\d|7[07])|9(?:6[45]|9[4-8]))\\\\d{4}\", , , , \"5601234\"],\n[, , \"800\\\\d{4}\", , , , \"8001234\"], [, , \"900\\\\d{4}\", , , , \"9001234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"(?:28\\\\d|501)\\\\d{4}\", , , , \"5011234\"], \"AW\", 297, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[25-9]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], AX:[, [, , \"2\\\\d{4,9}|35\\\\d{4,5}|(?:60\\\\d\\\\d|800)\\\\d{4,6}|(?:[147]\\\\d|3[0-46-9]|50)\\\\d{4,8}\", , , , , , , [5, 6, 7, 8, 9, 10]], [, , \"18[1-8]\\\\d{3,6}\",\n, , , \"181234567\", , , [6, 7, 8, 9]], [, , \"(?:4[0-8]|50)\\\\d{4,8}\", , , , \"412345678\", , , [6, 7, 8, 9, 10]], [, , \"800\\\\d{4,6}\", , , , \"800123456\", , , [7, 8, 9]], [, , \"[67]00\\\\d{5,6}\", , , , \"600123456\", , , [8, 9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"AX\", 358, \"00|99(?:[01469]|5(?:[14]1|3[23]|5[59]|77|88|9[09]))\", \"0\", , , \"0\", , \"00\", , , , [, , , , , , , , , [-1]], , \"18\", [, , , , , , , , , [-1]], [, , \"(?:10|[23][09])\\\\d{4,8}|60(?:[12]\\\\d{5,6}|6\\\\d{7})|7(?:(?:1|3\\\\d)\\\\d{7}|5[03-9]\\\\d{3,7})|20[2-59]\\\\d\\\\d\",\n, , , \"10112345\"], , , [, , , , , , , , , [-1]]], AZ:[, [, , \"(?:365\\\\d{3}|900200)\\\\d{3}|(?:[12457]\\\\d|60|88)\\\\d{7}\", , , , , , , [9], [7]], [, , \"365(?:[0-46-9]\\\\d|5[0-35-9])\\\\d{4}|(?:1[28]\\\\d|2(?:[045]2|1[24]|2[2-4]|33|6[23]))\\\\d{6}\", , , , \"123123456\", , , , [7]], [, , \"36554\\\\d{4}|(?:4[04]|5[015]|60|7[07])\\\\d{7}\", , , , \"401234567\"], [, , \"88\\\\d{7}\", , , , \"881234567\"], [, , \"900200\\\\d{3}\", , , , \"900200123\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"AZ\",\n994, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3\", [\"[1-9]\"]], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"9\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[12]|365\", \"[12]|365\", \"[12]|365(?:[0-46-9]|5[0-35-9])\"], \"(0$1)\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[3-8]\"], \"0$1\"]], [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"9\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[12]|365\", \"[12]|365\",\n\"[12]|365(?:[0-46-9]|5[0-35-9])\"], \"(0$1)\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[3-8]\"], \"0$1\"]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BA:[, [, , \"6\\\\d{8}|(?:[35689]\\\\d|49|70)\\\\d{6}\", , , , , , , [8, 9], [6]], [, , \"(?:3(?:[05-79][2-9]|1[4579]|[23][24-9]|4[2-4689]|8[2457-9])|49[2-579]|5(?:0[2-49]|[13][2-9]|[268][2-4679]|4[4689]|5[2-79]|7[2-69]|9[2-4689]))\\\\d{5}\", , , , \"30212345\", , , [8], [6]], [, ,\n\"6(?:0(?:3\\\\d|40)|[1-356]\\\\d|44[0-6]|71[137])\\\\d{5}\", , , , \"61123456\"], [, , \"8[08]\\\\d{6}\", , , , \"80123456\", , , [8]], [, , \"9[0246]\\\\d{6}\", , , , \"90123456\", , , [8]], [, , \"8[12]\\\\d{6}\", , , , \"82123456\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"BA\", 387, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{3})\", \"$1-$2\", [\"[2-9]\"]], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"6[1-356]|[7-9]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2-$3\", [\"[3-5]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{3})\",\n\"$1 $2 $3 $4\", [\"6\"], \"0$1\"]], [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"6[1-356]|[7-9]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2-$3\", [\"[3-5]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{3})\", \"$1 $2 $3 $4\", [\"6\"], \"0$1\"]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"70(?:3[0146]|[56]0)\\\\d{4}\", , , , \"70341234\", , , [8]], , , [, , , , , , , , , [-1]]], BB:[, [, , \"(?:246|[58]\\\\d\\\\d|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"246(?:2(?:2[78]|7[0-4])|4(?:1[024-6]|2\\\\d|3[2-9])|5(?:20|[34]\\\\d|54|7[1-3])|6(?:2\\\\d|38)|7[35]7|9(?:1[89]|63))\\\\d{4}\",\n, , , \"2464123456\", , , , [7]], [, , \"246(?:2(?:[356]\\\\d|4[0-57-9]|8[0-79])|45\\\\d|69[5-7]|8(?:[2-5]\\\\d|83))\\\\d{4}\", , , , \"2462501234\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"(?:246976|900[2-9]\\\\d\\\\d)\\\\d{4}\", , , , \"9002123456\", , , , [7]], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , \"24631\\\\d{5}\", , , , \"2463101234\", , , , [7]], \"BB\", 1, \"011\", \"1\", , , \"1|([2-9]\\\\d{6})$\", \"246$1\", , , , , [, , ,\n, , , , , , [-1]], , \"246\", [, , , , , , , , , [-1]], [, , \"246(?:292|367|4(?:1[7-9]|3[01]|44|67)|7(?:36|53))\\\\d{4}\", , , , \"2464301234\", , , , [7]], , , [, , , , , , , , , [-1]]], BD:[, [, , \"[13469]\\\\d{9}|8[0-79]\\\\d{7,8}|[2-7]\\\\d{8}|[2-9]\\\\d{7}|[3-689]\\\\d{6}|[57-9]\\\\d{5}\", , , , , , , [6, 7, 8, 9, 10]], [, , \"(?:3(?:03[56]|224)|4(?:22[25]|653))\\\\d{3,4}|(?:4(?:31\\\\d\\\\d|[46]23)|5(?:222|32[37]))\\\\d{3}(?:\\\\d{2})?|(?:3(?:42[47]|529|823)|4(?:027|525|658)|(?:56|73)2|6257|9[35]1)\\\\d{3}|(?:3(?:02[348]|22[35]|324|422)|4(?:22[67]|32[236-9]|6(?:2[46]|5[57])|953)|5526|6(?:024|6655)|81)\\\\d{4,5}|(?:2(?:7(?:1[0-267]|2[0-289]|3[0-29]|4[01]|5[1-3]|6[013]|7[0178]|91)|8(?:0[125]|1[1-6]|2[0157-9]|3[1-69]|41|6[1-35]|7[1-5]|8[1-8]|9[0-6])|9(?:0[0-2]|1[0-4]|2[568]|3[3-6]|5[5-7]|6[01367]|7[15]|8[014-9]))|3(?:0(?:2[025-79]|3[2-4])|22[12]|32[2356]|824)|4(?:02[09]|22[348]|32[045]|523|6(?:27|54))|666(?:22|53)|8(?:4[12]|[5-7]2)|9(?:[024]2|81))\\\\d{4}|(?:2[45]\\\\d\\\\d|3(?:1(?:2[5-7]|[5-7])|425|822)|4(?:033|1\\\\d|[257]1|332|4(?:2[246]|5[25])|6(?:25|56|62)|8(?:23|54)|92[2-5])|5(?:02[03489]|22[457]|32[569]|42[46]|6(?:[18]|53)|724|826)|6(?:023|2(?:2[2-5]|5[3-5]|8)|32[3478]|42[34]|52[47]|6(?:[18]|6(?:2[34]|5[24]))|[78]2[2-5]|92[2-6])|7(?:02|21\\\\d|[3-589]1|6[12]|72[24])|8(?:0|217|3[12]|[5-7]1)|9[24]1)\\\\d{5}|(?:(?:3[2-8]|5[2-57-9]|6[03-589])1|4[4689][18])\\\\d{5}|[59]1\\\\d{5}\",\n, , , \"27111234\"], [, , \"(?:1[13-9]\\\\d|644)\\\\d{7}|(?:3[78]|44|66)[02-9]\\\\d{7}\", , , , \"1812345678\", , , [10]], [, , \"80[03]\\\\d{7}\", , , , \"8001234567\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"96(?:0[469]|1[0-47]|3[389]|6[69]|7[78])\\\\d{6}\", , , , \"9604123456\", , , [10]], \"BD\", 880, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{4,6})\", \"$1-$2\", [\"31[5-7]|[459]1\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{3,7})\", \"$1-$2\", [\"3(?:[67]|8[013-9])|4(?:6[168]|7|[89][18])|5(?:6[128]|9)|6(?:28|4[14]|5)|7[2-589]|8(?:0[014-9]|[12])|9[358]|(?:3[2-5]|4[235]|5[2-578]|6[0389]|76|8[3-7]|9[24])1|(?:44|66)[01346-9]\"],\n\"0$1\"], [, \"(\\\\d{4})(\\\\d{3,6})\", \"$1-$2\", [\"[13-9]\"], \"0$1\"], [, \"(\\\\d)(\\\\d{7,8})\", \"$1-$2\", [\"2\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BE:[, [, , \"4\\\\d{8}|[1-9]\\\\d{7}\", , , , , , , [8, 9]], [, , \"80[2-8]\\\\d{5}|(?:1[0-69]|[23][2-8]|4[23]|5\\\\d|6[013-57-9]|71|8[1-79]|9[2-4])\\\\d{6}\", , , , \"12345678\", , , [8]], [, , \"4(?:5[56]|6[0135-8]|[79]\\\\d|8[3-9])\\\\d{6}\", , , , \"470123456\", , , [9]], [, , \"800[1-9]\\\\d{4}\", ,\n, , \"80012345\", , , [8]], [, , \"(?:70(?:2[0-57]|3[0457]|44|69|7[0579])|90(?:0[0-35-8]|1[36]|2[0-3568]|3[0135689]|4[2-68]|5[1-68]|6[0-378]|7[23568]|9[34679]))\\\\d{4}\", , , , \"90012345\", , , [8]], [, , \"7879\\\\d{4}\", , , , \"78791234\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"BE\", 32, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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})\",\n\"$1 $2 $3 $4\", [\"[15-8]\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"4\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"78(?:0[57]|1[0458]|2[25]|3[5-8]|48|[56]0|7[078])\\\\d{4}\", , , , \"78102345\", , , [8]], , , [, , , , , , , , , [-1]]], BF:[, [, , \"[025-7]\\\\d{7}\", , , , , , , [8]], [, , \"2(?:0(?:49|5[23]|6[56]|9[016-9])|4(?:4[569]|5[4-6]|6[56]|7[0179])|5(?:[34]\\\\d|50|6[5-7]))\\\\d{4}\", , , , \"20491234\"], [, , \"(?:0[17]|5[124-8]|[67]\\\\d)\\\\d{6}\", , , ,\n\"70123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"BF\", 226, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[025-7]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BG:[, [, , \"[2-7]\\\\d{6,7}|[89]\\\\d{6,8}|2\\\\d{5}\", , , , , , , [6, 7, 8, 9], [4, 5]], [, , \"2\\\\d{5,7}|(?:43[1-6]|70[1-9])\\\\d{4,5}|(?:[36]\\\\d|4[124-7]|[57][1-9]|8[1-6]|9[1-7])\\\\d{5,6}\",\n, , , \"2123456\", , , [6, 7, 8], [4, 5]], [, , \"43[07-9]\\\\d{5}|(?:48|8[7-9]\\\\d|9(?:8\\\\d|9[69]))\\\\d{6}\", , , , \"48123456\", , , [8, 9]], [, , \"800\\\\d{5}\", , , , \"80012345\", , , [8]], [, , \"90\\\\d{6}\", , , , \"90123456\", , , [8]], [, , \"700\\\\d{5}\", , , , \"70012345\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"BG\", 359, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{6})\", \"$1\", [\"1\"]], [, \"(\\\\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]\"],\n\"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\"]], [[, \"(\\\\d)(\\\\d)(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"2\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{4})\",\n\"$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\"]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]],\n[, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BH:[, [, , \"[136-9]\\\\d{7}\", , , , , , , [8]], [, , \"(?:1(?:3[1356]|6[0156]|7\\\\d)\\\\d|6(?:1[16]\\\\d|500|6(?:0\\\\d|3[12]|44|7[7-9]|88)|9[69][69])|7(?:1(?:11|78)|7\\\\d\\\\d))\\\\d{4}\", , , , \"17001234\"], [, , \"(?:3(?:[1-4679]\\\\d|5[013-69]|8[0-47-9])\\\\d|6(?:3(?:00|33|6[16])|6(?:3[03-9]|[69]\\\\d|7[0-6])))\\\\d{4}\", , , , \"36001234\"], [, , \"80\\\\d{6}\", , , , \"80123456\"], [, , \"(?:87|9[014578])\\\\d{6}\", , , , \"90123456\"], [, , \"84\\\\d{6}\", , , , \"84123456\"], [,\n, , , , , , , , [-1]], [, , , , , , , , , [-1]], \"BH\", 973, \"00\", , , , , , , , [[, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[13679]|8[047]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BI:[, [, , \"(?:[267]\\\\d|31)\\\\d{6}\", , , , , , , [8]], [, , \"22\\\\d{6}\", , , , \"22201234\"], [, , \"(?:29|31|6[189]|7[125-9])\\\\d{6}\", , , , \"79561234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]],\n[, , , , , , , , , [-1]], \"BI\", 257, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[2367]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BJ:[, [, , \"[2689]\\\\d{7}\", , , , , , , [8]], [, , \"2(?:02|1[037]|2[45]|3[68])\\\\d{5}\", , , , \"20211234\"], [, , \"(?:6\\\\d|9[013-9])\\\\d{6}\", , , , \"90011234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]],\n[, , \"857[58]\\\\d{4}\", , , , \"85751234\"], \"BJ\", 229, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[2689]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"81\\\\d{6}\", , , , \"81123456\"], , , [, , , , , , , , , [-1]]], BL:[, [, , \"(?:590|69\\\\d)\\\\d{6}\", , , , , , , [9]], [, , \"590(?:2[7-9]|5[12]|87)\\\\d{4}\", , , , \"590271234\"], [, , \"69(?:0\\\\d\\\\d|1(?:2[29]|3[0-5]))\\\\d{4}\", , , , \"690001234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , ,\n, , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"BL\", 590, \"00\", \"0\", , , \"0\", , , , , , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BM:[, [, , \"(?:441|[58]\\\\d\\\\d|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"441(?:2(?:02|23|[3479]\\\\d|61)|[46]\\\\d\\\\d|5(?:4\\\\d|60|89)|824)\\\\d{4}\", , , , \"4412345678\", , , , [7]], [, , \"441(?:[37]\\\\d|5[0-39])\\\\d{5}\", , , , \"4413701234\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\",\n, , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"BM\", 1, \"011\", \"1\", , , \"1|([2-8]\\\\d{6})$\", \"441$1\", , , , , [, , , , , , , , , [-1]], , \"441\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BN:[, [, , \"[2-578]\\\\d{6}\", , , , , , , [7]], [, , \"22[0-7]\\\\d{4}|(?:2[013-9]|[3-5]\\\\d)\\\\d{5}\", , , , \"2345678\"], [, , \"(?:22[89]|[78]\\\\d\\\\d)\\\\d{4}\",\n, , , \"7123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"BN\", 673, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[2-578]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BO:[, [, , \"(?:[2-467]\\\\d\\\\d|8001)\\\\d{5}\", , , , , , , [8, 9], [7]], [, , \"(?:2(?:2\\\\d\\\\d|5(?:11|[258]\\\\d|9[67])|6(?:12|2\\\\d|9[34])|8(?:2[34]|39|62))|3(?:3\\\\d\\\\d|4(?:6\\\\d|8[24])|8(?:25|42|5[257]|86|9[25])|9(?:[27]\\\\d|3[2-4]|4[248]|5[24]|6[2-6]))|4(?:4\\\\d\\\\d|6(?:11|[24689]\\\\d|72)))\\\\d{4}\",\n, , , \"22123456\", , , [8], [7]], [, , \"[67]\\\\d{7}\", , , , \"71234567\", , , [8]], [, , \"8001[07]\\\\d{4}\", , , , \"800171234\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"BO\", 591, \"00(?:1\\\\d)?\", \"0\", , , \"0(1\\\\d)?\", , , , [[, \"(\\\\d)(\\\\d{7})\", \"$1 $2\", [\"[23]|4[46]\"], , \"0$CC $1\"], [, \"(\\\\d{8})\", \"$1\", [\"[67]\"], , \"0$CC $1\"], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{4})\", \"$1 $2 $3\", [\"8\"], , \"0$CC $1\"]], , [, , , , , , , , , [-1]], , , [, , \"8001[07]\\\\d{4}\",\n, , , , , , [9]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BQ:[, [, , \"(?:[34]1|7\\\\d)\\\\d{5}\", , , , , , , [7]], [, , \"(?:318[023]|41(?:6[023]|70)|7(?:1[578]|50)\\\\d)\\\\d{3}\", , , , \"7151234\"], [, , \"(?:31(?:8[14-8]|9[14578])|416[14-9]|7(?:0[01]|7[07]|8\\\\d|9[056])\\\\d)\\\\d{3}\", , , , \"3181234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"BQ\", 599, \"00\", , , , , , , , , , [, , , , , , , , , [-1]], ,\n\"[347]\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BR:[, [, , \"(?:[1-46-9]\\\\d\\\\d|5(?:[0-46-9]\\\\d|5[0-24679]))\\\\d{8}|[1-9]\\\\d{9}|[3589]\\\\d{8}|[34]\\\\d{7}\", , , , , , , [8, 9, 10, 11]], [, , \"(?:[14689][1-9]|2[12478]|3[1-578]|5[13-5]|7[13-579])[2-5]\\\\d{7}\", , , , \"1123456789\", , , [10], [8]], [, , \"(?:[14689][1-9]|2[12478]|3[1-578]|5[13-5]|7[13-579])(?:7|9\\\\d)\\\\d{7}\", , , , \"11961234567\", , , [10, 11], [8, 9]], [, , \"800\\\\d{6,7}\", , , , \"800123456\", , , [9, 10]],\n[, , \"300\\\\d{6}|[59]00\\\\d{6,7}\", , , , \"300123456\", , , [9, 10]], [, , \"300\\\\d{7}|[34]00\\\\d{5}|4(?:02|37)0\\\\d{4}\", , , , \"40041234\", , , [8, 10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"BR\", 55, \"00(?:1[245]|2[1-35]|31|4[13]|[56]5|99)\", \"0\", , , \"0(?:(1[245]|2[1-35]|31|4[13]|[56]5|99)(\\\\d{10,11}))?\", \"$2\", , , [[, \"(\\\\d{3,6})\", \"$1\", [\"1(?:1[25-8]|2[357-9]|3[02-68]|4[12568]|5|6[0-8]|8[015]|9[0-47-9])|321|610\"]], [, \"(\\\\d{4})(\\\\d{4})\", \"$1-$2\", [\"300|4(?:0[02]|37)\", \"4(?:02|37)0|[34]00\"]],\n[, \"(\\\\d{4})(\\\\d{4})\", \"$1-$2\", [\"[2-57]\", \"[2357]|4(?:[0-24-9]|3(?:[0-689]|7[1-9]))\"]], [, \"(\\\\d{3})(\\\\d{2,3})(\\\\d{4})\", \"$1 $2 $3\", [\"(?:[358]|90)0\"], \"0$1\"], [, \"(\\\\d{5})(\\\\d{4})\", \"$1-$2\", [\"9\"]], [, \"(\\\\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)\", \"0 $CC ($1)\"], [, \"(\\\\d{2})(\\\\d{5})(\\\\d{4})\", \"$1 $2-$3\", [\"[16][1-9]|[2-57-9]\"], \"($1)\", \"0 $CC ($1)\"]], [[, \"(\\\\d{4})(\\\\d{4})\", \"$1-$2\", [\"300|4(?:0[02]|37)\", \"4(?:02|37)0|[34]00\"]],\n[, \"(\\\\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)\", \"0 $CC ($1)\"], [, \"(\\\\d{2})(\\\\d{5})(\\\\d{4})\", \"$1 $2-$3\", [\"[16][1-9]|[2-57-9]\"], \"($1)\", \"0 $CC ($1)\"]], [, , , , , , , , , [-1]], , , [, , \"4020\\\\d{4}|[34]00\\\\d{5}\", , , , , , , [8]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BS:[, [, , \"(?:242|[58]\\\\d\\\\d|900)\\\\d{7}\", , , , , , , [10], [7]], [, ,\n\"242(?:3(?:02|[236][1-9]|4[0-24-9]|5[0-68]|7[347]|8[0-4]|9[2-467])|461|502|6(?:0[1-4]|12|2[013]|[45]0|7[67]|8[78]|9[89])|7(?:02|88))\\\\d{4}\", , , , \"2423456789\", , , , [7]], [, , \"242(?:3(?:5[79]|7[56]|95)|4(?:[23][1-9]|4[1-35-9]|5[1-8]|6[2-8]|7\\\\d|81)|5(?:2[45]|3[35]|44|5[1-46-9]|65|77)|6[34]6|7(?:27|38)|8(?:0[1-9]|1[02-9]|2\\\\d|[89]9))\\\\d{4}\", , , , \"2423591234\", , , , [7]], [, , \"242300\\\\d{4}|8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\", , , , [7]], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"],\n[, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"BS\", 1, \"011\", \"1\", , , \"1|([3-8]\\\\d{6})$\", \"242$1\", , , , , [, , , , , , , , , [-1]], , \"242\", [, , , , , , , , , [-1]], [, , \"242225[0-46-9]\\\\d{3}\", , , , \"2422250123\"], , , [, , , , , , , , , [-1]]], BT:[, [, , \"[17]\\\\d{7}|[2-8]\\\\d{6}\", , , , , , , [7, 8], [6]], [, , \"(?:2[3-6]|[34][5-7]|5[236]|6[2-46]|7[246]|8[2-4])\\\\d{5}\", , , , \"2345678\", , , [7], [6]], [, , \"(?:1[67]|77)\\\\d{6}\",\n, , , \"17123456\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"BT\", 975, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{3})\", \"$1 $2\", [\"[2-7]\"]], [, \"(\\\\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\"]]], [[, \"(\\\\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\"]]], [, , , ,\n, , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BW:[, [, , \"90\\\\d{5}|(?:[2-6]|7\\\\d)\\\\d{6}\", , , , , , , [7, 8]], [, , \"(?:2(?:4[0-48]|6[0-24]|9[0578])|3(?:1[0-35-9]|55|[69]\\\\d|7[013])|4(?:6[03]|7[1267]|9[0-5])|5(?:3[0389]|4[0489]|7[1-47]|88|9[0-49])|6(?:2[1-35]|5[149]|8[067]))\\\\d{4}\", , , , \"2401234\", , , [7]], [, , \"77200\\\\d{3}|7(?:[1-6]\\\\d|7[014-8])\\\\d{5}\", , , , \"71123456\", , , [8]], [, , , , , , , , , [-1]], [, , \"90\\\\d{5}\", , , , \"9012345\",\n, , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"79(?:1(?:[01]\\\\d|20)|2[0-2]\\\\d)\\\\d{3}\", , , , \"79101234\", , , [8]], \"BW\", 267, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{5})\", \"$1 $2\", [\"90\"]], [, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[2-6]\"]], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"7\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BY:[, [, , \"(?:[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}\",\n, , , , , , [6, 7, 8, 9, 10, 11], [5]], [, , \"(?:1(?:5(?:1[1-5]|[24]\\\\d|6[2-4]|9[1-7])|6(?:[235]\\\\d|4[1-7])|7\\\\d\\\\d)|2(?:1(?:[246]\\\\d|3[0-35-9]|5[1-9])|2(?:[235]\\\\d|4[0-8])|3(?:[26]\\\\d|3[02-79]|4[024-7]|5[03-7])))\\\\d{5}\", , , , \"152450911\", , , [9], [5, 6, 7]], [, , \"(?:2(?:5[5-79]|9[1-9])|(?:33|44)\\\\d)\\\\d{6}\", , , , \"294911911\", , , [9]], [, , \"800\\\\d{3,7}|8(?:0[13]|20\\\\d)\\\\d{7}\", , , , \"8011234567\"], [, , \"(?:810|902)\\\\d{7}\", , , , \"9021234567\", , , [10]], [, , , , , , , , , [-1]], [, , , , , ,\n, , , [-1]], [, , \"249\\\\d{6}\", , , , \"249123456\", , , [9]], \"BY\", 375, \"810\", \"8\", , , \"0|80?\", , \"8~10\", , [[, \"(\\\\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]\"],\n\"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\"]], , [, , , , , , , , , [-1]], , , [, , \"800\\\\d{3,7}|(?:8(?:0[13]|10|20\\\\d)|902)\\\\d{7}\"], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BZ:[, [, , \"(?:0800\\\\d|[2-8])\\\\d{6}\", , , , , , , [7, 11]], [, , \"(?:236|732)\\\\d{4}|[2-578][02]\\\\d{5}\", , , , \"2221234\", , , [7]], [, , \"6[0-35-7]\\\\d{5}\", , , , \"6221234\", , , [7]], [, , \"0800\\\\d{7}\", , , ,\n\"08001234123\", , , [11]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"BZ\", 501, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1-$2\", [\"[2-8]\"]], [, \"(\\\\d)(\\\\d{3})(\\\\d{4})(\\\\d{3})\", \"$1-$2-$3-$4\", [\"0\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CA:[, [, , \"(?:[2-8]\\\\d|90)\\\\d{8}\", , , , , , , [10], [7]], [, , \"(?:2(?:04|[23]6|[48]9|50)|3(?:06|43|65)|4(?:03|1[68]|3[178]|50)|5(?:06|1[49]|48|79|8[17])|6(?:04|13|39|47)|7(?:0[59]|78|8[02])|8(?:[06]7|19|25|73)|90[25])[2-9]\\\\d{6}\",\n, , , \"5062345678\", , , , [7]], [, , \"(?:2(?:04|[23]6|[48]9|50)|3(?:06|43|65)|4(?:03|1[68]|3[178]|50)|5(?:06|1[49]|48|79|8[17])|6(?:04|13|39|47)|7(?:0[59]|78|8[02])|8(?:[06]7|19|25|73)|90[25])[2-9]\\\\d{6}\", , , , \"5062345678\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"(?:5(?:00|2[12]|33|44|66|77|88)|622)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , \"600[2-9]\\\\d{6}\", , , , \"6002012345\"], \"CA\",\n1, \"011\", \"1\", , , \"1\", , , 1, , , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CC:[, [, , \"1(?:[0-79]\\\\d|8[0-24-9])\\\\d{7}|(?:[148]\\\\d\\\\d|550)\\\\d{6}|1\\\\d{5,7}\", , , , , , , [6, 7, 8, 9, 10]], [, , \"8(?:51(?:0(?:02|31|60)|118)|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}\", , , , \"891621234\", , , [9], [8]], [, , \"483[0-3]\\\\d{5}|4(?:[0-3]\\\\d|4[047-9]|5[0-25-9]|6[06-9]|7[02-9]|8[0-2457-9]|9[0-27-9])\\\\d{6}\",\n, , , \"412345678\", , , [9]], [, , \"180(?:0\\\\d{3}|2)\\\\d{3}\", , , , \"1800123456\", , , [7, 10]], [, , \"190[0-26]\\\\d{6}\", , , , \"1900123456\", , , [10]], [, , \"13(?:00\\\\d{3}|45[0-4])\\\\d{3}|13\\\\d{4}\", , , , \"1300123456\", , , [6, 8, 10]], [, , , , , , , , , [-1]], [, , \"(?:14(?:5(?:1[0458]|[23][458])|71\\\\d)|550\\\\d\\\\d)\\\\d{4}\", , , , \"550123456\", , , [9]], \"CC\", 61, \"001[14-689]|14(?:1[14]|34|4[17]|[56]6|7[47]|88)0011\", \"0\", , , \"0|([59]\\\\d{7})$\", \"8$1\", \"0011\", , , , [, , , , , , , , , [-1]], , , [, , ,\n, , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CD:[, [, , \"[189]\\\\d{8}|[1-68]\\\\d{6}\", , , , , , , [7, 9]], [, , \"12\\\\d{7}|[1-6]\\\\d{6}\", , , , \"1234567\"], [, , \"88\\\\d{5}|(?:8[0-2459]|9[017-9])\\\\d{7}\", , , , \"991234567\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"CD\", 243, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{3})\", \"$1 $2 $3\", [\"88\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{5})\", \"$1 $2\",\n[\"[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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CF:[, [, , \"(?:[27]\\\\d{3}|8776)\\\\d{4}\", , , , , , , [8]], [, , \"2[12]\\\\d{6}\", , , , \"21612345\"], [, , \"7[0257]\\\\d{6}\", , , , \"70012345\"], [, , , , , , , , , [-1]], [, , \"8776\\\\d{4}\", , , , \"87761234\"], [, , , , , , , , , [-1]], [, , , , , , , , ,\n[-1]], [, , , , , , , , , [-1]], \"CF\", 236, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[278]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CG:[, [, , \"222\\\\d{6}|(?:0\\\\d|80)\\\\d{7}\", , , , , , , [9]], [, , \"222[1-589]\\\\d{5}\", , , , \"222123456\"], [, , \"0[14-6]\\\\d{7}\", , , , \"061234567\"], [, , , , , , , , , [-1]], [, , \"80(?:0\\\\d\\\\d|11[0-4])\\\\d{4}\", , , , \"800123456\"], [, , , , , , , , , [-1]],\n[, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"CG\", 242, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"801\"]], [, \"(\\\\d)(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"8\"]], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[02]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CH:[, [, , \"8\\\\d{11}|[2-9]\\\\d{8}\", , , , , , , [9, 12]], [, , \"(?:2[12467]|3[1-4]|4[134]|5[256]|6[12]|[7-9]1)\\\\d{7}\", , , , \"212345678\",\n, , [9]], [, , \"7[35-9]\\\\d{7}\", , , , \"781234567\", , , [9]], [, , \"800\\\\d{6}\", , , , \"800123456\", , , [9]], [, , \"90[016]\\\\d{6}\", , , , \"900123456\", , , [9]], [, , \"84[0248]\\\\d{6}\", , , , \"840123456\", , , [9]], [, , \"878\\\\d{6}\", , , , \"878123456\", , , [9]], [, , , , , , , , , [-1]], \"CH\", 41, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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})\",\n\"$1 $2 $3 $4 $5\", [\"8\"], \"0$1\"]], , [, , \"74[0248]\\\\d{6}\", , , , \"740123456\", , , [9]], , , [, , , , , , , , , [-1]], [, , \"5[18]\\\\d{7}\", , , , \"581234567\", , , [9]], , , [, , \"860\\\\d{9}\", , , , \"860123456789\", , , [12]]], CI:[, [, , \"[02-8]\\\\d{7}\", , , , , , , [8]], [, , \"(?:2(?:0[023]|1[02357]|[23][045]|4[03-5])|3(?:0[06]|1[069]|[2-4][07]|5[09]|6[08]))\\\\d{5}\", , , , \"21234567\"], [, , \"(?:0[1-9]|[457]\\\\d|6[014-9]|8[4-9])\\\\d{6}\", , , , \"01234567\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]],\n[, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"CI\", 225, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[02-8]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CK:[, [, , \"[2-8]\\\\d{4}\", , , , , , , [5]], [, , \"(?:2\\\\d|3[13-7]|4[1-5])\\\\d{3}\", , , , \"21234\"], [, , \"[5-8]\\\\d{4}\", , , , \"71234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]],\n[, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"CK\", 682, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{3})\", \"$1 $2\", [\"[2-8]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CL:[, [, , \"12300\\\\d{6}|6\\\\d{9,10}|[2-9]\\\\d{8}\", , , , , , , [9, 10, 11]], [, , \"(?:2(?:1962|3(?:2\\\\d\\\\d|300))|80[1-9]\\\\d\\\\d)\\\\d{4}|(?:22|3[2-5]|[47][1-35]|5[1-3578]|6[13-57]|8[1-9]|9[2-9])\\\\d{7}\", , , , \"221234567\", , , [9]], [, , \"(?:2(?:1962|3(?:2\\\\d\\\\d|300))|80[1-9]\\\\d\\\\d)\\\\d{4}|(?:22|3[2-5]|[47][1-35]|5[1-3578]|6[13-57]|8[1-9]|9[2-9])\\\\d{7}\",\n, , , \"221234567\", , , [9]], [, , \"(?:123|8)00\\\\d{6}\", , , , \"800123456\", , , [9, 11]], [, , , , , , , , , [-1]], [, , \"600\\\\d{7,8}\", , , , \"6001234567\", , , [10, 11]], [, , , , , , , , , [-1]], [, , \"44\\\\d{7}\", , , , \"441234567\", , , [9]], \"CL\", 56, \"(?:0|1(?:1[0-69]|2[0-57]|5[13-58]|69|7[0167]|8[018]))0\", , , , , , , 1, [[, \"(\\\\d{4})\", \"$1\", [\"1(?:[03-589]|21)|[29]0|78\"]], [, \"(\\\\d{5})(\\\\d{4})\", \"$1 $2\", [\"21\"], \"($1)\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"44\"]], [, \"(\\\\d)(\\\\d{4})(\\\\d{4})\",\n\"$1 $2 $3\", [\"2[23]\"], \"($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\"]]], [[, \"(\\\\d{5})(\\\\d{4})\", \"$1 $2\", [\"21\"], \"($1)\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"44\"]], [, \"(\\\\d)(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\",\n[\"2[23]\"], \"($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\"]]], [, , , , , , , , , [-1]], , , [, , \"600\\\\d{7,8}\", , , , , , , [10, 11]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CM:[, [, , \"(?:[26]\\\\d\\\\d|88)\\\\d{6}\",\n, , , , , , [8, 9]], [, , \"2(?:22|33|4[23])\\\\d{6}\", , , , \"222123456\", , , [9]], [, , \"6[5-9]\\\\d{7}\", , , , \"671234567\", , , [9]], [, , \"88\\\\d{6}\", , , , \"88012345\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"CM\", 237, \"00\", , , , , , , , [[, \"(\\\\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]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]],\n[, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CN:[, [, , \"1[1279]\\\\d{8,9}|2\\\\d{9}(?:\\\\d{2})?|[12]\\\\d{6,7}|86\\\\d{6}|(?:1[03-68]\\\\d|6)\\\\d{7,9}|(?:[3-579]\\\\d|8[0-57-9])\\\\d{6,9}\", , , , , , , [7, 8, 9, 10, 11, 12], [5, 6]], [, , \"(?:10(?:[02-79]\\\\d\\\\d|[18](?:0[1-9]|[1-9]\\\\d))|21(?:[18](?:0[1-9]|[1-9]\\\\d)|[2-79]\\\\d\\\\d))\\\\d{5}|(?:43[35]|754)\\\\d{7,8}|8(?:078\\\\d{7}|51\\\\d{7,8})|(?:10|(?:2|85)1|43[35]|754)(?:100\\\\d\\\\d|95\\\\d{3,4})|(?:2[02-57-9]|3(?:11|7[179])|4(?:[15]1|3[12])|5(?:1\\\\d|2[37]|3[12]|51|7[13-79]|9[15])|7(?:[39]1|5[57]|6[09])|8(?:71|98))(?:[02-8]\\\\d{7}|1(?:0(?:0\\\\d\\\\d(?:\\\\d{3})?|[1-9]\\\\d{5})|[1-9]\\\\d{6})|9(?:[0-46-9]\\\\d{6}|5\\\\d{3}(?:\\\\d(?:\\\\d{2})?)?))|(?:3(?:1[02-9]|35|49|5\\\\d|7[02-68]|9[1-68])|4(?:1[02-9]|2[179]|3[46-9]|5[2-9]|6[47-9]|7\\\\d|8[23])|5(?:3[03-9]|4[36]|5[02-9]|6[1-46]|7[028]|80|9[2-46-9])|6(?:3[1-5]|6[0238]|9[12])|7(?:01|[17]\\\\d|2[248]|3[04-9]|4[3-6]|5[0-3689]|6[2368]|9[02-9])|8(?:1[236-8]|2[5-7]|3\\\\d|5[2-9]|7[02-9]|8[36-8]|9[1-7])|9(?:0[1-3689]|1[1-79]|[379]\\\\d|4[13]|5[1-5]))(?:[02-8]\\\\d{6}|1(?:0(?:0\\\\d\\\\d(?:\\\\d{2})?|[1-9]\\\\d{4})|[1-9]\\\\d{5})|9(?:[0-46-9]\\\\d{5}|5\\\\d{3,5}))\",\n, , , \"1012345678\", , , [7, 8, 9, 10, 11], [5, 6]], [, , \"1740[0-5]\\\\d{6}|1(?:[38]\\\\d|4[57]|5[0-35-9]|6[25-7]|7[0-35-8]|9[189])\\\\d{8}\", , , , \"13123456789\", , , [11]], [, , \"(?:(?:10|21)8|8)00\\\\d{7}\", , , , \"8001234567\", , , [10, 12]], [, , \"16[08]\\\\d{5}\", , , , \"16812345\", , , [8]], [, , \"400\\\\d{7}|950\\\\d{7,8}|(?:10|2[0-57-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[14-9]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|[379]\\\\d|4[13]|5[1-5]))96\\\\d{3,4}\",\n, , , \"4001234567\", , , [7, 8, 9, 10, 11], [5, 6]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"CN\", 86, \"00|1(?:[12]\\\\d|79|9[0235-7])\\\\d\\\\d00\", \"0\", , , \"0|(1(?:[12]\\\\d|79|9[0235-7])\\\\d\\\\d)\", , \"00\", , [[, \"(\\\\d{5,6})\", \"$1\", [\"96\"]], [, \"(\\\\d{2})(\\\\d{5,6})\", \"$1 $2\", [\"(?:10|2[0-57-9])[19]\", \"(?:10|2[0-57-9])(?:10|9[56])\", \"(?:10|2[0-57-9])(?:100|9[56])\"], \"0$1\", \"$CC $1\"], [, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[1-9]\", \"1[1-9]|26|[3-9]|(?:10|2[0-57-9])(?:[0-8]|9[0-47-9])\", \"1[1-9]|26|[3-9]|(?:10|2[0-57-9])(?:[02-8]|1(?:0[1-9]|[1-9])|9[0-47-9])\"]],\n[, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"16[08]\"]], [, \"(\\\\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]\",\n\"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])\"],\n\"0$1\", \"$CC $1\"], [, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[1-9]\", \"1[1-9]|26|[3-9]|(?:10|2[0-57-9])(?:[0-8]|9[0-47-9])\", \"26|3(?:[0268]|9[079])|4(?:[049]|2[02-68]|[35]0|6[0-356]|8[014-9])|5(?:0|2[0-24-689]|4[0-2457-9]|6[057-9]|90)|6(?:[0-24578]|6[14-79]|9[03-9])|7(?:0[02-9]|2[0135-79]|3[23]|4[0-27-9]|6[1457]|8)|8(?:[046]|1[01459]|2[0-489]|50|8[0-2459]|9[09])|9(?:0[0457]|1[08]|[268]|4[024-9])|(?:34|85[23])[0-8]|(?:1|58)[1-9]|(?:63|95)[06-9]|(?:33|85[23]9)[0-46-9]|(?:10|2[0-57-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[14-9]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|[379]\\\\d|4[13]|5[1-5]))(?:[0-8]|9[0-47-9])\",\n\"26|3(?:[0268]|3[0-46-9]|4[0-8]|9[079])|4(?:[049]|2[02-68]|[35]0|6[0-356]|8[014-9])|5(?:0|2[0-24-689]|4[0-2457-9]|6[057-9]|90)|6(?:[0-24578]|3[06-9]|6[14-79]|9[03-9])|7(?:0[02-9]|2[0135-79]|3[23]|4[0-27-9]|6[1457]|8)|8(?:[046]|1[01459]|2[0-489]|5(?:0|[23](?:[02-8]|1[1-9]|9[0-46-9]))|8[0-2459]|9[09])|9(?:0[0457]|1[08]|[268]|4[024-9]|5[06-9])|(?:1|58|85[23]10)[1-9]|(?:10|2[0-57-9])(?:[0-8]|9[0-47-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[14-9]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|[379]\\\\d|4[13]|5[1-5]))(?:[02-8]|1(?:0[1-9]|[1-9])|9[0-47-9])\"]],\n[, \"(\\\\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\", \"$CC $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\", \"$CC $1\", 1],\n[, \"(\\\\d{3})(\\\\d{7,8})\", \"$1 $2\", [\"9\"]], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"80\"], \"0$1\", \"$CC $1\", 1], [, \"(\\\\d{3})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"[3-578]\"], \"0$1\", \"$CC $1\", 1], [, \"(\\\\d{3})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"1[3-9]\"], , \"$CC $1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3 $4\", [\"[12]\"], \"0$1\", , 1]], [[, \"(\\\\d{2})(\\\\d{5,6})\", \"$1 $2\", [\"(?:10|2[0-57-9])[19]\", \"(?:10|2[0-57-9])(?:10|9[56])\", \"(?:10|2[0-57-9])(?:100|9[56])\"], \"0$1\", \"$CC $1\"], [, \"(\\\\d{3})(\\\\d{5,6})\",\n\"$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]\",\n\"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])\"],\n\"0$1\", \"$CC $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\", \"$CC $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\",\n\"$CC $1\", 1], [, \"(\\\\d{3})(\\\\d{7,8})\", \"$1 $2\", [\"9\"]], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"80\"], \"0$1\", \"$CC $1\", 1], [, \"(\\\\d{3})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"[3-578]\"], \"0$1\", \"$CC $1\", 1], [, \"(\\\\d{3})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"1[3-9]\"], , \"$CC $1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3 $4\", [\"[12]\"], \"0$1\", , 1]], [, , , , , , , , , [-1]], , , [, , \"(?:(?:10|21)8|[48])00\\\\d{7}|950\\\\d{7,8}\", , , , , , , [10, 11, 12]], [, , , , , , , , , [-1]], , , [, , , , , , ,\n, , [-1]]], CO:[, [, , \"(?:1\\\\d|3)\\\\d{9}|[124-8]\\\\d{7}\", , , , , , , [8, 10, 11], [7]], [, , \"[124-8][2-9]\\\\d{6}\", , , , \"12345678\", , , [8], [7]], [, , \"3(?:0[0-5]|1\\\\d|2[0-3]|5[01])\\\\d{7}\", , , , \"3211234567\", , , [10]], [, , \"1800\\\\d{7}\", , , , \"18001234567\", , , [11]], [, , \"19(?:0[01]|4[78])\\\\d{7}\", , , , \"19001234567\", , , [11]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"CO\", 57, \"00(?:4(?:[14]4|56)|[579])\", \"0\", , , \"0([3579]|4(?:[14]4|56))?\", , , , [[,\n\"(\\\\d)(\\\\d{7})\", \"$1 $2\", [\"1[2-79]|[25-8]|(?:18|4)[2-9]\"], \"($1)\", \"0$CC $1\"], [, \"(\\\\d{3})(\\\\d{7})\", \"$1 $2\", [\"3\"], , \"0$CC $1\"], [, \"(\\\\d)(\\\\d{3})(\\\\d{7})\", \"$1-$2-$3\", [\"1(?:80|9)\", \"1(?:800|9)\"], \"0$1\"]], [[, \"(\\\\d)(\\\\d{7})\", \"$1 $2\", [\"1[2-79]|[25-8]|(?:18|4)[2-9]\"], \"($1)\", \"0$CC $1\"], [, \"(\\\\d{3})(\\\\d{7})\", \"$1 $2\", [\"3\"], , \"0$CC $1\"], [, \"(\\\\d)(\\\\d{3})(\\\\d{7})\", \"$1 $2 $3\", [\"1(?:80|9)\", \"1(?:800|9)\"]]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]],\n, , [, , , , , , , , , [-1]]], CR:[, [, , \"(?:8\\\\d|90)\\\\d{8}|[24-8]\\\\d{7}\", , , , , , , [8, 10]], [, , \"210[7-9]\\\\d{4}|2(?:[024-7]\\\\d|1[1-9])\\\\d{5}\", , , , \"22123456\", , , [8]], [, , \"6500[01]\\\\d{3}|5(?:0[01]|7[0-3])\\\\d{5}|(?:6[0-4]|7[0-3]|8[3-9])\\\\d{6}\", , , , \"83123456\", , , [8]], [, , \"800\\\\d{7}\", , , , \"8001234567\", , , [10]], [, , \"90[059]\\\\d{7}\", , , , \"9001234567\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"(?:210[0-6]|4\\\\d{3}|5100)\\\\d{4}\", , , , \"40001234\", , , [8]],\n\"CR\", 506, \"00\", , , , \"(19(?:0[0-2468]|1[09]|20|66|77|99))\", , , , [[, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[24-7]|8[3-9]\"], , \"$CC $1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"[89]\"], , \"$CC $1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CU:[, [, , \"[27]\\\\d{6,7}|[34]\\\\d{5,7}|5\\\\d{7}\", , , , , , , [6, 7, 8], [4, 5]], [, , \"(?:3[23]|48)\\\\d{4,6}|(?:31|4[36])\\\\d{6}|(?:2[1-4]|4[1257]|7\\\\d)\\\\d{5,6}\", , , , \"71234567\", , , , [4,\n5]], [, , \"5\\\\d{7}\", , , , \"51234567\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"CU\", 53, \"119\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{4,6})\", \"$1 $2\", [\"2[1-4]|[34]\"], \"(0$1)\"], [, \"(\\\\d)(\\\\d{6,7})\", \"$1 $2\", [\"7\"], \"(0$1)\"], [, \"(\\\\d)(\\\\d{7})\", \"$1 $2\", [\"5\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CV:[, [, , \"[2-59]\\\\d{6}\",\n, , , , , , [7]], [, , \"2(?:2[1-7]|3[0-8]|4[12]|5[1256]|6\\\\d|7[1-3]|8[1-5])\\\\d{4}\", , , , \"2211234\"], [, , \"(?:[34][36]|5[1-389]|9\\\\d)\\\\d{5}\", , , , \"9911234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"CV\", 238, \"0\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3\", [\"[2-59]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CW:[, [,\n, \"(?:[34]1|60|(?:7|9\\\\d)\\\\d)\\\\d{5}\", , , , , , , [7, 8]], [, , \"9(?:4(?:3[0-5]|4[14]|6\\\\d)|50\\\\d|7(?:2[014]|3[02-9]|4[4-9]|6[357]|77|8[7-9])|8(?:3[39]|[46]\\\\d|7[01]|8[57-9]))\\\\d{4}\", , , , \"94351234\"], [, , \"953[01]\\\\d{4}|9(?:5[12467]|6[5-9])\\\\d{5}\", , , , \"95181234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"60[0-2]\\\\d{4}\", , , , \"6001234\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"CW\", 599, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[3467]\"]],\n[, \"(\\\\d)(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"9[4-8]\"]]], , [, , \"955\\\\d{5}\", , , , \"95581234\", , , [8]], 1, \"[69]\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CX:[, [, , \"1(?:[0-79]\\\\d|8[0-24-9])\\\\d{7}|(?:[148]\\\\d\\\\d|550)\\\\d{6}|1\\\\d{5,7}\", , , , , , , [6, 7, 8, 9, 10]], [, , \"8(?:51(?:0(?:01|30|59)|117)|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}\", , , , \"891641234\", , , [9], [8]], [, , \"483[0-3]\\\\d{5}|4(?:[0-3]\\\\d|4[047-9]|5[0-25-9]|6[06-9]|7[02-9]|8[0-2457-9]|9[0-27-9])\\\\d{6}\",\n, , , \"412345678\", , , [9]], [, , \"180(?:0\\\\d{3}|2)\\\\d{3}\", , , , \"1800123456\", , , [7, 10]], [, , \"190[0-26]\\\\d{6}\", , , , \"1900123456\", , , [10]], [, , \"13(?:00\\\\d{3}|45[0-4])\\\\d{3}|13\\\\d{4}\", , , , \"1300123456\", , , [6, 8, 10]], [, , , , , , , , , [-1]], [, , \"(?:14(?:5(?:1[0458]|[23][458])|71\\\\d)|550\\\\d\\\\d)\\\\d{4}\", , , , \"550123456\", , , [9]], \"CX\", 61, \"001[14-689]|14(?:1[14]|34|4[17]|[56]6|7[47]|88)0011\", \"0\", , , \"0|([59]\\\\d{7})$\", \"8$1\", \"0011\", , , , [, , , , , , , , , [-1]], , , [, , ,\n, , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CY:[, [, , \"(?:[279]\\\\d|[58]0)\\\\d{6}\", , , , , , , [8]], [, , \"2[2-6]\\\\d{6}\", , , , \"22345678\"], [, , \"9[4-79]\\\\d{6}\", , , , \"96123456\"], [, , \"800\\\\d{5}\", , , , \"80001234\"], [, , \"90[09]\\\\d{5}\", , , , \"90012345\"], [, , \"80[1-9]\\\\d{5}\", , , , \"80112345\"], [, , \"700\\\\d{5}\", , , , \"70012345\"], [, , , , , , , , , [-1]], \"CY\", 357, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{6})\", \"$1 $2\", [\"[257-9]\"]]], , [, , , , , , , , , [-1]],\n, , [, , , , , , , , , [-1]], [, , \"(?:50|77)\\\\d{6}\", , , , \"77123456\"], , , [, , , , , , , , , [-1]]], CZ:[, [, , \"(?:[2-578]\\\\d|60)\\\\d{7}|9\\\\d{8,11}\", , , , , , , [9, 10, 11, 12]], [, , \"(?:2\\\\d|3[1257-9]|4[16-9]|5[13-9])\\\\d{7}\", , , , \"212345678\", , , [9]], [, , \"(?:60[1-8]|7(?:0[2-5]|[2379]\\\\d))\\\\d{6}\", , , , \"601123456\", , , [9]], [, , \"800\\\\d{6}\", , , , \"800123456\", , , [9]], [, , \"9(?:0[05689]|76)\\\\d{6}\", , , , \"900123456\", , , [9]], [, , \"8[134]\\\\d{7}\", , , , \"811234567\", , , [9]], [, , \"70[01]\\\\d{6}\",\n, , , \"700123456\", , , [9]], [, , \"9[17]0\\\\d{6}\", , , , \"910123456\", , , [9]], \"CZ\", 420, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[2-8]|9[015-7]\"]], [, \"(\\\\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\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"9(?:5\\\\d|7[2-4])\\\\d{6}\", , , , \"972123456\", , , [9]], , , [, , \"9(?:3\\\\d{9}|6\\\\d{7,10})\", , , , \"93123456789\"]], DE:[, [, , \"[2579]\\\\d{5,14}|49(?:[05]\\\\d{10}|[46][1-8]\\\\d{4,9})|49(?:[0-25]\\\\d|3[1-689]|7[1-7])\\\\d{4,8}|49(?:[0-2579]\\\\d|[34][1-9]|6[0-8])\\\\d{3}|49\\\\d{3,4}|(?:1|[368]\\\\d|4[0-8])\\\\d{3,13}\",\n, , , , , , [4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15], [2, 3]], [, , \"(?:32|49[4-6]\\\\d)\\\\d{9}|49[0-7]\\\\d{3,9}|(?:[34]0|[68]9)\\\\d{3,13}|(?:2(?:0[1-689]|[1-3569]\\\\d|4[0-8]|7[1-7]|8[0-7])|3(?:[3569]\\\\d|4[0-79]|7[1-7]|8[1-8])|4(?:1[02-9]|[2-48]\\\\d|5[0-6]|6[0-8]|7[0-79])|5(?:0[2-8]|[124-6]\\\\d|[38][0-8]|[79][0-7])|6(?:0[02-9]|[1-358]\\\\d|[47][0-8]|6[1-9])|7(?:0[2-8]|1[1-9]|[27][0-7]|3\\\\d|[4-6][0-8]|8[0-5]|9[013-7])|8(?:0[2-9]|1[0-79]|2\\\\d|3[0-46-9]|4[0-6]|5[013-9]|6[1-8]|7[0-8]|8[0-24-6])|9(?:0[6-9]|[1-4]\\\\d|[589][0-7]|6[0-8]|7[0-467]))\\\\d{3,12}\",\n, , , \"30123456\", , , [5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15], [2, 3, 4]], [, , \"15[0-25-9]\\\\d{8}|1(?:6[023]|7\\\\d)\\\\d{7,8}\", , , , \"15123456789\", , , [10, 11]], [, , \"800\\\\d{7,12}\", , , , \"8001234567890\", , , [10, 11, 12, 13, 14, 15]], [, , \"(?:137[7-9]|900(?:[135]|9\\\\d))\\\\d{6}\", , , , \"9001234567\", , , [10, 11]], [, , \"180\\\\d{5,11}|13(?:7[1-6]\\\\d\\\\d|8)\\\\d{4}\", , , , \"18012345\", , , [7, 8, 9, 10, 11, 12, 13, 14]], [, , \"700\\\\d{8}\", , , , \"70012345678\", , , [11]], [, , , , , , , , , [-1]], \"DE\", 49,\n\"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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]\"],\n\"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\"],\n[, \"(\\\\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\"]], , [, , \"16(?:4\\\\d{1,10}|[89]\\\\d{1,11})\", , , , \"16412345\", , , [4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14]], , , [, , , , , , , , , [-1]], [, , \"18(?:1\\\\d{5,11}|[2-9]\\\\d{8})\",\n, , , \"18500123456\", , , [8, 9, 10, 11, 12, 13, 14]], , , [, , \"1(?:6(?:013|255|399)|7(?:(?:[015]1|[69]3)3|[2-4]55|[78]99))\\\\d{7,8}|15(?:(?:[03-68]00|113)\\\\d|2\\\\d55|7\\\\d99|9\\\\d33)\\\\d{7}\", , , , \"177991234567\", , , [12, 13]]], DJ:[, [, , \"(?:2\\\\d|77)\\\\d{6}\", , , , , , , [8]], [, , \"2(?:1[2-5]|7[45])\\\\d{5}\", , , , \"21360003\"], [, , \"77\\\\d{6}\", , , , \"77831001\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"DJ\", 253,\n\"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[27]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], DK:[, [, , \"[2-9]\\\\d{7}\", , , , , , , [8]], [, , \"(?:[2-7]\\\\d|8[126-9]|9[1-36-9])\\\\d{6}\", , , , \"32123456\"], [, , \"(?:[2-7]\\\\d|8[126-9]|9[1-36-9])\\\\d{6}\", , , , \"32123456\"], [, , \"80\\\\d{6}\", , , , \"80123456\"], [, , \"90\\\\d{6}\", , , , \"90123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [,\n, , , , , , , , [-1]], \"DK\", 45, \"00\", , , , , , , 1, [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[2-9]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], DM:[, [, , \"(?:[58]\\\\d\\\\d|767|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"767(?:2(?:55|66)|4(?:2[01]|4[0-25-9])|50[0-4]|70[1-3])\\\\d{4}\", , , , \"7674201234\", , , , [7]], [, , \"767(?:2(?:[2-4689]5|7[5-7])|31[5-7]|61[1-7])\\\\d{4}\", , , , \"7672251234\", , , , [7]], [, ,\n\"8(?:00(?:14|[2-9]\\\\d)|(?:33|44|55|66|77|88)[2-9]\\\\d)\\\\d{5}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"DM\", 1, \"011\", \"1\", , , \"1|([2-7]\\\\d{6})$\", \"767$1\", , , , , [, , , , , , , , , [-1]], , \"767|8001\", [, , \"80014\\\\d{5}\"], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], DO:[, [, , \"(?:[58]\\\\d\\\\d|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"8(?:[04]9[2-9]\\\\d\\\\d|29(?:2(?:[0-59]\\\\d|6[04-9]|7[0-27]|8[0237-9])|3(?:[0-35-9]\\\\d|4[7-9])|[45]\\\\d\\\\d|6(?:[0-27-9]\\\\d|[3-5][1-9]|6[0135-8])|7(?:0[013-9]|[1-37]\\\\d|4[1-35689]|5[1-4689]|6[1-57-9]|8[1-79]|9[1-8])|8(?:0[146-9]|1[0-48]|[248]\\\\d|3[1-79]|5[01589]|6[013-68]|7[124-8]|9[0-8])|9(?:[0-24]\\\\d|3[02-46-9]|5[0-79]|60|7[0169]|8[57-9]|9[02-9])))\\\\d{4}\",\n, , , \"8092345678\", , , , [7]], [, , \"8[024]9[2-9]\\\\d{6}\", , , , \"8092345678\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"DO\", 1, \"011\", \"1\", , , \"1\", , , , , , [, , , , , , , , , [-1]], , \"8[024]9\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], DZ:[, [, , \"(?:[1-4]|[5-79]\\\\d|80)\\\\d{7}\",\n, , , , , , [8, 9]], [, , \"9619\\\\d{5}|(?:1\\\\d|2[013-79]|3[0-8]|4[0135689])\\\\d{6}\", , , , \"12345678\"], [, , \"67[0-6]\\\\d{6}|(?:5[4-6]|6[569]|7[7-9])\\\\d{7}\", , , , \"551234567\", , , [9]], [, , \"800\\\\d{6}\", , , , \"800123456\", , , [9]], [, , \"80[3-689]1\\\\d{5}\", , , , \"808123456\", , , [9]], [, , \"80[12]1\\\\d{5}\", , , , \"801123456\", , , [9]], [, , , , , , , , , [-1]], [, , \"98[23]\\\\d{6}\", , , , \"983123456\", , , [9]], \"DZ\", 213, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\",\n[\"[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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], EC:[, [, , \"1800\\\\d{6,7}|(?:[2-7]|9\\\\d)\\\\d{7}\", , , , , , , [8, 9, 10, 11], [7]], [, , \"[2-7][2-7]\\\\d{6}\", , , , \"22123456\", , , [8], [7]], [, , \"964[0-2]\\\\d{5}|9(?:39|[57][89]|6[0-37-9]|[89]\\\\d)\\\\d{6}\", , , , \"991234567\", ,\n, [9]], [, , \"1800\\\\d{6,7}\", , , , \"18001234567\", , , [10, 11]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"[2-7]890\\\\d{4}\", , , , \"28901234\", , , [8]], \"EC\", 593, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1-$2\", [\"[2-7]\"]], [, \"(\\\\d)(\\\\d{3})(\\\\d{4})\", \"$1 $2-$3\", [\"[2-7]\"], \"(0$1)\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"9\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{3,4})\", \"$1 $2 $3\", [\"1\"]]], [[, \"(\\\\d)(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"[2-7]\"]],\n[, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"9\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{3,4})\", \"$1 $2 $3\", [\"1\"]]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], EE:[, [, , \"8\\\\d{9}|[4578]\\\\d{7}|(?:[3-8]\\\\d\\\\d|900)\\\\d{4}\", , , , , , , [7, 8, 10]], [, , \"(?:3[23589]|4[3-8]|6\\\\d|7[1-9]|88)\\\\d{5}\", , , , \"3212345\", , , [7]], [, , \"(?:5\\\\d|8[1-4])\\\\d{6}|5(?:(?:[02]\\\\d|5[0-478])\\\\d|1(?:[0-8]\\\\d|95)|6(?:4[0-4]|5[1-589]))\\\\d{3}\", , , , \"51234567\",\n, , [7, 8]], [, , \"800(?:(?:0\\\\d\\\\d|1)\\\\d|[2-9])\\\\d{3}\", , , , \"80012345\"], [, , \"(?:40\\\\d\\\\d|900)\\\\d{4}\", , , , \"9001234\", , , [7, 8]], [, , , , , , , , , [-1]], [, , \"70[0-2]\\\\d{5}\", , , , \"70012345\", , , [8]], [, , , , , , , , , [-1]], \"EE\", 372, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[369]|4[3-8]|5(?:[0-2]|5[0-478]|6[45])|7[1-9]\", \"[369]|4[3-8]|5(?:[02]|1(?:[0-8]|95)|5[0-478]|6(?:4[0-4]|5[1-589]))|7[1-9]\"]], [, \"(\\\\d{4})(\\\\d{3,4})\", \"$1 $2\", [\"[45]|8(?:00|[1-4])\", \"[45]|8(?:00[1-9]|[1-4])\"]],\n[, \"(\\\\d{2})(\\\\d{2})(\\\\d{4})\", \"$1 $2 $3\", [\"7\"]], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"80\"]]], , [, , , , , , , , , [-1]], , , [, , \"800[2-9]\\\\d{3}\", , , , , , , [7]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], EG:[, [, , \"[189]\\\\d{8,9}|[24-6]\\\\d{8}|[135]\\\\d{7}\", , , , , , , [8, 9, 10], [6, 7]], [, , \"(?:15\\\\d|57[23])\\\\d{5,6}|(?:13[23]|(?:2[2-4]|3)\\\\d|4(?:0[2-5]|[578][23]|64)|5(?:0[2-7]|5\\\\d)|6[24-689]3|8(?:2[2-57]|4[26]|6[237]|8[2-4])|9(?:2[27]|3[24]|52|6[2356]|7[2-4]))\\\\d{6}\",\n, , , \"234567890\", , , [8, 9], [6, 7]], [, , \"1[0-25]\\\\d{8}\", , , , \"1001234567\", , , [10]], [, , \"800\\\\d{7}\", , , , \"8001234567\", , , [10]], [, , \"900\\\\d{7}\", , , , \"9001234567\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"EG\", 20, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d)(\\\\d{7,8})\", \"$1 $2\", [\"[23]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{6,7})\", \"$1 $2\", [\"1[35]|[4-6]|8[2468]|9[235-7]\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[189]\"], \"0$1\"]], , [, ,\n, , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], EH:[, [, , \"[5-8]\\\\d{8}\", , , , , , , [9]], [, , \"528[89]\\\\d{5}\", , , , \"528812345\"], [, , \"692[12]\\\\d{5}|(?:6(?:[0-7]\\\\d|8[0-247-9]|9[013-9])|7(?:0[06-8]|6[1267]|7[0-27]))\\\\d{6}\", , , , \"650123456\"], [, , \"80\\\\d{7}\", , , , \"801234567\"], [, , \"89\\\\d{7}\", , , , \"891234567\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"5924[0-2]\\\\d{4}\", , , , \"592401234\"], \"EH\", 212, \"00\", \"0\",\n, , \"0\", , , , , , [, , , , , , , , , [-1]], , \"528[89]\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], ER:[, [, , \"[178]\\\\d{6}\", , , , , , , [7], [6]], [, , \"(?:1(?:1[12568]|[24]0|55|6[146])|8\\\\d\\\\d)\\\\d{4}\", , , , \"8370362\", , , , [6]], [, , \"(?:17[1-3]|7\\\\d\\\\d)\\\\d{4}\", , , , \"7123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"ER\", 291, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d)(\\\\d{3})(\\\\d{3})\",\n\"$1 $2 $3\", [\"[178]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], ES:[, [, , \"(?:51|[6-9]\\\\d)\\\\d{7}\", , , , , , , [9]], [, , \"96906(?:0[0-8]|1[1-9]|[2-9]\\\\d)\\\\d\\\\d|9(?:69(?:0[0-57-9]|[1-9]\\\\d)|73(?:[0-8]\\\\d|9[1-9]))\\\\d{4}|(?:8(?:[1356]\\\\d|[28][0-8]|[47][1-9])|9(?:[135]\\\\d|[268][0-8]|4[1-9]|7[124-9]))\\\\d{6}\", , , , \"810123456\"], [, , \"9(?:6906(?:09|10)|7390\\\\d\\\\d)\\\\d\\\\d|(?:6\\\\d|7[1-48])\\\\d{7}\", , , , \"612345678\"], [,\n, \"[89]00\\\\d{6}\", , , , \"800123456\"], [, , \"80[367]\\\\d{6}\", , , , \"803123456\"], [, , \"90[12]\\\\d{6}\", , , , \"901123456\"], [, , \"70\\\\d{7}\", , , , \"701234567\"], [, , , , , , , , , [-1]], \"ES\", 34, \"00\", , , , , , , , [[, \"(\\\\d{4})\", \"$1\", [\"905\"]], [, \"(\\\\d{6})\", \"$1\", [\"[79]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]\"]]], [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[89]00\"]], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\",\n[\"[5-9]\"]]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"51\\\\d{7}\", , , , \"511234567\"], , , [, , , , , , , , , [-1]]], ET:[, [, , \"(?:11|[2-59]\\\\d)\\\\d{7}\", , , , , , , [9], [7]], [, , \"(?:11(?:1(?:1[124]|2[2-57]|3[1-5]|5[5-8]|8[6-8])|2(?:13|3[6-8]|5[89]|7[05-9]|8[2-6])|3(?:2[01]|3[0-289]|4[1289]|7[1-4]|87)|4(?:1[69]|3[2-49]|4[0-3]|6[5-8])|5(?:1[578]|44|5[0-4])|6(?:1[78]|2[69]|39|4[5-7]|5[1-5]|6[0-59]|8[015-8]))|2(?:2(?:11[1-9]|22[0-7]|33\\\\d|44[1467]|66[1-68])|5(?:11[124-6]|33[2-8]|44[1467]|55[14]|66[1-3679]|77[124-79]|880))|3(?:3(?:11[0-46-8]|(?:22|55)[0-6]|33[0134689]|44[04]|66[01467])|4(?:44[0-8]|55[0-69]|66[0-3]|77[1-5]))|4(?:6(?:22[0-24-7]|33[1-5]|44[13-69]|55[14-689]|660|88[1-4])|7(?:(?:11|22)[1-9]|33[13-7]|44[13-6]|55[1-689]))|5(?:7(?:227|55[05]|(?:66|77)[14-8])|8(?:11[149]|22[013-79]|33[0-68]|44[013-8]|550|66[1-5]|77\\\\d)))\\\\d{4}\",\n, , , \"111112345\", , , , [7]], [, , \"9\\\\d{8}\", , , , \"911234567\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"ET\", 251, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[1-59]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], FI:[, [, , \"(?:[124-7]\\\\d|3[0-46-9])\\\\d{8}|[1-9]\\\\d{5,8}|[1-35689]\\\\d{4}\", , , , , , ,\n[5, 6, 7, 8, 9, 10]], [, , \"(?:1[3-79][1-8]|[235689][1-8]\\\\d)\\\\d{2,6}\", , , , \"131234567\", , , [5, 6, 7, 8, 9]], [, , \"(?:4[0-8]|50)\\\\d{4,8}\", , , , \"412345678\", , , [6, 7, 8, 9, 10]], [, , \"800\\\\d{4,6}\", , , , \"800123456\", , , [7, 8, 9]], [, , \"[67]00\\\\d{5,6}\", , , , \"600123456\", , , [8, 9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"FI\", 358, \"00|99(?:[01469]|5(?:[14]1|3[23]|5[59]|77|88|9[09]))\", \"0\", , , \"0\", , \"00\", , [[, \"(\\\\d{5})\", \"$1\", [\"75[12]\"], \"0$1\"],\n[, \"(\\\\d)(\\\\d{4,9})\", \"$1 $2\", [\"[2568][1-8]|3(?:0[1-9]|[1-9])|9\"], \"0$1\"], [, \"(\\\\d{6})\", \"$1\", [\"11\"]], [, \"(\\\\d{3})(\\\\d{3,7})\", \"$1 $2\", [\"(?:[12]0|7)0|[368]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{4,8})\", \"$1 $2\", [\"[12457]\"], \"0$1\"]], [[, \"(\\\\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]0|7)0|[368]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{4,8})\", \"$1 $2\", [\"[12457]\"], \"0$1\"]], [, , , , , , , , , [-1]], 1, \"1[03-79]|[2-9]\", [, , \"20(?:2[023]|9[89])\\\\d{1,6}|60[12]\\\\d{5,6}|(?:606|7(?:1|3\\\\d))\\\\d{7}|(?:[1-3]00|75[03-9])\\\\d{3,7}\"],\n[, , \"(?:10|[23][09])\\\\d{4,8}|60(?:[12]\\\\d{5,6}|6\\\\d{7})|7(?:(?:1|3\\\\d)\\\\d{7}|5[03-9]\\\\d{3,7})|20[2-59]\\\\d\\\\d\", , , , \"10112345\"], , , [, , , , , , , , , [-1]]], FJ:[, [, , \"45\\\\d{5}|(?:0800\\\\d|[235-9])\\\\d{6}\", , , , , , , [7, 11]], [, , \"603\\\\d{4}|(?:3[0-5]|6[25-7]|8[58])\\\\d{5}\", , , , \"3212345\", , , [7]], [, , \"(?:[279]\\\\d|45|5[01568]|8[034679])\\\\d{5}\", , , , \"7012345\", , , [7]], [, , \"0800\\\\d{7}\", , , , \"08001234567\", , , [11]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , ,\n, , , [-1]], [, , , , , , , , , [-1]], \"FJ\", 679, \"0(?:0|52)\", , , , , , \"00\", , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[235-9]|45\"]], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"0\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], FK:[, [, , \"[2-7]\\\\d{4}\", , , , , , , [5]], [, , \"[2-47]\\\\d{4}\", , , , \"31234\"], [, , \"[56]\\\\d{4}\", , , , \"51234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , ,\n, , , , , [-1]], [, , , , , , , , , [-1]], \"FK\", 500, \"00\", , , , , , , , , , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], FM:[, [, , \"[39]\\\\d{6}\", , , , , , , [7]], [, , \"(?:3[2357]0[1-9]|9[2-6]\\\\d\\\\d)\\\\d{3}\", , , , \"3201234\"], [, , \"(?:3[2357]0[1-9]|9[2-7]\\\\d\\\\d)\\\\d{3}\", , , , \"3501234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"FM\", 691,\n\"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[39]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], FO:[, [, , \"(?:[2-8]\\\\d|90)\\\\d{4}\", , , , , , , [6]], [, , \"(?:20|[34]\\\\d|8[19])\\\\d{4}\", , , , \"201234\"], [, , \"(?:[27][1-9]|5\\\\d)\\\\d{4}\", , , , \"211234\"], [, , \"80[257-9]\\\\d{3}\", , , , \"802123\"], [, , \"90(?:[13-5][15-7]|2[125-7]|99)\\\\d\\\\d\", , , , \"901123\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"(?:6[0-36]|88)\\\\d{4}\",\n, , , \"601234\"], \"FO\", 298, \"00\", , , , \"(10(?:01|[12]0|88))\", , , , [[, \"(\\\\d{6})\", \"$1\", [\"[2-9]\"], , \"$CC $1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], FR:[, [, , \"[1-9]\\\\d{8}\", , , , , , , [9]], [, , \"[1-5]\\\\d{8}\", , , , \"123456789\"], [, , \"700\\\\d{6}|(?:6\\\\d|7[3-9])\\\\d{7}\", , , , \"612345678\"], [, , \"80[0-5]\\\\d{6}\", , , , \"801234567\"], [, , \"8[129]\\\\d{7}\", , , , \"891123456\"], [, , \"884\\\\d{6}\", , , , \"884012345\"], [, ,\n, , , , , , , [-1]], [, , \"9\\\\d{8}\", , , , \"912345678\"], \"FR\", 33, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{4})\", \"$1\", [\"10\"]], [, \"(\\\\d{3})(\\\\d{3})\", \"$1 $2\", [\"1\"]], [, \"(\\\\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\"]], [[, \"(\\\\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\"]], [, , , , , , , , , [-1]], , ,\n[, , , , , , , , , [-1]], [, , \"80[6-9]\\\\d{6}\", , , , \"806123456\"], , , [, , , , , , , , , [-1]]], GA:[, [, , \"(?:0\\\\d|[2-7])\\\\d{6}\", , , , , , , [7, 8]], [, , \"01\\\\d{6}\", , , , \"01441234\", , , [8]], [, , \"(?:0[2-7]|[2-7])\\\\d{6}\", , , , \"06031234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"GA\", 241, \"00\", , , , , , , , [[, \"(\\\\d)(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[2-7]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\n\"$1 $2 $3 $4\", [\"0\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GB:[, [, , \"[1-357-9]\\\\d{9}|[18]\\\\d{8}|8\\\\d{6}\", , , , , , , [7, 9, 10], [4, 5, 6, 8]], [, , \"(?:1(?:(?:1(?:3[0-58]|4[0-5]|5[0-26-9]|6[0-4]|[78][0-49])|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[024-9]|2[3-9]|3[3-79]|4[1-689]|[58][02-9]|6[0-47-9]|7[013-9]|9\\\\d)\\\\d\\\\d|1(?:[0-7]\\\\d\\\\d|80[04589])))|2(?:0[01378]|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]))|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|7(?:(?:26(?:6[13-9]|7[0-7])|442\\\\d|50(?:2[0-3]|[3-68]2|76))\\\\d|6888[2-46-8]))\\\\d\\\\d\",\n, , , \"1212345678\", , , [9, 10], [4, 5, 6, 7, 8]], [, , \"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}\", , , , \"7400123456\", , , [10]], [, , \"80[08]\\\\d{7}|800\\\\d{6}|8001111\", , , , \"8001234567\"], [, , \"(?:8(?:4[2-5]|7[0-3])|9(?:[01]\\\\d|8[2-49]))\\\\d{7}|845464\\\\d\", , , , \"9012345678\", , , [7, 10]], [, , , , , , , , , [-1]], [, ,\n\"70\\\\d{8}\", , , , \"7012345678\", , , [10]], [, , \"56\\\\d{8}\", , , , \"5612345678\", , , [10]], \"GB\", 44, \"00\", \"0\", \" x\", , \"0\", , , , [[, \"(\\\\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)\"],\n\"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[024-9])\", \"[25]|7(?:0|6(?:[04-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\"]], , [, , \"76(?:0[0-2]|2[356]|4[0134]|5[49]|6[0-369]|77|81|9[39])\\\\d{6}\", , , , \"7640123456\", , , [10]], 1, , [, , , , , , , , , [-1]], [, , \"(?:3[0347]|55)\\\\d{8}\", , , , \"5512345678\", , , [10]], , , [, ,\n, , , , , , , [-1]]], GD:[, [, , \"(?:473|[58]\\\\d\\\\d|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"473(?:2(?:3[0-2]|69)|3(?:2[89]|86)|4(?:[06]8|3[5-9]|4[0-49]|5[5-79]|73|90)|63[68]|7(?:58|84)|800|938)\\\\d{4}\", , , , \"4732691234\", , , , [7]], [, , \"473(?:4(?:0[2-79]|1[04-9]|2[0-5]|58)|5(?:2[01]|3[3-8])|901)\\\\d{4}\", , , , \"4734031234\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\",\n, , , \"5002345678\"], [, , , , , , , , , [-1]], \"GD\", 1, \"011\", \"1\", , , \"1|([2-9]\\\\d{6})$\", \"473$1\", , , , , [, , , , , , , , , [-1]], , \"473\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GE:[, [, , \"(?:[3-57]\\\\d\\\\d|800)\\\\d{6}\", , , , , , , [9], [6, 7]], [, , \"(?:3(?:[256]\\\\d|4[124-9]|7[0-4])|4(?:1\\\\d|2[2-7]|3[1-79]|4[2-8]|7[239]|9[1-7]))\\\\d{6}\", , , , \"322123456\", , , , [6, 7]], [, , \"5(?:0(?:0[05]|55)\\\\d|1111|2222|3333|5200|75(?:00|7[78])|8(?:58[89]|888))\\\\d{4}|(?:5(?:[14]4|5[0157-9]|68|7[0147-9]|9[1-35-9])|790)\\\\d{6}\",\n, , , \"555123456\"], [, , \"800\\\\d{6}\", , , , \"800123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"706\\\\d{6}\", , , , \"706123456\"], \"GE\", 995, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\"]], , [, , , , , , , , ,\n[-1]], , , [, , \"706\\\\d{6}\"], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GF:[, [, , \"[56]94\\\\d{6}\", , , , , , , [9]], [, , \"594(?:[023]\\\\d|1[01]|4[03-9]|5[6-9]|6[0-3]|80|9[014])\\\\d{4}\", , , , \"594101234\"], [, , \"694(?:[0-249]\\\\d|3[0-48])\\\\d{4}\", , , , \"694201234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"GF\", 594, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\",\n[\"[56]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GG:[, [, , \"(?:1481|[357-9]\\\\d{3})\\\\d{6}|8\\\\d{6}(?:\\\\d{2})?\", , , , , , , [7, 9, 10], [6]], [, , \"1481[25-9]\\\\d{5}\", , , , \"1481256789\", , , [10], [6]], [, , \"7(?:(?:781|839)\\\\d|911[17])\\\\d{5}\", , , , \"7781123456\", , , [10]], [, , \"80[08]\\\\d{7}|800\\\\d{6}|8001111\", , , , \"8001234567\"], [, , \"(?:8(?:4[2-5]|7[0-3])|9(?:[01]\\\\d|8[0-3]))\\\\d{7}|845464\\\\d\", , , , \"9012345678\",\n, , [7, 10]], [, , , , , , , , , [-1]], [, , \"70\\\\d{8}\", , , , \"7012345678\", , , [10]], [, , \"56\\\\d{8}\", , , , \"5612345678\", , , [10]], \"GG\", 44, \"00\", \"0\", , , \"0|([25-9]\\\\d{5})$\", \"1481$1\", , , , , [, , \"76(?:0[0-2]|2[356]|4[0134]|5[49]|6[0-369]|77|81|9[39])\\\\d{6}\", , , , \"7640123456\", , , [10]], , , [, , , , , , , , , [-1]], [, , \"(?:3[0347]|55)\\\\d{8}\", , , , \"5512345678\", , , [10]], , , [, , , , , , , , , [-1]]], GH:[, [, , \"(?:[235]\\\\d{3}|800)\\\\d{5}\", , , , , , , [8, 9], [7]], [, , \"3(?:[167]2[0-6]|22[0-5]|32[0-3]|4(?:2[013-9]|3[01])|52[0-7]|82[0-2])\\\\d{5}|3(?:[0-8]8|9[28])0\\\\d{5}|3(?:0[237]|[1-9]7)\\\\d{6}\",\n, , , \"302345678\", , , [9], [7]], [, , \"56[01]\\\\d{6}|(?:2[0346-8]|5[0457])\\\\d{7}\", , , , \"231234567\", , , [9]], [, , \"800\\\\d{5}\", , , , \"80012345\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"GH\", 233, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[237]|80\"]], [, \"(\\\\d{3})(\\\\d{5})\", \"$1 $2\", [\"8\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[235]\"], \"0$1\"]], [[, \"(\\\\d{3})(\\\\d{5})\", \"$1 $2\", [\"8\"], \"0$1\"],\n[, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[235]\"], \"0$1\"]], [, , , , , , , , , [-1]], , , [, , \"800\\\\d{5}\", , , , , , , [8]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GI:[, [, , \"(?:[25]\\\\d\\\\d|629)\\\\d{5}\", , , , , , , [8]], [, , \"2190[0-2]\\\\d{3}|2(?:00\\\\d|16[24-7]|2(?:2[2457]|50))\\\\d{4}\", , , , \"20012345\"], [, , \"(?:5[46-8]\\\\d|629)\\\\d{5}\", , , , \"57123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , ,\n, [-1]], \"GI\", 350, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{5})\", \"$1 $2\", [\"2\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GL:[, [, , \"(?:19|[2-689]\\\\d)\\\\d{4}\", , , , , , , [6]], [, , \"(?:19|3[1-7]|6[14689]|8[14-79]|9\\\\d)\\\\d{4}\", , , , \"321000\"], [, , \"(?:[25][1-9]|4[2-9])\\\\d{4}\", , , , \"221234\"], [, , \"80\\\\d{4}\", , , , \"801234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"3[89]\\\\d{4}\",\n, , , \"381234\"], \"GL\", 299, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3\", [\"19|[2-689]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GM:[, [, , \"[2-9]\\\\d{6}\", , , , , , , [7]], [, , \"(?:4(?:[23]\\\\d\\\\d|4(?:1[024679]|[6-9]\\\\d))|5(?:54[0-7]|6[67]\\\\d|7(?:1[04]|2[035]|3[58]|48))|8\\\\d{3})\\\\d{3}\", , , , \"5661234\"], [, , \"(?:[23679]\\\\d|5[0-3])\\\\d{5}\", , , , \"3012345\"], [, , , , , , , , , [-1]], [, , , , , , , , ,\n[-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"GM\", 220, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[2-9]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GN:[, [, , \"(?:30|6\\\\d\\\\d|722)\\\\d{6}\", , , , , , , [8, 9]], [, , \"30(?:24|3[12]|4[1-35-7]|5[13]|6[189]|[78]1|9[1478])\\\\d{4}\", , , , \"30241234\", , , [8]], [, , \"6[02356]\\\\d{7}\", , , , \"601123456\", , , [9]], [, , , , , , , , ,\n[-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"722\\\\d{6}\", , , , \"722123456\", , , [9]], \"GN\", 224, \"00\", , , , , , , , [[, \"(\\\\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]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GP:[, [, , \"(?:590|69\\\\d)\\\\d{6}\", , , , , , , [9]], [, , \"590(?:0[1-68]|1[0-2]|2[0-68]|3[1289]|4[0-24-9]|5[3-579]|6[0189]|7[08]|8[0-689]|9\\\\d)\\\\d{4}\",\n, , , \"590201234\"], [, , \"69(?:0\\\\d\\\\d|1(?:2[29]|3[0-5]))\\\\d{4}\", , , , \"690001234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"GP\", 590, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[56]\"], \"0$1\"]], , [, , , , , , , , , [-1]], 1, , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GQ:[, [, , \"222\\\\d{6}|(?:3\\\\d|55|[89]0)\\\\d{7}\", , , , , ,\n, [9]], [, , \"33[0-24-9]\\\\d[46]\\\\d{4}|3(?:33|5\\\\d)\\\\d[7-9]\\\\d{4}\", , , , \"333091234\"], [, , \"(?:222|55[015])\\\\d{6}\", , , , \"222123456\"], [, , \"80\\\\d[1-9]\\\\d{5}\", , , , \"800123456\"], [, , \"90\\\\d[1-9]\\\\d{5}\", , , , \"900123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"GQ\", 240, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[235]\"]], [, \"(\\\\d{3})(\\\\d{6})\", \"$1 $2\", [\"[89]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , ,\n, , , , , , [-1]], , , [, , , , , , , , , [-1]]], GR:[, [, , \"(?:[268]\\\\d|[79]0)\\\\d{8}\", , , , , , , [10]], [, , \"2(?:1\\\\d\\\\d|2(?:2[1-46-9]|[36][1-8]|4[1-7]|5[1-4]|7[1-5]|[89][1-9])|3(?:1\\\\d|2[1-57]|[35][1-3]|4[13]|7[1-7]|8[124-6]|9[1-79])|4(?:1\\\\d|2[1-8]|3[1-4]|4[13-5]|6[1-578]|9[1-5])|5(?:1\\\\d|[29][1-4]|3[1-5]|4[124]|5[1-6])|6(?:1\\\\d|[269][1-6]|3[1245]|4[1-7]|5[13-9]|7[14]|8[1-5])|7(?:1\\\\d|2[1-5]|3[1-6]|4[1-7]|5[1-57]|6[135]|9[125-7])|8(?:1\\\\d|2[1-5]|[34][1-4]|9[1-57]))\\\\d{6}\", , , , \"2123456789\"],\n[, , \"6(?:8[57-9]|9\\\\d)\\\\d{7}\", , , , \"6912345678\"], [, , \"800\\\\d{7}\", , , , \"8001234567\"], [, , \"90[19]\\\\d{7}\", , , , \"9091234567\"], [, , \"8(?:0[16]|12|25)\\\\d{7}\", , , , \"8011234567\"], [, , \"70(?:0[3-8]0|707)\\\\d{5}\", , , , \"7003000123\"], [, , , , , , , , , [-1]], \"GR\", 30, \"00\", , , , , , , , [[, \"(\\\\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])\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[2689]\"]]],\n, [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GT:[, [, , \"(?:1\\\\d{3}|[2-7])\\\\d{7}\", , , , , , , [8, 11]], [, , \"[267][2-9]\\\\d{6}\", , , , \"22456789\", , , [8]], [, , \"[3-5]\\\\d{7}\", , , , \"51234567\", , , [8]], [, , \"18[01]\\\\d{8}\", , , , \"18001112222\", , , [11]], [, , \"19\\\\d{9}\", , , , \"19001112222\", , , [11]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"GT\", 502, \"00\", , , , , , , , [[, \"(\\\\d{4})(\\\\d{4})\",\n\"$1 $2\", [\"[2-7]\"]], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"1\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GU:[, [, , \"(?:[58]\\\\d\\\\d|671|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"671(?:3(?:00|3[39]|4[349]|55|6[26])|4(?:00|56|7[1-9]|8[0236-9])|5(?:55|6[2-5]|88)|6(?:3[2-578]|4[24-9]|5[34]|78|8[235-9])|7(?:[0479]7|2[0167]|3[45]|8[7-9])|8(?:[2-57-9]8|6[48])|9(?:2[29]|6[79]|7[1279]|8[7-9]|9[78]))\\\\d{4}\", , , , \"6713001234\",\n, , , [7]], [, , \"671(?:3(?:00|3[39]|4[349]|55|6[26])|4(?:00|56|7[1-9]|8[0236-9])|5(?:55|6[2-5]|88)|6(?:3[2-578]|4[24-9]|5[34]|78|8[235-9])|7(?:[0479]7|2[0167]|3[45]|8[7-9])|8(?:[2-57-9]8|6[48])|9(?:2[29]|6[79]|7[1279]|8[7-9]|9[78]))\\\\d{4}\", , , , \"6713001234\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]],\n\"GU\", 1, \"011\", \"1\", , , \"1|([3-9]\\\\d{6})$\", \"671$1\", , 1, , , [, , , , , , , , , [-1]], , \"671\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GW:[, [, , \"[49]\\\\d{8}|4\\\\d{6}\", , , , , , , [7, 9]], [, , \"443\\\\d{6}\", , , , \"443201234\", , , [9]], [, , \"9(?:5\\\\d|6[569]|77)\\\\d{6}\", , , , \"955012345\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"40\\\\d{5}\", , , , \"4012345\", , , [7]], \"GW\", 245,\n\"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"40\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[49]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GY:[, [, , \"(?:862\\\\d|9008)\\\\d{3}|(?:[2-46]\\\\d|77)\\\\d{5}\", , , , , , , [7]], [, , \"(?:2(?:1[6-9]|2[0-35-9]|3[1-4]|5[3-9]|6\\\\d|7[0-24-79])|3(?:2[25-9]|3\\\\d)|4(?:4[0-24]|5[56])|77[1-57])\\\\d{4}\", , , , \"2201234\"], [, , \"6\\\\d{6}\", , , , \"6091234\"], [, , \"(?:289|862)\\\\d{4}\",\n, , , \"2891234\"], [, , \"9008\\\\d{3}\", , , , \"9008123\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"GY\", 592, \"001\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[2-46-9]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], HK:[, [, , \"8[0-46-9]\\\\d{6,7}|9\\\\d{4}(?:\\\\d(?:\\\\d(?:\\\\d{4})?)?)?|(?:[235-79]\\\\d|46)\\\\d{6}\", , , , , , , [5, 6, 7, 8, 9, 11]], [, , \"(?:384[0-24]|58(?:0[1-8]|1[2-9]))\\\\d{4}|(?:2(?:[13-8]\\\\d|2[013-9]|9[0-24-9])|3(?:[1569][0-24-9]|4[0-246-9]|7[0-24-69]|89))\\\\d{5}\",\n, , , \"21234567\", , , [8]], [, , \"(?:46(?:0[0-6]|1[0-2]|4[0-57-9])|5730|(?:626|848)[01]|707[1-5]|929[03-9])\\\\d{4}|(?:5(?:[1-59][0-46-9]|6[0-4689]|7[0-2469])|6(?:0[1-9]|[13-59]\\\\d|[268][0-57-9]|7[0-79])|9(?:0[1-9]|1[02-9]|[2358][0-8]|[467]\\\\d))\\\\d{5}\", , , , \"51234567\", , , [8]], [, , \"800\\\\d{6}\", , , , \"800123456\", , , [9]], [, , \"900(?:[0-24-9]\\\\d{7}|3\\\\d{1,4})\", , , , \"90012345678\", , , [5, 6, 7, 8, 11]], [, , , , , , , , , [-1]], [, , \"8(?:1[0-4679]\\\\d|2(?:[0-36]\\\\d|7[0-4])|3(?:[034]\\\\d|2[09]|70))\\\\d{4}\",\n, , , \"81123456\", , , [8]], [, , , , , , , , , [-1]], \"HK\", 852, \"00(?:30|5[09]|[126-9]?)\", , , , , , \"00\", , [[, \"(\\\\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\"]]], , [, , \"7(?:1(?:0[0-38]|1[0-3679]|3[013]|69|9[136])|2(?:[02389]\\\\d|1[18]|7[27-9])|3(?:[0-38]\\\\d|7[0-369]|9[2357-9])|47\\\\d|5(?:[178]\\\\d|5[0-5])|6(?:0[0-7]|2[236-9]|[35]\\\\d)|7(?:[27]\\\\d|8[7-9])|8(?:[23689]\\\\d|7[1-9])|9(?:[025]\\\\d|6[0-246-8]|7[0-36-9]|8[238]))\\\\d{4}\",\n, , , \"71123456\", , , [8]], , , [, , , , , , , , , [-1]], [, , \"30(?:0[1-9]|[15-7]\\\\d|2[047]|89)\\\\d{4}\", , , , \"30161234\", , , [8]], , , [, , , , , , , , , [-1]]], HN:[, [, , \"8\\\\d{10}|[237-9]\\\\d{7}\", , , , , , , [8, 11]], [, , \"2(?:2(?:0[019]|1[1-36]|[23]\\\\d|4[04-6]|5[57]|6[24]|7[0135689]|8[01346-9]|9[0-2])|4(?:07|2[3-59]|3[13-689]|4[0-68]|5[1-35])|5(?:0[78]|16|4[03-5]|5\\\\d|6[14-6]|74|80)|6(?:[056]\\\\d|17|2[07]|3[04]|4[0-378]|[78][0-8]|9[01])|7(?:6[46-9]|7[02-9]|8[034]|91)|8(?:79|8[0-357-9]|9[1-57-9]))\\\\d{4}\",\n, , , \"22123456\", , , [8]], [, , \"[37-9]\\\\d{7}\", , , , \"91234567\", , , [8]], [, , \"8002\\\\d{7}\", , , , \"80021234567\", , , [11]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"HN\", 504, \"00\", , , , , , , , [[, \"(\\\\d{4})(\\\\d{4})\", \"$1-$2\", [\"[237-9]\"]], [, \"(\\\\d{3})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"8\"]]], [[, \"(\\\\d{4})(\\\\d{4})\", \"$1-$2\", [\"[237-9]\"]]], [, , , , , , , , , [-1]], , , [, , \"8002\\\\d{7}\", , , , , , , [11]], [, , , , , , , , , [-1]],\n, , [, , , , , , , , , [-1]]], HR:[, [, , \"(?:[24-69]\\\\d|3[0-79])\\\\d{7}|80\\\\d{5,7}|[1-79]\\\\d{7}|6\\\\d{5,6}\", , , , , , , [6, 7, 8, 9]], [, , \"1\\\\d{7}|(?:2[0-3]|3[1-5]|4[02-47-9]|5[1-3])\\\\d{6,7}\", , , , \"12345678\", , , [8, 9], [6, 7]], [, , \"9(?:751\\\\d{5}|8\\\\d{6,7})|9(?:01|[1259]\\\\d|7[0679])\\\\d{6}\", , , , \"921234567\", , , [8, 9]], [, , \"80[01]\\\\d{4,6}\", , , , \"800123456\", , , [7, 8, 9]], [, , \"6[01459]\\\\d{6}|6[01]\\\\d{4,5}\", , , , \"611234\", , , [6, 7, 8]], [, , , , , , , , , [-1]], [, , \"7[45]\\\\d{6}\",\n, , , \"74123456\", , , [8]], [, , , , , , , , , [-1]], \"HR\", 385, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\",\n[\"8\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"62\\\\d{6,7}|72\\\\d{6}\", , , , \"62123456\", , , [8, 9]], , , [, , , , , , , , , [-1]]], HT:[, [, , \"[2-489]\\\\d{7}\", , , , , , , [8]], [, , \"2(?:2\\\\d|5[1-5]|81|9[149])\\\\d{5}\", , , , \"22453300\"], [, , \"[34]\\\\d{7}\", , , , \"34101234\"], [, , \"8\\\\d{7}\", , , , \"80012345\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"9(?:[67][0-4]|8[0-3589]|9\\\\d)\\\\d{5}\", , , , \"98901234\"], \"HT\", 509, \"00\",\n, , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{4})\", \"$1 $2 $3\", [\"[2-489]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], HU:[, [, , \"[2357]\\\\d{8}|[1-9]\\\\d{7}\", , , , , , , [8, 9], [6, 7]], [, , \"(?:1\\\\d|[27][2-9]|3[2-7]|4[24-9]|5[2-79]|6[23689]|8[2-57-9]|9[2-69])\\\\d{6}\", , , , \"12345678\", , , [8], [6, 7]], [, , \"(?:[257]0|3[01])\\\\d{7}\", , , , \"201234567\", , , [9]], [, , \"[48]0\\\\d{6}\", , , , \"80123456\", , , [8]], [, , \"9[01]\\\\d{6}\",\n, , , \"90123456\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"21\\\\d{7}\", , , , \"211234567\", , , [9]], \"HU\", 36, \"00\", \"06\", , , \"06\", , , , [[, \"(\\\\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-57-9]\"], \"06 $1\"]], , [, , , , , , , , , [-1]], , , [, , \"[48]0\\\\d{6}\", , , , , , , [8]], [, , \"38\\\\d{7}\", , , , \"381234567\",\n, , [9]], , , [, , , , , , , , , [-1]]], ID:[, [, , \"(?:(?:007803|8\\\\d{4})\\\\d|[1-36])\\\\d{6}|[1-9]\\\\d{8,10}|[2-9]\\\\d{7}\", , , , , , , [7, 8, 9, 10, 11, 12, 13], [5, 6]], [, , \"2[124]\\\\d{7,8}|619\\\\d{8}|2(?:1(?:14|500)|2\\\\d{3})\\\\d{3}|61\\\\d{5,8}|(?:2(?:[35][1-4]|6[0-8]|7[1-6]|8\\\\d|9[1-8])|3(?:1|[25][1-8]|3[1-68]|4[1-3]|6[1-3568]|7[0-469]|8\\\\d)|4(?:0[1-589]|1[01347-9]|2[0-36-8]|3[0-24-68]|43|5[1-378]|6[1-5]|7[134]|8[1245])|5(?:1[1-35-9]|2[25-8]|3[124-9]|4[1-3589]|5[1-46]|6[1-8])|6(?:[25]\\\\d|3[1-69]|4[1-6])|7(?:02|[125][1-9]|[36]\\\\d|4[1-8]|7[0-36-9])|9(?:0[12]|1[013-8]|2[0-479]|5[125-8]|6[23679]|7[159]|8[01346]))\\\\d{5,8}\",\n, , , \"218350123\", , , [7, 8, 9, 10, 11], [5, 6]], [, , \"8[1-35-9]\\\\d{7,10}\", , , , \"812345678\", , , [9, 10, 11, 12]], [, , \"007803\\\\d{7}|(?:177\\\\d|800)\\\\d{5,7}\", , , , \"8001234567\", , , [8, 9, 10, 11, 13]], [, , \"809\\\\d{7}\", , , , \"8091234567\", , , [10]], [, , \"804\\\\d{7}\", , , , \"8041234567\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"ID\", 62, \"00[189]\", \"0\", , , \"0\", , , , [[, \"(\\\\d)(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"15\"]], [, \"(\\\\d{2})(\\\\d{5,9})\", \"$1 $2\", [\"2[124]|[36]1\"],\n\"(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\"], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3 $4\", [\"0\"]]], [[, \"(\\\\d)(\\\\d{3})(\\\\d{3})\",\n\"$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\"]], [, , ,\n, , , , , , [-1]], , , [, , \"(?:007803\\\\d|8071)\\\\d{6}\", , , , , , , [10, 13]], [, , \"(?:1500|8071\\\\d{3})\\\\d{3}\", , , , \"8071123456\", , , [7, 10]], , , [, , , , , , , , , [-1]]], IE:[, [, , \"(?:1\\\\d|[2569])\\\\d{6,8}|4\\\\d{6,9}|7\\\\d{8}|8\\\\d{8,9}\", , , , , , , [7, 8, 9, 10], [5, 6]], [, , \"(?:1\\\\d|21)\\\\d{6,7}|(?:2[24-9]|4(?:0[24]|5\\\\d|7)|5(?:0[45]|1\\\\d|8)|6(?:1\\\\d|[237-9])|9(?:1\\\\d|[35-9]))\\\\d{5}|(?:23|4(?:[1-469]|8[0-46-9])|5[23679]|6[4-6]|7[14]|9[04])\\\\d{7}\", , , , \"2212345\", , , , [5, 6]], [, , \"8(?:22|[35-9]\\\\d)\\\\d{6}\",\n, , , \"850123456\", , , [9]], [, , \"1800\\\\d{6}\", , , , \"1800123456\", , , [10]], [, , \"15(?:1[2-8]|[2-8]0|9[089])\\\\d{6}\", , , , \"1520123456\", , , [10]], [, , \"18[59]0\\\\d{6}\", , , , \"1850123456\", , , [10]], [, , \"700\\\\d{6}\", , , , \"700123456\", , , [9]], [, , \"76\\\\d{7}\", , , , \"761234567\", , , [9]], \"IE\", 353, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\",\n[\"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)(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3 $4\", [\"8\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"4\"], \"(0$1)\"]], , [, , , , , , , , , [-1]], , , [, , \"18[59]0\\\\d{6}\",\n, , , , , , [10]], [, , \"818\\\\d{6}\", , , , \"818123456\", , , [9]], , , [, , \"8[35-9]5\\\\d{7}\", , , , \"8551234567\", , , [10]]], IL:[, [, , \"1\\\\d{6}(?:\\\\d{3,5})?|[57]\\\\d{8}|[1-489]\\\\d{7}\", , , , , , , [7, 8, 9, 10, 11, 12]], [, , \"153\\\\d{8,9}|[2-489]\\\\d{7}\", , , , \"21234567\", , , [8, 11, 12], [7]], [, , \"5(?:(?:[0-389][2-9]|4[1-9]|6\\\\d)\\\\d|5(?:01|2[2-6]|3[23]|4[45]|5[05689]|6[6-8]|7[0-267]|8[7-9]|9[1-9]))\\\\d{5}\", , , , \"502345678\", , , [9]], [, , \"1(?:255|80[019]\\\\d{3})\\\\d{3}\", , , , \"1800123456\", ,\n, [7, 10]], [, , \"1212\\\\d{4}|1(?:200|9(?:0[01]|19))\\\\d{6}\", , , , \"1919123456\", , , [8, 10]], [, , \"1700\\\\d{6}\", , , , \"1700123456\", , , [10]], [, , , , , , , , , [-1]], [, , \"78(?:33|55|77|81)\\\\d{5}|7(?:18|2[23]|3[237]|47|6[58]|7\\\\d|82|9[235-9])\\\\d{6}\", , , , \"771234567\", , , [9]], \"IL\", 972, \"0(?:0|1[2-9])\", \"0\", , , \"0\", , , , [[, \"(\\\\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})\",\n\"$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\"]]], , [, , , , , , , , , [-1]], , , [, , \"1700\\\\d{6}\", , , , , , , [10]], [, , \"1599\\\\d{6}\", , , , \"1599123456\", , , [10]], , , [, , \"151\\\\d{8,9}\", , , , \"15112340000\", , , [11, 12]]], IM:[, [, , \"1624\\\\d{6}|(?:[3578]\\\\d|90)\\\\d{8}\", , , , , , , [10],\n[6]], [, , \"1624[5-8]\\\\d{5}\", , , , \"1624756789\", , , , [6]], [, , \"76245[06]\\\\d{4}|7(?:4576|[59]24\\\\d|624[0-4689])\\\\d{5}\", , , , \"7924123456\"], [, , \"808162\\\\d{4}\", , , , \"8081624567\"], [, , \"8(?:440[49]06|72299\\\\d)\\\\d{3}|(?:8(?:45|70)|90[0167])624\\\\d{4}\", , , , \"9016247890\"], [, , , , , , , , , [-1]], [, , \"70\\\\d{8}\", , , , \"7012345678\"], [, , \"56\\\\d{8}\", , , , \"5612345678\"], \"IM\", 44, \"00\", \"0\", , , \"0|([5-8]\\\\d{5})$\", \"1624$1\", , , , , [, , , , , , , , , [-1]], , \"74576|(?:16|7[56])24\", [, ,\n, , , , , , , [-1]], [, , \"3440[49]06\\\\d{3}|(?:3(?:08162|3\\\\d{4}|45624|7(?:0624|2299))|55\\\\d{4})\\\\d{4}\", , , , \"5512345678\"], , , [, , , , , , , , , [-1]]], IN:[, [, , \"(?:00800|[2-9]\\\\d\\\\d)\\\\d{7}|1\\\\d{7,12}\", , , , , , , [8, 9, 10, 11, 12, 13], [6, 7]], [, , \"782[0-6][2-7]\\\\d{5}|(?:170[24]|2(?:80[13468]|90\\\\d)|380\\\\d|4(?:20[24]|72[2-8])|552[1-7])\\\\d{6}|(?:342|674|788)(?:[0189][2-7]|[2-7]\\\\d)\\\\d{5}|(?:11|2[02]|33|4[04]|79|80)[2-7]\\\\d{7}|(?:1(?:2[0-249]|3[0-25]|4[145]|[59][14]|6[014]|7[1257]|8[01346])|2(?:1[257]|3[013]|4[01]|5[0137]|6[0158]|78|8[1568]|9[14])|3(?:26|4[13]|5[34]|6[01489]|7[02-46]|8[159])|4(?:1[36]|2[1-47]|3[15]|5[12]|6[0-26-9]|7[014-9]|8[013-57]|9[014-7])|5(?:1[025]|22|[36][25]|4[28]|[578]1|9[15])|6(?:12|[2-47]1|5[17]|6[13]|80)|7(?:12|2[14]|3[134]|4[47]|5[15]|[67]1)|8(?:16|2[014]|3[126]|6[136]|7[078]|8[34]|91))[2-7]\\\\d{6}|(?:1(?:2[35-8]|3[346-9]|4[236-9]|[59][0235-9]|6[235-9]|7[34689]|8[257-9])|2(?:1[134689]|3[24-8]|4[2-8]|5[25689]|6[2-4679]|7[13-79]|8[2-479]|9[235-9])|3(?:01|1[79]|2[1-5]|4[5-8]|5[125689]|6[235-7]|7[157-9]|8[2-46-8])|4(?:1[14578]|2[5689]|3[2-467]|5[4-7]|6[35]|73|8[2689]|9[2389])|5(?:[16][146-9]|2[14-8]|3[1346]|4[14-69]|5[46]|7[2-4]|8[2-8]|9[246])|6(?:1[1358]|2[2457]|3[2-4]|4[235-7]|5[2-689]|6[24578]|7[235689]|8[1-6])|7(?:1[013-9]|2[0235-9]|3[2679]|4[1-35689]|5[2-46-9]|[67][02-9]|8[013-7]|9[0189])|8(?:1[1357-9]|2[235-8]|3[03-57-9]|4[0-24-9]|5\\\\d|6[2457-9]|7[1-6]|8[1256]|9[2-4]))\\\\d[2-7]\\\\d{5}\",\n, , , \"7410410123\", , , [10], [6, 7, 8]], [, , \"(?:6(?:1279|350[0-6])|7(?:3(?:1(?:11|7[02-8])|411)|4[47](?:11|7[02-8])|5111|700[02-9]|88(?:11|7[02-9])|9(?:313|79[07-9]))|8(?:079[04-9]|(?:16|2[014]|3[126]|6[136]|7[78]|8[34]|91)7[02-8]))\\\\d{5}|7(?:28[6-8]|3(?:2[0-49]|9[2-5])|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])[089]\\\\d{5}|(?:6(?:0(?:0[0-3569]|26|33)|2(?:[06]\\\\d|3[02589]|8[0-479]|9[0-79])|3(?:0[0-79]|5[1-9]|6[0-4679]|7[0-24-9]|[89]\\\\d)|9(?:0[019]|13))|7(?:0\\\\d\\\\d|19[0-5]|2(?:[0235-79]\\\\d|[14][017-9]|8[0-59])|3(?:[05-8]\\\\d|1[089]|2[5-8]|3[017-9]|4[07-9]|9[016-9])|4(?:0\\\\d|1[015-9]|[29][89]|39|[47][089]|8[389])|5(?:[0346-8]\\\\d|1[07-9]|2[04-9]|5[017-9]|9[7-9])|6(?:0[0-47]|1[0-257-9]|2[0-4]|3[19]|5[4589]|[6-9]\\\\d)|7(?:0[289]|[1-9]\\\\d)|8(?:[0-79]\\\\d|8[089])|9(?:[089]\\\\d|7[02-8]))|8(?:0(?:[01589]\\\\d|6[67]|7[02-8])|1(?:[0-57-9]\\\\d|6[089])|2(?:[014][089]|[235-9]\\\\d)|3(?:[03-57-9]\\\\d|[126][089])|[45]\\\\d\\\\d|6(?:[02457-9]\\\\d|[136][089])|7(?:0[07-9]|[1-69]\\\\d|[78][089])|8(?:[0-25-9]\\\\d|3[089]|4[0489])|9(?:[02-9]\\\\d|1[0289]))|9\\\\d{3})\\\\d{6}\",\n, , , \"8123456789\", , , [10]], [, , \"00800\\\\d{7}|1(?:600\\\\d{6}|80(?:0\\\\d{4,9}|3\\\\d{9}))\", , , , \"1800123456\"], [, , \"186[12]\\\\d{9}\", , , , \"1861123456789\", , , [13]], [, , \"1860\\\\d{7}\", , , , \"18603451234\", , , [11]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"IN\", 91, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{7})\", \"$1\", [\"575\"]], [, \"(\\\\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)\"], , , 1], [, \"(\\\\d{4})(\\\\d{4,5})\",\n\"$1 $2\", [\"180\", \"1800\"], , , 1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"140\"], , , 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]\",\n\"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(?:[2-4]1|5[17]|6[13]|7[14]|80)|7(?:12|(?: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|(?:55|61)2|7(?: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])|[2-4]1|5[17]|6[13]|7[14]|80)|7(?:12|(?: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]|(?:1(?:29|60|8[06])|261|552|788[01])[2-7]|(?:74[47]|8(?:16|2[014]|3[126]|6[136]|7[78]|83))(?:[2-6]|7[19])\"],\n\"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-8])|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-8])|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(?:1[1358]|2(?:[2457]|84|95)|3(?:[2-4]|55)|[4-8])|7(?:1(?:[013-8]|9[6-9])|3179)|807(?:1|9[1-3])|(?:1552|7(?: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]\"],\n\"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)\"], , , 1], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})(\\\\d{3})\", \"$1 $2 $3 $4\", [\"0\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3 $4\", [\"18\"], , , 1]], [[, \"(\\\\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)\"], , , 1], [, \"(\\\\d{4})(\\\\d{4,5})\", \"$1 $2\", [\"180\", \"1800\"],\n, , 1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"140\"], , , 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]\",\n\"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(?:[2-4]1|5[17]|6[13]|7[14]|80)|7(?:12|(?: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|(?:55|61)2|7(?: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])|[2-4]1|5[17]|6[13]|7[14]|80)|7(?:12|(?: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]|(?:1(?:29|60|8[06])|261|552|788[01])[2-7]|(?:74[47]|8(?:16|2[014]|3[126]|6[136]|7[78]|83))(?:[2-6]|7[19])\"],\n\"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-8])|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-8])|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(?:1[1358]|2(?:[2457]|84|95)|3(?:[2-4]|55)|[4-8])|7(?:1(?:[013-8]|9[6-9])|3179)|807(?:1|9[1-3])|(?:1552|7(?: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]\"],\n\"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)\"], , , 1], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3 $4\", [\"18\"], , , 1]], [, , , , , , , , , [-1]], , , [, , \"1(?:600\\\\d{6}|800\\\\d{4,9})|(?:00800|18(?:03\\\\d\\\\d|6(?:0|[12]\\\\d\\\\d)))\\\\d{7}\"], [, , \"140\\\\d{7}\", , , , \"1409305260\", , , [10]], , , [, , , , , , , , , [-1]]], IO:[, [, , \"3\\\\d{6}\", , , , , , , [7]], [, , \"37\\\\d{5}\", , , , \"3709100\"], [,\n, \"38\\\\d{5}\", , , , \"3801234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"IO\", 246, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"3\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], IQ:[, [, , \"(?:1|7\\\\d\\\\d)\\\\d{7}|[2-6]\\\\d{7,8}\", , , , , , , [8, 9, 10], [6, 7]], [, , \"1\\\\d{7}|(?:2[13-5]|3[02367]|4[023]|5[03]|6[026])\\\\d{6,7}\", , , ,\n\"12345678\", , , [8, 9], [6, 7]], [, , \"7[3-9]\\\\d{8}\", , , , \"7912345678\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"IQ\", 964, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , ,\n, , , [-1]], , , [, , , , , , , , , [-1]]], IR:[, [, , \"[1-9]\\\\d{9}|(?:[1-8]\\\\d\\\\d|9)\\\\d{3,4}\", , , , , , , [4, 5, 6, 7, 10], [8]], [, , \"(?:1[137]|2[13-68]|3[1458]|4[145]|5[1468]|6[16]|7[1467]|8[13467])(?:[03-57]\\\\d{7}|[16]\\\\d{3}(?:\\\\d{4})?|[289]\\\\d{3}(?:\\\\d(?:\\\\d{3})?)?)|94(?:000[09]|2(?:121|[2689]0\\\\d)|30[0-2]\\\\d|4(?:111|40\\\\d))\\\\d{4}\", , , , \"2123456789\", , , [6, 7, 10], [4, 5, 8]], [, , \"9(?:(?:0(?:[1-35]\\\\d|44)|(?:[13]\\\\d|2[0-2])\\\\d)\\\\d|9(?:(?:[0-2]\\\\d|44)\\\\d|5[15]0|8(?:1\\\\d|88)|9(?:0[013]|1[0134]|21|77|9[6-9])))\\\\d{5}\",\n, , , \"9123456789\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"993\\\\d{7}\", , , , \"9932123456\", , , [10]], \"IR\", 98, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\"]],\n, [, , , , , , , , , [-1]], , , [, , \"9(?:4440\\\\d{5}|6(?:0[12]|2[16-8]|3(?:08|[14]5|[23]|66)|4(?:0|80)|5[01]|6[89]|86|9[19]))\", , , , , , , [4, 5, 10]], [, , \"96(?:0[12]|2[16-8]|3(?:08|[14]5|[23]|66)|4(?:0|80)|5[01]|6[89]|86|9[19])\", , , , \"9601\", , , [4, 5]], , , [, , , , , , , , , [-1]]], IS:[, [, , \"(?:38\\\\d|[4-9])\\\\d{6}\", , , , , , , [7, 9]], [, , \"(?:4(?:1[0-24-69]|2[0-7]|[37][0-8]|4[0-245]|5[0-68]|6\\\\d|8[0-36-8])|5(?:05|[156]\\\\d|2[02578]|3[0-579]|4[03-7]|7[0-2578]|8[0-35-9]|9[013-689])|87[23])\\\\d{4}\",\n, , , \"4101234\", , , [7]], [, , \"(?:38[589]\\\\d\\\\d|6(?:1[1-8]|2[0-6]|3[027-9]|4[014679]|5[0159]|6[0-69]|70|8[06-8]|9\\\\d)|7(?:5[057]|[6-8]\\\\d|9[0-3])|8(?:2[0-59]|[3469]\\\\d|5[1-9]|8[28]))\\\\d{4}\", , , , \"6111234\"], [, , \"800\\\\d{4}\", , , , \"8001234\", , , [7]], [, , \"90\\\\d{5}\", , , , \"9011234\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"49\\\\d{5}\", , , , \"4921234\", , , [7]], \"IS\", 354, \"00|1(?:0(?:01|[12]0)|100)\", , , , , , \"00\", , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[4-9]\"]], [,\n\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"3\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"809\\\\d{4}\", , , , \"8091234\", , , [7]], , , [, , \"(?:689|8(?:7[0189]|80)|95[48])\\\\d{4}\", , , , \"6891234\", , , [7]]], IT:[, [, , \"0\\\\d{5,10}|3[0-8]\\\\d{7,10}|55\\\\d{8}|8\\\\d{5}(?:\\\\d{2,4})?|(?:1\\\\d|39)\\\\d{7,8}\", , , , , , , [6, 7, 8, 9, 10, 11, 12]], [, , \"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}\",\n, , , \"0212345678\", , , [6, 7, 8, 9, 10, 11]], [, , \"3[1-9]\\\\d{8}|3[2-9]\\\\d{7}\", , , , \"3123456789\", , , [9, 10]], [, , \"80(?:0\\\\d{3}|3)\\\\d{3}\", , , , \"800123456\", , , [6, 9]], [, , \"(?:0878\\\\d\\\\d|89(?:2|4[5-9]\\\\d))\\\\d{3}|89[45][0-4]\\\\d\\\\d|(?:1(?:44|6[346])|89(?:5[5-9]|9))\\\\d{6}\", , , , \"899123456\", , , [6, 8, 9, 10]], [, , \"84(?:[08]\\\\d{3}|[17])\\\\d{3}\", , , , \"848123456\", , , [6, 9]], [, , \"1(?:78\\\\d|99)\\\\d{6}\", , , , \"1781234567\", , , [9, 10]], [, , \"55\\\\d{8}\", , , , \"5512345678\", , , [10]], \"IT\",\n39, \"00\", , , , , , , , [[, \"(\\\\d{4,5})\", \"$1\", [\"1(?:0|9[246])\", \"1(?:0|9(?:2[2-9]|[46]))\"]], [, \"(\\\\d{6})\", \"$1\", [\"1(?:1|92)\"]], [, \"(\\\\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[245])\", \"0[13-57-9][0159]|8(?:03|4[17]|9(?:2|[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})\",\n\"$1 $2 $3\", [\"1[4679]|[38]\"]], [, \"(\\\\d{3})(\\\\d{3,4})(\\\\d{4})\", \"$1 $2 $3\", [\"0[13-57-9][0159]\"]], [, \"(\\\\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\"]]], [[, \"(\\\\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[245])\", \"0[13-57-9][0159]|8(?:03|4[17]|9(?:2|[45][0-4]))\"]], [, \"(\\\\d{4})(\\\\d{2,6})\", \"$1 $2\", [\"0(?:[13-579][2-46-8]|8[236-8])\"]],\n[, \"(\\\\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[4679]|[38]\"]], [, \"(\\\\d{3})(\\\\d{3,4})(\\\\d{4})\", \"$1 $2 $3\", [\"0[13-57-9][0159]\"]], [, \"(\\\\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\"]]], [, , , , , , , , , [-1]], 1, , [, , \"848\\\\d{6}\", , , , , , , [9]], [, , , , , , , , , [-1]], , , [, , \"3[2-8]\\\\d{9,10}\",\n, , , \"33101234501\", , , [11, 12]]], JE:[, [, , \"1534\\\\d{6}|(?:[3578]\\\\d|90)\\\\d{8}\", , , , , , , [10], [6]], [, , \"1534[0-24-8]\\\\d{5}\", , , , \"1534456789\", , , , [6]], [, , \"7(?:(?:(?:50|82)9|937)\\\\d|7(?:00[378]|97[7-9]))\\\\d{5}\", , , , \"7797712345\"], [, , \"80(?:07(?:35|81)|8901)\\\\d{4}\", , , , \"8007354567\"], [, , \"(?:8(?:4(?:4(?:4(?:05|42|69)|703)|5(?:041|800))|7(?:0002|1206))|90(?:066[59]|1810|71(?:07|55)))\\\\d{4}\", , , , \"9018105678\"], [, , , , , , , , , [-1]], [, , \"701511\\\\d{4}\", , , , \"7015115678\"],\n[, , \"56\\\\d{8}\", , , , \"5612345678\"], \"JE\", 44, \"00\", \"0\", , , \"0|([0-24-8]\\\\d{5})$\", \"1534$1\", , , , , [, , \"76(?:0[0-2]|2[356]|4[0134]|5[49]|6[0-369]|77|81|9[39])\\\\d{6}\", , , , \"7640123456\"], , , [, , , , , , , , , [-1]], [, , \"(?: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}\", , , , \"5512345678\"], , , [, , , , , , , , , [-1]]], JM:[, [, , \"(?:[58]\\\\d\\\\d|658|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"(?:658(?:2(?:[0-8]\\\\d|9[0-46-9])|[3-9]\\\\d\\\\d)|876(?:5(?:02|1[0-468]|2[35]|63)|6(?:0[1-3579]|1[0237-9]|[23]\\\\d|40|5[06]|6[2-589]|7[05]|8[04]|9[4-9])|7(?:0[2-689]|[1-6]\\\\d|8[056]|9[45])|9(?:0[1-8]|1[02378]|[2-8]\\\\d|9[2-468])))\\\\d{4}\",\n, , , \"8765230123\", , , , [7]], [, , \"(?:658295|876(?:(?:2[14-9]|[348]\\\\d)\\\\d|5(?:0[13-9]|17|[2-57-9]\\\\d|6[0-24-9])|7(?:0[07]|7\\\\d|8[1-47-9]|9[0-36-9])|9(?:[01]9|9[0579])))\\\\d{4}\", , , , \"8762101234\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"JM\", 1, \"011\", \"1\", , , \"1\", , , , , , [, , , , , , , ,\n, [-1]], , \"658|876\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], JO:[, [, , \"900\\\\d{5}|(?:(?:[268]|7\\\\d)\\\\d|32|53)\\\\d{6}\", , , , , , , [8, 9]], [, , \"(?:2(?:6(?:2[0-35-9]|3[0-578]|4[24-7]|5[0-24-8]|[6-8][023]|9[0-3])|7(?:0[1-79]|10|2[014-7]|3[0-689]|4[019]|5[0-3578]))|32(?:0[1-69]|1[1-35-7]|2[024-7]|3\\\\d|4[0-3]|[57][023]|6[03])|53(?:0[0-3]|[13][023]|2[0-59]|49|5[0-35-9]|6[15]|7[45]|8[1-6]|9[0-36-9])|6(?:2(?:[05]0|22)|3(?:00|33)|4(?:0[0-25]|1[2-7]|2[0569]|[38][07-9]|4[025689]|6[0-589]|7\\\\d|9[0-2])|5(?:[01][056]|2[034]|3[0-57-9]|4[178]|5[0-69]|6[0-35-9]|7[1-379]|8[0-68]|9[0239]))|87(?:[029]0|7[08]))\\\\d{4}\",\n, , , \"62001234\", , , [8]], [, , \"7(?:55[0-49]|(?:7[025-9]|[89][0-25-9])\\\\d)\\\\d{5}\", , , , \"790123456\", , , [9]], [, , \"80\\\\d{6}\", , , , \"80012345\", , , [8]], [, , \"900\\\\d{5}\", , , , \"90012345\", , , [8]], [, , \"85\\\\d{6}\", , , , \"85012345\", , , [8]], [, , \"70\\\\d{7}\", , , , \"700123456\", , , [9]], [, , , , , , , , , [-1]], \"JO\", 962, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\",\n[\"70\"], \"0$1\"], [, \"(\\\\d)(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"7\"], \"0$1\"]], , [, , \"74(?:66|77)\\\\d{5}\", , , , \"746612345\", , , [9]], , , [, , , , , , , , , [-1]], [, , \"8(?:10|8\\\\d)\\\\d{5}\", , , , \"88101234\", , , [8]], , , [, , , , , , , , , [-1]]], JP:[, [, , \"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]], [, , \"(?:1(?:1[235-8]|2[3-6]|3[3-9]|4[2-6]|[58][2-8]|6[2-7]|7[2-9]|9[1-9])|(?:2[2-9]|[36][1-9])\\\\d|4(?:[2-578]\\\\d|6[02-8]|9[2-59])|5(?:[2-589]\\\\d|6[1-9]|7[2-8])|7(?:[25-9]\\\\d|3[4-9]|4[02-9])|8(?:[2679]\\\\d|3[2-9]|4[5-9]|5[1-9]|8[03-9])|9(?:[2-58]\\\\d|[679][1-9]))\\\\d{6}\",\n, , , \"312345678\", , , [9]], [, , \"[7-9]0[1-9]\\\\d{7}\", , , , \"9012345678\", , , [10]], [, , \"00(?:(?:37|66)\\\\d{6,13}|(?:777(?:[01]|(?:5|8\\\\d)\\\\d)|882[1245]\\\\d\\\\d)\\\\d\\\\d)|(?:120|800\\\\d)\\\\d{6}\", , , , \"120123456\"], [, , \"990\\\\d{6}\", , , , \"990123456\", , , [9]], [, , , , , , , , , [-1]], [, , \"60\\\\d{7}\", , , , \"601234567\", , , [9]], [, , \"50[1-9]\\\\d{7}\", , , , \"5012345678\", , , [10]], \"JP\", 81, \"010\", \"0\", , , \"0\", , , , [[, \"(\\\\d{4})(\\\\d{4})\", \"$1-$2\", [\"007\", \"0077\", \"00777\", \"00777[01]\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\n\"$1-$2-$3\", [\"(?:12|57|99)0\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d)(\\\\d{4})\", \"$1-$2-$3\", [\"1(?:26|3[79]|4[56]|5[4-68]|6[3-5])|499|5(?:76|97)|746|8(?:3[89]|47|51|63)|9(?:49|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[78]|96)|477|51[24]|636)|9(?:496|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[78]|96[2457-9])|477|51[24]|636[2-57-9])|9(?:496|802|9(?:1[23]|69))|1(?:45|58)[67]\"],\n\"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"60\"], \"0$1\"], [, \"(\\\\d)(\\\\d{4})(\\\\d{4})\", \"$1-$2-$3\", [\"[36]|4(?:2[09]|7[01])\", \"[36]|4(?:2(?:0|9[02-69])|7(?:0[019]|1))\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"1(?:1|5[45]|77|88|9[69])|2(?:2[1-37]|3[0-269]|4[59]|5|6[24]|7[1-358]|8[1369]|9[0-38])|4(?:[28][1-9]|3[0-57]|[45]|6[248]|7[2-579]|9[29])|5(?:2|3[045]|4[0-369]|5[29]|8[02389]|9[0-389])|7(?:2[02-46-9]|34|[58]|6[0249]|7[57]|9[2-6])|8(?:2[124589]|3[279]|49|6[0-24-689]|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])\",\n\"1(?:1|5(?:4[018]|5[017])|77|88|9[69])|2(?:2(?:[127]|3[014-9])|3[0-269]|4[59]|5(?:[0468][01]|[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]|2[01]|8[014-6])|3[0-57]|[45]|6[248]|7[2-47]|8[1-9])|5(?:2|3[045]|4[0-369]|8[02389]|9[0-3])|7(?:2[02-46-9]|34|[58]|6[0249]|7[57]|9(?:[23]|4[0-59]|5[01569]|6[0167]))|8(?:2(?:[1258]|4[0-39]|9[0-2469])|49|6(?:[0-24]|5[0-3589]|9[01459])|7[0-468]|8[68])|9(?:[23][1-9]|4[15]|5[138]|6[1-3]|7[156]|8[189]|9(?:[1289]|3[34]|4[0178]))|(?:49|55|83)[29]|(?:264|837)[016-9]|2(?:57|93)[015-9]|(?:47[59]|59[89]|8(?:6[68]|9))[019]\",\n\"1(?:1|5(?:4[018]|5[017])|77|88|9[69])|2(?:2[127]|3[0-269]|4[59]|5(?:[0468][01]|[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]|2[01]|8[014-6])|3[0-57]|[45]|6[248]|7[2-47]|9[29])|5(?:2|3[045]|4[0-369]|5[29]|8[02389]|9[0-3])|7(?:2[02-46-9]|34|[58]|6[0249]|7[57]|9(?:[23]|4[0-59]|5[01569]|6[0167]))|8(?:2(?:[1258]|4[0-39]|9[0169])|3(?:[29]|7(?:[017-9]|6[6-8]))|49|6(?:[0-24]|5(?:[0-389]|5[23])|6(?:[01]|9[178])|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]|(?:48|8292|9[23])[1-9]|(?:47[59]|59[89]|8(?:68|9))[019]\",\n\"1(?:1|5(?:4[018]|5[017])|77|88|9[69])|2(?:2[127]|3[0-269]|4[59]|5(?:[0468][01]|[1-3]|5[0-69]|7[015-9]|9(?:17|99))|6(?:2|4[016-9])|7(?:[1-35]|8[0189])|8(?:[16]|3[0134]|9[0-5])|9(?:[028]|17|3[015-9]))|4(?:2(?:[13-79]|2[01]|8[014-6])|3[0-57]|[45]|6[248]|7[2-47]|9[29])|5(?:2|3[045]|4[0-369]|5[29]|8[02389]|9[0-3])|7(?:2[02-46-9]|34|[58]|6[0249]|7[57]|9(?:[23]|4[0-59]|5[01569]|6[0167]))|8(?:2(?:[1258]|4[0-39]|9(?:[019]|4[1-3]|6(?:[0-47-9]|5[01346-9])))|3(?:[29]|7(?:[017-9]|6[6-8]))|49|6(?:[0-24]|5(?:[0-389]|5[23])|6(?:[01]|9[178])|9[0145])|7[0-468]|8[68])|9(?:4[15]|5[138]|6[1-3]|7[156]|8[189]|9(?:[1289]|3(?:31|4[357])|4[0178]))|(?:223|8699)[014-9]|(?:48|829(?:2|66)|9[23])[1-9]|(?:47[59]|59[89]|8(?:68|9))[019]\"],\n\"0$1\"], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{4})\", \"$1-$2-$3\", [\"[14]|[29][2-9]|5[3-9]|7[2-4679]|8(?:[246-9]|3[3-8]|5[2-9])\", \"[14]|[29][2-9]|5[3-9]|7[2-4679]|8(?:[246-9]|3(?:[3-6][2-9]|7|8[2-5])|5[2-9])\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d{2})(\\\\d{3,4})\", \"$1-$2-$3\", [\"007\"]], [, \"(\\\\d{4})(\\\\d{2})(\\\\d{4})\", \"$1-$2-$3\", [\"008\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"800\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1-$2-$3\", [\"[2579]|80\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{3,4})\", \"$1-$2-$3\", [\"0\"]], [, \"(\\\\d{4})(\\\\d{4})(\\\\d{4,5})\",\n\"$1-$2-$3\", [\"0\"]], [, \"(\\\\d{4})(\\\\d{5})(\\\\d{5,6})\", \"$1-$2-$3\", [\"0\"]], [, \"(\\\\d{4})(\\\\d{6})(\\\\d{6,7})\", \"$1-$2-$3\", [\"0\"]]], [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1-$2-$3\", [\"(?:12|57|99)0\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d)(\\\\d{4})\", \"$1-$2-$3\", [\"1(?:26|3[79]|4[56]|5[4-68]|6[3-5])|499|5(?:76|97)|746|8(?:3[89]|47|51|63)|9(?:49|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[78]|96)|477|51[24]|636)|9(?:496|802|9(?:1[23]|69))|1(?:45|58)[67]\",\n\"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[78]|96[2457-9])|477|51[24]|636[2-57-9])|9(?:496|802|9(?:1[23]|69))|1(?:45|58)[67]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"60\"], \"0$1\"], [, \"(\\\\d)(\\\\d{4})(\\\\d{4})\", \"$1-$2-$3\", [\"[36]|4(?:2[09]|7[01])\", \"[36]|4(?:2(?:0|9[02-69])|7(?:0[019]|1))\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"1(?:1|5[45]|77|88|9[69])|2(?:2[1-37]|3[0-269]|4[59]|5|6[24]|7[1-358]|8[1369]|9[0-38])|4(?:[28][1-9]|3[0-57]|[45]|6[248]|7[2-579]|9[29])|5(?:2|3[045]|4[0-369]|5[29]|8[02389]|9[0-389])|7(?:2[02-46-9]|34|[58]|6[0249]|7[57]|9[2-6])|8(?:2[124589]|3[279]|49|6[0-24-689]|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])\",\n\"1(?:1|5(?:4[018]|5[017])|77|88|9[69])|2(?:2(?:[127]|3[014-9])|3[0-269]|4[59]|5(?:[0468][01]|[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]|2[01]|8[014-6])|3[0-57]|[45]|6[248]|7[2-47]|8[1-9])|5(?:2|3[045]|4[0-369]|8[02389]|9[0-3])|7(?:2[02-46-9]|34|[58]|6[0249]|7[57]|9(?:[23]|4[0-59]|5[01569]|6[0167]))|8(?:2(?:[1258]|4[0-39]|9[0-2469])|49|6(?:[0-24]|5[0-3589]|9[01459])|7[0-468]|8[68])|9(?:[23][1-9]|4[15]|5[138]|6[1-3]|7[156]|8[189]|9(?:[1289]|3[34]|4[0178]))|(?:49|55|83)[29]|(?:264|837)[016-9]|2(?:57|93)[015-9]|(?:47[59]|59[89]|8(?:6[68]|9))[019]\",\n\"1(?:1|5(?:4[018]|5[017])|77|88|9[69])|2(?:2[127]|3[0-269]|4[59]|5(?:[0468][01]|[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]|2[01]|8[014-6])|3[0-57]|[45]|6[248]|7[2-47]|9[29])|5(?:2|3[045]|4[0-369]|5[29]|8[02389]|9[0-3])|7(?:2[02-46-9]|34|[58]|6[0249]|7[57]|9(?:[23]|4[0-59]|5[01569]|6[0167]))|8(?:2(?:[1258]|4[0-39]|9[0169])|3(?:[29]|7(?:[017-9]|6[6-8]))|49|6(?:[0-24]|5(?:[0-389]|5[23])|6(?:[01]|9[178])|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]|(?:48|8292|9[23])[1-9]|(?:47[59]|59[89]|8(?:68|9))[019]\",\n\"1(?:1|5(?:4[018]|5[017])|77|88|9[69])|2(?:2[127]|3[0-269]|4[59]|5(?:[0468][01]|[1-3]|5[0-69]|7[015-9]|9(?:17|99))|6(?:2|4[016-9])|7(?:[1-35]|8[0189])|8(?:[16]|3[0134]|9[0-5])|9(?:[028]|17|3[015-9]))|4(?:2(?:[13-79]|2[01]|8[014-6])|3[0-57]|[45]|6[248]|7[2-47]|9[29])|5(?:2|3[045]|4[0-369]|5[29]|8[02389]|9[0-3])|7(?:2[02-46-9]|34|[58]|6[0249]|7[57]|9(?:[23]|4[0-59]|5[01569]|6[0167]))|8(?:2(?:[1258]|4[0-39]|9(?:[019]|4[1-3]|6(?:[0-47-9]|5[01346-9])))|3(?:[29]|7(?:[017-9]|6[6-8]))|49|6(?:[0-24]|5(?:[0-389]|5[23])|6(?:[01]|9[178])|9[0145])|7[0-468]|8[68])|9(?:4[15]|5[138]|6[1-3]|7[156]|8[189]|9(?:[1289]|3(?:31|4[357])|4[0178]))|(?:223|8699)[014-9]|(?:48|829(?:2|66)|9[23])[1-9]|(?:47[59]|59[89]|8(?:68|9))[019]\"],\n\"0$1\"], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{4})\", \"$1-$2-$3\", [\"[14]|[29][2-9]|5[3-9]|7[2-4679]|8(?:[246-9]|3[3-8]|5[2-9])\", \"[14]|[29][2-9]|5[3-9]|7[2-4679]|8(?:[246-9]|3(?:[3-6][2-9]|7|8[2-5])|5[2-9])\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"800\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1-$2-$3\", [\"[2579]|80\"], \"0$1\"]], [, , \"20\\\\d{8}\", , , , \"2012345678\", , , [10]], , , [, , \"00(?:777(?:[01]|(?:5|8\\\\d)\\\\d)|882[1245]\\\\d\\\\d)\\\\d\\\\d|00(?:37|66)\\\\d{6,13}\"], [, , \"570\\\\d{6}\", , , , \"570123456\",\n, , [9]], , , [, , , , , , , , , [-1]]], KE:[, [, , \"(?:[17]\\\\d\\\\d|900)\\\\d{6}|(?:2|80)0\\\\d{6,7}|[4-6]\\\\d{6,8}\", , , , , , , [7, 8, 9, 10]], [, , \"(?:4[245]|5[2-79]|6[01457-9])\\\\d{5,7}|(?:4[136]|5[08]|62)\\\\d{7}|(?:[24]0|51|66)\\\\d{6,7}\", , , , \"202012345\", , , [7, 8, 9]], [, , \"(?:1(?:0[0-2]|1[01])|7\\\\d\\\\d)\\\\d{6}\", , , , \"712123456\", , , [9]], [, , \"800[24-8]\\\\d{5,6}\", , , , \"800223456\", , , [9, 10]], [, , \"900[02-9]\\\\d{5}\", , , , \"900223456\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , ,\n[-1]], [, , , , , , , , , [-1]], \"KE\", 254, \"000\", \"0\", , , \"0\", , , , [[, \"(\\\\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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], KG:[, [, , \"8\\\\d{9}|(?:[235-8]\\\\d|99)\\\\d{7}\", , , , , , , [9, 10], [5, 6]], [, , \"(?:3(?:1(?:[256]\\\\d|3[1-9]|47)|2(?:22|3[0-479]|6[0-7])|4(?:22|5[6-9]|6\\\\d)|5(?:22|3[4-7]|59|6\\\\d)|6(?:22|5[35-7]|6\\\\d)|7(?:22|3[468]|4[1-9]|59|[67]\\\\d)|9(?:22|4[1-8]|6\\\\d))|6(?:09|12|2[2-4])\\\\d)\\\\d{5}\",\n, , , \"312123456\", , , [9], [5, 6]], [, , \"8801\\\\d{5}|(?:2(?:0[0-35]|2\\\\d)|5(?:0[0-57-9]|[124-7]\\\\d)|7(?:[07]\\\\d|55)|99[05-9])\\\\d{6}\", , , , \"700123456\", , , [9]], [, , \"800\\\\d{6,7}\", , , , \"800123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"KG\", 996, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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})\",\n\"$1 $2 $3 $4\", [\"8\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], KH:[, [, , \"1\\\\d{9}|[1-9]\\\\d{7,8}\", , , , , , , [8, 9, 10], [6, 7]], [, , \"23(?:4(?:[2-4]|[56]\\\\d)|[568]\\\\d\\\\d)\\\\d{4}|23[236-9]\\\\d{5}|(?:2[4-6]|3[2-6]|4[2-4]|[5-7][2-5])(?:(?:[237-9]|4[56]|5\\\\d)\\\\d{5}|6\\\\d{5,6})\", , , , \"23756789\", , , [8, 9], [6, 7]], [, , \"(?:(?:1[28]|3[18]|9[67])\\\\d|6[016-9]|7(?:[07-9]|[16]\\\\d)|8(?:[013-79]|8\\\\d))\\\\d{6}|(?:1\\\\d|9[0-57-9])\\\\d{6}|(?:2[3-6]|3[2-6]|4[2-4]|[5-7][2-5])48\\\\d{5}\",\n, , , \"91234567\", , , [8, 9]], [, , \"1800(?:1\\\\d|2[019])\\\\d{4}\", , , , \"1800123456\", , , [10]], [, , \"1900(?:1\\\\d|2[09])\\\\d{4}\", , , , \"1900123456\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"KH\", 855, \"00[14-9]\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{3,4})\", \"$1 $2 $3\", [\"[1-9]\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"1\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , ,\n, , [-1]]], KI:[, [, , \"(?:[37]\\\\d|6[0-79])\\\\d{6}|(?:[2-48]\\\\d|50)\\\\d{3}\", , , , , , , [5, 8]], [, , \"(?:[24]\\\\d|3[1-9]|50|65(?:02[12]|12[56]|22[89]|[3-5]00)|7(?:27\\\\d\\\\d|3100|5(?:02[12]|12[56]|22[89]|[34](?:00|81)|500))|8[0-5])\\\\d{3}\", , , , \"31234\"], [, , \"73140\\\\d{3}|(?:630[01]|730[0-5])\\\\d{4}|[67]200[01]\\\\d{3}\", , , , \"72001234\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"30(?:0[01]\\\\d\\\\d|12(?:11|20))\\\\d\\\\d\", , , , \"30010000\",\n, , [8]], \"KI\", 686, \"00\", \"0\", , , \"0\", , , , , , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], KM:[, [, , \"[3478]\\\\d{6}\", , , , , , , [7]], [, , \"7[4-7]\\\\d{5}\", , , , \"7712345\"], [, , \"[34]\\\\d{6}\", , , , \"3212345\"], [, , , , , , , , , [-1]], [, , \"8\\\\d{6}\", , , , \"8001234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"KM\", 269, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3\", [\"[3478]\"]]],\n, [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], KN:[, [, , \"(?:[58]\\\\d\\\\d|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"869(?:2(?:29|36)|302|4(?:6[015-9]|70))\\\\d{4}\", , , , \"8692361234\", , , , [7]], [, , \"869(?:5(?:5[6-8]|6[5-7])|66\\\\d|76[02-7])\\\\d{4}\", , , , \"8697652917\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\",\n, , , \"5002345678\"], [, , , , , , , , , [-1]], \"KN\", 1, \"011\", \"1\", , , \"1|([2-7]\\\\d{6})$\", \"869$1\", , , , , [, , , , , , , , , [-1]], , \"869\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], KP:[, [, , \"85\\\\d{6}|(?:19\\\\d|2)\\\\d{7}\", , , , , , , [8, 10], [6, 7]], [, , \"(?:2\\\\d|85)\\\\d{6}\", , , , \"21234567\", , , [8], [6, 7]], [, , \"19[1-3]\\\\d{7}\", , , , \"1921234567\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , ,\n, , , , [-1]], [, , , , , , , , , [-1]], \"KP\", 850, \"00|99\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"8\"], \"0$1\"], [, \"(\\\\d)(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"2\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"1\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , \"238[02-9]\\\\d{4}|2(?:[0-24-9]\\\\d|3[0-79])\\\\d{5}\", , , , , , , [8]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], KR:[, [, , \"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}\",\n, , , , , , [5, 6, 8, 9, 10, 11, 12, 13, 14], [3, 4, 7]], [, , \"(?:2|3[1-3]|[46][1-4]|5[1-5])[1-9]\\\\d{6,7}|(?:3[1-3]|[46][1-4]|5[1-5])1\\\\d{2,3}\", , , , \"22123456\", , , [5, 6, 8, 9, 10], [3, 4, 7]], [, , \"10[01]\\\\d{6}|1(?:0[2-9]|[126-9]\\\\d)\\\\d{6,7}\", , , , \"1020000000\", , , [9, 10]], [, , \"00(?:308\\\\d{6,7}|798\\\\d{7,9})|(?:00368|80)\\\\d{7}\", , , , \"801234567\", , , [9, 11, 12, 13, 14]], [, , \"60[2-9]\\\\d{6}\", , , , \"602345678\", , , [9]], [, , , , , , , , , [-1]], [, , \"50\\\\d{8,9}\", , , , \"5012345678\",\n, , [10, 11]], [, , \"70\\\\d{8}\", , , , \"7012345678\", , , [10]], \"KR\", 82, \"00(?:[125689]|3(?:[46]5|91)|7(?:00|27|3|55|6[126]))\", \"0\", , , \"0(8(?:[1-46-8]|5\\\\d\\\\d))?\", , , , [[, \"(\\\\d{5})\", \"$1\", [\"1[016-9]1\", \"1[016-9]11\", \"1[016-9]114\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3,4})\", \"$1-$2\", [\"(?:3[1-3]|[46][1-4]|5[1-5])1\"], \"0$1\", \"0$CC-$1\"], [, \"(\\\\d{4})(\\\\d{4})\", \"$1-$2\", [\"1\"]], [, \"(\\\\d)(\\\\d{3,4})(\\\\d{4})\", \"$1-$2-$3\", [\"2\"], \"0$1\", \"0$CC-$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"60|8\"], \"0$1\",\n\"0$CC-$1\"], [, \"(\\\\d{2})(\\\\d{3,4})(\\\\d{4})\", \"$1-$2-$3\", [\"[1346]|5[1-5]\"], \"0$1\", \"0$CC-$1\"], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1-$2-$3\", [\"[57]\"], \"0$1\", \"0$CC-$1\"], [, \"(\\\\d{5})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"003\", \"0030\"]], [, \"(\\\\d{2})(\\\\d{5})(\\\\d{4})\", \"$1-$2-$3\", [\"5\"], \"0$1\", \"0$CC-$1\"], [, \"(\\\\d{5})(\\\\d{3,4})(\\\\d{4})\", \"$1 $2 $3\", [\"0\"]], [, \"(\\\\d{5})(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3 $4\", [\"0\"]]], [[, \"(\\\\d{2})(\\\\d{3,4})\", \"$1-$2\", [\"(?:3[1-3]|[46][1-4]|5[1-5])1\"], \"0$1\", \"0$CC-$1\"],\n[, \"(\\\\d{4})(\\\\d{4})\", \"$1-$2\", [\"1\"]], [, \"(\\\\d)(\\\\d{3,4})(\\\\d{4})\", \"$1-$2-$3\", [\"2\"], \"0$1\", \"0$CC-$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"60|8\"], \"0$1\", \"0$CC-$1\"], [, \"(\\\\d{2})(\\\\d{3,4})(\\\\d{4})\", \"$1-$2-$3\", [\"[1346]|5[1-5]\"], \"0$1\", \"0$CC-$1\"], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1-$2-$3\", [\"[57]\"], \"0$1\", \"0$CC-$1\"], [, \"(\\\\d{2})(\\\\d{5})(\\\\d{4})\", \"$1-$2-$3\", [\"5\"], \"0$1\", \"0$CC-$1\"]], [, , \"15\\\\d{7,8}\", , , , \"1523456789\", , , [9, 10]], , , [, , \"00(?:3(?:08\\\\d{6,7}|68\\\\d{7})|798\\\\d{7,9})\",\n, , , , , , [11, 12, 13, 14]], [, , \"1(?:5(?:22|44|66|77|88|99)|6(?:[07]0|44|6[16]|88)|8(?:00|33|55|77|99))\\\\d{4}\", , , , \"15441234\", , , [8]], , , [, , , , , , , , , [-1]]], KW:[, [, , \"(?:18|[2569]\\\\d\\\\d)\\\\d{5}\", , , , , , , [7, 8]], [, , \"2(?:[23]\\\\d\\\\d|4(?:[1-35-9]\\\\d|44)|5(?:0[034]|[2-46]\\\\d|5[1-3]|7[1-7]))\\\\d{4}\", , , , \"22345678\", , , [8]], [, , \"(?:52(?:22|5[25])|6(?:222|70[013-9]|93[039])|9(?:11[01]|333|702))\\\\d{4}|(?:5(?:[05]\\\\d|1[0-7]|6[56])|6(?:0[034679]|5[015-9]|6\\\\d|7[67]|9[069])|9(?:0[09]|22|4[01479]|55|6[0679]|7[1-9]|8[057-9]|9\\\\d))\\\\d{5}\",\n, , , \"50012345\", , , [8]], [, , \"18\\\\d{5}\", , , , \"1801234\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"KW\", 965, \"00\", , , , , , , , [[, \"(\\\\d{4})(\\\\d{3,4})\", \"$1 $2\", [\"[169]|2(?:[235]|4[1-35-9])|52\"]], [, \"(\\\\d{3})(\\\\d{5})\", \"$1 $2\", [\"[25]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], KY:[, [, , \"(?:345|[58]\\\\d\\\\d|900)\\\\d{7}\", , , , , , , [10], [7]],\n[, , \"345(?:2(?:22|44)|444|6(?:23|38|40)|7(?:4[35-79]|6[6-9]|77)|8(?:00|1[45]|25|[48]8)|9(?:14|4[035-9]))\\\\d{4}\", , , , \"3452221234\", , , , [7]], [, , \"345(?:32[1-9]|5(?:1[67]|2[5-79]|4[6-9]|50|76)|649|9(?:1[67]|2[2-9]|3[689]))\\\\d{4}\", , , , \"3453231234\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002345678\"], [, , \"(?:345976|900[2-9]\\\\d\\\\d)\\\\d{4}\", , , , \"9002345678\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , ,\n, , , , [-1]], \"KY\", 1, \"011\", \"1\", , , \"1|([2-9]\\\\d{6})$\", \"345$1\", , , , , [, , \"345849\\\\d{4}\", , , , \"3458491234\"], , \"345\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], KZ:[, [, , \"33622\\\\d{5}|(?:7\\\\d|80)\\\\d{8}\", , , , , , , [10], [5, 6]], [, , \"(?:33622|7(?:1(?:0(?:[23]\\\\d|4[0-3]|59|63)|1(?:[23]\\\\d|4[0-79]|59)|2(?:[23]\\\\d|59)|3(?:2\\\\d|3[0-79]|4[0-35-9]|59)|4(?:[24]\\\\d|3[013-9]|5[1-9])|5(?:2\\\\d|3[1-9]|4[0-7]|59)|6(?:[2-4]\\\\d|5[19]|61)|72\\\\d|8(?:[27]\\\\d|3[1-46-9]|4[0-5]))|2(?:1(?:[23]\\\\d|4[46-9]|5[3469])|2(?:2\\\\d|3[0679]|46|5[12679])|3(?:[2-4]\\\\d|5[139])|4(?:2\\\\d|3[1-35-9]|59)|5(?:[23]\\\\d|4[0-246-8]|59|61)|6(?:2\\\\d|3[1-9]|4[0-4]|59)|7(?:[2379]\\\\d|40|5[279])|8(?:[23]\\\\d|4[0-3]|59)|9(?:2\\\\d|3[124578]|59))))\\\\d{5}\",\n, , , \"7123456789\", , , , [5, 6]], [, , \"7(?:0[0-25-8]|47|6[02-4]|7[15-8]|85)\\\\d{7}\", , , , \"7710009998\"], [, , \"800\\\\d{7}\", , , , \"8001234567\"], [, , \"809\\\\d{7}\", , , , \"8091234567\"], [, , , , , , , , , [-1]], [, , \"808\\\\d{7}\", , , , \"8081234567\"], [, , \"751\\\\d{7}\", , , , \"7511234567\"], \"KZ\", 7, \"810\", \"8\", , , \"8\", , \"8~10\", , , , [, , , , , , , , , [-1]], , \"33|7\", [, , \"751\\\\d{7}\"], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], LA:[, [, , \"(?:2\\\\d|3)\\\\d{8}|(?:[235-8]\\\\d|41)\\\\d{6}\",\n, , , , , , [8, 9, 10], [6]], [, , \"(?:2[13]|[35-7][14]|41|8[1468])\\\\d{6}\", , , , \"21212862\", , , [8], [6]], [, , \"20(?:[29]\\\\d|5[24-689]|7[6-8])\\\\d{6}\", , , , \"2023123456\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"LA\", 856, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"2[13]|3[14]|[4-8]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{3})\", \"$1 $2 $3 $4\", [\"3\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{3})(\\\\d{3})\",\n\"$1 $2 $3 $4\", [\"2\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"30\\\\d{7}\", , , , \"301234567\", , , [9]], , , [, , , , , , , , , [-1]]], LB:[, [, , \"[7-9]\\\\d{7}|[13-9]\\\\d{6}\", , , , , , , [7, 8]], [, , \"(?:(?:[14-69]\\\\d|8[02-9])\\\\d|7(?:[2-57]\\\\d|62|8[0-7]|9[04-9]))\\\\d{4}\", , , , \"1123456\", , , [7]], [, , \"(?:(?:3|81)\\\\d|7(?:[01]\\\\d|6[013-9]|8[89]|9[1-3]))\\\\d{5}\", , , , \"71123456\"], [, , , , , , , , , [-1]], [, , \"9[01]\\\\d{6}\", , , , \"90123456\", , , [8]], [, , \"80\\\\d{6}\",\n, , , \"80123456\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"LB\", 961, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\", [\"[7-9]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], LC:[, [, , \"(?:[58]\\\\d\\\\d|758|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"758(?:4(?:30|5\\\\d|6[2-9]|8[0-2])|57[0-2]|638)\\\\d{4}\",\n, , , \"7584305678\", , , , [7]], [, , \"758(?:28[4-7]|384|4(?:6[01]|8[4-9])|5(?:1[89]|20|84)|7(?:1[2-9]|2\\\\d|3[01]))\\\\d{4}\", , , , \"7582845678\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"LC\", 1, \"011\", \"1\", , , \"1|([2-7]\\\\d{6})$\", \"758$1\", , , , , [, , , , , , , , , [-1]], , \"758\", [, , , , , , , , ,\n[-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], LI:[, [, , \"90\\\\d{5}|(?:[2378]|6\\\\d\\\\d)\\\\d{6}\", , , , , , , [7, 9]], [, , \"(?:2(?:01|1[27]|22|3\\\\d|6[02-578]|96)|3(?:33|40|7[0135-7]|8[048]|9[0269]))\\\\d{4}\", , , , \"2345678\", , , [7]], [, , \"756\\\\d{4}|(?:6(?:499|5[0-3]\\\\d|6(?:0[0-7]|10|2[06-9]|39))|7[37-9])\\\\d{5}\", , , , \"660234567\"], [, , \"80(?:02[28]|9\\\\d\\\\d)\\\\d\\\\d\", , , , \"8002222\", , , [7]], [, , \"90(?:02[258]|1(?:23|3[14])|66[136])\\\\d\\\\d\", , , , \"9002222\", , , [7]], [, , , , , ,\n, , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"LI\", 423, \"00\", \"0\", , , \"0|(10(?:01|20|66))\", , , , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3\", [\"[237-9]\"], , \"$CC $1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"69\"], , \"$CC $1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"6\"], , \"$CC $1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"870(?:28|87)\\\\d\\\\d\", , , , \"8702812\", , , [7]], , , [, , \"697(?:56|[78]\\\\d)\\\\d{4}\", , , , \"697861234\", , , [9]]], LK:[,\n[, , \"(?:[1-7]\\\\d|[89]1)\\\\d{7}\", , , , , , , [9], [7]], [, , \"(?:[189]1|2[13-7]|3[1-8]|4[157]|5[12457]|6[35-7])[2-57]\\\\d{6}\", , , , \"112345678\", , , , [7]], [, , \"7[0-25-8]\\\\d{7}\", , , , \"712345678\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"LK\", 94, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\"]], , [, , , ,\n, , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"1973\\\\d{5}\", , , , \"197312345\"], , , [, , , , , , , , , [-1]]], LR:[, [, , \"(?:2|33|5\\\\d|77|88)\\\\d{7}|[45]\\\\d{6}\", , , , , , , [7, 8, 9]], [, , \"(?:2\\\\d{3}|33333)\\\\d{4}\", , , , \"21234567\", , , [8, 9]], [, , \"(?:(?:330|555|(?:77|88)\\\\d)\\\\d|4[67])\\\\d{5}|5\\\\d{6}\", , , , \"770123456\", , , [7, 9]], [, , , , , , , , , [-1]], [, , \"332(?:02|[34]\\\\d)\\\\d{4}\", , , , \"332021234\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , ,\n, , [-1]], \"LR\", 231, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d)(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[45]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"2\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[3578]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], LS:[, [, , \"(?:[256]\\\\d\\\\d|800)\\\\d{5}\", , , , , , , [8]], [, , \"2\\\\d{7}\", , , , \"22123456\"], [, , \"[56]\\\\d{7}\", , , , \"50123456\"], [, , \"800[256]\\\\d{4}\", , ,\n, \"80021234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"LS\", 266, \"00\", , , , , , , , [[, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[2568]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], LT:[, [, , \"(?:[3469]\\\\d|52|[78]0)\\\\d{6}\", , , , , , , [8]], [, , \"(?:3[1478]|4[124-6]|52)\\\\d{6}\", , , , \"31234567\"], [, , \"6\\\\d{7}\", , , , \"61234567\"], [, , \"800\\\\d{5}\", , , , \"80012345\"],\n[, , \"9(?:0[0239]|10)\\\\d{5}\", , , , \"90012345\"], [, , \"808\\\\d{5}\", , , , \"80812345\"], [, , \"700\\\\d{5}\", , , , \"70012345\"], [, , , , , , , , , [-1]], \"LT\", 370, \"00\", \"8\", , , \"[08]\", , , , [[, \"(\\\\d)(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"52[0-79]\"], \"(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]], , [, , , , , , , , , [-1]], , , [, , , ,\n, , , , , [-1]], [, , \"70[67]\\\\d{5}\", , , , \"70712345\"], , , [, , , , , , , , , [-1]]], LU:[, [, , \"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]], [, , \"(?:35[013-9]|80[2-9]|90[89])\\\\d{1,8}|(?:2[2-9]|3[0-46-9]|[457]\\\\d|8[13-9]|9[2-579])\\\\d{2,9}\", , , , \"27123456\"], [, , \"6(?:[269][18]|5[158]|7[189]|81)\\\\d{6}\", , , , \"628123456\", , , [9]], [, , \"800\\\\d{5}\", , , , \"80012345\", , , [8]], [, , \"90[015]\\\\d{5}\", , , , \"90012345\", , , [8]],\n[, , \"801\\\\d{5}\", , , , \"80112345\", , , [8]], [, , , , , , , , , [-1]], [, , \"20(?:1\\\\d{5}|[2-689]\\\\d{1,7})\", , , , \"20201234\", , , [4, 5, 6, 7, 8, 9, 10]], \"LU\", 352, \"00\", , , , \"(15(?:0[06]|1[12]|[35]5|4[04]|6[26]|77|88|99)\\\\d)\", , , , [[, \"(\\\\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])\"], , \"$CC $1\"], [, \"(\\\\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])\"], , \"$CC $1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{3})\",\n\"$1 $2 $3\", [\"20[2-689]\"], , \"$CC $1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{1,2})\", \"$1 $2 $3 $4\", [\"2(?:[0367]|4[3-8])\"], , \"$CC $1\"], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{3})\", \"$1 $2 $3\", [\"80[01]|90[015]\"], , \"$CC $1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{3})\", \"$1 $2 $3 $4\", [\"20\"], , \"$CC $1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"6\"], , \"$CC $1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{1,2})\", \"$1 $2 $3 $4 $5\", [\"2(?:[0367]|4[3-8])\"], , \"$CC $1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{1,5})\", \"$1 $2 $3 $4\",\n[\"[3-57]|8[13-9]|9(?:0[89]|[2-579])|(?:2|80)[2-9]\"], , \"$CC $1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], LV:[, [, , \"(?:[268]\\\\d|90)\\\\d{6}\", , , , , , , [8]], [, , \"6\\\\d{7}\", , , , \"63123456\"], [, , \"2\\\\d{7}\", , , , \"21234567\"], [, , \"80\\\\d{6}\", , , , \"80123456\"], [, , \"90\\\\d{6}\", , , , \"90123456\"], [, , \"81\\\\d{6}\", , , , \"81123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"LV\", 371, \"00\", , , , , , , , [[,\n\"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[269]|8[01]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], LY:[, [, , \"(?:[2569]\\\\d|71)\\\\d{7}\", , , , , , , [9], [7]], [, , \"(?:2[13-5]|5[1347]|6[1-479]|71)\\\\d{7}\", , , , \"212345678\", , , , [7]], [, , \"9[1-6]\\\\d{7}\", , , , \"912345678\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"LY\", 218, \"00\", \"0\",\n, , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{7})\", \"$1-$2\", [\"[25-79]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MA:[, [, , \"[5-8]\\\\d{8}\", , , , , , , [9]], [, , \"5(?:29|38)[89]0\\\\d{4}|5(?:2(?:[015-7]\\\\d|2[2-9]|3[2-57]|4[2-46-8]|8[235-7]|90)|3(?:[0-4]\\\\d|[57][2-9]|6[2-8]|80|9[3-9])|(?:4[067]|5[03])\\\\d)\\\\d{5}\", , , , \"520123456\"], [, , \"692[12]\\\\d{5}|(?:6(?:[0-7]\\\\d|8[0-247-9]|9[013-9])|7(?:0[06-8]|6[1267]|7[0-27]))\\\\d{6}\", ,\n, , \"650123456\"], [, , \"80\\\\d{7}\", , , , \"801234567\"], [, , \"89\\\\d{7}\", , , , \"891234567\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"5924[0-2]\\\\d{4}\", , , , \"592401234\"], \"MA\", 212, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{5})(\\\\d{4})\", \"$1-$2\", [\"5(?:29|38)\", \"5(?:29|38)[89]\"], \"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\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{7})\", \"$1-$2\", [\"8\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{6})\",\n\"$1-$2\", [\"[5-7]\"], \"0$1\"]], , [, , , , , , , , , [-1]], 1, , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MC:[, [, , \"870\\\\d{5}|(?:[349]|6\\\\d)\\\\d{7}\", , , , , , , [8, 9]], [, , \"(?:870|9[2-47-9]\\\\d)\\\\d{5}\", , , , \"99123456\", , , [8]], [, , \"4(?:4\\\\d|5[1-9])\\\\d{5}|(?:3|6\\\\d)\\\\d{7}\", , , , \"612345678\"], [, , \"90\\\\d{6}\", , , , \"90123456\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"MC\", 377,\n\"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{2})\", \"$1 $2 $3\", [\"8\"]], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"4\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[39]\"]], [, \"(\\\\d)(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4 $5\", [\"6\"], \"0$1\"]], [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"4\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[39]\"]], [, \"(\\\\d)(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4 $5\", [\"6\"], \"0$1\"]], [, , , , , , , , , [-1]],\n, , [, , \"870\\\\d{5}\", , , , , , , [8]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MD:[, [, , \"(?:[235-7]\\\\d|[89]0)\\\\d{6}\", , , , , , , [8]], [, , \"(?:(?:2[1-9]|3[1-79])\\\\d|5(?:33|5[257]))\\\\d{5}\", , , , \"22212345\"], [, , \"(?:562|6\\\\d\\\\d|7(?:[189]\\\\d|6[07]|7[457-9]))\\\\d{5}\", , , , \"62112345\"], [, , \"800\\\\d{5}\", , , , \"80012345\"], [, , \"90[056]\\\\d{5}\", , , , \"90012345\"], [, , \"808\\\\d{5}\", , , , \"80812345\"], [, , , , , , , , , [-1]], [, , \"3[08]\\\\d{6}\", , , , \"30123456\"], \"MD\", 373, \"00\",\n\"0\", , , \"0\", , , , [[, \"(\\\\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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"803\\\\d{5}\", , , , \"80312345\"], , , [, , , , , , , , , [-1]]], ME:[, [, , \"(?:20|[3-79]\\\\d)\\\\d{6}|80\\\\d{6,7}\", , , , , , , [8, 9], [6]], [, , \"(?:20[2-8]|3(?:[0-2][2-7]|3[24-7])|4(?:0[2-467]|1[2467])|5(?:[01][2467]|2[2-467]))\\\\d{5}\", , , , \"30234567\",\n, , [8], [6]], [, , \"6(?:00|3[024]|6[0-25]|[7-9]\\\\d)\\\\d{5}\", , , , \"67622901\", , , [8]], [, , \"80(?:[0-2578]|9\\\\d)\\\\d{5}\", , , , \"80080002\"], [, , \"9(?:4[1568]|5[178])\\\\d{5}\", , , , \"94515151\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"78[1-49]\\\\d{5}\", , , , \"78108780\", , , [8]], \"ME\", 382, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{3,4})\", \"$1 $2 $3\", [\"[2-9]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"77[1-9]\\\\d{5}\", , , , \"77273012\",\n, , [8]], , , [, , , , , , , , , [-1]]], MF:[, [, , \"(?:590|69\\\\d)\\\\d{6}\", , , , , , , [9]], [, , \"590(?:0[079]|[14]3|[27][79]|30|5[0-268]|87)\\\\d{4}\", , , , \"590271234\"], [, , \"69(?:0\\\\d\\\\d|1(?:2[29]|3[0-5]))\\\\d{4}\", , , , \"690001234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"MF\", 590, \"00\", \"0\", , , \"0\", , , , , , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , ,\n, , , , , , [-1]]], MG:[, [, , \"[23]\\\\d{8}\", , , , , , , [9], [7]], [, , \"2072[29]\\\\d{4}|20(?:2\\\\d|4[47]|5[3467]|6[279]|7[35]|8[268]|9[245])\\\\d{5}\", , , , \"202123456\", , , , [7]], [, , \"3[2-49]\\\\d{7}\", , , , \"321234567\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"22\\\\d{7}\", , , , \"221234567\"], \"MG\", 261, \"00\", \"0\", , , \"0|([24-9]\\\\d{6})$\", \"20$1\", , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{3})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[23]\"], \"0$1\"]], , [,\n, , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MH:[, [, , \"329\\\\d{4}|(?:[256]\\\\d|45)\\\\d{5}\", , , , , , , [7]], [, , \"(?:247|528|625)\\\\d{4}\", , , , \"2471234\"], [, , \"(?:(?:23|54)5|329|45[56])\\\\d{4}\", , , , \"2351234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"635\\\\d{4}\", , , , \"6351234\"], \"MH\", 692, \"011\", \"1\", , , \"1\", , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1-$2\", [\"[2-6]\"]]],\n, [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MK:[, [, , \"[2-578]\\\\d{7}\", , , , , , , [8], [6, 7]], [, , \"(?:2(?:[23]\\\\d|5[0-24578]|6[01]|82)|3(?:1[3-68]|[23][2-68]|4[23568])|4(?:[23][2-68]|4[3-68]|5[2568]|6[25-8]|7[24-68]|8[4-68]))\\\\d{5}\", , , , \"22012345\", , , , [6, 7]], [, , \"7(?:(?:[0-25-8]\\\\d|3[2-4]|9[23])\\\\d|4(?:21|60))\\\\d{4}\", , , , \"72345678\"], [, , \"800\\\\d{5}\", , , , \"80012345\"], [, , \"5[02-9]\\\\d{6}\", , , , \"50012345\"],\n[, , \"8(?:0[1-9]|[1-9]\\\\d)\\\\d{5}\", , , , \"80123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"MK\", 389, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d)(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"2\"], \"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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], ML:[, [, , \"(?:[246-9]\\\\d|50)\\\\d{6}\", , , , , , , [8]],\n[, , \"2(?:07[0-8]|12[67])\\\\d{4}|(?:2(?:02|1[4-689])|4(?:0[0-4]|4[1-39]))\\\\d{5}\", , , , \"20212345\"], [, , \"2(?:079|17\\\\d)\\\\d{4}|(?:50|[679]\\\\d|8[239])\\\\d{6}\", , , , \"65012345\"], [, , \"80\\\\d{6}\", , , , \"80012345\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"ML\", 223, \"00\", , , , , , , , [[, \"(\\\\d{4})\", \"$1\", [\"67[057-9]|74[045]\", \"67(?:0[09]|[59]9|77|8[89])|74(?:0[02]|44|55)\"]], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[24-9]\"]]],\n[[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[24-9]\"]]], [, , , , , , , , , [-1]], , , [, , \"80\\\\d{6}\"], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MM:[, [, , \"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], [5]], [, , \"(?:1(?:(?:2\\\\d|3[56]|[89][0-6])\\\\d|4(?:2[2-469]|39|46|6[25]|7[0-2])|6)|2(?:2(?:00|8[34])|4(?:0\\\\d|2[246]|39|46|62|7[0-2])|51\\\\d\\\\d)|4(?:2(?:2\\\\d\\\\d|48[0-2])|[34]20\\\\d)|6(?:0(?:[23]|88\\\\d)|(?:124|320|[56]2\\\\d)\\\\d|247[23]|4(?:2[04]\\\\d|47[23])|7(?:(?:3\\\\d|8[01459])\\\\d|4(?:39|60|7[01])))|8(?:[1-3]2\\\\d|5(?:2\\\\d|4[1-9]|51))\\\\d)\\\\d{4}|5(?:2(?:2\\\\d{5,6}|47[023]\\\\d{4})|(?:347[23]|42(?:1|86)|(?:522|[68]20)\\\\d|7(?:20\\\\d|48[0-2])|9(?:20\\\\d|47[01]))\\\\d{4})|7(?:120\\\\d{4,5}|(?:425\\\\d|5(?:202|96\\\\d))\\\\d{4})|(?:(?:1[2-6]\\\\d|4(?:2[24-8]|356|[46][2-6]|5[35])|5(?:[27][2-8]|3[2-68]|4[25-8]|5[23]|6[2-4]|8[25-7]|9[2-7])|6(?:[19]20|42[03-6]|(?:52|7[45])\\\\d)|7(?:[04][25-8]|[15][235-7]|22|3[2-4]))\\\\d|8(?:[135]2\\\\d\\\\d|2(?:2\\\\d\\\\d|320)))\\\\d{3}|25\\\\d{5,6}|(?:2[2-9]|43[235-7]|6(?:1[2356]|[24][2-6]|3[256]|5[2-4]|6[2-8]|7[235-7]|8[245]|9[24])|8(?:1[235689]|2[2-8]|32|4[24-7]|5[245]|6[23]))\\\\d{4}|(?:4[35]|5[48]|63|7[0145]|8[13])470\\\\d{4}|(?:4[35]|5[48]|63|7[0145]|8[13])4\\\\d{4}\",\n, , , \"1234567\", , , [6, 7, 8, 9], [5]], [, , \"(?:17[01]|9(?:2(?:[0-4]|[56]\\\\d\\\\d)|(?:3(?:[0-36]|4\\\\d)|6[7-9]\\\\d|7(?:3|5[0-2]|[6-9]\\\\d)|8(?:8[7-9]|9\\\\d))\\\\d|4(?:(?:[0245]\\\\d|[1379])\\\\d|88)|5[0-6]|9(?:[089]|[5-7]\\\\d\\\\d))\\\\d)\\\\d{4}|9[69]1\\\\d{6}|9[68]\\\\d{6}\", , , , \"92123456\", , , [7, 8, 9, 10]], [, , \"80080(?:[01][1-9]|2\\\\d)\\\\d{3}\", , , , \"8008001234\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"1333\\\\d{4}|[12]468\\\\d{4}\", , , , \"13331234\", , , [8]],\n\"MM\", 95, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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})\",\n\"$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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MN:[, [, , \"[12]\\\\d{7,9}|[57-9]\\\\d{7}\", , , , , , , [8, 9, 10], [4, 5, 6]], [, , \"[12](?:3[2-8]|4[2-68]|5[1-4689])\\\\d{6,7}|(?:11(?:3\\\\d|4[568])|(?:(?:21|5[0568])\\\\d|70[0-5])\\\\d)\\\\d{4}|[12]2(?:[1-3]\\\\d{5,6}|7\\\\d{6})\", , , , \"50123456\", ,\n, , [4, 5, 6]], [, , \"(?:8(?:[05689]\\\\d|3[01])|9(?:[014-9]\\\\d|20|3[0-4]))\\\\d{5}\", , , , \"88123456\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"7(?:100|5(?:0[0579]|1[015]|[389]5|[57][57])|(?:6[0167]|7\\\\d|8[01])\\\\d)\\\\d{4}\", , , , \"75153456\", , , [8]], \"MN\", 976, \"001\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{4})\", \"$1 $2 $3\", [\"[12]1\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[57-9]\"]], [, \"(\\\\d{3})(\\\\d{5,6})\", \"$1 $2\",\n[\"[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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MO:[, [, , \"(?:28|[68]\\\\d)\\\\d{6}\", , , , , , , [8]], [, , \"(?:28[2-57-9]|8(?:11|[2-57-9]\\\\d))\\\\d{5}\", , , , \"28212345\"], [, , \"6(?:[2356]\\\\d\\\\d|8(?:[02][5-9]|[1478]\\\\d|[356][0-4]))\\\\d{4}\",\n, , , \"66123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"MO\", 853, \"00\", , , , , , , , [[, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[268]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MP:[, [, , \"[58]\\\\d{9}|(?:67|90)0\\\\d{7}\", , , , , , , [10], [7]], [, , \"670(?:2(?:3[3-7]|56|8[5-8])|32[1-38]|4(?:33|8[348])|5(?:32|55|88)|6(?:64|70|82)|78[3589]|8[3-9]8|989)\\\\d{4}\",\n, , , \"6702345678\", , , , [7]], [, , \"670(?:2(?:3[3-7]|56|8[5-8])|32[1-38]|4(?:33|8[348])|5(?:32|55|88)|6(?:64|70|82)|78[3589]|8[3-9]8|989)\\\\d{4}\", , , , \"6702345678\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"MP\", 1, \"011\", \"1\", , , \"1|([2-9]\\\\d{6})$\", \"670$1\", , 1, , , [, , , , , , , , , [-1]], ,\n\"670\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MQ:[, [, , \"(?:596|69\\\\d)\\\\d{6}\", , , , , , , [9]], [, , \"596(?:0[0-7]|10|2[7-9]|3[05-9]|4[0-46-8]|[5-7]\\\\d|8[09]|9[4-8])\\\\d{4}\", , , , \"596301234\"], [, , \"69(?:6(?:[0-47-9]\\\\d|5[0-6]|6[0-4])|727)\\\\d{4}\", , , , \"696201234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"MQ\", 596, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\n\"$1 $2 $3 $4\", [\"[56]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MR:[, [, , \"(?:[2-4]\\\\d\\\\d|800)\\\\d{5}\", , , , , , , [8]], [, , \"(?:25[08]|35\\\\d|45[1-7])\\\\d{5}\", , , , \"35123456\"], [, , \"[2-4][0-46-9]\\\\d{6}\", , , , \"22123456\"], [, , \"800\\\\d{5}\", , , , \"80012345\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"MR\", 222, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\n\"$1 $2 $3 $4\", [\"[2-48]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MS:[, [, , \"66449\\\\d{5}|(?:[58]\\\\d\\\\d|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"664491\\\\d{4}\", , , , \"6644912345\", , , , [7]], [, , \"66449[2-6]\\\\d{4}\", , , , \"6644923456\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\",\n, , , \"5002345678\"], [, , , , , , , , , [-1]], \"MS\", 1, \"011\", \"1\", , , \"1|(4\\\\d{6})$\", \"664$1\", , , , , [, , , , , , , , , [-1]], , \"664\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MT:[, [, , \"3550\\\\d{4}|(?:[2579]\\\\d\\\\d|800)\\\\d{5}\", , , , , , , [8]], [, , \"2(?:0(?:[19]\\\\d|3[1-4]|6[059])|[1-357]\\\\d\\\\d)\\\\d{4}\", , , , \"21001234\"], [, , \"(?:7(?:210|[79]\\\\d\\\\d)|9(?:2(?:1[01]|31)|69[67]|8(?:1[1-3]|89|97)|9\\\\d\\\\d))\\\\d{4}\", , , , \"96961234\"], [, , \"800[3467]\\\\d{4}\",\n, , , \"80071234\"], [, , \"5(?:0(?:0(?:37|43)|(?:6\\\\d|70|9[0168])\\\\d)|[12]\\\\d0[1-5])\\\\d{3}\", , , , \"50037123\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"3550\\\\d{4}\", , , , \"35501234\"], \"MT\", 356, \"00\", , , , , , , , [[, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[2357-9]\"]]], , [, , \"7117\\\\d{4}\", , , , \"71171234\"], , , [, , , , , , , , , [-1]], [, , \"501\\\\d{5}\", , , , \"50112345\"], , , [, , , , , , , , , [-1]]], MU:[, [, , \"(?:[2-468]|5\\\\d)\\\\d{6}\", , , , , , , [7, 8]], [, , \"(?:2(?:[03478]\\\\d|1[0-7]|6[0-79])|4(?:[013568]\\\\d|2[4-7])|54(?:[34]\\\\d|71)|6\\\\d\\\\d|8(?:14|3[129]))\\\\d{4}\",\n, , , \"54480123\"], [, , \"5(?:4(?:2[1-389]|7[1-9])|87[15-8])\\\\d{4}|5(?:2[589]|4[3489]|7\\\\d|8[0-689]|9[0-8])\\\\d{5}\", , , , \"52512345\", , , [8]], [, , \"80[0-2]\\\\d{4}\", , , , \"8001234\", , , [7]], [, , \"30\\\\d{5}\", , , , \"3012345\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"3(?:20|9\\\\d)\\\\d{4}\", , , , \"3201234\", , , [7]], \"MU\", 230, \"0(?:0|[24-7]0|3[03])\", , , , , , \"020\", , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[2-46]|8[013]\"]], [, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"5\"]]], , [, , , ,\n, , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MV:[, [, , \"(?:800|9[0-57-9]\\\\d)\\\\d{7}|[34679]\\\\d{6}\", , , , , , , [7, 10]], [, , \"(?:3(?:0[0-3]|3[0-59])|6(?:[57][02468]|6[024-68]|8[024689]))\\\\d{4}\", , , , \"6701234\", , , [7]], [, , \"46[46]\\\\d{4}|(?:7[2-9]|9[13-9])\\\\d{5}\", , , , \"7712345\", , , [7]], [, , \"800\\\\d{7}\", , , , \"8001234567\", , , [10]], [, , \"900\\\\d{7}\", , , , \"9001234567\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]],\n[, , , , , , , , , [-1]], \"MV\", 960, \"0(?:0|19)\", , , , , , \"00\", , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1-$2\", [\"[3467]|9[13-9]\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[89]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"4[05]0\\\\d{4}\", , , , \"4001234\", , , [7]], , , [, , , , , , , , , [-1]]], MW:[, [, , \"1\\\\d{6}(?:\\\\d{2})?|(?:[23]1|77|88|99)\\\\d{7}\", , , , , , , [7, 9]], [, , \"(?:1[2-9]|21\\\\d\\\\d)\\\\d{5}\", , , , \"1234567\"], [, , \"111\\\\d{6}|(?:77|88|99)\\\\d{7}\", , , , \"991234567\",\n, , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"31\\\\d{7}\", , , , \"310123456\", , , [9]], \"MW\", 265, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"3\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[17-9]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]],\n[, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MX:[, [, , \"(?:1(?:[01467]\\\\d|[2359][1-9]|8[1-79])|[2-9]\\\\d)\\\\d{8}\", , , , , , , [10, 11], [7, 8]], [, , \"(?:2(?:0[01]|2[1-9]|3[1-35-8]|4[13-9]|7[1-689]|8[1-578]|9[467])|3(?:1[1-79]|[2458][1-9]|3\\\\d|7[1-8]|9[1-5])|4(?:1[1-57-9]|[24-7][1-9]|3[1-8]|8[1-35-9]|9[2-689])|5(?:[56]\\\\d|88|9[1-79])|6(?:1[2-68]|[2-4][1-9]|5[1-3689]|6[1-57-9]|7[1-7]|8[67]|9[4-8])|7(?:[1-467][1-9]|5[13-9]|8[1-69]|9[17])|8(?:1\\\\d|2[13-689]|3[1-6]|4[124-6]|6[1246-9]|7[1-378]|9[12479])|9(?:1[346-9]|2[1-4]|3[2-46-8]|5[1348]|[69][1-9]|7[12]|8[1-8]))\\\\d{7}\",\n, , , \"2001234567\", , , [10], [7, 8]], [, , \"(?:1(?:2(?:2[1-9]|3[1-35-8]|4[13-9]|7[1-689]|8[1-578]|9[467])|3(?:1[1-79]|[2458][1-9]|3\\\\d|7[1-8]|9[1-5])|4(?:1[1-57-9]|[24-7][1-9]|3[1-8]|8[1-35-9]|9[2-689])|5(?:[56]\\\\d|88|9[1-79])|6(?:1[2-68]|[2-4][1-9]|5[1-3689]|6[1-57-9]|7[1-7]|8[67]|9[4-8])|7(?:[1-467][1-9]|5[13-9]|8[1-69]|9[17])|8(?:1\\\\d|2[13-689]|3[1-6]|4[124-6]|6[1246-9]|7[1-378]|9[12479])|9(?:1[346-9]|2[1-4]|3[2-46-8]|5[1348]|[69][1-9]|7[12]|8[1-8]))|2(?:2[1-9]|3[1-35-8]|4[13-9]|7[1-689]|8[1-578]|9[467])|3(?:1[1-79]|[2458][1-9]|3\\\\d|7[1-8]|9[1-5])|4(?:1[1-57-9]|[24-7][1-9]|3[1-8]|8[1-35-9]|9[2-689])|5(?:[56]\\\\d|88|9[1-79])|6(?:1[2-68]|[2-4][1-9]|5[1-3689]|6[1-57-9]|7[1-7]|8[67]|9[4-8])|7(?:[1-467][1-9]|5[13-9]|8[1-69]|9[17])|8(?:1\\\\d|2[13-689]|3[1-6]|4[124-6]|6[1246-9]|7[1-378]|9[12479])|9(?:1[346-9]|2[1-4]|3[2-46-8]|5[1348]|[69][1-9]|7[12]|8[1-8]))\\\\d{7}\",\n, , , \"12221234567\", , , , [7, 8]], [, , \"8(?:00|88)\\\\d{7}\", , , , \"8001234567\", , , [10]], [, , \"900\\\\d{7}\", , , , \"9001234567\", , , [10]], [, , \"300\\\\d{7}\", , , , \"3001234567\", , , [10]], [, , \"500\\\\d{7}\", , , , \"5001234567\", , , [10]], [, , , , , , , , , [-1]], \"MX\", 52, \"0[09]\", \"01\", , , \"0(?:[12]|4[45])|1\", , \"00\", , [[, \"(\\\\d{5})\", \"$1\", [\"53\"]], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"33|5[56]|81\"], , , 1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[2-9]\"], , , 1], [, \"(\\\\d)(\\\\d{2})(\\\\d{4})(\\\\d{4})\",\n\"$2 $3 $4\", [\"1(?:33|5[56]|81)\"], , , 1], [, \"(\\\\d)(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$2 $3 $4\", [\"1\"], , , 1]], [[, \"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"33|5[56]|81\"], , , 1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[2-9]\"], , , 1], [, \"(\\\\d)(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$2 $3 $4\", [\"1(?:33|5[56]|81)\"], , , 1], [, \"(\\\\d)(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$2 $3 $4\", [\"1\"], , , 1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MY:[, [,\n, \"1\\\\d{8,9}|(?:3\\\\d|[4-9])\\\\d{7}\", , , , , , , [8, 9, 10], [6, 7]], [, , \"(?:3(?:2[0-36-9]|3[0-368]|4[0-278]|5[0-24-8]|6[0-467]|7[1246-9]|8\\\\d|9[0-57])\\\\d|4(?:2[0-689]|[3-79]\\\\d|8[1-35689])|5(?:2[0-589]|[3468]\\\\d|5[0-489]|7[1-9]|9[23])|6(?:2[2-9]|3[1357-9]|[46]\\\\d|5[0-6]|7[0-35-9]|85|9[015-8])|7(?:[2579]\\\\d|3[03-68]|4[0-8]|6[5-9]|8[0-35-9])|8(?:[24][2-8]|3[2-5]|5[2-7]|6[2-589]|7[2-578]|[89][2-9])|9(?:0[57]|13|[25-7]\\\\d|[3489][0-8]))\\\\d{5}\", , , , \"323856789\", , , [8, 9], [6, 7]], [, , \"1(?:4400|8(?:47|8[27])[0-4])\\\\d{4}|1(?:0(?:[23568]\\\\d|4[0-6]|7[016-9]|9[0-8])|1(?:[1-5]\\\\d\\\\d|6(?:0[5-9]|[1-9]\\\\d))|(?:[23679][2-9]|4[235-9]|59\\\\d)\\\\d|8(?:1[23]|[236]\\\\d|4[06]|5[7-9]|7[016-9]|8[01]|9[0-8]))\\\\d{5}\",\n, , , \"123456789\", , , [9, 10]], [, , \"1[378]00\\\\d{6}\", , , , \"1300123456\", , , [10]], [, , \"1600\\\\d{6}\", , , , \"1600123456\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"154(?:6(?:0\\\\d|1[0-3])|8(?:[25]1|4[0189]|7[0-4679]))\\\\d{4}\", , , , \"1546012345\", , , [10]], \"MY\", 60, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d)(\\\\d{3})(\\\\d{4})\", \"$1-$2 $3\", [\"[4-79]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3,4})\", \"$1-$2 $3\", [\"1(?:[0249]|[367][2-9]|8[1-9])|8\"], \"0$1\"], [, \"(\\\\d)(\\\\d{4})(\\\\d{4})\",\n\"$1-$2 $3\", [\"3\"], \"0$1\"], [, \"(\\\\d)(\\\\d{3})(\\\\d{2})(\\\\d{4})\", \"$1-$2-$3-$4\", [\"1[36-8]\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1-$2 $3\", [\"15\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1-$2 $3\", [\"1\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MZ:[, [, , \"(?:2|8\\\\d)\\\\d{7}\", , , , , , , [8, 9]], [, , \"2(?:[1346]\\\\d|5[0-2]|[78][12]|93)\\\\d{5}\", , , , \"21123456\", , , [8]], [, , \"8[2-7]\\\\d{7}\", , , , \"821234567\", , , [9]],\n[, , \"800\\\\d{6}\", , , , \"800123456\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"MZ\", 258, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{3,4})\", \"$1 $2 $3\", [\"2|8[2-7]\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"8\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], NA:[, [, , \"[68]\\\\d{7,8}\", , , , , , , [8, 9]], [, , \"6(?:1(?:[02-4]\\\\d\\\\d|17)|2(?:17|54\\\\d|69|70)|3(?:17|2[0237]\\\\d|34|6[289]|7[01]|81)|4(?:17|(?:27|41|5[25])\\\\d|69|7[01])|5(?:17|2[236-8]\\\\d|69|7[01])|6(?:17|26\\\\d|38|42|69|7[01])|7(?:17|(?:2[2-4]|30)\\\\d|6[89]|7[01]))\\\\d{4}|6(?:1(?:2[2-7]|3[01378]|4[0-4]|69|7[014])|25[0-46-8]|32\\\\d|4(?:2[0-27]|4[016]|5[0-357])|52[02-9]|62[56]|7(?:2[2-69]|3[013]))\\\\d{4}\",\n, , , \"61221234\"], [, , \"(?:60|8[1245])\\\\d{7}\", , , , \"811234567\", , , [9]], [, , \"80\\\\d{7}\", , , , \"800123456\", , , [9]], [, , \"8701\\\\d{5}\", , , , \"870123456\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"8(?:3\\\\d\\\\d|86)\\\\d{5}\", , , , \"88612345\"], \"NA\", 264, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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})\",\n\"$1 $2 $3\", [\"8\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], NC:[, [, , \"[2-57-9]\\\\d{5}\", , , , , , , [6]], [, , \"(?:2[03-9]|3[0-5]|4[1-7]|88)\\\\d{4}\", , , , \"201234\"], [, , \"(?:5[0-4]|[79]\\\\d|8[0-79])\\\\d{4}\", , , , \"751234\"], [, , , , , , , , , [-1]], [, , \"36\\\\d{4}\", , , , \"366711\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"NC\", 687, \"00\", , , , , , , , [[, \"(\\\\d{3})\", \"$1\", [\"5[6-8]\"]],\n[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1.$2.$3\", [\"[2-57-9]\"]]], [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1.$2.$3\", [\"[2-57-9]\"]]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], NE:[, [, , \"[0289]\\\\d{7}\", , , , , , , [8]], [, , \"2(?:0(?:20|3[1-8]|4[13-5]|5[14]|6[14578]|7[1-578])|1(?:4[145]|5[14]|6[14-68]|7[169]|88))\\\\d{4}\", , , , \"20201234\"], [, , \"(?:8[014589]|9\\\\d)\\\\d{6}\", , , , \"93123456\"], [, , \"08\\\\d{6}\", , , , \"08123456\"], [, , \"09\\\\d{6}\",\n, , , \"09123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"NE\", 227, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"08\"]], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[089]|2[01]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], NF:[, [, , \"[13]\\\\d{5}\", , , , , , , [6], [5]], [, , \"(?:1(?:06|17|28|39)|3[0-2]\\\\d)\\\\d{3}\", , , , \"106609\", , , , [5]], [, , \"3[58]\\\\d{4}\",\n, , , \"381234\", , , , [5]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"NF\", 672, \"00\", , , , \"([0-258]\\\\d{4})$\", \"3$1\", , , [[, \"(\\\\d{2})(\\\\d{4})\", \"$1 $2\", [\"1\"]], [, \"(\\\\d)(\\\\d{5})\", \"$1 $2\", [\"3\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], NG:[, [, , \"(?:[124-7]|9\\\\d{3})\\\\d{6}|[1-9]\\\\d{7}|[78]\\\\d{9,13}\", , , , , , , [7, 8, 10, 11, 12,\n13, 14], [5, 6]], [, , \"(?:(?:[1-356]\\\\d|4[02-8]|7[0-79]|8[2-9])\\\\d|9(?:0[3-9]|[1-9]\\\\d))\\\\d{5}|(?:[12]\\\\d|4[147]|5[14579]|6[1578]|7[0-3578])\\\\d{5}\", , , , \"18040123\", , , [7, 8], [5, 6]], [, , \"(?:707[0-3]|8(?:01|19)[01])\\\\d{6}|(?:70[1-689]|8(?:0[2-9]|1[0-8])|90[1-35-9])\\\\d{7}\", , , , \"8021234567\", , , [10]], [, , \"800\\\\d{7,11}\", , , , \"80017591759\", , , [10, 11, 12, 13, 14]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"NG\", 234, \"009\",\n\"0\", , , \"0\", , , , [[, \"(\\\\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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"700\\\\d{7,11}\", ,\n, , \"7001234567\", , , [10, 11, 12, 13, 14]], , , [, , , , , , , , , [-1]]], NI:[, [, , \"(?:1800|[25-8]\\\\d{3})\\\\d{4}\", , , , , , , [8]], [, , \"2\\\\d{7}\", , , , \"21234567\"], [, , \"(?:5(?:5[0-7]|[78]\\\\d)|6(?:20|3[035]|4[045]|5[05]|77|8[1-9]|9[059])|(?:7[5-8]|8\\\\d)\\\\d)\\\\d{5}\", , , , \"81234567\"], [, , \"1800\\\\d{4}\", , , , \"18001234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"NI\", 505, \"00\", , , , , , , , [[, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[125-8]\"]]],\n, [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], NL:[, [, , \"(?:[124-7]\\\\d\\\\d|3(?:[02-9]\\\\d|1[0-8]))\\\\d{6}|[89]\\\\d{6,9}|1\\\\d{4,5}\", , , , , , , [5, 6, 7, 8, 9, 10]], [, , \"(?:1(?:[035]\\\\d|1[13-578]|6[124-8]|7[24]|8[0-467])|2(?:[0346]\\\\d|2[2-46-9]|5[125]|9[479])|3(?:[03568]\\\\d|1[3-8]|2[01]|4[1-8])|4(?:[0356]\\\\d|1[1-368]|7[58]|8[15-8]|9[23579])|5(?:[0358]\\\\d|[19][1-9]|2[1-57-9]|4[13-8]|6[126]|7[0-3578])|7\\\\d\\\\d)\\\\d{6}\", , , , \"101234567\",\n, , [9]], [, , \"6[1-58]\\\\d{7}\", , , , \"612345678\", , , [9]], [, , \"800\\\\d{4,7}\", , , , \"8001234\", , , [7, 8, 9, 10]], [, , \"90[069]\\\\d{4,7}\", , , , \"9061234\", , , [7, 8, 9, 10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"(?:85|91)\\\\d{7}\", , , , \"851234567\", , , [9]], \"NL\", 31, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{4})\", \"$1\", [\"1[238]|[34]\"]], [, \"(\\\\d{2})(\\\\d{3,4})\", \"$1 $2\", [\"14\"]], [, \"(\\\\d{6})\", \"$1\", [\"1\"]], [, \"(\\\\d{3})(\\\\d{4,7})\", \"$1 $2\", [\"[89]0\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{7})\",\n\"$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-57-9]\"], \"0$1\"]], [[, \"(\\\\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})\",\n\"$1 $2 $3\", [\"[1-57-9]\"], \"0$1\"]], [, , \"66\\\\d{7}\", , , , \"662345678\", , , [9]], , , [, , \"140(?:1[035]|2[0346]|3[03568]|4[0356]|5[0358]|8[458])|140(?:1[16-8]|2[259]|3[124]|4[17-9]|5[124679]|7)\\\\d\", , , , , , , [5, 6]], [, , \"140(?:1[035]|2[0346]|3[03568]|4[0356]|5[0358]|8[458])|(?:140(?:1[16-8]|2[259]|3[124]|4[17-9]|5[124679]|7)|8[478]\\\\d{6})\\\\d\", , , , \"14020\", , , [5, 6, 9]], , , [, , , , , , , , , [-1]]], NO:[, [, , \"(?:0|[2-9]\\\\d{3})\\\\d{4}\", , , , , , , [5, 8]], [, , \"(?:2[1-4]|3[1-3578]|5[1-35-7]|6[1-4679]|7[0-8])\\\\d{6}\",\n, , , \"21234567\", , , [8]], [, , \"(?:4[015-8]|5[89]|9\\\\d)\\\\d{6}\", , , , \"40612345\", , , [8]], [, , \"80[01]\\\\d{5}\", , , , \"80012345\", , , [8]], [, , \"82[09]\\\\d{5}\", , , , \"82012345\", , , [8]], [, , \"810(?:0[0-6]|[2-8]\\\\d)\\\\d{3}\", , , , \"81021234\", , , [8]], [, , \"880\\\\d{5}\", , , , \"88012345\", , , [8]], [, , \"85[0-5]\\\\d{5}\", , , , \"85012345\", , , [8]], \"NO\", 47, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{3})\", \"$1 $2 $3\", [\"[489]\"]], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[235-7]\"]]],\n, [, , , , , , , , , [-1]], 1, \"[02-689]|7[0-8]\", [, , , , , , , , , [-1]], [, , \"(?:0[2-9]|81(?:0(?:0[7-9]|1\\\\d)|5\\\\d\\\\d))\\\\d{3}\", , , , \"02000\"], , , [, , \"81[23]\\\\d{5}\", , , , \"81212345\", , , [8]]], NP:[, [, , \"9\\\\d{9}|[1-9]\\\\d{7}\", , , , , , , [8, 10], [6, 7]], [, , \"1[0-6]\\\\d{6}|(?:2[13-79]|3[135-8]|4[146-9]|5[135-7]|6[13-9]|7[15-9]|8[1-46-9]|9[1-79])[2-6]\\\\d{5}\", , , , \"14567890\", , , [8], [6, 7]], [, , \"9(?:6[0-3]|7[245]|8[0-24-68])\\\\d{7}\", , , , \"9841234567\", , , [10]], [, , , , , , , , ,\n[-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"NP\", 977, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d)(\\\\d{7})\", \"$1-$2\", [\"1[2-6]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{6})\", \"$1-$2\", [\"[1-8]|9(?:[1-579]|6[2-6])\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{7})\", \"$1-$2\", [\"9\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], NR:[, [, , \"(?:444|55\\\\d|888)\\\\d{4}\", , , , , , , [7]], [, , \"(?:444|888)\\\\d{4}\",\n, , , \"4441234\"], [, , \"55[4-9]\\\\d{4}\", , , , \"5551234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"NR\", 674, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[458]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], NU:[, [, , \"(?:[47]|888\\\\d)\\\\d{3}\", , , , , , , [4, 7]], [, , \"[47]\\\\d{3}\", , , , \"7012\", , , [4]], [, , \"888[4-9]\\\\d{3}\",\n, , , \"8884012\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"NU\", 683, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"8\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], NZ:[, [, , \"[28]\\\\d{7,9}|[346]\\\\d{7}|(?:508|[79]\\\\d)\\\\d{6,7}\", , , , , , , [8, 9, 10], [7]], [, , \"24099\\\\d{3}|(?:3[2-79]|[49][2-9]|6[235-9]|7[2-57-9])\\\\d{6}\",\n, , , \"32345678\", , , [8], [7]], [, , \"2[0-28]\\\\d{8}|2[0-27-9]\\\\d{7}|21\\\\d{6}\", , , , \"211234567\"], [, , \"508\\\\d{6,7}|80\\\\d{6,8}\", , , , \"800123456\"], [, , \"90\\\\d{6,7}\", , , , \"900123456\", , , [8, 9]], [, , , , , , , , , [-1]], [, , \"70\\\\d{7}\", , , , \"701234567\", , , [9]], [, , , , , , , , , [-1]], \"NZ\", 64, \"0(?:0|161)\", \"0\", , , \"0\", , \"00\", , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{3})\", \"$1 $2 $3\", [\"[89]0\"], \"0$1\"], [, \"(\\\\d)(\\\\d{3})(\\\\d{4})\", \"$1-$2 $3\", [\"24|[346]|7[2-57-9]|9[2-9]\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3,4})\",\n\"$1 $2 $3\", [\"2(?:10|74)|[59]|80\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3,4})(\\\\d{4})\", \"$1 $2 $3\", [\"2[028]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3,5})\", \"$1 $2 $3\", [\"2(?:[169]|7[0-35-9])|7|86\"], \"0$1\"]], , [, , \"[28]6\\\\d{6,7}\", , , , \"26123456\", , , [8, 9]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], OM:[, [, , \"(?:[279]\\\\d{3}|500)\\\\d{4}|8007\\\\d{4,5}\", , , , , , , [7, 8, 9]], [, , \"2[2-6]\\\\d{6}\", , , , \"23123456\", , , [8]], [, , \"90[1-9]\\\\d{5}|(?:7[129]|9[1-9])\\\\d{6}\",\n, , , \"92123456\", , , [8]], [, , \"500\\\\d{4}|8007\\\\d{4,5}\", , , , \"80071234\"], [, , \"900\\\\d{5}\", , , , \"90012345\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"OM\", 968, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4,6})\", \"$1 $2\", [\"[58]\"]], [, \"(\\\\d{2})(\\\\d{6})\", \"$1 $2\", [\"2\"]], [, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[79]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], PA:[, [, , \"(?:[1-57-9]|6\\\\d)\\\\d{6}\",\n, , , , , , [7, 8]], [, , \"(?:1(?:0\\\\d|1[479]|2[37]|3[0137]|4[17]|5[05]|[68][58]|7[0167]|9[39])|2(?:[0235-79]\\\\d|1[0-7]|4[013-9]|8[026-9])|3(?:[089]\\\\d|1[014-7]|2[0-35]|33|4[0-579]|55|6[068]|7[06-8])|4(?:00|3[0-579]|4\\\\d|7[0-57-9])|5(?:[01]\\\\d|2[0-7]|[56]0|79)|7(?:0[09]|2[0-26-8]|3[03]|4[04]|5[05-9]|6[05]|7[0-24-9]|8[7-9]|90)|8(?:09|2[89]|3\\\\d|4[0-24-689]|5[014]|8[02])|9(?:0[5-9]|1[0135-8]|2[036-9]|3[35-79]|40|5[0457-9]|6[05-9]|7[04-9]|8[35-8]|9\\\\d))\\\\d{4}\", , , , \"2001234\", , , [7]], [, , \"(?:1[16]1|21[89]|6(?:[02-9]\\\\d|1[0-6])\\\\d|8(?:1[01]|7[23]))\\\\d{4}\",\n, , , \"61234567\"], [, , \"800\\\\d{4}\", , , , \"8001234\", , , [7]], [, , \"(?:8(?:22|55|60|7[78]|86)|9(?:00|81))\\\\d{4}\", , , , \"8601234\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"PA\", 507, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1-$2\", [\"[1-57-9]\"]], [, \"(\\\\d{4})(\\\\d{4})\", \"$1-$2\", [\"6\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], PE:[, [, , \"(?:[14-8]|9\\\\d)\\\\d{7}\", , , , , ,\n, [8, 9], [6, 7]], [, , \"19(?:[02-68]\\\\d|1[035-9]|7[0-689]|9[1-9])\\\\d{4}|(?:1[0-8]|4[1-4]|5[1-46]|6[1-7]|7[2-46]|8[2-4])\\\\d{6}\", , , , \"11234567\", , , [8], [6, 7]], [, , \"9\\\\d{8}\", , , , \"912345678\", , , [9]], [, , \"800\\\\d{5}\", , , , \"80012345\", , , [8]], [, , \"805\\\\d{5}\", , , , \"80512345\", , , [8]], [, , \"801\\\\d{5}\", , , , \"80112345\", , , [8]], [, , \"80[24]\\\\d{5}\", , , , \"80212345\", , , [8]], [, , , , , , , , , [-1]], \"PE\", 51, \"19(?:1[124]|77|90)00\", \"0\", \" Anexo \", , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{5})\",\n\"$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\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], PF:[, [, , \"[48]\\\\d{7}|4\\\\d{5}\", , , , , , , [6, 8]], [, , \"4(?:[09][4-689]\\\\d|4)\\\\d{4}\", , , , \"40412345\"], [, , \"8[7-9]\\\\d{6}\", , , , \"87123456\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]],\n[, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"PF\", 689, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3\", [\"44\"]], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[48]\"]]], , [, , , , , , , , , [-1]], , , [, , \"44\\\\d{4}\", , , , , , , [6]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], PG:[, [, , \"(?:180|[78]\\\\d{3})\\\\d{4}|(?:[2-589]\\\\d|64)\\\\d{5}\", , , , , , , [7, 8]], [, , \"(?:64[1-9]|7730|85[02-46-9])\\\\d{4}|(?:3[0-2]|4[257]|5[34]|77[0-24]|9[78])\\\\d{5}\",\n, , , \"3123456\"], [, , \"775\\\\d{5}|(?:7[0-689]|81)\\\\d{6}\", , , , \"70123456\", , , [8]], [, , \"180\\\\d{4}\", , , , \"1801234\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"2(?:0[0-47]|7[568])\\\\d{4}\", , , , \"2751234\", , , [7]], \"PG\", 675, \"00|140[1-3]\", , , , , , \"00\", , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"18|[2-69]|85\"]], [, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[78]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [,\n, , , , , , , , [-1]]], PH:[, [, , \"1800\\\\d{7,9}|(?:2|[89]\\\\d{4})\\\\d{5}|[2-8]\\\\d{8}|[28]\\\\d{7}\", , , , , , , [6, 8, 9, 10, 11, 12, 13], [4, 5, 7]], [, , \"(?:(?:2[3-8]|3[2-68]|4[2-9]|5[2-6]|6[2-58]|7[24578])\\\\d{3}|88(?:22\\\\d\\\\d|42))\\\\d{4}|2\\\\d{5}(?:\\\\d{2})?|8[2-8]\\\\d{7}\", , , , \"21234567\", , , [6, 8, 9, 10], [4, 5, 7]], [, , \"(?:81[37]|9(?:0[5-9]|1[0-24-9]|2[0-35-9]|[35]\\\\d|4[235-9]|6[0-25-8]|7[1-9]|8[19]|9[4-9]))\\\\d{7}\", , , , \"9051234567\", , , [10]], [, , \"1800\\\\d{7,9}\", , , , \"180012345678\", ,\n, [11, 12, 13]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"PH\", 63, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d)(\\\\d{5})\", \"$1 $2\", [\"2\"], \"(0$1)\"], [, \"(\\\\d)(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"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})\",\n\"$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\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], PK:[,\n[, , \"122\\\\d{6}|[24-8]\\\\d{10,11}|9(?:[013-9]\\\\d{8,10}|2(?:[01]\\\\d\\\\d|2(?:[025-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], [5, 6, 7]], [, , \"(?:(?:21|42)[2-9]|58[126])\\\\d{7}|(?:2[25]|4[0146-9]|5[1-35-7]|6[1-8]|7[14]|8[16]|91)[2-9]\\\\d{6}|(?: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]))[2-9]\\\\d{5,6}\", , , , \"2123456789\", , ,\n[9, 10], [5, 6, 7, 8]], [, , \"3(?:[014]\\\\d|2[0-5]|3[0-7]|55|64)\\\\d{7}\", , , , \"3012345678\", , , [10]], [, , \"800\\\\d{5}\", , , , \"80012345\", , , [8]], [, , \"900\\\\d{5}\", , , , \"90012345\", , , [8]], [, , , , , , , , , [-1]], [, , \"122\\\\d{6}\", , , , \"122044444\", , , [9]], [, , , , , , , , , [-1]], \"PK\", 92, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{2})\", \"$1 $2 $3\", [\"[89]0\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d{5})\", \"$1 $2\", [\"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]\"],\n\"(0$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{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})\",\n\"$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)\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"(?:2(?:[125]|3[2358]|4[2-4]|9[2-8])|4(?:[0-246-9]|5[3479])|5(?:[1-35-7]|4[2-467])|6(?:0[468]|[1-8])|7(?:[14]|2[236])|8(?:[16]|2[2-689]|3[23578]|4[3478]|5[2356])|9(?:1|22|3[27-9]|4[2-6]|6[3569]|9[2-7]))111\\\\d{6}\", , , , \"21111825888\", , , [11, 12]], , , [, , , , , , , , , [-1]]],\nPL:[, [, , \"[1-57-9]\\\\d{6}(?:\\\\d{2})?|6\\\\d{5,8}\", , , , , , , [6, 7, 8, 9]], [, , \"(?: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])(?:[02-9]\\\\d{6}|1(?:[0-8]\\\\d{5}|9\\\\d{3}(?:\\\\d{2})?))\", , , , \"123456789\", , , [7, 9]], [, , \"(?:45|5[0137]|6[069]|7[2389]|88)\\\\d{7}\", , , , \"512345678\", , , [9]], [, , \"800\\\\d{6}\", , , , \"800123456\", , , [9]], [, , \"70[01346-8]\\\\d{6}\", , , , \"701234567\", , , [9]], [, , \"801\\\\d{6}\", , , , \"801234567\", , , [9]], [, , , , , , , , , [-1]], [,\n, \"39\\\\d{7}\", , , , \"391234567\", , , [9]], \"PL\", 48, \"00\", , , , , , , , [[, \"(\\\\d{5})\", \"$1\", [\"19\"]], [, \"(\\\\d{3})(\\\\d{3})\", \"$1 $2\", [\"11|64\"]], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{3})\", \"$1 $2 $3\", [\"(?:1[2-8]|2[2-69]|3[2-4]|4[1-468]|5[24-689]|6[1-3578]|7[14-7]|8[1-79]|9[145])1\", \"(?:1[2-8]|2[2-69]|3[2-4]|4[1-468]|5[24-689]|6[1-3578]|7[14-7]|8[1-79]|9[145])19\"]], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{2,3})\", \"$1 $2 $3\", [\"64\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"39|45|5[0137]|6[0469]|7[02389]|8[08]\"]], [,\n\"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"1[2-8]|[2-8]|9[145]\"]]], , [, , \"64\\\\d{4,7}\", , , , \"641234567\"], , , [, , , , , , , , , [-1]], [, , \"804\\\\d{6}\", , , , \"804123456\", , , [9]], , , [, , , , , , , , , [-1]]], PM:[, [, , \"[45]\\\\d{5}\", , , , , , , [6]], [, , \"(?:4[1-3]|50)\\\\d{4}\", , , , \"430123\"], [, , \"(?:4[02-4]|5[05])\\\\d{4}\", , , , \"551234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"PM\", 508,\n\"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3\", [\"[45]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], PR:[, [, , \"(?:[589]\\\\d\\\\d|787)\\\\d{7}\", , , , , , , [10], [7]], [, , \"(?:787|939)[2-9]\\\\d{6}\", , , , \"7872345678\", , , , [7]], [, , \"(?:787|939)[2-9]\\\\d{6}\", , , , \"7872345678\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002345678\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002345678\"],\n[, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"PR\", 1, \"011\", \"1\", , , \"1\", , , 1, , , [, , , , , , , , , [-1]], , \"787|939\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], PS:[, [, , \"[2489]2\\\\d{6}|(?:1\\\\d|5)\\\\d{8}\", , , , , , , [8, 9, 10], [7]], [, , \"(?:22[2-47-9]|42[45]|82[01458]|92[369])\\\\d{5}\", , , , \"22234567\", , , [8], [7]], [, , \"5[69]\\\\d{7}\", , , , \"599123456\", , , [9]], [, , \"1800\\\\d{6}\",\n, , , \"1800123456\", , , [10]], [, , , , , , , , , [-1]], [, , \"1700\\\\d{6}\", , , , \"1700123456\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"PS\", 970, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], PT:[, [, , \"(?:[26-9]\\\\d|30)\\\\d{7}\",\n, , , , , , [9]], [, , \"2(?:[12]\\\\d|[35][1-689]|4[1-59]|6[1-35689]|7[1-9]|8[1-69]|9[1256])\\\\d{6}\", , , , \"212345678\"], [, , \"9(?:[1-36]\\\\d\\\\d|480)\\\\d{5}\", , , , \"912345678\"], [, , \"80[02]\\\\d{6}\", , , , \"800123456\"], [, , \"(?:6(?:0[178]|4[68])\\\\d|76(?:0[1-57]|1[2-47]|2[237]))\\\\d{5}\", , , , \"760123456\"], [, , \"80(?:8\\\\d|9[1579])\\\\d{5}\", , , , \"808123456\"], [, , \"884[0-4689]\\\\d{5}\", , , , \"884123456\"], [, , \"30\\\\d{7}\", , , , \"301234567\"], \"PT\", 351, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\",\n\"$1 $2 $3\", [\"2[12]\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[236-9]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"70(?:7\\\\d|8[17])\\\\d{5}\", , , , \"707123456\"], , , [, , \"600\\\\d{6}\", , , , \"600110000\"]], PW:[, [, , \"(?:[25-8]\\\\d\\\\d|345|488|900)\\\\d{4}\", , , , , , , [7]], [, , \"(?:2(?:55|77)|345|488|5(?:35|44|87)|6(?:22|54|79)|7(?:33|47)|8(?:24|55|76)|900)\\\\d{4}\", , , , \"2771234\"], [, , \"(?:6[2-4689]0|77\\\\d|88[0-4])\\\\d{4}\", , , , \"6201234\"], [, , , , , , , , , [-1]], [,\n, , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"PW\", 680, \"01[12]\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[2-9]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], PY:[, [, , \"59\\\\d{4,6}|(?:[2-46-9]\\\\d|5[0-8])\\\\d{4,7}\", , , , , , , [6, 7, 8, 9], [5]], [, , \"(?:[26]1|3[289]|4[1246-8]|7[1-3]|8[1-36])\\\\d{5,7}|(?:2(?:2[4-68]|7[15]|9[1-5])|3(?:18|3[167]|4[2357]|51)|4(?:3[12]|5[13]|9[1-47])|5(?:[1-4]\\\\d|5[02-4])|6(?:3[1-3]|44|7[1-46-8])|7(?:4[0-4]|6[1-578]|75|8[0-8])|858)\\\\d{5,6}\",\n, , , \"212345678\", , , [7, 8, 9], [5, 6]], [, , \"9(?:51|6[129]|[78][1-6]|9[1-5])\\\\d{6}\", , , , \"961456789\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"8700[0-4]\\\\d{4}\", , , , \"870012345\", , , [9]], \"PY\", 595, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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[347]|7[46-8]|85\"],\n\"(0$1)\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3,4})\", \"$1 $2 $3\", [\"[26]1|3[289]|4[1246-8]|7[1-3]|8[1-36]\"], \"(0$1)\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"87\"]], [, \"(\\\\d{3})(\\\\d{6})\", \"$1 $2\", [\"9\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[2-8]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"[2-9]0\\\\d{4,7}\", , , , \"201234567\"], , , [, , , , , , , , , [-1]]], QA:[, [, , \"800\\\\d{4}|(?:2|[3-7]\\\\d)\\\\d{6}\", , , , , , , [7, 8]], [, , \"4[04]\\\\d{6}\", , , , \"44123456\",\n, , [8]], [, , \"[35-7]\\\\d{7}\", , , , \"33123456\", , , [8]], [, , \"800\\\\d{4}\", , , , \"8001234\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"QA\", 974, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"2[126]|8\"]], [, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[3-7]\"]]], , [, , \"2(?:[12]\\\\d|61)\\\\d{4}\", , , , \"2123456\", , , [7]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], RE:[, [, , \"(?:26|[68]\\\\d)\\\\d{7}\",\n, , , , , , [9]], [, , \"262\\\\d{6}\", , , , \"262161234\"], [, , \"69(?:2\\\\d\\\\d|3(?:0[0-46]|1[013]|2[0-2]|3[0-39]|4\\\\d|5[05]|6[0-26]|7[0-27]|8[0-8]|9[0-479]))\\\\d{4}\", , , , \"692123456\"], [, , \"80\\\\d{7}\", , , , \"801234567\"], [, , \"89[1-37-9]\\\\d{6}\", , , , \"891123456\"], [, , \"8(?:1[019]|2[0156]|84|90)\\\\d{6}\", , , , \"810123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"RE\", 262, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[268]\"], \"0$1\"]], , [, , , , ,\n, , , , [-1]], 1, \"262|69|8\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], RO:[, [, , \"(?:[237]\\\\d|[89]0)\\\\d{7}|[23]\\\\d{5}\", , , , , , , [6, 9]], [, , \"[23][13-6]\\\\d{7}|(?:2(?:19\\\\d|[3-6]\\\\d9)|31\\\\d\\\\d)\\\\d\\\\d\", , , , \"211234567\"], [, , \"7120\\\\d{5}|7(?:[02-7]\\\\d|1[01]|8[03-8]|99)\\\\d{6}\", , , , \"712034567\", , , [9]], [, , \"800\\\\d{6}\", , , , \"800123456\", , , [9]], [, , \"90[036]\\\\d{6}\", , , , \"900123456\", , , [9]], [, , \"801\\\\d{6}\", , , , \"801123456\", , , [9]], [,\n, , , , , , , , [-1]], [, , , , , , , , , [-1]], \"RO\", 40, \"00\", \"0\", \" int \", , \"0\", , , , [[, \"(\\\\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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"37\\\\d{7}\", , , , \"372123456\", , , [9]], , , [, , , , , , , , , [-1]]], RS:[, [, , \"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}\",\n, , , , , , [6, 7, 8, 9, 10, 11, 12], [4, 5]], [, , \"(?:11[1-9]\\\\d|(?:2[389]|39)(?:0[2-9]|[2-9]\\\\d))\\\\d{3,8}|(?:1[02-9]|2[0-24-7]|3[0-8])[2-9]\\\\d{4,9}\", , , , \"10234567\", , , [7, 8, 9, 10, 11, 12], [4, 5, 6]], [, , \"6(?:[0-689]|7\\\\d)\\\\d{6,7}\", , , , \"601234567\", , , [8, 9, 10]], [, , \"800\\\\d{3,9}\", , , , \"80012345\"], [, , \"(?:78\\\\d|90[0169])\\\\d{3,7}\", , , , \"90012345\", , , [6, 7, 8, 9, 10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"RS\", 381, \"00\", \"0\", , , \"0\",\n, , , [[, \"(\\\\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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"7[06]\\\\d{4,10}\", , , , \"700123456\"], , , [, , , , , , , , , [-1]]], RU:[, [, , \"[347-9]\\\\d{9}\", , , , , , , [10], [7]], [, , \"(?:3(?:0[12]|4[1-35-79]|5[1-3]|65|8[1-58]|9[0145])|4(?:01|1[1356]|2[13467]|7[1-5]|8[1-7]|9[1-689])|8(?:1[1-8]|2[01]|3[13-6]|4[0-8]|5[15]|6[1-35-79]|7[1-37-9]))\\\\d{7}\", , , , \"3011234567\",\n, , , [7]], [, , \"9\\\\d{9}\", , , , \"9123456789\"], [, , \"80[04]\\\\d{7}\", , , , \"8001234567\"], [, , \"80[39]\\\\d{7}\", , , , \"8091234567\"], [, , , , , , , , , [-1]], [, , \"808\\\\d{7}\", , , , \"8081234567\"], [, , , , , , , , , [-1]], \"RU\", 7, \"810\", \"8\", , , \"8\", , \"8~10\", , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1-$2-$3\", [\"[0-79]\"]], [, \"(\\\\d{4})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"7(?:1[0-8]|2[1-9])\", \"7(?:1(?:[0-6]2|7|8[27])|2(?:1[23]|[2-9]2))\", \"7(?:1(?:[0-6]2|7|8[27])|2(?:13[03-69]|62[013-9]))|72[1-57-9]2\"],\n\"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\", [\"[3489]\"],\n\"8 ($1)\", , 1]], [[, \"(\\\\d{4})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"7(?:1[0-8]|2[1-9])\", \"7(?:1(?:[0-6]2|7|8[27])|2(?:1[23]|[2-9]2))\", \"7(?:1(?:[0-6]2|7|8[27])|2(?:13[03-69]|62[013-9]))|72[1-57-9]2\"], \"8 ($1)\", , 1], [, \"(\\\\d{5})(\\\\d)(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"7(?:1[0-68]|2[1-9])\", \"7(?:1(?:[06][3-6]|[18]|2[35]|[3-5][3-5])|2(?:[13][3-5]|[24-689]|7[457]))\", \"7(?:1(?:0(?:[356]|4[023])|[18]|2(?:3[013-9]|5)|3[45]|43[013-79]|5(?:3[1-8]|4[1-7]|5)|6(?:3[0-35-9]|[4-6]))|2(?:1(?:3[178]|[45])|[24-689]|3[35]|7[457]))|7(?:14|23)4[0-8]|71(?:33|45)[1-79]\"],\n\"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\", [\"[3489]\"], \"8 ($1)\", , 1]], [, , , , , , , , , [-1]], 1, \"3[04-689]|[489]\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], RW:[, [, , \"(?:06|[27]\\\\d\\\\d|[89]00)\\\\d{6}\", , , , , , , [8, 9]], [, , \"(?:06|2[258]\\\\d)\\\\d{6}\", , , , \"250123456\"], [, , \"7[238]\\\\d{7}\", , , , \"720123456\", , , [9]], [, , \"800\\\\d{6}\", , , , \"800123456\", ,\n, [9]], [, , \"900\\\\d{6}\", , , , \"900123456\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"RW\", 250, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SA:[, [, , \"92\\\\d{7}|(?:[15]|8\\\\d)\\\\d{8}\",\n, , , , , , [9, 10], [7]], [, , \"1(?:1\\\\d|2[24-8]|3[35-8]|4[3-68]|6[2-5]|7[235-7])\\\\d{6}\", , , , \"112345678\", , , [9], [7]], [, , \"5(?:[013-689]\\\\d|7[0-36-8])\\\\d{6}\", , , , \"512345678\", , , [9]], [, , \"800\\\\d{7}\", , , , \"8001234567\", , , [10]], [, , \"925\\\\d{6}\", , , , \"925012345\", , , [9]], [, , \"920\\\\d{6}\", , , , \"920012345\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"SA\", 966, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{4})(\\\\d{5})\", \"$1 $2\", [\"9\"]], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\",\n[\"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\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"811\\\\d{7}\", , , , \"8110123456\", , , [10]], , , [, , , , , , , , , [-1]]], SB:[, [, , \"(?:[1-6]|[7-9]\\\\d\\\\d)\\\\d{4}\", , , , , , , [5, 7]], [, , \"(?:1[4-79]|[23]\\\\d|4[0-2]|5[03]|6[0-37])\\\\d{3}\", , , , \"40123\", , , [5]], [, , \"48\\\\d{3}|(?:(?:7[1-9]|8[4-9])\\\\d|9(?:1[2-9]|2[013-9]|3[0-2]|[46]\\\\d|5[0-46-9]|7[0-689]|8[0-79]|9[0-8]))\\\\d{4}\",\n, , , \"7421234\"], [, , \"1[38]\\\\d{3}\", , , , \"18123\", , , [5]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"5[12]\\\\d{3}\", , , , \"51123\", , , [5]], \"SB\", 677, \"0[01]\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{5})\", \"$1 $2\", [\"7|8[4-9]|9(?:[1-8]|9[0-8])\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SC:[, [, , \"8000\\\\d{3}|(?:[249]\\\\d|64)\\\\d{5}\", , , , , , , [7]], [, , \"4[2-46]\\\\d{5}\", , , , \"4217123\"],\n[, , \"2[5-8]\\\\d{5}\", , , , \"2510123\"], [, , \"8000\\\\d{3}\", , , , \"8000000\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"971\\\\d{4}|(?:64|95)\\\\d{5}\", , , , \"6412345\"], \"SC\", 248, \"010|0[0-2]\", , , , , , \"00\", , [[, \"(\\\\d)(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[246]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SD:[, [, , \"[19]\\\\d{8}\", , , , , , , [9]], [, , \"1(?:5[3-7]|8[35-7])\\\\d{6}\", , , ,\n\"153123456\"], [, , \"(?:1[0-2]|9[0-3569])\\\\d{7}\", , , , \"911231234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"SD\", 249, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[19]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SE:[, [, , \"(?:[26]\\\\d\\\\d|9)\\\\d{9}|[1-9]\\\\d{8}|[1-689]\\\\d{7}|[1-4689]\\\\d{6}|2\\\\d{5}\", ,\n, , , , , [6, 7, 8, 9, 10, 12]], [, , \"10[1-8]\\\\d{6}|90[1-9]\\\\d{4,6}|(?:[12][136]|3[356]|4[0246]|6[03]|8\\\\d)\\\\d{5,7}|(?:1(?:2[0-35]|4[0-4]|5[0-25-9]|7[13-6]|[89]\\\\d)|2(?:2[0-7]|4[0136-8]|5[0138]|7[018]|8[01]|9[0-57])|3(?:0[0-4]|1\\\\d|2[0-25]|4[056]|7[0-2]|8[0-3]|9[023])|4(?:1[013-8]|3[0135]|5[14-79]|7[0-246-9]|8[0156]|9[0-689])|5(?:0[0-6]|[15][0-5]|2[0-68]|3[0-4]|4\\\\d|6[03-5]|7[013]|8[0-79]|9[01])|6(?:1[1-3]|2[0-4]|4[02-57]|5[0-37]|6[0-3]|7[0-2]|8[0247]|9[0-356])|9(?:1[0-68]|2\\\\d|3[02-5]|4[0-3]|5[0-4]|[68][01]|7[0135-8]))\\\\d{5,6}\",\n, , , \"8123456\", , , [7, 8, 9]], [, , \"7[02369]\\\\d{7}\", , , , \"701234567\", , , [9]], [, , \"20\\\\d{4,7}\", , , , \"20123456\", , , [6, 7, 8, 9]], [, , \"649\\\\d{6}|9(?:00|39|44)[1-8]\\\\d{3,6}\", , , , \"9001234567\", , , [7, 8, 9, 10]], [, , \"77[0-7]\\\\d{6}\", , , , \"771234567\", , , [9]], [, , \"75[1-8]\\\\d{6}\", , , , \"751234567\", , , [9]], [, , , , , , , , , [-1]], \"SE\", 46, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{2,3})(\\\\d{2})\", \"$1-$2 $3\", [\"20\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{4})\", \"$1-$2\", [\"9(?:00|39|44)\"],\n\"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{2})\", \"$1-$2 $3\", [\"[12][136]|3[356]|4[0246]|6[03]|90[1-9]\"], \"0$1\"], [, \"(\\\\d)(\\\\d{2,3})(\\\\d{2})(\\\\d{2})\", \"$1-$2 $3 $4\", [\"8\"], \"0$1\"], [, \"(\\\\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\"], [, \"(\\\\d{3})(\\\\d{2,3})(\\\\d{3})\", \"$1-$2 $3\", [\"9(?:00|39|44)\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{2,3})(\\\\d{2})(\\\\d{2})\", \"$1-$2 $3 $4\", [\"1[013689]|2[0136]|3[1356]|4[0246]|54|6[03]|90[1-9]\"],\n\"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1-$2 $3 $4\", [\"7\"], \"0$1\"], [, \"(\\\\d)(\\\\d{3})(\\\\d{3})(\\\\d{2})\", \"$1-$2 $3 $4\", [\"8\"], \"0$1\"], [, \"(\\\\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\"], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{3})\", \"$1-$2 $3 $4\", [\"9\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1-$2 $3 $4 $5\", [\"[26]\"], \"0$1\"]], [[, \"(\\\\d{2})(\\\\d{2,3})(\\\\d{2})\", \"$1 $2 $3\", [\"20\"]], [, \"(\\\\d{3})(\\\\d{4})\",\n\"$1 $2\", [\"9(?:00|39|44)\"]], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{2})\", \"$1 $2 $3\", [\"[12][136]|3[356]|4[0246]|6[03]|90[1-9]\"]], [, \"(\\\\d)(\\\\d{2,3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"8\"]], [, \"(\\\\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])\"]], [, \"(\\\\d{3})(\\\\d{2,3})(\\\\d{3})\", \"$1 $2 $3\", [\"9(?:00|39|44)\"]], [, \"(\\\\d{2})(\\\\d{2,3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"1[013689]|2[0136]|3[1356]|4[0246]|54|6[03]|90[1-9]\"]],\n[, \"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"7\"]], [, \"(\\\\d)(\\\\d{3})(\\\\d{3})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"8\"]], [, \"(\\\\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])\"]], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{3})\", \"$1 $2 $3 $4\", [\"9\"]], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4 $5\", [\"[26]\"]]], [, , \"74[02-9]\\\\d{6}\", , , , \"740123456\", , , [9]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]],\n, , [, , \"(?:25[245]|67[3-68])\\\\d{9}\", , , , \"254123456789\", , , [12]]], SG:[, [, , \"(?:(?:1\\\\d|8)\\\\d\\\\d|7000)\\\\d{7}|[3689]\\\\d{7}\", , , , , , , [8, 10, 11]], [, , \"6[1-9]\\\\d{6}\", , , , \"61234567\", , , [8]], [, , \"89[01]\\\\d{5}|(?:8[1-8]|9[0-8])\\\\d{6}\", , , , \"81234567\", , , [8]], [, , \"(?:18|8)00\\\\d{7}\", , , , \"18001234567\", , , [10, 11]], [, , \"1900\\\\d{7}\", , , , \"19001234567\", , , [11]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"3[12]\\\\d{6}\", , , , \"31234567\", , , [8]], \"SG\", 65,\n\"0[0-3]\\\\d\", , , , , , , , [[, \"(\\\\d{4,5})\", \"$1\", [\"1[0135-7]|77\"]], [, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[369]|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\"]]], [[, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[369]|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\"]]], [, , , , , , , , , [-1]],\n, , [, , , , , , , , , [-1]], [, , \"7000\\\\d{7}\", , , , \"70001234567\", , , [11]], , , [, , , , , , , , , [-1]]], SH:[, [, , \"(?:[256]\\\\d|8)\\\\d{3}\", , , , , , , [4, 5]], [, , \"2(?:[0-57-9]\\\\d|6[4-9])\\\\d\\\\d\", , , , \"22158\"], [, , \"[56]\\\\d{4}\", , , , \"51234\", , , [5]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"262\\\\d\\\\d\", , , , \"26212\", , , [5]], \"SH\", 290, \"00\", , , , , , , , , , [, , , , , , , , , [-1]], 1, \"[256]\", [, , , , , , ,\n, , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SI:[, [, , \"[1-7]\\\\d{7}|8\\\\d{4,7}|90\\\\d{4,6}\", , , , , , , [5, 6, 7, 8]], [, , \"(?:[1-357][2-8]|4[24-8])\\\\d{6}\", , , , \"12345678\", , , [8], [7]], [, , \"6(?:5(?:1\\\\d|55|[67]0)|9(?:10|[69]\\\\d))\\\\d{4}|(?:[37][01]|4[0139]|51|6[48])\\\\d{6}\", , , , \"31234567\", , , [8]], [, , \"80\\\\d{4,6}\", , , , \"80123456\", , , [6, 7, 8]], [, , \"89[1-3]\\\\d{2,5}|90\\\\d{4,6}\", , , , \"90123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"(?:59\\\\d\\\\d|8(?:1(?:[67]\\\\d|8[01389])|2(?:0\\\\d|2[0378]|8[0-2489])|3[389]\\\\d))\\\\d{4}\",\n, , , \"59012345\", , , [8]], \"SI\", 386, \"00|10(?:22|66|88|99)\", \"0\", , , \"0\", , \"00\", , [[, \"(\\\\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)\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SJ:[, [, , \"0\\\\d{4}|(?:[4589]\\\\d|79)\\\\d{6}\",\n, , , , , , [5, 8]], [, , \"79\\\\d{6}\", , , , \"79123456\", , , [8]], [, , \"(?:4[015-8]|5[89]|9\\\\d)\\\\d{6}\", , , , \"41234567\", , , [8]], [, , \"80[01]\\\\d{5}\", , , , \"80012345\", , , [8]], [, , \"82[09]\\\\d{5}\", , , , \"82012345\", , , [8]], [, , \"810(?:0[0-6]|[2-8]\\\\d)\\\\d{3}\", , , , \"81021234\", , , [8]], [, , \"880\\\\d{5}\", , , , \"88012345\", , , [8]], [, , \"85[0-5]\\\\d{5}\", , , , \"85012345\", , , [8]], \"SJ\", 47, \"00\", , , , , , , , , , [, , , , , , , , , [-1]], , \"79\", [, , , , , , , , , [-1]], [, , \"(?:0[2-9]|81(?:0(?:0[7-9]|1\\\\d)|5\\\\d\\\\d))\\\\d{3}\",\n, , , \"02000\"], , , [, , \"81[23]\\\\d{5}\", , , , \"81212345\", , , [8]]], SK:[, [, , \"[2-689]\\\\d{8}|[2-59]\\\\d{6}|[2-5]\\\\d{5}\", , , , , , , [6, 7, 9]], [, , \"(?:2(?:16|[2-9]\\\\d{3})|[3-5][1-8]\\\\d{3})\\\\d{4}|(?:2|[3-5][1-8])1[67]\\\\d{3}|[3-5][1-8]16\\\\d\\\\d\", , , , \"221234567\"], [, , \"909[1-9]\\\\d{5}|9(?:0[1-8]|1[0-24-9]|[45]\\\\d)\\\\d{6}\", , , , \"912123456\", , , [9]], [, , \"800\\\\d{6}\", , , , \"800123456\", , , [9]], [, , \"9(?:00|[78]\\\\d)\\\\d{6}\", , , , \"900123456\", , , [9]], [, , \"8[5-9]\\\\d{7}\", , , , \"850123456\",\n, , [9]], [, , , , , , , , , [-1]], [, , \"6(?:02|5[0-4]|9[0-6])\\\\d{6}\", , , , \"690123456\", , , [9]], \"SK\", 421, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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{4})(\\\\d{3})\", \"$1 $2\", [\"909\", \"9090\"], \"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})\",\n\"$1/$2 $3 $4\", [\"[3-5]\"], \"0$1\"]], [[, \"(\\\\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\"]], [, , \"9090\\\\d{3}\", , , , \"9090123\", , , [7]], , , [, , \"9090\\\\d{3}|(?:602|8(?:00|[5-9]\\\\d)|9(?:00|[78]\\\\d))\\\\d{6}\",\n, , , , , , [7, 9]], [, , \"96\\\\d{7}\", , , , \"961234567\", , , [9]], , , [, , , , , , , , , [-1]]], SL:[, [, , \"(?:[2378]\\\\d|99)\\\\d{6}\", , , , , , , [8], [6]], [, , \"22\\\\d{6}\", , , , \"22221234\", , , , [6]], [, , \"(?:25|3[0134]|7[5-9]|8[08]|99)\\\\d{6}\", , , , \"25123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"SL\", 232, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{6})\", \"$1 $2\", [\"[237-9]\"], \"(0$1)\"]], , [, , ,\n, , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SM:[, [, , \"(?:0549|[5-7]\\\\d)\\\\d{6}\", , , , , , , [8, 10], [6]], [, , \"0549(?:8[0157-9]|9\\\\d)\\\\d{4}\", , , , \"0549886377\", , , [10], [6]], [, , \"6[16]\\\\d{6}\", , , , \"66661212\", , , [8]], [, , , , , , , , , [-1]], [, , \"7[178]\\\\d{6}\", , , , \"71123456\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"5[158]\\\\d{6}\", , , , \"58001110\", , , [8]], \"SM\", 378, \"00\", , , , \"([89]\\\\d{5})$\",\n\"0549$1\", , , [[, \"(\\\\d{6})\", \"$1\", [\"[89]\"]], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[5-7]\"]], [, \"(\\\\d{4})(\\\\d{6})\", \"$1 $2\", [\"0\"]]], [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[5-7]\"]], [, \"(\\\\d{4})(\\\\d{6})\", \"$1 $2\", [\"0\"]]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SN:[, [, , \"(?:[378]\\\\d{4}|93330)\\\\d{4}\", , , , , , , [9]], [, , \"3(?:0(?:1[0-2]|80)|282|3(?:8[1-9]|9[3-9])|611)\\\\d{5}\", , , ,\n\"301012345\"], [, , \"7(?:[06-8]\\\\d|21|90)\\\\d{6}\", , , , \"701234567\"], [, , \"800\\\\d{6}\", , , , \"800123456\"], [, , \"88[4689]\\\\d{6}\", , , , \"884123456\"], [, , \"81[02468]\\\\d{6}\", , , , \"810123456\"], [, , , , , , , , , [-1]], [, , \"93330\\\\d{4}|3(?:392|9[01]\\\\d)\\\\d{5}\", , , , \"933301234\"], \"SN\", 221, \"00\", , , , , , , , [[, \"(\\\\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]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]],\n[, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SO:[, [, , \"[346-9]\\\\d{8}|[12679]\\\\d{7}|(?:[1-4]\\\\d|59)\\\\d{5}|[1348]\\\\d{5}\", , , , , , , [6, 7, 8, 9]], [, , \"(?:1\\\\d|2[0-79]|3[0-46-8]|4[0-7]|59)\\\\d{5}|(?:[134]\\\\d|8[125])\\\\d{4}\", , , , \"4012345\", , , [6, 7]], [, , \"28\\\\d{5}|(?:6[1-9]|79)\\\\d{6,7}|(?:15|24|(?:3[59]|4[89]|8[08])\\\\d|60|7[1-8]|9(?:0[67]|[2-9]))\\\\d{6}\", , , , \"71123456\", , , [7, 8, 9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , ,\n, , [-1]], [, , , , , , , , , [-1]], \"SO\", 252, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{4})\", \"$1 $2\", [\"8[125]\"]], [, \"(\\\\d{6})\", \"$1\", [\"[134]\"]], [, \"(\\\\d)(\\\\d{6})\", \"$1 $2\", [\"1|2[0-79]|3[0-46-8]|4[0-7]|59\"]], [, \"(\\\\d)(\\\\d{7})\", \"$1 $2\", [\"24|[67]\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[348]|64|79[0-8]|90\"]], [, \"(\\\\d{2})(\\\\d{5,7})\", \"$1 $2\", [\"1|28|6[1-35-9]|799|9[2-9]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , ,\n, [-1]]], SR:[, [, , \"(?:[2-5]|68|[78]\\\\d)\\\\d{5}\", , , , , , , [6, 7]], [, , \"(?:2[1-3]|3[0-7]|(?:4|68)\\\\d|5[2-58])\\\\d{4}\", , , , \"211234\"], [, , \"(?:7[124-7]|8[125-9])\\\\d{5}\", , , , \"7412345\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"56\\\\d{4}\", , , , \"561234\", , , [6]], \"SR\", 597, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1-$2-$3\", [\"56\"]], [, \"(\\\\d{3})(\\\\d{3})\", \"$1-$2\", [\"[2-5]\"]], [, \"(\\\\d{3})(\\\\d{4})\",\n\"$1-$2\", [\"[6-8]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SS:[, [, , \"[19]\\\\d{8}\", , , , , , , [9]], [, , \"18\\\\d{7}\", , , , \"181234567\"], [, , \"(?:12|9[1257])\\\\d{7}\", , , , \"977123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"SS\", 211, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[19]\"], \"0$1\"]], , [,\n, , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], ST:[, [, , \"(?:22|9\\\\d)\\\\d{5}\", , , , , , , [7]], [, , \"22\\\\d{5}\", , , , \"2221234\"], [, , \"900[5-9]\\\\d{3}|9(?:0[1-9]|[89]\\\\d)\\\\d{4}\", , , , \"9812345\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"ST\", 239, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[29]\"]]], , [, , , , , , , , , [-1]], , , [,\n, , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SV:[, [, , \"[267]\\\\d{7}|[89]00\\\\d{4}(?:\\\\d{4})?\", , , , , , , [7, 8, 11]], [, , \"2[1-6]\\\\d{6}\", , , , \"21234567\", , , [8]], [, , \"[67]\\\\d{7}\", , , , \"70123456\", , , [8]], [, , \"800\\\\d{4}(?:\\\\d{4})?\", , , , \"8001234\", , , [7, 11]], [, , \"900\\\\d{4}(?:\\\\d{4})?\", , , , \"9001234\", , , [7, 11]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"SV\", 503, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\",\n\"$1 $2\", [\"[89]\"]], [, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[267]\"]], [, \"(\\\\d{3})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"[89]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SX:[, [, , \"7215\\\\d{6}|(?:[58]\\\\d\\\\d|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"7215(?:4[2-8]|8[239]|9[056])\\\\d{4}\", , , , \"7215425678\", , , , [7]], [, , \"7215(?:1[02]|2\\\\d|5[034679]|8[014-8])\\\\d{4}\", , , , \"7215205678\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\",\n, , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"SX\", 1, \"011\", \"1\", , , \"1|(5\\\\d{6})$\", \"721$1\", , , , , [, , , , , , , , , [-1]], , \"721\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SY:[, [, , \"[1-39]\\\\d{8}|[1-5]\\\\d{7}\", , , , , , , [8, 9], [6, 7]], [, , \"[12]1\\\\d{6,7}|(?:1(?:[2356]|4\\\\d)|2[235]|3(?:[13]\\\\d|4)|4[13]|5[1-3])\\\\d{6}\",\n, , , \"112345678\", , , , [6, 7]], [, , \"9(?:22|[3-589]\\\\d|6[024-9])\\\\d{6}\", , , , \"944567890\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"SY\", 963, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , ,\n, , , , , , [-1]]], SZ:[, [, , \"0800\\\\d{4}|(?:[237]\\\\d|900)\\\\d{6}\", , , , , , , [8, 9]], [, , \"[23][2-5]\\\\d{6}\", , , , \"22171234\", , , [8]], [, , \"7[6-9]\\\\d{6}\", , , , \"76123456\", , , [8]], [, , \"0800\\\\d{4}\", , , , \"08001234\", , , [8]], [, , \"900\\\\d{6}\", , , , \"900012345\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"70\\\\d{6}\", , , , \"70012345\", , , [8]], \"SZ\", 268, \"00\", , , , , , , , [[, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[0237]\"]], [, \"(\\\\d{5})(\\\\d{4})\", \"$1 $2\", [\"9\"]]], ,\n[, , , , , , , , , [-1]], , , [, , \"0800\\\\d{4}\", , , , , , , [8]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], TA:[, [, , \"8\\\\d{3}\", , , , , , , [4]], [, , \"8\\\\d{3}\", , , , \"8999\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"TA\", 290, \"00\", , , , , , , , , , [, , , , , , , , , [-1]], , \"8\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]],\nTC:[, [, , \"(?:[58]\\\\d\\\\d|649|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"649(?:712|9(?:4\\\\d|50))\\\\d{4}\", , , , \"6497121234\", , , , [7]], [, , \"649(?:2(?:3[129]|4[1-7])|3(?:3[1-389]|4[1-8])|4[34][1-3])\\\\d{4}\", , , , \"6492311234\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002345678\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002345678\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , \"64971[01]\\\\d{4}\", , , , \"6497101234\", , , , [7]],\n\"TC\", 1, \"011\", \"1\", , , \"1|([2-479]\\\\d{6})$\", \"649$1\", , , , , [, , , , , , , , , [-1]], , \"649\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], TD:[, [, , \"(?:22|[69]\\\\d|77)\\\\d{6}\", , , , , , , [8]], [, , \"22(?:[37-9]0|5[0-5]|6[89])\\\\d{4}\", , , , \"22501234\"], [, , \"(?:6[023568]|77|9\\\\d)\\\\d{6}\", , , , \"63012345\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"TD\", 235, \"00|16\",\n, , , , , \"00\", , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[2679]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], TG:[, [, , \"[279]\\\\d{7}\", , , , , , , [8]], [, , \"2(?:2[2-7]|3[23]|4[45]|55|6[67]|77)\\\\d{5}\", , , , \"22212345\"], [, , \"(?:7[09]|9[0-36-9])\\\\d{6}\", , , , \"90112345\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"TG\",\n228, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[279]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], TH:[, [, , \"1\\\\d{8,9}|(?:[2-57]|[689]\\\\d)\\\\d{7}\", , , , , , , [8, 9, 10]], [, , \"(?:2\\\\d|3[2-9]|4[2-5]|5[2-6]|7[3-7])\\\\d{6}\", , , , \"21234567\", , , [8]], [, , \"(?:14|6[1-6]|[89]\\\\d)\\\\d{7}\", , , , \"812345678\", , , [9]], [, , \"1800\\\\d{6}\", , , , \"1800123456\", , , [10]], [, , \"1900\\\\d{6}\", , , ,\n\"1900123456\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"6[08]\\\\d{7}\", , , , \"601234567\", , , [9]], \"TH\", 66, \"00[1-9]\", \"0\", , , \"0\", , , , [[, \"(\\\\d)(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"2\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3,4})\", \"$1 $2 $3\", [\"14|[3-9]\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"1\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], TJ:[, [, , \"(?:[3-59]\\\\d|77|88)\\\\d{7}\", , ,\n, , , , [9], [3, 5, 6, 7]], [, , \"(?:3(?:1[3-5]|2[245]|3[12]|4[24-7]|5[25]|72)|4(?:46|74|87))\\\\d{6}\", , , , \"372123456\", , , , [3, 5, 6, 7]], [, , \"41[18]\\\\d{6}|(?:5[05]|77|88|9\\\\d)\\\\d{7}\", , , , \"917123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"TJ\", 992, \"810\", \"8\", , , \"8\", , \"8~10\", , [[, \"(\\\\d{6})(\\\\d)(\\\\d{2})\", \"$1 $2 $3\", [\"331\", \"3317\"], , , 1], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{4})\", \"$1 $2 $3\", [\"[34]7|91[78]\"],\n, , 1], [, \"(\\\\d{4})(\\\\d)(\\\\d{4})\", \"$1 $2 $3\", [\"3\"], , , 1], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[457-9]\"], , , 1]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], TK:[, [, , \"[2-47]\\\\d{3,6}\", , , , , , , [4, 5, 6, 7]], [, , \"(?:2[2-4]|[34]\\\\d)\\\\d{2,5}\", , , , \"3101\"], [, , \"7[2-4]\\\\d{2,5}\", , , , \"7290\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , ,\n, , , , [-1]], \"TK\", 690, \"00\", , , , , , , , , , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], TL:[, [, , \"7\\\\d{7}|(?:[2-47]\\\\d|[89]0)\\\\d{5}\", , , , , , , [7, 8]], [, , \"(?:2[1-5]|3[1-9]|4[1-4])\\\\d{5}\", , , , \"2112345\", , , [7]], [, , \"7[3-8]\\\\d{6}\", , , , \"77212345\", , , [8]], [, , \"80\\\\d{5}\", , , , \"8012345\", , , [7]], [, , \"90\\\\d{5}\", , , , \"9012345\", , , [7]], [, , , , , , , , , [-1]], [, , \"70\\\\d{5}\", , , , \"7012345\", , , [7]],\n[, , , , , , , , , [-1]], \"TL\", 670, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[2-489]|70\"]], [, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"7\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], TM:[, [, , \"[1-6]\\\\d{7}\", , , , , , , [8]], [, , \"(?:1(?:2\\\\d|3[1-9])|2(?:22|4[0-35-8])|3(?:22|4[03-9])|4(?:22|3[128]|4\\\\d|6[15])|5(?:22|5[7-9]|6[014-689]))\\\\d{5}\", , , , \"12345678\"], [, , \"6[1-9]\\\\d{6}\", , , , \"66123456\"], [, , , , , , ,\n, , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"TM\", 993, \"810\", \"8\", , , \"8\", , \"8~10\", , [[, \"(\\\\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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], TN:[, [, , \"[2-57-9]\\\\d{7}\", ,\n, , , , , [8]], [, , \"81200\\\\d{3}|(?:3[0-2]|7\\\\d)\\\\d{6}\", , , , \"30010123\"], [, , \"3(?:001|[12]40)\\\\d{4}|(?:(?:[259]\\\\d|4[0-6])\\\\d|3(?:1[1-35]|6[0-4]|91))\\\\d{5}\", , , , \"20123456\"], [, , \"8010\\\\d{4}\", , , , \"80101234\"], [, , \"88\\\\d{6}\", , , , \"88123456\"], [, , \"8[12]10\\\\d{4}\", , , , \"81101234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"TN\", 216, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[2-57-9]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [,\n, , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], TO:[, [, , \"(?:0800|[5-8]\\\\d{3})\\\\d{3}|[2-8]\\\\d{4}\", , , , , , , [5, 7]], [, , \"(?:2\\\\d|3[0-8]|4[0-4]|50|6[09]|7[0-24-69]|8[05])\\\\d{3}\", , , , \"20123\", , , [5]], [, , \"(?:6(?:3[02]|85|90)|7(?:[2-46]0|[578]\\\\d)|8[46-9]\\\\d)\\\\d{4}\", , , , \"7715123\", , , [7]], [, , \"0800\\\\d{3}\", , , , \"0800222\", , , [7]], [, , \"55[04]\\\\d{4}\", , , , \"5501234\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"TO\", 676, \"00\", ,\n, , , , , , [[, \"(\\\\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-8]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], TR:[, [, , \"(?:[2-58]\\\\d\\\\d|900)\\\\d{7}|4\\\\d{6}\", , , , , , , [7, 10]], [, , \"(?:2(?:[13][26]|[28][2468]|[45][268]|[67][246])|3(?:[13][28]|[24-6][2468]|[78][02468]|92)|4(?:[16][246]|[23578][2468]|4[26]))\\\\d{7}\", , , , \"2123456789\",\n, , [10]], [, , \"56161\\\\d{5}|5(?:0[15-7]|1[06]|24|[34]\\\\d|5[1-59]|9[46])\\\\d{7}\", , , , \"5012345678\", , , [10]], [, , \"800\\\\d{7}\", , , , \"8001234567\", , , [10]], [, , \"(?:8[89]8|900)\\\\d{7}\", , , , \"9001234567\", , , [10]], [, , , , , , , , , [-1]], [, , \"592(?:21[12]|461)\\\\d{4}\", , , , \"5922121234\", , , [10]], [, , , , , , , , , [-1]], \"TR\", 90, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d)(\\\\d{3})\", \"$1 $2 $3\", [\"444\"], , , 1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"512|8[0589]|90\"], \"0$1\", ,\n1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"5(?:[0-59]|61)\", \"5(?:[0-59]|616)\", \"5(?:[0-59]|6161)\"], \"0$1\", , 1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[24][1-8]|3[1-9]\"], \"(0$1)\", , 1]], [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"512|8[0589]|90\"], \"0$1\", , 1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"5(?:[0-59]|61)\", \"5(?:[0-59]|616)\", \"5(?:[0-59]|6161)\"], \"0$1\", , 1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[24][1-8]|3[1-9]\"],\n\"(0$1)\", , 1]], [, , \"512\\\\d{7}\", , , , \"5123456789\", , , [10]], , , [, , \"444\\\\d{4}\", , , , , , , [7]], [, , \"(?:444|850\\\\d{3})\\\\d{4}\", , , , \"4441444\"], , , [, , , , , , , , , [-1]]], TT:[, [, , \"(?:[58]\\\\d\\\\d|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"868(?:2(?:01|1[89]|[23]\\\\d|4[0-2])|6(?:0[7-9]|1[02-8]|2[1-9]|[3-69]\\\\d|7[0-79])|82[124])\\\\d{4}\", , , , \"8682211234\", , , , [7]], [, , \"868(?:2(?:6[6-9]|[7-9]\\\\d)|[37](?:0[1-9]|1[02-9]|[2-9]\\\\d)|4[6-9]\\\\d|6(?:20|78|8\\\\d))\\\\d{4}\", , , , \"8682911234\",\n, , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002345678\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002345678\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"TT\", 1, \"011\", \"1\", , , \"1|([2-46-8]\\\\d{6})$\", \"868$1\", , , , , [, , , , , , , , , [-1]], , \"868\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , \"868619\\\\d{4}\", , , , \"8686191234\", , , , [7]]], TV:[, [, , \"(?:2|7\\\\d\\\\d|90)\\\\d{4}\", , , , , , ,\n[5, 6, 7]], [, , \"2[02-9]\\\\d{3}\", , , , \"20123\", , , [5]], [, , \"(?:7[01]\\\\d|90)\\\\d{4}\", , , , \"901234\", , , [6, 7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"TV\", 688, \"00\", , , , , , , , , , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], TW:[, [, , \"(?:[24589]|7\\\\d)\\\\d{8}|[2-8]\\\\d{7}|2\\\\d{6}\", , , , , , , [7, 8, 9, 10]], [, , \"24\\\\d{6,7}|(?:6412|8(?:2(?:3\\\\d|66)|36[24-9]))\\\\d{4}|(?:2[235-8]\\\\d|3[2-9]|4(?:[239]\\\\d|[78])|5[2-8]|6[235-79]|7[1-9]|8[7-9])\\\\d{6}\",\n, , , \"221234567\", , , [8, 9]], [, , \"9[0-8]\\\\d{7}\", , , , \"912345678\", , , [9]], [, , \"80[0-79]\\\\d{6}\", , , , \"800123456\", , , [9]], [, , \"20(?:[013-9]\\\\d\\\\d|2)\\\\d{4}\", , , , \"203123456\", , , [7, 9]], [, , , , , , , , , [-1]], [, , \"99\\\\d{7}\", , , , \"990123456\", , , [9]], [, , \"70\\\\d{8}\", , , , \"7012345678\", , , [10]], \"TW\", 886, \"0(?:0[25-79]|19)\", \"0\", \"#\", , \"0\", , , , [[, \"(\\\\d{2})(\\\\d)(\\\\d{4})\", \"$1 $2 $3\", [\"202\"], \"0$1\"], [, \"(\\\\d)(\\\\d{3,4})(\\\\d{4})\", \"$1 $2 $3\", [\"[25][2-8]|[346]|7[1-9]|8[237-9]\"],\n\"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[258]\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"9\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"7\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"50[0-46-9]\\\\d{6}\", , , , \"500123456\", , , [9]], , , [, , , , , , , , , [-1]]], TZ:[, [, , \"(?:[26-8]\\\\d|41|90)\\\\d{7}\", , , , , , , [9]], [, , \"2[2-8]\\\\d{7}\", , , , \"222345678\"], [, , \"(?:6[2-9]|7[13-9])\\\\d{7}\", , , , \"621234567\"], [, , \"80[08]\\\\d{6}\",\n, , , \"800123456\"], [, , \"90\\\\d{7}\", , , , \"900123456\"], [, , \"8(?:40|6[01])\\\\d{6}\", , , , \"840123456\"], [, , , , , , , , , [-1]], [, , \"41\\\\d{7}\", , , , \"412345678\"], \"TZ\", 255, \"00[056]\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{4})\", \"$1 $2 $3\", [\"[89]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[24]\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[67]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , \"(?:8(?:[04]0|6[01])|90\\\\d)\\\\d{6}\"], [, , , , , , , , , [-1]], , , [,\n, , , , , , , , [-1]]], UA:[, [, , \"[89]\\\\d{9}|[3-9]\\\\d{8}\", , , , , , , [9, 10], [5, 6, 7]], [, , \"(?:3[1-8]|4[13-8]|5[1-7]|6[12459])\\\\d{7}\", , , , \"311234567\", , , [9], [5, 6, 7]], [, , \"(?:50|6[36-8]|7[1-3]|9[1-9])\\\\d{7}\", , , , \"501234567\", , , [9]], [, , \"800[1-8]\\\\d{5,6}\", , , , \"800123456\"], [, , \"900[239]\\\\d{5,6}\", , , , \"900212345\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"89[1-579]\\\\d{6}\", , , , \"891234567\", , , [9]], \"UA\", 380, \"00\", \"0\", , , \"0\", , \"0~0\", , [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\n\"$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{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"4[45][0-5]|5(?:0|6[37])|6(?:[12][018]|[36-8])|7|89|9[1-9]|(?:48|57)[0137-9]\", \"4[45][0-5]|5(?:0|6(?:3[14-7]|7))|6(?:[12][018]|[36-8])|7|89|9[1-9]|(?:48|57)[0137-9]\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d{5})\", \"$1 $2\", [\"[3-6]\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3,4})\", \"$1 $2 $3\", [\"[89]\"], \"0$1\"]],\n, [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], UG:[, [, , \"800\\\\d{6}|(?:[29]0|[347]\\\\d)\\\\d{7}\", , , , , , , [9], [5, 6, 7]], [, , \"(?:20(?:(?:(?:[0147]\\\\d|5[0-4])\\\\d|2(?:40|[5-9]\\\\d)|3(?:0[67]|2[0-4])|810)\\\\d|6(?:00[0-2]|[15-9]\\\\d\\\\d|30[0-4]))|[34]\\\\d{5})\\\\d{3}\", , , , \"312345678\", , , , [5, 6, 7]], [, , \"7260\\\\d{5}|7(?:[0157-9]\\\\d|20|4[0-4])\\\\d{6}\", , , , \"712345678\"], [, , \"800[1-3]\\\\d{5}\", , , , \"800123456\"], [, , \"90[1-3]\\\\d{6}\",\n, , , \"901123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"UG\", 256, \"00[057]\", \"0\", , , \"0\", , , , [[, \"(\\\\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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], US:[, [, , \"[2-9]\\\\d{9}\", , , , , , , [10], [7]], [, , \"(?: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[0135]|3[0-24679]|4[167]|5[12]|6[014]|8[056])|4(?:0[124-9]|1[02-579]|2[3-5]|3[0245]|4[0235]|58|6[39]|7[0589]|8[04])|5(?:0[1-57-9]|1[0235-8]|20|3[0149]|4[01]|5[19]|6[1-47]|7[013-5]|8[056])|6(?:0[1-35-9]|1[024-9]|2[03689]|[34][016]|5[017]|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[02-59]|8[156])|8(?:0[1-68]|1[02-8]|2[08]|3[0-28]|4[3578]|5[046-9]|6[02-5]|7[028])|9(?:0[1346-9]|1[02-9]|2[0589]|3[0146-8]|4[0179]|5[12469]|7[0-389]|8[04-69]))[2-9]\\\\d{6}\",\n, , , \"2015550123\", , , , [7]], [, , \"(?: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[0135]|3[0-24679]|4[167]|5[12]|6[014]|8[056])|4(?:0[124-9]|1[02-579]|2[3-5]|3[0245]|4[0235]|58|6[39]|7[0589]|8[04])|5(?:0[1-57-9]|1[0235-8]|20|3[0149]|4[01]|5[19]|6[1-47]|7[013-5]|8[056])|6(?:0[1-35-9]|1[024-9]|2[03689]|[34][016]|5[017]|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[02-59]|8[156])|8(?:0[1-68]|1[02-8]|2[08]|3[0-28]|4[3578]|5[046-9]|6[02-5]|7[028])|9(?:0[1346-9]|1[02-9]|2[0589]|3[0146-8]|4[0179]|5[12469]|7[0-389]|8[04-69]))[2-9]\\\\d{6}\",\n, , , \"2015550123\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002345678\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002345678\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"US\", 1, \"011\", \"1\", , , \"1\", , , 1, [[, \"(\\\\d{3})(\\\\d{4})\", \"$1-$2\", [\"[2-9]\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"($1) $2-$3\", [\"[2-9]\"], , , 1]], [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"[2-9]\"]]], [, , , , , , , , , [-1]], 1, , [,\n, , , , , , , , [-1]], [, , \"710[2-9]\\\\d{6}\", , , , \"7102123456\"], , , [, , , , , , , , , [-1]]], UY:[, [, , \"(?:[249]\\\\d\\\\d|80)\\\\d{5}|9\\\\d{6}\", , , , , , , [7, 8]], [, , \"(?:2\\\\d|4[2-7])\\\\d{6}\", , , , \"21231234\", , , [8], [7]], [, , \"9[1-9]\\\\d{6}\", , , , \"94231234\", , , [8]], [, , \"80[05]\\\\d{4}\", , , , \"8001234\", , , [7]], [, , \"90[0-8]\\\\d{4}\", , , , \"9001234\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"UY\", 598, \"0(?:0|1[3-9]\\\\d)\", \"0\", \" int. \", ,\n\"0\", , \"00\", , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"8|90\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"9\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[24]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], UZ:[, [, , \"[679]\\\\d{8}\", , , , , , , [9]], [, , \"78(?:1(?:13|2[02]|50)|2(?:10|2[139]|98)|77[01])\\\\d{4}|(?:6(?:1(?:22|3[124]|4[1-4]|5[1-3578]|64)|2(?:22|3[0-57-9]|41)|5(?:22|3[3-7]|5[024-8])|6\\\\d\\\\d|7(?:[23]\\\\d|7[69])|9(?:22|4[1-8]|6[135]))|7(?:0(?:5[4-9]|6[0146]|7[124-6]|9[135-8])|1[12]\\\\d|2(?:22|3[13-57-9]|4[1-3579]|5[14])|3(?:2\\\\d|3[1578]|4[1-35-7]|5[1-57]|61)|4(?:2\\\\d|3[1-579]|7[1-79])|5(?:22|5[1-9]|6[1457])|6(?:22|3[12457]|4[13-8])|9(?:22|5[1-9])))\\\\d{5}\",\n, , , \"669050123\"], [, , \"(?:6(?:1(?:2(?:2[01]|98)|35[0-4]|50\\\\d|61[23]|7(?:[01][017]|4\\\\d|55|9[5-9]))|2(?:(?:11|7\\\\d)\\\\d|2(?:[12]1|9[01379])|5(?:[126]\\\\d|3[0-4]))|5(?:19[01]|2(?:27|9[26])|(?:30|59|7\\\\d)\\\\d)|6(?:2(?:1[5-9]|2[0367]|38|41|52|60)|(?:3[79]|9[0-3])\\\\d|4(?:56|83)|7(?:[07]\\\\d|1[017]|3[07]|4[047]|5[057]|67|8[0178]|9[79]))|7(?:2(?:24|3[237]|4[5-9]|7[15-8])|5(?:7[12]|8[0589])|7(?:0\\\\d|[39][07])|9(?:0\\\\d|7[079]))|9(?:2(?:1[1267]|3[01]|5\\\\d|7[0-4])|(?:5[67]|7\\\\d)\\\\d|6(?:2[0-26]|8\\\\d)))|7(?:0\\\\d{3}|1(?:13[01]|6(?:0[47]|1[67]|66)|71[3-69]|98\\\\d)|2(?:2(?:2[79]|95)|3(?:2[5-9]|6[0-6])|57\\\\d|7(?:0\\\\d|1[17]|2[27]|3[37]|44|5[057]|66|88))|3(?:2(?:1[0-6]|21|3[469]|7[159])|(?:33|9[4-6])\\\\d|5(?:0[0-4]|5[579]|9\\\\d)|7(?:[0-3579]\\\\d|4[0467]|6[67]|8[078]))|4(?:2(?:29|5[0257]|6[0-7]|7[1-57])|5(?:1[0-4]|8\\\\d|9[5-9])|7(?:0\\\\d|1[024589]|2[0-27]|3[0137]|[46][07]|5[01]|7[5-9]|9[079])|9(?:7[015-9]|[89]\\\\d))|5(?:112|2(?:0\\\\d|2[29]|[49]4)|3[1568]\\\\d|52[6-9]|7(?:0[01578]|1[017]|[23]7|4[047]|[5-7]\\\\d|8[78]|9[079]))|6(?:2(?:2[1245]|4[2-4])|39\\\\d|41[179]|5(?:[349]\\\\d|5[0-2])|7(?:0[017]|[13]\\\\d|22|44|55|67|88))|9(?:22[128]|3(?:2[0-4]|7\\\\d)|57[02569]|7(?:2[05-9]|3[37]|4\\\\d|60|7[2579]|87|9[07])))|9[0-57-9]\\\\d{3})\\\\d{4}\",\n, , , \"912345678\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"UZ\", 998, \"810\", \"8\", , , \"8\", , \"8~10\", , [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[679]\"], \"8 $1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], VA:[, [, , \"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,\n10, 11, 12]], [, , \"06698\\\\d{1,6}\", , , , \"0669812345\", , , [6, 7, 8, 9, 10, 11]], [, , \"3[1-9]\\\\d{8}|3[2-9]\\\\d{7}\", , , , \"3123456789\", , , [9, 10]], [, , \"80(?:0\\\\d{3}|3)\\\\d{3}\", , , , \"800123456\", , , [6, 9]], [, , \"(?:0878\\\\d\\\\d|89(?:2|4[5-9]\\\\d))\\\\d{3}|89[45][0-4]\\\\d\\\\d|(?:1(?:44|6[346])|89(?:5[5-9]|9))\\\\d{6}\", , , , \"899123456\", , , [6, 8, 9, 10]], [, , \"84(?:[08]\\\\d{3}|[17])\\\\d{3}\", , , , \"848123456\", , , [6, 9]], [, , \"1(?:78\\\\d|99)\\\\d{6}\", , , , \"1781234567\", , , [9, 10]], [, , \"55\\\\d{8}\",\n, , , \"5512345678\", , , [10]], \"VA\", 39, \"00\", , , , , , , , , , [, , , , , , , , , [-1]], , \"06698\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , \"3[2-8]\\\\d{9,10}\", , , , \"33101234501\", , , [11, 12]]], VC:[, [, , \"(?:[58]\\\\d\\\\d|784|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"784(?:266|3(?:6[6-9]|7\\\\d|8[0-24-6])|4(?:38|5[0-36-8]|8[0-8])|5(?:55|7[0-2]|93)|638|784)\\\\d{4}\", , , , \"7842661234\", , , , [7]], [, , \"784(?:4(?:3[0-5]|5[45]|89|9[0-8])|5(?:2[6-9]|3[0-4]))\\\\d{4}\", , , , \"7844301234\",\n, , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002345678\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002345678\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"VC\", 1, \"011\", \"1\", , , \"1|([2-7]\\\\d{6})$\", \"784$1\", , , , , [, , , , , , , , , [-1]], , \"784\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], VE:[, [, , \"[89]00\\\\d{7}|(?:[24]\\\\d|50)\\\\d{8}\", , , , , , , [10], [7]], [, , \"(?:2(?:12|3[457-9]|[467]\\\\d|[58][1-9]|9[1-6])|50[01])\\\\d{7}\",\n, , , \"2121234567\", , , , [7]], [, , \"4(?:1[24-8]|2[46])\\\\d{7}\", , , , \"4121234567\"], [, , \"800\\\\d{7}\", , , , \"8001234567\"], [, , \"900\\\\d{7}\", , , , \"9001234567\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"VE\", 58, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{7})\", \"$1-$2\", [\"[24589]\"], \"0$1\", \"$CC $1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], VG:[, [, , \"(?:284|[58]\\\\d\\\\d|900)\\\\d{7}\",\n, , , , , , [10], [7]], [, , \"284496[0-5]\\\\d{3}|284(?:229|4(?:22|9[45])|774|8(?:52|6[459]))\\\\d{4}\", , , , \"2842291234\", , , , [7]], [, , \"284496[6-9]\\\\d{3}|284(?:3(?:0[0-3]|4[0-7]|68|9[34])|4(?:4[0-6]|68|99)|54[0-57])\\\\d{4}\", , , , \"2843001234\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002345678\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002345678\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"VG\", 1, \"011\",\n\"1\", , , \"1|([2-578]\\\\d{6})$\", \"284$1\", , , , , [, , , , , , , , , [-1]], , \"284\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], VI:[, [, , \"[58]\\\\d{9}|(?:34|90)0\\\\d{7}\", , , , , , , [10], [7]], [, , \"340(?:2(?:0[12]|2[06-8]|4[49]|77)|3(?:32|44)|4(?:22|7[34]|89)|5(?:1[34]|55)|6(?:2[56]|4[23]|77|9[023])|7(?:1[2-57-9]|27|7\\\\d)|884|998)\\\\d{4}\", , , , \"3406421234\", , , , [7]], [, , \"340(?:2(?:0[12]|2[06-8]|4[49]|77)|3(?:32|44)|4(?:22|7[34]|89)|5(?:1[34]|55)|6(?:2[56]|4[23]|77|9[023])|7(?:1[2-57-9]|27|7\\\\d)|884|998)\\\\d{4}\",\n, , , \"3406421234\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002345678\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002345678\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"VI\", 1, \"011\", \"1\", , , \"1|([2-9]\\\\d{6})$\", \"340$1\", , 1, , , [, , , , , , , , , [-1]], , \"340\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], VN:[, [, , \"[12]\\\\d{9}|[135-9]\\\\d{8}|[16]\\\\d{7}|[16-8]\\\\d{6}\",\n, , , , , , [7, 8, 9, 10]], [, , \"2(?:0[3-9]|1[0-689]|2[0-25-9]|3[2-9]|4[2-8]|5[124-9]|6[0-39]|7[0-7]|8[2-79]|9[0-4679])\\\\d{7}\", , , , \"2101234567\", , , [10]], [, , \"(?:52[238]|8(?:79|9[689])|99[013-9])\\\\d{6}|(?:3\\\\d|5[689]|7[06-9]|8[1-68]|9[0-8])\\\\d{7}\", , , , \"912345678\", , , [9]], [, , \"1(?:228\\\\d{4}|800\\\\d{4,6})\", , , , \"1800123456\", , , [8, 9, 10]], [, , \"1900\\\\d{4,6}\", , , , \"1900123456\", , , [8, 9, 10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"672\\\\d{6}\", , , , \"672012345\",\n, , [9]], \"VN\", 84, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[17]99\"], \"0$1\", , 1], [, \"(\\\\d{2})(\\\\d{5})\", \"$1 $2\", [\"80\"], \"0$1\", , 1], [, \"(\\\\d{3})(\\\\d{4,5})\", \"$1 $2\", [\"69\"], \"0$1\", , 1], [, \"(\\\\d{4})(\\\\d{4,6})\", \"$1 $2\", [\"1\"], , , 1], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[69]\"], \"0$1\", , 1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[3578]\"], \"0$1\", , 1], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"2[48]\"], \"0$1\", , 1], [, \"(\\\\d{3})(\\\\d{4})(\\\\d{3})\",\n\"$1 $2 $3\", [\"2\"], \"0$1\", , 1]], [[, \"(\\\\d{2})(\\\\d{5})\", \"$1 $2\", [\"80\"], \"0$1\", , 1], [, \"(\\\\d{4})(\\\\d{4,6})\", \"$1 $2\", [\"1\"], , , 1], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[69]\"], \"0$1\", , 1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[3578]\"], \"0$1\", , 1], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"2[48]\"], \"0$1\", , 1], [, \"(\\\\d{3})(\\\\d{4})(\\\\d{3})\", \"$1 $2 $3\", [\"2\"], \"0$1\", , 1]], [, , , , , , , , , [-1]], , , [, , \"[17]99\\\\d{4}|69\\\\d{5,6}\", , , , , , , [7, 8]], [, , \"(?:[17]99|80\\\\d)\\\\d{4}|69\\\\d{5,6}\",\n, , , \"1992000\", , , [7, 8]], , , [, , , , , , , , , [-1]]], VU:[, [, , \"(?:[23]\\\\d|[48]8)\\\\d{3}|(?:[57]\\\\d|90)\\\\d{5}\", , , , , , , [5, 7]], [, , \"(?:38[0-8]|48[4-9])\\\\d\\\\d|(?:2[02-9]|3[4-7]|88)\\\\d{3}\", , , , \"22123\", , , [5]], [, , \"57[2-5]\\\\d{4}|(?:5[0-689]|7[013-7])\\\\d{5}\", , , , \"5912345\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"90[1-9]\\\\d{4}\", , , , \"9010123\", , , [7]], \"VU\", 678, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\",\n\"$1 $2\", [\"[579]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"(?:3[03]|900\\\\d)\\\\d{3}\", , , , \"30123\"], , , [, , , , , , , , , [-1]]], WF:[, [, , \"(?:[45]0|68|72|8\\\\d)\\\\d{4}\", , , , , , , [6]], [, , \"(?:50|68|72)\\\\d{4}\", , , , \"501234\"], [, , \"(?:50|68|72|8[23])\\\\d{4}\", , , , \"501234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"WF\", 681, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\n\"$1 $2 $3\", [\"[4-8]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , \"[48]0\\\\d{4}\", , , , \"401234\"]], WS:[, [, , \"[2-6]\\\\d{4}|8\\\\d{5}(?:\\\\d{4})?|[78]\\\\d{6}\", , , , , , , [5, 6, 7, 10]], [, , \"(?:[2-5]\\\\d|6[1-9])\\\\d{3}\", , , , \"22123\", , , [5]], [, , \"(?:7[25-7]|8(?:[3-7]|9\\\\d{3}))\\\\d{5}\", , , , \"7212345\", , , [7, 10]], [, , \"800\\\\d{3}\", , , , \"800123\", , , [6]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , ,\n, , , , , [-1]], \"WS\", 685, \"0\", , , , , , , , [[, \"(\\\\d{5})\", \"$1\", [\"[2-6]\"]], [, \"(\\\\d{3})(\\\\d{3,7})\", \"$1 $2\", [\"8\"]], [, \"(\\\\d{2})(\\\\d{5})\", \"$1 $2\", [\"7\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], XK:[, [, , \"[23]\\\\d{7,8}|(?:4\\\\d\\\\d|[89]00)\\\\d{5}\", , , , , , , [8, 9]], [, , \"(?:2[89]|39)0\\\\d{6}|[23][89]\\\\d{6}\", , , , \"28012345\"], [, , \"4[3-79]\\\\d{6}\", , , , \"43201234\", , , [8]], [, , \"800\\\\d{5}\", , , , \"80001234\", ,\n, [8]], [, , \"900\\\\d{5}\", , , , \"90001234\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"XK\", 383, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], YE:[, [, , \"(?:1|7\\\\d)\\\\d{7}|[1-7]\\\\d{6}\",\n, , , , , , [7, 8, 9], [6]], [, , \"17\\\\d{6}|(?:[12][2-68]|3[2358]|4[2-58]|5[2-6]|6[3-58]|7[24-68])\\\\d{5}\", , , , \"1234567\", , , [7, 8], [6]], [, , \"7[0137]\\\\d{7}\", , , , \"712345678\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"YE\", 967, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d)(\\\\d{3})(\\\\d{3,4})\", \"$1 $2 $3\", [\"[1-6]|7[24-68]\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"7\"], \"0$1\"]], , [, , , ,\n, , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], YT:[, [, , \"80\\\\d{7}|(?:26|63)9\\\\d{6}\", , , , , , , [9]], [, , \"269(?:0[67]|5[01]|6\\\\d|[78]0)\\\\d{4}\", , , , \"269601234\"], [, , \"639(?:0[0-79]|1[019]|[267]\\\\d|3[09]|[45]0|9[04-79])\\\\d{4}\", , , , \"639012345\"], [, , \"80\\\\d{7}\", , , , \"801234567\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"YT\", 262, \"00\", \"0\", , , \"0\", , , , , , [, , ,\n, , , , , , [-1]], , \"269|63\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], ZA:[, [, , \"[1-9]\\\\d{8}|8\\\\d{4,7}\", , , , , , , [5, 6, 7, 8, 9]], [, , \"(?:1[0-8]|2[1-378]|3[1-69]|4\\\\d|5[1346-8])\\\\d{7}\", , , , \"101234567\", , , [9]], [, , \"8[1-4]\\\\d{3,7}|(?:6\\\\d|7[0-46-9]|85)\\\\d{7}\", , , , \"711234567\"], [, , \"80\\\\d{7}\", , , , \"801234567\", , , [9]], [, , \"(?:86[2-9]|9[0-2]\\\\d)\\\\d{6}\", , , , \"862345678\", , , [9]], [, , \"860\\\\d{6}\", , , , \"860123456\", , , [9]], [, , ,\n, , , , , , [-1]], [, , \"87\\\\d{7}\", , , , \"871234567\", , , [9]], \"ZA\", 27, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"861\\\\d{6}\", , , , \"861123456\", , , [9]], , , [, , , , , , , , , [-1]]], ZM:[, [, , \"800\\\\d{6}|(?:21|76|9\\\\d)\\\\d{7}\",\n, , , , , , [9], [6]], [, , \"21[1-8]\\\\d{6}\", , , , \"211234567\", , , , [6]], [, , \"(?:76|9[5-8])\\\\d{7}\", , , , \"955123456\"], [, , \"800\\\\d{6}\", , , , \"800123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"ZM\", 260, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{3})\", \"$1 $2\", [\"[1-9]\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[28]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{7})\", \"$1 $2\", [\"[79]\"], \"0$1\"]], [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\",\n[\"[28]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{7})\", \"$1 $2\", [\"[79]\"], \"0$1\"]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], ZW:[, [, , \"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], [3, 4]], [, , \"(?:1(?:(?:3\\\\d|9)\\\\d|[4-8])|2(?:(?:(?:0(?:2[014]|5)|(?:2[0157]|31|84|9)\\\\d\\\\d|[56](?:[14]\\\\d\\\\d|20)|7(?:[089]|2[03]|[35]\\\\d\\\\d))\\\\d|4(?:2\\\\d\\\\d|8))\\\\d|1(?:2|[39]\\\\d{4}))|3(?:(?:123|(?:29\\\\d|92)\\\\d)\\\\d\\\\d|7(?:[19]|[56]\\\\d))|5(?:0|1[2-478]|26|[37]2|4(?:2\\\\d{3}|83)|5(?:25\\\\d\\\\d|[78])|[689]\\\\d)|6(?:(?:[16-8]21|28|52[013])\\\\d\\\\d|[39])|8(?:[1349]28|523)\\\\d\\\\d)\\\\d{3}|(?:4\\\\d\\\\d|9[2-9])\\\\d{4,5}|(?:(?:2(?:(?:(?:0|8[146])\\\\d|7[1-7])\\\\d|2(?:[278]\\\\d|92)|58(?:2\\\\d|3))|3(?:[26]|9\\\\d{3})|5(?:4\\\\d|5)\\\\d\\\\d)\\\\d|6(?:(?:(?:[0-246]|[78]\\\\d)\\\\d|37)\\\\d|5[2-8]))\\\\d\\\\d|(?:2(?:[569]\\\\d|8[2-57-9])|3(?:[013-59]\\\\d|8[37])|6[89]8)\\\\d{3}\",\n, , , \"1312345\", , , , [3, 4]], [, , \"7(?:1[2-9]|[37][1-9]|8[2-7])\\\\d{6}\", , , , \"712345678\", , , [9]], [, , \"80(?:[01]\\\\d|20|8[0-8])\\\\d{3}\", , , , \"8001234\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"86(?:1[12]|22|30|44|55|77|8[368])\\\\d{6}\", , , , \"8686123456\", , , [10]], \"ZW\", 263, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\"], [,\n\"(\\\\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})\",\n\"$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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], 800:[, [, , \"\\\\d{8}\", , , , , ,\n, [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"\\\\d{8}\", , , , \"12345678\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"001\", 800, , , , , , , , 1, [[, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], 808:[, [, , \"\\\\d{8}\", , , , , , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , ,\n, , , , , , [-1]], [, , \"\\\\d{8}\", , , , \"12345678\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"001\", 808, , , , , , , , 1, [[, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], 870:[, [, , \"[35-7]\\\\d{8}\", , , , , , , [9]], [, , , , , , , , , [-1]], [, , \"(?:[356]\\\\d|7[6-8])\\\\d{7}\", , , , \"301234567\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , ,\n, , , [-1]], [, , , , , , , , , [-1]], \"001\", 870, , , , , , , , , [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[35-7]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], 878:[, [, , \"10\\\\d{10}\", , , , , , , [12]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"10\\\\d{10}\", , , , \"101234567890\"], \"001\", 878, , , , ,\n, , , 1, [[, \"(\\\\d{2})(\\\\d{5})(\\\\d{5})\", \"$1 $2 $3\", [\"1\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], 881:[, [, , \"[67]\\\\d{8}\", , , , , , , [9]], [, , , , , , , , , [-1]], [, , \"[67]\\\\d{8}\", , , , \"612345678\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"001\", 881, , , , , , , , , [[, \"(\\\\d)(\\\\d{3})(\\\\d{5})\", \"$1 $2 $3\", [\"[67]\"]]], , [,\n, , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], 882:[, [, , \"1\\\\d{6,11}|3\\\\d{6}(?:\\\\d{2,5})?\", , , , , , , [7, 8, 9, 10, 11, 12]], [, , , , , , , , , [-1]], [, , \"3(?:37\\\\d\\\\d|42)\\\\d{4}|3(?:2|47|7\\\\d{3})\\\\d{7}\", , , , \"3421234\", , , [7, 9, 10, 12]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"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})|3(?:45|9\\\\d{3})\\\\d{7}\",\n, , , \"390123456789\"], \"001\", 882, , , , , , , , , [[, \"(\\\\d{2})(\\\\d{5})\", \"$1 $2\", [\"16|342\"]], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{4})\", \"$1 $2 $3\", [\"1\"]], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{3})\", \"$1 $2 $3\", [\"3[23]\"]], [, \"(\\\\d{2})(\\\\d{3,4})(\\\\d{4})\", \"$1 $2 $3\", [\"1\"]], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"34[57]\"]], [, \"(\\\\d{3})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"34\"]], [, \"(\\\\d{2})(\\\\d{4,5})(\\\\d{5})\", \"$1 $2 $3\", [\"[13]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]],\n, , [, , \"348[57]\\\\d{7}\", , , , \"34851234567\", , , [11]]], 883:[, [, , \"51\\\\d{7}(?:\\\\d{3})?\", , , , , , , [9, 12]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"51[013]0\\\\d{8}|5100\\\\d{5}\", , , , \"510012345\"], \"001\", 883, , , , , , , , 1, [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"510\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3 $4\", [\"510\"]], [, \"(\\\\d{4})(\\\\d{4})(\\\\d{4})\",\n\"$1 $2 $3\", [\"5\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], 888:[, [, , \"\\\\d{11}\", , , , , , , [11]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"001\", 888, , , , , , , , 1, [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{5})\", \"$1 $2 $3\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"\\\\d{11}\",\n, , , \"12345678901\"], , , [, , , , , , , , , [-1]]], 979:[, [, , \"\\\\d{9}\", , , , , , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"\\\\d{9}\", , , , \"123456789\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"001\", 979, , , , , , , , 1, [[, \"(\\\\d)(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]]};\n/*\n\n Copyright (C) 2010 The Libphonenumber Authors.\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n*/\ni18n.phonenumbers.PhoneNumberUtil = function() {\n  this.regionToMetadataMap = {};\n};\ngoog.addSingletonGetter(i18n.phonenumbers.PhoneNumberUtil);\ni18n.phonenumbers.Error = {INVALID_COUNTRY_CODE:\"Invalid country calling code\", NOT_A_NUMBER:\"The string supplied did not seem to be a phone number\", TOO_SHORT_AFTER_IDD:\"Phone number too short after IDD\", TOO_SHORT_NSN:\"The string supplied is too short to be a phone number\", TOO_LONG:\"The string supplied is too long to be a phone number\"};\ni18n.phonenumbers.PhoneNumberUtil.NANPA_COUNTRY_CODE_ = 1;\ni18n.phonenumbers.PhoneNumberUtil.MIN_LENGTH_FOR_NSN_ = 2;\ni18n.phonenumbers.PhoneNumberUtil.MAX_LENGTH_FOR_NSN_ = 17;\ni18n.phonenumbers.PhoneNumberUtil.MAX_LENGTH_COUNTRY_CODE_ = 3;\ni18n.phonenumbers.PhoneNumberUtil.MAX_INPUT_STRING_LENGTH_ = 250;\ni18n.phonenumbers.PhoneNumberUtil.UNKNOWN_REGION_ = \"ZZ\";\ni18n.phonenumbers.PhoneNumberUtil.COLOMBIA_MOBILE_TO_FIXED_LINE_PREFIX_ = \"3\";\ni18n.phonenumbers.PhoneNumberUtil.MOBILE_TOKEN_MAPPINGS_ = {54:\"9\"};\ni18n.phonenumbers.PhoneNumberUtil.GEO_MOBILE_COUNTRIES_ = [52, 54, 55];\ni18n.phonenumbers.PhoneNumberUtil.PLUS_SIGN = \"+\";\ni18n.phonenumbers.PhoneNumberUtil.STAR_SIGN_ = \"*\";\ni18n.phonenumbers.PhoneNumberUtil.RFC3966_EXTN_PREFIX_ = \";ext=\";\ni18n.phonenumbers.PhoneNumberUtil.RFC3966_PREFIX_ = \"tel:\";\ni18n.phonenumbers.PhoneNumberUtil.RFC3966_PHONE_CONTEXT_ = \";phone-context=\";\ni18n.phonenumbers.PhoneNumberUtil.RFC3966_ISDN_SUBADDRESS_ = \";isub=\";\ni18n.phonenumbers.PhoneNumberUtil.DIGIT_MAPPINGS = {0:\"0\", 1:\"1\", 2:\"2\", 3:\"3\", 4:\"4\", 5:\"5\", 6:\"6\", 7:\"7\", 8:\"8\", 9:\"9\", \"\\uff10\":\"0\", \"\\uff11\":\"1\", \"\\uff12\":\"2\", \"\\uff13\":\"3\", \"\\uff14\":\"4\", \"\\uff15\":\"5\", \"\\uff16\":\"6\", \"\\uff17\":\"7\", \"\\uff18\":\"8\", \"\\uff19\":\"9\", \"\\u0660\":\"0\", \"\\u0661\":\"1\", \"\\u0662\":\"2\", \"\\u0663\":\"3\", \"\\u0664\":\"4\", \"\\u0665\":\"5\", \"\\u0666\":\"6\", \"\\u0667\":\"7\", \"\\u0668\":\"8\", \"\\u0669\":\"9\", \"\\u06f0\":\"0\", \"\\u06f1\":\"1\", \"\\u06f2\":\"2\", \"\\u06f3\":\"3\", \"\\u06f4\":\"4\", \"\\u06f5\":\"5\", \"\\u06f6\":\"6\", \"\\u06f7\":\"7\",\n\"\\u06f8\":\"8\", \"\\u06f9\":\"9\"};\ni18n.phonenumbers.PhoneNumberUtil.DIALLABLE_CHAR_MAPPINGS_ = {0:\"0\", 1:\"1\", 2:\"2\", 3:\"3\", 4:\"4\", 5:\"5\", 6:\"6\", 7:\"7\", 8:\"8\", 9:\"9\", \"+\":i18n.phonenumbers.PhoneNumberUtil.PLUS_SIGN, \"*\":\"*\", \"#\":\"#\"};\ni18n.phonenumbers.PhoneNumberUtil.ALPHA_MAPPINGS_ = {A:\"2\", B:\"2\", C:\"2\", D:\"3\", E:\"3\", F:\"3\", G:\"4\", H:\"4\", I:\"4\", J:\"5\", K:\"5\", L:\"5\", M:\"6\", N:\"6\", O:\"6\", P:\"7\", Q:\"7\", R:\"7\", S:\"7\", T:\"8\", U:\"8\", V:\"8\", W:\"9\", X:\"9\", Y:\"9\", Z:\"9\"};\ni18n.phonenumbers.PhoneNumberUtil.ALL_NORMALIZATION_MAPPINGS_ = {0:\"0\", 1:\"1\", 2:\"2\", 3:\"3\", 4:\"4\", 5:\"5\", 6:\"6\", 7:\"7\", 8:\"8\", 9:\"9\", \"\\uff10\":\"0\", \"\\uff11\":\"1\", \"\\uff12\":\"2\", \"\\uff13\":\"3\", \"\\uff14\":\"4\", \"\\uff15\":\"5\", \"\\uff16\":\"6\", \"\\uff17\":\"7\", \"\\uff18\":\"8\", \"\\uff19\":\"9\", \"\\u0660\":\"0\", \"\\u0661\":\"1\", \"\\u0662\":\"2\", \"\\u0663\":\"3\", \"\\u0664\":\"4\", \"\\u0665\":\"5\", \"\\u0666\":\"6\", \"\\u0667\":\"7\", \"\\u0668\":\"8\", \"\\u0669\":\"9\", \"\\u06f0\":\"0\", \"\\u06f1\":\"1\", \"\\u06f2\":\"2\", \"\\u06f3\":\"3\", \"\\u06f4\":\"4\", \"\\u06f5\":\"5\", \"\\u06f6\":\"6\",\n\"\\u06f7\":\"7\", \"\\u06f8\":\"8\", \"\\u06f9\":\"9\", A:\"2\", B:\"2\", C:\"2\", D:\"3\", E:\"3\", F:\"3\", G:\"4\", H:\"4\", I:\"4\", J:\"5\", K:\"5\", L:\"5\", M:\"6\", N:\"6\", O:\"6\", P:\"7\", Q:\"7\", R:\"7\", S:\"7\", T:\"8\", U:\"8\", V:\"8\", W:\"9\", X:\"9\", Y:\"9\", Z:\"9\"};\ni18n.phonenumbers.PhoneNumberUtil.ALL_PLUS_NUMBER_GROUPING_SYMBOLS_ = {0:\"0\", 1:\"1\", 2:\"2\", 3:\"3\", 4:\"4\", 5:\"5\", 6:\"6\", 7:\"7\", 8:\"8\", 9:\"9\", A:\"A\", B:\"B\", C:\"C\", D:\"D\", E:\"E\", F:\"F\", G:\"G\", H:\"H\", I:\"I\", J:\"J\", K:\"K\", L:\"L\", M:\"M\", N:\"N\", O:\"O\", P:\"P\", Q:\"Q\", R:\"R\", S:\"S\", T:\"T\", U:\"U\", V:\"V\", W:\"W\", X:\"X\", Y:\"Y\", Z:\"Z\", a:\"A\", b:\"B\", c:\"C\", d:\"D\", e:\"E\", f:\"F\", g:\"G\", h:\"H\", i:\"I\", j:\"J\", k:\"K\", l:\"L\", m:\"M\", n:\"N\", o:\"O\", p:\"P\", q:\"Q\", r:\"R\", s:\"S\", t:\"T\", u:\"U\", v:\"V\", w:\"W\", x:\"X\", y:\"Y\", z:\"Z\",\n\"-\":\"-\", \"\\uff0d\":\"-\", \"\\u2010\":\"-\", \"\\u2011\":\"-\", \"\\u2012\":\"-\", \"\\u2013\":\"-\", \"\\u2014\":\"-\", \"\\u2015\":\"-\", \"\\u2212\":\"-\", \"/\":\"/\", \"\\uff0f\":\"/\", \" \":\" \", \"\\u3000\":\" \", \"\\u2060\":\" \", \".\":\".\", \"\\uff0e\":\".\"};\ni18n.phonenumbers.PhoneNumberUtil.SINGLE_INTERNATIONAL_PREFIX_ = /[\\d]+(?:[~\\u2053\\u223C\\uFF5E][\\d]+)?/;\ni18n.phonenumbers.PhoneNumberUtil.VALID_PUNCTUATION = \"-x\\u2010-\\u2015\\u2212\\u30fc\\uff0d-\\uff0f \\u00a0\\u00ad\\u200b\\u2060\\u3000()\\uff08\\uff09\\uff3b\\uff3d.\\\\[\\\\]/~\\u2053\\u223c\\uff5e\";\ni18n.phonenumbers.PhoneNumberUtil.VALID_DIGITS_ = \"0-9\\uff10-\\uff19\\u0660-\\u0669\\u06f0-\\u06f9\";\ni18n.phonenumbers.PhoneNumberUtil.VALID_ALPHA_ = \"A-Za-z\";\ni18n.phonenumbers.PhoneNumberUtil.PLUS_CHARS_ = \"+\\uff0b\";\ni18n.phonenumbers.PhoneNumberUtil.PLUS_CHARS_PATTERN = new RegExp(\"[\" + i18n.phonenumbers.PhoneNumberUtil.PLUS_CHARS_ + \"]+\");\ni18n.phonenumbers.PhoneNumberUtil.LEADING_PLUS_CHARS_PATTERN = new RegExp(\"^[\" + i18n.phonenumbers.PhoneNumberUtil.PLUS_CHARS_ + \"]+\");\ni18n.phonenumbers.PhoneNumberUtil.SEPARATOR_PATTERN_ = \"[\" + i18n.phonenumbers.PhoneNumberUtil.VALID_PUNCTUATION + \"]+\";\ni18n.phonenumbers.PhoneNumberUtil.CAPTURING_DIGIT_PATTERN = new RegExp(\"([\" + i18n.phonenumbers.PhoneNumberUtil.VALID_DIGITS_ + \"])\");\ni18n.phonenumbers.PhoneNumberUtil.VALID_START_CHAR_PATTERN_ = new RegExp(\"[\" + i18n.phonenumbers.PhoneNumberUtil.PLUS_CHARS_ + i18n.phonenumbers.PhoneNumberUtil.VALID_DIGITS_ + \"]\");\ni18n.phonenumbers.PhoneNumberUtil.SECOND_NUMBER_START_PATTERN_ = /[\\\\\\/] *x/;\ni18n.phonenumbers.PhoneNumberUtil.UNWANTED_END_CHAR_PATTERN_ = new RegExp(\"[^\" + i18n.phonenumbers.PhoneNumberUtil.VALID_DIGITS_ + i18n.phonenumbers.PhoneNumberUtil.VALID_ALPHA_ + \"#]+$\");\ni18n.phonenumbers.PhoneNumberUtil.VALID_ALPHA_PHONE_PATTERN_ = /(?:.*?[A-Za-z]){3}.*/;\ni18n.phonenumbers.PhoneNumberUtil.MIN_LENGTH_PHONE_NUMBER_PATTERN_ = \"[\" + i18n.phonenumbers.PhoneNumberUtil.VALID_DIGITS_ + \"]{\" + i18n.phonenumbers.PhoneNumberUtil.MIN_LENGTH_FOR_NSN_ + \"}\";\ni18n.phonenumbers.PhoneNumberUtil.VALID_PHONE_NUMBER_ = \"[\" + i18n.phonenumbers.PhoneNumberUtil.PLUS_CHARS_ + \"]*(?:[\" + i18n.phonenumbers.PhoneNumberUtil.VALID_PUNCTUATION + i18n.phonenumbers.PhoneNumberUtil.STAR_SIGN_ + \"]*[\" + i18n.phonenumbers.PhoneNumberUtil.VALID_DIGITS_ + \"]){3,}[\" + i18n.phonenumbers.PhoneNumberUtil.VALID_PUNCTUATION + i18n.phonenumbers.PhoneNumberUtil.STAR_SIGN_ + i18n.phonenumbers.PhoneNumberUtil.VALID_ALPHA_ + i18n.phonenumbers.PhoneNumberUtil.VALID_DIGITS_ + \"]*\";\ni18n.phonenumbers.PhoneNumberUtil.DEFAULT_EXTN_PREFIX_ = \" ext. \";\ni18n.phonenumbers.PhoneNumberUtil.CAPTURING_EXTN_DIGITS_ = \"([\" + i18n.phonenumbers.PhoneNumberUtil.VALID_DIGITS_ + \"]{1,7})\";\ni18n.phonenumbers.PhoneNumberUtil.EXTN_PATTERNS_FOR_PARSING_ = i18n.phonenumbers.PhoneNumberUtil.RFC3966_EXTN_PREFIX_ + i18n.phonenumbers.PhoneNumberUtil.CAPTURING_EXTN_DIGITS_ + \"|[ \\u00a0\\\\t,]*(?:e?xt(?:ensi(?:o\\u0301?|\\u00f3))?n?|\\uff45?\\uff58\\uff54\\uff4e?|\\u0434\\u043e\\u0431|[;,x\\uff58#\\uff03~\\uff5e]|int|anexo|\\uff49\\uff4e\\uff54)[:\\\\.\\uff0e]?[ \\u00a0\\\\t,-]*\" + i18n.phonenumbers.PhoneNumberUtil.CAPTURING_EXTN_DIGITS_ + \"#?|[- ]+([\" + i18n.phonenumbers.PhoneNumberUtil.VALID_DIGITS_ + \"]{1,5})#\";\ni18n.phonenumbers.PhoneNumberUtil.EXTN_PATTERN_ = new RegExp(\"(?:\" + i18n.phonenumbers.PhoneNumberUtil.EXTN_PATTERNS_FOR_PARSING_ + \")$\", \"i\");\ni18n.phonenumbers.PhoneNumberUtil.VALID_PHONE_NUMBER_PATTERN_ = new RegExp(\"^\" + i18n.phonenumbers.PhoneNumberUtil.MIN_LENGTH_PHONE_NUMBER_PATTERN_ + \"$|^\" + i18n.phonenumbers.PhoneNumberUtil.VALID_PHONE_NUMBER_ + \"(?:\" + i18n.phonenumbers.PhoneNumberUtil.EXTN_PATTERNS_FOR_PARSING_ + \")?$\", \"i\");\ni18n.phonenumbers.PhoneNumberUtil.NON_DIGITS_PATTERN_ = /\\D+/;\ni18n.phonenumbers.PhoneNumberUtil.FIRST_GROUP_PATTERN_ = /(\\$\\d)/;\ni18n.phonenumbers.PhoneNumberUtil.NP_PATTERN_ = /\\$NP/;\ni18n.phonenumbers.PhoneNumberUtil.FG_PATTERN_ = /\\$FG/;\ni18n.phonenumbers.PhoneNumberUtil.CC_PATTERN_ = /\\$CC/;\ni18n.phonenumbers.PhoneNumberUtil.FIRST_GROUP_ONLY_PREFIX_PATTERN_ = /^\\(?\\$1\\)?$/;\ni18n.phonenumbers.PhoneNumberUtil.REGION_CODE_FOR_NON_GEO_ENTITY = \"001\";\ni18n.phonenumbers.PhoneNumberFormat = {E164:0, INTERNATIONAL:1, NATIONAL:2, RFC3966:3};\ni18n.phonenumbers.PhoneNumberType = {FIXED_LINE:0, MOBILE:1, FIXED_LINE_OR_MOBILE:2, TOLL_FREE:3, PREMIUM_RATE:4, SHARED_COST:5, VOIP:6, PERSONAL_NUMBER:7, PAGER:8, UAN:9, VOICEMAIL:10, UNKNOWN:-1};\ni18n.phonenumbers.PhoneNumberUtil.MatchType = {NOT_A_NUMBER:0, NO_MATCH:1, SHORT_NSN_MATCH:2, NSN_MATCH:3, EXACT_MATCH:4};\ni18n.phonenumbers.PhoneNumberUtil.ValidationResult = {IS_POSSIBLE:0, IS_POSSIBLE_LOCAL_ONLY:4, INVALID_COUNTRY_CODE:1, TOO_SHORT:2, INVALID_LENGTH:5, TOO_LONG:3};\ni18n.phonenumbers.PhoneNumberUtil.extractPossibleNumber = function(a) {\n  var b = a.search(i18n.phonenumbers.PhoneNumberUtil.VALID_START_CHAR_PATTERN_);\n  0 <= b ? (a = a.substring(b), a = a.replace(i18n.phonenumbers.PhoneNumberUtil.UNWANTED_END_CHAR_PATTERN_, \"\"), b = a.search(i18n.phonenumbers.PhoneNumberUtil.SECOND_NUMBER_START_PATTERN_), 0 <= b && (a = a.substring(0, b))) : a = \"\";\n  return a;\n};\ni18n.phonenumbers.PhoneNumberUtil.isViablePhoneNumber = function(a) {\n  return a.length < i18n.phonenumbers.PhoneNumberUtil.MIN_LENGTH_FOR_NSN_ ? !1 : i18n.phonenumbers.PhoneNumberUtil.matchesEntirely(i18n.phonenumbers.PhoneNumberUtil.VALID_PHONE_NUMBER_PATTERN_, a);\n};\ni18n.phonenumbers.PhoneNumberUtil.normalize = function(a) {\n  return i18n.phonenumbers.PhoneNumberUtil.matchesEntirely(i18n.phonenumbers.PhoneNumberUtil.VALID_ALPHA_PHONE_PATTERN_, a) ? i18n.phonenumbers.PhoneNumberUtil.normalizeHelper_(a, i18n.phonenumbers.PhoneNumberUtil.ALL_NORMALIZATION_MAPPINGS_, !0) : i18n.phonenumbers.PhoneNumberUtil.normalizeDigitsOnly(a);\n};\ni18n.phonenumbers.PhoneNumberUtil.normalizeSB_ = function(a) {\n  var b = i18n.phonenumbers.PhoneNumberUtil.normalize(a.toString());\n  a.clear();\n  a.append(b);\n};\ni18n.phonenumbers.PhoneNumberUtil.normalizeDigitsOnly = function(a) {\n  return i18n.phonenumbers.PhoneNumberUtil.normalizeHelper_(a, i18n.phonenumbers.PhoneNumberUtil.DIGIT_MAPPINGS, !0);\n};\ni18n.phonenumbers.PhoneNumberUtil.normalizeDiallableCharsOnly = function(a) {\n  return i18n.phonenumbers.PhoneNumberUtil.normalizeHelper_(a, i18n.phonenumbers.PhoneNumberUtil.DIALLABLE_CHAR_MAPPINGS_, !0);\n};\ni18n.phonenumbers.PhoneNumberUtil.convertAlphaCharactersInNumber = function(a) {\n  return i18n.phonenumbers.PhoneNumberUtil.normalizeHelper_(a, i18n.phonenumbers.PhoneNumberUtil.ALL_NORMALIZATION_MAPPINGS_, !1);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getLengthOfGeographicalAreaCode = function(a) {\n  var b = this.getMetadataForRegion(this.getRegionCodeForNumber(a));\n  return null != b && (b.hasNationalPrefix() || a.hasItalianLeadingZero()) && this.isNumberGeographical(a) ? this.getLengthOfNationalDestinationCode(a) : 0;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getLengthOfNationalDestinationCode = function(a) {\n  if (a.hasExtension()) {\n    var b = a.clone();\n    b.clearExtension();\n  } else {\n    b = a;\n  }\n  b = this.format(b, i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL).split(i18n.phonenumbers.PhoneNumberUtil.NON_DIGITS_PATTERN_);\n  0 == b[0].length && b.shift();\n  return 2 >= b.length ? 0 : this.getNumberType(a) == i18n.phonenumbers.PhoneNumberType.MOBILE && (a = i18n.phonenumbers.PhoneNumberUtil.getCountryMobileToken(a.getCountryCodeOrDefault()), \"\" != a) ? b[2].length + a.length : b[1].length;\n};\ni18n.phonenumbers.PhoneNumberUtil.getCountryMobileToken = function(a) {\n  return i18n.phonenumbers.PhoneNumberUtil.MOBILE_TOKEN_MAPPINGS_[a] || \"\";\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getSupportedRegions = function() {\n  return goog.array.filter(Object.keys(i18n.phonenumbers.metadata.countryToMetadata), function(a) {\n    return isNaN(a);\n  });\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getSupportedGlobalNetworkCallingCodes = function() {\n  var a = goog.array.filter(Object.keys(i18n.phonenumbers.metadata.countryToMetadata), function(a) {\n    return !isNaN(a);\n  });\n  return goog.array.map(a, function(a) {\n    return parseInt(a, 10);\n  });\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getSupportedCallingCodes = function() {\n  var a = Object.keys(i18n.phonenumbers.metadata.countryCodeToRegionCodeMap);\n  return goog.array.join(this.getSupportedGlobalNetworkCallingCodes(), goog.array.map(a, function(a) {\n    return parseInt(a, 10);\n  }));\n};\ni18n.phonenumbers.PhoneNumberUtil.descHasPossibleNumberData_ = function(a) {\n  return null != a && (1 != a.possibleLengthCount() || -1 != a.possibleLengthArray()[0]);\n};\ni18n.phonenumbers.PhoneNumberUtil.descHasData_ = function(a) {\n  return null != a && (a.hasExampleNumber() || i18n.phonenumbers.PhoneNumberUtil.descHasPossibleNumberData_(a) || a.hasNationalNumberPattern());\n};\ni18n.phonenumbers.PhoneNumberUtil.getSupportedTypesForMetadata_ = function(a) {\n  var b = [];\n  goog.object.forEach(i18n.phonenumbers.PhoneNumberType, function(c) {\n    if (c != i18n.phonenumbers.PhoneNumberType.FIXED_LINE_OR_MOBILE && c != i18n.phonenumbers.PhoneNumberType.UNKNOWN) {\n      var d = i18n.phonenumbers.PhoneNumberUtil.getNumberDescByType_(a, c);\n      i18n.phonenumbers.PhoneNumberUtil.descHasData_(d) && b.push(c);\n    }\n  });\n  return b;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getSupportedTypesForRegion = function(a) {\n  return this.isValidRegionCode_(a) ? i18n.phonenumbers.PhoneNumberUtil.getSupportedTypesForMetadata_(this.getMetadataForRegion(a)) : [];\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getSupportedTypesForNonGeoEntity = function(a) {\n  a = this.getMetadataForNonGeographicalRegion(a);\n  return null == a ? [] : i18n.phonenumbers.PhoneNumberUtil.getSupportedTypesForMetadata_(a);\n};\ni18n.phonenumbers.PhoneNumberUtil.normalizeHelper_ = function(a, b, c) {\n  for (var d = new goog.string.StringBuffer, e, f, g = a.length, h = 0; h < g; ++h) {\n    e = a.charAt(h), f = b[e.toUpperCase()], null != f ? d.append(f) : c || d.append(e);\n  }\n  return d.toString();\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.formattingRuleHasFirstGroupOnly = function(a) {\n  return 0 == a.length || i18n.phonenumbers.PhoneNumberUtil.FIRST_GROUP_ONLY_PREFIX_PATTERN_.test(a);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isNumberGeographical = function(a) {\n  var b = this.getNumberType(a);\n  return b == i18n.phonenumbers.PhoneNumberType.FIXED_LINE || b == i18n.phonenumbers.PhoneNumberType.FIXED_LINE_OR_MOBILE || goog.array.contains(i18n.phonenumbers.PhoneNumberUtil.GEO_MOBILE_COUNTRIES_, a.getCountryCodeOrDefault()) && b == i18n.phonenumbers.PhoneNumberType.MOBILE;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isValidRegionCode_ = function(a) {\n  return null != a && isNaN(a) && a.toUpperCase() in i18n.phonenumbers.metadata.countryToMetadata;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.hasValidCountryCallingCode_ = function(a) {\n  return a in i18n.phonenumbers.metadata.countryCodeToRegionCodeMap;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.format = function(a, b) {\n  if (0 == a.getNationalNumber() && a.hasRawInput()) {\n    var c = a.getRawInputOrDefault();\n    if (0 < c.length) {\n      return c;\n    }\n  }\n  c = a.getCountryCodeOrDefault();\n  var d = this.getNationalSignificantNumber(a);\n  if (b == i18n.phonenumbers.PhoneNumberFormat.E164) {\n    return this.prefixNumberWithCountryCallingCode_(c, i18n.phonenumbers.PhoneNumberFormat.E164, d, \"\");\n  }\n  if (!this.hasValidCountryCallingCode_(c)) {\n    return d;\n  }\n  var e = this.getRegionCodeForCountryCode(c), f = this.getMetadataForRegionOrCallingCode_(c, e);\n  e = this.maybeGetFormattedExtension_(a, f, b);\n  d = this.formatNsn_(d, f, b);\n  return this.prefixNumberWithCountryCallingCode_(c, b, d, e);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.formatByPattern = function(a, b, c) {\n  var d = a.getCountryCodeOrDefault(), e = this.getNationalSignificantNumber(a);\n  if (!this.hasValidCountryCallingCode_(d)) {\n    return e;\n  }\n  var f = this.getRegionCodeForCountryCode(d);\n  f = this.getMetadataForRegionOrCallingCode_(d, f);\n  var g = this.chooseFormattingPatternForNumber_(c, e);\n  if (null != g) {\n    c = g.clone();\n    g = g.getNationalPrefixFormattingRuleOrDefault();\n    if (0 < g.length) {\n      var h = f.getNationalPrefixOrDefault();\n      0 < h.length ? (g = g.replace(i18n.phonenumbers.PhoneNumberUtil.NP_PATTERN_, h).replace(i18n.phonenumbers.PhoneNumberUtil.FG_PATTERN_, \"$1\"), c.setNationalPrefixFormattingRule(g)) : c.clearNationalPrefixFormattingRule();\n    }\n    e = this.formatNsnUsingPattern_(e, c, b);\n  }\n  a = this.maybeGetFormattedExtension_(a, f, b);\n  return this.prefixNumberWithCountryCallingCode_(d, b, e, a);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.formatNationalNumberWithCarrierCode = function(a, b) {\n  var c = a.getCountryCodeOrDefault(), d = this.getNationalSignificantNumber(a);\n  if (!this.hasValidCountryCallingCode_(c)) {\n    return d;\n  }\n  var e = this.getRegionCodeForCountryCode(c), f = this.getMetadataForRegionOrCallingCode_(c, e);\n  e = this.maybeGetFormattedExtension_(a, f, i18n.phonenumbers.PhoneNumberFormat.NATIONAL);\n  d = this.formatNsn_(d, f, i18n.phonenumbers.PhoneNumberFormat.NATIONAL, b);\n  return this.prefixNumberWithCountryCallingCode_(c, i18n.phonenumbers.PhoneNumberFormat.NATIONAL, d, e);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getMetadataForRegionOrCallingCode_ = function(a, b) {\n  return i18n.phonenumbers.PhoneNumberUtil.REGION_CODE_FOR_NON_GEO_ENTITY == b ? this.getMetadataForNonGeographicalRegion(a) : this.getMetadataForRegion(b);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.formatNationalNumberWithPreferredCarrierCode = function(a, b) {\n  return this.formatNationalNumberWithCarrierCode(a, 0 < a.getPreferredDomesticCarrierCodeOrDefault().length ? a.getPreferredDomesticCarrierCodeOrDefault() : b);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.formatNumberForMobileDialing = function(a, b, c) {\n  var d = a.getCountryCodeOrDefault();\n  if (!this.hasValidCountryCallingCode_(d)) {\n    return a.hasRawInput() ? a.getRawInputOrDefault() : \"\";\n  }\n  var e = \"\";\n  a = a.clone();\n  a.clearExtension();\n  var f = this.getRegionCodeForCountryCode(d), g = this.getNumberType(a), h = g != i18n.phonenumbers.PhoneNumberType.UNKNOWN;\n  if (b == f) {\n    e = g == i18n.phonenumbers.PhoneNumberType.FIXED_LINE || g == i18n.phonenumbers.PhoneNumberType.MOBILE || g == i18n.phonenumbers.PhoneNumberType.FIXED_LINE_OR_MOBILE, \"CO\" == f && g == i18n.phonenumbers.PhoneNumberType.FIXED_LINE ? e = this.formatNationalNumberWithCarrierCode(a, i18n.phonenumbers.PhoneNumberUtil.COLOMBIA_MOBILE_TO_FIXED_LINE_PREFIX_) : \"BR\" == f && e ? e = 0 < a.getPreferredDomesticCarrierCodeOrDefault().length ? this.formatNationalNumberWithPreferredCarrierCode(a, \"\") : \"\" :\n    d == i18n.phonenumbers.PhoneNumberUtil.NANPA_COUNTRY_CODE_ ? (b = this.getMetadataForRegion(b), e = this.canBeInternationallyDialled(a) && this.testNumberLength_(this.getNationalSignificantNumber(a), b) != i18n.phonenumbers.PhoneNumberUtil.ValidationResult.TOO_SHORT ? this.format(a, i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL) : this.format(a, i18n.phonenumbers.PhoneNumberFormat.NATIONAL)) : e = (f == i18n.phonenumbers.PhoneNumberUtil.REGION_CODE_FOR_NON_GEO_ENTITY || (\"MX\" == f || \"CL\" ==\n    f || \"UZ\" == f) && e) && this.canBeInternationallyDialled(a) ? this.format(a, i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL) : this.format(a, i18n.phonenumbers.PhoneNumberFormat.NATIONAL);\n  } else {\n    if (h && this.canBeInternationallyDialled(a)) {\n      return c ? this.format(a, i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL) : this.format(a, i18n.phonenumbers.PhoneNumberFormat.E164);\n    }\n  }\n  return c ? e : i18n.phonenumbers.PhoneNumberUtil.normalizeDiallableCharsOnly(e);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.formatOutOfCountryCallingNumber = function(a, b) {\n  if (!this.isValidRegionCode_(b)) {\n    return this.format(a, i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL);\n  }\n  var c = a.getCountryCodeOrDefault(), d = this.getNationalSignificantNumber(a);\n  if (!this.hasValidCountryCallingCode_(c)) {\n    return d;\n  }\n  if (c == i18n.phonenumbers.PhoneNumberUtil.NANPA_COUNTRY_CODE_) {\n    if (this.isNANPACountry(b)) {\n      return c + \" \" + this.format(a, i18n.phonenumbers.PhoneNumberFormat.NATIONAL);\n    }\n  } else {\n    if (c == this.getCountryCodeForValidRegion_(b)) {\n      return this.format(a, i18n.phonenumbers.PhoneNumberFormat.NATIONAL);\n    }\n  }\n  var e = this.getMetadataForRegion(b), f = e.getInternationalPrefixOrDefault(), g = \"\";\n  i18n.phonenumbers.PhoneNumberUtil.matchesEntirely(i18n.phonenumbers.PhoneNumberUtil.SINGLE_INTERNATIONAL_PREFIX_, f) ? g = f : e.hasPreferredInternationalPrefix() && (g = e.getPreferredInternationalPrefixOrDefault());\n  e = this.getRegionCodeForCountryCode(c);\n  e = this.getMetadataForRegionOrCallingCode_(c, e);\n  d = this.formatNsn_(d, e, i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL);\n  e = this.maybeGetFormattedExtension_(a, e, i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL);\n  return 0 < g.length ? g + \" \" + c + \" \" + d + e : this.prefixNumberWithCountryCallingCode_(c, i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL, d, e);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.formatInOriginalFormat = function(a, b) {\n  if (a.hasRawInput() && !this.hasFormattingPatternForNumber_(a)) {\n    return a.getRawInputOrDefault();\n  }\n  if (!a.hasCountryCodeSource()) {\n    return this.format(a, i18n.phonenumbers.PhoneNumberFormat.NATIONAL);\n  }\n  switch(a.getCountryCodeSource()) {\n    case i18n.phonenumbers.PhoneNumber.CountryCodeSource.FROM_NUMBER_WITH_PLUS_SIGN:\n      var c = this.format(a, i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL);\n      break;\n    case i18n.phonenumbers.PhoneNumber.CountryCodeSource.FROM_NUMBER_WITH_IDD:\n      c = this.formatOutOfCountryCallingNumber(a, b);\n      break;\n    case i18n.phonenumbers.PhoneNumber.CountryCodeSource.FROM_NUMBER_WITHOUT_PLUS_SIGN:\n      c = this.format(a, i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL).substring(1);\n      break;\n    default:\n      var d = this.getRegionCodeForCountryCode(a.getCountryCodeOrDefault()), e = this.getNddPrefixForRegion(d, !0);\n      c = this.format(a, i18n.phonenumbers.PhoneNumberFormat.NATIONAL);\n      if (null != e && 0 != e.length && !this.rawInputContainsNationalPrefix_(a.getRawInputOrDefault(), e, d) && (d = this.getMetadataForRegion(d), e = this.getNationalSignificantNumber(a), d = this.chooseFormattingPatternForNumber_(d.numberFormatArray(), e), null != d)) {\n        e = d.getNationalPrefixFormattingRuleOrDefault();\n        var f = e.indexOf(\"$1\");\n        0 >= f || (e = e.substring(0, f), e = i18n.phonenumbers.PhoneNumberUtil.normalizeDigitsOnly(e), 0 != e.length && (c = d.clone(), c.clearNationalPrefixFormattingRule(), c = this.formatByPattern(a, i18n.phonenumbers.PhoneNumberFormat.NATIONAL, [c])));\n      }\n  }\n  d = a.getRawInputOrDefault();\n  null != c && 0 < d.length && (e = i18n.phonenumbers.PhoneNumberUtil.normalizeDiallableCharsOnly(c), f = i18n.phonenumbers.PhoneNumberUtil.normalizeDiallableCharsOnly(d), e != f && (c = d));\n  return c;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.rawInputContainsNationalPrefix_ = function(a, b, c) {\n  a = i18n.phonenumbers.PhoneNumberUtil.normalizeDigitsOnly(a);\n  if (goog.string.startsWith(a, b)) {\n    try {\n      return this.isValidNumber(this.parse(a.substring(b.length), c));\n    } catch (d) {\n    }\n  }\n  return !1;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.hasFormattingPatternForNumber_ = function(a) {\n  var b = a.getCountryCodeOrDefault(), c = this.getRegionCodeForCountryCode(b);\n  b = this.getMetadataForRegionOrCallingCode_(b, c);\n  if (null == b) {\n    return !1;\n  }\n  a = this.getNationalSignificantNumber(a);\n  return null != this.chooseFormattingPatternForNumber_(b.numberFormatArray(), a);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.formatOutOfCountryKeepingAlphaChars = function(a, b) {\n  var c = a.getRawInputOrDefault();\n  if (0 == c.length) {\n    return this.formatOutOfCountryCallingNumber(a, b);\n  }\n  var d = a.getCountryCodeOrDefault();\n  if (!this.hasValidCountryCallingCode_(d)) {\n    return c;\n  }\n  c = i18n.phonenumbers.PhoneNumberUtil.normalizeHelper_(c, i18n.phonenumbers.PhoneNumberUtil.ALL_PLUS_NUMBER_GROUPING_SYMBOLS_, !0);\n  var e = this.getNationalSignificantNumber(a);\n  if (3 < e.length) {\n    var f = c.indexOf(e.substring(0, 3));\n    -1 != f && (c = c.substring(f));\n  }\n  f = this.getMetadataForRegion(b);\n  if (d == i18n.phonenumbers.PhoneNumberUtil.NANPA_COUNTRY_CODE_) {\n    if (this.isNANPACountry(b)) {\n      return d + \" \" + c;\n    }\n  } else {\n    if (null != f && d == this.getCountryCodeForValidRegion_(b)) {\n      d = this.chooseFormattingPatternForNumber_(f.numberFormatArray(), e);\n      if (null == d) {\n        return c;\n      }\n      d = d.clone();\n      d.setPattern(\"(\\\\d+)(.*)\");\n      d.setFormat(\"$1$2\");\n      return this.formatNsnUsingPattern_(c, d, i18n.phonenumbers.PhoneNumberFormat.NATIONAL);\n    }\n  }\n  e = \"\";\n  null != f && (e = f.getInternationalPrefixOrDefault(), e = i18n.phonenumbers.PhoneNumberUtil.matchesEntirely(i18n.phonenumbers.PhoneNumberUtil.SINGLE_INTERNATIONAL_PREFIX_, e) ? e : f.getPreferredInternationalPrefixOrDefault());\n  f = this.getRegionCodeForCountryCode(d);\n  f = this.getMetadataForRegionOrCallingCode_(d, f);\n  f = this.maybeGetFormattedExtension_(a, f, i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL);\n  return 0 < e.length ? e + \" \" + d + \" \" + c + f : this.prefixNumberWithCountryCallingCode_(d, i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL, c, f);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getNationalSignificantNumber = function(a) {\n  if (!a.hasNationalNumber()) {\n    return \"\";\n  }\n  var b = \"\" + a.getNationalNumber();\n  return a.hasItalianLeadingZero() && a.getItalianLeadingZero() && 0 < a.getNumberOfLeadingZerosOrDefault() ? Array(a.getNumberOfLeadingZerosOrDefault() + 1).join(\"0\") + b : b;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.prefixNumberWithCountryCallingCode_ = function(a, b, c, d) {\n  switch(b) {\n    case i18n.phonenumbers.PhoneNumberFormat.E164:\n      return i18n.phonenumbers.PhoneNumberUtil.PLUS_SIGN + a + c + d;\n    case i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL:\n      return i18n.phonenumbers.PhoneNumberUtil.PLUS_SIGN + a + \" \" + c + d;\n    case i18n.phonenumbers.PhoneNumberFormat.RFC3966:\n      return i18n.phonenumbers.PhoneNumberUtil.RFC3966_PREFIX_ + i18n.phonenumbers.PhoneNumberUtil.PLUS_SIGN + a + \"-\" + c + d;\n    default:\n      return c + d;\n  }\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.formatNsn_ = function(a, b, c, d) {\n  b = 0 == b.intlNumberFormatArray().length || c == i18n.phonenumbers.PhoneNumberFormat.NATIONAL ? b.numberFormatArray() : b.intlNumberFormatArray();\n  b = this.chooseFormattingPatternForNumber_(b, a);\n  return null == b ? a : this.formatNsnUsingPattern_(a, b, c, d);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.chooseFormattingPatternForNumber_ = function(a, b) {\n  for (var c, d = a.length, e = 0; e < d; ++e) {\n    c = a[e];\n    var f = c.leadingDigitsPatternCount();\n    if (0 == f || 0 == b.search(c.getLeadingDigitsPattern(f - 1))) {\n      if (f = new RegExp(c.getPattern()), i18n.phonenumbers.PhoneNumberUtil.matchesEntirely(f, b)) {\n        return c;\n      }\n    }\n  }\n  return null;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.formatNsnUsingPattern_ = function(a, b, c, d) {\n  var e = b.getFormatOrDefault(), f = new RegExp(b.getPattern()), g = b.getDomesticCarrierCodeFormattingRuleOrDefault();\n  c == i18n.phonenumbers.PhoneNumberFormat.NATIONAL && null != d && 0 < d.length && 0 < g.length ? (b = g.replace(i18n.phonenumbers.PhoneNumberUtil.CC_PATTERN_, d), e = e.replace(i18n.phonenumbers.PhoneNumberUtil.FIRST_GROUP_PATTERN_, b), a = a.replace(f, e)) : (b = b.getNationalPrefixFormattingRuleOrDefault(), a = c == i18n.phonenumbers.PhoneNumberFormat.NATIONAL && null != b && 0 < b.length ? a.replace(f, e.replace(i18n.phonenumbers.PhoneNumberUtil.FIRST_GROUP_PATTERN_, b)) : a.replace(f, e));\n  c == i18n.phonenumbers.PhoneNumberFormat.RFC3966 && (a = a.replace(new RegExp(\"^\" + i18n.phonenumbers.PhoneNumberUtil.SEPARATOR_PATTERN_), \"\"), a = a.replace(new RegExp(i18n.phonenumbers.PhoneNumberUtil.SEPARATOR_PATTERN_, \"g\"), \"-\"));\n  return a;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getExampleNumber = function(a) {\n  return this.getExampleNumberForType(a, i18n.phonenumbers.PhoneNumberType.FIXED_LINE);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getExampleNumberForType = function(a, b) {\n  if (!this.isValidRegionCode_(a)) {\n    return null;\n  }\n  var c = i18n.phonenumbers.PhoneNumberUtil.getNumberDescByType_(this.getMetadataForRegion(a), b);\n  try {\n    if (c.hasExampleNumber()) {\n      return this.parse(c.getExampleNumber(), a);\n    }\n  } catch (d) {\n  }\n  return null;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getExampleNumberForNonGeoEntity = function(a) {\n  var b = this.getMetadataForNonGeographicalRegion(a);\n  if (null != b && (b = goog.array.find([b.getMobile(), b.getTollFree(), b.getSharedCost(), b.getVoip(), b.getVoicemail(), b.getUan(), b.getPremiumRate()], function(a, b) {\n    return a.hasExampleNumber();\n  }), null != b)) {\n    try {\n      return this.parse(\"+\" + a + b.getExampleNumber(), \"ZZ\");\n    } catch (c) {\n    }\n  }\n  return null;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.maybeGetFormattedExtension_ = function(a, b, c) {\n  return a.hasExtension() && 0 != a.getExtension().length ? c == i18n.phonenumbers.PhoneNumberFormat.RFC3966 ? i18n.phonenumbers.PhoneNumberUtil.RFC3966_EXTN_PREFIX_ + a.getExtension() : b.hasPreferredExtnPrefix() ? b.getPreferredExtnPrefix() + a.getExtensionOrDefault() : i18n.phonenumbers.PhoneNumberUtil.DEFAULT_EXTN_PREFIX_ + a.getExtensionOrDefault() : \"\";\n};\ni18n.phonenumbers.PhoneNumberUtil.getNumberDescByType_ = function(a, b) {\n  switch(b) {\n    case i18n.phonenumbers.PhoneNumberType.PREMIUM_RATE:\n      return a.getPremiumRate();\n    case i18n.phonenumbers.PhoneNumberType.TOLL_FREE:\n      return a.getTollFree();\n    case i18n.phonenumbers.PhoneNumberType.MOBILE:\n      return a.getMobile();\n    case i18n.phonenumbers.PhoneNumberType.FIXED_LINE:\n    case i18n.phonenumbers.PhoneNumberType.FIXED_LINE_OR_MOBILE:\n      return a.getFixedLine();\n    case i18n.phonenumbers.PhoneNumberType.SHARED_COST:\n      return a.getSharedCost();\n    case i18n.phonenumbers.PhoneNumberType.VOIP:\n      return a.getVoip();\n    case i18n.phonenumbers.PhoneNumberType.PERSONAL_NUMBER:\n      return a.getPersonalNumber();\n    case i18n.phonenumbers.PhoneNumberType.PAGER:\n      return a.getPager();\n    case i18n.phonenumbers.PhoneNumberType.UAN:\n      return a.getUan();\n    case i18n.phonenumbers.PhoneNumberType.VOICEMAIL:\n      return a.getVoicemail();\n    default:\n      return a.getGeneralDesc();\n  }\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getNumberType = function(a) {\n  var b = this.getRegionCodeForNumber(a);\n  b = this.getMetadataForRegionOrCallingCode_(a.getCountryCodeOrDefault(), b);\n  if (null == b) {\n    return i18n.phonenumbers.PhoneNumberType.UNKNOWN;\n  }\n  a = this.getNationalSignificantNumber(a);\n  return this.getNumberTypeHelper_(a, b);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getNumberTypeHelper_ = function(a, b) {\n  return this.isNumberMatchingDesc_(a, b.getGeneralDesc()) ? this.isNumberMatchingDesc_(a, b.getPremiumRate()) ? i18n.phonenumbers.PhoneNumberType.PREMIUM_RATE : this.isNumberMatchingDesc_(a, b.getTollFree()) ? i18n.phonenumbers.PhoneNumberType.TOLL_FREE : this.isNumberMatchingDesc_(a, b.getSharedCost()) ? i18n.phonenumbers.PhoneNumberType.SHARED_COST : this.isNumberMatchingDesc_(a, b.getVoip()) ? i18n.phonenumbers.PhoneNumberType.VOIP : this.isNumberMatchingDesc_(a, b.getPersonalNumber()) ? i18n.phonenumbers.PhoneNumberType.PERSONAL_NUMBER :\n  this.isNumberMatchingDesc_(a, b.getPager()) ? i18n.phonenumbers.PhoneNumberType.PAGER : this.isNumberMatchingDesc_(a, b.getUan()) ? i18n.phonenumbers.PhoneNumberType.UAN : this.isNumberMatchingDesc_(a, b.getVoicemail()) ? i18n.phonenumbers.PhoneNumberType.VOICEMAIL : this.isNumberMatchingDesc_(a, b.getFixedLine()) ? b.getSameMobileAndFixedLinePattern() || this.isNumberMatchingDesc_(a, b.getMobile()) ? i18n.phonenumbers.PhoneNumberType.FIXED_LINE_OR_MOBILE : i18n.phonenumbers.PhoneNumberType.FIXED_LINE :\n  !b.getSameMobileAndFixedLinePattern() && this.isNumberMatchingDesc_(a, b.getMobile()) ? i18n.phonenumbers.PhoneNumberType.MOBILE : i18n.phonenumbers.PhoneNumberType.UNKNOWN : i18n.phonenumbers.PhoneNumberType.UNKNOWN;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getMetadataForRegion = function(a) {\n  if (null == a) {\n    return null;\n  }\n  a = a.toUpperCase();\n  var b = this.regionToMetadataMap[a];\n  if (null == b) {\n    b = new goog.proto2.PbLiteSerializer;\n    var c = i18n.phonenumbers.metadata.countryToMetadata[a];\n    if (null == c) {\n      return null;\n    }\n    b = b.deserialize(i18n.phonenumbers.PhoneMetadata.getDescriptor(), c);\n    this.regionToMetadataMap[a] = b;\n  }\n  return b;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getMetadataForNonGeographicalRegion = function(a) {\n  return this.getMetadataForRegion(\"\" + a);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isNumberMatchingDesc_ = function(a, b) {\n  var c = a.length;\n  return 0 < b.possibleLengthCount() && -1 == goog.array.indexOf(b.possibleLengthArray(), c) ? !1 : i18n.phonenumbers.PhoneNumberUtil.matchesEntirely(b.getNationalNumberPatternOrDefault(), a);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isValidNumber = function(a) {\n  var b = this.getRegionCodeForNumber(a);\n  return this.isValidNumberForRegion(a, b);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isValidNumberForRegion = function(a, b) {\n  var c = a.getCountryCodeOrDefault(), d = this.getMetadataForRegionOrCallingCode_(c, b);\n  if (null == d || i18n.phonenumbers.PhoneNumberUtil.REGION_CODE_FOR_NON_GEO_ENTITY != b && c != this.getCountryCodeForValidRegion_(b)) {\n    return !1;\n  }\n  c = this.getNationalSignificantNumber(a);\n  return this.getNumberTypeHelper_(c, d) != i18n.phonenumbers.PhoneNumberType.UNKNOWN;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getRegionCodeForNumber = function(a) {\n  if (null == a) {\n    return null;\n  }\n  var b = a.getCountryCodeOrDefault();\n  b = i18n.phonenumbers.metadata.countryCodeToRegionCodeMap[b];\n  return null == b ? null : 1 == b.length ? b[0] : this.getRegionCodeForNumberFromRegionList_(a, b);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getRegionCodeForNumberFromRegionList_ = function(a, b) {\n  for (var c = this.getNationalSignificantNumber(a), d, e = b.length, f = 0; f < e; f++) {\n    d = b[f];\n    var g = this.getMetadataForRegion(d);\n    if (g.hasLeadingDigits()) {\n      if (0 == c.search(g.getLeadingDigits())) {\n        return d;\n      }\n    } else {\n      if (this.getNumberTypeHelper_(c, g) != i18n.phonenumbers.PhoneNumberType.UNKNOWN) {\n        return d;\n      }\n    }\n  }\n  return null;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getRegionCodeForCountryCode = function(a) {\n  a = i18n.phonenumbers.metadata.countryCodeToRegionCodeMap[a];\n  return null == a ? i18n.phonenumbers.PhoneNumberUtil.UNKNOWN_REGION_ : a[0];\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getRegionCodesForCountryCode = function(a) {\n  a = i18n.phonenumbers.metadata.countryCodeToRegionCodeMap[a];\n  return null == a ? [] : a;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getCountryCodeForRegion = function(a) {\n  return this.isValidRegionCode_(a) ? this.getCountryCodeForValidRegion_(a) : 0;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getCountryCodeForValidRegion_ = function(a) {\n  var b = this.getMetadataForRegion(a);\n  if (null == b) {\n    throw Error(\"Invalid region code: \" + a);\n  }\n  return b.getCountryCodeOrDefault();\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getNddPrefixForRegion = function(a, b) {\n  var c = this.getMetadataForRegion(a);\n  if (null == c) {\n    return null;\n  }\n  c = c.getNationalPrefixOrDefault();\n  if (0 == c.length) {\n    return null;\n  }\n  b && (c = c.replace(\"~\", \"\"));\n  return c;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isNANPACountry = function(a) {\n  return null != a && goog.array.contains(i18n.phonenumbers.metadata.countryCodeToRegionCodeMap[i18n.phonenumbers.PhoneNumberUtil.NANPA_COUNTRY_CODE_], a.toUpperCase());\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isAlphaNumber = function(a) {\n  if (!i18n.phonenumbers.PhoneNumberUtil.isViablePhoneNumber(a)) {\n    return !1;\n  }\n  a = new goog.string.StringBuffer(a);\n  this.maybeStripExtension(a);\n  return i18n.phonenumbers.PhoneNumberUtil.matchesEntirely(i18n.phonenumbers.PhoneNumberUtil.VALID_ALPHA_PHONE_PATTERN_, a.toString());\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isPossibleNumber = function(a) {\n  a = this.isPossibleNumberWithReason(a);\n  return a == i18n.phonenumbers.PhoneNumberUtil.ValidationResult.IS_POSSIBLE || a == i18n.phonenumbers.PhoneNumberUtil.ValidationResult.IS_POSSIBLE_LOCAL_ONLY;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isPossibleNumberForType = function(a, b) {\n  var c = this.isPossibleNumberForTypeWithReason(a, b);\n  return c == i18n.phonenumbers.PhoneNumberUtil.ValidationResult.IS_POSSIBLE || c == i18n.phonenumbers.PhoneNumberUtil.ValidationResult.IS_POSSIBLE_LOCAL_ONLY;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.testNumberLength_ = function(a, b) {\n  return this.testNumberLengthForType_(a, b, i18n.phonenumbers.PhoneNumberType.UNKNOWN);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.testNumberLengthForType_ = function(a, b, c) {\n  var d = i18n.phonenumbers.PhoneNumberUtil.getNumberDescByType_(b, c), e = 0 == d.possibleLengthCount() ? b.getGeneralDesc().possibleLengthArray() : d.possibleLengthArray();\n  d = d.possibleLengthLocalOnlyArray();\n  if (c == i18n.phonenumbers.PhoneNumberType.FIXED_LINE_OR_MOBILE) {\n    if (i18n.phonenumbers.PhoneNumberUtil.descHasPossibleNumberData_(i18n.phonenumbers.PhoneNumberUtil.getNumberDescByType_(b, i18n.phonenumbers.PhoneNumberType.FIXED_LINE))) {\n      c = i18n.phonenumbers.PhoneNumberUtil.getNumberDescByType_(b, i18n.phonenumbers.PhoneNumberType.MOBILE), i18n.phonenumbers.PhoneNumberUtil.descHasPossibleNumberData_(c) && (e = e.concat(0 == c.possibleLengthCount() ? b.getGeneralDesc().possibleLengthArray() : c.possibleLengthArray()), goog.array.sort(e), 0 == d.length ? d = c.possibleLengthLocalOnlyArray() : (d = d.concat(c.possibleLengthLocalOnlyArray()), goog.array.sort(d)));\n    } else {\n      return this.testNumberLengthForType_(a, b, i18n.phonenumbers.PhoneNumberType.MOBILE);\n    }\n  }\n  if (-1 == e[0]) {\n    return i18n.phonenumbers.PhoneNumberUtil.ValidationResult.INVALID_LENGTH;\n  }\n  a = a.length;\n  if (-1 < goog.array.indexOf(d, a)) {\n    return i18n.phonenumbers.PhoneNumberUtil.ValidationResult.IS_POSSIBLE_LOCAL_ONLY;\n  }\n  b = e[0];\n  return b == a ? i18n.phonenumbers.PhoneNumberUtil.ValidationResult.IS_POSSIBLE : b > a ? i18n.phonenumbers.PhoneNumberUtil.ValidationResult.TOO_SHORT : e[e.length - 1] < a ? i18n.phonenumbers.PhoneNumberUtil.ValidationResult.TOO_LONG : -1 < goog.array.indexOf(e, a, 1) ? i18n.phonenumbers.PhoneNumberUtil.ValidationResult.IS_POSSIBLE : i18n.phonenumbers.PhoneNumberUtil.ValidationResult.INVALID_LENGTH;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isPossibleNumberWithReason = function(a) {\n  return this.isPossibleNumberForTypeWithReason(a, i18n.phonenumbers.PhoneNumberType.UNKNOWN);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isPossibleNumberForTypeWithReason = function(a, b) {\n  var c = this.getNationalSignificantNumber(a), d = a.getCountryCodeOrDefault();\n  if (!this.hasValidCountryCallingCode_(d)) {\n    return i18n.phonenumbers.PhoneNumberUtil.ValidationResult.INVALID_COUNTRY_CODE;\n  }\n  var e = this.getRegionCodeForCountryCode(d);\n  d = this.getMetadataForRegionOrCallingCode_(d, e);\n  return this.testNumberLengthForType_(c, d, b);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isPossibleNumberString = function(a, b) {\n  try {\n    return this.isPossibleNumber(this.parse(a, b));\n  } catch (c) {\n    return !1;\n  }\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.truncateTooLongNumber = function(a) {\n  if (this.isValidNumber(a)) {\n    return !0;\n  }\n  var b = a.clone(), c = a.getNationalNumberOrDefault();\n  do {\n    if (c = Math.floor(c / 10), b.setNationalNumber(c), 0 == c || this.isPossibleNumberWithReason(b) == i18n.phonenumbers.PhoneNumberUtil.ValidationResult.TOO_SHORT) {\n      return !1;\n    }\n  } while (!this.isValidNumber(b));\n  a.setNationalNumber(c);\n  return !0;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.extractCountryCode = function(a, b) {\n  var c = a.toString();\n  if (0 == c.length || \"0\" == c.charAt(0)) {\n    return 0;\n  }\n  for (var d, e = c.length, f = 1; f <= i18n.phonenumbers.PhoneNumberUtil.MAX_LENGTH_COUNTRY_CODE_ && f <= e; ++f) {\n    if (d = parseInt(c.substring(0, f), 10), d in i18n.phonenumbers.metadata.countryCodeToRegionCodeMap) {\n      return b.append(c.substring(f)), d;\n    }\n  }\n  return 0;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.maybeExtractCountryCode = function(a, b, c, d, e) {\n  if (0 == a.length) {\n    return 0;\n  }\n  a = new goog.string.StringBuffer(a);\n  var f;\n  null != b && (f = b.getInternationalPrefix());\n  null == f && (f = \"NonMatch\");\n  f = this.maybeStripInternationalPrefixAndNormalize(a, f);\n  d && e.setCountryCodeSource(f);\n  if (f != i18n.phonenumbers.PhoneNumber.CountryCodeSource.FROM_DEFAULT_COUNTRY) {\n    if (a.getLength() <= i18n.phonenumbers.PhoneNumberUtil.MIN_LENGTH_FOR_NSN_) {\n      throw Error(i18n.phonenumbers.Error.TOO_SHORT_AFTER_IDD);\n    }\n    b = this.extractCountryCode(a, c);\n    if (0 != b) {\n      return e.setCountryCode(b), b;\n    }\n    throw Error(i18n.phonenumbers.Error.INVALID_COUNTRY_CODE);\n  }\n  if (null != b) {\n    f = b.getCountryCodeOrDefault();\n    var g = \"\" + f, h = a.toString();\n    if (goog.string.startsWith(h, g) && (g = new goog.string.StringBuffer(h.substring(g.length)), h = b.getGeneralDesc(), h = new RegExp(h.getNationalNumberPatternOrDefault()), this.maybeStripNationalPrefixAndCarrierCode(g, b, null), g = g.toString(), !i18n.phonenumbers.PhoneNumberUtil.matchesEntirely(h, a.toString()) && i18n.phonenumbers.PhoneNumberUtil.matchesEntirely(h, g) || this.testNumberLength_(a.toString(), b) == i18n.phonenumbers.PhoneNumberUtil.ValidationResult.TOO_LONG)) {\n      return c.append(g), d && e.setCountryCodeSource(i18n.phonenumbers.PhoneNumber.CountryCodeSource.FROM_NUMBER_WITHOUT_PLUS_SIGN), e.setCountryCode(f), f;\n    }\n  }\n  e.setCountryCode(0);\n  return 0;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.parsePrefixAsIdd_ = function(a, b) {\n  var c = b.toString();\n  if (0 == c.search(a)) {\n    var d = c.match(a)[0].length, e = c.substring(d).match(i18n.phonenumbers.PhoneNumberUtil.CAPTURING_DIGIT_PATTERN);\n    if (e && null != e[1] && 0 < e[1].length && \"0\" == i18n.phonenumbers.PhoneNumberUtil.normalizeDigitsOnly(e[1])) {\n      return !1;\n    }\n    b.clear();\n    b.append(c.substring(d));\n    return !0;\n  }\n  return !1;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.maybeStripInternationalPrefixAndNormalize = function(a, b) {\n  var c = a.toString();\n  if (0 == c.length) {\n    return i18n.phonenumbers.PhoneNumber.CountryCodeSource.FROM_DEFAULT_COUNTRY;\n  }\n  if (i18n.phonenumbers.PhoneNumberUtil.LEADING_PLUS_CHARS_PATTERN.test(c)) {\n    return c = c.replace(i18n.phonenumbers.PhoneNumberUtil.LEADING_PLUS_CHARS_PATTERN, \"\"), a.clear(), a.append(i18n.phonenumbers.PhoneNumberUtil.normalize(c)), i18n.phonenumbers.PhoneNumber.CountryCodeSource.FROM_NUMBER_WITH_PLUS_SIGN;\n  }\n  c = new RegExp(b);\n  i18n.phonenumbers.PhoneNumberUtil.normalizeSB_(a);\n  return this.parsePrefixAsIdd_(c, a) ? i18n.phonenumbers.PhoneNumber.CountryCodeSource.FROM_NUMBER_WITH_IDD : i18n.phonenumbers.PhoneNumber.CountryCodeSource.FROM_DEFAULT_COUNTRY;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.maybeStripNationalPrefixAndCarrierCode = function(a, b, c) {\n  var d = a.toString(), e = d.length, f = b.getNationalPrefixForParsing();\n  if (0 == e || null == f || 0 == f.length) {\n    return !1;\n  }\n  var g = new RegExp(\"^(?:\" + f + \")\");\n  if (e = g.exec(d)) {\n    f = new RegExp(b.getGeneralDesc().getNationalNumberPatternOrDefault());\n    var h = i18n.phonenumbers.PhoneNumberUtil.matchesEntirely(f, d), k = e.length - 1;\n    b = b.getNationalPrefixTransformRule();\n    if (null == b || 0 == b.length || null == e[k] || 0 == e[k].length) {\n      if (h && !i18n.phonenumbers.PhoneNumberUtil.matchesEntirely(f, d.substring(e[0].length))) {\n        return !1;\n      }\n      null != c && 0 < k && null != e[k] && c.append(e[1]);\n      a.set(d.substring(e[0].length));\n    } else {\n      d = d.replace(g, b);\n      if (h && !i18n.phonenumbers.PhoneNumberUtil.matchesEntirely(f, d)) {\n        return !1;\n      }\n      null != c && 0 < k && c.append(e[1]);\n      a.set(d);\n    }\n    return !0;\n  }\n  return !1;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.maybeStripExtension = function(a) {\n  var b = a.toString(), c = b.search(i18n.phonenumbers.PhoneNumberUtil.EXTN_PATTERN_);\n  if (0 <= c && i18n.phonenumbers.PhoneNumberUtil.isViablePhoneNumber(b.substring(0, c))) {\n    for (var d = b.match(i18n.phonenumbers.PhoneNumberUtil.EXTN_PATTERN_), e = d.length, f = 1; f < e; ++f) {\n      if (null != d[f] && 0 < d[f].length) {\n        return a.clear(), a.append(b.substring(0, c)), d[f];\n      }\n    }\n  }\n  return \"\";\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.checkRegionForParsing_ = function(a, b) {\n  return this.isValidRegionCode_(b) || null != a && 0 < a.length && i18n.phonenumbers.PhoneNumberUtil.LEADING_PLUS_CHARS_PATTERN.test(a);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.parse = function(a, b) {\n  return this.parseHelper_(a, b, !1, !0);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.parseAndKeepRawInput = function(a, b) {\n  if (!this.isValidRegionCode_(b) && 0 < a.length && a.charAt(0) != i18n.phonenumbers.PhoneNumberUtil.PLUS_SIGN) {\n    throw Error(i18n.phonenumbers.Error.INVALID_COUNTRY_CODE);\n  }\n  return this.parseHelper_(a, b, !0, !0);\n};\ni18n.phonenumbers.PhoneNumberUtil.setItalianLeadingZerosForPhoneNumber_ = function(a, b) {\n  if (1 < a.length && \"0\" == a.charAt(0)) {\n    b.setItalianLeadingZero(!0);\n    for (var c = 1; c < a.length - 1 && \"0\" == a.charAt(c);) {\n      c++;\n    }\n    1 != c && b.setNumberOfLeadingZeros(c);\n  }\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.parseHelper_ = function(a, b, c, d) {\n  if (null == a) {\n    throw Error(i18n.phonenumbers.Error.NOT_A_NUMBER);\n  }\n  if (a.length > i18n.phonenumbers.PhoneNumberUtil.MAX_INPUT_STRING_LENGTH_) {\n    throw Error(i18n.phonenumbers.Error.TOO_LONG);\n  }\n  var e = new goog.string.StringBuffer;\n  this.buildNationalNumberForParsing_(a, e);\n  if (!i18n.phonenumbers.PhoneNumberUtil.isViablePhoneNumber(e.toString())) {\n    throw Error(i18n.phonenumbers.Error.NOT_A_NUMBER);\n  }\n  if (d && !this.checkRegionForParsing_(e.toString(), b)) {\n    throw Error(i18n.phonenumbers.Error.INVALID_COUNTRY_CODE);\n  }\n  d = new i18n.phonenumbers.PhoneNumber;\n  c && d.setRawInput(a);\n  a = this.maybeStripExtension(e);\n  0 < a.length && d.setExtension(a);\n  var f = this.getMetadataForRegion(b);\n  a = new goog.string.StringBuffer;\n  var g = 0, h = e.toString();\n  try {\n    g = this.maybeExtractCountryCode(h, f, a, c, d);\n  } catch (k) {\n    if (k.message == i18n.phonenumbers.Error.INVALID_COUNTRY_CODE && i18n.phonenumbers.PhoneNumberUtil.LEADING_PLUS_CHARS_PATTERN.test(h)) {\n      if (h = h.replace(i18n.phonenumbers.PhoneNumberUtil.LEADING_PLUS_CHARS_PATTERN, \"\"), g = this.maybeExtractCountryCode(h, f, a, c, d), 0 == g) {\n        throw k;\n      }\n    } else {\n      throw k;\n    }\n  }\n  0 != g ? (e = this.getRegionCodeForCountryCode(g), e != b && (f = this.getMetadataForRegionOrCallingCode_(g, e))) : (i18n.phonenumbers.PhoneNumberUtil.normalizeSB_(e), a.append(e.toString()), null != b ? (g = f.getCountryCodeOrDefault(), d.setCountryCode(g)) : c && d.clearCountryCodeSource());\n  if (a.getLength() < i18n.phonenumbers.PhoneNumberUtil.MIN_LENGTH_FOR_NSN_) {\n    throw Error(i18n.phonenumbers.Error.TOO_SHORT_NSN);\n  }\n  null != f && (b = new goog.string.StringBuffer, e = new goog.string.StringBuffer(a.toString()), this.maybeStripNationalPrefixAndCarrierCode(e, f, b), f = this.testNumberLength_(e.toString(), f), g = i18n.phonenumbers.PhoneNumberUtil.ValidationResult, f != g.TOO_SHORT && f != g.IS_POSSIBLE_LOCAL_ONLY && f != g.INVALID_LENGTH && (a = e, c && 0 < b.toString().length && d.setPreferredDomesticCarrierCode(b.toString())));\n  c = a.toString();\n  a = c.length;\n  if (a < i18n.phonenumbers.PhoneNumberUtil.MIN_LENGTH_FOR_NSN_) {\n    throw Error(i18n.phonenumbers.Error.TOO_SHORT_NSN);\n  }\n  if (a > i18n.phonenumbers.PhoneNumberUtil.MAX_LENGTH_FOR_NSN_) {\n    throw Error(i18n.phonenumbers.Error.TOO_LONG);\n  }\n  i18n.phonenumbers.PhoneNumberUtil.setItalianLeadingZerosForPhoneNumber_(c, d);\n  d.setNationalNumber(parseInt(c, 10));\n  return d;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.buildNationalNumberForParsing_ = function(a, b) {\n  var c = a.indexOf(i18n.phonenumbers.PhoneNumberUtil.RFC3966_PHONE_CONTEXT_);\n  if (0 <= c) {\n    var d = c + i18n.phonenumbers.PhoneNumberUtil.RFC3966_PHONE_CONTEXT_.length;\n    if (a.charAt(d) == i18n.phonenumbers.PhoneNumberUtil.PLUS_SIGN) {\n      var e = a.indexOf(\";\", d);\n      0 < e ? b.append(a.substring(d, e)) : b.append(a.substring(d));\n    }\n    d = a.indexOf(i18n.phonenumbers.PhoneNumberUtil.RFC3966_PREFIX_);\n    b.append(a.substring(0 <= d ? d + i18n.phonenumbers.PhoneNumberUtil.RFC3966_PREFIX_.length : 0, c));\n  } else {\n    b.append(i18n.phonenumbers.PhoneNumberUtil.extractPossibleNumber(a));\n  }\n  c = b.toString();\n  d = c.indexOf(i18n.phonenumbers.PhoneNumberUtil.RFC3966_ISDN_SUBADDRESS_);\n  0 < d && (b.clear(), b.append(c.substring(0, d)));\n};\ni18n.phonenumbers.PhoneNumberUtil.copyCoreFieldsOnly_ = function(a) {\n  var b = new i18n.phonenumbers.PhoneNumber;\n  b.setCountryCode(a.getCountryCodeOrDefault());\n  b.setNationalNumber(a.getNationalNumberOrDefault());\n  0 < a.getExtensionOrDefault().length && b.setExtension(a.getExtensionOrDefault());\n  a.getItalianLeadingZero() && (b.setItalianLeadingZero(!0), b.setNumberOfLeadingZeros(a.getNumberOfLeadingZerosOrDefault()));\n  return b;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isNumberMatch = function(a, b) {\n  if (\"string\" == typeof a) {\n    try {\n      var c = this.parse(a, i18n.phonenumbers.PhoneNumberUtil.UNKNOWN_REGION_);\n    } catch (g) {\n      if (g.message != i18n.phonenumbers.Error.INVALID_COUNTRY_CODE) {\n        return i18n.phonenumbers.PhoneNumberUtil.MatchType.NOT_A_NUMBER;\n      }\n      if (\"string\" != typeof b) {\n        var d = this.getRegionCodeForCountryCode(b.getCountryCodeOrDefault());\n        if (d != i18n.phonenumbers.PhoneNumberUtil.UNKNOWN_REGION_) {\n          try {\n            c = this.parse(a, d);\n          } catch (h) {\n            return i18n.phonenumbers.PhoneNumberUtil.MatchType.NOT_A_NUMBER;\n          }\n          c = this.isNumberMatch(c, b);\n          return c == i18n.phonenumbers.PhoneNumberUtil.MatchType.EXACT_MATCH ? i18n.phonenumbers.PhoneNumberUtil.MatchType.NSN_MATCH : c;\n        }\n      }\n      try {\n        c = this.parseHelper_(a, null, !1, !1);\n      } catch (h) {\n        return i18n.phonenumbers.PhoneNumberUtil.MatchType.NOT_A_NUMBER;\n      }\n    }\n  } else {\n    c = a.clone();\n  }\n  if (\"string\" == typeof b) {\n    try {\n      var e = this.parse(b, i18n.phonenumbers.PhoneNumberUtil.UNKNOWN_REGION_);\n      return this.isNumberMatch(a, e);\n    } catch (g) {\n      return g.message != i18n.phonenumbers.Error.INVALID_COUNTRY_CODE ? i18n.phonenumbers.PhoneNumberUtil.MatchType.NOT_A_NUMBER : this.isNumberMatch(b, c);\n    }\n  } else {\n    e = b.clone();\n  }\n  c = i18n.phonenumbers.PhoneNumberUtil.copyCoreFieldsOnly_(c);\n  e = i18n.phonenumbers.PhoneNumberUtil.copyCoreFieldsOnly_(e);\n  if (c.hasExtension() && e.hasExtension() && c.getExtension() != e.getExtension()) {\n    return i18n.phonenumbers.PhoneNumberUtil.MatchType.NO_MATCH;\n  }\n  d = c.getCountryCodeOrDefault();\n  var f = e.getCountryCodeOrDefault();\n  if (0 != d && 0 != f) {\n    return c.equals(e) ? i18n.phonenumbers.PhoneNumberUtil.MatchType.EXACT_MATCH : d == f && this.isNationalNumberSuffixOfTheOther_(c, e) ? i18n.phonenumbers.PhoneNumberUtil.MatchType.SHORT_NSN_MATCH : i18n.phonenumbers.PhoneNumberUtil.MatchType.NO_MATCH;\n  }\n  c.setCountryCode(0);\n  e.setCountryCode(0);\n  return c.equals(e) ? i18n.phonenumbers.PhoneNumberUtil.MatchType.NSN_MATCH : this.isNationalNumberSuffixOfTheOther_(c, e) ? i18n.phonenumbers.PhoneNumberUtil.MatchType.SHORT_NSN_MATCH : i18n.phonenumbers.PhoneNumberUtil.MatchType.NO_MATCH;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isNationalNumberSuffixOfTheOther_ = function(a, b) {\n  var c = \"\" + a.getNationalNumber(), d = \"\" + b.getNationalNumber();\n  return goog.string.endsWith(c, d) || goog.string.endsWith(d, c);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.canBeInternationallyDialled = function(a) {\n  var b = this.getMetadataForRegion(this.getRegionCodeForNumber(a));\n  if (null == b) {\n    return !0;\n  }\n  a = this.getNationalSignificantNumber(a);\n  return !this.isNumberMatchingDesc_(a, b.getNoInternationalDialling());\n};\ni18n.phonenumbers.PhoneNumberUtil.matchesEntirely = function(a, b) {\n  var c = \"string\" == typeof a ? b.match(\"^(?:\" + a + \")$\") : b.match(a);\n  return c && c[0].length == b.length ? !0 : !1;\n};\ni18n.phonenumbers.PhoneNumberUtil.matchesPrefix = function(a, b) {\n  var c = \"string\" == typeof a ? b.match(\"^(?:\" + a + \")\") : b.match(a);\n  return c && goog.string.startsWith(b, c[0]) ? !0 : !1;\n};\ni18n.phonenumbers.AsYouTypeFormatter = function(a) {\n  this.DIGIT_PLACEHOLDER_ = \"\\u2008\";\n  this.DIGIT_PATTERN_ = new RegExp(this.DIGIT_PLACEHOLDER_);\n  this.currentOutput_ = \"\";\n  this.formattingTemplate_ = new goog.string.StringBuffer;\n  this.currentFormattingPattern_ = \"\";\n  this.accruedInput_ = new goog.string.StringBuffer;\n  this.accruedInputWithoutFormatting_ = new goog.string.StringBuffer;\n  this.ableToFormat_ = !0;\n  this.isExpectingCountryCallingCode_ = this.isCompleteNumber_ = this.inputHasFormatting_ = !1;\n  this.phoneUtil_ = i18n.phonenumbers.PhoneNumberUtil.getInstance();\n  this.positionToRemember_ = this.originalPosition_ = this.lastMatchPosition_ = 0;\n  this.prefixBeforeNationalNumber_ = new goog.string.StringBuffer;\n  this.shouldAddSpaceAfterNationalPrefix_ = !1;\n  this.extractedNationalPrefix_ = \"\";\n  this.nationalNumber_ = new goog.string.StringBuffer;\n  this.possibleFormats_ = [];\n  this.defaultCountry_ = a;\n  this.defaultMetadata_ = this.currentMetadata_ = this.getMetadataForRegion_(this.defaultCountry_);\n};\ni18n.phonenumbers.AsYouTypeFormatter.SEPARATOR_BEFORE_NATIONAL_NUMBER_ = \" \";\ni18n.phonenumbers.AsYouTypeFormatter.EMPTY_METADATA_ = new i18n.phonenumbers.PhoneMetadata;\ni18n.phonenumbers.AsYouTypeFormatter.EMPTY_METADATA_.setInternationalPrefix(\"NA\");\ni18n.phonenumbers.AsYouTypeFormatter.ELIGIBLE_FORMAT_PATTERN_ = new RegExp(\"^[\" + i18n.phonenumbers.PhoneNumberUtil.VALID_PUNCTUATION + \"]*(\\\\$\\\\d[\" + i18n.phonenumbers.PhoneNumberUtil.VALID_PUNCTUATION + \"]*)+$\");\ni18n.phonenumbers.AsYouTypeFormatter.NATIONAL_PREFIX_SEPARATORS_PATTERN_ = /[- ]/;\ni18n.phonenumbers.AsYouTypeFormatter.MIN_LEADING_DIGITS_LENGTH_ = 3;\ni18n.phonenumbers.AsYouTypeFormatter.prototype.getMetadataForRegion_ = function(a) {\n  a = this.phoneUtil_.getCountryCodeForRegion(a);\n  a = this.phoneUtil_.getRegionCodeForCountryCode(a);\n  a = this.phoneUtil_.getMetadataForRegion(a);\n  return null != a ? a : i18n.phonenumbers.AsYouTypeFormatter.EMPTY_METADATA_;\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.maybeCreateNewTemplate_ = function() {\n  for (var a = this.possibleFormats_.length, b = 0; b < a; ++b) {\n    var c = this.possibleFormats_[b], d = c.getPatternOrDefault();\n    if (this.currentFormattingPattern_ == d) {\n      return !1;\n    }\n    if (this.createFormattingTemplate_(c)) {\n      return this.currentFormattingPattern_ = d, this.shouldAddSpaceAfterNationalPrefix_ = i18n.phonenumbers.AsYouTypeFormatter.NATIONAL_PREFIX_SEPARATORS_PATTERN_.test(c.getNationalPrefixFormattingRule()), this.lastMatchPosition_ = 0, !0;\n    }\n  }\n  return this.ableToFormat_ = !1;\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.getAvailableFormats_ = function(a) {\n  for (var b = this.isCompleteNumber_ && 0 == this.extractedNationalPrefix_.length && 0 < this.currentMetadata_.intlNumberFormatCount() ? this.currentMetadata_.intlNumberFormatArray() : this.currentMetadata_.numberFormatArray(), c = b.length, d = 0; d < c; ++d) {\n    var e = b[d];\n    0 < this.extractedNationalPrefix_.length && this.phoneUtil_.formattingRuleHasFirstGroupOnly(e.getNationalPrefixFormattingRuleOrDefault()) && !e.getNationalPrefixOptionalWhenFormatting() && !e.hasDomesticCarrierCodeFormattingRule() || (0 != this.extractedNationalPrefix_.length || this.isCompleteNumber_ || this.phoneUtil_.formattingRuleHasFirstGroupOnly(e.getNationalPrefixFormattingRuleOrDefault()) || e.getNationalPrefixOptionalWhenFormatting()) && i18n.phonenumbers.AsYouTypeFormatter.ELIGIBLE_FORMAT_PATTERN_.test(e.getFormatOrDefault()) &&\n    this.possibleFormats_.push(e);\n  }\n  this.narrowDownPossibleFormats_(a);\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.narrowDownPossibleFormats_ = function(a) {\n  for (var b = [], c = a.length - i18n.phonenumbers.AsYouTypeFormatter.MIN_LEADING_DIGITS_LENGTH_, d = this.possibleFormats_.length, e = 0; e < d; ++e) {\n    var f = this.possibleFormats_[e];\n    if (0 == f.leadingDigitsPatternCount()) {\n      b.push(this.possibleFormats_[e]);\n    } else {\n      var g = Math.min(c, f.leadingDigitsPatternCount() - 1);\n      f = f.getLeadingDigitsPattern(g);\n      0 == a.search(f) && b.push(this.possibleFormats_[e]);\n    }\n  }\n  this.possibleFormats_ = b;\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.createFormattingTemplate_ = function(a) {\n  var b = a.getPatternOrDefault();\n  this.formattingTemplate_.clear();\n  a = this.getFormattingTemplate_(b, a.getFormatOrDefault());\n  return 0 < a.length ? (this.formattingTemplate_.append(a), !0) : !1;\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.getFormattingTemplate_ = function(a, b) {\n  var c = \"999999999999999\".match(a)[0];\n  if (c.length < this.nationalNumber_.getLength()) {\n    return \"\";\n  }\n  c = c.replace(new RegExp(a, \"g\"), b);\n  return c = c.replace(RegExp(\"9\", \"g\"), this.DIGIT_PLACEHOLDER_);\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.clear = function() {\n  this.currentOutput_ = \"\";\n  this.accruedInput_.clear();\n  this.accruedInputWithoutFormatting_.clear();\n  this.formattingTemplate_.clear();\n  this.lastMatchPosition_ = 0;\n  this.currentFormattingPattern_ = \"\";\n  this.prefixBeforeNationalNumber_.clear();\n  this.extractedNationalPrefix_ = \"\";\n  this.nationalNumber_.clear();\n  this.ableToFormat_ = !0;\n  this.inputHasFormatting_ = !1;\n  this.originalPosition_ = this.positionToRemember_ = 0;\n  this.isExpectingCountryCallingCode_ = this.isCompleteNumber_ = !1;\n  this.possibleFormats_ = [];\n  this.shouldAddSpaceAfterNationalPrefix_ = !1;\n  this.currentMetadata_ != this.defaultMetadata_ && (this.currentMetadata_ = this.getMetadataForRegion_(this.defaultCountry_));\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.inputDigit = function(a) {\n  return this.currentOutput_ = this.inputDigitWithOptionToRememberPosition_(a, !1);\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.inputDigitAndRememberPosition = function(a) {\n  return this.currentOutput_ = this.inputDigitWithOptionToRememberPosition_(a, !0);\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.inputDigitWithOptionToRememberPosition_ = function(a, b) {\n  this.accruedInput_.append(a);\n  b && (this.originalPosition_ = this.accruedInput_.getLength());\n  this.isDigitOrLeadingPlusSign_(a) ? a = this.normalizeAndAccrueDigitsAndPlusSign_(a, b) : (this.ableToFormat_ = !1, this.inputHasFormatting_ = !0);\n  if (!this.ableToFormat_) {\n    if (!this.inputHasFormatting_) {\n      if (this.attemptToExtractIdd_()) {\n        if (this.attemptToExtractCountryCallingCode_()) {\n          return this.attemptToChoosePatternWithPrefixExtracted_();\n        }\n      } else {\n        if (this.ableToExtractLongerNdd_()) {\n          return this.prefixBeforeNationalNumber_.append(i18n.phonenumbers.AsYouTypeFormatter.SEPARATOR_BEFORE_NATIONAL_NUMBER_), this.attemptToChoosePatternWithPrefixExtracted_();\n        }\n      }\n    }\n    return this.accruedInput_.toString();\n  }\n  switch(this.accruedInputWithoutFormatting_.getLength()) {\n    case 0:\n    case 1:\n    case 2:\n      return this.accruedInput_.toString();\n    case 3:\n      if (this.attemptToExtractIdd_()) {\n        this.isExpectingCountryCallingCode_ = !0;\n      } else {\n        return this.extractedNationalPrefix_ = this.removeNationalPrefixFromNationalNumber_(), this.attemptToChooseFormattingPattern_();\n      }\n    default:\n      if (this.isExpectingCountryCallingCode_) {\n        return this.attemptToExtractCountryCallingCode_() && (this.isExpectingCountryCallingCode_ = !1), this.prefixBeforeNationalNumber_.toString() + this.nationalNumber_.toString();\n      }\n      if (0 < this.possibleFormats_.length) {\n        var c = this.inputDigitHelper_(a), d = this.attemptToFormatAccruedDigits_();\n        if (0 < d.length) {\n          return d;\n        }\n        this.narrowDownPossibleFormats_(this.nationalNumber_.toString());\n        return this.maybeCreateNewTemplate_() ? this.inputAccruedNationalNumber_() : this.ableToFormat_ ? this.appendNationalNumber_(c) : this.accruedInput_.toString();\n      }\n      return this.attemptToChooseFormattingPattern_();\n  }\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.attemptToChoosePatternWithPrefixExtracted_ = function() {\n  this.ableToFormat_ = !0;\n  this.isExpectingCountryCallingCode_ = !1;\n  this.possibleFormats_ = [];\n  this.lastMatchPosition_ = 0;\n  this.formattingTemplate_.clear();\n  this.currentFormattingPattern_ = \"\";\n  return this.attemptToChooseFormattingPattern_();\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.getExtractedNationalPrefix_ = function() {\n  return this.extractedNationalPrefix_;\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.ableToExtractLongerNdd_ = function() {\n  if (0 < this.extractedNationalPrefix_.length) {\n    var a = this.nationalNumber_.toString();\n    this.nationalNumber_.clear();\n    this.nationalNumber_.append(this.extractedNationalPrefix_);\n    this.nationalNumber_.append(a);\n    a = this.prefixBeforeNationalNumber_.toString();\n    var b = a.lastIndexOf(this.extractedNationalPrefix_);\n    this.prefixBeforeNationalNumber_.clear();\n    this.prefixBeforeNationalNumber_.append(a.substring(0, b));\n  }\n  return this.extractedNationalPrefix_ != this.removeNationalPrefixFromNationalNumber_();\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.isDigitOrLeadingPlusSign_ = function(a) {\n  return i18n.phonenumbers.PhoneNumberUtil.CAPTURING_DIGIT_PATTERN.test(a) || 1 == this.accruedInput_.getLength() && i18n.phonenumbers.PhoneNumberUtil.PLUS_CHARS_PATTERN.test(a);\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.attemptToFormatAccruedDigits_ = function() {\n  for (var a = this.nationalNumber_.toString(), b = this.possibleFormats_.length, c = 0; c < b; ++c) {\n    var d = this.possibleFormats_[c], e = d.getPatternOrDefault();\n    if ((new RegExp(\"^(?:\" + e + \")$\")).test(a) && (this.shouldAddSpaceAfterNationalPrefix_ = i18n.phonenumbers.AsYouTypeFormatter.NATIONAL_PREFIX_SEPARATORS_PATTERN_.test(d.getNationalPrefixFormattingRule()), d = a.replace(new RegExp(e, \"g\"), d.getFormat()), d = this.appendNationalNumber_(d), i18n.phonenumbers.PhoneNumberUtil.normalizeDiallableCharsOnly(d) == this.accruedInputWithoutFormatting_)) {\n      return d;\n    }\n  }\n  return \"\";\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.appendNationalNumber_ = function(a) {\n  var b = this.prefixBeforeNationalNumber_.getLength();\n  return this.shouldAddSpaceAfterNationalPrefix_ && 0 < b && this.prefixBeforeNationalNumber_.toString().charAt(b - 1) != i18n.phonenumbers.AsYouTypeFormatter.SEPARATOR_BEFORE_NATIONAL_NUMBER_ ? this.prefixBeforeNationalNumber_ + i18n.phonenumbers.AsYouTypeFormatter.SEPARATOR_BEFORE_NATIONAL_NUMBER_ + a : this.prefixBeforeNationalNumber_ + a;\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.getRememberedPosition = function() {\n  if (!this.ableToFormat_) {\n    return this.originalPosition_;\n  }\n  for (var a = 0, b = 0, c = this.accruedInputWithoutFormatting_.toString(), d = this.currentOutput_.toString(); a < this.positionToRemember_ && b < d.length;) {\n    c.charAt(a) == d.charAt(b) && a++, b++;\n  }\n  return b;\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.attemptToChooseFormattingPattern_ = function() {\n  var a = this.nationalNumber_.toString();\n  return a.length >= i18n.phonenumbers.AsYouTypeFormatter.MIN_LEADING_DIGITS_LENGTH_ ? (this.getAvailableFormats_(a), a = this.attemptToFormatAccruedDigits_(), 0 < a.length ? a : this.maybeCreateNewTemplate_() ? this.inputAccruedNationalNumber_() : this.accruedInput_.toString()) : this.appendNationalNumber_(a);\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.inputAccruedNationalNumber_ = function() {\n  var a = this.nationalNumber_.toString(), b = a.length;\n  if (0 < b) {\n    for (var c = \"\", d = 0; d < b; d++) {\n      c = this.inputDigitHelper_(a.charAt(d));\n    }\n    return this.ableToFormat_ ? this.appendNationalNumber_(c) : this.accruedInput_.toString();\n  }\n  return this.prefixBeforeNationalNumber_.toString();\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.isNanpaNumberWithNationalPrefix_ = function() {\n  if (1 != this.currentMetadata_.getCountryCode()) {\n    return !1;\n  }\n  var a = this.nationalNumber_.toString();\n  return \"1\" == a.charAt(0) && \"0\" != a.charAt(1) && \"1\" != a.charAt(1);\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.removeNationalPrefixFromNationalNumber_ = function() {\n  var a = this.nationalNumber_.toString(), b = 0;\n  if (this.isNanpaNumberWithNationalPrefix_()) {\n    b = 1, this.prefixBeforeNationalNumber_.append(\"1\").append(i18n.phonenumbers.AsYouTypeFormatter.SEPARATOR_BEFORE_NATIONAL_NUMBER_), this.isCompleteNumber_ = !0;\n  } else {\n    if (this.currentMetadata_.hasNationalPrefixForParsing()) {\n      var c = new RegExp(\"^(?:\" + this.currentMetadata_.getNationalPrefixForParsing() + \")\");\n      c = a.match(c);\n      null != c && null != c[0] && 0 < c[0].length && (this.isCompleteNumber_ = !0, b = c[0].length, this.prefixBeforeNationalNumber_.append(a.substring(0, b)));\n    }\n  }\n  this.nationalNumber_.clear();\n  this.nationalNumber_.append(a.substring(b));\n  return a.substring(0, b);\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.attemptToExtractIdd_ = function() {\n  var a = this.accruedInputWithoutFormatting_.toString(), b = new RegExp(\"^(?:\\\\\" + i18n.phonenumbers.PhoneNumberUtil.PLUS_SIGN + \"|\" + this.currentMetadata_.getInternationalPrefix() + \")\");\n  b = a.match(b);\n  return null != b && null != b[0] && 0 < b[0].length ? (this.isCompleteNumber_ = !0, b = b[0].length, this.nationalNumber_.clear(), this.nationalNumber_.append(a.substring(b)), this.prefixBeforeNationalNumber_.clear(), this.prefixBeforeNationalNumber_.append(a.substring(0, b)), a.charAt(0) != i18n.phonenumbers.PhoneNumberUtil.PLUS_SIGN && this.prefixBeforeNationalNumber_.append(i18n.phonenumbers.AsYouTypeFormatter.SEPARATOR_BEFORE_NATIONAL_NUMBER_), !0) : !1;\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.attemptToExtractCountryCallingCode_ = function() {\n  if (0 == this.nationalNumber_.getLength()) {\n    return !1;\n  }\n  var a = new goog.string.StringBuffer, b = this.phoneUtil_.extractCountryCode(this.nationalNumber_, a);\n  if (0 == b) {\n    return !1;\n  }\n  this.nationalNumber_.clear();\n  this.nationalNumber_.append(a.toString());\n  a = this.phoneUtil_.getRegionCodeForCountryCode(b);\n  i18n.phonenumbers.PhoneNumberUtil.REGION_CODE_FOR_NON_GEO_ENTITY == a ? this.currentMetadata_ = this.phoneUtil_.getMetadataForNonGeographicalRegion(b) : a != this.defaultCountry_ && (this.currentMetadata_ = this.getMetadataForRegion_(a));\n  this.prefixBeforeNationalNumber_.append(\"\" + b).append(i18n.phonenumbers.AsYouTypeFormatter.SEPARATOR_BEFORE_NATIONAL_NUMBER_);\n  this.extractedNationalPrefix_ = \"\";\n  return !0;\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.normalizeAndAccrueDigitsAndPlusSign_ = function(a, b) {\n  if (a == i18n.phonenumbers.PhoneNumberUtil.PLUS_SIGN) {\n    var c = a;\n    this.accruedInputWithoutFormatting_.append(a);\n  } else {\n    c = i18n.phonenumbers.PhoneNumberUtil.DIGIT_MAPPINGS[a], this.accruedInputWithoutFormatting_.append(c), this.nationalNumber_.append(c);\n  }\n  b && (this.positionToRemember_ = this.accruedInputWithoutFormatting_.getLength());\n  return c;\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.inputDigitHelper_ = function(a) {\n  var b = this.formattingTemplate_.toString();\n  if (0 <= b.substring(this.lastMatchPosition_).search(this.DIGIT_PATTERN_)) {\n    var c = b.search(this.DIGIT_PATTERN_);\n    a = b.replace(this.DIGIT_PATTERN_, a);\n    this.formattingTemplate_.clear();\n    this.formattingTemplate_.append(a);\n    this.lastMatchPosition_ = c;\n    return a.substring(0, this.lastMatchPosition_ + 1);\n  }\n  1 == this.possibleFormats_.length && (this.ableToFormat_ = !1);\n  this.currentFormattingPattern_ = \"\";\n  return this.accruedInput_.toString();\n};\n/*\n\n Copyright (C) 2011 The Libphonenumber Authors.\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n*/\ni18n.phonenumbers.RegionCode = {UN001:\"001\", AD:\"AD\", AE:\"AE\", AO:\"AO\", AQ:\"AQ\", AR:\"AR\", AM:\"AM\", AU:\"AU\", BB:\"BB\", BR:\"BR\", BS:\"BS\", BY:\"BY\", CA:\"CA\", CH:\"CH\", CL:\"CL\", CN:\"CN\", CS:\"CS\", CX:\"CX\", DE:\"DE\", FR:\"FR\", GB:\"GB\", HU:\"HU\", IT:\"IT\", JP:\"JP\", KR:\"KR\", MX:\"MX\", NZ:\"NZ\", PL:\"PL\", RE:\"RE\", RU:\"RU\", SE:\"SE\", SG:\"SG\", US:\"US\", UZ:\"UZ\", YT:\"YT\", ZW:\"ZW\", ZZ:\"ZZ\"};\n/*\n\nCompiled Wednesday July 30, 2014 at 2:15pm America/New_York\n\nVersion: libphonenumber r680\n\n------------------------------------------------------------------------\n\n\n Copyright (C) Alan Beebe (alan.beebe@gmail.com).\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n\n\nUsage...\n\nThis is the same type of code used by cell phones when you enter\na phone number into your dialer app.  Your phone already knows\nwhat country you are a subscriber in, so it assumes you are entering\na local number, unless of course you prefix the number with a +, or\nin the USA you could also prefix the number with 011 to indicate you\nwish to dial internationally.  This code functions the same way.\n\nLets assume your in the United States and you enter the following\nphone number: 8646978257\n\nformatE164(\"US\", \"8646978257\");\n Returns: +18646978257\n\ncountryForE164Number(\"US\", \"+18646978257\");\n Returns: US\n\nformatInternational(\"US\", \"8646978257\");\n Returns: (864) 697-8257\n Info: This is the format you use if you are displaying this number to users outside the US\n\nformatLocal(\"US\", \"8646978257\");\n Returns: (864) 697-8257\n Info: This is the format you use if you are displaying this number to users inside the US\n       (In certain countries, this format will be different then the international format)\n\ncountryCodeToName(\"US\");\n Returns: United States\n\n\n\n*/\n\n\n// -------------------------------------------------------------------------\nfunction countryForE164Number(phone) {\n    /*\n\n    Return the country code for an e164 formatted number\n\n    phone (String) phone number in e164 format to return the country code for\n\n    */\n    try {\n        var phone = cleanPhone(phone);\n        var phoneUtil = i18n.phonenumbers.PhoneNumberUtil.getInstance();\n        var number = phoneUtil.parseAndKeepRawInput(phone);\n        var output = new goog.string.StringBuffer();\n        output = phoneUtil.getRegionCodeForNumber(number);\n        return output.toString();\n    } catch (e) {\n        return \"\";\n    }\n}\n\n// -------------------------------------------------------------------------\nfunction formatNumberForMobileDialing(country, phone) {\n    /*\n\n    Returns a number formatted in such a way that it can be dialed from a mobile\n    phone in a specific region. If the number cannot be reached from the region\n    (e.g. some countries block toll-free numbers from being called outside of the\n    country), the method returns an empty string.\n\n    */\n\n    try {\n        var phone = cleanPhone(phone);\n        var phoneUtil = i18n.phonenumbers.PhoneNumberUtil.getInstance();\n        var number = phoneUtil.parseAndKeepRawInput(phone, country);\n        var output = new goog.string.StringBuffer();\n        output = phoneUtil.formatNumberForMobileDialing(number, country, true);\n        return output.toString();\n    } catch (e) {\n        return \"\";\n    }\n}\n\n// -------------------------------------------------------------------------\nfunction isValidNumber(phone, country, type) {\n    /*\n\n    Tests whether a phone number matches a valid pattern. Note this doesn't\n    verify the number is actually in use, which is impossible to tell by just\n    looking at a number itself.\n\n    */\n\n    try {\n        var phone = cleanPhone(phone);\n        var phoneUtil = i18n.phonenumbers.PhoneNumberUtil.getInstance();\n        var number = phoneUtil.parseAndKeepRawInput(phone, country);\n        if (typeof type === 'string') {\n            var type = type.toUpperCase();\n            if (phoneUtil.isValidNumber(number) &&\n                phoneUtil.getNumberType(number) === i18n.phonenumbers.PhoneNumberType[type]) {\n                return true;\n            }\n            else {\n                return false;\n            }\n        }\n        else {\n            return phoneUtil.isValidNumber(number);\n        }\n    } catch (e) {\n        return false;\n    }\n}\n\n// -------------------------------------------------------------------------\nfunction formatE164(country, phone) {\n    /*\n\n    Return the phone number in e164 format\n\n    country (String) 2 digit country code\n    phone (String) phone number to format\n\n    */\n\n    try {\n        var phone = cleanPhone(phone);\n        var phoneUtil = i18n.phonenumbers.PhoneNumberUtil.getInstance();\n        var number = phoneUtil.parseAndKeepRawInput(phone, country);\n        var PNF = i18n.phonenumbers.PhoneNumberFormat;\n        var output = new goog.string.StringBuffer();\n        output = phoneUtil.format(number, PNF.E164);\n        return output.toString();\n    } catch (e) {\n        return phone\n    }\n}\n\n\n// -------------------------------------------------------------------------\nfunction formatInternational(country, phone) {\n    /*\n\n    Return the phone number in international format\n\n    country (String) 2 digit country code\n    phone (String) phone number to format\n\n    */\n\n    try {\n        var phone = cleanPhone(phone);\n        var formatter = new i18n.phonenumbers.AsYouTypeFormatter(country);\n        var output = new goog.string.StringBuffer();\n        for (var i = 0; i < phone.length; ++i) {\n            var inputChar = phone.charAt(i);\n            output = (formatter.inputDigit(inputChar));\n        }\n        return output.toString();\n    } catch (e) {\n        return phone;\n    }\n}\n\n// -------------------------------------------------------------------------\nfunction formatLocal(country, phone) {\n    /*\n\n    Return the phone number in the format local to the user\n\n    country (String) 2 digit country code\n    phone (String) phone number to format\n\n    */\n\n    try {\n        var phone = cleanPhone(phone);\n        var phoneUtil = i18n.phonenumbers.PhoneNumberUtil.getInstance();\n        var number = phoneUtil.parseAndKeepRawInput(phone, country);\n        if (phoneUtil.isValidNumberForRegion(number, country)) {\n            var PNF = i18n.phonenumbers.PhoneNumberFormat;\n            var output = new goog.string.StringBuffer();\n            output = phoneUtil.format(number, PNF.NATIONAL);\n            return output.toString();\n        } else {\n            return formatInternational(country, phone);\n        }\n    } catch (e) {\n        return formatInternational(country, phone);\n    }\n}\n\n// -------------------------------------------------------------------------\nfunction exampleLandlineNumber(country) {\n    /*\n\n    Returns an example land line phone number for the specified country\n\n    country (String) 2 digit country code\n\n    */\n\n    try {\n        var phoneUtil = i18n.phonenumbers.PhoneNumberUtil.getInstance();\n        var output = phoneUtil.getExampleNumber(country);\n        return \"\"+output.getNationalNumber();\n    } catch (e) {\n        return \"\";\n    }\n}\n\n// -------------------------------------------------------------------------\nfunction exampleMobileNumber(country) {\n    /*\n\n    Returns an example mobile phone number for the specified country\n\n    country (String) 2 digit country code\n\n    */\n\n    try {\n        var phoneUtil = i18n.phonenumbers.PhoneNumberUtil.getInstance();\n        var output = phoneUtil.getExampleNumberForType(country, i18n.phonenumbers.PhoneNumberType.MOBILE);\n        return \"\"+output.getNationalNumber();\n    } catch (e) {\n        return \"\";\n    }\n}\n\n// -------------------------------------------------------------------------\nfunction cleanPhone(phone) {\n    /*\n\n    Remove any non numeric characters from the phone number but leave any plus sign at the beginning\n\n    phone (String) phone number to clean\n\n    */\n\n    phone = phone.replace(/[^\\d\\+]/g,'');\n    if (phone.substr(0, 1) == \"+\") {\n        phone = \"+\" + phone.replace(/[^\\d]/g,'');\n    } else {\n        phone = phone.replace(/[^\\d]/g,'');\n    }\n    return phone;\n}\n\n// -------------------------------------------------------------------------\nfunction countryCodeToName(countryCode) {\n    /*\n\n    Convert the country code to a name\n\n    country (String) 2 digit country code\n\n    */\n\n    var arrCountry = new Array();\n    arrCountry['AF'] = \"Afghanistan\";\n    arrCountry['AL'] = \"Albania\";\n    arrCountry['DZ'] = \"Algeria\";\n    arrCountry['AS'] = \"American Samoa\";\n    arrCountry['AD'] = \"Andorra\";\n    arrCountry['AO'] = \"Angola\";\n    arrCountry['AI'] = \"Anguilla\";\n    arrCountry['AQ'] = \"Antarctica\";\n    arrCountry['AG'] = \"Antigua And Barbuda\";\n    arrCountry['AR'] = \"Argentina\";\n    arrCountry['AM'] = \"Armenia\";\n    arrCountry['AW'] = \"Aruba\";\n    arrCountry['AC'] = \"Ascension Island\";\n    arrCountry['AU'] = \"Australia\";\n    arrCountry['AT'] = \"Austria\";\n    arrCountry['AZ'] = \"Azerbaijan\";\n    arrCountry['BS'] = \"Bahamas\";\n    arrCountry['BH'] = \"Bahrain\";\n    arrCountry['BD'] = \"Bangladesh\";\n    arrCountry['BB'] = \"Barbados\";\n    arrCountry['BY'] = \"Belarus\";\n    arrCountry['BE'] = \"Belgium\";\n    arrCountry['BZ'] = \"Belize\";\n    arrCountry['BJ'] = \"Benin\";\n    arrCountry['BM'] = \"Bermuda\";\n    arrCountry['BT'] = \"Bhutan\";\n    arrCountry['BO'] = \"Bolivia\";\n    arrCountry['BA'] = \"Bosnia And Herzegovina\";\n    arrCountry['BW'] = \"Botswana\";\n    arrCountry['BV'] = \"Bouvet Island\";\n    arrCountry['BR'] = \"Brazil\";\n    arrCountry['IO'] = \"British Indian Ocean Territory\";\n    arrCountry['BN'] = \"Brunei\";\n    arrCountry['BG'] = \"Bulgaria\";\n    arrCountry['BF'] = \"Burkina Faso\";\n    arrCountry['BI'] = \"Burundi\";\n    arrCountry['KH'] = \"Cambodia\";\n    arrCountry['CM'] = \"Cameroon\";\n    arrCountry['CA'] = \"Canada\";\n    arrCountry['CV'] = \"Cape Verde\";\n    arrCountry['KY'] = \"Cayman Islands\";\n    arrCountry['CF'] = \"Central African Republic\";\n    arrCountry['TD'] = \"Chad\";\n    arrCountry['CL'] = \"Chile\";\n    arrCountry['CN'] = \"China\";\n    arrCountry['CX'] = \"Christmas Island\";\n    arrCountry['CC'] = \"Cocos (Keeling) Islands\";\n    arrCountry['CO'] = \"Colombia\";\n    arrCountry['KM'] = \"Comoros\";\n    arrCountry['CG'] = \"Congo\";\n    arrCountry['CK'] = \"Cook Islands\";\n    arrCountry['CR'] = \"Costa Rica\";\n    arrCountry['CI'] = \"Cote D'Ivorie (Ivory Coast)\";\n    arrCountry['HR'] = \"Croatia (Hrvatska)\";\n    arrCountry['CU'] = \"Cuba\";\n    arrCountry['CY'] = \"Cyprus\";\n    arrCountry['CZ'] = \"Czech Republic\";\n    arrCountry['CD'] = \"Democratic Republic Of Congo (Zaire)\";\n    arrCountry['DK'] = \"Denmark\";\n    arrCountry['DJ'] = \"Djibouti\";\n    arrCountry['DM'] = \"Dominica\";\n    arrCountry['DO'] = \"Dominican Republic\";\n    arrCountry['TL'] = \"East Timor\";\n    arrCountry['EC'] = \"Ecuador\";\n    arrCountry['EG'] = \"Egypt\";\n    arrCountry['SV'] = \"El Salvador\";\n    arrCountry['GQ'] = \"Equatorial Guinea\";\n    arrCountry['ER'] = \"Eritrea\";\n    arrCountry['EE'] = \"Estonia\";\n    arrCountry['ET'] = \"Ethiopia\";\n    arrCountry['FK'] = \"Falkland Islands (Malvinas)\";\n    arrCountry['FO'] = \"Faroe Islands\";\n    arrCountry['FJ'] = \"Fiji\";\n    arrCountry['FI'] = \"Finland\";\n    arrCountry['FR'] = \"France\";\n    arrCountry['FX'] = \"France, Metropolitan\";\n    arrCountry['GF'] = \"French Guinea\";\n    arrCountry['PF'] = \"French Polynesia\";\n    arrCountry['TF'] = \"French Southern Territories\";\n    arrCountry['GA'] = \"Gabon\";\n    arrCountry['GM'] = \"Gambia\";\n    arrCountry['GE'] = \"Georgia\";\n    arrCountry['DE'] = \"Germany\";\n    arrCountry['GH'] = \"Ghana\";\n    arrCountry['GI'] = \"Gibraltar\";\n    arrCountry['GR'] = \"Greece\";\n    arrCountry['GL'] = \"Greenland\";\n    arrCountry['GD'] = \"Grenada\";\n    arrCountry['GP'] = \"Guadeloupe\";\n    arrCountry['GU'] = \"Guam\";\n    arrCountry['GT'] = \"Guatemala\";\n    arrCountry['GN'] = \"Guinea\";\n    arrCountry['GW'] = \"Guinea-Bissau\";\n    arrCountry['GY'] = \"Guyana\";\n    arrCountry['HT'] = \"Haiti\";\n    arrCountry['HM'] = \"Heard And McDonald Islands\";\n    arrCountry['HN'] = \"Honduras\";\n    arrCountry['HK'] = \"Hong Kong\";\n    arrCountry['HU'] = \"Hungary\";\n    arrCountry['IS'] = \"Iceland\";\n    arrCountry['IN'] = \"India\";\n    arrCountry['ID'] = \"Indonesia\";\n    arrCountry['IR'] = \"Iran\";\n    arrCountry['IQ'] = \"Iraq\";\n    arrCountry['IE'] = \"Ireland\";\n    arrCountry['IM'] = \"Isle of Man\";\n    arrCountry['IL'] = \"Israel\";\n    arrCountry['IT'] = \"Italy\";\n    arrCountry['JM'] = \"Jamaica\";\n    arrCountry['JP'] = \"Japan\";\n    arrCountry['JO'] = \"Jordan\";\n    arrCountry['KZ'] = \"Kazakhstan\";\n    arrCountry['KE'] = \"Kenya\";\n    arrCountry['KI'] = \"Kiribati\";\n    arrCountry['KW'] = \"Kuwait\";\n    arrCountry['KG'] = \"Kyrgyzstan\";\n    arrCountry['LA'] = \"Laos\";\n    arrCountry['LV'] = \"Latvia\";\n    arrCountry['LB'] = \"Lebanon\";\n    arrCountry['LS'] = \"Lesotho\";\n    arrCountry['LR'] = \"Liberia\";\n    arrCountry['LY'] = \"Libya\";\n    arrCountry['LI'] = \"Liechtenstein\";\n    arrCountry['LT'] = \"Lithuania\";\n    arrCountry['LU'] = \"Luxembourg\";\n    arrCountry['MO'] = \"Macau\";\n    arrCountry['MK'] = \"Macedonia\";\n    arrCountry['MG'] = \"Madagascar\";\n    arrCountry['MW'] = \"Malawi\";\n    arrCountry['MY'] = \"Malaysia\";\n    arrCountry['MV'] = \"Maldives\";\n    arrCountry['ML'] = \"Mali\";\n    arrCountry['MT'] = \"Malta\";\n    arrCountry['MH'] = \"Marshall Islands\";\n    arrCountry['MQ'] = \"Martinique\";\n    arrCountry['MR'] = \"Mauritania\";\n    arrCountry['MU'] = \"Mauritius\";\n    arrCountry['YT'] = \"Mayotte\";\n    arrCountry['MX'] = \"Mexico\";\n    arrCountry['FM'] = \"Micronesia\";\n    arrCountry['MD'] = \"Moldova\";\n    arrCountry['MC'] = \"Monaco\";\n    arrCountry['MN'] = \"Mongolia\";\n    arrCountry['ME'] = \"Montenegro\";\n    arrCountry['MS'] = \"Montserrat\";\n    arrCountry['MA'] = \"Morocco\";\n    arrCountry['MZ'] = \"Mozambique\";\n    arrCountry['MM'] = \"Myanmar (Burma)\";\n    arrCountry['NA'] = \"Namibia\";\n    arrCountry['NR'] = \"Nauru\";\n    arrCountry['NP'] = \"Nepal\";\n    arrCountry['NL'] = \"Netherlands\";\n    arrCountry['AN'] = \"Netherlands Antilles\";\n    arrCountry['NC'] = \"New Caledonia\";\n    arrCountry['NZ'] = \"New Zealand\";\n    arrCountry['NI'] = \"Nicaragua\";\n    arrCountry['NE'] = \"Niger\";\n    arrCountry['NG'] = \"Nigeria\";\n    arrCountry['NU'] = \"Niue\";\n    arrCountry['NF'] = \"Norfolk Island\";\n    arrCountry['KP'] = \"North Korea\";\n    arrCountry['MP'] = \"Northern Mariana Islands\";\n    arrCountry['NO'] = \"Norway\";\n    arrCountry['OM'] = \"Oman\";\n    arrCountry['PK'] = \"Pakistan\";\n    arrCountry['PW'] = \"Palau\";\n    arrCountry['PS'] = \"Palestine\";\n    arrCountry['PA'] = \"Panama\";\n    arrCountry['PG'] = \"Papua New Guinea\";\n    arrCountry['PY'] = \"Paraguay\";\n    arrCountry['PE'] = \"Peru\";\n    arrCountry['PH'] = \"Philippines\";\n    arrCountry['PN'] = \"Pitcairn\";\n    arrCountry['PL'] = \"Poland\";\n    arrCountry['PT'] = \"Portugal\";\n    arrCountry['PR'] = \"Puerto Rico\";\n    arrCountry['QA'] = \"Qatar\";\n    arrCountry['RE'] = \"Reunion\";\n    arrCountry['RO'] = \"Romania\";\n    arrCountry['RU'] = \"Russia\";\n    arrCountry['RW'] = \"Rwanda\";\n    arrCountry['SH'] = \"Saint Helena\";\n    arrCountry['KN'] = \"Saint Kitts And Nevis\";\n    arrCountry['LC'] = \"Saint Lucia\";\n    arrCountry['PM'] = \"Saint Pierre And Miquelon\";\n    arrCountry['VC'] = \"Saint Vincent And The Grenadines\";\n    arrCountry['SM'] = \"San Marino\";\n    arrCountry['ST'] = \"Sao Tome And Principe\";\n    arrCountry['SA'] = \"Saudi Arabia\";\n    arrCountry['SN'] = \"Senegal\";\n    arrCountry['RS'] = \"Serbia\";\n    arrCountry['SC'] = \"Seychelles\";\n    arrCountry['SL'] = \"Sierra Leone\";\n    arrCountry['SG'] = \"Singapore\";\n    arrCountry['SK'] = \"Slovak Republic\";\n    arrCountry['SI'] = \"Slovenia\";\n    arrCountry['SB'] = \"Solomon Islands\";\n    arrCountry['SO'] = \"Somalia\";\n    arrCountry['ZA'] = \"South Africa\";\n    arrCountry['GS'] = \"South Georgia And South Sandwich Islands\";\n    arrCountry['KR'] = \"South Korea\";\n    arrCountry['ES'] = \"Spain\";\n    arrCountry['LK'] = \"Sri Lanka\";\n    arrCountry['SD'] = \"Sudan\";\n    arrCountry['SR'] = \"Suriname\";\n    arrCountry['SJ'] = \"Svalbard And Jan Mayen\";\n    arrCountry['SZ'] = \"Swaziland\";\n    arrCountry['SE'] = \"Sweden\";\n    arrCountry['CH'] = \"Switzerland\";\n    arrCountry['SY'] = \"Syria\";\n    arrCountry['TW'] = \"Taiwan\";\n    arrCountry['TJ'] = \"Tajikistan\";\n    arrCountry['TZ'] = \"Tanzania\";\n    arrCountry['TH'] = \"Thailand\";\n    arrCountry['TG'] = \"Togo\";\n    arrCountry['TK'] = \"Tokelau\";\n    arrCountry['TO'] = \"Tonga\";\n    arrCountry['TT'] = \"Trinidad And Tobago\";\n    arrCountry['TN'] = \"Tunisia\";\n    arrCountry['TR'] = \"Turkey\";\n    arrCountry['TM'] = \"Turkmenistan\";\n    arrCountry['TC'] = \"Turks And Caicos Islands\";\n    arrCountry['TV'] = \"Tuvalu\";\n    arrCountry['UG'] = \"Uganda\";\n    arrCountry['UA'] = \"Ukraine\";\n    arrCountry['AE'] = \"United Arab Emirates\";\n    arrCountry['GB'] = \"United Kingdom\";\n    arrCountry['US'] = \"United States\";\n    arrCountry['UM'] = \"United States Minor Outlying Islands\";\n    arrCountry['UY'] = \"Uruguay\";\n    arrCountry['UZ'] = \"Uzbekistan\";\n    arrCountry['VU'] = \"Vanuatu\";\n    arrCountry['VA'] = \"Vatican City (Holy See)\";\n    arrCountry['VE'] = \"Venezuela\";\n    arrCountry['VN'] = \"Vietnam\";\n    arrCountry['VG'] = \"Virgin Islands (British)\";\n    arrCountry['VI'] = \"Virgin Islands (US)\";\n    arrCountry['WF'] = \"Wallis And Futuna Islands\";\n    arrCountry['EH'] = \"Western Sahara\";\n    arrCountry['WS'] = \"Western Samoa\";\n    arrCountry['YE'] = \"Yemen\";\n    arrCountry['YU'] = \"Yugoslavia\";\n    arrCountry['ZM'] = \"Zambia\";\n    arrCountry['ZW'] = \"Zimbabwe\";\n\n    var name = arrCountry[countryCode.toUpperCase()];\n    if (name === undefined) {\n        return \"\";\n    }\n    return name;\n}\n"
  },
  {
    "path": "lib/global-wrap-end.js",
    "content": "\nwindow.PhoneFormat = {\n  countryForE164Number: countryForE164Number,\n  formatNumberForMobileDialing: formatNumberForMobileDialing,\n  isValidNumber: isValidNumber,\n  formatE164: formatE164,\n  formatInternational: formatInternational,\n  formatLocal: formatLocal,\n  exampleLandlineNumber: exampleLandlineNumber,\n  exampleMobileNumber: exampleMobileNumber,\n  cleanPhone: cleanPhone,\n  countryCodeToName: countryCodeToName\n};\n\n})(window);\n"
  },
  {
    "path": "lib/global-wrap-start.js",
    "content": ";(function(window) {\n"
  },
  {
    "path": "lib/google-libraries.js",
    "content": "var COMPILED = !0, goog = goog || {};\ngoog.global = this || self;\ngoog.isDef = function(a) {\n  return void 0 !== a;\n};\ngoog.isString = function(a) {\n  return \"string\" == typeof a;\n};\ngoog.isBoolean = function(a) {\n  return \"boolean\" == typeof a;\n};\ngoog.isNumber = function(a) {\n  return \"number\" == typeof a;\n};\ngoog.exportPath_ = function(a, b, c) {\n  a = a.split(\".\");\n  c = c || goog.global;\n  a[0] in c || \"undefined\" == typeof c.execScript || c.execScript(\"var \" + a[0]);\n  for (var d; a.length && (d = a.shift());) {\n    a.length || void 0 === b ? c = c[d] && c[d] !== Object.prototype[d] ? c[d] : c[d] = {} : c[d] = b;\n  }\n};\ngoog.define = function(a, b) {\n  var c = b;\n  if (!COMPILED) {\n    var d = goog.global.CLOSURE_UNCOMPILED_DEFINES, e = goog.global.CLOSURE_DEFINES;\n    d && void 0 === d.nodeType && Object.prototype.hasOwnProperty.call(d, a) ? c = d[a] : e && void 0 === e.nodeType && Object.prototype.hasOwnProperty.call(e, a) && (c = e[a]);\n  }\n  return c;\n};\ngoog.FEATURESET_YEAR = 2012;\ngoog.DEBUG = !0;\ngoog.LOCALE = \"en\";\ngoog.TRUSTED_SITE = !0;\ngoog.STRICT_MODE_COMPATIBLE = !1;\ngoog.DISALLOW_TEST_ONLY_CODE = COMPILED && !goog.DEBUG;\ngoog.ENABLE_CHROME_APP_SAFE_SCRIPT_LOADING = !1;\ngoog.provide = function(a) {\n  if (goog.isInModuleLoader_()) {\n    throw Error(\"goog.provide cannot be used within a module.\");\n  }\n  if (!COMPILED && goog.isProvided_(a)) {\n    throw Error('Namespace \"' + a + '\" already declared.');\n  }\n  goog.constructNamespace_(a);\n};\ngoog.constructNamespace_ = function(a, b) {\n  if (!COMPILED) {\n    delete goog.implicitNamespaces_[a];\n    for (var c = a; (c = c.substring(0, c.lastIndexOf(\".\"))) && !goog.getObjectByName(c);) {\n      goog.implicitNamespaces_[c] = !0;\n    }\n  }\n  goog.exportPath_(a, b);\n};\ngoog.getScriptNonce = function(a) {\n  if (a && a != goog.global) {\n    return goog.getScriptNonce_(a.document);\n  }\n  null === goog.cspNonce_ && (goog.cspNonce_ = goog.getScriptNonce_(goog.global.document));\n  return goog.cspNonce_;\n};\ngoog.NONCE_PATTERN_ = /^[\\w+/_-]+[=]{0,2}$/;\ngoog.cspNonce_ = null;\ngoog.getScriptNonce_ = function(a) {\n  return (a = a.querySelector && a.querySelector(\"script[nonce]\")) && (a = a.nonce || a.getAttribute(\"nonce\")) && goog.NONCE_PATTERN_.test(a) ? a : \"\";\n};\ngoog.VALID_MODULE_RE_ = /^[a-zA-Z_$][a-zA-Z0-9._$]*$/;\ngoog.module = function(a) {\n  if (\"string\" !== typeof a || !a || -1 == a.search(goog.VALID_MODULE_RE_)) {\n    throw Error(\"Invalid module identifier\");\n  }\n  if (!goog.isInGoogModuleLoader_()) {\n    throw Error(\"Module \" + a + \" has been loaded incorrectly. Note, modules cannot be loaded as normal scripts. They require some kind of pre-processing step. You're likely trying to load a module via a script tag or as a part of a concatenated bundle without rewriting the module. For more info see: https://github.com/google/closure-library/wiki/goog.module:-an-ES6-module-like-alternative-to-goog.provide.\");\n  }\n  if (goog.moduleLoaderState_.moduleName) {\n    throw Error(\"goog.module may only be called once per module.\");\n  }\n  goog.moduleLoaderState_.moduleName = a;\n  if (!COMPILED) {\n    if (goog.isProvided_(a)) {\n      throw Error('Namespace \"' + a + '\" already declared.');\n    }\n    delete goog.implicitNamespaces_[a];\n  }\n};\ngoog.module.get = function(a) {\n  return goog.module.getInternal_(a);\n};\ngoog.module.getInternal_ = function(a) {\n  if (!COMPILED) {\n    if (a in goog.loadedModules_) {\n      return goog.loadedModules_[a].exports;\n    }\n    if (!goog.implicitNamespaces_[a]) {\n      return a = goog.getObjectByName(a), null != a ? a : null;\n    }\n  }\n  return null;\n};\ngoog.ModuleType = {ES6:\"es6\", GOOG:\"goog\"};\ngoog.moduleLoaderState_ = null;\ngoog.isInModuleLoader_ = function() {\n  return goog.isInGoogModuleLoader_() || goog.isInEs6ModuleLoader_();\n};\ngoog.isInGoogModuleLoader_ = function() {\n  return !!goog.moduleLoaderState_ && goog.moduleLoaderState_.type == goog.ModuleType.GOOG;\n};\ngoog.isInEs6ModuleLoader_ = function() {\n  if (goog.moduleLoaderState_ && goog.moduleLoaderState_.type == goog.ModuleType.ES6) {\n    return !0;\n  }\n  var a = goog.global.$jscomp;\n  return a ? \"function\" != typeof a.getCurrentModulePath ? !1 : !!a.getCurrentModulePath() : !1;\n};\ngoog.module.declareLegacyNamespace = function() {\n  if (!COMPILED && !goog.isInGoogModuleLoader_()) {\n    throw Error(\"goog.module.declareLegacyNamespace must be called from within a goog.module\");\n  }\n  if (!COMPILED && !goog.moduleLoaderState_.moduleName) {\n    throw Error(\"goog.module must be called prior to goog.module.declareLegacyNamespace.\");\n  }\n  goog.moduleLoaderState_.declareLegacyNamespace = !0;\n};\ngoog.declareModuleId = function(a) {\n  if (!COMPILED) {\n    if (!goog.isInEs6ModuleLoader_()) {\n      throw Error(\"goog.declareModuleId may only be called from within an ES6 module\");\n    }\n    if (goog.moduleLoaderState_ && goog.moduleLoaderState_.moduleName) {\n      throw Error(\"goog.declareModuleId may only be called once per module.\");\n    }\n    if (a in goog.loadedModules_) {\n      throw Error('Module with namespace \"' + a + '\" already exists.');\n    }\n  }\n  if (goog.moduleLoaderState_) {\n    goog.moduleLoaderState_.moduleName = a;\n  } else {\n    var b = goog.global.$jscomp;\n    if (!b || \"function\" != typeof b.getCurrentModulePath) {\n      throw Error('Module with namespace \"' + a + '\" has been loaded incorrectly.');\n    }\n    b = b.require(b.getCurrentModulePath());\n    goog.loadedModules_[a] = {exports:b, type:goog.ModuleType.ES6, moduleId:a};\n  }\n};\ngoog.setTestOnly = function(a) {\n  if (goog.DISALLOW_TEST_ONLY_CODE) {\n    throw a = a || \"\", Error(\"Importing test-only code into non-debug environment\" + (a ? \": \" + a : \".\"));\n  }\n};\ngoog.forwardDeclare = function(a) {\n};\nCOMPILED || (goog.isProvided_ = function(a) {\n  return a in goog.loadedModules_ || !goog.implicitNamespaces_[a] && null != goog.getObjectByName(a);\n}, goog.implicitNamespaces_ = {\"goog.module\":!0});\ngoog.getObjectByName = function(a, b) {\n  for (var c = a.split(\".\"), d = b || goog.global, e = 0; e < c.length; e++) {\n    if (d = d[c[e]], null == d) {\n      return null;\n    }\n  }\n  return d;\n};\ngoog.globalize = function(a, b) {\n  var c = b || goog.global, d;\n  for (d in a) {\n    c[d] = a[d];\n  }\n};\ngoog.addDependency = function(a, b, c, d) {\n  !COMPILED && goog.DEPENDENCIES_ENABLED && goog.debugLoader_.addDependency(a, b, c, d);\n};\ngoog.ENABLE_DEBUG_LOADER = !0;\ngoog.logToConsole_ = function(a) {\n  goog.global.console && goog.global.console.error(a);\n};\ngoog.require = function(a) {\n  if (!COMPILED) {\n    goog.ENABLE_DEBUG_LOADER && goog.debugLoader_.requested(a);\n    if (goog.isProvided_(a)) {\n      if (goog.isInModuleLoader_()) {\n        return goog.module.getInternal_(a);\n      }\n    } else {\n      if (goog.ENABLE_DEBUG_LOADER) {\n        var b = goog.moduleLoaderState_;\n        goog.moduleLoaderState_ = null;\n        try {\n          goog.debugLoader_.load_(a);\n        } finally {\n          goog.moduleLoaderState_ = b;\n        }\n      }\n    }\n    return null;\n  }\n};\ngoog.requireType = function(a) {\n  return {};\n};\ngoog.basePath = \"\";\ngoog.nullFunction = function() {\n};\ngoog.abstractMethod = function() {\n  throw Error(\"unimplemented abstract method\");\n};\ngoog.addSingletonGetter = function(a) {\n  a.instance_ = void 0;\n  a.getInstance = function() {\n    if (a.instance_) {\n      return a.instance_;\n    }\n    goog.DEBUG && (goog.instantiatedSingletons_[goog.instantiatedSingletons_.length] = a);\n    return a.instance_ = new a;\n  };\n};\ngoog.instantiatedSingletons_ = [];\ngoog.LOAD_MODULE_USING_EVAL = !0;\ngoog.SEAL_MODULE_EXPORTS = goog.DEBUG;\ngoog.loadedModules_ = {};\ngoog.DEPENDENCIES_ENABLED = !COMPILED && goog.ENABLE_DEBUG_LOADER;\ngoog.TRANSPILE = \"detect\";\ngoog.ASSUME_ES_MODULES_TRANSPILED = !1;\ngoog.TRANSPILE_TO_LANGUAGE = \"\";\ngoog.TRANSPILER = \"transpile.js\";\ngoog.hasBadLetScoping = null;\ngoog.useSafari10Workaround = function() {\n  if (null == goog.hasBadLetScoping) {\n    try {\n      var a = !eval('\"use strict\";let x = 1; function f() { return typeof x; };f() == \"number\";');\n    } catch (b) {\n      a = !1;\n    }\n    goog.hasBadLetScoping = a;\n  }\n  return goog.hasBadLetScoping;\n};\ngoog.workaroundSafari10EvalBug = function(a) {\n  return \"(function(){\" + a + \"\\n;})();\\n\";\n};\ngoog.loadModule = function(a) {\n  var b = goog.moduleLoaderState_;\n  try {\n    goog.moduleLoaderState_ = {moduleName:\"\", declareLegacyNamespace:!1, type:goog.ModuleType.GOOG};\n    if (goog.isFunction(a)) {\n      var c = a.call(void 0, {});\n    } else {\n      if (\"string\" === typeof a) {\n        goog.useSafari10Workaround() && (a = goog.workaroundSafari10EvalBug(a)), c = goog.loadModuleFromSource_.call(void 0, a);\n      } else {\n        throw Error(\"Invalid module definition\");\n      }\n    }\n    var d = goog.moduleLoaderState_.moduleName;\n    if (\"string\" === typeof d && d) {\n      goog.moduleLoaderState_.declareLegacyNamespace ? goog.constructNamespace_(d, c) : goog.SEAL_MODULE_EXPORTS && Object.seal && \"object\" == typeof c && null != c && Object.seal(c), goog.loadedModules_[d] = {exports:c, type:goog.ModuleType.GOOG, moduleId:goog.moduleLoaderState_.moduleName};\n    } else {\n      throw Error('Invalid module name \"' + d + '\"');\n    }\n  } finally {\n    goog.moduleLoaderState_ = b;\n  }\n};\ngoog.loadModuleFromSource_ = function(a) {\n  eval(a);\n  return {};\n};\ngoog.normalizePath_ = function(a) {\n  a = a.split(\"/\");\n  for (var b = 0; b < a.length;) {\n    \".\" == a[b] ? a.splice(b, 1) : b && \"..\" == a[b] && a[b - 1] && \"..\" != a[b - 1] ? a.splice(--b, 2) : b++;\n  }\n  return a.join(\"/\");\n};\ngoog.loadFileSync_ = function(a) {\n  if (goog.global.CLOSURE_LOAD_FILE_SYNC) {\n    return goog.global.CLOSURE_LOAD_FILE_SYNC(a);\n  }\n  try {\n    var b = new goog.global.XMLHttpRequest;\n    b.open(\"get\", a, !1);\n    b.send();\n    return 0 == b.status || 200 == b.status ? b.responseText : null;\n  } catch (c) {\n    return null;\n  }\n};\ngoog.transpile_ = function(a, b, c) {\n  var d = goog.global.$jscomp;\n  d || (goog.global.$jscomp = d = {});\n  var e = d.transpile;\n  if (!e) {\n    var f = goog.basePath + goog.TRANSPILER, g = goog.loadFileSync_(f);\n    if (g) {\n      (function() {\n        (0,eval)(g + \"\\n//# sourceURL=\" + f);\n      }).call(goog.global);\n      if (goog.global.$gwtExport && goog.global.$gwtExport.$jscomp && !goog.global.$gwtExport.$jscomp.transpile) {\n        throw Error('The transpiler did not properly export the \"transpile\" method. $gwtExport: ' + JSON.stringify(goog.global.$gwtExport));\n      }\n      goog.global.$jscomp.transpile = goog.global.$gwtExport.$jscomp.transpile;\n      d = goog.global.$jscomp;\n      e = d.transpile;\n    }\n  }\n  e || (e = d.transpile = function(a, b) {\n    goog.logToConsole_(b + \" requires transpilation but no transpiler was found.\");\n    return a;\n  });\n  return e(a, b, c);\n};\ngoog.typeOf = function(a) {\n  var b = typeof a;\n  if (\"object\" == b) {\n    if (a) {\n      if (a instanceof Array) {\n        return \"array\";\n      }\n      if (a instanceof Object) {\n        return b;\n      }\n      var c = Object.prototype.toString.call(a);\n      if (\"[object Window]\" == c) {\n        return \"object\";\n      }\n      if (\"[object Array]\" == c || \"number\" == typeof a.length && \"undefined\" != typeof a.splice && \"undefined\" != typeof a.propertyIsEnumerable && !a.propertyIsEnumerable(\"splice\")) {\n        return \"array\";\n      }\n      if (\"[object Function]\" == c || \"undefined\" != typeof a.call && \"undefined\" != typeof a.propertyIsEnumerable && !a.propertyIsEnumerable(\"call\")) {\n        return \"function\";\n      }\n    } else {\n      return \"null\";\n    }\n  } else {\n    if (\"function\" == b && \"undefined\" == typeof a.call) {\n      return \"object\";\n    }\n  }\n  return b;\n};\ngoog.isNull = function(a) {\n  return null === a;\n};\ngoog.isDefAndNotNull = function(a) {\n  return null != a;\n};\ngoog.isArray = function(a) {\n  return \"array\" == goog.typeOf(a);\n};\ngoog.isArrayLike = function(a) {\n  var b = goog.typeOf(a);\n  return \"array\" == b || \"object\" == b && \"number\" == typeof a.length;\n};\ngoog.isDateLike = function(a) {\n  return goog.isObject(a) && \"function\" == typeof a.getFullYear;\n};\ngoog.isFunction = function(a) {\n  return \"function\" == goog.typeOf(a);\n};\ngoog.isObject = function(a) {\n  var b = typeof a;\n  return \"object\" == b && null != a || \"function\" == b;\n};\ngoog.getUid = function(a) {\n  return a[goog.UID_PROPERTY_] || (a[goog.UID_PROPERTY_] = ++goog.uidCounter_);\n};\ngoog.hasUid = function(a) {\n  return !!a[goog.UID_PROPERTY_];\n};\ngoog.removeUid = function(a) {\n  null !== a && \"removeAttribute\" in a && a.removeAttribute(goog.UID_PROPERTY_);\n  try {\n    delete a[goog.UID_PROPERTY_];\n  } catch (b) {\n  }\n};\ngoog.UID_PROPERTY_ = \"closure_uid_\" + (1e9 * Math.random() >>> 0);\ngoog.uidCounter_ = 0;\ngoog.getHashCode = goog.getUid;\ngoog.removeHashCode = goog.removeUid;\ngoog.cloneObject = function(a) {\n  var b = goog.typeOf(a);\n  if (\"object\" == b || \"array\" == b) {\n    if (\"function\" === typeof a.clone) {\n      return a.clone();\n    }\n    b = \"array\" == b ? [] : {};\n    for (var c in a) {\n      b[c] = goog.cloneObject(a[c]);\n    }\n    return b;\n  }\n  return a;\n};\ngoog.bindNative_ = function(a, b, c) {\n  return a.call.apply(a.bind, arguments);\n};\ngoog.bindJs_ = function(a, b, c) {\n  if (!a) {\n    throw Error();\n  }\n  if (2 < arguments.length) {\n    var d = Array.prototype.slice.call(arguments, 2);\n    return function() {\n      var c = Array.prototype.slice.call(arguments);\n      Array.prototype.unshift.apply(c, d);\n      return a.apply(b, c);\n    };\n  }\n  return function() {\n    return a.apply(b, arguments);\n  };\n};\ngoog.bind = function(a, b, c) {\n  Function.prototype.bind && -1 != Function.prototype.bind.toString().indexOf(\"native code\") ? goog.bind = goog.bindNative_ : goog.bind = goog.bindJs_;\n  return goog.bind.apply(null, arguments);\n};\ngoog.partial = function(a, b) {\n  var c = Array.prototype.slice.call(arguments, 1);\n  return function() {\n    var b = c.slice();\n    b.push.apply(b, arguments);\n    return a.apply(this, b);\n  };\n};\ngoog.mixin = function(a, b) {\n  for (var c in b) {\n    a[c] = b[c];\n  }\n};\ngoog.now = goog.TRUSTED_SITE && Date.now || function() {\n  return +new Date;\n};\ngoog.globalEval = function(a) {\n  if (goog.global.execScript) {\n    goog.global.execScript(a, \"JavaScript\");\n  } else {\n    if (goog.global.eval) {\n      if (null == goog.evalWorksForGlobals_) {\n        try {\n          goog.global.eval(\"var _evalTest_ = 1;\");\n        } catch (d) {\n        }\n        if (\"undefined\" != typeof goog.global._evalTest_) {\n          try {\n            delete goog.global._evalTest_;\n          } catch (d) {\n          }\n          goog.evalWorksForGlobals_ = !0;\n        } else {\n          goog.evalWorksForGlobals_ = !1;\n        }\n      }\n      if (goog.evalWorksForGlobals_) {\n        goog.global.eval(a);\n      } else {\n        var b = goog.global.document, c = b.createElement(\"script\");\n        c.type = \"text/javascript\";\n        c.defer = !1;\n        c.appendChild(b.createTextNode(a));\n        b.head.appendChild(c);\n        b.head.removeChild(c);\n      }\n    } else {\n      throw Error(\"goog.globalEval not available\");\n    }\n  }\n};\ngoog.evalWorksForGlobals_ = null;\ngoog.getCssName = function(a, b) {\n  if (\".\" == String(a).charAt(0)) {\n    throw Error('className passed in goog.getCssName must not start with \".\". You passed: ' + a);\n  }\n  var c = function(a) {\n    return goog.cssNameMapping_[a] || a;\n  }, d = function(a) {\n    a = a.split(\"-\");\n    for (var b = [], d = 0; d < a.length; d++) {\n      b.push(c(a[d]));\n    }\n    return b.join(\"-\");\n  };\n  d = goog.cssNameMapping_ ? \"BY_WHOLE\" == goog.cssNameMappingStyle_ ? c : d : function(a) {\n    return a;\n  };\n  d = b ? a + \"-\" + d(b) : d(a);\n  return goog.global.CLOSURE_CSS_NAME_MAP_FN ? goog.global.CLOSURE_CSS_NAME_MAP_FN(d) : d;\n};\ngoog.setCssNameMapping = function(a, b) {\n  goog.cssNameMapping_ = a;\n  goog.cssNameMappingStyle_ = b;\n};\n!COMPILED && goog.global.CLOSURE_CSS_NAME_MAPPING && (goog.cssNameMapping_ = goog.global.CLOSURE_CSS_NAME_MAPPING);\ngoog.getMsg = function(a, b, c) {\n  c && c.html && (a = a.replace(/</g, \"&lt;\"));\n  b && (a = a.replace(/\\{\\$([^}]+)}/g, function(a, c) {\n    return null != b && c in b ? b[c] : a;\n  }));\n  return a;\n};\ngoog.getMsgWithFallback = function(a, b) {\n  return a;\n};\ngoog.exportSymbol = function(a, b, c) {\n  goog.exportPath_(a, b, c);\n};\ngoog.exportProperty = function(a, b, c) {\n  a[b] = c;\n};\ngoog.inherits = function(a, b) {\n  function c() {\n  }\n  c.prototype = b.prototype;\n  a.superClass_ = b.prototype;\n  a.prototype = new c;\n  a.prototype.constructor = a;\n  a.base = function(a, c, f) {\n    for (var d = Array(arguments.length - 2), e = 2; e < arguments.length; e++) {\n      d[e - 2] = arguments[e];\n    }\n    return b.prototype[c].apply(a, d);\n  };\n};\ngoog.base = function(a, b, c) {\n  var d = arguments.callee.caller;\n  if (goog.STRICT_MODE_COMPATIBLE || goog.DEBUG && !d) {\n    throw Error(\"arguments.caller not defined.  goog.base() cannot be used with strict mode code. See http://www.ecma-international.org/ecma-262/5.1/#sec-C\");\n  }\n  if (\"undefined\" !== typeof d.superClass_) {\n    for (var e = Array(arguments.length - 1), f = 1; f < arguments.length; f++) {\n      e[f - 1] = arguments[f];\n    }\n    return d.superClass_.constructor.apply(a, e);\n  }\n  if (\"string\" != typeof b && \"symbol\" != typeof b) {\n    throw Error(\"method names provided to goog.base must be a string or a symbol\");\n  }\n  e = Array(arguments.length - 2);\n  for (f = 2; f < arguments.length; f++) {\n    e[f - 2] = arguments[f];\n  }\n  f = !1;\n  for (var g = a.constructor.prototype; g; g = Object.getPrototypeOf(g)) {\n    if (g[b] === d) {\n      f = !0;\n    } else {\n      if (f) {\n        return g[b].apply(a, e);\n      }\n    }\n  }\n  if (a[b] === d) {\n    return a.constructor.prototype[b].apply(a, e);\n  }\n  throw Error(\"goog.base called from a method of one name to a method of a different name\");\n};\ngoog.scope = function(a) {\n  if (goog.isInModuleLoader_()) {\n    throw Error(\"goog.scope is not supported within a module.\");\n  }\n  a.call(goog.global);\n};\nCOMPILED || (goog.global.COMPILED = COMPILED);\ngoog.defineClass = function(a, b) {\n  var c = b.constructor, d = b.statics;\n  c && c != Object.prototype.constructor || (c = function() {\n    throw Error(\"cannot instantiate an interface (no constructor defined).\");\n  });\n  c = goog.defineClass.createSealingConstructor_(c, a);\n  a && goog.inherits(c, a);\n  delete b.constructor;\n  delete b.statics;\n  goog.defineClass.applyProperties_(c.prototype, b);\n  null != d && (d instanceof Function ? d(c) : goog.defineClass.applyProperties_(c, d));\n  return c;\n};\ngoog.defineClass.SEAL_CLASS_INSTANCES = goog.DEBUG;\ngoog.defineClass.createSealingConstructor_ = function(a, b) {\n  if (!goog.defineClass.SEAL_CLASS_INSTANCES) {\n    return a;\n  }\n  var c = !goog.defineClass.isUnsealable_(b), d = function() {\n    var b = a.apply(this, arguments) || this;\n    b[goog.UID_PROPERTY_] = b[goog.UID_PROPERTY_];\n    this.constructor === d && c && Object.seal instanceof Function && Object.seal(b);\n    return b;\n  };\n  return d;\n};\ngoog.defineClass.isUnsealable_ = function(a) {\n  return a && a.prototype && a.prototype[goog.UNSEALABLE_CONSTRUCTOR_PROPERTY_];\n};\ngoog.defineClass.OBJECT_PROTOTYPE_FIELDS_ = \"constructor hasOwnProperty isPrototypeOf propertyIsEnumerable toLocaleString toString valueOf\".split(\" \");\ngoog.defineClass.applyProperties_ = function(a, b) {\n  for (var c in b) {\n    Object.prototype.hasOwnProperty.call(b, c) && (a[c] = b[c]);\n  }\n  for (var d = 0; d < goog.defineClass.OBJECT_PROTOTYPE_FIELDS_.length; d++) {\n    c = goog.defineClass.OBJECT_PROTOTYPE_FIELDS_[d], Object.prototype.hasOwnProperty.call(b, c) && (a[c] = b[c]);\n  }\n};\ngoog.tagUnsealableClass = function(a) {\n  !COMPILED && goog.defineClass.SEAL_CLASS_INSTANCES && (a.prototype[goog.UNSEALABLE_CONSTRUCTOR_PROPERTY_] = !0);\n};\ngoog.UNSEALABLE_CONSTRUCTOR_PROPERTY_ = \"goog_defineClass_legacy_unsealable\";\n!COMPILED && goog.DEPENDENCIES_ENABLED && (goog.inHtmlDocument_ = function() {\n  var a = goog.global.document;\n  return null != a && \"write\" in a;\n}, goog.isDocumentLoading_ = function() {\n  var a = goog.global.document;\n  return a.attachEvent ? \"complete\" != a.readyState : \"loading\" == a.readyState;\n}, goog.findBasePath_ = function() {\n  if (void 0 != goog.global.CLOSURE_BASE_PATH && \"string\" === typeof goog.global.CLOSURE_BASE_PATH) {\n    goog.basePath = goog.global.CLOSURE_BASE_PATH;\n  } else {\n    if (goog.inHtmlDocument_()) {\n      var a = goog.global.document, b = a.currentScript;\n      a = b ? [b] : a.getElementsByTagName(\"SCRIPT\");\n      for (b = a.length - 1; 0 <= b; --b) {\n        var c = a[b].src, d = c.lastIndexOf(\"?\");\n        d = -1 == d ? c.length : d;\n        if (\"base.js\" == c.substr(d - 7, 7)) {\n          goog.basePath = c.substr(0, d - 7);\n          break;\n        }\n      }\n    }\n  }\n}, goog.findBasePath_(), goog.Transpiler = function() {\n  this.requiresTranspilation_ = null;\n  this.transpilationTarget_ = goog.TRANSPILE_TO_LANGUAGE;\n}, goog.Transpiler.prototype.createRequiresTranspilation_ = function() {\n  function a(a, b) {\n    e ? d[a] = !0 : b() ? (c = a, d[a] = !1) : e = d[a] = !0;\n  }\n  function b(a) {\n    try {\n      return !!eval(a);\n    } catch (h) {\n      return !1;\n    }\n  }\n  var c = \"es3\", d = {es3:!1}, e = !1, f = goog.global.navigator && goog.global.navigator.userAgent ? goog.global.navigator.userAgent : \"\";\n  a(\"es5\", function() {\n    return b(\"[1,].length==1\");\n  });\n  a(\"es6\", function() {\n    return f.match(/Edge\\/(\\d+)(\\.\\d)*/i) ? !1 : b('(()=>{\"use strict\";class X{constructor(){if(new.target!=String)throw 1;this.x=42}}let q=Reflect.construct(X,[],String);if(q.x!=42||!(q instanceof String))throw 1;for(const a of[2,3]){if(a==2)continue;function f(z={a}){let a=0;return z.a}{function f(){return 0;}}return f()==3}})()');\n  });\n  a(\"es7\", function() {\n    return b(\"2 ** 2 == 4\");\n  });\n  a(\"es8\", function() {\n    return b(\"async () => 1, true\");\n  });\n  a(\"es9\", function() {\n    return b(\"({...rest} = {}), true\");\n  });\n  a(\"es_next\", function() {\n    return !1;\n  });\n  return {target:c, map:d};\n}, goog.Transpiler.prototype.needsTranspile = function(a, b) {\n  if (\"always\" == goog.TRANSPILE) {\n    return !0;\n  }\n  if (\"never\" == goog.TRANSPILE) {\n    return !1;\n  }\n  if (!this.requiresTranspilation_) {\n    var c = this.createRequiresTranspilation_();\n    this.requiresTranspilation_ = c.map;\n    this.transpilationTarget_ = this.transpilationTarget_ || c.target;\n  }\n  if (a in this.requiresTranspilation_) {\n    return this.requiresTranspilation_[a] ? !0 : !goog.inHtmlDocument_() || \"es6\" != b || \"noModule\" in goog.global.document.createElement(\"script\") ? !1 : !0;\n  }\n  throw Error(\"Unknown language mode: \" + a);\n}, goog.Transpiler.prototype.transpile = function(a, b) {\n  return goog.transpile_(a, b, this.transpilationTarget_);\n}, goog.transpiler_ = new goog.Transpiler, goog.protectScriptTag_ = function(a) {\n  return a.replace(/<\\/(SCRIPT)/ig, \"\\\\x3c/$1\");\n}, goog.DebugLoader_ = function() {\n  this.dependencies_ = {};\n  this.idToPath_ = {};\n  this.written_ = {};\n  this.loadingDeps_ = [];\n  this.depsToLoad_ = [];\n  this.paused_ = !1;\n  this.factory_ = new goog.DependencyFactory(goog.transpiler_);\n  this.deferredCallbacks_ = {};\n  this.deferredQueue_ = [];\n}, goog.DebugLoader_.prototype.bootstrap = function(a, b) {\n  function c() {\n    d && (goog.global.setTimeout(d, 0), d = null);\n  }\n  var d = b;\n  if (a.length) {\n    for (var e = [], f = 0; f < a.length; f++) {\n      var g = this.getPathFromDeps_(a[f]);\n      if (!g) {\n        throw Error(\"Unregonized namespace: \" + a[f]);\n      }\n      e.push(this.dependencies_[g]);\n    }\n    g = goog.require;\n    var h = 0;\n    for (f = 0; f < a.length; f++) {\n      g(a[f]), e[f].onLoad(function() {\n        ++h == a.length && c();\n      });\n    }\n  } else {\n    c();\n  }\n}, goog.DebugLoader_.prototype.loadClosureDeps = function() {\n  this.depsToLoad_.push(this.factory_.createDependency(goog.normalizePath_(goog.basePath + \"deps.js\"), \"deps.js\", [], [], {}, !1));\n  this.loadDeps_();\n}, goog.DebugLoader_.prototype.requested = function(a, b) {\n  var c = this.getPathFromDeps_(a);\n  if (c && (b || this.areDepsLoaded_(this.dependencies_[c].requires))) {\n    var d = this.deferredCallbacks_[c];\n    d && (delete this.deferredCallbacks_[c], d());\n  }\n}, goog.DebugLoader_.prototype.setDependencyFactory = function(a) {\n  this.factory_ = a;\n}, goog.DebugLoader_.prototype.load_ = function(a) {\n  if (this.getPathFromDeps_(a)) {\n    var b = this, c = [], d = function(a) {\n      var e = b.getPathFromDeps_(a);\n      if (!e) {\n        throw Error(\"Bad dependency path or symbol: \" + a);\n      }\n      if (!b.written_[e]) {\n        b.written_[e] = !0;\n        a = b.dependencies_[e];\n        for (e = 0; e < a.requires.length; e++) {\n          goog.isProvided_(a.requires[e]) || d(a.requires[e]);\n        }\n        c.push(a);\n      }\n    };\n    d(a);\n    a = !!this.depsToLoad_.length;\n    this.depsToLoad_ = this.depsToLoad_.concat(c);\n    this.paused_ || a || this.loadDeps_();\n  } else {\n    throw a = \"goog.require could not find: \" + a, goog.logToConsole_(a), Error(a);\n  }\n}, goog.DebugLoader_.prototype.loadDeps_ = function() {\n  for (var a = this, b = this.paused_; this.depsToLoad_.length && !b;) {\n    (function() {\n      var c = !1, d = a.depsToLoad_.shift(), e = !1;\n      a.loading_(d);\n      var f = {pause:function() {\n        if (c) {\n          throw Error(\"Cannot call pause after the call to load.\");\n        }\n        b = !0;\n      }, resume:function() {\n        c ? a.resume_() : b = !1;\n      }, loaded:function() {\n        if (e) {\n          throw Error(\"Double call to loaded.\");\n        }\n        e = !0;\n        a.loaded_(d);\n      }, pending:function() {\n        for (var b = [], c = 0; c < a.loadingDeps_.length; c++) {\n          b.push(a.loadingDeps_[c]);\n        }\n        return b;\n      }, setModuleState:function(a) {\n        goog.moduleLoaderState_ = {type:a, moduleName:\"\", declareLegacyNamespace:!1};\n      }, registerEs6ModuleExports:function(a, b, c) {\n        c && (goog.loadedModules_[c] = {exports:b, type:goog.ModuleType.ES6, moduleId:c || \"\"});\n      }, registerGoogModuleExports:function(a, b) {\n        goog.loadedModules_[a] = {exports:b, type:goog.ModuleType.GOOG, moduleId:a};\n      }, clearModuleState:function() {\n        goog.moduleLoaderState_ = null;\n      }, defer:function(b) {\n        if (c) {\n          throw Error(\"Cannot register with defer after the call to load.\");\n        }\n        a.defer_(d, b);\n      }, areDepsLoaded:function() {\n        return a.areDepsLoaded_(d.requires);\n      }};\n      try {\n        d.load(f);\n      } finally {\n        c = !0;\n      }\n    })();\n  }\n  b && this.pause_();\n}, goog.DebugLoader_.prototype.pause_ = function() {\n  this.paused_ = !0;\n}, goog.DebugLoader_.prototype.resume_ = function() {\n  this.paused_ && (this.paused_ = !1, this.loadDeps_());\n}, goog.DebugLoader_.prototype.loading_ = function(a) {\n  this.loadingDeps_.push(a);\n}, goog.DebugLoader_.prototype.loaded_ = function(a) {\n  for (var b = 0; b < this.loadingDeps_.length; b++) {\n    if (this.loadingDeps_[b] == a) {\n      this.loadingDeps_.splice(b, 1);\n      break;\n    }\n  }\n  for (b = 0; b < this.deferredQueue_.length; b++) {\n    if (this.deferredQueue_[b] == a.path) {\n      this.deferredQueue_.splice(b, 1);\n      break;\n    }\n  }\n  if (this.loadingDeps_.length == this.deferredQueue_.length && !this.depsToLoad_.length) {\n    for (; this.deferredQueue_.length;) {\n      this.requested(this.deferredQueue_.shift(), !0);\n    }\n  }\n  a.loaded();\n}, goog.DebugLoader_.prototype.areDepsLoaded_ = function(a) {\n  for (var b = 0; b < a.length; b++) {\n    var c = this.getPathFromDeps_(a[b]);\n    if (!c || !(c in this.deferredCallbacks_ || goog.isProvided_(a[b]))) {\n      return !1;\n    }\n  }\n  return !0;\n}, goog.DebugLoader_.prototype.getPathFromDeps_ = function(a) {\n  return a in this.idToPath_ ? this.idToPath_[a] : a in this.dependencies_ ? a : null;\n}, goog.DebugLoader_.prototype.defer_ = function(a, b) {\n  this.deferredCallbacks_[a.path] = b;\n  this.deferredQueue_.push(a.path);\n}, goog.LoadController = function() {\n}, goog.LoadController.prototype.pause = function() {\n}, goog.LoadController.prototype.resume = function() {\n}, goog.LoadController.prototype.loaded = function() {\n}, goog.LoadController.prototype.pending = function() {\n}, goog.LoadController.prototype.registerEs6ModuleExports = function(a, b, c) {\n}, goog.LoadController.prototype.setModuleState = function(a) {\n}, goog.LoadController.prototype.clearModuleState = function() {\n}, goog.LoadController.prototype.defer = function(a) {\n}, goog.LoadController.prototype.areDepsLoaded = function() {\n}, goog.Dependency = function(a, b, c, d, e) {\n  this.path = a;\n  this.relativePath = b;\n  this.provides = c;\n  this.requires = d;\n  this.loadFlags = e;\n  this.loaded_ = !1;\n  this.loadCallbacks_ = [];\n}, goog.Dependency.prototype.getPathName = function() {\n  var a = this.path, b = a.indexOf(\"://\");\n  0 <= b && (a = a.substring(b + 3), b = a.indexOf(\"/\"), 0 <= b && (a = a.substring(b + 1)));\n  return a;\n}, goog.Dependency.prototype.onLoad = function(a) {\n  this.loaded_ ? a() : this.loadCallbacks_.push(a);\n}, goog.Dependency.prototype.loaded = function() {\n  this.loaded_ = !0;\n  var a = this.loadCallbacks_;\n  this.loadCallbacks_ = [];\n  for (var b = 0; b < a.length; b++) {\n    a[b]();\n  }\n}, goog.Dependency.defer_ = !1, goog.Dependency.callbackMap_ = {}, goog.Dependency.registerCallback_ = function(a) {\n  var b = Math.random().toString(32);\n  goog.Dependency.callbackMap_[b] = a;\n  return b;\n}, goog.Dependency.unregisterCallback_ = function(a) {\n  delete goog.Dependency.callbackMap_[a];\n}, goog.Dependency.callback_ = function(a, b) {\n  if (a in goog.Dependency.callbackMap_) {\n    for (var c = goog.Dependency.callbackMap_[a], d = [], e = 1; e < arguments.length; e++) {\n      d.push(arguments[e]);\n    }\n    c.apply(void 0, d);\n  } else {\n    throw Error(\"Callback key \" + a + \" does not exist (was base.js loaded more than once?).\");\n  }\n}, goog.Dependency.prototype.load = function(a) {\n  if (goog.global.CLOSURE_IMPORT_SCRIPT) {\n    goog.global.CLOSURE_IMPORT_SCRIPT(this.path) ? a.loaded() : a.pause();\n  } else {\n    if (goog.inHtmlDocument_()) {\n      var b = goog.global.document;\n      if (\"complete\" == b.readyState && !goog.ENABLE_CHROME_APP_SAFE_SCRIPT_LOADING) {\n        if (/\\bdeps.js$/.test(this.path)) {\n          a.loaded();\n          return;\n        }\n        throw Error('Cannot write \"' + this.path + '\" after document load');\n      }\n      if (!goog.ENABLE_CHROME_APP_SAFE_SCRIPT_LOADING && goog.isDocumentLoading_()) {\n        var c = goog.Dependency.registerCallback_(function(b) {\n          goog.DebugLoader_.IS_OLD_IE_ && \"complete\" != b.readyState || (goog.Dependency.unregisterCallback_(c), a.loaded());\n        }), d = !goog.DebugLoader_.IS_OLD_IE_ && goog.getScriptNonce() ? ' nonce=\"' + goog.getScriptNonce() + '\"' : \"\";\n        d = '<script src=\"' + this.path + '\" ' + (goog.DebugLoader_.IS_OLD_IE_ ? \"onreadystatechange\" : \"onload\") + \"=\\\"goog.Dependency.callback_('\" + c + '\\', this)\" type=\"text/javascript\" ' + (goog.Dependency.defer_ ? \"defer\" : \"\") + d + \">\\x3c/script>\";\n        b.write(goog.TRUSTED_TYPES_POLICY_ ? goog.TRUSTED_TYPES_POLICY_.createHTML(d) : d);\n      } else {\n        var e = b.createElement(\"script\");\n        e.defer = goog.Dependency.defer_;\n        e.async = !1;\n        e.type = \"text/javascript\";\n        (d = goog.getScriptNonce()) && e.setAttribute(\"nonce\", d);\n        goog.DebugLoader_.IS_OLD_IE_ ? (a.pause(), e.onreadystatechange = function() {\n          if (\"loaded\" == e.readyState || \"complete\" == e.readyState) {\n            a.loaded(), a.resume();\n          }\n        }) : e.onload = function() {\n          e.onload = null;\n          a.loaded();\n        };\n        e.src = goog.TRUSTED_TYPES_POLICY_ ? goog.TRUSTED_TYPES_POLICY_.createScriptURL(this.path) : this.path;\n        b.head.appendChild(e);\n      }\n    } else {\n      goog.logToConsole_(\"Cannot use default debug loader outside of HTML documents.\"), \"deps.js\" == this.relativePath ? (goog.logToConsole_(\"Consider setting CLOSURE_IMPORT_SCRIPT before loading base.js, or setting CLOSURE_NO_DEPS to true.\"), a.loaded()) : a.pause();\n    }\n  }\n}, goog.Es6ModuleDependency = function(a, b, c, d, e) {\n  goog.Dependency.call(this, a, b, c, d, e);\n}, goog.inherits(goog.Es6ModuleDependency, goog.Dependency), goog.Es6ModuleDependency.prototype.load = function(a) {\n  function b(a, b) {\n    var c = b ? '<script type=\"module\" crossorigin>' + b + \"\\x3c/script>\" : '<script type=\"module\" crossorigin src=\"' + a + '\">\\x3c/script>';\n    d.write(goog.TRUSTED_TYPES_POLICY_ ? goog.TRUSTED_TYPES_POLICY_.createHTML(c) : c);\n  }\n  function c(a, b) {\n    var c = d.createElement(\"script\");\n    c.defer = !0;\n    c.async = !1;\n    c.type = \"module\";\n    c.setAttribute(\"crossorigin\", !0);\n    var e = goog.getScriptNonce();\n    e && c.setAttribute(\"nonce\", e);\n    b ? c.textContent = goog.TRUSTED_TYPES_POLICY_ ? goog.TRUSTED_TYPES_POLICY_.createScript(b) : b : c.src = goog.TRUSTED_TYPES_POLICY_ ? goog.TRUSTED_TYPES_POLICY_.createScriptURL(a) : a;\n    d.head.appendChild(c);\n  }\n  if (goog.global.CLOSURE_IMPORT_SCRIPT) {\n    goog.global.CLOSURE_IMPORT_SCRIPT(this.path) ? a.loaded() : a.pause();\n  } else {\n    if (goog.inHtmlDocument_()) {\n      var d = goog.global.document, e = this;\n      if (goog.isDocumentLoading_()) {\n        var f = b;\n        goog.Dependency.defer_ = !0;\n      } else {\n        f = c;\n      }\n      var g = goog.Dependency.registerCallback_(function() {\n        goog.Dependency.unregisterCallback_(g);\n        a.setModuleState(goog.ModuleType.ES6);\n      });\n      f(void 0, 'goog.Dependency.callback_(\"' + g + '\")');\n      f(this.path, void 0);\n      var h = goog.Dependency.registerCallback_(function(b) {\n        goog.Dependency.unregisterCallback_(h);\n        a.registerEs6ModuleExports(e.path, b, goog.moduleLoaderState_.moduleName);\n      });\n      f(void 0, 'import * as m from \"' + this.path + '\"; goog.Dependency.callback_(\"' + h + '\", m)');\n      var k = goog.Dependency.registerCallback_(function() {\n        goog.Dependency.unregisterCallback_(k);\n        a.clearModuleState();\n        a.loaded();\n      });\n      f(void 0, 'goog.Dependency.callback_(\"' + k + '\")');\n    } else {\n      goog.logToConsole_(\"Cannot use default debug loader outside of HTML documents.\"), a.pause();\n    }\n  }\n}, goog.TransformedDependency = function(a, b, c, d, e) {\n  goog.Dependency.call(this, a, b, c, d, e);\n  this.contents_ = null;\n  this.lazyFetch_ = !goog.inHtmlDocument_() || !(\"noModule\" in goog.global.document.createElement(\"script\"));\n}, goog.inherits(goog.TransformedDependency, goog.Dependency), goog.TransformedDependency.prototype.load = function(a) {\n  function b() {\n    e.contents_ = goog.loadFileSync_(e.path);\n    e.contents_ && (e.contents_ = e.transform(e.contents_), e.contents_ && (e.contents_ += \"\\n//# sourceURL=\" + e.path));\n  }\n  function c() {\n    e.lazyFetch_ && b();\n    if (e.contents_) {\n      f && a.setModuleState(goog.ModuleType.ES6);\n      try {\n        var c = e.contents_;\n        e.contents_ = null;\n        goog.globalEval(c);\n        if (f) {\n          var d = goog.moduleLoaderState_.moduleName;\n        }\n      } finally {\n        f && a.clearModuleState();\n      }\n      f && goog.global.$jscomp.require.ensure([e.getPathName()], function() {\n        a.registerEs6ModuleExports(e.path, goog.global.$jscomp.require(e.getPathName()), d);\n      });\n      a.loaded();\n    }\n  }\n  function d() {\n    var a = goog.global.document, b = goog.Dependency.registerCallback_(function() {\n      goog.Dependency.unregisterCallback_(b);\n      c();\n    }), d = '<script type=\"text/javascript\">' + goog.protectScriptTag_('goog.Dependency.callback_(\"' + b + '\");') + \"\\x3c/script>\";\n    a.write(goog.TRUSTED_TYPES_POLICY_ ? goog.TRUSTED_TYPES_POLICY_.createHTML(d) : d);\n  }\n  var e = this;\n  if (goog.global.CLOSURE_IMPORT_SCRIPT) {\n    b(), this.contents_ && goog.global.CLOSURE_IMPORT_SCRIPT(\"\", this.contents_) ? (this.contents_ = null, a.loaded()) : a.pause();\n  } else {\n    var f = this.loadFlags.module == goog.ModuleType.ES6;\n    this.lazyFetch_ || b();\n    var g = 1 < a.pending().length, h = g && goog.DebugLoader_.IS_OLD_IE_;\n    g = goog.Dependency.defer_ && (g || goog.isDocumentLoading_());\n    if (h || g) {\n      a.defer(function() {\n        c();\n      });\n    } else {\n      var k = goog.global.document;\n      h = goog.inHtmlDocument_() && \"ActiveXObject\" in goog.global;\n      if (f && goog.inHtmlDocument_() && goog.isDocumentLoading_() && !h) {\n        goog.Dependency.defer_ = !0;\n        a.pause();\n        var l = k.onreadystatechange;\n        k.onreadystatechange = function() {\n          \"interactive\" == k.readyState && (k.onreadystatechange = l, c(), a.resume());\n          goog.isFunction(l) && l.apply(void 0, arguments);\n        };\n      } else {\n        !goog.DebugLoader_.IS_OLD_IE_ && goog.inHtmlDocument_() && goog.isDocumentLoading_() ? d() : c();\n      }\n    }\n  }\n}, goog.TransformedDependency.prototype.transform = function(a) {\n}, goog.TranspiledDependency = function(a, b, c, d, e, f) {\n  goog.TransformedDependency.call(this, a, b, c, d, e);\n  this.transpiler = f;\n}, goog.inherits(goog.TranspiledDependency, goog.TransformedDependency), goog.TranspiledDependency.prototype.transform = function(a) {\n  return this.transpiler.transpile(a, this.getPathName());\n}, goog.PreTranspiledEs6ModuleDependency = function(a, b, c, d, e) {\n  goog.TransformedDependency.call(this, a, b, c, d, e);\n}, goog.inherits(goog.PreTranspiledEs6ModuleDependency, goog.TransformedDependency), goog.PreTranspiledEs6ModuleDependency.prototype.transform = function(a) {\n  return a;\n}, goog.GoogModuleDependency = function(a, b, c, d, e, f, g) {\n  goog.TransformedDependency.call(this, a, b, c, d, e);\n  this.needsTranspile_ = f;\n  this.transpiler_ = g;\n}, goog.inherits(goog.GoogModuleDependency, goog.TransformedDependency), goog.GoogModuleDependency.prototype.transform = function(a) {\n  this.needsTranspile_ && (a = this.transpiler_.transpile(a, this.getPathName()));\n  return goog.LOAD_MODULE_USING_EVAL && void 0 !== goog.global.JSON ? \"goog.loadModule(\" + goog.global.JSON.stringify(a + \"\\n//# sourceURL=\" + this.path + \"\\n\") + \");\" : 'goog.loadModule(function(exports) {\"use strict\";' + a + \"\\n;return exports});\\n//# sourceURL=\" + this.path + \"\\n\";\n}, goog.DebugLoader_.IS_OLD_IE_ = !(goog.global.atob || !goog.global.document || !goog.global.document.all), goog.DebugLoader_.prototype.addDependency = function(a, b, c, d) {\n  b = b || [];\n  a = a.replace(/\\\\/g, \"/\");\n  var e = goog.normalizePath_(goog.basePath + a);\n  d && \"boolean\" !== typeof d || (d = d ? {module:goog.ModuleType.GOOG} : {});\n  c = this.factory_.createDependency(e, a, b, c, d, goog.transpiler_.needsTranspile(d.lang || \"es3\", d.module));\n  this.dependencies_[e] = c;\n  for (c = 0; c < b.length; c++) {\n    this.idToPath_[b[c]] = e;\n  }\n  this.idToPath_[a] = e;\n}, goog.DependencyFactory = function(a) {\n  this.transpiler = a;\n}, goog.DependencyFactory.prototype.createDependency = function(a, b, c, d, e, f) {\n  return e.module == goog.ModuleType.GOOG ? new goog.GoogModuleDependency(a, b, c, d, e, f, this.transpiler) : f ? new goog.TranspiledDependency(a, b, c, d, e, this.transpiler) : e.module == goog.ModuleType.ES6 ? \"never\" == goog.TRANSPILE && goog.ASSUME_ES_MODULES_TRANSPILED ? new goog.PreTranspiledEs6ModuleDependency(a, b, c, d, e) : new goog.Es6ModuleDependency(a, b, c, d, e) : new goog.Dependency(a, b, c, d, e);\n}, goog.debugLoader_ = new goog.DebugLoader_, goog.loadClosureDeps = function() {\n  goog.debugLoader_.loadClosureDeps();\n}, goog.setDependencyFactory = function(a) {\n  goog.debugLoader_.setDependencyFactory(a);\n}, goog.global.CLOSURE_NO_DEPS || goog.debugLoader_.loadClosureDeps(), goog.bootstrap = function(a, b) {\n  goog.debugLoader_.bootstrap(a, b);\n});\ngoog.TRUSTED_TYPES_POLICY_NAME = \"\";\ngoog.identity_ = function(a) {\n  return a;\n};\ngoog.createTrustedTypesPolicy = function(a) {\n  var b = null, c = goog.global.trustedTypes || goog.global.TrustedTypes;\n  if (!c || !c.createPolicy) {\n    return b;\n  }\n  try {\n    b = c.createPolicy(a, {createHTML:goog.identity_, createScript:goog.identity_, createScriptURL:goog.identity_, createURL:goog.identity_});\n  } catch (d) {\n    goog.logToConsole_(d.message);\n  }\n  return b;\n};\ngoog.TRUSTED_TYPES_POLICY_ = goog.TRUSTED_TYPES_POLICY_NAME ? goog.createTrustedTypesPolicy(goog.TRUSTED_TYPES_POLICY_NAME + \"#base\") : null;\ngoog.string = {};\ngoog.string.StringBuffer = function(a, b) {\n  null != a && this.append.apply(this, arguments);\n};\ngoog.string.StringBuffer.prototype.buffer_ = \"\";\ngoog.string.StringBuffer.prototype.set = function(a) {\n  this.buffer_ = \"\" + a;\n};\ngoog.string.StringBuffer.prototype.append = function(a, b, c) {\n  this.buffer_ += String(a);\n  if (null != b) {\n    for (var d = 1; d < arguments.length; d++) {\n      this.buffer_ += arguments[d];\n    }\n  }\n  return this;\n};\ngoog.string.StringBuffer.prototype.clear = function() {\n  this.buffer_ = \"\";\n};\ngoog.string.StringBuffer.prototype.getLength = function() {\n  return this.buffer_.length;\n};\ngoog.string.StringBuffer.prototype.toString = function() {\n  return this.buffer_;\n};\ngoog.debug = {};\ngoog.debug.Error = function(a) {\n  if (Error.captureStackTrace) {\n    Error.captureStackTrace(this, goog.debug.Error);\n  } else {\n    var b = Error().stack;\n    b && (this.stack = b);\n  }\n  a && (this.message = String(a));\n  this.reportErrorToServer = !0;\n};\ngoog.inherits(goog.debug.Error, Error);\ngoog.debug.Error.prototype.name = \"CustomError\";\ngoog.dom = {};\ngoog.dom.NodeType = {ELEMENT:1, ATTRIBUTE:2, TEXT:3, CDATA_SECTION:4, ENTITY_REFERENCE:5, ENTITY:6, PROCESSING_INSTRUCTION:7, COMMENT:8, DOCUMENT:9, DOCUMENT_TYPE:10, DOCUMENT_FRAGMENT:11, NOTATION:12};\ngoog.asserts = {};\ngoog.asserts.ENABLE_ASSERTS = goog.DEBUG;\ngoog.asserts.AssertionError = function(a, b) {\n  goog.debug.Error.call(this, goog.asserts.subs_(a, b));\n  this.messagePattern = a;\n};\ngoog.inherits(goog.asserts.AssertionError, goog.debug.Error);\ngoog.asserts.AssertionError.prototype.name = \"AssertionError\";\ngoog.asserts.DEFAULT_ERROR_HANDLER = function(a) {\n  throw a;\n};\ngoog.asserts.errorHandler_ = goog.asserts.DEFAULT_ERROR_HANDLER;\ngoog.asserts.subs_ = function(a, b) {\n  for (var c = a.split(\"%s\"), d = \"\", e = c.length - 1, f = 0; f < e; f++) {\n    d += c[f] + (f < b.length ? b[f] : \"%s\");\n  }\n  return d + c[e];\n};\ngoog.asserts.doAssertFailure_ = function(a, b, c, d) {\n  var e = \"Assertion failed\";\n  if (c) {\n    e += \": \" + c;\n    var f = d;\n  } else {\n    a && (e += \": \" + a, f = b);\n  }\n  a = new goog.asserts.AssertionError(\"\" + e, f || []);\n  goog.asserts.errorHandler_(a);\n};\ngoog.asserts.setErrorHandler = function(a) {\n  goog.asserts.ENABLE_ASSERTS && (goog.asserts.errorHandler_ = a);\n};\ngoog.asserts.assert = function(a, b, c) {\n  goog.asserts.ENABLE_ASSERTS && !a && goog.asserts.doAssertFailure_(\"\", null, b, Array.prototype.slice.call(arguments, 2));\n  return a;\n};\ngoog.asserts.assertExists = function(a, b, c) {\n  goog.asserts.ENABLE_ASSERTS && null == a && goog.asserts.doAssertFailure_(\"Expected to exist: %s.\", [a], b, Array.prototype.slice.call(arguments, 2));\n  return a;\n};\ngoog.asserts.fail = function(a, b) {\n  goog.asserts.ENABLE_ASSERTS && goog.asserts.errorHandler_(new goog.asserts.AssertionError(\"Failure\" + (a ? \": \" + a : \"\"), Array.prototype.slice.call(arguments, 1)));\n};\ngoog.asserts.assertNumber = function(a, b, c) {\n  goog.asserts.ENABLE_ASSERTS && \"number\" !== typeof a && goog.asserts.doAssertFailure_(\"Expected number but got %s: %s.\", [goog.typeOf(a), a], b, Array.prototype.slice.call(arguments, 2));\n  return a;\n};\ngoog.asserts.assertString = function(a, b, c) {\n  goog.asserts.ENABLE_ASSERTS && \"string\" !== typeof a && goog.asserts.doAssertFailure_(\"Expected string but got %s: %s.\", [goog.typeOf(a), a], b, Array.prototype.slice.call(arguments, 2));\n  return a;\n};\ngoog.asserts.assertFunction = function(a, b, c) {\n  goog.asserts.ENABLE_ASSERTS && !goog.isFunction(a) && goog.asserts.doAssertFailure_(\"Expected function but got %s: %s.\", [goog.typeOf(a), a], b, Array.prototype.slice.call(arguments, 2));\n  return a;\n};\ngoog.asserts.assertObject = function(a, b, c) {\n  goog.asserts.ENABLE_ASSERTS && !goog.isObject(a) && goog.asserts.doAssertFailure_(\"Expected object but got %s: %s.\", [goog.typeOf(a), a], b, Array.prototype.slice.call(arguments, 2));\n  return a;\n};\ngoog.asserts.assertArray = function(a, b, c) {\n  goog.asserts.ENABLE_ASSERTS && !goog.isArray(a) && goog.asserts.doAssertFailure_(\"Expected array but got %s: %s.\", [goog.typeOf(a), a], b, Array.prototype.slice.call(arguments, 2));\n  return a;\n};\ngoog.asserts.assertBoolean = function(a, b, c) {\n  goog.asserts.ENABLE_ASSERTS && \"boolean\" !== typeof a && goog.asserts.doAssertFailure_(\"Expected boolean but got %s: %s.\", [goog.typeOf(a), a], b, Array.prototype.slice.call(arguments, 2));\n  return a;\n};\ngoog.asserts.assertElement = function(a, b, c) {\n  !goog.asserts.ENABLE_ASSERTS || goog.isObject(a) && a.nodeType == goog.dom.NodeType.ELEMENT || goog.asserts.doAssertFailure_(\"Expected Element but got %s: %s.\", [goog.typeOf(a), a], b, Array.prototype.slice.call(arguments, 2));\n  return a;\n};\ngoog.asserts.assertInstanceof = function(a, b, c, d) {\n  !goog.asserts.ENABLE_ASSERTS || a instanceof b || goog.asserts.doAssertFailure_(\"Expected instanceof %s but got %s.\", [goog.asserts.getType_(b), goog.asserts.getType_(a)], c, Array.prototype.slice.call(arguments, 3));\n  return a;\n};\ngoog.asserts.assertFinite = function(a, b, c) {\n  !goog.asserts.ENABLE_ASSERTS || \"number\" == typeof a && isFinite(a) || goog.asserts.doAssertFailure_(\"Expected %s to be a finite number but it is not.\", [a], b, Array.prototype.slice.call(arguments, 2));\n  return a;\n};\ngoog.asserts.assertObjectPrototypeIsIntact = function() {\n  for (var a in Object.prototype) {\n    goog.asserts.fail(a + \" should not be enumerable in Object.prototype.\");\n  }\n};\ngoog.asserts.getType_ = function(a) {\n  return a instanceof Function ? a.displayName || a.name || \"unknown type name\" : a instanceof Object ? a.constructor.displayName || a.constructor.name || Object.prototype.toString.call(a) : null === a ? \"null\" : typeof a;\n};\ngoog.array = {};\ngoog.NATIVE_ARRAY_PROTOTYPES = goog.TRUSTED_SITE;\ngoog.array.ASSUME_NATIVE_FUNCTIONS = 2012 < goog.FEATURESET_YEAR;\ngoog.array.peek = function(a) {\n  return a[a.length - 1];\n};\ngoog.array.last = goog.array.peek;\ngoog.array.indexOf = goog.NATIVE_ARRAY_PROTOTYPES && (goog.array.ASSUME_NATIVE_FUNCTIONS || Array.prototype.indexOf) ? function(a, b, c) {\n  goog.asserts.assert(null != a.length);\n  return Array.prototype.indexOf.call(a, b, c);\n} : function(a, b, c) {\n  c = null == c ? 0 : 0 > c ? Math.max(0, a.length + c) : c;\n  if (\"string\" === typeof a) {\n    return \"string\" !== typeof b || 1 != b.length ? -1 : a.indexOf(b, c);\n  }\n  for (; c < a.length; c++) {\n    if (c in a && a[c] === b) {\n      return c;\n    }\n  }\n  return -1;\n};\ngoog.array.lastIndexOf = goog.NATIVE_ARRAY_PROTOTYPES && (goog.array.ASSUME_NATIVE_FUNCTIONS || Array.prototype.lastIndexOf) ? function(a, b, c) {\n  goog.asserts.assert(null != a.length);\n  return Array.prototype.lastIndexOf.call(a, b, null == c ? a.length - 1 : c);\n} : function(a, b, c) {\n  c = null == c ? a.length - 1 : c;\n  0 > c && (c = Math.max(0, a.length + c));\n  if (\"string\" === typeof a) {\n    return \"string\" !== typeof b || 1 != b.length ? -1 : a.lastIndexOf(b, c);\n  }\n  for (; 0 <= c; c--) {\n    if (c in a && a[c] === b) {\n      return c;\n    }\n  }\n  return -1;\n};\ngoog.array.forEach = goog.NATIVE_ARRAY_PROTOTYPES && (goog.array.ASSUME_NATIVE_FUNCTIONS || Array.prototype.forEach) ? function(a, b, c) {\n  goog.asserts.assert(null != a.length);\n  Array.prototype.forEach.call(a, b, c);\n} : function(a, b, c) {\n  for (var d = a.length, e = \"string\" === typeof a ? a.split(\"\") : a, f = 0; f < d; f++) {\n    f in e && b.call(c, e[f], f, a);\n  }\n};\ngoog.array.forEachRight = function(a, b, c) {\n  var d = a.length, e = \"string\" === typeof a ? a.split(\"\") : a;\n  for (--d; 0 <= d; --d) {\n    d in e && b.call(c, e[d], d, a);\n  }\n};\ngoog.array.filter = goog.NATIVE_ARRAY_PROTOTYPES && (goog.array.ASSUME_NATIVE_FUNCTIONS || Array.prototype.filter) ? function(a, b, c) {\n  goog.asserts.assert(null != a.length);\n  return Array.prototype.filter.call(a, b, c);\n} : function(a, b, c) {\n  for (var d = a.length, e = [], f = 0, g = \"string\" === typeof a ? a.split(\"\") : a, h = 0; h < d; h++) {\n    if (h in g) {\n      var k = g[h];\n      b.call(c, k, h, a) && (e[f++] = k);\n    }\n  }\n  return e;\n};\ngoog.array.map = goog.NATIVE_ARRAY_PROTOTYPES && (goog.array.ASSUME_NATIVE_FUNCTIONS || Array.prototype.map) ? function(a, b, c) {\n  goog.asserts.assert(null != a.length);\n  return Array.prototype.map.call(a, b, c);\n} : function(a, b, c) {\n  for (var d = a.length, e = Array(d), f = \"string\" === typeof a ? a.split(\"\") : a, g = 0; g < d; g++) {\n    g in f && (e[g] = b.call(c, f[g], g, a));\n  }\n  return e;\n};\ngoog.array.reduce = goog.NATIVE_ARRAY_PROTOTYPES && (goog.array.ASSUME_NATIVE_FUNCTIONS || Array.prototype.reduce) ? function(a, b, c, d) {\n  goog.asserts.assert(null != a.length);\n  d && (b = goog.bind(b, d));\n  return Array.prototype.reduce.call(a, b, c);\n} : function(a, b, c, d) {\n  var e = c;\n  goog.array.forEach(a, function(c, g) {\n    e = b.call(d, e, c, g, a);\n  });\n  return e;\n};\ngoog.array.reduceRight = goog.NATIVE_ARRAY_PROTOTYPES && (goog.array.ASSUME_NATIVE_FUNCTIONS || Array.prototype.reduceRight) ? function(a, b, c, d) {\n  goog.asserts.assert(null != a.length);\n  goog.asserts.assert(null != b);\n  d && (b = goog.bind(b, d));\n  return Array.prototype.reduceRight.call(a, b, c);\n} : function(a, b, c, d) {\n  var e = c;\n  goog.array.forEachRight(a, function(c, g) {\n    e = b.call(d, e, c, g, a);\n  });\n  return e;\n};\ngoog.array.some = goog.NATIVE_ARRAY_PROTOTYPES && (goog.array.ASSUME_NATIVE_FUNCTIONS || Array.prototype.some) ? function(a, b, c) {\n  goog.asserts.assert(null != a.length);\n  return Array.prototype.some.call(a, b, c);\n} : function(a, b, c) {\n  for (var d = a.length, e = \"string\" === typeof a ? a.split(\"\") : a, f = 0; f < d; f++) {\n    if (f in e && b.call(c, e[f], f, a)) {\n      return !0;\n    }\n  }\n  return !1;\n};\ngoog.array.every = goog.NATIVE_ARRAY_PROTOTYPES && (goog.array.ASSUME_NATIVE_FUNCTIONS || Array.prototype.every) ? function(a, b, c) {\n  goog.asserts.assert(null != a.length);\n  return Array.prototype.every.call(a, b, c);\n} : function(a, b, c) {\n  for (var d = a.length, e = \"string\" === typeof a ? a.split(\"\") : a, f = 0; f < d; f++) {\n    if (f in e && !b.call(c, e[f], f, a)) {\n      return !1;\n    }\n  }\n  return !0;\n};\ngoog.array.count = function(a, b, c) {\n  var d = 0;\n  goog.array.forEach(a, function(a, f, g) {\n    b.call(c, a, f, g) && ++d;\n  }, c);\n  return d;\n};\ngoog.array.find = function(a, b, c) {\n  b = goog.array.findIndex(a, b, c);\n  return 0 > b ? null : \"string\" === typeof a ? a.charAt(b) : a[b];\n};\ngoog.array.findIndex = function(a, b, c) {\n  for (var d = a.length, e = \"string\" === typeof a ? a.split(\"\") : a, f = 0; f < d; f++) {\n    if (f in e && b.call(c, e[f], f, a)) {\n      return f;\n    }\n  }\n  return -1;\n};\ngoog.array.findRight = function(a, b, c) {\n  b = goog.array.findIndexRight(a, b, c);\n  return 0 > b ? null : \"string\" === typeof a ? a.charAt(b) : a[b];\n};\ngoog.array.findIndexRight = function(a, b, c) {\n  var d = a.length, e = \"string\" === typeof a ? a.split(\"\") : a;\n  for (--d; 0 <= d; d--) {\n    if (d in e && b.call(c, e[d], d, a)) {\n      return d;\n    }\n  }\n  return -1;\n};\ngoog.array.contains = function(a, b) {\n  return 0 <= goog.array.indexOf(a, b);\n};\ngoog.array.isEmpty = function(a) {\n  return 0 == a.length;\n};\ngoog.array.clear = function(a) {\n  if (!goog.isArray(a)) {\n    for (var b = a.length - 1; 0 <= b; b--) {\n      delete a[b];\n    }\n  }\n  a.length = 0;\n};\ngoog.array.insert = function(a, b) {\n  goog.array.contains(a, b) || a.push(b);\n};\ngoog.array.insertAt = function(a, b, c) {\n  goog.array.splice(a, c, 0, b);\n};\ngoog.array.insertArrayAt = function(a, b, c) {\n  goog.partial(goog.array.splice, a, c, 0).apply(null, b);\n};\ngoog.array.insertBefore = function(a, b, c) {\n  var d;\n  2 == arguments.length || 0 > (d = goog.array.indexOf(a, c)) ? a.push(b) : goog.array.insertAt(a, b, d);\n};\ngoog.array.remove = function(a, b) {\n  var c = goog.array.indexOf(a, b), d;\n  (d = 0 <= c) && goog.array.removeAt(a, c);\n  return d;\n};\ngoog.array.removeLast = function(a, b) {\n  var c = goog.array.lastIndexOf(a, b);\n  return 0 <= c ? (goog.array.removeAt(a, c), !0) : !1;\n};\ngoog.array.removeAt = function(a, b) {\n  goog.asserts.assert(null != a.length);\n  return 1 == Array.prototype.splice.call(a, b, 1).length;\n};\ngoog.array.removeIf = function(a, b, c) {\n  b = goog.array.findIndex(a, b, c);\n  return 0 <= b ? (goog.array.removeAt(a, b), !0) : !1;\n};\ngoog.array.removeAllIf = function(a, b, c) {\n  var d = 0;\n  goog.array.forEachRight(a, function(e, f) {\n    b.call(c, e, f, a) && goog.array.removeAt(a, f) && d++;\n  });\n  return d;\n};\ngoog.array.concat = function(a) {\n  return Array.prototype.concat.apply([], arguments);\n};\ngoog.array.join = function(a) {\n  return Array.prototype.concat.apply([], arguments);\n};\ngoog.array.toArray = function(a) {\n  var b = a.length;\n  if (0 < b) {\n    for (var c = Array(b), d = 0; d < b; d++) {\n      c[d] = a[d];\n    }\n    return c;\n  }\n  return [];\n};\ngoog.array.clone = goog.array.toArray;\ngoog.array.extend = function(a, b) {\n  for (var c = 1; c < arguments.length; c++) {\n    var d = arguments[c];\n    if (goog.isArrayLike(d)) {\n      var e = a.length || 0, f = d.length || 0;\n      a.length = e + f;\n      for (var g = 0; g < f; g++) {\n        a[e + g] = d[g];\n      }\n    } else {\n      a.push(d);\n    }\n  }\n};\ngoog.array.splice = function(a, b, c, d) {\n  goog.asserts.assert(null != a.length);\n  return Array.prototype.splice.apply(a, goog.array.slice(arguments, 1));\n};\ngoog.array.slice = function(a, b, c) {\n  goog.asserts.assert(null != a.length);\n  return 2 >= arguments.length ? Array.prototype.slice.call(a, b) : Array.prototype.slice.call(a, b, c);\n};\ngoog.array.removeDuplicates = function(a, b, c) {\n  b = b || a;\n  var d = function(a) {\n    return goog.isObject(a) ? \"o\" + goog.getUid(a) : (typeof a).charAt(0) + a;\n  };\n  c = c || d;\n  d = {};\n  for (var e = 0, f = 0; f < a.length;) {\n    var g = a[f++], h = c(g);\n    Object.prototype.hasOwnProperty.call(d, h) || (d[h] = !0, b[e++] = g);\n  }\n  b.length = e;\n};\ngoog.array.binarySearch = function(a, b, c) {\n  return goog.array.binarySearch_(a, c || goog.array.defaultCompare, !1, b);\n};\ngoog.array.binarySelect = function(a, b, c) {\n  return goog.array.binarySearch_(a, b, !0, void 0, c);\n};\ngoog.array.binarySearch_ = function(a, b, c, d, e) {\n  for (var f = 0, g = a.length, h; f < g;) {\n    var k = f + (g - f >>> 1);\n    var l = c ? b.call(e, a[k], k, a) : b(d, a[k]);\n    0 < l ? f = k + 1 : (g = k, h = !l);\n  }\n  return h ? f : -f - 1;\n};\ngoog.array.sort = function(a, b) {\n  a.sort(b || goog.array.defaultCompare);\n};\ngoog.array.stableSort = function(a, b) {\n  for (var c = Array(a.length), d = 0; d < a.length; d++) {\n    c[d] = {index:d, value:a[d]};\n  }\n  var e = b || goog.array.defaultCompare;\n  goog.array.sort(c, function(a, b) {\n    return e(a.value, b.value) || a.index - b.index;\n  });\n  for (d = 0; d < a.length; d++) {\n    a[d] = c[d].value;\n  }\n};\ngoog.array.sortByKey = function(a, b, c) {\n  var d = c || goog.array.defaultCompare;\n  goog.array.sort(a, function(a, c) {\n    return d(b(a), b(c));\n  });\n};\ngoog.array.sortObjectsByKey = function(a, b, c) {\n  goog.array.sortByKey(a, function(a) {\n    return a[b];\n  }, c);\n};\ngoog.array.isSorted = function(a, b, c) {\n  b = b || goog.array.defaultCompare;\n  for (var d = 1; d < a.length; d++) {\n    var e = b(a[d - 1], a[d]);\n    if (0 < e || 0 == e && c) {\n      return !1;\n    }\n  }\n  return !0;\n};\ngoog.array.equals = function(a, b, c) {\n  if (!goog.isArrayLike(a) || !goog.isArrayLike(b) || a.length != b.length) {\n    return !1;\n  }\n  var d = a.length;\n  c = c || goog.array.defaultCompareEquality;\n  for (var e = 0; e < d; e++) {\n    if (!c(a[e], b[e])) {\n      return !1;\n    }\n  }\n  return !0;\n};\ngoog.array.compare3 = function(a, b, c) {\n  c = c || goog.array.defaultCompare;\n  for (var d = Math.min(a.length, b.length), e = 0; e < d; e++) {\n    var f = c(a[e], b[e]);\n    if (0 != f) {\n      return f;\n    }\n  }\n  return goog.array.defaultCompare(a.length, b.length);\n};\ngoog.array.defaultCompare = function(a, b) {\n  return a > b ? 1 : a < b ? -1 : 0;\n};\ngoog.array.inverseDefaultCompare = function(a, b) {\n  return -goog.array.defaultCompare(a, b);\n};\ngoog.array.defaultCompareEquality = function(a, b) {\n  return a === b;\n};\ngoog.array.binaryInsert = function(a, b, c) {\n  c = goog.array.binarySearch(a, b, c);\n  return 0 > c ? (goog.array.insertAt(a, b, -(c + 1)), !0) : !1;\n};\ngoog.array.binaryRemove = function(a, b, c) {\n  b = goog.array.binarySearch(a, b, c);\n  return 0 <= b ? goog.array.removeAt(a, b) : !1;\n};\ngoog.array.bucket = function(a, b, c) {\n  for (var d = {}, e = 0; e < a.length; e++) {\n    var f = a[e], g = b.call(c, f, e, a);\n    void 0 !== g && (d[g] || (d[g] = [])).push(f);\n  }\n  return d;\n};\ngoog.array.toObject = function(a, b, c) {\n  var d = {};\n  goog.array.forEach(a, function(e, f) {\n    d[b.call(c, e, f, a)] = e;\n  });\n  return d;\n};\ngoog.array.range = function(a, b, c) {\n  var d = [], e = 0, f = a;\n  c = c || 1;\n  void 0 !== b && (e = a, f = b);\n  if (0 > c * (f - e)) {\n    return [];\n  }\n  if (0 < c) {\n    for (a = e; a < f; a += c) {\n      d.push(a);\n    }\n  } else {\n    for (a = e; a > f; a += c) {\n      d.push(a);\n    }\n  }\n  return d;\n};\ngoog.array.repeat = function(a, b) {\n  for (var c = [], d = 0; d < b; d++) {\n    c[d] = a;\n  }\n  return c;\n};\ngoog.array.flatten = function(a) {\n  for (var b = [], c = 0; c < arguments.length; c++) {\n    var d = arguments[c];\n    if (goog.isArray(d)) {\n      for (var e = 0; e < d.length; e += 8192) {\n        var f = goog.array.slice(d, e, e + 8192);\n        f = goog.array.flatten.apply(null, f);\n        for (var g = 0; g < f.length; g++) {\n          b.push(f[g]);\n        }\n      }\n    } else {\n      b.push(d);\n    }\n  }\n  return b;\n};\ngoog.array.rotate = function(a, b) {\n  goog.asserts.assert(null != a.length);\n  a.length && (b %= a.length, 0 < b ? Array.prototype.unshift.apply(a, a.splice(-b, b)) : 0 > b && Array.prototype.push.apply(a, a.splice(0, -b)));\n  return a;\n};\ngoog.array.moveItem = function(a, b, c) {\n  goog.asserts.assert(0 <= b && b < a.length);\n  goog.asserts.assert(0 <= c && c < a.length);\n  b = Array.prototype.splice.call(a, b, 1);\n  Array.prototype.splice.call(a, c, 0, b[0]);\n};\ngoog.array.zip = function(a) {\n  if (!arguments.length) {\n    return [];\n  }\n  for (var b = [], c = arguments[0].length, d = 1; d < arguments.length; d++) {\n    arguments[d].length < c && (c = arguments[d].length);\n  }\n  for (d = 0; d < c; d++) {\n    for (var e = [], f = 0; f < arguments.length; f++) {\n      e.push(arguments[f][d]);\n    }\n    b.push(e);\n  }\n  return b;\n};\ngoog.array.shuffle = function(a, b) {\n  for (var c = b || Math.random, d = a.length - 1; 0 < d; d--) {\n    var e = Math.floor(c() * (d + 1)), f = a[d];\n    a[d] = a[e];\n    a[e] = f;\n  }\n};\ngoog.array.copyByIndex = function(a, b) {\n  var c = [];\n  goog.array.forEach(b, function(b) {\n    c.push(a[b]);\n  });\n  return c;\n};\ngoog.array.concatMap = function(a, b, c) {\n  return goog.array.concat.apply([], goog.array.map(a, b, c));\n};\ngoog.object = {};\ngoog.object.is = function(a, b) {\n  return a === b ? 0 !== a || 1 / a === 1 / b : a !== a && b !== b;\n};\ngoog.object.forEach = function(a, b, c) {\n  for (var d in a) {\n    b.call(c, a[d], d, a);\n  }\n};\ngoog.object.filter = function(a, b, c) {\n  var d = {}, e;\n  for (e in a) {\n    b.call(c, a[e], e, a) && (d[e] = a[e]);\n  }\n  return d;\n};\ngoog.object.map = function(a, b, c) {\n  var d = {}, e;\n  for (e in a) {\n    d[e] = b.call(c, a[e], e, a);\n  }\n  return d;\n};\ngoog.object.some = function(a, b, c) {\n  for (var d in a) {\n    if (b.call(c, a[d], d, a)) {\n      return !0;\n    }\n  }\n  return !1;\n};\ngoog.object.every = function(a, b, c) {\n  for (var d in a) {\n    if (!b.call(c, a[d], d, a)) {\n      return !1;\n    }\n  }\n  return !0;\n};\ngoog.object.getCount = function(a) {\n  var b = 0, c;\n  for (c in a) {\n    b++;\n  }\n  return b;\n};\ngoog.object.getAnyKey = function(a) {\n  for (var b in a) {\n    return b;\n  }\n};\ngoog.object.getAnyValue = function(a) {\n  for (var b in a) {\n    return a[b];\n  }\n};\ngoog.object.contains = function(a, b) {\n  return goog.object.containsValue(a, b);\n};\ngoog.object.getValues = function(a) {\n  var b = [], c = 0, d;\n  for (d in a) {\n    b[c++] = a[d];\n  }\n  return b;\n};\ngoog.object.getKeys = function(a) {\n  var b = [], c = 0, d;\n  for (d in a) {\n    b[c++] = d;\n  }\n  return b;\n};\ngoog.object.getValueByKeys = function(a, b) {\n  var c = goog.isArrayLike(b), d = c ? b : arguments;\n  for (c = c ? 0 : 1; c < d.length; c++) {\n    if (null == a) {\n      return;\n    }\n    a = a[d[c]];\n  }\n  return a;\n};\ngoog.object.containsKey = function(a, b) {\n  return null !== a && b in a;\n};\ngoog.object.containsValue = function(a, b) {\n  for (var c in a) {\n    if (a[c] == b) {\n      return !0;\n    }\n  }\n  return !1;\n};\ngoog.object.findKey = function(a, b, c) {\n  for (var d in a) {\n    if (b.call(c, a[d], d, a)) {\n      return d;\n    }\n  }\n};\ngoog.object.findValue = function(a, b, c) {\n  return (b = goog.object.findKey(a, b, c)) && a[b];\n};\ngoog.object.isEmpty = function(a) {\n  for (var b in a) {\n    return !1;\n  }\n  return !0;\n};\ngoog.object.clear = function(a) {\n  for (var b in a) {\n    delete a[b];\n  }\n};\ngoog.object.remove = function(a, b) {\n  var c;\n  (c = b in a) && delete a[b];\n  return c;\n};\ngoog.object.add = function(a, b, c) {\n  if (null !== a && b in a) {\n    throw Error('The object already contains the key \"' + b + '\"');\n  }\n  goog.object.set(a, b, c);\n};\ngoog.object.get = function(a, b, c) {\n  return null !== a && b in a ? a[b] : c;\n};\ngoog.object.set = function(a, b, c) {\n  a[b] = c;\n};\ngoog.object.setIfUndefined = function(a, b, c) {\n  return b in a ? a[b] : a[b] = c;\n};\ngoog.object.setWithReturnValueIfNotSet = function(a, b, c) {\n  if (b in a) {\n    return a[b];\n  }\n  c = c();\n  return a[b] = c;\n};\ngoog.object.equals = function(a, b) {\n  for (var c in a) {\n    if (!(c in b) || a[c] !== b[c]) {\n      return !1;\n    }\n  }\n  for (var d in b) {\n    if (!(d in a)) {\n      return !1;\n    }\n  }\n  return !0;\n};\ngoog.object.clone = function(a) {\n  var b = {}, c;\n  for (c in a) {\n    b[c] = a[c];\n  }\n  return b;\n};\ngoog.object.unsafeClone = function(a) {\n  var b = goog.typeOf(a);\n  if (\"object\" == b || \"array\" == b) {\n    if (goog.isFunction(a.clone)) {\n      return a.clone();\n    }\n    b = \"array\" == b ? [] : {};\n    for (var c in a) {\n      b[c] = goog.object.unsafeClone(a[c]);\n    }\n    return b;\n  }\n  return a;\n};\ngoog.object.transpose = function(a) {\n  var b = {}, c;\n  for (c in a) {\n    b[a[c]] = c;\n  }\n  return b;\n};\ngoog.object.PROTOTYPE_FIELDS_ = \"constructor hasOwnProperty isPrototypeOf propertyIsEnumerable toLocaleString toString valueOf\".split(\" \");\ngoog.object.extend = function(a, b) {\n  for (var c, d, e = 1; e < arguments.length; e++) {\n    d = arguments[e];\n    for (c in d) {\n      a[c] = d[c];\n    }\n    for (var f = 0; f < goog.object.PROTOTYPE_FIELDS_.length; f++) {\n      c = goog.object.PROTOTYPE_FIELDS_[f], Object.prototype.hasOwnProperty.call(d, c) && (a[c] = d[c]);\n    }\n  }\n};\ngoog.object.create = function(a) {\n  var b = arguments.length;\n  if (1 == b && goog.isArray(arguments[0])) {\n    return goog.object.create.apply(null, arguments[0]);\n  }\n  if (b % 2) {\n    throw Error(\"Uneven number of arguments\");\n  }\n  for (var c = {}, d = 0; d < b; d += 2) {\n    c[arguments[d]] = arguments[d + 1];\n  }\n  return c;\n};\ngoog.object.createSet = function(a) {\n  var b = arguments.length;\n  if (1 == b && goog.isArray(arguments[0])) {\n    return goog.object.createSet.apply(null, arguments[0]);\n  }\n  for (var c = {}, d = 0; d < b; d++) {\n    c[arguments[d]] = !0;\n  }\n  return c;\n};\ngoog.object.createImmutableView = function(a) {\n  var b = a;\n  Object.isFrozen && !Object.isFrozen(a) && (b = Object.create(a), Object.freeze(b));\n  return b;\n};\ngoog.object.isImmutableView = function(a) {\n  return !!Object.isFrozen && Object.isFrozen(a);\n};\ngoog.object.getAllPropertyNames = function(a, b, c) {\n  if (!a) {\n    return [];\n  }\n  if (!Object.getOwnPropertyNames || !Object.getPrototypeOf) {\n    return goog.object.getKeys(a);\n  }\n  for (var d = {}; a && (a !== Object.prototype || b) && (a !== Function.prototype || c);) {\n    for (var e = Object.getOwnPropertyNames(a), f = 0; f < e.length; f++) {\n      d[e[f]] = !0;\n    }\n    a = Object.getPrototypeOf(a);\n  }\n  return goog.object.getKeys(d);\n};\ngoog.object.getSuperClass = function(a) {\n  return (a = Object.getPrototypeOf(a.prototype)) && a.constructor;\n};\ngoog.dom.asserts = {};\ngoog.dom.asserts.assertIsLocation = function(a) {\n  if (goog.asserts.ENABLE_ASSERTS) {\n    var b = goog.dom.asserts.getWindow_(a);\n    b && (!a || !(a instanceof b.Location) && a instanceof b.Element) && goog.asserts.fail(\"Argument is not a Location (or a non-Element mock); got: %s\", goog.dom.asserts.debugStringForType_(a));\n  }\n  return a;\n};\ngoog.dom.asserts.assertIsElementType_ = function(a, b) {\n  if (goog.asserts.ENABLE_ASSERTS) {\n    var c = goog.dom.asserts.getWindow_(a);\n    c && \"undefined\" != typeof c[b] && (a && (a instanceof c[b] || !(a instanceof c.Location || a instanceof c.Element)) || goog.asserts.fail(\"Argument is not a %s (or a non-Element, non-Location mock); got: %s\", b, goog.dom.asserts.debugStringForType_(a)));\n  }\n  return a;\n};\ngoog.dom.asserts.assertIsHTMLAnchorElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLAnchorElement\");\n};\ngoog.dom.asserts.assertIsHTMLButtonElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLButtonElement\");\n};\ngoog.dom.asserts.assertIsHTMLLinkElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLLinkElement\");\n};\ngoog.dom.asserts.assertIsHTMLImageElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLImageElement\");\n};\ngoog.dom.asserts.assertIsHTMLAudioElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLAudioElement\");\n};\ngoog.dom.asserts.assertIsHTMLVideoElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLVideoElement\");\n};\ngoog.dom.asserts.assertIsHTMLInputElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLInputElement\");\n};\ngoog.dom.asserts.assertIsHTMLTextAreaElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLTextAreaElement\");\n};\ngoog.dom.asserts.assertIsHTMLCanvasElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLCanvasElement\");\n};\ngoog.dom.asserts.assertIsHTMLEmbedElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLEmbedElement\");\n};\ngoog.dom.asserts.assertIsHTMLFormElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLFormElement\");\n};\ngoog.dom.asserts.assertIsHTMLFrameElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLFrameElement\");\n};\ngoog.dom.asserts.assertIsHTMLIFrameElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLIFrameElement\");\n};\ngoog.dom.asserts.assertIsHTMLObjectElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLObjectElement\");\n};\ngoog.dom.asserts.assertIsHTMLScriptElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLScriptElement\");\n};\ngoog.dom.asserts.debugStringForType_ = function(a) {\n  if (goog.isObject(a)) {\n    try {\n      return a.constructor.displayName || a.constructor.name || Object.prototype.toString.call(a);\n    } catch (b) {\n      return \"<object could not be stringified>\";\n    }\n  } else {\n    return void 0 === a ? \"undefined\" : null === a ? \"null\" : typeof a;\n  }\n};\ngoog.dom.asserts.getWindow_ = function(a) {\n  try {\n    var b = a && a.ownerDocument, c = b && (b.defaultView || b.parentWindow);\n    c = c || goog.global;\n    if (c.Element && c.Location) {\n      return c;\n    }\n  } catch (d) {\n  }\n  return null;\n};\ngoog.functions = {};\ngoog.functions.constant = function(a) {\n  return function() {\n    return a;\n  };\n};\ngoog.functions.FALSE = function() {\n  return !1;\n};\ngoog.functions.TRUE = function() {\n  return !0;\n};\ngoog.functions.NULL = function() {\n  return null;\n};\ngoog.functions.identity = function(a, b) {\n  return a;\n};\ngoog.functions.error = function(a) {\n  return function() {\n    throw Error(a);\n  };\n};\ngoog.functions.fail = function(a) {\n  return function() {\n    throw a;\n  };\n};\ngoog.functions.lock = function(a, b) {\n  b = b || 0;\n  return function() {\n    return a.apply(this, Array.prototype.slice.call(arguments, 0, b));\n  };\n};\ngoog.functions.nth = function(a) {\n  return function() {\n    return arguments[a];\n  };\n};\ngoog.functions.partialRight = function(a, b) {\n  var c = Array.prototype.slice.call(arguments, 1);\n  return function() {\n    var b = Array.prototype.slice.call(arguments);\n    b.push.apply(b, c);\n    return a.apply(this, b);\n  };\n};\ngoog.functions.withReturnValue = function(a, b) {\n  return goog.functions.sequence(a, goog.functions.constant(b));\n};\ngoog.functions.equalTo = function(a, b) {\n  return function(c) {\n    return b ? a == c : a === c;\n  };\n};\ngoog.functions.compose = function(a, b) {\n  var c = arguments, d = c.length;\n  return function() {\n    var a;\n    d && (a = c[d - 1].apply(this, arguments));\n    for (var b = d - 2; 0 <= b; b--) {\n      a = c[b].call(this, a);\n    }\n    return a;\n  };\n};\ngoog.functions.sequence = function(a) {\n  var b = arguments, c = b.length;\n  return function() {\n    for (var a, e = 0; e < c; e++) {\n      a = b[e].apply(this, arguments);\n    }\n    return a;\n  };\n};\ngoog.functions.and = function(a) {\n  var b = arguments, c = b.length;\n  return function() {\n    for (var a = 0; a < c; a++) {\n      if (!b[a].apply(this, arguments)) {\n        return !1;\n      }\n    }\n    return !0;\n  };\n};\ngoog.functions.or = function(a) {\n  var b = arguments, c = b.length;\n  return function() {\n    for (var a = 0; a < c; a++) {\n      if (b[a].apply(this, arguments)) {\n        return !0;\n      }\n    }\n    return !1;\n  };\n};\ngoog.functions.not = function(a) {\n  return function() {\n    return !a.apply(this, arguments);\n  };\n};\ngoog.functions.create = function(a, b) {\n  var c = function() {\n  };\n  c.prototype = a.prototype;\n  c = new c;\n  a.apply(c, Array.prototype.slice.call(arguments, 1));\n  return c;\n};\ngoog.functions.CACHE_RETURN_VALUE = !0;\ngoog.functions.cacheReturnValue = function(a) {\n  var b = !1, c;\n  return function() {\n    if (!goog.functions.CACHE_RETURN_VALUE) {\n      return a();\n    }\n    b || (c = a(), b = !0);\n    return c;\n  };\n};\ngoog.functions.once = function(a) {\n  var b = a;\n  return function() {\n    if (b) {\n      var a = b;\n      b = null;\n      a();\n    }\n  };\n};\ngoog.functions.debounce = function(a, b, c) {\n  var d = 0;\n  return function(e) {\n    goog.global.clearTimeout(d);\n    var f = arguments;\n    d = goog.global.setTimeout(function() {\n      a.apply(c, f);\n    }, b);\n  };\n};\ngoog.functions.throttle = function(a, b, c) {\n  var d = 0, e = !1, f = [], g = function() {\n    d = 0;\n    e && (e = !1, h());\n  }, h = function() {\n    d = goog.global.setTimeout(g, b);\n    a.apply(c, f);\n  };\n  return function(a) {\n    f = arguments;\n    d ? e = !0 : h();\n  };\n};\ngoog.functions.rateLimit = function(a, b, c) {\n  var d = 0, e = function() {\n    d = 0;\n  };\n  return function(f) {\n    d || (d = goog.global.setTimeout(e, b), a.apply(c, arguments));\n  };\n};\ngoog.dom.HtmlElement = function() {\n};\ngoog.dom.TagName = function(a) {\n  this.tagName_ = a;\n};\ngoog.dom.TagName.prototype.toString = function() {\n  return this.tagName_;\n};\ngoog.dom.TagName.A = new goog.dom.TagName(\"A\");\ngoog.dom.TagName.ABBR = new goog.dom.TagName(\"ABBR\");\ngoog.dom.TagName.ACRONYM = new goog.dom.TagName(\"ACRONYM\");\ngoog.dom.TagName.ADDRESS = new goog.dom.TagName(\"ADDRESS\");\ngoog.dom.TagName.APPLET = new goog.dom.TagName(\"APPLET\");\ngoog.dom.TagName.AREA = new goog.dom.TagName(\"AREA\");\ngoog.dom.TagName.ARTICLE = new goog.dom.TagName(\"ARTICLE\");\ngoog.dom.TagName.ASIDE = new goog.dom.TagName(\"ASIDE\");\ngoog.dom.TagName.AUDIO = new goog.dom.TagName(\"AUDIO\");\ngoog.dom.TagName.B = new goog.dom.TagName(\"B\");\ngoog.dom.TagName.BASE = new goog.dom.TagName(\"BASE\");\ngoog.dom.TagName.BASEFONT = new goog.dom.TagName(\"BASEFONT\");\ngoog.dom.TagName.BDI = new goog.dom.TagName(\"BDI\");\ngoog.dom.TagName.BDO = new goog.dom.TagName(\"BDO\");\ngoog.dom.TagName.BIG = new goog.dom.TagName(\"BIG\");\ngoog.dom.TagName.BLOCKQUOTE = new goog.dom.TagName(\"BLOCKQUOTE\");\ngoog.dom.TagName.BODY = new goog.dom.TagName(\"BODY\");\ngoog.dom.TagName.BR = new goog.dom.TagName(\"BR\");\ngoog.dom.TagName.BUTTON = new goog.dom.TagName(\"BUTTON\");\ngoog.dom.TagName.CANVAS = new goog.dom.TagName(\"CANVAS\");\ngoog.dom.TagName.CAPTION = new goog.dom.TagName(\"CAPTION\");\ngoog.dom.TagName.CENTER = new goog.dom.TagName(\"CENTER\");\ngoog.dom.TagName.CITE = new goog.dom.TagName(\"CITE\");\ngoog.dom.TagName.CODE = new goog.dom.TagName(\"CODE\");\ngoog.dom.TagName.COL = new goog.dom.TagName(\"COL\");\ngoog.dom.TagName.COLGROUP = new goog.dom.TagName(\"COLGROUP\");\ngoog.dom.TagName.COMMAND = new goog.dom.TagName(\"COMMAND\");\ngoog.dom.TagName.DATA = new goog.dom.TagName(\"DATA\");\ngoog.dom.TagName.DATALIST = new goog.dom.TagName(\"DATALIST\");\ngoog.dom.TagName.DD = new goog.dom.TagName(\"DD\");\ngoog.dom.TagName.DEL = new goog.dom.TagName(\"DEL\");\ngoog.dom.TagName.DETAILS = new goog.dom.TagName(\"DETAILS\");\ngoog.dom.TagName.DFN = new goog.dom.TagName(\"DFN\");\ngoog.dom.TagName.DIALOG = new goog.dom.TagName(\"DIALOG\");\ngoog.dom.TagName.DIR = new goog.dom.TagName(\"DIR\");\ngoog.dom.TagName.DIV = new goog.dom.TagName(\"DIV\");\ngoog.dom.TagName.DL = new goog.dom.TagName(\"DL\");\ngoog.dom.TagName.DT = new goog.dom.TagName(\"DT\");\ngoog.dom.TagName.EM = new goog.dom.TagName(\"EM\");\ngoog.dom.TagName.EMBED = new goog.dom.TagName(\"EMBED\");\ngoog.dom.TagName.FIELDSET = new goog.dom.TagName(\"FIELDSET\");\ngoog.dom.TagName.FIGCAPTION = new goog.dom.TagName(\"FIGCAPTION\");\ngoog.dom.TagName.FIGURE = new goog.dom.TagName(\"FIGURE\");\ngoog.dom.TagName.FONT = new goog.dom.TagName(\"FONT\");\ngoog.dom.TagName.FOOTER = new goog.dom.TagName(\"FOOTER\");\ngoog.dom.TagName.FORM = new goog.dom.TagName(\"FORM\");\ngoog.dom.TagName.FRAME = new goog.dom.TagName(\"FRAME\");\ngoog.dom.TagName.FRAMESET = new goog.dom.TagName(\"FRAMESET\");\ngoog.dom.TagName.H1 = new goog.dom.TagName(\"H1\");\ngoog.dom.TagName.H2 = new goog.dom.TagName(\"H2\");\ngoog.dom.TagName.H3 = new goog.dom.TagName(\"H3\");\ngoog.dom.TagName.H4 = new goog.dom.TagName(\"H4\");\ngoog.dom.TagName.H5 = new goog.dom.TagName(\"H5\");\ngoog.dom.TagName.H6 = new goog.dom.TagName(\"H6\");\ngoog.dom.TagName.HEAD = new goog.dom.TagName(\"HEAD\");\ngoog.dom.TagName.HEADER = new goog.dom.TagName(\"HEADER\");\ngoog.dom.TagName.HGROUP = new goog.dom.TagName(\"HGROUP\");\ngoog.dom.TagName.HR = new goog.dom.TagName(\"HR\");\ngoog.dom.TagName.HTML = new goog.dom.TagName(\"HTML\");\ngoog.dom.TagName.I = new goog.dom.TagName(\"I\");\ngoog.dom.TagName.IFRAME = new goog.dom.TagName(\"IFRAME\");\ngoog.dom.TagName.IMG = new goog.dom.TagName(\"IMG\");\ngoog.dom.TagName.INPUT = new goog.dom.TagName(\"INPUT\");\ngoog.dom.TagName.INS = new goog.dom.TagName(\"INS\");\ngoog.dom.TagName.ISINDEX = new goog.dom.TagName(\"ISINDEX\");\ngoog.dom.TagName.KBD = new goog.dom.TagName(\"KBD\");\ngoog.dom.TagName.KEYGEN = new goog.dom.TagName(\"KEYGEN\");\ngoog.dom.TagName.LABEL = new goog.dom.TagName(\"LABEL\");\ngoog.dom.TagName.LEGEND = new goog.dom.TagName(\"LEGEND\");\ngoog.dom.TagName.LI = new goog.dom.TagName(\"LI\");\ngoog.dom.TagName.LINK = new goog.dom.TagName(\"LINK\");\ngoog.dom.TagName.MAIN = new goog.dom.TagName(\"MAIN\");\ngoog.dom.TagName.MAP = new goog.dom.TagName(\"MAP\");\ngoog.dom.TagName.MARK = new goog.dom.TagName(\"MARK\");\ngoog.dom.TagName.MATH = new goog.dom.TagName(\"MATH\");\ngoog.dom.TagName.MENU = new goog.dom.TagName(\"MENU\");\ngoog.dom.TagName.MENUITEM = new goog.dom.TagName(\"MENUITEM\");\ngoog.dom.TagName.META = new goog.dom.TagName(\"META\");\ngoog.dom.TagName.METER = new goog.dom.TagName(\"METER\");\ngoog.dom.TagName.NAV = new goog.dom.TagName(\"NAV\");\ngoog.dom.TagName.NOFRAMES = new goog.dom.TagName(\"NOFRAMES\");\ngoog.dom.TagName.NOSCRIPT = new goog.dom.TagName(\"NOSCRIPT\");\ngoog.dom.TagName.OBJECT = new goog.dom.TagName(\"OBJECT\");\ngoog.dom.TagName.OL = new goog.dom.TagName(\"OL\");\ngoog.dom.TagName.OPTGROUP = new goog.dom.TagName(\"OPTGROUP\");\ngoog.dom.TagName.OPTION = new goog.dom.TagName(\"OPTION\");\ngoog.dom.TagName.OUTPUT = new goog.dom.TagName(\"OUTPUT\");\ngoog.dom.TagName.P = new goog.dom.TagName(\"P\");\ngoog.dom.TagName.PARAM = new goog.dom.TagName(\"PARAM\");\ngoog.dom.TagName.PICTURE = new goog.dom.TagName(\"PICTURE\");\ngoog.dom.TagName.PRE = new goog.dom.TagName(\"PRE\");\ngoog.dom.TagName.PROGRESS = new goog.dom.TagName(\"PROGRESS\");\ngoog.dom.TagName.Q = new goog.dom.TagName(\"Q\");\ngoog.dom.TagName.RP = new goog.dom.TagName(\"RP\");\ngoog.dom.TagName.RT = new goog.dom.TagName(\"RT\");\ngoog.dom.TagName.RTC = new goog.dom.TagName(\"RTC\");\ngoog.dom.TagName.RUBY = new goog.dom.TagName(\"RUBY\");\ngoog.dom.TagName.S = new goog.dom.TagName(\"S\");\ngoog.dom.TagName.SAMP = new goog.dom.TagName(\"SAMP\");\ngoog.dom.TagName.SCRIPT = new goog.dom.TagName(\"SCRIPT\");\ngoog.dom.TagName.SECTION = new goog.dom.TagName(\"SECTION\");\ngoog.dom.TagName.SELECT = new goog.dom.TagName(\"SELECT\");\ngoog.dom.TagName.SMALL = new goog.dom.TagName(\"SMALL\");\ngoog.dom.TagName.SOURCE = new goog.dom.TagName(\"SOURCE\");\ngoog.dom.TagName.SPAN = new goog.dom.TagName(\"SPAN\");\ngoog.dom.TagName.STRIKE = new goog.dom.TagName(\"STRIKE\");\ngoog.dom.TagName.STRONG = new goog.dom.TagName(\"STRONG\");\ngoog.dom.TagName.STYLE = new goog.dom.TagName(\"STYLE\");\ngoog.dom.TagName.SUB = new goog.dom.TagName(\"SUB\");\ngoog.dom.TagName.SUMMARY = new goog.dom.TagName(\"SUMMARY\");\ngoog.dom.TagName.SUP = new goog.dom.TagName(\"SUP\");\ngoog.dom.TagName.SVG = new goog.dom.TagName(\"SVG\");\ngoog.dom.TagName.TABLE = new goog.dom.TagName(\"TABLE\");\ngoog.dom.TagName.TBODY = new goog.dom.TagName(\"TBODY\");\ngoog.dom.TagName.TD = new goog.dom.TagName(\"TD\");\ngoog.dom.TagName.TEMPLATE = new goog.dom.TagName(\"TEMPLATE\");\ngoog.dom.TagName.TEXTAREA = new goog.dom.TagName(\"TEXTAREA\");\ngoog.dom.TagName.TFOOT = new goog.dom.TagName(\"TFOOT\");\ngoog.dom.TagName.TH = new goog.dom.TagName(\"TH\");\ngoog.dom.TagName.THEAD = new goog.dom.TagName(\"THEAD\");\ngoog.dom.TagName.TIME = new goog.dom.TagName(\"TIME\");\ngoog.dom.TagName.TITLE = new goog.dom.TagName(\"TITLE\");\ngoog.dom.TagName.TR = new goog.dom.TagName(\"TR\");\ngoog.dom.TagName.TRACK = new goog.dom.TagName(\"TRACK\");\ngoog.dom.TagName.TT = new goog.dom.TagName(\"TT\");\ngoog.dom.TagName.U = new goog.dom.TagName(\"U\");\ngoog.dom.TagName.UL = new goog.dom.TagName(\"UL\");\ngoog.dom.TagName.VAR = new goog.dom.TagName(\"VAR\");\ngoog.dom.TagName.VIDEO = new goog.dom.TagName(\"VIDEO\");\ngoog.dom.TagName.WBR = new goog.dom.TagName(\"WBR\");\ngoog.dom.tags = {};\ngoog.dom.tags.VOID_TAGS_ = {area:!0, base:!0, br:!0, col:!0, command:!0, embed:!0, hr:!0, img:!0, input:!0, keygen:!0, link:!0, meta:!0, param:!0, source:!0, track:!0, wbr:!0};\ngoog.dom.tags.isVoidTag = function(a) {\n  return !0 === goog.dom.tags.VOID_TAGS_[a];\n};\ngoog.html = {};\ngoog.html.trustedtypes = {};\ngoog.html.trustedtypes.PRIVATE_DO_NOT_ACCESS_OR_ELSE_POLICY = goog.TRUSTED_TYPES_POLICY_NAME ? goog.createTrustedTypesPolicy(goog.TRUSTED_TYPES_POLICY_NAME + \"#html\") : null;\ngoog.string.TypedString = function() {\n};\ngoog.string.Const = function(a, b) {\n  this.stringConstValueWithSecurityContract__googStringSecurityPrivate_ = a === goog.string.Const.GOOG_STRING_CONSTRUCTOR_TOKEN_PRIVATE_ && b || \"\";\n  this.STRING_CONST_TYPE_MARKER__GOOG_STRING_SECURITY_PRIVATE_ = goog.string.Const.TYPE_MARKER_;\n};\ngoog.string.Const.prototype.implementsGoogStringTypedString = !0;\ngoog.string.Const.prototype.getTypedStringValue = function() {\n  return this.stringConstValueWithSecurityContract__googStringSecurityPrivate_;\n};\ngoog.DEBUG && (goog.string.Const.prototype.toString = function() {\n  return \"Const{\" + this.stringConstValueWithSecurityContract__googStringSecurityPrivate_ + \"}\";\n});\ngoog.string.Const.unwrap = function(a) {\n  if (a instanceof goog.string.Const && a.constructor === goog.string.Const && a.STRING_CONST_TYPE_MARKER__GOOG_STRING_SECURITY_PRIVATE_ === goog.string.Const.TYPE_MARKER_) {\n    return a.stringConstValueWithSecurityContract__googStringSecurityPrivate_;\n  }\n  goog.asserts.fail(\"expected object of type Const, got '\" + a + \"'\");\n  return \"type_error:Const\";\n};\ngoog.string.Const.from = function(a) {\n  return new goog.string.Const(goog.string.Const.GOOG_STRING_CONSTRUCTOR_TOKEN_PRIVATE_, a);\n};\ngoog.string.Const.TYPE_MARKER_ = {};\ngoog.string.Const.GOOG_STRING_CONSTRUCTOR_TOKEN_PRIVATE_ = {};\ngoog.string.Const.EMPTY = goog.string.Const.from(\"\");\ngoog.html.SafeScript = function() {\n  this.privateDoNotAccessOrElseSafeScriptWrappedValue_ = \"\";\n  this.SAFE_SCRIPT_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ = goog.html.SafeScript.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_;\n};\ngoog.html.SafeScript.prototype.implementsGoogStringTypedString = !0;\ngoog.html.SafeScript.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ = {};\ngoog.html.SafeScript.fromConstant = function(a) {\n  a = goog.string.Const.unwrap(a);\n  return 0 === a.length ? goog.html.SafeScript.EMPTY : goog.html.SafeScript.createSafeScriptSecurityPrivateDoNotAccessOrElse(a);\n};\ngoog.html.SafeScript.fromConstantAndArgs = function(a, b) {\n  for (var c = [], d = 1; d < arguments.length; d++) {\n    c.push(goog.html.SafeScript.stringify_(arguments[d]));\n  }\n  return goog.html.SafeScript.createSafeScriptSecurityPrivateDoNotAccessOrElse(\"(\" + goog.string.Const.unwrap(a) + \")(\" + c.join(\", \") + \");\");\n};\ngoog.html.SafeScript.fromJson = function(a) {\n  return goog.html.SafeScript.createSafeScriptSecurityPrivateDoNotAccessOrElse(goog.html.SafeScript.stringify_(a));\n};\ngoog.html.SafeScript.prototype.getTypedStringValue = function() {\n  return this.privateDoNotAccessOrElseSafeScriptWrappedValue_.toString();\n};\ngoog.DEBUG && (goog.html.SafeScript.prototype.toString = function() {\n  return \"SafeScript{\" + this.privateDoNotAccessOrElseSafeScriptWrappedValue_ + \"}\";\n});\ngoog.html.SafeScript.unwrap = function(a) {\n  return goog.html.SafeScript.unwrapTrustedScript(a).toString();\n};\ngoog.html.SafeScript.unwrapTrustedScript = function(a) {\n  if (a instanceof goog.html.SafeScript && a.constructor === goog.html.SafeScript && a.SAFE_SCRIPT_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ === goog.html.SafeScript.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_) {\n    return a.privateDoNotAccessOrElseSafeScriptWrappedValue_;\n  }\n  goog.asserts.fail(\"expected object of type SafeScript, got '\" + a + \"' of type \" + goog.typeOf(a));\n  return \"type_error:SafeScript\";\n};\ngoog.html.SafeScript.stringify_ = function(a) {\n  return JSON.stringify(a).replace(/</g, \"\\\\x3c\");\n};\ngoog.html.SafeScript.createSafeScriptSecurityPrivateDoNotAccessOrElse = function(a) {\n  return (new goog.html.SafeScript).initSecurityPrivateDoNotAccessOrElse_(a);\n};\ngoog.html.SafeScript.prototype.initSecurityPrivateDoNotAccessOrElse_ = function(a) {\n  this.privateDoNotAccessOrElseSafeScriptWrappedValue_ = goog.html.trustedtypes.PRIVATE_DO_NOT_ACCESS_OR_ELSE_POLICY ? goog.html.trustedtypes.PRIVATE_DO_NOT_ACCESS_OR_ELSE_POLICY.createScript(a) : a;\n  return this;\n};\ngoog.html.SafeScript.EMPTY = goog.html.SafeScript.createSafeScriptSecurityPrivateDoNotAccessOrElse(\"\");\ngoog.fs = {};\ngoog.fs.url = {};\ngoog.fs.url.createObjectUrl = function(a) {\n  return goog.fs.url.getUrlObject_().createObjectURL(a);\n};\ngoog.fs.url.revokeObjectUrl = function(a) {\n  goog.fs.url.getUrlObject_().revokeObjectURL(a);\n};\ngoog.fs.url.getUrlObject_ = function() {\n  var a = goog.fs.url.findUrlObject_();\n  if (null != a) {\n    return a;\n  }\n  throw Error(\"This browser doesn't seem to support blob URLs\");\n};\ngoog.fs.url.findUrlObject_ = function() {\n  return void 0 !== goog.global.URL && void 0 !== goog.global.URL.createObjectURL ? goog.global.URL : void 0 !== goog.global.webkitURL && void 0 !== goog.global.webkitURL.createObjectURL ? goog.global.webkitURL : void 0 !== goog.global.createObjectURL ? goog.global : null;\n};\ngoog.fs.url.browserSupportsObjectUrls = function() {\n  return null != goog.fs.url.findUrlObject_();\n};\ngoog.i18n = {};\ngoog.i18n.bidi = {};\ngoog.i18n.bidi.FORCE_RTL = !1;\ngoog.i18n.bidi.IS_RTL = goog.i18n.bidi.FORCE_RTL || (\"ar\" == goog.LOCALE.substring(0, 2).toLowerCase() || \"fa\" == goog.LOCALE.substring(0, 2).toLowerCase() || \"he\" == goog.LOCALE.substring(0, 2).toLowerCase() || \"iw\" == goog.LOCALE.substring(0, 2).toLowerCase() || \"ps\" == goog.LOCALE.substring(0, 2).toLowerCase() || \"sd\" == goog.LOCALE.substring(0, 2).toLowerCase() || \"ug\" == goog.LOCALE.substring(0, 2).toLowerCase() || \"ur\" == goog.LOCALE.substring(0, 2).toLowerCase() || \"yi\" == goog.LOCALE.substring(0,\n2).toLowerCase()) && (2 == goog.LOCALE.length || \"-\" == goog.LOCALE.substring(2, 3) || \"_\" == goog.LOCALE.substring(2, 3)) || 3 <= goog.LOCALE.length && \"ckb\" == goog.LOCALE.substring(0, 3).toLowerCase() && (3 == goog.LOCALE.length || \"-\" == goog.LOCALE.substring(3, 4) || \"_\" == goog.LOCALE.substring(3, 4)) || 7 <= goog.LOCALE.length && (\"-\" == goog.LOCALE.substring(2, 3) || \"_\" == goog.LOCALE.substring(2, 3)) && (\"adlm\" == goog.LOCALE.substring(3, 7).toLowerCase() || \"arab\" == goog.LOCALE.substring(3,\n7).toLowerCase() || \"hebr\" == goog.LOCALE.substring(3, 7).toLowerCase() || \"nkoo\" == goog.LOCALE.substring(3, 7).toLowerCase() || \"rohg\" == goog.LOCALE.substring(3, 7).toLowerCase() || \"thaa\" == goog.LOCALE.substring(3, 7).toLowerCase()) || 8 <= goog.LOCALE.length && (\"-\" == goog.LOCALE.substring(3, 4) || \"_\" == goog.LOCALE.substring(3, 4)) && (\"adlm\" == goog.LOCALE.substring(4, 8).toLowerCase() || \"arab\" == goog.LOCALE.substring(4, 8).toLowerCase() || \"hebr\" == goog.LOCALE.substring(4, 8).toLowerCase() ||\n\"nkoo\" == goog.LOCALE.substring(4, 8).toLowerCase() || \"rohg\" == goog.LOCALE.substring(4, 8).toLowerCase() || \"thaa\" == goog.LOCALE.substring(4, 8).toLowerCase());\ngoog.i18n.bidi.Format = {LRE:\"\\u202a\", RLE:\"\\u202b\", PDF:\"\\u202c\", LRM:\"\\u200e\", RLM:\"\\u200f\"};\ngoog.i18n.bidi.Dir = {LTR:1, RTL:-1, NEUTRAL:0};\ngoog.i18n.bidi.RIGHT = \"right\";\ngoog.i18n.bidi.LEFT = \"left\";\ngoog.i18n.bidi.I18N_RIGHT = goog.i18n.bidi.IS_RTL ? goog.i18n.bidi.LEFT : goog.i18n.bidi.RIGHT;\ngoog.i18n.bidi.I18N_LEFT = goog.i18n.bidi.IS_RTL ? goog.i18n.bidi.RIGHT : goog.i18n.bidi.LEFT;\ngoog.i18n.bidi.toDir = function(a, b) {\n  return \"number\" == typeof a ? 0 < a ? goog.i18n.bidi.Dir.LTR : 0 > a ? goog.i18n.bidi.Dir.RTL : b ? null : goog.i18n.bidi.Dir.NEUTRAL : null == a ? null : a ? goog.i18n.bidi.Dir.RTL : goog.i18n.bidi.Dir.LTR;\n};\ngoog.i18n.bidi.ltrChars_ = \"A-Za-z\\u00c0-\\u00d6\\u00d8-\\u00f6\\u00f8-\\u02b8\\u0300-\\u0590\\u0900-\\u1fff\\u200e\\u2c00-\\ud801\\ud804-\\ud839\\ud83c-\\udbff\\uf900-\\ufb1c\\ufe00-\\ufe6f\\ufefd-\\uffff\";\ngoog.i18n.bidi.rtlChars_ = \"\\u0591-\\u06ef\\u06fa-\\u08ff\\u200f\\ud802-\\ud803\\ud83a-\\ud83b\\ufb1d-\\ufdff\\ufe70-\\ufefc\";\ngoog.i18n.bidi.htmlSkipReg_ = /<[^>]*>|&[^;]+;/g;\ngoog.i18n.bidi.stripHtmlIfNeeded_ = function(a, b) {\n  return b ? a.replace(goog.i18n.bidi.htmlSkipReg_, \"\") : a;\n};\ngoog.i18n.bidi.rtlCharReg_ = new RegExp(\"[\" + goog.i18n.bidi.rtlChars_ + \"]\");\ngoog.i18n.bidi.ltrCharReg_ = new RegExp(\"[\" + goog.i18n.bidi.ltrChars_ + \"]\");\ngoog.i18n.bidi.hasAnyRtl = function(a, b) {\n  return goog.i18n.bidi.rtlCharReg_.test(goog.i18n.bidi.stripHtmlIfNeeded_(a, b));\n};\ngoog.i18n.bidi.hasRtlChar = goog.i18n.bidi.hasAnyRtl;\ngoog.i18n.bidi.hasAnyLtr = function(a, b) {\n  return goog.i18n.bidi.ltrCharReg_.test(goog.i18n.bidi.stripHtmlIfNeeded_(a, b));\n};\ngoog.i18n.bidi.ltrRe_ = new RegExp(\"^[\" + goog.i18n.bidi.ltrChars_ + \"]\");\ngoog.i18n.bidi.rtlRe_ = new RegExp(\"^[\" + goog.i18n.bidi.rtlChars_ + \"]\");\ngoog.i18n.bidi.isRtlChar = function(a) {\n  return goog.i18n.bidi.rtlRe_.test(a);\n};\ngoog.i18n.bidi.isLtrChar = function(a) {\n  return goog.i18n.bidi.ltrRe_.test(a);\n};\ngoog.i18n.bidi.isNeutralChar = function(a) {\n  return !goog.i18n.bidi.isLtrChar(a) && !goog.i18n.bidi.isRtlChar(a);\n};\ngoog.i18n.bidi.ltrDirCheckRe_ = new RegExp(\"^[^\" + goog.i18n.bidi.rtlChars_ + \"]*[\" + goog.i18n.bidi.ltrChars_ + \"]\");\ngoog.i18n.bidi.rtlDirCheckRe_ = new RegExp(\"^[^\" + goog.i18n.bidi.ltrChars_ + \"]*[\" + goog.i18n.bidi.rtlChars_ + \"]\");\ngoog.i18n.bidi.startsWithRtl = function(a, b) {\n  return goog.i18n.bidi.rtlDirCheckRe_.test(goog.i18n.bidi.stripHtmlIfNeeded_(a, b));\n};\ngoog.i18n.bidi.isRtlText = goog.i18n.bidi.startsWithRtl;\ngoog.i18n.bidi.startsWithLtr = function(a, b) {\n  return goog.i18n.bidi.ltrDirCheckRe_.test(goog.i18n.bidi.stripHtmlIfNeeded_(a, b));\n};\ngoog.i18n.bidi.isLtrText = goog.i18n.bidi.startsWithLtr;\ngoog.i18n.bidi.isRequiredLtrRe_ = /^http:\\/\\/.*/;\ngoog.i18n.bidi.isNeutralText = function(a, b) {\n  a = goog.i18n.bidi.stripHtmlIfNeeded_(a, b);\n  return goog.i18n.bidi.isRequiredLtrRe_.test(a) || !goog.i18n.bidi.hasAnyLtr(a) && !goog.i18n.bidi.hasAnyRtl(a);\n};\ngoog.i18n.bidi.ltrExitDirCheckRe_ = new RegExp(\"[\" + goog.i18n.bidi.ltrChars_ + \"][^\" + goog.i18n.bidi.rtlChars_ + \"]*$\");\ngoog.i18n.bidi.rtlExitDirCheckRe_ = new RegExp(\"[\" + goog.i18n.bidi.rtlChars_ + \"][^\" + goog.i18n.bidi.ltrChars_ + \"]*$\");\ngoog.i18n.bidi.endsWithLtr = function(a, b) {\n  return goog.i18n.bidi.ltrExitDirCheckRe_.test(goog.i18n.bidi.stripHtmlIfNeeded_(a, b));\n};\ngoog.i18n.bidi.isLtrExitText = goog.i18n.bidi.endsWithLtr;\ngoog.i18n.bidi.endsWithRtl = function(a, b) {\n  return goog.i18n.bidi.rtlExitDirCheckRe_.test(goog.i18n.bidi.stripHtmlIfNeeded_(a, b));\n};\ngoog.i18n.bidi.isRtlExitText = goog.i18n.bidi.endsWithRtl;\ngoog.i18n.bidi.rtlLocalesRe_ = /^(ar|ckb|dv|he|iw|fa|nqo|ps|sd|ug|ur|yi|.*[-_](Adlm|Arab|Hebr|Nkoo|Rohg|Thaa))(?!.*[-_](Latn|Cyrl)($|-|_))($|-|_)/i;\ngoog.i18n.bidi.isRtlLanguage = function(a) {\n  return goog.i18n.bidi.rtlLocalesRe_.test(a);\n};\ngoog.i18n.bidi.bracketGuardTextRe_ = /(\\(.*?\\)+)|(\\[.*?\\]+)|(\\{.*?\\}+)|(<.*?>+)/g;\ngoog.i18n.bidi.guardBracketInText = function(a, b) {\n  var c = (void 0 === b ? goog.i18n.bidi.hasAnyRtl(a) : b) ? goog.i18n.bidi.Format.RLM : goog.i18n.bidi.Format.LRM;\n  return a.replace(goog.i18n.bidi.bracketGuardTextRe_, c + \"$&\" + c);\n};\ngoog.i18n.bidi.enforceRtlInHtml = function(a) {\n  return \"<\" == a.charAt(0) ? a.replace(/<\\w+/, \"$& dir=rtl\") : \"\\n<span dir=rtl>\" + a + \"</span>\";\n};\ngoog.i18n.bidi.enforceRtlInText = function(a) {\n  return goog.i18n.bidi.Format.RLE + a + goog.i18n.bidi.Format.PDF;\n};\ngoog.i18n.bidi.enforceLtrInHtml = function(a) {\n  return \"<\" == a.charAt(0) ? a.replace(/<\\w+/, \"$& dir=ltr\") : \"\\n<span dir=ltr>\" + a + \"</span>\";\n};\ngoog.i18n.bidi.enforceLtrInText = function(a) {\n  return goog.i18n.bidi.Format.LRE + a + goog.i18n.bidi.Format.PDF;\n};\ngoog.i18n.bidi.dimensionsRe_ = /:\\s*([.\\d][.\\w]*)\\s+([.\\d][.\\w]*)\\s+([.\\d][.\\w]*)\\s+([.\\d][.\\w]*)/g;\ngoog.i18n.bidi.leftRe_ = /left/gi;\ngoog.i18n.bidi.rightRe_ = /right/gi;\ngoog.i18n.bidi.tempRe_ = /%%%%/g;\ngoog.i18n.bidi.mirrorCSS = function(a) {\n  return a.replace(goog.i18n.bidi.dimensionsRe_, \":$1 $4 $3 $2\").replace(goog.i18n.bidi.leftRe_, \"%%%%\").replace(goog.i18n.bidi.rightRe_, goog.i18n.bidi.LEFT).replace(goog.i18n.bidi.tempRe_, goog.i18n.bidi.RIGHT);\n};\ngoog.i18n.bidi.doubleQuoteSubstituteRe_ = /([\\u0591-\\u05f2])\"/g;\ngoog.i18n.bidi.singleQuoteSubstituteRe_ = /([\\u0591-\\u05f2])'/g;\ngoog.i18n.bidi.normalizeHebrewQuote = function(a) {\n  return a.replace(goog.i18n.bidi.doubleQuoteSubstituteRe_, \"$1\\u05f4\").replace(goog.i18n.bidi.singleQuoteSubstituteRe_, \"$1\\u05f3\");\n};\ngoog.i18n.bidi.wordSeparatorRe_ = /\\s+/;\ngoog.i18n.bidi.hasNumeralsRe_ = /[\\d\\u06f0-\\u06f9]/;\ngoog.i18n.bidi.rtlDetectionThreshold_ = 0.40;\ngoog.i18n.bidi.estimateDirection = function(a, b) {\n  for (var c = 0, d = 0, e = !1, f = goog.i18n.bidi.stripHtmlIfNeeded_(a, b).split(goog.i18n.bidi.wordSeparatorRe_), g = 0; g < f.length; g++) {\n    var h = f[g];\n    goog.i18n.bidi.startsWithRtl(h) ? (c++, d++) : goog.i18n.bidi.isRequiredLtrRe_.test(h) ? e = !0 : goog.i18n.bidi.hasAnyLtr(h) ? d++ : goog.i18n.bidi.hasNumeralsRe_.test(h) && (e = !0);\n  }\n  return 0 == d ? e ? goog.i18n.bidi.Dir.LTR : goog.i18n.bidi.Dir.NEUTRAL : c / d > goog.i18n.bidi.rtlDetectionThreshold_ ? goog.i18n.bidi.Dir.RTL : goog.i18n.bidi.Dir.LTR;\n};\ngoog.i18n.bidi.detectRtlDirectionality = function(a, b) {\n  return goog.i18n.bidi.estimateDirection(a, b) == goog.i18n.bidi.Dir.RTL;\n};\ngoog.i18n.bidi.setElementDirAndAlign = function(a, b) {\n  a && (b = goog.i18n.bidi.toDir(b)) && (a.style.textAlign = b == goog.i18n.bidi.Dir.RTL ? goog.i18n.bidi.RIGHT : goog.i18n.bidi.LEFT, a.dir = b == goog.i18n.bidi.Dir.RTL ? \"rtl\" : \"ltr\");\n};\ngoog.i18n.bidi.setElementDirByTextDirectionality = function(a, b) {\n  switch(goog.i18n.bidi.estimateDirection(b)) {\n    case goog.i18n.bidi.Dir.LTR:\n      a.dir = \"ltr\";\n      break;\n    case goog.i18n.bidi.Dir.RTL:\n      a.dir = \"rtl\";\n      break;\n    default:\n      a.removeAttribute(\"dir\");\n  }\n};\ngoog.i18n.bidi.DirectionalString = function() {\n};\ngoog.html.TrustedResourceUrl = function(a, b, c) {\n  this.privateDoNotAccessOrElseTrustedResourceUrlWrappedValue_ = a === goog.html.TrustedResourceUrl.CONSTRUCTOR_TOKEN_PRIVATE_ && b || \"\";\n  this.trustedURL_ = a === goog.html.TrustedResourceUrl.CONSTRUCTOR_TOKEN_PRIVATE_ && c || null;\n  this.TRUSTED_RESOURCE_URL_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ = goog.html.TrustedResourceUrl.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_;\n};\ngoog.html.TrustedResourceUrl.prototype.implementsGoogStringTypedString = !0;\ngoog.html.TrustedResourceUrl.prototype.getTypedStringValue = function() {\n  return this.privateDoNotAccessOrElseTrustedResourceUrlWrappedValue_.toString();\n};\ngoog.html.TrustedResourceUrl.prototype.implementsGoogI18nBidiDirectionalString = !0;\ngoog.html.TrustedResourceUrl.prototype.getDirection = function() {\n  return goog.i18n.bidi.Dir.LTR;\n};\ngoog.html.TrustedResourceUrl.prototype.cloneWithParams = function(a, b) {\n  var c = goog.html.TrustedResourceUrl.unwrap(this);\n  c = goog.html.TrustedResourceUrl.URL_PARAM_PARSER_.exec(c);\n  var d = c[3] || \"\";\n  return goog.html.TrustedResourceUrl.createTrustedResourceUrlSecurityPrivateDoNotAccessOrElse(c[1] + goog.html.TrustedResourceUrl.stringifyParams_(\"?\", c[2] || \"\", a) + goog.html.TrustedResourceUrl.stringifyParams_(\"#\", d, b));\n};\ngoog.DEBUG && (goog.html.TrustedResourceUrl.prototype.toString = function() {\n  return \"TrustedResourceUrl{\" + this.privateDoNotAccessOrElseTrustedResourceUrlWrappedValue_ + \"}\";\n});\ngoog.html.TrustedResourceUrl.unwrap = function(a) {\n  return goog.html.TrustedResourceUrl.unwrapTrustedScriptURL(a).toString();\n};\ngoog.html.TrustedResourceUrl.unwrapTrustedScriptURL = function(a) {\n  if (a instanceof goog.html.TrustedResourceUrl && a.constructor === goog.html.TrustedResourceUrl && a.TRUSTED_RESOURCE_URL_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ === goog.html.TrustedResourceUrl.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_) {\n    return a.privateDoNotAccessOrElseTrustedResourceUrlWrappedValue_;\n  }\n  goog.asserts.fail(\"expected object of type TrustedResourceUrl, got '\" + a + \"' of type \" + goog.typeOf(a));\n  return \"type_error:TrustedResourceUrl\";\n};\ngoog.html.TrustedResourceUrl.unwrapTrustedURL = function(a) {\n  return a.trustedURL_ ? a.trustedURL_ : goog.html.TrustedResourceUrl.unwrap(a);\n};\ngoog.html.TrustedResourceUrl.format = function(a, b) {\n  var c = goog.string.Const.unwrap(a);\n  if (!goog.html.TrustedResourceUrl.BASE_URL_.test(c)) {\n    throw Error(\"Invalid TrustedResourceUrl format: \" + c);\n  }\n  var d = c.replace(goog.html.TrustedResourceUrl.FORMAT_MARKER_, function(a, d) {\n    if (!Object.prototype.hasOwnProperty.call(b, d)) {\n      throw Error('Found marker, \"' + d + '\", in format string, \"' + c + '\", but no valid label mapping found in args: ' + JSON.stringify(b));\n    }\n    var e = b[d];\n    return e instanceof goog.string.Const ? goog.string.Const.unwrap(e) : encodeURIComponent(String(e));\n  });\n  return goog.html.TrustedResourceUrl.createTrustedResourceUrlSecurityPrivateDoNotAccessOrElse(d);\n};\ngoog.html.TrustedResourceUrl.FORMAT_MARKER_ = /%{(\\w+)}/g;\ngoog.html.TrustedResourceUrl.BASE_URL_ = /^((https:)?\\/\\/[0-9a-z.:[\\]-]+\\/|\\/[^/\\\\]|[^:/\\\\%]+\\/|[^:/\\\\%]*[?#]|about:blank#)/i;\ngoog.html.TrustedResourceUrl.URL_PARAM_PARSER_ = /^([^?#]*)(\\?[^#]*)?(#[\\s\\S]*)?/;\ngoog.html.TrustedResourceUrl.formatWithParams = function(a, b, c, d) {\n  return goog.html.TrustedResourceUrl.format(a, b).cloneWithParams(c, d);\n};\ngoog.html.TrustedResourceUrl.fromConstant = function(a) {\n  return goog.html.TrustedResourceUrl.createTrustedResourceUrlSecurityPrivateDoNotAccessOrElse(goog.string.Const.unwrap(a));\n};\ngoog.html.TrustedResourceUrl.fromConstants = function(a) {\n  for (var b = \"\", c = 0; c < a.length; c++) {\n    b += goog.string.Const.unwrap(a[c]);\n  }\n  return goog.html.TrustedResourceUrl.createTrustedResourceUrlSecurityPrivateDoNotAccessOrElse(b);\n};\ngoog.html.TrustedResourceUrl.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ = {};\ngoog.html.TrustedResourceUrl.createTrustedResourceUrlSecurityPrivateDoNotAccessOrElse = function(a) {\n  var b = goog.html.trustedtypes.PRIVATE_DO_NOT_ACCESS_OR_ELSE_POLICY ? goog.html.trustedtypes.PRIVATE_DO_NOT_ACCESS_OR_ELSE_POLICY.createScriptURL(a) : a;\n  a = goog.html.trustedtypes.PRIVATE_DO_NOT_ACCESS_OR_ELSE_POLICY ? goog.html.trustedtypes.PRIVATE_DO_NOT_ACCESS_OR_ELSE_POLICY.createURL(a) : null;\n  return new goog.html.TrustedResourceUrl(goog.html.TrustedResourceUrl.CONSTRUCTOR_TOKEN_PRIVATE_, b, a);\n};\ngoog.html.TrustedResourceUrl.stringifyParams_ = function(a, b, c) {\n  if (null == c) {\n    return b;\n  }\n  if (\"string\" === typeof c) {\n    return c ? a + encodeURIComponent(c) : \"\";\n  }\n  for (var d in c) {\n    var e = c[d];\n    e = goog.isArray(e) ? e : [e];\n    for (var f = 0; f < e.length; f++) {\n      var g = e[f];\n      null != g && (b || (b = a), b += (b.length > a.length ? \"&\" : \"\") + encodeURIComponent(d) + \"=\" + encodeURIComponent(String(g)));\n    }\n  }\n  return b;\n};\ngoog.html.TrustedResourceUrl.CONSTRUCTOR_TOKEN_PRIVATE_ = {};\ngoog.string.internal = {};\ngoog.string.internal.startsWith = function(a, b) {\n  return 0 == a.lastIndexOf(b, 0);\n};\ngoog.string.internal.endsWith = function(a, b) {\n  var c = a.length - b.length;\n  return 0 <= c && a.indexOf(b, c) == c;\n};\ngoog.string.internal.caseInsensitiveStartsWith = function(a, b) {\n  return 0 == goog.string.internal.caseInsensitiveCompare(b, a.substr(0, b.length));\n};\ngoog.string.internal.caseInsensitiveEndsWith = function(a, b) {\n  return 0 == goog.string.internal.caseInsensitiveCompare(b, a.substr(a.length - b.length, b.length));\n};\ngoog.string.internal.caseInsensitiveEquals = function(a, b) {\n  return a.toLowerCase() == b.toLowerCase();\n};\ngoog.string.internal.isEmptyOrWhitespace = function(a) {\n  return /^[\\s\\xa0]*$/.test(a);\n};\ngoog.string.internal.trim = goog.TRUSTED_SITE && String.prototype.trim ? function(a) {\n  return a.trim();\n} : function(a) {\n  return /^[\\s\\xa0]*([\\s\\S]*?)[\\s\\xa0]*$/.exec(a)[1];\n};\ngoog.string.internal.caseInsensitiveCompare = function(a, b) {\n  var c = String(a).toLowerCase(), d = String(b).toLowerCase();\n  return c < d ? -1 : c == d ? 0 : 1;\n};\ngoog.string.internal.newLineToBr = function(a, b) {\n  return a.replace(/(\\r\\n|\\r|\\n)/g, b ? \"<br />\" : \"<br>\");\n};\ngoog.string.internal.htmlEscape = function(a, b) {\n  if (b) {\n    a = a.replace(goog.string.internal.AMP_RE_, \"&amp;\").replace(goog.string.internal.LT_RE_, \"&lt;\").replace(goog.string.internal.GT_RE_, \"&gt;\").replace(goog.string.internal.QUOT_RE_, \"&quot;\").replace(goog.string.internal.SINGLE_QUOTE_RE_, \"&#39;\").replace(goog.string.internal.NULL_RE_, \"&#0;\");\n  } else {\n    if (!goog.string.internal.ALL_RE_.test(a)) {\n      return a;\n    }\n    -1 != a.indexOf(\"&\") && (a = a.replace(goog.string.internal.AMP_RE_, \"&amp;\"));\n    -1 != a.indexOf(\"<\") && (a = a.replace(goog.string.internal.LT_RE_, \"&lt;\"));\n    -1 != a.indexOf(\">\") && (a = a.replace(goog.string.internal.GT_RE_, \"&gt;\"));\n    -1 != a.indexOf('\"') && (a = a.replace(goog.string.internal.QUOT_RE_, \"&quot;\"));\n    -1 != a.indexOf(\"'\") && (a = a.replace(goog.string.internal.SINGLE_QUOTE_RE_, \"&#39;\"));\n    -1 != a.indexOf(\"\\x00\") && (a = a.replace(goog.string.internal.NULL_RE_, \"&#0;\"));\n  }\n  return a;\n};\ngoog.string.internal.AMP_RE_ = /&/g;\ngoog.string.internal.LT_RE_ = /</g;\ngoog.string.internal.GT_RE_ = />/g;\ngoog.string.internal.QUOT_RE_ = /\"/g;\ngoog.string.internal.SINGLE_QUOTE_RE_ = /'/g;\ngoog.string.internal.NULL_RE_ = /\\x00/g;\ngoog.string.internal.ALL_RE_ = /[\\x00&<>\"']/;\ngoog.string.internal.whitespaceEscape = function(a, b) {\n  return goog.string.internal.newLineToBr(a.replace(/  /g, \" &#160;\"), b);\n};\ngoog.string.internal.contains = function(a, b) {\n  return -1 != a.indexOf(b);\n};\ngoog.string.internal.caseInsensitiveContains = function(a, b) {\n  return goog.string.internal.contains(a.toLowerCase(), b.toLowerCase());\n};\ngoog.string.internal.compareVersions = function(a, b) {\n  for (var c = 0, d = goog.string.internal.trim(String(a)).split(\".\"), e = goog.string.internal.trim(String(b)).split(\".\"), f = Math.max(d.length, e.length), g = 0; 0 == c && g < f; g++) {\n    var h = d[g] || \"\", k = e[g] || \"\";\n    do {\n      h = /(\\d*)(\\D*)(.*)/.exec(h) || [\"\", \"\", \"\", \"\"];\n      k = /(\\d*)(\\D*)(.*)/.exec(k) || [\"\", \"\", \"\", \"\"];\n      if (0 == h[0].length && 0 == k[0].length) {\n        break;\n      }\n      c = 0 == h[1].length ? 0 : parseInt(h[1], 10);\n      var l = 0 == k[1].length ? 0 : parseInt(k[1], 10);\n      c = goog.string.internal.compareElements_(c, l) || goog.string.internal.compareElements_(0 == h[2].length, 0 == k[2].length) || goog.string.internal.compareElements_(h[2], k[2]);\n      h = h[3];\n      k = k[3];\n    } while (0 == c);\n  }\n  return c;\n};\ngoog.string.internal.compareElements_ = function(a, b) {\n  return a < b ? -1 : a > b ? 1 : 0;\n};\ngoog.html.SafeUrl = function(a, b) {\n  this.privateDoNotAccessOrElseSafeUrlWrappedValue_ = a === goog.html.SafeUrl.CONSTRUCTOR_TOKEN_PRIVATE_ && b || \"\";\n  this.SAFE_URL_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ = goog.html.SafeUrl.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_;\n};\ngoog.html.SafeUrl.INNOCUOUS_STRING = \"about:invalid#zClosurez\";\ngoog.html.SafeUrl.prototype.implementsGoogStringTypedString = !0;\ngoog.html.SafeUrl.prototype.getTypedStringValue = function() {\n  return this.privateDoNotAccessOrElseSafeUrlWrappedValue_.toString();\n};\ngoog.html.SafeUrl.prototype.implementsGoogI18nBidiDirectionalString = !0;\ngoog.html.SafeUrl.prototype.getDirection = function() {\n  return goog.i18n.bidi.Dir.LTR;\n};\ngoog.DEBUG && (goog.html.SafeUrl.prototype.toString = function() {\n  return \"SafeUrl{\" + this.privateDoNotAccessOrElseSafeUrlWrappedValue_ + \"}\";\n});\ngoog.html.SafeUrl.unwrap = function(a) {\n  return goog.html.SafeUrl.unwrapTrustedURL(a).toString();\n};\ngoog.html.SafeUrl.unwrapTrustedURL = function(a) {\n  if (a instanceof goog.html.SafeUrl && a.constructor === goog.html.SafeUrl && a.SAFE_URL_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ === goog.html.SafeUrl.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_) {\n    return a.privateDoNotAccessOrElseSafeUrlWrappedValue_;\n  }\n  goog.asserts.fail(\"expected object of type SafeUrl, got '\" + a + \"' of type \" + goog.typeOf(a));\n  return \"type_error:SafeUrl\";\n};\ngoog.html.SafeUrl.fromConstant = function(a) {\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(goog.string.Const.unwrap(a));\n};\ngoog.html.SAFE_MIME_TYPE_PATTERN_ = /^(?:audio\\/(?:3gpp2|3gpp|aac|L16|midi|mp3|mp4|mpeg|oga|ogg|opus|x-m4a|x-wav|wav|webm)|image\\/(?:bmp|gif|jpeg|jpg|png|tiff|webp|x-icon)|text\\/csv|video\\/(?:mpeg|mp4|ogg|webm|quicktime))(?:;\\w+=(?:\\w+|\"[\\w;=]+\"))*$/i;\ngoog.html.SafeUrl.isSafeMimeType = function(a) {\n  return goog.html.SAFE_MIME_TYPE_PATTERN_.test(a);\n};\ngoog.html.SafeUrl.fromBlob = function(a) {\n  a = goog.html.SAFE_MIME_TYPE_PATTERN_.test(a.type) ? goog.fs.url.createObjectUrl(a) : goog.html.SafeUrl.INNOCUOUS_STRING;\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(a);\n};\ngoog.html.DATA_URL_PATTERN_ = /^data:([^,]*);base64,[a-z0-9+\\/]+=*$/i;\ngoog.html.SafeUrl.fromDataUrl = function(a) {\n  a = a.replace(/(%0A|%0D)/g, \"\");\n  var b = a.match(goog.html.DATA_URL_PATTERN_);\n  b = b && goog.html.SAFE_MIME_TYPE_PATTERN_.test(b[1]);\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(b ? a : goog.html.SafeUrl.INNOCUOUS_STRING);\n};\ngoog.html.SafeUrl.fromTelUrl = function(a) {\n  goog.string.internal.caseInsensitiveStartsWith(a, \"tel:\") || (a = goog.html.SafeUrl.INNOCUOUS_STRING);\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(a);\n};\ngoog.html.SIP_URL_PATTERN_ = /^sip[s]?:[+a-z0-9_.!$%&'*\\/=^`{|}~-]+@([a-z0-9-]+\\.)+[a-z0-9]{2,63}$/i;\ngoog.html.SafeUrl.fromSipUrl = function(a) {\n  goog.html.SIP_URL_PATTERN_.test(decodeURIComponent(a)) || (a = goog.html.SafeUrl.INNOCUOUS_STRING);\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(a);\n};\ngoog.html.SafeUrl.fromFacebookMessengerUrl = function(a) {\n  goog.string.internal.caseInsensitiveStartsWith(a, \"fb-messenger://share\") || (a = goog.html.SafeUrl.INNOCUOUS_STRING);\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(a);\n};\ngoog.html.SafeUrl.fromWhatsAppUrl = function(a) {\n  goog.string.internal.caseInsensitiveStartsWith(a, \"whatsapp://send\") || (a = goog.html.SafeUrl.INNOCUOUS_STRING);\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(a);\n};\ngoog.html.SafeUrl.fromSmsUrl = function(a) {\n  goog.string.internal.caseInsensitiveStartsWith(a, \"sms:\") && goog.html.SafeUrl.isSmsUrlBodyValid_(a) || (a = goog.html.SafeUrl.INNOCUOUS_STRING);\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(a);\n};\ngoog.html.SafeUrl.isSmsUrlBodyValid_ = function(a) {\n  var b = a.indexOf(\"#\");\n  0 < b && (a = a.substring(0, b));\n  b = a.match(/[?&]body=/gi);\n  if (!b) {\n    return !0;\n  }\n  if (1 < b.length) {\n    return !1;\n  }\n  a = a.match(/[?&]body=([^&]*)/)[1];\n  if (!a) {\n    return !0;\n  }\n  try {\n    decodeURIComponent(a);\n  } catch (c) {\n    return !1;\n  }\n  return /^(?:[a-z0-9\\-_.~]|%[0-9a-f]{2})+$/i.test(a);\n};\ngoog.html.SafeUrl.fromSshUrl = function(a) {\n  goog.string.internal.caseInsensitiveStartsWith(a, \"ssh://\") || (a = goog.html.SafeUrl.INNOCUOUS_STRING);\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(a);\n};\ngoog.html.SafeUrl.sanitizeChromeExtensionUrl = function(a, b) {\n  return goog.html.SafeUrl.sanitizeExtensionUrl_(/^chrome-extension:\\/\\/([^\\/]+)\\//, a, b);\n};\ngoog.html.SafeUrl.sanitizeFirefoxExtensionUrl = function(a, b) {\n  return goog.html.SafeUrl.sanitizeExtensionUrl_(/^moz-extension:\\/\\/([^\\/]+)\\//, a, b);\n};\ngoog.html.SafeUrl.sanitizeEdgeExtensionUrl = function(a, b) {\n  return goog.html.SafeUrl.sanitizeExtensionUrl_(/^ms-browser-extension:\\/\\/([^\\/]+)\\//, a, b);\n};\ngoog.html.SafeUrl.sanitizeExtensionUrl_ = function(a, b, c) {\n  (a = a.exec(b)) ? (a = a[1], -1 == (c instanceof goog.string.Const ? [goog.string.Const.unwrap(c)] : c.map(function(a) {\n    return goog.string.Const.unwrap(a);\n  })).indexOf(a) && (b = goog.html.SafeUrl.INNOCUOUS_STRING)) : b = goog.html.SafeUrl.INNOCUOUS_STRING;\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(b);\n};\ngoog.html.SafeUrl.fromTrustedResourceUrl = function(a) {\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(goog.html.TrustedResourceUrl.unwrap(a));\n};\ngoog.html.SAFE_URL_PATTERN_ = /^(?:(?:https?|mailto|ftp):|[^:/?#]*(?:[/?#]|$))/i;\ngoog.html.SafeUrl.SAFE_URL_PATTERN = goog.html.SAFE_URL_PATTERN_;\ngoog.html.SafeUrl.sanitize = function(a) {\n  if (a instanceof goog.html.SafeUrl) {\n    return a;\n  }\n  a = \"object\" == typeof a && a.implementsGoogStringTypedString ? a.getTypedStringValue() : String(a);\n  goog.html.SAFE_URL_PATTERN_.test(a) || (a = goog.html.SafeUrl.INNOCUOUS_STRING);\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(a);\n};\ngoog.html.SafeUrl.sanitizeAssertUnchanged = function(a, b) {\n  if (a instanceof goog.html.SafeUrl) {\n    return a;\n  }\n  a = \"object\" == typeof a && a.implementsGoogStringTypedString ? a.getTypedStringValue() : String(a);\n  if (b && /^data:/i.test(a)) {\n    var c = goog.html.SafeUrl.fromDataUrl(a);\n    if (c.getTypedStringValue() == a) {\n      return c;\n    }\n  }\n  goog.asserts.assert(goog.html.SAFE_URL_PATTERN_.test(a), \"%s does not match the safe URL pattern\", a) || (a = goog.html.SafeUrl.INNOCUOUS_STRING);\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(a);\n};\ngoog.html.SafeUrl.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ = {};\ngoog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse = function(a) {\n  return new goog.html.SafeUrl(goog.html.SafeUrl.CONSTRUCTOR_TOKEN_PRIVATE_, goog.html.trustedtypes.PRIVATE_DO_NOT_ACCESS_OR_ELSE_POLICY ? goog.html.trustedtypes.PRIVATE_DO_NOT_ACCESS_OR_ELSE_POLICY.createURL(a) : a);\n};\ngoog.html.SafeUrl.ABOUT_BLANK = goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(\"about:blank\");\ngoog.html.SafeUrl.CONSTRUCTOR_TOKEN_PRIVATE_ = {};\ngoog.html.SafeStyle = function() {\n  this.privateDoNotAccessOrElseSafeStyleWrappedValue_ = \"\";\n  this.SAFE_STYLE_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ = goog.html.SafeStyle.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_;\n};\ngoog.html.SafeStyle.prototype.implementsGoogStringTypedString = !0;\ngoog.html.SafeStyle.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ = {};\ngoog.html.SafeStyle.fromConstant = function(a) {\n  a = goog.string.Const.unwrap(a);\n  if (0 === a.length) {\n    return goog.html.SafeStyle.EMPTY;\n  }\n  goog.asserts.assert(goog.string.internal.endsWith(a, \";\"), \"Last character of style string is not ';': \" + a);\n  goog.asserts.assert(goog.string.internal.contains(a, \":\"), \"Style string must contain at least one ':', to specify a \\\"name: value\\\" pair: \" + a);\n  return goog.html.SafeStyle.createSafeStyleSecurityPrivateDoNotAccessOrElse(a);\n};\ngoog.html.SafeStyle.prototype.getTypedStringValue = function() {\n  return this.privateDoNotAccessOrElseSafeStyleWrappedValue_;\n};\ngoog.DEBUG && (goog.html.SafeStyle.prototype.toString = function() {\n  return \"SafeStyle{\" + this.privateDoNotAccessOrElseSafeStyleWrappedValue_ + \"}\";\n});\ngoog.html.SafeStyle.unwrap = function(a) {\n  if (a instanceof goog.html.SafeStyle && a.constructor === goog.html.SafeStyle && a.SAFE_STYLE_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ === goog.html.SafeStyle.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_) {\n    return a.privateDoNotAccessOrElseSafeStyleWrappedValue_;\n  }\n  goog.asserts.fail(\"expected object of type SafeStyle, got '\" + a + \"' of type \" + goog.typeOf(a));\n  return \"type_error:SafeStyle\";\n};\ngoog.html.SafeStyle.createSafeStyleSecurityPrivateDoNotAccessOrElse = function(a) {\n  return (new goog.html.SafeStyle).initSecurityPrivateDoNotAccessOrElse_(a);\n};\ngoog.html.SafeStyle.prototype.initSecurityPrivateDoNotAccessOrElse_ = function(a) {\n  this.privateDoNotAccessOrElseSafeStyleWrappedValue_ = a;\n  return this;\n};\ngoog.html.SafeStyle.EMPTY = goog.html.SafeStyle.createSafeStyleSecurityPrivateDoNotAccessOrElse(\"\");\ngoog.html.SafeStyle.INNOCUOUS_STRING = \"zClosurez\";\ngoog.html.SafeStyle.create = function(a) {\n  var b = \"\", c;\n  for (c in a) {\n    if (!/^[-_a-zA-Z0-9]+$/.test(c)) {\n      throw Error(\"Name allows only [-_a-zA-Z0-9], got: \" + c);\n    }\n    var d = a[c];\n    null != d && (d = goog.isArray(d) ? goog.array.map(d, goog.html.SafeStyle.sanitizePropertyValue_).join(\" \") : goog.html.SafeStyle.sanitizePropertyValue_(d), b += c + \":\" + d + \";\");\n  }\n  return b ? goog.html.SafeStyle.createSafeStyleSecurityPrivateDoNotAccessOrElse(b) : goog.html.SafeStyle.EMPTY;\n};\ngoog.html.SafeStyle.sanitizePropertyValue_ = function(a) {\n  if (a instanceof goog.html.SafeUrl) {\n    return 'url(\"' + goog.html.SafeUrl.unwrap(a).replace(/</g, \"%3c\").replace(/[\\\\\"]/g, \"\\\\$&\") + '\")';\n  }\n  a = a instanceof goog.string.Const ? goog.string.Const.unwrap(a) : goog.html.SafeStyle.sanitizePropertyValueString_(String(a));\n  if (/[{;}]/.test(a)) {\n    throw new goog.asserts.AssertionError(\"Value does not allow [{;}], got: %s.\", [a]);\n  }\n  return a;\n};\ngoog.html.SafeStyle.sanitizePropertyValueString_ = function(a) {\n  var b = a.replace(goog.html.SafeStyle.FUNCTIONS_RE_, \"$1\").replace(goog.html.SafeStyle.FUNCTIONS_RE_, \"$1\").replace(goog.html.SafeStyle.URL_RE_, \"url\");\n  if (goog.html.SafeStyle.VALUE_RE_.test(b)) {\n    if (goog.html.SafeStyle.COMMENT_RE_.test(a)) {\n      return goog.asserts.fail(\"String value disallows comments, got: \" + a), goog.html.SafeStyle.INNOCUOUS_STRING;\n    }\n    if (!goog.html.SafeStyle.hasBalancedQuotes_(a)) {\n      return goog.asserts.fail(\"String value requires balanced quotes, got: \" + a), goog.html.SafeStyle.INNOCUOUS_STRING;\n    }\n    if (!goog.html.SafeStyle.hasBalancedSquareBrackets_(a)) {\n      return goog.asserts.fail(\"String value requires balanced square brackets and one identifier per pair of brackets, got: \" + a), goog.html.SafeStyle.INNOCUOUS_STRING;\n    }\n  } else {\n    return goog.asserts.fail(\"String value allows only \" + goog.html.SafeStyle.VALUE_ALLOWED_CHARS_ + \" and simple functions, got: \" + a), goog.html.SafeStyle.INNOCUOUS_STRING;\n  }\n  return goog.html.SafeStyle.sanitizeUrl_(a);\n};\ngoog.html.SafeStyle.hasBalancedQuotes_ = function(a) {\n  for (var b = !0, c = !0, d = 0; d < a.length; d++) {\n    var e = a.charAt(d);\n    \"'\" == e && c ? b = !b : '\"' == e && b && (c = !c);\n  }\n  return b && c;\n};\ngoog.html.SafeStyle.hasBalancedSquareBrackets_ = function(a) {\n  for (var b = !0, c = /^[-_a-zA-Z0-9]$/, d = 0; d < a.length; d++) {\n    var e = a.charAt(d);\n    if (\"]\" == e) {\n      if (b) {\n        return !1;\n      }\n      b = !0;\n    } else {\n      if (\"[\" == e) {\n        if (!b) {\n          return !1;\n        }\n        b = !1;\n      } else {\n        if (!b && !c.test(e)) {\n          return !1;\n        }\n      }\n    }\n  }\n  return b;\n};\ngoog.html.SafeStyle.VALUE_ALLOWED_CHARS_ = \"[-,.\\\"'%_!# a-zA-Z0-9\\\\[\\\\]]\";\ngoog.html.SafeStyle.VALUE_RE_ = new RegExp(\"^\" + goog.html.SafeStyle.VALUE_ALLOWED_CHARS_ + \"+$\");\ngoog.html.SafeStyle.URL_RE_ = RegExp(\"\\\\b(url\\\\([ \\t\\n]*)('[ -&(-\\\\[\\\\]-~]*'|\\\"[ !#-\\\\[\\\\]-~]*\\\"|[!#-&*-\\\\[\\\\]-~]*)([ \\t\\n]*\\\\))\", \"g\");\ngoog.html.SafeStyle.ALLOWED_FUNCTIONS_ = \"calc cubic-bezier fit-content hsl hsla matrix minmax repeat rgb rgba (rotate|scale|translate)(X|Y|Z|3d)?\".split(\" \");\ngoog.html.SafeStyle.FUNCTIONS_RE_ = new RegExp(\"\\\\b(\" + goog.html.SafeStyle.ALLOWED_FUNCTIONS_.join(\"|\") + \")\\\\([-+*/0-9a-z.%\\\\[\\\\], ]+\\\\)\", \"g\");\ngoog.html.SafeStyle.COMMENT_RE_ = /\\/\\*/;\ngoog.html.SafeStyle.sanitizeUrl_ = function(a) {\n  return a.replace(goog.html.SafeStyle.URL_RE_, function(a, c, d, e) {\n    var b = \"\";\n    d = d.replace(/^(['\"])(.*)\\1$/, function(a, c, d) {\n      b = c;\n      return d;\n    });\n    a = goog.html.SafeUrl.sanitize(d).getTypedStringValue();\n    return c + b + a + b + e;\n  });\n};\ngoog.html.SafeStyle.concat = function(a) {\n  var b = \"\", c = function(a) {\n    goog.isArray(a) ? goog.array.forEach(a, c) : b += goog.html.SafeStyle.unwrap(a);\n  };\n  goog.array.forEach(arguments, c);\n  return b ? goog.html.SafeStyle.createSafeStyleSecurityPrivateDoNotAccessOrElse(b) : goog.html.SafeStyle.EMPTY;\n};\ngoog.html.SafeStyleSheet = function() {\n  this.privateDoNotAccessOrElseSafeStyleSheetWrappedValue_ = \"\";\n  this.SAFE_STYLE_SHEET_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ = goog.html.SafeStyleSheet.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_;\n};\ngoog.html.SafeStyleSheet.prototype.implementsGoogStringTypedString = !0;\ngoog.html.SafeStyleSheet.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ = {};\ngoog.html.SafeStyleSheet.createRule = function(a, b) {\n  if (goog.string.internal.contains(a, \"<\")) {\n    throw Error(\"Selector does not allow '<', got: \" + a);\n  }\n  var c = a.replace(/('|\")((?!\\1)[^\\r\\n\\f\\\\]|\\\\[\\s\\S])*\\1/g, \"\");\n  if (!/^[-_a-zA-Z0-9#.:* ,>+~[\\]()=^$|]+$/.test(c)) {\n    throw Error(\"Selector allows only [-_a-zA-Z0-9#.:* ,>+~[\\\\]()=^$|] and strings, got: \" + a);\n  }\n  if (!goog.html.SafeStyleSheet.hasBalancedBrackets_(c)) {\n    throw Error(\"() and [] in selector must be balanced, got: \" + a);\n  }\n  b instanceof goog.html.SafeStyle || (b = goog.html.SafeStyle.create(b));\n  c = a + \"{\" + goog.html.SafeStyle.unwrap(b).replace(/</g, \"\\\\3C \") + \"}\";\n  return goog.html.SafeStyleSheet.createSafeStyleSheetSecurityPrivateDoNotAccessOrElse(c);\n};\ngoog.html.SafeStyleSheet.hasBalancedBrackets_ = function(a) {\n  for (var b = {\"(\":\")\", \"[\":\"]\"}, c = [], d = 0; d < a.length; d++) {\n    var e = a[d];\n    if (b[e]) {\n      c.push(b[e]);\n    } else {\n      if (goog.object.contains(b, e) && c.pop() != e) {\n        return !1;\n      }\n    }\n  }\n  return 0 == c.length;\n};\ngoog.html.SafeStyleSheet.concat = function(a) {\n  var b = \"\", c = function(a) {\n    goog.isArray(a) ? goog.array.forEach(a, c) : b += goog.html.SafeStyleSheet.unwrap(a);\n  };\n  goog.array.forEach(arguments, c);\n  return goog.html.SafeStyleSheet.createSafeStyleSheetSecurityPrivateDoNotAccessOrElse(b);\n};\ngoog.html.SafeStyleSheet.fromConstant = function(a) {\n  a = goog.string.Const.unwrap(a);\n  if (0 === a.length) {\n    return goog.html.SafeStyleSheet.EMPTY;\n  }\n  goog.asserts.assert(!goog.string.internal.contains(a, \"<\"), \"Forbidden '<' character in style sheet string: \" + a);\n  return goog.html.SafeStyleSheet.createSafeStyleSheetSecurityPrivateDoNotAccessOrElse(a);\n};\ngoog.html.SafeStyleSheet.prototype.getTypedStringValue = function() {\n  return this.privateDoNotAccessOrElseSafeStyleSheetWrappedValue_;\n};\ngoog.DEBUG && (goog.html.SafeStyleSheet.prototype.toString = function() {\n  return \"SafeStyleSheet{\" + this.privateDoNotAccessOrElseSafeStyleSheetWrappedValue_ + \"}\";\n});\ngoog.html.SafeStyleSheet.unwrap = function(a) {\n  if (a instanceof goog.html.SafeStyleSheet && a.constructor === goog.html.SafeStyleSheet && a.SAFE_STYLE_SHEET_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ === goog.html.SafeStyleSheet.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_) {\n    return a.privateDoNotAccessOrElseSafeStyleSheetWrappedValue_;\n  }\n  goog.asserts.fail(\"expected object of type SafeStyleSheet, got '\" + a + \"' of type \" + goog.typeOf(a));\n  return \"type_error:SafeStyleSheet\";\n};\ngoog.html.SafeStyleSheet.createSafeStyleSheetSecurityPrivateDoNotAccessOrElse = function(a) {\n  return (new goog.html.SafeStyleSheet).initSecurityPrivateDoNotAccessOrElse_(a);\n};\ngoog.html.SafeStyleSheet.prototype.initSecurityPrivateDoNotAccessOrElse_ = function(a) {\n  this.privateDoNotAccessOrElseSafeStyleSheetWrappedValue_ = a;\n  return this;\n};\ngoog.html.SafeStyleSheet.EMPTY = goog.html.SafeStyleSheet.createSafeStyleSheetSecurityPrivateDoNotAccessOrElse(\"\");\ngoog.labs = {};\ngoog.labs.userAgent = {};\ngoog.labs.userAgent.util = {};\ngoog.labs.userAgent.util.getNativeUserAgentString_ = function() {\n  var a = goog.labs.userAgent.util.getNavigator_();\n  return a && (a = a.userAgent) ? a : \"\";\n};\ngoog.labs.userAgent.util.getNavigator_ = function() {\n  return goog.global.navigator;\n};\ngoog.labs.userAgent.util.userAgent_ = goog.labs.userAgent.util.getNativeUserAgentString_();\ngoog.labs.userAgent.util.setUserAgent = function(a) {\n  goog.labs.userAgent.util.userAgent_ = a || goog.labs.userAgent.util.getNativeUserAgentString_();\n};\ngoog.labs.userAgent.util.getUserAgent = function() {\n  return goog.labs.userAgent.util.userAgent_;\n};\ngoog.labs.userAgent.util.matchUserAgent = function(a) {\n  var b = goog.labs.userAgent.util.getUserAgent();\n  return goog.string.internal.contains(b, a);\n};\ngoog.labs.userAgent.util.matchUserAgentIgnoreCase = function(a) {\n  var b = goog.labs.userAgent.util.getUserAgent();\n  return goog.string.internal.caseInsensitiveContains(b, a);\n};\ngoog.labs.userAgent.util.extractVersionTuples = function(a) {\n  for (var b = RegExp(\"(\\\\w[\\\\w ]+)/([^\\\\s]+)\\\\s*(?:\\\\((.*?)\\\\))?\", \"g\"), c = [], d; d = b.exec(a);) {\n    c.push([d[1], d[2], d[3] || void 0]);\n  }\n  return c;\n};\ngoog.labs.userAgent.browser = {};\ngoog.labs.userAgent.browser.matchOpera_ = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Opera\");\n};\ngoog.labs.userAgent.browser.matchIE_ = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Trident\") || goog.labs.userAgent.util.matchUserAgent(\"MSIE\");\n};\ngoog.labs.userAgent.browser.matchEdgeHtml_ = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Edge\");\n};\ngoog.labs.userAgent.browser.matchEdgeChromium_ = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Edg/\");\n};\ngoog.labs.userAgent.browser.matchOperaChromium_ = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"OPR\");\n};\ngoog.labs.userAgent.browser.matchFirefox_ = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Firefox\") || goog.labs.userAgent.util.matchUserAgent(\"FxiOS\");\n};\ngoog.labs.userAgent.browser.matchSafari_ = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Safari\") && !(goog.labs.userAgent.browser.matchChrome_() || goog.labs.userAgent.browser.matchCoast_() || goog.labs.userAgent.browser.matchOpera_() || goog.labs.userAgent.browser.matchEdgeHtml_() || goog.labs.userAgent.browser.matchEdgeChromium_() || goog.labs.userAgent.browser.matchOperaChromium_() || goog.labs.userAgent.browser.matchFirefox_() || goog.labs.userAgent.browser.isSilk() || goog.labs.userAgent.util.matchUserAgent(\"Android\"));\n};\ngoog.labs.userAgent.browser.matchCoast_ = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Coast\");\n};\ngoog.labs.userAgent.browser.matchIosWebview_ = function() {\n  return (goog.labs.userAgent.util.matchUserAgent(\"iPad\") || goog.labs.userAgent.util.matchUserAgent(\"iPhone\")) && !goog.labs.userAgent.browser.matchSafari_() && !goog.labs.userAgent.browser.matchChrome_() && !goog.labs.userAgent.browser.matchCoast_() && !goog.labs.userAgent.browser.matchFirefox_() && goog.labs.userAgent.util.matchUserAgent(\"AppleWebKit\");\n};\ngoog.labs.userAgent.browser.matchChrome_ = function() {\n  return (goog.labs.userAgent.util.matchUserAgent(\"Chrome\") || goog.labs.userAgent.util.matchUserAgent(\"CriOS\")) && !goog.labs.userAgent.browser.matchEdgeHtml_();\n};\ngoog.labs.userAgent.browser.matchAndroidBrowser_ = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Android\") && !(goog.labs.userAgent.browser.isChrome() || goog.labs.userAgent.browser.isFirefox() || goog.labs.userAgent.browser.isOpera() || goog.labs.userAgent.browser.isSilk());\n};\ngoog.labs.userAgent.browser.isOpera = goog.labs.userAgent.browser.matchOpera_;\ngoog.labs.userAgent.browser.isIE = goog.labs.userAgent.browser.matchIE_;\ngoog.labs.userAgent.browser.isEdge = goog.labs.userAgent.browser.matchEdgeHtml_;\ngoog.labs.userAgent.browser.isEdgeChromium = goog.labs.userAgent.browser.matchEdgeChromium_;\ngoog.labs.userAgent.browser.isOperaChromium = goog.labs.userAgent.browser.matchOperaChromium_;\ngoog.labs.userAgent.browser.isFirefox = goog.labs.userAgent.browser.matchFirefox_;\ngoog.labs.userAgent.browser.isSafari = goog.labs.userAgent.browser.matchSafari_;\ngoog.labs.userAgent.browser.isCoast = goog.labs.userAgent.browser.matchCoast_;\ngoog.labs.userAgent.browser.isIosWebview = goog.labs.userAgent.browser.matchIosWebview_;\ngoog.labs.userAgent.browser.isChrome = goog.labs.userAgent.browser.matchChrome_;\ngoog.labs.userAgent.browser.isAndroidBrowser = goog.labs.userAgent.browser.matchAndroidBrowser_;\ngoog.labs.userAgent.browser.isSilk = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Silk\");\n};\ngoog.labs.userAgent.browser.getVersion = function() {\n  function a(a) {\n    a = goog.array.find(a, d);\n    return c[a] || \"\";\n  }\n  var b = goog.labs.userAgent.util.getUserAgent();\n  if (goog.labs.userAgent.browser.isIE()) {\n    return goog.labs.userAgent.browser.getIEVersion_(b);\n  }\n  b = goog.labs.userAgent.util.extractVersionTuples(b);\n  var c = {};\n  goog.array.forEach(b, function(a) {\n    c[a[0]] = a[1];\n  });\n  var d = goog.partial(goog.object.containsKey, c);\n  return goog.labs.userAgent.browser.isOpera() ? a([\"Version\", \"Opera\"]) : goog.labs.userAgent.browser.isEdge() ? a([\"Edge\"]) : goog.labs.userAgent.browser.isEdgeChromium() ? a([\"Edg\"]) : goog.labs.userAgent.browser.isChrome() ? a([\"Chrome\", \"CriOS\"]) : (b = b[2]) && b[1] || \"\";\n};\ngoog.labs.userAgent.browser.isVersionOrHigher = function(a) {\n  return 0 <= goog.string.internal.compareVersions(goog.labs.userAgent.browser.getVersion(), a);\n};\ngoog.labs.userAgent.browser.getIEVersion_ = function(a) {\n  var b = /rv: *([\\d\\.]*)/.exec(a);\n  if (b && b[1]) {\n    return b[1];\n  }\n  b = \"\";\n  var c = /MSIE +([\\d\\.]+)/.exec(a);\n  if (c && c[1]) {\n    if (a = /Trident\\/(\\d.\\d)/.exec(a), \"7.0\" == c[1]) {\n      if (a && a[1]) {\n        switch(a[1]) {\n          case \"4.0\":\n            b = \"8.0\";\n            break;\n          case \"5.0\":\n            b = \"9.0\";\n            break;\n          case \"6.0\":\n            b = \"10.0\";\n            break;\n          case \"7.0\":\n            b = \"11.0\";\n        }\n      } else {\n        b = \"7.0\";\n      }\n    } else {\n      b = c[1];\n    }\n  }\n  return b;\n};\ngoog.html.SafeHtml = function() {\n  this.privateDoNotAccessOrElseSafeHtmlWrappedValue_ = \"\";\n  this.SAFE_HTML_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ = goog.html.SafeHtml.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_;\n  this.dir_ = null;\n};\ngoog.html.SafeHtml.ENABLE_ERROR_MESSAGES = goog.DEBUG;\ngoog.html.SafeHtml.SUPPORT_STYLE_ATTRIBUTE = !0;\ngoog.html.SafeHtml.prototype.implementsGoogI18nBidiDirectionalString = !0;\ngoog.html.SafeHtml.prototype.getDirection = function() {\n  return this.dir_;\n};\ngoog.html.SafeHtml.prototype.implementsGoogStringTypedString = !0;\ngoog.html.SafeHtml.prototype.getTypedStringValue = function() {\n  return this.privateDoNotAccessOrElseSafeHtmlWrappedValue_.toString();\n};\ngoog.DEBUG && (goog.html.SafeHtml.prototype.toString = function() {\n  return \"SafeHtml{\" + this.privateDoNotAccessOrElseSafeHtmlWrappedValue_ + \"}\";\n});\ngoog.html.SafeHtml.unwrap = function(a) {\n  return goog.html.SafeHtml.unwrapTrustedHTML(a).toString();\n};\ngoog.html.SafeHtml.unwrapTrustedHTML = function(a) {\n  if (a instanceof goog.html.SafeHtml && a.constructor === goog.html.SafeHtml && a.SAFE_HTML_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ === goog.html.SafeHtml.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_) {\n    return a.privateDoNotAccessOrElseSafeHtmlWrappedValue_;\n  }\n  goog.asserts.fail(\"expected object of type SafeHtml, got '\" + a + \"' of type \" + goog.typeOf(a));\n  return \"type_error:SafeHtml\";\n};\ngoog.html.SafeHtml.htmlEscape = function(a) {\n  if (a instanceof goog.html.SafeHtml) {\n    return a;\n  }\n  var b = \"object\" == typeof a, c = null;\n  b && a.implementsGoogI18nBidiDirectionalString && (c = a.getDirection());\n  a = b && a.implementsGoogStringTypedString ? a.getTypedStringValue() : String(a);\n  return goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(goog.string.internal.htmlEscape(a), c);\n};\ngoog.html.SafeHtml.htmlEscapePreservingNewlines = function(a) {\n  if (a instanceof goog.html.SafeHtml) {\n    return a;\n  }\n  a = goog.html.SafeHtml.htmlEscape(a);\n  return goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(goog.string.internal.newLineToBr(goog.html.SafeHtml.unwrap(a)), a.getDirection());\n};\ngoog.html.SafeHtml.htmlEscapePreservingNewlinesAndSpaces = function(a) {\n  if (a instanceof goog.html.SafeHtml) {\n    return a;\n  }\n  a = goog.html.SafeHtml.htmlEscape(a);\n  return goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(goog.string.internal.whitespaceEscape(goog.html.SafeHtml.unwrap(a)), a.getDirection());\n};\ngoog.html.SafeHtml.from = goog.html.SafeHtml.htmlEscape;\ngoog.html.SafeHtml.VALID_NAMES_IN_TAG_ = /^[a-zA-Z0-9-]+$/;\ngoog.html.SafeHtml.URL_ATTRIBUTES_ = {action:!0, cite:!0, data:!0, formaction:!0, href:!0, manifest:!0, poster:!0, src:!0};\ngoog.html.SafeHtml.NOT_ALLOWED_TAG_NAMES_ = {APPLET:!0, BASE:!0, EMBED:!0, IFRAME:!0, LINK:!0, MATH:!0, META:!0, OBJECT:!0, SCRIPT:!0, STYLE:!0, SVG:!0, TEMPLATE:!0};\ngoog.html.SafeHtml.create = function(a, b, c) {\n  goog.html.SafeHtml.verifyTagName(String(a));\n  return goog.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse(String(a), b, c);\n};\ngoog.html.SafeHtml.verifyTagName = function(a) {\n  if (!goog.html.SafeHtml.VALID_NAMES_IN_TAG_.test(a)) {\n    throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES ? \"Invalid tag name <\" + a + \">.\" : \"\");\n  }\n  if (a.toUpperCase() in goog.html.SafeHtml.NOT_ALLOWED_TAG_NAMES_) {\n    throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES ? \"Tag name <\" + a + \"> is not allowed for SafeHtml.\" : \"\");\n  }\n};\ngoog.html.SafeHtml.createIframe = function(a, b, c, d) {\n  a && goog.html.TrustedResourceUrl.unwrap(a);\n  var e = {};\n  e.src = a || null;\n  e.srcdoc = b && goog.html.SafeHtml.unwrap(b);\n  a = goog.html.SafeHtml.combineAttributes(e, {sandbox:\"\"}, c);\n  return goog.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse(\"iframe\", a, d);\n};\ngoog.html.SafeHtml.createSandboxIframe = function(a, b, c, d) {\n  if (!goog.html.SafeHtml.canUseSandboxIframe()) {\n    throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES ? \"The browser does not support sandboxed iframes.\" : \"\");\n  }\n  var e = {};\n  e.src = a ? goog.html.SafeUrl.unwrap(goog.html.SafeUrl.sanitize(a)) : null;\n  e.srcdoc = b || null;\n  e.sandbox = \"\";\n  a = goog.html.SafeHtml.combineAttributes(e, {}, c);\n  return goog.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse(\"iframe\", a, d);\n};\ngoog.html.SafeHtml.canUseSandboxIframe = function() {\n  return goog.global.HTMLIFrameElement && \"sandbox\" in goog.global.HTMLIFrameElement.prototype;\n};\ngoog.html.SafeHtml.createScriptSrc = function(a, b) {\n  goog.html.TrustedResourceUrl.unwrap(a);\n  var c = goog.html.SafeHtml.combineAttributes({src:a}, {}, b);\n  return goog.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse(\"script\", c);\n};\ngoog.html.SafeHtml.createScript = function(a, b) {\n  for (var c in b) {\n    var d = c.toLowerCase();\n    if (\"language\" == d || \"src\" == d || \"text\" == d || \"type\" == d) {\n      throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES ? 'Cannot set \"' + d + '\" attribute' : \"\");\n    }\n  }\n  c = \"\";\n  a = goog.array.concat(a);\n  for (d = 0; d < a.length; d++) {\n    c += goog.html.SafeScript.unwrap(a[d]);\n  }\n  c = goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(c, goog.i18n.bidi.Dir.NEUTRAL);\n  return goog.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse(\"script\", b, c);\n};\ngoog.html.SafeHtml.createStyle = function(a, b) {\n  var c = goog.html.SafeHtml.combineAttributes({type:\"text/css\"}, {}, b), d = \"\";\n  a = goog.array.concat(a);\n  for (var e = 0; e < a.length; e++) {\n    d += goog.html.SafeStyleSheet.unwrap(a[e]);\n  }\n  d = goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(d, goog.i18n.bidi.Dir.NEUTRAL);\n  return goog.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse(\"style\", c, d);\n};\ngoog.html.SafeHtml.createMetaRefresh = function(a, b) {\n  var c = goog.html.SafeUrl.unwrap(goog.html.SafeUrl.sanitize(a));\n  (goog.labs.userAgent.browser.isIE() || goog.labs.userAgent.browser.isEdge()) && goog.string.internal.contains(c, \";\") && (c = \"'\" + c.replace(/'/g, \"%27\") + \"'\");\n  return goog.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse(\"meta\", {\"http-equiv\":\"refresh\", content:(b || 0) + \"; url=\" + c});\n};\ngoog.html.SafeHtml.getAttrNameAndValue_ = function(a, b, c) {\n  if (c instanceof goog.string.Const) {\n    c = goog.string.Const.unwrap(c);\n  } else {\n    if (\"style\" == b.toLowerCase()) {\n      if (goog.html.SafeHtml.SUPPORT_STYLE_ATTRIBUTE) {\n        c = goog.html.SafeHtml.getStyleValue_(c);\n      } else {\n        throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES ? 'Attribute \"style\" not supported.' : \"\");\n      }\n    } else {\n      if (/^on/i.test(b)) {\n        throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES ? 'Attribute \"' + b + '\" requires goog.string.Const value, \"' + c + '\" given.' : \"\");\n      }\n      if (b.toLowerCase() in goog.html.SafeHtml.URL_ATTRIBUTES_) {\n        if (c instanceof goog.html.TrustedResourceUrl) {\n          c = goog.html.TrustedResourceUrl.unwrap(c);\n        } else {\n          if (c instanceof goog.html.SafeUrl) {\n            c = goog.html.SafeUrl.unwrap(c);\n          } else {\n            if (\"string\" === typeof c) {\n              c = goog.html.SafeUrl.sanitize(c).getTypedStringValue();\n            } else {\n              throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES ? 'Attribute \"' + b + '\" on tag \"' + a + '\" requires goog.html.SafeUrl, goog.string.Const, or string, value \"' + c + '\" given.' : \"\");\n            }\n          }\n        }\n      }\n    }\n  }\n  c.implementsGoogStringTypedString && (c = c.getTypedStringValue());\n  goog.asserts.assert(\"string\" === typeof c || \"number\" === typeof c, \"String or number value expected, got \" + typeof c + \" with value: \" + c);\n  return b + '=\"' + goog.string.internal.htmlEscape(String(c)) + '\"';\n};\ngoog.html.SafeHtml.getStyleValue_ = function(a) {\n  if (!goog.isObject(a)) {\n    throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES ? 'The \"style\" attribute requires goog.html.SafeStyle or map of style properties, ' + typeof a + \" given: \" + a : \"\");\n  }\n  a instanceof goog.html.SafeStyle || (a = goog.html.SafeStyle.create(a));\n  return goog.html.SafeStyle.unwrap(a);\n};\ngoog.html.SafeHtml.createWithDir = function(a, b, c, d) {\n  b = goog.html.SafeHtml.create(b, c, d);\n  b.dir_ = a;\n  return b;\n};\ngoog.html.SafeHtml.join = function(a, b) {\n  var c = goog.html.SafeHtml.htmlEscape(a), d = c.getDirection(), e = [], f = function(a) {\n    goog.isArray(a) ? goog.array.forEach(a, f) : (a = goog.html.SafeHtml.htmlEscape(a), e.push(goog.html.SafeHtml.unwrap(a)), a = a.getDirection(), d == goog.i18n.bidi.Dir.NEUTRAL ? d = a : a != goog.i18n.bidi.Dir.NEUTRAL && d != a && (d = null));\n  };\n  goog.array.forEach(b, f);\n  return goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(e.join(goog.html.SafeHtml.unwrap(c)), d);\n};\ngoog.html.SafeHtml.concat = function(a) {\n  return goog.html.SafeHtml.join(goog.html.SafeHtml.EMPTY, Array.prototype.slice.call(arguments));\n};\ngoog.html.SafeHtml.concatWithDir = function(a, b) {\n  var c = goog.html.SafeHtml.concat(goog.array.slice(arguments, 1));\n  c.dir_ = a;\n  return c;\n};\ngoog.html.SafeHtml.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ = {};\ngoog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse = function(a, b) {\n  return (new goog.html.SafeHtml).initSecurityPrivateDoNotAccessOrElse_(a, b);\n};\ngoog.html.SafeHtml.prototype.initSecurityPrivateDoNotAccessOrElse_ = function(a, b) {\n  this.privateDoNotAccessOrElseSafeHtmlWrappedValue_ = goog.html.trustedtypes.PRIVATE_DO_NOT_ACCESS_OR_ELSE_POLICY ? goog.html.trustedtypes.PRIVATE_DO_NOT_ACCESS_OR_ELSE_POLICY.createHTML(a) : a;\n  this.dir_ = b;\n  return this;\n};\ngoog.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse = function(a, b, c) {\n  var d = null;\n  var e = \"<\" + a + goog.html.SafeHtml.stringifyAttributes(a, b);\n  null == c ? c = [] : goog.isArray(c) || (c = [c]);\n  goog.dom.tags.isVoidTag(a.toLowerCase()) ? (goog.asserts.assert(!c.length, \"Void tag <\" + a + \"> does not allow content.\"), e += \">\") : (d = goog.html.SafeHtml.concat(c), e += \">\" + goog.html.SafeHtml.unwrap(d) + \"</\" + a + \">\", d = d.getDirection());\n  (a = b && b.dir) && (d = /^(ltr|rtl|auto)$/i.test(a) ? goog.i18n.bidi.Dir.NEUTRAL : null);\n  return goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(e, d);\n};\ngoog.html.SafeHtml.stringifyAttributes = function(a, b) {\n  var c = \"\";\n  if (b) {\n    for (var d in b) {\n      if (!goog.html.SafeHtml.VALID_NAMES_IN_TAG_.test(d)) {\n        throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES ? 'Invalid attribute name \"' + d + '\".' : \"\");\n      }\n      var e = b[d];\n      null != e && (c += \" \" + goog.html.SafeHtml.getAttrNameAndValue_(a, d, e));\n    }\n  }\n  return c;\n};\ngoog.html.SafeHtml.combineAttributes = function(a, b, c) {\n  var d = {}, e;\n  for (e in a) {\n    goog.asserts.assert(e.toLowerCase() == e, \"Must be lower case\"), d[e] = a[e];\n  }\n  for (e in b) {\n    goog.asserts.assert(e.toLowerCase() == e, \"Must be lower case\"), d[e] = b[e];\n  }\n  if (c) {\n    for (e in c) {\n      var f = e.toLowerCase();\n      if (f in a) {\n        throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES ? 'Cannot override \"' + f + '\" attribute, got \"' + e + '\" with value \"' + c[e] + '\"' : \"\");\n      }\n      f in b && delete d[f];\n      d[e] = c[e];\n    }\n  }\n  return d;\n};\ngoog.html.SafeHtml.DOCTYPE_HTML = goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(\"<!DOCTYPE html>\", goog.i18n.bidi.Dir.NEUTRAL);\ngoog.html.SafeHtml.EMPTY = goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(\"\", goog.i18n.bidi.Dir.NEUTRAL);\ngoog.html.SafeHtml.BR = goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(\"<br>\", goog.i18n.bidi.Dir.NEUTRAL);\ngoog.html.uncheckedconversions = {};\ngoog.html.uncheckedconversions.safeHtmlFromStringKnownToSatisfyTypeContract = function(a, b, c) {\n  goog.asserts.assertString(goog.string.Const.unwrap(a), \"must provide justification\");\n  goog.asserts.assert(!goog.string.internal.isEmptyOrWhitespace(goog.string.Const.unwrap(a)), \"must provide non-empty justification\");\n  return goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(b, c || null);\n};\ngoog.html.uncheckedconversions.safeScriptFromStringKnownToSatisfyTypeContract = function(a, b) {\n  goog.asserts.assertString(goog.string.Const.unwrap(a), \"must provide justification\");\n  goog.asserts.assert(!goog.string.internal.isEmptyOrWhitespace(goog.string.Const.unwrap(a)), \"must provide non-empty justification\");\n  return goog.html.SafeScript.createSafeScriptSecurityPrivateDoNotAccessOrElse(b);\n};\ngoog.html.uncheckedconversions.safeStyleFromStringKnownToSatisfyTypeContract = function(a, b) {\n  goog.asserts.assertString(goog.string.Const.unwrap(a), \"must provide justification\");\n  goog.asserts.assert(!goog.string.internal.isEmptyOrWhitespace(goog.string.Const.unwrap(a)), \"must provide non-empty justification\");\n  return goog.html.SafeStyle.createSafeStyleSecurityPrivateDoNotAccessOrElse(b);\n};\ngoog.html.uncheckedconversions.safeStyleSheetFromStringKnownToSatisfyTypeContract = function(a, b) {\n  goog.asserts.assertString(goog.string.Const.unwrap(a), \"must provide justification\");\n  goog.asserts.assert(!goog.string.internal.isEmptyOrWhitespace(goog.string.Const.unwrap(a)), \"must provide non-empty justification\");\n  return goog.html.SafeStyleSheet.createSafeStyleSheetSecurityPrivateDoNotAccessOrElse(b);\n};\ngoog.html.uncheckedconversions.safeUrlFromStringKnownToSatisfyTypeContract = function(a, b) {\n  goog.asserts.assertString(goog.string.Const.unwrap(a), \"must provide justification\");\n  goog.asserts.assert(!goog.string.internal.isEmptyOrWhitespace(goog.string.Const.unwrap(a)), \"must provide non-empty justification\");\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(b);\n};\ngoog.html.uncheckedconversions.trustedResourceUrlFromStringKnownToSatisfyTypeContract = function(a, b) {\n  goog.asserts.assertString(goog.string.Const.unwrap(a), \"must provide justification\");\n  goog.asserts.assert(!goog.string.internal.isEmptyOrWhitespace(goog.string.Const.unwrap(a)), \"must provide non-empty justification\");\n  return goog.html.TrustedResourceUrl.createTrustedResourceUrlSecurityPrivateDoNotAccessOrElse(b);\n};\ngoog.dom.safe = {};\ngoog.dom.safe.InsertAdjacentHtmlPosition = {AFTERBEGIN:\"afterbegin\", AFTEREND:\"afterend\", BEFOREBEGIN:\"beforebegin\", BEFOREEND:\"beforeend\"};\ngoog.dom.safe.insertAdjacentHtml = function(a, b, c) {\n  a.insertAdjacentHTML(b, goog.html.SafeHtml.unwrapTrustedHTML(c));\n};\ngoog.dom.safe.SET_INNER_HTML_DISALLOWED_TAGS_ = {MATH:!0, SCRIPT:!0, STYLE:!0, SVG:!0, TEMPLATE:!0};\ngoog.dom.safe.isInnerHtmlCleanupRecursive_ = goog.functions.cacheReturnValue(function() {\n  if (goog.DEBUG && \"undefined\" === typeof document) {\n    return !1;\n  }\n  var a = document.createElement(\"div\"), b = document.createElement(\"div\");\n  b.appendChild(document.createElement(\"div\"));\n  a.appendChild(b);\n  if (goog.DEBUG && !a.firstChild) {\n    return !1;\n  }\n  b = a.firstChild.firstChild;\n  a.innerHTML = goog.html.SafeHtml.unwrapTrustedHTML(goog.html.SafeHtml.EMPTY);\n  return !b.parentElement;\n});\ngoog.dom.safe.unsafeSetInnerHtmlDoNotUseOrElse = function(a, b) {\n  if (goog.dom.safe.isInnerHtmlCleanupRecursive_()) {\n    for (; a.lastChild;) {\n      a.removeChild(a.lastChild);\n    }\n  }\n  a.innerHTML = goog.html.SafeHtml.unwrapTrustedHTML(b);\n};\ngoog.dom.safe.setInnerHtml = function(a, b) {\n  if (goog.asserts.ENABLE_ASSERTS) {\n    var c = a.tagName.toUpperCase();\n    if (goog.dom.safe.SET_INNER_HTML_DISALLOWED_TAGS_[c]) {\n      throw Error(\"goog.dom.safe.setInnerHtml cannot be used to set content of \" + a.tagName + \".\");\n    }\n  }\n  goog.dom.safe.unsafeSetInnerHtmlDoNotUseOrElse(a, b);\n};\ngoog.dom.safe.setOuterHtml = function(a, b) {\n  a.outerHTML = goog.html.SafeHtml.unwrapTrustedHTML(b);\n};\ngoog.dom.safe.setFormElementAction = function(a, b) {\n  var c = b instanceof goog.html.SafeUrl ? b : goog.html.SafeUrl.sanitizeAssertUnchanged(b);\n  goog.dom.asserts.assertIsHTMLFormElement(a).action = goog.html.SafeUrl.unwrapTrustedURL(c);\n};\ngoog.dom.safe.setButtonFormAction = function(a, b) {\n  var c = b instanceof goog.html.SafeUrl ? b : goog.html.SafeUrl.sanitizeAssertUnchanged(b);\n  goog.dom.asserts.assertIsHTMLButtonElement(a).formAction = goog.html.SafeUrl.unwrapTrustedURL(c);\n};\ngoog.dom.safe.setInputFormAction = function(a, b) {\n  var c = b instanceof goog.html.SafeUrl ? b : goog.html.SafeUrl.sanitizeAssertUnchanged(b);\n  goog.dom.asserts.assertIsHTMLInputElement(a).formAction = goog.html.SafeUrl.unwrapTrustedURL(c);\n};\ngoog.dom.safe.setStyle = function(a, b) {\n  a.style.cssText = goog.html.SafeStyle.unwrap(b);\n};\ngoog.dom.safe.documentWrite = function(a, b) {\n  a.write(goog.html.SafeHtml.unwrapTrustedHTML(b));\n};\ngoog.dom.safe.setAnchorHref = function(a, b) {\n  goog.dom.asserts.assertIsHTMLAnchorElement(a);\n  var c = b instanceof goog.html.SafeUrl ? b : goog.html.SafeUrl.sanitizeAssertUnchanged(b);\n  a.href = goog.html.SafeUrl.unwrapTrustedURL(c);\n};\ngoog.dom.safe.setImageSrc = function(a, b) {\n  goog.dom.asserts.assertIsHTMLImageElement(a);\n  if (b instanceof goog.html.SafeUrl) {\n    var c = b;\n  } else {\n    c = /^data:image\\//i.test(b), c = goog.html.SafeUrl.sanitizeAssertUnchanged(b, c);\n  }\n  a.src = goog.html.SafeUrl.unwrapTrustedURL(c);\n};\ngoog.dom.safe.setAudioSrc = function(a, b) {\n  goog.dom.asserts.assertIsHTMLAudioElement(a);\n  if (b instanceof goog.html.SafeUrl) {\n    var c = b;\n  } else {\n    c = /^data:audio\\//i.test(b), c = goog.html.SafeUrl.sanitizeAssertUnchanged(b, c);\n  }\n  a.src = goog.html.SafeUrl.unwrapTrustedURL(c);\n};\ngoog.dom.safe.setVideoSrc = function(a, b) {\n  goog.dom.asserts.assertIsHTMLVideoElement(a);\n  if (b instanceof goog.html.SafeUrl) {\n    var c = b;\n  } else {\n    c = /^data:video\\//i.test(b), c = goog.html.SafeUrl.sanitizeAssertUnchanged(b, c);\n  }\n  a.src = goog.html.SafeUrl.unwrapTrustedURL(c);\n};\ngoog.dom.safe.setEmbedSrc = function(a, b) {\n  goog.dom.asserts.assertIsHTMLEmbedElement(a);\n  a.src = goog.html.TrustedResourceUrl.unwrapTrustedScriptURL(b);\n};\ngoog.dom.safe.setFrameSrc = function(a, b) {\n  goog.dom.asserts.assertIsHTMLFrameElement(a);\n  a.src = goog.html.TrustedResourceUrl.unwrapTrustedURL(b);\n};\ngoog.dom.safe.setIframeSrc = function(a, b) {\n  goog.dom.asserts.assertIsHTMLIFrameElement(a);\n  a.src = goog.html.TrustedResourceUrl.unwrapTrustedURL(b);\n};\ngoog.dom.safe.setIframeSrcdoc = function(a, b) {\n  goog.dom.asserts.assertIsHTMLIFrameElement(a);\n  a.srcdoc = goog.html.SafeHtml.unwrapTrustedHTML(b);\n};\ngoog.dom.safe.setLinkHrefAndRel = function(a, b, c) {\n  goog.dom.asserts.assertIsHTMLLinkElement(a);\n  a.rel = c;\n  goog.string.internal.caseInsensitiveContains(c, \"stylesheet\") ? (goog.asserts.assert(b instanceof goog.html.TrustedResourceUrl, 'URL must be TrustedResourceUrl because \"rel\" contains \"stylesheet\"'), a.href = goog.html.TrustedResourceUrl.unwrapTrustedURL(b)) : a.href = b instanceof goog.html.TrustedResourceUrl ? goog.html.TrustedResourceUrl.unwrapTrustedURL(b) : b instanceof goog.html.SafeUrl ? goog.html.SafeUrl.unwrapTrustedURL(b) : goog.html.SafeUrl.unwrapTrustedURL(goog.html.SafeUrl.sanitizeAssertUnchanged(b));\n};\ngoog.dom.safe.setObjectData = function(a, b) {\n  goog.dom.asserts.assertIsHTMLObjectElement(a);\n  a.data = goog.html.TrustedResourceUrl.unwrapTrustedScriptURL(b);\n};\ngoog.dom.safe.setScriptSrc = function(a, b) {\n  goog.dom.asserts.assertIsHTMLScriptElement(a);\n  a.src = goog.html.TrustedResourceUrl.unwrapTrustedScriptURL(b);\n  var c = goog.getScriptNonce();\n  c && a.setAttribute(\"nonce\", c);\n};\ngoog.dom.safe.setScriptContent = function(a, b) {\n  goog.dom.asserts.assertIsHTMLScriptElement(a);\n  a.text = goog.html.SafeScript.unwrapTrustedScript(b);\n  var c = goog.getScriptNonce();\n  c && a.setAttribute(\"nonce\", c);\n};\ngoog.dom.safe.setLocationHref = function(a, b) {\n  goog.dom.asserts.assertIsLocation(a);\n  var c = b instanceof goog.html.SafeUrl ? b : goog.html.SafeUrl.sanitizeAssertUnchanged(b);\n  a.href = goog.html.SafeUrl.unwrapTrustedURL(c);\n};\ngoog.dom.safe.assignLocation = function(a, b) {\n  goog.dom.asserts.assertIsLocation(a);\n  var c = b instanceof goog.html.SafeUrl ? b : goog.html.SafeUrl.sanitizeAssertUnchanged(b);\n  a.assign(goog.html.SafeUrl.unwrapTrustedURL(c));\n};\ngoog.dom.safe.replaceLocation = function(a, b) {\n  goog.dom.asserts.assertIsLocation(a);\n  var c = b instanceof goog.html.SafeUrl ? b : goog.html.SafeUrl.sanitizeAssertUnchanged(b);\n  a.replace(goog.html.SafeUrl.unwrapTrustedURL(c));\n};\ngoog.dom.safe.openInWindow = function(a, b, c, d, e) {\n  a = a instanceof goog.html.SafeUrl ? a : goog.html.SafeUrl.sanitizeAssertUnchanged(a);\n  return (b || goog.global).open(goog.html.SafeUrl.unwrapTrustedURL(a), c ? goog.string.Const.unwrap(c) : \"\", d, e);\n};\ngoog.dom.safe.parseFromStringHtml = function(a, b) {\n  return goog.dom.safe.parseFromString(a, b, \"text/html\");\n};\ngoog.dom.safe.parseFromString = function(a, b, c) {\n  return a.parseFromString(goog.html.SafeHtml.unwrapTrustedHTML(b), c);\n};\ngoog.dom.safe.createImageFromBlob = function(a) {\n  if (!/^image\\/.*/g.test(a.type)) {\n    throw Error(\"goog.dom.safe.createImageFromBlob only accepts MIME type image/.*.\");\n  }\n  var b = goog.global.URL.createObjectURL(a);\n  a = new goog.global.Image;\n  a.onload = function() {\n    goog.global.URL.revokeObjectURL(b);\n  };\n  goog.dom.safe.setImageSrc(a, goog.html.uncheckedconversions.safeUrlFromStringKnownToSatisfyTypeContract(goog.string.Const.from(\"Image blob URL.\"), b));\n  return a;\n};\ngoog.string.DETECT_DOUBLE_ESCAPING = !1;\ngoog.string.FORCE_NON_DOM_HTML_UNESCAPING = !1;\ngoog.string.Unicode = {NBSP:\"\\u00a0\"};\ngoog.string.startsWith = goog.string.internal.startsWith;\ngoog.string.endsWith = goog.string.internal.endsWith;\ngoog.string.caseInsensitiveStartsWith = goog.string.internal.caseInsensitiveStartsWith;\ngoog.string.caseInsensitiveEndsWith = goog.string.internal.caseInsensitiveEndsWith;\ngoog.string.caseInsensitiveEquals = goog.string.internal.caseInsensitiveEquals;\ngoog.string.subs = function(a, b) {\n  for (var c = a.split(\"%s\"), d = \"\", e = Array.prototype.slice.call(arguments, 1); e.length && 1 < c.length;) {\n    d += c.shift() + e.shift();\n  }\n  return d + c.join(\"%s\");\n};\ngoog.string.collapseWhitespace = function(a) {\n  return a.replace(/[\\s\\xa0]+/g, \" \").replace(/^\\s+|\\s+$/g, \"\");\n};\ngoog.string.isEmptyOrWhitespace = goog.string.internal.isEmptyOrWhitespace;\ngoog.string.isEmptyString = function(a) {\n  return 0 == a.length;\n};\ngoog.string.isEmpty = goog.string.isEmptyOrWhitespace;\ngoog.string.isEmptyOrWhitespaceSafe = function(a) {\n  return goog.string.isEmptyOrWhitespace(goog.string.makeSafe(a));\n};\ngoog.string.isEmptySafe = goog.string.isEmptyOrWhitespaceSafe;\ngoog.string.isBreakingWhitespace = function(a) {\n  return !/[^\\t\\n\\r ]/.test(a);\n};\ngoog.string.isAlpha = function(a) {\n  return !/[^a-zA-Z]/.test(a);\n};\ngoog.string.isNumeric = function(a) {\n  return !/[^0-9]/.test(a);\n};\ngoog.string.isAlphaNumeric = function(a) {\n  return !/[^a-zA-Z0-9]/.test(a);\n};\ngoog.string.isSpace = function(a) {\n  return \" \" == a;\n};\ngoog.string.isUnicodeChar = function(a) {\n  return 1 == a.length && \" \" <= a && \"~\" >= a || \"\\u0080\" <= a && \"\\ufffd\" >= a;\n};\ngoog.string.stripNewlines = function(a) {\n  return a.replace(/(\\r\\n|\\r|\\n)+/g, \" \");\n};\ngoog.string.canonicalizeNewlines = function(a) {\n  return a.replace(/(\\r\\n|\\r|\\n)/g, \"\\n\");\n};\ngoog.string.normalizeWhitespace = function(a) {\n  return a.replace(/\\xa0|\\s/g, \" \");\n};\ngoog.string.normalizeSpaces = function(a) {\n  return a.replace(/\\xa0|[ \\t]+/g, \" \");\n};\ngoog.string.collapseBreakingSpaces = function(a) {\n  return a.replace(/[\\t\\r\\n ]+/g, \" \").replace(/^[\\t\\r\\n ]+|[\\t\\r\\n ]+$/g, \"\");\n};\ngoog.string.trim = goog.string.internal.trim;\ngoog.string.trimLeft = function(a) {\n  return a.replace(/^[\\s\\xa0]+/, \"\");\n};\ngoog.string.trimRight = function(a) {\n  return a.replace(/[\\s\\xa0]+$/, \"\");\n};\ngoog.string.caseInsensitiveCompare = goog.string.internal.caseInsensitiveCompare;\ngoog.string.numberAwareCompare_ = function(a, b, c) {\n  if (a == b) {\n    return 0;\n  }\n  if (!a) {\n    return -1;\n  }\n  if (!b) {\n    return 1;\n  }\n  for (var d = a.toLowerCase().match(c), e = b.toLowerCase().match(c), f = Math.min(d.length, e.length), g = 0; g < f; g++) {\n    c = d[g];\n    var h = e[g];\n    if (c != h) {\n      return a = parseInt(c, 10), !isNaN(a) && (b = parseInt(h, 10), !isNaN(b) && a - b) ? a - b : c < h ? -1 : 1;\n    }\n  }\n  return d.length != e.length ? d.length - e.length : a < b ? -1 : 1;\n};\ngoog.string.intAwareCompare = function(a, b) {\n  return goog.string.numberAwareCompare_(a, b, /\\d+|\\D+/g);\n};\ngoog.string.floatAwareCompare = function(a, b) {\n  return goog.string.numberAwareCompare_(a, b, /\\d+|\\.\\d+|\\D+/g);\n};\ngoog.string.numerateCompare = goog.string.floatAwareCompare;\ngoog.string.urlEncode = function(a) {\n  return encodeURIComponent(String(a));\n};\ngoog.string.urlDecode = function(a) {\n  return decodeURIComponent(a.replace(/\\+/g, \" \"));\n};\ngoog.string.newLineToBr = goog.string.internal.newLineToBr;\ngoog.string.htmlEscape = function(a, b) {\n  a = goog.string.internal.htmlEscape(a, b);\n  goog.string.DETECT_DOUBLE_ESCAPING && (a = a.replace(goog.string.E_RE_, \"&#101;\"));\n  return a;\n};\ngoog.string.E_RE_ = /e/g;\ngoog.string.unescapeEntities = function(a) {\n  return goog.string.contains(a, \"&\") ? !goog.string.FORCE_NON_DOM_HTML_UNESCAPING && \"document\" in goog.global ? goog.string.unescapeEntitiesUsingDom_(a) : goog.string.unescapePureXmlEntities_(a) : a;\n};\ngoog.string.unescapeEntitiesWithDocument = function(a, b) {\n  return goog.string.contains(a, \"&\") ? goog.string.unescapeEntitiesUsingDom_(a, b) : a;\n};\ngoog.string.unescapeEntitiesUsingDom_ = function(a, b) {\n  var c = {\"&amp;\":\"&\", \"&lt;\":\"<\", \"&gt;\":\">\", \"&quot;\":'\"'};\n  var d = b ? b.createElement(\"div\") : goog.global.document.createElement(\"div\");\n  return a.replace(goog.string.HTML_ENTITY_PATTERN_, function(a, b) {\n    var e = c[a];\n    if (e) {\n      return e;\n    }\n    if (\"#\" == b.charAt(0)) {\n      var f = Number(\"0\" + b.substr(1));\n      isNaN(f) || (e = String.fromCharCode(f));\n    }\n    e || (goog.dom.safe.setInnerHtml(d, goog.html.uncheckedconversions.safeHtmlFromStringKnownToSatisfyTypeContract(goog.string.Const.from(\"Single HTML entity.\"), a + \" \")), e = d.firstChild.nodeValue.slice(0, -1));\n    return c[a] = e;\n  });\n};\ngoog.string.unescapePureXmlEntities_ = function(a) {\n  return a.replace(/&([^;]+);/g, function(a, c) {\n    switch(c) {\n      case \"amp\":\n        return \"&\";\n      case \"lt\":\n        return \"<\";\n      case \"gt\":\n        return \">\";\n      case \"quot\":\n        return '\"';\n      default:\n        if (\"#\" == c.charAt(0)) {\n          var b = Number(\"0\" + c.substr(1));\n          if (!isNaN(b)) {\n            return String.fromCharCode(b);\n          }\n        }\n        return a;\n    }\n  });\n};\ngoog.string.HTML_ENTITY_PATTERN_ = /&([^;\\s<&]+);?/g;\ngoog.string.whitespaceEscape = function(a, b) {\n  return goog.string.newLineToBr(a.replace(/  /g, \" &#160;\"), b);\n};\ngoog.string.preserveSpaces = function(a) {\n  return a.replace(/(^|[\\n ]) /g, \"$1\" + goog.string.Unicode.NBSP);\n};\ngoog.string.stripQuotes = function(a, b) {\n  for (var c = b.length, d = 0; d < c; d++) {\n    var e = 1 == c ? b : b.charAt(d);\n    if (a.charAt(0) == e && a.charAt(a.length - 1) == e) {\n      return a.substring(1, a.length - 1);\n    }\n  }\n  return a;\n};\ngoog.string.truncate = function(a, b, c) {\n  c && (a = goog.string.unescapeEntities(a));\n  a.length > b && (a = a.substring(0, b - 3) + \"...\");\n  c && (a = goog.string.htmlEscape(a));\n  return a;\n};\ngoog.string.truncateMiddle = function(a, b, c, d) {\n  c && (a = goog.string.unescapeEntities(a));\n  if (d && a.length > b) {\n    d > b && (d = b);\n    var e = a.length - d;\n    a = a.substring(0, b - d) + \"...\" + a.substring(e);\n  } else {\n    a.length > b && (d = Math.floor(b / 2), e = a.length - d, a = a.substring(0, d + b % 2) + \"...\" + a.substring(e));\n  }\n  c && (a = goog.string.htmlEscape(a));\n  return a;\n};\ngoog.string.specialEscapeChars_ = {\"\\x00\":\"\\\\0\", \"\\b\":\"\\\\b\", \"\\f\":\"\\\\f\", \"\\n\":\"\\\\n\", \"\\r\":\"\\\\r\", \"\\t\":\"\\\\t\", \"\\x0B\":\"\\\\x0B\", '\"':'\\\\\"', \"\\\\\":\"\\\\\\\\\", \"<\":\"\\\\u003C\"};\ngoog.string.jsEscapeCache_ = {\"'\":\"\\\\'\"};\ngoog.string.quote = function(a) {\n  a = String(a);\n  for (var b = ['\"'], c = 0; c < a.length; c++) {\n    var d = a.charAt(c), e = d.charCodeAt(0);\n    b[c + 1] = goog.string.specialEscapeChars_[d] || (31 < e && 127 > e ? d : goog.string.escapeChar(d));\n  }\n  b.push('\"');\n  return b.join(\"\");\n};\ngoog.string.escapeString = function(a) {\n  for (var b = [], c = 0; c < a.length; c++) {\n    b[c] = goog.string.escapeChar(a.charAt(c));\n  }\n  return b.join(\"\");\n};\ngoog.string.escapeChar = function(a) {\n  if (a in goog.string.jsEscapeCache_) {\n    return goog.string.jsEscapeCache_[a];\n  }\n  if (a in goog.string.specialEscapeChars_) {\n    return goog.string.jsEscapeCache_[a] = goog.string.specialEscapeChars_[a];\n  }\n  var b = a.charCodeAt(0);\n  if (31 < b && 127 > b) {\n    var c = a;\n  } else {\n    if (256 > b) {\n      if (c = \"\\\\x\", 16 > b || 256 < b) {\n        c += \"0\";\n      }\n    } else {\n      c = \"\\\\u\", 4096 > b && (c += \"0\");\n    }\n    c += b.toString(16).toUpperCase();\n  }\n  return goog.string.jsEscapeCache_[a] = c;\n};\ngoog.string.contains = goog.string.internal.contains;\ngoog.string.caseInsensitiveContains = goog.string.internal.caseInsensitiveContains;\ngoog.string.countOf = function(a, b) {\n  return a && b ? a.split(b).length - 1 : 0;\n};\ngoog.string.removeAt = function(a, b, c) {\n  var d = a;\n  0 <= b && b < a.length && 0 < c && (d = a.substr(0, b) + a.substr(b + c, a.length - b - c));\n  return d;\n};\ngoog.string.remove = function(a, b) {\n  return a.replace(b, \"\");\n};\ngoog.string.removeAll = function(a, b) {\n  var c = new RegExp(goog.string.regExpEscape(b), \"g\");\n  return a.replace(c, \"\");\n};\ngoog.string.replaceAll = function(a, b, c) {\n  b = new RegExp(goog.string.regExpEscape(b), \"g\");\n  return a.replace(b, c.replace(/\\$/g, \"$$$$\"));\n};\ngoog.string.regExpEscape = function(a) {\n  return String(a).replace(/([-()\\[\\]{}+?*.$\\^|,:#<!\\\\])/g, \"\\\\$1\").replace(/\\x08/g, \"\\\\x08\");\n};\ngoog.string.repeat = String.prototype.repeat ? function(a, b) {\n  return a.repeat(b);\n} : function(a, b) {\n  return Array(b + 1).join(a);\n};\ngoog.string.padNumber = function(a, b, c) {\n  a = void 0 !== c ? a.toFixed(c) : String(a);\n  c = a.indexOf(\".\");\n  -1 == c && (c = a.length);\n  return goog.string.repeat(\"0\", Math.max(0, b - c)) + a;\n};\ngoog.string.makeSafe = function(a) {\n  return null == a ? \"\" : String(a);\n};\ngoog.string.buildString = function(a) {\n  return Array.prototype.join.call(arguments, \"\");\n};\ngoog.string.getRandomString = function() {\n  return Math.floor(2147483648 * Math.random()).toString(36) + Math.abs(Math.floor(2147483648 * Math.random()) ^ goog.now()).toString(36);\n};\ngoog.string.compareVersions = goog.string.internal.compareVersions;\ngoog.string.hashCode = function(a) {\n  for (var b = 0, c = 0; c < a.length; ++c) {\n    b = 31 * b + a.charCodeAt(c) >>> 0;\n  }\n  return b;\n};\ngoog.string.uniqueStringCounter_ = 2147483648 * Math.random() | 0;\ngoog.string.createUniqueString = function() {\n  return \"goog_\" + goog.string.uniqueStringCounter_++;\n};\ngoog.string.toNumber = function(a) {\n  var b = Number(a);\n  return 0 == b && goog.string.isEmptyOrWhitespace(a) ? NaN : b;\n};\ngoog.string.isLowerCamelCase = function(a) {\n  return /^[a-z]+([A-Z][a-z]*)*$/.test(a);\n};\ngoog.string.isUpperCamelCase = function(a) {\n  return /^([A-Z][a-z]*)+$/.test(a);\n};\ngoog.string.toCamelCase = function(a) {\n  return String(a).replace(/\\-([a-z])/g, function(a, c) {\n    return c.toUpperCase();\n  });\n};\ngoog.string.toSelectorCase = function(a) {\n  return String(a).replace(/([A-Z])/g, \"-$1\").toLowerCase();\n};\ngoog.string.toTitleCase = function(a, b) {\n  var c = \"string\" === typeof b ? goog.string.regExpEscape(b) : \"\\\\s\";\n  return a.replace(new RegExp(\"(^\" + (c ? \"|[\" + c + \"]+\" : \"\") + \")([a-z])\", \"g\"), function(a, b, c) {\n    return b + c.toUpperCase();\n  });\n};\ngoog.string.capitalize = function(a) {\n  return String(a.charAt(0)).toUpperCase() + String(a.substr(1)).toLowerCase();\n};\ngoog.string.parseInt = function(a) {\n  isFinite(a) && (a = String(a));\n  return \"string\" === typeof a ? /^\\s*-?0x/i.test(a) ? parseInt(a, 16) : parseInt(a, 10) : NaN;\n};\ngoog.string.splitLimit = function(a, b, c) {\n  a = a.split(b);\n  for (var d = []; 0 < c && a.length;) {\n    d.push(a.shift()), c--;\n  }\n  a.length && d.push(a.join(b));\n  return d;\n};\ngoog.string.lastComponent = function(a, b) {\n  if (b) {\n    \"string\" == typeof b && (b = [b]);\n  } else {\n    return a;\n  }\n  for (var c = -1, d = 0; d < b.length; d++) {\n    if (\"\" != b[d]) {\n      var e = a.lastIndexOf(b[d]);\n      e > c && (c = e);\n    }\n  }\n  return -1 == c ? a : a.slice(c + 1);\n};\ngoog.string.editDistance = function(a, b) {\n  var c = [], d = [];\n  if (a == b) {\n    return 0;\n  }\n  if (!a.length || !b.length) {\n    return Math.max(a.length, b.length);\n  }\n  for (var e = 0; e < b.length + 1; e++) {\n    c[e] = e;\n  }\n  for (e = 0; e < a.length; e++) {\n    d[0] = e + 1;\n    for (var f = 0; f < b.length; f++) {\n      d[f + 1] = Math.min(d[f] + 1, c[f + 1] + 1, c[f] + Number(a[e] != b[f]));\n    }\n    for (f = 0; f < c.length; f++) {\n      c[f] = d[f];\n    }\n  }\n  return d[b.length];\n};\ngoog.proto2 = {};\ngoog.proto2.FieldDescriptor = function(a, b, c) {\n  this.parent_ = a;\n  goog.asserts.assert(goog.string.isNumeric(b));\n  this.tag_ = b;\n  this.name_ = c.name;\n  this.isPacked_ = !!c.packed;\n  this.isRepeated_ = !!c.repeated;\n  this.isRequired_ = !!c.required;\n  this.fieldType_ = c.fieldType;\n  this.nativeType_ = c.type;\n  this.deserializationConversionPermitted_ = !1;\n  switch(this.fieldType_) {\n    case goog.proto2.FieldDescriptor.FieldType.INT64:\n    case goog.proto2.FieldDescriptor.FieldType.UINT64:\n    case goog.proto2.FieldDescriptor.FieldType.FIXED64:\n    case goog.proto2.FieldDescriptor.FieldType.SFIXED64:\n    case goog.proto2.FieldDescriptor.FieldType.SINT64:\n    case goog.proto2.FieldDescriptor.FieldType.FLOAT:\n    case goog.proto2.FieldDescriptor.FieldType.DOUBLE:\n      this.deserializationConversionPermitted_ = !0;\n  }\n  this.defaultValue_ = c.defaultValue;\n};\ngoog.proto2.FieldDescriptor.FieldType = {DOUBLE:1, FLOAT:2, INT64:3, UINT64:4, INT32:5, FIXED64:6, FIXED32:7, BOOL:8, STRING:9, GROUP:10, MESSAGE:11, BYTES:12, UINT32:13, ENUM:14, SFIXED32:15, SFIXED64:16, SINT32:17, SINT64:18};\ngoog.proto2.FieldDescriptor.prototype.getTag = function() {\n  return this.tag_;\n};\ngoog.proto2.FieldDescriptor.prototype.getContainingType = function() {\n  return this.parent_.prototype.getDescriptor();\n};\ngoog.proto2.FieldDescriptor.prototype.getName = function() {\n  return this.name_;\n};\ngoog.proto2.FieldDescriptor.prototype.getDefaultValue = function() {\n  if (void 0 === this.defaultValue_) {\n    var a = this.nativeType_;\n    if (a === Boolean) {\n      this.defaultValue_ = !1;\n    } else {\n      if (a === Number) {\n        this.defaultValue_ = 0;\n      } else {\n        if (a === String) {\n          this.defaultValue_ = this.deserializationConversionPermitted_ ? \"0\" : \"\";\n        } else {\n          return new a;\n        }\n      }\n    }\n  }\n  return this.defaultValue_;\n};\ngoog.proto2.FieldDescriptor.prototype.getFieldType = function() {\n  return this.fieldType_;\n};\ngoog.proto2.FieldDescriptor.prototype.getNativeType = function() {\n  return this.nativeType_;\n};\ngoog.proto2.FieldDescriptor.prototype.deserializationConversionPermitted = function() {\n  return this.deserializationConversionPermitted_;\n};\ngoog.proto2.FieldDescriptor.prototype.getFieldMessageType = function() {\n  return this.nativeType_.prototype.getDescriptor();\n};\ngoog.proto2.FieldDescriptor.prototype.isCompositeType = function() {\n  return this.fieldType_ == goog.proto2.FieldDescriptor.FieldType.MESSAGE || this.fieldType_ == goog.proto2.FieldDescriptor.FieldType.GROUP;\n};\ngoog.proto2.FieldDescriptor.prototype.isPacked = function() {\n  return this.isPacked_;\n};\ngoog.proto2.FieldDescriptor.prototype.isRepeated = function() {\n  return this.isRepeated_;\n};\ngoog.proto2.FieldDescriptor.prototype.isRequired = function() {\n  return this.isRequired_;\n};\ngoog.proto2.FieldDescriptor.prototype.isOptional = function() {\n  return !this.isRepeated_ && !this.isRequired_;\n};\ngoog.proto2.Descriptor = function(a, b, c) {\n  this.messageType_ = a;\n  this.name_ = b.name || null;\n  this.fullName_ = b.fullName || null;\n  this.containingType_ = b.containingType;\n  this.fields_ = {};\n  for (a = 0; a < c.length; a++) {\n    b = c[a], this.fields_[b.getTag()] = b;\n  }\n};\ngoog.proto2.Descriptor.prototype.getName = function() {\n  return this.name_;\n};\ngoog.proto2.Descriptor.prototype.getFullName = function() {\n  return this.fullName_;\n};\ngoog.proto2.Descriptor.prototype.getContainingType = function() {\n  return this.containingType_ ? this.containingType_.getDescriptor() : null;\n};\ngoog.proto2.Descriptor.prototype.getFields = function() {\n  var a = goog.object.getValues(this.fields_);\n  goog.array.sort(a, function(a, c) {\n    return a.getTag() - c.getTag();\n  });\n  return a;\n};\ngoog.proto2.Descriptor.prototype.getFieldsMap = function() {\n  return this.fields_;\n};\ngoog.proto2.Descriptor.prototype.findFieldByName = function(a) {\n  return goog.object.findValue(this.fields_, function(b, c, d) {\n    return b.getName() == a;\n  }) || null;\n};\ngoog.proto2.Descriptor.prototype.findFieldByTag = function(a) {\n  goog.asserts.assert(goog.string.isNumeric(a));\n  return this.fields_[parseInt(a, 10)] || null;\n};\ngoog.proto2.Descriptor.prototype.createMessageInstance = function() {\n  return new this.messageType_;\n};\ngoog.proto2.Message = function() {\n  this.values_ = {};\n  this.fields_ = this.getDescriptor().getFieldsMap();\n  this.deserializedFields_ = this.lazyDeserializer_ = null;\n};\ngoog.proto2.Message.FieldType = {DOUBLE:1, FLOAT:2, INT64:3, UINT64:4, INT32:5, FIXED64:6, FIXED32:7, BOOL:8, STRING:9, GROUP:10, MESSAGE:11, BYTES:12, UINT32:13, ENUM:14, SFIXED32:15, SFIXED64:16, SINT32:17, SINT64:18};\ngoog.proto2.Message.prototype.initializeForLazyDeserializer = function(a, b) {\n  this.lazyDeserializer_ = a;\n  this.values_ = b;\n  this.deserializedFields_ = {};\n};\ngoog.proto2.Message.prototype.setUnknown = function(a, b) {\n  goog.asserts.assert(!this.fields_[a], \"Field is not unknown in this message\");\n  goog.asserts.assert(1 <= a, \"Tag \" + a + ' has value \"' + b + '\" in descriptor ' + this.getDescriptor().getName());\n  goog.asserts.assert(null !== b, \"Value cannot be null\");\n  this.values_[a] = b;\n  this.deserializedFields_ && delete this.deserializedFields_[a];\n};\ngoog.proto2.Message.prototype.forEachUnknown = function(a, b) {\n  var c = b || this, d;\n  for (d in this.values_) {\n    var e = Number(d);\n    this.fields_[e] || a.call(c, e, this.values_[d]);\n  }\n};\ngoog.proto2.Message.prototype.getDescriptor = goog.abstractMethod;\ngoog.proto2.Message.prototype.has = function(a) {\n  goog.asserts.assert(a.getContainingType() == this.getDescriptor(), \"The current message does not contain the given field\");\n  return this.has$Value(a.getTag());\n};\ngoog.proto2.Message.prototype.arrayOf = function(a) {\n  goog.asserts.assert(a.getContainingType() == this.getDescriptor(), \"The current message does not contain the given field\");\n  return this.array$Values(a.getTag());\n};\ngoog.proto2.Message.prototype.countOf = function(a) {\n  goog.asserts.assert(a.getContainingType() == this.getDescriptor(), \"The current message does not contain the given field\");\n  return this.count$Values(a.getTag());\n};\ngoog.proto2.Message.prototype.get = function(a, b) {\n  goog.asserts.assert(a.getContainingType() == this.getDescriptor(), \"The current message does not contain the given field\");\n  return this.get$Value(a.getTag(), b);\n};\ngoog.proto2.Message.prototype.getOrDefault = function(a, b) {\n  goog.asserts.assert(a.getContainingType() == this.getDescriptor(), \"The current message does not contain the given field\");\n  return this.get$ValueOrDefault(a.getTag(), b);\n};\ngoog.proto2.Message.prototype.set = function(a, b) {\n  goog.asserts.assert(a.getContainingType() == this.getDescriptor(), \"The current message does not contain the given field\");\n  this.set$Value(a.getTag(), b);\n};\ngoog.proto2.Message.prototype.add = function(a, b) {\n  goog.asserts.assert(a.getContainingType() == this.getDescriptor(), \"The current message does not contain the given field\");\n  this.add$Value(a.getTag(), b);\n};\ngoog.proto2.Message.prototype.clear = function(a) {\n  goog.asserts.assert(a.getContainingType() == this.getDescriptor(), \"The current message does not contain the given field\");\n  this.clear$Field(a.getTag());\n};\ngoog.proto2.Message.prototype.equals = function(a) {\n  if (!a || this.constructor != a.constructor) {\n    return !1;\n  }\n  for (var b = this.getDescriptor().getFields(), c = 0; c < b.length; c++) {\n    var d = b[c], e = d.getTag();\n    if (this.has$Value(e) != a.has$Value(e)) {\n      return !1;\n    }\n    if (this.has$Value(e)) {\n      var f = d.isCompositeType(), g = this.getValueForTag_(e);\n      e = a.getValueForTag_(e);\n      if (d.isRepeated()) {\n        if (g.length != e.length) {\n          return !1;\n        }\n        for (d = 0; d < g.length; d++) {\n          var h = g[d], k = e[d];\n          if (f ? !h.equals(k) : h != k) {\n            return !1;\n          }\n        }\n      } else {\n        if (f ? !g.equals(e) : g != e) {\n          return !1;\n        }\n      }\n    }\n  }\n  return !0;\n};\ngoog.proto2.Message.prototype.copyFrom = function(a) {\n  goog.asserts.assert(this.constructor == a.constructor, \"The source message must have the same type.\");\n  this != a && (this.values_ = {}, this.deserializedFields_ && (this.deserializedFields_ = {}), this.mergeFrom(a));\n};\ngoog.proto2.Message.prototype.mergeFrom = function(a) {\n  goog.asserts.assert(this.constructor == a.constructor, \"The source message must have the same type.\");\n  for (var b = this.getDescriptor().getFields(), c = 0; c < b.length; c++) {\n    var d = b[c], e = d.getTag();\n    if (a.has$Value(e)) {\n      this.deserializedFields_ && delete this.deserializedFields_[d.getTag()];\n      var f = d.isCompositeType();\n      if (d.isRepeated()) {\n        d = a.array$Values(e);\n        for (var g = 0; g < d.length; g++) {\n          this.add$Value(e, f ? d[g].clone() : d[g]);\n        }\n      } else {\n        d = a.getValueForTag_(e), f ? (f = this.getValueForTag_(e)) ? f.mergeFrom(d) : this.set$Value(e, d.clone()) : this.set$Value(e, d);\n      }\n    }\n  }\n};\ngoog.proto2.Message.prototype.clone = function() {\n  var a = new this.constructor;\n  a.copyFrom(this);\n  return a;\n};\ngoog.proto2.Message.prototype.initDefaults = function(a) {\n  for (var b = this.getDescriptor().getFields(), c = 0; c < b.length; c++) {\n    var d = b[c], e = d.getTag(), f = d.isCompositeType();\n    this.has$Value(e) || d.isRepeated() || (f ? this.values_[e] = new (d.getNativeType()) : a && (this.values_[e] = d.getDefaultValue()));\n    if (f) {\n      if (d.isRepeated()) {\n        for (d = this.array$Values(e), e = 0; e < d.length; e++) {\n          d[e].initDefaults(a);\n        }\n      } else {\n        this.get$Value(e).initDefaults(a);\n      }\n    }\n  }\n};\ngoog.proto2.Message.prototype.has$Value = function(a) {\n  return null != this.values_[a];\n};\ngoog.proto2.Message.prototype.getValueForTag_ = function(a) {\n  var b = this.values_[a];\n  return null == b ? null : this.lazyDeserializer_ ? a in this.deserializedFields_ ? this.deserializedFields_[a] : (b = this.lazyDeserializer_.deserializeField(this, this.fields_[a], b), this.deserializedFields_[a] = b) : b;\n};\ngoog.proto2.Message.prototype.get$Value = function(a, b) {\n  var c = this.getValueForTag_(a);\n  if (this.fields_[a].isRepeated()) {\n    var d = b || 0;\n    goog.asserts.assert(0 <= d && d < c.length, \"Given index %s is out of bounds.  Repeated field length: %s\", d, c.length);\n    return c[d];\n  }\n  return c;\n};\ngoog.proto2.Message.prototype.get$ValueOrDefault = function(a, b) {\n  return this.has$Value(a) ? this.get$Value(a, b) : this.fields_[a].getDefaultValue();\n};\ngoog.proto2.Message.prototype.array$Values = function(a) {\n  return this.getValueForTag_(a) || [];\n};\ngoog.proto2.Message.prototype.count$Values = function(a) {\n  return this.fields_[a].isRepeated() ? this.has$Value(a) ? this.values_[a].length : 0 : this.has$Value(a) ? 1 : 0;\n};\ngoog.proto2.Message.prototype.set$Value = function(a, b) {\n  goog.asserts.ENABLE_ASSERTS && this.checkFieldType_(this.fields_[a], b);\n  this.values_[a] = b;\n  this.deserializedFields_ && (this.deserializedFields_[a] = b);\n};\ngoog.proto2.Message.prototype.add$Value = function(a, b) {\n  goog.asserts.ENABLE_ASSERTS && this.checkFieldType_(this.fields_[a], b);\n  this.values_[a] || (this.values_[a] = []);\n  this.values_[a].push(b);\n  this.deserializedFields_ && delete this.deserializedFields_[a];\n};\ngoog.proto2.Message.prototype.checkFieldType_ = function(a, b) {\n  a.getFieldType() == goog.proto2.FieldDescriptor.FieldType.ENUM ? goog.asserts.assertNumber(b) : goog.asserts.assert(Object(b).constructor == a.getNativeType());\n};\ngoog.proto2.Message.prototype.clear$Field = function(a) {\n  delete this.values_[a];\n  this.deserializedFields_ && delete this.deserializedFields_[a];\n};\ngoog.proto2.Message.createDescriptor = function(a, b) {\n  var c = [], d = b[0], e;\n  for (e in b) {\n    0 != e && c.push(new goog.proto2.FieldDescriptor(a, e, b[e]));\n  }\n  return new goog.proto2.Descriptor(a, d, c);\n};\ngoog.proto2.Serializer = function() {\n};\ngoog.proto2.Serializer.DECODE_SYMBOLIC_ENUMS = !1;\ngoog.proto2.Serializer.prototype.serialize = goog.abstractMethod;\ngoog.proto2.Serializer.prototype.getSerializedValue = function(a, b) {\n  return a.isCompositeType() ? this.serialize(b) : \"number\" !== typeof b || isFinite(b) ? b : b.toString();\n};\ngoog.proto2.Serializer.prototype.deserialize = function(a, b) {\n  var c = a.createMessageInstance();\n  this.deserializeTo(c, b);\n  goog.asserts.assert(c instanceof goog.proto2.Message);\n  return c;\n};\ngoog.proto2.Serializer.prototype.deserializeTo = goog.abstractMethod;\ngoog.proto2.Serializer.prototype.getDeserializedValue = function(a, b) {\n  if (a.isCompositeType()) {\n    return b instanceof goog.proto2.Message ? b : this.deserialize(a.getFieldMessageType(), b);\n  }\n  if (a.getFieldType() == goog.proto2.FieldDescriptor.FieldType.ENUM) {\n    if (goog.proto2.Serializer.DECODE_SYMBOLIC_ENUMS && \"string\" === typeof b) {\n      var c = a.getNativeType();\n      if (c.hasOwnProperty(b)) {\n        return c[b];\n      }\n    }\n    return \"string\" === typeof b && goog.proto2.Serializer.INTEGER_REGEX.test(b) && (c = Number(b), 0 < c) ? c : b;\n  }\n  if (!a.deserializationConversionPermitted()) {\n    return b;\n  }\n  c = a.getNativeType();\n  if (c === String) {\n    if (\"number\" === typeof b) {\n      return String(b);\n    }\n  } else {\n    if (c === Number && \"string\" === typeof b && (\"Infinity\" === b || \"-Infinity\" === b || \"NaN\" === b || goog.proto2.Serializer.INTEGER_REGEX.test(b))) {\n      return Number(b);\n    }\n  }\n  return b;\n};\ngoog.proto2.Serializer.INTEGER_REGEX = /^-?[0-9]+$/;\ngoog.proto2.LazyDeserializer = function() {\n};\ngoog.inherits(goog.proto2.LazyDeserializer, goog.proto2.Serializer);\ngoog.proto2.LazyDeserializer.prototype.deserialize = function(a, b) {\n  var c = a.createMessageInstance();\n  c.initializeForLazyDeserializer(this, b);\n  goog.asserts.assert(c instanceof goog.proto2.Message);\n  return c;\n};\ngoog.proto2.LazyDeserializer.prototype.deserializeTo = function(a, b) {\n  throw Error(\"Unimplemented\");\n};\ngoog.proto2.LazyDeserializer.prototype.deserializeField = goog.abstractMethod;\ngoog.proto2.PbLiteSerializer = function() {\n};\ngoog.inherits(goog.proto2.PbLiteSerializer, goog.proto2.LazyDeserializer);\ngoog.proto2.PbLiteSerializer.prototype.zeroIndexing_ = !1;\ngoog.proto2.PbLiteSerializer.prototype.setZeroIndexed = function(a) {\n  this.zeroIndexing_ = a;\n};\ngoog.proto2.PbLiteSerializer.prototype.serialize = function(a) {\n  for (var b = a.getDescriptor().getFields(), c = [], d = this.zeroIndexing_, e = 0; e < b.length; e++) {\n    var f = b[e];\n    if (a.has(f)) {\n      var g = f.getTag();\n      g = d ? g - 1 : g;\n      if (f.isRepeated()) {\n        c[g] = [];\n        for (var h = 0; h < a.countOf(f); h++) {\n          c[g][h] = this.getSerializedValue(f, a.get(f, h));\n        }\n      } else {\n        c[g] = this.getSerializedValue(f, a.get(f));\n      }\n    }\n  }\n  a.forEachUnknown(function(a, b) {\n    c[d ? a - 1 : a] = b;\n  });\n  return c;\n};\ngoog.proto2.PbLiteSerializer.prototype.deserializeField = function(a, b, c) {\n  if (null == c) {\n    return c;\n  }\n  if (b.isRepeated()) {\n    a = [];\n    goog.asserts.assert(goog.isArray(c), \"Value must be array: %s\", c);\n    for (var d = 0; d < c.length; d++) {\n      a[d] = this.getDeserializedValue(b, c[d]);\n    }\n    return a;\n  }\n  return this.getDeserializedValue(b, c);\n};\ngoog.proto2.PbLiteSerializer.prototype.getSerializedValue = function(a, b) {\n  return a.getFieldType() == goog.proto2.FieldDescriptor.FieldType.BOOL ? b ? 1 : 0 : goog.proto2.Serializer.prototype.getSerializedValue.apply(this, arguments);\n};\ngoog.proto2.PbLiteSerializer.prototype.getDeserializedValue = function(a, b) {\n  return a.getFieldType() == goog.proto2.FieldDescriptor.FieldType.BOOL ? (goog.asserts.assert(\"number\" === typeof b || \"boolean\" === typeof b, \"Value is expected to be a number or boolean\"), !!b) : goog.proto2.Serializer.prototype.getDeserializedValue.apply(this, arguments);\n};\ngoog.proto2.PbLiteSerializer.prototype.deserialize = function(a, b) {\n  var c = b;\n  if (this.zeroIndexing_) {\n    c = [];\n    for (var d in b) {\n      c[parseInt(d, 10) + 1] = b[d];\n    }\n  }\n  return goog.proto2.PbLiteSerializer.superClass_.deserialize.call(this, a, c);\n};\ngoog.labs.userAgent.engine = {};\ngoog.labs.userAgent.engine.isPresto = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Presto\");\n};\ngoog.labs.userAgent.engine.isTrident = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Trident\") || goog.labs.userAgent.util.matchUserAgent(\"MSIE\");\n};\ngoog.labs.userAgent.engine.isEdge = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Edge\");\n};\ngoog.labs.userAgent.engine.isWebKit = function() {\n  return goog.labs.userAgent.util.matchUserAgentIgnoreCase(\"WebKit\") && !goog.labs.userAgent.engine.isEdge();\n};\ngoog.labs.userAgent.engine.isGecko = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Gecko\") && !goog.labs.userAgent.engine.isWebKit() && !goog.labs.userAgent.engine.isTrident() && !goog.labs.userAgent.engine.isEdge();\n};\ngoog.labs.userAgent.engine.getVersion = function() {\n  var a = goog.labs.userAgent.util.getUserAgent();\n  if (a) {\n    a = goog.labs.userAgent.util.extractVersionTuples(a);\n    var b = goog.labs.userAgent.engine.getEngineTuple_(a);\n    if (b) {\n      return \"Gecko\" == b[0] ? goog.labs.userAgent.engine.getVersionForKey_(a, \"Firefox\") : b[1];\n    }\n    a = a[0];\n    var c;\n    if (a && (c = a[2]) && (c = /Trident\\/([^\\s;]+)/.exec(c))) {\n      return c[1];\n    }\n  }\n  return \"\";\n};\ngoog.labs.userAgent.engine.getEngineTuple_ = function(a) {\n  if (!goog.labs.userAgent.engine.isEdge()) {\n    return a[1];\n  }\n  for (var b = 0; b < a.length; b++) {\n    var c = a[b];\n    if (\"Edge\" == c[0]) {\n      return c;\n    }\n  }\n};\ngoog.labs.userAgent.engine.isVersionOrHigher = function(a) {\n  return 0 <= goog.string.compareVersions(goog.labs.userAgent.engine.getVersion(), a);\n};\ngoog.labs.userAgent.engine.getVersionForKey_ = function(a, b) {\n  var c = goog.array.find(a, function(a) {\n    return b == a[0];\n  });\n  return c && c[1] || \"\";\n};\ngoog.labs.userAgent.platform = {};\ngoog.labs.userAgent.platform.isAndroid = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Android\");\n};\ngoog.labs.userAgent.platform.isIpod = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"iPod\");\n};\ngoog.labs.userAgent.platform.isIphone = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"iPhone\") && !goog.labs.userAgent.util.matchUserAgent(\"iPod\") && !goog.labs.userAgent.util.matchUserAgent(\"iPad\");\n};\ngoog.labs.userAgent.platform.isIpad = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"iPad\");\n};\ngoog.labs.userAgent.platform.isIos = function() {\n  return goog.labs.userAgent.platform.isIphone() || goog.labs.userAgent.platform.isIpad() || goog.labs.userAgent.platform.isIpod();\n};\ngoog.labs.userAgent.platform.isMacintosh = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Macintosh\");\n};\ngoog.labs.userAgent.platform.isLinux = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Linux\");\n};\ngoog.labs.userAgent.platform.isWindows = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Windows\");\n};\ngoog.labs.userAgent.platform.isChromeOS = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"CrOS\");\n};\ngoog.labs.userAgent.platform.isChromecast = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"CrKey\");\n};\ngoog.labs.userAgent.platform.isKaiOS = function() {\n  return goog.labs.userAgent.util.matchUserAgentIgnoreCase(\"KaiOS\");\n};\ngoog.labs.userAgent.platform.isGo2Phone = function() {\n  return goog.labs.userAgent.util.matchUserAgentIgnoreCase(\"GAFP\");\n};\ngoog.labs.userAgent.platform.getVersion = function() {\n  var a = goog.labs.userAgent.util.getUserAgent(), b = \"\";\n  goog.labs.userAgent.platform.isWindows() ? (b = /Windows (?:NT|Phone) ([0-9.]+)/, b = (a = b.exec(a)) ? a[1] : \"0.0\") : goog.labs.userAgent.platform.isIos() ? (b = /(?:iPhone|iPod|iPad|CPU)\\s+OS\\s+(\\S+)/, b = (a = b.exec(a)) && a[1].replace(/_/g, \".\")) : goog.labs.userAgent.platform.isMacintosh() ? (b = /Mac OS X ([0-9_.]+)/, b = (a = b.exec(a)) ? a[1].replace(/_/g, \".\") : \"10\") : goog.labs.userAgent.platform.isKaiOS() ? (b = /(?:KaiOS)\\/(\\S+)/i, b = (a = b.exec(a)) && a[1]) : goog.labs.userAgent.platform.isAndroid() ?\n  (b = /Android\\s+([^\\);]+)(\\)|;)/, b = (a = b.exec(a)) && a[1]) : goog.labs.userAgent.platform.isChromeOS() && (b = /(?:CrOS\\s+(?:i686|x86_64)\\s+([0-9.]+))/, b = (a = b.exec(a)) && a[1]);\n  return b || \"\";\n};\ngoog.labs.userAgent.platform.isVersionOrHigher = function(a) {\n  return 0 <= goog.string.compareVersions(goog.labs.userAgent.platform.getVersion(), a);\n};\ngoog.reflect = {};\ngoog.reflect.object = function(a, b) {\n  return b;\n};\ngoog.reflect.objectProperty = function(a, b) {\n  return a;\n};\ngoog.reflect.sinkValue = function(a) {\n  goog.reflect.sinkValue[\" \"](a);\n  return a;\n};\ngoog.reflect.sinkValue[\" \"] = goog.nullFunction;\ngoog.reflect.canAccessProperty = function(a, b) {\n  try {\n    return goog.reflect.sinkValue(a[b]), !0;\n  } catch (c) {\n  }\n  return !1;\n};\ngoog.reflect.cache = function(a, b, c, d) {\n  d = d ? d(b) : b;\n  return Object.prototype.hasOwnProperty.call(a, d) ? a[d] : a[d] = c(b);\n};\ngoog.userAgent = {};\ngoog.userAgent.ASSUME_IE = !1;\ngoog.userAgent.ASSUME_EDGE = !1;\ngoog.userAgent.ASSUME_GECKO = !1;\ngoog.userAgent.ASSUME_WEBKIT = !1;\ngoog.userAgent.ASSUME_MOBILE_WEBKIT = !1;\ngoog.userAgent.ASSUME_OPERA = !1;\ngoog.userAgent.ASSUME_ANY_VERSION = !1;\ngoog.userAgent.BROWSER_KNOWN_ = goog.userAgent.ASSUME_IE || goog.userAgent.ASSUME_EDGE || goog.userAgent.ASSUME_GECKO || goog.userAgent.ASSUME_MOBILE_WEBKIT || goog.userAgent.ASSUME_WEBKIT || goog.userAgent.ASSUME_OPERA;\ngoog.userAgent.getUserAgentString = function() {\n  return goog.labs.userAgent.util.getUserAgent();\n};\ngoog.userAgent.getNavigatorTyped = function() {\n  return goog.global.navigator || null;\n};\ngoog.userAgent.getNavigator = function() {\n  return goog.userAgent.getNavigatorTyped();\n};\ngoog.userAgent.OPERA = goog.userAgent.BROWSER_KNOWN_ ? goog.userAgent.ASSUME_OPERA : goog.labs.userAgent.browser.isOpera();\ngoog.userAgent.IE = goog.userAgent.BROWSER_KNOWN_ ? goog.userAgent.ASSUME_IE : goog.labs.userAgent.browser.isIE();\ngoog.userAgent.EDGE = goog.userAgent.BROWSER_KNOWN_ ? goog.userAgent.ASSUME_EDGE : goog.labs.userAgent.engine.isEdge();\ngoog.userAgent.EDGE_OR_IE = goog.userAgent.EDGE || goog.userAgent.IE;\ngoog.userAgent.GECKO = goog.userAgent.BROWSER_KNOWN_ ? goog.userAgent.ASSUME_GECKO : goog.labs.userAgent.engine.isGecko();\ngoog.userAgent.WEBKIT = goog.userAgent.BROWSER_KNOWN_ ? goog.userAgent.ASSUME_WEBKIT || goog.userAgent.ASSUME_MOBILE_WEBKIT : goog.labs.userAgent.engine.isWebKit();\ngoog.userAgent.isMobile_ = function() {\n  return goog.userAgent.WEBKIT && goog.labs.userAgent.util.matchUserAgent(\"Mobile\");\n};\ngoog.userAgent.MOBILE = goog.userAgent.ASSUME_MOBILE_WEBKIT || goog.userAgent.isMobile_();\ngoog.userAgent.SAFARI = goog.userAgent.WEBKIT;\ngoog.userAgent.determinePlatform_ = function() {\n  var a = goog.userAgent.getNavigatorTyped();\n  return a && a.platform || \"\";\n};\ngoog.userAgent.PLATFORM = goog.userAgent.determinePlatform_();\ngoog.userAgent.ASSUME_MAC = !1;\ngoog.userAgent.ASSUME_WINDOWS = !1;\ngoog.userAgent.ASSUME_LINUX = !1;\ngoog.userAgent.ASSUME_X11 = !1;\ngoog.userAgent.ASSUME_ANDROID = !1;\ngoog.userAgent.ASSUME_IPHONE = !1;\ngoog.userAgent.ASSUME_IPAD = !1;\ngoog.userAgent.ASSUME_IPOD = !1;\ngoog.userAgent.ASSUME_KAIOS = !1;\ngoog.userAgent.ASSUME_GO2PHONE = !1;\ngoog.userAgent.PLATFORM_KNOWN_ = goog.userAgent.ASSUME_MAC || goog.userAgent.ASSUME_WINDOWS || goog.userAgent.ASSUME_LINUX || goog.userAgent.ASSUME_X11 || goog.userAgent.ASSUME_ANDROID || goog.userAgent.ASSUME_IPHONE || goog.userAgent.ASSUME_IPAD || goog.userAgent.ASSUME_IPOD;\ngoog.userAgent.MAC = goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_MAC : goog.labs.userAgent.platform.isMacintosh();\ngoog.userAgent.WINDOWS = goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_WINDOWS : goog.labs.userAgent.platform.isWindows();\ngoog.userAgent.isLegacyLinux_ = function() {\n  return goog.labs.userAgent.platform.isLinux() || goog.labs.userAgent.platform.isChromeOS();\n};\ngoog.userAgent.LINUX = goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_LINUX : goog.userAgent.isLegacyLinux_();\ngoog.userAgent.isX11_ = function() {\n  var a = goog.userAgent.getNavigatorTyped();\n  return !!a && goog.string.contains(a.appVersion || \"\", \"X11\");\n};\ngoog.userAgent.X11 = goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_X11 : goog.userAgent.isX11_();\ngoog.userAgent.ANDROID = goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_ANDROID : goog.labs.userAgent.platform.isAndroid();\ngoog.userAgent.IPHONE = goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_IPHONE : goog.labs.userAgent.platform.isIphone();\ngoog.userAgent.IPAD = goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_IPAD : goog.labs.userAgent.platform.isIpad();\ngoog.userAgent.IPOD = goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_IPOD : goog.labs.userAgent.platform.isIpod();\ngoog.userAgent.IOS = goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_IPHONE || goog.userAgent.ASSUME_IPAD || goog.userAgent.ASSUME_IPOD : goog.labs.userAgent.platform.isIos();\ngoog.userAgent.KAIOS = goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_KAIOS : goog.labs.userAgent.platform.isKaiOS();\ngoog.userAgent.GO2PHONE = goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_GO2PHONE : goog.labs.userAgent.platform.isGo2Phone();\ngoog.userAgent.determineVersion_ = function() {\n  var a = \"\", b = goog.userAgent.getVersionRegexResult_();\n  b && (a = b ? b[1] : \"\");\n  return goog.userAgent.IE && (b = goog.userAgent.getDocumentMode_(), null != b && b > parseFloat(a)) ? String(b) : a;\n};\ngoog.userAgent.getVersionRegexResult_ = function() {\n  var a = goog.userAgent.getUserAgentString();\n  if (goog.userAgent.GECKO) {\n    return /rv:([^\\);]+)(\\)|;)/.exec(a);\n  }\n  if (goog.userAgent.EDGE) {\n    return /Edge\\/([\\d\\.]+)/.exec(a);\n  }\n  if (goog.userAgent.IE) {\n    return /\\b(?:MSIE|rv)[: ]([^\\);]+)(\\)|;)/.exec(a);\n  }\n  if (goog.userAgent.WEBKIT) {\n    return /WebKit\\/(\\S+)/.exec(a);\n  }\n  if (goog.userAgent.OPERA) {\n    return /(?:Version)[ \\/]?(\\S+)/.exec(a);\n  }\n};\ngoog.userAgent.getDocumentMode_ = function() {\n  var a = goog.global.document;\n  return a ? a.documentMode : void 0;\n};\ngoog.userAgent.VERSION = goog.userAgent.determineVersion_();\ngoog.userAgent.compare = function(a, b) {\n  return goog.string.compareVersions(a, b);\n};\ngoog.userAgent.isVersionOrHigherCache_ = {};\ngoog.userAgent.isVersionOrHigher = function(a) {\n  return goog.userAgent.ASSUME_ANY_VERSION || goog.reflect.cache(goog.userAgent.isVersionOrHigherCache_, a, function() {\n    return 0 <= goog.string.compareVersions(goog.userAgent.VERSION, a);\n  });\n};\ngoog.userAgent.isVersion = goog.userAgent.isVersionOrHigher;\ngoog.userAgent.isDocumentModeOrHigher = function(a) {\n  return Number(goog.userAgent.DOCUMENT_MODE) >= a;\n};\ngoog.userAgent.isDocumentMode = goog.userAgent.isDocumentModeOrHigher;\ngoog.userAgent.DOCUMENT_MODE = function() {\n  if (goog.global.document && goog.userAgent.IE) {\n    return goog.userAgent.getDocumentMode_();\n  }\n}();\ngoog.dom.BrowserFeature = {};\ngoog.dom.BrowserFeature.ASSUME_NO_OFFSCREEN_CANVAS = !1;\ngoog.dom.BrowserFeature.ASSUME_OFFSCREEN_CANVAS = !1;\ngoog.dom.BrowserFeature.detectOffscreenCanvas_ = function(a) {\n  try {\n    return !!(new self.OffscreenCanvas(0, 0)).getContext(a);\n  } catch (b) {\n  }\n  return !1;\n};\ngoog.dom.BrowserFeature.OFFSCREEN_CANVAS_2D = !goog.dom.BrowserFeature.ASSUME_NO_OFFSCREEN_CANVAS && (goog.dom.BrowserFeature.ASSUME_OFFSCREEN_CANVAS || goog.dom.BrowserFeature.detectOffscreenCanvas_(\"2d\"));\ngoog.dom.BrowserFeature.CAN_ADD_NAME_OR_TYPE_ATTRIBUTES = !goog.userAgent.IE || goog.userAgent.isDocumentModeOrHigher(9);\ngoog.dom.BrowserFeature.CAN_USE_CHILDREN_ATTRIBUTE = !goog.userAgent.GECKO && !goog.userAgent.IE || goog.userAgent.IE && goog.userAgent.isDocumentModeOrHigher(9) || goog.userAgent.GECKO && goog.userAgent.isVersionOrHigher(\"1.9.1\");\ngoog.dom.BrowserFeature.CAN_USE_INNER_TEXT = goog.userAgent.IE && !goog.userAgent.isVersionOrHigher(\"9\");\ngoog.dom.BrowserFeature.CAN_USE_PARENT_ELEMENT_PROPERTY = goog.userAgent.IE || goog.userAgent.OPERA || goog.userAgent.WEBKIT;\ngoog.dom.BrowserFeature.INNER_HTML_NEEDS_SCOPED_ELEMENT = goog.userAgent.IE;\ngoog.dom.BrowserFeature.LEGACY_IE_RANGES = goog.userAgent.IE && !goog.userAgent.isDocumentModeOrHigher(9);\ngoog.math = {};\ngoog.math.randomInt = function(a) {\n  return Math.floor(Math.random() * a);\n};\ngoog.math.uniformRandom = function(a, b) {\n  return a + Math.random() * (b - a);\n};\ngoog.math.clamp = function(a, b, c) {\n  return Math.min(Math.max(a, b), c);\n};\ngoog.math.modulo = function(a, b) {\n  var c = a % b;\n  return 0 > c * b ? c + b : c;\n};\ngoog.math.lerp = function(a, b, c) {\n  return a + c * (b - a);\n};\ngoog.math.nearlyEquals = function(a, b, c) {\n  return Math.abs(a - b) <= (c || 0.000001);\n};\ngoog.math.standardAngle = function(a) {\n  return goog.math.modulo(a, 360);\n};\ngoog.math.standardAngleInRadians = function(a) {\n  return goog.math.modulo(a, 2 * Math.PI);\n};\ngoog.math.toRadians = function(a) {\n  return a * Math.PI / 180;\n};\ngoog.math.toDegrees = function(a) {\n  return 180 * a / Math.PI;\n};\ngoog.math.angleDx = function(a, b) {\n  return b * Math.cos(goog.math.toRadians(a));\n};\ngoog.math.angleDy = function(a, b) {\n  return b * Math.sin(goog.math.toRadians(a));\n};\ngoog.math.angle = function(a, b, c, d) {\n  return goog.math.standardAngle(goog.math.toDegrees(Math.atan2(d - b, c - a)));\n};\ngoog.math.angleDifference = function(a, b) {\n  var c = goog.math.standardAngle(b) - goog.math.standardAngle(a);\n  180 < c ? c -= 360 : -180 >= c && (c = 360 + c);\n  return c;\n};\ngoog.math.sign = function(a) {\n  return 0 < a ? 1 : 0 > a ? -1 : a;\n};\ngoog.math.longestCommonSubsequence = function(a, b, c, d) {\n  c = c || function(a, b) {\n    return a == b;\n  };\n  d = d || function(b, c) {\n    return a[b];\n  };\n  for (var e = a.length, f = b.length, g = [], h = 0; h < e + 1; h++) {\n    g[h] = [], g[h][0] = 0;\n  }\n  for (var k = 0; k < f + 1; k++) {\n    g[0][k] = 0;\n  }\n  for (h = 1; h <= e; h++) {\n    for (k = 1; k <= f; k++) {\n      c(a[h - 1], b[k - 1]) ? g[h][k] = g[h - 1][k - 1] + 1 : g[h][k] = Math.max(g[h - 1][k], g[h][k - 1]);\n    }\n  }\n  var l = [];\n  h = e;\n  for (k = f; 0 < h && 0 < k;) {\n    c(a[h - 1], b[k - 1]) ? (l.unshift(d(h - 1, k - 1)), h--, k--) : g[h - 1][k] > g[h][k - 1] ? h-- : k--;\n  }\n  return l;\n};\ngoog.math.sum = function(a) {\n  return goog.array.reduce(arguments, function(a, c) {\n    return a + c;\n  }, 0);\n};\ngoog.math.average = function(a) {\n  return goog.math.sum.apply(null, arguments) / arguments.length;\n};\ngoog.math.sampleVariance = function(a) {\n  var b = arguments.length;\n  if (2 > b) {\n    return 0;\n  }\n  var c = goog.math.average.apply(null, arguments);\n  return goog.math.sum.apply(null, goog.array.map(arguments, function(a) {\n    return Math.pow(a - c, 2);\n  })) / (b - 1);\n};\ngoog.math.standardDeviation = function(a) {\n  return Math.sqrt(goog.math.sampleVariance.apply(null, arguments));\n};\ngoog.math.isInt = function(a) {\n  return isFinite(a) && 0 == a % 1;\n};\ngoog.math.isFiniteNumber = function(a) {\n  return isFinite(a);\n};\ngoog.math.isNegativeZero = function(a) {\n  return 0 == a && 0 > 1 / a;\n};\ngoog.math.log10Floor = function(a) {\n  if (0 < a) {\n    var b = Math.round(Math.log(a) * Math.LOG10E);\n    return b - (parseFloat(\"1e\" + b) > a ? 1 : 0);\n  }\n  return 0 == a ? -Infinity : NaN;\n};\ngoog.math.safeFloor = function(a, b) {\n  goog.asserts.assert(void 0 === b || 0 < b);\n  return Math.floor(a + (b || 2e-15));\n};\ngoog.math.safeCeil = function(a, b) {\n  goog.asserts.assert(void 0 === b || 0 < b);\n  return Math.ceil(a - (b || 2e-15));\n};\ngoog.math.Coordinate = function(a, b) {\n  this.x = void 0 !== a ? a : 0;\n  this.y = void 0 !== b ? b : 0;\n};\ngoog.math.Coordinate.prototype.clone = function() {\n  return new goog.math.Coordinate(this.x, this.y);\n};\ngoog.DEBUG && (goog.math.Coordinate.prototype.toString = function() {\n  return \"(\" + this.x + \", \" + this.y + \")\";\n});\ngoog.math.Coordinate.prototype.equals = function(a) {\n  return a instanceof goog.math.Coordinate && goog.math.Coordinate.equals(this, a);\n};\ngoog.math.Coordinate.equals = function(a, b) {\n  return a == b ? !0 : a && b ? a.x == b.x && a.y == b.y : !1;\n};\ngoog.math.Coordinate.distance = function(a, b) {\n  var c = a.x - b.x, d = a.y - b.y;\n  return Math.sqrt(c * c + d * d);\n};\ngoog.math.Coordinate.magnitude = function(a) {\n  return Math.sqrt(a.x * a.x + a.y * a.y);\n};\ngoog.math.Coordinate.azimuth = function(a) {\n  return goog.math.angle(0, 0, a.x, a.y);\n};\ngoog.math.Coordinate.squaredDistance = function(a, b) {\n  var c = a.x - b.x, d = a.y - b.y;\n  return c * c + d * d;\n};\ngoog.math.Coordinate.difference = function(a, b) {\n  return new goog.math.Coordinate(a.x - b.x, a.y - b.y);\n};\ngoog.math.Coordinate.sum = function(a, b) {\n  return new goog.math.Coordinate(a.x + b.x, a.y + b.y);\n};\ngoog.math.Coordinate.prototype.ceil = function() {\n  this.x = Math.ceil(this.x);\n  this.y = Math.ceil(this.y);\n  return this;\n};\ngoog.math.Coordinate.prototype.floor = function() {\n  this.x = Math.floor(this.x);\n  this.y = Math.floor(this.y);\n  return this;\n};\ngoog.math.Coordinate.prototype.round = function() {\n  this.x = Math.round(this.x);\n  this.y = Math.round(this.y);\n  return this;\n};\ngoog.math.Coordinate.prototype.translate = function(a, b) {\n  a instanceof goog.math.Coordinate ? (this.x += a.x, this.y += a.y) : (this.x += Number(a), \"number\" === typeof b && (this.y += b));\n  return this;\n};\ngoog.math.Coordinate.prototype.scale = function(a, b) {\n  this.x *= a;\n  this.y *= \"number\" === typeof b ? b : a;\n  return this;\n};\ngoog.math.Coordinate.prototype.rotateRadians = function(a, b) {\n  var c = b || new goog.math.Coordinate(0, 0), d = this.x, e = this.y, f = Math.cos(a), g = Math.sin(a);\n  this.x = (d - c.x) * f - (e - c.y) * g + c.x;\n  this.y = (d - c.x) * g + (e - c.y) * f + c.y;\n};\ngoog.math.Coordinate.prototype.rotateDegrees = function(a, b) {\n  this.rotateRadians(goog.math.toRadians(a), b);\n};\ngoog.math.Size = function(a, b) {\n  this.width = a;\n  this.height = b;\n};\ngoog.math.Size.equals = function(a, b) {\n  return a == b ? !0 : a && b ? a.width == b.width && a.height == b.height : !1;\n};\ngoog.math.Size.prototype.clone = function() {\n  return new goog.math.Size(this.width, this.height);\n};\ngoog.DEBUG && (goog.math.Size.prototype.toString = function() {\n  return \"(\" + this.width + \" x \" + this.height + \")\";\n});\ngoog.math.Size.prototype.getLongest = function() {\n  return Math.max(this.width, this.height);\n};\ngoog.math.Size.prototype.getShortest = function() {\n  return Math.min(this.width, this.height);\n};\ngoog.math.Size.prototype.area = function() {\n  return this.width * this.height;\n};\ngoog.math.Size.prototype.perimeter = function() {\n  return 2 * (this.width + this.height);\n};\ngoog.math.Size.prototype.aspectRatio = function() {\n  return this.width / this.height;\n};\ngoog.math.Size.prototype.isEmpty = function() {\n  return !this.area();\n};\ngoog.math.Size.prototype.ceil = function() {\n  this.width = Math.ceil(this.width);\n  this.height = Math.ceil(this.height);\n  return this;\n};\ngoog.math.Size.prototype.fitsInside = function(a) {\n  return this.width <= a.width && this.height <= a.height;\n};\ngoog.math.Size.prototype.floor = function() {\n  this.width = Math.floor(this.width);\n  this.height = Math.floor(this.height);\n  return this;\n};\ngoog.math.Size.prototype.round = function() {\n  this.width = Math.round(this.width);\n  this.height = Math.round(this.height);\n  return this;\n};\ngoog.math.Size.prototype.scale = function(a, b) {\n  this.width *= a;\n  this.height *= \"number\" === typeof b ? b : a;\n  return this;\n};\ngoog.math.Size.prototype.scaleToCover = function(a) {\n  a = this.aspectRatio() <= a.aspectRatio() ? a.width / this.width : a.height / this.height;\n  return this.scale(a);\n};\ngoog.math.Size.prototype.scaleToFit = function(a) {\n  a = this.aspectRatio() > a.aspectRatio() ? a.width / this.width : a.height / this.height;\n  return this.scale(a);\n};\ngoog.dom.ASSUME_QUIRKS_MODE = !1;\ngoog.dom.ASSUME_STANDARDS_MODE = !1;\ngoog.dom.COMPAT_MODE_KNOWN_ = goog.dom.ASSUME_QUIRKS_MODE || goog.dom.ASSUME_STANDARDS_MODE;\ngoog.dom.getDomHelper = function(a) {\n  return a ? new goog.dom.DomHelper(goog.dom.getOwnerDocument(a)) : goog.dom.defaultDomHelper_ || (goog.dom.defaultDomHelper_ = new goog.dom.DomHelper);\n};\ngoog.dom.getDocument = function() {\n  return document;\n};\ngoog.dom.getElement = function(a) {\n  return goog.dom.getElementHelper_(document, a);\n};\ngoog.dom.getElementHelper_ = function(a, b) {\n  return \"string\" === typeof b ? a.getElementById(b) : b;\n};\ngoog.dom.getRequiredElement = function(a) {\n  return goog.dom.getRequiredElementHelper_(document, a);\n};\ngoog.dom.getRequiredElementHelper_ = function(a, b) {\n  goog.asserts.assertString(b);\n  var c = goog.dom.getElementHelper_(a, b);\n  return c = goog.asserts.assertElement(c, \"No element found with id: \" + b);\n};\ngoog.dom.$ = goog.dom.getElement;\ngoog.dom.getElementsByTagName = function(a, b) {\n  return (b || document).getElementsByTagName(String(a));\n};\ngoog.dom.getElementsByTagNameAndClass = function(a, b, c) {\n  return goog.dom.getElementsByTagNameAndClass_(document, a, b, c);\n};\ngoog.dom.getElementByTagNameAndClass = function(a, b, c) {\n  return goog.dom.getElementByTagNameAndClass_(document, a, b, c);\n};\ngoog.dom.getElementsByClass = function(a, b) {\n  var c = b || document;\n  return goog.dom.canUseQuerySelector_(c) ? c.querySelectorAll(\".\" + a) : goog.dom.getElementsByTagNameAndClass_(document, \"*\", a, b);\n};\ngoog.dom.getElementByClass = function(a, b) {\n  var c = b || document;\n  return (c.getElementsByClassName ? c.getElementsByClassName(a)[0] : goog.dom.getElementByTagNameAndClass_(document, \"*\", a, b)) || null;\n};\ngoog.dom.getRequiredElementByClass = function(a, b) {\n  var c = goog.dom.getElementByClass(a, b);\n  return goog.asserts.assert(c, \"No element found with className: \" + a);\n};\ngoog.dom.canUseQuerySelector_ = function(a) {\n  return !(!a.querySelectorAll || !a.querySelector);\n};\ngoog.dom.getElementsByTagNameAndClass_ = function(a, b, c, d) {\n  a = d || a;\n  b = b && \"*\" != b ? String(b).toUpperCase() : \"\";\n  if (goog.dom.canUseQuerySelector_(a) && (b || c)) {\n    return a.querySelectorAll(b + (c ? \".\" + c : \"\"));\n  }\n  if (c && a.getElementsByClassName) {\n    a = a.getElementsByClassName(c);\n    if (b) {\n      d = {};\n      for (var e = 0, f = 0, g; g = a[f]; f++) {\n        b == g.nodeName && (d[e++] = g);\n      }\n      d.length = e;\n      return d;\n    }\n    return a;\n  }\n  a = a.getElementsByTagName(b || \"*\");\n  if (c) {\n    d = {};\n    for (f = e = 0; g = a[f]; f++) {\n      b = g.className, \"function\" == typeof b.split && goog.array.contains(b.split(/\\s+/), c) && (d[e++] = g);\n    }\n    d.length = e;\n    return d;\n  }\n  return a;\n};\ngoog.dom.getElementByTagNameAndClass_ = function(a, b, c, d) {\n  var e = d || a, f = b && \"*\" != b ? String(b).toUpperCase() : \"\";\n  return goog.dom.canUseQuerySelector_(e) && (f || c) ? e.querySelector(f + (c ? \".\" + c : \"\")) : goog.dom.getElementsByTagNameAndClass_(a, b, c, d)[0] || null;\n};\ngoog.dom.$$ = goog.dom.getElementsByTagNameAndClass;\ngoog.dom.setProperties = function(a, b) {\n  goog.object.forEach(b, function(b, d) {\n    b && \"object\" == typeof b && b.implementsGoogStringTypedString && (b = b.getTypedStringValue());\n    \"style\" == d ? a.style.cssText = b : \"class\" == d ? a.className = b : \"for\" == d ? a.htmlFor = b : goog.dom.DIRECT_ATTRIBUTE_MAP_.hasOwnProperty(d) ? a.setAttribute(goog.dom.DIRECT_ATTRIBUTE_MAP_[d], b) : goog.string.startsWith(d, \"aria-\") || goog.string.startsWith(d, \"data-\") ? a.setAttribute(d, b) : a[d] = b;\n  });\n};\ngoog.dom.DIRECT_ATTRIBUTE_MAP_ = {cellpadding:\"cellPadding\", cellspacing:\"cellSpacing\", colspan:\"colSpan\", frameborder:\"frameBorder\", height:\"height\", maxlength:\"maxLength\", nonce:\"nonce\", role:\"role\", rowspan:\"rowSpan\", type:\"type\", usemap:\"useMap\", valign:\"vAlign\", width:\"width\"};\ngoog.dom.getViewportSize = function(a) {\n  return goog.dom.getViewportSize_(a || window);\n};\ngoog.dom.getViewportSize_ = function(a) {\n  a = a.document;\n  a = goog.dom.isCss1CompatMode_(a) ? a.documentElement : a.body;\n  return new goog.math.Size(a.clientWidth, a.clientHeight);\n};\ngoog.dom.getDocumentHeight = function() {\n  return goog.dom.getDocumentHeight_(window);\n};\ngoog.dom.getDocumentHeightForWindow = function(a) {\n  return goog.dom.getDocumentHeight_(a);\n};\ngoog.dom.getDocumentHeight_ = function(a) {\n  var b = a.document, c = 0;\n  if (b) {\n    c = b.body;\n    var d = b.documentElement;\n    if (!d || !c) {\n      return 0;\n    }\n    a = goog.dom.getViewportSize_(a).height;\n    if (goog.dom.isCss1CompatMode_(b) && d.scrollHeight) {\n      c = d.scrollHeight != a ? d.scrollHeight : d.offsetHeight;\n    } else {\n      b = d.scrollHeight;\n      var e = d.offsetHeight;\n      d.clientHeight != e && (b = c.scrollHeight, e = c.offsetHeight);\n      c = b > a ? b > e ? b : e : b < e ? b : e;\n    }\n  }\n  return c;\n};\ngoog.dom.getPageScroll = function(a) {\n  return goog.dom.getDomHelper((a || goog.global || window).document).getDocumentScroll();\n};\ngoog.dom.getDocumentScroll = function() {\n  return goog.dom.getDocumentScroll_(document);\n};\ngoog.dom.getDocumentScroll_ = function(a) {\n  var b = goog.dom.getDocumentScrollElement_(a);\n  a = goog.dom.getWindow_(a);\n  return goog.userAgent.IE && goog.userAgent.isVersionOrHigher(\"10\") && a.pageYOffset != b.scrollTop ? new goog.math.Coordinate(b.scrollLeft, b.scrollTop) : new goog.math.Coordinate(a.pageXOffset || b.scrollLeft, a.pageYOffset || b.scrollTop);\n};\ngoog.dom.getDocumentScrollElement = function() {\n  return goog.dom.getDocumentScrollElement_(document);\n};\ngoog.dom.getDocumentScrollElement_ = function(a) {\n  return a.scrollingElement ? a.scrollingElement : !goog.userAgent.WEBKIT && goog.dom.isCss1CompatMode_(a) ? a.documentElement : a.body || a.documentElement;\n};\ngoog.dom.getWindow = function(a) {\n  return a ? goog.dom.getWindow_(a) : window;\n};\ngoog.dom.getWindow_ = function(a) {\n  return a.parentWindow || a.defaultView;\n};\ngoog.dom.createDom = function(a, b, c) {\n  return goog.dom.createDom_(document, arguments);\n};\ngoog.dom.createDom_ = function(a, b) {\n  var c = String(b[0]), d = b[1];\n  if (!goog.dom.BrowserFeature.CAN_ADD_NAME_OR_TYPE_ATTRIBUTES && d && (d.name || d.type)) {\n    c = [\"<\", c];\n    d.name && c.push(' name=\"', goog.string.htmlEscape(d.name), '\"');\n    if (d.type) {\n      c.push(' type=\"', goog.string.htmlEscape(d.type), '\"');\n      var e = {};\n      goog.object.extend(e, d);\n      delete e.type;\n      d = e;\n    }\n    c.push(\">\");\n    c = c.join(\"\");\n  }\n  c = goog.dom.createElement_(a, c);\n  d && (\"string\" === typeof d ? c.className = d : goog.isArray(d) ? c.className = d.join(\" \") : goog.dom.setProperties(c, d));\n  2 < b.length && goog.dom.append_(a, c, b, 2);\n  return c;\n};\ngoog.dom.append_ = function(a, b, c, d) {\n  function e(c) {\n    c && b.appendChild(\"string\" === typeof c ? a.createTextNode(c) : c);\n  }\n  for (; d < c.length; d++) {\n    var f = c[d];\n    goog.isArrayLike(f) && !goog.dom.isNodeLike(f) ? goog.array.forEach(goog.dom.isNodeList(f) ? goog.array.toArray(f) : f, e) : e(f);\n  }\n};\ngoog.dom.$dom = goog.dom.createDom;\ngoog.dom.createElement = function(a) {\n  return goog.dom.createElement_(document, a);\n};\ngoog.dom.createElement_ = function(a, b) {\n  b = String(b);\n  \"application/xhtml+xml\" === a.contentType && (b = b.toLowerCase());\n  return a.createElement(b);\n};\ngoog.dom.createTextNode = function(a) {\n  return document.createTextNode(String(a));\n};\ngoog.dom.createTable = function(a, b, c) {\n  return goog.dom.createTable_(document, a, b, !!c);\n};\ngoog.dom.createTable_ = function(a, b, c, d) {\n  for (var e = goog.dom.createElement_(a, \"TABLE\"), f = e.appendChild(goog.dom.createElement_(a, \"TBODY\")), g = 0; g < b; g++) {\n    for (var h = goog.dom.createElement_(a, \"TR\"), k = 0; k < c; k++) {\n      var l = goog.dom.createElement_(a, \"TD\");\n      d && goog.dom.setTextContent(l, goog.string.Unicode.NBSP);\n      h.appendChild(l);\n    }\n    f.appendChild(h);\n  }\n  return e;\n};\ngoog.dom.constHtmlToNode = function(a) {\n  var b = goog.array.map(arguments, goog.string.Const.unwrap);\n  b = goog.html.uncheckedconversions.safeHtmlFromStringKnownToSatisfyTypeContract(goog.string.Const.from(\"Constant HTML string, that gets turned into a Node later, so it will be automatically balanced.\"), b.join(\"\"));\n  return goog.dom.safeHtmlToNode(b);\n};\ngoog.dom.safeHtmlToNode = function(a) {\n  return goog.dom.safeHtmlToNode_(document, a);\n};\ngoog.dom.safeHtmlToNode_ = function(a, b) {\n  var c = goog.dom.createElement_(a, \"DIV\");\n  goog.dom.BrowserFeature.INNER_HTML_NEEDS_SCOPED_ELEMENT ? (goog.dom.safe.setInnerHtml(c, goog.html.SafeHtml.concat(goog.html.SafeHtml.BR, b)), c.removeChild(goog.asserts.assert(c.firstChild))) : goog.dom.safe.setInnerHtml(c, b);\n  return goog.dom.childrenToNode_(a, c);\n};\ngoog.dom.childrenToNode_ = function(a, b) {\n  if (1 == b.childNodes.length) {\n    return b.removeChild(goog.asserts.assert(b.firstChild));\n  }\n  for (var c = a.createDocumentFragment(); b.firstChild;) {\n    c.appendChild(b.firstChild);\n  }\n  return c;\n};\ngoog.dom.isCss1CompatMode = function() {\n  return goog.dom.isCss1CompatMode_(document);\n};\ngoog.dom.isCss1CompatMode_ = function(a) {\n  return goog.dom.COMPAT_MODE_KNOWN_ ? goog.dom.ASSUME_STANDARDS_MODE : \"CSS1Compat\" == a.compatMode;\n};\ngoog.dom.canHaveChildren = function(a) {\n  if (a.nodeType != goog.dom.NodeType.ELEMENT) {\n    return !1;\n  }\n  switch(a.tagName) {\n    case \"APPLET\":\n    case \"AREA\":\n    case \"BASE\":\n    case \"BR\":\n    case \"COL\":\n    case \"COMMAND\":\n    case \"EMBED\":\n    case \"FRAME\":\n    case \"HR\":\n    case \"IMG\":\n    case \"INPUT\":\n    case \"IFRAME\":\n    case \"ISINDEX\":\n    case \"KEYGEN\":\n    case \"LINK\":\n    case \"NOFRAMES\":\n    case \"NOSCRIPT\":\n    case \"META\":\n    case \"OBJECT\":\n    case \"PARAM\":\n    case \"SCRIPT\":\n    case \"SOURCE\":\n    case \"STYLE\":\n    case \"TRACK\":\n    case \"WBR\":\n      return !1;\n  }\n  return !0;\n};\ngoog.dom.appendChild = function(a, b) {\n  goog.asserts.assert(null != a && null != b, \"goog.dom.appendChild expects non-null arguments\");\n  a.appendChild(b);\n};\ngoog.dom.append = function(a, b) {\n  goog.dom.append_(goog.dom.getOwnerDocument(a), a, arguments, 1);\n};\ngoog.dom.removeChildren = function(a) {\n  for (var b; b = a.firstChild;) {\n    a.removeChild(b);\n  }\n};\ngoog.dom.insertSiblingBefore = function(a, b) {\n  goog.asserts.assert(null != a && null != b, \"goog.dom.insertSiblingBefore expects non-null arguments\");\n  b.parentNode && b.parentNode.insertBefore(a, b);\n};\ngoog.dom.insertSiblingAfter = function(a, b) {\n  goog.asserts.assert(null != a && null != b, \"goog.dom.insertSiblingAfter expects non-null arguments\");\n  b.parentNode && b.parentNode.insertBefore(a, b.nextSibling);\n};\ngoog.dom.insertChildAt = function(a, b, c) {\n  goog.asserts.assert(null != a, \"goog.dom.insertChildAt expects a non-null parent\");\n  a.insertBefore(b, a.childNodes[c] || null);\n};\ngoog.dom.removeNode = function(a) {\n  return a && a.parentNode ? a.parentNode.removeChild(a) : null;\n};\ngoog.dom.replaceNode = function(a, b) {\n  goog.asserts.assert(null != a && null != b, \"goog.dom.replaceNode expects non-null arguments\");\n  var c = b.parentNode;\n  c && c.replaceChild(a, b);\n};\ngoog.dom.flattenElement = function(a) {\n  var b, c = a.parentNode;\n  if (c && c.nodeType != goog.dom.NodeType.DOCUMENT_FRAGMENT) {\n    if (a.removeNode) {\n      return a.removeNode(!1);\n    }\n    for (; b = a.firstChild;) {\n      c.insertBefore(b, a);\n    }\n    return goog.dom.removeNode(a);\n  }\n};\ngoog.dom.getChildren = function(a) {\n  return goog.dom.BrowserFeature.CAN_USE_CHILDREN_ATTRIBUTE && void 0 != a.children ? a.children : goog.array.filter(a.childNodes, function(a) {\n    return a.nodeType == goog.dom.NodeType.ELEMENT;\n  });\n};\ngoog.dom.getFirstElementChild = function(a) {\n  return void 0 !== a.firstElementChild ? a.firstElementChild : goog.dom.getNextElementNode_(a.firstChild, !0);\n};\ngoog.dom.getLastElementChild = function(a) {\n  return void 0 !== a.lastElementChild ? a.lastElementChild : goog.dom.getNextElementNode_(a.lastChild, !1);\n};\ngoog.dom.getNextElementSibling = function(a) {\n  return void 0 !== a.nextElementSibling ? a.nextElementSibling : goog.dom.getNextElementNode_(a.nextSibling, !0);\n};\ngoog.dom.getPreviousElementSibling = function(a) {\n  return void 0 !== a.previousElementSibling ? a.previousElementSibling : goog.dom.getNextElementNode_(a.previousSibling, !1);\n};\ngoog.dom.getNextElementNode_ = function(a, b) {\n  for (; a && a.nodeType != goog.dom.NodeType.ELEMENT;) {\n    a = b ? a.nextSibling : a.previousSibling;\n  }\n  return a;\n};\ngoog.dom.getNextNode = function(a) {\n  if (!a) {\n    return null;\n  }\n  if (a.firstChild) {\n    return a.firstChild;\n  }\n  for (; a && !a.nextSibling;) {\n    a = a.parentNode;\n  }\n  return a ? a.nextSibling : null;\n};\ngoog.dom.getPreviousNode = function(a) {\n  if (!a) {\n    return null;\n  }\n  if (!a.previousSibling) {\n    return a.parentNode;\n  }\n  for (a = a.previousSibling; a && a.lastChild;) {\n    a = a.lastChild;\n  }\n  return a;\n};\ngoog.dom.isNodeLike = function(a) {\n  return goog.isObject(a) && 0 < a.nodeType;\n};\ngoog.dom.isElement = function(a) {\n  return goog.isObject(a) && a.nodeType == goog.dom.NodeType.ELEMENT;\n};\ngoog.dom.isWindow = function(a) {\n  return goog.isObject(a) && a.window == a;\n};\ngoog.dom.getParentElement = function(a) {\n  var b;\n  if (goog.dom.BrowserFeature.CAN_USE_PARENT_ELEMENT_PROPERTY && !(goog.userAgent.IE && goog.userAgent.isVersionOrHigher(\"9\") && !goog.userAgent.isVersionOrHigher(\"10\") && goog.global.SVGElement && a instanceof goog.global.SVGElement) && (b = a.parentElement)) {\n    return b;\n  }\n  b = a.parentNode;\n  return goog.dom.isElement(b) ? b : null;\n};\ngoog.dom.contains = function(a, b) {\n  if (!a || !b) {\n    return !1;\n  }\n  if (a.contains && b.nodeType == goog.dom.NodeType.ELEMENT) {\n    return a == b || a.contains(b);\n  }\n  if (\"undefined\" != typeof a.compareDocumentPosition) {\n    return a == b || !!(a.compareDocumentPosition(b) & 16);\n  }\n  for (; b && a != b;) {\n    b = b.parentNode;\n  }\n  return b == a;\n};\ngoog.dom.compareNodeOrder = function(a, b) {\n  if (a == b) {\n    return 0;\n  }\n  if (a.compareDocumentPosition) {\n    return a.compareDocumentPosition(b) & 2 ? 1 : -1;\n  }\n  if (goog.userAgent.IE && !goog.userAgent.isDocumentModeOrHigher(9)) {\n    if (a.nodeType == goog.dom.NodeType.DOCUMENT) {\n      return -1;\n    }\n    if (b.nodeType == goog.dom.NodeType.DOCUMENT) {\n      return 1;\n    }\n  }\n  if (\"sourceIndex\" in a || a.parentNode && \"sourceIndex\" in a.parentNode) {\n    var c = a.nodeType == goog.dom.NodeType.ELEMENT, d = b.nodeType == goog.dom.NodeType.ELEMENT;\n    if (c && d) {\n      return a.sourceIndex - b.sourceIndex;\n    }\n    var e = a.parentNode, f = b.parentNode;\n    return e == f ? goog.dom.compareSiblingOrder_(a, b) : !c && goog.dom.contains(e, b) ? -1 * goog.dom.compareParentsDescendantNodeIe_(a, b) : !d && goog.dom.contains(f, a) ? goog.dom.compareParentsDescendantNodeIe_(b, a) : (c ? a.sourceIndex : e.sourceIndex) - (d ? b.sourceIndex : f.sourceIndex);\n  }\n  d = goog.dom.getOwnerDocument(a);\n  c = d.createRange();\n  c.selectNode(a);\n  c.collapse(!0);\n  d = d.createRange();\n  d.selectNode(b);\n  d.collapse(!0);\n  return c.compareBoundaryPoints(goog.global.Range.START_TO_END, d);\n};\ngoog.dom.compareParentsDescendantNodeIe_ = function(a, b) {\n  var c = a.parentNode;\n  if (c == b) {\n    return -1;\n  }\n  for (var d = b; d.parentNode != c;) {\n    d = d.parentNode;\n  }\n  return goog.dom.compareSiblingOrder_(d, a);\n};\ngoog.dom.compareSiblingOrder_ = function(a, b) {\n  for (var c = b; c = c.previousSibling;) {\n    if (c == a) {\n      return -1;\n    }\n  }\n  return 1;\n};\ngoog.dom.findCommonAncestor = function(a) {\n  var b, c = arguments.length;\n  if (!c) {\n    return null;\n  }\n  if (1 == c) {\n    return arguments[0];\n  }\n  var d = [], e = Infinity;\n  for (b = 0; b < c; b++) {\n    for (var f = [], g = arguments[b]; g;) {\n      f.unshift(g), g = g.parentNode;\n    }\n    d.push(f);\n    e = Math.min(e, f.length);\n  }\n  f = null;\n  for (b = 0; b < e; b++) {\n    g = d[0][b];\n    for (var h = 1; h < c; h++) {\n      if (g != d[h][b]) {\n        return f;\n      }\n    }\n    f = g;\n  }\n  return f;\n};\ngoog.dom.isInDocument = function(a) {\n  return 16 == (a.ownerDocument.compareDocumentPosition(a) & 16);\n};\ngoog.dom.getOwnerDocument = function(a) {\n  goog.asserts.assert(a, \"Node cannot be null or undefined.\");\n  return a.nodeType == goog.dom.NodeType.DOCUMENT ? a : a.ownerDocument || a.document;\n};\ngoog.dom.getFrameContentDocument = function(a) {\n  return a.contentDocument || a.contentWindow.document;\n};\ngoog.dom.getFrameContentWindow = function(a) {\n  try {\n    return a.contentWindow || (a.contentDocument ? goog.dom.getWindow(a.contentDocument) : null);\n  } catch (b) {\n  }\n  return null;\n};\ngoog.dom.setTextContent = function(a, b) {\n  goog.asserts.assert(null != a, \"goog.dom.setTextContent expects a non-null value for node\");\n  if (\"textContent\" in a) {\n    a.textContent = b;\n  } else {\n    if (a.nodeType == goog.dom.NodeType.TEXT) {\n      a.data = String(b);\n    } else {\n      if (a.firstChild && a.firstChild.nodeType == goog.dom.NodeType.TEXT) {\n        for (; a.lastChild != a.firstChild;) {\n          a.removeChild(goog.asserts.assert(a.lastChild));\n        }\n        a.firstChild.data = String(b);\n      } else {\n        goog.dom.removeChildren(a);\n        var c = goog.dom.getOwnerDocument(a);\n        a.appendChild(c.createTextNode(String(b)));\n      }\n    }\n  }\n};\ngoog.dom.getOuterHtml = function(a) {\n  goog.asserts.assert(null !== a, \"goog.dom.getOuterHtml expects a non-null value for element\");\n  if (\"outerHTML\" in a) {\n    return a.outerHTML;\n  }\n  var b = goog.dom.getOwnerDocument(a);\n  b = goog.dom.createElement_(b, \"DIV\");\n  b.appendChild(a.cloneNode(!0));\n  return b.innerHTML;\n};\ngoog.dom.findNode = function(a, b) {\n  var c = [];\n  return goog.dom.findNodes_(a, b, c, !0) ? c[0] : void 0;\n};\ngoog.dom.findNodes = function(a, b) {\n  var c = [];\n  goog.dom.findNodes_(a, b, c, !1);\n  return c;\n};\ngoog.dom.findNodes_ = function(a, b, c, d) {\n  if (null != a) {\n    for (a = a.firstChild; a;) {\n      if (b(a) && (c.push(a), d) || goog.dom.findNodes_(a, b, c, d)) {\n        return !0;\n      }\n      a = a.nextSibling;\n    }\n  }\n  return !1;\n};\ngoog.dom.findElement = function(a, b) {\n  for (var c = goog.dom.getChildrenReverse_(a); 0 < c.length;) {\n    var d = c.pop();\n    if (b(d)) {\n      return d;\n    }\n    for (d = d.lastElementChild; d; d = d.previousElementSibling) {\n      c.push(d);\n    }\n  }\n  return null;\n};\ngoog.dom.findElements = function(a, b) {\n  for (var c = [], d = goog.dom.getChildrenReverse_(a); 0 < d.length;) {\n    var e = d.pop();\n    b(e) && c.push(e);\n    for (e = e.lastElementChild; e; e = e.previousElementSibling) {\n      d.push(e);\n    }\n  }\n  return c;\n};\ngoog.dom.getChildrenReverse_ = function(a) {\n  if (a.nodeType == goog.dom.NodeType.DOCUMENT) {\n    return [a.documentElement];\n  }\n  var b = [];\n  for (a = a.lastElementChild; a; a = a.previousElementSibling) {\n    b.push(a);\n  }\n  return b;\n};\ngoog.dom.TAGS_TO_IGNORE_ = {SCRIPT:1, STYLE:1, HEAD:1, IFRAME:1, OBJECT:1};\ngoog.dom.PREDEFINED_TAG_VALUES_ = {IMG:\" \", BR:\"\\n\"};\ngoog.dom.isFocusableTabIndex = function(a) {\n  return goog.dom.hasSpecifiedTabIndex_(a) && goog.dom.isTabIndexFocusable_(a);\n};\ngoog.dom.setFocusableTabIndex = function(a, b) {\n  b ? a.tabIndex = 0 : (a.tabIndex = -1, a.removeAttribute(\"tabIndex\"));\n};\ngoog.dom.isFocusable = function(a) {\n  var b;\n  return (b = goog.dom.nativelySupportsFocus_(a) ? !a.disabled && (!goog.dom.hasSpecifiedTabIndex_(a) || goog.dom.isTabIndexFocusable_(a)) : goog.dom.isFocusableTabIndex(a)) && goog.userAgent.IE ? goog.dom.hasNonZeroBoundingRect_(a) : b;\n};\ngoog.dom.hasSpecifiedTabIndex_ = function(a) {\n  return goog.userAgent.IE && !goog.userAgent.isVersionOrHigher(\"9\") ? (a = a.getAttributeNode(\"tabindex\"), null != a && a.specified) : a.hasAttribute(\"tabindex\");\n};\ngoog.dom.isTabIndexFocusable_ = function(a) {\n  a = a.tabIndex;\n  return \"number\" === typeof a && 0 <= a && 32768 > a;\n};\ngoog.dom.nativelySupportsFocus_ = function(a) {\n  return \"A\" == a.tagName && a.hasAttribute(\"href\") || \"INPUT\" == a.tagName || \"TEXTAREA\" == a.tagName || \"SELECT\" == a.tagName || \"BUTTON\" == a.tagName;\n};\ngoog.dom.hasNonZeroBoundingRect_ = function(a) {\n  a = !goog.isFunction(a.getBoundingClientRect) || goog.userAgent.IE && null == a.parentElement ? {height:a.offsetHeight, width:a.offsetWidth} : a.getBoundingClientRect();\n  return null != a && 0 < a.height && 0 < a.width;\n};\ngoog.dom.getTextContent = function(a) {\n  if (goog.dom.BrowserFeature.CAN_USE_INNER_TEXT && null !== a && \"innerText\" in a) {\n    a = goog.string.canonicalizeNewlines(a.innerText);\n  } else {\n    var b = [];\n    goog.dom.getTextContent_(a, b, !0);\n    a = b.join(\"\");\n  }\n  a = a.replace(/ \\xAD /g, \" \").replace(/\\xAD/g, \"\");\n  a = a.replace(/\\u200B/g, \"\");\n  goog.dom.BrowserFeature.CAN_USE_INNER_TEXT || (a = a.replace(/ +/g, \" \"));\n  \" \" != a && (a = a.replace(/^\\s*/, \"\"));\n  return a;\n};\ngoog.dom.getRawTextContent = function(a) {\n  var b = [];\n  goog.dom.getTextContent_(a, b, !1);\n  return b.join(\"\");\n};\ngoog.dom.getTextContent_ = function(a, b, c) {\n  if (!(a.nodeName in goog.dom.TAGS_TO_IGNORE_)) {\n    if (a.nodeType == goog.dom.NodeType.TEXT) {\n      c ? b.push(String(a.nodeValue).replace(/(\\r\\n|\\r|\\n)/g, \"\")) : b.push(a.nodeValue);\n    } else {\n      if (a.nodeName in goog.dom.PREDEFINED_TAG_VALUES_) {\n        b.push(goog.dom.PREDEFINED_TAG_VALUES_[a.nodeName]);\n      } else {\n        for (a = a.firstChild; a;) {\n          goog.dom.getTextContent_(a, b, c), a = a.nextSibling;\n        }\n      }\n    }\n  }\n};\ngoog.dom.getNodeTextLength = function(a) {\n  return goog.dom.getTextContent(a).length;\n};\ngoog.dom.getNodeTextOffset = function(a, b) {\n  for (var c = b || goog.dom.getOwnerDocument(a).body, d = []; a && a != c;) {\n    for (var e = a; e = e.previousSibling;) {\n      d.unshift(goog.dom.getTextContent(e));\n    }\n    a = a.parentNode;\n  }\n  return goog.string.trimLeft(d.join(\"\")).replace(/ +/g, \" \").length;\n};\ngoog.dom.getNodeAtOffset = function(a, b, c) {\n  a = [a];\n  for (var d = 0, e = null; 0 < a.length && d < b;) {\n    if (e = a.pop(), !(e.nodeName in goog.dom.TAGS_TO_IGNORE_)) {\n      if (e.nodeType == goog.dom.NodeType.TEXT) {\n        var f = e.nodeValue.replace(/(\\r\\n|\\r|\\n)/g, \"\").replace(/ +/g, \" \");\n        d += f.length;\n      } else {\n        if (e.nodeName in goog.dom.PREDEFINED_TAG_VALUES_) {\n          d += goog.dom.PREDEFINED_TAG_VALUES_[e.nodeName].length;\n        } else {\n          for (f = e.childNodes.length - 1; 0 <= f; f--) {\n            a.push(e.childNodes[f]);\n          }\n        }\n      }\n    }\n  }\n  goog.isObject(c) && (c.remainder = e ? e.nodeValue.length + b - d - 1 : 0, c.node = e);\n  return e;\n};\ngoog.dom.isNodeList = function(a) {\n  if (a && \"number\" == typeof a.length) {\n    if (goog.isObject(a)) {\n      return \"function\" == typeof a.item || \"string\" == typeof a.item;\n    }\n    if (goog.isFunction(a)) {\n      return \"function\" == typeof a.item;\n    }\n  }\n  return !1;\n};\ngoog.dom.getAncestorByTagNameAndClass = function(a, b, c, d) {\n  if (!b && !c) {\n    return null;\n  }\n  var e = b ? String(b).toUpperCase() : null;\n  return goog.dom.getAncestor(a, function(a) {\n    return (!e || a.nodeName == e) && (!c || \"string\" === typeof a.className && goog.array.contains(a.className.split(/\\s+/), c));\n  }, !0, d);\n};\ngoog.dom.getAncestorByClass = function(a, b, c) {\n  return goog.dom.getAncestorByTagNameAndClass(a, null, b, c);\n};\ngoog.dom.getAncestor = function(a, b, c, d) {\n  a && !c && (a = a.parentNode);\n  for (c = 0; a && (null == d || c <= d);) {\n    goog.asserts.assert(\"parentNode\" != a.name);\n    if (b(a)) {\n      return a;\n    }\n    a = a.parentNode;\n    c++;\n  }\n  return null;\n};\ngoog.dom.getActiveElement = function(a) {\n  try {\n    var b = a && a.activeElement;\n    return b && b.nodeName ? b : null;\n  } catch (c) {\n    return null;\n  }\n};\ngoog.dom.getPixelRatio = function() {\n  var a = goog.dom.getWindow();\n  return void 0 !== a.devicePixelRatio ? a.devicePixelRatio : a.matchMedia ? goog.dom.matchesPixelRatio_(3) || goog.dom.matchesPixelRatio_(2) || goog.dom.matchesPixelRatio_(1.5) || goog.dom.matchesPixelRatio_(1) || .75 : 1;\n};\ngoog.dom.matchesPixelRatio_ = function(a) {\n  return goog.dom.getWindow().matchMedia(\"(min-resolution: \" + a + \"dppx),(min--moz-device-pixel-ratio: \" + a + \"),(min-resolution: \" + 96 * a + \"dpi)\").matches ? a : 0;\n};\ngoog.dom.getCanvasContext2D = function(a) {\n  return a.getContext(\"2d\");\n};\ngoog.dom.DomHelper = function(a) {\n  this.document_ = a || goog.global.document || document;\n};\ngoog.dom.DomHelper.prototype.getDomHelper = goog.dom.getDomHelper;\ngoog.dom.DomHelper.prototype.setDocument = function(a) {\n  this.document_ = a;\n};\ngoog.dom.DomHelper.prototype.getDocument = function() {\n  return this.document_;\n};\ngoog.dom.DomHelper.prototype.getElement = function(a) {\n  return goog.dom.getElementHelper_(this.document_, a);\n};\ngoog.dom.DomHelper.prototype.getRequiredElement = function(a) {\n  return goog.dom.getRequiredElementHelper_(this.document_, a);\n};\ngoog.dom.DomHelper.prototype.$ = goog.dom.DomHelper.prototype.getElement;\ngoog.dom.DomHelper.prototype.getElementsByTagName = function(a, b) {\n  return (b || this.document_).getElementsByTagName(String(a));\n};\ngoog.dom.DomHelper.prototype.getElementsByTagNameAndClass = function(a, b, c) {\n  return goog.dom.getElementsByTagNameAndClass_(this.document_, a, b, c);\n};\ngoog.dom.DomHelper.prototype.getElementByTagNameAndClass = function(a, b, c) {\n  return goog.dom.getElementByTagNameAndClass_(this.document_, a, b, c);\n};\ngoog.dom.DomHelper.prototype.getElementsByClass = function(a, b) {\n  return goog.dom.getElementsByClass(a, b || this.document_);\n};\ngoog.dom.DomHelper.prototype.getElementByClass = function(a, b) {\n  return goog.dom.getElementByClass(a, b || this.document_);\n};\ngoog.dom.DomHelper.prototype.getRequiredElementByClass = function(a, b) {\n  return goog.dom.getRequiredElementByClass(a, b || this.document_);\n};\ngoog.dom.DomHelper.prototype.$$ = goog.dom.DomHelper.prototype.getElementsByTagNameAndClass;\ngoog.dom.DomHelper.prototype.setProperties = goog.dom.setProperties;\ngoog.dom.DomHelper.prototype.getViewportSize = function(a) {\n  return goog.dom.getViewportSize(a || this.getWindow());\n};\ngoog.dom.DomHelper.prototype.getDocumentHeight = function() {\n  return goog.dom.getDocumentHeight_(this.getWindow());\n};\ngoog.dom.DomHelper.prototype.createDom = function(a, b, c) {\n  return goog.dom.createDom_(this.document_, arguments);\n};\ngoog.dom.DomHelper.prototype.$dom = goog.dom.DomHelper.prototype.createDom;\ngoog.dom.DomHelper.prototype.createElement = function(a) {\n  return goog.dom.createElement_(this.document_, a);\n};\ngoog.dom.DomHelper.prototype.createTextNode = function(a) {\n  return this.document_.createTextNode(String(a));\n};\ngoog.dom.DomHelper.prototype.createTable = function(a, b, c) {\n  return goog.dom.createTable_(this.document_, a, b, !!c);\n};\ngoog.dom.DomHelper.prototype.safeHtmlToNode = function(a) {\n  return goog.dom.safeHtmlToNode_(this.document_, a);\n};\ngoog.dom.DomHelper.prototype.isCss1CompatMode = function() {\n  return goog.dom.isCss1CompatMode_(this.document_);\n};\ngoog.dom.DomHelper.prototype.getWindow = function() {\n  return goog.dom.getWindow_(this.document_);\n};\ngoog.dom.DomHelper.prototype.getDocumentScrollElement = function() {\n  return goog.dom.getDocumentScrollElement_(this.document_);\n};\ngoog.dom.DomHelper.prototype.getDocumentScroll = function() {\n  return goog.dom.getDocumentScroll_(this.document_);\n};\ngoog.dom.DomHelper.prototype.getActiveElement = function(a) {\n  return goog.dom.getActiveElement(a || this.document_);\n};\ngoog.dom.DomHelper.prototype.appendChild = goog.dom.appendChild;\ngoog.dom.DomHelper.prototype.append = goog.dom.append;\ngoog.dom.DomHelper.prototype.canHaveChildren = goog.dom.canHaveChildren;\ngoog.dom.DomHelper.prototype.removeChildren = goog.dom.removeChildren;\ngoog.dom.DomHelper.prototype.insertSiblingBefore = goog.dom.insertSiblingBefore;\ngoog.dom.DomHelper.prototype.insertSiblingAfter = goog.dom.insertSiblingAfter;\ngoog.dom.DomHelper.prototype.insertChildAt = goog.dom.insertChildAt;\ngoog.dom.DomHelper.prototype.removeNode = goog.dom.removeNode;\ngoog.dom.DomHelper.prototype.replaceNode = goog.dom.replaceNode;\ngoog.dom.DomHelper.prototype.flattenElement = goog.dom.flattenElement;\ngoog.dom.DomHelper.prototype.getChildren = goog.dom.getChildren;\ngoog.dom.DomHelper.prototype.getFirstElementChild = goog.dom.getFirstElementChild;\ngoog.dom.DomHelper.prototype.getLastElementChild = goog.dom.getLastElementChild;\ngoog.dom.DomHelper.prototype.getNextElementSibling = goog.dom.getNextElementSibling;\ngoog.dom.DomHelper.prototype.getPreviousElementSibling = goog.dom.getPreviousElementSibling;\ngoog.dom.DomHelper.prototype.getNextNode = goog.dom.getNextNode;\ngoog.dom.DomHelper.prototype.getPreviousNode = goog.dom.getPreviousNode;\ngoog.dom.DomHelper.prototype.isNodeLike = goog.dom.isNodeLike;\ngoog.dom.DomHelper.prototype.isElement = goog.dom.isElement;\ngoog.dom.DomHelper.prototype.isWindow = goog.dom.isWindow;\ngoog.dom.DomHelper.prototype.getParentElement = goog.dom.getParentElement;\ngoog.dom.DomHelper.prototype.contains = goog.dom.contains;\ngoog.dom.DomHelper.prototype.compareNodeOrder = goog.dom.compareNodeOrder;\ngoog.dom.DomHelper.prototype.findCommonAncestor = goog.dom.findCommonAncestor;\ngoog.dom.DomHelper.prototype.getOwnerDocument = goog.dom.getOwnerDocument;\ngoog.dom.DomHelper.prototype.getFrameContentDocument = goog.dom.getFrameContentDocument;\ngoog.dom.DomHelper.prototype.getFrameContentWindow = goog.dom.getFrameContentWindow;\ngoog.dom.DomHelper.prototype.setTextContent = goog.dom.setTextContent;\ngoog.dom.DomHelper.prototype.getOuterHtml = goog.dom.getOuterHtml;\ngoog.dom.DomHelper.prototype.findNode = goog.dom.findNode;\ngoog.dom.DomHelper.prototype.findNodes = goog.dom.findNodes;\ngoog.dom.DomHelper.prototype.isFocusableTabIndex = goog.dom.isFocusableTabIndex;\ngoog.dom.DomHelper.prototype.setFocusableTabIndex = goog.dom.setFocusableTabIndex;\ngoog.dom.DomHelper.prototype.isFocusable = goog.dom.isFocusable;\ngoog.dom.DomHelper.prototype.getTextContent = goog.dom.getTextContent;\ngoog.dom.DomHelper.prototype.getNodeTextLength = goog.dom.getNodeTextLength;\ngoog.dom.DomHelper.prototype.getNodeTextOffset = goog.dom.getNodeTextOffset;\ngoog.dom.DomHelper.prototype.getNodeAtOffset = goog.dom.getNodeAtOffset;\ngoog.dom.DomHelper.prototype.isNodeList = goog.dom.isNodeList;\ngoog.dom.DomHelper.prototype.getAncestorByTagNameAndClass = goog.dom.getAncestorByTagNameAndClass;\ngoog.dom.DomHelper.prototype.getAncestorByClass = goog.dom.getAncestorByClass;\ngoog.dom.DomHelper.prototype.getAncestor = goog.dom.getAncestor;\ngoog.dom.DomHelper.prototype.getCanvasContext2D = goog.dom.getCanvasContext2D;\ngoog.json = {};\ngoog.json.USE_NATIVE_JSON = !1;\ngoog.json.TRY_NATIVE_JSON = !1;\ngoog.json.isValid = function(a) {\n  return /^\\s*$/.test(a) ? !1 : /^[\\],:{}\\s\\u2028\\u2029]*$/.test(a.replace(/\\\\[\"\\\\\\/bfnrtu]/g, \"@\").replace(/(?:\"[^\"\\\\\\n\\r\\u2028\\u2029\\x00-\\x08\\x0a-\\x1f]*\"|true|false|null|-?\\d+(?:\\.\\d*)?(?:[eE][+\\-]?\\d+)?)[\\s\\u2028\\u2029]*(?=:|,|]|}|$)/g, \"]\").replace(/(?:^|:|,)(?:[\\s\\u2028\\u2029]*\\[)+/g, \"\"));\n};\ngoog.json.errorLogger_ = goog.nullFunction;\ngoog.json.setErrorLogger = function(a) {\n  goog.json.errorLogger_ = a;\n};\ngoog.json.parse = goog.json.USE_NATIVE_JSON ? goog.global.JSON.parse : function(a) {\n  if (goog.json.TRY_NATIVE_JSON) {\n    try {\n      return goog.global.JSON.parse(a);\n    } catch (d) {\n      var b = d;\n    }\n  }\n  a = String(a);\n  if (goog.json.isValid(a)) {\n    try {\n      var c = eval(\"(\" + a + \")\");\n      b && goog.json.errorLogger_(\"Invalid JSON: \" + a, b);\n      return c;\n    } catch (d) {\n    }\n  }\n  throw Error(\"Invalid JSON string: \" + a);\n};\ngoog.json.serialize = goog.json.USE_NATIVE_JSON ? goog.global.JSON.stringify : function(a, b) {\n  return (new goog.json.Serializer(b)).serialize(a);\n};\ngoog.json.Serializer = function(a) {\n  this.replacer_ = a;\n};\ngoog.json.Serializer.prototype.serialize = function(a) {\n  var b = [];\n  this.serializeInternal(a, b);\n  return b.join(\"\");\n};\ngoog.json.Serializer.prototype.serializeInternal = function(a, b) {\n  if (null == a) {\n    b.push(\"null\");\n  } else {\n    if (\"object\" == typeof a) {\n      if (goog.isArray(a)) {\n        this.serializeArray(a, b);\n        return;\n      }\n      if (a instanceof String || a instanceof Number || a instanceof Boolean) {\n        a = a.valueOf();\n      } else {\n        this.serializeObject_(a, b);\n        return;\n      }\n    }\n    switch(typeof a) {\n      case \"string\":\n        this.serializeString_(a, b);\n        break;\n      case \"number\":\n        this.serializeNumber_(a, b);\n        break;\n      case \"boolean\":\n        b.push(String(a));\n        break;\n      case \"function\":\n        b.push(\"null\");\n        break;\n      default:\n        throw Error(\"Unknown type: \" + typeof a);\n    }\n  }\n};\ngoog.json.Serializer.charToJsonCharCache_ = {'\"':'\\\\\"', \"\\\\\":\"\\\\\\\\\", \"/\":\"\\\\/\", \"\\b\":\"\\\\b\", \"\\f\":\"\\\\f\", \"\\n\":\"\\\\n\", \"\\r\":\"\\\\r\", \"\\t\":\"\\\\t\", \"\\x0B\":\"\\\\u000b\"};\ngoog.json.Serializer.charsToReplace_ = /\\uffff/.test(\"\\uffff\") ? /[\\\\\"\\x00-\\x1f\\x7f-\\uffff]/g : /[\\\\\"\\x00-\\x1f\\x7f-\\xff]/g;\ngoog.json.Serializer.prototype.serializeString_ = function(a, b) {\n  b.push('\"', a.replace(goog.json.Serializer.charsToReplace_, function(a) {\n    var b = goog.json.Serializer.charToJsonCharCache_[a];\n    b || (b = \"\\\\u\" + (a.charCodeAt(0) | 65536).toString(16).substr(1), goog.json.Serializer.charToJsonCharCache_[a] = b);\n    return b;\n  }), '\"');\n};\ngoog.json.Serializer.prototype.serializeNumber_ = function(a, b) {\n  b.push(isFinite(a) && !isNaN(a) ? String(a) : \"null\");\n};\ngoog.json.Serializer.prototype.serializeArray = function(a, b) {\n  var c = a.length;\n  b.push(\"[\");\n  for (var d = \"\", e = 0; e < c; e++) {\n    b.push(d), d = a[e], this.serializeInternal(this.replacer_ ? this.replacer_.call(a, String(e), d) : d, b), d = \",\";\n  }\n  b.push(\"]\");\n};\ngoog.json.Serializer.prototype.serializeObject_ = function(a, b) {\n  b.push(\"{\");\n  var c = \"\", d;\n  for (d in a) {\n    if (Object.prototype.hasOwnProperty.call(a, d)) {\n      var e = a[d];\n      \"function\" != typeof e && (b.push(c), this.serializeString_(d, b), b.push(\":\"), this.serializeInternal(this.replacer_ ? this.replacer_.call(a, d, e) : e, b), c = \",\");\n    }\n  }\n  b.push(\"}\");\n};\ngoog.proto2.ObjectSerializer = function(a, b) {\n  this.keyOption_ = a;\n  this.serializeBooleanAsNumber_ = b;\n};\ngoog.inherits(goog.proto2.ObjectSerializer, goog.proto2.Serializer);\ngoog.proto2.ObjectSerializer.KeyOption = {TAG:0, NAME:1, CAMEL_CASE_NAME:2};\ngoog.proto2.ObjectSerializer.prototype.serialize = function(a) {\n  for (var b = a.getDescriptor().getFields(), c = {}, d = 0; d < b.length; d++) {\n    var e = b[d], f = e.getTag();\n    switch(this.keyOption_) {\n      case goog.proto2.ObjectSerializer.KeyOption.TAG:\n        break;\n      case goog.proto2.ObjectSerializer.KeyOption.NAME:\n        f = e.getName();\n        break;\n      case goog.proto2.ObjectSerializer.KeyOption.CAMEL_CASE_NAME:\n        f = goog.string.toCamelCase(e.getName().replace(/_/g, \"-\"));\n        break;\n      default:\n        goog.asserts.assert(this.keyOption_ !== goog.proto2.ObjectSerializer.KeyOption.TAG && this.keyOption_ !== goog.proto2.ObjectSerializer.KeyOption.NAME && this.keyOption_ !== goog.proto2.ObjectSerializer.KeyOption.CAMEL_CASE_NAME, \"keyOption should be one of TAG, NAME, or CAMEL_CASE_NAME\");\n    }\n    if (a.has(e)) {\n      if (e.isRepeated()) {\n        var g = [];\n        c[f] = g;\n        for (f = 0; f < a.countOf(e); f++) {\n          g.push(this.getSerializedValue(e, a.get(e, f)));\n        }\n      } else {\n        c[f] = this.getSerializedValue(e, a.get(e));\n      }\n    }\n  }\n  a.forEachUnknown(function(a, b) {\n    c[a] = b;\n  });\n  return c;\n};\ngoog.proto2.ObjectSerializer.prototype.getSerializedValue = function(a, b) {\n  return this.serializeBooleanAsNumber_ && a.getFieldType() == goog.proto2.FieldDescriptor.FieldType.BOOL && \"boolean\" === typeof b ? b ? 1 : 0 : goog.proto2.ObjectSerializer.superClass_.getSerializedValue.call(this, a, b);\n};\ngoog.proto2.ObjectSerializer.prototype.getDeserializedValue = function(a, b) {\n  return a.getFieldType() == goog.proto2.FieldDescriptor.FieldType.BOOL && \"number\" === typeof b ? !!b : goog.proto2.ObjectSerializer.superClass_.getDeserializedValue.call(this, a, b);\n};\ngoog.proto2.ObjectSerializer.prototype.deserializeTo = function(a, b) {\n  var c = a.getDescriptor(), d;\n  for (d in b) {\n    var e = b[d], f = goog.string.isNumeric(d);\n    if (f) {\n      var g = c.findFieldByTag(d);\n    } else {\n      goog.asserts.assert(this.keyOption_ == goog.proto2.ObjectSerializer.KeyOption.NAME || this.keyOption_ == goog.proto2.ObjectSerializer.KeyOption.CAMEL_CASE_NAME, \"Key mode \" + this.keyOption_ + \"for key \" + d + \" is not \" + goog.proto2.ObjectSerializer.KeyOption.NAME + \" nor \" + goog.proto2.ObjectSerializer.KeyOption.CAMEL_CASE_NAME), this.keyOption_ == goog.proto2.ObjectSerializer.KeyOption.CAMEL_CASE_NAME && (d = goog.string.toSelectorCase(d).replace(/\\-/g, \"_\")), g = c.findFieldByName(d);\n    }\n    if (g) {\n      if (g.isRepeated()) {\n        for (goog.asserts.assert(goog.isArray(e), \"Value for repeated field \" + g + \" must be an array.\"), f = 0; f < e.length; f++) {\n          a.add(g, this.getDeserializedValue(g, e[f]));\n        }\n      } else {\n        goog.asserts.assert(!goog.isArray(e), \"Value for non-repeated field \" + g + \" must not be an array.\"), a.set(g, this.getDeserializedValue(g, e));\n      }\n    } else {\n      f ? a.setUnknown(Number(d), e) : goog.asserts.fail(\"Failed to find field: \" + d);\n    }\n  }\n};\n/*\n\n Protocol Buffer 2 Copyright 2008 Google Inc.\n All other code copyright its respective owners.\n Copyright (C) 2010 The Libphonenumber Authors\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n*/\nvar i18n = {phonenumbers:{}};\ni18n.phonenumbers.NumberFormat = function() {\n  goog.proto2.Message.call(this);\n};\ngoog.inherits(i18n.phonenumbers.NumberFormat, goog.proto2.Message);\ni18n.phonenumbers.NumberFormat.descriptor_ = null;\ni18n.phonenumbers.NumberFormat.prototype.getPattern = function() {\n  return this.get$Value(1);\n};\ni18n.phonenumbers.NumberFormat.prototype.getPatternOrDefault = function() {\n  return this.get$ValueOrDefault(1);\n};\ni18n.phonenumbers.NumberFormat.prototype.setPattern = function(a) {\n  this.set$Value(1, a);\n};\ni18n.phonenumbers.NumberFormat.prototype.hasPattern = function() {\n  return this.has$Value(1);\n};\ni18n.phonenumbers.NumberFormat.prototype.patternCount = function() {\n  return this.count$Values(1);\n};\ni18n.phonenumbers.NumberFormat.prototype.clearPattern = function() {\n  this.clear$Field(1);\n};\ni18n.phonenumbers.NumberFormat.prototype.getFormat = function() {\n  return this.get$Value(2);\n};\ni18n.phonenumbers.NumberFormat.prototype.getFormatOrDefault = function() {\n  return this.get$ValueOrDefault(2);\n};\ni18n.phonenumbers.NumberFormat.prototype.setFormat = function(a) {\n  this.set$Value(2, a);\n};\ni18n.phonenumbers.NumberFormat.prototype.hasFormat = function() {\n  return this.has$Value(2);\n};\ni18n.phonenumbers.NumberFormat.prototype.formatCount = function() {\n  return this.count$Values(2);\n};\ni18n.phonenumbers.NumberFormat.prototype.clearFormat = function() {\n  this.clear$Field(2);\n};\ni18n.phonenumbers.NumberFormat.prototype.getLeadingDigitsPattern = function(a) {\n  return this.get$Value(3, a);\n};\ni18n.phonenumbers.NumberFormat.prototype.getLeadingDigitsPatternOrDefault = function(a) {\n  return this.get$ValueOrDefault(3, a);\n};\ni18n.phonenumbers.NumberFormat.prototype.addLeadingDigitsPattern = function(a) {\n  this.add$Value(3, a);\n};\ni18n.phonenumbers.NumberFormat.prototype.leadingDigitsPatternArray = function() {\n  return this.array$Values(3);\n};\ni18n.phonenumbers.NumberFormat.prototype.hasLeadingDigitsPattern = function() {\n  return this.has$Value(3);\n};\ni18n.phonenumbers.NumberFormat.prototype.leadingDigitsPatternCount = function() {\n  return this.count$Values(3);\n};\ni18n.phonenumbers.NumberFormat.prototype.clearLeadingDigitsPattern = function() {\n  this.clear$Field(3);\n};\ni18n.phonenumbers.NumberFormat.prototype.getNationalPrefixFormattingRule = function() {\n  return this.get$Value(4);\n};\ni18n.phonenumbers.NumberFormat.prototype.getNationalPrefixFormattingRuleOrDefault = function() {\n  return this.get$ValueOrDefault(4);\n};\ni18n.phonenumbers.NumberFormat.prototype.setNationalPrefixFormattingRule = function(a) {\n  this.set$Value(4, a);\n};\ni18n.phonenumbers.NumberFormat.prototype.hasNationalPrefixFormattingRule = function() {\n  return this.has$Value(4);\n};\ni18n.phonenumbers.NumberFormat.prototype.nationalPrefixFormattingRuleCount = function() {\n  return this.count$Values(4);\n};\ni18n.phonenumbers.NumberFormat.prototype.clearNationalPrefixFormattingRule = function() {\n  this.clear$Field(4);\n};\ni18n.phonenumbers.NumberFormat.prototype.getNationalPrefixOptionalWhenFormatting = function() {\n  return this.get$Value(6);\n};\ni18n.phonenumbers.NumberFormat.prototype.getNationalPrefixOptionalWhenFormattingOrDefault = function() {\n  return this.get$ValueOrDefault(6);\n};\ni18n.phonenumbers.NumberFormat.prototype.setNationalPrefixOptionalWhenFormatting = function(a) {\n  this.set$Value(6, a);\n};\ni18n.phonenumbers.NumberFormat.prototype.hasNationalPrefixOptionalWhenFormatting = function() {\n  return this.has$Value(6);\n};\ni18n.phonenumbers.NumberFormat.prototype.nationalPrefixOptionalWhenFormattingCount = function() {\n  return this.count$Values(6);\n};\ni18n.phonenumbers.NumberFormat.prototype.clearNationalPrefixOptionalWhenFormatting = function() {\n  this.clear$Field(6);\n};\ni18n.phonenumbers.NumberFormat.prototype.getDomesticCarrierCodeFormattingRule = function() {\n  return this.get$Value(5);\n};\ni18n.phonenumbers.NumberFormat.prototype.getDomesticCarrierCodeFormattingRuleOrDefault = function() {\n  return this.get$ValueOrDefault(5);\n};\ni18n.phonenumbers.NumberFormat.prototype.setDomesticCarrierCodeFormattingRule = function(a) {\n  this.set$Value(5, a);\n};\ni18n.phonenumbers.NumberFormat.prototype.hasDomesticCarrierCodeFormattingRule = function() {\n  return this.has$Value(5);\n};\ni18n.phonenumbers.NumberFormat.prototype.domesticCarrierCodeFormattingRuleCount = function() {\n  return this.count$Values(5);\n};\ni18n.phonenumbers.NumberFormat.prototype.clearDomesticCarrierCodeFormattingRule = function() {\n  this.clear$Field(5);\n};\ni18n.phonenumbers.PhoneNumberDesc = function() {\n  goog.proto2.Message.call(this);\n};\ngoog.inherits(i18n.phonenumbers.PhoneNumberDesc, goog.proto2.Message);\ni18n.phonenumbers.PhoneNumberDesc.descriptor_ = null;\ni18n.phonenumbers.PhoneNumberDesc.prototype.getNationalNumberPattern = function() {\n  return this.get$Value(2);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.getNationalNumberPatternOrDefault = function() {\n  return this.get$ValueOrDefault(2);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.setNationalNumberPattern = function(a) {\n  this.set$Value(2, a);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.hasNationalNumberPattern = function() {\n  return this.has$Value(2);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.nationalNumberPatternCount = function() {\n  return this.count$Values(2);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.clearNationalNumberPattern = function() {\n  this.clear$Field(2);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.getPossibleLength = function(a) {\n  return this.get$Value(9, a);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.getPossibleLengthOrDefault = function(a) {\n  return this.get$ValueOrDefault(9, a);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.addPossibleLength = function(a) {\n  this.add$Value(9, a);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.possibleLengthArray = function() {\n  return this.array$Values(9);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.hasPossibleLength = function() {\n  return this.has$Value(9);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.possibleLengthCount = function() {\n  return this.count$Values(9);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.clearPossibleLength = function() {\n  this.clear$Field(9);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.getPossibleLengthLocalOnly = function(a) {\n  return this.get$Value(10, a);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.getPossibleLengthLocalOnlyOrDefault = function(a) {\n  return this.get$ValueOrDefault(10, a);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.addPossibleLengthLocalOnly = function(a) {\n  this.add$Value(10, a);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.possibleLengthLocalOnlyArray = function() {\n  return this.array$Values(10);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.hasPossibleLengthLocalOnly = function() {\n  return this.has$Value(10);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.possibleLengthLocalOnlyCount = function() {\n  return this.count$Values(10);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.clearPossibleLengthLocalOnly = function() {\n  this.clear$Field(10);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.getExampleNumber = function() {\n  return this.get$Value(6);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.getExampleNumberOrDefault = function() {\n  return this.get$ValueOrDefault(6);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.setExampleNumber = function(a) {\n  this.set$Value(6, a);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.hasExampleNumber = function() {\n  return this.has$Value(6);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.exampleNumberCount = function() {\n  return this.count$Values(6);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.clearExampleNumber = function() {\n  this.clear$Field(6);\n};\ni18n.phonenumbers.PhoneMetadata = function() {\n  goog.proto2.Message.call(this);\n};\ngoog.inherits(i18n.phonenumbers.PhoneMetadata, goog.proto2.Message);\ni18n.phonenumbers.PhoneMetadata.descriptor_ = null;\ni18n.phonenumbers.PhoneMetadata.prototype.getGeneralDesc = function() {\n  return this.get$Value(1);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getGeneralDescOrDefault = function() {\n  return this.get$ValueOrDefault(1);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setGeneralDesc = function(a) {\n  this.set$Value(1, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasGeneralDesc = function() {\n  return this.has$Value(1);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.generalDescCount = function() {\n  return this.count$Values(1);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearGeneralDesc = function() {\n  this.clear$Field(1);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getFixedLine = function() {\n  return this.get$Value(2);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getFixedLineOrDefault = function() {\n  return this.get$ValueOrDefault(2);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setFixedLine = function(a) {\n  this.set$Value(2, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasFixedLine = function() {\n  return this.has$Value(2);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.fixedLineCount = function() {\n  return this.count$Values(2);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearFixedLine = function() {\n  this.clear$Field(2);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getMobile = function() {\n  return this.get$Value(3);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getMobileOrDefault = function() {\n  return this.get$ValueOrDefault(3);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setMobile = function(a) {\n  this.set$Value(3, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasMobile = function() {\n  return this.has$Value(3);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.mobileCount = function() {\n  return this.count$Values(3);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearMobile = function() {\n  this.clear$Field(3);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getTollFree = function() {\n  return this.get$Value(4);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getTollFreeOrDefault = function() {\n  return this.get$ValueOrDefault(4);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setTollFree = function(a) {\n  this.set$Value(4, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasTollFree = function() {\n  return this.has$Value(4);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.tollFreeCount = function() {\n  return this.count$Values(4);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearTollFree = function() {\n  this.clear$Field(4);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getPremiumRate = function() {\n  return this.get$Value(5);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getPremiumRateOrDefault = function() {\n  return this.get$ValueOrDefault(5);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setPremiumRate = function(a) {\n  this.set$Value(5, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasPremiumRate = function() {\n  return this.has$Value(5);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.premiumRateCount = function() {\n  return this.count$Values(5);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearPremiumRate = function() {\n  this.clear$Field(5);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getSharedCost = function() {\n  return this.get$Value(6);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getSharedCostOrDefault = function() {\n  return this.get$ValueOrDefault(6);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setSharedCost = function(a) {\n  this.set$Value(6, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasSharedCost = function() {\n  return this.has$Value(6);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.sharedCostCount = function() {\n  return this.count$Values(6);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearSharedCost = function() {\n  this.clear$Field(6);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getPersonalNumber = function() {\n  return this.get$Value(7);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getPersonalNumberOrDefault = function() {\n  return this.get$ValueOrDefault(7);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setPersonalNumber = function(a) {\n  this.set$Value(7, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasPersonalNumber = function() {\n  return this.has$Value(7);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.personalNumberCount = function() {\n  return this.count$Values(7);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearPersonalNumber = function() {\n  this.clear$Field(7);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getVoip = function() {\n  return this.get$Value(8);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getVoipOrDefault = function() {\n  return this.get$ValueOrDefault(8);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setVoip = function(a) {\n  this.set$Value(8, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasVoip = function() {\n  return this.has$Value(8);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.voipCount = function() {\n  return this.count$Values(8);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearVoip = function() {\n  this.clear$Field(8);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getPager = function() {\n  return this.get$Value(21);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getPagerOrDefault = function() {\n  return this.get$ValueOrDefault(21);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setPager = function(a) {\n  this.set$Value(21, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasPager = function() {\n  return this.has$Value(21);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.pagerCount = function() {\n  return this.count$Values(21);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearPager = function() {\n  this.clear$Field(21);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getUan = function() {\n  return this.get$Value(25);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getUanOrDefault = function() {\n  return this.get$ValueOrDefault(25);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setUan = function(a) {\n  this.set$Value(25, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasUan = function() {\n  return this.has$Value(25);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.uanCount = function() {\n  return this.count$Values(25);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearUan = function() {\n  this.clear$Field(25);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getEmergency = function() {\n  return this.get$Value(27);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getEmergencyOrDefault = function() {\n  return this.get$ValueOrDefault(27);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setEmergency = function(a) {\n  this.set$Value(27, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasEmergency = function() {\n  return this.has$Value(27);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.emergencyCount = function() {\n  return this.count$Values(27);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearEmergency = function() {\n  this.clear$Field(27);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getVoicemail = function() {\n  return this.get$Value(28);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getVoicemailOrDefault = function() {\n  return this.get$ValueOrDefault(28);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setVoicemail = function(a) {\n  this.set$Value(28, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasVoicemail = function() {\n  return this.has$Value(28);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.voicemailCount = function() {\n  return this.count$Values(28);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearVoicemail = function() {\n  this.clear$Field(28);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getShortCode = function() {\n  return this.get$Value(29);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getShortCodeOrDefault = function() {\n  return this.get$ValueOrDefault(29);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setShortCode = function(a) {\n  this.set$Value(29, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasShortCode = function() {\n  return this.has$Value(29);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.shortCodeCount = function() {\n  return this.count$Values(29);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearShortCode = function() {\n  this.clear$Field(29);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getStandardRate = function() {\n  return this.get$Value(30);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getStandardRateOrDefault = function() {\n  return this.get$ValueOrDefault(30);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setStandardRate = function(a) {\n  this.set$Value(30, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasStandardRate = function() {\n  return this.has$Value(30);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.standardRateCount = function() {\n  return this.count$Values(30);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearStandardRate = function() {\n  this.clear$Field(30);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getCarrierSpecific = function() {\n  return this.get$Value(31);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getCarrierSpecificOrDefault = function() {\n  return this.get$ValueOrDefault(31);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setCarrierSpecific = function(a) {\n  this.set$Value(31, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasCarrierSpecific = function() {\n  return this.has$Value(31);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.carrierSpecificCount = function() {\n  return this.count$Values(31);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearCarrierSpecific = function() {\n  this.clear$Field(31);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getSmsServices = function() {\n  return this.get$Value(33);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getSmsServicesOrDefault = function() {\n  return this.get$ValueOrDefault(33);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setSmsServices = function(a) {\n  this.set$Value(33, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasSmsServices = function() {\n  return this.has$Value(33);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.smsServicesCount = function() {\n  return this.count$Values(33);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearSmsServices = function() {\n  this.clear$Field(33);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getNoInternationalDialling = function() {\n  return this.get$Value(24);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getNoInternationalDiallingOrDefault = function() {\n  return this.get$ValueOrDefault(24);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setNoInternationalDialling = function(a) {\n  this.set$Value(24, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasNoInternationalDialling = function() {\n  return this.has$Value(24);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.noInternationalDiallingCount = function() {\n  return this.count$Values(24);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearNoInternationalDialling = function() {\n  this.clear$Field(24);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getId = function() {\n  return this.get$Value(9);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getIdOrDefault = function() {\n  return this.get$ValueOrDefault(9);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setId = function(a) {\n  this.set$Value(9, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasId = function() {\n  return this.has$Value(9);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.idCount = function() {\n  return this.count$Values(9);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearId = function() {\n  this.clear$Field(9);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getCountryCode = function() {\n  return this.get$Value(10);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getCountryCodeOrDefault = function() {\n  return this.get$ValueOrDefault(10);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setCountryCode = function(a) {\n  this.set$Value(10, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasCountryCode = function() {\n  return this.has$Value(10);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.countryCodeCount = function() {\n  return this.count$Values(10);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearCountryCode = function() {\n  this.clear$Field(10);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getInternationalPrefix = function() {\n  return this.get$Value(11);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getInternationalPrefixOrDefault = function() {\n  return this.get$ValueOrDefault(11);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setInternationalPrefix = function(a) {\n  this.set$Value(11, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasInternationalPrefix = function() {\n  return this.has$Value(11);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.internationalPrefixCount = function() {\n  return this.count$Values(11);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearInternationalPrefix = function() {\n  this.clear$Field(11);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getPreferredInternationalPrefix = function() {\n  return this.get$Value(17);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getPreferredInternationalPrefixOrDefault = function() {\n  return this.get$ValueOrDefault(17);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setPreferredInternationalPrefix = function(a) {\n  this.set$Value(17, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasPreferredInternationalPrefix = function() {\n  return this.has$Value(17);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.preferredInternationalPrefixCount = function() {\n  return this.count$Values(17);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearPreferredInternationalPrefix = function() {\n  this.clear$Field(17);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getNationalPrefix = function() {\n  return this.get$Value(12);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getNationalPrefixOrDefault = function() {\n  return this.get$ValueOrDefault(12);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setNationalPrefix = function(a) {\n  this.set$Value(12, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasNationalPrefix = function() {\n  return this.has$Value(12);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.nationalPrefixCount = function() {\n  return this.count$Values(12);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearNationalPrefix = function() {\n  this.clear$Field(12);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getPreferredExtnPrefix = function() {\n  return this.get$Value(13);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getPreferredExtnPrefixOrDefault = function() {\n  return this.get$ValueOrDefault(13);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setPreferredExtnPrefix = function(a) {\n  this.set$Value(13, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasPreferredExtnPrefix = function() {\n  return this.has$Value(13);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.preferredExtnPrefixCount = function() {\n  return this.count$Values(13);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearPreferredExtnPrefix = function() {\n  this.clear$Field(13);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getNationalPrefixForParsing = function() {\n  return this.get$Value(15);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getNationalPrefixForParsingOrDefault = function() {\n  return this.get$ValueOrDefault(15);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setNationalPrefixForParsing = function(a) {\n  this.set$Value(15, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasNationalPrefixForParsing = function() {\n  return this.has$Value(15);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.nationalPrefixForParsingCount = function() {\n  return this.count$Values(15);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearNationalPrefixForParsing = function() {\n  this.clear$Field(15);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getNationalPrefixTransformRule = function() {\n  return this.get$Value(16);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getNationalPrefixTransformRuleOrDefault = function() {\n  return this.get$ValueOrDefault(16);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setNationalPrefixTransformRule = function(a) {\n  this.set$Value(16, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasNationalPrefixTransformRule = function() {\n  return this.has$Value(16);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.nationalPrefixTransformRuleCount = function() {\n  return this.count$Values(16);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearNationalPrefixTransformRule = function() {\n  this.clear$Field(16);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getSameMobileAndFixedLinePattern = function() {\n  return this.get$Value(18);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getSameMobileAndFixedLinePatternOrDefault = function() {\n  return this.get$ValueOrDefault(18);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setSameMobileAndFixedLinePattern = function(a) {\n  this.set$Value(18, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasSameMobileAndFixedLinePattern = function() {\n  return this.has$Value(18);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.sameMobileAndFixedLinePatternCount = function() {\n  return this.count$Values(18);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearSameMobileAndFixedLinePattern = function() {\n  this.clear$Field(18);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getNumberFormat = function(a) {\n  return this.get$Value(19, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getNumberFormatOrDefault = function(a) {\n  return this.get$ValueOrDefault(19, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.addNumberFormat = function(a) {\n  this.add$Value(19, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.numberFormatArray = function() {\n  return this.array$Values(19);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasNumberFormat = function() {\n  return this.has$Value(19);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.numberFormatCount = function() {\n  return this.count$Values(19);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearNumberFormat = function() {\n  this.clear$Field(19);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getIntlNumberFormat = function(a) {\n  return this.get$Value(20, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getIntlNumberFormatOrDefault = function(a) {\n  return this.get$ValueOrDefault(20, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.addIntlNumberFormat = function(a) {\n  this.add$Value(20, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.intlNumberFormatArray = function() {\n  return this.array$Values(20);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasIntlNumberFormat = function() {\n  return this.has$Value(20);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.intlNumberFormatCount = function() {\n  return this.count$Values(20);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearIntlNumberFormat = function() {\n  this.clear$Field(20);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getMainCountryForCode = function() {\n  return this.get$Value(22);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getMainCountryForCodeOrDefault = function() {\n  return this.get$ValueOrDefault(22);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setMainCountryForCode = function(a) {\n  this.set$Value(22, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasMainCountryForCode = function() {\n  return this.has$Value(22);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.mainCountryForCodeCount = function() {\n  return this.count$Values(22);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearMainCountryForCode = function() {\n  this.clear$Field(22);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getLeadingDigits = function() {\n  return this.get$Value(23);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getLeadingDigitsOrDefault = function() {\n  return this.get$ValueOrDefault(23);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setLeadingDigits = function(a) {\n  this.set$Value(23, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasLeadingDigits = function() {\n  return this.has$Value(23);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.leadingDigitsCount = function() {\n  return this.count$Values(23);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearLeadingDigits = function() {\n  this.clear$Field(23);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getLeadingZeroPossible = function() {\n  return this.get$Value(26);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getLeadingZeroPossibleOrDefault = function() {\n  return this.get$ValueOrDefault(26);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setLeadingZeroPossible = function(a) {\n  this.set$Value(26, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasLeadingZeroPossible = function() {\n  return this.has$Value(26);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.leadingZeroPossibleCount = function() {\n  return this.count$Values(26);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearLeadingZeroPossible = function() {\n  this.clear$Field(26);\n};\ni18n.phonenumbers.PhoneMetadataCollection = function() {\n  goog.proto2.Message.call(this);\n};\ngoog.inherits(i18n.phonenumbers.PhoneMetadataCollection, goog.proto2.Message);\ni18n.phonenumbers.PhoneMetadataCollection.descriptor_ = null;\ni18n.phonenumbers.PhoneMetadataCollection.prototype.getMetadata = function(a) {\n  return this.get$Value(1, a);\n};\ni18n.phonenumbers.PhoneMetadataCollection.prototype.getMetadataOrDefault = function(a) {\n  return this.get$ValueOrDefault(1, a);\n};\ni18n.phonenumbers.PhoneMetadataCollection.prototype.addMetadata = function(a) {\n  this.add$Value(1, a);\n};\ni18n.phonenumbers.PhoneMetadataCollection.prototype.metadataArray = function() {\n  return this.array$Values(1);\n};\ni18n.phonenumbers.PhoneMetadataCollection.prototype.hasMetadata = function() {\n  return this.has$Value(1);\n};\ni18n.phonenumbers.PhoneMetadataCollection.prototype.metadataCount = function() {\n  return this.count$Values(1);\n};\ni18n.phonenumbers.PhoneMetadataCollection.prototype.clearMetadata = function() {\n  this.clear$Field(1);\n};\ni18n.phonenumbers.NumberFormat.prototype.getDescriptor = function() {\n  var a = i18n.phonenumbers.NumberFormat.descriptor_;\n  a || (i18n.phonenumbers.NumberFormat.descriptor_ = a = goog.proto2.Message.createDescriptor(i18n.phonenumbers.NumberFormat, {0:{name:\"NumberFormat\", fullName:\"i18n.phonenumbers.NumberFormat\"}, 1:{name:\"pattern\", required:!0, fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 2:{name:\"format\", required:!0, fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 3:{name:\"leading_digits_pattern\", repeated:!0, fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 4:{name:\"national_prefix_formatting_rule\",\n  fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 6:{name:\"national_prefix_optional_when_formatting\", fieldType:goog.proto2.Message.FieldType.BOOL, defaultValue:!1, type:Boolean}, 5:{name:\"domestic_carrier_code_formatting_rule\", fieldType:goog.proto2.Message.FieldType.STRING, type:String}}));\n  return a;\n};\ni18n.phonenumbers.NumberFormat.getDescriptor = i18n.phonenumbers.NumberFormat.prototype.getDescriptor;\ni18n.phonenumbers.PhoneNumberDesc.prototype.getDescriptor = function() {\n  var a = i18n.phonenumbers.PhoneNumberDesc.descriptor_;\n  a || (i18n.phonenumbers.PhoneNumberDesc.descriptor_ = a = goog.proto2.Message.createDescriptor(i18n.phonenumbers.PhoneNumberDesc, {0:{name:\"PhoneNumberDesc\", fullName:\"i18n.phonenumbers.PhoneNumberDesc\"}, 2:{name:\"national_number_pattern\", fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 9:{name:\"possible_length\", repeated:!0, fieldType:goog.proto2.Message.FieldType.INT32, type:Number}, 10:{name:\"possible_length_local_only\", repeated:!0, fieldType:goog.proto2.Message.FieldType.INT32,\n  type:Number}, 6:{name:\"example_number\", fieldType:goog.proto2.Message.FieldType.STRING, type:String}}));\n  return a;\n};\ni18n.phonenumbers.PhoneNumberDesc.getDescriptor = i18n.phonenumbers.PhoneNumberDesc.prototype.getDescriptor;\ni18n.phonenumbers.PhoneMetadata.prototype.getDescriptor = function() {\n  var a = i18n.phonenumbers.PhoneMetadata.descriptor_;\n  a || (i18n.phonenumbers.PhoneMetadata.descriptor_ = a = goog.proto2.Message.createDescriptor(i18n.phonenumbers.PhoneMetadata, {0:{name:\"PhoneMetadata\", fullName:\"i18n.phonenumbers.PhoneMetadata\"}, 1:{name:\"general_desc\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 2:{name:\"fixed_line\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 3:{name:\"mobile\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc},\n  4:{name:\"toll_free\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 5:{name:\"premium_rate\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 6:{name:\"shared_cost\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 7:{name:\"personal_number\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 8:{name:\"voip\", fieldType:goog.proto2.Message.FieldType.MESSAGE,\n  type:i18n.phonenumbers.PhoneNumberDesc}, 21:{name:\"pager\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 25:{name:\"uan\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 27:{name:\"emergency\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 28:{name:\"voicemail\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 29:{name:\"short_code\",\n  fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 30:{name:\"standard_rate\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 31:{name:\"carrier_specific\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 33:{name:\"sms_services\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 24:{name:\"no_international_dialling\", fieldType:goog.proto2.Message.FieldType.MESSAGE,\n  type:i18n.phonenumbers.PhoneNumberDesc}, 9:{name:\"id\", required:!0, fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 10:{name:\"country_code\", fieldType:goog.proto2.Message.FieldType.INT32, type:Number}, 11:{name:\"international_prefix\", fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 17:{name:\"preferred_international_prefix\", fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 12:{name:\"national_prefix\", fieldType:goog.proto2.Message.FieldType.STRING, type:String},\n  13:{name:\"preferred_extn_prefix\", fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 15:{name:\"national_prefix_for_parsing\", fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 16:{name:\"national_prefix_transform_rule\", fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 18:{name:\"same_mobile_and_fixed_line_pattern\", fieldType:goog.proto2.Message.FieldType.BOOL, defaultValue:!1, type:Boolean}, 19:{name:\"number_format\", repeated:!0, fieldType:goog.proto2.Message.FieldType.MESSAGE,\n  type:i18n.phonenumbers.NumberFormat}, 20:{name:\"intl_number_format\", repeated:!0, fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.NumberFormat}, 22:{name:\"main_country_for_code\", fieldType:goog.proto2.Message.FieldType.BOOL, defaultValue:!1, type:Boolean}, 23:{name:\"leading_digits\", fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 26:{name:\"leading_zero_possible\", fieldType:goog.proto2.Message.FieldType.BOOL, defaultValue:!1, type:Boolean}}));\n  return a;\n};\ni18n.phonenumbers.PhoneMetadata.getDescriptor = i18n.phonenumbers.PhoneMetadata.prototype.getDescriptor;\ni18n.phonenumbers.PhoneMetadataCollection.prototype.getDescriptor = function() {\n  var a = i18n.phonenumbers.PhoneMetadataCollection.descriptor_;\n  a || (i18n.phonenumbers.PhoneMetadataCollection.descriptor_ = a = goog.proto2.Message.createDescriptor(i18n.phonenumbers.PhoneMetadataCollection, {0:{name:\"PhoneMetadataCollection\", fullName:\"i18n.phonenumbers.PhoneMetadataCollection\"}, 1:{name:\"metadata\", repeated:!0, fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneMetadata}}));\n  return a;\n};\ni18n.phonenumbers.PhoneMetadataCollection.getDescriptor = i18n.phonenumbers.PhoneMetadataCollection.prototype.getDescriptor;\ni18n.phonenumbers.PhoneNumber = function() {\n  goog.proto2.Message.call(this);\n};\ngoog.inherits(i18n.phonenumbers.PhoneNumber, goog.proto2.Message);\ni18n.phonenumbers.PhoneNumber.descriptor_ = null;\ni18n.phonenumbers.PhoneNumber.prototype.getCountryCode = function() {\n  return this.get$Value(1);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getCountryCodeOrDefault = function() {\n  return this.get$ValueOrDefault(1);\n};\ni18n.phonenumbers.PhoneNumber.prototype.setCountryCode = function(a) {\n  this.set$Value(1, a);\n};\ni18n.phonenumbers.PhoneNumber.prototype.hasCountryCode = function() {\n  return this.has$Value(1);\n};\ni18n.phonenumbers.PhoneNumber.prototype.countryCodeCount = function() {\n  return this.count$Values(1);\n};\ni18n.phonenumbers.PhoneNumber.prototype.clearCountryCode = function() {\n  this.clear$Field(1);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getNationalNumber = function() {\n  return this.get$Value(2);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getNationalNumberOrDefault = function() {\n  return this.get$ValueOrDefault(2);\n};\ni18n.phonenumbers.PhoneNumber.prototype.setNationalNumber = function(a) {\n  this.set$Value(2, a);\n};\ni18n.phonenumbers.PhoneNumber.prototype.hasNationalNumber = function() {\n  return this.has$Value(2);\n};\ni18n.phonenumbers.PhoneNumber.prototype.nationalNumberCount = function() {\n  return this.count$Values(2);\n};\ni18n.phonenumbers.PhoneNumber.prototype.clearNationalNumber = function() {\n  this.clear$Field(2);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getExtension = function() {\n  return this.get$Value(3);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getExtensionOrDefault = function() {\n  return this.get$ValueOrDefault(3);\n};\ni18n.phonenumbers.PhoneNumber.prototype.setExtension = function(a) {\n  this.set$Value(3, a);\n};\ni18n.phonenumbers.PhoneNumber.prototype.hasExtension = function() {\n  return this.has$Value(3);\n};\ni18n.phonenumbers.PhoneNumber.prototype.extensionCount = function() {\n  return this.count$Values(3);\n};\ni18n.phonenumbers.PhoneNumber.prototype.clearExtension = function() {\n  this.clear$Field(3);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getItalianLeadingZero = function() {\n  return this.get$Value(4);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getItalianLeadingZeroOrDefault = function() {\n  return this.get$ValueOrDefault(4);\n};\ni18n.phonenumbers.PhoneNumber.prototype.setItalianLeadingZero = function(a) {\n  this.set$Value(4, a);\n};\ni18n.phonenumbers.PhoneNumber.prototype.hasItalianLeadingZero = function() {\n  return this.has$Value(4);\n};\ni18n.phonenumbers.PhoneNumber.prototype.italianLeadingZeroCount = function() {\n  return this.count$Values(4);\n};\ni18n.phonenumbers.PhoneNumber.prototype.clearItalianLeadingZero = function() {\n  this.clear$Field(4);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getNumberOfLeadingZeros = function() {\n  return this.get$Value(8);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getNumberOfLeadingZerosOrDefault = function() {\n  return this.get$ValueOrDefault(8);\n};\ni18n.phonenumbers.PhoneNumber.prototype.setNumberOfLeadingZeros = function(a) {\n  this.set$Value(8, a);\n};\ni18n.phonenumbers.PhoneNumber.prototype.hasNumberOfLeadingZeros = function() {\n  return this.has$Value(8);\n};\ni18n.phonenumbers.PhoneNumber.prototype.numberOfLeadingZerosCount = function() {\n  return this.count$Values(8);\n};\ni18n.phonenumbers.PhoneNumber.prototype.clearNumberOfLeadingZeros = function() {\n  this.clear$Field(8);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getRawInput = function() {\n  return this.get$Value(5);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getRawInputOrDefault = function() {\n  return this.get$ValueOrDefault(5);\n};\ni18n.phonenumbers.PhoneNumber.prototype.setRawInput = function(a) {\n  this.set$Value(5, a);\n};\ni18n.phonenumbers.PhoneNumber.prototype.hasRawInput = function() {\n  return this.has$Value(5);\n};\ni18n.phonenumbers.PhoneNumber.prototype.rawInputCount = function() {\n  return this.count$Values(5);\n};\ni18n.phonenumbers.PhoneNumber.prototype.clearRawInput = function() {\n  this.clear$Field(5);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getCountryCodeSource = function() {\n  return this.get$Value(6);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getCountryCodeSourceOrDefault = function() {\n  return this.get$ValueOrDefault(6);\n};\ni18n.phonenumbers.PhoneNumber.prototype.setCountryCodeSource = function(a) {\n  this.set$Value(6, a);\n};\ni18n.phonenumbers.PhoneNumber.prototype.hasCountryCodeSource = function() {\n  return this.has$Value(6);\n};\ni18n.phonenumbers.PhoneNumber.prototype.countryCodeSourceCount = function() {\n  return this.count$Values(6);\n};\ni18n.phonenumbers.PhoneNumber.prototype.clearCountryCodeSource = function() {\n  this.clear$Field(6);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getPreferredDomesticCarrierCode = function() {\n  return this.get$Value(7);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getPreferredDomesticCarrierCodeOrDefault = function() {\n  return this.get$ValueOrDefault(7);\n};\ni18n.phonenumbers.PhoneNumber.prototype.setPreferredDomesticCarrierCode = function(a) {\n  this.set$Value(7, a);\n};\ni18n.phonenumbers.PhoneNumber.prototype.hasPreferredDomesticCarrierCode = function() {\n  return this.has$Value(7);\n};\ni18n.phonenumbers.PhoneNumber.prototype.preferredDomesticCarrierCodeCount = function() {\n  return this.count$Values(7);\n};\ni18n.phonenumbers.PhoneNumber.prototype.clearPreferredDomesticCarrierCode = function() {\n  this.clear$Field(7);\n};\ni18n.phonenumbers.PhoneNumber.CountryCodeSource = {UNSPECIFIED:0, FROM_NUMBER_WITH_PLUS_SIGN:1, FROM_NUMBER_WITH_IDD:5, FROM_NUMBER_WITHOUT_PLUS_SIGN:10, FROM_DEFAULT_COUNTRY:20};\ni18n.phonenumbers.PhoneNumber.prototype.getDescriptor = function() {\n  var a = i18n.phonenumbers.PhoneNumber.descriptor_;\n  a || (i18n.phonenumbers.PhoneNumber.descriptor_ = a = goog.proto2.Message.createDescriptor(i18n.phonenumbers.PhoneNumber, {0:{name:\"PhoneNumber\", fullName:\"i18n.phonenumbers.PhoneNumber\"}, 1:{name:\"country_code\", required:!0, fieldType:goog.proto2.Message.FieldType.INT32, type:Number}, 2:{name:\"national_number\", required:!0, fieldType:goog.proto2.Message.FieldType.UINT64, type:Number}, 3:{name:\"extension\", fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 4:{name:\"italian_leading_zero\",\n  fieldType:goog.proto2.Message.FieldType.BOOL, type:Boolean}, 8:{name:\"number_of_leading_zeros\", fieldType:goog.proto2.Message.FieldType.INT32, defaultValue:1, type:Number}, 5:{name:\"raw_input\", fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 6:{name:\"country_code_source\", fieldType:goog.proto2.Message.FieldType.ENUM, defaultValue:i18n.phonenumbers.PhoneNumber.CountryCodeSource.UNSPECIFIED, type:i18n.phonenumbers.PhoneNumber.CountryCodeSource}, 7:{name:\"preferred_domestic_carrier_code\",\n  fieldType:goog.proto2.Message.FieldType.STRING, type:String}}));\n  return a;\n};\ni18n.phonenumbers.PhoneNumber.ctor = i18n.phonenumbers.PhoneNumber;\ni18n.phonenumbers.PhoneNumber.ctor.getDescriptor = i18n.phonenumbers.PhoneNumber.prototype.getDescriptor;\n/*\n\n Copyright (C) 2010 The Libphonenumber Authors\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n*/\ni18n.phonenumbers.metadata = {};\ni18n.phonenumbers.metadata.countryCodeToRegionCodeMap = {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\".split(\" \"), 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\",\n\"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\"],\n241:[\"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\"],\n358:[\"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\"],\n599:[\"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\"], 800:[\"001\"], 808:[\"001\"], 850:[\"KP\"], 852:[\"HK\"], 853:[\"MO\"], 855:[\"KH\"], 856:[\"LA\"], 870:[\"001\"], 878:[\"001\"], 880:[\"BD\"], 881:[\"001\"], 882:[\"001\"], 883:[\"001\"], 886:[\"TW\"], 888:[\"001\"], 960:[\"MV\"], 961:[\"LB\"], 962:[\"JO\"], 963:[\"SY\"],\n964:[\"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\"], 979:[\"001\"], 992:[\"TJ\"], 993:[\"TM\"], 994:[\"AZ\"], 995:[\"GE\"], 996:[\"KG\"], 998:[\"UZ\"]};\ni18n.phonenumbers.metadata.countryToMetadata = {AC:[, [, , \"(?:[01589]\\\\d|[46])\\\\d{4}\", , , , , , , [5, 6]], [, , \"6[2-467]\\\\d{3}\", , , , \"62889\", , , [5]], [, , \"4\\\\d{4}\", , , , \"40123\", , , [5]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"AC\", 247, \"00\", , , , , , , , , , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"(?:0[1-9]|[1589]\\\\d)\\\\d{4}\", , , , \"542011\", , , [6]], , , [, , , , , , , ,\n, [-1]]], AD:[, [, , \"(?:1|6\\\\d)\\\\d{7}|[136-9]\\\\d{5}\", , , , , , , [6, 8, 9]], [, , \"[78]\\\\d{5}\", , , , \"712345\", , , [6]], [, , \"690\\\\d{6}|[36]\\\\d{5}\", , , , \"312345\", , , [6, 9]], [, , \"180[02]\\\\d{4}\", , , , \"18001234\", , , [8]], [, , \"[19]\\\\d{5}\", , , , \"912345\", , , [6]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"AD\", 376, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{3})\", \"$1 $2\", [\"[136-9]\"]], [, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"1\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\n\"$1 $2 $3\", [\"6\"]]], , [, , , , , , , , , [-1]], , , [, , \"1800\\\\d{4}\", , , , , , , [8]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], AE:[, [, , \"(?:[4-7]\\\\d|9[0-689])\\\\d{7}|800\\\\d{2,9}|[2-4679]\\\\d{7}\", , , , , , , [5, 6, 7, 8, 9, 10, 11, 12]], [, , \"[2-4679][2-8]\\\\d{6}\", , , , \"22345678\", , , [8], [7]], [, , \"5[024-68]\\\\d{7}\", , , , \"501234567\", , , [9]], [, , \"400\\\\d{6}|800\\\\d{2,9}\", , , , \"800123456\"], [, , \"900[02]\\\\d{5}\", , , , \"900234567\", , , [9]], [, , \"700[05]\\\\d{5}\", , , ,\n\"700012345\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"AE\", 971, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"600[25]\\\\d{5}\", , , , \"600212345\", , , [9]], , , [, , , , , , , , , [-1]]], AF:[, [, , \"[2-7]\\\\d{8}\",\n, , , , , , [9], [7]], [, , \"(?:[25][0-8]|[34][0-4]|6[0-5])[2-9]\\\\d{6}\", , , , \"234567890\", , , , [7]], [, , \"7(?:[014-9]\\\\d|2[89]|3[01])\\\\d{6}\", , , , \"701234567\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"AF\", 93, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[2-9]\"]], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[2-7]\"], \"0$1\"]], [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[2-7]\"], \"0$1\"]],\n[, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], AG:[, [, , \"(?:268|[58]\\\\d\\\\d|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"268(?:4(?:6[0-38]|84)|56[0-2])\\\\d{4}\", , , , \"2684601234\", , , , [7]], [, , \"268(?:464|7(?:1[3-9]|2\\\\d|3[246]|64|[78][0-689]))\\\\d{4}\", , , , \"2684641234\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\",\n, , , \"5002345678\"], [, , \"26848[01]\\\\d{4}\", , , , \"2684801234\", , , , [7]], \"AG\", 1, \"011\", \"1\", , , \"1|([457]\\\\d{6})$\", \"268$1\", , , , , [, , \"26840[69]\\\\d{4}\", , , , \"2684061234\", , , , [7]], , \"268\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], AI:[, [, , \"(?:264|[58]\\\\d\\\\d|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"2644(?:6[12]|9[78])\\\\d{4}\", , , , \"2644612345\", , , , [7]], [, , \"264(?:235|476|5(?:3[6-9]|8[1-4])|7(?:29|72))\\\\d{4}\", , , , \"2642351234\", ,\n, , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"AI\", 1, \"011\", \"1\", , , \"1|([2457]\\\\d{6})$\", \"264$1\", , , , , [, , , , , , , , , [-1]], , \"264\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], AL:[, [, , \"(?:700\\\\d\\\\d|900)\\\\d{3}|8\\\\d{5,7}|(?:[2-5]|6\\\\d)\\\\d{7}\", , , , , ,\n, [6, 7, 8, 9], [5]], [, , \"(?:[2358](?:[16-9]\\\\d[2-9]|[2-5][2-9]\\\\d)|4(?:[2-57-9][2-9]|6\\\\d)\\\\d)\\\\d{4}\", , , , \"22345678\", , , [8], [5, 6, 7]], [, , \"6(?:[689][2-9]|7[2-6])\\\\d{6}\", , , , \"662123456\", , , [9]], [, , \"800\\\\d{4}\", , , , \"8001234\", , , [7]], [, , \"900[1-9]\\\\d\\\\d\", , , , \"900123\", , , [6]], [, , \"808[1-9]\\\\d\\\\d\", , , , \"808123\", , , [6]], [, , \"700[2-9]\\\\d{4}\", , , , \"70021234\", , , [8]], [, , , , , , , , , [-1]], \"AL\", 355, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{3,4})\", \"$1 $2\",\n[\"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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], AM:[, [, , \"(?:[1-489]\\\\d|55|60|77)\\\\d{6}\", , , , , , , [8], [5, 6]], [, , \"(?:(?:1[0-25]|47)\\\\d|2(?:2[2-46]|3[1-8]|4[2-69]|5[2-7]|6[1-9]|8[1-7])|3[12]2)\\\\d{5}\",\n, , , \"10123456\", , , , [5, 6]], [, , \"(?:33|4[1349]|55|77|88|9[13-9])\\\\d{6}\", , , , \"77123456\"], [, , \"800\\\\d{5}\", , , , \"80012345\"], [, , \"90[016]\\\\d{5}\", , , , \"90012345\"], [, , \"80[1-4]\\\\d{5}\", , , , \"80112345\"], [, , , , , , , , , [-1]], [, , \"60(?:2[78]|3[5-9]|4[02-9]|5[0-46-9]|[6-8]\\\\d|90)\\\\d{4}\", , , , \"60271234\"], \"AM\", 374, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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})\",\n\"$1 $2\", [\"1|47\"], \"(0$1)\"], [, \"(\\\\d{2})(\\\\d{6})\", \"$1 $2\", [\"[3-9]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], AO:[, [, , \"[29]\\\\d{8}\", , , , , , , [9]], [, , \"2\\\\d(?:[0134][25-9]|[25-9]\\\\d)\\\\d{5}\", , , , \"222123456\"], [, , \"9[1-49]\\\\d{7}\", , , , \"923123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"AO\", 244, \"00\", , , , ,\n, , , [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[29]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], AR:[, [, , \"11\\\\d{8}|(?:[2368]|9\\\\d)\\\\d{9}\", , , , , , , [10, 11], [6, 7, 8]], [, , \"(?:2(?:646[0-46-9]|9(?:45[02-69]|54[2-8]))|3(?:4(?:3(?:5[0-7]|6[1-69])|5(?:4[0-4679]|[56][024-6]))|585[013-7]|7(?:(?:1[15]|81)[46]|77[2-8])|8(?:(?:21|4[16]|9[12])[46]|35[124-6]|5(?:5[0-46-9]|6[0-246-9])|6(?:5[2-8]|9[46])|86[0-68])))\\\\d{5}|(?:2(?:284|657|9(?:20|66))|3(?:4(?:8[27]|92)|755|878))[2-7]\\\\d{5}|(?:2(?:2(?:2[59]|44|52)|3(?:26|4[24])|473|9(?:[07]2|2[26]|34|46))|3327)[45]\\\\d{5}|(?:2(?:(?:26|62)2|3(?:02|2[03])|477|9(?:42|83))|3(?:4(?:[47]6|62|89)|5(?:41|64)|873))[2-6]\\\\d{5}|(?:(?:11[2-7]|670)\\\\d|2(?:2(?:0[45]|1[2-6]|3[3-6])|3(?:[06]4|7[45])|494|6(?:04|1[2-7]|[346][45])|80[45]|9(?:[17][4-6]|44|8[45]|9[3-6]))|3(?:364|4(?:1[2-7]|2[4-6]|[38]4)|5(?:1[2-8]|3[4-6]|8[46])|6(?:2[45]|44)|7[069][45]|8(?:0[45]|1[2-6]|34|5[34]|7[24-6]|8[3-5])))\\\\d{6}|2(?:2(?:21|4[23]|6[145]|7[1-4]|8[356]|9[267])|3(?:16|3[13-8]|43|5[346-8]|9[3-5])|475|6(?:2[46]|4[78]|5[1568])|9(?:03|2[1457-9]|3[1356]|4[08]|[56][23]|82))4\\\\d{5}|(?:2(?:2(?:57|81)|3(?:24|46|92)|9(?:01|23|64))|3(?:329|4(?:42|71)|5(?:25|37|4[347]|71)|7(?:18|5[17])|888))[3-6]\\\\d{5}|(?:2(?:2(?:02|2[3467]|4[156]|5[45]|6[6-8]|91)|3(?:1[47]|[24]5|5[25]|96)|47[48]|625|932)|3(?:38[2578]|4(?:0[0-24-9]|3[78]|4[457]|58|6[03-9]|72|83|9[136-8])|5(?:2[124]|[368][23]|4[2689]|7[2-6])|7(?:16|2[15]|3[145]|4[13]|5[468]|7[2-5]|8[26])|8(?:2[5-7]|3[278]|4[3-5]|5[78]|6[1-378]|[78]7|94)))[4-6]\\\\d{5}\",\n, , , \"1123456789\", , , [10], [6, 7, 8]], [, , \"9(?:2(?:646[0-46-9]|9(?:45[02-69]|54[2-8]))|3(?:4(?:3(?:5[0-7]|6[1-69])|5(?:4[0-4679]|[56][024-6]))|585[013-7]|7(?:(?:1[15]|81)[46]|77[2-8])|8(?:(?:21|4[16]|9[12])[46]|35[124-6]|5(?:5[0-46-9]|6[0-246-9])|6(?:5[2-8]|9[46])|86[0-68])))\\\\d{5}|9(?:2(?:284|657|9(?:20|66))|3(?:4(?:8[27]|92)|755|878))[2-7]\\\\d{5}|9(?:2(?:2(?:2[59]|44|52)|3(?:26|4[24])|473|9(?:[07]2|2[26]|34|46))|3327)[45]\\\\d{5}|9(?:2(?:(?:26|62)2|3(?:02|2[03])|477|9(?:42|83))|3(?:4(?:[47]6|62|89)|5(?:41|64)|873))[2-6]\\\\d{5}|(?:675\\\\d|9(?:11[2-7]\\\\d|2(?:2(?:0[45]|1[2-6]|3[3-6])|3(?:[06]4|7[45])|494|6(?:04|1[2-7]|[346][45])|80[45]|9(?:[17][4-6]|44|8[45]|9[3-6]))|3(?:364|4(?:1[2-7]|2[4-6]|[38]4)|5(?:1[2-8]|3[4-6]|8[46])|6(?:2[45]|44)|7[069][45]|8(?:0[45]|1[2-6]|34|5[34]|7[24-6]|8[3-5]))))\\\\d{6}|92(?:2(?:21|4[23]|6[145]|7[1-4]|8[356]|9[267])|3(?:16|3[13-8]|43|5[346-8]|9[3-5])|475|6(?:2[46]|4[78]|5[1568])|9(?:03|2[1457-9]|3[1356]|4[08]|[56][23]|82))4\\\\d{5}|9(?:2(?:2(?:57|81)|3(?:24|46|92)|9(?:01|23|64))|3(?:329|4(?:42|71)|5(?:25|37|4[347]|71)|7(?:18|5[17])|888))[3-6]\\\\d{5}|9(?:2(?:2(?:02|2[3467]|4[156]|5[45]|6[6-8]|91)|3(?:1[47]|[24]5|5[25]|96)|47[48]|625|932)|3(?:38[2578]|4(?:0[0-24-9]|3[78]|4[457]|58|6[03-9]|72|83|9[136-8])|5(?:2[124]|[368][23]|4[2689]|7[2-6])|7(?:16|2[15]|3[145]|4[13]|5[468]|7[2-5]|8[26])|8(?:2[5-7]|3[278]|4[3-5]|5[78]|6[1-378]|[78]7|94)))[4-6]\\\\d{5}\",\n, , , \"91123456789\", , , , [6, 7, 8]], [, , \"800\\\\d{7}\", , , , \"8001234567\", , , [10]], [, , \"60[04579]\\\\d{7}\", , , , \"6001234567\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"AR\", 54, \"00\", \"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)?\",\n\"9$1\", , , [[, \"(\\\\d{3})\", \"$1\", [\"[09]|1(?:[02]|1[02-5])\"]], [, \"(\\\\d{2})(\\\\d{4})\", \"$1-$2\", [\"[2-7]|8[0-7]\"]], [, \"(\\\\d{3})(\\\\d{4})\", \"$1-$2\", [\"[2-7]|8[013-8]\"]], [, \"(\\\\d{4})(\\\\d{4})\", \"$1-$2\", [\"2[0-8]|[3-7]\"]], [, \"(\\\\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)\",\n\"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(?:[24-6]|3[2-5]))|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]\"],\n\"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\", [\"[23]\"], \"0$1\", , 1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"[68]\"], \"0$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)\",\n\"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(?:[24-6]|3[2-5]))|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]\"],\n\"0$1\"], [, \"(\\\\d)(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$2 15-$3-$4\", [\"91\"], \"0$1\"], [, \"(\\\\d)(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$2 15-$3-$4\", [\"9\"], \"0$1\"]], [[, \"(\\\\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]\",\n\"2(?:[23]02|6(?:[25]|4(?:64|[78]))|9(?:[02356]|4(?:[0268]|5(?:[24-6]|3[2-5]))|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\", [\"[23]\"],\n\"0$1\", , 1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"[68]\"], \"0$1\"], [, \"(\\\\d)(\\\\d{4})(\\\\d{2})(\\\\d{4})\", \"$1 $2 $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]\",\n\"9(?:2(?:[23]02|6(?:[25]|4(?:64|[78]))|9(?:[02356]|4(?:[0268]|5(?:[24-6]|3[2-5]))|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]\"]], [, \"(\\\\d)(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3-$4\", [\"91\"]], [, \"(\\\\d)(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3-$4\",\n[\"9\"]]], [, , , , , , , , , [-1]], , , [, , \"810\\\\d{7}\", , , , , , , [10]], [, , \"810\\\\d{7}\", , , , \"8101234567\", , , [10]], , , [, , , , , , , , , [-1]]], AS:[, [, , \"(?:[58]\\\\d\\\\d|684|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"6846(?:22|33|44|55|77|88|9[19])\\\\d{4}\", , , , \"6846221234\", , , , [7]], [, , \"684(?:2(?:5[2468]|72)|7(?:3[13]|70))\\\\d{4}\", , , , \"6847331234\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , ,\n, , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"AS\", 1, \"011\", \"1\", , , \"1|([267]\\\\d{6})$\", \"684$1\", , , , , [, , , , , , , , , [-1]], , \"684\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], AT:[, [, , \"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,\n11, 12, 13], [3]], [, , \"1(?:11\\\\d|[2-9]\\\\d{3,11})|(?:316|463|(?:51|66|73)2)\\\\d{3,10}|(?:2(?:1[467]|2[13-8]|5[2357]|6[1-46-8]|7[1-8]|8[124-7]|9[1458])|3(?:1[1-578]|3[23568]|4[5-7]|5[1378]|6[1-38]|8[3-68])|4(?:2[1-8]|35|7[1368]|8[2457])|5(?:2[1-8]|3[357]|4[147]|5[12578]|6[37])|6(?:13|2[1-47]|4[135-8]|5[468])|7(?:2[1-8]|35|4[13478]|5[68]|6[16-8]|7[1-6]|9[45]))\\\\d{4,10}\", , , , \"1234567890\", , , , [3]], [, , \"6(?:5[0-3579]|6[013-9]|[7-9]\\\\d)\\\\d{4,10}\", , , , \"664123456\", , , [7, 8, 9, 10, 11, 12, 13]],\n[, , \"800\\\\d{6,10}\", , , , \"800123456\", , , [9, 10, 11, 12, 13]], [, , \"9(?:0[01]|3[019])\\\\d{6,10}\", , , , \"900123456\", , , [9, 10, 11, 12, 13]], [, , \"8(?:10|2[018])\\\\d{6,10}|828\\\\d{5}\", , , , \"810123456\", , , [8, 9, 10, 11, 12, 13]], [, , , , , , , , , [-1]], [, , \"5(?:0[1-9]|17|[79]\\\\d)\\\\d{2,10}|7[28]0\\\\d{6,10}\", , , , \"780123456\", , , [5, 6, 7, 8, 9, 10, 11, 12, 13]], \"AT\", 43, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d)(\\\\d{3,12})\", \"$1 $2\", [\"1(?:11|[2-9])\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{2})\", \"$1 $2\",\n[\"517\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3,5})\", \"$1 $2\", [\"5[079]\"], \"0$1\"], [, \"(\\\\d{6})\", \"$1\", [\"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\"]], [[, \"(\\\\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})\",\n\"$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\"]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], AU:[, [, , \"1(?:[0-79]\\\\d{7,8}|8[0-24-9]\\\\d{7})|(?:[2-478]\\\\d\\\\d|550)\\\\d{6}|1\\\\d{4,7}\",\n, , , , , , [5, 6, 7, 8, 9, 10]], [, , \"(?:[237]\\\\d{5}|8(?:51(?:0(?:0[03-9]|[1247]\\\\d|3[2-9]|5[0-8]|6[1-9]|8[0-6])|1(?:1[69]|[23]\\\\d|4[0-4]))|(?:[6-8]\\\\d{3}|9(?:[02-9]\\\\d\\\\d|1(?:[0-57-9]\\\\d|6[0135-9])))\\\\d))\\\\d{3}\", , , , \"212345678\", , , [9], [8]], [, , \"483[0-3]\\\\d{5}|4(?:[0-3]\\\\d|4[047-9]|5[0-25-9]|6[06-9]|7[02-9]|8[0-2457-9]|9[0-27-9])\\\\d{6}\", , , , \"412345678\", , , [9]], [, , \"180(?:0\\\\d{3}|2)\\\\d{3}\", , , , \"1800123456\", , , [7, 10]], [, , \"190[0-26]\\\\d{6}\", , , , \"1900123456\", , , [10]], [,\n, \"13(?:00\\\\d{3}|45[0-4])\\\\d{3}|13\\\\d{4}\", , , , \"1300123456\", , , [6, 8, 10]], [, , , , , , , , , [-1]], [, , \"(?:14(?:5(?:1[0458]|[23][458])|71\\\\d)|550\\\\d\\\\d)\\\\d{4}\", , , , \"550123456\", , , [9]], \"AU\", 61, \"001[14-689]|14(?:1[14]|34|4[17]|[56]6|7[47]|88)0011\", \"0\", , , \"0|(183[12])\", , \"0011\", , [[, \"(\\\\d{2})(\\\\d{3,4})\", \"$1 $2\", [\"16\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3\", [\"13\"]], [, \"(\\\\d{3})(\\\\d{3})\", \"$1 $2\", [\"19\"]], [, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"180\", \"1802\"]], [, \"(\\\\d{4})(\\\\d{3,4})\",\n\"$1 $2\", [\"19\"]], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{2,4})\", \"$1 $2 $3\", [\"16\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"14|[45]\"], \"0$1\"], [, \"(\\\\d)(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"[2378]\"], \"(0$1)\", \"$CC ($1)\"], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"1(?:30|[89])\"]]], [[, \"(\\\\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|[45]\"], \"0$1\"], [, \"(\\\\d)(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"[2378]\"],\n\"(0$1)\", \"$CC ($1)\"], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"1(?:30|[89])\"]]], [, , \"16\\\\d{3,7}\", , , , \"1612345\", , , [5, 6, 7, 8, 9]], 1, , [, , \"1[38]00\\\\d{6}|1(?:345[0-4]|802)\\\\d{3}|13\\\\d{4}\", , , , , , , [6, 7, 8, 10]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], AW:[, [, , \"(?:[25-79]\\\\d\\\\d|800)\\\\d{4}\", , , , , , , [7]], [, , \"5(?:2\\\\d|8[1-9])\\\\d{4}\", , , , \"5212345\"], [, , \"(?:290|5[69]\\\\d|6(?:[03]0|22|4[0-2]|[69]\\\\d)|7(?:[34]\\\\d|7[07])|9(?:6[45]|9[4-8]))\\\\d{4}\", , , , \"5601234\"],\n[, , \"800\\\\d{4}\", , , , \"8001234\"], [, , \"900\\\\d{4}\", , , , \"9001234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"(?:28\\\\d|501)\\\\d{4}\", , , , \"5011234\"], \"AW\", 297, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[25-9]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], AX:[, [, , \"2\\\\d{4,9}|35\\\\d{4,5}|(?:60\\\\d\\\\d|800)\\\\d{4,6}|(?:[147]\\\\d|3[0-46-9]|50)\\\\d{4,8}\", , , , , , , [5, 6, 7, 8, 9, 10]], [, , \"18[1-8]\\\\d{3,6}\",\n, , , \"181234567\", , , [6, 7, 8, 9]], [, , \"(?:4[0-8]|50)\\\\d{4,8}\", , , , \"412345678\", , , [6, 7, 8, 9, 10]], [, , \"800\\\\d{4,6}\", , , , \"800123456\", , , [7, 8, 9]], [, , \"[67]00\\\\d{5,6}\", , , , \"600123456\", , , [8, 9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"AX\", 358, \"00|99(?:[01469]|5(?:[14]1|3[23]|5[59]|77|88|9[09]))\", \"0\", , , \"0\", , \"00\", , , , [, , , , , , , , , [-1]], , \"18\", [, , , , , , , , , [-1]], [, , \"(?:10|[23][09])\\\\d{4,8}|60(?:[12]\\\\d{5,6}|6\\\\d{7})|7(?:(?:1|3\\\\d)\\\\d{7}|5[03-9]\\\\d{3,7})|20[2-59]\\\\d\\\\d\",\n, , , \"10112345\"], , , [, , , , , , , , , [-1]]], AZ:[, [, , \"(?:365\\\\d{3}|900200)\\\\d{3}|(?:[12457]\\\\d|60|88)\\\\d{7}\", , , , , , , [9], [7]], [, , \"365(?:[0-46-9]\\\\d|5[0-35-9])\\\\d{4}|(?:1[28]\\\\d|2(?:[045]2|1[24]|2[2-4]|33|6[23]))\\\\d{6}\", , , , \"123123456\", , , , [7]], [, , \"36554\\\\d{4}|(?:4[04]|5[015]|60|7[07])\\\\d{7}\", , , , \"401234567\"], [, , \"88\\\\d{7}\", , , , \"881234567\"], [, , \"900200\\\\d{3}\", , , , \"900200123\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"AZ\",\n994, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3\", [\"[1-9]\"]], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"9\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[12]|365\", \"[12]|365\", \"[12]|365(?:[0-46-9]|5[0-35-9])\"], \"(0$1)\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[3-8]\"], \"0$1\"]], [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"9\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[12]|365\", \"[12]|365\",\n\"[12]|365(?:[0-46-9]|5[0-35-9])\"], \"(0$1)\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[3-8]\"], \"0$1\"]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BA:[, [, , \"6\\\\d{8}|(?:[35689]\\\\d|49|70)\\\\d{6}\", , , , , , , [8, 9], [6]], [, , \"(?:3(?:[05-79][2-9]|1[4579]|[23][24-9]|4[2-4689]|8[2457-9])|49[2-579]|5(?:0[2-49]|[13][2-9]|[268][2-4679]|4[4689]|5[2-79]|7[2-69]|9[2-4689]))\\\\d{5}\", , , , \"30212345\", , , [8], [6]], [, ,\n\"6(?:0(?:3\\\\d|40)|[1-356]\\\\d|44[0-6]|71[137])\\\\d{5}\", , , , \"61123456\"], [, , \"8[08]\\\\d{6}\", , , , \"80123456\", , , [8]], [, , \"9[0246]\\\\d{6}\", , , , \"90123456\", , , [8]], [, , \"8[12]\\\\d{6}\", , , , \"82123456\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"BA\", 387, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{3})\", \"$1-$2\", [\"[2-9]\"]], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"6[1-356]|[7-9]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2-$3\", [\"[3-5]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{3})\",\n\"$1 $2 $3 $4\", [\"6\"], \"0$1\"]], [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"6[1-356]|[7-9]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2-$3\", [\"[3-5]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{3})\", \"$1 $2 $3 $4\", [\"6\"], \"0$1\"]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"70(?:3[0146]|[56]0)\\\\d{4}\", , , , \"70341234\", , , [8]], , , [, , , , , , , , , [-1]]], BB:[, [, , \"(?:246|[58]\\\\d\\\\d|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"246(?:2(?:2[78]|7[0-4])|4(?:1[024-6]|2\\\\d|3[2-9])|5(?:20|[34]\\\\d|54|7[1-3])|6(?:2\\\\d|38)|7[35]7|9(?:1[89]|63))\\\\d{4}\",\n, , , \"2464123456\", , , , [7]], [, , \"246(?:2(?:[356]\\\\d|4[0-57-9]|8[0-79])|45\\\\d|69[5-7]|8(?:[2-5]\\\\d|83))\\\\d{4}\", , , , \"2462501234\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"(?:246976|900[2-9]\\\\d\\\\d)\\\\d{4}\", , , , \"9002123456\", , , , [7]], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , \"24631\\\\d{5}\", , , , \"2463101234\", , , , [7]], \"BB\", 1, \"011\", \"1\", , , \"1|([2-9]\\\\d{6})$\", \"246$1\", , , , , [, , ,\n, , , , , , [-1]], , \"246\", [, , , , , , , , , [-1]], [, , \"246(?:292|367|4(?:1[7-9]|3[01]|44|67)|7(?:36|53))\\\\d{4}\", , , , \"2464301234\", , , , [7]], , , [, , , , , , , , , [-1]]], BD:[, [, , \"[13469]\\\\d{9}|8[0-79]\\\\d{7,8}|[2-7]\\\\d{8}|[2-9]\\\\d{7}|[3-689]\\\\d{6}|[57-9]\\\\d{5}\", , , , , , , [6, 7, 8, 9, 10]], [, , \"(?:3(?:03[56]|224)|4(?:22[25]|653))\\\\d{3,4}|(?:4(?:31\\\\d\\\\d|[46]23)|5(?:222|32[37]))\\\\d{3}(?:\\\\d{2})?|(?:3(?:42[47]|529|823)|4(?:027|525|658)|(?:56|73)2|6257|9[35]1)\\\\d{3}|(?:3(?:02[348]|22[35]|324|422)|4(?:22[67]|32[236-9]|6(?:2[46]|5[57])|953)|5526|6(?:024|6655)|81)\\\\d{4,5}|(?:2(?:7(?:1[0-267]|2[0-289]|3[0-29]|4[01]|5[1-3]|6[013]|7[0178]|91)|8(?:0[125]|1[1-6]|2[0157-9]|3[1-69]|41|6[1-35]|7[1-5]|8[1-8]|9[0-6])|9(?:0[0-2]|1[0-4]|2[568]|3[3-6]|5[5-7]|6[01367]|7[15]|8[014-9]))|3(?:0(?:2[025-79]|3[2-4])|22[12]|32[2356]|824)|4(?:02[09]|22[348]|32[045]|523|6(?:27|54))|666(?:22|53)|8(?:4[12]|[5-7]2)|9(?:[024]2|81))\\\\d{4}|(?:2[45]\\\\d\\\\d|3(?:1(?:2[5-7]|[5-7])|425|822)|4(?:033|1\\\\d|[257]1|332|4(?:2[246]|5[25])|6(?:25|56|62)|8(?:23|54)|92[2-5])|5(?:02[03489]|22[457]|32[569]|42[46]|6(?:[18]|53)|724|826)|6(?:023|2(?:2[2-5]|5[3-5]|8)|32[3478]|42[34]|52[47]|6(?:[18]|6(?:2[34]|5[24]))|[78]2[2-5]|92[2-6])|7(?:02|21\\\\d|[3-589]1|6[12]|72[24])|8(?:0|217|3[12]|[5-7]1)|9[24]1)\\\\d{5}|(?:(?:3[2-8]|5[2-57-9]|6[03-589])1|4[4689][18])\\\\d{5}|[59]1\\\\d{5}\",\n, , , \"27111234\"], [, , \"(?:1[13-9]\\\\d|644)\\\\d{7}|(?:3[78]|44|66)[02-9]\\\\d{7}\", , , , \"1812345678\", , , [10]], [, , \"80[03]\\\\d{7}\", , , , \"8001234567\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"96(?:0[469]|1[0-47]|3[389]|6[69]|7[78])\\\\d{6}\", , , , \"9604123456\", , , [10]], \"BD\", 880, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{4,6})\", \"$1-$2\", [\"31[5-7]|[459]1\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{3,7})\", \"$1-$2\", [\"3(?:[67]|8[013-9])|4(?:6[168]|7|[89][18])|5(?:6[128]|9)|6(?:28|4[14]|5)|7[2-589]|8(?:0[014-9]|[12])|9[358]|(?:3[2-5]|4[235]|5[2-578]|6[0389]|76|8[3-7]|9[24])1|(?:44|66)[01346-9]\"],\n\"0$1\"], [, \"(\\\\d{4})(\\\\d{3,6})\", \"$1-$2\", [\"[13-9]\"], \"0$1\"], [, \"(\\\\d)(\\\\d{7,8})\", \"$1-$2\", [\"2\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BE:[, [, , \"4\\\\d{8}|[1-9]\\\\d{7}\", , , , , , , [8, 9]], [, , \"80[2-8]\\\\d{5}|(?:1[0-69]|[23][2-8]|4[23]|5\\\\d|6[013-57-9]|71|8[1-79]|9[2-4])\\\\d{6}\", , , , \"12345678\", , , [8]], [, , \"4(?:5[56]|6[0135-8]|[79]\\\\d|8[3-9])\\\\d{6}\", , , , \"470123456\", , , [9]], [, , \"800[1-9]\\\\d{4}\", ,\n, , \"80012345\", , , [8]], [, , \"(?:70(?:2[0-57]|3[0457]|44|69|7[0579])|90(?:0[0-35-8]|1[36]|2[0-3568]|3[0135689]|4[2-68]|5[1-68]|6[0-378]|7[23568]|9[34679]))\\\\d{4}\", , , , \"90012345\", , , [8]], [, , \"7879\\\\d{4}\", , , , \"78791234\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"BE\", 32, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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})\",\n\"$1 $2 $3 $4\", [\"[15-8]\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"4\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"78(?:0[57]|1[0458]|2[25]|3[5-8]|48|[56]0|7[078])\\\\d{4}\", , , , \"78102345\", , , [8]], , , [, , , , , , , , , [-1]]], BF:[, [, , \"[025-7]\\\\d{7}\", , , , , , , [8]], [, , \"2(?:0(?:49|5[23]|6[56]|9[016-9])|4(?:4[569]|5[4-6]|6[56]|7[0179])|5(?:[34]\\\\d|50|6[5-7]))\\\\d{4}\", , , , \"20491234\"], [, , \"(?:0[17]|5[124-8]|[67]\\\\d)\\\\d{6}\", , , ,\n\"70123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"BF\", 226, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[025-7]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BG:[, [, , \"[2-7]\\\\d{6,7}|[89]\\\\d{6,8}|2\\\\d{5}\", , , , , , , [6, 7, 8, 9], [4, 5]], [, , \"2\\\\d{5,7}|(?:43[1-6]|70[1-9])\\\\d{4,5}|(?:[36]\\\\d|4[124-7]|[57][1-9]|8[1-6]|9[1-7])\\\\d{5,6}\",\n, , , \"2123456\", , , [6, 7, 8], [4, 5]], [, , \"43[07-9]\\\\d{5}|(?:48|8[7-9]\\\\d|9(?:8\\\\d|9[69]))\\\\d{6}\", , , , \"48123456\", , , [8, 9]], [, , \"800\\\\d{5}\", , , , \"80012345\", , , [8]], [, , \"90\\\\d{6}\", , , , \"90123456\", , , [8]], [, , \"700\\\\d{5}\", , , , \"70012345\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"BG\", 359, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{6})\", \"$1\", [\"1\"]], [, \"(\\\\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]\"],\n\"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\"]], [[, \"(\\\\d)(\\\\d)(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"2\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{4})\",\n\"$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\"]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]],\n[, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BH:[, [, , \"[136-9]\\\\d{7}\", , , , , , , [8]], [, , \"(?:1(?:3[1356]|6[0156]|7\\\\d)\\\\d|6(?:1[16]\\\\d|500|6(?:0\\\\d|3[12]|44|7[7-9]|88)|9[69][69])|7(?:1(?:11|78)|7\\\\d\\\\d))\\\\d{4}\", , , , \"17001234\"], [, , \"(?:3(?:[1-4679]\\\\d|5[013-69]|8[0-47-9])\\\\d|6(?:3(?:00|33|6[16])|6(?:3[03-9]|[69]\\\\d|7[0-6])))\\\\d{4}\", , , , \"36001234\"], [, , \"80\\\\d{6}\", , , , \"80123456\"], [, , \"(?:87|9[014578])\\\\d{6}\", , , , \"90123456\"], [, , \"84\\\\d{6}\", , , , \"84123456\"], [,\n, , , , , , , , [-1]], [, , , , , , , , , [-1]], \"BH\", 973, \"00\", , , , , , , , [[, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[13679]|8[047]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BI:[, [, , \"(?:[267]\\\\d|31)\\\\d{6}\", , , , , , , [8]], [, , \"22\\\\d{6}\", , , , \"22201234\"], [, , \"(?:29|31|6[189]|7[125-9])\\\\d{6}\", , , , \"79561234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]],\n[, , , , , , , , , [-1]], \"BI\", 257, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[2367]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BJ:[, [, , \"[2689]\\\\d{7}\", , , , , , , [8]], [, , \"2(?:02|1[037]|2[45]|3[68])\\\\d{5}\", , , , \"20211234\"], [, , \"(?:6\\\\d|9[013-9])\\\\d{6}\", , , , \"90011234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]],\n[, , \"857[58]\\\\d{4}\", , , , \"85751234\"], \"BJ\", 229, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[2689]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"81\\\\d{6}\", , , , \"81123456\"], , , [, , , , , , , , , [-1]]], BL:[, [, , \"(?:590|69\\\\d)\\\\d{6}\", , , , , , , [9]], [, , \"590(?:2[7-9]|5[12]|87)\\\\d{4}\", , , , \"590271234\"], [, , \"69(?:0\\\\d\\\\d|1(?:2[29]|3[0-5]))\\\\d{4}\", , , , \"690001234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , ,\n, , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"BL\", 590, \"00\", \"0\", , , \"0\", , , , , , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BM:[, [, , \"(?:441|[58]\\\\d\\\\d|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"441(?:2(?:02|23|[3479]\\\\d|61)|[46]\\\\d\\\\d|5(?:4\\\\d|60|89)|824)\\\\d{4}\", , , , \"4412345678\", , , , [7]], [, , \"441(?:[37]\\\\d|5[0-39])\\\\d{5}\", , , , \"4413701234\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\",\n, , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"BM\", 1, \"011\", \"1\", , , \"1|([2-8]\\\\d{6})$\", \"441$1\", , , , , [, , , , , , , , , [-1]], , \"441\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BN:[, [, , \"[2-578]\\\\d{6}\", , , , , , , [7]], [, , \"22[0-7]\\\\d{4}|(?:2[013-9]|[3-5]\\\\d)\\\\d{5}\", , , , \"2345678\"], [, , \"(?:22[89]|[78]\\\\d\\\\d)\\\\d{4}\",\n, , , \"7123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"BN\", 673, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[2-578]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BO:[, [, , \"(?:[2-467]\\\\d\\\\d|8001)\\\\d{5}\", , , , , , , [8, 9], [7]], [, , \"(?:2(?:2\\\\d\\\\d|5(?:11|[258]\\\\d|9[67])|6(?:12|2\\\\d|9[34])|8(?:2[34]|39|62))|3(?:3\\\\d\\\\d|4(?:6\\\\d|8[24])|8(?:25|42|5[257]|86|9[25])|9(?:[27]\\\\d|3[2-4]|4[248]|5[24]|6[2-6]))|4(?:4\\\\d\\\\d|6(?:11|[24689]\\\\d|72)))\\\\d{4}\",\n, , , \"22123456\", , , [8], [7]], [, , \"[67]\\\\d{7}\", , , , \"71234567\", , , [8]], [, , \"8001[07]\\\\d{4}\", , , , \"800171234\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"BO\", 591, \"00(?:1\\\\d)?\", \"0\", , , \"0(1\\\\d)?\", , , , [[, \"(\\\\d)(\\\\d{7})\", \"$1 $2\", [\"[23]|4[46]\"], , \"0$CC $1\"], [, \"(\\\\d{8})\", \"$1\", [\"[67]\"], , \"0$CC $1\"], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{4})\", \"$1 $2 $3\", [\"8\"], , \"0$CC $1\"]], , [, , , , , , , , , [-1]], , , [, , \"8001[07]\\\\d{4}\",\n, , , , , , [9]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BQ:[, [, , \"(?:[34]1|7\\\\d)\\\\d{5}\", , , , , , , [7]], [, , \"(?:318[023]|41(?:6[023]|70)|7(?:1[578]|50)\\\\d)\\\\d{3}\", , , , \"7151234\"], [, , \"(?:31(?:8[14-8]|9[14578])|416[14-9]|7(?:0[01]|7[07]|8\\\\d|9[056])\\\\d)\\\\d{3}\", , , , \"3181234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"BQ\", 599, \"00\", , , , , , , , , , [, , , , , , , , , [-1]], ,\n\"[347]\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BR:[, [, , \"(?:[1-46-9]\\\\d\\\\d|5(?:[0-46-9]\\\\d|5[0-24679]))\\\\d{8}|[1-9]\\\\d{9}|[3589]\\\\d{8}|[34]\\\\d{7}\", , , , , , , [8, 9, 10, 11]], [, , \"(?:[14689][1-9]|2[12478]|3[1-578]|5[13-5]|7[13-579])[2-5]\\\\d{7}\", , , , \"1123456789\", , , [10], [8]], [, , \"(?:[14689][1-9]|2[12478]|3[1-578]|5[13-5]|7[13-579])(?:7|9\\\\d)\\\\d{7}\", , , , \"11961234567\", , , [10, 11], [8, 9]], [, , \"800\\\\d{6,7}\", , , , \"800123456\", , , [9, 10]],\n[, , \"300\\\\d{6}|[59]00\\\\d{6,7}\", , , , \"300123456\", , , [9, 10]], [, , \"300\\\\d{7}|[34]00\\\\d{5}|4(?:02|37)0\\\\d{4}\", , , , \"40041234\", , , [8, 10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"BR\", 55, \"00(?:1[245]|2[1-35]|31|4[13]|[56]5|99)\", \"0\", , , \"0(?:(1[245]|2[1-35]|31|4[13]|[56]5|99)(\\\\d{10,11}))?\", \"$2\", , , [[, \"(\\\\d{3,6})\", \"$1\", [\"1(?:1[25-8]|2[357-9]|3[02-68]|4[12568]|5|6[0-8]|8[015]|9[0-47-9])|321|610\"]], [, \"(\\\\d{4})(\\\\d{4})\", \"$1-$2\", [\"300|4(?:0[02]|37)\", \"4(?:02|37)0|[34]00\"]],\n[, \"(\\\\d{4})(\\\\d{4})\", \"$1-$2\", [\"[2-57]\", \"[2357]|4(?:[0-24-9]|3(?:[0-689]|7[1-9]))\"]], [, \"(\\\\d{3})(\\\\d{2,3})(\\\\d{4})\", \"$1 $2 $3\", [\"(?:[358]|90)0\"], \"0$1\"], [, \"(\\\\d{5})(\\\\d{4})\", \"$1-$2\", [\"9\"]], [, \"(\\\\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)\", \"0 $CC ($1)\"], [, \"(\\\\d{2})(\\\\d{5})(\\\\d{4})\", \"$1 $2-$3\", [\"[16][1-9]|[2-57-9]\"], \"($1)\", \"0 $CC ($1)\"]], [[, \"(\\\\d{4})(\\\\d{4})\", \"$1-$2\", [\"300|4(?:0[02]|37)\", \"4(?:02|37)0|[34]00\"]],\n[, \"(\\\\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)\", \"0 $CC ($1)\"], [, \"(\\\\d{2})(\\\\d{5})(\\\\d{4})\", \"$1 $2-$3\", [\"[16][1-9]|[2-57-9]\"], \"($1)\", \"0 $CC ($1)\"]], [, , , , , , , , , [-1]], , , [, , \"4020\\\\d{4}|[34]00\\\\d{5}\", , , , , , , [8]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BS:[, [, , \"(?:242|[58]\\\\d\\\\d|900)\\\\d{7}\", , , , , , , [10], [7]], [, ,\n\"242(?:3(?:02|[236][1-9]|4[0-24-9]|5[0-68]|7[347]|8[0-4]|9[2-467])|461|502|6(?:0[1-4]|12|2[013]|[45]0|7[67]|8[78]|9[89])|7(?:02|88))\\\\d{4}\", , , , \"2423456789\", , , , [7]], [, , \"242(?:3(?:5[79]|7[56]|95)|4(?:[23][1-9]|4[1-35-9]|5[1-8]|6[2-8]|7\\\\d|81)|5(?:2[45]|3[35]|44|5[1-46-9]|65|77)|6[34]6|7(?:27|38)|8(?:0[1-9]|1[02-9]|2\\\\d|[89]9))\\\\d{4}\", , , , \"2423591234\", , , , [7]], [, , \"242300\\\\d{4}|8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\", , , , [7]], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"],\n[, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"BS\", 1, \"011\", \"1\", , , \"1|([3-8]\\\\d{6})$\", \"242$1\", , , , , [, , , , , , , , , [-1]], , \"242\", [, , , , , , , , , [-1]], [, , \"242225[0-46-9]\\\\d{3}\", , , , \"2422250123\"], , , [, , , , , , , , , [-1]]], BT:[, [, , \"[17]\\\\d{7}|[2-8]\\\\d{6}\", , , , , , , [7, 8], [6]], [, , \"(?:2[3-6]|[34][5-7]|5[236]|6[2-46]|7[246]|8[2-4])\\\\d{5}\", , , , \"2345678\", , , [7], [6]], [, , \"(?:1[67]|77)\\\\d{6}\",\n, , , \"17123456\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"BT\", 975, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{3})\", \"$1 $2\", [\"[2-7]\"]], [, \"(\\\\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\"]]], [[, \"(\\\\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\"]]], [, , , ,\n, , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BW:[, [, , \"90\\\\d{5}|(?:[2-6]|7\\\\d)\\\\d{6}\", , , , , , , [7, 8]], [, , \"(?:2(?:4[0-48]|6[0-24]|9[0578])|3(?:1[0-35-9]|55|[69]\\\\d|7[013])|4(?:6[03]|7[1267]|9[0-5])|5(?:3[0389]|4[0489]|7[1-47]|88|9[0-49])|6(?:2[1-35]|5[149]|8[067]))\\\\d{4}\", , , , \"2401234\", , , [7]], [, , \"77200\\\\d{3}|7(?:[1-6]\\\\d|7[014-8])\\\\d{5}\", , , , \"71123456\", , , [8]], [, , , , , , , , , [-1]], [, , \"90\\\\d{5}\", , , , \"9012345\",\n, , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"79(?:1(?:[01]\\\\d|20)|2[0-2]\\\\d)\\\\d{3}\", , , , \"79101234\", , , [8]], \"BW\", 267, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{5})\", \"$1 $2\", [\"90\"]], [, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[2-6]\"]], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"7\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BY:[, [, , \"(?:[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}\",\n, , , , , , [6, 7, 8, 9, 10, 11], [5]], [, , \"(?:1(?:5(?:1[1-5]|[24]\\\\d|6[2-4]|9[1-7])|6(?:[235]\\\\d|4[1-7])|7\\\\d\\\\d)|2(?:1(?:[246]\\\\d|3[0-35-9]|5[1-9])|2(?:[235]\\\\d|4[0-8])|3(?:[26]\\\\d|3[02-79]|4[024-7]|5[03-7])))\\\\d{5}\", , , , \"152450911\", , , [9], [5, 6, 7]], [, , \"(?:2(?:5[5-79]|9[1-9])|(?:33|44)\\\\d)\\\\d{6}\", , , , \"294911911\", , , [9]], [, , \"800\\\\d{3,7}|8(?:0[13]|20\\\\d)\\\\d{7}\", , , , \"8011234567\"], [, , \"(?:810|902)\\\\d{7}\", , , , \"9021234567\", , , [10]], [, , , , , , , , , [-1]], [, , , , , ,\n, , , [-1]], [, , \"249\\\\d{6}\", , , , \"249123456\", , , [9]], \"BY\", 375, \"810\", \"8\", , , \"0|80?\", , \"8~10\", , [[, \"(\\\\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]\"],\n\"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\"]], , [, , , , , , , , , [-1]], , , [, , \"800\\\\d{3,7}|(?:8(?:0[13]|10|20\\\\d)|902)\\\\d{7}\"], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BZ:[, [, , \"(?:0800\\\\d|[2-8])\\\\d{6}\", , , , , , , [7, 11]], [, , \"(?:236|732)\\\\d{4}|[2-578][02]\\\\d{5}\", , , , \"2221234\", , , [7]], [, , \"6[0-35-7]\\\\d{5}\", , , , \"6221234\", , , [7]], [, , \"0800\\\\d{7}\", , , ,\n\"08001234123\", , , [11]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"BZ\", 501, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1-$2\", [\"[2-8]\"]], [, \"(\\\\d)(\\\\d{3})(\\\\d{4})(\\\\d{3})\", \"$1-$2-$3-$4\", [\"0\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CA:[, [, , \"(?:[2-8]\\\\d|90)\\\\d{8}\", , , , , , , [10], [7]], [, , \"(?:2(?:04|[23]6|[48]9|50)|3(?:06|43|65)|4(?:03|1[68]|3[178]|50)|5(?:06|1[49]|48|79|8[17])|6(?:04|13|39|47)|7(?:0[59]|78|8[02])|8(?:[06]7|19|25|73)|90[25])[2-9]\\\\d{6}\",\n, , , \"5062345678\", , , , [7]], [, , \"(?:2(?:04|[23]6|[48]9|50)|3(?:06|43|65)|4(?:03|1[68]|3[178]|50)|5(?:06|1[49]|48|79|8[17])|6(?:04|13|39|47)|7(?:0[59]|78|8[02])|8(?:[06]7|19|25|73)|90[25])[2-9]\\\\d{6}\", , , , \"5062345678\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"(?:5(?:00|2[12]|33|44|66|77|88)|622)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , \"600[2-9]\\\\d{6}\", , , , \"6002012345\"], \"CA\",\n1, \"011\", \"1\", , , \"1\", , , 1, , , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CC:[, [, , \"1(?:[0-79]\\\\d|8[0-24-9])\\\\d{7}|(?:[148]\\\\d\\\\d|550)\\\\d{6}|1\\\\d{5,7}\", , , , , , , [6, 7, 8, 9, 10]], [, , \"8(?:51(?:0(?:02|31|60)|118)|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}\", , , , \"891621234\", , , [9], [8]], [, , \"483[0-3]\\\\d{5}|4(?:[0-3]\\\\d|4[047-9]|5[0-25-9]|6[06-9]|7[02-9]|8[0-2457-9]|9[0-27-9])\\\\d{6}\",\n, , , \"412345678\", , , [9]], [, , \"180(?:0\\\\d{3}|2)\\\\d{3}\", , , , \"1800123456\", , , [7, 10]], [, , \"190[0-26]\\\\d{6}\", , , , \"1900123456\", , , [10]], [, , \"13(?:00\\\\d{3}|45[0-4])\\\\d{3}|13\\\\d{4}\", , , , \"1300123456\", , , [6, 8, 10]], [, , , , , , , , , [-1]], [, , \"(?:14(?:5(?:1[0458]|[23][458])|71\\\\d)|550\\\\d\\\\d)\\\\d{4}\", , , , \"550123456\", , , [9]], \"CC\", 61, \"001[14-689]|14(?:1[14]|34|4[17]|[56]6|7[47]|88)0011\", \"0\", , , \"0|([59]\\\\d{7})$\", \"8$1\", \"0011\", , , , [, , , , , , , , , [-1]], , , [, , ,\n, , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CD:[, [, , \"[189]\\\\d{8}|[1-68]\\\\d{6}\", , , , , , , [7, 9]], [, , \"12\\\\d{7}|[1-6]\\\\d{6}\", , , , \"1234567\"], [, , \"88\\\\d{5}|(?:8[0-2459]|9[017-9])\\\\d{7}\", , , , \"991234567\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"CD\", 243, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{3})\", \"$1 $2 $3\", [\"88\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{5})\", \"$1 $2\",\n[\"[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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CF:[, [, , \"(?:[27]\\\\d{3}|8776)\\\\d{4}\", , , , , , , [8]], [, , \"2[12]\\\\d{6}\", , , , \"21612345\"], [, , \"7[0257]\\\\d{6}\", , , , \"70012345\"], [, , , , , , , , , [-1]], [, , \"8776\\\\d{4}\", , , , \"87761234\"], [, , , , , , , , , [-1]], [, , , , , , , , ,\n[-1]], [, , , , , , , , , [-1]], \"CF\", 236, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[278]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CG:[, [, , \"222\\\\d{6}|(?:0\\\\d|80)\\\\d{7}\", , , , , , , [9]], [, , \"222[1-589]\\\\d{5}\", , , , \"222123456\"], [, , \"0[14-6]\\\\d{7}\", , , , \"061234567\"], [, , , , , , , , , [-1]], [, , \"80(?:0\\\\d\\\\d|11[0-4])\\\\d{4}\", , , , \"800123456\"], [, , , , , , , , , [-1]],\n[, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"CG\", 242, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"801\"]], [, \"(\\\\d)(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"8\"]], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[02]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CH:[, [, , \"8\\\\d{11}|[2-9]\\\\d{8}\", , , , , , , [9, 12]], [, , \"(?:2[12467]|3[1-4]|4[134]|5[256]|6[12]|[7-9]1)\\\\d{7}\", , , , \"212345678\",\n, , [9]], [, , \"7[35-9]\\\\d{7}\", , , , \"781234567\", , , [9]], [, , \"800\\\\d{6}\", , , , \"800123456\", , , [9]], [, , \"90[016]\\\\d{6}\", , , , \"900123456\", , , [9]], [, , \"84[0248]\\\\d{6}\", , , , \"840123456\", , , [9]], [, , \"878\\\\d{6}\", , , , \"878123456\", , , [9]], [, , , , , , , , , [-1]], \"CH\", 41, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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})\",\n\"$1 $2 $3 $4 $5\", [\"8\"], \"0$1\"]], , [, , \"74[0248]\\\\d{6}\", , , , \"740123456\", , , [9]], , , [, , , , , , , , , [-1]], [, , \"5[18]\\\\d{7}\", , , , \"581234567\", , , [9]], , , [, , \"860\\\\d{9}\", , , , \"860123456789\", , , [12]]], CI:[, [, , \"[02-8]\\\\d{7}\", , , , , , , [8]], [, , \"(?:2(?:0[023]|1[02357]|[23][045]|4[03-5])|3(?:0[06]|1[069]|[2-4][07]|5[09]|6[08]))\\\\d{5}\", , , , \"21234567\"], [, , \"(?:0[1-9]|[457]\\\\d|6[014-9]|8[4-9])\\\\d{6}\", , , , \"01234567\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]],\n[, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"CI\", 225, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[02-8]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CK:[, [, , \"[2-8]\\\\d{4}\", , , , , , , [5]], [, , \"(?:2\\\\d|3[13-7]|4[1-5])\\\\d{3}\", , , , \"21234\"], [, , \"[5-8]\\\\d{4}\", , , , \"71234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]],\n[, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"CK\", 682, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{3})\", \"$1 $2\", [\"[2-8]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CL:[, [, , \"12300\\\\d{6}|6\\\\d{9,10}|[2-9]\\\\d{8}\", , , , , , , [9, 10, 11]], [, , \"(?:2(?:1962|3(?:2\\\\d\\\\d|300))|80[1-9]\\\\d\\\\d)\\\\d{4}|(?:22|3[2-5]|[47][1-35]|5[1-3578]|6[13-57]|8[1-9]|9[2-9])\\\\d{7}\", , , , \"221234567\", , , [9]], [, , \"(?:2(?:1962|3(?:2\\\\d\\\\d|300))|80[1-9]\\\\d\\\\d)\\\\d{4}|(?:22|3[2-5]|[47][1-35]|5[1-3578]|6[13-57]|8[1-9]|9[2-9])\\\\d{7}\",\n, , , \"221234567\", , , [9]], [, , \"(?:123|8)00\\\\d{6}\", , , , \"800123456\", , , [9, 11]], [, , , , , , , , , [-1]], [, , \"600\\\\d{7,8}\", , , , \"6001234567\", , , [10, 11]], [, , , , , , , , , [-1]], [, , \"44\\\\d{7}\", , , , \"441234567\", , , [9]], \"CL\", 56, \"(?:0|1(?:1[0-69]|2[0-57]|5[13-58]|69|7[0167]|8[018]))0\", , , , , , , 1, [[, \"(\\\\d{4})\", \"$1\", [\"1(?:[03-589]|21)|[29]0|78\"]], [, \"(\\\\d{5})(\\\\d{4})\", \"$1 $2\", [\"21\"], \"($1)\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"44\"]], [, \"(\\\\d)(\\\\d{4})(\\\\d{4})\",\n\"$1 $2 $3\", [\"2[23]\"], \"($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\"]]], [[, \"(\\\\d{5})(\\\\d{4})\", \"$1 $2\", [\"21\"], \"($1)\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"44\"]], [, \"(\\\\d)(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\",\n[\"2[23]\"], \"($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\"]]], [, , , , , , , , , [-1]], , , [, , \"600\\\\d{7,8}\", , , , , , , [10, 11]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CM:[, [, , \"(?:[26]\\\\d\\\\d|88)\\\\d{6}\",\n, , , , , , [8, 9]], [, , \"2(?:22|33|4[23])\\\\d{6}\", , , , \"222123456\", , , [9]], [, , \"6[5-9]\\\\d{7}\", , , , \"671234567\", , , [9]], [, , \"88\\\\d{6}\", , , , \"88012345\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"CM\", 237, \"00\", , , , , , , , [[, \"(\\\\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]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]],\n[, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CN:[, [, , \"1[1279]\\\\d{8,9}|2\\\\d{9}(?:\\\\d{2})?|[12]\\\\d{6,7}|86\\\\d{6}|(?:1[03-68]\\\\d|6)\\\\d{7,9}|(?:[3-579]\\\\d|8[0-57-9])\\\\d{6,9}\", , , , , , , [7, 8, 9, 10, 11, 12], [5, 6]], [, , \"(?:10(?:[02-79]\\\\d\\\\d|[18](?:0[1-9]|[1-9]\\\\d))|21(?:[18](?:0[1-9]|[1-9]\\\\d)|[2-79]\\\\d\\\\d))\\\\d{5}|(?:43[35]|754)\\\\d{7,8}|8(?:078\\\\d{7}|51\\\\d{7,8})|(?:10|(?:2|85)1|43[35]|754)(?:100\\\\d\\\\d|95\\\\d{3,4})|(?:2[02-57-9]|3(?:11|7[179])|4(?:[15]1|3[12])|5(?:1\\\\d|2[37]|3[12]|51|7[13-79]|9[15])|7(?:[39]1|5[57]|6[09])|8(?:71|98))(?:[02-8]\\\\d{7}|1(?:0(?:0\\\\d\\\\d(?:\\\\d{3})?|[1-9]\\\\d{5})|[1-9]\\\\d{6})|9(?:[0-46-9]\\\\d{6}|5\\\\d{3}(?:\\\\d(?:\\\\d{2})?)?))|(?:3(?:1[02-9]|35|49|5\\\\d|7[02-68]|9[1-68])|4(?:1[02-9]|2[179]|3[46-9]|5[2-9]|6[47-9]|7\\\\d|8[23])|5(?:3[03-9]|4[36]|5[02-9]|6[1-46]|7[028]|80|9[2-46-9])|6(?:3[1-5]|6[0238]|9[12])|7(?:01|[17]\\\\d|2[248]|3[04-9]|4[3-6]|5[0-3689]|6[2368]|9[02-9])|8(?:1[236-8]|2[5-7]|3\\\\d|5[2-9]|7[02-9]|8[36-8]|9[1-7])|9(?:0[1-3689]|1[1-79]|[379]\\\\d|4[13]|5[1-5]))(?:[02-8]\\\\d{6}|1(?:0(?:0\\\\d\\\\d(?:\\\\d{2})?|[1-9]\\\\d{4})|[1-9]\\\\d{5})|9(?:[0-46-9]\\\\d{5}|5\\\\d{3,5}))\",\n, , , \"1012345678\", , , [7, 8, 9, 10, 11], [5, 6]], [, , \"1740[0-5]\\\\d{6}|1(?:[38]\\\\d|4[57]|5[0-35-9]|6[25-7]|7[0-35-8]|9[189])\\\\d{8}\", , , , \"13123456789\", , , [11]], [, , \"(?:(?:10|21)8|8)00\\\\d{7}\", , , , \"8001234567\", , , [10, 12]], [, , \"16[08]\\\\d{5}\", , , , \"16812345\", , , [8]], [, , \"400\\\\d{7}|950\\\\d{7,8}|(?:10|2[0-57-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[14-9]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|[379]\\\\d|4[13]|5[1-5]))96\\\\d{3,4}\",\n, , , \"4001234567\", , , [7, 8, 9, 10, 11], [5, 6]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"CN\", 86, \"00|1(?:[12]\\\\d|79|9[0235-7])\\\\d\\\\d00\", \"0\", , , \"0|(1(?:[12]\\\\d|79|9[0235-7])\\\\d\\\\d)\", , \"00\", , [[, \"(\\\\d{5,6})\", \"$1\", [\"96\"]], [, \"(\\\\d{2})(\\\\d{5,6})\", \"$1 $2\", [\"(?:10|2[0-57-9])[19]\", \"(?:10|2[0-57-9])(?:10|9[56])\", \"(?:10|2[0-57-9])(?:100|9[56])\"], \"0$1\", \"$CC $1\"], [, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[1-9]\", \"1[1-9]|26|[3-9]|(?:10|2[0-57-9])(?:[0-8]|9[0-47-9])\", \"1[1-9]|26|[3-9]|(?:10|2[0-57-9])(?:[02-8]|1(?:0[1-9]|[1-9])|9[0-47-9])\"]],\n[, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"16[08]\"]], [, \"(\\\\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]\",\n\"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])\"],\n\"0$1\", \"$CC $1\"], [, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[1-9]\", \"1[1-9]|26|[3-9]|(?:10|2[0-57-9])(?:[0-8]|9[0-47-9])\", \"26|3(?:[0268]|9[079])|4(?:[049]|2[02-68]|[35]0|6[0-356]|8[014-9])|5(?:0|2[0-24-689]|4[0-2457-9]|6[057-9]|90)|6(?:[0-24578]|6[14-79]|9[03-9])|7(?:0[02-9]|2[0135-79]|3[23]|4[0-27-9]|6[1457]|8)|8(?:[046]|1[01459]|2[0-489]|50|8[0-2459]|9[09])|9(?:0[0457]|1[08]|[268]|4[024-9])|(?:34|85[23])[0-8]|(?:1|58)[1-9]|(?:63|95)[06-9]|(?:33|85[23]9)[0-46-9]|(?:10|2[0-57-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[14-9]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|[379]\\\\d|4[13]|5[1-5]))(?:[0-8]|9[0-47-9])\",\n\"26|3(?:[0268]|3[0-46-9]|4[0-8]|9[079])|4(?:[049]|2[02-68]|[35]0|6[0-356]|8[014-9])|5(?:0|2[0-24-689]|4[0-2457-9]|6[057-9]|90)|6(?:[0-24578]|3[06-9]|6[14-79]|9[03-9])|7(?:0[02-9]|2[0135-79]|3[23]|4[0-27-9]|6[1457]|8)|8(?:[046]|1[01459]|2[0-489]|5(?:0|[23](?:[02-8]|1[1-9]|9[0-46-9]))|8[0-2459]|9[09])|9(?:0[0457]|1[08]|[268]|4[024-9]|5[06-9])|(?:1|58|85[23]10)[1-9]|(?:10|2[0-57-9])(?:[0-8]|9[0-47-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[14-9]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|[379]\\\\d|4[13]|5[1-5]))(?:[02-8]|1(?:0[1-9]|[1-9])|9[0-47-9])\"]],\n[, \"(\\\\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\", \"$CC $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\", \"$CC $1\", 1],\n[, \"(\\\\d{3})(\\\\d{7,8})\", \"$1 $2\", [\"9\"]], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"80\"], \"0$1\", \"$CC $1\", 1], [, \"(\\\\d{3})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"[3-578]\"], \"0$1\", \"$CC $1\", 1], [, \"(\\\\d{3})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"1[3-9]\"], , \"$CC $1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3 $4\", [\"[12]\"], \"0$1\", , 1]], [[, \"(\\\\d{2})(\\\\d{5,6})\", \"$1 $2\", [\"(?:10|2[0-57-9])[19]\", \"(?:10|2[0-57-9])(?:10|9[56])\", \"(?:10|2[0-57-9])(?:100|9[56])\"], \"0$1\", \"$CC $1\"], [, \"(\\\\d{3})(\\\\d{5,6})\",\n\"$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]\",\n\"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])\"],\n\"0$1\", \"$CC $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\", \"$CC $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\",\n\"$CC $1\", 1], [, \"(\\\\d{3})(\\\\d{7,8})\", \"$1 $2\", [\"9\"]], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"80\"], \"0$1\", \"$CC $1\", 1], [, \"(\\\\d{3})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"[3-578]\"], \"0$1\", \"$CC $1\", 1], [, \"(\\\\d{3})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"1[3-9]\"], , \"$CC $1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3 $4\", [\"[12]\"], \"0$1\", , 1]], [, , , , , , , , , [-1]], , , [, , \"(?:(?:10|21)8|[48])00\\\\d{7}|950\\\\d{7,8}\", , , , , , , [10, 11, 12]], [, , , , , , , , , [-1]], , , [, , , , , , ,\n, , [-1]]], CO:[, [, , \"(?:1\\\\d|3)\\\\d{9}|[124-8]\\\\d{7}\", , , , , , , [8, 10, 11], [7]], [, , \"[124-8][2-9]\\\\d{6}\", , , , \"12345678\", , , [8], [7]], [, , \"3(?:0[0-5]|1\\\\d|2[0-3]|5[01])\\\\d{7}\", , , , \"3211234567\", , , [10]], [, , \"1800\\\\d{7}\", , , , \"18001234567\", , , [11]], [, , \"19(?:0[01]|4[78])\\\\d{7}\", , , , \"19001234567\", , , [11]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"CO\", 57, \"00(?:4(?:[14]4|56)|[579])\", \"0\", , , \"0([3579]|4(?:[14]4|56))?\", , , , [[,\n\"(\\\\d)(\\\\d{7})\", \"$1 $2\", [\"1[2-79]|[25-8]|(?:18|4)[2-9]\"], \"($1)\", \"0$CC $1\"], [, \"(\\\\d{3})(\\\\d{7})\", \"$1 $2\", [\"3\"], , \"0$CC $1\"], [, \"(\\\\d)(\\\\d{3})(\\\\d{7})\", \"$1-$2-$3\", [\"1(?:80|9)\", \"1(?:800|9)\"], \"0$1\"]], [[, \"(\\\\d)(\\\\d{7})\", \"$1 $2\", [\"1[2-79]|[25-8]|(?:18|4)[2-9]\"], \"($1)\", \"0$CC $1\"], [, \"(\\\\d{3})(\\\\d{7})\", \"$1 $2\", [\"3\"], , \"0$CC $1\"], [, \"(\\\\d)(\\\\d{3})(\\\\d{7})\", \"$1 $2 $3\", [\"1(?:80|9)\", \"1(?:800|9)\"]]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]],\n, , [, , , , , , , , , [-1]]], CR:[, [, , \"(?:8\\\\d|90)\\\\d{8}|[24-8]\\\\d{7}\", , , , , , , [8, 10]], [, , \"210[7-9]\\\\d{4}|2(?:[024-7]\\\\d|1[1-9])\\\\d{5}\", , , , \"22123456\", , , [8]], [, , \"6500[01]\\\\d{3}|5(?:0[01]|7[0-3])\\\\d{5}|(?:6[0-4]|7[0-3]|8[3-9])\\\\d{6}\", , , , \"83123456\", , , [8]], [, , \"800\\\\d{7}\", , , , \"8001234567\", , , [10]], [, , \"90[059]\\\\d{7}\", , , , \"9001234567\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"(?:210[0-6]|4\\\\d{3}|5100)\\\\d{4}\", , , , \"40001234\", , , [8]],\n\"CR\", 506, \"00\", , , , \"(19(?:0[0-2468]|1[09]|20|66|77|99))\", , , , [[, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[24-7]|8[3-9]\"], , \"$CC $1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"[89]\"], , \"$CC $1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CU:[, [, , \"[27]\\\\d{6,7}|[34]\\\\d{5,7}|5\\\\d{7}\", , , , , , , [6, 7, 8], [4, 5]], [, , \"(?:3[23]|48)\\\\d{4,6}|(?:31|4[36])\\\\d{6}|(?:2[1-4]|4[1257]|7\\\\d)\\\\d{5,6}\", , , , \"71234567\", , , , [4,\n5]], [, , \"5\\\\d{7}\", , , , \"51234567\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"CU\", 53, \"119\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{4,6})\", \"$1 $2\", [\"2[1-4]|[34]\"], \"(0$1)\"], [, \"(\\\\d)(\\\\d{6,7})\", \"$1 $2\", [\"7\"], \"(0$1)\"], [, \"(\\\\d)(\\\\d{7})\", \"$1 $2\", [\"5\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CV:[, [, , \"[2-59]\\\\d{6}\",\n, , , , , , [7]], [, , \"2(?:2[1-7]|3[0-8]|4[12]|5[1256]|6\\\\d|7[1-3]|8[1-5])\\\\d{4}\", , , , \"2211234\"], [, , \"(?:[34][36]|5[1-389]|9\\\\d)\\\\d{5}\", , , , \"9911234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"CV\", 238, \"0\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3\", [\"[2-59]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CW:[, [,\n, \"(?:[34]1|60|(?:7|9\\\\d)\\\\d)\\\\d{5}\", , , , , , , [7, 8]], [, , \"9(?:4(?:3[0-5]|4[14]|6\\\\d)|50\\\\d|7(?:2[014]|3[02-9]|4[4-9]|6[357]|77|8[7-9])|8(?:3[39]|[46]\\\\d|7[01]|8[57-9]))\\\\d{4}\", , , , \"94351234\"], [, , \"953[01]\\\\d{4}|9(?:5[12467]|6[5-9])\\\\d{5}\", , , , \"95181234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"60[0-2]\\\\d{4}\", , , , \"6001234\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"CW\", 599, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[3467]\"]],\n[, \"(\\\\d)(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"9[4-8]\"]]], , [, , \"955\\\\d{5}\", , , , \"95581234\", , , [8]], 1, \"[69]\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CX:[, [, , \"1(?:[0-79]\\\\d|8[0-24-9])\\\\d{7}|(?:[148]\\\\d\\\\d|550)\\\\d{6}|1\\\\d{5,7}\", , , , , , , [6, 7, 8, 9, 10]], [, , \"8(?:51(?:0(?:01|30|59)|117)|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}\", , , , \"891641234\", , , [9], [8]], [, , \"483[0-3]\\\\d{5}|4(?:[0-3]\\\\d|4[047-9]|5[0-25-9]|6[06-9]|7[02-9]|8[0-2457-9]|9[0-27-9])\\\\d{6}\",\n, , , \"412345678\", , , [9]], [, , \"180(?:0\\\\d{3}|2)\\\\d{3}\", , , , \"1800123456\", , , [7, 10]], [, , \"190[0-26]\\\\d{6}\", , , , \"1900123456\", , , [10]], [, , \"13(?:00\\\\d{3}|45[0-4])\\\\d{3}|13\\\\d{4}\", , , , \"1300123456\", , , [6, 8, 10]], [, , , , , , , , , [-1]], [, , \"(?:14(?:5(?:1[0458]|[23][458])|71\\\\d)|550\\\\d\\\\d)\\\\d{4}\", , , , \"550123456\", , , [9]], \"CX\", 61, \"001[14-689]|14(?:1[14]|34|4[17]|[56]6|7[47]|88)0011\", \"0\", , , \"0|([59]\\\\d{7})$\", \"8$1\", \"0011\", , , , [, , , , , , , , , [-1]], , , [, , ,\n, , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CY:[, [, , \"(?:[279]\\\\d|[58]0)\\\\d{6}\", , , , , , , [8]], [, , \"2[2-6]\\\\d{6}\", , , , \"22345678\"], [, , \"9[4-79]\\\\d{6}\", , , , \"96123456\"], [, , \"800\\\\d{5}\", , , , \"80001234\"], [, , \"90[09]\\\\d{5}\", , , , \"90012345\"], [, , \"80[1-9]\\\\d{5}\", , , , \"80112345\"], [, , \"700\\\\d{5}\", , , , \"70012345\"], [, , , , , , , , , [-1]], \"CY\", 357, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{6})\", \"$1 $2\", [\"[257-9]\"]]], , [, , , , , , , , , [-1]],\n, , [, , , , , , , , , [-1]], [, , \"(?:50|77)\\\\d{6}\", , , , \"77123456\"], , , [, , , , , , , , , [-1]]], CZ:[, [, , \"(?:[2-578]\\\\d|60)\\\\d{7}|9\\\\d{8,11}\", , , , , , , [9, 10, 11, 12]], [, , \"(?:2\\\\d|3[1257-9]|4[16-9]|5[13-9])\\\\d{7}\", , , , \"212345678\", , , [9]], [, , \"(?:60[1-8]|7(?:0[2-5]|[2379]\\\\d))\\\\d{6}\", , , , \"601123456\", , , [9]], [, , \"800\\\\d{6}\", , , , \"800123456\", , , [9]], [, , \"9(?:0[05689]|76)\\\\d{6}\", , , , \"900123456\", , , [9]], [, , \"8[134]\\\\d{7}\", , , , \"811234567\", , , [9]], [, , \"70[01]\\\\d{6}\",\n, , , \"700123456\", , , [9]], [, , \"9[17]0\\\\d{6}\", , , , \"910123456\", , , [9]], \"CZ\", 420, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[2-8]|9[015-7]\"]], [, \"(\\\\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\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"9(?:5\\\\d|7[2-4])\\\\d{6}\", , , , \"972123456\", , , [9]], , , [, , \"9(?:3\\\\d{9}|6\\\\d{7,10})\", , , , \"93123456789\"]], DE:[, [, , \"[2579]\\\\d{5,14}|49(?:[05]\\\\d{10}|[46][1-8]\\\\d{4,9})|49(?:[0-25]\\\\d|3[1-689]|7[1-7])\\\\d{4,8}|49(?:[0-2579]\\\\d|[34][1-9]|6[0-8])\\\\d{3}|49\\\\d{3,4}|(?:1|[368]\\\\d|4[0-8])\\\\d{3,13}\",\n, , , , , , [4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15], [2, 3]], [, , \"(?:32|49[4-6]\\\\d)\\\\d{9}|49[0-7]\\\\d{3,9}|(?:[34]0|[68]9)\\\\d{3,13}|(?:2(?:0[1-689]|[1-3569]\\\\d|4[0-8]|7[1-7]|8[0-7])|3(?:[3569]\\\\d|4[0-79]|7[1-7]|8[1-8])|4(?:1[02-9]|[2-48]\\\\d|5[0-6]|6[0-8]|7[0-79])|5(?:0[2-8]|[124-6]\\\\d|[38][0-8]|[79][0-7])|6(?:0[02-9]|[1-358]\\\\d|[47][0-8]|6[1-9])|7(?:0[2-8]|1[1-9]|[27][0-7]|3\\\\d|[4-6][0-8]|8[0-5]|9[013-7])|8(?:0[2-9]|1[0-79]|2\\\\d|3[0-46-9]|4[0-6]|5[013-9]|6[1-8]|7[0-8]|8[0-24-6])|9(?:0[6-9]|[1-4]\\\\d|[589][0-7]|6[0-8]|7[0-467]))\\\\d{3,12}\",\n, , , \"30123456\", , , [5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15], [2, 3, 4]], [, , \"15[0-25-9]\\\\d{8}|1(?:6[023]|7\\\\d)\\\\d{7,8}\", , , , \"15123456789\", , , [10, 11]], [, , \"800\\\\d{7,12}\", , , , \"8001234567890\", , , [10, 11, 12, 13, 14, 15]], [, , \"(?:137[7-9]|900(?:[135]|9\\\\d))\\\\d{6}\", , , , \"9001234567\", , , [10, 11]], [, , \"180\\\\d{5,11}|13(?:7[1-6]\\\\d\\\\d|8)\\\\d{4}\", , , , \"18012345\", , , [7, 8, 9, 10, 11, 12, 13, 14]], [, , \"700\\\\d{8}\", , , , \"70012345678\", , , [11]], [, , , , , , , , , [-1]], \"DE\", 49,\n\"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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]\"],\n\"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\"],\n[, \"(\\\\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\"]], , [, , \"16(?:4\\\\d{1,10}|[89]\\\\d{1,11})\", , , , \"16412345\", , , [4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14]], , , [, , , , , , , , , [-1]], [, , \"18(?:1\\\\d{5,11}|[2-9]\\\\d{8})\",\n, , , \"18500123456\", , , [8, 9, 10, 11, 12, 13, 14]], , , [, , \"1(?:6(?:013|255|399)|7(?:(?:[015]1|[69]3)3|[2-4]55|[78]99))\\\\d{7,8}|15(?:(?:[03-68]00|113)\\\\d|2\\\\d55|7\\\\d99|9\\\\d33)\\\\d{7}\", , , , \"177991234567\", , , [12, 13]]], DJ:[, [, , \"(?:2\\\\d|77)\\\\d{6}\", , , , , , , [8]], [, , \"2(?:1[2-5]|7[45])\\\\d{5}\", , , , \"21360003\"], [, , \"77\\\\d{6}\", , , , \"77831001\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"DJ\", 253,\n\"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[27]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], DK:[, [, , \"[2-9]\\\\d{7}\", , , , , , , [8]], [, , \"(?:[2-7]\\\\d|8[126-9]|9[1-36-9])\\\\d{6}\", , , , \"32123456\"], [, , \"(?:[2-7]\\\\d|8[126-9]|9[1-36-9])\\\\d{6}\", , , , \"32123456\"], [, , \"80\\\\d{6}\", , , , \"80123456\"], [, , \"90\\\\d{6}\", , , , \"90123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [,\n, , , , , , , , [-1]], \"DK\", 45, \"00\", , , , , , , 1, [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[2-9]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], DM:[, [, , \"(?:[58]\\\\d\\\\d|767|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"767(?:2(?:55|66)|4(?:2[01]|4[0-25-9])|50[0-4]|70[1-3])\\\\d{4}\", , , , \"7674201234\", , , , [7]], [, , \"767(?:2(?:[2-4689]5|7[5-7])|31[5-7]|61[1-7])\\\\d{4}\", , , , \"7672251234\", , , , [7]], [, ,\n\"8(?:00(?:14|[2-9]\\\\d)|(?:33|44|55|66|77|88)[2-9]\\\\d)\\\\d{5}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"DM\", 1, \"011\", \"1\", , , \"1|([2-7]\\\\d{6})$\", \"767$1\", , , , , [, , , , , , , , , [-1]], , \"767|8001\", [, , \"80014\\\\d{5}\"], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], DO:[, [, , \"(?:[58]\\\\d\\\\d|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"8(?:[04]9[2-9]\\\\d\\\\d|29(?:2(?:[0-59]\\\\d|6[04-9]|7[0-27]|8[0237-9])|3(?:[0-35-9]\\\\d|4[7-9])|[45]\\\\d\\\\d|6(?:[0-27-9]\\\\d|[3-5][1-9]|6[0135-8])|7(?:0[013-9]|[1-37]\\\\d|4[1-35689]|5[1-4689]|6[1-57-9]|8[1-79]|9[1-8])|8(?:0[146-9]|1[0-48]|[248]\\\\d|3[1-79]|5[01589]|6[013-68]|7[124-8]|9[0-8])|9(?:[0-24]\\\\d|3[02-46-9]|5[0-79]|60|7[0169]|8[57-9]|9[02-9])))\\\\d{4}\",\n, , , \"8092345678\", , , , [7]], [, , \"8[024]9[2-9]\\\\d{6}\", , , , \"8092345678\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"DO\", 1, \"011\", \"1\", , , \"1\", , , , , , [, , , , , , , , , [-1]], , \"8[024]9\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], DZ:[, [, , \"(?:[1-4]|[5-79]\\\\d|80)\\\\d{7}\",\n, , , , , , [8, 9]], [, , \"9619\\\\d{5}|(?:1\\\\d|2[013-79]|3[0-8]|4[0135689])\\\\d{6}\", , , , \"12345678\"], [, , \"67[0-6]\\\\d{6}|(?:5[4-6]|6[569]|7[7-9])\\\\d{7}\", , , , \"551234567\", , , [9]], [, , \"800\\\\d{6}\", , , , \"800123456\", , , [9]], [, , \"80[3-689]1\\\\d{5}\", , , , \"808123456\", , , [9]], [, , \"80[12]1\\\\d{5}\", , , , \"801123456\", , , [9]], [, , , , , , , , , [-1]], [, , \"98[23]\\\\d{6}\", , , , \"983123456\", , , [9]], \"DZ\", 213, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\",\n[\"[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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], EC:[, [, , \"1800\\\\d{6,7}|(?:[2-7]|9\\\\d)\\\\d{7}\", , , , , , , [8, 9, 10, 11], [7]], [, , \"[2-7][2-7]\\\\d{6}\", , , , \"22123456\", , , [8], [7]], [, , \"964[0-2]\\\\d{5}|9(?:39|[57][89]|6[0-37-9]|[89]\\\\d)\\\\d{6}\", , , , \"991234567\", ,\n, [9]], [, , \"1800\\\\d{6,7}\", , , , \"18001234567\", , , [10, 11]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"[2-7]890\\\\d{4}\", , , , \"28901234\", , , [8]], \"EC\", 593, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1-$2\", [\"[2-7]\"]], [, \"(\\\\d)(\\\\d{3})(\\\\d{4})\", \"$1 $2-$3\", [\"[2-7]\"], \"(0$1)\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"9\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{3,4})\", \"$1 $2 $3\", [\"1\"]]], [[, \"(\\\\d)(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"[2-7]\"]],\n[, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"9\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{3,4})\", \"$1 $2 $3\", [\"1\"]]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], EE:[, [, , \"8\\\\d{9}|[4578]\\\\d{7}|(?:[3-8]\\\\d\\\\d|900)\\\\d{4}\", , , , , , , [7, 8, 10]], [, , \"(?:3[23589]|4[3-8]|6\\\\d|7[1-9]|88)\\\\d{5}\", , , , \"3212345\", , , [7]], [, , \"(?:5\\\\d|8[1-4])\\\\d{6}|5(?:(?:[02]\\\\d|5[0-478])\\\\d|1(?:[0-8]\\\\d|95)|6(?:4[0-4]|5[1-589]))\\\\d{3}\", , , , \"51234567\",\n, , [7, 8]], [, , \"800(?:(?:0\\\\d\\\\d|1)\\\\d|[2-9])\\\\d{3}\", , , , \"80012345\"], [, , \"(?:40\\\\d\\\\d|900)\\\\d{4}\", , , , \"9001234\", , , [7, 8]], [, , , , , , , , , [-1]], [, , \"70[0-2]\\\\d{5}\", , , , \"70012345\", , , [8]], [, , , , , , , , , [-1]], \"EE\", 372, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[369]|4[3-8]|5(?:[0-2]|5[0-478]|6[45])|7[1-9]\", \"[369]|4[3-8]|5(?:[02]|1(?:[0-8]|95)|5[0-478]|6(?:4[0-4]|5[1-589]))|7[1-9]\"]], [, \"(\\\\d{4})(\\\\d{3,4})\", \"$1 $2\", [\"[45]|8(?:00|[1-4])\", \"[45]|8(?:00[1-9]|[1-4])\"]],\n[, \"(\\\\d{2})(\\\\d{2})(\\\\d{4})\", \"$1 $2 $3\", [\"7\"]], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"80\"]]], , [, , , , , , , , , [-1]], , , [, , \"800[2-9]\\\\d{3}\", , , , , , , [7]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], EG:[, [, , \"[189]\\\\d{8,9}|[24-6]\\\\d{8}|[135]\\\\d{7}\", , , , , , , [8, 9, 10], [6, 7]], [, , \"(?:15\\\\d|57[23])\\\\d{5,6}|(?:13[23]|(?:2[2-4]|3)\\\\d|4(?:0[2-5]|[578][23]|64)|5(?:0[2-7]|5\\\\d)|6[24-689]3|8(?:2[2-57]|4[26]|6[237]|8[2-4])|9(?:2[27]|3[24]|52|6[2356]|7[2-4]))\\\\d{6}\",\n, , , \"234567890\", , , [8, 9], [6, 7]], [, , \"1[0-25]\\\\d{8}\", , , , \"1001234567\", , , [10]], [, , \"800\\\\d{7}\", , , , \"8001234567\", , , [10]], [, , \"900\\\\d{7}\", , , , \"9001234567\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"EG\", 20, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d)(\\\\d{7,8})\", \"$1 $2\", [\"[23]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{6,7})\", \"$1 $2\", [\"1[35]|[4-6]|8[2468]|9[235-7]\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[189]\"], \"0$1\"]], , [, ,\n, , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], EH:[, [, , \"[5-8]\\\\d{8}\", , , , , , , [9]], [, , \"528[89]\\\\d{5}\", , , , \"528812345\"], [, , \"692[12]\\\\d{5}|(?:6(?:[0-7]\\\\d|8[0-247-9]|9[013-9])|7(?:0[06-8]|6[1267]|7[0-27]))\\\\d{6}\", , , , \"650123456\"], [, , \"80\\\\d{7}\", , , , \"801234567\"], [, , \"89\\\\d{7}\", , , , \"891234567\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"5924[0-2]\\\\d{4}\", , , , \"592401234\"], \"EH\", 212, \"00\", \"0\",\n, , \"0\", , , , , , [, , , , , , , , , [-1]], , \"528[89]\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], ER:[, [, , \"[178]\\\\d{6}\", , , , , , , [7], [6]], [, , \"(?:1(?:1[12568]|[24]0|55|6[146])|8\\\\d\\\\d)\\\\d{4}\", , , , \"8370362\", , , , [6]], [, , \"(?:17[1-3]|7\\\\d\\\\d)\\\\d{4}\", , , , \"7123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"ER\", 291, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d)(\\\\d{3})(\\\\d{3})\",\n\"$1 $2 $3\", [\"[178]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], ES:[, [, , \"(?:51|[6-9]\\\\d)\\\\d{7}\", , , , , , , [9]], [, , \"96906(?:0[0-8]|1[1-9]|[2-9]\\\\d)\\\\d\\\\d|9(?:69(?:0[0-57-9]|[1-9]\\\\d)|73(?:[0-8]\\\\d|9[1-9]))\\\\d{4}|(?:8(?:[1356]\\\\d|[28][0-8]|[47][1-9])|9(?:[135]\\\\d|[268][0-8]|4[1-9]|7[124-9]))\\\\d{6}\", , , , \"810123456\"], [, , \"9(?:6906(?:09|10)|7390\\\\d\\\\d)\\\\d\\\\d|(?:6\\\\d|7[1-48])\\\\d{7}\", , , , \"612345678\"], [,\n, \"[89]00\\\\d{6}\", , , , \"800123456\"], [, , \"80[367]\\\\d{6}\", , , , \"803123456\"], [, , \"90[12]\\\\d{6}\", , , , \"901123456\"], [, , \"70\\\\d{7}\", , , , \"701234567\"], [, , , , , , , , , [-1]], \"ES\", 34, \"00\", , , , , , , , [[, \"(\\\\d{4})\", \"$1\", [\"905\"]], [, \"(\\\\d{6})\", \"$1\", [\"[79]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]\"]]], [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[89]00\"]], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\",\n[\"[5-9]\"]]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"51\\\\d{7}\", , , , \"511234567\"], , , [, , , , , , , , , [-1]]], ET:[, [, , \"(?:11|[2-59]\\\\d)\\\\d{7}\", , , , , , , [9], [7]], [, , \"(?:11(?:1(?:1[124]|2[2-57]|3[1-5]|5[5-8]|8[6-8])|2(?:13|3[6-8]|5[89]|7[05-9]|8[2-6])|3(?:2[01]|3[0-289]|4[1289]|7[1-4]|87)|4(?:1[69]|3[2-49]|4[0-3]|6[5-8])|5(?:1[578]|44|5[0-4])|6(?:1[78]|2[69]|39|4[5-7]|5[1-5]|6[0-59]|8[015-8]))|2(?:2(?:11[1-9]|22[0-7]|33\\\\d|44[1467]|66[1-68])|5(?:11[124-6]|33[2-8]|44[1467]|55[14]|66[1-3679]|77[124-79]|880))|3(?:3(?:11[0-46-8]|(?:22|55)[0-6]|33[0134689]|44[04]|66[01467])|4(?:44[0-8]|55[0-69]|66[0-3]|77[1-5]))|4(?:6(?:22[0-24-7]|33[1-5]|44[13-69]|55[14-689]|660|88[1-4])|7(?:(?:11|22)[1-9]|33[13-7]|44[13-6]|55[1-689]))|5(?:7(?:227|55[05]|(?:66|77)[14-8])|8(?:11[149]|22[013-79]|33[0-68]|44[013-8]|550|66[1-5]|77\\\\d)))\\\\d{4}\",\n, , , \"111112345\", , , , [7]], [, , \"9\\\\d{8}\", , , , \"911234567\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"ET\", 251, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[1-59]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], FI:[, [, , \"(?:[124-7]\\\\d|3[0-46-9])\\\\d{8}|[1-9]\\\\d{5,8}|[1-35689]\\\\d{4}\", , , , , , ,\n[5, 6, 7, 8, 9, 10]], [, , \"(?:1[3-79][1-8]|[235689][1-8]\\\\d)\\\\d{2,6}\", , , , \"131234567\", , , [5, 6, 7, 8, 9]], [, , \"(?:4[0-8]|50)\\\\d{4,8}\", , , , \"412345678\", , , [6, 7, 8, 9, 10]], [, , \"800\\\\d{4,6}\", , , , \"800123456\", , , [7, 8, 9]], [, , \"[67]00\\\\d{5,6}\", , , , \"600123456\", , , [8, 9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"FI\", 358, \"00|99(?:[01469]|5(?:[14]1|3[23]|5[59]|77|88|9[09]))\", \"0\", , , \"0\", , \"00\", , [[, \"(\\\\d{5})\", \"$1\", [\"75[12]\"], \"0$1\"],\n[, \"(\\\\d)(\\\\d{4,9})\", \"$1 $2\", [\"[2568][1-8]|3(?:0[1-9]|[1-9])|9\"], \"0$1\"], [, \"(\\\\d{6})\", \"$1\", [\"11\"]], [, \"(\\\\d{3})(\\\\d{3,7})\", \"$1 $2\", [\"(?:[12]0|7)0|[368]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{4,8})\", \"$1 $2\", [\"[12457]\"], \"0$1\"]], [[, \"(\\\\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]0|7)0|[368]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{4,8})\", \"$1 $2\", [\"[12457]\"], \"0$1\"]], [, , , , , , , , , [-1]], 1, \"1[03-79]|[2-9]\", [, , \"20(?:2[023]|9[89])\\\\d{1,6}|60[12]\\\\d{5,6}|(?:606|7(?:1|3\\\\d))\\\\d{7}|(?:[1-3]00|75[03-9])\\\\d{3,7}\"],\n[, , \"(?:10|[23][09])\\\\d{4,8}|60(?:[12]\\\\d{5,6}|6\\\\d{7})|7(?:(?:1|3\\\\d)\\\\d{7}|5[03-9]\\\\d{3,7})|20[2-59]\\\\d\\\\d\", , , , \"10112345\"], , , [, , , , , , , , , [-1]]], FJ:[, [, , \"45\\\\d{5}|(?:0800\\\\d|[235-9])\\\\d{6}\", , , , , , , [7, 11]], [, , \"603\\\\d{4}|(?:3[0-5]|6[25-7]|8[58])\\\\d{5}\", , , , \"3212345\", , , [7]], [, , \"(?:[279]\\\\d|45|5[01568]|8[034679])\\\\d{5}\", , , , \"7012345\", , , [7]], [, , \"0800\\\\d{7}\", , , , \"08001234567\", , , [11]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , ,\n, , , [-1]], [, , , , , , , , , [-1]], \"FJ\", 679, \"0(?:0|52)\", , , , , , \"00\", , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[235-9]|45\"]], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"0\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], FK:[, [, , \"[2-7]\\\\d{4}\", , , , , , , [5]], [, , \"[2-47]\\\\d{4}\", , , , \"31234\"], [, , \"[56]\\\\d{4}\", , , , \"51234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , ,\n, , , , , [-1]], [, , , , , , , , , [-1]], \"FK\", 500, \"00\", , , , , , , , , , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], FM:[, [, , \"[39]\\\\d{6}\", , , , , , , [7]], [, , \"(?:3[2357]0[1-9]|9[2-6]\\\\d\\\\d)\\\\d{3}\", , , , \"3201234\"], [, , \"(?:3[2357]0[1-9]|9[2-7]\\\\d\\\\d)\\\\d{3}\", , , , \"3501234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"FM\", 691,\n\"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[39]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], FO:[, [, , \"(?:[2-8]\\\\d|90)\\\\d{4}\", , , , , , , [6]], [, , \"(?:20|[34]\\\\d|8[19])\\\\d{4}\", , , , \"201234\"], [, , \"(?:[27][1-9]|5\\\\d)\\\\d{4}\", , , , \"211234\"], [, , \"80[257-9]\\\\d{3}\", , , , \"802123\"], [, , \"90(?:[13-5][15-7]|2[125-7]|99)\\\\d\\\\d\", , , , \"901123\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"(?:6[0-36]|88)\\\\d{4}\",\n, , , \"601234\"], \"FO\", 298, \"00\", , , , \"(10(?:01|[12]0|88))\", , , , [[, \"(\\\\d{6})\", \"$1\", [\"[2-9]\"], , \"$CC $1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], FR:[, [, , \"[1-9]\\\\d{8}\", , , , , , , [9]], [, , \"[1-5]\\\\d{8}\", , , , \"123456789\"], [, , \"700\\\\d{6}|(?:6\\\\d|7[3-9])\\\\d{7}\", , , , \"612345678\"], [, , \"80[0-5]\\\\d{6}\", , , , \"801234567\"], [, , \"8[129]\\\\d{7}\", , , , \"891123456\"], [, , \"884\\\\d{6}\", , , , \"884012345\"], [, ,\n, , , , , , , [-1]], [, , \"9\\\\d{8}\", , , , \"912345678\"], \"FR\", 33, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{4})\", \"$1\", [\"10\"]], [, \"(\\\\d{3})(\\\\d{3})\", \"$1 $2\", [\"1\"]], [, \"(\\\\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\"]], [[, \"(\\\\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\"]], [, , , , , , , , , [-1]], , ,\n[, , , , , , , , , [-1]], [, , \"80[6-9]\\\\d{6}\", , , , \"806123456\"], , , [, , , , , , , , , [-1]]], GA:[, [, , \"(?:0\\\\d|[2-7])\\\\d{6}\", , , , , , , [7, 8]], [, , \"01\\\\d{6}\", , , , \"01441234\", , , [8]], [, , \"(?:0[2-7]|[2-7])\\\\d{6}\", , , , \"06031234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"GA\", 241, \"00\", , , , , , , , [[, \"(\\\\d)(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[2-7]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\n\"$1 $2 $3 $4\", [\"0\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GB:[, [, , \"[1-357-9]\\\\d{9}|[18]\\\\d{8}|8\\\\d{6}\", , , , , , , [7, 9, 10], [4, 5, 6, 8]], [, , \"(?:1(?:(?:1(?:3[0-58]|4[0-5]|5[0-26-9]|6[0-4]|[78][0-49])|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[024-9]|2[3-9]|3[3-79]|4[1-689]|[58][02-9]|6[0-47-9]|7[013-9]|9\\\\d)\\\\d\\\\d|1(?:[0-7]\\\\d\\\\d|80[04589])))|2(?:0[01378]|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]))|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|7(?:(?:26(?:6[13-9]|7[0-7])|442\\\\d|50(?:2[0-3]|[3-68]2|76))\\\\d|6888[2-46-8]))\\\\d\\\\d\",\n, , , \"1212345678\", , , [9, 10], [4, 5, 6, 7, 8]], [, , \"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}\", , , , \"7400123456\", , , [10]], [, , \"80[08]\\\\d{7}|800\\\\d{6}|8001111\", , , , \"8001234567\"], [, , \"(?:8(?:4[2-5]|7[0-3])|9(?:[01]\\\\d|8[2-49]))\\\\d{7}|845464\\\\d\", , , , \"9012345678\", , , [7, 10]], [, , , , , , , , , [-1]], [, ,\n\"70\\\\d{8}\", , , , \"7012345678\", , , [10]], [, , \"56\\\\d{8}\", , , , \"5612345678\", , , [10]], \"GB\", 44, \"00\", \"0\", \" x\", , \"0\", , , , [[, \"(\\\\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)\"],\n\"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[024-9])\", \"[25]|7(?:0|6(?:[04-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\"]], , [, , \"76(?:0[0-2]|2[356]|4[0134]|5[49]|6[0-369]|77|81|9[39])\\\\d{6}\", , , , \"7640123456\", , , [10]], 1, , [, , , , , , , , , [-1]], [, , \"(?:3[0347]|55)\\\\d{8}\", , , , \"5512345678\", , , [10]], , , [, ,\n, , , , , , , [-1]]], GD:[, [, , \"(?:473|[58]\\\\d\\\\d|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"473(?:2(?:3[0-2]|69)|3(?:2[89]|86)|4(?:[06]8|3[5-9]|4[0-49]|5[5-79]|73|90)|63[68]|7(?:58|84)|800|938)\\\\d{4}\", , , , \"4732691234\", , , , [7]], [, , \"473(?:4(?:0[2-79]|1[04-9]|2[0-5]|58)|5(?:2[01]|3[3-8])|901)\\\\d{4}\", , , , \"4734031234\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\",\n, , , \"5002345678\"], [, , , , , , , , , [-1]], \"GD\", 1, \"011\", \"1\", , , \"1|([2-9]\\\\d{6})$\", \"473$1\", , , , , [, , , , , , , , , [-1]], , \"473\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GE:[, [, , \"(?:[3-57]\\\\d\\\\d|800)\\\\d{6}\", , , , , , , [9], [6, 7]], [, , \"(?:3(?:[256]\\\\d|4[124-9]|7[0-4])|4(?:1\\\\d|2[2-7]|3[1-79]|4[2-8]|7[239]|9[1-7]))\\\\d{6}\", , , , \"322123456\", , , , [6, 7]], [, , \"5(?:0(?:0[05]|55)\\\\d|1111|2222|3333|5200|75(?:00|7[78])|8(?:58[89]|888))\\\\d{4}|(?:5(?:[14]4|5[0157-9]|68|7[0147-9]|9[1-35-9])|790)\\\\d{6}\",\n, , , \"555123456\"], [, , \"800\\\\d{6}\", , , , \"800123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"706\\\\d{6}\", , , , \"706123456\"], \"GE\", 995, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\"]], , [, , , , , , , , ,\n[-1]], , , [, , \"706\\\\d{6}\"], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GF:[, [, , \"[56]94\\\\d{6}\", , , , , , , [9]], [, , \"594(?:[023]\\\\d|1[01]|4[03-9]|5[6-9]|6[0-3]|80|9[014])\\\\d{4}\", , , , \"594101234\"], [, , \"694(?:[0-249]\\\\d|3[0-48])\\\\d{4}\", , , , \"694201234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"GF\", 594, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\",\n[\"[56]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GG:[, [, , \"(?:1481|[357-9]\\\\d{3})\\\\d{6}|8\\\\d{6}(?:\\\\d{2})?\", , , , , , , [7, 9, 10], [6]], [, , \"1481[25-9]\\\\d{5}\", , , , \"1481256789\", , , [10], [6]], [, , \"7(?:(?:781|839)\\\\d|911[17])\\\\d{5}\", , , , \"7781123456\", , , [10]], [, , \"80[08]\\\\d{7}|800\\\\d{6}|8001111\", , , , \"8001234567\"], [, , \"(?:8(?:4[2-5]|7[0-3])|9(?:[01]\\\\d|8[0-3]))\\\\d{7}|845464\\\\d\", , , , \"9012345678\",\n, , [7, 10]], [, , , , , , , , , [-1]], [, , \"70\\\\d{8}\", , , , \"7012345678\", , , [10]], [, , \"56\\\\d{8}\", , , , \"5612345678\", , , [10]], \"GG\", 44, \"00\", \"0\", , , \"0|([25-9]\\\\d{5})$\", \"1481$1\", , , , , [, , \"76(?:0[0-2]|2[356]|4[0134]|5[49]|6[0-369]|77|81|9[39])\\\\d{6}\", , , , \"7640123456\", , , [10]], , , [, , , , , , , , , [-1]], [, , \"(?:3[0347]|55)\\\\d{8}\", , , , \"5512345678\", , , [10]], , , [, , , , , , , , , [-1]]], GH:[, [, , \"(?:[235]\\\\d{3}|800)\\\\d{5}\", , , , , , , [8, 9], [7]], [, , \"3(?:[167]2[0-6]|22[0-5]|32[0-3]|4(?:2[013-9]|3[01])|52[0-7]|82[0-2])\\\\d{5}|3(?:[0-8]8|9[28])0\\\\d{5}|3(?:0[237]|[1-9]7)\\\\d{6}\",\n, , , \"302345678\", , , [9], [7]], [, , \"56[01]\\\\d{6}|(?:2[0346-8]|5[0457])\\\\d{7}\", , , , \"231234567\", , , [9]], [, , \"800\\\\d{5}\", , , , \"80012345\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"GH\", 233, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[237]|80\"]], [, \"(\\\\d{3})(\\\\d{5})\", \"$1 $2\", [\"8\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[235]\"], \"0$1\"]], [[, \"(\\\\d{3})(\\\\d{5})\", \"$1 $2\", [\"8\"], \"0$1\"],\n[, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[235]\"], \"0$1\"]], [, , , , , , , , , [-1]], , , [, , \"800\\\\d{5}\", , , , , , , [8]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GI:[, [, , \"(?:[25]\\\\d\\\\d|629)\\\\d{5}\", , , , , , , [8]], [, , \"2190[0-2]\\\\d{3}|2(?:00\\\\d|16[24-7]|2(?:2[2457]|50))\\\\d{4}\", , , , \"20012345\"], [, , \"(?:5[46-8]\\\\d|629)\\\\d{5}\", , , , \"57123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , ,\n, [-1]], \"GI\", 350, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{5})\", \"$1 $2\", [\"2\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GL:[, [, , \"(?:19|[2-689]\\\\d)\\\\d{4}\", , , , , , , [6]], [, , \"(?:19|3[1-7]|6[14689]|8[14-79]|9\\\\d)\\\\d{4}\", , , , \"321000\"], [, , \"(?:[25][1-9]|4[2-9])\\\\d{4}\", , , , \"221234\"], [, , \"80\\\\d{4}\", , , , \"801234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"3[89]\\\\d{4}\",\n, , , \"381234\"], \"GL\", 299, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3\", [\"19|[2-689]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GM:[, [, , \"[2-9]\\\\d{6}\", , , , , , , [7]], [, , \"(?:4(?:[23]\\\\d\\\\d|4(?:1[024679]|[6-9]\\\\d))|5(?:54[0-7]|6[67]\\\\d|7(?:1[04]|2[035]|3[58]|48))|8\\\\d{3})\\\\d{3}\", , , , \"5661234\"], [, , \"(?:[23679]\\\\d|5[0-3])\\\\d{5}\", , , , \"3012345\"], [, , , , , , , , , [-1]], [, , , , , , , , ,\n[-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"GM\", 220, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[2-9]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GN:[, [, , \"(?:30|6\\\\d\\\\d|722)\\\\d{6}\", , , , , , , [8, 9]], [, , \"30(?:24|3[12]|4[1-35-7]|5[13]|6[189]|[78]1|9[1478])\\\\d{4}\", , , , \"30241234\", , , [8]], [, , \"6[02356]\\\\d{7}\", , , , \"601123456\", , , [9]], [, , , , , , , , ,\n[-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"722\\\\d{6}\", , , , \"722123456\", , , [9]], \"GN\", 224, \"00\", , , , , , , , [[, \"(\\\\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]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GP:[, [, , \"(?:590|69\\\\d)\\\\d{6}\", , , , , , , [9]], [, , \"590(?:0[1-68]|1[0-2]|2[0-68]|3[1289]|4[0-24-9]|5[3-579]|6[0189]|7[08]|8[0-689]|9\\\\d)\\\\d{4}\",\n, , , \"590201234\"], [, , \"69(?:0\\\\d\\\\d|1(?:2[29]|3[0-5]))\\\\d{4}\", , , , \"690001234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"GP\", 590, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[56]\"], \"0$1\"]], , [, , , , , , , , , [-1]], 1, , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GQ:[, [, , \"222\\\\d{6}|(?:3\\\\d|55|[89]0)\\\\d{7}\", , , , , ,\n, [9]], [, , \"33[0-24-9]\\\\d[46]\\\\d{4}|3(?:33|5\\\\d)\\\\d[7-9]\\\\d{4}\", , , , \"333091234\"], [, , \"(?:222|55[015])\\\\d{6}\", , , , \"222123456\"], [, , \"80\\\\d[1-9]\\\\d{5}\", , , , \"800123456\"], [, , \"90\\\\d[1-9]\\\\d{5}\", , , , \"900123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"GQ\", 240, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[235]\"]], [, \"(\\\\d{3})(\\\\d{6})\", \"$1 $2\", [\"[89]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , ,\n, , , , , , [-1]], , , [, , , , , , , , , [-1]]], GR:[, [, , \"(?:[268]\\\\d|[79]0)\\\\d{8}\", , , , , , , [10]], [, , \"2(?:1\\\\d\\\\d|2(?:2[1-46-9]|[36][1-8]|4[1-7]|5[1-4]|7[1-5]|[89][1-9])|3(?:1\\\\d|2[1-57]|[35][1-3]|4[13]|7[1-7]|8[124-6]|9[1-79])|4(?:1\\\\d|2[1-8]|3[1-4]|4[13-5]|6[1-578]|9[1-5])|5(?:1\\\\d|[29][1-4]|3[1-5]|4[124]|5[1-6])|6(?:1\\\\d|[269][1-6]|3[1245]|4[1-7]|5[13-9]|7[14]|8[1-5])|7(?:1\\\\d|2[1-5]|3[1-6]|4[1-7]|5[1-57]|6[135]|9[125-7])|8(?:1\\\\d|2[1-5]|[34][1-4]|9[1-57]))\\\\d{6}\", , , , \"2123456789\"],\n[, , \"6(?:8[57-9]|9\\\\d)\\\\d{7}\", , , , \"6912345678\"], [, , \"800\\\\d{7}\", , , , \"8001234567\"], [, , \"90[19]\\\\d{7}\", , , , \"9091234567\"], [, , \"8(?:0[16]|12|25)\\\\d{7}\", , , , \"8011234567\"], [, , \"70(?:0[3-8]0|707)\\\\d{5}\", , , , \"7003000123\"], [, , , , , , , , , [-1]], \"GR\", 30, \"00\", , , , , , , , [[, \"(\\\\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])\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[2689]\"]]],\n, [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GT:[, [, , \"(?:1\\\\d{3}|[2-7])\\\\d{7}\", , , , , , , [8, 11]], [, , \"[267][2-9]\\\\d{6}\", , , , \"22456789\", , , [8]], [, , \"[3-5]\\\\d{7}\", , , , \"51234567\", , , [8]], [, , \"18[01]\\\\d{8}\", , , , \"18001112222\", , , [11]], [, , \"19\\\\d{9}\", , , , \"19001112222\", , , [11]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"GT\", 502, \"00\", , , , , , , , [[, \"(\\\\d{4})(\\\\d{4})\",\n\"$1 $2\", [\"[2-7]\"]], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"1\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GU:[, [, , \"(?:[58]\\\\d\\\\d|671|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"671(?:3(?:00|3[39]|4[349]|55|6[26])|4(?:00|56|7[1-9]|8[0236-9])|5(?:55|6[2-5]|88)|6(?:3[2-578]|4[24-9]|5[34]|78|8[235-9])|7(?:[0479]7|2[0167]|3[45]|8[7-9])|8(?:[2-57-9]8|6[48])|9(?:2[29]|6[79]|7[1279]|8[7-9]|9[78]))\\\\d{4}\", , , , \"6713001234\",\n, , , [7]], [, , \"671(?:3(?:00|3[39]|4[349]|55|6[26])|4(?:00|56|7[1-9]|8[0236-9])|5(?:55|6[2-5]|88)|6(?:3[2-578]|4[24-9]|5[34]|78|8[235-9])|7(?:[0479]7|2[0167]|3[45]|8[7-9])|8(?:[2-57-9]8|6[48])|9(?:2[29]|6[79]|7[1279]|8[7-9]|9[78]))\\\\d{4}\", , , , \"6713001234\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]],\n\"GU\", 1, \"011\", \"1\", , , \"1|([3-9]\\\\d{6})$\", \"671$1\", , 1, , , [, , , , , , , , , [-1]], , \"671\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GW:[, [, , \"[49]\\\\d{8}|4\\\\d{6}\", , , , , , , [7, 9]], [, , \"443\\\\d{6}\", , , , \"443201234\", , , [9]], [, , \"9(?:5\\\\d|6[569]|77)\\\\d{6}\", , , , \"955012345\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"40\\\\d{5}\", , , , \"4012345\", , , [7]], \"GW\", 245,\n\"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"40\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[49]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GY:[, [, , \"(?:862\\\\d|9008)\\\\d{3}|(?:[2-46]\\\\d|77)\\\\d{5}\", , , , , , , [7]], [, , \"(?:2(?:1[6-9]|2[0-35-9]|3[1-4]|5[3-9]|6\\\\d|7[0-24-79])|3(?:2[25-9]|3\\\\d)|4(?:4[0-24]|5[56])|77[1-57])\\\\d{4}\", , , , \"2201234\"], [, , \"6\\\\d{6}\", , , , \"6091234\"], [, , \"(?:289|862)\\\\d{4}\",\n, , , \"2891234\"], [, , \"9008\\\\d{3}\", , , , \"9008123\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"GY\", 592, \"001\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[2-46-9]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], HK:[, [, , \"8[0-46-9]\\\\d{6,7}|9\\\\d{4}(?:\\\\d(?:\\\\d(?:\\\\d{4})?)?)?|(?:[235-79]\\\\d|46)\\\\d{6}\", , , , , , , [5, 6, 7, 8, 9, 11]], [, , \"(?:384[0-24]|58(?:0[1-8]|1[2-9]))\\\\d{4}|(?:2(?:[13-8]\\\\d|2[013-9]|9[0-24-9])|3(?:[1569][0-24-9]|4[0-246-9]|7[0-24-69]|89))\\\\d{5}\",\n, , , \"21234567\", , , [8]], [, , \"(?:46(?:0[0-6]|1[0-2]|4[0-57-9])|5730|(?:626|848)[01]|707[1-5]|929[03-9])\\\\d{4}|(?:5(?:[1-59][0-46-9]|6[0-4689]|7[0-2469])|6(?:0[1-9]|[13-59]\\\\d|[268][0-57-9]|7[0-79])|9(?:0[1-9]|1[02-9]|[2358][0-8]|[467]\\\\d))\\\\d{5}\", , , , \"51234567\", , , [8]], [, , \"800\\\\d{6}\", , , , \"800123456\", , , [9]], [, , \"900(?:[0-24-9]\\\\d{7}|3\\\\d{1,4})\", , , , \"90012345678\", , , [5, 6, 7, 8, 11]], [, , , , , , , , , [-1]], [, , \"8(?:1[0-4679]\\\\d|2(?:[0-36]\\\\d|7[0-4])|3(?:[034]\\\\d|2[09]|70))\\\\d{4}\",\n, , , \"81123456\", , , [8]], [, , , , , , , , , [-1]], \"HK\", 852, \"00(?:30|5[09]|[126-9]?)\", , , , , , \"00\", , [[, \"(\\\\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\"]]], , [, , \"7(?:1(?:0[0-38]|1[0-3679]|3[013]|69|9[136])|2(?:[02389]\\\\d|1[18]|7[27-9])|3(?:[0-38]\\\\d|7[0-369]|9[2357-9])|47\\\\d|5(?:[178]\\\\d|5[0-5])|6(?:0[0-7]|2[236-9]|[35]\\\\d)|7(?:[27]\\\\d|8[7-9])|8(?:[23689]\\\\d|7[1-9])|9(?:[025]\\\\d|6[0-246-8]|7[0-36-9]|8[238]))\\\\d{4}\",\n, , , \"71123456\", , , [8]], , , [, , , , , , , , , [-1]], [, , \"30(?:0[1-9]|[15-7]\\\\d|2[047]|89)\\\\d{4}\", , , , \"30161234\", , , [8]], , , [, , , , , , , , , [-1]]], HN:[, [, , \"8\\\\d{10}|[237-9]\\\\d{7}\", , , , , , , [8, 11]], [, , \"2(?:2(?:0[019]|1[1-36]|[23]\\\\d|4[04-6]|5[57]|6[24]|7[0135689]|8[01346-9]|9[0-2])|4(?:07|2[3-59]|3[13-689]|4[0-68]|5[1-35])|5(?:0[78]|16|4[03-5]|5\\\\d|6[14-6]|74|80)|6(?:[056]\\\\d|17|2[07]|3[04]|4[0-378]|[78][0-8]|9[01])|7(?:6[46-9]|7[02-9]|8[034]|91)|8(?:79|8[0-357-9]|9[1-57-9]))\\\\d{4}\",\n, , , \"22123456\", , , [8]], [, , \"[37-9]\\\\d{7}\", , , , \"91234567\", , , [8]], [, , \"8002\\\\d{7}\", , , , \"80021234567\", , , [11]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"HN\", 504, \"00\", , , , , , , , [[, \"(\\\\d{4})(\\\\d{4})\", \"$1-$2\", [\"[237-9]\"]], [, \"(\\\\d{3})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"8\"]]], [[, \"(\\\\d{4})(\\\\d{4})\", \"$1-$2\", [\"[237-9]\"]]], [, , , , , , , , , [-1]], , , [, , \"8002\\\\d{7}\", , , , , , , [11]], [, , , , , , , , , [-1]],\n, , [, , , , , , , , , [-1]]], HR:[, [, , \"(?:[24-69]\\\\d|3[0-79])\\\\d{7}|80\\\\d{5,7}|[1-79]\\\\d{7}|6\\\\d{5,6}\", , , , , , , [6, 7, 8, 9]], [, , \"1\\\\d{7}|(?:2[0-3]|3[1-5]|4[02-47-9]|5[1-3])\\\\d{6,7}\", , , , \"12345678\", , , [8, 9], [6, 7]], [, , \"9(?:751\\\\d{5}|8\\\\d{6,7})|9(?:01|[1259]\\\\d|7[0679])\\\\d{6}\", , , , \"921234567\", , , [8, 9]], [, , \"80[01]\\\\d{4,6}\", , , , \"800123456\", , , [7, 8, 9]], [, , \"6[01459]\\\\d{6}|6[01]\\\\d{4,5}\", , , , \"611234\", , , [6, 7, 8]], [, , , , , , , , , [-1]], [, , \"7[45]\\\\d{6}\",\n, , , \"74123456\", , , [8]], [, , , , , , , , , [-1]], \"HR\", 385, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\",\n[\"8\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"62\\\\d{6,7}|72\\\\d{6}\", , , , \"62123456\", , , [8, 9]], , , [, , , , , , , , , [-1]]], HT:[, [, , \"[2-489]\\\\d{7}\", , , , , , , [8]], [, , \"2(?:2\\\\d|5[1-5]|81|9[149])\\\\d{5}\", , , , \"22453300\"], [, , \"[34]\\\\d{7}\", , , , \"34101234\"], [, , \"8\\\\d{7}\", , , , \"80012345\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"9(?:[67][0-4]|8[0-3589]|9\\\\d)\\\\d{5}\", , , , \"98901234\"], \"HT\", 509, \"00\",\n, , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{4})\", \"$1 $2 $3\", [\"[2-489]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], HU:[, [, , \"[2357]\\\\d{8}|[1-9]\\\\d{7}\", , , , , , , [8, 9], [6, 7]], [, , \"(?:1\\\\d|[27][2-9]|3[2-7]|4[24-9]|5[2-79]|6[23689]|8[2-57-9]|9[2-69])\\\\d{6}\", , , , \"12345678\", , , [8], [6, 7]], [, , \"(?:[257]0|3[01])\\\\d{7}\", , , , \"201234567\", , , [9]], [, , \"[48]0\\\\d{6}\", , , , \"80123456\", , , [8]], [, , \"9[01]\\\\d{6}\",\n, , , \"90123456\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"21\\\\d{7}\", , , , \"211234567\", , , [9]], \"HU\", 36, \"00\", \"06\", , , \"06\", , , , [[, \"(\\\\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-57-9]\"], \"06 $1\"]], , [, , , , , , , , , [-1]], , , [, , \"[48]0\\\\d{6}\", , , , , , , [8]], [, , \"38\\\\d{7}\", , , , \"381234567\",\n, , [9]], , , [, , , , , , , , , [-1]]], ID:[, [, , \"(?:(?:007803|8\\\\d{4})\\\\d|[1-36])\\\\d{6}|[1-9]\\\\d{8,10}|[2-9]\\\\d{7}\", , , , , , , [7, 8, 9, 10, 11, 12, 13], [5, 6]], [, , \"2[124]\\\\d{7,8}|619\\\\d{8}|2(?:1(?:14|500)|2\\\\d{3})\\\\d{3}|61\\\\d{5,8}|(?:2(?:[35][1-4]|6[0-8]|7[1-6]|8\\\\d|9[1-8])|3(?:1|[25][1-8]|3[1-68]|4[1-3]|6[1-3568]|7[0-469]|8\\\\d)|4(?:0[1-589]|1[01347-9]|2[0-36-8]|3[0-24-68]|43|5[1-378]|6[1-5]|7[134]|8[1245])|5(?:1[1-35-9]|2[25-8]|3[124-9]|4[1-3589]|5[1-46]|6[1-8])|6(?:[25]\\\\d|3[1-69]|4[1-6])|7(?:02|[125][1-9]|[36]\\\\d|4[1-8]|7[0-36-9])|9(?:0[12]|1[013-8]|2[0-479]|5[125-8]|6[23679]|7[159]|8[01346]))\\\\d{5,8}\",\n, , , \"218350123\", , , [7, 8, 9, 10, 11], [5, 6]], [, , \"8[1-35-9]\\\\d{7,10}\", , , , \"812345678\", , , [9, 10, 11, 12]], [, , \"007803\\\\d{7}|(?:177\\\\d|800)\\\\d{5,7}\", , , , \"8001234567\", , , [8, 9, 10, 11, 13]], [, , \"809\\\\d{7}\", , , , \"8091234567\", , , [10]], [, , \"804\\\\d{7}\", , , , \"8041234567\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"ID\", 62, \"00[189]\", \"0\", , , \"0\", , , , [[, \"(\\\\d)(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"15\"]], [, \"(\\\\d{2})(\\\\d{5,9})\", \"$1 $2\", [\"2[124]|[36]1\"],\n\"(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\"], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3 $4\", [\"0\"]]], [[, \"(\\\\d)(\\\\d{3})(\\\\d{3})\",\n\"$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\"]], [, , ,\n, , , , , , [-1]], , , [, , \"(?:007803\\\\d|8071)\\\\d{6}\", , , , , , , [10, 13]], [, , \"(?:1500|8071\\\\d{3})\\\\d{3}\", , , , \"8071123456\", , , [7, 10]], , , [, , , , , , , , , [-1]]], IE:[, [, , \"(?:1\\\\d|[2569])\\\\d{6,8}|4\\\\d{6,9}|7\\\\d{8}|8\\\\d{8,9}\", , , , , , , [7, 8, 9, 10], [5, 6]], [, , \"(?:1\\\\d|21)\\\\d{6,7}|(?:2[24-9]|4(?:0[24]|5\\\\d|7)|5(?:0[45]|1\\\\d|8)|6(?:1\\\\d|[237-9])|9(?:1\\\\d|[35-9]))\\\\d{5}|(?:23|4(?:[1-469]|8[0-46-9])|5[23679]|6[4-6]|7[14]|9[04])\\\\d{7}\", , , , \"2212345\", , , , [5, 6]], [, , \"8(?:22|[35-9]\\\\d)\\\\d{6}\",\n, , , \"850123456\", , , [9]], [, , \"1800\\\\d{6}\", , , , \"1800123456\", , , [10]], [, , \"15(?:1[2-8]|[2-8]0|9[089])\\\\d{6}\", , , , \"1520123456\", , , [10]], [, , \"18[59]0\\\\d{6}\", , , , \"1850123456\", , , [10]], [, , \"700\\\\d{6}\", , , , \"700123456\", , , [9]], [, , \"76\\\\d{7}\", , , , \"761234567\", , , [9]], \"IE\", 353, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\",\n[\"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)(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3 $4\", [\"8\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"4\"], \"(0$1)\"]], , [, , , , , , , , , [-1]], , , [, , \"18[59]0\\\\d{6}\",\n, , , , , , [10]], [, , \"818\\\\d{6}\", , , , \"818123456\", , , [9]], , , [, , \"8[35-9]5\\\\d{7}\", , , , \"8551234567\", , , [10]]], IL:[, [, , \"1\\\\d{6}(?:\\\\d{3,5})?|[57]\\\\d{8}|[1-489]\\\\d{7}\", , , , , , , [7, 8, 9, 10, 11, 12]], [, , \"153\\\\d{8,9}|[2-489]\\\\d{7}\", , , , \"21234567\", , , [8, 11, 12], [7]], [, , \"5(?:(?:[0-389][2-9]|4[1-9]|6\\\\d)\\\\d|5(?:01|2[2-6]|3[23]|4[45]|5[05689]|6[6-8]|7[0-267]|8[7-9]|9[1-9]))\\\\d{5}\", , , , \"502345678\", , , [9]], [, , \"1(?:255|80[019]\\\\d{3})\\\\d{3}\", , , , \"1800123456\", ,\n, [7, 10]], [, , \"1212\\\\d{4}|1(?:200|9(?:0[01]|19))\\\\d{6}\", , , , \"1919123456\", , , [8, 10]], [, , \"1700\\\\d{6}\", , , , \"1700123456\", , , [10]], [, , , , , , , , , [-1]], [, , \"78(?:33|55|77|81)\\\\d{5}|7(?:18|2[23]|3[237]|47|6[58]|7\\\\d|82|9[235-9])\\\\d{6}\", , , , \"771234567\", , , [9]], \"IL\", 972, \"0(?:0|1[2-9])\", \"0\", , , \"0\", , , , [[, \"(\\\\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})\",\n\"$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\"]]], , [, , , , , , , , , [-1]], , , [, , \"1700\\\\d{6}\", , , , , , , [10]], [, , \"1599\\\\d{6}\", , , , \"1599123456\", , , [10]], , , [, , \"151\\\\d{8,9}\", , , , \"15112340000\", , , [11, 12]]], IM:[, [, , \"1624\\\\d{6}|(?:[3578]\\\\d|90)\\\\d{8}\", , , , , , , [10],\n[6]], [, , \"1624[5-8]\\\\d{5}\", , , , \"1624756789\", , , , [6]], [, , \"76245[06]\\\\d{4}|7(?:4576|[59]24\\\\d|624[0-4689])\\\\d{5}\", , , , \"7924123456\"], [, , \"808162\\\\d{4}\", , , , \"8081624567\"], [, , \"8(?:440[49]06|72299\\\\d)\\\\d{3}|(?:8(?:45|70)|90[0167])624\\\\d{4}\", , , , \"9016247890\"], [, , , , , , , , , [-1]], [, , \"70\\\\d{8}\", , , , \"7012345678\"], [, , \"56\\\\d{8}\", , , , \"5612345678\"], \"IM\", 44, \"00\", \"0\", , , \"0|([5-8]\\\\d{5})$\", \"1624$1\", , , , , [, , , , , , , , , [-1]], , \"74576|(?:16|7[56])24\", [, ,\n, , , , , , , [-1]], [, , \"3440[49]06\\\\d{3}|(?:3(?:08162|3\\\\d{4}|45624|7(?:0624|2299))|55\\\\d{4})\\\\d{4}\", , , , \"5512345678\"], , , [, , , , , , , , , [-1]]], IN:[, [, , \"(?:00800|[2-9]\\\\d\\\\d)\\\\d{7}|1\\\\d{7,12}\", , , , , , , [8, 9, 10, 11, 12, 13], [6, 7]], [, , \"782[0-6][2-7]\\\\d{5}|(?:170[24]|2(?:80[13468]|90\\\\d)|380\\\\d|4(?:20[24]|72[2-8])|552[1-7])\\\\d{6}|(?:342|674|788)(?:[0189][2-7]|[2-7]\\\\d)\\\\d{5}|(?:11|2[02]|33|4[04]|79|80)[2-7]\\\\d{7}|(?:1(?:2[0-249]|3[0-25]|4[145]|[59][14]|6[014]|7[1257]|8[01346])|2(?:1[257]|3[013]|4[01]|5[0137]|6[0158]|78|8[1568]|9[14])|3(?:26|4[13]|5[34]|6[01489]|7[02-46]|8[159])|4(?:1[36]|2[1-47]|3[15]|5[12]|6[0-26-9]|7[014-9]|8[013-57]|9[014-7])|5(?:1[025]|22|[36][25]|4[28]|[578]1|9[15])|6(?:12|[2-47]1|5[17]|6[13]|80)|7(?:12|2[14]|3[134]|4[47]|5[15]|[67]1)|8(?:16|2[014]|3[126]|6[136]|7[078]|8[34]|91))[2-7]\\\\d{6}|(?:1(?:2[35-8]|3[346-9]|4[236-9]|[59][0235-9]|6[235-9]|7[34689]|8[257-9])|2(?:1[134689]|3[24-8]|4[2-8]|5[25689]|6[2-4679]|7[13-79]|8[2-479]|9[235-9])|3(?:01|1[79]|2[1-5]|4[5-8]|5[125689]|6[235-7]|7[157-9]|8[2-46-8])|4(?:1[14578]|2[5689]|3[2-467]|5[4-7]|6[35]|73|8[2689]|9[2389])|5(?:[16][146-9]|2[14-8]|3[1346]|4[14-69]|5[46]|7[2-4]|8[2-8]|9[246])|6(?:1[1358]|2[2457]|3[2-4]|4[235-7]|5[2-689]|6[24578]|7[235689]|8[1-6])|7(?:1[013-9]|2[0235-9]|3[2679]|4[1-35689]|5[2-46-9]|[67][02-9]|8[013-7]|9[0189])|8(?:1[1357-9]|2[235-8]|3[03-57-9]|4[0-24-9]|5\\\\d|6[2457-9]|7[1-6]|8[1256]|9[2-4]))\\\\d[2-7]\\\\d{5}\",\n, , , \"7410410123\", , , [10], [6, 7, 8]], [, , \"(?:6(?:1279|350[0-6])|7(?:3(?:1(?:11|7[02-8])|411)|4[47](?:11|7[02-8])|5111|700[02-9]|88(?:11|7[02-9])|9(?:313|79[07-9]))|8(?:079[04-9]|(?:16|2[014]|3[126]|6[136]|7[78]|8[34]|91)7[02-8]))\\\\d{5}|7(?:28[6-8]|3(?:2[0-49]|9[2-5])|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])[089]\\\\d{5}|(?:6(?:0(?:0[0-3569]|26|33)|2(?:[06]\\\\d|3[02589]|8[0-479]|9[0-79])|3(?:0[0-79]|5[1-9]|6[0-4679]|7[0-24-9]|[89]\\\\d)|9(?:0[019]|13))|7(?:0\\\\d\\\\d|19[0-5]|2(?:[0235-79]\\\\d|[14][017-9]|8[0-59])|3(?:[05-8]\\\\d|1[089]|2[5-8]|3[017-9]|4[07-9]|9[016-9])|4(?:0\\\\d|1[015-9]|[29][89]|39|[47][089]|8[389])|5(?:[0346-8]\\\\d|1[07-9]|2[04-9]|5[017-9]|9[7-9])|6(?:0[0-47]|1[0-257-9]|2[0-4]|3[19]|5[4589]|[6-9]\\\\d)|7(?:0[289]|[1-9]\\\\d)|8(?:[0-79]\\\\d|8[089])|9(?:[089]\\\\d|7[02-8]))|8(?:0(?:[01589]\\\\d|6[67]|7[02-8])|1(?:[0-57-9]\\\\d|6[089])|2(?:[014][089]|[235-9]\\\\d)|3(?:[03-57-9]\\\\d|[126][089])|[45]\\\\d\\\\d|6(?:[02457-9]\\\\d|[136][089])|7(?:0[07-9]|[1-69]\\\\d|[78][089])|8(?:[0-25-9]\\\\d|3[089]|4[0489])|9(?:[02-9]\\\\d|1[0289]))|9\\\\d{3})\\\\d{6}\",\n, , , \"8123456789\", , , [10]], [, , \"00800\\\\d{7}|1(?:600\\\\d{6}|80(?:0\\\\d{4,9}|3\\\\d{9}))\", , , , \"1800123456\"], [, , \"186[12]\\\\d{9}\", , , , \"1861123456789\", , , [13]], [, , \"1860\\\\d{7}\", , , , \"18603451234\", , , [11]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"IN\", 91, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{7})\", \"$1\", [\"575\"]], [, \"(\\\\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)\"], , , 1], [, \"(\\\\d{4})(\\\\d{4,5})\",\n\"$1 $2\", [\"180\", \"1800\"], , , 1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"140\"], , , 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]\",\n\"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(?:[2-4]1|5[17]|6[13]|7[14]|80)|7(?:12|(?: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|(?:55|61)2|7(?: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])|[2-4]1|5[17]|6[13]|7[14]|80)|7(?:12|(?: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]|(?:1(?:29|60|8[06])|261|552|788[01])[2-7]|(?:74[47]|8(?:16|2[014]|3[126]|6[136]|7[78]|83))(?:[2-6]|7[19])\"],\n\"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-8])|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-8])|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(?:1[1358]|2(?:[2457]|84|95)|3(?:[2-4]|55)|[4-8])|7(?:1(?:[013-8]|9[6-9])|3179)|807(?:1|9[1-3])|(?:1552|7(?: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]\"],\n\"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)\"], , , 1], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})(\\\\d{3})\", \"$1 $2 $3 $4\", [\"0\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3 $4\", [\"18\"], , , 1]], [[, \"(\\\\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)\"], , , 1], [, \"(\\\\d{4})(\\\\d{4,5})\", \"$1 $2\", [\"180\", \"1800\"],\n, , 1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"140\"], , , 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]\",\n\"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(?:[2-4]1|5[17]|6[13]|7[14]|80)|7(?:12|(?: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|(?:55|61)2|7(?: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])|[2-4]1|5[17]|6[13]|7[14]|80)|7(?:12|(?: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]|(?:1(?:29|60|8[06])|261|552|788[01])[2-7]|(?:74[47]|8(?:16|2[014]|3[126]|6[136]|7[78]|83))(?:[2-6]|7[19])\"],\n\"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-8])|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-8])|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(?:1[1358]|2(?:[2457]|84|95)|3(?:[2-4]|55)|[4-8])|7(?:1(?:[013-8]|9[6-9])|3179)|807(?:1|9[1-3])|(?:1552|7(?: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]\"],\n\"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)\"], , , 1], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3 $4\", [\"18\"], , , 1]], [, , , , , , , , , [-1]], , , [, , \"1(?:600\\\\d{6}|800\\\\d{4,9})|(?:00800|18(?:03\\\\d\\\\d|6(?:0|[12]\\\\d\\\\d)))\\\\d{7}\"], [, , \"140\\\\d{7}\", , , , \"1409305260\", , , [10]], , , [, , , , , , , , , [-1]]], IO:[, [, , \"3\\\\d{6}\", , , , , , , [7]], [, , \"37\\\\d{5}\", , , , \"3709100\"], [,\n, \"38\\\\d{5}\", , , , \"3801234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"IO\", 246, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"3\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], IQ:[, [, , \"(?:1|7\\\\d\\\\d)\\\\d{7}|[2-6]\\\\d{7,8}\", , , , , , , [8, 9, 10], [6, 7]], [, , \"1\\\\d{7}|(?:2[13-5]|3[02367]|4[023]|5[03]|6[026])\\\\d{6,7}\", , , ,\n\"12345678\", , , [8, 9], [6, 7]], [, , \"7[3-9]\\\\d{8}\", , , , \"7912345678\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"IQ\", 964, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , ,\n, , , [-1]], , , [, , , , , , , , , [-1]]], IR:[, [, , \"[1-9]\\\\d{9}|(?:[1-8]\\\\d\\\\d|9)\\\\d{3,4}\", , , , , , , [4, 5, 6, 7, 10], [8]], [, , \"(?:1[137]|2[13-68]|3[1458]|4[145]|5[1468]|6[16]|7[1467]|8[13467])(?:[03-57]\\\\d{7}|[16]\\\\d{3}(?:\\\\d{4})?|[289]\\\\d{3}(?:\\\\d(?:\\\\d{3})?)?)|94(?:000[09]|2(?:121|[2689]0\\\\d)|30[0-2]\\\\d|4(?:111|40\\\\d))\\\\d{4}\", , , , \"2123456789\", , , [6, 7, 10], [4, 5, 8]], [, , \"9(?:(?:0(?:[1-35]\\\\d|44)|(?:[13]\\\\d|2[0-2])\\\\d)\\\\d|9(?:(?:[0-2]\\\\d|44)\\\\d|5[15]0|8(?:1\\\\d|88)|9(?:0[013]|1[0134]|21|77|9[6-9])))\\\\d{5}\",\n, , , \"9123456789\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"993\\\\d{7}\", , , , \"9932123456\", , , [10]], \"IR\", 98, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\"]],\n, [, , , , , , , , , [-1]], , , [, , \"9(?:4440\\\\d{5}|6(?:0[12]|2[16-8]|3(?:08|[14]5|[23]|66)|4(?:0|80)|5[01]|6[89]|86|9[19]))\", , , , , , , [4, 5, 10]], [, , \"96(?:0[12]|2[16-8]|3(?:08|[14]5|[23]|66)|4(?:0|80)|5[01]|6[89]|86|9[19])\", , , , \"9601\", , , [4, 5]], , , [, , , , , , , , , [-1]]], IS:[, [, , \"(?:38\\\\d|[4-9])\\\\d{6}\", , , , , , , [7, 9]], [, , \"(?:4(?:1[0-24-69]|2[0-7]|[37][0-8]|4[0-245]|5[0-68]|6\\\\d|8[0-36-8])|5(?:05|[156]\\\\d|2[02578]|3[0-579]|4[03-7]|7[0-2578]|8[0-35-9]|9[013-689])|87[23])\\\\d{4}\",\n, , , \"4101234\", , , [7]], [, , \"(?:38[589]\\\\d\\\\d|6(?:1[1-8]|2[0-6]|3[027-9]|4[014679]|5[0159]|6[0-69]|70|8[06-8]|9\\\\d)|7(?:5[057]|[6-8]\\\\d|9[0-3])|8(?:2[0-59]|[3469]\\\\d|5[1-9]|8[28]))\\\\d{4}\", , , , \"6111234\"], [, , \"800\\\\d{4}\", , , , \"8001234\", , , [7]], [, , \"90\\\\d{5}\", , , , \"9011234\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"49\\\\d{5}\", , , , \"4921234\", , , [7]], \"IS\", 354, \"00|1(?:0(?:01|[12]0)|100)\", , , , , , \"00\", , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[4-9]\"]], [,\n\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"3\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"809\\\\d{4}\", , , , \"8091234\", , , [7]], , , [, , \"(?:689|8(?:7[0189]|80)|95[48])\\\\d{4}\", , , , \"6891234\", , , [7]]], IT:[, [, , \"0\\\\d{5,10}|3[0-8]\\\\d{7,10}|55\\\\d{8}|8\\\\d{5}(?:\\\\d{2,4})?|(?:1\\\\d|39)\\\\d{7,8}\", , , , , , , [6, 7, 8, 9, 10, 11, 12]], [, , \"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}\",\n, , , \"0212345678\", , , [6, 7, 8, 9, 10, 11]], [, , \"3[1-9]\\\\d{8}|3[2-9]\\\\d{7}\", , , , \"3123456789\", , , [9, 10]], [, , \"80(?:0\\\\d{3}|3)\\\\d{3}\", , , , \"800123456\", , , [6, 9]], [, , \"(?:0878\\\\d\\\\d|89(?:2|4[5-9]\\\\d))\\\\d{3}|89[45][0-4]\\\\d\\\\d|(?:1(?:44|6[346])|89(?:5[5-9]|9))\\\\d{6}\", , , , \"899123456\", , , [6, 8, 9, 10]], [, , \"84(?:[08]\\\\d{3}|[17])\\\\d{3}\", , , , \"848123456\", , , [6, 9]], [, , \"1(?:78\\\\d|99)\\\\d{6}\", , , , \"1781234567\", , , [9, 10]], [, , \"55\\\\d{8}\", , , , \"5512345678\", , , [10]], \"IT\",\n39, \"00\", , , , , , , , [[, \"(\\\\d{4,5})\", \"$1\", [\"1(?:0|9[246])\", \"1(?:0|9(?:2[2-9]|[46]))\"]], [, \"(\\\\d{6})\", \"$1\", [\"1(?:1|92)\"]], [, \"(\\\\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[245])\", \"0[13-57-9][0159]|8(?:03|4[17]|9(?:2|[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})\",\n\"$1 $2 $3\", [\"1[4679]|[38]\"]], [, \"(\\\\d{3})(\\\\d{3,4})(\\\\d{4})\", \"$1 $2 $3\", [\"0[13-57-9][0159]\"]], [, \"(\\\\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\"]]], [[, \"(\\\\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[245])\", \"0[13-57-9][0159]|8(?:03|4[17]|9(?:2|[45][0-4]))\"]], [, \"(\\\\d{4})(\\\\d{2,6})\", \"$1 $2\", [\"0(?:[13-579][2-46-8]|8[236-8])\"]],\n[, \"(\\\\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[4679]|[38]\"]], [, \"(\\\\d{3})(\\\\d{3,4})(\\\\d{4})\", \"$1 $2 $3\", [\"0[13-57-9][0159]\"]], [, \"(\\\\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\"]]], [, , , , , , , , , [-1]], 1, , [, , \"848\\\\d{6}\", , , , , , , [9]], [, , , , , , , , , [-1]], , , [, , \"3[2-8]\\\\d{9,10}\",\n, , , \"33101234501\", , , [11, 12]]], JE:[, [, , \"1534\\\\d{6}|(?:[3578]\\\\d|90)\\\\d{8}\", , , , , , , [10], [6]], [, , \"1534[0-24-8]\\\\d{5}\", , , , \"1534456789\", , , , [6]], [, , \"7(?:(?:(?:50|82)9|937)\\\\d|7(?:00[378]|97[7-9]))\\\\d{5}\", , , , \"7797712345\"], [, , \"80(?:07(?:35|81)|8901)\\\\d{4}\", , , , \"8007354567\"], [, , \"(?:8(?:4(?:4(?:4(?:05|42|69)|703)|5(?:041|800))|7(?:0002|1206))|90(?:066[59]|1810|71(?:07|55)))\\\\d{4}\", , , , \"9018105678\"], [, , , , , , , , , [-1]], [, , \"701511\\\\d{4}\", , , , \"7015115678\"],\n[, , \"56\\\\d{8}\", , , , \"5612345678\"], \"JE\", 44, \"00\", \"0\", , , \"0|([0-24-8]\\\\d{5})$\", \"1534$1\", , , , , [, , \"76(?:0[0-2]|2[356]|4[0134]|5[49]|6[0-369]|77|81|9[39])\\\\d{6}\", , , , \"7640123456\"], , , [, , , , , , , , , [-1]], [, , \"(?: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}\", , , , \"5512345678\"], , , [, , , , , , , , , [-1]]], JM:[, [, , \"(?:[58]\\\\d\\\\d|658|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"(?:658(?:2(?:[0-8]\\\\d|9[0-46-9])|[3-9]\\\\d\\\\d)|876(?:5(?:02|1[0-468]|2[35]|63)|6(?:0[1-3579]|1[0237-9]|[23]\\\\d|40|5[06]|6[2-589]|7[05]|8[04]|9[4-9])|7(?:0[2-689]|[1-6]\\\\d|8[056]|9[45])|9(?:0[1-8]|1[02378]|[2-8]\\\\d|9[2-468])))\\\\d{4}\",\n, , , \"8765230123\", , , , [7]], [, , \"(?:658295|876(?:(?:2[14-9]|[348]\\\\d)\\\\d|5(?:0[13-9]|17|[2-57-9]\\\\d|6[0-24-9])|7(?:0[07]|7\\\\d|8[1-47-9]|9[0-36-9])|9(?:[01]9|9[0579])))\\\\d{4}\", , , , \"8762101234\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"JM\", 1, \"011\", \"1\", , , \"1\", , , , , , [, , , , , , , ,\n, [-1]], , \"658|876\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], JO:[, [, , \"900\\\\d{5}|(?:(?:[268]|7\\\\d)\\\\d|32|53)\\\\d{6}\", , , , , , , [8, 9]], [, , \"(?:2(?:6(?:2[0-35-9]|3[0-578]|4[24-7]|5[0-24-8]|[6-8][023]|9[0-3])|7(?:0[1-79]|10|2[014-7]|3[0-689]|4[019]|5[0-3578]))|32(?:0[1-69]|1[1-35-7]|2[024-7]|3\\\\d|4[0-3]|[57][023]|6[03])|53(?:0[0-3]|[13][023]|2[0-59]|49|5[0-35-9]|6[15]|7[45]|8[1-6]|9[0-36-9])|6(?:2(?:[05]0|22)|3(?:00|33)|4(?:0[0-25]|1[2-7]|2[0569]|[38][07-9]|4[025689]|6[0-589]|7\\\\d|9[0-2])|5(?:[01][056]|2[034]|3[0-57-9]|4[178]|5[0-69]|6[0-35-9]|7[1-379]|8[0-68]|9[0239]))|87(?:[029]0|7[08]))\\\\d{4}\",\n, , , \"62001234\", , , [8]], [, , \"7(?:55[0-49]|(?:7[025-9]|[89][0-25-9])\\\\d)\\\\d{5}\", , , , \"790123456\", , , [9]], [, , \"80\\\\d{6}\", , , , \"80012345\", , , [8]], [, , \"900\\\\d{5}\", , , , \"90012345\", , , [8]], [, , \"85\\\\d{6}\", , , , \"85012345\", , , [8]], [, , \"70\\\\d{7}\", , , , \"700123456\", , , [9]], [, , , , , , , , , [-1]], \"JO\", 962, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\",\n[\"70\"], \"0$1\"], [, \"(\\\\d)(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"7\"], \"0$1\"]], , [, , \"74(?:66|77)\\\\d{5}\", , , , \"746612345\", , , [9]], , , [, , , , , , , , , [-1]], [, , \"8(?:10|8\\\\d)\\\\d{5}\", , , , \"88101234\", , , [8]], , , [, , , , , , , , , [-1]]], JP:[, [, , \"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]], [, , \"(?:1(?:1[235-8]|2[3-6]|3[3-9]|4[2-6]|[58][2-8]|6[2-7]|7[2-9]|9[1-9])|(?:2[2-9]|[36][1-9])\\\\d|4(?:[2-578]\\\\d|6[02-8]|9[2-59])|5(?:[2-589]\\\\d|6[1-9]|7[2-8])|7(?:[25-9]\\\\d|3[4-9]|4[02-9])|8(?:[2679]\\\\d|3[2-9]|4[5-9]|5[1-9]|8[03-9])|9(?:[2-58]\\\\d|[679][1-9]))\\\\d{6}\",\n, , , \"312345678\", , , [9]], [, , \"[7-9]0[1-9]\\\\d{7}\", , , , \"9012345678\", , , [10]], [, , \"00(?:(?:37|66)\\\\d{6,13}|(?:777(?:[01]|(?:5|8\\\\d)\\\\d)|882[1245]\\\\d\\\\d)\\\\d\\\\d)|(?:120|800\\\\d)\\\\d{6}\", , , , \"120123456\"], [, , \"990\\\\d{6}\", , , , \"990123456\", , , [9]], [, , , , , , , , , [-1]], [, , \"60\\\\d{7}\", , , , \"601234567\", , , [9]], [, , \"50[1-9]\\\\d{7}\", , , , \"5012345678\", , , [10]], \"JP\", 81, \"010\", \"0\", , , \"0\", , , , [[, \"(\\\\d{4})(\\\\d{4})\", \"$1-$2\", [\"007\", \"0077\", \"00777\", \"00777[01]\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\n\"$1-$2-$3\", [\"(?:12|57|99)0\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d)(\\\\d{4})\", \"$1-$2-$3\", [\"1(?:26|3[79]|4[56]|5[4-68]|6[3-5])|499|5(?:76|97)|746|8(?:3[89]|47|51|63)|9(?:49|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[78]|96)|477|51[24]|636)|9(?:496|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[78]|96[2457-9])|477|51[24]|636[2-57-9])|9(?:496|802|9(?:1[23]|69))|1(?:45|58)[67]\"],\n\"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"60\"], \"0$1\"], [, \"(\\\\d)(\\\\d{4})(\\\\d{4})\", \"$1-$2-$3\", [\"[36]|4(?:2[09]|7[01])\", \"[36]|4(?:2(?:0|9[02-69])|7(?:0[019]|1))\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"1(?:1|5[45]|77|88|9[69])|2(?:2[1-37]|3[0-269]|4[59]|5|6[24]|7[1-358]|8[1369]|9[0-38])|4(?:[28][1-9]|3[0-57]|[45]|6[248]|7[2-579]|9[29])|5(?:2|3[045]|4[0-369]|5[29]|8[02389]|9[0-389])|7(?:2[02-46-9]|34|[58]|6[0249]|7[57]|9[2-6])|8(?:2[124589]|3[279]|49|6[0-24-689]|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])\",\n\"1(?:1|5(?:4[018]|5[017])|77|88|9[69])|2(?:2(?:[127]|3[014-9])|3[0-269]|4[59]|5(?:[0468][01]|[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]|2[01]|8[014-6])|3[0-57]|[45]|6[248]|7[2-47]|8[1-9])|5(?:2|3[045]|4[0-369]|8[02389]|9[0-3])|7(?:2[02-46-9]|34|[58]|6[0249]|7[57]|9(?:[23]|4[0-59]|5[01569]|6[0167]))|8(?:2(?:[1258]|4[0-39]|9[0-2469])|49|6(?:[0-24]|5[0-3589]|9[01459])|7[0-468]|8[68])|9(?:[23][1-9]|4[15]|5[138]|6[1-3]|7[156]|8[189]|9(?:[1289]|3[34]|4[0178]))|(?:49|55|83)[29]|(?:264|837)[016-9]|2(?:57|93)[015-9]|(?:47[59]|59[89]|8(?:6[68]|9))[019]\",\n\"1(?:1|5(?:4[018]|5[017])|77|88|9[69])|2(?:2[127]|3[0-269]|4[59]|5(?:[0468][01]|[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]|2[01]|8[014-6])|3[0-57]|[45]|6[248]|7[2-47]|9[29])|5(?:2|3[045]|4[0-369]|5[29]|8[02389]|9[0-3])|7(?:2[02-46-9]|34|[58]|6[0249]|7[57]|9(?:[23]|4[0-59]|5[01569]|6[0167]))|8(?:2(?:[1258]|4[0-39]|9[0169])|3(?:[29]|7(?:[017-9]|6[6-8]))|49|6(?:[0-24]|5(?:[0-389]|5[23])|6(?:[01]|9[178])|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]|(?:48|8292|9[23])[1-9]|(?:47[59]|59[89]|8(?:68|9))[019]\",\n\"1(?:1|5(?:4[018]|5[017])|77|88|9[69])|2(?:2[127]|3[0-269]|4[59]|5(?:[0468][01]|[1-3]|5[0-69]|7[015-9]|9(?:17|99))|6(?:2|4[016-9])|7(?:[1-35]|8[0189])|8(?:[16]|3[0134]|9[0-5])|9(?:[028]|17|3[015-9]))|4(?:2(?:[13-79]|2[01]|8[014-6])|3[0-57]|[45]|6[248]|7[2-47]|9[29])|5(?:2|3[045]|4[0-369]|5[29]|8[02389]|9[0-3])|7(?:2[02-46-9]|34|[58]|6[0249]|7[57]|9(?:[23]|4[0-59]|5[01569]|6[0167]))|8(?:2(?:[1258]|4[0-39]|9(?:[019]|4[1-3]|6(?:[0-47-9]|5[01346-9])))|3(?:[29]|7(?:[017-9]|6[6-8]))|49|6(?:[0-24]|5(?:[0-389]|5[23])|6(?:[01]|9[178])|9[0145])|7[0-468]|8[68])|9(?:4[15]|5[138]|6[1-3]|7[156]|8[189]|9(?:[1289]|3(?:31|4[357])|4[0178]))|(?:223|8699)[014-9]|(?:48|829(?:2|66)|9[23])[1-9]|(?:47[59]|59[89]|8(?:68|9))[019]\"],\n\"0$1\"], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{4})\", \"$1-$2-$3\", [\"[14]|[29][2-9]|5[3-9]|7[2-4679]|8(?:[246-9]|3[3-8]|5[2-9])\", \"[14]|[29][2-9]|5[3-9]|7[2-4679]|8(?:[246-9]|3(?:[3-6][2-9]|7|8[2-5])|5[2-9])\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d{2})(\\\\d{3,4})\", \"$1-$2-$3\", [\"007\"]], [, \"(\\\\d{4})(\\\\d{2})(\\\\d{4})\", \"$1-$2-$3\", [\"008\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"800\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1-$2-$3\", [\"[2579]|80\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{3,4})\", \"$1-$2-$3\", [\"0\"]], [, \"(\\\\d{4})(\\\\d{4})(\\\\d{4,5})\",\n\"$1-$2-$3\", [\"0\"]], [, \"(\\\\d{4})(\\\\d{5})(\\\\d{5,6})\", \"$1-$2-$3\", [\"0\"]], [, \"(\\\\d{4})(\\\\d{6})(\\\\d{6,7})\", \"$1-$2-$3\", [\"0\"]]], [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1-$2-$3\", [\"(?:12|57|99)0\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d)(\\\\d{4})\", \"$1-$2-$3\", [\"1(?:26|3[79]|4[56]|5[4-68]|6[3-5])|499|5(?:76|97)|746|8(?:3[89]|47|51|63)|9(?:49|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[78]|96)|477|51[24]|636)|9(?:496|802|9(?:1[23]|69))|1(?:45|58)[67]\",\n\"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[78]|96[2457-9])|477|51[24]|636[2-57-9])|9(?:496|802|9(?:1[23]|69))|1(?:45|58)[67]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"60\"], \"0$1\"], [, \"(\\\\d)(\\\\d{4})(\\\\d{4})\", \"$1-$2-$3\", [\"[36]|4(?:2[09]|7[01])\", \"[36]|4(?:2(?:0|9[02-69])|7(?:0[019]|1))\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"1(?:1|5[45]|77|88|9[69])|2(?:2[1-37]|3[0-269]|4[59]|5|6[24]|7[1-358]|8[1369]|9[0-38])|4(?:[28][1-9]|3[0-57]|[45]|6[248]|7[2-579]|9[29])|5(?:2|3[045]|4[0-369]|5[29]|8[02389]|9[0-389])|7(?:2[02-46-9]|34|[58]|6[0249]|7[57]|9[2-6])|8(?:2[124589]|3[279]|49|6[0-24-689]|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])\",\n\"1(?:1|5(?:4[018]|5[017])|77|88|9[69])|2(?:2(?:[127]|3[014-9])|3[0-269]|4[59]|5(?:[0468][01]|[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]|2[01]|8[014-6])|3[0-57]|[45]|6[248]|7[2-47]|8[1-9])|5(?:2|3[045]|4[0-369]|8[02389]|9[0-3])|7(?:2[02-46-9]|34|[58]|6[0249]|7[57]|9(?:[23]|4[0-59]|5[01569]|6[0167]))|8(?:2(?:[1258]|4[0-39]|9[0-2469])|49|6(?:[0-24]|5[0-3589]|9[01459])|7[0-468]|8[68])|9(?:[23][1-9]|4[15]|5[138]|6[1-3]|7[156]|8[189]|9(?:[1289]|3[34]|4[0178]))|(?:49|55|83)[29]|(?:264|837)[016-9]|2(?:57|93)[015-9]|(?:47[59]|59[89]|8(?:6[68]|9))[019]\",\n\"1(?:1|5(?:4[018]|5[017])|77|88|9[69])|2(?:2[127]|3[0-269]|4[59]|5(?:[0468][01]|[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]|2[01]|8[014-6])|3[0-57]|[45]|6[248]|7[2-47]|9[29])|5(?:2|3[045]|4[0-369]|5[29]|8[02389]|9[0-3])|7(?:2[02-46-9]|34|[58]|6[0249]|7[57]|9(?:[23]|4[0-59]|5[01569]|6[0167]))|8(?:2(?:[1258]|4[0-39]|9[0169])|3(?:[29]|7(?:[017-9]|6[6-8]))|49|6(?:[0-24]|5(?:[0-389]|5[23])|6(?:[01]|9[178])|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]|(?:48|8292|9[23])[1-9]|(?:47[59]|59[89]|8(?:68|9))[019]\",\n\"1(?:1|5(?:4[018]|5[017])|77|88|9[69])|2(?:2[127]|3[0-269]|4[59]|5(?:[0468][01]|[1-3]|5[0-69]|7[015-9]|9(?:17|99))|6(?:2|4[016-9])|7(?:[1-35]|8[0189])|8(?:[16]|3[0134]|9[0-5])|9(?:[028]|17|3[015-9]))|4(?:2(?:[13-79]|2[01]|8[014-6])|3[0-57]|[45]|6[248]|7[2-47]|9[29])|5(?:2|3[045]|4[0-369]|5[29]|8[02389]|9[0-3])|7(?:2[02-46-9]|34|[58]|6[0249]|7[57]|9(?:[23]|4[0-59]|5[01569]|6[0167]))|8(?:2(?:[1258]|4[0-39]|9(?:[019]|4[1-3]|6(?:[0-47-9]|5[01346-9])))|3(?:[29]|7(?:[017-9]|6[6-8]))|49|6(?:[0-24]|5(?:[0-389]|5[23])|6(?:[01]|9[178])|9[0145])|7[0-468]|8[68])|9(?:4[15]|5[138]|6[1-3]|7[156]|8[189]|9(?:[1289]|3(?:31|4[357])|4[0178]))|(?:223|8699)[014-9]|(?:48|829(?:2|66)|9[23])[1-9]|(?:47[59]|59[89]|8(?:68|9))[019]\"],\n\"0$1\"], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{4})\", \"$1-$2-$3\", [\"[14]|[29][2-9]|5[3-9]|7[2-4679]|8(?:[246-9]|3[3-8]|5[2-9])\", \"[14]|[29][2-9]|5[3-9]|7[2-4679]|8(?:[246-9]|3(?:[3-6][2-9]|7|8[2-5])|5[2-9])\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"800\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1-$2-$3\", [\"[2579]|80\"], \"0$1\"]], [, , \"20\\\\d{8}\", , , , \"2012345678\", , , [10]], , , [, , \"00(?:777(?:[01]|(?:5|8\\\\d)\\\\d)|882[1245]\\\\d\\\\d)\\\\d\\\\d|00(?:37|66)\\\\d{6,13}\"], [, , \"570\\\\d{6}\", , , , \"570123456\",\n, , [9]], , , [, , , , , , , , , [-1]]], KE:[, [, , \"(?:[17]\\\\d\\\\d|900)\\\\d{6}|(?:2|80)0\\\\d{6,7}|[4-6]\\\\d{6,8}\", , , , , , , [7, 8, 9, 10]], [, , \"(?:4[245]|5[2-79]|6[01457-9])\\\\d{5,7}|(?:4[136]|5[08]|62)\\\\d{7}|(?:[24]0|51|66)\\\\d{6,7}\", , , , \"202012345\", , , [7, 8, 9]], [, , \"(?:1(?:0[0-2]|1[01])|7\\\\d\\\\d)\\\\d{6}\", , , , \"712123456\", , , [9]], [, , \"800[24-8]\\\\d{5,6}\", , , , \"800223456\", , , [9, 10]], [, , \"900[02-9]\\\\d{5}\", , , , \"900223456\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , ,\n[-1]], [, , , , , , , , , [-1]], \"KE\", 254, \"000\", \"0\", , , \"0\", , , , [[, \"(\\\\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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], KG:[, [, , \"8\\\\d{9}|(?:[235-8]\\\\d|99)\\\\d{7}\", , , , , , , [9, 10], [5, 6]], [, , \"(?:3(?:1(?:[256]\\\\d|3[1-9]|47)|2(?:22|3[0-479]|6[0-7])|4(?:22|5[6-9]|6\\\\d)|5(?:22|3[4-7]|59|6\\\\d)|6(?:22|5[35-7]|6\\\\d)|7(?:22|3[468]|4[1-9]|59|[67]\\\\d)|9(?:22|4[1-8]|6\\\\d))|6(?:09|12|2[2-4])\\\\d)\\\\d{5}\",\n, , , \"312123456\", , , [9], [5, 6]], [, , \"8801\\\\d{5}|(?:2(?:0[0-35]|2\\\\d)|5(?:0[0-57-9]|[124-7]\\\\d)|7(?:[07]\\\\d|55)|99[05-9])\\\\d{6}\", , , , \"700123456\", , , [9]], [, , \"800\\\\d{6,7}\", , , , \"800123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"KG\", 996, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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})\",\n\"$1 $2 $3 $4\", [\"8\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], KH:[, [, , \"1\\\\d{9}|[1-9]\\\\d{7,8}\", , , , , , , [8, 9, 10], [6, 7]], [, , \"23(?:4(?:[2-4]|[56]\\\\d)|[568]\\\\d\\\\d)\\\\d{4}|23[236-9]\\\\d{5}|(?:2[4-6]|3[2-6]|4[2-4]|[5-7][2-5])(?:(?:[237-9]|4[56]|5\\\\d)\\\\d{5}|6\\\\d{5,6})\", , , , \"23756789\", , , [8, 9], [6, 7]], [, , \"(?:(?:1[28]|3[18]|9[67])\\\\d|6[016-9]|7(?:[07-9]|[16]\\\\d)|8(?:[013-79]|8\\\\d))\\\\d{6}|(?:1\\\\d|9[0-57-9])\\\\d{6}|(?:2[3-6]|3[2-6]|4[2-4]|[5-7][2-5])48\\\\d{5}\",\n, , , \"91234567\", , , [8, 9]], [, , \"1800(?:1\\\\d|2[019])\\\\d{4}\", , , , \"1800123456\", , , [10]], [, , \"1900(?:1\\\\d|2[09])\\\\d{4}\", , , , \"1900123456\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"KH\", 855, \"00[14-9]\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{3,4})\", \"$1 $2 $3\", [\"[1-9]\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"1\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , ,\n, , [-1]]], KI:[, [, , \"(?:[37]\\\\d|6[0-79])\\\\d{6}|(?:[2-48]\\\\d|50)\\\\d{3}\", , , , , , , [5, 8]], [, , \"(?:[24]\\\\d|3[1-9]|50|65(?:02[12]|12[56]|22[89]|[3-5]00)|7(?:27\\\\d\\\\d|3100|5(?:02[12]|12[56]|22[89]|[34](?:00|81)|500))|8[0-5])\\\\d{3}\", , , , \"31234\"], [, , \"73140\\\\d{3}|(?:630[01]|730[0-5])\\\\d{4}|[67]200[01]\\\\d{3}\", , , , \"72001234\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"30(?:0[01]\\\\d\\\\d|12(?:11|20))\\\\d\\\\d\", , , , \"30010000\",\n, , [8]], \"KI\", 686, \"00\", \"0\", , , \"0\", , , , , , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], KM:[, [, , \"[3478]\\\\d{6}\", , , , , , , [7]], [, , \"7[4-7]\\\\d{5}\", , , , \"7712345\"], [, , \"[34]\\\\d{6}\", , , , \"3212345\"], [, , , , , , , , , [-1]], [, , \"8\\\\d{6}\", , , , \"8001234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"KM\", 269, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3\", [\"[3478]\"]]],\n, [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], KN:[, [, , \"(?:[58]\\\\d\\\\d|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"869(?:2(?:29|36)|302|4(?:6[015-9]|70))\\\\d{4}\", , , , \"8692361234\", , , , [7]], [, , \"869(?:5(?:5[6-8]|6[5-7])|66\\\\d|76[02-7])\\\\d{4}\", , , , \"8697652917\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\",\n, , , \"5002345678\"], [, , , , , , , , , [-1]], \"KN\", 1, \"011\", \"1\", , , \"1|([2-7]\\\\d{6})$\", \"869$1\", , , , , [, , , , , , , , , [-1]], , \"869\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], KP:[, [, , \"85\\\\d{6}|(?:19\\\\d|2)\\\\d{7}\", , , , , , , [8, 10], [6, 7]], [, , \"(?:2\\\\d|85)\\\\d{6}\", , , , \"21234567\", , , [8], [6, 7]], [, , \"19[1-3]\\\\d{7}\", , , , \"1921234567\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , ,\n, , , , [-1]], [, , , , , , , , , [-1]], \"KP\", 850, \"00|99\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"8\"], \"0$1\"], [, \"(\\\\d)(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"2\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"1\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , \"238[02-9]\\\\d{4}|2(?:[0-24-9]\\\\d|3[0-79])\\\\d{5}\", , , , , , , [8]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], KR:[, [, , \"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}\",\n, , , , , , [5, 6, 8, 9, 10, 11, 12, 13, 14], [3, 4, 7]], [, , \"(?:2|3[1-3]|[46][1-4]|5[1-5])[1-9]\\\\d{6,7}|(?:3[1-3]|[46][1-4]|5[1-5])1\\\\d{2,3}\", , , , \"22123456\", , , [5, 6, 8, 9, 10], [3, 4, 7]], [, , \"10[01]\\\\d{6}|1(?:0[2-9]|[126-9]\\\\d)\\\\d{6,7}\", , , , \"1020000000\", , , [9, 10]], [, , \"00(?:308\\\\d{6,7}|798\\\\d{7,9})|(?:00368|80)\\\\d{7}\", , , , \"801234567\", , , [9, 11, 12, 13, 14]], [, , \"60[2-9]\\\\d{6}\", , , , \"602345678\", , , [9]], [, , , , , , , , , [-1]], [, , \"50\\\\d{8,9}\", , , , \"5012345678\",\n, , [10, 11]], [, , \"70\\\\d{8}\", , , , \"7012345678\", , , [10]], \"KR\", 82, \"00(?:[125689]|3(?:[46]5|91)|7(?:00|27|3|55|6[126]))\", \"0\", , , \"0(8(?:[1-46-8]|5\\\\d\\\\d))?\", , , , [[, \"(\\\\d{5})\", \"$1\", [\"1[016-9]1\", \"1[016-9]11\", \"1[016-9]114\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3,4})\", \"$1-$2\", [\"(?:3[1-3]|[46][1-4]|5[1-5])1\"], \"0$1\", \"0$CC-$1\"], [, \"(\\\\d{4})(\\\\d{4})\", \"$1-$2\", [\"1\"]], [, \"(\\\\d)(\\\\d{3,4})(\\\\d{4})\", \"$1-$2-$3\", [\"2\"], \"0$1\", \"0$CC-$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"60|8\"], \"0$1\",\n\"0$CC-$1\"], [, \"(\\\\d{2})(\\\\d{3,4})(\\\\d{4})\", \"$1-$2-$3\", [\"[1346]|5[1-5]\"], \"0$1\", \"0$CC-$1\"], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1-$2-$3\", [\"[57]\"], \"0$1\", \"0$CC-$1\"], [, \"(\\\\d{5})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"003\", \"0030\"]], [, \"(\\\\d{2})(\\\\d{5})(\\\\d{4})\", \"$1-$2-$3\", [\"5\"], \"0$1\", \"0$CC-$1\"], [, \"(\\\\d{5})(\\\\d{3,4})(\\\\d{4})\", \"$1 $2 $3\", [\"0\"]], [, \"(\\\\d{5})(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3 $4\", [\"0\"]]], [[, \"(\\\\d{2})(\\\\d{3,4})\", \"$1-$2\", [\"(?:3[1-3]|[46][1-4]|5[1-5])1\"], \"0$1\", \"0$CC-$1\"],\n[, \"(\\\\d{4})(\\\\d{4})\", \"$1-$2\", [\"1\"]], [, \"(\\\\d)(\\\\d{3,4})(\\\\d{4})\", \"$1-$2-$3\", [\"2\"], \"0$1\", \"0$CC-$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"60|8\"], \"0$1\", \"0$CC-$1\"], [, \"(\\\\d{2})(\\\\d{3,4})(\\\\d{4})\", \"$1-$2-$3\", [\"[1346]|5[1-5]\"], \"0$1\", \"0$CC-$1\"], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1-$2-$3\", [\"[57]\"], \"0$1\", \"0$CC-$1\"], [, \"(\\\\d{2})(\\\\d{5})(\\\\d{4})\", \"$1-$2-$3\", [\"5\"], \"0$1\", \"0$CC-$1\"]], [, , \"15\\\\d{7,8}\", , , , \"1523456789\", , , [9, 10]], , , [, , \"00(?:3(?:08\\\\d{6,7}|68\\\\d{7})|798\\\\d{7,9})\",\n, , , , , , [11, 12, 13, 14]], [, , \"1(?:5(?:22|44|66|77|88|99)|6(?:[07]0|44|6[16]|88)|8(?:00|33|55|77|99))\\\\d{4}\", , , , \"15441234\", , , [8]], , , [, , , , , , , , , [-1]]], KW:[, [, , \"(?:18|[2569]\\\\d\\\\d)\\\\d{5}\", , , , , , , [7, 8]], [, , \"2(?:[23]\\\\d\\\\d|4(?:[1-35-9]\\\\d|44)|5(?:0[034]|[2-46]\\\\d|5[1-3]|7[1-7]))\\\\d{4}\", , , , \"22345678\", , , [8]], [, , \"(?:52(?:22|5[25])|6(?:222|70[013-9]|93[039])|9(?:11[01]|333|702))\\\\d{4}|(?:5(?:[05]\\\\d|1[0-7]|6[56])|6(?:0[034679]|5[015-9]|6\\\\d|7[67]|9[069])|9(?:0[09]|22|4[01479]|55|6[0679]|7[1-9]|8[057-9]|9\\\\d))\\\\d{5}\",\n, , , \"50012345\", , , [8]], [, , \"18\\\\d{5}\", , , , \"1801234\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"KW\", 965, \"00\", , , , , , , , [[, \"(\\\\d{4})(\\\\d{3,4})\", \"$1 $2\", [\"[169]|2(?:[235]|4[1-35-9])|52\"]], [, \"(\\\\d{3})(\\\\d{5})\", \"$1 $2\", [\"[25]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], KY:[, [, , \"(?:345|[58]\\\\d\\\\d|900)\\\\d{7}\", , , , , , , [10], [7]],\n[, , \"345(?:2(?:22|44)|444|6(?:23|38|40)|7(?:4[35-79]|6[6-9]|77)|8(?:00|1[45]|25|[48]8)|9(?:14|4[035-9]))\\\\d{4}\", , , , \"3452221234\", , , , [7]], [, , \"345(?:32[1-9]|5(?:1[67]|2[5-79]|4[6-9]|50|76)|649|9(?:1[67]|2[2-9]|3[689]))\\\\d{4}\", , , , \"3453231234\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002345678\"], [, , \"(?:345976|900[2-9]\\\\d\\\\d)\\\\d{4}\", , , , \"9002345678\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , ,\n, , , , [-1]], \"KY\", 1, \"011\", \"1\", , , \"1|([2-9]\\\\d{6})$\", \"345$1\", , , , , [, , \"345849\\\\d{4}\", , , , \"3458491234\"], , \"345\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], KZ:[, [, , \"33622\\\\d{5}|(?:7\\\\d|80)\\\\d{8}\", , , , , , , [10], [5, 6]], [, , \"(?:33622|7(?:1(?:0(?:[23]\\\\d|4[0-3]|59|63)|1(?:[23]\\\\d|4[0-79]|59)|2(?:[23]\\\\d|59)|3(?:2\\\\d|3[0-79]|4[0-35-9]|59)|4(?:[24]\\\\d|3[013-9]|5[1-9])|5(?:2\\\\d|3[1-9]|4[0-7]|59)|6(?:[2-4]\\\\d|5[19]|61)|72\\\\d|8(?:[27]\\\\d|3[1-46-9]|4[0-5]))|2(?:1(?:[23]\\\\d|4[46-9]|5[3469])|2(?:2\\\\d|3[0679]|46|5[12679])|3(?:[2-4]\\\\d|5[139])|4(?:2\\\\d|3[1-35-9]|59)|5(?:[23]\\\\d|4[0-246-8]|59|61)|6(?:2\\\\d|3[1-9]|4[0-4]|59)|7(?:[2379]\\\\d|40|5[279])|8(?:[23]\\\\d|4[0-3]|59)|9(?:2\\\\d|3[124578]|59))))\\\\d{5}\",\n, , , \"7123456789\", , , , [5, 6]], [, , \"7(?:0[0-25-8]|47|6[02-4]|7[15-8]|85)\\\\d{7}\", , , , \"7710009998\"], [, , \"800\\\\d{7}\", , , , \"8001234567\"], [, , \"809\\\\d{7}\", , , , \"8091234567\"], [, , , , , , , , , [-1]], [, , \"808\\\\d{7}\", , , , \"8081234567\"], [, , \"751\\\\d{7}\", , , , \"7511234567\"], \"KZ\", 7, \"810\", \"8\", , , \"8\", , \"8~10\", , , , [, , , , , , , , , [-1]], , \"33|7\", [, , \"751\\\\d{7}\"], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], LA:[, [, , \"(?:2\\\\d|3)\\\\d{8}|(?:[235-8]\\\\d|41)\\\\d{6}\",\n, , , , , , [8, 9, 10], [6]], [, , \"(?:2[13]|[35-7][14]|41|8[1468])\\\\d{6}\", , , , \"21212862\", , , [8], [6]], [, , \"20(?:[29]\\\\d|5[24-689]|7[6-8])\\\\d{6}\", , , , \"2023123456\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"LA\", 856, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"2[13]|3[14]|[4-8]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{3})\", \"$1 $2 $3 $4\", [\"3\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{3})(\\\\d{3})\",\n\"$1 $2 $3 $4\", [\"2\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"30\\\\d{7}\", , , , \"301234567\", , , [9]], , , [, , , , , , , , , [-1]]], LB:[, [, , \"[7-9]\\\\d{7}|[13-9]\\\\d{6}\", , , , , , , [7, 8]], [, , \"(?:(?:[14-69]\\\\d|8[02-9])\\\\d|7(?:[2-57]\\\\d|62|8[0-7]|9[04-9]))\\\\d{4}\", , , , \"1123456\", , , [7]], [, , \"(?:(?:3|81)\\\\d|7(?:[01]\\\\d|6[013-9]|8[89]|9[1-3]))\\\\d{5}\", , , , \"71123456\"], [, , , , , , , , , [-1]], [, , \"9[01]\\\\d{6}\", , , , \"90123456\", , , [8]], [, , \"80\\\\d{6}\",\n, , , \"80123456\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"LB\", 961, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\", [\"[7-9]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], LC:[, [, , \"(?:[58]\\\\d\\\\d|758|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"758(?:4(?:30|5\\\\d|6[2-9]|8[0-2])|57[0-2]|638)\\\\d{4}\",\n, , , \"7584305678\", , , , [7]], [, , \"758(?:28[4-7]|384|4(?:6[01]|8[4-9])|5(?:1[89]|20|84)|7(?:1[2-9]|2\\\\d|3[01]))\\\\d{4}\", , , , \"7582845678\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"LC\", 1, \"011\", \"1\", , , \"1|([2-7]\\\\d{6})$\", \"758$1\", , , , , [, , , , , , , , , [-1]], , \"758\", [, , , , , , , , ,\n[-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], LI:[, [, , \"90\\\\d{5}|(?:[2378]|6\\\\d\\\\d)\\\\d{6}\", , , , , , , [7, 9]], [, , \"(?:2(?:01|1[27]|22|3\\\\d|6[02-578]|96)|3(?:33|40|7[0135-7]|8[048]|9[0269]))\\\\d{4}\", , , , \"2345678\", , , [7]], [, , \"756\\\\d{4}|(?:6(?:499|5[0-3]\\\\d|6(?:0[0-7]|10|2[06-9]|39))|7[37-9])\\\\d{5}\", , , , \"660234567\"], [, , \"80(?:02[28]|9\\\\d\\\\d)\\\\d\\\\d\", , , , \"8002222\", , , [7]], [, , \"90(?:02[258]|1(?:23|3[14])|66[136])\\\\d\\\\d\", , , , \"9002222\", , , [7]], [, , , , , ,\n, , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"LI\", 423, \"00\", \"0\", , , \"0|(10(?:01|20|66))\", , , , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3\", [\"[237-9]\"], , \"$CC $1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"69\"], , \"$CC $1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"6\"], , \"$CC $1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"870(?:28|87)\\\\d\\\\d\", , , , \"8702812\", , , [7]], , , [, , \"697(?:56|[78]\\\\d)\\\\d{4}\", , , , \"697861234\", , , [9]]], LK:[,\n[, , \"(?:[1-7]\\\\d|[89]1)\\\\d{7}\", , , , , , , [9], [7]], [, , \"(?:[189]1|2[13-7]|3[1-8]|4[157]|5[12457]|6[35-7])[2-57]\\\\d{6}\", , , , \"112345678\", , , , [7]], [, , \"7[0-25-8]\\\\d{7}\", , , , \"712345678\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"LK\", 94, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\"]], , [, , , ,\n, , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"1973\\\\d{5}\", , , , \"197312345\"], , , [, , , , , , , , , [-1]]], LR:[, [, , \"(?:2|33|5\\\\d|77|88)\\\\d{7}|[45]\\\\d{6}\", , , , , , , [7, 8, 9]], [, , \"(?:2\\\\d{3}|33333)\\\\d{4}\", , , , \"21234567\", , , [8, 9]], [, , \"(?:(?:330|555|(?:77|88)\\\\d)\\\\d|4[67])\\\\d{5}|5\\\\d{6}\", , , , \"770123456\", , , [7, 9]], [, , , , , , , , , [-1]], [, , \"332(?:02|[34]\\\\d)\\\\d{4}\", , , , \"332021234\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , ,\n, , [-1]], \"LR\", 231, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d)(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[45]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"2\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[3578]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], LS:[, [, , \"(?:[256]\\\\d\\\\d|800)\\\\d{5}\", , , , , , , [8]], [, , \"2\\\\d{7}\", , , , \"22123456\"], [, , \"[56]\\\\d{7}\", , , , \"50123456\"], [, , \"800[256]\\\\d{4}\", , ,\n, \"80021234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"LS\", 266, \"00\", , , , , , , , [[, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[2568]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], LT:[, [, , \"(?:[3469]\\\\d|52|[78]0)\\\\d{6}\", , , , , , , [8]], [, , \"(?:3[1478]|4[124-6]|52)\\\\d{6}\", , , , \"31234567\"], [, , \"6\\\\d{7}\", , , , \"61234567\"], [, , \"800\\\\d{5}\", , , , \"80012345\"],\n[, , \"9(?:0[0239]|10)\\\\d{5}\", , , , \"90012345\"], [, , \"808\\\\d{5}\", , , , \"80812345\"], [, , \"700\\\\d{5}\", , , , \"70012345\"], [, , , , , , , , , [-1]], \"LT\", 370, \"00\", \"8\", , , \"[08]\", , , , [[, \"(\\\\d)(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"52[0-79]\"], \"(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]], , [, , , , , , , , , [-1]], , , [, , , ,\n, , , , , [-1]], [, , \"70[67]\\\\d{5}\", , , , \"70712345\"], , , [, , , , , , , , , [-1]]], LU:[, [, , \"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]], [, , \"(?:35[013-9]|80[2-9]|90[89])\\\\d{1,8}|(?:2[2-9]|3[0-46-9]|[457]\\\\d|8[13-9]|9[2-579])\\\\d{2,9}\", , , , \"27123456\"], [, , \"6(?:[269][18]|5[158]|7[189]|81)\\\\d{6}\", , , , \"628123456\", , , [9]], [, , \"800\\\\d{5}\", , , , \"80012345\", , , [8]], [, , \"90[015]\\\\d{5}\", , , , \"90012345\", , , [8]],\n[, , \"801\\\\d{5}\", , , , \"80112345\", , , [8]], [, , , , , , , , , [-1]], [, , \"20(?:1\\\\d{5}|[2-689]\\\\d{1,7})\", , , , \"20201234\", , , [4, 5, 6, 7, 8, 9, 10]], \"LU\", 352, \"00\", , , , \"(15(?:0[06]|1[12]|[35]5|4[04]|6[26]|77|88|99)\\\\d)\", , , , [[, \"(\\\\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])\"], , \"$CC $1\"], [, \"(\\\\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])\"], , \"$CC $1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{3})\",\n\"$1 $2 $3\", [\"20[2-689]\"], , \"$CC $1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{1,2})\", \"$1 $2 $3 $4\", [\"2(?:[0367]|4[3-8])\"], , \"$CC $1\"], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{3})\", \"$1 $2 $3\", [\"80[01]|90[015]\"], , \"$CC $1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{3})\", \"$1 $2 $3 $4\", [\"20\"], , \"$CC $1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"6\"], , \"$CC $1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{1,2})\", \"$1 $2 $3 $4 $5\", [\"2(?:[0367]|4[3-8])\"], , \"$CC $1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{1,5})\", \"$1 $2 $3 $4\",\n[\"[3-57]|8[13-9]|9(?:0[89]|[2-579])|(?:2|80)[2-9]\"], , \"$CC $1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], LV:[, [, , \"(?:[268]\\\\d|90)\\\\d{6}\", , , , , , , [8]], [, , \"6\\\\d{7}\", , , , \"63123456\"], [, , \"2\\\\d{7}\", , , , \"21234567\"], [, , \"80\\\\d{6}\", , , , \"80123456\"], [, , \"90\\\\d{6}\", , , , \"90123456\"], [, , \"81\\\\d{6}\", , , , \"81123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"LV\", 371, \"00\", , , , , , , , [[,\n\"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[269]|8[01]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], LY:[, [, , \"(?:[2569]\\\\d|71)\\\\d{7}\", , , , , , , [9], [7]], [, , \"(?:2[13-5]|5[1347]|6[1-479]|71)\\\\d{7}\", , , , \"212345678\", , , , [7]], [, , \"9[1-6]\\\\d{7}\", , , , \"912345678\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"LY\", 218, \"00\", \"0\",\n, , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{7})\", \"$1-$2\", [\"[25-79]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MA:[, [, , \"[5-8]\\\\d{8}\", , , , , , , [9]], [, , \"5(?:29|38)[89]0\\\\d{4}|5(?:2(?:[015-7]\\\\d|2[2-9]|3[2-57]|4[2-46-8]|8[235-7]|90)|3(?:[0-4]\\\\d|[57][2-9]|6[2-8]|80|9[3-9])|(?:4[067]|5[03])\\\\d)\\\\d{5}\", , , , \"520123456\"], [, , \"692[12]\\\\d{5}|(?:6(?:[0-7]\\\\d|8[0-247-9]|9[013-9])|7(?:0[06-8]|6[1267]|7[0-27]))\\\\d{6}\", ,\n, , \"650123456\"], [, , \"80\\\\d{7}\", , , , \"801234567\"], [, , \"89\\\\d{7}\", , , , \"891234567\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"5924[0-2]\\\\d{4}\", , , , \"592401234\"], \"MA\", 212, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{5})(\\\\d{4})\", \"$1-$2\", [\"5(?:29|38)\", \"5(?:29|38)[89]\"], \"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\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{7})\", \"$1-$2\", [\"8\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{6})\",\n\"$1-$2\", [\"[5-7]\"], \"0$1\"]], , [, , , , , , , , , [-1]], 1, , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MC:[, [, , \"870\\\\d{5}|(?:[349]|6\\\\d)\\\\d{7}\", , , , , , , [8, 9]], [, , \"(?:870|9[2-47-9]\\\\d)\\\\d{5}\", , , , \"99123456\", , , [8]], [, , \"4(?:4\\\\d|5[1-9])\\\\d{5}|(?:3|6\\\\d)\\\\d{7}\", , , , \"612345678\"], [, , \"90\\\\d{6}\", , , , \"90123456\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"MC\", 377,\n\"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{2})\", \"$1 $2 $3\", [\"8\"]], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"4\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[39]\"]], [, \"(\\\\d)(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4 $5\", [\"6\"], \"0$1\"]], [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"4\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[39]\"]], [, \"(\\\\d)(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4 $5\", [\"6\"], \"0$1\"]], [, , , , , , , , , [-1]],\n, , [, , \"870\\\\d{5}\", , , , , , , [8]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MD:[, [, , \"(?:[235-7]\\\\d|[89]0)\\\\d{6}\", , , , , , , [8]], [, , \"(?:(?:2[1-9]|3[1-79])\\\\d|5(?:33|5[257]))\\\\d{5}\", , , , \"22212345\"], [, , \"(?:562|6\\\\d\\\\d|7(?:[189]\\\\d|6[07]|7[457-9]))\\\\d{5}\", , , , \"62112345\"], [, , \"800\\\\d{5}\", , , , \"80012345\"], [, , \"90[056]\\\\d{5}\", , , , \"90012345\"], [, , \"808\\\\d{5}\", , , , \"80812345\"], [, , , , , , , , , [-1]], [, , \"3[08]\\\\d{6}\", , , , \"30123456\"], \"MD\", 373, \"00\",\n\"0\", , , \"0\", , , , [[, \"(\\\\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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"803\\\\d{5}\", , , , \"80312345\"], , , [, , , , , , , , , [-1]]], ME:[, [, , \"(?:20|[3-79]\\\\d)\\\\d{6}|80\\\\d{6,7}\", , , , , , , [8, 9], [6]], [, , \"(?:20[2-8]|3(?:[0-2][2-7]|3[24-7])|4(?:0[2-467]|1[2467])|5(?:[01][2467]|2[2-467]))\\\\d{5}\", , , , \"30234567\",\n, , [8], [6]], [, , \"6(?:00|3[024]|6[0-25]|[7-9]\\\\d)\\\\d{5}\", , , , \"67622901\", , , [8]], [, , \"80(?:[0-2578]|9\\\\d)\\\\d{5}\", , , , \"80080002\"], [, , \"9(?:4[1568]|5[178])\\\\d{5}\", , , , \"94515151\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"78[1-49]\\\\d{5}\", , , , \"78108780\", , , [8]], \"ME\", 382, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{3,4})\", \"$1 $2 $3\", [\"[2-9]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"77[1-9]\\\\d{5}\", , , , \"77273012\",\n, , [8]], , , [, , , , , , , , , [-1]]], MF:[, [, , \"(?:590|69\\\\d)\\\\d{6}\", , , , , , , [9]], [, , \"590(?:0[079]|[14]3|[27][79]|30|5[0-268]|87)\\\\d{4}\", , , , \"590271234\"], [, , \"69(?:0\\\\d\\\\d|1(?:2[29]|3[0-5]))\\\\d{4}\", , , , \"690001234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"MF\", 590, \"00\", \"0\", , , \"0\", , , , , , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , ,\n, , , , , , [-1]]], MG:[, [, , \"[23]\\\\d{8}\", , , , , , , [9], [7]], [, , \"2072[29]\\\\d{4}|20(?:2\\\\d|4[47]|5[3467]|6[279]|7[35]|8[268]|9[245])\\\\d{5}\", , , , \"202123456\", , , , [7]], [, , \"3[2-49]\\\\d{7}\", , , , \"321234567\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"22\\\\d{7}\", , , , \"221234567\"], \"MG\", 261, \"00\", \"0\", , , \"0|([24-9]\\\\d{6})$\", \"20$1\", , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{3})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[23]\"], \"0$1\"]], , [,\n, , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MH:[, [, , \"329\\\\d{4}|(?:[256]\\\\d|45)\\\\d{5}\", , , , , , , [7]], [, , \"(?:247|528|625)\\\\d{4}\", , , , \"2471234\"], [, , \"(?:(?:23|54)5|329|45[56])\\\\d{4}\", , , , \"2351234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"635\\\\d{4}\", , , , \"6351234\"], \"MH\", 692, \"011\", \"1\", , , \"1\", , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1-$2\", [\"[2-6]\"]]],\n, [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MK:[, [, , \"[2-578]\\\\d{7}\", , , , , , , [8], [6, 7]], [, , \"(?:2(?:[23]\\\\d|5[0-24578]|6[01]|82)|3(?:1[3-68]|[23][2-68]|4[23568])|4(?:[23][2-68]|4[3-68]|5[2568]|6[25-8]|7[24-68]|8[4-68]))\\\\d{5}\", , , , \"22012345\", , , , [6, 7]], [, , \"7(?:(?:[0-25-8]\\\\d|3[2-4]|9[23])\\\\d|4(?:21|60))\\\\d{4}\", , , , \"72345678\"], [, , \"800\\\\d{5}\", , , , \"80012345\"], [, , \"5[02-9]\\\\d{6}\", , , , \"50012345\"],\n[, , \"8(?:0[1-9]|[1-9]\\\\d)\\\\d{5}\", , , , \"80123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"MK\", 389, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d)(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"2\"], \"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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], ML:[, [, , \"(?:[246-9]\\\\d|50)\\\\d{6}\", , , , , , , [8]],\n[, , \"2(?:07[0-8]|12[67])\\\\d{4}|(?:2(?:02|1[4-689])|4(?:0[0-4]|4[1-39]))\\\\d{5}\", , , , \"20212345\"], [, , \"2(?:079|17\\\\d)\\\\d{4}|(?:50|[679]\\\\d|8[239])\\\\d{6}\", , , , \"65012345\"], [, , \"80\\\\d{6}\", , , , \"80012345\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"ML\", 223, \"00\", , , , , , , , [[, \"(\\\\d{4})\", \"$1\", [\"67[057-9]|74[045]\", \"67(?:0[09]|[59]9|77|8[89])|74(?:0[02]|44|55)\"]], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[24-9]\"]]],\n[[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[24-9]\"]]], [, , , , , , , , , [-1]], , , [, , \"80\\\\d{6}\"], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MM:[, [, , \"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], [5]], [, , \"(?:1(?:(?:2\\\\d|3[56]|[89][0-6])\\\\d|4(?:2[2-469]|39|46|6[25]|7[0-2])|6)|2(?:2(?:00|8[34])|4(?:0\\\\d|2[246]|39|46|62|7[0-2])|51\\\\d\\\\d)|4(?:2(?:2\\\\d\\\\d|48[0-2])|[34]20\\\\d)|6(?:0(?:[23]|88\\\\d)|(?:124|320|[56]2\\\\d)\\\\d|247[23]|4(?:2[04]\\\\d|47[23])|7(?:(?:3\\\\d|8[01459])\\\\d|4(?:39|60|7[01])))|8(?:[1-3]2\\\\d|5(?:2\\\\d|4[1-9]|51))\\\\d)\\\\d{4}|5(?:2(?:2\\\\d{5,6}|47[023]\\\\d{4})|(?:347[23]|42(?:1|86)|(?:522|[68]20)\\\\d|7(?:20\\\\d|48[0-2])|9(?:20\\\\d|47[01]))\\\\d{4})|7(?:120\\\\d{4,5}|(?:425\\\\d|5(?:202|96\\\\d))\\\\d{4})|(?:(?:1[2-6]\\\\d|4(?:2[24-8]|356|[46][2-6]|5[35])|5(?:[27][2-8]|3[2-68]|4[25-8]|5[23]|6[2-4]|8[25-7]|9[2-7])|6(?:[19]20|42[03-6]|(?:52|7[45])\\\\d)|7(?:[04][25-8]|[15][235-7]|22|3[2-4]))\\\\d|8(?:[135]2\\\\d\\\\d|2(?:2\\\\d\\\\d|320)))\\\\d{3}|25\\\\d{5,6}|(?:2[2-9]|43[235-7]|6(?:1[2356]|[24][2-6]|3[256]|5[2-4]|6[2-8]|7[235-7]|8[245]|9[24])|8(?:1[235689]|2[2-8]|32|4[24-7]|5[245]|6[23]))\\\\d{4}|(?:4[35]|5[48]|63|7[0145]|8[13])470\\\\d{4}|(?:4[35]|5[48]|63|7[0145]|8[13])4\\\\d{4}\",\n, , , \"1234567\", , , [6, 7, 8, 9], [5]], [, , \"(?:17[01]|9(?:2(?:[0-4]|[56]\\\\d\\\\d)|(?:3(?:[0-36]|4\\\\d)|6[7-9]\\\\d|7(?:3|5[0-2]|[6-9]\\\\d)|8(?:8[7-9]|9\\\\d))\\\\d|4(?:(?:[0245]\\\\d|[1379])\\\\d|88)|5[0-6]|9(?:[089]|[5-7]\\\\d\\\\d))\\\\d)\\\\d{4}|9[69]1\\\\d{6}|9[68]\\\\d{6}\", , , , \"92123456\", , , [7, 8, 9, 10]], [, , \"80080(?:[01][1-9]|2\\\\d)\\\\d{3}\", , , , \"8008001234\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"1333\\\\d{4}|[12]468\\\\d{4}\", , , , \"13331234\", , , [8]],\n\"MM\", 95, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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})\",\n\"$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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MN:[, [, , \"[12]\\\\d{7,9}|[57-9]\\\\d{7}\", , , , , , , [8, 9, 10], [4, 5, 6]], [, , \"[12](?:3[2-8]|4[2-68]|5[1-4689])\\\\d{6,7}|(?:11(?:3\\\\d|4[568])|(?:(?:21|5[0568])\\\\d|70[0-5])\\\\d)\\\\d{4}|[12]2(?:[1-3]\\\\d{5,6}|7\\\\d{6})\", , , , \"50123456\", ,\n, , [4, 5, 6]], [, , \"(?:8(?:[05689]\\\\d|3[01])|9(?:[014-9]\\\\d|20|3[0-4]))\\\\d{5}\", , , , \"88123456\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"7(?:100|5(?:0[0579]|1[015]|[389]5|[57][57])|(?:6[0167]|7\\\\d|8[01])\\\\d)\\\\d{4}\", , , , \"75153456\", , , [8]], \"MN\", 976, \"001\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{4})\", \"$1 $2 $3\", [\"[12]1\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[57-9]\"]], [, \"(\\\\d{3})(\\\\d{5,6})\", \"$1 $2\",\n[\"[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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MO:[, [, , \"(?:28|[68]\\\\d)\\\\d{6}\", , , , , , , [8]], [, , \"(?:28[2-57-9]|8(?:11|[2-57-9]\\\\d))\\\\d{5}\", , , , \"28212345\"], [, , \"6(?:[2356]\\\\d\\\\d|8(?:[02][5-9]|[1478]\\\\d|[356][0-4]))\\\\d{4}\",\n, , , \"66123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"MO\", 853, \"00\", , , , , , , , [[, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[268]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MP:[, [, , \"[58]\\\\d{9}|(?:67|90)0\\\\d{7}\", , , , , , , [10], [7]], [, , \"670(?:2(?:3[3-7]|56|8[5-8])|32[1-38]|4(?:33|8[348])|5(?:32|55|88)|6(?:64|70|82)|78[3589]|8[3-9]8|989)\\\\d{4}\",\n, , , \"6702345678\", , , , [7]], [, , \"670(?:2(?:3[3-7]|56|8[5-8])|32[1-38]|4(?:33|8[348])|5(?:32|55|88)|6(?:64|70|82)|78[3589]|8[3-9]8|989)\\\\d{4}\", , , , \"6702345678\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"MP\", 1, \"011\", \"1\", , , \"1|([2-9]\\\\d{6})$\", \"670$1\", , 1, , , [, , , , , , , , , [-1]], ,\n\"670\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MQ:[, [, , \"(?:596|69\\\\d)\\\\d{6}\", , , , , , , [9]], [, , \"596(?:0[0-7]|10|2[7-9]|3[05-9]|4[0-46-8]|[5-7]\\\\d|8[09]|9[4-8])\\\\d{4}\", , , , \"596301234\"], [, , \"69(?:6(?:[0-47-9]\\\\d|5[0-6]|6[0-4])|727)\\\\d{4}\", , , , \"696201234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"MQ\", 596, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\n\"$1 $2 $3 $4\", [\"[56]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MR:[, [, , \"(?:[2-4]\\\\d\\\\d|800)\\\\d{5}\", , , , , , , [8]], [, , \"(?:25[08]|35\\\\d|45[1-7])\\\\d{5}\", , , , \"35123456\"], [, , \"[2-4][0-46-9]\\\\d{6}\", , , , \"22123456\"], [, , \"800\\\\d{5}\", , , , \"80012345\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"MR\", 222, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\n\"$1 $2 $3 $4\", [\"[2-48]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MS:[, [, , \"66449\\\\d{5}|(?:[58]\\\\d\\\\d|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"664491\\\\d{4}\", , , , \"6644912345\", , , , [7]], [, , \"66449[2-6]\\\\d{4}\", , , , \"6644923456\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\",\n, , , \"5002345678\"], [, , , , , , , , , [-1]], \"MS\", 1, \"011\", \"1\", , , \"1|(4\\\\d{6})$\", \"664$1\", , , , , [, , , , , , , , , [-1]], , \"664\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MT:[, [, , \"3550\\\\d{4}|(?:[2579]\\\\d\\\\d|800)\\\\d{5}\", , , , , , , [8]], [, , \"2(?:0(?:[19]\\\\d|3[1-4]|6[059])|[1-357]\\\\d\\\\d)\\\\d{4}\", , , , \"21001234\"], [, , \"(?:7(?:210|[79]\\\\d\\\\d)|9(?:2(?:1[01]|31)|69[67]|8(?:1[1-3]|89|97)|9\\\\d\\\\d))\\\\d{4}\", , , , \"96961234\"], [, , \"800[3467]\\\\d{4}\",\n, , , \"80071234\"], [, , \"5(?:0(?:0(?:37|43)|(?:6\\\\d|70|9[0168])\\\\d)|[12]\\\\d0[1-5])\\\\d{3}\", , , , \"50037123\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"3550\\\\d{4}\", , , , \"35501234\"], \"MT\", 356, \"00\", , , , , , , , [[, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[2357-9]\"]]], , [, , \"7117\\\\d{4}\", , , , \"71171234\"], , , [, , , , , , , , , [-1]], [, , \"501\\\\d{5}\", , , , \"50112345\"], , , [, , , , , , , , , [-1]]], MU:[, [, , \"(?:[2-468]|5\\\\d)\\\\d{6}\", , , , , , , [7, 8]], [, , \"(?:2(?:[03478]\\\\d|1[0-7]|6[0-79])|4(?:[013568]\\\\d|2[4-7])|54(?:[34]\\\\d|71)|6\\\\d\\\\d|8(?:14|3[129]))\\\\d{4}\",\n, , , \"54480123\"], [, , \"5(?:4(?:2[1-389]|7[1-9])|87[15-8])\\\\d{4}|5(?:2[589]|4[3489]|7\\\\d|8[0-689]|9[0-8])\\\\d{5}\", , , , \"52512345\", , , [8]], [, , \"80[0-2]\\\\d{4}\", , , , \"8001234\", , , [7]], [, , \"30\\\\d{5}\", , , , \"3012345\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"3(?:20|9\\\\d)\\\\d{4}\", , , , \"3201234\", , , [7]], \"MU\", 230, \"0(?:0|[24-7]0|3[03])\", , , , , , \"020\", , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[2-46]|8[013]\"]], [, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"5\"]]], , [, , , ,\n, , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MV:[, [, , \"(?:800|9[0-57-9]\\\\d)\\\\d{7}|[34679]\\\\d{6}\", , , , , , , [7, 10]], [, , \"(?:3(?:0[0-3]|3[0-59])|6(?:[57][02468]|6[024-68]|8[024689]))\\\\d{4}\", , , , \"6701234\", , , [7]], [, , \"46[46]\\\\d{4}|(?:7[2-9]|9[13-9])\\\\d{5}\", , , , \"7712345\", , , [7]], [, , \"800\\\\d{7}\", , , , \"8001234567\", , , [10]], [, , \"900\\\\d{7}\", , , , \"9001234567\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]],\n[, , , , , , , , , [-1]], \"MV\", 960, \"0(?:0|19)\", , , , , , \"00\", , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1-$2\", [\"[3467]|9[13-9]\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[89]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"4[05]0\\\\d{4}\", , , , \"4001234\", , , [7]], , , [, , , , , , , , , [-1]]], MW:[, [, , \"1\\\\d{6}(?:\\\\d{2})?|(?:[23]1|77|88|99)\\\\d{7}\", , , , , , , [7, 9]], [, , \"(?:1[2-9]|21\\\\d\\\\d)\\\\d{5}\", , , , \"1234567\"], [, , \"111\\\\d{6}|(?:77|88|99)\\\\d{7}\", , , , \"991234567\",\n, , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"31\\\\d{7}\", , , , \"310123456\", , , [9]], \"MW\", 265, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"3\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[17-9]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]],\n[, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MX:[, [, , \"(?:1(?:[01467]\\\\d|[2359][1-9]|8[1-79])|[2-9]\\\\d)\\\\d{8}\", , , , , , , [10, 11], [7, 8]], [, , \"(?:2(?:0[01]|2[1-9]|3[1-35-8]|4[13-9]|7[1-689]|8[1-578]|9[467])|3(?:1[1-79]|[2458][1-9]|3\\\\d|7[1-8]|9[1-5])|4(?:1[1-57-9]|[24-7][1-9]|3[1-8]|8[1-35-9]|9[2-689])|5(?:[56]\\\\d|88|9[1-79])|6(?:1[2-68]|[2-4][1-9]|5[1-3689]|6[1-57-9]|7[1-7]|8[67]|9[4-8])|7(?:[1-467][1-9]|5[13-9]|8[1-69]|9[17])|8(?:1\\\\d|2[13-689]|3[1-6]|4[124-6]|6[1246-9]|7[1-378]|9[12479])|9(?:1[346-9]|2[1-4]|3[2-46-8]|5[1348]|[69][1-9]|7[12]|8[1-8]))\\\\d{7}\",\n, , , \"2001234567\", , , [10], [7, 8]], [, , \"(?:1(?:2(?:2[1-9]|3[1-35-8]|4[13-9]|7[1-689]|8[1-578]|9[467])|3(?:1[1-79]|[2458][1-9]|3\\\\d|7[1-8]|9[1-5])|4(?:1[1-57-9]|[24-7][1-9]|3[1-8]|8[1-35-9]|9[2-689])|5(?:[56]\\\\d|88|9[1-79])|6(?:1[2-68]|[2-4][1-9]|5[1-3689]|6[1-57-9]|7[1-7]|8[67]|9[4-8])|7(?:[1-467][1-9]|5[13-9]|8[1-69]|9[17])|8(?:1\\\\d|2[13-689]|3[1-6]|4[124-6]|6[1246-9]|7[1-378]|9[12479])|9(?:1[346-9]|2[1-4]|3[2-46-8]|5[1348]|[69][1-9]|7[12]|8[1-8]))|2(?:2[1-9]|3[1-35-8]|4[13-9]|7[1-689]|8[1-578]|9[467])|3(?:1[1-79]|[2458][1-9]|3\\\\d|7[1-8]|9[1-5])|4(?:1[1-57-9]|[24-7][1-9]|3[1-8]|8[1-35-9]|9[2-689])|5(?:[56]\\\\d|88|9[1-79])|6(?:1[2-68]|[2-4][1-9]|5[1-3689]|6[1-57-9]|7[1-7]|8[67]|9[4-8])|7(?:[1-467][1-9]|5[13-9]|8[1-69]|9[17])|8(?:1\\\\d|2[13-689]|3[1-6]|4[124-6]|6[1246-9]|7[1-378]|9[12479])|9(?:1[346-9]|2[1-4]|3[2-46-8]|5[1348]|[69][1-9]|7[12]|8[1-8]))\\\\d{7}\",\n, , , \"12221234567\", , , , [7, 8]], [, , \"8(?:00|88)\\\\d{7}\", , , , \"8001234567\", , , [10]], [, , \"900\\\\d{7}\", , , , \"9001234567\", , , [10]], [, , \"300\\\\d{7}\", , , , \"3001234567\", , , [10]], [, , \"500\\\\d{7}\", , , , \"5001234567\", , , [10]], [, , , , , , , , , [-1]], \"MX\", 52, \"0[09]\", \"01\", , , \"0(?:[12]|4[45])|1\", , \"00\", , [[, \"(\\\\d{5})\", \"$1\", [\"53\"]], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"33|5[56]|81\"], , , 1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[2-9]\"], , , 1], [, \"(\\\\d)(\\\\d{2})(\\\\d{4})(\\\\d{4})\",\n\"$2 $3 $4\", [\"1(?:33|5[56]|81)\"], , , 1], [, \"(\\\\d)(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$2 $3 $4\", [\"1\"], , , 1]], [[, \"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"33|5[56]|81\"], , , 1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[2-9]\"], , , 1], [, \"(\\\\d)(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$2 $3 $4\", [\"1(?:33|5[56]|81)\"], , , 1], [, \"(\\\\d)(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$2 $3 $4\", [\"1\"], , , 1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MY:[, [,\n, \"1\\\\d{8,9}|(?:3\\\\d|[4-9])\\\\d{7}\", , , , , , , [8, 9, 10], [6, 7]], [, , \"(?:3(?:2[0-36-9]|3[0-368]|4[0-278]|5[0-24-8]|6[0-467]|7[1246-9]|8\\\\d|9[0-57])\\\\d|4(?:2[0-689]|[3-79]\\\\d|8[1-35689])|5(?:2[0-589]|[3468]\\\\d|5[0-489]|7[1-9]|9[23])|6(?:2[2-9]|3[1357-9]|[46]\\\\d|5[0-6]|7[0-35-9]|85|9[015-8])|7(?:[2579]\\\\d|3[03-68]|4[0-8]|6[5-9]|8[0-35-9])|8(?:[24][2-8]|3[2-5]|5[2-7]|6[2-589]|7[2-578]|[89][2-9])|9(?:0[57]|13|[25-7]\\\\d|[3489][0-8]))\\\\d{5}\", , , , \"323856789\", , , [8, 9], [6, 7]], [, , \"1(?:4400|8(?:47|8[27])[0-4])\\\\d{4}|1(?:0(?:[23568]\\\\d|4[0-6]|7[016-9]|9[0-8])|1(?:[1-5]\\\\d\\\\d|6(?:0[5-9]|[1-9]\\\\d))|(?:[23679][2-9]|4[235-9]|59\\\\d)\\\\d|8(?:1[23]|[236]\\\\d|4[06]|5[7-9]|7[016-9]|8[01]|9[0-8]))\\\\d{5}\",\n, , , \"123456789\", , , [9, 10]], [, , \"1[378]00\\\\d{6}\", , , , \"1300123456\", , , [10]], [, , \"1600\\\\d{6}\", , , , \"1600123456\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"154(?:6(?:0\\\\d|1[0-3])|8(?:[25]1|4[0189]|7[0-4679]))\\\\d{4}\", , , , \"1546012345\", , , [10]], \"MY\", 60, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d)(\\\\d{3})(\\\\d{4})\", \"$1-$2 $3\", [\"[4-79]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3,4})\", \"$1-$2 $3\", [\"1(?:[0249]|[367][2-9]|8[1-9])|8\"], \"0$1\"], [, \"(\\\\d)(\\\\d{4})(\\\\d{4})\",\n\"$1-$2 $3\", [\"3\"], \"0$1\"], [, \"(\\\\d)(\\\\d{3})(\\\\d{2})(\\\\d{4})\", \"$1-$2-$3-$4\", [\"1[36-8]\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1-$2 $3\", [\"15\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1-$2 $3\", [\"1\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MZ:[, [, , \"(?:2|8\\\\d)\\\\d{7}\", , , , , , , [8, 9]], [, , \"2(?:[1346]\\\\d|5[0-2]|[78][12]|93)\\\\d{5}\", , , , \"21123456\", , , [8]], [, , \"8[2-7]\\\\d{7}\", , , , \"821234567\", , , [9]],\n[, , \"800\\\\d{6}\", , , , \"800123456\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"MZ\", 258, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{3,4})\", \"$1 $2 $3\", [\"2|8[2-7]\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"8\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], NA:[, [, , \"[68]\\\\d{7,8}\", , , , , , , [8, 9]], [, , \"6(?:1(?:[02-4]\\\\d\\\\d|17)|2(?:17|54\\\\d|69|70)|3(?:17|2[0237]\\\\d|34|6[289]|7[01]|81)|4(?:17|(?:27|41|5[25])\\\\d|69|7[01])|5(?:17|2[236-8]\\\\d|69|7[01])|6(?:17|26\\\\d|38|42|69|7[01])|7(?:17|(?:2[2-4]|30)\\\\d|6[89]|7[01]))\\\\d{4}|6(?:1(?:2[2-7]|3[01378]|4[0-4]|69|7[014])|25[0-46-8]|32\\\\d|4(?:2[0-27]|4[016]|5[0-357])|52[02-9]|62[56]|7(?:2[2-69]|3[013]))\\\\d{4}\",\n, , , \"61221234\"], [, , \"(?:60|8[1245])\\\\d{7}\", , , , \"811234567\", , , [9]], [, , \"80\\\\d{7}\", , , , \"800123456\", , , [9]], [, , \"8701\\\\d{5}\", , , , \"870123456\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"8(?:3\\\\d\\\\d|86)\\\\d{5}\", , , , \"88612345\"], \"NA\", 264, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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})\",\n\"$1 $2 $3\", [\"8\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], NC:[, [, , \"[2-57-9]\\\\d{5}\", , , , , , , [6]], [, , \"(?:2[03-9]|3[0-5]|4[1-7]|88)\\\\d{4}\", , , , \"201234\"], [, , \"(?:5[0-4]|[79]\\\\d|8[0-79])\\\\d{4}\", , , , \"751234\"], [, , , , , , , , , [-1]], [, , \"36\\\\d{4}\", , , , \"366711\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"NC\", 687, \"00\", , , , , , , , [[, \"(\\\\d{3})\", \"$1\", [\"5[6-8]\"]],\n[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1.$2.$3\", [\"[2-57-9]\"]]], [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1.$2.$3\", [\"[2-57-9]\"]]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], NE:[, [, , \"[0289]\\\\d{7}\", , , , , , , [8]], [, , \"2(?:0(?:20|3[1-8]|4[13-5]|5[14]|6[14578]|7[1-578])|1(?:4[145]|5[14]|6[14-68]|7[169]|88))\\\\d{4}\", , , , \"20201234\"], [, , \"(?:8[014589]|9\\\\d)\\\\d{6}\", , , , \"93123456\"], [, , \"08\\\\d{6}\", , , , \"08123456\"], [, , \"09\\\\d{6}\",\n, , , \"09123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"NE\", 227, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"08\"]], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[089]|2[01]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], NF:[, [, , \"[13]\\\\d{5}\", , , , , , , [6], [5]], [, , \"(?:1(?:06|17|28|39)|3[0-2]\\\\d)\\\\d{3}\", , , , \"106609\", , , , [5]], [, , \"3[58]\\\\d{4}\",\n, , , \"381234\", , , , [5]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"NF\", 672, \"00\", , , , \"([0-258]\\\\d{4})$\", \"3$1\", , , [[, \"(\\\\d{2})(\\\\d{4})\", \"$1 $2\", [\"1\"]], [, \"(\\\\d)(\\\\d{5})\", \"$1 $2\", [\"3\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], NG:[, [, , \"(?:[124-7]|9\\\\d{3})\\\\d{6}|[1-9]\\\\d{7}|[78]\\\\d{9,13}\", , , , , , , [7, 8, 10, 11, 12,\n13, 14], [5, 6]], [, , \"(?:(?:[1-356]\\\\d|4[02-8]|7[0-79]|8[2-9])\\\\d|9(?:0[3-9]|[1-9]\\\\d))\\\\d{5}|(?:[12]\\\\d|4[147]|5[14579]|6[1578]|7[0-3578])\\\\d{5}\", , , , \"18040123\", , , [7, 8], [5, 6]], [, , \"(?:707[0-3]|8(?:01|19)[01])\\\\d{6}|(?:70[1-689]|8(?:0[2-9]|1[0-8])|90[1-35-9])\\\\d{7}\", , , , \"8021234567\", , , [10]], [, , \"800\\\\d{7,11}\", , , , \"80017591759\", , , [10, 11, 12, 13, 14]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"NG\", 234, \"009\",\n\"0\", , , \"0\", , , , [[, \"(\\\\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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"700\\\\d{7,11}\", ,\n, , \"7001234567\", , , [10, 11, 12, 13, 14]], , , [, , , , , , , , , [-1]]], NI:[, [, , \"(?:1800|[25-8]\\\\d{3})\\\\d{4}\", , , , , , , [8]], [, , \"2\\\\d{7}\", , , , \"21234567\"], [, , \"(?:5(?:5[0-7]|[78]\\\\d)|6(?:20|3[035]|4[045]|5[05]|77|8[1-9]|9[059])|(?:7[5-8]|8\\\\d)\\\\d)\\\\d{5}\", , , , \"81234567\"], [, , \"1800\\\\d{4}\", , , , \"18001234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"NI\", 505, \"00\", , , , , , , , [[, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[125-8]\"]]],\n, [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], NL:[, [, , \"(?:[124-7]\\\\d\\\\d|3(?:[02-9]\\\\d|1[0-8]))\\\\d{6}|[89]\\\\d{6,9}|1\\\\d{4,5}\", , , , , , , [5, 6, 7, 8, 9, 10]], [, , \"(?:1(?:[035]\\\\d|1[13-578]|6[124-8]|7[24]|8[0-467])|2(?:[0346]\\\\d|2[2-46-9]|5[125]|9[479])|3(?:[03568]\\\\d|1[3-8]|2[01]|4[1-8])|4(?:[0356]\\\\d|1[1-368]|7[58]|8[15-8]|9[23579])|5(?:[0358]\\\\d|[19][1-9]|2[1-57-9]|4[13-8]|6[126]|7[0-3578])|7\\\\d\\\\d)\\\\d{6}\", , , , \"101234567\",\n, , [9]], [, , \"6[1-58]\\\\d{7}\", , , , \"612345678\", , , [9]], [, , \"800\\\\d{4,7}\", , , , \"8001234\", , , [7, 8, 9, 10]], [, , \"90[069]\\\\d{4,7}\", , , , \"9061234\", , , [7, 8, 9, 10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"(?:85|91)\\\\d{7}\", , , , \"851234567\", , , [9]], \"NL\", 31, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{4})\", \"$1\", [\"1[238]|[34]\"]], [, \"(\\\\d{2})(\\\\d{3,4})\", \"$1 $2\", [\"14\"]], [, \"(\\\\d{6})\", \"$1\", [\"1\"]], [, \"(\\\\d{3})(\\\\d{4,7})\", \"$1 $2\", [\"[89]0\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{7})\",\n\"$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-57-9]\"], \"0$1\"]], [[, \"(\\\\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})\",\n\"$1 $2 $3\", [\"[1-57-9]\"], \"0$1\"]], [, , \"66\\\\d{7}\", , , , \"662345678\", , , [9]], , , [, , \"140(?:1[035]|2[0346]|3[03568]|4[0356]|5[0358]|8[458])|140(?:1[16-8]|2[259]|3[124]|4[17-9]|5[124679]|7)\\\\d\", , , , , , , [5, 6]], [, , \"140(?:1[035]|2[0346]|3[03568]|4[0356]|5[0358]|8[458])|(?:140(?:1[16-8]|2[259]|3[124]|4[17-9]|5[124679]|7)|8[478]\\\\d{6})\\\\d\", , , , \"14020\", , , [5, 6, 9]], , , [, , , , , , , , , [-1]]], NO:[, [, , \"(?:0|[2-9]\\\\d{3})\\\\d{4}\", , , , , , , [5, 8]], [, , \"(?:2[1-4]|3[1-3578]|5[1-35-7]|6[1-4679]|7[0-8])\\\\d{6}\",\n, , , \"21234567\", , , [8]], [, , \"(?:4[015-8]|5[89]|9\\\\d)\\\\d{6}\", , , , \"40612345\", , , [8]], [, , \"80[01]\\\\d{5}\", , , , \"80012345\", , , [8]], [, , \"82[09]\\\\d{5}\", , , , \"82012345\", , , [8]], [, , \"810(?:0[0-6]|[2-8]\\\\d)\\\\d{3}\", , , , \"81021234\", , , [8]], [, , \"880\\\\d{5}\", , , , \"88012345\", , , [8]], [, , \"85[0-5]\\\\d{5}\", , , , \"85012345\", , , [8]], \"NO\", 47, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{3})\", \"$1 $2 $3\", [\"[489]\"]], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[235-7]\"]]],\n, [, , , , , , , , , [-1]], 1, \"[02-689]|7[0-8]\", [, , , , , , , , , [-1]], [, , \"(?:0[2-9]|81(?:0(?:0[7-9]|1\\\\d)|5\\\\d\\\\d))\\\\d{3}\", , , , \"02000\"], , , [, , \"81[23]\\\\d{5}\", , , , \"81212345\", , , [8]]], NP:[, [, , \"9\\\\d{9}|[1-9]\\\\d{7}\", , , , , , , [8, 10], [6, 7]], [, , \"1[0-6]\\\\d{6}|(?:2[13-79]|3[135-8]|4[146-9]|5[135-7]|6[13-9]|7[15-9]|8[1-46-9]|9[1-79])[2-6]\\\\d{5}\", , , , \"14567890\", , , [8], [6, 7]], [, , \"9(?:6[0-3]|7[245]|8[0-24-68])\\\\d{7}\", , , , \"9841234567\", , , [10]], [, , , , , , , , ,\n[-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"NP\", 977, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d)(\\\\d{7})\", \"$1-$2\", [\"1[2-6]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{6})\", \"$1-$2\", [\"[1-8]|9(?:[1-579]|6[2-6])\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{7})\", \"$1-$2\", [\"9\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], NR:[, [, , \"(?:444|55\\\\d|888)\\\\d{4}\", , , , , , , [7]], [, , \"(?:444|888)\\\\d{4}\",\n, , , \"4441234\"], [, , \"55[4-9]\\\\d{4}\", , , , \"5551234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"NR\", 674, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[458]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], NU:[, [, , \"(?:[47]|888\\\\d)\\\\d{3}\", , , , , , , [4, 7]], [, , \"[47]\\\\d{3}\", , , , \"7012\", , , [4]], [, , \"888[4-9]\\\\d{3}\",\n, , , \"8884012\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"NU\", 683, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"8\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], NZ:[, [, , \"[28]\\\\d{7,9}|[346]\\\\d{7}|(?:508|[79]\\\\d)\\\\d{6,7}\", , , , , , , [8, 9, 10], [7]], [, , \"24099\\\\d{3}|(?:3[2-79]|[49][2-9]|6[235-9]|7[2-57-9])\\\\d{6}\",\n, , , \"32345678\", , , [8], [7]], [, , \"2[0-28]\\\\d{8}|2[0-27-9]\\\\d{7}|21\\\\d{6}\", , , , \"211234567\"], [, , \"508\\\\d{6,7}|80\\\\d{6,8}\", , , , \"800123456\"], [, , \"90\\\\d{6,7}\", , , , \"900123456\", , , [8, 9]], [, , , , , , , , , [-1]], [, , \"70\\\\d{7}\", , , , \"701234567\", , , [9]], [, , , , , , , , , [-1]], \"NZ\", 64, \"0(?:0|161)\", \"0\", , , \"0\", , \"00\", , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{3})\", \"$1 $2 $3\", [\"[89]0\"], \"0$1\"], [, \"(\\\\d)(\\\\d{3})(\\\\d{4})\", \"$1-$2 $3\", [\"24|[346]|7[2-57-9]|9[2-9]\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3,4})\",\n\"$1 $2 $3\", [\"2(?:10|74)|[59]|80\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3,4})(\\\\d{4})\", \"$1 $2 $3\", [\"2[028]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3,5})\", \"$1 $2 $3\", [\"2(?:[169]|7[0-35-9])|7|86\"], \"0$1\"]], , [, , \"[28]6\\\\d{6,7}\", , , , \"26123456\", , , [8, 9]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], OM:[, [, , \"(?:[279]\\\\d{3}|500)\\\\d{4}|8007\\\\d{4,5}\", , , , , , , [7, 8, 9]], [, , \"2[2-6]\\\\d{6}\", , , , \"23123456\", , , [8]], [, , \"90[1-9]\\\\d{5}|(?:7[129]|9[1-9])\\\\d{6}\",\n, , , \"92123456\", , , [8]], [, , \"500\\\\d{4}|8007\\\\d{4,5}\", , , , \"80071234\"], [, , \"900\\\\d{5}\", , , , \"90012345\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"OM\", 968, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4,6})\", \"$1 $2\", [\"[58]\"]], [, \"(\\\\d{2})(\\\\d{6})\", \"$1 $2\", [\"2\"]], [, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[79]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], PA:[, [, , \"(?:[1-57-9]|6\\\\d)\\\\d{6}\",\n, , , , , , [7, 8]], [, , \"(?:1(?:0\\\\d|1[479]|2[37]|3[0137]|4[17]|5[05]|[68][58]|7[0167]|9[39])|2(?:[0235-79]\\\\d|1[0-7]|4[013-9]|8[026-9])|3(?:[089]\\\\d|1[014-7]|2[0-35]|33|4[0-579]|55|6[068]|7[06-8])|4(?:00|3[0-579]|4\\\\d|7[0-57-9])|5(?:[01]\\\\d|2[0-7]|[56]0|79)|7(?:0[09]|2[0-26-8]|3[03]|4[04]|5[05-9]|6[05]|7[0-24-9]|8[7-9]|90)|8(?:09|2[89]|3\\\\d|4[0-24-689]|5[014]|8[02])|9(?:0[5-9]|1[0135-8]|2[036-9]|3[35-79]|40|5[0457-9]|6[05-9]|7[04-9]|8[35-8]|9\\\\d))\\\\d{4}\", , , , \"2001234\", , , [7]], [, , \"(?:1[16]1|21[89]|6(?:[02-9]\\\\d|1[0-6])\\\\d|8(?:1[01]|7[23]))\\\\d{4}\",\n, , , \"61234567\"], [, , \"800\\\\d{4}\", , , , \"8001234\", , , [7]], [, , \"(?:8(?:22|55|60|7[78]|86)|9(?:00|81))\\\\d{4}\", , , , \"8601234\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"PA\", 507, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1-$2\", [\"[1-57-9]\"]], [, \"(\\\\d{4})(\\\\d{4})\", \"$1-$2\", [\"6\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], PE:[, [, , \"(?:[14-8]|9\\\\d)\\\\d{7}\", , , , , ,\n, [8, 9], [6, 7]], [, , \"19(?:[02-68]\\\\d|1[035-9]|7[0-689]|9[1-9])\\\\d{4}|(?:1[0-8]|4[1-4]|5[1-46]|6[1-7]|7[2-46]|8[2-4])\\\\d{6}\", , , , \"11234567\", , , [8], [6, 7]], [, , \"9\\\\d{8}\", , , , \"912345678\", , , [9]], [, , \"800\\\\d{5}\", , , , \"80012345\", , , [8]], [, , \"805\\\\d{5}\", , , , \"80512345\", , , [8]], [, , \"801\\\\d{5}\", , , , \"80112345\", , , [8]], [, , \"80[24]\\\\d{5}\", , , , \"80212345\", , , [8]], [, , , , , , , , , [-1]], \"PE\", 51, \"19(?:1[124]|77|90)00\", \"0\", \" Anexo \", , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{5})\",\n\"$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\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], PF:[, [, , \"[48]\\\\d{7}|4\\\\d{5}\", , , , , , , [6, 8]], [, , \"4(?:[09][4-689]\\\\d|4)\\\\d{4}\", , , , \"40412345\"], [, , \"8[7-9]\\\\d{6}\", , , , \"87123456\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]],\n[, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"PF\", 689, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3\", [\"44\"]], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[48]\"]]], , [, , , , , , , , , [-1]], , , [, , \"44\\\\d{4}\", , , , , , , [6]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], PG:[, [, , \"(?:180|[78]\\\\d{3})\\\\d{4}|(?:[2-589]\\\\d|64)\\\\d{5}\", , , , , , , [7, 8]], [, , \"(?:64[1-9]|7730|85[02-46-9])\\\\d{4}|(?:3[0-2]|4[257]|5[34]|77[0-24]|9[78])\\\\d{5}\",\n, , , \"3123456\"], [, , \"775\\\\d{5}|(?:7[0-689]|81)\\\\d{6}\", , , , \"70123456\", , , [8]], [, , \"180\\\\d{4}\", , , , \"1801234\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"2(?:0[0-47]|7[568])\\\\d{4}\", , , , \"2751234\", , , [7]], \"PG\", 675, \"00|140[1-3]\", , , , , , \"00\", , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"18|[2-69]|85\"]], [, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[78]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [,\n, , , , , , , , [-1]]], PH:[, [, , \"1800\\\\d{7,9}|(?:2|[89]\\\\d{4})\\\\d{5}|[2-8]\\\\d{8}|[28]\\\\d{7}\", , , , , , , [6, 8, 9, 10, 11, 12, 13], [4, 5, 7]], [, , \"(?:(?:2[3-8]|3[2-68]|4[2-9]|5[2-6]|6[2-58]|7[24578])\\\\d{3}|88(?:22\\\\d\\\\d|42))\\\\d{4}|2\\\\d{5}(?:\\\\d{2})?|8[2-8]\\\\d{7}\", , , , \"21234567\", , , [6, 8, 9, 10], [4, 5, 7]], [, , \"(?:81[37]|9(?:0[5-9]|1[0-24-9]|2[0-35-9]|[35]\\\\d|4[235-9]|6[0-25-8]|7[1-9]|8[19]|9[4-9]))\\\\d{7}\", , , , \"9051234567\", , , [10]], [, , \"1800\\\\d{7,9}\", , , , \"180012345678\", ,\n, [11, 12, 13]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"PH\", 63, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d)(\\\\d{5})\", \"$1 $2\", [\"2\"], \"(0$1)\"], [, \"(\\\\d)(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"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})\",\n\"$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\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], PK:[,\n[, , \"122\\\\d{6}|[24-8]\\\\d{10,11}|9(?:[013-9]\\\\d{8,10}|2(?:[01]\\\\d\\\\d|2(?:[025-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], [5, 6, 7]], [, , \"(?:(?:21|42)[2-9]|58[126])\\\\d{7}|(?:2[25]|4[0146-9]|5[1-35-7]|6[1-8]|7[14]|8[16]|91)[2-9]\\\\d{6}|(?: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]))[2-9]\\\\d{5,6}\", , , , \"2123456789\", , ,\n[9, 10], [5, 6, 7, 8]], [, , \"3(?:[014]\\\\d|2[0-5]|3[0-7]|55|64)\\\\d{7}\", , , , \"3012345678\", , , [10]], [, , \"800\\\\d{5}\", , , , \"80012345\", , , [8]], [, , \"900\\\\d{5}\", , , , \"90012345\", , , [8]], [, , , , , , , , , [-1]], [, , \"122\\\\d{6}\", , , , \"122044444\", , , [9]], [, , , , , , , , , [-1]], \"PK\", 92, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{2})\", \"$1 $2 $3\", [\"[89]0\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d{5})\", \"$1 $2\", [\"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]\"],\n\"(0$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{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})\",\n\"$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)\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"(?:2(?:[125]|3[2358]|4[2-4]|9[2-8])|4(?:[0-246-9]|5[3479])|5(?:[1-35-7]|4[2-467])|6(?:0[468]|[1-8])|7(?:[14]|2[236])|8(?:[16]|2[2-689]|3[23578]|4[3478]|5[2356])|9(?:1|22|3[27-9]|4[2-6]|6[3569]|9[2-7]))111\\\\d{6}\", , , , \"21111825888\", , , [11, 12]], , , [, , , , , , , , , [-1]]],\nPL:[, [, , \"[1-57-9]\\\\d{6}(?:\\\\d{2})?|6\\\\d{5,8}\", , , , , , , [6, 7, 8, 9]], [, , \"(?: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])(?:[02-9]\\\\d{6}|1(?:[0-8]\\\\d{5}|9\\\\d{3}(?:\\\\d{2})?))\", , , , \"123456789\", , , [7, 9]], [, , \"(?:45|5[0137]|6[069]|7[2389]|88)\\\\d{7}\", , , , \"512345678\", , , [9]], [, , \"800\\\\d{6}\", , , , \"800123456\", , , [9]], [, , \"70[01346-8]\\\\d{6}\", , , , \"701234567\", , , [9]], [, , \"801\\\\d{6}\", , , , \"801234567\", , , [9]], [, , , , , , , , , [-1]], [,\n, \"39\\\\d{7}\", , , , \"391234567\", , , [9]], \"PL\", 48, \"00\", , , , , , , , [[, \"(\\\\d{5})\", \"$1\", [\"19\"]], [, \"(\\\\d{3})(\\\\d{3})\", \"$1 $2\", [\"11|64\"]], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{3})\", \"$1 $2 $3\", [\"(?:1[2-8]|2[2-69]|3[2-4]|4[1-468]|5[24-689]|6[1-3578]|7[14-7]|8[1-79]|9[145])1\", \"(?:1[2-8]|2[2-69]|3[2-4]|4[1-468]|5[24-689]|6[1-3578]|7[14-7]|8[1-79]|9[145])19\"]], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{2,3})\", \"$1 $2 $3\", [\"64\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"39|45|5[0137]|6[0469]|7[02389]|8[08]\"]], [,\n\"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"1[2-8]|[2-8]|9[145]\"]]], , [, , \"64\\\\d{4,7}\", , , , \"641234567\"], , , [, , , , , , , , , [-1]], [, , \"804\\\\d{6}\", , , , \"804123456\", , , [9]], , , [, , , , , , , , , [-1]]], PM:[, [, , \"[45]\\\\d{5}\", , , , , , , [6]], [, , \"(?:4[1-3]|50)\\\\d{4}\", , , , \"430123\"], [, , \"(?:4[02-4]|5[05])\\\\d{4}\", , , , \"551234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"PM\", 508,\n\"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3\", [\"[45]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], PR:[, [, , \"(?:[589]\\\\d\\\\d|787)\\\\d{7}\", , , , , , , [10], [7]], [, , \"(?:787|939)[2-9]\\\\d{6}\", , , , \"7872345678\", , , , [7]], [, , \"(?:787|939)[2-9]\\\\d{6}\", , , , \"7872345678\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002345678\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002345678\"],\n[, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"PR\", 1, \"011\", \"1\", , , \"1\", , , 1, , , [, , , , , , , , , [-1]], , \"787|939\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], PS:[, [, , \"[2489]2\\\\d{6}|(?:1\\\\d|5)\\\\d{8}\", , , , , , , [8, 9, 10], [7]], [, , \"(?:22[2-47-9]|42[45]|82[01458]|92[369])\\\\d{5}\", , , , \"22234567\", , , [8], [7]], [, , \"5[69]\\\\d{7}\", , , , \"599123456\", , , [9]], [, , \"1800\\\\d{6}\",\n, , , \"1800123456\", , , [10]], [, , , , , , , , , [-1]], [, , \"1700\\\\d{6}\", , , , \"1700123456\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"PS\", 970, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], PT:[, [, , \"(?:[26-9]\\\\d|30)\\\\d{7}\",\n, , , , , , [9]], [, , \"2(?:[12]\\\\d|[35][1-689]|4[1-59]|6[1-35689]|7[1-9]|8[1-69]|9[1256])\\\\d{6}\", , , , \"212345678\"], [, , \"9(?:[1-36]\\\\d\\\\d|480)\\\\d{5}\", , , , \"912345678\"], [, , \"80[02]\\\\d{6}\", , , , \"800123456\"], [, , \"(?:6(?:0[178]|4[68])\\\\d|76(?:0[1-57]|1[2-47]|2[237]))\\\\d{5}\", , , , \"760123456\"], [, , \"80(?:8\\\\d|9[1579])\\\\d{5}\", , , , \"808123456\"], [, , \"884[0-4689]\\\\d{5}\", , , , \"884123456\"], [, , \"30\\\\d{7}\", , , , \"301234567\"], \"PT\", 351, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\",\n\"$1 $2 $3\", [\"2[12]\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[236-9]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"70(?:7\\\\d|8[17])\\\\d{5}\", , , , \"707123456\"], , , [, , \"600\\\\d{6}\", , , , \"600110000\"]], PW:[, [, , \"(?:[25-8]\\\\d\\\\d|345|488|900)\\\\d{4}\", , , , , , , [7]], [, , \"(?:2(?:55|77)|345|488|5(?:35|44|87)|6(?:22|54|79)|7(?:33|47)|8(?:24|55|76)|900)\\\\d{4}\", , , , \"2771234\"], [, , \"(?:6[2-4689]0|77\\\\d|88[0-4])\\\\d{4}\", , , , \"6201234\"], [, , , , , , , , , [-1]], [,\n, , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"PW\", 680, \"01[12]\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[2-9]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], PY:[, [, , \"59\\\\d{4,6}|(?:[2-46-9]\\\\d|5[0-8])\\\\d{4,7}\", , , , , , , [6, 7, 8, 9], [5]], [, , \"(?:[26]1|3[289]|4[1246-8]|7[1-3]|8[1-36])\\\\d{5,7}|(?:2(?:2[4-68]|7[15]|9[1-5])|3(?:18|3[167]|4[2357]|51)|4(?:3[12]|5[13]|9[1-47])|5(?:[1-4]\\\\d|5[02-4])|6(?:3[1-3]|44|7[1-46-8])|7(?:4[0-4]|6[1-578]|75|8[0-8])|858)\\\\d{5,6}\",\n, , , \"212345678\", , , [7, 8, 9], [5, 6]], [, , \"9(?:51|6[129]|[78][1-6]|9[1-5])\\\\d{6}\", , , , \"961456789\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"8700[0-4]\\\\d{4}\", , , , \"870012345\", , , [9]], \"PY\", 595, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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[347]|7[46-8]|85\"],\n\"(0$1)\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3,4})\", \"$1 $2 $3\", [\"[26]1|3[289]|4[1246-8]|7[1-3]|8[1-36]\"], \"(0$1)\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"87\"]], [, \"(\\\\d{3})(\\\\d{6})\", \"$1 $2\", [\"9\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[2-8]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"[2-9]0\\\\d{4,7}\", , , , \"201234567\"], , , [, , , , , , , , , [-1]]], QA:[, [, , \"800\\\\d{4}|(?:2|[3-7]\\\\d)\\\\d{6}\", , , , , , , [7, 8]], [, , \"4[04]\\\\d{6}\", , , , \"44123456\",\n, , [8]], [, , \"[35-7]\\\\d{7}\", , , , \"33123456\", , , [8]], [, , \"800\\\\d{4}\", , , , \"8001234\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"QA\", 974, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"2[126]|8\"]], [, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[3-7]\"]]], , [, , \"2(?:[12]\\\\d|61)\\\\d{4}\", , , , \"2123456\", , , [7]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], RE:[, [, , \"(?:26|[68]\\\\d)\\\\d{7}\",\n, , , , , , [9]], [, , \"262\\\\d{6}\", , , , \"262161234\"], [, , \"69(?:2\\\\d\\\\d|3(?:0[0-46]|1[013]|2[0-2]|3[0-39]|4\\\\d|5[05]|6[0-26]|7[0-27]|8[0-8]|9[0-479]))\\\\d{4}\", , , , \"692123456\"], [, , \"80\\\\d{7}\", , , , \"801234567\"], [, , \"89[1-37-9]\\\\d{6}\", , , , \"891123456\"], [, , \"8(?:1[019]|2[0156]|84|90)\\\\d{6}\", , , , \"810123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"RE\", 262, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[268]\"], \"0$1\"]], , [, , , , ,\n, , , , [-1]], 1, \"262|69|8\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], RO:[, [, , \"(?:[237]\\\\d|[89]0)\\\\d{7}|[23]\\\\d{5}\", , , , , , , [6, 9]], [, , \"[23][13-6]\\\\d{7}|(?:2(?:19\\\\d|[3-6]\\\\d9)|31\\\\d\\\\d)\\\\d\\\\d\", , , , \"211234567\"], [, , \"7120\\\\d{5}|7(?:[02-7]\\\\d|1[01]|8[03-8]|99)\\\\d{6}\", , , , \"712034567\", , , [9]], [, , \"800\\\\d{6}\", , , , \"800123456\", , , [9]], [, , \"90[036]\\\\d{6}\", , , , \"900123456\", , , [9]], [, , \"801\\\\d{6}\", , , , \"801123456\", , , [9]], [,\n, , , , , , , , [-1]], [, , , , , , , , , [-1]], \"RO\", 40, \"00\", \"0\", \" int \", , \"0\", , , , [[, \"(\\\\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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"37\\\\d{7}\", , , , \"372123456\", , , [9]], , , [, , , , , , , , , [-1]]], RS:[, [, , \"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}\",\n, , , , , , [6, 7, 8, 9, 10, 11, 12], [4, 5]], [, , \"(?:11[1-9]\\\\d|(?:2[389]|39)(?:0[2-9]|[2-9]\\\\d))\\\\d{3,8}|(?:1[02-9]|2[0-24-7]|3[0-8])[2-9]\\\\d{4,9}\", , , , \"10234567\", , , [7, 8, 9, 10, 11, 12], [4, 5, 6]], [, , \"6(?:[0-689]|7\\\\d)\\\\d{6,7}\", , , , \"601234567\", , , [8, 9, 10]], [, , \"800\\\\d{3,9}\", , , , \"80012345\"], [, , \"(?:78\\\\d|90[0169])\\\\d{3,7}\", , , , \"90012345\", , , [6, 7, 8, 9, 10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"RS\", 381, \"00\", \"0\", , , \"0\",\n, , , [[, \"(\\\\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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"7[06]\\\\d{4,10}\", , , , \"700123456\"], , , [, , , , , , , , , [-1]]], RU:[, [, , \"[347-9]\\\\d{9}\", , , , , , , [10], [7]], [, , \"(?:3(?:0[12]|4[1-35-79]|5[1-3]|65|8[1-58]|9[0145])|4(?:01|1[1356]|2[13467]|7[1-5]|8[1-7]|9[1-689])|8(?:1[1-8]|2[01]|3[13-6]|4[0-8]|5[15]|6[1-35-79]|7[1-37-9]))\\\\d{7}\", , , , \"3011234567\",\n, , , [7]], [, , \"9\\\\d{9}\", , , , \"9123456789\"], [, , \"80[04]\\\\d{7}\", , , , \"8001234567\"], [, , \"80[39]\\\\d{7}\", , , , \"8091234567\"], [, , , , , , , , , [-1]], [, , \"808\\\\d{7}\", , , , \"8081234567\"], [, , , , , , , , , [-1]], \"RU\", 7, \"810\", \"8\", , , \"8\", , \"8~10\", , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1-$2-$3\", [\"[0-79]\"]], [, \"(\\\\d{4})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"7(?:1[0-8]|2[1-9])\", \"7(?:1(?:[0-6]2|7|8[27])|2(?:1[23]|[2-9]2))\", \"7(?:1(?:[0-6]2|7|8[27])|2(?:13[03-69]|62[013-9]))|72[1-57-9]2\"],\n\"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\", [\"[3489]\"],\n\"8 ($1)\", , 1]], [[, \"(\\\\d{4})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"7(?:1[0-8]|2[1-9])\", \"7(?:1(?:[0-6]2|7|8[27])|2(?:1[23]|[2-9]2))\", \"7(?:1(?:[0-6]2|7|8[27])|2(?:13[03-69]|62[013-9]))|72[1-57-9]2\"], \"8 ($1)\", , 1], [, \"(\\\\d{5})(\\\\d)(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"7(?:1[0-68]|2[1-9])\", \"7(?:1(?:[06][3-6]|[18]|2[35]|[3-5][3-5])|2(?:[13][3-5]|[24-689]|7[457]))\", \"7(?:1(?:0(?:[356]|4[023])|[18]|2(?:3[013-9]|5)|3[45]|43[013-79]|5(?:3[1-8]|4[1-7]|5)|6(?:3[0-35-9]|[4-6]))|2(?:1(?:3[178]|[45])|[24-689]|3[35]|7[457]))|7(?:14|23)4[0-8]|71(?:33|45)[1-79]\"],\n\"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\", [\"[3489]\"], \"8 ($1)\", , 1]], [, , , , , , , , , [-1]], 1, \"3[04-689]|[489]\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], RW:[, [, , \"(?:06|[27]\\\\d\\\\d|[89]00)\\\\d{6}\", , , , , , , [8, 9]], [, , \"(?:06|2[258]\\\\d)\\\\d{6}\", , , , \"250123456\"], [, , \"7[238]\\\\d{7}\", , , , \"720123456\", , , [9]], [, , \"800\\\\d{6}\", , , , \"800123456\", ,\n, [9]], [, , \"900\\\\d{6}\", , , , \"900123456\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"RW\", 250, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SA:[, [, , \"92\\\\d{7}|(?:[15]|8\\\\d)\\\\d{8}\",\n, , , , , , [9, 10], [7]], [, , \"1(?:1\\\\d|2[24-8]|3[35-8]|4[3-68]|6[2-5]|7[235-7])\\\\d{6}\", , , , \"112345678\", , , [9], [7]], [, , \"5(?:[013-689]\\\\d|7[0-36-8])\\\\d{6}\", , , , \"512345678\", , , [9]], [, , \"800\\\\d{7}\", , , , \"8001234567\", , , [10]], [, , \"925\\\\d{6}\", , , , \"925012345\", , , [9]], [, , \"920\\\\d{6}\", , , , \"920012345\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"SA\", 966, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{4})(\\\\d{5})\", \"$1 $2\", [\"9\"]], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\",\n[\"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\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"811\\\\d{7}\", , , , \"8110123456\", , , [10]], , , [, , , , , , , , , [-1]]], SB:[, [, , \"(?:[1-6]|[7-9]\\\\d\\\\d)\\\\d{4}\", , , , , , , [5, 7]], [, , \"(?:1[4-79]|[23]\\\\d|4[0-2]|5[03]|6[0-37])\\\\d{3}\", , , , \"40123\", , , [5]], [, , \"48\\\\d{3}|(?:(?:7[1-9]|8[4-9])\\\\d|9(?:1[2-9]|2[013-9]|3[0-2]|[46]\\\\d|5[0-46-9]|7[0-689]|8[0-79]|9[0-8]))\\\\d{4}\",\n, , , \"7421234\"], [, , \"1[38]\\\\d{3}\", , , , \"18123\", , , [5]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"5[12]\\\\d{3}\", , , , \"51123\", , , [5]], \"SB\", 677, \"0[01]\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{5})\", \"$1 $2\", [\"7|8[4-9]|9(?:[1-8]|9[0-8])\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SC:[, [, , \"8000\\\\d{3}|(?:[249]\\\\d|64)\\\\d{5}\", , , , , , , [7]], [, , \"4[2-46]\\\\d{5}\", , , , \"4217123\"],\n[, , \"2[5-8]\\\\d{5}\", , , , \"2510123\"], [, , \"8000\\\\d{3}\", , , , \"8000000\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"971\\\\d{4}|(?:64|95)\\\\d{5}\", , , , \"6412345\"], \"SC\", 248, \"010|0[0-2]\", , , , , , \"00\", , [[, \"(\\\\d)(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[246]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SD:[, [, , \"[19]\\\\d{8}\", , , , , , , [9]], [, , \"1(?:5[3-7]|8[35-7])\\\\d{6}\", , , ,\n\"153123456\"], [, , \"(?:1[0-2]|9[0-3569])\\\\d{7}\", , , , \"911231234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"SD\", 249, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[19]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SE:[, [, , \"(?:[26]\\\\d\\\\d|9)\\\\d{9}|[1-9]\\\\d{8}|[1-689]\\\\d{7}|[1-4689]\\\\d{6}|2\\\\d{5}\", ,\n, , , , , [6, 7, 8, 9, 10, 12]], [, , \"10[1-8]\\\\d{6}|90[1-9]\\\\d{4,6}|(?:[12][136]|3[356]|4[0246]|6[03]|8\\\\d)\\\\d{5,7}|(?:1(?:2[0-35]|4[0-4]|5[0-25-9]|7[13-6]|[89]\\\\d)|2(?:2[0-7]|4[0136-8]|5[0138]|7[018]|8[01]|9[0-57])|3(?:0[0-4]|1\\\\d|2[0-25]|4[056]|7[0-2]|8[0-3]|9[023])|4(?:1[013-8]|3[0135]|5[14-79]|7[0-246-9]|8[0156]|9[0-689])|5(?:0[0-6]|[15][0-5]|2[0-68]|3[0-4]|4\\\\d|6[03-5]|7[013]|8[0-79]|9[01])|6(?:1[1-3]|2[0-4]|4[02-57]|5[0-37]|6[0-3]|7[0-2]|8[0247]|9[0-356])|9(?:1[0-68]|2\\\\d|3[02-5]|4[0-3]|5[0-4]|[68][01]|7[0135-8]))\\\\d{5,6}\",\n, , , \"8123456\", , , [7, 8, 9]], [, , \"7[02369]\\\\d{7}\", , , , \"701234567\", , , [9]], [, , \"20\\\\d{4,7}\", , , , \"20123456\", , , [6, 7, 8, 9]], [, , \"649\\\\d{6}|9(?:00|39|44)[1-8]\\\\d{3,6}\", , , , \"9001234567\", , , [7, 8, 9, 10]], [, , \"77[0-7]\\\\d{6}\", , , , \"771234567\", , , [9]], [, , \"75[1-8]\\\\d{6}\", , , , \"751234567\", , , [9]], [, , , , , , , , , [-1]], \"SE\", 46, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{2,3})(\\\\d{2})\", \"$1-$2 $3\", [\"20\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{4})\", \"$1-$2\", [\"9(?:00|39|44)\"],\n\"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{2})\", \"$1-$2 $3\", [\"[12][136]|3[356]|4[0246]|6[03]|90[1-9]\"], \"0$1\"], [, \"(\\\\d)(\\\\d{2,3})(\\\\d{2})(\\\\d{2})\", \"$1-$2 $3 $4\", [\"8\"], \"0$1\"], [, \"(\\\\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\"], [, \"(\\\\d{3})(\\\\d{2,3})(\\\\d{3})\", \"$1-$2 $3\", [\"9(?:00|39|44)\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{2,3})(\\\\d{2})(\\\\d{2})\", \"$1-$2 $3 $4\", [\"1[013689]|2[0136]|3[1356]|4[0246]|54|6[03]|90[1-9]\"],\n\"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1-$2 $3 $4\", [\"7\"], \"0$1\"], [, \"(\\\\d)(\\\\d{3})(\\\\d{3})(\\\\d{2})\", \"$1-$2 $3 $4\", [\"8\"], \"0$1\"], [, \"(\\\\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\"], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{3})\", \"$1-$2 $3 $4\", [\"9\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1-$2 $3 $4 $5\", [\"[26]\"], \"0$1\"]], [[, \"(\\\\d{2})(\\\\d{2,3})(\\\\d{2})\", \"$1 $2 $3\", [\"20\"]], [, \"(\\\\d{3})(\\\\d{4})\",\n\"$1 $2\", [\"9(?:00|39|44)\"]], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{2})\", \"$1 $2 $3\", [\"[12][136]|3[356]|4[0246]|6[03]|90[1-9]\"]], [, \"(\\\\d)(\\\\d{2,3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"8\"]], [, \"(\\\\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])\"]], [, \"(\\\\d{3})(\\\\d{2,3})(\\\\d{3})\", \"$1 $2 $3\", [\"9(?:00|39|44)\"]], [, \"(\\\\d{2})(\\\\d{2,3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"1[013689]|2[0136]|3[1356]|4[0246]|54|6[03]|90[1-9]\"]],\n[, \"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"7\"]], [, \"(\\\\d)(\\\\d{3})(\\\\d{3})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"8\"]], [, \"(\\\\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])\"]], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{3})\", \"$1 $2 $3 $4\", [\"9\"]], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4 $5\", [\"[26]\"]]], [, , \"74[02-9]\\\\d{6}\", , , , \"740123456\", , , [9]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]],\n, , [, , \"(?:25[245]|67[3-68])\\\\d{9}\", , , , \"254123456789\", , , [12]]], SG:[, [, , \"(?:(?:1\\\\d|8)\\\\d\\\\d|7000)\\\\d{7}|[3689]\\\\d{7}\", , , , , , , [8, 10, 11]], [, , \"6[1-9]\\\\d{6}\", , , , \"61234567\", , , [8]], [, , \"89[01]\\\\d{5}|(?:8[1-8]|9[0-8])\\\\d{6}\", , , , \"81234567\", , , [8]], [, , \"(?:18|8)00\\\\d{7}\", , , , \"18001234567\", , , [10, 11]], [, , \"1900\\\\d{7}\", , , , \"19001234567\", , , [11]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"3[12]\\\\d{6}\", , , , \"31234567\", , , [8]], \"SG\", 65,\n\"0[0-3]\\\\d\", , , , , , , , [[, \"(\\\\d{4,5})\", \"$1\", [\"1[0135-7]|77\"]], [, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[369]|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\"]]], [[, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[369]|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\"]]], [, , , , , , , , , [-1]],\n, , [, , , , , , , , , [-1]], [, , \"7000\\\\d{7}\", , , , \"70001234567\", , , [11]], , , [, , , , , , , , , [-1]]], SH:[, [, , \"(?:[256]\\\\d|8)\\\\d{3}\", , , , , , , [4, 5]], [, , \"2(?:[0-57-9]\\\\d|6[4-9])\\\\d\\\\d\", , , , \"22158\"], [, , \"[56]\\\\d{4}\", , , , \"51234\", , , [5]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"262\\\\d\\\\d\", , , , \"26212\", , , [5]], \"SH\", 290, \"00\", , , , , , , , , , [, , , , , , , , , [-1]], 1, \"[256]\", [, , , , , , ,\n, , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SI:[, [, , \"[1-7]\\\\d{7}|8\\\\d{4,7}|90\\\\d{4,6}\", , , , , , , [5, 6, 7, 8]], [, , \"(?:[1-357][2-8]|4[24-8])\\\\d{6}\", , , , \"12345678\", , , [8], [7]], [, , \"6(?:5(?:1\\\\d|55|[67]0)|9(?:10|[69]\\\\d))\\\\d{4}|(?:[37][01]|4[0139]|51|6[48])\\\\d{6}\", , , , \"31234567\", , , [8]], [, , \"80\\\\d{4,6}\", , , , \"80123456\", , , [6, 7, 8]], [, , \"89[1-3]\\\\d{2,5}|90\\\\d{4,6}\", , , , \"90123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"(?:59\\\\d\\\\d|8(?:1(?:[67]\\\\d|8[01389])|2(?:0\\\\d|2[0378]|8[0-2489])|3[389]\\\\d))\\\\d{4}\",\n, , , \"59012345\", , , [8]], \"SI\", 386, \"00|10(?:22|66|88|99)\", \"0\", , , \"0\", , \"00\", , [[, \"(\\\\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)\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SJ:[, [, , \"0\\\\d{4}|(?:[4589]\\\\d|79)\\\\d{6}\",\n, , , , , , [5, 8]], [, , \"79\\\\d{6}\", , , , \"79123456\", , , [8]], [, , \"(?:4[015-8]|5[89]|9\\\\d)\\\\d{6}\", , , , \"41234567\", , , [8]], [, , \"80[01]\\\\d{5}\", , , , \"80012345\", , , [8]], [, , \"82[09]\\\\d{5}\", , , , \"82012345\", , , [8]], [, , \"810(?:0[0-6]|[2-8]\\\\d)\\\\d{3}\", , , , \"81021234\", , , [8]], [, , \"880\\\\d{5}\", , , , \"88012345\", , , [8]], [, , \"85[0-5]\\\\d{5}\", , , , \"85012345\", , , [8]], \"SJ\", 47, \"00\", , , , , , , , , , [, , , , , , , , , [-1]], , \"79\", [, , , , , , , , , [-1]], [, , \"(?:0[2-9]|81(?:0(?:0[7-9]|1\\\\d)|5\\\\d\\\\d))\\\\d{3}\",\n, , , \"02000\"], , , [, , \"81[23]\\\\d{5}\", , , , \"81212345\", , , [8]]], SK:[, [, , \"[2-689]\\\\d{8}|[2-59]\\\\d{6}|[2-5]\\\\d{5}\", , , , , , , [6, 7, 9]], [, , \"(?:2(?:16|[2-9]\\\\d{3})|[3-5][1-8]\\\\d{3})\\\\d{4}|(?:2|[3-5][1-8])1[67]\\\\d{3}|[3-5][1-8]16\\\\d\\\\d\", , , , \"221234567\"], [, , \"909[1-9]\\\\d{5}|9(?:0[1-8]|1[0-24-9]|[45]\\\\d)\\\\d{6}\", , , , \"912123456\", , , [9]], [, , \"800\\\\d{6}\", , , , \"800123456\", , , [9]], [, , \"9(?:00|[78]\\\\d)\\\\d{6}\", , , , \"900123456\", , , [9]], [, , \"8[5-9]\\\\d{7}\", , , , \"850123456\",\n, , [9]], [, , , , , , , , , [-1]], [, , \"6(?:02|5[0-4]|9[0-6])\\\\d{6}\", , , , \"690123456\", , , [9]], \"SK\", 421, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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{4})(\\\\d{3})\", \"$1 $2\", [\"909\", \"9090\"], \"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})\",\n\"$1/$2 $3 $4\", [\"[3-5]\"], \"0$1\"]], [[, \"(\\\\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\"]], [, , \"9090\\\\d{3}\", , , , \"9090123\", , , [7]], , , [, , \"9090\\\\d{3}|(?:602|8(?:00|[5-9]\\\\d)|9(?:00|[78]\\\\d))\\\\d{6}\",\n, , , , , , [7, 9]], [, , \"96\\\\d{7}\", , , , \"961234567\", , , [9]], , , [, , , , , , , , , [-1]]], SL:[, [, , \"(?:[2378]\\\\d|99)\\\\d{6}\", , , , , , , [8], [6]], [, , \"22\\\\d{6}\", , , , \"22221234\", , , , [6]], [, , \"(?:25|3[0134]|7[5-9]|8[08]|99)\\\\d{6}\", , , , \"25123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"SL\", 232, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{6})\", \"$1 $2\", [\"[237-9]\"], \"(0$1)\"]], , [, , ,\n, , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SM:[, [, , \"(?:0549|[5-7]\\\\d)\\\\d{6}\", , , , , , , [8, 10], [6]], [, , \"0549(?:8[0157-9]|9\\\\d)\\\\d{4}\", , , , \"0549886377\", , , [10], [6]], [, , \"6[16]\\\\d{6}\", , , , \"66661212\", , , [8]], [, , , , , , , , , [-1]], [, , \"7[178]\\\\d{6}\", , , , \"71123456\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"5[158]\\\\d{6}\", , , , \"58001110\", , , [8]], \"SM\", 378, \"00\", , , , \"([89]\\\\d{5})$\",\n\"0549$1\", , , [[, \"(\\\\d{6})\", \"$1\", [\"[89]\"]], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[5-7]\"]], [, \"(\\\\d{4})(\\\\d{6})\", \"$1 $2\", [\"0\"]]], [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[5-7]\"]], [, \"(\\\\d{4})(\\\\d{6})\", \"$1 $2\", [\"0\"]]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SN:[, [, , \"(?:[378]\\\\d{4}|93330)\\\\d{4}\", , , , , , , [9]], [, , \"3(?:0(?:1[0-2]|80)|282|3(?:8[1-9]|9[3-9])|611)\\\\d{5}\", , , ,\n\"301012345\"], [, , \"7(?:[06-8]\\\\d|21|90)\\\\d{6}\", , , , \"701234567\"], [, , \"800\\\\d{6}\", , , , \"800123456\"], [, , \"88[4689]\\\\d{6}\", , , , \"884123456\"], [, , \"81[02468]\\\\d{6}\", , , , \"810123456\"], [, , , , , , , , , [-1]], [, , \"93330\\\\d{4}|3(?:392|9[01]\\\\d)\\\\d{5}\", , , , \"933301234\"], \"SN\", 221, \"00\", , , , , , , , [[, \"(\\\\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]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]],\n[, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SO:[, [, , \"[346-9]\\\\d{8}|[12679]\\\\d{7}|(?:[1-4]\\\\d|59)\\\\d{5}|[1348]\\\\d{5}\", , , , , , , [6, 7, 8, 9]], [, , \"(?:1\\\\d|2[0-79]|3[0-46-8]|4[0-7]|59)\\\\d{5}|(?:[134]\\\\d|8[125])\\\\d{4}\", , , , \"4012345\", , , [6, 7]], [, , \"28\\\\d{5}|(?:6[1-9]|79)\\\\d{6,7}|(?:15|24|(?:3[59]|4[89]|8[08])\\\\d|60|7[1-8]|9(?:0[67]|[2-9]))\\\\d{6}\", , , , \"71123456\", , , [7, 8, 9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , ,\n, , [-1]], [, , , , , , , , , [-1]], \"SO\", 252, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{4})\", \"$1 $2\", [\"8[125]\"]], [, \"(\\\\d{6})\", \"$1\", [\"[134]\"]], [, \"(\\\\d)(\\\\d{6})\", \"$1 $2\", [\"1|2[0-79]|3[0-46-8]|4[0-7]|59\"]], [, \"(\\\\d)(\\\\d{7})\", \"$1 $2\", [\"24|[67]\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[348]|64|79[0-8]|90\"]], [, \"(\\\\d{2})(\\\\d{5,7})\", \"$1 $2\", [\"1|28|6[1-35-9]|799|9[2-9]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , ,\n, [-1]]], SR:[, [, , \"(?:[2-5]|68|[78]\\\\d)\\\\d{5}\", , , , , , , [6, 7]], [, , \"(?:2[1-3]|3[0-7]|(?:4|68)\\\\d|5[2-58])\\\\d{4}\", , , , \"211234\"], [, , \"(?:7[124-7]|8[125-9])\\\\d{5}\", , , , \"7412345\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"56\\\\d{4}\", , , , \"561234\", , , [6]], \"SR\", 597, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1-$2-$3\", [\"56\"]], [, \"(\\\\d{3})(\\\\d{3})\", \"$1-$2\", [\"[2-5]\"]], [, \"(\\\\d{3})(\\\\d{4})\",\n\"$1-$2\", [\"[6-8]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SS:[, [, , \"[19]\\\\d{8}\", , , , , , , [9]], [, , \"18\\\\d{7}\", , , , \"181234567\"], [, , \"(?:12|9[1257])\\\\d{7}\", , , , \"977123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"SS\", 211, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[19]\"], \"0$1\"]], , [,\n, , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], ST:[, [, , \"(?:22|9\\\\d)\\\\d{5}\", , , , , , , [7]], [, , \"22\\\\d{5}\", , , , \"2221234\"], [, , \"900[5-9]\\\\d{3}|9(?:0[1-9]|[89]\\\\d)\\\\d{4}\", , , , \"9812345\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"ST\", 239, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[29]\"]]], , [, , , , , , , , , [-1]], , , [,\n, , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SV:[, [, , \"[267]\\\\d{7}|[89]00\\\\d{4}(?:\\\\d{4})?\", , , , , , , [7, 8, 11]], [, , \"2[1-6]\\\\d{6}\", , , , \"21234567\", , , [8]], [, , \"[67]\\\\d{7}\", , , , \"70123456\", , , [8]], [, , \"800\\\\d{4}(?:\\\\d{4})?\", , , , \"8001234\", , , [7, 11]], [, , \"900\\\\d{4}(?:\\\\d{4})?\", , , , \"9001234\", , , [7, 11]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"SV\", 503, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\",\n\"$1 $2\", [\"[89]\"]], [, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[267]\"]], [, \"(\\\\d{3})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"[89]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SX:[, [, , \"7215\\\\d{6}|(?:[58]\\\\d\\\\d|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"7215(?:4[2-8]|8[239]|9[056])\\\\d{4}\", , , , \"7215425678\", , , , [7]], [, , \"7215(?:1[02]|2\\\\d|5[034679]|8[014-8])\\\\d{4}\", , , , \"7215205678\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\",\n, , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"SX\", 1, \"011\", \"1\", , , \"1|(5\\\\d{6})$\", \"721$1\", , , , , [, , , , , , , , , [-1]], , \"721\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SY:[, [, , \"[1-39]\\\\d{8}|[1-5]\\\\d{7}\", , , , , , , [8, 9], [6, 7]], [, , \"[12]1\\\\d{6,7}|(?:1(?:[2356]|4\\\\d)|2[235]|3(?:[13]\\\\d|4)|4[13]|5[1-3])\\\\d{6}\",\n, , , \"112345678\", , , , [6, 7]], [, , \"9(?:22|[3-589]\\\\d|6[024-9])\\\\d{6}\", , , , \"944567890\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"SY\", 963, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , ,\n, , , , , , [-1]]], SZ:[, [, , \"0800\\\\d{4}|(?:[237]\\\\d|900)\\\\d{6}\", , , , , , , [8, 9]], [, , \"[23][2-5]\\\\d{6}\", , , , \"22171234\", , , [8]], [, , \"7[6-9]\\\\d{6}\", , , , \"76123456\", , , [8]], [, , \"0800\\\\d{4}\", , , , \"08001234\", , , [8]], [, , \"900\\\\d{6}\", , , , \"900012345\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"70\\\\d{6}\", , , , \"70012345\", , , [8]], \"SZ\", 268, \"00\", , , , , , , , [[, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[0237]\"]], [, \"(\\\\d{5})(\\\\d{4})\", \"$1 $2\", [\"9\"]]], ,\n[, , , , , , , , , [-1]], , , [, , \"0800\\\\d{4}\", , , , , , , [8]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], TA:[, [, , \"8\\\\d{3}\", , , , , , , [4]], [, , \"8\\\\d{3}\", , , , \"8999\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"TA\", 290, \"00\", , , , , , , , , , [, , , , , , , , , [-1]], , \"8\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]],\nTC:[, [, , \"(?:[58]\\\\d\\\\d|649|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"649(?:712|9(?:4\\\\d|50))\\\\d{4}\", , , , \"6497121234\", , , , [7]], [, , \"649(?:2(?:3[129]|4[1-7])|3(?:3[1-389]|4[1-8])|4[34][1-3])\\\\d{4}\", , , , \"6492311234\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002345678\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002345678\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , \"64971[01]\\\\d{4}\", , , , \"6497101234\", , , , [7]],\n\"TC\", 1, \"011\", \"1\", , , \"1|([2-479]\\\\d{6})$\", \"649$1\", , , , , [, , , , , , , , , [-1]], , \"649\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], TD:[, [, , \"(?:22|[69]\\\\d|77)\\\\d{6}\", , , , , , , [8]], [, , \"22(?:[37-9]0|5[0-5]|6[89])\\\\d{4}\", , , , \"22501234\"], [, , \"(?:6[023568]|77|9\\\\d)\\\\d{6}\", , , , \"63012345\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"TD\", 235, \"00|16\",\n, , , , , \"00\", , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[2679]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], TG:[, [, , \"[279]\\\\d{7}\", , , , , , , [8]], [, , \"2(?:2[2-7]|3[23]|4[45]|55|6[67]|77)\\\\d{5}\", , , , \"22212345\"], [, , \"(?:7[09]|9[0-36-9])\\\\d{6}\", , , , \"90112345\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"TG\",\n228, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[279]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], TH:[, [, , \"1\\\\d{8,9}|(?:[2-57]|[689]\\\\d)\\\\d{7}\", , , , , , , [8, 9, 10]], [, , \"(?:2\\\\d|3[2-9]|4[2-5]|5[2-6]|7[3-7])\\\\d{6}\", , , , \"21234567\", , , [8]], [, , \"(?:14|6[1-6]|[89]\\\\d)\\\\d{7}\", , , , \"812345678\", , , [9]], [, , \"1800\\\\d{6}\", , , , \"1800123456\", , , [10]], [, , \"1900\\\\d{6}\", , , ,\n\"1900123456\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"6[08]\\\\d{7}\", , , , \"601234567\", , , [9]], \"TH\", 66, \"00[1-9]\", \"0\", , , \"0\", , , , [[, \"(\\\\d)(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"2\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3,4})\", \"$1 $2 $3\", [\"14|[3-9]\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"1\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], TJ:[, [, , \"(?:[3-59]\\\\d|77|88)\\\\d{7}\", , ,\n, , , , [9], [3, 5, 6, 7]], [, , \"(?:3(?:1[3-5]|2[245]|3[12]|4[24-7]|5[25]|72)|4(?:46|74|87))\\\\d{6}\", , , , \"372123456\", , , , [3, 5, 6, 7]], [, , \"41[18]\\\\d{6}|(?:5[05]|77|88|9\\\\d)\\\\d{7}\", , , , \"917123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"TJ\", 992, \"810\", \"8\", , , \"8\", , \"8~10\", , [[, \"(\\\\d{6})(\\\\d)(\\\\d{2})\", \"$1 $2 $3\", [\"331\", \"3317\"], , , 1], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{4})\", \"$1 $2 $3\", [\"[34]7|91[78]\"],\n, , 1], [, \"(\\\\d{4})(\\\\d)(\\\\d{4})\", \"$1 $2 $3\", [\"3\"], , , 1], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[457-9]\"], , , 1]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], TK:[, [, , \"[2-47]\\\\d{3,6}\", , , , , , , [4, 5, 6, 7]], [, , \"(?:2[2-4]|[34]\\\\d)\\\\d{2,5}\", , , , \"3101\"], [, , \"7[2-4]\\\\d{2,5}\", , , , \"7290\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , ,\n, , , , [-1]], \"TK\", 690, \"00\", , , , , , , , , , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], TL:[, [, , \"7\\\\d{7}|(?:[2-47]\\\\d|[89]0)\\\\d{5}\", , , , , , , [7, 8]], [, , \"(?:2[1-5]|3[1-9]|4[1-4])\\\\d{5}\", , , , \"2112345\", , , [7]], [, , \"7[3-8]\\\\d{6}\", , , , \"77212345\", , , [8]], [, , \"80\\\\d{5}\", , , , \"8012345\", , , [7]], [, , \"90\\\\d{5}\", , , , \"9012345\", , , [7]], [, , , , , , , , , [-1]], [, , \"70\\\\d{5}\", , , , \"7012345\", , , [7]],\n[, , , , , , , , , [-1]], \"TL\", 670, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[2-489]|70\"]], [, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"7\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], TM:[, [, , \"[1-6]\\\\d{7}\", , , , , , , [8]], [, , \"(?:1(?:2\\\\d|3[1-9])|2(?:22|4[0-35-8])|3(?:22|4[03-9])|4(?:22|3[128]|4\\\\d|6[15])|5(?:22|5[7-9]|6[014-689]))\\\\d{5}\", , , , \"12345678\"], [, , \"6[1-9]\\\\d{6}\", , , , \"66123456\"], [, , , , , , ,\n, , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"TM\", 993, \"810\", \"8\", , , \"8\", , \"8~10\", , [[, \"(\\\\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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], TN:[, [, , \"[2-57-9]\\\\d{7}\", ,\n, , , , , [8]], [, , \"81200\\\\d{3}|(?:3[0-2]|7\\\\d)\\\\d{6}\", , , , \"30010123\"], [, , \"3(?:001|[12]40)\\\\d{4}|(?:(?:[259]\\\\d|4[0-6])\\\\d|3(?:1[1-35]|6[0-4]|91))\\\\d{5}\", , , , \"20123456\"], [, , \"8010\\\\d{4}\", , , , \"80101234\"], [, , \"88\\\\d{6}\", , , , \"88123456\"], [, , \"8[12]10\\\\d{4}\", , , , \"81101234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"TN\", 216, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[2-57-9]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [,\n, , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], TO:[, [, , \"(?:0800|[5-8]\\\\d{3})\\\\d{3}|[2-8]\\\\d{4}\", , , , , , , [5, 7]], [, , \"(?:2\\\\d|3[0-8]|4[0-4]|50|6[09]|7[0-24-69]|8[05])\\\\d{3}\", , , , \"20123\", , , [5]], [, , \"(?:6(?:3[02]|85|90)|7(?:[2-46]0|[578]\\\\d)|8[46-9]\\\\d)\\\\d{4}\", , , , \"7715123\", , , [7]], [, , \"0800\\\\d{3}\", , , , \"0800222\", , , [7]], [, , \"55[04]\\\\d{4}\", , , , \"5501234\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"TO\", 676, \"00\", ,\n, , , , , , [[, \"(\\\\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-8]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], TR:[, [, , \"(?:[2-58]\\\\d\\\\d|900)\\\\d{7}|4\\\\d{6}\", , , , , , , [7, 10]], [, , \"(?:2(?:[13][26]|[28][2468]|[45][268]|[67][246])|3(?:[13][28]|[24-6][2468]|[78][02468]|92)|4(?:[16][246]|[23578][2468]|4[26]))\\\\d{7}\", , , , \"2123456789\",\n, , [10]], [, , \"56161\\\\d{5}|5(?:0[15-7]|1[06]|24|[34]\\\\d|5[1-59]|9[46])\\\\d{7}\", , , , \"5012345678\", , , [10]], [, , \"800\\\\d{7}\", , , , \"8001234567\", , , [10]], [, , \"(?:8[89]8|900)\\\\d{7}\", , , , \"9001234567\", , , [10]], [, , , , , , , , , [-1]], [, , \"592(?:21[12]|461)\\\\d{4}\", , , , \"5922121234\", , , [10]], [, , , , , , , , , [-1]], \"TR\", 90, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d)(\\\\d{3})\", \"$1 $2 $3\", [\"444\"], , , 1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"512|8[0589]|90\"], \"0$1\", ,\n1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"5(?:[0-59]|61)\", \"5(?:[0-59]|616)\", \"5(?:[0-59]|6161)\"], \"0$1\", , 1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[24][1-8]|3[1-9]\"], \"(0$1)\", , 1]], [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"512|8[0589]|90\"], \"0$1\", , 1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"5(?:[0-59]|61)\", \"5(?:[0-59]|616)\", \"5(?:[0-59]|6161)\"], \"0$1\", , 1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[24][1-8]|3[1-9]\"],\n\"(0$1)\", , 1]], [, , \"512\\\\d{7}\", , , , \"5123456789\", , , [10]], , , [, , \"444\\\\d{4}\", , , , , , , [7]], [, , \"(?:444|850\\\\d{3})\\\\d{4}\", , , , \"4441444\"], , , [, , , , , , , , , [-1]]], TT:[, [, , \"(?:[58]\\\\d\\\\d|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"868(?:2(?:01|1[89]|[23]\\\\d|4[0-2])|6(?:0[7-9]|1[02-8]|2[1-9]|[3-69]\\\\d|7[0-79])|82[124])\\\\d{4}\", , , , \"8682211234\", , , , [7]], [, , \"868(?:2(?:6[6-9]|[7-9]\\\\d)|[37](?:0[1-9]|1[02-9]|[2-9]\\\\d)|4[6-9]\\\\d|6(?:20|78|8\\\\d))\\\\d{4}\", , , , \"8682911234\",\n, , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002345678\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002345678\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"TT\", 1, \"011\", \"1\", , , \"1|([2-46-8]\\\\d{6})$\", \"868$1\", , , , , [, , , , , , , , , [-1]], , \"868\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , \"868619\\\\d{4}\", , , , \"8686191234\", , , , [7]]], TV:[, [, , \"(?:2|7\\\\d\\\\d|90)\\\\d{4}\", , , , , , ,\n[5, 6, 7]], [, , \"2[02-9]\\\\d{3}\", , , , \"20123\", , , [5]], [, , \"(?:7[01]\\\\d|90)\\\\d{4}\", , , , \"901234\", , , [6, 7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"TV\", 688, \"00\", , , , , , , , , , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], TW:[, [, , \"(?:[24589]|7\\\\d)\\\\d{8}|[2-8]\\\\d{7}|2\\\\d{6}\", , , , , , , [7, 8, 9, 10]], [, , \"24\\\\d{6,7}|(?:6412|8(?:2(?:3\\\\d|66)|36[24-9]))\\\\d{4}|(?:2[235-8]\\\\d|3[2-9]|4(?:[239]\\\\d|[78])|5[2-8]|6[235-79]|7[1-9]|8[7-9])\\\\d{6}\",\n, , , \"221234567\", , , [8, 9]], [, , \"9[0-8]\\\\d{7}\", , , , \"912345678\", , , [9]], [, , \"80[0-79]\\\\d{6}\", , , , \"800123456\", , , [9]], [, , \"20(?:[013-9]\\\\d\\\\d|2)\\\\d{4}\", , , , \"203123456\", , , [7, 9]], [, , , , , , , , , [-1]], [, , \"99\\\\d{7}\", , , , \"990123456\", , , [9]], [, , \"70\\\\d{8}\", , , , \"7012345678\", , , [10]], \"TW\", 886, \"0(?:0[25-79]|19)\", \"0\", \"#\", , \"0\", , , , [[, \"(\\\\d{2})(\\\\d)(\\\\d{4})\", \"$1 $2 $3\", [\"202\"], \"0$1\"], [, \"(\\\\d)(\\\\d{3,4})(\\\\d{4})\", \"$1 $2 $3\", [\"[25][2-8]|[346]|7[1-9]|8[237-9]\"],\n\"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[258]\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"9\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"7\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"50[0-46-9]\\\\d{6}\", , , , \"500123456\", , , [9]], , , [, , , , , , , , , [-1]]], TZ:[, [, , \"(?:[26-8]\\\\d|41|90)\\\\d{7}\", , , , , , , [9]], [, , \"2[2-8]\\\\d{7}\", , , , \"222345678\"], [, , \"(?:6[2-9]|7[13-9])\\\\d{7}\", , , , \"621234567\"], [, , \"80[08]\\\\d{6}\",\n, , , \"800123456\"], [, , \"90\\\\d{7}\", , , , \"900123456\"], [, , \"8(?:40|6[01])\\\\d{6}\", , , , \"840123456\"], [, , , , , , , , , [-1]], [, , \"41\\\\d{7}\", , , , \"412345678\"], \"TZ\", 255, \"00[056]\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{4})\", \"$1 $2 $3\", [\"[89]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[24]\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[67]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , \"(?:8(?:[04]0|6[01])|90\\\\d)\\\\d{6}\"], [, , , , , , , , , [-1]], , , [,\n, , , , , , , , [-1]]], UA:[, [, , \"[89]\\\\d{9}|[3-9]\\\\d{8}\", , , , , , , [9, 10], [5, 6, 7]], [, , \"(?:3[1-8]|4[13-8]|5[1-7]|6[12459])\\\\d{7}\", , , , \"311234567\", , , [9], [5, 6, 7]], [, , \"(?:50|6[36-8]|7[1-3]|9[1-9])\\\\d{7}\", , , , \"501234567\", , , [9]], [, , \"800[1-8]\\\\d{5,6}\", , , , \"800123456\"], [, , \"900[239]\\\\d{5,6}\", , , , \"900212345\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"89[1-579]\\\\d{6}\", , , , \"891234567\", , , [9]], \"UA\", 380, \"00\", \"0\", , , \"0\", , \"0~0\", , [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\n\"$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{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"4[45][0-5]|5(?:0|6[37])|6(?:[12][018]|[36-8])|7|89|9[1-9]|(?:48|57)[0137-9]\", \"4[45][0-5]|5(?:0|6(?:3[14-7]|7))|6(?:[12][018]|[36-8])|7|89|9[1-9]|(?:48|57)[0137-9]\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d{5})\", \"$1 $2\", [\"[3-6]\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3,4})\", \"$1 $2 $3\", [\"[89]\"], \"0$1\"]],\n, [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], UG:[, [, , \"800\\\\d{6}|(?:[29]0|[347]\\\\d)\\\\d{7}\", , , , , , , [9], [5, 6, 7]], [, , \"(?:20(?:(?:(?:[0147]\\\\d|5[0-4])\\\\d|2(?:40|[5-9]\\\\d)|3(?:0[67]|2[0-4])|810)\\\\d|6(?:00[0-2]|[15-9]\\\\d\\\\d|30[0-4]))|[34]\\\\d{5})\\\\d{3}\", , , , \"312345678\", , , , [5, 6, 7]], [, , \"7260\\\\d{5}|7(?:[0157-9]\\\\d|20|4[0-4])\\\\d{6}\", , , , \"712345678\"], [, , \"800[1-3]\\\\d{5}\", , , , \"800123456\"], [, , \"90[1-3]\\\\d{6}\",\n, , , \"901123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"UG\", 256, \"00[057]\", \"0\", , , \"0\", , , , [[, \"(\\\\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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], US:[, [, , \"[2-9]\\\\d{9}\", , , , , , , [10], [7]], [, , \"(?: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[0135]|3[0-24679]|4[167]|5[12]|6[014]|8[056])|4(?:0[124-9]|1[02-579]|2[3-5]|3[0245]|4[0235]|58|6[39]|7[0589]|8[04])|5(?:0[1-57-9]|1[0235-8]|20|3[0149]|4[01]|5[19]|6[1-47]|7[013-5]|8[056])|6(?:0[1-35-9]|1[024-9]|2[03689]|[34][016]|5[017]|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[02-59]|8[156])|8(?:0[1-68]|1[02-8]|2[08]|3[0-28]|4[3578]|5[046-9]|6[02-5]|7[028])|9(?:0[1346-9]|1[02-9]|2[0589]|3[0146-8]|4[0179]|5[12469]|7[0-389]|8[04-69]))[2-9]\\\\d{6}\",\n, , , \"2015550123\", , , , [7]], [, , \"(?: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[0135]|3[0-24679]|4[167]|5[12]|6[014]|8[056])|4(?:0[124-9]|1[02-579]|2[3-5]|3[0245]|4[0235]|58|6[39]|7[0589]|8[04])|5(?:0[1-57-9]|1[0235-8]|20|3[0149]|4[01]|5[19]|6[1-47]|7[013-5]|8[056])|6(?:0[1-35-9]|1[024-9]|2[03689]|[34][016]|5[017]|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[02-59]|8[156])|8(?:0[1-68]|1[02-8]|2[08]|3[0-28]|4[3578]|5[046-9]|6[02-5]|7[028])|9(?:0[1346-9]|1[02-9]|2[0589]|3[0146-8]|4[0179]|5[12469]|7[0-389]|8[04-69]))[2-9]\\\\d{6}\",\n, , , \"2015550123\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002345678\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002345678\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"US\", 1, \"011\", \"1\", , , \"1\", , , 1, [[, \"(\\\\d{3})(\\\\d{4})\", \"$1-$2\", [\"[2-9]\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"($1) $2-$3\", [\"[2-9]\"], , , 1]], [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"[2-9]\"]]], [, , , , , , , , , [-1]], 1, , [,\n, , , , , , , , [-1]], [, , \"710[2-9]\\\\d{6}\", , , , \"7102123456\"], , , [, , , , , , , , , [-1]]], UY:[, [, , \"(?:[249]\\\\d\\\\d|80)\\\\d{5}|9\\\\d{6}\", , , , , , , [7, 8]], [, , \"(?:2\\\\d|4[2-7])\\\\d{6}\", , , , \"21231234\", , , [8], [7]], [, , \"9[1-9]\\\\d{6}\", , , , \"94231234\", , , [8]], [, , \"80[05]\\\\d{4}\", , , , \"8001234\", , , [7]], [, , \"90[0-8]\\\\d{4}\", , , , \"9001234\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"UY\", 598, \"0(?:0|1[3-9]\\\\d)\", \"0\", \" int. \", ,\n\"0\", , \"00\", , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"8|90\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"9\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[24]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], UZ:[, [, , \"[679]\\\\d{8}\", , , , , , , [9]], [, , \"78(?:1(?:13|2[02]|50)|2(?:10|2[139]|98)|77[01])\\\\d{4}|(?:6(?:1(?:22|3[124]|4[1-4]|5[1-3578]|64)|2(?:22|3[0-57-9]|41)|5(?:22|3[3-7]|5[024-8])|6\\\\d\\\\d|7(?:[23]\\\\d|7[69])|9(?:22|4[1-8]|6[135]))|7(?:0(?:5[4-9]|6[0146]|7[124-6]|9[135-8])|1[12]\\\\d|2(?:22|3[13-57-9]|4[1-3579]|5[14])|3(?:2\\\\d|3[1578]|4[1-35-7]|5[1-57]|61)|4(?:2\\\\d|3[1-579]|7[1-79])|5(?:22|5[1-9]|6[1457])|6(?:22|3[12457]|4[13-8])|9(?:22|5[1-9])))\\\\d{5}\",\n, , , \"669050123\"], [, , \"(?:6(?:1(?:2(?:2[01]|98)|35[0-4]|50\\\\d|61[23]|7(?:[01][017]|4\\\\d|55|9[5-9]))|2(?:(?:11|7\\\\d)\\\\d|2(?:[12]1|9[01379])|5(?:[126]\\\\d|3[0-4]))|5(?:19[01]|2(?:27|9[26])|(?:30|59|7\\\\d)\\\\d)|6(?:2(?:1[5-9]|2[0367]|38|41|52|60)|(?:3[79]|9[0-3])\\\\d|4(?:56|83)|7(?:[07]\\\\d|1[017]|3[07]|4[047]|5[057]|67|8[0178]|9[79]))|7(?:2(?:24|3[237]|4[5-9]|7[15-8])|5(?:7[12]|8[0589])|7(?:0\\\\d|[39][07])|9(?:0\\\\d|7[079]))|9(?:2(?:1[1267]|3[01]|5\\\\d|7[0-4])|(?:5[67]|7\\\\d)\\\\d|6(?:2[0-26]|8\\\\d)))|7(?:0\\\\d{3}|1(?:13[01]|6(?:0[47]|1[67]|66)|71[3-69]|98\\\\d)|2(?:2(?:2[79]|95)|3(?:2[5-9]|6[0-6])|57\\\\d|7(?:0\\\\d|1[17]|2[27]|3[37]|44|5[057]|66|88))|3(?:2(?:1[0-6]|21|3[469]|7[159])|(?:33|9[4-6])\\\\d|5(?:0[0-4]|5[579]|9\\\\d)|7(?:[0-3579]\\\\d|4[0467]|6[67]|8[078]))|4(?:2(?:29|5[0257]|6[0-7]|7[1-57])|5(?:1[0-4]|8\\\\d|9[5-9])|7(?:0\\\\d|1[024589]|2[0-27]|3[0137]|[46][07]|5[01]|7[5-9]|9[079])|9(?:7[015-9]|[89]\\\\d))|5(?:112|2(?:0\\\\d|2[29]|[49]4)|3[1568]\\\\d|52[6-9]|7(?:0[01578]|1[017]|[23]7|4[047]|[5-7]\\\\d|8[78]|9[079]))|6(?:2(?:2[1245]|4[2-4])|39\\\\d|41[179]|5(?:[349]\\\\d|5[0-2])|7(?:0[017]|[13]\\\\d|22|44|55|67|88))|9(?:22[128]|3(?:2[0-4]|7\\\\d)|57[02569]|7(?:2[05-9]|3[37]|4\\\\d|60|7[2579]|87|9[07])))|9[0-57-9]\\\\d{3})\\\\d{4}\",\n, , , \"912345678\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"UZ\", 998, \"810\", \"8\", , , \"8\", , \"8~10\", , [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[679]\"], \"8 $1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], VA:[, [, , \"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,\n10, 11, 12]], [, , \"06698\\\\d{1,6}\", , , , \"0669812345\", , , [6, 7, 8, 9, 10, 11]], [, , \"3[1-9]\\\\d{8}|3[2-9]\\\\d{7}\", , , , \"3123456789\", , , [9, 10]], [, , \"80(?:0\\\\d{3}|3)\\\\d{3}\", , , , \"800123456\", , , [6, 9]], [, , \"(?:0878\\\\d\\\\d|89(?:2|4[5-9]\\\\d))\\\\d{3}|89[45][0-4]\\\\d\\\\d|(?:1(?:44|6[346])|89(?:5[5-9]|9))\\\\d{6}\", , , , \"899123456\", , , [6, 8, 9, 10]], [, , \"84(?:[08]\\\\d{3}|[17])\\\\d{3}\", , , , \"848123456\", , , [6, 9]], [, , \"1(?:78\\\\d|99)\\\\d{6}\", , , , \"1781234567\", , , [9, 10]], [, , \"55\\\\d{8}\",\n, , , \"5512345678\", , , [10]], \"VA\", 39, \"00\", , , , , , , , , , [, , , , , , , , , [-1]], , \"06698\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , \"3[2-8]\\\\d{9,10}\", , , , \"33101234501\", , , [11, 12]]], VC:[, [, , \"(?:[58]\\\\d\\\\d|784|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"784(?:266|3(?:6[6-9]|7\\\\d|8[0-24-6])|4(?:38|5[0-36-8]|8[0-8])|5(?:55|7[0-2]|93)|638|784)\\\\d{4}\", , , , \"7842661234\", , , , [7]], [, , \"784(?:4(?:3[0-5]|5[45]|89|9[0-8])|5(?:2[6-9]|3[0-4]))\\\\d{4}\", , , , \"7844301234\",\n, , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002345678\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002345678\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"VC\", 1, \"011\", \"1\", , , \"1|([2-7]\\\\d{6})$\", \"784$1\", , , , , [, , , , , , , , , [-1]], , \"784\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], VE:[, [, , \"[89]00\\\\d{7}|(?:[24]\\\\d|50)\\\\d{8}\", , , , , , , [10], [7]], [, , \"(?:2(?:12|3[457-9]|[467]\\\\d|[58][1-9]|9[1-6])|50[01])\\\\d{7}\",\n, , , \"2121234567\", , , , [7]], [, , \"4(?:1[24-8]|2[46])\\\\d{7}\", , , , \"4121234567\"], [, , \"800\\\\d{7}\", , , , \"8001234567\"], [, , \"900\\\\d{7}\", , , , \"9001234567\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"VE\", 58, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{7})\", \"$1-$2\", [\"[24589]\"], \"0$1\", \"$CC $1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], VG:[, [, , \"(?:284|[58]\\\\d\\\\d|900)\\\\d{7}\",\n, , , , , , [10], [7]], [, , \"284496[0-5]\\\\d{3}|284(?:229|4(?:22|9[45])|774|8(?:52|6[459]))\\\\d{4}\", , , , \"2842291234\", , , , [7]], [, , \"284496[6-9]\\\\d{3}|284(?:3(?:0[0-3]|4[0-7]|68|9[34])|4(?:4[0-6]|68|99)|54[0-57])\\\\d{4}\", , , , \"2843001234\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002345678\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002345678\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"VG\", 1, \"011\",\n\"1\", , , \"1|([2-578]\\\\d{6})$\", \"284$1\", , , , , [, , , , , , , , , [-1]], , \"284\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], VI:[, [, , \"[58]\\\\d{9}|(?:34|90)0\\\\d{7}\", , , , , , , [10], [7]], [, , \"340(?:2(?:0[12]|2[06-8]|4[49]|77)|3(?:32|44)|4(?:22|7[34]|89)|5(?:1[34]|55)|6(?:2[56]|4[23]|77|9[023])|7(?:1[2-57-9]|27|7\\\\d)|884|998)\\\\d{4}\", , , , \"3406421234\", , , , [7]], [, , \"340(?:2(?:0[12]|2[06-8]|4[49]|77)|3(?:32|44)|4(?:22|7[34]|89)|5(?:1[34]|55)|6(?:2[56]|4[23]|77|9[023])|7(?:1[2-57-9]|27|7\\\\d)|884|998)\\\\d{4}\",\n, , , \"3406421234\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002345678\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002345678\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"VI\", 1, \"011\", \"1\", , , \"1|([2-9]\\\\d{6})$\", \"340$1\", , 1, , , [, , , , , , , , , [-1]], , \"340\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], VN:[, [, , \"[12]\\\\d{9}|[135-9]\\\\d{8}|[16]\\\\d{7}|[16-8]\\\\d{6}\",\n, , , , , , [7, 8, 9, 10]], [, , \"2(?:0[3-9]|1[0-689]|2[0-25-9]|3[2-9]|4[2-8]|5[124-9]|6[0-39]|7[0-7]|8[2-79]|9[0-4679])\\\\d{7}\", , , , \"2101234567\", , , [10]], [, , \"(?:52[238]|8(?:79|9[689])|99[013-9])\\\\d{6}|(?:3\\\\d|5[689]|7[06-9]|8[1-68]|9[0-8])\\\\d{7}\", , , , \"912345678\", , , [9]], [, , \"1(?:228\\\\d{4}|800\\\\d{4,6})\", , , , \"1800123456\", , , [8, 9, 10]], [, , \"1900\\\\d{4,6}\", , , , \"1900123456\", , , [8, 9, 10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"672\\\\d{6}\", , , , \"672012345\",\n, , [9]], \"VN\", 84, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[17]99\"], \"0$1\", , 1], [, \"(\\\\d{2})(\\\\d{5})\", \"$1 $2\", [\"80\"], \"0$1\", , 1], [, \"(\\\\d{3})(\\\\d{4,5})\", \"$1 $2\", [\"69\"], \"0$1\", , 1], [, \"(\\\\d{4})(\\\\d{4,6})\", \"$1 $2\", [\"1\"], , , 1], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[69]\"], \"0$1\", , 1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[3578]\"], \"0$1\", , 1], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"2[48]\"], \"0$1\", , 1], [, \"(\\\\d{3})(\\\\d{4})(\\\\d{3})\",\n\"$1 $2 $3\", [\"2\"], \"0$1\", , 1]], [[, \"(\\\\d{2})(\\\\d{5})\", \"$1 $2\", [\"80\"], \"0$1\", , 1], [, \"(\\\\d{4})(\\\\d{4,6})\", \"$1 $2\", [\"1\"], , , 1], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[69]\"], \"0$1\", , 1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[3578]\"], \"0$1\", , 1], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"2[48]\"], \"0$1\", , 1], [, \"(\\\\d{3})(\\\\d{4})(\\\\d{3})\", \"$1 $2 $3\", [\"2\"], \"0$1\", , 1]], [, , , , , , , , , [-1]], , , [, , \"[17]99\\\\d{4}|69\\\\d{5,6}\", , , , , , , [7, 8]], [, , \"(?:[17]99|80\\\\d)\\\\d{4}|69\\\\d{5,6}\",\n, , , \"1992000\", , , [7, 8]], , , [, , , , , , , , , [-1]]], VU:[, [, , \"(?:[23]\\\\d|[48]8)\\\\d{3}|(?:[57]\\\\d|90)\\\\d{5}\", , , , , , , [5, 7]], [, , \"(?:38[0-8]|48[4-9])\\\\d\\\\d|(?:2[02-9]|3[4-7]|88)\\\\d{3}\", , , , \"22123\", , , [5]], [, , \"57[2-5]\\\\d{4}|(?:5[0-689]|7[013-7])\\\\d{5}\", , , , \"5912345\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"90[1-9]\\\\d{4}\", , , , \"9010123\", , , [7]], \"VU\", 678, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\",\n\"$1 $2\", [\"[579]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"(?:3[03]|900\\\\d)\\\\d{3}\", , , , \"30123\"], , , [, , , , , , , , , [-1]]], WF:[, [, , \"(?:[45]0|68|72|8\\\\d)\\\\d{4}\", , , , , , , [6]], [, , \"(?:50|68|72)\\\\d{4}\", , , , \"501234\"], [, , \"(?:50|68|72|8[23])\\\\d{4}\", , , , \"501234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"WF\", 681, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\n\"$1 $2 $3\", [\"[4-8]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , \"[48]0\\\\d{4}\", , , , \"401234\"]], WS:[, [, , \"[2-6]\\\\d{4}|8\\\\d{5}(?:\\\\d{4})?|[78]\\\\d{6}\", , , , , , , [5, 6, 7, 10]], [, , \"(?:[2-5]\\\\d|6[1-9])\\\\d{3}\", , , , \"22123\", , , [5]], [, , \"(?:7[25-7]|8(?:[3-7]|9\\\\d{3}))\\\\d{5}\", , , , \"7212345\", , , [7, 10]], [, , \"800\\\\d{3}\", , , , \"800123\", , , [6]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , ,\n, , , , , [-1]], \"WS\", 685, \"0\", , , , , , , , [[, \"(\\\\d{5})\", \"$1\", [\"[2-6]\"]], [, \"(\\\\d{3})(\\\\d{3,7})\", \"$1 $2\", [\"8\"]], [, \"(\\\\d{2})(\\\\d{5})\", \"$1 $2\", [\"7\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], XK:[, [, , \"[23]\\\\d{7,8}|(?:4\\\\d\\\\d|[89]00)\\\\d{5}\", , , , , , , [8, 9]], [, , \"(?:2[89]|39)0\\\\d{6}|[23][89]\\\\d{6}\", , , , \"28012345\"], [, , \"4[3-79]\\\\d{6}\", , , , \"43201234\", , , [8]], [, , \"800\\\\d{5}\", , , , \"80001234\", ,\n, [8]], [, , \"900\\\\d{5}\", , , , \"90001234\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"XK\", 383, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], YE:[, [, , \"(?:1|7\\\\d)\\\\d{7}|[1-7]\\\\d{6}\",\n, , , , , , [7, 8, 9], [6]], [, , \"17\\\\d{6}|(?:[12][2-68]|3[2358]|4[2-58]|5[2-6]|6[3-58]|7[24-68])\\\\d{5}\", , , , \"1234567\", , , [7, 8], [6]], [, , \"7[0137]\\\\d{7}\", , , , \"712345678\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"YE\", 967, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d)(\\\\d{3})(\\\\d{3,4})\", \"$1 $2 $3\", [\"[1-6]|7[24-68]\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"7\"], \"0$1\"]], , [, , , ,\n, , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], YT:[, [, , \"80\\\\d{7}|(?:26|63)9\\\\d{6}\", , , , , , , [9]], [, , \"269(?:0[67]|5[01]|6\\\\d|[78]0)\\\\d{4}\", , , , \"269601234\"], [, , \"639(?:0[0-79]|1[019]|[267]\\\\d|3[09]|[45]0|9[04-79])\\\\d{4}\", , , , \"639012345\"], [, , \"80\\\\d{7}\", , , , \"801234567\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"YT\", 262, \"00\", \"0\", , , \"0\", , , , , , [, , ,\n, , , , , , [-1]], , \"269|63\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], ZA:[, [, , \"[1-9]\\\\d{8}|8\\\\d{4,7}\", , , , , , , [5, 6, 7, 8, 9]], [, , \"(?:1[0-8]|2[1-378]|3[1-69]|4\\\\d|5[1346-8])\\\\d{7}\", , , , \"101234567\", , , [9]], [, , \"8[1-4]\\\\d{3,7}|(?:6\\\\d|7[0-46-9]|85)\\\\d{7}\", , , , \"711234567\"], [, , \"80\\\\d{7}\", , , , \"801234567\", , , [9]], [, , \"(?:86[2-9]|9[0-2]\\\\d)\\\\d{6}\", , , , \"862345678\", , , [9]], [, , \"860\\\\d{6}\", , , , \"860123456\", , , [9]], [, , ,\n, , , , , , [-1]], [, , \"87\\\\d{7}\", , , , \"871234567\", , , [9]], \"ZA\", 27, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"861\\\\d{6}\", , , , \"861123456\", , , [9]], , , [, , , , , , , , , [-1]]], ZM:[, [, , \"800\\\\d{6}|(?:21|76|9\\\\d)\\\\d{7}\",\n, , , , , , [9], [6]], [, , \"21[1-8]\\\\d{6}\", , , , \"211234567\", , , , [6]], [, , \"(?:76|9[5-8])\\\\d{7}\", , , , \"955123456\"], [, , \"800\\\\d{6}\", , , , \"800123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"ZM\", 260, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{3})\", \"$1 $2\", [\"[1-9]\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[28]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{7})\", \"$1 $2\", [\"[79]\"], \"0$1\"]], [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\",\n[\"[28]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{7})\", \"$1 $2\", [\"[79]\"], \"0$1\"]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], ZW:[, [, , \"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], [3, 4]], [, , \"(?:1(?:(?:3\\\\d|9)\\\\d|[4-8])|2(?:(?:(?:0(?:2[014]|5)|(?:2[0157]|31|84|9)\\\\d\\\\d|[56](?:[14]\\\\d\\\\d|20)|7(?:[089]|2[03]|[35]\\\\d\\\\d))\\\\d|4(?:2\\\\d\\\\d|8))\\\\d|1(?:2|[39]\\\\d{4}))|3(?:(?:123|(?:29\\\\d|92)\\\\d)\\\\d\\\\d|7(?:[19]|[56]\\\\d))|5(?:0|1[2-478]|26|[37]2|4(?:2\\\\d{3}|83)|5(?:25\\\\d\\\\d|[78])|[689]\\\\d)|6(?:(?:[16-8]21|28|52[013])\\\\d\\\\d|[39])|8(?:[1349]28|523)\\\\d\\\\d)\\\\d{3}|(?:4\\\\d\\\\d|9[2-9])\\\\d{4,5}|(?:(?:2(?:(?:(?:0|8[146])\\\\d|7[1-7])\\\\d|2(?:[278]\\\\d|92)|58(?:2\\\\d|3))|3(?:[26]|9\\\\d{3})|5(?:4\\\\d|5)\\\\d\\\\d)\\\\d|6(?:(?:(?:[0-246]|[78]\\\\d)\\\\d|37)\\\\d|5[2-8]))\\\\d\\\\d|(?:2(?:[569]\\\\d|8[2-57-9])|3(?:[013-59]\\\\d|8[37])|6[89]8)\\\\d{3}\",\n, , , \"1312345\", , , , [3, 4]], [, , \"7(?:1[2-9]|[37][1-9]|8[2-7])\\\\d{6}\", , , , \"712345678\", , , [9]], [, , \"80(?:[01]\\\\d|20|8[0-8])\\\\d{3}\", , , , \"8001234\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"86(?:1[12]|22|30|44|55|77|8[368])\\\\d{6}\", , , , \"8686123456\", , , [10]], \"ZW\", 263, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\"], [,\n\"(\\\\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})\",\n\"$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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], 800:[, [, , \"\\\\d{8}\", , , , , ,\n, [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"\\\\d{8}\", , , , \"12345678\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"001\", 800, , , , , , , , 1, [[, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], 808:[, [, , \"\\\\d{8}\", , , , , , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , ,\n, , , , , , [-1]], [, , \"\\\\d{8}\", , , , \"12345678\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"001\", 808, , , , , , , , 1, [[, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], 870:[, [, , \"[35-7]\\\\d{8}\", , , , , , , [9]], [, , , , , , , , , [-1]], [, , \"(?:[356]\\\\d|7[6-8])\\\\d{7}\", , , , \"301234567\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , ,\n, , , [-1]], [, , , , , , , , , [-1]], \"001\", 870, , , , , , , , , [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[35-7]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], 878:[, [, , \"10\\\\d{10}\", , , , , , , [12]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"10\\\\d{10}\", , , , \"101234567890\"], \"001\", 878, , , , ,\n, , , 1, [[, \"(\\\\d{2})(\\\\d{5})(\\\\d{5})\", \"$1 $2 $3\", [\"1\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], 881:[, [, , \"[67]\\\\d{8}\", , , , , , , [9]], [, , , , , , , , , [-1]], [, , \"[67]\\\\d{8}\", , , , \"612345678\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"001\", 881, , , , , , , , , [[, \"(\\\\d)(\\\\d{3})(\\\\d{5})\", \"$1 $2 $3\", [\"[67]\"]]], , [,\n, , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], 882:[, [, , \"1\\\\d{6,11}|3\\\\d{6}(?:\\\\d{2,5})?\", , , , , , , [7, 8, 9, 10, 11, 12]], [, , , , , , , , , [-1]], [, , \"3(?:37\\\\d\\\\d|42)\\\\d{4}|3(?:2|47|7\\\\d{3})\\\\d{7}\", , , , \"3421234\", , , [7, 9, 10, 12]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"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})|3(?:45|9\\\\d{3})\\\\d{7}\",\n, , , \"390123456789\"], \"001\", 882, , , , , , , , , [[, \"(\\\\d{2})(\\\\d{5})\", \"$1 $2\", [\"16|342\"]], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{4})\", \"$1 $2 $3\", [\"1\"]], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{3})\", \"$1 $2 $3\", [\"3[23]\"]], [, \"(\\\\d{2})(\\\\d{3,4})(\\\\d{4})\", \"$1 $2 $3\", [\"1\"]], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"34[57]\"]], [, \"(\\\\d{3})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"34\"]], [, \"(\\\\d{2})(\\\\d{4,5})(\\\\d{5})\", \"$1 $2 $3\", [\"[13]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]],\n, , [, , \"348[57]\\\\d{7}\", , , , \"34851234567\", , , [11]]], 883:[, [, , \"51\\\\d{7}(?:\\\\d{3})?\", , , , , , , [9, 12]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"51[013]0\\\\d{8}|5100\\\\d{5}\", , , , \"510012345\"], \"001\", 883, , , , , , , , 1, [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"510\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3 $4\", [\"510\"]], [, \"(\\\\d{4})(\\\\d{4})(\\\\d{4})\",\n\"$1 $2 $3\", [\"5\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], 888:[, [, , \"\\\\d{11}\", , , , , , , [11]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"001\", 888, , , , , , , , 1, [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{5})\", \"$1 $2 $3\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"\\\\d{11}\",\n, , , \"12345678901\"], , , [, , , , , , , , , [-1]]], 979:[, [, , \"\\\\d{9}\", , , , , , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"\\\\d{9}\", , , , \"123456789\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"001\", 979, , , , , , , , 1, [[, \"(\\\\d)(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]]};\n/*\n\n Copyright (C) 2010 The Libphonenumber Authors.\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n*/\ni18n.phonenumbers.PhoneNumberUtil = function() {\n  this.regionToMetadataMap = {};\n};\ngoog.addSingletonGetter(i18n.phonenumbers.PhoneNumberUtil);\ni18n.phonenumbers.Error = {INVALID_COUNTRY_CODE:\"Invalid country calling code\", NOT_A_NUMBER:\"The string supplied did not seem to be a phone number\", TOO_SHORT_AFTER_IDD:\"Phone number too short after IDD\", TOO_SHORT_NSN:\"The string supplied is too short to be a phone number\", TOO_LONG:\"The string supplied is too long to be a phone number\"};\ni18n.phonenumbers.PhoneNumberUtil.NANPA_COUNTRY_CODE_ = 1;\ni18n.phonenumbers.PhoneNumberUtil.MIN_LENGTH_FOR_NSN_ = 2;\ni18n.phonenumbers.PhoneNumberUtil.MAX_LENGTH_FOR_NSN_ = 17;\ni18n.phonenumbers.PhoneNumberUtil.MAX_LENGTH_COUNTRY_CODE_ = 3;\ni18n.phonenumbers.PhoneNumberUtil.MAX_INPUT_STRING_LENGTH_ = 250;\ni18n.phonenumbers.PhoneNumberUtil.UNKNOWN_REGION_ = \"ZZ\";\ni18n.phonenumbers.PhoneNumberUtil.COLOMBIA_MOBILE_TO_FIXED_LINE_PREFIX_ = \"3\";\ni18n.phonenumbers.PhoneNumberUtil.MOBILE_TOKEN_MAPPINGS_ = {54:\"9\"};\ni18n.phonenumbers.PhoneNumberUtil.GEO_MOBILE_COUNTRIES_ = [52, 54, 55];\ni18n.phonenumbers.PhoneNumberUtil.PLUS_SIGN = \"+\";\ni18n.phonenumbers.PhoneNumberUtil.STAR_SIGN_ = \"*\";\ni18n.phonenumbers.PhoneNumberUtil.RFC3966_EXTN_PREFIX_ = \";ext=\";\ni18n.phonenumbers.PhoneNumberUtil.RFC3966_PREFIX_ = \"tel:\";\ni18n.phonenumbers.PhoneNumberUtil.RFC3966_PHONE_CONTEXT_ = \";phone-context=\";\ni18n.phonenumbers.PhoneNumberUtil.RFC3966_ISDN_SUBADDRESS_ = \";isub=\";\ni18n.phonenumbers.PhoneNumberUtil.DIGIT_MAPPINGS = {0:\"0\", 1:\"1\", 2:\"2\", 3:\"3\", 4:\"4\", 5:\"5\", 6:\"6\", 7:\"7\", 8:\"8\", 9:\"9\", \"\\uff10\":\"0\", \"\\uff11\":\"1\", \"\\uff12\":\"2\", \"\\uff13\":\"3\", \"\\uff14\":\"4\", \"\\uff15\":\"5\", \"\\uff16\":\"6\", \"\\uff17\":\"7\", \"\\uff18\":\"8\", \"\\uff19\":\"9\", \"\\u0660\":\"0\", \"\\u0661\":\"1\", \"\\u0662\":\"2\", \"\\u0663\":\"3\", \"\\u0664\":\"4\", \"\\u0665\":\"5\", \"\\u0666\":\"6\", \"\\u0667\":\"7\", \"\\u0668\":\"8\", \"\\u0669\":\"9\", \"\\u06f0\":\"0\", \"\\u06f1\":\"1\", \"\\u06f2\":\"2\", \"\\u06f3\":\"3\", \"\\u06f4\":\"4\", \"\\u06f5\":\"5\", \"\\u06f6\":\"6\", \"\\u06f7\":\"7\",\n\"\\u06f8\":\"8\", \"\\u06f9\":\"9\"};\ni18n.phonenumbers.PhoneNumberUtil.DIALLABLE_CHAR_MAPPINGS_ = {0:\"0\", 1:\"1\", 2:\"2\", 3:\"3\", 4:\"4\", 5:\"5\", 6:\"6\", 7:\"7\", 8:\"8\", 9:\"9\", \"+\":i18n.phonenumbers.PhoneNumberUtil.PLUS_SIGN, \"*\":\"*\", \"#\":\"#\"};\ni18n.phonenumbers.PhoneNumberUtil.ALPHA_MAPPINGS_ = {A:\"2\", B:\"2\", C:\"2\", D:\"3\", E:\"3\", F:\"3\", G:\"4\", H:\"4\", I:\"4\", J:\"5\", K:\"5\", L:\"5\", M:\"6\", N:\"6\", O:\"6\", P:\"7\", Q:\"7\", R:\"7\", S:\"7\", T:\"8\", U:\"8\", V:\"8\", W:\"9\", X:\"9\", Y:\"9\", Z:\"9\"};\ni18n.phonenumbers.PhoneNumberUtil.ALL_NORMALIZATION_MAPPINGS_ = {0:\"0\", 1:\"1\", 2:\"2\", 3:\"3\", 4:\"4\", 5:\"5\", 6:\"6\", 7:\"7\", 8:\"8\", 9:\"9\", \"\\uff10\":\"0\", \"\\uff11\":\"1\", \"\\uff12\":\"2\", \"\\uff13\":\"3\", \"\\uff14\":\"4\", \"\\uff15\":\"5\", \"\\uff16\":\"6\", \"\\uff17\":\"7\", \"\\uff18\":\"8\", \"\\uff19\":\"9\", \"\\u0660\":\"0\", \"\\u0661\":\"1\", \"\\u0662\":\"2\", \"\\u0663\":\"3\", \"\\u0664\":\"4\", \"\\u0665\":\"5\", \"\\u0666\":\"6\", \"\\u0667\":\"7\", \"\\u0668\":\"8\", \"\\u0669\":\"9\", \"\\u06f0\":\"0\", \"\\u06f1\":\"1\", \"\\u06f2\":\"2\", \"\\u06f3\":\"3\", \"\\u06f4\":\"4\", \"\\u06f5\":\"5\", \"\\u06f6\":\"6\",\n\"\\u06f7\":\"7\", \"\\u06f8\":\"8\", \"\\u06f9\":\"9\", A:\"2\", B:\"2\", C:\"2\", D:\"3\", E:\"3\", F:\"3\", G:\"4\", H:\"4\", I:\"4\", J:\"5\", K:\"5\", L:\"5\", M:\"6\", N:\"6\", O:\"6\", P:\"7\", Q:\"7\", R:\"7\", S:\"7\", T:\"8\", U:\"8\", V:\"8\", W:\"9\", X:\"9\", Y:\"9\", Z:\"9\"};\ni18n.phonenumbers.PhoneNumberUtil.ALL_PLUS_NUMBER_GROUPING_SYMBOLS_ = {0:\"0\", 1:\"1\", 2:\"2\", 3:\"3\", 4:\"4\", 5:\"5\", 6:\"6\", 7:\"7\", 8:\"8\", 9:\"9\", A:\"A\", B:\"B\", C:\"C\", D:\"D\", E:\"E\", F:\"F\", G:\"G\", H:\"H\", I:\"I\", J:\"J\", K:\"K\", L:\"L\", M:\"M\", N:\"N\", O:\"O\", P:\"P\", Q:\"Q\", R:\"R\", S:\"S\", T:\"T\", U:\"U\", V:\"V\", W:\"W\", X:\"X\", Y:\"Y\", Z:\"Z\", a:\"A\", b:\"B\", c:\"C\", d:\"D\", e:\"E\", f:\"F\", g:\"G\", h:\"H\", i:\"I\", j:\"J\", k:\"K\", l:\"L\", m:\"M\", n:\"N\", o:\"O\", p:\"P\", q:\"Q\", r:\"R\", s:\"S\", t:\"T\", u:\"U\", v:\"V\", w:\"W\", x:\"X\", y:\"Y\", z:\"Z\",\n\"-\":\"-\", \"\\uff0d\":\"-\", \"\\u2010\":\"-\", \"\\u2011\":\"-\", \"\\u2012\":\"-\", \"\\u2013\":\"-\", \"\\u2014\":\"-\", \"\\u2015\":\"-\", \"\\u2212\":\"-\", \"/\":\"/\", \"\\uff0f\":\"/\", \" \":\" \", \"\\u3000\":\" \", \"\\u2060\":\" \", \".\":\".\", \"\\uff0e\":\".\"};\ni18n.phonenumbers.PhoneNumberUtil.SINGLE_INTERNATIONAL_PREFIX_ = /[\\d]+(?:[~\\u2053\\u223C\\uFF5E][\\d]+)?/;\ni18n.phonenumbers.PhoneNumberUtil.VALID_PUNCTUATION = \"-x\\u2010-\\u2015\\u2212\\u30fc\\uff0d-\\uff0f \\u00a0\\u00ad\\u200b\\u2060\\u3000()\\uff08\\uff09\\uff3b\\uff3d.\\\\[\\\\]/~\\u2053\\u223c\\uff5e\";\ni18n.phonenumbers.PhoneNumberUtil.VALID_DIGITS_ = \"0-9\\uff10-\\uff19\\u0660-\\u0669\\u06f0-\\u06f9\";\ni18n.phonenumbers.PhoneNumberUtil.VALID_ALPHA_ = \"A-Za-z\";\ni18n.phonenumbers.PhoneNumberUtil.PLUS_CHARS_ = \"+\\uff0b\";\ni18n.phonenumbers.PhoneNumberUtil.PLUS_CHARS_PATTERN = new RegExp(\"[\" + i18n.phonenumbers.PhoneNumberUtil.PLUS_CHARS_ + \"]+\");\ni18n.phonenumbers.PhoneNumberUtil.LEADING_PLUS_CHARS_PATTERN = new RegExp(\"^[\" + i18n.phonenumbers.PhoneNumberUtil.PLUS_CHARS_ + \"]+\");\ni18n.phonenumbers.PhoneNumberUtil.SEPARATOR_PATTERN_ = \"[\" + i18n.phonenumbers.PhoneNumberUtil.VALID_PUNCTUATION + \"]+\";\ni18n.phonenumbers.PhoneNumberUtil.CAPTURING_DIGIT_PATTERN = new RegExp(\"([\" + i18n.phonenumbers.PhoneNumberUtil.VALID_DIGITS_ + \"])\");\ni18n.phonenumbers.PhoneNumberUtil.VALID_START_CHAR_PATTERN_ = new RegExp(\"[\" + i18n.phonenumbers.PhoneNumberUtil.PLUS_CHARS_ + i18n.phonenumbers.PhoneNumberUtil.VALID_DIGITS_ + \"]\");\ni18n.phonenumbers.PhoneNumberUtil.SECOND_NUMBER_START_PATTERN_ = /[\\\\\\/] *x/;\ni18n.phonenumbers.PhoneNumberUtil.UNWANTED_END_CHAR_PATTERN_ = new RegExp(\"[^\" + i18n.phonenumbers.PhoneNumberUtil.VALID_DIGITS_ + i18n.phonenumbers.PhoneNumberUtil.VALID_ALPHA_ + \"#]+$\");\ni18n.phonenumbers.PhoneNumberUtil.VALID_ALPHA_PHONE_PATTERN_ = /(?:.*?[A-Za-z]){3}.*/;\ni18n.phonenumbers.PhoneNumberUtil.MIN_LENGTH_PHONE_NUMBER_PATTERN_ = \"[\" + i18n.phonenumbers.PhoneNumberUtil.VALID_DIGITS_ + \"]{\" + i18n.phonenumbers.PhoneNumberUtil.MIN_LENGTH_FOR_NSN_ + \"}\";\ni18n.phonenumbers.PhoneNumberUtil.VALID_PHONE_NUMBER_ = \"[\" + i18n.phonenumbers.PhoneNumberUtil.PLUS_CHARS_ + \"]*(?:[\" + i18n.phonenumbers.PhoneNumberUtil.VALID_PUNCTUATION + i18n.phonenumbers.PhoneNumberUtil.STAR_SIGN_ + \"]*[\" + i18n.phonenumbers.PhoneNumberUtil.VALID_DIGITS_ + \"]){3,}[\" + i18n.phonenumbers.PhoneNumberUtil.VALID_PUNCTUATION + i18n.phonenumbers.PhoneNumberUtil.STAR_SIGN_ + i18n.phonenumbers.PhoneNumberUtil.VALID_ALPHA_ + i18n.phonenumbers.PhoneNumberUtil.VALID_DIGITS_ + \"]*\";\ni18n.phonenumbers.PhoneNumberUtil.DEFAULT_EXTN_PREFIX_ = \" ext. \";\ni18n.phonenumbers.PhoneNumberUtil.CAPTURING_EXTN_DIGITS_ = \"([\" + i18n.phonenumbers.PhoneNumberUtil.VALID_DIGITS_ + \"]{1,7})\";\ni18n.phonenumbers.PhoneNumberUtil.EXTN_PATTERNS_FOR_PARSING_ = i18n.phonenumbers.PhoneNumberUtil.RFC3966_EXTN_PREFIX_ + i18n.phonenumbers.PhoneNumberUtil.CAPTURING_EXTN_DIGITS_ + \"|[ \\u00a0\\\\t,]*(?:e?xt(?:ensi(?:o\\u0301?|\\u00f3))?n?|\\uff45?\\uff58\\uff54\\uff4e?|\\u0434\\u043e\\u0431|[;,x\\uff58#\\uff03~\\uff5e]|int|anexo|\\uff49\\uff4e\\uff54)[:\\\\.\\uff0e]?[ \\u00a0\\\\t,-]*\" + i18n.phonenumbers.PhoneNumberUtil.CAPTURING_EXTN_DIGITS_ + \"#?|[- ]+([\" + i18n.phonenumbers.PhoneNumberUtil.VALID_DIGITS_ + \"]{1,5})#\";\ni18n.phonenumbers.PhoneNumberUtil.EXTN_PATTERN_ = new RegExp(\"(?:\" + i18n.phonenumbers.PhoneNumberUtil.EXTN_PATTERNS_FOR_PARSING_ + \")$\", \"i\");\ni18n.phonenumbers.PhoneNumberUtil.VALID_PHONE_NUMBER_PATTERN_ = new RegExp(\"^\" + i18n.phonenumbers.PhoneNumberUtil.MIN_LENGTH_PHONE_NUMBER_PATTERN_ + \"$|^\" + i18n.phonenumbers.PhoneNumberUtil.VALID_PHONE_NUMBER_ + \"(?:\" + i18n.phonenumbers.PhoneNumberUtil.EXTN_PATTERNS_FOR_PARSING_ + \")?$\", \"i\");\ni18n.phonenumbers.PhoneNumberUtil.NON_DIGITS_PATTERN_ = /\\D+/;\ni18n.phonenumbers.PhoneNumberUtil.FIRST_GROUP_PATTERN_ = /(\\$\\d)/;\ni18n.phonenumbers.PhoneNumberUtil.NP_PATTERN_ = /\\$NP/;\ni18n.phonenumbers.PhoneNumberUtil.FG_PATTERN_ = /\\$FG/;\ni18n.phonenumbers.PhoneNumberUtil.CC_PATTERN_ = /\\$CC/;\ni18n.phonenumbers.PhoneNumberUtil.FIRST_GROUP_ONLY_PREFIX_PATTERN_ = /^\\(?\\$1\\)?$/;\ni18n.phonenumbers.PhoneNumberUtil.REGION_CODE_FOR_NON_GEO_ENTITY = \"001\";\ni18n.phonenumbers.PhoneNumberFormat = {E164:0, INTERNATIONAL:1, NATIONAL:2, RFC3966:3};\ni18n.phonenumbers.PhoneNumberType = {FIXED_LINE:0, MOBILE:1, FIXED_LINE_OR_MOBILE:2, TOLL_FREE:3, PREMIUM_RATE:4, SHARED_COST:5, VOIP:6, PERSONAL_NUMBER:7, PAGER:8, UAN:9, VOICEMAIL:10, UNKNOWN:-1};\ni18n.phonenumbers.PhoneNumberUtil.MatchType = {NOT_A_NUMBER:0, NO_MATCH:1, SHORT_NSN_MATCH:2, NSN_MATCH:3, EXACT_MATCH:4};\ni18n.phonenumbers.PhoneNumberUtil.ValidationResult = {IS_POSSIBLE:0, IS_POSSIBLE_LOCAL_ONLY:4, INVALID_COUNTRY_CODE:1, TOO_SHORT:2, INVALID_LENGTH:5, TOO_LONG:3};\ni18n.phonenumbers.PhoneNumberUtil.extractPossibleNumber = function(a) {\n  var b = a.search(i18n.phonenumbers.PhoneNumberUtil.VALID_START_CHAR_PATTERN_);\n  0 <= b ? (a = a.substring(b), a = a.replace(i18n.phonenumbers.PhoneNumberUtil.UNWANTED_END_CHAR_PATTERN_, \"\"), b = a.search(i18n.phonenumbers.PhoneNumberUtil.SECOND_NUMBER_START_PATTERN_), 0 <= b && (a = a.substring(0, b))) : a = \"\";\n  return a;\n};\ni18n.phonenumbers.PhoneNumberUtil.isViablePhoneNumber = function(a) {\n  return a.length < i18n.phonenumbers.PhoneNumberUtil.MIN_LENGTH_FOR_NSN_ ? !1 : i18n.phonenumbers.PhoneNumberUtil.matchesEntirely(i18n.phonenumbers.PhoneNumberUtil.VALID_PHONE_NUMBER_PATTERN_, a);\n};\ni18n.phonenumbers.PhoneNumberUtil.normalize = function(a) {\n  return i18n.phonenumbers.PhoneNumberUtil.matchesEntirely(i18n.phonenumbers.PhoneNumberUtil.VALID_ALPHA_PHONE_PATTERN_, a) ? i18n.phonenumbers.PhoneNumberUtil.normalizeHelper_(a, i18n.phonenumbers.PhoneNumberUtil.ALL_NORMALIZATION_MAPPINGS_, !0) : i18n.phonenumbers.PhoneNumberUtil.normalizeDigitsOnly(a);\n};\ni18n.phonenumbers.PhoneNumberUtil.normalizeSB_ = function(a) {\n  var b = i18n.phonenumbers.PhoneNumberUtil.normalize(a.toString());\n  a.clear();\n  a.append(b);\n};\ni18n.phonenumbers.PhoneNumberUtil.normalizeDigitsOnly = function(a) {\n  return i18n.phonenumbers.PhoneNumberUtil.normalizeHelper_(a, i18n.phonenumbers.PhoneNumberUtil.DIGIT_MAPPINGS, !0);\n};\ni18n.phonenumbers.PhoneNumberUtil.normalizeDiallableCharsOnly = function(a) {\n  return i18n.phonenumbers.PhoneNumberUtil.normalizeHelper_(a, i18n.phonenumbers.PhoneNumberUtil.DIALLABLE_CHAR_MAPPINGS_, !0);\n};\ni18n.phonenumbers.PhoneNumberUtil.convertAlphaCharactersInNumber = function(a) {\n  return i18n.phonenumbers.PhoneNumberUtil.normalizeHelper_(a, i18n.phonenumbers.PhoneNumberUtil.ALL_NORMALIZATION_MAPPINGS_, !1);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getLengthOfGeographicalAreaCode = function(a) {\n  var b = this.getMetadataForRegion(this.getRegionCodeForNumber(a));\n  return null != b && (b.hasNationalPrefix() || a.hasItalianLeadingZero()) && this.isNumberGeographical(a) ? this.getLengthOfNationalDestinationCode(a) : 0;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getLengthOfNationalDestinationCode = function(a) {\n  if (a.hasExtension()) {\n    var b = a.clone();\n    b.clearExtension();\n  } else {\n    b = a;\n  }\n  b = this.format(b, i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL).split(i18n.phonenumbers.PhoneNumberUtil.NON_DIGITS_PATTERN_);\n  0 == b[0].length && b.shift();\n  return 2 >= b.length ? 0 : this.getNumberType(a) == i18n.phonenumbers.PhoneNumberType.MOBILE && (a = i18n.phonenumbers.PhoneNumberUtil.getCountryMobileToken(a.getCountryCodeOrDefault()), \"\" != a) ? b[2].length + a.length : b[1].length;\n};\ni18n.phonenumbers.PhoneNumberUtil.getCountryMobileToken = function(a) {\n  return i18n.phonenumbers.PhoneNumberUtil.MOBILE_TOKEN_MAPPINGS_[a] || \"\";\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getSupportedRegions = function() {\n  return goog.array.filter(Object.keys(i18n.phonenumbers.metadata.countryToMetadata), function(a) {\n    return isNaN(a);\n  });\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getSupportedGlobalNetworkCallingCodes = function() {\n  var a = goog.array.filter(Object.keys(i18n.phonenumbers.metadata.countryToMetadata), function(a) {\n    return !isNaN(a);\n  });\n  return goog.array.map(a, function(a) {\n    return parseInt(a, 10);\n  });\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getSupportedCallingCodes = function() {\n  var a = Object.keys(i18n.phonenumbers.metadata.countryCodeToRegionCodeMap);\n  return goog.array.join(this.getSupportedGlobalNetworkCallingCodes(), goog.array.map(a, function(a) {\n    return parseInt(a, 10);\n  }));\n};\ni18n.phonenumbers.PhoneNumberUtil.descHasPossibleNumberData_ = function(a) {\n  return null != a && (1 != a.possibleLengthCount() || -1 != a.possibleLengthArray()[0]);\n};\ni18n.phonenumbers.PhoneNumberUtil.descHasData_ = function(a) {\n  return null != a && (a.hasExampleNumber() || i18n.phonenumbers.PhoneNumberUtil.descHasPossibleNumberData_(a) || a.hasNationalNumberPattern());\n};\ni18n.phonenumbers.PhoneNumberUtil.getSupportedTypesForMetadata_ = function(a) {\n  var b = [];\n  goog.object.forEach(i18n.phonenumbers.PhoneNumberType, function(c) {\n    if (c != i18n.phonenumbers.PhoneNumberType.FIXED_LINE_OR_MOBILE && c != i18n.phonenumbers.PhoneNumberType.UNKNOWN) {\n      var d = i18n.phonenumbers.PhoneNumberUtil.getNumberDescByType_(a, c);\n      i18n.phonenumbers.PhoneNumberUtil.descHasData_(d) && b.push(c);\n    }\n  });\n  return b;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getSupportedTypesForRegion = function(a) {\n  return this.isValidRegionCode_(a) ? i18n.phonenumbers.PhoneNumberUtil.getSupportedTypesForMetadata_(this.getMetadataForRegion(a)) : [];\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getSupportedTypesForNonGeoEntity = function(a) {\n  a = this.getMetadataForNonGeographicalRegion(a);\n  return null == a ? [] : i18n.phonenumbers.PhoneNumberUtil.getSupportedTypesForMetadata_(a);\n};\ni18n.phonenumbers.PhoneNumberUtil.normalizeHelper_ = function(a, b, c) {\n  for (var d = new goog.string.StringBuffer, e, f, g = a.length, h = 0; h < g; ++h) {\n    e = a.charAt(h), f = b[e.toUpperCase()], null != f ? d.append(f) : c || d.append(e);\n  }\n  return d.toString();\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.formattingRuleHasFirstGroupOnly = function(a) {\n  return 0 == a.length || i18n.phonenumbers.PhoneNumberUtil.FIRST_GROUP_ONLY_PREFIX_PATTERN_.test(a);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isNumberGeographical = function(a) {\n  var b = this.getNumberType(a);\n  return b == i18n.phonenumbers.PhoneNumberType.FIXED_LINE || b == i18n.phonenumbers.PhoneNumberType.FIXED_LINE_OR_MOBILE || goog.array.contains(i18n.phonenumbers.PhoneNumberUtil.GEO_MOBILE_COUNTRIES_, a.getCountryCodeOrDefault()) && b == i18n.phonenumbers.PhoneNumberType.MOBILE;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isValidRegionCode_ = function(a) {\n  return null != a && isNaN(a) && a.toUpperCase() in i18n.phonenumbers.metadata.countryToMetadata;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.hasValidCountryCallingCode_ = function(a) {\n  return a in i18n.phonenumbers.metadata.countryCodeToRegionCodeMap;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.format = function(a, b) {\n  if (0 == a.getNationalNumber() && a.hasRawInput()) {\n    var c = a.getRawInputOrDefault();\n    if (0 < c.length) {\n      return c;\n    }\n  }\n  c = a.getCountryCodeOrDefault();\n  var d = this.getNationalSignificantNumber(a);\n  if (b == i18n.phonenumbers.PhoneNumberFormat.E164) {\n    return this.prefixNumberWithCountryCallingCode_(c, i18n.phonenumbers.PhoneNumberFormat.E164, d, \"\");\n  }\n  if (!this.hasValidCountryCallingCode_(c)) {\n    return d;\n  }\n  var e = this.getRegionCodeForCountryCode(c), f = this.getMetadataForRegionOrCallingCode_(c, e);\n  e = this.maybeGetFormattedExtension_(a, f, b);\n  d = this.formatNsn_(d, f, b);\n  return this.prefixNumberWithCountryCallingCode_(c, b, d, e);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.formatByPattern = function(a, b, c) {\n  var d = a.getCountryCodeOrDefault(), e = this.getNationalSignificantNumber(a);\n  if (!this.hasValidCountryCallingCode_(d)) {\n    return e;\n  }\n  var f = this.getRegionCodeForCountryCode(d);\n  f = this.getMetadataForRegionOrCallingCode_(d, f);\n  var g = this.chooseFormattingPatternForNumber_(c, e);\n  if (null != g) {\n    c = g.clone();\n    g = g.getNationalPrefixFormattingRuleOrDefault();\n    if (0 < g.length) {\n      var h = f.getNationalPrefixOrDefault();\n      0 < h.length ? (g = g.replace(i18n.phonenumbers.PhoneNumberUtil.NP_PATTERN_, h).replace(i18n.phonenumbers.PhoneNumberUtil.FG_PATTERN_, \"$1\"), c.setNationalPrefixFormattingRule(g)) : c.clearNationalPrefixFormattingRule();\n    }\n    e = this.formatNsnUsingPattern_(e, c, b);\n  }\n  a = this.maybeGetFormattedExtension_(a, f, b);\n  return this.prefixNumberWithCountryCallingCode_(d, b, e, a);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.formatNationalNumberWithCarrierCode = function(a, b) {\n  var c = a.getCountryCodeOrDefault(), d = this.getNationalSignificantNumber(a);\n  if (!this.hasValidCountryCallingCode_(c)) {\n    return d;\n  }\n  var e = this.getRegionCodeForCountryCode(c), f = this.getMetadataForRegionOrCallingCode_(c, e);\n  e = this.maybeGetFormattedExtension_(a, f, i18n.phonenumbers.PhoneNumberFormat.NATIONAL);\n  d = this.formatNsn_(d, f, i18n.phonenumbers.PhoneNumberFormat.NATIONAL, b);\n  return this.prefixNumberWithCountryCallingCode_(c, i18n.phonenumbers.PhoneNumberFormat.NATIONAL, d, e);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getMetadataForRegionOrCallingCode_ = function(a, b) {\n  return i18n.phonenumbers.PhoneNumberUtil.REGION_CODE_FOR_NON_GEO_ENTITY == b ? this.getMetadataForNonGeographicalRegion(a) : this.getMetadataForRegion(b);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.formatNationalNumberWithPreferredCarrierCode = function(a, b) {\n  return this.formatNationalNumberWithCarrierCode(a, 0 < a.getPreferredDomesticCarrierCodeOrDefault().length ? a.getPreferredDomesticCarrierCodeOrDefault() : b);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.formatNumberForMobileDialing = function(a, b, c) {\n  var d = a.getCountryCodeOrDefault();\n  if (!this.hasValidCountryCallingCode_(d)) {\n    return a.hasRawInput() ? a.getRawInputOrDefault() : \"\";\n  }\n  var e = \"\";\n  a = a.clone();\n  a.clearExtension();\n  var f = this.getRegionCodeForCountryCode(d), g = this.getNumberType(a), h = g != i18n.phonenumbers.PhoneNumberType.UNKNOWN;\n  if (b == f) {\n    e = g == i18n.phonenumbers.PhoneNumberType.FIXED_LINE || g == i18n.phonenumbers.PhoneNumberType.MOBILE || g == i18n.phonenumbers.PhoneNumberType.FIXED_LINE_OR_MOBILE, \"CO\" == f && g == i18n.phonenumbers.PhoneNumberType.FIXED_LINE ? e = this.formatNationalNumberWithCarrierCode(a, i18n.phonenumbers.PhoneNumberUtil.COLOMBIA_MOBILE_TO_FIXED_LINE_PREFIX_) : \"BR\" == f && e ? e = 0 < a.getPreferredDomesticCarrierCodeOrDefault().length ? this.formatNationalNumberWithPreferredCarrierCode(a, \"\") : \"\" :\n    d == i18n.phonenumbers.PhoneNumberUtil.NANPA_COUNTRY_CODE_ ? (b = this.getMetadataForRegion(b), e = this.canBeInternationallyDialled(a) && this.testNumberLength_(this.getNationalSignificantNumber(a), b) != i18n.phonenumbers.PhoneNumberUtil.ValidationResult.TOO_SHORT ? this.format(a, i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL) : this.format(a, i18n.phonenumbers.PhoneNumberFormat.NATIONAL)) : e = (f == i18n.phonenumbers.PhoneNumberUtil.REGION_CODE_FOR_NON_GEO_ENTITY || (\"MX\" == f || \"CL\" ==\n    f || \"UZ\" == f) && e) && this.canBeInternationallyDialled(a) ? this.format(a, i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL) : this.format(a, i18n.phonenumbers.PhoneNumberFormat.NATIONAL);\n  } else {\n    if (h && this.canBeInternationallyDialled(a)) {\n      return c ? this.format(a, i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL) : this.format(a, i18n.phonenumbers.PhoneNumberFormat.E164);\n    }\n  }\n  return c ? e : i18n.phonenumbers.PhoneNumberUtil.normalizeDiallableCharsOnly(e);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.formatOutOfCountryCallingNumber = function(a, b) {\n  if (!this.isValidRegionCode_(b)) {\n    return this.format(a, i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL);\n  }\n  var c = a.getCountryCodeOrDefault(), d = this.getNationalSignificantNumber(a);\n  if (!this.hasValidCountryCallingCode_(c)) {\n    return d;\n  }\n  if (c == i18n.phonenumbers.PhoneNumberUtil.NANPA_COUNTRY_CODE_) {\n    if (this.isNANPACountry(b)) {\n      return c + \" \" + this.format(a, i18n.phonenumbers.PhoneNumberFormat.NATIONAL);\n    }\n  } else {\n    if (c == this.getCountryCodeForValidRegion_(b)) {\n      return this.format(a, i18n.phonenumbers.PhoneNumberFormat.NATIONAL);\n    }\n  }\n  var e = this.getMetadataForRegion(b), f = e.getInternationalPrefixOrDefault(), g = \"\";\n  i18n.phonenumbers.PhoneNumberUtil.matchesEntirely(i18n.phonenumbers.PhoneNumberUtil.SINGLE_INTERNATIONAL_PREFIX_, f) ? g = f : e.hasPreferredInternationalPrefix() && (g = e.getPreferredInternationalPrefixOrDefault());\n  e = this.getRegionCodeForCountryCode(c);\n  e = this.getMetadataForRegionOrCallingCode_(c, e);\n  d = this.formatNsn_(d, e, i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL);\n  e = this.maybeGetFormattedExtension_(a, e, i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL);\n  return 0 < g.length ? g + \" \" + c + \" \" + d + e : this.prefixNumberWithCountryCallingCode_(c, i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL, d, e);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.formatInOriginalFormat = function(a, b) {\n  if (a.hasRawInput() && !this.hasFormattingPatternForNumber_(a)) {\n    return a.getRawInputOrDefault();\n  }\n  if (!a.hasCountryCodeSource()) {\n    return this.format(a, i18n.phonenumbers.PhoneNumberFormat.NATIONAL);\n  }\n  switch(a.getCountryCodeSource()) {\n    case i18n.phonenumbers.PhoneNumber.CountryCodeSource.FROM_NUMBER_WITH_PLUS_SIGN:\n      var c = this.format(a, i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL);\n      break;\n    case i18n.phonenumbers.PhoneNumber.CountryCodeSource.FROM_NUMBER_WITH_IDD:\n      c = this.formatOutOfCountryCallingNumber(a, b);\n      break;\n    case i18n.phonenumbers.PhoneNumber.CountryCodeSource.FROM_NUMBER_WITHOUT_PLUS_SIGN:\n      c = this.format(a, i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL).substring(1);\n      break;\n    default:\n      var d = this.getRegionCodeForCountryCode(a.getCountryCodeOrDefault()), e = this.getNddPrefixForRegion(d, !0);\n      c = this.format(a, i18n.phonenumbers.PhoneNumberFormat.NATIONAL);\n      if (null != e && 0 != e.length && !this.rawInputContainsNationalPrefix_(a.getRawInputOrDefault(), e, d) && (d = this.getMetadataForRegion(d), e = this.getNationalSignificantNumber(a), d = this.chooseFormattingPatternForNumber_(d.numberFormatArray(), e), null != d)) {\n        e = d.getNationalPrefixFormattingRuleOrDefault();\n        var f = e.indexOf(\"$1\");\n        0 >= f || (e = e.substring(0, f), e = i18n.phonenumbers.PhoneNumberUtil.normalizeDigitsOnly(e), 0 != e.length && (c = d.clone(), c.clearNationalPrefixFormattingRule(), c = this.formatByPattern(a, i18n.phonenumbers.PhoneNumberFormat.NATIONAL, [c])));\n      }\n  }\n  d = a.getRawInputOrDefault();\n  null != c && 0 < d.length && (e = i18n.phonenumbers.PhoneNumberUtil.normalizeDiallableCharsOnly(c), f = i18n.phonenumbers.PhoneNumberUtil.normalizeDiallableCharsOnly(d), e != f && (c = d));\n  return c;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.rawInputContainsNationalPrefix_ = function(a, b, c) {\n  a = i18n.phonenumbers.PhoneNumberUtil.normalizeDigitsOnly(a);\n  if (goog.string.startsWith(a, b)) {\n    try {\n      return this.isValidNumber(this.parse(a.substring(b.length), c));\n    } catch (d) {\n    }\n  }\n  return !1;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.hasFormattingPatternForNumber_ = function(a) {\n  var b = a.getCountryCodeOrDefault(), c = this.getRegionCodeForCountryCode(b);\n  b = this.getMetadataForRegionOrCallingCode_(b, c);\n  if (null == b) {\n    return !1;\n  }\n  a = this.getNationalSignificantNumber(a);\n  return null != this.chooseFormattingPatternForNumber_(b.numberFormatArray(), a);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.formatOutOfCountryKeepingAlphaChars = function(a, b) {\n  var c = a.getRawInputOrDefault();\n  if (0 == c.length) {\n    return this.formatOutOfCountryCallingNumber(a, b);\n  }\n  var d = a.getCountryCodeOrDefault();\n  if (!this.hasValidCountryCallingCode_(d)) {\n    return c;\n  }\n  c = i18n.phonenumbers.PhoneNumberUtil.normalizeHelper_(c, i18n.phonenumbers.PhoneNumberUtil.ALL_PLUS_NUMBER_GROUPING_SYMBOLS_, !0);\n  var e = this.getNationalSignificantNumber(a);\n  if (3 < e.length) {\n    var f = c.indexOf(e.substring(0, 3));\n    -1 != f && (c = c.substring(f));\n  }\n  f = this.getMetadataForRegion(b);\n  if (d == i18n.phonenumbers.PhoneNumberUtil.NANPA_COUNTRY_CODE_) {\n    if (this.isNANPACountry(b)) {\n      return d + \" \" + c;\n    }\n  } else {\n    if (null != f && d == this.getCountryCodeForValidRegion_(b)) {\n      d = this.chooseFormattingPatternForNumber_(f.numberFormatArray(), e);\n      if (null == d) {\n        return c;\n      }\n      d = d.clone();\n      d.setPattern(\"(\\\\d+)(.*)\");\n      d.setFormat(\"$1$2\");\n      return this.formatNsnUsingPattern_(c, d, i18n.phonenumbers.PhoneNumberFormat.NATIONAL);\n    }\n  }\n  e = \"\";\n  null != f && (e = f.getInternationalPrefixOrDefault(), e = i18n.phonenumbers.PhoneNumberUtil.matchesEntirely(i18n.phonenumbers.PhoneNumberUtil.SINGLE_INTERNATIONAL_PREFIX_, e) ? e : f.getPreferredInternationalPrefixOrDefault());\n  f = this.getRegionCodeForCountryCode(d);\n  f = this.getMetadataForRegionOrCallingCode_(d, f);\n  f = this.maybeGetFormattedExtension_(a, f, i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL);\n  return 0 < e.length ? e + \" \" + d + \" \" + c + f : this.prefixNumberWithCountryCallingCode_(d, i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL, c, f);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getNationalSignificantNumber = function(a) {\n  if (!a.hasNationalNumber()) {\n    return \"\";\n  }\n  var b = \"\" + a.getNationalNumber();\n  return a.hasItalianLeadingZero() && a.getItalianLeadingZero() && 0 < a.getNumberOfLeadingZerosOrDefault() ? Array(a.getNumberOfLeadingZerosOrDefault() + 1).join(\"0\") + b : b;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.prefixNumberWithCountryCallingCode_ = function(a, b, c, d) {\n  switch(b) {\n    case i18n.phonenumbers.PhoneNumberFormat.E164:\n      return i18n.phonenumbers.PhoneNumberUtil.PLUS_SIGN + a + c + d;\n    case i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL:\n      return i18n.phonenumbers.PhoneNumberUtil.PLUS_SIGN + a + \" \" + c + d;\n    case i18n.phonenumbers.PhoneNumberFormat.RFC3966:\n      return i18n.phonenumbers.PhoneNumberUtil.RFC3966_PREFIX_ + i18n.phonenumbers.PhoneNumberUtil.PLUS_SIGN + a + \"-\" + c + d;\n    default:\n      return c + d;\n  }\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.formatNsn_ = function(a, b, c, d) {\n  b = 0 == b.intlNumberFormatArray().length || c == i18n.phonenumbers.PhoneNumberFormat.NATIONAL ? b.numberFormatArray() : b.intlNumberFormatArray();\n  b = this.chooseFormattingPatternForNumber_(b, a);\n  return null == b ? a : this.formatNsnUsingPattern_(a, b, c, d);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.chooseFormattingPatternForNumber_ = function(a, b) {\n  for (var c, d = a.length, e = 0; e < d; ++e) {\n    c = a[e];\n    var f = c.leadingDigitsPatternCount();\n    if (0 == f || 0 == b.search(c.getLeadingDigitsPattern(f - 1))) {\n      if (f = new RegExp(c.getPattern()), i18n.phonenumbers.PhoneNumberUtil.matchesEntirely(f, b)) {\n        return c;\n      }\n    }\n  }\n  return null;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.formatNsnUsingPattern_ = function(a, b, c, d) {\n  var e = b.getFormatOrDefault(), f = new RegExp(b.getPattern()), g = b.getDomesticCarrierCodeFormattingRuleOrDefault();\n  c == i18n.phonenumbers.PhoneNumberFormat.NATIONAL && null != d && 0 < d.length && 0 < g.length ? (b = g.replace(i18n.phonenumbers.PhoneNumberUtil.CC_PATTERN_, d), e = e.replace(i18n.phonenumbers.PhoneNumberUtil.FIRST_GROUP_PATTERN_, b), a = a.replace(f, e)) : (b = b.getNationalPrefixFormattingRuleOrDefault(), a = c == i18n.phonenumbers.PhoneNumberFormat.NATIONAL && null != b && 0 < b.length ? a.replace(f, e.replace(i18n.phonenumbers.PhoneNumberUtil.FIRST_GROUP_PATTERN_, b)) : a.replace(f, e));\n  c == i18n.phonenumbers.PhoneNumberFormat.RFC3966 && (a = a.replace(new RegExp(\"^\" + i18n.phonenumbers.PhoneNumberUtil.SEPARATOR_PATTERN_), \"\"), a = a.replace(new RegExp(i18n.phonenumbers.PhoneNumberUtil.SEPARATOR_PATTERN_, \"g\"), \"-\"));\n  return a;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getExampleNumber = function(a) {\n  return this.getExampleNumberForType(a, i18n.phonenumbers.PhoneNumberType.FIXED_LINE);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getExampleNumberForType = function(a, b) {\n  if (!this.isValidRegionCode_(a)) {\n    return null;\n  }\n  var c = i18n.phonenumbers.PhoneNumberUtil.getNumberDescByType_(this.getMetadataForRegion(a), b);\n  try {\n    if (c.hasExampleNumber()) {\n      return this.parse(c.getExampleNumber(), a);\n    }\n  } catch (d) {\n  }\n  return null;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getExampleNumberForNonGeoEntity = function(a) {\n  var b = this.getMetadataForNonGeographicalRegion(a);\n  if (null != b && (b = goog.array.find([b.getMobile(), b.getTollFree(), b.getSharedCost(), b.getVoip(), b.getVoicemail(), b.getUan(), b.getPremiumRate()], function(a, b) {\n    return a.hasExampleNumber();\n  }), null != b)) {\n    try {\n      return this.parse(\"+\" + a + b.getExampleNumber(), \"ZZ\");\n    } catch (c) {\n    }\n  }\n  return null;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.maybeGetFormattedExtension_ = function(a, b, c) {\n  return a.hasExtension() && 0 != a.getExtension().length ? c == i18n.phonenumbers.PhoneNumberFormat.RFC3966 ? i18n.phonenumbers.PhoneNumberUtil.RFC3966_EXTN_PREFIX_ + a.getExtension() : b.hasPreferredExtnPrefix() ? b.getPreferredExtnPrefix() + a.getExtensionOrDefault() : i18n.phonenumbers.PhoneNumberUtil.DEFAULT_EXTN_PREFIX_ + a.getExtensionOrDefault() : \"\";\n};\ni18n.phonenumbers.PhoneNumberUtil.getNumberDescByType_ = function(a, b) {\n  switch(b) {\n    case i18n.phonenumbers.PhoneNumberType.PREMIUM_RATE:\n      return a.getPremiumRate();\n    case i18n.phonenumbers.PhoneNumberType.TOLL_FREE:\n      return a.getTollFree();\n    case i18n.phonenumbers.PhoneNumberType.MOBILE:\n      return a.getMobile();\n    case i18n.phonenumbers.PhoneNumberType.FIXED_LINE:\n    case i18n.phonenumbers.PhoneNumberType.FIXED_LINE_OR_MOBILE:\n      return a.getFixedLine();\n    case i18n.phonenumbers.PhoneNumberType.SHARED_COST:\n      return a.getSharedCost();\n    case i18n.phonenumbers.PhoneNumberType.VOIP:\n      return a.getVoip();\n    case i18n.phonenumbers.PhoneNumberType.PERSONAL_NUMBER:\n      return a.getPersonalNumber();\n    case i18n.phonenumbers.PhoneNumberType.PAGER:\n      return a.getPager();\n    case i18n.phonenumbers.PhoneNumberType.UAN:\n      return a.getUan();\n    case i18n.phonenumbers.PhoneNumberType.VOICEMAIL:\n      return a.getVoicemail();\n    default:\n      return a.getGeneralDesc();\n  }\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getNumberType = function(a) {\n  var b = this.getRegionCodeForNumber(a);\n  b = this.getMetadataForRegionOrCallingCode_(a.getCountryCodeOrDefault(), b);\n  if (null == b) {\n    return i18n.phonenumbers.PhoneNumberType.UNKNOWN;\n  }\n  a = this.getNationalSignificantNumber(a);\n  return this.getNumberTypeHelper_(a, b);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getNumberTypeHelper_ = function(a, b) {\n  return this.isNumberMatchingDesc_(a, b.getGeneralDesc()) ? this.isNumberMatchingDesc_(a, b.getPremiumRate()) ? i18n.phonenumbers.PhoneNumberType.PREMIUM_RATE : this.isNumberMatchingDesc_(a, b.getTollFree()) ? i18n.phonenumbers.PhoneNumberType.TOLL_FREE : this.isNumberMatchingDesc_(a, b.getSharedCost()) ? i18n.phonenumbers.PhoneNumberType.SHARED_COST : this.isNumberMatchingDesc_(a, b.getVoip()) ? i18n.phonenumbers.PhoneNumberType.VOIP : this.isNumberMatchingDesc_(a, b.getPersonalNumber()) ? i18n.phonenumbers.PhoneNumberType.PERSONAL_NUMBER :\n  this.isNumberMatchingDesc_(a, b.getPager()) ? i18n.phonenumbers.PhoneNumberType.PAGER : this.isNumberMatchingDesc_(a, b.getUan()) ? i18n.phonenumbers.PhoneNumberType.UAN : this.isNumberMatchingDesc_(a, b.getVoicemail()) ? i18n.phonenumbers.PhoneNumberType.VOICEMAIL : this.isNumberMatchingDesc_(a, b.getFixedLine()) ? b.getSameMobileAndFixedLinePattern() || this.isNumberMatchingDesc_(a, b.getMobile()) ? i18n.phonenumbers.PhoneNumberType.FIXED_LINE_OR_MOBILE : i18n.phonenumbers.PhoneNumberType.FIXED_LINE :\n  !b.getSameMobileAndFixedLinePattern() && this.isNumberMatchingDesc_(a, b.getMobile()) ? i18n.phonenumbers.PhoneNumberType.MOBILE : i18n.phonenumbers.PhoneNumberType.UNKNOWN : i18n.phonenumbers.PhoneNumberType.UNKNOWN;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getMetadataForRegion = function(a) {\n  if (null == a) {\n    return null;\n  }\n  a = a.toUpperCase();\n  var b = this.regionToMetadataMap[a];\n  if (null == b) {\n    b = new goog.proto2.PbLiteSerializer;\n    var c = i18n.phonenumbers.metadata.countryToMetadata[a];\n    if (null == c) {\n      return null;\n    }\n    b = b.deserialize(i18n.phonenumbers.PhoneMetadata.getDescriptor(), c);\n    this.regionToMetadataMap[a] = b;\n  }\n  return b;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getMetadataForNonGeographicalRegion = function(a) {\n  return this.getMetadataForRegion(\"\" + a);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isNumberMatchingDesc_ = function(a, b) {\n  var c = a.length;\n  return 0 < b.possibleLengthCount() && -1 == goog.array.indexOf(b.possibleLengthArray(), c) ? !1 : i18n.phonenumbers.PhoneNumberUtil.matchesEntirely(b.getNationalNumberPatternOrDefault(), a);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isValidNumber = function(a) {\n  var b = this.getRegionCodeForNumber(a);\n  return this.isValidNumberForRegion(a, b);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isValidNumberForRegion = function(a, b) {\n  var c = a.getCountryCodeOrDefault(), d = this.getMetadataForRegionOrCallingCode_(c, b);\n  if (null == d || i18n.phonenumbers.PhoneNumberUtil.REGION_CODE_FOR_NON_GEO_ENTITY != b && c != this.getCountryCodeForValidRegion_(b)) {\n    return !1;\n  }\n  c = this.getNationalSignificantNumber(a);\n  return this.getNumberTypeHelper_(c, d) != i18n.phonenumbers.PhoneNumberType.UNKNOWN;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getRegionCodeForNumber = function(a) {\n  if (null == a) {\n    return null;\n  }\n  var b = a.getCountryCodeOrDefault();\n  b = i18n.phonenumbers.metadata.countryCodeToRegionCodeMap[b];\n  return null == b ? null : 1 == b.length ? b[0] : this.getRegionCodeForNumberFromRegionList_(a, b);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getRegionCodeForNumberFromRegionList_ = function(a, b) {\n  for (var c = this.getNationalSignificantNumber(a), d, e = b.length, f = 0; f < e; f++) {\n    d = b[f];\n    var g = this.getMetadataForRegion(d);\n    if (g.hasLeadingDigits()) {\n      if (0 == c.search(g.getLeadingDigits())) {\n        return d;\n      }\n    } else {\n      if (this.getNumberTypeHelper_(c, g) != i18n.phonenumbers.PhoneNumberType.UNKNOWN) {\n        return d;\n      }\n    }\n  }\n  return null;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getRegionCodeForCountryCode = function(a) {\n  a = i18n.phonenumbers.metadata.countryCodeToRegionCodeMap[a];\n  return null == a ? i18n.phonenumbers.PhoneNumberUtil.UNKNOWN_REGION_ : a[0];\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getRegionCodesForCountryCode = function(a) {\n  a = i18n.phonenumbers.metadata.countryCodeToRegionCodeMap[a];\n  return null == a ? [] : a;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getCountryCodeForRegion = function(a) {\n  return this.isValidRegionCode_(a) ? this.getCountryCodeForValidRegion_(a) : 0;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getCountryCodeForValidRegion_ = function(a) {\n  var b = this.getMetadataForRegion(a);\n  if (null == b) {\n    throw Error(\"Invalid region code: \" + a);\n  }\n  return b.getCountryCodeOrDefault();\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getNddPrefixForRegion = function(a, b) {\n  var c = this.getMetadataForRegion(a);\n  if (null == c) {\n    return null;\n  }\n  c = c.getNationalPrefixOrDefault();\n  if (0 == c.length) {\n    return null;\n  }\n  b && (c = c.replace(\"~\", \"\"));\n  return c;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isNANPACountry = function(a) {\n  return null != a && goog.array.contains(i18n.phonenumbers.metadata.countryCodeToRegionCodeMap[i18n.phonenumbers.PhoneNumberUtil.NANPA_COUNTRY_CODE_], a.toUpperCase());\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isAlphaNumber = function(a) {\n  if (!i18n.phonenumbers.PhoneNumberUtil.isViablePhoneNumber(a)) {\n    return !1;\n  }\n  a = new goog.string.StringBuffer(a);\n  this.maybeStripExtension(a);\n  return i18n.phonenumbers.PhoneNumberUtil.matchesEntirely(i18n.phonenumbers.PhoneNumberUtil.VALID_ALPHA_PHONE_PATTERN_, a.toString());\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isPossibleNumber = function(a) {\n  a = this.isPossibleNumberWithReason(a);\n  return a == i18n.phonenumbers.PhoneNumberUtil.ValidationResult.IS_POSSIBLE || a == i18n.phonenumbers.PhoneNumberUtil.ValidationResult.IS_POSSIBLE_LOCAL_ONLY;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isPossibleNumberForType = function(a, b) {\n  var c = this.isPossibleNumberForTypeWithReason(a, b);\n  return c == i18n.phonenumbers.PhoneNumberUtil.ValidationResult.IS_POSSIBLE || c == i18n.phonenumbers.PhoneNumberUtil.ValidationResult.IS_POSSIBLE_LOCAL_ONLY;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.testNumberLength_ = function(a, b) {\n  return this.testNumberLengthForType_(a, b, i18n.phonenumbers.PhoneNumberType.UNKNOWN);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.testNumberLengthForType_ = function(a, b, c) {\n  var d = i18n.phonenumbers.PhoneNumberUtil.getNumberDescByType_(b, c), e = 0 == d.possibleLengthCount() ? b.getGeneralDesc().possibleLengthArray() : d.possibleLengthArray();\n  d = d.possibleLengthLocalOnlyArray();\n  if (c == i18n.phonenumbers.PhoneNumberType.FIXED_LINE_OR_MOBILE) {\n    if (i18n.phonenumbers.PhoneNumberUtil.descHasPossibleNumberData_(i18n.phonenumbers.PhoneNumberUtil.getNumberDescByType_(b, i18n.phonenumbers.PhoneNumberType.FIXED_LINE))) {\n      c = i18n.phonenumbers.PhoneNumberUtil.getNumberDescByType_(b, i18n.phonenumbers.PhoneNumberType.MOBILE), i18n.phonenumbers.PhoneNumberUtil.descHasPossibleNumberData_(c) && (e = e.concat(0 == c.possibleLengthCount() ? b.getGeneralDesc().possibleLengthArray() : c.possibleLengthArray()), goog.array.sort(e), 0 == d.length ? d = c.possibleLengthLocalOnlyArray() : (d = d.concat(c.possibleLengthLocalOnlyArray()), goog.array.sort(d)));\n    } else {\n      return this.testNumberLengthForType_(a, b, i18n.phonenumbers.PhoneNumberType.MOBILE);\n    }\n  }\n  if (-1 == e[0]) {\n    return i18n.phonenumbers.PhoneNumberUtil.ValidationResult.INVALID_LENGTH;\n  }\n  a = a.length;\n  if (-1 < goog.array.indexOf(d, a)) {\n    return i18n.phonenumbers.PhoneNumberUtil.ValidationResult.IS_POSSIBLE_LOCAL_ONLY;\n  }\n  b = e[0];\n  return b == a ? i18n.phonenumbers.PhoneNumberUtil.ValidationResult.IS_POSSIBLE : b > a ? i18n.phonenumbers.PhoneNumberUtil.ValidationResult.TOO_SHORT : e[e.length - 1] < a ? i18n.phonenumbers.PhoneNumberUtil.ValidationResult.TOO_LONG : -1 < goog.array.indexOf(e, a, 1) ? i18n.phonenumbers.PhoneNumberUtil.ValidationResult.IS_POSSIBLE : i18n.phonenumbers.PhoneNumberUtil.ValidationResult.INVALID_LENGTH;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isPossibleNumberWithReason = function(a) {\n  return this.isPossibleNumberForTypeWithReason(a, i18n.phonenumbers.PhoneNumberType.UNKNOWN);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isPossibleNumberForTypeWithReason = function(a, b) {\n  var c = this.getNationalSignificantNumber(a), d = a.getCountryCodeOrDefault();\n  if (!this.hasValidCountryCallingCode_(d)) {\n    return i18n.phonenumbers.PhoneNumberUtil.ValidationResult.INVALID_COUNTRY_CODE;\n  }\n  var e = this.getRegionCodeForCountryCode(d);\n  d = this.getMetadataForRegionOrCallingCode_(d, e);\n  return this.testNumberLengthForType_(c, d, b);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isPossibleNumberString = function(a, b) {\n  try {\n    return this.isPossibleNumber(this.parse(a, b));\n  } catch (c) {\n    return !1;\n  }\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.truncateTooLongNumber = function(a) {\n  if (this.isValidNumber(a)) {\n    return !0;\n  }\n  var b = a.clone(), c = a.getNationalNumberOrDefault();\n  do {\n    if (c = Math.floor(c / 10), b.setNationalNumber(c), 0 == c || this.isPossibleNumberWithReason(b) == i18n.phonenumbers.PhoneNumberUtil.ValidationResult.TOO_SHORT) {\n      return !1;\n    }\n  } while (!this.isValidNumber(b));\n  a.setNationalNumber(c);\n  return !0;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.extractCountryCode = function(a, b) {\n  var c = a.toString();\n  if (0 == c.length || \"0\" == c.charAt(0)) {\n    return 0;\n  }\n  for (var d, e = c.length, f = 1; f <= i18n.phonenumbers.PhoneNumberUtil.MAX_LENGTH_COUNTRY_CODE_ && f <= e; ++f) {\n    if (d = parseInt(c.substring(0, f), 10), d in i18n.phonenumbers.metadata.countryCodeToRegionCodeMap) {\n      return b.append(c.substring(f)), d;\n    }\n  }\n  return 0;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.maybeExtractCountryCode = function(a, b, c, d, e) {\n  if (0 == a.length) {\n    return 0;\n  }\n  a = new goog.string.StringBuffer(a);\n  var f;\n  null != b && (f = b.getInternationalPrefix());\n  null == f && (f = \"NonMatch\");\n  f = this.maybeStripInternationalPrefixAndNormalize(a, f);\n  d && e.setCountryCodeSource(f);\n  if (f != i18n.phonenumbers.PhoneNumber.CountryCodeSource.FROM_DEFAULT_COUNTRY) {\n    if (a.getLength() <= i18n.phonenumbers.PhoneNumberUtil.MIN_LENGTH_FOR_NSN_) {\n      throw Error(i18n.phonenumbers.Error.TOO_SHORT_AFTER_IDD);\n    }\n    b = this.extractCountryCode(a, c);\n    if (0 != b) {\n      return e.setCountryCode(b), b;\n    }\n    throw Error(i18n.phonenumbers.Error.INVALID_COUNTRY_CODE);\n  }\n  if (null != b) {\n    f = b.getCountryCodeOrDefault();\n    var g = \"\" + f, h = a.toString();\n    if (goog.string.startsWith(h, g) && (g = new goog.string.StringBuffer(h.substring(g.length)), h = b.getGeneralDesc(), h = new RegExp(h.getNationalNumberPatternOrDefault()), this.maybeStripNationalPrefixAndCarrierCode(g, b, null), g = g.toString(), !i18n.phonenumbers.PhoneNumberUtil.matchesEntirely(h, a.toString()) && i18n.phonenumbers.PhoneNumberUtil.matchesEntirely(h, g) || this.testNumberLength_(a.toString(), b) == i18n.phonenumbers.PhoneNumberUtil.ValidationResult.TOO_LONG)) {\n      return c.append(g), d && e.setCountryCodeSource(i18n.phonenumbers.PhoneNumber.CountryCodeSource.FROM_NUMBER_WITHOUT_PLUS_SIGN), e.setCountryCode(f), f;\n    }\n  }\n  e.setCountryCode(0);\n  return 0;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.parsePrefixAsIdd_ = function(a, b) {\n  var c = b.toString();\n  if (0 == c.search(a)) {\n    var d = c.match(a)[0].length, e = c.substring(d).match(i18n.phonenumbers.PhoneNumberUtil.CAPTURING_DIGIT_PATTERN);\n    if (e && null != e[1] && 0 < e[1].length && \"0\" == i18n.phonenumbers.PhoneNumberUtil.normalizeDigitsOnly(e[1])) {\n      return !1;\n    }\n    b.clear();\n    b.append(c.substring(d));\n    return !0;\n  }\n  return !1;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.maybeStripInternationalPrefixAndNormalize = function(a, b) {\n  var c = a.toString();\n  if (0 == c.length) {\n    return i18n.phonenumbers.PhoneNumber.CountryCodeSource.FROM_DEFAULT_COUNTRY;\n  }\n  if (i18n.phonenumbers.PhoneNumberUtil.LEADING_PLUS_CHARS_PATTERN.test(c)) {\n    return c = c.replace(i18n.phonenumbers.PhoneNumberUtil.LEADING_PLUS_CHARS_PATTERN, \"\"), a.clear(), a.append(i18n.phonenumbers.PhoneNumberUtil.normalize(c)), i18n.phonenumbers.PhoneNumber.CountryCodeSource.FROM_NUMBER_WITH_PLUS_SIGN;\n  }\n  c = new RegExp(b);\n  i18n.phonenumbers.PhoneNumberUtil.normalizeSB_(a);\n  return this.parsePrefixAsIdd_(c, a) ? i18n.phonenumbers.PhoneNumber.CountryCodeSource.FROM_NUMBER_WITH_IDD : i18n.phonenumbers.PhoneNumber.CountryCodeSource.FROM_DEFAULT_COUNTRY;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.maybeStripNationalPrefixAndCarrierCode = function(a, b, c) {\n  var d = a.toString(), e = d.length, f = b.getNationalPrefixForParsing();\n  if (0 == e || null == f || 0 == f.length) {\n    return !1;\n  }\n  var g = new RegExp(\"^(?:\" + f + \")\");\n  if (e = g.exec(d)) {\n    f = new RegExp(b.getGeneralDesc().getNationalNumberPatternOrDefault());\n    var h = i18n.phonenumbers.PhoneNumberUtil.matchesEntirely(f, d), k = e.length - 1;\n    b = b.getNationalPrefixTransformRule();\n    if (null == b || 0 == b.length || null == e[k] || 0 == e[k].length) {\n      if (h && !i18n.phonenumbers.PhoneNumberUtil.matchesEntirely(f, d.substring(e[0].length))) {\n        return !1;\n      }\n      null != c && 0 < k && null != e[k] && c.append(e[1]);\n      a.set(d.substring(e[0].length));\n    } else {\n      d = d.replace(g, b);\n      if (h && !i18n.phonenumbers.PhoneNumberUtil.matchesEntirely(f, d)) {\n        return !1;\n      }\n      null != c && 0 < k && c.append(e[1]);\n      a.set(d);\n    }\n    return !0;\n  }\n  return !1;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.maybeStripExtension = function(a) {\n  var b = a.toString(), c = b.search(i18n.phonenumbers.PhoneNumberUtil.EXTN_PATTERN_);\n  if (0 <= c && i18n.phonenumbers.PhoneNumberUtil.isViablePhoneNumber(b.substring(0, c))) {\n    for (var d = b.match(i18n.phonenumbers.PhoneNumberUtil.EXTN_PATTERN_), e = d.length, f = 1; f < e; ++f) {\n      if (null != d[f] && 0 < d[f].length) {\n        return a.clear(), a.append(b.substring(0, c)), d[f];\n      }\n    }\n  }\n  return \"\";\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.checkRegionForParsing_ = function(a, b) {\n  return this.isValidRegionCode_(b) || null != a && 0 < a.length && i18n.phonenumbers.PhoneNumberUtil.LEADING_PLUS_CHARS_PATTERN.test(a);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.parse = function(a, b) {\n  return this.parseHelper_(a, b, !1, !0);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.parseAndKeepRawInput = function(a, b) {\n  if (!this.isValidRegionCode_(b) && 0 < a.length && a.charAt(0) != i18n.phonenumbers.PhoneNumberUtil.PLUS_SIGN) {\n    throw Error(i18n.phonenumbers.Error.INVALID_COUNTRY_CODE);\n  }\n  return this.parseHelper_(a, b, !0, !0);\n};\ni18n.phonenumbers.PhoneNumberUtil.setItalianLeadingZerosForPhoneNumber_ = function(a, b) {\n  if (1 < a.length && \"0\" == a.charAt(0)) {\n    b.setItalianLeadingZero(!0);\n    for (var c = 1; c < a.length - 1 && \"0\" == a.charAt(c);) {\n      c++;\n    }\n    1 != c && b.setNumberOfLeadingZeros(c);\n  }\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.parseHelper_ = function(a, b, c, d) {\n  if (null == a) {\n    throw Error(i18n.phonenumbers.Error.NOT_A_NUMBER);\n  }\n  if (a.length > i18n.phonenumbers.PhoneNumberUtil.MAX_INPUT_STRING_LENGTH_) {\n    throw Error(i18n.phonenumbers.Error.TOO_LONG);\n  }\n  var e = new goog.string.StringBuffer;\n  this.buildNationalNumberForParsing_(a, e);\n  if (!i18n.phonenumbers.PhoneNumberUtil.isViablePhoneNumber(e.toString())) {\n    throw Error(i18n.phonenumbers.Error.NOT_A_NUMBER);\n  }\n  if (d && !this.checkRegionForParsing_(e.toString(), b)) {\n    throw Error(i18n.phonenumbers.Error.INVALID_COUNTRY_CODE);\n  }\n  d = new i18n.phonenumbers.PhoneNumber;\n  c && d.setRawInput(a);\n  a = this.maybeStripExtension(e);\n  0 < a.length && d.setExtension(a);\n  var f = this.getMetadataForRegion(b);\n  a = new goog.string.StringBuffer;\n  var g = 0, h = e.toString();\n  try {\n    g = this.maybeExtractCountryCode(h, f, a, c, d);\n  } catch (k) {\n    if (k.message == i18n.phonenumbers.Error.INVALID_COUNTRY_CODE && i18n.phonenumbers.PhoneNumberUtil.LEADING_PLUS_CHARS_PATTERN.test(h)) {\n      if (h = h.replace(i18n.phonenumbers.PhoneNumberUtil.LEADING_PLUS_CHARS_PATTERN, \"\"), g = this.maybeExtractCountryCode(h, f, a, c, d), 0 == g) {\n        throw k;\n      }\n    } else {\n      throw k;\n    }\n  }\n  0 != g ? (e = this.getRegionCodeForCountryCode(g), e != b && (f = this.getMetadataForRegionOrCallingCode_(g, e))) : (i18n.phonenumbers.PhoneNumberUtil.normalizeSB_(e), a.append(e.toString()), null != b ? (g = f.getCountryCodeOrDefault(), d.setCountryCode(g)) : c && d.clearCountryCodeSource());\n  if (a.getLength() < i18n.phonenumbers.PhoneNumberUtil.MIN_LENGTH_FOR_NSN_) {\n    throw Error(i18n.phonenumbers.Error.TOO_SHORT_NSN);\n  }\n  null != f && (b = new goog.string.StringBuffer, e = new goog.string.StringBuffer(a.toString()), this.maybeStripNationalPrefixAndCarrierCode(e, f, b), f = this.testNumberLength_(e.toString(), f), g = i18n.phonenumbers.PhoneNumberUtil.ValidationResult, f != g.TOO_SHORT && f != g.IS_POSSIBLE_LOCAL_ONLY && f != g.INVALID_LENGTH && (a = e, c && 0 < b.toString().length && d.setPreferredDomesticCarrierCode(b.toString())));\n  c = a.toString();\n  a = c.length;\n  if (a < i18n.phonenumbers.PhoneNumberUtil.MIN_LENGTH_FOR_NSN_) {\n    throw Error(i18n.phonenumbers.Error.TOO_SHORT_NSN);\n  }\n  if (a > i18n.phonenumbers.PhoneNumberUtil.MAX_LENGTH_FOR_NSN_) {\n    throw Error(i18n.phonenumbers.Error.TOO_LONG);\n  }\n  i18n.phonenumbers.PhoneNumberUtil.setItalianLeadingZerosForPhoneNumber_(c, d);\n  d.setNationalNumber(parseInt(c, 10));\n  return d;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.buildNationalNumberForParsing_ = function(a, b) {\n  var c = a.indexOf(i18n.phonenumbers.PhoneNumberUtil.RFC3966_PHONE_CONTEXT_);\n  if (0 <= c) {\n    var d = c + i18n.phonenumbers.PhoneNumberUtil.RFC3966_PHONE_CONTEXT_.length;\n    if (a.charAt(d) == i18n.phonenumbers.PhoneNumberUtil.PLUS_SIGN) {\n      var e = a.indexOf(\";\", d);\n      0 < e ? b.append(a.substring(d, e)) : b.append(a.substring(d));\n    }\n    d = a.indexOf(i18n.phonenumbers.PhoneNumberUtil.RFC3966_PREFIX_);\n    b.append(a.substring(0 <= d ? d + i18n.phonenumbers.PhoneNumberUtil.RFC3966_PREFIX_.length : 0, c));\n  } else {\n    b.append(i18n.phonenumbers.PhoneNumberUtil.extractPossibleNumber(a));\n  }\n  c = b.toString();\n  d = c.indexOf(i18n.phonenumbers.PhoneNumberUtil.RFC3966_ISDN_SUBADDRESS_);\n  0 < d && (b.clear(), b.append(c.substring(0, d)));\n};\ni18n.phonenumbers.PhoneNumberUtil.copyCoreFieldsOnly_ = function(a) {\n  var b = new i18n.phonenumbers.PhoneNumber;\n  b.setCountryCode(a.getCountryCodeOrDefault());\n  b.setNationalNumber(a.getNationalNumberOrDefault());\n  0 < a.getExtensionOrDefault().length && b.setExtension(a.getExtensionOrDefault());\n  a.getItalianLeadingZero() && (b.setItalianLeadingZero(!0), b.setNumberOfLeadingZeros(a.getNumberOfLeadingZerosOrDefault()));\n  return b;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isNumberMatch = function(a, b) {\n  if (\"string\" == typeof a) {\n    try {\n      var c = this.parse(a, i18n.phonenumbers.PhoneNumberUtil.UNKNOWN_REGION_);\n    } catch (g) {\n      if (g.message != i18n.phonenumbers.Error.INVALID_COUNTRY_CODE) {\n        return i18n.phonenumbers.PhoneNumberUtil.MatchType.NOT_A_NUMBER;\n      }\n      if (\"string\" != typeof b) {\n        var d = this.getRegionCodeForCountryCode(b.getCountryCodeOrDefault());\n        if (d != i18n.phonenumbers.PhoneNumberUtil.UNKNOWN_REGION_) {\n          try {\n            c = this.parse(a, d);\n          } catch (h) {\n            return i18n.phonenumbers.PhoneNumberUtil.MatchType.NOT_A_NUMBER;\n          }\n          c = this.isNumberMatch(c, b);\n          return c == i18n.phonenumbers.PhoneNumberUtil.MatchType.EXACT_MATCH ? i18n.phonenumbers.PhoneNumberUtil.MatchType.NSN_MATCH : c;\n        }\n      }\n      try {\n        c = this.parseHelper_(a, null, !1, !1);\n      } catch (h) {\n        return i18n.phonenumbers.PhoneNumberUtil.MatchType.NOT_A_NUMBER;\n      }\n    }\n  } else {\n    c = a.clone();\n  }\n  if (\"string\" == typeof b) {\n    try {\n      var e = this.parse(b, i18n.phonenumbers.PhoneNumberUtil.UNKNOWN_REGION_);\n      return this.isNumberMatch(a, e);\n    } catch (g) {\n      return g.message != i18n.phonenumbers.Error.INVALID_COUNTRY_CODE ? i18n.phonenumbers.PhoneNumberUtil.MatchType.NOT_A_NUMBER : this.isNumberMatch(b, c);\n    }\n  } else {\n    e = b.clone();\n  }\n  c = i18n.phonenumbers.PhoneNumberUtil.copyCoreFieldsOnly_(c);\n  e = i18n.phonenumbers.PhoneNumberUtil.copyCoreFieldsOnly_(e);\n  if (c.hasExtension() && e.hasExtension() && c.getExtension() != e.getExtension()) {\n    return i18n.phonenumbers.PhoneNumberUtil.MatchType.NO_MATCH;\n  }\n  d = c.getCountryCodeOrDefault();\n  var f = e.getCountryCodeOrDefault();\n  if (0 != d && 0 != f) {\n    return c.equals(e) ? i18n.phonenumbers.PhoneNumberUtil.MatchType.EXACT_MATCH : d == f && this.isNationalNumberSuffixOfTheOther_(c, e) ? i18n.phonenumbers.PhoneNumberUtil.MatchType.SHORT_NSN_MATCH : i18n.phonenumbers.PhoneNumberUtil.MatchType.NO_MATCH;\n  }\n  c.setCountryCode(0);\n  e.setCountryCode(0);\n  return c.equals(e) ? i18n.phonenumbers.PhoneNumberUtil.MatchType.NSN_MATCH : this.isNationalNumberSuffixOfTheOther_(c, e) ? i18n.phonenumbers.PhoneNumberUtil.MatchType.SHORT_NSN_MATCH : i18n.phonenumbers.PhoneNumberUtil.MatchType.NO_MATCH;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isNationalNumberSuffixOfTheOther_ = function(a, b) {\n  var c = \"\" + a.getNationalNumber(), d = \"\" + b.getNationalNumber();\n  return goog.string.endsWith(c, d) || goog.string.endsWith(d, c);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.canBeInternationallyDialled = function(a) {\n  var b = this.getMetadataForRegion(this.getRegionCodeForNumber(a));\n  if (null == b) {\n    return !0;\n  }\n  a = this.getNationalSignificantNumber(a);\n  return !this.isNumberMatchingDesc_(a, b.getNoInternationalDialling());\n};\ni18n.phonenumbers.PhoneNumberUtil.matchesEntirely = function(a, b) {\n  var c = \"string\" == typeof a ? b.match(\"^(?:\" + a + \")$\") : b.match(a);\n  return c && c[0].length == b.length ? !0 : !1;\n};\ni18n.phonenumbers.PhoneNumberUtil.matchesPrefix = function(a, b) {\n  var c = \"string\" == typeof a ? b.match(\"^(?:\" + a + \")\") : b.match(a);\n  return c && goog.string.startsWith(b, c[0]) ? !0 : !1;\n};\ni18n.phonenumbers.AsYouTypeFormatter = function(a) {\n  this.DIGIT_PLACEHOLDER_ = \"\\u2008\";\n  this.DIGIT_PATTERN_ = new RegExp(this.DIGIT_PLACEHOLDER_);\n  this.currentOutput_ = \"\";\n  this.formattingTemplate_ = new goog.string.StringBuffer;\n  this.currentFormattingPattern_ = \"\";\n  this.accruedInput_ = new goog.string.StringBuffer;\n  this.accruedInputWithoutFormatting_ = new goog.string.StringBuffer;\n  this.ableToFormat_ = !0;\n  this.isExpectingCountryCallingCode_ = this.isCompleteNumber_ = this.inputHasFormatting_ = !1;\n  this.phoneUtil_ = i18n.phonenumbers.PhoneNumberUtil.getInstance();\n  this.positionToRemember_ = this.originalPosition_ = this.lastMatchPosition_ = 0;\n  this.prefixBeforeNationalNumber_ = new goog.string.StringBuffer;\n  this.shouldAddSpaceAfterNationalPrefix_ = !1;\n  this.extractedNationalPrefix_ = \"\";\n  this.nationalNumber_ = new goog.string.StringBuffer;\n  this.possibleFormats_ = [];\n  this.defaultCountry_ = a;\n  this.defaultMetadata_ = this.currentMetadata_ = this.getMetadataForRegion_(this.defaultCountry_);\n};\ni18n.phonenumbers.AsYouTypeFormatter.SEPARATOR_BEFORE_NATIONAL_NUMBER_ = \" \";\ni18n.phonenumbers.AsYouTypeFormatter.EMPTY_METADATA_ = new i18n.phonenumbers.PhoneMetadata;\ni18n.phonenumbers.AsYouTypeFormatter.EMPTY_METADATA_.setInternationalPrefix(\"NA\");\ni18n.phonenumbers.AsYouTypeFormatter.ELIGIBLE_FORMAT_PATTERN_ = new RegExp(\"^[\" + i18n.phonenumbers.PhoneNumberUtil.VALID_PUNCTUATION + \"]*(\\\\$\\\\d[\" + i18n.phonenumbers.PhoneNumberUtil.VALID_PUNCTUATION + \"]*)+$\");\ni18n.phonenumbers.AsYouTypeFormatter.NATIONAL_PREFIX_SEPARATORS_PATTERN_ = /[- ]/;\ni18n.phonenumbers.AsYouTypeFormatter.MIN_LEADING_DIGITS_LENGTH_ = 3;\ni18n.phonenumbers.AsYouTypeFormatter.prototype.getMetadataForRegion_ = function(a) {\n  a = this.phoneUtil_.getCountryCodeForRegion(a);\n  a = this.phoneUtil_.getRegionCodeForCountryCode(a);\n  a = this.phoneUtil_.getMetadataForRegion(a);\n  return null != a ? a : i18n.phonenumbers.AsYouTypeFormatter.EMPTY_METADATA_;\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.maybeCreateNewTemplate_ = function() {\n  for (var a = this.possibleFormats_.length, b = 0; b < a; ++b) {\n    var c = this.possibleFormats_[b], d = c.getPatternOrDefault();\n    if (this.currentFormattingPattern_ == d) {\n      return !1;\n    }\n    if (this.createFormattingTemplate_(c)) {\n      return this.currentFormattingPattern_ = d, this.shouldAddSpaceAfterNationalPrefix_ = i18n.phonenumbers.AsYouTypeFormatter.NATIONAL_PREFIX_SEPARATORS_PATTERN_.test(c.getNationalPrefixFormattingRule()), this.lastMatchPosition_ = 0, !0;\n    }\n  }\n  return this.ableToFormat_ = !1;\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.getAvailableFormats_ = function(a) {\n  for (var b = this.isCompleteNumber_ && 0 == this.extractedNationalPrefix_.length && 0 < this.currentMetadata_.intlNumberFormatCount() ? this.currentMetadata_.intlNumberFormatArray() : this.currentMetadata_.numberFormatArray(), c = b.length, d = 0; d < c; ++d) {\n    var e = b[d];\n    0 < this.extractedNationalPrefix_.length && this.phoneUtil_.formattingRuleHasFirstGroupOnly(e.getNationalPrefixFormattingRuleOrDefault()) && !e.getNationalPrefixOptionalWhenFormatting() && !e.hasDomesticCarrierCodeFormattingRule() || (0 != this.extractedNationalPrefix_.length || this.isCompleteNumber_ || this.phoneUtil_.formattingRuleHasFirstGroupOnly(e.getNationalPrefixFormattingRuleOrDefault()) || e.getNationalPrefixOptionalWhenFormatting()) && i18n.phonenumbers.AsYouTypeFormatter.ELIGIBLE_FORMAT_PATTERN_.test(e.getFormatOrDefault()) &&\n    this.possibleFormats_.push(e);\n  }\n  this.narrowDownPossibleFormats_(a);\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.narrowDownPossibleFormats_ = function(a) {\n  for (var b = [], c = a.length - i18n.phonenumbers.AsYouTypeFormatter.MIN_LEADING_DIGITS_LENGTH_, d = this.possibleFormats_.length, e = 0; e < d; ++e) {\n    var f = this.possibleFormats_[e];\n    if (0 == f.leadingDigitsPatternCount()) {\n      b.push(this.possibleFormats_[e]);\n    } else {\n      var g = Math.min(c, f.leadingDigitsPatternCount() - 1);\n      f = f.getLeadingDigitsPattern(g);\n      0 == a.search(f) && b.push(this.possibleFormats_[e]);\n    }\n  }\n  this.possibleFormats_ = b;\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.createFormattingTemplate_ = function(a) {\n  var b = a.getPatternOrDefault();\n  this.formattingTemplate_.clear();\n  a = this.getFormattingTemplate_(b, a.getFormatOrDefault());\n  return 0 < a.length ? (this.formattingTemplate_.append(a), !0) : !1;\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.getFormattingTemplate_ = function(a, b) {\n  var c = \"999999999999999\".match(a)[0];\n  if (c.length < this.nationalNumber_.getLength()) {\n    return \"\";\n  }\n  c = c.replace(new RegExp(a, \"g\"), b);\n  return c = c.replace(RegExp(\"9\", \"g\"), this.DIGIT_PLACEHOLDER_);\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.clear = function() {\n  this.currentOutput_ = \"\";\n  this.accruedInput_.clear();\n  this.accruedInputWithoutFormatting_.clear();\n  this.formattingTemplate_.clear();\n  this.lastMatchPosition_ = 0;\n  this.currentFormattingPattern_ = \"\";\n  this.prefixBeforeNationalNumber_.clear();\n  this.extractedNationalPrefix_ = \"\";\n  this.nationalNumber_.clear();\n  this.ableToFormat_ = !0;\n  this.inputHasFormatting_ = !1;\n  this.originalPosition_ = this.positionToRemember_ = 0;\n  this.isExpectingCountryCallingCode_ = this.isCompleteNumber_ = !1;\n  this.possibleFormats_ = [];\n  this.shouldAddSpaceAfterNationalPrefix_ = !1;\n  this.currentMetadata_ != this.defaultMetadata_ && (this.currentMetadata_ = this.getMetadataForRegion_(this.defaultCountry_));\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.inputDigit = function(a) {\n  return this.currentOutput_ = this.inputDigitWithOptionToRememberPosition_(a, !1);\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.inputDigitAndRememberPosition = function(a) {\n  return this.currentOutput_ = this.inputDigitWithOptionToRememberPosition_(a, !0);\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.inputDigitWithOptionToRememberPosition_ = function(a, b) {\n  this.accruedInput_.append(a);\n  b && (this.originalPosition_ = this.accruedInput_.getLength());\n  this.isDigitOrLeadingPlusSign_(a) ? a = this.normalizeAndAccrueDigitsAndPlusSign_(a, b) : (this.ableToFormat_ = !1, this.inputHasFormatting_ = !0);\n  if (!this.ableToFormat_) {\n    if (!this.inputHasFormatting_) {\n      if (this.attemptToExtractIdd_()) {\n        if (this.attemptToExtractCountryCallingCode_()) {\n          return this.attemptToChoosePatternWithPrefixExtracted_();\n        }\n      } else {\n        if (this.ableToExtractLongerNdd_()) {\n          return this.prefixBeforeNationalNumber_.append(i18n.phonenumbers.AsYouTypeFormatter.SEPARATOR_BEFORE_NATIONAL_NUMBER_), this.attemptToChoosePatternWithPrefixExtracted_();\n        }\n      }\n    }\n    return this.accruedInput_.toString();\n  }\n  switch(this.accruedInputWithoutFormatting_.getLength()) {\n    case 0:\n    case 1:\n    case 2:\n      return this.accruedInput_.toString();\n    case 3:\n      if (this.attemptToExtractIdd_()) {\n        this.isExpectingCountryCallingCode_ = !0;\n      } else {\n        return this.extractedNationalPrefix_ = this.removeNationalPrefixFromNationalNumber_(), this.attemptToChooseFormattingPattern_();\n      }\n    default:\n      if (this.isExpectingCountryCallingCode_) {\n        return this.attemptToExtractCountryCallingCode_() && (this.isExpectingCountryCallingCode_ = !1), this.prefixBeforeNationalNumber_.toString() + this.nationalNumber_.toString();\n      }\n      if (0 < this.possibleFormats_.length) {\n        var c = this.inputDigitHelper_(a), d = this.attemptToFormatAccruedDigits_();\n        if (0 < d.length) {\n          return d;\n        }\n        this.narrowDownPossibleFormats_(this.nationalNumber_.toString());\n        return this.maybeCreateNewTemplate_() ? this.inputAccruedNationalNumber_() : this.ableToFormat_ ? this.appendNationalNumber_(c) : this.accruedInput_.toString();\n      }\n      return this.attemptToChooseFormattingPattern_();\n  }\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.attemptToChoosePatternWithPrefixExtracted_ = function() {\n  this.ableToFormat_ = !0;\n  this.isExpectingCountryCallingCode_ = !1;\n  this.possibleFormats_ = [];\n  this.lastMatchPosition_ = 0;\n  this.formattingTemplate_.clear();\n  this.currentFormattingPattern_ = \"\";\n  return this.attemptToChooseFormattingPattern_();\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.getExtractedNationalPrefix_ = function() {\n  return this.extractedNationalPrefix_;\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.ableToExtractLongerNdd_ = function() {\n  if (0 < this.extractedNationalPrefix_.length) {\n    var a = this.nationalNumber_.toString();\n    this.nationalNumber_.clear();\n    this.nationalNumber_.append(this.extractedNationalPrefix_);\n    this.nationalNumber_.append(a);\n    a = this.prefixBeforeNationalNumber_.toString();\n    var b = a.lastIndexOf(this.extractedNationalPrefix_);\n    this.prefixBeforeNationalNumber_.clear();\n    this.prefixBeforeNationalNumber_.append(a.substring(0, b));\n  }\n  return this.extractedNationalPrefix_ != this.removeNationalPrefixFromNationalNumber_();\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.isDigitOrLeadingPlusSign_ = function(a) {\n  return i18n.phonenumbers.PhoneNumberUtil.CAPTURING_DIGIT_PATTERN.test(a) || 1 == this.accruedInput_.getLength() && i18n.phonenumbers.PhoneNumberUtil.PLUS_CHARS_PATTERN.test(a);\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.attemptToFormatAccruedDigits_ = function() {\n  for (var a = this.nationalNumber_.toString(), b = this.possibleFormats_.length, c = 0; c < b; ++c) {\n    var d = this.possibleFormats_[c], e = d.getPatternOrDefault();\n    if ((new RegExp(\"^(?:\" + e + \")$\")).test(a) && (this.shouldAddSpaceAfterNationalPrefix_ = i18n.phonenumbers.AsYouTypeFormatter.NATIONAL_PREFIX_SEPARATORS_PATTERN_.test(d.getNationalPrefixFormattingRule()), d = a.replace(new RegExp(e, \"g\"), d.getFormat()), d = this.appendNationalNumber_(d), i18n.phonenumbers.PhoneNumberUtil.normalizeDiallableCharsOnly(d) == this.accruedInputWithoutFormatting_)) {\n      return d;\n    }\n  }\n  return \"\";\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.appendNationalNumber_ = function(a) {\n  var b = this.prefixBeforeNationalNumber_.getLength();\n  return this.shouldAddSpaceAfterNationalPrefix_ && 0 < b && this.prefixBeforeNationalNumber_.toString().charAt(b - 1) != i18n.phonenumbers.AsYouTypeFormatter.SEPARATOR_BEFORE_NATIONAL_NUMBER_ ? this.prefixBeforeNationalNumber_ + i18n.phonenumbers.AsYouTypeFormatter.SEPARATOR_BEFORE_NATIONAL_NUMBER_ + a : this.prefixBeforeNationalNumber_ + a;\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.getRememberedPosition = function() {\n  if (!this.ableToFormat_) {\n    return this.originalPosition_;\n  }\n  for (var a = 0, b = 0, c = this.accruedInputWithoutFormatting_.toString(), d = this.currentOutput_.toString(); a < this.positionToRemember_ && b < d.length;) {\n    c.charAt(a) == d.charAt(b) && a++, b++;\n  }\n  return b;\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.attemptToChooseFormattingPattern_ = function() {\n  var a = this.nationalNumber_.toString();\n  return a.length >= i18n.phonenumbers.AsYouTypeFormatter.MIN_LEADING_DIGITS_LENGTH_ ? (this.getAvailableFormats_(a), a = this.attemptToFormatAccruedDigits_(), 0 < a.length ? a : this.maybeCreateNewTemplate_() ? this.inputAccruedNationalNumber_() : this.accruedInput_.toString()) : this.appendNationalNumber_(a);\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.inputAccruedNationalNumber_ = function() {\n  var a = this.nationalNumber_.toString(), b = a.length;\n  if (0 < b) {\n    for (var c = \"\", d = 0; d < b; d++) {\n      c = this.inputDigitHelper_(a.charAt(d));\n    }\n    return this.ableToFormat_ ? this.appendNationalNumber_(c) : this.accruedInput_.toString();\n  }\n  return this.prefixBeforeNationalNumber_.toString();\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.isNanpaNumberWithNationalPrefix_ = function() {\n  if (1 != this.currentMetadata_.getCountryCode()) {\n    return !1;\n  }\n  var a = this.nationalNumber_.toString();\n  return \"1\" == a.charAt(0) && \"0\" != a.charAt(1) && \"1\" != a.charAt(1);\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.removeNationalPrefixFromNationalNumber_ = function() {\n  var a = this.nationalNumber_.toString(), b = 0;\n  if (this.isNanpaNumberWithNationalPrefix_()) {\n    b = 1, this.prefixBeforeNationalNumber_.append(\"1\").append(i18n.phonenumbers.AsYouTypeFormatter.SEPARATOR_BEFORE_NATIONAL_NUMBER_), this.isCompleteNumber_ = !0;\n  } else {\n    if (this.currentMetadata_.hasNationalPrefixForParsing()) {\n      var c = new RegExp(\"^(?:\" + this.currentMetadata_.getNationalPrefixForParsing() + \")\");\n      c = a.match(c);\n      null != c && null != c[0] && 0 < c[0].length && (this.isCompleteNumber_ = !0, b = c[0].length, this.prefixBeforeNationalNumber_.append(a.substring(0, b)));\n    }\n  }\n  this.nationalNumber_.clear();\n  this.nationalNumber_.append(a.substring(b));\n  return a.substring(0, b);\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.attemptToExtractIdd_ = function() {\n  var a = this.accruedInputWithoutFormatting_.toString(), b = new RegExp(\"^(?:\\\\\" + i18n.phonenumbers.PhoneNumberUtil.PLUS_SIGN + \"|\" + this.currentMetadata_.getInternationalPrefix() + \")\");\n  b = a.match(b);\n  return null != b && null != b[0] && 0 < b[0].length ? (this.isCompleteNumber_ = !0, b = b[0].length, this.nationalNumber_.clear(), this.nationalNumber_.append(a.substring(b)), this.prefixBeforeNationalNumber_.clear(), this.prefixBeforeNationalNumber_.append(a.substring(0, b)), a.charAt(0) != i18n.phonenumbers.PhoneNumberUtil.PLUS_SIGN && this.prefixBeforeNationalNumber_.append(i18n.phonenumbers.AsYouTypeFormatter.SEPARATOR_BEFORE_NATIONAL_NUMBER_), !0) : !1;\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.attemptToExtractCountryCallingCode_ = function() {\n  if (0 == this.nationalNumber_.getLength()) {\n    return !1;\n  }\n  var a = new goog.string.StringBuffer, b = this.phoneUtil_.extractCountryCode(this.nationalNumber_, a);\n  if (0 == b) {\n    return !1;\n  }\n  this.nationalNumber_.clear();\n  this.nationalNumber_.append(a.toString());\n  a = this.phoneUtil_.getRegionCodeForCountryCode(b);\n  i18n.phonenumbers.PhoneNumberUtil.REGION_CODE_FOR_NON_GEO_ENTITY == a ? this.currentMetadata_ = this.phoneUtil_.getMetadataForNonGeographicalRegion(b) : a != this.defaultCountry_ && (this.currentMetadata_ = this.getMetadataForRegion_(a));\n  this.prefixBeforeNationalNumber_.append(\"\" + b).append(i18n.phonenumbers.AsYouTypeFormatter.SEPARATOR_BEFORE_NATIONAL_NUMBER_);\n  this.extractedNationalPrefix_ = \"\";\n  return !0;\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.normalizeAndAccrueDigitsAndPlusSign_ = function(a, b) {\n  if (a == i18n.phonenumbers.PhoneNumberUtil.PLUS_SIGN) {\n    var c = a;\n    this.accruedInputWithoutFormatting_.append(a);\n  } else {\n    c = i18n.phonenumbers.PhoneNumberUtil.DIGIT_MAPPINGS[a], this.accruedInputWithoutFormatting_.append(c), this.nationalNumber_.append(c);\n  }\n  b && (this.positionToRemember_ = this.accruedInputWithoutFormatting_.getLength());\n  return c;\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.inputDigitHelper_ = function(a) {\n  var b = this.formattingTemplate_.toString();\n  if (0 <= b.substring(this.lastMatchPosition_).search(this.DIGIT_PATTERN_)) {\n    var c = b.search(this.DIGIT_PATTERN_);\n    a = b.replace(this.DIGIT_PATTERN_, a);\n    this.formattingTemplate_.clear();\n    this.formattingTemplate_.append(a);\n    this.lastMatchPosition_ = c;\n    return a.substring(0, this.lastMatchPosition_ + 1);\n  }\n  1 == this.possibleFormats_.length && (this.ableToFormat_ = !1);\n  this.currentFormattingPattern_ = \"\";\n  return this.accruedInput_.toString();\n};\n/*\n\n Copyright (C) 2011 The Libphonenumber Authors.\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n*/\ni18n.phonenumbers.RegionCode = {UN001:\"001\", AD:\"AD\", AE:\"AE\", AO:\"AO\", AQ:\"AQ\", AR:\"AR\", AM:\"AM\", AU:\"AU\", BB:\"BB\", BR:\"BR\", BS:\"BS\", BY:\"BY\", CA:\"CA\", CH:\"CH\", CL:\"CL\", CN:\"CN\", CS:\"CS\", CX:\"CX\", DE:\"DE\", FR:\"FR\", GB:\"GB\", HU:\"HU\", IT:\"IT\", JP:\"JP\", KR:\"KR\", MX:\"MX\", NZ:\"NZ\", PL:\"PL\", RE:\"RE\", RU:\"RU\", SE:\"SE\", SG:\"SG\", US:\"US\", UZ:\"UZ\", YT:\"YT\", ZW:\"ZW\", ZZ:\"ZZ\"};"
  },
  {
    "path": "lib/phone-format-interface.js",
    "content": "/*\n\nCompiled Wednesday July 30, 2014 at 2:15pm America/New_York\n\nVersion: libphonenumber r680\n\n------------------------------------------------------------------------\n\n\n Copyright (C) Alan Beebe (alan.beebe@gmail.com).\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n\n\nUsage...\n\nThis is the same type of code used by cell phones when you enter\na phone number into your dialer app.  Your phone already knows\nwhat country you are a subscriber in, so it assumes you are entering\na local number, unless of course you prefix the number with a +, or\nin the USA you could also prefix the number with 011 to indicate you\nwish to dial internationally.  This code functions the same way.\n\nLets assume your in the United States and you enter the following\nphone number: 8646978257\n\nformatE164(\"US\", \"8646978257\");\n Returns: +18646978257\n\ncountryForE164Number(\"US\", \"+18646978257\");\n Returns: US\n\nformatInternational(\"US\", \"8646978257\");\n Returns: (864) 697-8257\n Info: This is the format you use if you are displaying this number to users outside the US\n\nformatLocal(\"US\", \"8646978257\");\n Returns: (864) 697-8257\n Info: This is the format you use if you are displaying this number to users inside the US\n       (In certain countries, this format will be different then the international format)\n\ncountryCodeToName(\"US\");\n Returns: United States\n\n\n\n*/\n\n\n// -------------------------------------------------------------------------\nfunction countryForE164Number(phone) {\n    /*\n\n    Return the country code for an e164 formatted number\n\n    phone (String) phone number in e164 format to return the country code for\n\n    */\n    try {\n        var phone = cleanPhone(phone);\n        var phoneUtil = i18n.phonenumbers.PhoneNumberUtil.getInstance();\n        var number = phoneUtil.parseAndKeepRawInput(phone);\n        var output = new goog.string.StringBuffer();\n        output = phoneUtil.getRegionCodeForNumber(number);\n        return output.toString();\n    } catch (e) {\n        return \"\";\n    }\n}\n\n// -------------------------------------------------------------------------\nfunction formatNumberForMobileDialing(country, phone) {\n    /*\n\n    Returns a number formatted in such a way that it can be dialed from a mobile\n    phone in a specific region. If the number cannot be reached from the region\n    (e.g. some countries block toll-free numbers from being called outside of the\n    country), the method returns an empty string.\n\n    */\n\n    try {\n        var phone = cleanPhone(phone);\n        var phoneUtil = i18n.phonenumbers.PhoneNumberUtil.getInstance();\n        var number = phoneUtil.parseAndKeepRawInput(phone, country);\n        var output = new goog.string.StringBuffer();\n        output = phoneUtil.formatNumberForMobileDialing(number, country, true);\n        return output.toString();\n    } catch (e) {\n        return \"\";\n    }\n}\n\n// -------------------------------------------------------------------------\nfunction isValidNumber(phone, country, type) {\n    /*\n\n    Tests whether a phone number matches a valid pattern. Note this doesn't\n    verify the number is actually in use, which is impossible to tell by just\n    looking at a number itself.\n\n    */\n\n    try {\n        var phone = cleanPhone(phone);\n        var phoneUtil = i18n.phonenumbers.PhoneNumberUtil.getInstance();\n        var number = phoneUtil.parseAndKeepRawInput(phone, country);\n        if (typeof type === 'string') {\n            var type = type.toUpperCase();\n            if (phoneUtil.isValidNumber(number) &&\n                phoneUtil.getNumberType(number) === i18n.phonenumbers.PhoneNumberType[type]) {\n                return true;\n            }\n            else {\n                return false;\n            }\n        }\n        else {\n            return phoneUtil.isValidNumber(number);\n        }\n    } catch (e) {\n        return false;\n    }\n}\n\n// -------------------------------------------------------------------------\nfunction formatE164(country, phone) {\n    /*\n\n    Return the phone number in e164 format\n\n    country (String) 2 digit country code\n    phone (String) phone number to format\n\n    */\n\n    try {\n        var phone = cleanPhone(phone);\n        var phoneUtil = i18n.phonenumbers.PhoneNumberUtil.getInstance();\n        var number = phoneUtil.parseAndKeepRawInput(phone, country);\n        var PNF = i18n.phonenumbers.PhoneNumberFormat;\n        var output = new goog.string.StringBuffer();\n        output = phoneUtil.format(number, PNF.E164);\n        return output.toString();\n    } catch (e) {\n        return phone\n    }\n}\n\n\n// -------------------------------------------------------------------------\nfunction formatInternational(country, phone) {\n    /*\n\n    Return the phone number in international format\n\n    country (String) 2 digit country code\n    phone (String) phone number to format\n\n    */\n\n    try {\n        var phone = cleanPhone(phone);\n        var formatter = new i18n.phonenumbers.AsYouTypeFormatter(country);\n        var output = new goog.string.StringBuffer();\n        for (var i = 0; i < phone.length; ++i) {\n            var inputChar = phone.charAt(i);\n            output = (formatter.inputDigit(inputChar));\n        }\n        return output.toString();\n    } catch (e) {\n        return phone;\n    }\n}\n\n// -------------------------------------------------------------------------\nfunction formatLocal(country, phone) {\n    /*\n\n    Return the phone number in the format local to the user\n\n    country (String) 2 digit country code\n    phone (String) phone number to format\n\n    */\n\n    try {\n        var phone = cleanPhone(phone);\n        var phoneUtil = i18n.phonenumbers.PhoneNumberUtil.getInstance();\n        var number = phoneUtil.parseAndKeepRawInput(phone, country);\n        if (phoneUtil.isValidNumberForRegion(number, country)) {\n            var PNF = i18n.phonenumbers.PhoneNumberFormat;\n            var output = new goog.string.StringBuffer();\n            output = phoneUtil.format(number, PNF.NATIONAL);\n            return output.toString();\n        } else {\n            return formatInternational(country, phone);\n        }\n    } catch (e) {\n        return formatInternational(country, phone);\n    }\n}\n\n// -------------------------------------------------------------------------\nfunction exampleLandlineNumber(country) {\n    /*\n\n    Returns an example land line phone number for the specified country\n\n    country (String) 2 digit country code\n\n    */\n\n    try {\n        var phoneUtil = i18n.phonenumbers.PhoneNumberUtil.getInstance();\n        var output = phoneUtil.getExampleNumber(country);\n        return \"\"+output.getNationalNumber();\n    } catch (e) {\n        return \"\";\n    }\n}\n\n// -------------------------------------------------------------------------\nfunction exampleMobileNumber(country) {\n    /*\n\n    Returns an example mobile phone number for the specified country\n\n    country (String) 2 digit country code\n\n    */\n\n    try {\n        var phoneUtil = i18n.phonenumbers.PhoneNumberUtil.getInstance();\n        var output = phoneUtil.getExampleNumberForType(country, i18n.phonenumbers.PhoneNumberType.MOBILE);\n        return \"\"+output.getNationalNumber();\n    } catch (e) {\n        return \"\";\n    }\n}\n\n// -------------------------------------------------------------------------\nfunction cleanPhone(phone) {\n    /*\n\n    Remove any non numeric characters from the phone number but leave any plus sign at the beginning\n\n    phone (String) phone number to clean\n\n    */\n\n    phone = phone.replace(/[^\\d\\+]/g,'');\n    if (phone.substr(0, 1) == \"+\") {\n        phone = \"+\" + phone.replace(/[^\\d]/g,'');\n    } else {\n        phone = phone.replace(/[^\\d]/g,'');\n    }\n    return phone;\n}\n\n// -------------------------------------------------------------------------\nfunction countryCodeToName(countryCode) {\n    /*\n\n    Convert the country code to a name\n\n    country (String) 2 digit country code\n\n    */\n\n    var arrCountry = new Array();\n    arrCountry['AF'] = \"Afghanistan\";\n    arrCountry['AL'] = \"Albania\";\n    arrCountry['DZ'] = \"Algeria\";\n    arrCountry['AS'] = \"American Samoa\";\n    arrCountry['AD'] = \"Andorra\";\n    arrCountry['AO'] = \"Angola\";\n    arrCountry['AI'] = \"Anguilla\";\n    arrCountry['AQ'] = \"Antarctica\";\n    arrCountry['AG'] = \"Antigua And Barbuda\";\n    arrCountry['AR'] = \"Argentina\";\n    arrCountry['AM'] = \"Armenia\";\n    arrCountry['AW'] = \"Aruba\";\n    arrCountry['AC'] = \"Ascension Island\";\n    arrCountry['AU'] = \"Australia\";\n    arrCountry['AT'] = \"Austria\";\n    arrCountry['AZ'] = \"Azerbaijan\";\n    arrCountry['BS'] = \"Bahamas\";\n    arrCountry['BH'] = \"Bahrain\";\n    arrCountry['BD'] = \"Bangladesh\";\n    arrCountry['BB'] = \"Barbados\";\n    arrCountry['BY'] = \"Belarus\";\n    arrCountry['BE'] = \"Belgium\";\n    arrCountry['BZ'] = \"Belize\";\n    arrCountry['BJ'] = \"Benin\";\n    arrCountry['BM'] = \"Bermuda\";\n    arrCountry['BT'] = \"Bhutan\";\n    arrCountry['BO'] = \"Bolivia\";\n    arrCountry['BA'] = \"Bosnia And Herzegovina\";\n    arrCountry['BW'] = \"Botswana\";\n    arrCountry['BV'] = \"Bouvet Island\";\n    arrCountry['BR'] = \"Brazil\";\n    arrCountry['IO'] = \"British Indian Ocean Territory\";\n    arrCountry['BN'] = \"Brunei\";\n    arrCountry['BG'] = \"Bulgaria\";\n    arrCountry['BF'] = \"Burkina Faso\";\n    arrCountry['BI'] = \"Burundi\";\n    arrCountry['KH'] = \"Cambodia\";\n    arrCountry['CM'] = \"Cameroon\";\n    arrCountry['CA'] = \"Canada\";\n    arrCountry['CV'] = \"Cape Verde\";\n    arrCountry['KY'] = \"Cayman Islands\";\n    arrCountry['CF'] = \"Central African Republic\";\n    arrCountry['TD'] = \"Chad\";\n    arrCountry['CL'] = \"Chile\";\n    arrCountry['CN'] = \"China\";\n    arrCountry['CX'] = \"Christmas Island\";\n    arrCountry['CC'] = \"Cocos (Keeling) Islands\";\n    arrCountry['CO'] = \"Colombia\";\n    arrCountry['KM'] = \"Comoros\";\n    arrCountry['CG'] = \"Congo\";\n    arrCountry['CK'] = \"Cook Islands\";\n    arrCountry['CR'] = \"Costa Rica\";\n    arrCountry['CI'] = \"Cote D'Ivorie (Ivory Coast)\";\n    arrCountry['HR'] = \"Croatia (Hrvatska)\";\n    arrCountry['CU'] = \"Cuba\";\n    arrCountry['CY'] = \"Cyprus\";\n    arrCountry['CZ'] = \"Czech Republic\";\n    arrCountry['CD'] = \"Democratic Republic Of Congo (Zaire)\";\n    arrCountry['DK'] = \"Denmark\";\n    arrCountry['DJ'] = \"Djibouti\";\n    arrCountry['DM'] = \"Dominica\";\n    arrCountry['DO'] = \"Dominican Republic\";\n    arrCountry['TL'] = \"East Timor\";\n    arrCountry['EC'] = \"Ecuador\";\n    arrCountry['EG'] = \"Egypt\";\n    arrCountry['SV'] = \"El Salvador\";\n    arrCountry['GQ'] = \"Equatorial Guinea\";\n    arrCountry['ER'] = \"Eritrea\";\n    arrCountry['EE'] = \"Estonia\";\n    arrCountry['ET'] = \"Ethiopia\";\n    arrCountry['FK'] = \"Falkland Islands (Malvinas)\";\n    arrCountry['FO'] = \"Faroe Islands\";\n    arrCountry['FJ'] = \"Fiji\";\n    arrCountry['FI'] = \"Finland\";\n    arrCountry['FR'] = \"France\";\n    arrCountry['FX'] = \"France, Metropolitan\";\n    arrCountry['GF'] = \"French Guinea\";\n    arrCountry['PF'] = \"French Polynesia\";\n    arrCountry['TF'] = \"French Southern Territories\";\n    arrCountry['GA'] = \"Gabon\";\n    arrCountry['GM'] = \"Gambia\";\n    arrCountry['GE'] = \"Georgia\";\n    arrCountry['DE'] = \"Germany\";\n    arrCountry['GH'] = \"Ghana\";\n    arrCountry['GI'] = \"Gibraltar\";\n    arrCountry['GR'] = \"Greece\";\n    arrCountry['GL'] = \"Greenland\";\n    arrCountry['GD'] = \"Grenada\";\n    arrCountry['GP'] = \"Guadeloupe\";\n    arrCountry['GU'] = \"Guam\";\n    arrCountry['GT'] = \"Guatemala\";\n    arrCountry['GN'] = \"Guinea\";\n    arrCountry['GW'] = \"Guinea-Bissau\";\n    arrCountry['GY'] = \"Guyana\";\n    arrCountry['HT'] = \"Haiti\";\n    arrCountry['HM'] = \"Heard And McDonald Islands\";\n    arrCountry['HN'] = \"Honduras\";\n    arrCountry['HK'] = \"Hong Kong\";\n    arrCountry['HU'] = \"Hungary\";\n    arrCountry['IS'] = \"Iceland\";\n    arrCountry['IN'] = \"India\";\n    arrCountry['ID'] = \"Indonesia\";\n    arrCountry['IR'] = \"Iran\";\n    arrCountry['IQ'] = \"Iraq\";\n    arrCountry['IE'] = \"Ireland\";\n    arrCountry['IM'] = \"Isle of Man\";\n    arrCountry['IL'] = \"Israel\";\n    arrCountry['IT'] = \"Italy\";\n    arrCountry['JM'] = \"Jamaica\";\n    arrCountry['JP'] = \"Japan\";\n    arrCountry['JO'] = \"Jordan\";\n    arrCountry['KZ'] = \"Kazakhstan\";\n    arrCountry['KE'] = \"Kenya\";\n    arrCountry['KI'] = \"Kiribati\";\n    arrCountry['KW'] = \"Kuwait\";\n    arrCountry['KG'] = \"Kyrgyzstan\";\n    arrCountry['LA'] = \"Laos\";\n    arrCountry['LV'] = \"Latvia\";\n    arrCountry['LB'] = \"Lebanon\";\n    arrCountry['LS'] = \"Lesotho\";\n    arrCountry['LR'] = \"Liberia\";\n    arrCountry['LY'] = \"Libya\";\n    arrCountry['LI'] = \"Liechtenstein\";\n    arrCountry['LT'] = \"Lithuania\";\n    arrCountry['LU'] = \"Luxembourg\";\n    arrCountry['MO'] = \"Macau\";\n    arrCountry['MK'] = \"Macedonia\";\n    arrCountry['MG'] = \"Madagascar\";\n    arrCountry['MW'] = \"Malawi\";\n    arrCountry['MY'] = \"Malaysia\";\n    arrCountry['MV'] = \"Maldives\";\n    arrCountry['ML'] = \"Mali\";\n    arrCountry['MT'] = \"Malta\";\n    arrCountry['MH'] = \"Marshall Islands\";\n    arrCountry['MQ'] = \"Martinique\";\n    arrCountry['MR'] = \"Mauritania\";\n    arrCountry['MU'] = \"Mauritius\";\n    arrCountry['YT'] = \"Mayotte\";\n    arrCountry['MX'] = \"Mexico\";\n    arrCountry['FM'] = \"Micronesia\";\n    arrCountry['MD'] = \"Moldova\";\n    arrCountry['MC'] = \"Monaco\";\n    arrCountry['MN'] = \"Mongolia\";\n    arrCountry['ME'] = \"Montenegro\";\n    arrCountry['MS'] = \"Montserrat\";\n    arrCountry['MA'] = \"Morocco\";\n    arrCountry['MZ'] = \"Mozambique\";\n    arrCountry['MM'] = \"Myanmar (Burma)\";\n    arrCountry['NA'] = \"Namibia\";\n    arrCountry['NR'] = \"Nauru\";\n    arrCountry['NP'] = \"Nepal\";\n    arrCountry['NL'] = \"Netherlands\";\n    arrCountry['AN'] = \"Netherlands Antilles\";\n    arrCountry['NC'] = \"New Caledonia\";\n    arrCountry['NZ'] = \"New Zealand\";\n    arrCountry['NI'] = \"Nicaragua\";\n    arrCountry['NE'] = \"Niger\";\n    arrCountry['NG'] = \"Nigeria\";\n    arrCountry['NU'] = \"Niue\";\n    arrCountry['NF'] = \"Norfolk Island\";\n    arrCountry['KP'] = \"North Korea\";\n    arrCountry['MP'] = \"Northern Mariana Islands\";\n    arrCountry['NO'] = \"Norway\";\n    arrCountry['OM'] = \"Oman\";\n    arrCountry['PK'] = \"Pakistan\";\n    arrCountry['PW'] = \"Palau\";\n    arrCountry['PS'] = \"Palestine\";\n    arrCountry['PA'] = \"Panama\";\n    arrCountry['PG'] = \"Papua New Guinea\";\n    arrCountry['PY'] = \"Paraguay\";\n    arrCountry['PE'] = \"Peru\";\n    arrCountry['PH'] = \"Philippines\";\n    arrCountry['PN'] = \"Pitcairn\";\n    arrCountry['PL'] = \"Poland\";\n    arrCountry['PT'] = \"Portugal\";\n    arrCountry['PR'] = \"Puerto Rico\";\n    arrCountry['QA'] = \"Qatar\";\n    arrCountry['RE'] = \"Reunion\";\n    arrCountry['RO'] = \"Romania\";\n    arrCountry['RU'] = \"Russia\";\n    arrCountry['RW'] = \"Rwanda\";\n    arrCountry['SH'] = \"Saint Helena\";\n    arrCountry['KN'] = \"Saint Kitts And Nevis\";\n    arrCountry['LC'] = \"Saint Lucia\";\n    arrCountry['PM'] = \"Saint Pierre And Miquelon\";\n    arrCountry['VC'] = \"Saint Vincent And The Grenadines\";\n    arrCountry['SM'] = \"San Marino\";\n    arrCountry['ST'] = \"Sao Tome And Principe\";\n    arrCountry['SA'] = \"Saudi Arabia\";\n    arrCountry['SN'] = \"Senegal\";\n    arrCountry['RS'] = \"Serbia\";\n    arrCountry['SC'] = \"Seychelles\";\n    arrCountry['SL'] = \"Sierra Leone\";\n    arrCountry['SG'] = \"Singapore\";\n    arrCountry['SK'] = \"Slovak Republic\";\n    arrCountry['SI'] = \"Slovenia\";\n    arrCountry['SB'] = \"Solomon Islands\";\n    arrCountry['SO'] = \"Somalia\";\n    arrCountry['ZA'] = \"South Africa\";\n    arrCountry['GS'] = \"South Georgia And South Sandwich Islands\";\n    arrCountry['KR'] = \"South Korea\";\n    arrCountry['ES'] = \"Spain\";\n    arrCountry['LK'] = \"Sri Lanka\";\n    arrCountry['SD'] = \"Sudan\";\n    arrCountry['SR'] = \"Suriname\";\n    arrCountry['SJ'] = \"Svalbard And Jan Mayen\";\n    arrCountry['SZ'] = \"Swaziland\";\n    arrCountry['SE'] = \"Sweden\";\n    arrCountry['CH'] = \"Switzerland\";\n    arrCountry['SY'] = \"Syria\";\n    arrCountry['TW'] = \"Taiwan\";\n    arrCountry['TJ'] = \"Tajikistan\";\n    arrCountry['TZ'] = \"Tanzania\";\n    arrCountry['TH'] = \"Thailand\";\n    arrCountry['TG'] = \"Togo\";\n    arrCountry['TK'] = \"Tokelau\";\n    arrCountry['TO'] = \"Tonga\";\n    arrCountry['TT'] = \"Trinidad And Tobago\";\n    arrCountry['TN'] = \"Tunisia\";\n    arrCountry['TR'] = \"Turkey\";\n    arrCountry['TM'] = \"Turkmenistan\";\n    arrCountry['TC'] = \"Turks And Caicos Islands\";\n    arrCountry['TV'] = \"Tuvalu\";\n    arrCountry['UG'] = \"Uganda\";\n    arrCountry['UA'] = \"Ukraine\";\n    arrCountry['AE'] = \"United Arab Emirates\";\n    arrCountry['GB'] = \"United Kingdom\";\n    arrCountry['US'] = \"United States\";\n    arrCountry['UM'] = \"United States Minor Outlying Islands\";\n    arrCountry['UY'] = \"Uruguay\";\n    arrCountry['UZ'] = \"Uzbekistan\";\n    arrCountry['VU'] = \"Vanuatu\";\n    arrCountry['VA'] = \"Vatican City (Holy See)\";\n    arrCountry['VE'] = \"Venezuela\";\n    arrCountry['VN'] = \"Vietnam\";\n    arrCountry['VG'] = \"Virgin Islands (British)\";\n    arrCountry['VI'] = \"Virgin Islands (US)\";\n    arrCountry['WF'] = \"Wallis And Futuna Islands\";\n    arrCountry['EH'] = \"Western Sahara\";\n    arrCountry['WS'] = \"Western Samoa\";\n    arrCountry['YE'] = \"Yemen\";\n    arrCountry['YU'] = \"Yugoslavia\";\n    arrCountry['ZM'] = \"Zambia\";\n    arrCountry['ZW'] = \"Zimbabwe\";\n\n    var name = arrCountry[countryCode.toUpperCase()];\n    if (name === undefined) {\n        return \"\";\n    }\n    return name;\n}\n"
  },
  {
    "path": "package.json",
    "content": "{\n  \"name\": \"phoneformat.js\",\n  \"version\": \"1.0.9\",\n  \"main\": \"dist/phone-format-exports.js\",\n  \"devDependencies\": {\n    \"grunt\": \"^0.4.5\",\n    \"grunt-autowrap\": \"^0.3.0\",\n    \"grunt-cli\": \"~0.1.13\",\n    \"grunt-contrib-concat\": \"^0.5.1\",\n    \"grunt-contrib-copy\": \"^0.8.1\",\n    \"grunt-contrib-uglify\": \"^0.8.0\",\n    \"grunt-text-replace\": \"^0.4.0\",\n    \"jquery\": \"^2.1.3\",\n    \"qunit\": \"^0.7.5\"\n  },\n  \"scripts\": {\n    \"test\": \"grunt travis --verbose\",\n    \"build\": \"grunt\"\n  }\n}\n"
  },
  {
    "path": "tests/index.html",
    "content": "<!DOCTYPE html>\n<html>\n<head>\n  <meta charset=\"utf-8\">\n  <title>Phone Formatter Tests</title>\n  <link rel=\"stylesheet\" href=\"//code.jquery.com/qunit/qunit-1.17.1.css\">\n</head>\n<body>\n  <div id=\"qunit\"></div>\n  <div id=\"qunit-fixture\"></div>\n  <script src=\"//code.jquery.com/qunit/qunit-1.17.1.js\"></script>\n  <script data-main=\"test-runner\" src=\"require.js\"></script>\n</body>\n</html>\n"
  },
  {
    "path": "tests/jquery.js",
    "content": "/*!\n * jQuery JavaScript Library v2.1.3\n * http://jquery.com/\n *\n * Includes Sizzle.js\n * http://sizzlejs.com/\n *\n * Copyright 2005, 2014 jQuery Foundation, Inc. and other contributors\n * Released under the MIT license\n * http://jquery.org/license\n *\n * Date: 2014-12-18T15:11Z\n */\n\n(function( global, factory ) {\n\n\tif ( typeof module === \"object\" && typeof module.exports === \"object\" ) {\n\t\t// For CommonJS and CommonJS-like environments where a proper `window`\n\t\t// is present, execute the factory and get jQuery.\n\t\t// For environments that do not have a `window` with a `document`\n\t\t// (such as Node.js), expose a factory as module.exports.\n\t\t// This accentuates the need for the creation of a real `window`.\n\t\t// e.g. var jQuery = require(\"jquery\")(window);\n\t\t// See ticket #14549 for more info.\n\t\tmodule.exports = global.document ?\n\t\t\tfactory( global, true ) :\n\t\t\tfunction( w ) {\n\t\t\t\tif ( !w.document ) {\n\t\t\t\t\tthrow new Error( \"jQuery requires a window with a document\" );\n\t\t\t\t}\n\t\t\t\treturn factory( w );\n\t\t\t};\n\t} else {\n\t\tfactory( global );\n\t}\n\n// Pass this if window is not defined yet\n}(typeof window !== \"undefined\" ? window : this, function( window, noGlobal ) {\n\n// Support: Firefox 18+\n// Can't be in strict mode, several libs including ASP.NET trace\n// the stack via arguments.caller.callee and Firefox dies if\n// you try to trace through \"use strict\" call chains. (#13335)\n//\n\nvar arr = [];\n\nvar slice = arr.slice;\n\nvar concat = arr.concat;\n\nvar push = arr.push;\n\nvar indexOf = arr.indexOf;\n\nvar class2type = {};\n\nvar toString = class2type.toString;\n\nvar hasOwn = class2type.hasOwnProperty;\n\nvar support = {};\n\n\n\nvar\n\t// Use the correct document accordingly with window argument (sandbox)\n\tdocument = window.document,\n\n\tversion = \"2.1.3\",\n\n\t// Define a local copy of jQuery\n\tjQuery = function( selector, context ) {\n\t\t// The jQuery object is actually just the init constructor 'enhanced'\n\t\t// Need init if jQuery is called (just allow error to be thrown if not included)\n\t\treturn new jQuery.fn.init( selector, context );\n\t},\n\n\t// Support: Android<4.1\n\t// Make sure we trim BOM and NBSP\n\trtrim = /^[\\s\\uFEFF\\xA0]+|[\\s\\uFEFF\\xA0]+$/g,\n\n\t// Matches dashed string for camelizing\n\trmsPrefix = /^-ms-/,\n\trdashAlpha = /-([\\da-z])/gi,\n\n\t// Used by jQuery.camelCase as callback to replace()\n\tfcamelCase = function( all, letter ) {\n\t\treturn letter.toUpperCase();\n\t};\n\njQuery.fn = jQuery.prototype = {\n\t// The current version of jQuery being used\n\tjquery: version,\n\n\tconstructor: jQuery,\n\n\t// Start with an empty selector\n\tselector: \"\",\n\n\t// The default length of a jQuery object is 0\n\tlength: 0,\n\n\ttoArray: function() {\n\t\treturn slice.call( this );\n\t},\n\n\t// Get the Nth element in the matched element set OR\n\t// Get the whole matched element set as a clean array\n\tget: function( num ) {\n\t\treturn num != null ?\n\n\t\t\t// Return just the one element from the set\n\t\t\t( num < 0 ? this[ num + this.length ] : this[ num ] ) :\n\n\t\t\t// Return all the elements in a clean array\n\t\t\tslice.call( this );\n\t},\n\n\t// Take an array of elements and push it onto the stack\n\t// (returning the new matched element set)\n\tpushStack: function( elems ) {\n\n\t\t// Build a new jQuery matched element set\n\t\tvar ret = jQuery.merge( this.constructor(), elems );\n\n\t\t// Add the old object onto the stack (as a reference)\n\t\tret.prevObject = this;\n\t\tret.context = this.context;\n\n\t\t// Return the newly-formed element set\n\t\treturn ret;\n\t},\n\n\t// Execute a callback for every element in the matched set.\n\t// (You can seed the arguments with an array of args, but this is\n\t// only used internally.)\n\teach: function( callback, args ) {\n\t\treturn jQuery.each( this, callback, args );\n\t},\n\n\tmap: function( callback ) {\n\t\treturn this.pushStack( jQuery.map(this, function( elem, i ) {\n\t\t\treturn callback.call( elem, i, elem );\n\t\t}));\n\t},\n\n\tslice: function() {\n\t\treturn this.pushStack( slice.apply( this, arguments ) );\n\t},\n\n\tfirst: function() {\n\t\treturn this.eq( 0 );\n\t},\n\n\tlast: function() {\n\t\treturn this.eq( -1 );\n\t},\n\n\teq: function( i ) {\n\t\tvar len = this.length,\n\t\t\tj = +i + ( i < 0 ? len : 0 );\n\t\treturn this.pushStack( j >= 0 && j < len ? [ this[j] ] : [] );\n\t},\n\n\tend: function() {\n\t\treturn this.prevObject || this.constructor(null);\n\t},\n\n\t// For internal use only.\n\t// Behaves like an Array's method, not like a jQuery method.\n\tpush: push,\n\tsort: arr.sort,\n\tsplice: arr.splice\n};\n\njQuery.extend = jQuery.fn.extend = function() {\n\tvar options, name, src, copy, copyIsArray, clone,\n\t\ttarget = arguments[0] || {},\n\t\ti = 1,\n\t\tlength = arguments.length,\n\t\tdeep = false;\n\n\t// Handle a deep copy situation\n\tif ( typeof target === \"boolean\" ) {\n\t\tdeep = target;\n\n\t\t// Skip the boolean and the target\n\t\ttarget = arguments[ i ] || {};\n\t\ti++;\n\t}\n\n\t// Handle case when target is a string or something (possible in deep copy)\n\tif ( typeof target !== \"object\" && !jQuery.isFunction(target) ) {\n\t\ttarget = {};\n\t}\n\n\t// Extend jQuery itself if only one argument is passed\n\tif ( i === length ) {\n\t\ttarget = this;\n\t\ti--;\n\t}\n\n\tfor ( ; i < length; i++ ) {\n\t\t// Only deal with non-null/undefined values\n\t\tif ( (options = arguments[ i ]) != null ) {\n\t\t\t// Extend the base object\n\t\t\tfor ( name in options ) {\n\t\t\t\tsrc = target[ name ];\n\t\t\t\tcopy = options[ name ];\n\n\t\t\t\t// Prevent never-ending loop\n\t\t\t\tif ( target === copy ) {\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\n\t\t\t\t// Recurse if we're merging plain objects or arrays\n\t\t\t\tif ( deep && copy && ( jQuery.isPlainObject(copy) || (copyIsArray = jQuery.isArray(copy)) ) ) {\n\t\t\t\t\tif ( copyIsArray ) {\n\t\t\t\t\t\tcopyIsArray = false;\n\t\t\t\t\t\tclone = src && jQuery.isArray(src) ? src : [];\n\n\t\t\t\t\t} else {\n\t\t\t\t\t\tclone = src && jQuery.isPlainObject(src) ? src : {};\n\t\t\t\t\t}\n\n\t\t\t\t\t// Never move original objects, clone them\n\t\t\t\t\ttarget[ name ] = jQuery.extend( deep, clone, copy );\n\n\t\t\t\t// Don't bring in undefined values\n\t\t\t\t} else if ( copy !== undefined ) {\n\t\t\t\t\ttarget[ name ] = copy;\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\njQuery.extend({\n\t// Unique for each copy of jQuery on the page\n\texpando: \"jQuery\" + ( version + Math.random() ).replace( /\\D/g, \"\" ),\n\n\t// Assume jQuery is ready without the ready module\n\tisReady: true,\n\n\terror: function( msg ) {\n\t\tthrow new Error( msg );\n\t},\n\n\tnoop: function() {},\n\n\tisFunction: function( obj ) {\n\t\treturn jQuery.type(obj) === \"function\";\n\t},\n\n\tisArray: Array.isArray,\n\n\tisWindow: function( obj ) {\n\t\treturn obj != null && obj === obj.window;\n\t},\n\n\tisNumeric: function( obj ) {\n\t\t// parseFloat NaNs numeric-cast false positives (null|true|false|\"\")\n\t\t// ...but misinterprets leading-number strings, particularly hex literals (\"0x...\")\n\t\t// subtraction forces infinities to NaN\n\t\t// adding 1 corrects loss of precision from parseFloat (#15100)\n\t\treturn !jQuery.isArray( obj ) && (obj - parseFloat( obj ) + 1) >= 0;\n\t},\n\n\tisPlainObject: function( obj ) {\n\t\t// Not plain objects:\n\t\t// - Any object or value whose internal [[Class]] property is not \"[object Object]\"\n\t\t// - DOM nodes\n\t\t// - window\n\t\tif ( jQuery.type( obj ) !== \"object\" || obj.nodeType || jQuery.isWindow( obj ) ) {\n\t\t\treturn false;\n\t\t}\n\n\t\tif ( obj.constructor &&\n\t\t\t\t!hasOwn.call( obj.constructor.prototype, \"isPrototypeOf\" ) ) {\n\t\t\treturn false;\n\t\t}\n\n\t\t// If the function hasn't returned already, we're confident that\n\t\t// |obj| is a plain object, created by {} or constructed with new Object\n\t\treturn true;\n\t},\n\n\tisEmptyObject: function( obj ) {\n\t\tvar name;\n\t\tfor ( name in obj ) {\n\t\t\treturn false;\n\t\t}\n\t\treturn true;\n\t},\n\n\ttype: function( obj ) {\n\t\tif ( obj == null ) {\n\t\t\treturn obj + \"\";\n\t\t}\n\t\t// Support: Android<4.0, iOS<6 (functionish RegExp)\n\t\treturn typeof obj === \"object\" || typeof obj === \"function\" ?\n\t\t\tclass2type[ toString.call(obj) ] || \"object\" :\n\t\t\ttypeof obj;\n\t},\n\n\t// Evaluates a script in a global context\n\tglobalEval: function( code ) {\n\t\tvar script,\n\t\t\tindirect = eval;\n\n\t\tcode = jQuery.trim( code );\n\n\t\tif ( code ) {\n\t\t\t// If the code includes a valid, prologue position\n\t\t\t// strict mode pragma, execute code by injecting a\n\t\t\t// script tag into the document.\n\t\t\tif ( code.indexOf(\"use strict\") === 1 ) {\n\t\t\t\tscript = document.createElement(\"script\");\n\t\t\t\tscript.text = code;\n\t\t\t\tdocument.head.appendChild( script ).parentNode.removeChild( script );\n\t\t\t} else {\n\t\t\t// Otherwise, avoid the DOM node creation, insertion\n\t\t\t// and removal by using an indirect global eval\n\t\t\t\tindirect( code );\n\t\t\t}\n\t\t}\n\t},\n\n\t// Convert dashed to camelCase; used by the css and data modules\n\t// Support: IE9-11+\n\t// Microsoft forgot to hump their vendor prefix (#9572)\n\tcamelCase: function( string ) {\n\t\treturn string.replace( rmsPrefix, \"ms-\" ).replace( rdashAlpha, fcamelCase );\n\t},\n\n\tnodeName: function( elem, name ) {\n\t\treturn elem.nodeName && elem.nodeName.toLowerCase() === name.toLowerCase();\n\t},\n\n\t// args is for internal usage only\n\teach: function( obj, callback, args ) {\n\t\tvar value,\n\t\t\ti = 0,\n\t\t\tlength = obj.length,\n\t\t\tisArray = isArraylike( obj );\n\n\t\tif ( args ) {\n\t\t\tif ( isArray ) {\n\t\t\t\tfor ( ; i < length; i++ ) {\n\t\t\t\t\tvalue = callback.apply( obj[ i ], args );\n\n\t\t\t\t\tif ( value === false ) {\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tfor ( i in obj ) {\n\t\t\t\t\tvalue = callback.apply( obj[ i ], args );\n\n\t\t\t\t\tif ( value === false ) {\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t// A special, fast, case for the most common use of each\n\t\t} else {\n\t\t\tif ( isArray ) {\n\t\t\t\tfor ( ; i < length; i++ ) {\n\t\t\t\t\tvalue = callback.call( obj[ i ], i, obj[ i ] );\n\n\t\t\t\t\tif ( value === false ) {\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tfor ( i in obj ) {\n\t\t\t\t\tvalue = callback.call( obj[ i ], i, obj[ i ] );\n\n\t\t\t\t\tif ( value === false ) {\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn obj;\n\t},\n\n\t// Support: Android<4.1\n\ttrim: function( text ) {\n\t\treturn text == null ?\n\t\t\t\"\" :\n\t\t\t( text + \"\" ).replace( rtrim, \"\" );\n\t},\n\n\t// results is for internal usage only\n\tmakeArray: function( arr, results ) {\n\t\tvar ret = results || [];\n\n\t\tif ( arr != null ) {\n\t\t\tif ( isArraylike( Object(arr) ) ) {\n\t\t\t\tjQuery.merge( ret,\n\t\t\t\t\ttypeof arr === \"string\" ?\n\t\t\t\t\t[ arr ] : arr\n\t\t\t\t);\n\t\t\t} else {\n\t\t\t\tpush.call( ret, arr );\n\t\t\t}\n\t\t}\n\n\t\treturn ret;\n\t},\n\n\tinArray: function( elem, arr, i ) {\n\t\treturn arr == null ? -1 : indexOf.call( arr, elem, i );\n\t},\n\n\tmerge: function( first, second ) {\n\t\tvar len = +second.length,\n\t\t\tj = 0,\n\t\t\ti = first.length;\n\n\t\tfor ( ; j < len; j++ ) {\n\t\t\tfirst[ i++ ] = second[ j ];\n\t\t}\n\n\t\tfirst.length = i;\n\n\t\treturn first;\n\t},\n\n\tgrep: function( elems, callback, invert ) {\n\t\tvar callbackInverse,\n\t\t\tmatches = [],\n\t\t\ti = 0,\n\t\t\tlength = elems.length,\n\t\t\tcallbackExpect = !invert;\n\n\t\t// Go through the array, only saving the items\n\t\t// that pass the validator function\n\t\tfor ( ; i < length; i++ ) {\n\t\t\tcallbackInverse = !callback( elems[ i ], i );\n\t\t\tif ( callbackInverse !== callbackExpect ) {\n\t\t\t\tmatches.push( elems[ i ] );\n\t\t\t}\n\t\t}\n\n\t\treturn matches;\n\t},\n\n\t// arg is for internal usage only\n\tmap: function( elems, callback, arg ) {\n\t\tvar value,\n\t\t\ti = 0,\n\t\t\tlength = elems.length,\n\t\t\tisArray = isArraylike( elems ),\n\t\t\tret = [];\n\n\t\t// Go through the array, translating each of the items to their new values\n\t\tif ( isArray ) {\n\t\t\tfor ( ; i < length; i++ ) {\n\t\t\t\tvalue = callback( elems[ i ], i, arg );\n\n\t\t\t\tif ( value != null ) {\n\t\t\t\t\tret.push( value );\n\t\t\t\t}\n\t\t\t}\n\n\t\t// Go through every key on the object,\n\t\t} else {\n\t\t\tfor ( i in elems ) {\n\t\t\t\tvalue = callback( elems[ i ], i, arg );\n\n\t\t\t\tif ( value != null ) {\n\t\t\t\t\tret.push( value );\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t// Flatten any nested arrays\n\t\treturn concat.apply( [], ret );\n\t},\n\n\t// A global GUID counter for objects\n\tguid: 1,\n\n\t// Bind a function to a context, optionally partially applying any\n\t// arguments.\n\tproxy: function( fn, context ) {\n\t\tvar tmp, args, proxy;\n\n\t\tif ( typeof context === \"string\" ) {\n\t\t\ttmp = fn[ context ];\n\t\t\tcontext = fn;\n\t\t\tfn = tmp;\n\t\t}\n\n\t\t// Quick check to determine if target is callable, in the spec\n\t\t// this throws a TypeError, but we will just return undefined.\n\t\tif ( !jQuery.isFunction( fn ) ) {\n\t\t\treturn undefined;\n\t\t}\n\n\t\t// Simulated bind\n\t\targs = slice.call( arguments, 2 );\n\t\tproxy = function() {\n\t\t\treturn fn.apply( context || this, args.concat( slice.call( arguments ) ) );\n\t\t};\n\n\t\t// Set the guid of unique handler to the same of original handler, so it can be removed\n\t\tproxy.guid = fn.guid = fn.guid || jQuery.guid++;\n\n\t\treturn proxy;\n\t},\n\n\tnow: Date.now,\n\n\t// jQuery.support is not used in Core but other projects attach their\n\t// properties to it so it needs to exist.\n\tsupport: support\n});\n\n// Populate the class2type map\njQuery.each(\"Boolean Number String Function Array Date RegExp Object Error\".split(\" \"), function(i, name) {\n\tclass2type[ \"[object \" + name + \"]\" ] = name.toLowerCase();\n});\n\nfunction isArraylike( obj ) {\n\tvar length = obj.length,\n\t\ttype = jQuery.type( obj );\n\n\tif ( type === \"function\" || jQuery.isWindow( obj ) ) {\n\t\treturn false;\n\t}\n\n\tif ( obj.nodeType === 1 && length ) {\n\t\treturn true;\n\t}\n\n\treturn type === \"array\" || length === 0 ||\n\t\ttypeof length === \"number\" && length > 0 && ( length - 1 ) in obj;\n}\nvar Sizzle =\n/*!\n * Sizzle CSS Selector Engine v2.2.0-pre\n * http://sizzlejs.com/\n *\n * Copyright 2008, 2014 jQuery Foundation, Inc. and other contributors\n * Released under the MIT license\n * http://jquery.org/license\n *\n * Date: 2014-12-16\n */\n(function( window ) {\n\nvar i,\n\tsupport,\n\tExpr,\n\tgetText,\n\tisXML,\n\ttokenize,\n\tcompile,\n\tselect,\n\toutermostContext,\n\tsortInput,\n\thasDuplicate,\n\n\t// Local document vars\n\tsetDocument,\n\tdocument,\n\tdocElem,\n\tdocumentIsHTML,\n\trbuggyQSA,\n\trbuggyMatches,\n\tmatches,\n\tcontains,\n\n\t// Instance-specific data\n\texpando = \"sizzle\" + 1 * new Date(),\n\tpreferredDoc = window.document,\n\tdirruns = 0,\n\tdone = 0,\n\tclassCache = createCache(),\n\ttokenCache = createCache(),\n\tcompilerCache = createCache(),\n\tsortOrder = function( a, b ) {\n\t\tif ( a === b ) {\n\t\t\thasDuplicate = true;\n\t\t}\n\t\treturn 0;\n\t},\n\n\t// General-purpose constants\n\tMAX_NEGATIVE = 1 << 31,\n\n\t// Instance methods\n\thasOwn = ({}).hasOwnProperty,\n\tarr = [],\n\tpop = arr.pop,\n\tpush_native = arr.push,\n\tpush = arr.push,\n\tslice = arr.slice,\n\t// Use a stripped-down indexOf as it's faster than native\n\t// http://jsperf.com/thor-indexof-vs-for/5\n\tindexOf = function( list, elem ) {\n\t\tvar i = 0,\n\t\t\tlen = list.length;\n\t\tfor ( ; i < len; i++ ) {\n\t\t\tif ( list[i] === elem ) {\n\t\t\t\treturn i;\n\t\t\t}\n\t\t}\n\t\treturn -1;\n\t},\n\n\tbooleans = \"checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped\",\n\n\t// Regular expressions\n\n\t// Whitespace characters http://www.w3.org/TR/css3-selectors/#whitespace\n\twhitespace = \"[\\\\x20\\\\t\\\\r\\\\n\\\\f]\",\n\t// http://www.w3.org/TR/css3-syntax/#characters\n\tcharacterEncoding = \"(?:\\\\\\\\.|[\\\\w-]|[^\\\\x00-\\\\xa0])+\",\n\n\t// Loosely modeled on CSS identifier characters\n\t// An unquoted value should be a CSS identifier http://www.w3.org/TR/css3-selectors/#attribute-selectors\n\t// Proper syntax: http://www.w3.org/TR/CSS21/syndata.html#value-def-identifier\n\tidentifier = characterEncoding.replace( \"w\", \"w#\" ),\n\n\t// Attribute selectors: http://www.w3.org/TR/selectors/#attribute-selectors\n\tattributes = \"\\\\[\" + whitespace + \"*(\" + characterEncoding + \")(?:\" + whitespace +\n\t\t// Operator (capture 2)\n\t\t\"*([*^$|!~]?=)\" + whitespace +\n\t\t// \"Attribute values must be CSS identifiers [capture 5] or strings [capture 3 or capture 4]\"\n\t\t\"*(?:'((?:\\\\\\\\.|[^\\\\\\\\'])*)'|\\\"((?:\\\\\\\\.|[^\\\\\\\\\\\"])*)\\\"|(\" + identifier + \"))|)\" + whitespace +\n\t\t\"*\\\\]\",\n\n\tpseudos = \":(\" + characterEncoding + \")(?:\\\\((\" +\n\t\t// To reduce the number of selectors needing tokenize in the preFilter, prefer arguments:\n\t\t// 1. quoted (capture 3; capture 4 or capture 5)\n\t\t\"('((?:\\\\\\\\.|[^\\\\\\\\'])*)'|\\\"((?:\\\\\\\\.|[^\\\\\\\\\\\"])*)\\\")|\" +\n\t\t// 2. simple (capture 6)\n\t\t\"((?:\\\\\\\\.|[^\\\\\\\\()[\\\\]]|\" + attributes + \")*)|\" +\n\t\t// 3. anything else (capture 2)\n\t\t\".*\" +\n\t\t\")\\\\)|)\",\n\n\t// Leading and non-escaped trailing whitespace, capturing some non-whitespace characters preceding the latter\n\trwhitespace = new RegExp( whitespace + \"+\", \"g\" ),\n\trtrim = new RegExp( \"^\" + whitespace + \"+|((?:^|[^\\\\\\\\])(?:\\\\\\\\.)*)\" + whitespace + \"+$\", \"g\" ),\n\n\trcomma = new RegExp( \"^\" + whitespace + \"*,\" + whitespace + \"*\" ),\n\trcombinators = new RegExp( \"^\" + whitespace + \"*([>+~]|\" + whitespace + \")\" + whitespace + \"*\" ),\n\n\trattributeQuotes = new RegExp( \"=\" + whitespace + \"*([^\\\\]'\\\"]*?)\" + whitespace + \"*\\\\]\", \"g\" ),\n\n\trpseudo = new RegExp( pseudos ),\n\tridentifier = new RegExp( \"^\" + identifier + \"$\" ),\n\n\tmatchExpr = {\n\t\t\"ID\": new RegExp( \"^#(\" + characterEncoding + \")\" ),\n\t\t\"CLASS\": new RegExp( \"^\\\\.(\" + characterEncoding + \")\" ),\n\t\t\"TAG\": new RegExp( \"^(\" + characterEncoding.replace( \"w\", \"w*\" ) + \")\" ),\n\t\t\"ATTR\": new RegExp( \"^\" + attributes ),\n\t\t\"PSEUDO\": new RegExp( \"^\" + pseudos ),\n\t\t\"CHILD\": new RegExp( \"^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\\\(\" + whitespace +\n\t\t\t\"*(even|odd|(([+-]|)(\\\\d*)n|)\" + whitespace + \"*(?:([+-]|)\" + whitespace +\n\t\t\t\"*(\\\\d+)|))\" + whitespace + \"*\\\\)|)\", \"i\" ),\n\t\t\"bool\": new RegExp( \"^(?:\" + booleans + \")$\", \"i\" ),\n\t\t// For use in libraries implementing .is()\n\t\t// We use this for POS matching in `select`\n\t\t\"needsContext\": new RegExp( \"^\" + whitespace + \"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\\\(\" +\n\t\t\twhitespace + \"*((?:-\\\\d)?\\\\d*)\" + whitespace + \"*\\\\)|)(?=[^-]|$)\", \"i\" )\n\t},\n\n\trinputs = /^(?:input|select|textarea|button)$/i,\n\trheader = /^h\\d$/i,\n\n\trnative = /^[^{]+\\{\\s*\\[native \\w/,\n\n\t// Easily-parseable/retrievable ID or TAG or CLASS selectors\n\trquickExpr = /^(?:#([\\w-]+)|(\\w+)|\\.([\\w-]+))$/,\n\n\trsibling = /[+~]/,\n\trescape = /'|\\\\/g,\n\n\t// CSS escapes http://www.w3.org/TR/CSS21/syndata.html#escaped-characters\n\trunescape = new RegExp( \"\\\\\\\\([\\\\da-f]{1,6}\" + whitespace + \"?|(\" + whitespace + \")|.)\", \"ig\" ),\n\tfunescape = function( _, escaped, escapedWhitespace ) {\n\t\tvar high = \"0x\" + escaped - 0x10000;\n\t\t// NaN means non-codepoint\n\t\t// Support: Firefox<24\n\t\t// Workaround erroneous numeric interpretation of +\"0x\"\n\t\treturn high !== high || escapedWhitespace ?\n\t\t\tescaped :\n\t\t\thigh < 0 ?\n\t\t\t\t// BMP codepoint\n\t\t\t\tString.fromCharCode( high + 0x10000 ) :\n\t\t\t\t// Supplemental Plane codepoint (surrogate pair)\n\t\t\t\tString.fromCharCode( high >> 10 | 0xD800, high & 0x3FF | 0xDC00 );\n\t},\n\n\t// Used for iframes\n\t// See setDocument()\n\t// Removing the function wrapper causes a \"Permission Denied\"\n\t// error in IE\n\tunloadHandler = function() {\n\t\tsetDocument();\n\t};\n\n// Optimize for push.apply( _, NodeList )\ntry {\n\tpush.apply(\n\t\t(arr = slice.call( preferredDoc.childNodes )),\n\t\tpreferredDoc.childNodes\n\t);\n\t// Support: Android<4.0\n\t// Detect silently failing push.apply\n\tarr[ preferredDoc.childNodes.length ].nodeType;\n} catch ( e ) {\n\tpush = { apply: arr.length ?\n\n\t\t// Leverage slice if possible\n\t\tfunction( target, els ) {\n\t\t\tpush_native.apply( target, slice.call(els) );\n\t\t} :\n\n\t\t// Support: IE<9\n\t\t// Otherwise append directly\n\t\tfunction( target, els ) {\n\t\t\tvar j = target.length,\n\t\t\t\ti = 0;\n\t\t\t// Can't trust NodeList.length\n\t\t\twhile ( (target[j++] = els[i++]) ) {}\n\t\t\ttarget.length = j - 1;\n\t\t}\n\t};\n}\n\nfunction Sizzle( selector, context, results, seed ) {\n\tvar match, elem, m, nodeType,\n\t\t// QSA vars\n\t\ti, groups, old, nid, newContext, newSelector;\n\n\tif ( ( context ? context.ownerDocument || context : preferredDoc ) !== document ) {\n\t\tsetDocument( context );\n\t}\n\n\tcontext = context || document;\n\tresults = results || [];\n\tnodeType = context.nodeType;\n\n\tif ( typeof selector !== \"string\" || !selector ||\n\t\tnodeType !== 1 && nodeType !== 9 && nodeType !== 11 ) {\n\n\t\treturn results;\n\t}\n\n\tif ( !seed && documentIsHTML ) {\n\n\t\t// Try to shortcut find operations when possible (e.g., not under DocumentFragment)\n\t\tif ( nodeType !== 11 && (match = rquickExpr.exec( selector )) ) {\n\t\t\t// Speed-up: Sizzle(\"#ID\")\n\t\t\tif ( (m = match[1]) ) {\n\t\t\t\tif ( nodeType === 9 ) {\n\t\t\t\t\telem = context.getElementById( m );\n\t\t\t\t\t// Check parentNode to catch when Blackberry 4.6 returns\n\t\t\t\t\t// nodes that are no longer in the document (jQuery #6963)\n\t\t\t\t\tif ( elem && elem.parentNode ) {\n\t\t\t\t\t\t// Handle the case where IE, Opera, and Webkit return items\n\t\t\t\t\t\t// by name instead of ID\n\t\t\t\t\t\tif ( elem.id === m ) {\n\t\t\t\t\t\t\tresults.push( elem );\n\t\t\t\t\t\t\treturn results;\n\t\t\t\t\t\t}\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn results;\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\t// Context is not a document\n\t\t\t\t\tif ( context.ownerDocument && (elem = context.ownerDocument.getElementById( m )) &&\n\t\t\t\t\t\tcontains( context, elem ) && elem.id === m ) {\n\t\t\t\t\t\tresults.push( elem );\n\t\t\t\t\t\treturn results;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t// Speed-up: Sizzle(\"TAG\")\n\t\t\t} else if ( match[2] ) {\n\t\t\t\tpush.apply( results, context.getElementsByTagName( selector ) );\n\t\t\t\treturn results;\n\n\t\t\t// Speed-up: Sizzle(\".CLASS\")\n\t\t\t} else if ( (m = match[3]) && support.getElementsByClassName ) {\n\t\t\t\tpush.apply( results, context.getElementsByClassName( m ) );\n\t\t\t\treturn results;\n\t\t\t}\n\t\t}\n\n\t\t// QSA path\n\t\tif ( support.qsa && (!rbuggyQSA || !rbuggyQSA.test( selector )) ) {\n\t\t\tnid = old = expando;\n\t\t\tnewContext = context;\n\t\t\tnewSelector = nodeType !== 1 && selector;\n\n\t\t\t// qSA works strangely on Element-rooted queries\n\t\t\t// We can work around this by specifying an extra ID on the root\n\t\t\t// and working up from there (Thanks to Andrew Dupont for the technique)\n\t\t\t// IE 8 doesn't work on object elements\n\t\t\tif ( nodeType === 1 && context.nodeName.toLowerCase() !== \"object\" ) {\n\t\t\t\tgroups = tokenize( selector );\n\n\t\t\t\tif ( (old = context.getAttribute(\"id\")) ) {\n\t\t\t\t\tnid = old.replace( rescape, \"\\\\$&\" );\n\t\t\t\t} else {\n\t\t\t\t\tcontext.setAttribute( \"id\", nid );\n\t\t\t\t}\n\t\t\t\tnid = \"[id='\" + nid + \"'] \";\n\n\t\t\t\ti = groups.length;\n\t\t\t\twhile ( i-- ) {\n\t\t\t\t\tgroups[i] = nid + toSelector( groups[i] );\n\t\t\t\t}\n\t\t\t\tnewContext = rsibling.test( selector ) && testContext( context.parentNode ) || context;\n\t\t\t\tnewSelector = groups.join(\",\");\n\t\t\t}\n\n\t\t\tif ( newSelector ) {\n\t\t\t\ttry {\n\t\t\t\t\tpush.apply( results,\n\t\t\t\t\t\tnewContext.querySelectorAll( newSelector )\n\t\t\t\t\t);\n\t\t\t\t\treturn results;\n\t\t\t\t} catch(qsaError) {\n\t\t\t\t} finally {\n\t\t\t\t\tif ( !old ) {\n\t\t\t\t\t\tcontext.removeAttribute(\"id\");\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t// All others\n\treturn select( selector.replace( rtrim, \"$1\" ), context, results, seed );\n}\n\n/**\n * Create key-value caches of limited size\n * @returns {Function(string, Object)} Returns the Object data after storing it on itself with\n *\tproperty name the (space-suffixed) string and (if the cache is larger than Expr.cacheLength)\n *\tdeleting the oldest entry\n */\nfunction createCache() {\n\tvar keys = [];\n\n\tfunction cache( key, value ) {\n\t\t// Use (key + \" \") to avoid collision with native prototype properties (see Issue #157)\n\t\tif ( keys.push( key + \" \" ) > Expr.cacheLength ) {\n\t\t\t// Only keep the most recent entries\n\t\t\tdelete cache[ keys.shift() ];\n\t\t}\n\t\treturn (cache[ key + \" \" ] = value);\n\t}\n\treturn cache;\n}\n\n/**\n * Mark a function for special use by Sizzle\n * @param {Function} fn The function to mark\n */\nfunction markFunction( fn ) {\n\tfn[ expando ] = true;\n\treturn fn;\n}\n\n/**\n * Support testing using an element\n * @param {Function} fn Passed the created div and expects a boolean result\n */\nfunction assert( fn ) {\n\tvar div = document.createElement(\"div\");\n\n\ttry {\n\t\treturn !!fn( div );\n\t} catch (e) {\n\t\treturn false;\n\t} finally {\n\t\t// Remove from its parent by default\n\t\tif ( div.parentNode ) {\n\t\t\tdiv.parentNode.removeChild( div );\n\t\t}\n\t\t// release memory in IE\n\t\tdiv = null;\n\t}\n}\n\n/**\n * Adds the same handler for all of the specified attrs\n * @param {String} attrs Pipe-separated list of attributes\n * @param {Function} handler The method that will be applied\n */\nfunction addHandle( attrs, handler ) {\n\tvar arr = attrs.split(\"|\"),\n\t\ti = attrs.length;\n\n\twhile ( i-- ) {\n\t\tExpr.attrHandle[ arr[i] ] = handler;\n\t}\n}\n\n/**\n * Checks document order of two siblings\n * @param {Element} a\n * @param {Element} b\n * @returns {Number} Returns less than 0 if a precedes b, greater than 0 if a follows b\n */\nfunction siblingCheck( a, b ) {\n\tvar cur = b && a,\n\t\tdiff = cur && a.nodeType === 1 && b.nodeType === 1 &&\n\t\t\t( ~b.sourceIndex || MAX_NEGATIVE ) -\n\t\t\t( ~a.sourceIndex || MAX_NEGATIVE );\n\n\t// Use IE sourceIndex if available on both nodes\n\tif ( diff ) {\n\t\treturn diff;\n\t}\n\n\t// Check if b follows a\n\tif ( cur ) {\n\t\twhile ( (cur = cur.nextSibling) ) {\n\t\t\tif ( cur === b ) {\n\t\t\t\treturn -1;\n\t\t\t}\n\t\t}\n\t}\n\n\treturn a ? 1 : -1;\n}\n\n/**\n * Returns a function to use in pseudos for input types\n * @param {String} type\n */\nfunction createInputPseudo( type ) {\n\treturn function( elem ) {\n\t\tvar name = elem.nodeName.toLowerCase();\n\t\treturn name === \"input\" && elem.type === type;\n\t};\n}\n\n/**\n * Returns a function to use in pseudos for buttons\n * @param {String} type\n */\nfunction createButtonPseudo( type ) {\n\treturn function( elem ) {\n\t\tvar name = elem.nodeName.toLowerCase();\n\t\treturn (name === \"input\" || name === \"button\") && elem.type === type;\n\t};\n}\n\n/**\n * Returns a function to use in pseudos for positionals\n * @param {Function} fn\n */\nfunction createPositionalPseudo( fn ) {\n\treturn markFunction(function( argument ) {\n\t\targument = +argument;\n\t\treturn markFunction(function( seed, matches ) {\n\t\t\tvar j,\n\t\t\t\tmatchIndexes = fn( [], seed.length, argument ),\n\t\t\t\ti = matchIndexes.length;\n\n\t\t\t// Match elements found at the specified indexes\n\t\t\twhile ( i-- ) {\n\t\t\t\tif ( seed[ (j = matchIndexes[i]) ] ) {\n\t\t\t\t\tseed[j] = !(matches[j] = seed[j]);\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t});\n}\n\n/**\n * Checks a node for validity as a Sizzle context\n * @param {Element|Object=} context\n * @returns {Element|Object|Boolean} The input node if acceptable, otherwise a falsy value\n */\nfunction testContext( context ) {\n\treturn context && typeof context.getElementsByTagName !== \"undefined\" && context;\n}\n\n// Expose support vars for convenience\nsupport = Sizzle.support = {};\n\n/**\n * Detects XML nodes\n * @param {Element|Object} elem An element or a document\n * @returns {Boolean} True iff elem is a non-HTML XML node\n */\nisXML = Sizzle.isXML = function( elem ) {\n\t// documentElement is verified for cases where it doesn't yet exist\n\t// (such as loading iframes in IE - #4833)\n\tvar documentElement = elem && (elem.ownerDocument || elem).documentElement;\n\treturn documentElement ? documentElement.nodeName !== \"HTML\" : false;\n};\n\n/**\n * Sets document-related variables once based on the current document\n * @param {Element|Object} [doc] An element or document object to use to set the document\n * @returns {Object} Returns the current document\n */\nsetDocument = Sizzle.setDocument = function( node ) {\n\tvar hasCompare, parent,\n\t\tdoc = node ? node.ownerDocument || node : preferredDoc;\n\n\t// If no document and documentElement is available, return\n\tif ( doc === document || doc.nodeType !== 9 || !doc.documentElement ) {\n\t\treturn document;\n\t}\n\n\t// Set our document\n\tdocument = doc;\n\tdocElem = doc.documentElement;\n\tparent = doc.defaultView;\n\n\t// Support: IE>8\n\t// If iframe document is assigned to \"document\" variable and if iframe has been reloaded,\n\t// IE will throw \"permission denied\" error when accessing \"document\" variable, see jQuery #13936\n\t// IE6-8 do not support the defaultView property so parent will be undefined\n\tif ( parent && parent !== parent.top ) {\n\t\t// IE11 does not have attachEvent, so all must suffer\n\t\tif ( parent.addEventListener ) {\n\t\t\tparent.addEventListener( \"unload\", unloadHandler, false );\n\t\t} else if ( parent.attachEvent ) {\n\t\t\tparent.attachEvent( \"onunload\", unloadHandler );\n\t\t}\n\t}\n\n\t/* Support tests\n\t---------------------------------------------------------------------- */\n\tdocumentIsHTML = !isXML( doc );\n\n\t/* Attributes\n\t---------------------------------------------------------------------- */\n\n\t// Support: IE<8\n\t// Verify that getAttribute really returns attributes and not properties\n\t// (excepting IE8 booleans)\n\tsupport.attributes = assert(function( div ) {\n\t\tdiv.className = \"i\";\n\t\treturn !div.getAttribute(\"className\");\n\t});\n\n\t/* getElement(s)By*\n\t---------------------------------------------------------------------- */\n\n\t// Check if getElementsByTagName(\"*\") returns only elements\n\tsupport.getElementsByTagName = assert(function( div ) {\n\t\tdiv.appendChild( doc.createComment(\"\") );\n\t\treturn !div.getElementsByTagName(\"*\").length;\n\t});\n\n\t// Support: IE<9\n\tsupport.getElementsByClassName = rnative.test( doc.getElementsByClassName );\n\n\t// Support: IE<10\n\t// Check if getElementById returns elements by name\n\t// The broken getElementById methods don't pick up programatically-set names,\n\t// so use a roundabout getElementsByName test\n\tsupport.getById = assert(function( div ) {\n\t\tdocElem.appendChild( div ).id = expando;\n\t\treturn !doc.getElementsByName || !doc.getElementsByName( expando ).length;\n\t});\n\n\t// ID find and filter\n\tif ( support.getById ) {\n\t\tExpr.find[\"ID\"] = function( id, context ) {\n\t\t\tif ( typeof context.getElementById !== \"undefined\" && documentIsHTML ) {\n\t\t\t\tvar m = context.getElementById( id );\n\t\t\t\t// Check parentNode to catch when Blackberry 4.6 returns\n\t\t\t\t// nodes that are no longer in the document #6963\n\t\t\t\treturn m && m.parentNode ? [ m ] : [];\n\t\t\t}\n\t\t};\n\t\tExpr.filter[\"ID\"] = function( id ) {\n\t\t\tvar attrId = id.replace( runescape, funescape );\n\t\t\treturn function( elem ) {\n\t\t\t\treturn elem.getAttribute(\"id\") === attrId;\n\t\t\t};\n\t\t};\n\t} else {\n\t\t// Support: IE6/7\n\t\t// getElementById is not reliable as a find shortcut\n\t\tdelete Expr.find[\"ID\"];\n\n\t\tExpr.filter[\"ID\"] =  function( id ) {\n\t\t\tvar attrId = id.replace( runescape, funescape );\n\t\t\treturn function( elem ) {\n\t\t\t\tvar node = typeof elem.getAttributeNode !== \"undefined\" && elem.getAttributeNode(\"id\");\n\t\t\t\treturn node && node.value === attrId;\n\t\t\t};\n\t\t};\n\t}\n\n\t// Tag\n\tExpr.find[\"TAG\"] = support.getElementsByTagName ?\n\t\tfunction( tag, context ) {\n\t\t\tif ( typeof context.getElementsByTagName !== \"undefined\" ) {\n\t\t\t\treturn context.getElementsByTagName( tag );\n\n\t\t\t// DocumentFragment nodes don't have gEBTN\n\t\t\t} else if ( support.qsa ) {\n\t\t\t\treturn context.querySelectorAll( tag );\n\t\t\t}\n\t\t} :\n\n\t\tfunction( tag, context ) {\n\t\t\tvar elem,\n\t\t\t\ttmp = [],\n\t\t\t\ti = 0,\n\t\t\t\t// By happy coincidence, a (broken) gEBTN appears on DocumentFragment nodes too\n\t\t\t\tresults = context.getElementsByTagName( tag );\n\n\t\t\t// Filter out possible comments\n\t\t\tif ( tag === \"*\" ) {\n\t\t\t\twhile ( (elem = results[i++]) ) {\n\t\t\t\t\tif ( elem.nodeType === 1 ) {\n\t\t\t\t\t\ttmp.push( elem );\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\treturn tmp;\n\t\t\t}\n\t\t\treturn results;\n\t\t};\n\n\t// Class\n\tExpr.find[\"CLASS\"] = support.getElementsByClassName && function( className, context ) {\n\t\tif ( documentIsHTML ) {\n\t\t\treturn context.getElementsByClassName( className );\n\t\t}\n\t};\n\n\t/* QSA/matchesSelector\n\t---------------------------------------------------------------------- */\n\n\t// QSA and matchesSelector support\n\n\t// matchesSelector(:active) reports false when true (IE9/Opera 11.5)\n\trbuggyMatches = [];\n\n\t// qSa(:focus) reports false when true (Chrome 21)\n\t// We allow this because of a bug in IE8/9 that throws an error\n\t// whenever `document.activeElement` is accessed on an iframe\n\t// So, we allow :focus to pass through QSA all the time to avoid the IE error\n\t// See http://bugs.jquery.com/ticket/13378\n\trbuggyQSA = [];\n\n\tif ( (support.qsa = rnative.test( doc.querySelectorAll )) ) {\n\t\t// Build QSA regex\n\t\t// Regex strategy adopted from Diego Perini\n\t\tassert(function( div ) {\n\t\t\t// Select is set to empty string on purpose\n\t\t\t// This is to test IE's treatment of not explicitly\n\t\t\t// setting a boolean content attribute,\n\t\t\t// since its presence should be enough\n\t\t\t// http://bugs.jquery.com/ticket/12359\n\t\t\tdocElem.appendChild( div ).innerHTML = \"<a id='\" + expando + \"'></a>\" +\n\t\t\t\t\"<select id='\" + expando + \"-\\f]' msallowcapture=''>\" +\n\t\t\t\t\"<option selected=''></option></select>\";\n\n\t\t\t// Support: IE8, Opera 11-12.16\n\t\t\t// Nothing should be selected when empty strings follow ^= or $= or *=\n\t\t\t// The test attribute must be unknown in Opera but \"safe\" for WinRT\n\t\t\t// http://msdn.microsoft.com/en-us/library/ie/hh465388.aspx#attribute_section\n\t\t\tif ( div.querySelectorAll(\"[msallowcapture^='']\").length ) {\n\t\t\t\trbuggyQSA.push( \"[*^$]=\" + whitespace + \"*(?:''|\\\"\\\")\" );\n\t\t\t}\n\n\t\t\t// Support: IE8\n\t\t\t// Boolean attributes and \"value\" are not treated correctly\n\t\t\tif ( !div.querySelectorAll(\"[selected]\").length ) {\n\t\t\t\trbuggyQSA.push( \"\\\\[\" + whitespace + \"*(?:value|\" + booleans + \")\" );\n\t\t\t}\n\n\t\t\t// Support: Chrome<29, Android<4.2+, Safari<7.0+, iOS<7.0+, PhantomJS<1.9.7+\n\t\t\tif ( !div.querySelectorAll( \"[id~=\" + expando + \"-]\" ).length ) {\n\t\t\t\trbuggyQSA.push(\"~=\");\n\t\t\t}\n\n\t\t\t// Webkit/Opera - :checked should return selected option elements\n\t\t\t// http://www.w3.org/TR/2011/REC-css3-selectors-20110929/#checked\n\t\t\t// IE8 throws error here and will not see later tests\n\t\t\tif ( !div.querySelectorAll(\":checked\").length ) {\n\t\t\t\trbuggyQSA.push(\":checked\");\n\t\t\t}\n\n\t\t\t// Support: Safari 8+, iOS 8+\n\t\t\t// https://bugs.webkit.org/show_bug.cgi?id=136851\n\t\t\t// In-page `selector#id sibing-combinator selector` fails\n\t\t\tif ( !div.querySelectorAll( \"a#\" + expando + \"+*\" ).length ) {\n\t\t\t\trbuggyQSA.push(\".#.+[+~]\");\n\t\t\t}\n\t\t});\n\n\t\tassert(function( div ) {\n\t\t\t// Support: Windows 8 Native Apps\n\t\t\t// The type and name attributes are restricted during .innerHTML assignment\n\t\t\tvar input = doc.createElement(\"input\");\n\t\t\tinput.setAttribute( \"type\", \"hidden\" );\n\t\t\tdiv.appendChild( input ).setAttribute( \"name\", \"D\" );\n\n\t\t\t// Support: IE8\n\t\t\t// Enforce case-sensitivity of name attribute\n\t\t\tif ( div.querySelectorAll(\"[name=d]\").length ) {\n\t\t\t\trbuggyQSA.push( \"name\" + whitespace + \"*[*^$|!~]?=\" );\n\t\t\t}\n\n\t\t\t// FF 3.5 - :enabled/:disabled and hidden elements (hidden elements are still enabled)\n\t\t\t// IE8 throws error here and will not see later tests\n\t\t\tif ( !div.querySelectorAll(\":enabled\").length ) {\n\t\t\t\trbuggyQSA.push( \":enabled\", \":disabled\" );\n\t\t\t}\n\n\t\t\t// Opera 10-11 does not throw on post-comma invalid pseudos\n\t\t\tdiv.querySelectorAll(\"*,:x\");\n\t\t\trbuggyQSA.push(\",.*:\");\n\t\t});\n\t}\n\n\tif ( (support.matchesSelector = rnative.test( (matches = docElem.matches ||\n\t\tdocElem.webkitMatchesSelector ||\n\t\tdocElem.mozMatchesSelector ||\n\t\tdocElem.oMatchesSelector ||\n\t\tdocElem.msMatchesSelector) )) ) {\n\n\t\tassert(function( div ) {\n\t\t\t// Check to see if it's possible to do matchesSelector\n\t\t\t// on a disconnected node (IE 9)\n\t\t\tsupport.disconnectedMatch = matches.call( div, \"div\" );\n\n\t\t\t// This should fail with an exception\n\t\t\t// Gecko does not error, returns false instead\n\t\t\tmatches.call( div, \"[s!='']:x\" );\n\t\t\trbuggyMatches.push( \"!=\", pseudos );\n\t\t});\n\t}\n\n\trbuggyQSA = rbuggyQSA.length && new RegExp( rbuggyQSA.join(\"|\") );\n\trbuggyMatches = rbuggyMatches.length && new RegExp( rbuggyMatches.join(\"|\") );\n\n\t/* Contains\n\t---------------------------------------------------------------------- */\n\thasCompare = rnative.test( docElem.compareDocumentPosition );\n\n\t// Element contains another\n\t// Purposefully does not implement inclusive descendent\n\t// As in, an element does not contain itself\n\tcontains = hasCompare || rnative.test( docElem.contains ) ?\n\t\tfunction( a, b ) {\n\t\t\tvar adown = a.nodeType === 9 ? a.documentElement : a,\n\t\t\t\tbup = b && b.parentNode;\n\t\t\treturn a === bup || !!( bup && bup.nodeType === 1 && (\n\t\t\t\tadown.contains ?\n\t\t\t\t\tadown.contains( bup ) :\n\t\t\t\t\ta.compareDocumentPosition && a.compareDocumentPosition( bup ) & 16\n\t\t\t));\n\t\t} :\n\t\tfunction( a, b ) {\n\t\t\tif ( b ) {\n\t\t\t\twhile ( (b = b.parentNode) ) {\n\t\t\t\t\tif ( b === a ) {\n\t\t\t\t\t\treturn true;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn false;\n\t\t};\n\n\t/* Sorting\n\t---------------------------------------------------------------------- */\n\n\t// Document order sorting\n\tsortOrder = hasCompare ?\n\tfunction( a, b ) {\n\n\t\t// Flag for duplicate removal\n\t\tif ( a === b ) {\n\t\t\thasDuplicate = true;\n\t\t\treturn 0;\n\t\t}\n\n\t\t// Sort on method existence if only one input has compareDocumentPosition\n\t\tvar compare = !a.compareDocumentPosition - !b.compareDocumentPosition;\n\t\tif ( compare ) {\n\t\t\treturn compare;\n\t\t}\n\n\t\t// Calculate position if both inputs belong to the same document\n\t\tcompare = ( a.ownerDocument || a ) === ( b.ownerDocument || b ) ?\n\t\t\ta.compareDocumentPosition( b ) :\n\n\t\t\t// Otherwise we know they are disconnected\n\t\t\t1;\n\n\t\t// Disconnected nodes\n\t\tif ( compare & 1 ||\n\t\t\t(!support.sortDetached && b.compareDocumentPosition( a ) === compare) ) {\n\n\t\t\t// Choose the first element that is related to our preferred document\n\t\t\tif ( a === doc || a.ownerDocument === preferredDoc && contains(preferredDoc, a) ) {\n\t\t\t\treturn -1;\n\t\t\t}\n\t\t\tif ( b === doc || b.ownerDocument === preferredDoc && contains(preferredDoc, b) ) {\n\t\t\t\treturn 1;\n\t\t\t}\n\n\t\t\t// Maintain original order\n\t\t\treturn sortInput ?\n\t\t\t\t( indexOf( sortInput, a ) - indexOf( sortInput, b ) ) :\n\t\t\t\t0;\n\t\t}\n\n\t\treturn compare & 4 ? -1 : 1;\n\t} :\n\tfunction( a, b ) {\n\t\t// Exit early if the nodes are identical\n\t\tif ( a === b ) {\n\t\t\thasDuplicate = true;\n\t\t\treturn 0;\n\t\t}\n\n\t\tvar cur,\n\t\t\ti = 0,\n\t\t\taup = a.parentNode,\n\t\t\tbup = b.parentNode,\n\t\t\tap = [ a ],\n\t\t\tbp = [ b ];\n\n\t\t// Parentless nodes are either documents or disconnected\n\t\tif ( !aup || !bup ) {\n\t\t\treturn a === doc ? -1 :\n\t\t\t\tb === doc ? 1 :\n\t\t\t\taup ? -1 :\n\t\t\t\tbup ? 1 :\n\t\t\t\tsortInput ?\n\t\t\t\t( indexOf( sortInput, a ) - indexOf( sortInput, b ) ) :\n\t\t\t\t0;\n\n\t\t// If the nodes are siblings, we can do a quick check\n\t\t} else if ( aup === bup ) {\n\t\t\treturn siblingCheck( a, b );\n\t\t}\n\n\t\t// Otherwise we need full lists of their ancestors for comparison\n\t\tcur = a;\n\t\twhile ( (cur = cur.parentNode) ) {\n\t\t\tap.unshift( cur );\n\t\t}\n\t\tcur = b;\n\t\twhile ( (cur = cur.parentNode) ) {\n\t\t\tbp.unshift( cur );\n\t\t}\n\n\t\t// Walk down the tree looking for a discrepancy\n\t\twhile ( ap[i] === bp[i] ) {\n\t\t\ti++;\n\t\t}\n\n\t\treturn i ?\n\t\t\t// Do a sibling check if the nodes have a common ancestor\n\t\t\tsiblingCheck( ap[i], bp[i] ) :\n\n\t\t\t// Otherwise nodes in our document sort first\n\t\t\tap[i] === preferredDoc ? -1 :\n\t\t\tbp[i] === preferredDoc ? 1 :\n\t\t\t0;\n\t};\n\n\treturn doc;\n};\n\nSizzle.matches = function( expr, elements ) {\n\treturn Sizzle( expr, null, null, elements );\n};\n\nSizzle.matchesSelector = function( elem, expr ) {\n\t// Set document vars if needed\n\tif ( ( elem.ownerDocument || elem ) !== document ) {\n\t\tsetDocument( elem );\n\t}\n\n\t// Make sure that attribute selectors are quoted\n\texpr = expr.replace( rattributeQuotes, \"='$1']\" );\n\n\tif ( support.matchesSelector && documentIsHTML &&\n\t\t( !rbuggyMatches || !rbuggyMatches.test( expr ) ) &&\n\t\t( !rbuggyQSA     || !rbuggyQSA.test( expr ) ) ) {\n\n\t\ttry {\n\t\t\tvar ret = matches.call( elem, expr );\n\n\t\t\t// IE 9's matchesSelector returns false on disconnected nodes\n\t\t\tif ( ret || support.disconnectedMatch ||\n\t\t\t\t\t// As well, disconnected nodes are said to be in a document\n\t\t\t\t\t// fragment in IE 9\n\t\t\t\t\telem.document && elem.document.nodeType !== 11 ) {\n\t\t\t\treturn ret;\n\t\t\t}\n\t\t} catch (e) {}\n\t}\n\n\treturn Sizzle( expr, document, null, [ elem ] ).length > 0;\n};\n\nSizzle.contains = function( context, elem ) {\n\t// Set document vars if needed\n\tif ( ( context.ownerDocument || context ) !== document ) {\n\t\tsetDocument( context );\n\t}\n\treturn contains( context, elem );\n};\n\nSizzle.attr = function( elem, name ) {\n\t// Set document vars if needed\n\tif ( ( elem.ownerDocument || elem ) !== document ) {\n\t\tsetDocument( elem );\n\t}\n\n\tvar fn = Expr.attrHandle[ name.toLowerCase() ],\n\t\t// Don't get fooled by Object.prototype properties (jQuery #13807)\n\t\tval = fn && hasOwn.call( Expr.attrHandle, name.toLowerCase() ) ?\n\t\t\tfn( elem, name, !documentIsHTML ) :\n\t\t\tundefined;\n\n\treturn val !== undefined ?\n\t\tval :\n\t\tsupport.attributes || !documentIsHTML ?\n\t\t\telem.getAttribute( name ) :\n\t\t\t(val = elem.getAttributeNode(name)) && val.specified ?\n\t\t\t\tval.value :\n\t\t\t\tnull;\n};\n\nSizzle.error = function( msg ) {\n\tthrow new Error( \"Syntax error, unrecognized expression: \" + msg );\n};\n\n/**\n * Document sorting and removing duplicates\n * @param {ArrayLike} results\n */\nSizzle.uniqueSort = function( results ) {\n\tvar elem,\n\t\tduplicates = [],\n\t\tj = 0,\n\t\ti = 0;\n\n\t// Unless we *know* we can detect duplicates, assume their presence\n\thasDuplicate = !support.detectDuplicates;\n\tsortInput = !support.sortStable && results.slice( 0 );\n\tresults.sort( sortOrder );\n\n\tif ( hasDuplicate ) {\n\t\twhile ( (elem = results[i++]) ) {\n\t\t\tif ( elem === results[ i ] ) {\n\t\t\t\tj = duplicates.push( i );\n\t\t\t}\n\t\t}\n\t\twhile ( j-- ) {\n\t\t\tresults.splice( duplicates[ j ], 1 );\n\t\t}\n\t}\n\n\t// Clear input after sorting to release objects\n\t// See https://github.com/jquery/sizzle/pull/225\n\tsortInput = null;\n\n\treturn results;\n};\n\n/**\n * Utility function for retrieving the text value of an array of DOM nodes\n * @param {Array|Element} elem\n */\ngetText = Sizzle.getText = function( elem ) {\n\tvar node,\n\t\tret = \"\",\n\t\ti = 0,\n\t\tnodeType = elem.nodeType;\n\n\tif ( !nodeType ) {\n\t\t// If no nodeType, this is expected to be an array\n\t\twhile ( (node = elem[i++]) ) {\n\t\t\t// Do not traverse comment nodes\n\t\t\tret += getText( node );\n\t\t}\n\t} else if ( nodeType === 1 || nodeType === 9 || nodeType === 11 ) {\n\t\t// Use textContent for elements\n\t\t// innerText usage removed for consistency of new lines (jQuery #11153)\n\t\tif ( typeof elem.textContent === \"string\" ) {\n\t\t\treturn elem.textContent;\n\t\t} else {\n\t\t\t// Traverse its children\n\t\t\tfor ( elem = elem.firstChild; elem; elem = elem.nextSibling ) {\n\t\t\t\tret += getText( elem );\n\t\t\t}\n\t\t}\n\t} else if ( nodeType === 3 || nodeType === 4 ) {\n\t\treturn elem.nodeValue;\n\t}\n\t// Do not include comment or processing instruction nodes\n\n\treturn ret;\n};\n\nExpr = Sizzle.selectors = {\n\n\t// Can be adjusted by the user\n\tcacheLength: 50,\n\n\tcreatePseudo: markFunction,\n\n\tmatch: matchExpr,\n\n\tattrHandle: {},\n\n\tfind: {},\n\n\trelative: {\n\t\t\">\": { dir: \"parentNode\", first: true },\n\t\t\" \": { dir: \"parentNode\" },\n\t\t\"+\": { dir: \"previousSibling\", first: true },\n\t\t\"~\": { dir: \"previousSibling\" }\n\t},\n\n\tpreFilter: {\n\t\t\"ATTR\": function( match ) {\n\t\t\tmatch[1] = match[1].replace( runescape, funescape );\n\n\t\t\t// Move the given value to match[3] whether quoted or unquoted\n\t\t\tmatch[3] = ( match[3] || match[4] || match[5] || \"\" ).replace( runescape, funescape );\n\n\t\t\tif ( match[2] === \"~=\" ) {\n\t\t\t\tmatch[3] = \" \" + match[3] + \" \";\n\t\t\t}\n\n\t\t\treturn match.slice( 0, 4 );\n\t\t},\n\n\t\t\"CHILD\": function( match ) {\n\t\t\t/* matches from matchExpr[\"CHILD\"]\n\t\t\t\t1 type (only|nth|...)\n\t\t\t\t2 what (child|of-type)\n\t\t\t\t3 argument (even|odd|\\d*|\\d*n([+-]\\d+)?|...)\n\t\t\t\t4 xn-component of xn+y argument ([+-]?\\d*n|)\n\t\t\t\t5 sign of xn-component\n\t\t\t\t6 x of xn-component\n\t\t\t\t7 sign of y-component\n\t\t\t\t8 y of y-component\n\t\t\t*/\n\t\t\tmatch[1] = match[1].toLowerCase();\n\n\t\t\tif ( match[1].slice( 0, 3 ) === \"nth\" ) {\n\t\t\t\t// nth-* requires argument\n\t\t\t\tif ( !match[3] ) {\n\t\t\t\t\tSizzle.error( match[0] );\n\t\t\t\t}\n\n\t\t\t\t// numeric x and y parameters for Expr.filter.CHILD\n\t\t\t\t// remember that false/true cast respectively to 0/1\n\t\t\t\tmatch[4] = +( match[4] ? match[5] + (match[6] || 1) : 2 * ( match[3] === \"even\" || match[3] === \"odd\" ) );\n\t\t\t\tmatch[5] = +( ( match[7] + match[8] ) || match[3] === \"odd\" );\n\n\t\t\t// other types prohibit arguments\n\t\t\t} else if ( match[3] ) {\n\t\t\t\tSizzle.error( match[0] );\n\t\t\t}\n\n\t\t\treturn match;\n\t\t},\n\n\t\t\"PSEUDO\": function( match ) {\n\t\t\tvar excess,\n\t\t\t\tunquoted = !match[6] && match[2];\n\n\t\t\tif ( matchExpr[\"CHILD\"].test( match[0] ) ) {\n\t\t\t\treturn null;\n\t\t\t}\n\n\t\t\t// Accept quoted arguments as-is\n\t\t\tif ( match[3] ) {\n\t\t\t\tmatch[2] = match[4] || match[5] || \"\";\n\n\t\t\t// Strip excess characters from unquoted arguments\n\t\t\t} else if ( unquoted && rpseudo.test( unquoted ) &&\n\t\t\t\t// Get excess from tokenize (recursively)\n\t\t\t\t(excess = tokenize( unquoted, true )) &&\n\t\t\t\t// advance to the next closing parenthesis\n\t\t\t\t(excess = unquoted.indexOf( \")\", unquoted.length - excess ) - unquoted.length) ) {\n\n\t\t\t\t// excess is a negative index\n\t\t\t\tmatch[0] = match[0].slice( 0, excess );\n\t\t\t\tmatch[2] = unquoted.slice( 0, excess );\n\t\t\t}\n\n\t\t\t// Return only captures needed by the pseudo filter method (type and argument)\n\t\t\treturn match.slice( 0, 3 );\n\t\t}\n\t},\n\n\tfilter: {\n\n\t\t\"TAG\": function( nodeNameSelector ) {\n\t\t\tvar nodeName = nodeNameSelector.replace( runescape, funescape ).toLowerCase();\n\t\t\treturn nodeNameSelector === \"*\" ?\n\t\t\t\tfunction() { return true; } :\n\t\t\t\tfunction( elem ) {\n\t\t\t\t\treturn elem.nodeName && elem.nodeName.toLowerCase() === nodeName;\n\t\t\t\t};\n\t\t},\n\n\t\t\"CLASS\": function( className ) {\n\t\t\tvar pattern = classCache[ className + \" \" ];\n\n\t\t\treturn pattern ||\n\t\t\t\t(pattern = new RegExp( \"(^|\" + whitespace + \")\" + className + \"(\" + whitespace + \"|$)\" )) &&\n\t\t\t\tclassCache( className, function( elem ) {\n\t\t\t\t\treturn pattern.test( typeof elem.className === \"string\" && elem.className || typeof elem.getAttribute !== \"undefined\" && elem.getAttribute(\"class\") || \"\" );\n\t\t\t\t});\n\t\t},\n\n\t\t\"ATTR\": function( name, operator, check ) {\n\t\t\treturn function( elem ) {\n\t\t\t\tvar result = Sizzle.attr( elem, name );\n\n\t\t\t\tif ( result == null ) {\n\t\t\t\t\treturn operator === \"!=\";\n\t\t\t\t}\n\t\t\t\tif ( !operator ) {\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\n\t\t\t\tresult += \"\";\n\n\t\t\t\treturn operator === \"=\" ? result === check :\n\t\t\t\t\toperator === \"!=\" ? result !== check :\n\t\t\t\t\toperator === \"^=\" ? check && result.indexOf( check ) === 0 :\n\t\t\t\t\toperator === \"*=\" ? check && result.indexOf( check ) > -1 :\n\t\t\t\t\toperator === \"$=\" ? check && result.slice( -check.length ) === check :\n\t\t\t\t\toperator === \"~=\" ? ( \" \" + result.replace( rwhitespace, \" \" ) + \" \" ).indexOf( check ) > -1 :\n\t\t\t\t\toperator === \"|=\" ? result === check || result.slice( 0, check.length + 1 ) === check + \"-\" :\n\t\t\t\t\tfalse;\n\t\t\t};\n\t\t},\n\n\t\t\"CHILD\": function( type, what, argument, first, last ) {\n\t\t\tvar simple = type.slice( 0, 3 ) !== \"nth\",\n\t\t\t\tforward = type.slice( -4 ) !== \"last\",\n\t\t\t\tofType = what === \"of-type\";\n\n\t\t\treturn first === 1 && last === 0 ?\n\n\t\t\t\t// Shortcut for :nth-*(n)\n\t\t\t\tfunction( elem ) {\n\t\t\t\t\treturn !!elem.parentNode;\n\t\t\t\t} :\n\n\t\t\t\tfunction( elem, context, xml ) {\n\t\t\t\t\tvar cache, outerCache, node, diff, nodeIndex, start,\n\t\t\t\t\t\tdir = simple !== forward ? \"nextSibling\" : \"previousSibling\",\n\t\t\t\t\t\tparent = elem.parentNode,\n\t\t\t\t\t\tname = ofType && elem.nodeName.toLowerCase(),\n\t\t\t\t\t\tuseCache = !xml && !ofType;\n\n\t\t\t\t\tif ( parent ) {\n\n\t\t\t\t\t\t// :(first|last|only)-(child|of-type)\n\t\t\t\t\t\tif ( simple ) {\n\t\t\t\t\t\t\twhile ( dir ) {\n\t\t\t\t\t\t\t\tnode = elem;\n\t\t\t\t\t\t\t\twhile ( (node = node[ dir ]) ) {\n\t\t\t\t\t\t\t\t\tif ( ofType ? node.nodeName.toLowerCase() === name : node.nodeType === 1 ) {\n\t\t\t\t\t\t\t\t\t\treturn false;\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t// Reverse direction for :only-* (if we haven't yet done so)\n\t\t\t\t\t\t\t\tstart = dir = type === \"only\" && !start && \"nextSibling\";\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\treturn true;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tstart = [ forward ? parent.firstChild : parent.lastChild ];\n\n\t\t\t\t\t\t// non-xml :nth-child(...) stores cache data on `parent`\n\t\t\t\t\t\tif ( forward && useCache ) {\n\t\t\t\t\t\t\t// Seek `elem` from a previously-cached index\n\t\t\t\t\t\t\touterCache = parent[ expando ] || (parent[ expando ] = {});\n\t\t\t\t\t\t\tcache = outerCache[ type ] || [];\n\t\t\t\t\t\t\tnodeIndex = cache[0] === dirruns && cache[1];\n\t\t\t\t\t\t\tdiff = cache[0] === dirruns && cache[2];\n\t\t\t\t\t\t\tnode = nodeIndex && parent.childNodes[ nodeIndex ];\n\n\t\t\t\t\t\t\twhile ( (node = ++nodeIndex && node && node[ dir ] ||\n\n\t\t\t\t\t\t\t\t// Fallback to seeking `elem` from the start\n\t\t\t\t\t\t\t\t(diff = nodeIndex = 0) || start.pop()) ) {\n\n\t\t\t\t\t\t\t\t// When found, cache indexes on `parent` and break\n\t\t\t\t\t\t\t\tif ( node.nodeType === 1 && ++diff && node === elem ) {\n\t\t\t\t\t\t\t\t\touterCache[ type ] = [ dirruns, nodeIndex, diff ];\n\t\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t// Use previously-cached element index if available\n\t\t\t\t\t\t} else if ( useCache && (cache = (elem[ expando ] || (elem[ expando ] = {}))[ type ]) && cache[0] === dirruns ) {\n\t\t\t\t\t\t\tdiff = cache[1];\n\n\t\t\t\t\t\t// xml :nth-child(...) or :nth-last-child(...) or :nth(-last)?-of-type(...)\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t// Use the same loop as above to seek `elem` from the start\n\t\t\t\t\t\t\twhile ( (node = ++nodeIndex && node && node[ dir ] ||\n\t\t\t\t\t\t\t\t(diff = nodeIndex = 0) || start.pop()) ) {\n\n\t\t\t\t\t\t\t\tif ( ( ofType ? node.nodeName.toLowerCase() === name : node.nodeType === 1 ) && ++diff ) {\n\t\t\t\t\t\t\t\t\t// Cache the index of each encountered element\n\t\t\t\t\t\t\t\t\tif ( useCache ) {\n\t\t\t\t\t\t\t\t\t\t(node[ expando ] || (node[ expando ] = {}))[ type ] = [ dirruns, diff ];\n\t\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\t\tif ( node === elem ) {\n\t\t\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\t// Incorporate the offset, then check against cycle size\n\t\t\t\t\t\tdiff -= last;\n\t\t\t\t\t\treturn diff === first || ( diff % first === 0 && diff / first >= 0 );\n\t\t\t\t\t}\n\t\t\t\t};\n\t\t},\n\n\t\t\"PSEUDO\": function( pseudo, argument ) {\n\t\t\t// pseudo-class names are case-insensitive\n\t\t\t// http://www.w3.org/TR/selectors/#pseudo-classes\n\t\t\t// Prioritize by case sensitivity in case custom pseudos are added with uppercase letters\n\t\t\t// Remember that setFilters inherits from pseudos\n\t\t\tvar args,\n\t\t\t\tfn = Expr.pseudos[ pseudo ] || Expr.setFilters[ pseudo.toLowerCase() ] ||\n\t\t\t\t\tSizzle.error( \"unsupported pseudo: \" + pseudo );\n\n\t\t\t// The user may use createPseudo to indicate that\n\t\t\t// arguments are needed to create the filter function\n\t\t\t// just as Sizzle does\n\t\t\tif ( fn[ expando ] ) {\n\t\t\t\treturn fn( argument );\n\t\t\t}\n\n\t\t\t// But maintain support for old signatures\n\t\t\tif ( fn.length > 1 ) {\n\t\t\t\targs = [ pseudo, pseudo, \"\", argument ];\n\t\t\t\treturn Expr.setFilters.hasOwnProperty( pseudo.toLowerCase() ) ?\n\t\t\t\t\tmarkFunction(function( seed, matches ) {\n\t\t\t\t\t\tvar idx,\n\t\t\t\t\t\t\tmatched = fn( seed, argument ),\n\t\t\t\t\t\t\ti = matched.length;\n\t\t\t\t\t\twhile ( i-- ) {\n\t\t\t\t\t\t\tidx = indexOf( seed, matched[i] );\n\t\t\t\t\t\t\tseed[ idx ] = !( matches[ idx ] = matched[i] );\n\t\t\t\t\t\t}\n\t\t\t\t\t}) :\n\t\t\t\t\tfunction( elem ) {\n\t\t\t\t\t\treturn fn( elem, 0, args );\n\t\t\t\t\t};\n\t\t\t}\n\n\t\t\treturn fn;\n\t\t}\n\t},\n\n\tpseudos: {\n\t\t// Potentially complex pseudos\n\t\t\"not\": markFunction(function( selector ) {\n\t\t\t// Trim the selector passed to compile\n\t\t\t// to avoid treating leading and trailing\n\t\t\t// spaces as combinators\n\t\t\tvar input = [],\n\t\t\t\tresults = [],\n\t\t\t\tmatcher = compile( selector.replace( rtrim, \"$1\" ) );\n\n\t\t\treturn matcher[ expando ] ?\n\t\t\t\tmarkFunction(function( seed, matches, context, xml ) {\n\t\t\t\t\tvar elem,\n\t\t\t\t\t\tunmatched = matcher( seed, null, xml, [] ),\n\t\t\t\t\t\ti = seed.length;\n\n\t\t\t\t\t// Match elements unmatched by `matcher`\n\t\t\t\t\twhile ( i-- ) {\n\t\t\t\t\t\tif ( (elem = unmatched[i]) ) {\n\t\t\t\t\t\t\tseed[i] = !(matches[i] = elem);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}) :\n\t\t\t\tfunction( elem, context, xml ) {\n\t\t\t\t\tinput[0] = elem;\n\t\t\t\t\tmatcher( input, null, xml, results );\n\t\t\t\t\t// Don't keep the element (issue #299)\n\t\t\t\t\tinput[0] = null;\n\t\t\t\t\treturn !results.pop();\n\t\t\t\t};\n\t\t}),\n\n\t\t\"has\": markFunction(function( selector ) {\n\t\t\treturn function( elem ) {\n\t\t\t\treturn Sizzle( selector, elem ).length > 0;\n\t\t\t};\n\t\t}),\n\n\t\t\"contains\": markFunction(function( text ) {\n\t\t\ttext = text.replace( runescape, funescape );\n\t\t\treturn function( elem ) {\n\t\t\t\treturn ( elem.textContent || elem.innerText || getText( elem ) ).indexOf( text ) > -1;\n\t\t\t};\n\t\t}),\n\n\t\t// \"Whether an element is represented by a :lang() selector\n\t\t// is based solely on the element's language value\n\t\t// being equal to the identifier C,\n\t\t// or beginning with the identifier C immediately followed by \"-\".\n\t\t// The matching of C against the element's language value is performed case-insensitively.\n\t\t// The identifier C does not have to be a valid language name.\"\n\t\t// http://www.w3.org/TR/selectors/#lang-pseudo\n\t\t\"lang\": markFunction( function( lang ) {\n\t\t\t// lang value must be a valid identifier\n\t\t\tif ( !ridentifier.test(lang || \"\") ) {\n\t\t\t\tSizzle.error( \"unsupported lang: \" + lang );\n\t\t\t}\n\t\t\tlang = lang.replace( runescape, funescape ).toLowerCase();\n\t\t\treturn function( elem ) {\n\t\t\t\tvar elemLang;\n\t\t\t\tdo {\n\t\t\t\t\tif ( (elemLang = documentIsHTML ?\n\t\t\t\t\t\telem.lang :\n\t\t\t\t\t\telem.getAttribute(\"xml:lang\") || elem.getAttribute(\"lang\")) ) {\n\n\t\t\t\t\t\telemLang = elemLang.toLowerCase();\n\t\t\t\t\t\treturn elemLang === lang || elemLang.indexOf( lang + \"-\" ) === 0;\n\t\t\t\t\t}\n\t\t\t\t} while ( (elem = elem.parentNode) && elem.nodeType === 1 );\n\t\t\t\treturn false;\n\t\t\t};\n\t\t}),\n\n\t\t// Miscellaneous\n\t\t\"target\": function( elem ) {\n\t\t\tvar hash = window.location && window.location.hash;\n\t\t\treturn hash && hash.slice( 1 ) === elem.id;\n\t\t},\n\n\t\t\"root\": function( elem ) {\n\t\t\treturn elem === docElem;\n\t\t},\n\n\t\t\"focus\": function( elem ) {\n\t\t\treturn elem === document.activeElement && (!document.hasFocus || document.hasFocus()) && !!(elem.type || elem.href || ~elem.tabIndex);\n\t\t},\n\n\t\t// Boolean properties\n\t\t\"enabled\": function( elem ) {\n\t\t\treturn elem.disabled === false;\n\t\t},\n\n\t\t\"disabled\": function( elem ) {\n\t\t\treturn elem.disabled === true;\n\t\t},\n\n\t\t\"checked\": function( elem ) {\n\t\t\t// In CSS3, :checked should return both checked and selected elements\n\t\t\t// http://www.w3.org/TR/2011/REC-css3-selectors-20110929/#checked\n\t\t\tvar nodeName = elem.nodeName.toLowerCase();\n\t\t\treturn (nodeName === \"input\" && !!elem.checked) || (nodeName === \"option\" && !!elem.selected);\n\t\t},\n\n\t\t\"selected\": function( elem ) {\n\t\t\t// Accessing this property makes selected-by-default\n\t\t\t// options in Safari work properly\n\t\t\tif ( elem.parentNode ) {\n\t\t\t\telem.parentNode.selectedIndex;\n\t\t\t}\n\n\t\t\treturn elem.selected === true;\n\t\t},\n\n\t\t// Contents\n\t\t\"empty\": function( elem ) {\n\t\t\t// http://www.w3.org/TR/selectors/#empty-pseudo\n\t\t\t// :empty is negated by element (1) or content nodes (text: 3; cdata: 4; entity ref: 5),\n\t\t\t//   but not by others (comment: 8; processing instruction: 7; etc.)\n\t\t\t// nodeType < 6 works because attributes (2) do not appear as children\n\t\t\tfor ( elem = elem.firstChild; elem; elem = elem.nextSibling ) {\n\t\t\t\tif ( elem.nodeType < 6 ) {\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn true;\n\t\t},\n\n\t\t\"parent\": function( elem ) {\n\t\t\treturn !Expr.pseudos[\"empty\"]( elem );\n\t\t},\n\n\t\t// Element/input types\n\t\t\"header\": function( elem ) {\n\t\t\treturn rheader.test( elem.nodeName );\n\t\t},\n\n\t\t\"input\": function( elem ) {\n\t\t\treturn rinputs.test( elem.nodeName );\n\t\t},\n\n\t\t\"button\": function( elem ) {\n\t\t\tvar name = elem.nodeName.toLowerCase();\n\t\t\treturn name === \"input\" && elem.type === \"button\" || name === \"button\";\n\t\t},\n\n\t\t\"text\": function( elem ) {\n\t\t\tvar attr;\n\t\t\treturn elem.nodeName.toLowerCase() === \"input\" &&\n\t\t\t\telem.type === \"text\" &&\n\n\t\t\t\t// Support: IE<8\n\t\t\t\t// New HTML5 attribute values (e.g., \"search\") appear with elem.type === \"text\"\n\t\t\t\t( (attr = elem.getAttribute(\"type\")) == null || attr.toLowerCase() === \"text\" );\n\t\t},\n\n\t\t// Position-in-collection\n\t\t\"first\": createPositionalPseudo(function() {\n\t\t\treturn [ 0 ];\n\t\t}),\n\n\t\t\"last\": createPositionalPseudo(function( matchIndexes, length ) {\n\t\t\treturn [ length - 1 ];\n\t\t}),\n\n\t\t\"eq\": createPositionalPseudo(function( matchIndexes, length, argument ) {\n\t\t\treturn [ argument < 0 ? argument + length : argument ];\n\t\t}),\n\n\t\t\"even\": createPositionalPseudo(function( matchIndexes, length ) {\n\t\t\tvar i = 0;\n\t\t\tfor ( ; i < length; i += 2 ) {\n\t\t\t\tmatchIndexes.push( i );\n\t\t\t}\n\t\t\treturn matchIndexes;\n\t\t}),\n\n\t\t\"odd\": createPositionalPseudo(function( matchIndexes, length ) {\n\t\t\tvar i = 1;\n\t\t\tfor ( ; i < length; i += 2 ) {\n\t\t\t\tmatchIndexes.push( i );\n\t\t\t}\n\t\t\treturn matchIndexes;\n\t\t}),\n\n\t\t\"lt\": createPositionalPseudo(function( matchIndexes, length, argument ) {\n\t\t\tvar i = argument < 0 ? argument + length : argument;\n\t\t\tfor ( ; --i >= 0; ) {\n\t\t\t\tmatchIndexes.push( i );\n\t\t\t}\n\t\t\treturn matchIndexes;\n\t\t}),\n\n\t\t\"gt\": createPositionalPseudo(function( matchIndexes, length, argument ) {\n\t\t\tvar i = argument < 0 ? argument + length : argument;\n\t\t\tfor ( ; ++i < length; ) {\n\t\t\t\tmatchIndexes.push( i );\n\t\t\t}\n\t\t\treturn matchIndexes;\n\t\t})\n\t}\n};\n\nExpr.pseudos[\"nth\"] = Expr.pseudos[\"eq\"];\n\n// Add button/input type pseudos\nfor ( i in { radio: true, checkbox: true, file: true, password: true, image: true } ) {\n\tExpr.pseudos[ i ] = createInputPseudo( i );\n}\nfor ( i in { submit: true, reset: true } ) {\n\tExpr.pseudos[ i ] = createButtonPseudo( i );\n}\n\n// Easy API for creating new setFilters\nfunction setFilters() {}\nsetFilters.prototype = Expr.filters = Expr.pseudos;\nExpr.setFilters = new setFilters();\n\ntokenize = Sizzle.tokenize = function( selector, parseOnly ) {\n\tvar matched, match, tokens, type,\n\t\tsoFar, groups, preFilters,\n\t\tcached = tokenCache[ selector + \" \" ];\n\n\tif ( cached ) {\n\t\treturn parseOnly ? 0 : cached.slice( 0 );\n\t}\n\n\tsoFar = selector;\n\tgroups = [];\n\tpreFilters = Expr.preFilter;\n\n\twhile ( soFar ) {\n\n\t\t// Comma and first run\n\t\tif ( !matched || (match = rcomma.exec( soFar )) ) {\n\t\t\tif ( match ) {\n\t\t\t\t// Don't consume trailing commas as valid\n\t\t\t\tsoFar = soFar.slice( match[0].length ) || soFar;\n\t\t\t}\n\t\t\tgroups.push( (tokens = []) );\n\t\t}\n\n\t\tmatched = false;\n\n\t\t// Combinators\n\t\tif ( (match = rcombinators.exec( soFar )) ) {\n\t\t\tmatched = match.shift();\n\t\t\ttokens.push({\n\t\t\t\tvalue: matched,\n\t\t\t\t// Cast descendant combinators to space\n\t\t\t\ttype: match[0].replace( rtrim, \" \" )\n\t\t\t});\n\t\t\tsoFar = soFar.slice( matched.length );\n\t\t}\n\n\t\t// Filters\n\t\tfor ( type in Expr.filter ) {\n\t\t\tif ( (match = matchExpr[ type ].exec( soFar )) && (!preFilters[ type ] ||\n\t\t\t\t(match = preFilters[ type ]( match ))) ) {\n\t\t\t\tmatched = match.shift();\n\t\t\t\ttokens.push({\n\t\t\t\t\tvalue: matched,\n\t\t\t\t\ttype: type,\n\t\t\t\t\tmatches: match\n\t\t\t\t});\n\t\t\t\tsoFar = soFar.slice( matched.length );\n\t\t\t}\n\t\t}\n\n\t\tif ( !matched ) {\n\t\t\tbreak;\n\t\t}\n\t}\n\n\t// Return the length of the invalid excess\n\t// if we're just parsing\n\t// Otherwise, throw an error or return tokens\n\treturn parseOnly ?\n\t\tsoFar.length :\n\t\tsoFar ?\n\t\t\tSizzle.error( selector ) :\n\t\t\t// Cache the tokens\n\t\t\ttokenCache( selector, groups ).slice( 0 );\n};\n\nfunction toSelector( tokens ) {\n\tvar i = 0,\n\t\tlen = tokens.length,\n\t\tselector = \"\";\n\tfor ( ; i < len; i++ ) {\n\t\tselector += tokens[i].value;\n\t}\n\treturn selector;\n}\n\nfunction addCombinator( matcher, combinator, base ) {\n\tvar dir = combinator.dir,\n\t\tcheckNonElements = base && dir === \"parentNode\",\n\t\tdoneName = done++;\n\n\treturn combinator.first ?\n\t\t// Check against closest ancestor/preceding element\n\t\tfunction( elem, context, xml ) {\n\t\t\twhile ( (elem = elem[ dir ]) ) {\n\t\t\t\tif ( elem.nodeType === 1 || checkNonElements ) {\n\t\t\t\t\treturn matcher( elem, context, xml );\n\t\t\t\t}\n\t\t\t}\n\t\t} :\n\n\t\t// Check against all ancestor/preceding elements\n\t\tfunction( elem, context, xml ) {\n\t\t\tvar oldCache, outerCache,\n\t\t\t\tnewCache = [ dirruns, doneName ];\n\n\t\t\t// We can't set arbitrary data on XML nodes, so they don't benefit from dir caching\n\t\t\tif ( xml ) {\n\t\t\t\twhile ( (elem = elem[ dir ]) ) {\n\t\t\t\t\tif ( elem.nodeType === 1 || checkNonElements ) {\n\t\t\t\t\t\tif ( matcher( elem, context, xml ) ) {\n\t\t\t\t\t\t\treturn true;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\twhile ( (elem = elem[ dir ]) ) {\n\t\t\t\t\tif ( elem.nodeType === 1 || checkNonElements ) {\n\t\t\t\t\t\touterCache = elem[ expando ] || (elem[ expando ] = {});\n\t\t\t\t\t\tif ( (oldCache = outerCache[ dir ]) &&\n\t\t\t\t\t\t\toldCache[ 0 ] === dirruns && oldCache[ 1 ] === doneName ) {\n\n\t\t\t\t\t\t\t// Assign to newCache so results back-propagate to previous elements\n\t\t\t\t\t\t\treturn (newCache[ 2 ] = oldCache[ 2 ]);\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t// Reuse newcache so results back-propagate to previous elements\n\t\t\t\t\t\t\touterCache[ dir ] = newCache;\n\n\t\t\t\t\t\t\t// A match means we're done; a fail means we have to keep checking\n\t\t\t\t\t\t\tif ( (newCache[ 2 ] = matcher( elem, context, xml )) ) {\n\t\t\t\t\t\t\t\treturn true;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t};\n}\n\nfunction elementMatcher( matchers ) {\n\treturn matchers.length > 1 ?\n\t\tfunction( elem, context, xml ) {\n\t\t\tvar i = matchers.length;\n\t\t\twhile ( i-- ) {\n\t\t\t\tif ( !matchers[i]( elem, context, xml ) ) {\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn true;\n\t\t} :\n\t\tmatchers[0];\n}\n\nfunction multipleContexts( selector, contexts, results ) {\n\tvar i = 0,\n\t\tlen = contexts.length;\n\tfor ( ; i < len; i++ ) {\n\t\tSizzle( selector, contexts[i], results );\n\t}\n\treturn results;\n}\n\nfunction condense( unmatched, map, filter, context, xml ) {\n\tvar elem,\n\t\tnewUnmatched = [],\n\t\ti = 0,\n\t\tlen = unmatched.length,\n\t\tmapped = map != null;\n\n\tfor ( ; i < len; i++ ) {\n\t\tif ( (elem = unmatched[i]) ) {\n\t\t\tif ( !filter || filter( elem, context, xml ) ) {\n\t\t\t\tnewUnmatched.push( elem );\n\t\t\t\tif ( mapped ) {\n\t\t\t\t\tmap.push( i );\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\treturn newUnmatched;\n}\n\nfunction setMatcher( preFilter, selector, matcher, postFilter, postFinder, postSelector ) {\n\tif ( postFilter && !postFilter[ expando ] ) {\n\t\tpostFilter = setMatcher( postFilter );\n\t}\n\tif ( postFinder && !postFinder[ expando ] ) {\n\t\tpostFinder = setMatcher( postFinder, postSelector );\n\t}\n\treturn markFunction(function( seed, results, context, xml ) {\n\t\tvar temp, i, elem,\n\t\t\tpreMap = [],\n\t\t\tpostMap = [],\n\t\t\tpreexisting = results.length,\n\n\t\t\t// Get initial elements from seed or context\n\t\t\telems = seed || multipleContexts( selector || \"*\", context.nodeType ? [ context ] : context, [] ),\n\n\t\t\t// Prefilter to get matcher input, preserving a map for seed-results synchronization\n\t\t\tmatcherIn = preFilter && ( seed || !selector ) ?\n\t\t\t\tcondense( elems, preMap, preFilter, context, xml ) :\n\t\t\t\telems,\n\n\t\t\tmatcherOut = matcher ?\n\t\t\t\t// If we have a postFinder, or filtered seed, or non-seed postFilter or preexisting results,\n\t\t\t\tpostFinder || ( seed ? preFilter : preexisting || postFilter ) ?\n\n\t\t\t\t\t// ...intermediate processing is necessary\n\t\t\t\t\t[] :\n\n\t\t\t\t\t// ...otherwise use results directly\n\t\t\t\t\tresults :\n\t\t\t\tmatcherIn;\n\n\t\t// Find primary matches\n\t\tif ( matcher ) {\n\t\t\tmatcher( matcherIn, matcherOut, context, xml );\n\t\t}\n\n\t\t// Apply postFilter\n\t\tif ( postFilter ) {\n\t\t\ttemp = condense( matcherOut, postMap );\n\t\t\tpostFilter( temp, [], context, xml );\n\n\t\t\t// Un-match failing elements by moving them back to matcherIn\n\t\t\ti = temp.length;\n\t\t\twhile ( i-- ) {\n\t\t\t\tif ( (elem = temp[i]) ) {\n\t\t\t\t\tmatcherOut[ postMap[i] ] = !(matcherIn[ postMap[i] ] = elem);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tif ( seed ) {\n\t\t\tif ( postFinder || preFilter ) {\n\t\t\t\tif ( postFinder ) {\n\t\t\t\t\t// Get the final matcherOut by condensing this intermediate into postFinder contexts\n\t\t\t\t\ttemp = [];\n\t\t\t\t\ti = matcherOut.length;\n\t\t\t\t\twhile ( i-- ) {\n\t\t\t\t\t\tif ( (elem = matcherOut[i]) ) {\n\t\t\t\t\t\t\t// Restore matcherIn since elem is not yet a final match\n\t\t\t\t\t\t\ttemp.push( (matcherIn[i] = elem) );\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tpostFinder( null, (matcherOut = []), temp, xml );\n\t\t\t\t}\n\n\t\t\t\t// Move matched elements from seed to results to keep them synchronized\n\t\t\t\ti = matcherOut.length;\n\t\t\t\twhile ( i-- ) {\n\t\t\t\t\tif ( (elem = matcherOut[i]) &&\n\t\t\t\t\t\t(temp = postFinder ? indexOf( seed, elem ) : preMap[i]) > -1 ) {\n\n\t\t\t\t\t\tseed[temp] = !(results[temp] = elem);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t// Add elements to results, through postFinder if defined\n\t\t} else {\n\t\t\tmatcherOut = condense(\n\t\t\t\tmatcherOut === results ?\n\t\t\t\t\tmatcherOut.splice( preexisting, matcherOut.length ) :\n\t\t\t\t\tmatcherOut\n\t\t\t);\n\t\t\tif ( postFinder ) {\n\t\t\t\tpostFinder( null, results, matcherOut, xml );\n\t\t\t} else {\n\t\t\t\tpush.apply( results, matcherOut );\n\t\t\t}\n\t\t}\n\t});\n}\n\nfunction matcherFromTokens( tokens ) {\n\tvar checkContext, matcher, j,\n\t\tlen = tokens.length,\n\t\tleadingRelative = Expr.relative[ tokens[0].type ],\n\t\timplicitRelative = leadingRelative || Expr.relative[\" \"],\n\t\ti = leadingRelative ? 1 : 0,\n\n\t\t// The foundational matcher ensures that elements are reachable from top-level context(s)\n\t\tmatchContext = addCombinator( function( elem ) {\n\t\t\treturn elem === checkContext;\n\t\t}, implicitRelative, true ),\n\t\tmatchAnyContext = addCombinator( function( elem ) {\n\t\t\treturn indexOf( checkContext, elem ) > -1;\n\t\t}, implicitRelative, true ),\n\t\tmatchers = [ function( elem, context, xml ) {\n\t\t\tvar ret = ( !leadingRelative && ( xml || context !== outermostContext ) ) || (\n\t\t\t\t(checkContext = context).nodeType ?\n\t\t\t\t\tmatchContext( elem, context, xml ) :\n\t\t\t\t\tmatchAnyContext( elem, context, xml ) );\n\t\t\t// Avoid hanging onto element (issue #299)\n\t\t\tcheckContext = null;\n\t\t\treturn ret;\n\t\t} ];\n\n\tfor ( ; i < len; i++ ) {\n\t\tif ( (matcher = Expr.relative[ tokens[i].type ]) ) {\n\t\t\tmatchers = [ addCombinator(elementMatcher( matchers ), matcher) ];\n\t\t} else {\n\t\t\tmatcher = Expr.filter[ tokens[i].type ].apply( null, tokens[i].matches );\n\n\t\t\t// Return special upon seeing a positional matcher\n\t\t\tif ( matcher[ expando ] ) {\n\t\t\t\t// Find the next relative operator (if any) for proper handling\n\t\t\t\tj = ++i;\n\t\t\t\tfor ( ; j < len; j++ ) {\n\t\t\t\t\tif ( Expr.relative[ tokens[j].type ] ) {\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn setMatcher(\n\t\t\t\t\ti > 1 && elementMatcher( matchers ),\n\t\t\t\t\ti > 1 && toSelector(\n\t\t\t\t\t\t// If the preceding token was a descendant combinator, insert an implicit any-element `*`\n\t\t\t\t\t\ttokens.slice( 0, i - 1 ).concat({ value: tokens[ i - 2 ].type === \" \" ? \"*\" : \"\" })\n\t\t\t\t\t).replace( rtrim, \"$1\" ),\n\t\t\t\t\tmatcher,\n\t\t\t\t\ti < j && matcherFromTokens( tokens.slice( i, j ) ),\n\t\t\t\t\tj < len && matcherFromTokens( (tokens = tokens.slice( j )) ),\n\t\t\t\t\tj < len && toSelector( tokens )\n\t\t\t\t);\n\t\t\t}\n\t\t\tmatchers.push( matcher );\n\t\t}\n\t}\n\n\treturn elementMatcher( matchers );\n}\n\nfunction matcherFromGroupMatchers( elementMatchers, setMatchers ) {\n\tvar bySet = setMatchers.length > 0,\n\t\tbyElement = elementMatchers.length > 0,\n\t\tsuperMatcher = function( seed, context, xml, results, outermost ) {\n\t\t\tvar elem, j, matcher,\n\t\t\t\tmatchedCount = 0,\n\t\t\t\ti = \"0\",\n\t\t\t\tunmatched = seed && [],\n\t\t\t\tsetMatched = [],\n\t\t\t\tcontextBackup = outermostContext,\n\t\t\t\t// We must always have either seed elements or outermost context\n\t\t\t\telems = seed || byElement && Expr.find[\"TAG\"]( \"*\", outermost ),\n\t\t\t\t// Use integer dirruns iff this is the outermost matcher\n\t\t\t\tdirrunsUnique = (dirruns += contextBackup == null ? 1 : Math.random() || 0.1),\n\t\t\t\tlen = elems.length;\n\n\t\t\tif ( outermost ) {\n\t\t\t\toutermostContext = context !== document && context;\n\t\t\t}\n\n\t\t\t// Add elements passing elementMatchers directly to results\n\t\t\t// Keep `i` a string if there are no elements so `matchedCount` will be \"00\" below\n\t\t\t// Support: IE<9, Safari\n\t\t\t// Tolerate NodeList properties (IE: \"length\"; Safari: <number>) matching elements by id\n\t\t\tfor ( ; i !== len && (elem = elems[i]) != null; i++ ) {\n\t\t\t\tif ( byElement && elem ) {\n\t\t\t\t\tj = 0;\n\t\t\t\t\twhile ( (matcher = elementMatchers[j++]) ) {\n\t\t\t\t\t\tif ( matcher( elem, context, xml ) ) {\n\t\t\t\t\t\t\tresults.push( elem );\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tif ( outermost ) {\n\t\t\t\t\t\tdirruns = dirrunsUnique;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t// Track unmatched elements for set filters\n\t\t\t\tif ( bySet ) {\n\t\t\t\t\t// They will have gone through all possible matchers\n\t\t\t\t\tif ( (elem = !matcher && elem) ) {\n\t\t\t\t\t\tmatchedCount--;\n\t\t\t\t\t}\n\n\t\t\t\t\t// Lengthen the array for every element, matched or not\n\t\t\t\t\tif ( seed ) {\n\t\t\t\t\t\tunmatched.push( elem );\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Apply set filters to unmatched elements\n\t\t\tmatchedCount += i;\n\t\t\tif ( bySet && i !== matchedCount ) {\n\t\t\t\tj = 0;\n\t\t\t\twhile ( (matcher = setMatchers[j++]) ) {\n\t\t\t\t\tmatcher( unmatched, setMatched, context, xml );\n\t\t\t\t}\n\n\t\t\t\tif ( seed ) {\n\t\t\t\t\t// Reintegrate element matches to eliminate the need for sorting\n\t\t\t\t\tif ( matchedCount > 0 ) {\n\t\t\t\t\t\twhile ( i-- ) {\n\t\t\t\t\t\t\tif ( !(unmatched[i] || setMatched[i]) ) {\n\t\t\t\t\t\t\t\tsetMatched[i] = pop.call( results );\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\t// Discard index placeholder values to get only actual matches\n\t\t\t\t\tsetMatched = condense( setMatched );\n\t\t\t\t}\n\n\t\t\t\t// Add matches to results\n\t\t\t\tpush.apply( results, setMatched );\n\n\t\t\t\t// Seedless set matches succeeding multiple successful matchers stipulate sorting\n\t\t\t\tif ( outermost && !seed && setMatched.length > 0 &&\n\t\t\t\t\t( matchedCount + setMatchers.length ) > 1 ) {\n\n\t\t\t\t\tSizzle.uniqueSort( results );\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Override manipulation of globals by nested matchers\n\t\t\tif ( outermost ) {\n\t\t\t\tdirruns = dirrunsUnique;\n\t\t\t\toutermostContext = contextBackup;\n\t\t\t}\n\n\t\t\treturn unmatched;\n\t\t};\n\n\treturn bySet ?\n\t\tmarkFunction( superMatcher ) :\n\t\tsuperMatcher;\n}\n\ncompile = Sizzle.compile = function( selector, match /* Internal Use Only */ ) {\n\tvar i,\n\t\tsetMatchers = [],\n\t\telementMatchers = [],\n\t\tcached = compilerCache[ selector + \" \" ];\n\n\tif ( !cached ) {\n\t\t// Generate a function of recursive functions that can be used to check each element\n\t\tif ( !match ) {\n\t\t\tmatch = tokenize( selector );\n\t\t}\n\t\ti = match.length;\n\t\twhile ( i-- ) {\n\t\t\tcached = matcherFromTokens( match[i] );\n\t\t\tif ( cached[ expando ] ) {\n\t\t\t\tsetMatchers.push( cached );\n\t\t\t} else {\n\t\t\t\telementMatchers.push( cached );\n\t\t\t}\n\t\t}\n\n\t\t// Cache the compiled function\n\t\tcached = compilerCache( selector, matcherFromGroupMatchers( elementMatchers, setMatchers ) );\n\n\t\t// Save selector and tokenization\n\t\tcached.selector = selector;\n\t}\n\treturn cached;\n};\n\n/**\n * A low-level selection function that works with Sizzle's compiled\n *  selector functions\n * @param {String|Function} selector A selector or a pre-compiled\n *  selector function built with Sizzle.compile\n * @param {Element} context\n * @param {Array} [results]\n * @param {Array} [seed] A set of elements to match against\n */\nselect = Sizzle.select = function( selector, context, results, seed ) {\n\tvar i, tokens, token, type, find,\n\t\tcompiled = typeof selector === \"function\" && selector,\n\t\tmatch = !seed && tokenize( (selector = compiled.selector || selector) );\n\n\tresults = results || [];\n\n\t// Try to minimize operations if there is no seed and only one group\n\tif ( match.length === 1 ) {\n\n\t\t// Take a shortcut and set the context if the root selector is an ID\n\t\ttokens = match[0] = match[0].slice( 0 );\n\t\tif ( tokens.length > 2 && (token = tokens[0]).type === \"ID\" &&\n\t\t\t\tsupport.getById && context.nodeType === 9 && documentIsHTML &&\n\t\t\t\tExpr.relative[ tokens[1].type ] ) {\n\n\t\t\tcontext = ( Expr.find[\"ID\"]( token.matches[0].replace(runescape, funescape), context ) || [] )[0];\n\t\t\tif ( !context ) {\n\t\t\t\treturn results;\n\n\t\t\t// Precompiled matchers will still verify ancestry, so step up a level\n\t\t\t} else if ( compiled ) {\n\t\t\t\tcontext = context.parentNode;\n\t\t\t}\n\n\t\t\tselector = selector.slice( tokens.shift().value.length );\n\t\t}\n\n\t\t// Fetch a seed set for right-to-left matching\n\t\ti = matchExpr[\"needsContext\"].test( selector ) ? 0 : tokens.length;\n\t\twhile ( i-- ) {\n\t\t\ttoken = tokens[i];\n\n\t\t\t// Abort if we hit a combinator\n\t\t\tif ( Expr.relative[ (type = token.type) ] ) {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tif ( (find = Expr.find[ type ]) ) {\n\t\t\t\t// Search, expanding context for leading sibling combinators\n\t\t\t\tif ( (seed = find(\n\t\t\t\t\ttoken.matches[0].replace( runescape, funescape ),\n\t\t\t\t\trsibling.test( tokens[0].type ) && testContext( context.parentNode ) || context\n\t\t\t\t)) ) {\n\n\t\t\t\t\t// If seed is empty or no tokens remain, we can return early\n\t\t\t\t\ttokens.splice( i, 1 );\n\t\t\t\t\tselector = seed.length && toSelector( tokens );\n\t\t\t\t\tif ( !selector ) {\n\t\t\t\t\t\tpush.apply( results, seed );\n\t\t\t\t\t\treturn results;\n\t\t\t\t\t}\n\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t// Compile and execute a filtering function if one is not provided\n\t// Provide `match` to avoid retokenization if we modified the selector above\n\t( compiled || compile( selector, match ) )(\n\t\tseed,\n\t\tcontext,\n\t\t!documentIsHTML,\n\t\tresults,\n\t\trsibling.test( selector ) && testContext( context.parentNode ) || context\n\t);\n\treturn results;\n};\n\n// One-time assignments\n\n// Sort stability\nsupport.sortStable = expando.split(\"\").sort( sortOrder ).join(\"\") === expando;\n\n// Support: Chrome 14-35+\n// Always assume duplicates if they aren't passed to the comparison function\nsupport.detectDuplicates = !!hasDuplicate;\n\n// Initialize against the default document\nsetDocument();\n\n// Support: Webkit<537.32 - Safari 6.0.3/Chrome 25 (fixed in Chrome 27)\n// Detached nodes confoundingly follow *each other*\nsupport.sortDetached = assert(function( div1 ) {\n\t// Should return 1, but returns 4 (following)\n\treturn div1.compareDocumentPosition( document.createElement(\"div\") ) & 1;\n});\n\n// Support: IE<8\n// Prevent attribute/property \"interpolation\"\n// http://msdn.microsoft.com/en-us/library/ms536429%28VS.85%29.aspx\nif ( !assert(function( div ) {\n\tdiv.innerHTML = \"<a href='#'></a>\";\n\treturn div.firstChild.getAttribute(\"href\") === \"#\" ;\n}) ) {\n\taddHandle( \"type|href|height|width\", function( elem, name, isXML ) {\n\t\tif ( !isXML ) {\n\t\t\treturn elem.getAttribute( name, name.toLowerCase() === \"type\" ? 1 : 2 );\n\t\t}\n\t});\n}\n\n// Support: IE<9\n// Use defaultValue in place of getAttribute(\"value\")\nif ( !support.attributes || !assert(function( div ) {\n\tdiv.innerHTML = \"<input/>\";\n\tdiv.firstChild.setAttribute( \"value\", \"\" );\n\treturn div.firstChild.getAttribute( \"value\" ) === \"\";\n}) ) {\n\taddHandle( \"value\", function( elem, name, isXML ) {\n\t\tif ( !isXML && elem.nodeName.toLowerCase() === \"input\" ) {\n\t\t\treturn elem.defaultValue;\n\t\t}\n\t});\n}\n\n// Support: IE<9\n// Use getAttributeNode to fetch booleans when getAttribute lies\nif ( !assert(function( div ) {\n\treturn div.getAttribute(\"disabled\") == null;\n}) ) {\n\taddHandle( booleans, function( elem, name, isXML ) {\n\t\tvar val;\n\t\tif ( !isXML ) {\n\t\t\treturn elem[ name ] === true ? name.toLowerCase() :\n\t\t\t\t\t(val = elem.getAttributeNode( name )) && val.specified ?\n\t\t\t\t\tval.value :\n\t\t\t\tnull;\n\t\t}\n\t});\n}\n\nreturn Sizzle;\n\n})( window );\n\n\n\njQuery.find = Sizzle;\njQuery.expr = Sizzle.selectors;\njQuery.expr[\":\"] = jQuery.expr.pseudos;\njQuery.unique = Sizzle.uniqueSort;\njQuery.text = Sizzle.getText;\njQuery.isXMLDoc = Sizzle.isXML;\njQuery.contains = Sizzle.contains;\n\n\n\nvar rneedsContext = jQuery.expr.match.needsContext;\n\nvar rsingleTag = (/^<(\\w+)\\s*\\/?>(?:<\\/\\1>|)$/);\n\n\n\nvar risSimple = /^.[^:#\\[\\.,]*$/;\n\n// Implement the identical functionality for filter and not\nfunction winnow( elements, qualifier, not ) {\n\tif ( jQuery.isFunction( qualifier ) ) {\n\t\treturn jQuery.grep( elements, function( elem, i ) {\n\t\t\t/* jshint -W018 */\n\t\t\treturn !!qualifier.call( elem, i, elem ) !== not;\n\t\t});\n\n\t}\n\n\tif ( qualifier.nodeType ) {\n\t\treturn jQuery.grep( elements, function( elem ) {\n\t\t\treturn ( elem === qualifier ) !== not;\n\t\t});\n\n\t}\n\n\tif ( typeof qualifier === \"string\" ) {\n\t\tif ( risSimple.test( qualifier ) ) {\n\t\t\treturn jQuery.filter( qualifier, elements, not );\n\t\t}\n\n\t\tqualifier = jQuery.filter( qualifier, elements );\n\t}\n\n\treturn jQuery.grep( elements, function( elem ) {\n\t\treturn ( indexOf.call( qualifier, elem ) >= 0 ) !== not;\n\t});\n}\n\njQuery.filter = function( expr, elems, not ) {\n\tvar elem = elems[ 0 ];\n\n\tif ( not ) {\n\t\texpr = \":not(\" + expr + \")\";\n\t}\n\n\treturn elems.length === 1 && elem.nodeType === 1 ?\n\t\tjQuery.find.matchesSelector( elem, expr ) ? [ elem ] : [] :\n\t\tjQuery.find.matches( expr, jQuery.grep( elems, function( elem ) {\n\t\t\treturn elem.nodeType === 1;\n\t\t}));\n};\n\njQuery.fn.extend({\n\tfind: function( selector ) {\n\t\tvar i,\n\t\t\tlen = this.length,\n\t\t\tret = [],\n\t\t\tself = this;\n\n\t\tif ( typeof selector !== \"string\" ) {\n\t\t\treturn this.pushStack( jQuery( selector ).filter(function() {\n\t\t\t\tfor ( i = 0; i < len; i++ ) {\n\t\t\t\t\tif ( jQuery.contains( self[ i ], this ) ) {\n\t\t\t\t\t\treturn true;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}) );\n\t\t}\n\n\t\tfor ( i = 0; i < len; i++ ) {\n\t\t\tjQuery.find( selector, self[ i ], ret );\n\t\t}\n\n\t\t// Needed because $( selector, context ) becomes $( context ).find( selector )\n\t\tret = this.pushStack( len > 1 ? jQuery.unique( ret ) : ret );\n\t\tret.selector = this.selector ? this.selector + \" \" + selector : selector;\n\t\treturn ret;\n\t},\n\tfilter: function( selector ) {\n\t\treturn this.pushStack( winnow(this, selector || [], false) );\n\t},\n\tnot: function( selector ) {\n\t\treturn this.pushStack( winnow(this, selector || [], true) );\n\t},\n\tis: function( selector ) {\n\t\treturn !!winnow(\n\t\t\tthis,\n\n\t\t\t// If this is a positional/relative selector, check membership in the returned set\n\t\t\t// so $(\"p:first\").is(\"p:last\") won't return true for a doc with two \"p\".\n\t\t\ttypeof selector === \"string\" && rneedsContext.test( selector ) ?\n\t\t\t\tjQuery( selector ) :\n\t\t\t\tselector || [],\n\t\t\tfalse\n\t\t).length;\n\t}\n});\n\n\n// Initialize a jQuery object\n\n\n// A central reference to the root jQuery(document)\nvar rootjQuery,\n\n\t// A simple way to check for HTML strings\n\t// Prioritize #id over <tag> to avoid XSS via location.hash (#9521)\n\t// Strict HTML recognition (#11290: must start with <)\n\trquickExpr = /^(?:\\s*(<[\\w\\W]+>)[^>]*|#([\\w-]*))$/,\n\n\tinit = jQuery.fn.init = function( selector, context ) {\n\t\tvar match, elem;\n\n\t\t// HANDLE: $(\"\"), $(null), $(undefined), $(false)\n\t\tif ( !selector ) {\n\t\t\treturn this;\n\t\t}\n\n\t\t// Handle HTML strings\n\t\tif ( typeof selector === \"string\" ) {\n\t\t\tif ( selector[0] === \"<\" && selector[ selector.length - 1 ] === \">\" && selector.length >= 3 ) {\n\t\t\t\t// Assume that strings that start and end with <> are HTML and skip the regex check\n\t\t\t\tmatch = [ null, selector, null ];\n\n\t\t\t} else {\n\t\t\t\tmatch = rquickExpr.exec( selector );\n\t\t\t}\n\n\t\t\t// Match html or make sure no context is specified for #id\n\t\t\tif ( match && (match[1] || !context) ) {\n\n\t\t\t\t// HANDLE: $(html) -> $(array)\n\t\t\t\tif ( match[1] ) {\n\t\t\t\t\tcontext = context instanceof jQuery ? context[0] : context;\n\n\t\t\t\t\t// Option to run scripts is true for back-compat\n\t\t\t\t\t// Intentionally let the error be thrown if parseHTML is not present\n\t\t\t\t\tjQuery.merge( this, jQuery.parseHTML(\n\t\t\t\t\t\tmatch[1],\n\t\t\t\t\t\tcontext && context.nodeType ? context.ownerDocument || context : document,\n\t\t\t\t\t\ttrue\n\t\t\t\t\t) );\n\n\t\t\t\t\t// HANDLE: $(html, props)\n\t\t\t\t\tif ( rsingleTag.test( match[1] ) && jQuery.isPlainObject( context ) ) {\n\t\t\t\t\t\tfor ( match in context ) {\n\t\t\t\t\t\t\t// Properties of context are called as methods if possible\n\t\t\t\t\t\t\tif ( jQuery.isFunction( this[ match ] ) ) {\n\t\t\t\t\t\t\t\tthis[ match ]( context[ match ] );\n\n\t\t\t\t\t\t\t// ...and otherwise set as attributes\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tthis.attr( match, context[ match ] );\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\treturn this;\n\n\t\t\t\t// HANDLE: $(#id)\n\t\t\t\t} else {\n\t\t\t\t\telem = document.getElementById( match[2] );\n\n\t\t\t\t\t// Support: Blackberry 4.6\n\t\t\t\t\t// gEBID returns nodes no longer in the document (#6963)\n\t\t\t\t\tif ( elem && elem.parentNode ) {\n\t\t\t\t\t\t// Inject the element directly into the jQuery object\n\t\t\t\t\t\tthis.length = 1;\n\t\t\t\t\t\tthis[0] = elem;\n\t\t\t\t\t}\n\n\t\t\t\t\tthis.context = document;\n\t\t\t\t\tthis.selector = selector;\n\t\t\t\t\treturn this;\n\t\t\t\t}\n\n\t\t\t// HANDLE: $(expr, $(...))\n\t\t\t} else if ( !context || context.jquery ) {\n\t\t\t\treturn ( context || rootjQuery ).find( selector );\n\n\t\t\t// HANDLE: $(expr, context)\n\t\t\t// (which is just equivalent to: $(context).find(expr)\n\t\t\t} else {\n\t\t\t\treturn this.constructor( context ).find( selector );\n\t\t\t}\n\n\t\t// HANDLE: $(DOMElement)\n\t\t} else if ( selector.nodeType ) {\n\t\t\tthis.context = this[0] = selector;\n\t\t\tthis.length = 1;\n\t\t\treturn this;\n\n\t\t// HANDLE: $(function)\n\t\t// Shortcut for document ready\n\t\t} else if ( jQuery.isFunction( selector ) ) {\n\t\t\treturn typeof rootjQuery.ready !== \"undefined\" ?\n\t\t\t\trootjQuery.ready( selector ) :\n\t\t\t\t// Execute immediately if ready is not present\n\t\t\t\tselector( jQuery );\n\t\t}\n\n\t\tif ( selector.selector !== undefined ) {\n\t\t\tthis.selector = selector.selector;\n\t\t\tthis.context = selector.context;\n\t\t}\n\n\t\treturn jQuery.makeArray( selector, this );\n\t};\n\n// Give the init function the jQuery prototype for later instantiation\ninit.prototype = jQuery.fn;\n\n// Initialize central reference\nrootjQuery = jQuery( document );\n\n\nvar rparentsprev = /^(?:parents|prev(?:Until|All))/,\n\t// Methods guaranteed to produce a unique set when starting from a unique set\n\tguaranteedUnique = {\n\t\tchildren: true,\n\t\tcontents: true,\n\t\tnext: true,\n\t\tprev: true\n\t};\n\njQuery.extend({\n\tdir: function( elem, dir, until ) {\n\t\tvar matched = [],\n\t\t\ttruncate = until !== undefined;\n\n\t\twhile ( (elem = elem[ dir ]) && elem.nodeType !== 9 ) {\n\t\t\tif ( elem.nodeType === 1 ) {\n\t\t\t\tif ( truncate && jQuery( elem ).is( until ) ) {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tmatched.push( elem );\n\t\t\t}\n\t\t}\n\t\treturn matched;\n\t},\n\n\tsibling: function( n, elem ) {\n\t\tvar matched = [];\n\n\t\tfor ( ; n; n = n.nextSibling ) {\n\t\t\tif ( n.nodeType === 1 && n !== elem ) {\n\t\t\t\tmatched.push( n );\n\t\t\t}\n\t\t}\n\n\t\treturn matched;\n\t}\n});\n\njQuery.fn.extend({\n\thas: function( target ) {\n\t\tvar targets = jQuery( target, this ),\n\t\t\tl = targets.length;\n\n\t\treturn this.filter(function() {\n\t\t\tvar i = 0;\n\t\t\tfor ( ; i < l; i++ ) {\n\t\t\t\tif ( jQuery.contains( this, targets[i] ) ) {\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t},\n\n\tclosest: function( selectors, context ) {\n\t\tvar cur,\n\t\t\ti = 0,\n\t\t\tl = this.length,\n\t\t\tmatched = [],\n\t\t\tpos = rneedsContext.test( selectors ) || typeof selectors !== \"string\" ?\n\t\t\t\tjQuery( selectors, context || this.context ) :\n\t\t\t\t0;\n\n\t\tfor ( ; i < l; i++ ) {\n\t\t\tfor ( cur = this[i]; cur && cur !== context; cur = cur.parentNode ) {\n\t\t\t\t// Always skip document fragments\n\t\t\t\tif ( cur.nodeType < 11 && (pos ?\n\t\t\t\t\tpos.index(cur) > -1 :\n\n\t\t\t\t\t// Don't pass non-elements to Sizzle\n\t\t\t\t\tcur.nodeType === 1 &&\n\t\t\t\t\t\tjQuery.find.matchesSelector(cur, selectors)) ) {\n\n\t\t\t\t\tmatched.push( cur );\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn this.pushStack( matched.length > 1 ? jQuery.unique( matched ) : matched );\n\t},\n\n\t// Determine the position of an element within the set\n\tindex: function( elem ) {\n\n\t\t// No argument, return index in parent\n\t\tif ( !elem ) {\n\t\t\treturn ( this[ 0 ] && this[ 0 ].parentNode ) ? this.first().prevAll().length : -1;\n\t\t}\n\n\t\t// Index in selector\n\t\tif ( typeof elem === \"string\" ) {\n\t\t\treturn indexOf.call( jQuery( elem ), this[ 0 ] );\n\t\t}\n\n\t\t// Locate the position of the desired element\n\t\treturn indexOf.call( this,\n\n\t\t\t// If it receives a jQuery object, the first element is used\n\t\t\telem.jquery ? elem[ 0 ] : elem\n\t\t);\n\t},\n\n\tadd: function( selector, context ) {\n\t\treturn this.pushStack(\n\t\t\tjQuery.unique(\n\t\t\t\tjQuery.merge( this.get(), jQuery( selector, context ) )\n\t\t\t)\n\t\t);\n\t},\n\n\taddBack: function( selector ) {\n\t\treturn this.add( selector == null ?\n\t\t\tthis.prevObject : this.prevObject.filter(selector)\n\t\t);\n\t}\n});\n\nfunction sibling( cur, dir ) {\n\twhile ( (cur = cur[dir]) && cur.nodeType !== 1 ) {}\n\treturn cur;\n}\n\njQuery.each({\n\tparent: function( elem ) {\n\t\tvar parent = elem.parentNode;\n\t\treturn parent && parent.nodeType !== 11 ? parent : null;\n\t},\n\tparents: function( elem ) {\n\t\treturn jQuery.dir( elem, \"parentNode\" );\n\t},\n\tparentsUntil: function( elem, i, until ) {\n\t\treturn jQuery.dir( elem, \"parentNode\", until );\n\t},\n\tnext: function( elem ) {\n\t\treturn sibling( elem, \"nextSibling\" );\n\t},\n\tprev: function( elem ) {\n\t\treturn sibling( elem, \"previousSibling\" );\n\t},\n\tnextAll: function( elem ) {\n\t\treturn jQuery.dir( elem, \"nextSibling\" );\n\t},\n\tprevAll: function( elem ) {\n\t\treturn jQuery.dir( elem, \"previousSibling\" );\n\t},\n\tnextUntil: function( elem, i, until ) {\n\t\treturn jQuery.dir( elem, \"nextSibling\", until );\n\t},\n\tprevUntil: function( elem, i, until ) {\n\t\treturn jQuery.dir( elem, \"previousSibling\", until );\n\t},\n\tsiblings: function( elem ) {\n\t\treturn jQuery.sibling( ( elem.parentNode || {} ).firstChild, elem );\n\t},\n\tchildren: function( elem ) {\n\t\treturn jQuery.sibling( elem.firstChild );\n\t},\n\tcontents: function( elem ) {\n\t\treturn elem.contentDocument || jQuery.merge( [], elem.childNodes );\n\t}\n}, function( name, fn ) {\n\tjQuery.fn[ name ] = function( until, selector ) {\n\t\tvar matched = jQuery.map( this, fn, until );\n\n\t\tif ( name.slice( -5 ) !== \"Until\" ) {\n\t\t\tselector = until;\n\t\t}\n\n\t\tif ( selector && typeof selector === \"string\" ) {\n\t\t\tmatched = jQuery.filter( selector, matched );\n\t\t}\n\n\t\tif ( this.length > 1 ) {\n\t\t\t// Remove duplicates\n\t\t\tif ( !guaranteedUnique[ name ] ) {\n\t\t\t\tjQuery.unique( matched );\n\t\t\t}\n\n\t\t\t// Reverse order for parents* and prev-derivatives\n\t\t\tif ( rparentsprev.test( name ) ) {\n\t\t\t\tmatched.reverse();\n\t\t\t}\n\t\t}\n\n\t\treturn this.pushStack( matched );\n\t};\n});\nvar rnotwhite = (/\\S+/g);\n\n\n\n// String to Object options format cache\nvar optionsCache = {};\n\n// Convert String-formatted options into Object-formatted ones and store in cache\nfunction createOptions( options ) {\n\tvar object = optionsCache[ options ] = {};\n\tjQuery.each( options.match( rnotwhite ) || [], function( _, flag ) {\n\t\tobject[ flag ] = true;\n\t});\n\treturn object;\n}\n\n/*\n * Create a callback list using the following parameters:\n *\n *\toptions: an optional list of space-separated options that will change how\n *\t\t\tthe callback list behaves or a more traditional option object\n *\n * By default a callback list will act like an event callback list and can be\n * \"fired\" multiple times.\n *\n * Possible options:\n *\n *\tonce:\t\t\twill ensure the callback list can only be fired once (like a Deferred)\n *\n *\tmemory:\t\t\twill keep track of previous values and will call any callback added\n *\t\t\t\t\tafter the list has been fired right away with the latest \"memorized\"\n *\t\t\t\t\tvalues (like a Deferred)\n *\n *\tunique:\t\t\twill ensure a callback can only be added once (no duplicate in the list)\n *\n *\tstopOnFalse:\tinterrupt callings when a callback returns false\n *\n */\njQuery.Callbacks = function( options ) {\n\n\t// Convert options from String-formatted to Object-formatted if needed\n\t// (we check in cache first)\n\toptions = typeof options === \"string\" ?\n\t\t( optionsCache[ options ] || createOptions( options ) ) :\n\t\tjQuery.extend( {}, options );\n\n\tvar // Last fire value (for non-forgettable lists)\n\t\tmemory,\n\t\t// Flag to know if list was already fired\n\t\tfired,\n\t\t// Flag to know if list is currently firing\n\t\tfiring,\n\t\t// First callback to fire (used internally by add and fireWith)\n\t\tfiringStart,\n\t\t// End of the loop when firing\n\t\tfiringLength,\n\t\t// Index of currently firing callback (modified by remove if needed)\n\t\tfiringIndex,\n\t\t// Actual callback list\n\t\tlist = [],\n\t\t// Stack of fire calls for repeatable lists\n\t\tstack = !options.once && [],\n\t\t// Fire callbacks\n\t\tfire = function( data ) {\n\t\t\tmemory = options.memory && data;\n\t\t\tfired = true;\n\t\t\tfiringIndex = firingStart || 0;\n\t\t\tfiringStart = 0;\n\t\t\tfiringLength = list.length;\n\t\t\tfiring = true;\n\t\t\tfor ( ; list && firingIndex < firingLength; firingIndex++ ) {\n\t\t\t\tif ( list[ firingIndex ].apply( data[ 0 ], data[ 1 ] ) === false && options.stopOnFalse ) {\n\t\t\t\t\tmemory = false; // To prevent further calls using add\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t\tfiring = false;\n\t\t\tif ( list ) {\n\t\t\t\tif ( stack ) {\n\t\t\t\t\tif ( stack.length ) {\n\t\t\t\t\t\tfire( stack.shift() );\n\t\t\t\t\t}\n\t\t\t\t} else if ( memory ) {\n\t\t\t\t\tlist = [];\n\t\t\t\t} else {\n\t\t\t\t\tself.disable();\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t// Actual Callbacks object\n\t\tself = {\n\t\t\t// Add a callback or a collection of callbacks to the list\n\t\t\tadd: function() {\n\t\t\t\tif ( list ) {\n\t\t\t\t\t// First, we save the current length\n\t\t\t\t\tvar start = list.length;\n\t\t\t\t\t(function add( args ) {\n\t\t\t\t\t\tjQuery.each( args, function( _, arg ) {\n\t\t\t\t\t\t\tvar type = jQuery.type( arg );\n\t\t\t\t\t\t\tif ( type === \"function\" ) {\n\t\t\t\t\t\t\t\tif ( !options.unique || !self.has( arg ) ) {\n\t\t\t\t\t\t\t\t\tlist.push( arg );\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t} else if ( arg && arg.length && type !== \"string\" ) {\n\t\t\t\t\t\t\t\t// Inspect recursively\n\t\t\t\t\t\t\t\tadd( arg );\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t});\n\t\t\t\t\t})( arguments );\n\t\t\t\t\t// Do we need to add the callbacks to the\n\t\t\t\t\t// current firing batch?\n\t\t\t\t\tif ( firing ) {\n\t\t\t\t\t\tfiringLength = list.length;\n\t\t\t\t\t// With memory, if we're not firing then\n\t\t\t\t\t// we should call right away\n\t\t\t\t\t} else if ( memory ) {\n\t\t\t\t\t\tfiringStart = start;\n\t\t\t\t\t\tfire( memory );\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn this;\n\t\t\t},\n\t\t\t// Remove a callback from the list\n\t\t\tremove: function() {\n\t\t\t\tif ( list ) {\n\t\t\t\t\tjQuery.each( arguments, function( _, arg ) {\n\t\t\t\t\t\tvar index;\n\t\t\t\t\t\twhile ( ( index = jQuery.inArray( arg, list, index ) ) > -1 ) {\n\t\t\t\t\t\t\tlist.splice( index, 1 );\n\t\t\t\t\t\t\t// Handle firing indexes\n\t\t\t\t\t\t\tif ( firing ) {\n\t\t\t\t\t\t\t\tif ( index <= firingLength ) {\n\t\t\t\t\t\t\t\t\tfiringLength--;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tif ( index <= firingIndex ) {\n\t\t\t\t\t\t\t\t\tfiringIndex--;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t\treturn this;\n\t\t\t},\n\t\t\t// Check if a given callback is in the list.\n\t\t\t// If no argument is given, return whether or not list has callbacks attached.\n\t\t\thas: function( fn ) {\n\t\t\t\treturn fn ? jQuery.inArray( fn, list ) > -1 : !!( list && list.length );\n\t\t\t},\n\t\t\t// Remove all callbacks from the list\n\t\t\tempty: function() {\n\t\t\t\tlist = [];\n\t\t\t\tfiringLength = 0;\n\t\t\t\treturn this;\n\t\t\t},\n\t\t\t// Have the list do nothing anymore\n\t\t\tdisable: function() {\n\t\t\t\tlist = stack = memory = undefined;\n\t\t\t\treturn this;\n\t\t\t},\n\t\t\t// Is it disabled?\n\t\t\tdisabled: function() {\n\t\t\t\treturn !list;\n\t\t\t},\n\t\t\t// Lock the list in its current state\n\t\t\tlock: function() {\n\t\t\t\tstack = undefined;\n\t\t\t\tif ( !memory ) {\n\t\t\t\t\tself.disable();\n\t\t\t\t}\n\t\t\t\treturn this;\n\t\t\t},\n\t\t\t// Is it locked?\n\t\t\tlocked: function() {\n\t\t\t\treturn !stack;\n\t\t\t},\n\t\t\t// Call all callbacks with the given context and arguments\n\t\t\tfireWith: function( context, args ) {\n\t\t\t\tif ( list && ( !fired || stack ) ) {\n\t\t\t\t\targs = args || [];\n\t\t\t\t\targs = [ context, args.slice ? args.slice() : args ];\n\t\t\t\t\tif ( firing ) {\n\t\t\t\t\t\tstack.push( args );\n\t\t\t\t\t} else {\n\t\t\t\t\t\tfire( args );\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\treturn this;\n\t\t\t},\n\t\t\t// Call all the callbacks with the given arguments\n\t\t\tfire: function() {\n\t\t\t\tself.fireWith( this, arguments );\n\t\t\t\treturn this;\n\t\t\t},\n\t\t\t// To know if the callbacks have already been called at least once\n\t\t\tfired: function() {\n\t\t\t\treturn !!fired;\n\t\t\t}\n\t\t};\n\n\treturn self;\n};\n\n\njQuery.extend({\n\n\tDeferred: function( func ) {\n\t\tvar tuples = [\n\t\t\t\t// action, add listener, listener list, final state\n\t\t\t\t[ \"resolve\", \"done\", jQuery.Callbacks(\"once memory\"), \"resolved\" ],\n\t\t\t\t[ \"reject\", \"fail\", jQuery.Callbacks(\"once memory\"), \"rejected\" ],\n\t\t\t\t[ \"notify\", \"progress\", jQuery.Callbacks(\"memory\") ]\n\t\t\t],\n\t\t\tstate = \"pending\",\n\t\t\tpromise = {\n\t\t\t\tstate: function() {\n\t\t\t\t\treturn state;\n\t\t\t\t},\n\t\t\t\talways: function() {\n\t\t\t\t\tdeferred.done( arguments ).fail( arguments );\n\t\t\t\t\treturn this;\n\t\t\t\t},\n\t\t\t\tthen: function( /* fnDone, fnFail, fnProgress */ ) {\n\t\t\t\t\tvar fns = arguments;\n\t\t\t\t\treturn jQuery.Deferred(function( newDefer ) {\n\t\t\t\t\t\tjQuery.each( tuples, function( i, tuple ) {\n\t\t\t\t\t\t\tvar fn = jQuery.isFunction( fns[ i ] ) && fns[ i ];\n\t\t\t\t\t\t\t// deferred[ done | fail | progress ] for forwarding actions to newDefer\n\t\t\t\t\t\t\tdeferred[ tuple[1] ](function() {\n\t\t\t\t\t\t\t\tvar returned = fn && fn.apply( this, arguments );\n\t\t\t\t\t\t\t\tif ( returned && jQuery.isFunction( returned.promise ) ) {\n\t\t\t\t\t\t\t\t\treturned.promise()\n\t\t\t\t\t\t\t\t\t\t.done( newDefer.resolve )\n\t\t\t\t\t\t\t\t\t\t.fail( newDefer.reject )\n\t\t\t\t\t\t\t\t\t\t.progress( newDefer.notify );\n\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\tnewDefer[ tuple[ 0 ] + \"With\" ]( this === promise ? newDefer.promise() : this, fn ? [ returned ] : arguments );\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t});\n\t\t\t\t\t\tfns = null;\n\t\t\t\t\t}).promise();\n\t\t\t\t},\n\t\t\t\t// Get a promise for this deferred\n\t\t\t\t// If obj is provided, the promise aspect is added to the object\n\t\t\t\tpromise: function( obj ) {\n\t\t\t\t\treturn obj != null ? jQuery.extend( obj, promise ) : promise;\n\t\t\t\t}\n\t\t\t},\n\t\t\tdeferred = {};\n\n\t\t// Keep pipe for back-compat\n\t\tpromise.pipe = promise.then;\n\n\t\t// Add list-specific methods\n\t\tjQuery.each( tuples, function( i, tuple ) {\n\t\t\tvar list = tuple[ 2 ],\n\t\t\t\tstateString = tuple[ 3 ];\n\n\t\t\t// promise[ done | fail | progress ] = list.add\n\t\t\tpromise[ tuple[1] ] = list.add;\n\n\t\t\t// Handle state\n\t\t\tif ( stateString ) {\n\t\t\t\tlist.add(function() {\n\t\t\t\t\t// state = [ resolved | rejected ]\n\t\t\t\t\tstate = stateString;\n\n\t\t\t\t// [ reject_list | resolve_list ].disable; progress_list.lock\n\t\t\t\t}, tuples[ i ^ 1 ][ 2 ].disable, tuples[ 2 ][ 2 ].lock );\n\t\t\t}\n\n\t\t\t// deferred[ resolve | reject | notify ]\n\t\t\tdeferred[ tuple[0] ] = function() {\n\t\t\t\tdeferred[ tuple[0] + \"With\" ]( this === deferred ? promise : this, arguments );\n\t\t\t\treturn this;\n\t\t\t};\n\t\t\tdeferred[ tuple[0] + \"With\" ] = list.fireWith;\n\t\t});\n\n\t\t// Make the deferred a promise\n\t\tpromise.promise( deferred );\n\n\t\t// Call given func if any\n\t\tif ( func ) {\n\t\t\tfunc.call( deferred, deferred );\n\t\t}\n\n\t\t// All done!\n\t\treturn deferred;\n\t},\n\n\t// Deferred helper\n\twhen: function( subordinate /* , ..., subordinateN */ ) {\n\t\tvar i = 0,\n\t\t\tresolveValues = slice.call( arguments ),\n\t\t\tlength = resolveValues.length,\n\n\t\t\t// the count of uncompleted subordinates\n\t\t\tremaining = length !== 1 || ( subordinate && jQuery.isFunction( subordinate.promise ) ) ? length : 0,\n\n\t\t\t// the master Deferred. If resolveValues consist of only a single Deferred, just use that.\n\t\t\tdeferred = remaining === 1 ? subordinate : jQuery.Deferred(),\n\n\t\t\t// Update function for both resolve and progress values\n\t\t\tupdateFunc = function( i, contexts, values ) {\n\t\t\t\treturn function( value ) {\n\t\t\t\t\tcontexts[ i ] = this;\n\t\t\t\t\tvalues[ i ] = arguments.length > 1 ? slice.call( arguments ) : value;\n\t\t\t\t\tif ( values === progressValues ) {\n\t\t\t\t\t\tdeferred.notifyWith( contexts, values );\n\t\t\t\t\t} else if ( !( --remaining ) ) {\n\t\t\t\t\t\tdeferred.resolveWith( contexts, values );\n\t\t\t\t\t}\n\t\t\t\t};\n\t\t\t},\n\n\t\t\tprogressValues, progressContexts, resolveContexts;\n\n\t\t// Add listeners to Deferred subordinates; treat others as resolved\n\t\tif ( length > 1 ) {\n\t\t\tprogressValues = new Array( length );\n\t\t\tprogressContexts = new Array( length );\n\t\t\tresolveContexts = new Array( length );\n\t\t\tfor ( ; i < length; i++ ) {\n\t\t\t\tif ( resolveValues[ i ] && jQuery.isFunction( resolveValues[ i ].promise ) ) {\n\t\t\t\t\tresolveValues[ i ].promise()\n\t\t\t\t\t\t.done( updateFunc( i, resolveContexts, resolveValues ) )\n\t\t\t\t\t\t.fail( deferred.reject )\n\t\t\t\t\t\t.progress( updateFunc( i, progressContexts, progressValues ) );\n\t\t\t\t} else {\n\t\t\t\t\t--remaining;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t// If we're not waiting on anything, resolve the master\n\t\tif ( !remaining ) {\n\t\t\tdeferred.resolveWith( resolveContexts, resolveValues );\n\t\t}\n\n\t\treturn deferred.promise();\n\t}\n});\n\n\n// The deferred used on DOM ready\nvar readyList;\n\njQuery.fn.ready = function( fn ) {\n\t// Add the callback\n\tjQuery.ready.promise().done( fn );\n\n\treturn this;\n};\n\njQuery.extend({\n\t// Is the DOM ready to be used? Set to true once it occurs.\n\tisReady: false,\n\n\t// A counter to track how many items to wait for before\n\t// the ready event fires. See #6781\n\treadyWait: 1,\n\n\t// Hold (or release) the ready event\n\tholdReady: function( hold ) {\n\t\tif ( hold ) {\n\t\t\tjQuery.readyWait++;\n\t\t} else {\n\t\t\tjQuery.ready( true );\n\t\t}\n\t},\n\n\t// Handle when the DOM is ready\n\tready: function( wait ) {\n\n\t\t// Abort if there are pending holds or we're already ready\n\t\tif ( wait === true ? --jQuery.readyWait : jQuery.isReady ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Remember that the DOM is ready\n\t\tjQuery.isReady = true;\n\n\t\t// If a normal DOM Ready event fired, decrement, and wait if need be\n\t\tif ( wait !== true && --jQuery.readyWait > 0 ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// If there are functions bound, to execute\n\t\treadyList.resolveWith( document, [ jQuery ] );\n\n\t\t// Trigger any bound ready events\n\t\tif ( jQuery.fn.triggerHandler ) {\n\t\t\tjQuery( document ).triggerHandler( \"ready\" );\n\t\t\tjQuery( document ).off( \"ready\" );\n\t\t}\n\t}\n});\n\n/**\n * The ready event handler and self cleanup method\n */\nfunction completed() {\n\tdocument.removeEventListener( \"DOMContentLoaded\", completed, false );\n\twindow.removeEventListener( \"load\", completed, false );\n\tjQuery.ready();\n}\n\njQuery.ready.promise = function( obj ) {\n\tif ( !readyList ) {\n\n\t\treadyList = jQuery.Deferred();\n\n\t\t// Catch cases where $(document).ready() is called after the browser event has already occurred.\n\t\t// We once tried to use readyState \"interactive\" here, but it caused issues like the one\n\t\t// discovered by ChrisS here: http://bugs.jquery.com/ticket/12282#comment:15\n\t\tif ( document.readyState === \"complete\" ) {\n\t\t\t// Handle it asynchronously to allow scripts the opportunity to delay ready\n\t\t\tsetTimeout( jQuery.ready );\n\n\t\t} else {\n\n\t\t\t// Use the handy event callback\n\t\t\tdocument.addEventListener( \"DOMContentLoaded\", completed, false );\n\n\t\t\t// A fallback to window.onload, that will always work\n\t\t\twindow.addEventListener( \"load\", completed, false );\n\t\t}\n\t}\n\treturn readyList.promise( obj );\n};\n\n// Kick off the DOM ready check even if the user does not\njQuery.ready.promise();\n\n\n\n\n// Multifunctional method to get and set values of a collection\n// The value/s can optionally be executed if it's a function\nvar access = jQuery.access = function( elems, fn, key, value, chainable, emptyGet, raw ) {\n\tvar i = 0,\n\t\tlen = elems.length,\n\t\tbulk = key == null;\n\n\t// Sets many values\n\tif ( jQuery.type( key ) === \"object\" ) {\n\t\tchainable = true;\n\t\tfor ( i in key ) {\n\t\t\tjQuery.access( elems, fn, i, key[i], true, emptyGet, raw );\n\t\t}\n\n\t// Sets one value\n\t} else if ( value !== undefined ) {\n\t\tchainable = true;\n\n\t\tif ( !jQuery.isFunction( value ) ) {\n\t\t\traw = true;\n\t\t}\n\n\t\tif ( bulk ) {\n\t\t\t// Bulk operations run against the entire set\n\t\t\tif ( raw ) {\n\t\t\t\tfn.call( elems, value );\n\t\t\t\tfn = null;\n\n\t\t\t// ...except when executing function values\n\t\t\t} else {\n\t\t\t\tbulk = fn;\n\t\t\t\tfn = function( elem, key, value ) {\n\t\t\t\t\treturn bulk.call( jQuery( elem ), value );\n\t\t\t\t};\n\t\t\t}\n\t\t}\n\n\t\tif ( fn ) {\n\t\t\tfor ( ; i < len; i++ ) {\n\t\t\t\tfn( elems[i], key, raw ? value : value.call( elems[i], i, fn( elems[i], key ) ) );\n\t\t\t}\n\t\t}\n\t}\n\n\treturn chainable ?\n\t\telems :\n\n\t\t// Gets\n\t\tbulk ?\n\t\t\tfn.call( elems ) :\n\t\t\tlen ? fn( elems[0], key ) : emptyGet;\n};\n\n\n/**\n * Determines whether an object can have data\n */\njQuery.acceptData = function( owner ) {\n\t// Accepts only:\n\t//  - Node\n\t//    - Node.ELEMENT_NODE\n\t//    - Node.DOCUMENT_NODE\n\t//  - Object\n\t//    - Any\n\t/* jshint -W018 */\n\treturn owner.nodeType === 1 || owner.nodeType === 9 || !( +owner.nodeType );\n};\n\n\nfunction Data() {\n\t// Support: Android<4,\n\t// Old WebKit does not have Object.preventExtensions/freeze method,\n\t// return new empty object instead with no [[set]] accessor\n\tObject.defineProperty( this.cache = {}, 0, {\n\t\tget: function() {\n\t\t\treturn {};\n\t\t}\n\t});\n\n\tthis.expando = jQuery.expando + Data.uid++;\n}\n\nData.uid = 1;\nData.accepts = jQuery.acceptData;\n\nData.prototype = {\n\tkey: function( owner ) {\n\t\t// We can accept data for non-element nodes in modern browsers,\n\t\t// but we should not, see #8335.\n\t\t// Always return the key for a frozen object.\n\t\tif ( !Data.accepts( owner ) ) {\n\t\t\treturn 0;\n\t\t}\n\n\t\tvar descriptor = {},\n\t\t\t// Check if the owner object already has a cache key\n\t\t\tunlock = owner[ this.expando ];\n\n\t\t// If not, create one\n\t\tif ( !unlock ) {\n\t\t\tunlock = Data.uid++;\n\n\t\t\t// Secure it in a non-enumerable, non-writable property\n\t\t\ttry {\n\t\t\t\tdescriptor[ this.expando ] = { value: unlock };\n\t\t\t\tObject.defineProperties( owner, descriptor );\n\n\t\t\t// Support: Android<4\n\t\t\t// Fallback to a less secure definition\n\t\t\t} catch ( e ) {\n\t\t\t\tdescriptor[ this.expando ] = unlock;\n\t\t\t\tjQuery.extend( owner, descriptor );\n\t\t\t}\n\t\t}\n\n\t\t// Ensure the cache object\n\t\tif ( !this.cache[ unlock ] ) {\n\t\t\tthis.cache[ unlock ] = {};\n\t\t}\n\n\t\treturn unlock;\n\t},\n\tset: function( owner, data, value ) {\n\t\tvar prop,\n\t\t\t// There may be an unlock assigned to this node,\n\t\t\t// if there is no entry for this \"owner\", create one inline\n\t\t\t// and set the unlock as though an owner entry had always existed\n\t\t\tunlock = this.key( owner ),\n\t\t\tcache = this.cache[ unlock ];\n\n\t\t// Handle: [ owner, key, value ] args\n\t\tif ( typeof data === \"string\" ) {\n\t\t\tcache[ data ] = value;\n\n\t\t// Handle: [ owner, { properties } ] args\n\t\t} else {\n\t\t\t// Fresh assignments by object are shallow copied\n\t\t\tif ( jQuery.isEmptyObject( cache ) ) {\n\t\t\t\tjQuery.extend( this.cache[ unlock ], data );\n\t\t\t// Otherwise, copy the properties one-by-one to the cache object\n\t\t\t} else {\n\t\t\t\tfor ( prop in data ) {\n\t\t\t\t\tcache[ prop ] = data[ prop ];\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn cache;\n\t},\n\tget: function( owner, key ) {\n\t\t// Either a valid cache is found, or will be created.\n\t\t// New caches will be created and the unlock returned,\n\t\t// allowing direct access to the newly created\n\t\t// empty data object. A valid owner object must be provided.\n\t\tvar cache = this.cache[ this.key( owner ) ];\n\n\t\treturn key === undefined ?\n\t\t\tcache : cache[ key ];\n\t},\n\taccess: function( owner, key, value ) {\n\t\tvar stored;\n\t\t// In cases where either:\n\t\t//\n\t\t//   1. No key was specified\n\t\t//   2. A string key was specified, but no value provided\n\t\t//\n\t\t// Take the \"read\" path and allow the get method to determine\n\t\t// which value to return, respectively either:\n\t\t//\n\t\t//   1. The entire cache object\n\t\t//   2. The data stored at the key\n\t\t//\n\t\tif ( key === undefined ||\n\t\t\t\t((key && typeof key === \"string\") && value === undefined) ) {\n\n\t\t\tstored = this.get( owner, key );\n\n\t\t\treturn stored !== undefined ?\n\t\t\t\tstored : this.get( owner, jQuery.camelCase(key) );\n\t\t}\n\n\t\t// [*]When the key is not a string, or both a key and value\n\t\t// are specified, set or extend (existing objects) with either:\n\t\t//\n\t\t//   1. An object of properties\n\t\t//   2. A key and value\n\t\t//\n\t\tthis.set( owner, key, value );\n\n\t\t// Since the \"set\" path can have two possible entry points\n\t\t// return the expected data based on which path was taken[*]\n\t\treturn value !== undefined ? value : key;\n\t},\n\tremove: function( owner, key ) {\n\t\tvar i, name, camel,\n\t\t\tunlock = this.key( owner ),\n\t\t\tcache = this.cache[ unlock ];\n\n\t\tif ( key === undefined ) {\n\t\t\tthis.cache[ unlock ] = {};\n\n\t\t} else {\n\t\t\t// Support array or space separated string of keys\n\t\t\tif ( jQuery.isArray( key ) ) {\n\t\t\t\t// If \"name\" is an array of keys...\n\t\t\t\t// When data is initially created, via (\"key\", \"val\") signature,\n\t\t\t\t// keys will be converted to camelCase.\n\t\t\t\t// Since there is no way to tell _how_ a key was added, remove\n\t\t\t\t// both plain key and camelCase key. #12786\n\t\t\t\t// This will only penalize the array argument path.\n\t\t\t\tname = key.concat( key.map( jQuery.camelCase ) );\n\t\t\t} else {\n\t\t\t\tcamel = jQuery.camelCase( key );\n\t\t\t\t// Try the string as a key before any manipulation\n\t\t\t\tif ( key in cache ) {\n\t\t\t\t\tname = [ key, camel ];\n\t\t\t\t} else {\n\t\t\t\t\t// If a key with the spaces exists, use it.\n\t\t\t\t\t// Otherwise, create an array by matching non-whitespace\n\t\t\t\t\tname = camel;\n\t\t\t\t\tname = name in cache ?\n\t\t\t\t\t\t[ name ] : ( name.match( rnotwhite ) || [] );\n\t\t\t\t}\n\t\t\t}\n\n\t\t\ti = name.length;\n\t\t\twhile ( i-- ) {\n\t\t\t\tdelete cache[ name[ i ] ];\n\t\t\t}\n\t\t}\n\t},\n\thasData: function( owner ) {\n\t\treturn !jQuery.isEmptyObject(\n\t\t\tthis.cache[ owner[ this.expando ] ] || {}\n\t\t);\n\t},\n\tdiscard: function( owner ) {\n\t\tif ( owner[ this.expando ] ) {\n\t\t\tdelete this.cache[ owner[ this.expando ] ];\n\t\t}\n\t}\n};\nvar data_priv = new Data();\n\nvar data_user = new Data();\n\n\n\n//\tImplementation Summary\n//\n//\t1. Enforce API surface and semantic compatibility with 1.9.x branch\n//\t2. Improve the module's maintainability by reducing the storage\n//\t\tpaths to a single mechanism.\n//\t3. Use the same single mechanism to support \"private\" and \"user\" data.\n//\t4. _Never_ expose \"private\" data to user code (TODO: Drop _data, _removeData)\n//\t5. Avoid exposing implementation details on user objects (eg. expando properties)\n//\t6. Provide a clear path for implementation upgrade to WeakMap in 2014\n\nvar rbrace = /^(?:\\{[\\w\\W]*\\}|\\[[\\w\\W]*\\])$/,\n\trmultiDash = /([A-Z])/g;\n\nfunction dataAttr( elem, key, data ) {\n\tvar name;\n\n\t// If nothing was found internally, try to fetch any\n\t// data from the HTML5 data-* attribute\n\tif ( data === undefined && elem.nodeType === 1 ) {\n\t\tname = \"data-\" + key.replace( rmultiDash, \"-$1\" ).toLowerCase();\n\t\tdata = elem.getAttribute( name );\n\n\t\tif ( typeof data === \"string\" ) {\n\t\t\ttry {\n\t\t\t\tdata = data === \"true\" ? true :\n\t\t\t\t\tdata === \"false\" ? false :\n\t\t\t\t\tdata === \"null\" ? null :\n\t\t\t\t\t// Only convert to a number if it doesn't change the string\n\t\t\t\t\t+data + \"\" === data ? +data :\n\t\t\t\t\trbrace.test( data ) ? jQuery.parseJSON( data ) :\n\t\t\t\t\tdata;\n\t\t\t} catch( e ) {}\n\n\t\t\t// Make sure we set the data so it isn't changed later\n\t\t\tdata_user.set( elem, key, data );\n\t\t} else {\n\t\t\tdata = undefined;\n\t\t}\n\t}\n\treturn data;\n}\n\njQuery.extend({\n\thasData: function( elem ) {\n\t\treturn data_user.hasData( elem ) || data_priv.hasData( elem );\n\t},\n\n\tdata: function( elem, name, data ) {\n\t\treturn data_user.access( elem, name, data );\n\t},\n\n\tremoveData: function( elem, name ) {\n\t\tdata_user.remove( elem, name );\n\t},\n\n\t// TODO: Now that all calls to _data and _removeData have been replaced\n\t// with direct calls to data_priv methods, these can be deprecated.\n\t_data: function( elem, name, data ) {\n\t\treturn data_priv.access( elem, name, data );\n\t},\n\n\t_removeData: function( elem, name ) {\n\t\tdata_priv.remove( elem, name );\n\t}\n});\n\njQuery.fn.extend({\n\tdata: function( key, value ) {\n\t\tvar i, name, data,\n\t\t\telem = this[ 0 ],\n\t\t\tattrs = elem && elem.attributes;\n\n\t\t// Gets all values\n\t\tif ( key === undefined ) {\n\t\t\tif ( this.length ) {\n\t\t\t\tdata = data_user.get( elem );\n\n\t\t\t\tif ( elem.nodeType === 1 && !data_priv.get( elem, \"hasDataAttrs\" ) ) {\n\t\t\t\t\ti = attrs.length;\n\t\t\t\t\twhile ( i-- ) {\n\n\t\t\t\t\t\t// Support: IE11+\n\t\t\t\t\t\t// The attrs elements can be null (#14894)\n\t\t\t\t\t\tif ( attrs[ i ] ) {\n\t\t\t\t\t\t\tname = attrs[ i ].name;\n\t\t\t\t\t\t\tif ( name.indexOf( \"data-\" ) === 0 ) {\n\t\t\t\t\t\t\t\tname = jQuery.camelCase( name.slice(5) );\n\t\t\t\t\t\t\t\tdataAttr( elem, name, data[ name ] );\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tdata_priv.set( elem, \"hasDataAttrs\", true );\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn data;\n\t\t}\n\n\t\t// Sets multiple values\n\t\tif ( typeof key === \"object\" ) {\n\t\t\treturn this.each(function() {\n\t\t\t\tdata_user.set( this, key );\n\t\t\t});\n\t\t}\n\n\t\treturn access( this, function( value ) {\n\t\t\tvar data,\n\t\t\t\tcamelKey = jQuery.camelCase( key );\n\n\t\t\t// The calling jQuery object (element matches) is not empty\n\t\t\t// (and therefore has an element appears at this[ 0 ]) and the\n\t\t\t// `value` parameter was not undefined. An empty jQuery object\n\t\t\t// will result in `undefined` for elem = this[ 0 ] which will\n\t\t\t// throw an exception if an attempt to read a data cache is made.\n\t\t\tif ( elem && value === undefined ) {\n\t\t\t\t// Attempt to get data from the cache\n\t\t\t\t// with the key as-is\n\t\t\t\tdata = data_user.get( elem, key );\n\t\t\t\tif ( data !== undefined ) {\n\t\t\t\t\treturn data;\n\t\t\t\t}\n\n\t\t\t\t// Attempt to get data from the cache\n\t\t\t\t// with the key camelized\n\t\t\t\tdata = data_user.get( elem, camelKey );\n\t\t\t\tif ( data !== undefined ) {\n\t\t\t\t\treturn data;\n\t\t\t\t}\n\n\t\t\t\t// Attempt to \"discover\" the data in\n\t\t\t\t// HTML5 custom data-* attrs\n\t\t\t\tdata = dataAttr( elem, camelKey, undefined );\n\t\t\t\tif ( data !== undefined ) {\n\t\t\t\t\treturn data;\n\t\t\t\t}\n\n\t\t\t\t// We tried really hard, but the data doesn't exist.\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// Set the data...\n\t\t\tthis.each(function() {\n\t\t\t\t// First, attempt to store a copy or reference of any\n\t\t\t\t// data that might've been store with a camelCased key.\n\t\t\t\tvar data = data_user.get( this, camelKey );\n\n\t\t\t\t// For HTML5 data-* attribute interop, we have to\n\t\t\t\t// store property names with dashes in a camelCase form.\n\t\t\t\t// This might not apply to all properties...*\n\t\t\t\tdata_user.set( this, camelKey, value );\n\n\t\t\t\t// *... In the case of properties that might _actually_\n\t\t\t\t// have dashes, we need to also store a copy of that\n\t\t\t\t// unchanged property.\n\t\t\t\tif ( key.indexOf(\"-\") !== -1 && data !== undefined ) {\n\t\t\t\t\tdata_user.set( this, key, value );\n\t\t\t\t}\n\t\t\t});\n\t\t}, null, value, arguments.length > 1, null, true );\n\t},\n\n\tremoveData: function( key ) {\n\t\treturn this.each(function() {\n\t\t\tdata_user.remove( this, key );\n\t\t});\n\t}\n});\n\n\njQuery.extend({\n\tqueue: function( elem, type, data ) {\n\t\tvar queue;\n\n\t\tif ( elem ) {\n\t\t\ttype = ( type || \"fx\" ) + \"queue\";\n\t\t\tqueue = data_priv.get( elem, type );\n\n\t\t\t// Speed up dequeue by getting out quickly if this is just a lookup\n\t\t\tif ( data ) {\n\t\t\t\tif ( !queue || jQuery.isArray( data ) ) {\n\t\t\t\t\tqueue = data_priv.access( elem, type, jQuery.makeArray(data) );\n\t\t\t\t} else {\n\t\t\t\t\tqueue.push( data );\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn queue || [];\n\t\t}\n\t},\n\n\tdequeue: function( elem, type ) {\n\t\ttype = type || \"fx\";\n\n\t\tvar queue = jQuery.queue( elem, type ),\n\t\t\tstartLength = queue.length,\n\t\t\tfn = queue.shift(),\n\t\t\thooks = jQuery._queueHooks( elem, type ),\n\t\t\tnext = function() {\n\t\t\t\tjQuery.dequeue( elem, type );\n\t\t\t};\n\n\t\t// If the fx queue is dequeued, always remove the progress sentinel\n\t\tif ( fn === \"inprogress\" ) {\n\t\t\tfn = queue.shift();\n\t\t\tstartLength--;\n\t\t}\n\n\t\tif ( fn ) {\n\n\t\t\t// Add a progress sentinel to prevent the fx queue from being\n\t\t\t// automatically dequeued\n\t\t\tif ( type === \"fx\" ) {\n\t\t\t\tqueue.unshift( \"inprogress\" );\n\t\t\t}\n\n\t\t\t// Clear up the last queue stop function\n\t\t\tdelete hooks.stop;\n\t\t\tfn.call( elem, next, hooks );\n\t\t}\n\n\t\tif ( !startLength && hooks ) {\n\t\t\thooks.empty.fire();\n\t\t}\n\t},\n\n\t// Not public - generate a queueHooks object, or return the current one\n\t_queueHooks: function( elem, type ) {\n\t\tvar key = type + \"queueHooks\";\n\t\treturn data_priv.get( elem, key ) || data_priv.access( elem, key, {\n\t\t\tempty: jQuery.Callbacks(\"once memory\").add(function() {\n\t\t\t\tdata_priv.remove( elem, [ type + \"queue\", key ] );\n\t\t\t})\n\t\t});\n\t}\n});\n\njQuery.fn.extend({\n\tqueue: function( type, data ) {\n\t\tvar setter = 2;\n\n\t\tif ( typeof type !== \"string\" ) {\n\t\t\tdata = type;\n\t\t\ttype = \"fx\";\n\t\t\tsetter--;\n\t\t}\n\n\t\tif ( arguments.length < setter ) {\n\t\t\treturn jQuery.queue( this[0], type );\n\t\t}\n\n\t\treturn data === undefined ?\n\t\t\tthis :\n\t\t\tthis.each(function() {\n\t\t\t\tvar queue = jQuery.queue( this, type, data );\n\n\t\t\t\t// Ensure a hooks for this queue\n\t\t\t\tjQuery._queueHooks( this, type );\n\n\t\t\t\tif ( type === \"fx\" && queue[0] !== \"inprogress\" ) {\n\t\t\t\t\tjQuery.dequeue( this, type );\n\t\t\t\t}\n\t\t\t});\n\t},\n\tdequeue: function( type ) {\n\t\treturn this.each(function() {\n\t\t\tjQuery.dequeue( this, type );\n\t\t});\n\t},\n\tclearQueue: function( type ) {\n\t\treturn this.queue( type || \"fx\", [] );\n\t},\n\t// Get a promise resolved when queues of a certain type\n\t// are emptied (fx is the type by default)\n\tpromise: function( type, obj ) {\n\t\tvar tmp,\n\t\t\tcount = 1,\n\t\t\tdefer = jQuery.Deferred(),\n\t\t\telements = this,\n\t\t\ti = this.length,\n\t\t\tresolve = function() {\n\t\t\t\tif ( !( --count ) ) {\n\t\t\t\t\tdefer.resolveWith( elements, [ elements ] );\n\t\t\t\t}\n\t\t\t};\n\n\t\tif ( typeof type !== \"string\" ) {\n\t\t\tobj = type;\n\t\t\ttype = undefined;\n\t\t}\n\t\ttype = type || \"fx\";\n\n\t\twhile ( i-- ) {\n\t\t\ttmp = data_priv.get( elements[ i ], type + \"queueHooks\" );\n\t\t\tif ( tmp && tmp.empty ) {\n\t\t\t\tcount++;\n\t\t\t\ttmp.empty.add( resolve );\n\t\t\t}\n\t\t}\n\t\tresolve();\n\t\treturn defer.promise( obj );\n\t}\n});\nvar pnum = (/[+-]?(?:\\d*\\.|)\\d+(?:[eE][+-]?\\d+|)/).source;\n\nvar cssExpand = [ \"Top\", \"Right\", \"Bottom\", \"Left\" ];\n\nvar isHidden = function( elem, el ) {\n\t\t// isHidden might be called from jQuery#filter function;\n\t\t// in that case, element will be second argument\n\t\telem = el || elem;\n\t\treturn jQuery.css( elem, \"display\" ) === \"none\" || !jQuery.contains( elem.ownerDocument, elem );\n\t};\n\nvar rcheckableType = (/^(?:checkbox|radio)$/i);\n\n\n\n(function() {\n\tvar fragment = document.createDocumentFragment(),\n\t\tdiv = fragment.appendChild( document.createElement( \"div\" ) ),\n\t\tinput = document.createElement( \"input\" );\n\n\t// Support: Safari<=5.1\n\t// Check state lost if the name is set (#11217)\n\t// Support: Windows Web Apps (WWA)\n\t// `name` and `type` must use .setAttribute for WWA (#14901)\n\tinput.setAttribute( \"type\", \"radio\" );\n\tinput.setAttribute( \"checked\", \"checked\" );\n\tinput.setAttribute( \"name\", \"t\" );\n\n\tdiv.appendChild( input );\n\n\t// Support: Safari<=5.1, Android<4.2\n\t// Older WebKit doesn't clone checked state correctly in fragments\n\tsupport.checkClone = div.cloneNode( true ).cloneNode( true ).lastChild.checked;\n\n\t// Support: IE<=11+\n\t// Make sure textarea (and checkbox) defaultValue is properly cloned\n\tdiv.innerHTML = \"<textarea>x</textarea>\";\n\tsupport.noCloneChecked = !!div.cloneNode( true ).lastChild.defaultValue;\n})();\nvar strundefined = typeof undefined;\n\n\n\nsupport.focusinBubbles = \"onfocusin\" in window;\n\n\nvar\n\trkeyEvent = /^key/,\n\trmouseEvent = /^(?:mouse|pointer|contextmenu)|click/,\n\trfocusMorph = /^(?:focusinfocus|focusoutblur)$/,\n\trtypenamespace = /^([^.]*)(?:\\.(.+)|)$/;\n\nfunction returnTrue() {\n\treturn true;\n}\n\nfunction returnFalse() {\n\treturn false;\n}\n\nfunction safeActiveElement() {\n\ttry {\n\t\treturn document.activeElement;\n\t} catch ( err ) { }\n}\n\n/*\n * Helper functions for managing events -- not part of the public interface.\n * Props to Dean Edwards' addEvent library for many of the ideas.\n */\njQuery.event = {\n\n\tglobal: {},\n\n\tadd: function( elem, types, handler, data, selector ) {\n\n\t\tvar handleObjIn, eventHandle, tmp,\n\t\t\tevents, t, handleObj,\n\t\t\tspecial, handlers, type, namespaces, origType,\n\t\t\telemData = data_priv.get( elem );\n\n\t\t// Don't attach events to noData or text/comment nodes (but allow plain objects)\n\t\tif ( !elemData ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Caller can pass in an object of custom data in lieu of the handler\n\t\tif ( handler.handler ) {\n\t\t\thandleObjIn = handler;\n\t\t\thandler = handleObjIn.handler;\n\t\t\tselector = handleObjIn.selector;\n\t\t}\n\n\t\t// Make sure that the handler has a unique ID, used to find/remove it later\n\t\tif ( !handler.guid ) {\n\t\t\thandler.guid = jQuery.guid++;\n\t\t}\n\n\t\t// Init the element's event structure and main handler, if this is the first\n\t\tif ( !(events = elemData.events) ) {\n\t\t\tevents = elemData.events = {};\n\t\t}\n\t\tif ( !(eventHandle = elemData.handle) ) {\n\t\t\teventHandle = elemData.handle = function( e ) {\n\t\t\t\t// Discard the second event of a jQuery.event.trigger() and\n\t\t\t\t// when an event is called after a page has unloaded\n\t\t\t\treturn typeof jQuery !== strundefined && jQuery.event.triggered !== e.type ?\n\t\t\t\t\tjQuery.event.dispatch.apply( elem, arguments ) : undefined;\n\t\t\t};\n\t\t}\n\n\t\t// Handle multiple events separated by a space\n\t\ttypes = ( types || \"\" ).match( rnotwhite ) || [ \"\" ];\n\t\tt = types.length;\n\t\twhile ( t-- ) {\n\t\t\ttmp = rtypenamespace.exec( types[t] ) || [];\n\t\t\ttype = origType = tmp[1];\n\t\t\tnamespaces = ( tmp[2] || \"\" ).split( \".\" ).sort();\n\n\t\t\t// There *must* be a type, no attaching namespace-only handlers\n\t\t\tif ( !type ) {\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\t// If event changes its type, use the special event handlers for the changed type\n\t\t\tspecial = jQuery.event.special[ type ] || {};\n\n\t\t\t// If selector defined, determine special event api type, otherwise given type\n\t\t\ttype = ( selector ? special.delegateType : special.bindType ) || type;\n\n\t\t\t// Update special based on newly reset type\n\t\t\tspecial = jQuery.event.special[ type ] || {};\n\n\t\t\t// handleObj is passed to all event handlers\n\t\t\thandleObj = jQuery.extend({\n\t\t\t\ttype: type,\n\t\t\t\torigType: origType,\n\t\t\t\tdata: data,\n\t\t\t\thandler: handler,\n\t\t\t\tguid: handler.guid,\n\t\t\t\tselector: selector,\n\t\t\t\tneedsContext: selector && jQuery.expr.match.needsContext.test( selector ),\n\t\t\t\tnamespace: namespaces.join(\".\")\n\t\t\t}, handleObjIn );\n\n\t\t\t// Init the event handler queue if we're the first\n\t\t\tif ( !(handlers = events[ type ]) ) {\n\t\t\t\thandlers = events[ type ] = [];\n\t\t\t\thandlers.delegateCount = 0;\n\n\t\t\t\t// Only use addEventListener if the special events handler returns false\n\t\t\t\tif ( !special.setup || special.setup.call( elem, data, namespaces, eventHandle ) === false ) {\n\t\t\t\t\tif ( elem.addEventListener ) {\n\t\t\t\t\t\telem.addEventListener( type, eventHandle, false );\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif ( special.add ) {\n\t\t\t\tspecial.add.call( elem, handleObj );\n\n\t\t\t\tif ( !handleObj.handler.guid ) {\n\t\t\t\t\thandleObj.handler.guid = handler.guid;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Add to the element's handler list, delegates in front\n\t\t\tif ( selector ) {\n\t\t\t\thandlers.splice( handlers.delegateCount++, 0, handleObj );\n\t\t\t} else {\n\t\t\t\thandlers.push( handleObj );\n\t\t\t}\n\n\t\t\t// Keep track of which events have ever been used, for event optimization\n\t\t\tjQuery.event.global[ type ] = true;\n\t\t}\n\n\t},\n\n\t// Detach an event or set of events from an element\n\tremove: function( elem, types, handler, selector, mappedTypes ) {\n\n\t\tvar j, origCount, tmp,\n\t\t\tevents, t, handleObj,\n\t\t\tspecial, handlers, type, namespaces, origType,\n\t\t\telemData = data_priv.hasData( elem ) && data_priv.get( elem );\n\n\t\tif ( !elemData || !(events = elemData.events) ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Once for each type.namespace in types; type may be omitted\n\t\ttypes = ( types || \"\" ).match( rnotwhite ) || [ \"\" ];\n\t\tt = types.length;\n\t\twhile ( t-- ) {\n\t\t\ttmp = rtypenamespace.exec( types[t] ) || [];\n\t\t\ttype = origType = tmp[1];\n\t\t\tnamespaces = ( tmp[2] || \"\" ).split( \".\" ).sort();\n\n\t\t\t// Unbind all events (on this namespace, if provided) for the element\n\t\t\tif ( !type ) {\n\t\t\t\tfor ( type in events ) {\n\t\t\t\t\tjQuery.event.remove( elem, type + types[ t ], handler, selector, true );\n\t\t\t\t}\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\tspecial = jQuery.event.special[ type ] || {};\n\t\t\ttype = ( selector ? special.delegateType : special.bindType ) || type;\n\t\t\thandlers = events[ type ] || [];\n\t\t\ttmp = tmp[2] && new RegExp( \"(^|\\\\.)\" + namespaces.join(\"\\\\.(?:.*\\\\.|)\") + \"(\\\\.|$)\" );\n\n\t\t\t// Remove matching events\n\t\t\torigCount = j = handlers.length;\n\t\t\twhile ( j-- ) {\n\t\t\t\thandleObj = handlers[ j ];\n\n\t\t\t\tif ( ( mappedTypes || origType === handleObj.origType ) &&\n\t\t\t\t\t( !handler || handler.guid === handleObj.guid ) &&\n\t\t\t\t\t( !tmp || tmp.test( handleObj.namespace ) ) &&\n\t\t\t\t\t( !selector || selector === handleObj.selector || selector === \"**\" && handleObj.selector ) ) {\n\t\t\t\t\thandlers.splice( j, 1 );\n\n\t\t\t\t\tif ( handleObj.selector ) {\n\t\t\t\t\t\thandlers.delegateCount--;\n\t\t\t\t\t}\n\t\t\t\t\tif ( special.remove ) {\n\t\t\t\t\t\tspecial.remove.call( elem, handleObj );\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Remove generic event handler if we removed something and no more handlers exist\n\t\t\t// (avoids potential for endless recursion during removal of special event handlers)\n\t\t\tif ( origCount && !handlers.length ) {\n\t\t\t\tif ( !special.teardown || special.teardown.call( elem, namespaces, elemData.handle ) === false ) {\n\t\t\t\t\tjQuery.removeEvent( elem, type, elemData.handle );\n\t\t\t\t}\n\n\t\t\t\tdelete events[ type ];\n\t\t\t}\n\t\t}\n\n\t\t// Remove the expando if it's no longer used\n\t\tif ( jQuery.isEmptyObject( events ) ) {\n\t\t\tdelete elemData.handle;\n\t\t\tdata_priv.remove( elem, \"events\" );\n\t\t}\n\t},\n\n\ttrigger: function( event, data, elem, onlyHandlers ) {\n\n\t\tvar i, cur, tmp, bubbleType, ontype, handle, special,\n\t\t\teventPath = [ elem || document ],\n\t\t\ttype = hasOwn.call( event, \"type\" ) ? event.type : event,\n\t\t\tnamespaces = hasOwn.call( event, \"namespace\" ) ? event.namespace.split(\".\") : [];\n\n\t\tcur = tmp = elem = elem || document;\n\n\t\t// Don't do events on text and comment nodes\n\t\tif ( elem.nodeType === 3 || elem.nodeType === 8 ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// focus/blur morphs to focusin/out; ensure we're not firing them right now\n\t\tif ( rfocusMorph.test( type + jQuery.event.triggered ) ) {\n\t\t\treturn;\n\t\t}\n\n\t\tif ( type.indexOf(\".\") >= 0 ) {\n\t\t\t// Namespaced trigger; create a regexp to match event type in handle()\n\t\t\tnamespaces = type.split(\".\");\n\t\t\ttype = namespaces.shift();\n\t\t\tnamespaces.sort();\n\t\t}\n\t\tontype = type.indexOf(\":\") < 0 && \"on\" + type;\n\n\t\t// Caller can pass in a jQuery.Event object, Object, or just an event type string\n\t\tevent = event[ jQuery.expando ] ?\n\t\t\tevent :\n\t\t\tnew jQuery.Event( type, typeof event === \"object\" && event );\n\n\t\t// Trigger bitmask: & 1 for native handlers; & 2 for jQuery (always true)\n\t\tevent.isTrigger = onlyHandlers ? 2 : 3;\n\t\tevent.namespace = namespaces.join(\".\");\n\t\tevent.namespace_re = event.namespace ?\n\t\t\tnew RegExp( \"(^|\\\\.)\" + namespaces.join(\"\\\\.(?:.*\\\\.|)\") + \"(\\\\.|$)\" ) :\n\t\t\tnull;\n\n\t\t// Clean up the event in case it is being reused\n\t\tevent.result = undefined;\n\t\tif ( !event.target ) {\n\t\t\tevent.target = elem;\n\t\t}\n\n\t\t// Clone any incoming data and prepend the event, creating the handler arg list\n\t\tdata = data == null ?\n\t\t\t[ event ] :\n\t\t\tjQuery.makeArray( data, [ event ] );\n\n\t\t// Allow special events to draw outside the lines\n\t\tspecial = jQuery.event.special[ type ] || {};\n\t\tif ( !onlyHandlers && special.trigger && special.trigger.apply( elem, data ) === false ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Determine event propagation path in advance, per W3C events spec (#9951)\n\t\t// Bubble up to document, then to window; watch for a global ownerDocument var (#9724)\n\t\tif ( !onlyHandlers && !special.noBubble && !jQuery.isWindow( elem ) ) {\n\n\t\t\tbubbleType = special.delegateType || type;\n\t\t\tif ( !rfocusMorph.test( bubbleType + type ) ) {\n\t\t\t\tcur = cur.parentNode;\n\t\t\t}\n\t\t\tfor ( ; cur; cur = cur.parentNode ) {\n\t\t\t\teventPath.push( cur );\n\t\t\t\ttmp = cur;\n\t\t\t}\n\n\t\t\t// Only add window if we got to document (e.g., not plain obj or detached DOM)\n\t\t\tif ( tmp === (elem.ownerDocument || document) ) {\n\t\t\t\teventPath.push( tmp.defaultView || tmp.parentWindow || window );\n\t\t\t}\n\t\t}\n\n\t\t// Fire handlers on the event path\n\t\ti = 0;\n\t\twhile ( (cur = eventPath[i++]) && !event.isPropagationStopped() ) {\n\n\t\t\tevent.type = i > 1 ?\n\t\t\t\tbubbleType :\n\t\t\t\tspecial.bindType || type;\n\n\t\t\t// jQuery handler\n\t\t\thandle = ( data_priv.get( cur, \"events\" ) || {} )[ event.type ] && data_priv.get( cur, \"handle\" );\n\t\t\tif ( handle ) {\n\t\t\t\thandle.apply( cur, data );\n\t\t\t}\n\n\t\t\t// Native handler\n\t\t\thandle = ontype && cur[ ontype ];\n\t\t\tif ( handle && handle.apply && jQuery.acceptData( cur ) ) {\n\t\t\t\tevent.result = handle.apply( cur, data );\n\t\t\t\tif ( event.result === false ) {\n\t\t\t\t\tevent.preventDefault();\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tevent.type = type;\n\n\t\t// If nobody prevented the default action, do it now\n\t\tif ( !onlyHandlers && !event.isDefaultPrevented() ) {\n\n\t\t\tif ( (!special._default || special._default.apply( eventPath.pop(), data ) === false) &&\n\t\t\t\tjQuery.acceptData( elem ) ) {\n\n\t\t\t\t// Call a native DOM method on the target with the same name name as the event.\n\t\t\t\t// Don't do default actions on window, that's where global variables be (#6170)\n\t\t\t\tif ( ontype && jQuery.isFunction( elem[ type ] ) && !jQuery.isWindow( elem ) ) {\n\n\t\t\t\t\t// Don't re-trigger an onFOO event when we call its FOO() method\n\t\t\t\t\ttmp = elem[ ontype ];\n\n\t\t\t\t\tif ( tmp ) {\n\t\t\t\t\t\telem[ ontype ] = null;\n\t\t\t\t\t}\n\n\t\t\t\t\t// Prevent re-triggering of the same event, since we already bubbled it above\n\t\t\t\t\tjQuery.event.triggered = type;\n\t\t\t\t\telem[ type ]();\n\t\t\t\t\tjQuery.event.triggered = undefined;\n\n\t\t\t\t\tif ( tmp ) {\n\t\t\t\t\t\telem[ ontype ] = tmp;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn event.result;\n\t},\n\n\tdispatch: function( event ) {\n\n\t\t// Make a writable jQuery.Event from the native event object\n\t\tevent = jQuery.event.fix( event );\n\n\t\tvar i, j, ret, matched, handleObj,\n\t\t\thandlerQueue = [],\n\t\t\targs = slice.call( arguments ),\n\t\t\thandlers = ( data_priv.get( this, \"events\" ) || {} )[ event.type ] || [],\n\t\t\tspecial = jQuery.event.special[ event.type ] || {};\n\n\t\t// Use the fix-ed jQuery.Event rather than the (read-only) native event\n\t\targs[0] = event;\n\t\tevent.delegateTarget = this;\n\n\t\t// Call the preDispatch hook for the mapped type, and let it bail if desired\n\t\tif ( special.preDispatch && special.preDispatch.call( this, event ) === false ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Determine handlers\n\t\thandlerQueue = jQuery.event.handlers.call( this, event, handlers );\n\n\t\t// Run delegates first; they may want to stop propagation beneath us\n\t\ti = 0;\n\t\twhile ( (matched = handlerQueue[ i++ ]) && !event.isPropagationStopped() ) {\n\t\t\tevent.currentTarget = matched.elem;\n\n\t\t\tj = 0;\n\t\t\twhile ( (handleObj = matched.handlers[ j++ ]) && !event.isImmediatePropagationStopped() ) {\n\n\t\t\t\t// Triggered event must either 1) have no namespace, or 2) have namespace(s)\n\t\t\t\t// a subset or equal to those in the bound event (both can have no namespace).\n\t\t\t\tif ( !event.namespace_re || event.namespace_re.test( handleObj.namespace ) ) {\n\n\t\t\t\t\tevent.handleObj = handleObj;\n\t\t\t\t\tevent.data = handleObj.data;\n\n\t\t\t\t\tret = ( (jQuery.event.special[ handleObj.origType ] || {}).handle || handleObj.handler )\n\t\t\t\t\t\t\t.apply( matched.elem, args );\n\n\t\t\t\t\tif ( ret !== undefined ) {\n\t\t\t\t\t\tif ( (event.result = ret) === false ) {\n\t\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t\t\tevent.stopPropagation();\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t// Call the postDispatch hook for the mapped type\n\t\tif ( special.postDispatch ) {\n\t\t\tspecial.postDispatch.call( this, event );\n\t\t}\n\n\t\treturn event.result;\n\t},\n\n\thandlers: function( event, handlers ) {\n\t\tvar i, matches, sel, handleObj,\n\t\t\thandlerQueue = [],\n\t\t\tdelegateCount = handlers.delegateCount,\n\t\t\tcur = event.target;\n\n\t\t// Find delegate handlers\n\t\t// Black-hole SVG <use> instance trees (#13180)\n\t\t// Avoid non-left-click bubbling in Firefox (#3861)\n\t\tif ( delegateCount && cur.nodeType && (!event.button || event.type !== \"click\") ) {\n\n\t\t\tfor ( ; cur !== this; cur = cur.parentNode || this ) {\n\n\t\t\t\t// Don't process clicks on disabled elements (#6911, #8165, #11382, #11764)\n\t\t\t\tif ( cur.disabled !== true || event.type !== \"click\" ) {\n\t\t\t\t\tmatches = [];\n\t\t\t\t\tfor ( i = 0; i < delegateCount; i++ ) {\n\t\t\t\t\t\thandleObj = handlers[ i ];\n\n\t\t\t\t\t\t// Don't conflict with Object.prototype properties (#13203)\n\t\t\t\t\t\tsel = handleObj.selector + \" \";\n\n\t\t\t\t\t\tif ( matches[ sel ] === undefined ) {\n\t\t\t\t\t\t\tmatches[ sel ] = handleObj.needsContext ?\n\t\t\t\t\t\t\t\tjQuery( sel, this ).index( cur ) >= 0 :\n\t\t\t\t\t\t\t\tjQuery.find( sel, this, null, [ cur ] ).length;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif ( matches[ sel ] ) {\n\t\t\t\t\t\t\tmatches.push( handleObj );\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tif ( matches.length ) {\n\t\t\t\t\t\thandlerQueue.push({ elem: cur, handlers: matches });\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t// Add the remaining (directly-bound) handlers\n\t\tif ( delegateCount < handlers.length ) {\n\t\t\thandlerQueue.push({ elem: this, handlers: handlers.slice( delegateCount ) });\n\t\t}\n\n\t\treturn handlerQueue;\n\t},\n\n\t// Includes some event props shared by KeyEvent and MouseEvent\n\tprops: \"altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which\".split(\" \"),\n\n\tfixHooks: {},\n\n\tkeyHooks: {\n\t\tprops: \"char charCode key keyCode\".split(\" \"),\n\t\tfilter: function( event, original ) {\n\n\t\t\t// Add which for key events\n\t\t\tif ( event.which == null ) {\n\t\t\t\tevent.which = original.charCode != null ? original.charCode : original.keyCode;\n\t\t\t}\n\n\t\t\treturn event;\n\t\t}\n\t},\n\n\tmouseHooks: {\n\t\tprops: \"button buttons clientX clientY offsetX offsetY pageX pageY screenX screenY toElement\".split(\" \"),\n\t\tfilter: function( event, original ) {\n\t\t\tvar eventDoc, doc, body,\n\t\t\t\tbutton = original.button;\n\n\t\t\t// Calculate pageX/Y if missing and clientX/Y available\n\t\t\tif ( event.pageX == null && original.clientX != null ) {\n\t\t\t\teventDoc = event.target.ownerDocument || document;\n\t\t\t\tdoc = eventDoc.documentElement;\n\t\t\t\tbody = eventDoc.body;\n\n\t\t\t\tevent.pageX = original.clientX + ( doc && doc.scrollLeft || body && body.scrollLeft || 0 ) - ( doc && doc.clientLeft || body && body.clientLeft || 0 );\n\t\t\t\tevent.pageY = original.clientY + ( doc && doc.scrollTop  || body && body.scrollTop  || 0 ) - ( doc && doc.clientTop  || body && body.clientTop  || 0 );\n\t\t\t}\n\n\t\t\t// Add which for click: 1 === left; 2 === middle; 3 === right\n\t\t\t// Note: button is not normalized, so don't use it\n\t\t\tif ( !event.which && button !== undefined ) {\n\t\t\t\tevent.which = ( button & 1 ? 1 : ( button & 2 ? 3 : ( button & 4 ? 2 : 0 ) ) );\n\t\t\t}\n\n\t\t\treturn event;\n\t\t}\n\t},\n\n\tfix: function( event ) {\n\t\tif ( event[ jQuery.expando ] ) {\n\t\t\treturn event;\n\t\t}\n\n\t\t// Create a writable copy of the event object and normalize some properties\n\t\tvar i, prop, copy,\n\t\t\ttype = event.type,\n\t\t\toriginalEvent = event,\n\t\t\tfixHook = this.fixHooks[ type ];\n\n\t\tif ( !fixHook ) {\n\t\t\tthis.fixHooks[ type ] = fixHook =\n\t\t\t\trmouseEvent.test( type ) ? this.mouseHooks :\n\t\t\t\trkeyEvent.test( type ) ? this.keyHooks :\n\t\t\t\t{};\n\t\t}\n\t\tcopy = fixHook.props ? this.props.concat( fixHook.props ) : this.props;\n\n\t\tevent = new jQuery.Event( originalEvent );\n\n\t\ti = copy.length;\n\t\twhile ( i-- ) {\n\t\t\tprop = copy[ i ];\n\t\t\tevent[ prop ] = originalEvent[ prop ];\n\t\t}\n\n\t\t// Support: Cordova 2.5 (WebKit) (#13255)\n\t\t// All events should have a target; Cordova deviceready doesn't\n\t\tif ( !event.target ) {\n\t\t\tevent.target = document;\n\t\t}\n\n\t\t// Support: Safari 6.0+, Chrome<28\n\t\t// Target should not be a text node (#504, #13143)\n\t\tif ( event.target.nodeType === 3 ) {\n\t\t\tevent.target = event.target.parentNode;\n\t\t}\n\n\t\treturn fixHook.filter ? fixHook.filter( event, originalEvent ) : event;\n\t},\n\n\tspecial: {\n\t\tload: {\n\t\t\t// Prevent triggered image.load events from bubbling to window.load\n\t\t\tnoBubble: true\n\t\t},\n\t\tfocus: {\n\t\t\t// Fire native event if possible so blur/focus sequence is correct\n\t\t\ttrigger: function() {\n\t\t\t\tif ( this !== safeActiveElement() && this.focus ) {\n\t\t\t\t\tthis.focus();\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t},\n\t\t\tdelegateType: \"focusin\"\n\t\t},\n\t\tblur: {\n\t\t\ttrigger: function() {\n\t\t\t\tif ( this === safeActiveElement() && this.blur ) {\n\t\t\t\t\tthis.blur();\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t},\n\t\t\tdelegateType: \"focusout\"\n\t\t},\n\t\tclick: {\n\t\t\t// For checkbox, fire native event so checked state will be right\n\t\t\ttrigger: function() {\n\t\t\t\tif ( this.type === \"checkbox\" && this.click && jQuery.nodeName( this, \"input\" ) ) {\n\t\t\t\t\tthis.click();\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t},\n\n\t\t\t// For cross-browser consistency, don't fire native .click() on links\n\t\t\t_default: function( event ) {\n\t\t\t\treturn jQuery.nodeName( event.target, \"a\" );\n\t\t\t}\n\t\t},\n\n\t\tbeforeunload: {\n\t\t\tpostDispatch: function( event ) {\n\n\t\t\t\t// Support: Firefox 20+\n\t\t\t\t// Firefox doesn't alert if the returnValue field is not set.\n\t\t\t\tif ( event.result !== undefined && event.originalEvent ) {\n\t\t\t\t\tevent.originalEvent.returnValue = event.result;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t},\n\n\tsimulate: function( type, elem, event, bubble ) {\n\t\t// Piggyback on a donor event to simulate a different one.\n\t\t// Fake originalEvent to avoid donor's stopPropagation, but if the\n\t\t// simulated event prevents default then we do the same on the donor.\n\t\tvar e = jQuery.extend(\n\t\t\tnew jQuery.Event(),\n\t\t\tevent,\n\t\t\t{\n\t\t\t\ttype: type,\n\t\t\t\tisSimulated: true,\n\t\t\t\toriginalEvent: {}\n\t\t\t}\n\t\t);\n\t\tif ( bubble ) {\n\t\t\tjQuery.event.trigger( e, null, elem );\n\t\t} else {\n\t\t\tjQuery.event.dispatch.call( elem, e );\n\t\t}\n\t\tif ( e.isDefaultPrevented() ) {\n\t\t\tevent.preventDefault();\n\t\t}\n\t}\n};\n\njQuery.removeEvent = function( elem, type, handle ) {\n\tif ( elem.removeEventListener ) {\n\t\telem.removeEventListener( type, handle, false );\n\t}\n};\n\njQuery.Event = function( src, props ) {\n\t// Allow instantiation without the 'new' keyword\n\tif ( !(this instanceof jQuery.Event) ) {\n\t\treturn new jQuery.Event( src, props );\n\t}\n\n\t// Event object\n\tif ( src && src.type ) {\n\t\tthis.originalEvent = src;\n\t\tthis.type = src.type;\n\n\t\t// Events bubbling up the document may have been marked as prevented\n\t\t// by a handler lower down the tree; reflect the correct value.\n\t\tthis.isDefaultPrevented = src.defaultPrevented ||\n\t\t\t\tsrc.defaultPrevented === undefined &&\n\t\t\t\t// Support: Android<4.0\n\t\t\t\tsrc.returnValue === false ?\n\t\t\treturnTrue :\n\t\t\treturnFalse;\n\n\t// Event type\n\t} else {\n\t\tthis.type = src;\n\t}\n\n\t// Put explicitly provided properties onto the event object\n\tif ( props ) {\n\t\tjQuery.extend( this, props );\n\t}\n\n\t// Create a timestamp if incoming event doesn't have one\n\tthis.timeStamp = src && src.timeStamp || jQuery.now();\n\n\t// Mark it as fixed\n\tthis[ jQuery.expando ] = true;\n};\n\n// jQuery.Event is based on DOM3 Events as specified by the ECMAScript Language Binding\n// http://www.w3.org/TR/2003/WD-DOM-Level-3-Events-20030331/ecma-script-binding.html\njQuery.Event.prototype = {\n\tisDefaultPrevented: returnFalse,\n\tisPropagationStopped: returnFalse,\n\tisImmediatePropagationStopped: returnFalse,\n\n\tpreventDefault: function() {\n\t\tvar e = this.originalEvent;\n\n\t\tthis.isDefaultPrevented = returnTrue;\n\n\t\tif ( e && e.preventDefault ) {\n\t\t\te.preventDefault();\n\t\t}\n\t},\n\tstopPropagation: function() {\n\t\tvar e = this.originalEvent;\n\n\t\tthis.isPropagationStopped = returnTrue;\n\n\t\tif ( e && e.stopPropagation ) {\n\t\t\te.stopPropagation();\n\t\t}\n\t},\n\tstopImmediatePropagation: function() {\n\t\tvar e = this.originalEvent;\n\n\t\tthis.isImmediatePropagationStopped = returnTrue;\n\n\t\tif ( e && e.stopImmediatePropagation ) {\n\t\t\te.stopImmediatePropagation();\n\t\t}\n\n\t\tthis.stopPropagation();\n\t}\n};\n\n// Create mouseenter/leave events using mouseover/out and event-time checks\n// Support: Chrome 15+\njQuery.each({\n\tmouseenter: \"mouseover\",\n\tmouseleave: \"mouseout\",\n\tpointerenter: \"pointerover\",\n\tpointerleave: \"pointerout\"\n}, function( orig, fix ) {\n\tjQuery.event.special[ orig ] = {\n\t\tdelegateType: fix,\n\t\tbindType: fix,\n\n\t\thandle: function( event ) {\n\t\t\tvar ret,\n\t\t\t\ttarget = this,\n\t\t\t\trelated = event.relatedTarget,\n\t\t\t\thandleObj = event.handleObj;\n\n\t\t\t// For mousenter/leave call the handler if related is outside the target.\n\t\t\t// NB: No relatedTarget if the mouse left/entered the browser window\n\t\t\tif ( !related || (related !== target && !jQuery.contains( target, related )) ) {\n\t\t\t\tevent.type = handleObj.origType;\n\t\t\t\tret = handleObj.handler.apply( this, arguments );\n\t\t\t\tevent.type = fix;\n\t\t\t}\n\t\t\treturn ret;\n\t\t}\n\t};\n});\n\n// Support: Firefox, Chrome, Safari\n// Create \"bubbling\" focus and blur events\nif ( !support.focusinBubbles ) {\n\tjQuery.each({ focus: \"focusin\", blur: \"focusout\" }, function( orig, fix ) {\n\n\t\t// Attach a single capturing handler on the document while someone wants focusin/focusout\n\t\tvar handler = function( event ) {\n\t\t\t\tjQuery.event.simulate( fix, event.target, jQuery.event.fix( event ), true );\n\t\t\t};\n\n\t\tjQuery.event.special[ fix ] = {\n\t\t\tsetup: function() {\n\t\t\t\tvar doc = this.ownerDocument || this,\n\t\t\t\t\tattaches = data_priv.access( doc, fix );\n\n\t\t\t\tif ( !attaches ) {\n\t\t\t\t\tdoc.addEventListener( orig, handler, true );\n\t\t\t\t}\n\t\t\t\tdata_priv.access( doc, fix, ( attaches || 0 ) + 1 );\n\t\t\t},\n\t\t\tteardown: function() {\n\t\t\t\tvar doc = this.ownerDocument || this,\n\t\t\t\t\tattaches = data_priv.access( doc, fix ) - 1;\n\n\t\t\t\tif ( !attaches ) {\n\t\t\t\t\tdoc.removeEventListener( orig, handler, true );\n\t\t\t\t\tdata_priv.remove( doc, fix );\n\n\t\t\t\t} else {\n\t\t\t\t\tdata_priv.access( doc, fix, attaches );\n\t\t\t\t}\n\t\t\t}\n\t\t};\n\t});\n}\n\njQuery.fn.extend({\n\n\ton: function( types, selector, data, fn, /*INTERNAL*/ one ) {\n\t\tvar origFn, type;\n\n\t\t// Types can be a map of types/handlers\n\t\tif ( typeof types === \"object\" ) {\n\t\t\t// ( types-Object, selector, data )\n\t\t\tif ( typeof selector !== \"string\" ) {\n\t\t\t\t// ( types-Object, data )\n\t\t\t\tdata = data || selector;\n\t\t\t\tselector = undefined;\n\t\t\t}\n\t\t\tfor ( type in types ) {\n\t\t\t\tthis.on( type, selector, data, types[ type ], one );\n\t\t\t}\n\t\t\treturn this;\n\t\t}\n\n\t\tif ( data == null && fn == null ) {\n\t\t\t// ( types, fn )\n\t\t\tfn = selector;\n\t\t\tdata = selector = undefined;\n\t\t} else if ( fn == null ) {\n\t\t\tif ( typeof selector === \"string\" ) {\n\t\t\t\t// ( types, selector, fn )\n\t\t\t\tfn = data;\n\t\t\t\tdata = undefined;\n\t\t\t} else {\n\t\t\t\t// ( types, data, fn )\n\t\t\t\tfn = data;\n\t\t\t\tdata = selector;\n\t\t\t\tselector = undefined;\n\t\t\t}\n\t\t}\n\t\tif ( fn === false ) {\n\t\t\tfn = returnFalse;\n\t\t} else if ( !fn ) {\n\t\t\treturn this;\n\t\t}\n\n\t\tif ( one === 1 ) {\n\t\t\torigFn = fn;\n\t\t\tfn = function( event ) {\n\t\t\t\t// Can use an empty set, since event contains the info\n\t\t\t\tjQuery().off( event );\n\t\t\t\treturn origFn.apply( this, arguments );\n\t\t\t};\n\t\t\t// Use same guid so caller can remove using origFn\n\t\t\tfn.guid = origFn.guid || ( origFn.guid = jQuery.guid++ );\n\t\t}\n\t\treturn this.each( function() {\n\t\t\tjQuery.event.add( this, types, fn, data, selector );\n\t\t});\n\t},\n\tone: function( types, selector, data, fn ) {\n\t\treturn this.on( types, selector, data, fn, 1 );\n\t},\n\toff: function( types, selector, fn ) {\n\t\tvar handleObj, type;\n\t\tif ( types && types.preventDefault && types.handleObj ) {\n\t\t\t// ( event )  dispatched jQuery.Event\n\t\t\thandleObj = types.handleObj;\n\t\t\tjQuery( types.delegateTarget ).off(\n\t\t\t\thandleObj.namespace ? handleObj.origType + \".\" + handleObj.namespace : handleObj.origType,\n\t\t\t\thandleObj.selector,\n\t\t\t\thandleObj.handler\n\t\t\t);\n\t\t\treturn this;\n\t\t}\n\t\tif ( typeof types === \"object\" ) {\n\t\t\t// ( types-object [, selector] )\n\t\t\tfor ( type in types ) {\n\t\t\t\tthis.off( type, selector, types[ type ] );\n\t\t\t}\n\t\t\treturn this;\n\t\t}\n\t\tif ( selector === false || typeof selector === \"function\" ) {\n\t\t\t// ( types [, fn] )\n\t\t\tfn = selector;\n\t\t\tselector = undefined;\n\t\t}\n\t\tif ( fn === false ) {\n\t\t\tfn = returnFalse;\n\t\t}\n\t\treturn this.each(function() {\n\t\t\tjQuery.event.remove( this, types, fn, selector );\n\t\t});\n\t},\n\n\ttrigger: function( type, data ) {\n\t\treturn this.each(function() {\n\t\t\tjQuery.event.trigger( type, data, this );\n\t\t});\n\t},\n\ttriggerHandler: function( type, data ) {\n\t\tvar elem = this[0];\n\t\tif ( elem ) {\n\t\t\treturn jQuery.event.trigger( type, data, elem, true );\n\t\t}\n\t}\n});\n\n\nvar\n\trxhtmlTag = /<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\\w:]+)[^>]*)\\/>/gi,\n\trtagName = /<([\\w:]+)/,\n\trhtml = /<|&#?\\w+;/,\n\trnoInnerhtml = /<(?:script|style|link)/i,\n\t// checked=\"checked\" or checked\n\trchecked = /checked\\s*(?:[^=]|=\\s*.checked.)/i,\n\trscriptType = /^$|\\/(?:java|ecma)script/i,\n\trscriptTypeMasked = /^true\\/(.*)/,\n\trcleanScript = /^\\s*<!(?:\\[CDATA\\[|--)|(?:\\]\\]|--)>\\s*$/g,\n\n\t// We have to close these tags to support XHTML (#13200)\n\twrapMap = {\n\n\t\t// Support: IE9\n\t\toption: [ 1, \"<select multiple='multiple'>\", \"</select>\" ],\n\n\t\tthead: [ 1, \"<table>\", \"</table>\" ],\n\t\tcol: [ 2, \"<table><colgroup>\", \"</colgroup></table>\" ],\n\t\ttr: [ 2, \"<table><tbody>\", \"</tbody></table>\" ],\n\t\ttd: [ 3, \"<table><tbody><tr>\", \"</tr></tbody></table>\" ],\n\n\t\t_default: [ 0, \"\", \"\" ]\n\t};\n\n// Support: IE9\nwrapMap.optgroup = wrapMap.option;\n\nwrapMap.tbody = wrapMap.tfoot = wrapMap.colgroup = wrapMap.caption = wrapMap.thead;\nwrapMap.th = wrapMap.td;\n\n// Support: 1.x compatibility\n// Manipulating tables requires a tbody\nfunction manipulationTarget( elem, content ) {\n\treturn jQuery.nodeName( elem, \"table\" ) &&\n\t\tjQuery.nodeName( content.nodeType !== 11 ? content : content.firstChild, \"tr\" ) ?\n\n\t\telem.getElementsByTagName(\"tbody\")[0] ||\n\t\t\telem.appendChild( elem.ownerDocument.createElement(\"tbody\") ) :\n\t\telem;\n}\n\n// Replace/restore the type attribute of script elements for safe DOM manipulation\nfunction disableScript( elem ) {\n\telem.type = (elem.getAttribute(\"type\") !== null) + \"/\" + elem.type;\n\treturn elem;\n}\nfunction restoreScript( elem ) {\n\tvar match = rscriptTypeMasked.exec( elem.type );\n\n\tif ( match ) {\n\t\telem.type = match[ 1 ];\n\t} else {\n\t\telem.removeAttribute(\"type\");\n\t}\n\n\treturn elem;\n}\n\n// Mark scripts as having already been evaluated\nfunction setGlobalEval( elems, refElements ) {\n\tvar i = 0,\n\t\tl = elems.length;\n\n\tfor ( ; i < l; i++ ) {\n\t\tdata_priv.set(\n\t\t\telems[ i ], \"globalEval\", !refElements || data_priv.get( refElements[ i ], \"globalEval\" )\n\t\t);\n\t}\n}\n\nfunction cloneCopyEvent( src, dest ) {\n\tvar i, l, type, pdataOld, pdataCur, udataOld, udataCur, events;\n\n\tif ( dest.nodeType !== 1 ) {\n\t\treturn;\n\t}\n\n\t// 1. Copy private data: events, handlers, etc.\n\tif ( data_priv.hasData( src ) ) {\n\t\tpdataOld = data_priv.access( src );\n\t\tpdataCur = data_priv.set( dest, pdataOld );\n\t\tevents = pdataOld.events;\n\n\t\tif ( events ) {\n\t\t\tdelete pdataCur.handle;\n\t\t\tpdataCur.events = {};\n\n\t\t\tfor ( type in events ) {\n\t\t\t\tfor ( i = 0, l = events[ type ].length; i < l; i++ ) {\n\t\t\t\t\tjQuery.event.add( dest, type, events[ type ][ i ] );\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t// 2. Copy user data\n\tif ( data_user.hasData( src ) ) {\n\t\tudataOld = data_user.access( src );\n\t\tudataCur = jQuery.extend( {}, udataOld );\n\n\t\tdata_user.set( dest, udataCur );\n\t}\n}\n\nfunction getAll( context, tag ) {\n\tvar ret = context.getElementsByTagName ? context.getElementsByTagName( tag || \"*\" ) :\n\t\t\tcontext.querySelectorAll ? context.querySelectorAll( tag || \"*\" ) :\n\t\t\t[];\n\n\treturn tag === undefined || tag && jQuery.nodeName( context, tag ) ?\n\t\tjQuery.merge( [ context ], ret ) :\n\t\tret;\n}\n\n// Fix IE bugs, see support tests\nfunction fixInput( src, dest ) {\n\tvar nodeName = dest.nodeName.toLowerCase();\n\n\t// Fails to persist the checked state of a cloned checkbox or radio button.\n\tif ( nodeName === \"input\" && rcheckableType.test( src.type ) ) {\n\t\tdest.checked = src.checked;\n\n\t// Fails to return the selected option to the default selected state when cloning options\n\t} else if ( nodeName === \"input\" || nodeName === \"textarea\" ) {\n\t\tdest.defaultValue = src.defaultValue;\n\t}\n}\n\njQuery.extend({\n\tclone: function( elem, dataAndEvents, deepDataAndEvents ) {\n\t\tvar i, l, srcElements, destElements,\n\t\t\tclone = elem.cloneNode( true ),\n\t\t\tinPage = jQuery.contains( elem.ownerDocument, elem );\n\n\t\t// Fix IE cloning issues\n\t\tif ( !support.noCloneChecked && ( elem.nodeType === 1 || elem.nodeType === 11 ) &&\n\t\t\t\t!jQuery.isXMLDoc( elem ) ) {\n\n\t\t\t// We eschew Sizzle here for performance reasons: http://jsperf.com/getall-vs-sizzle/2\n\t\t\tdestElements = getAll( clone );\n\t\t\tsrcElements = getAll( elem );\n\n\t\t\tfor ( i = 0, l = srcElements.length; i < l; i++ ) {\n\t\t\t\tfixInput( srcElements[ i ], destElements[ i ] );\n\t\t\t}\n\t\t}\n\n\t\t// Copy the events from the original to the clone\n\t\tif ( dataAndEvents ) {\n\t\t\tif ( deepDataAndEvents ) {\n\t\t\t\tsrcElements = srcElements || getAll( elem );\n\t\t\t\tdestElements = destElements || getAll( clone );\n\n\t\t\t\tfor ( i = 0, l = srcElements.length; i < l; i++ ) {\n\t\t\t\t\tcloneCopyEvent( srcElements[ i ], destElements[ i ] );\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tcloneCopyEvent( elem, clone );\n\t\t\t}\n\t\t}\n\n\t\t// Preserve script evaluation history\n\t\tdestElements = getAll( clone, \"script\" );\n\t\tif ( destElements.length > 0 ) {\n\t\t\tsetGlobalEval( destElements, !inPage && getAll( elem, \"script\" ) );\n\t\t}\n\n\t\t// Return the cloned set\n\t\treturn clone;\n\t},\n\n\tbuildFragment: function( elems, context, scripts, selection ) {\n\t\tvar elem, tmp, tag, wrap, contains, j,\n\t\t\tfragment = context.createDocumentFragment(),\n\t\t\tnodes = [],\n\t\t\ti = 0,\n\t\t\tl = elems.length;\n\n\t\tfor ( ; i < l; i++ ) {\n\t\t\telem = elems[ i ];\n\n\t\t\tif ( elem || elem === 0 ) {\n\n\t\t\t\t// Add nodes directly\n\t\t\t\tif ( jQuery.type( elem ) === \"object\" ) {\n\t\t\t\t\t// Support: QtWebKit, PhantomJS\n\t\t\t\t\t// push.apply(_, arraylike) throws on ancient WebKit\n\t\t\t\t\tjQuery.merge( nodes, elem.nodeType ? [ elem ] : elem );\n\n\t\t\t\t// Convert non-html into a text node\n\t\t\t\t} else if ( !rhtml.test( elem ) ) {\n\t\t\t\t\tnodes.push( context.createTextNode( elem ) );\n\n\t\t\t\t// Convert html into DOM nodes\n\t\t\t\t} else {\n\t\t\t\t\ttmp = tmp || fragment.appendChild( context.createElement(\"div\") );\n\n\t\t\t\t\t// Deserialize a standard representation\n\t\t\t\t\ttag = ( rtagName.exec( elem ) || [ \"\", \"\" ] )[ 1 ].toLowerCase();\n\t\t\t\t\twrap = wrapMap[ tag ] || wrapMap._default;\n\t\t\t\t\ttmp.innerHTML = wrap[ 1 ] + elem.replace( rxhtmlTag, \"<$1></$2>\" ) + wrap[ 2 ];\n\n\t\t\t\t\t// Descend through wrappers to the right content\n\t\t\t\t\tj = wrap[ 0 ];\n\t\t\t\t\twhile ( j-- ) {\n\t\t\t\t\t\ttmp = tmp.lastChild;\n\t\t\t\t\t}\n\n\t\t\t\t\t// Support: QtWebKit, PhantomJS\n\t\t\t\t\t// push.apply(_, arraylike) throws on ancient WebKit\n\t\t\t\t\tjQuery.merge( nodes, tmp.childNodes );\n\n\t\t\t\t\t// Remember the top-level container\n\t\t\t\t\ttmp = fragment.firstChild;\n\n\t\t\t\t\t// Ensure the created nodes are orphaned (#12392)\n\t\t\t\t\ttmp.textContent = \"\";\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t// Remove wrapper from fragment\n\t\tfragment.textContent = \"\";\n\n\t\ti = 0;\n\t\twhile ( (elem = nodes[ i++ ]) ) {\n\n\t\t\t// #4087 - If origin and destination elements are the same, and this is\n\t\t\t// that element, do not do anything\n\t\t\tif ( selection && jQuery.inArray( elem, selection ) !== -1 ) {\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\tcontains = jQuery.contains( elem.ownerDocument, elem );\n\n\t\t\t// Append to fragment\n\t\t\ttmp = getAll( fragment.appendChild( elem ), \"script\" );\n\n\t\t\t// Preserve script evaluation history\n\t\t\tif ( contains ) {\n\t\t\t\tsetGlobalEval( tmp );\n\t\t\t}\n\n\t\t\t// Capture executables\n\t\t\tif ( scripts ) {\n\t\t\t\tj = 0;\n\t\t\t\twhile ( (elem = tmp[ j++ ]) ) {\n\t\t\t\t\tif ( rscriptType.test( elem.type || \"\" ) ) {\n\t\t\t\t\t\tscripts.push( elem );\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn fragment;\n\t},\n\n\tcleanData: function( elems ) {\n\t\tvar data, elem, type, key,\n\t\t\tspecial = jQuery.event.special,\n\t\t\ti = 0;\n\n\t\tfor ( ; (elem = elems[ i ]) !== undefined; i++ ) {\n\t\t\tif ( jQuery.acceptData( elem ) ) {\n\t\t\t\tkey = elem[ data_priv.expando ];\n\n\t\t\t\tif ( key && (data = data_priv.cache[ key ]) ) {\n\t\t\t\t\tif ( data.events ) {\n\t\t\t\t\t\tfor ( type in data.events ) {\n\t\t\t\t\t\t\tif ( special[ type ] ) {\n\t\t\t\t\t\t\t\tjQuery.event.remove( elem, type );\n\n\t\t\t\t\t\t\t// This is a shortcut to avoid jQuery.event.remove's overhead\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tjQuery.removeEvent( elem, type, data.handle );\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tif ( data_priv.cache[ key ] ) {\n\t\t\t\t\t\t// Discard any remaining `private` data\n\t\t\t\t\t\tdelete data_priv.cache[ key ];\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\t// Discard any remaining `user` data\n\t\t\tdelete data_user.cache[ elem[ data_user.expando ] ];\n\t\t}\n\t}\n});\n\njQuery.fn.extend({\n\ttext: function( value ) {\n\t\treturn access( this, function( value ) {\n\t\t\treturn value === undefined ?\n\t\t\t\tjQuery.text( this ) :\n\t\t\t\tthis.empty().each(function() {\n\t\t\t\t\tif ( this.nodeType === 1 || this.nodeType === 11 || this.nodeType === 9 ) {\n\t\t\t\t\t\tthis.textContent = value;\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t}, null, value, arguments.length );\n\t},\n\n\tappend: function() {\n\t\treturn this.domManip( arguments, function( elem ) {\n\t\t\tif ( this.nodeType === 1 || this.nodeType === 11 || this.nodeType === 9 ) {\n\t\t\t\tvar target = manipulationTarget( this, elem );\n\t\t\t\ttarget.appendChild( elem );\n\t\t\t}\n\t\t});\n\t},\n\n\tprepend: function() {\n\t\treturn this.domManip( arguments, function( elem ) {\n\t\t\tif ( this.nodeType === 1 || this.nodeType === 11 || this.nodeType === 9 ) {\n\t\t\t\tvar target = manipulationTarget( this, elem );\n\t\t\t\ttarget.insertBefore( elem, target.firstChild );\n\t\t\t}\n\t\t});\n\t},\n\n\tbefore: function() {\n\t\treturn this.domManip( arguments, function( elem ) {\n\t\t\tif ( this.parentNode ) {\n\t\t\t\tthis.parentNode.insertBefore( elem, this );\n\t\t\t}\n\t\t});\n\t},\n\n\tafter: function() {\n\t\treturn this.domManip( arguments, function( elem ) {\n\t\t\tif ( this.parentNode ) {\n\t\t\t\tthis.parentNode.insertBefore( elem, this.nextSibling );\n\t\t\t}\n\t\t});\n\t},\n\n\tremove: function( selector, keepData /* Internal Use Only */ ) {\n\t\tvar elem,\n\t\t\telems = selector ? jQuery.filter( selector, this ) : this,\n\t\t\ti = 0;\n\n\t\tfor ( ; (elem = elems[i]) != null; i++ ) {\n\t\t\tif ( !keepData && elem.nodeType === 1 ) {\n\t\t\t\tjQuery.cleanData( getAll( elem ) );\n\t\t\t}\n\n\t\t\tif ( elem.parentNode ) {\n\t\t\t\tif ( keepData && jQuery.contains( elem.ownerDocument, elem ) ) {\n\t\t\t\t\tsetGlobalEval( getAll( elem, \"script\" ) );\n\t\t\t\t}\n\t\t\t\telem.parentNode.removeChild( elem );\n\t\t\t}\n\t\t}\n\n\t\treturn this;\n\t},\n\n\tempty: function() {\n\t\tvar elem,\n\t\t\ti = 0;\n\n\t\tfor ( ; (elem = this[i]) != null; i++ ) {\n\t\t\tif ( elem.nodeType === 1 ) {\n\n\t\t\t\t// Prevent memory leaks\n\t\t\t\tjQuery.cleanData( getAll( elem, false ) );\n\n\t\t\t\t// Remove any remaining nodes\n\t\t\t\telem.textContent = \"\";\n\t\t\t}\n\t\t}\n\n\t\treturn this;\n\t},\n\n\tclone: function( dataAndEvents, deepDataAndEvents ) {\n\t\tdataAndEvents = dataAndEvents == null ? false : dataAndEvents;\n\t\tdeepDataAndEvents = deepDataAndEvents == null ? dataAndEvents : deepDataAndEvents;\n\n\t\treturn this.map(function() {\n\t\t\treturn jQuery.clone( this, dataAndEvents, deepDataAndEvents );\n\t\t});\n\t},\n\n\thtml: function( value ) {\n\t\treturn access( this, function( value ) {\n\t\t\tvar elem = this[ 0 ] || {},\n\t\t\t\ti = 0,\n\t\t\t\tl = this.length;\n\n\t\t\tif ( value === undefined && elem.nodeType === 1 ) {\n\t\t\t\treturn elem.innerHTML;\n\t\t\t}\n\n\t\t\t// See if we can take a shortcut and just use innerHTML\n\t\t\tif ( typeof value === \"string\" && !rnoInnerhtml.test( value ) &&\n\t\t\t\t!wrapMap[ ( rtagName.exec( value ) || [ \"\", \"\" ] )[ 1 ].toLowerCase() ] ) {\n\n\t\t\t\tvalue = value.replace( rxhtmlTag, \"<$1></$2>\" );\n\n\t\t\t\ttry {\n\t\t\t\t\tfor ( ; i < l; i++ ) {\n\t\t\t\t\t\telem = this[ i ] || {};\n\n\t\t\t\t\t\t// Remove element nodes and prevent memory leaks\n\t\t\t\t\t\tif ( elem.nodeType === 1 ) {\n\t\t\t\t\t\t\tjQuery.cleanData( getAll( elem, false ) );\n\t\t\t\t\t\t\telem.innerHTML = value;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\telem = 0;\n\n\t\t\t\t// If using innerHTML throws an exception, use the fallback method\n\t\t\t\t} catch( e ) {}\n\t\t\t}\n\n\t\t\tif ( elem ) {\n\t\t\t\tthis.empty().append( value );\n\t\t\t}\n\t\t}, null, value, arguments.length );\n\t},\n\n\treplaceWith: function() {\n\t\tvar arg = arguments[ 0 ];\n\n\t\t// Make the changes, replacing each context element with the new content\n\t\tthis.domManip( arguments, function( elem ) {\n\t\t\targ = this.parentNode;\n\n\t\t\tjQuery.cleanData( getAll( this ) );\n\n\t\t\tif ( arg ) {\n\t\t\t\targ.replaceChild( elem, this );\n\t\t\t}\n\t\t});\n\n\t\t// Force removal if there was no new content (e.g., from empty arguments)\n\t\treturn arg && (arg.length || arg.nodeType) ? this : this.remove();\n\t},\n\n\tdetach: function( selector ) {\n\t\treturn this.remove( selector, true );\n\t},\n\n\tdomManip: function( args, callback ) {\n\n\t\t// Flatten any nested arrays\n\t\targs = concat.apply( [], args );\n\n\t\tvar fragment, first, scripts, hasScripts, node, doc,\n\t\t\ti = 0,\n\t\t\tl = this.length,\n\t\t\tset = this,\n\t\t\tiNoClone = l - 1,\n\t\t\tvalue = args[ 0 ],\n\t\t\tisFunction = jQuery.isFunction( value );\n\n\t\t// We can't cloneNode fragments that contain checked, in WebKit\n\t\tif ( isFunction ||\n\t\t\t\t( l > 1 && typeof value === \"string\" &&\n\t\t\t\t\t!support.checkClone && rchecked.test( value ) ) ) {\n\t\t\treturn this.each(function( index ) {\n\t\t\t\tvar self = set.eq( index );\n\t\t\t\tif ( isFunction ) {\n\t\t\t\t\targs[ 0 ] = value.call( this, index, self.html() );\n\t\t\t\t}\n\t\t\t\tself.domManip( args, callback );\n\t\t\t});\n\t\t}\n\n\t\tif ( l ) {\n\t\t\tfragment = jQuery.buildFragment( args, this[ 0 ].ownerDocument, false, this );\n\t\t\tfirst = fragment.firstChild;\n\n\t\t\tif ( fragment.childNodes.length === 1 ) {\n\t\t\t\tfragment = first;\n\t\t\t}\n\n\t\t\tif ( first ) {\n\t\t\t\tscripts = jQuery.map( getAll( fragment, \"script\" ), disableScript );\n\t\t\t\thasScripts = scripts.length;\n\n\t\t\t\t// Use the original fragment for the last item instead of the first because it can end up\n\t\t\t\t// being emptied incorrectly in certain situations (#8070).\n\t\t\t\tfor ( ; i < l; i++ ) {\n\t\t\t\t\tnode = fragment;\n\n\t\t\t\t\tif ( i !== iNoClone ) {\n\t\t\t\t\t\tnode = jQuery.clone( node, true, true );\n\n\t\t\t\t\t\t// Keep references to cloned scripts for later restoration\n\t\t\t\t\t\tif ( hasScripts ) {\n\t\t\t\t\t\t\t// Support: QtWebKit\n\t\t\t\t\t\t\t// jQuery.merge because push.apply(_, arraylike) throws\n\t\t\t\t\t\t\tjQuery.merge( scripts, getAll( node, \"script\" ) );\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\tcallback.call( this[ i ], node, i );\n\t\t\t\t}\n\n\t\t\t\tif ( hasScripts ) {\n\t\t\t\t\tdoc = scripts[ scripts.length - 1 ].ownerDocument;\n\n\t\t\t\t\t// Reenable scripts\n\t\t\t\t\tjQuery.map( scripts, restoreScript );\n\n\t\t\t\t\t// Evaluate executable scripts on first document insertion\n\t\t\t\t\tfor ( i = 0; i < hasScripts; i++ ) {\n\t\t\t\t\t\tnode = scripts[ i ];\n\t\t\t\t\t\tif ( rscriptType.test( node.type || \"\" ) &&\n\t\t\t\t\t\t\t!data_priv.access( node, \"globalEval\" ) && jQuery.contains( doc, node ) ) {\n\n\t\t\t\t\t\t\tif ( node.src ) {\n\t\t\t\t\t\t\t\t// Optional AJAX dependency, but won't run scripts if not present\n\t\t\t\t\t\t\t\tif ( jQuery._evalUrl ) {\n\t\t\t\t\t\t\t\t\tjQuery._evalUrl( node.src );\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tjQuery.globalEval( node.textContent.replace( rcleanScript, \"\" ) );\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn this;\n\t}\n});\n\njQuery.each({\n\tappendTo: \"append\",\n\tprependTo: \"prepend\",\n\tinsertBefore: \"before\",\n\tinsertAfter: \"after\",\n\treplaceAll: \"replaceWith\"\n}, function( name, original ) {\n\tjQuery.fn[ name ] = function( selector ) {\n\t\tvar elems,\n\t\t\tret = [],\n\t\t\tinsert = jQuery( selector ),\n\t\t\tlast = insert.length - 1,\n\t\t\ti = 0;\n\n\t\tfor ( ; i <= last; i++ ) {\n\t\t\telems = i === last ? this : this.clone( true );\n\t\t\tjQuery( insert[ i ] )[ original ]( elems );\n\n\t\t\t// Support: QtWebKit\n\t\t\t// .get() because push.apply(_, arraylike) throws\n\t\t\tpush.apply( ret, elems.get() );\n\t\t}\n\n\t\treturn this.pushStack( ret );\n\t};\n});\n\n\nvar iframe,\n\telemdisplay = {};\n\n/**\n * Retrieve the actual display of a element\n * @param {String} name nodeName of the element\n * @param {Object} doc Document object\n */\n// Called only from within defaultDisplay\nfunction actualDisplay( name, doc ) {\n\tvar style,\n\t\telem = jQuery( doc.createElement( name ) ).appendTo( doc.body ),\n\n\t\t// getDefaultComputedStyle might be reliably used only on attached element\n\t\tdisplay = window.getDefaultComputedStyle && ( style = window.getDefaultComputedStyle( elem[ 0 ] ) ) ?\n\n\t\t\t// Use of this method is a temporary fix (more like optimization) until something better comes along,\n\t\t\t// since it was removed from specification and supported only in FF\n\t\t\tstyle.display : jQuery.css( elem[ 0 ], \"display\" );\n\n\t// We don't have any data stored on the element,\n\t// so use \"detach\" method as fast way to get rid of the element\n\telem.detach();\n\n\treturn display;\n}\n\n/**\n * Try to determine the default display value of an element\n * @param {String} nodeName\n */\nfunction defaultDisplay( nodeName ) {\n\tvar doc = document,\n\t\tdisplay = elemdisplay[ nodeName ];\n\n\tif ( !display ) {\n\t\tdisplay = actualDisplay( nodeName, doc );\n\n\t\t// If the simple way fails, read from inside an iframe\n\t\tif ( display === \"none\" || !display ) {\n\n\t\t\t// Use the already-created iframe if possible\n\t\t\tiframe = (iframe || jQuery( \"<iframe frameborder='0' width='0' height='0'/>\" )).appendTo( doc.documentElement );\n\n\t\t\t// Always write a new HTML skeleton so Webkit and Firefox don't choke on reuse\n\t\t\tdoc = iframe[ 0 ].contentDocument;\n\n\t\t\t// Support: IE\n\t\t\tdoc.write();\n\t\t\tdoc.close();\n\n\t\t\tdisplay = actualDisplay( nodeName, doc );\n\t\t\tiframe.detach();\n\t\t}\n\n\t\t// Store the correct default display\n\t\telemdisplay[ nodeName ] = display;\n\t}\n\n\treturn display;\n}\nvar rmargin = (/^margin/);\n\nvar rnumnonpx = new RegExp( \"^(\" + pnum + \")(?!px)[a-z%]+$\", \"i\" );\n\nvar getStyles = function( elem ) {\n\t\t// Support: IE<=11+, Firefox<=30+ (#15098, #14150)\n\t\t// IE throws on elements created in popups\n\t\t// FF meanwhile throws on frame elements through \"defaultView.getComputedStyle\"\n\t\tif ( elem.ownerDocument.defaultView.opener ) {\n\t\t\treturn elem.ownerDocument.defaultView.getComputedStyle( elem, null );\n\t\t}\n\n\t\treturn window.getComputedStyle( elem, null );\n\t};\n\n\n\nfunction curCSS( elem, name, computed ) {\n\tvar width, minWidth, maxWidth, ret,\n\t\tstyle = elem.style;\n\n\tcomputed = computed || getStyles( elem );\n\n\t// Support: IE9\n\t// getPropertyValue is only needed for .css('filter') (#12537)\n\tif ( computed ) {\n\t\tret = computed.getPropertyValue( name ) || computed[ name ];\n\t}\n\n\tif ( computed ) {\n\n\t\tif ( ret === \"\" && !jQuery.contains( elem.ownerDocument, elem ) ) {\n\t\t\tret = jQuery.style( elem, name );\n\t\t}\n\n\t\t// Support: iOS < 6\n\t\t// A tribute to the \"awesome hack by Dean Edwards\"\n\t\t// iOS < 6 (at least) returns percentage for a larger set of values, but width seems to be reliably pixels\n\t\t// this is against the CSSOM draft spec: http://dev.w3.org/csswg/cssom/#resolved-values\n\t\tif ( rnumnonpx.test( ret ) && rmargin.test( name ) ) {\n\n\t\t\t// Remember the original values\n\t\t\twidth = style.width;\n\t\t\tminWidth = style.minWidth;\n\t\t\tmaxWidth = style.maxWidth;\n\n\t\t\t// Put in the new values to get a computed value out\n\t\t\tstyle.minWidth = style.maxWidth = style.width = ret;\n\t\t\tret = computed.width;\n\n\t\t\t// Revert the changed values\n\t\t\tstyle.width = width;\n\t\t\tstyle.minWidth = minWidth;\n\t\t\tstyle.maxWidth = maxWidth;\n\t\t}\n\t}\n\n\treturn ret !== undefined ?\n\t\t// Support: IE\n\t\t// IE returns zIndex value as an integer.\n\t\tret + \"\" :\n\t\tret;\n}\n\n\nfunction addGetHookIf( conditionFn, hookFn ) {\n\t// Define the hook, we'll check on the first run if it's really needed.\n\treturn {\n\t\tget: function() {\n\t\t\tif ( conditionFn() ) {\n\t\t\t\t// Hook not needed (or it's not possible to use it due\n\t\t\t\t// to missing dependency), remove it.\n\t\t\t\tdelete this.get;\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// Hook needed; redefine it so that the support test is not executed again.\n\t\t\treturn (this.get = hookFn).apply( this, arguments );\n\t\t}\n\t};\n}\n\n\n(function() {\n\tvar pixelPositionVal, boxSizingReliableVal,\n\t\tdocElem = document.documentElement,\n\t\tcontainer = document.createElement( \"div\" ),\n\t\tdiv = document.createElement( \"div\" );\n\n\tif ( !div.style ) {\n\t\treturn;\n\t}\n\n\t// Support: IE9-11+\n\t// Style of cloned element affects source element cloned (#8908)\n\tdiv.style.backgroundClip = \"content-box\";\n\tdiv.cloneNode( true ).style.backgroundClip = \"\";\n\tsupport.clearCloneStyle = div.style.backgroundClip === \"content-box\";\n\n\tcontainer.style.cssText = \"border:0;width:0;height:0;top:0;left:-9999px;margin-top:1px;\" +\n\t\t\"position:absolute\";\n\tcontainer.appendChild( div );\n\n\t// Executing both pixelPosition & boxSizingReliable tests require only one layout\n\t// so they're executed at the same time to save the second computation.\n\tfunction computePixelPositionAndBoxSizingReliable() {\n\t\tdiv.style.cssText =\n\t\t\t// Support: Firefox<29, Android 2.3\n\t\t\t// Vendor-prefix box-sizing\n\t\t\t\"-webkit-box-sizing:border-box;-moz-box-sizing:border-box;\" +\n\t\t\t\"box-sizing:border-box;display:block;margin-top:1%;top:1%;\" +\n\t\t\t\"border:1px;padding:1px;width:4px;position:absolute\";\n\t\tdiv.innerHTML = \"\";\n\t\tdocElem.appendChild( container );\n\n\t\tvar divStyle = window.getComputedStyle( div, null );\n\t\tpixelPositionVal = divStyle.top !== \"1%\";\n\t\tboxSizingReliableVal = divStyle.width === \"4px\";\n\n\t\tdocElem.removeChild( container );\n\t}\n\n\t// Support: node.js jsdom\n\t// Don't assume that getComputedStyle is a property of the global object\n\tif ( window.getComputedStyle ) {\n\t\tjQuery.extend( support, {\n\t\t\tpixelPosition: function() {\n\n\t\t\t\t// This test is executed only once but we still do memoizing\n\t\t\t\t// since we can use the boxSizingReliable pre-computing.\n\t\t\t\t// No need to check if the test was already performed, though.\n\t\t\t\tcomputePixelPositionAndBoxSizingReliable();\n\t\t\t\treturn pixelPositionVal;\n\t\t\t},\n\t\t\tboxSizingReliable: function() {\n\t\t\t\tif ( boxSizingReliableVal == null ) {\n\t\t\t\t\tcomputePixelPositionAndBoxSizingReliable();\n\t\t\t\t}\n\t\t\t\treturn boxSizingReliableVal;\n\t\t\t},\n\t\t\treliableMarginRight: function() {\n\n\t\t\t\t// Support: Android 2.3\n\t\t\t\t// Check if div with explicit width and no margin-right incorrectly\n\t\t\t\t// gets computed margin-right based on width of container. (#3333)\n\t\t\t\t// WebKit Bug 13343 - getComputedStyle returns wrong value for margin-right\n\t\t\t\t// This support function is only executed once so no memoizing is needed.\n\t\t\t\tvar ret,\n\t\t\t\t\tmarginDiv = div.appendChild( document.createElement( \"div\" ) );\n\n\t\t\t\t// Reset CSS: box-sizing; display; margin; border; padding\n\t\t\t\tmarginDiv.style.cssText = div.style.cssText =\n\t\t\t\t\t// Support: Firefox<29, Android 2.3\n\t\t\t\t\t// Vendor-prefix box-sizing\n\t\t\t\t\t\"-webkit-box-sizing:content-box;-moz-box-sizing:content-box;\" +\n\t\t\t\t\t\"box-sizing:content-box;display:block;margin:0;border:0;padding:0\";\n\t\t\t\tmarginDiv.style.marginRight = marginDiv.style.width = \"0\";\n\t\t\t\tdiv.style.width = \"1px\";\n\t\t\t\tdocElem.appendChild( container );\n\n\t\t\t\tret = !parseFloat( window.getComputedStyle( marginDiv, null ).marginRight );\n\n\t\t\t\tdocElem.removeChild( container );\n\t\t\t\tdiv.removeChild( marginDiv );\n\n\t\t\t\treturn ret;\n\t\t\t}\n\t\t});\n\t}\n})();\n\n\n// A method for quickly swapping in/out CSS properties to get correct calculations.\njQuery.swap = function( elem, options, callback, args ) {\n\tvar ret, name,\n\t\told = {};\n\n\t// Remember the old values, and insert the new ones\n\tfor ( name in options ) {\n\t\told[ name ] = elem.style[ name ];\n\t\telem.style[ name ] = options[ name ];\n\t}\n\n\tret = callback.apply( elem, args || [] );\n\n\t// Revert the old values\n\tfor ( name in options ) {\n\t\telem.style[ name ] = old[ name ];\n\t}\n\n\treturn ret;\n};\n\n\nvar\n\t// Swappable if display is none or starts with table except \"table\", \"table-cell\", or \"table-caption\"\n\t// See here for display values: https://developer.mozilla.org/en-US/docs/CSS/display\n\trdisplayswap = /^(none|table(?!-c[ea]).+)/,\n\trnumsplit = new RegExp( \"^(\" + pnum + \")(.*)$\", \"i\" ),\n\trrelNum = new RegExp( \"^([+-])=(\" + pnum + \")\", \"i\" ),\n\n\tcssShow = { position: \"absolute\", visibility: \"hidden\", display: \"block\" },\n\tcssNormalTransform = {\n\t\tletterSpacing: \"0\",\n\t\tfontWeight: \"400\"\n\t},\n\n\tcssPrefixes = [ \"Webkit\", \"O\", \"Moz\", \"ms\" ];\n\n// Return a css property mapped to a potentially vendor prefixed property\nfunction vendorPropName( style, name ) {\n\n\t// Shortcut for names that are not vendor prefixed\n\tif ( name in style ) {\n\t\treturn name;\n\t}\n\n\t// Check for vendor prefixed names\n\tvar capName = name[0].toUpperCase() + name.slice(1),\n\t\torigName = name,\n\t\ti = cssPrefixes.length;\n\n\twhile ( i-- ) {\n\t\tname = cssPrefixes[ i ] + capName;\n\t\tif ( name in style ) {\n\t\t\treturn name;\n\t\t}\n\t}\n\n\treturn origName;\n}\n\nfunction setPositiveNumber( elem, value, subtract ) {\n\tvar matches = rnumsplit.exec( value );\n\treturn matches ?\n\t\t// Guard against undefined \"subtract\", e.g., when used as in cssHooks\n\t\tMath.max( 0, matches[ 1 ] - ( subtract || 0 ) ) + ( matches[ 2 ] || \"px\" ) :\n\t\tvalue;\n}\n\nfunction augmentWidthOrHeight( elem, name, extra, isBorderBox, styles ) {\n\tvar i = extra === ( isBorderBox ? \"border\" : \"content\" ) ?\n\t\t// If we already have the right measurement, avoid augmentation\n\t\t4 :\n\t\t// Otherwise initialize for horizontal or vertical properties\n\t\tname === \"width\" ? 1 : 0,\n\n\t\tval = 0;\n\n\tfor ( ; i < 4; i += 2 ) {\n\t\t// Both box models exclude margin, so add it if we want it\n\t\tif ( extra === \"margin\" ) {\n\t\t\tval += jQuery.css( elem, extra + cssExpand[ i ], true, styles );\n\t\t}\n\n\t\tif ( isBorderBox ) {\n\t\t\t// border-box includes padding, so remove it if we want content\n\t\t\tif ( extra === \"content\" ) {\n\t\t\t\tval -= jQuery.css( elem, \"padding\" + cssExpand[ i ], true, styles );\n\t\t\t}\n\n\t\t\t// At this point, extra isn't border nor margin, so remove border\n\t\t\tif ( extra !== \"margin\" ) {\n\t\t\t\tval -= jQuery.css( elem, \"border\" + cssExpand[ i ] + \"Width\", true, styles );\n\t\t\t}\n\t\t} else {\n\t\t\t// At this point, extra isn't content, so add padding\n\t\t\tval += jQuery.css( elem, \"padding\" + cssExpand[ i ], true, styles );\n\n\t\t\t// At this point, extra isn't content nor padding, so add border\n\t\t\tif ( extra !== \"padding\" ) {\n\t\t\t\tval += jQuery.css( elem, \"border\" + cssExpand[ i ] + \"Width\", true, styles );\n\t\t\t}\n\t\t}\n\t}\n\n\treturn val;\n}\n\nfunction getWidthOrHeight( elem, name, extra ) {\n\n\t// Start with offset property, which is equivalent to the border-box value\n\tvar valueIsBorderBox = true,\n\t\tval = name === \"width\" ? elem.offsetWidth : elem.offsetHeight,\n\t\tstyles = getStyles( elem ),\n\t\tisBorderBox = jQuery.css( elem, \"boxSizing\", false, styles ) === \"border-box\";\n\n\t// Some non-html elements return undefined for offsetWidth, so check for null/undefined\n\t// svg - https://bugzilla.mozilla.org/show_bug.cgi?id=649285\n\t// MathML - https://bugzilla.mozilla.org/show_bug.cgi?id=491668\n\tif ( val <= 0 || val == null ) {\n\t\t// Fall back to computed then uncomputed css if necessary\n\t\tval = curCSS( elem, name, styles );\n\t\tif ( val < 0 || val == null ) {\n\t\t\tval = elem.style[ name ];\n\t\t}\n\n\t\t// Computed unit is not pixels. Stop here and return.\n\t\tif ( rnumnonpx.test(val) ) {\n\t\t\treturn val;\n\t\t}\n\n\t\t// Check for style in case a browser which returns unreliable values\n\t\t// for getComputedStyle silently falls back to the reliable elem.style\n\t\tvalueIsBorderBox = isBorderBox &&\n\t\t\t( support.boxSizingReliable() || val === elem.style[ name ] );\n\n\t\t// Normalize \"\", auto, and prepare for extra\n\t\tval = parseFloat( val ) || 0;\n\t}\n\n\t// Use the active box-sizing model to add/subtract irrelevant styles\n\treturn ( val +\n\t\taugmentWidthOrHeight(\n\t\t\telem,\n\t\t\tname,\n\t\t\textra || ( isBorderBox ? \"border\" : \"content\" ),\n\t\t\tvalueIsBorderBox,\n\t\t\tstyles\n\t\t)\n\t) + \"px\";\n}\n\nfunction showHide( elements, show ) {\n\tvar display, elem, hidden,\n\t\tvalues = [],\n\t\tindex = 0,\n\t\tlength = elements.length;\n\n\tfor ( ; index < length; index++ ) {\n\t\telem = elements[ index ];\n\t\tif ( !elem.style ) {\n\t\t\tcontinue;\n\t\t}\n\n\t\tvalues[ index ] = data_priv.get( elem, \"olddisplay\" );\n\t\tdisplay = elem.style.display;\n\t\tif ( show ) {\n\t\t\t// Reset the inline display of this element to learn if it is\n\t\t\t// being hidden by cascaded rules or not\n\t\t\tif ( !values[ index ] && display === \"none\" ) {\n\t\t\t\telem.style.display = \"\";\n\t\t\t}\n\n\t\t\t// Set elements which have been overridden with display: none\n\t\t\t// in a stylesheet to whatever the default browser style is\n\t\t\t// for such an element\n\t\t\tif ( elem.style.display === \"\" && isHidden( elem ) ) {\n\t\t\t\tvalues[ index ] = data_priv.access( elem, \"olddisplay\", defaultDisplay(elem.nodeName) );\n\t\t\t}\n\t\t} else {\n\t\t\thidden = isHidden( elem );\n\n\t\t\tif ( display !== \"none\" || !hidden ) {\n\t\t\t\tdata_priv.set( elem, \"olddisplay\", hidden ? display : jQuery.css( elem, \"display\" ) );\n\t\t\t}\n\t\t}\n\t}\n\n\t// Set the display of most of the elements in a second loop\n\t// to avoid the constant reflow\n\tfor ( index = 0; index < length; index++ ) {\n\t\telem = elements[ index ];\n\t\tif ( !elem.style ) {\n\t\t\tcontinue;\n\t\t}\n\t\tif ( !show || elem.style.display === \"none\" || elem.style.display === \"\" ) {\n\t\t\telem.style.display = show ? values[ index ] || \"\" : \"none\";\n\t\t}\n\t}\n\n\treturn elements;\n}\n\njQuery.extend({\n\n\t// Add in style property hooks for overriding the default\n\t// behavior of getting and setting a style property\n\tcssHooks: {\n\t\topacity: {\n\t\t\tget: function( elem, computed ) {\n\t\t\t\tif ( computed ) {\n\n\t\t\t\t\t// We should always get a number back from opacity\n\t\t\t\t\tvar ret = curCSS( elem, \"opacity\" );\n\t\t\t\t\treturn ret === \"\" ? \"1\" : ret;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t},\n\n\t// Don't automatically add \"px\" to these possibly-unitless properties\n\tcssNumber: {\n\t\t\"columnCount\": true,\n\t\t\"fillOpacity\": true,\n\t\t\"flexGrow\": true,\n\t\t\"flexShrink\": true,\n\t\t\"fontWeight\": true,\n\t\t\"lineHeight\": true,\n\t\t\"opacity\": true,\n\t\t\"order\": true,\n\t\t\"orphans\": true,\n\t\t\"widows\": true,\n\t\t\"zIndex\": true,\n\t\t\"zoom\": true\n\t},\n\n\t// Add in properties whose names you wish to fix before\n\t// setting or getting the value\n\tcssProps: {\n\t\t\"float\": \"cssFloat\"\n\t},\n\n\t// Get and set the style property on a DOM Node\n\tstyle: function( elem, name, value, extra ) {\n\n\t\t// Don't set styles on text and comment nodes\n\t\tif ( !elem || elem.nodeType === 3 || elem.nodeType === 8 || !elem.style ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Make sure that we're working with the right name\n\t\tvar ret, type, hooks,\n\t\t\torigName = jQuery.camelCase( name ),\n\t\t\tstyle = elem.style;\n\n\t\tname = jQuery.cssProps[ origName ] || ( jQuery.cssProps[ origName ] = vendorPropName( style, origName ) );\n\n\t\t// Gets hook for the prefixed version, then unprefixed version\n\t\thooks = jQuery.cssHooks[ name ] || jQuery.cssHooks[ origName ];\n\n\t\t// Check if we're setting a value\n\t\tif ( value !== undefined ) {\n\t\t\ttype = typeof value;\n\n\t\t\t// Convert \"+=\" or \"-=\" to relative numbers (#7345)\n\t\t\tif ( type === \"string\" && (ret = rrelNum.exec( value )) ) {\n\t\t\t\tvalue = ( ret[1] + 1 ) * ret[2] + parseFloat( jQuery.css( elem, name ) );\n\t\t\t\t// Fixes bug #9237\n\t\t\t\ttype = \"number\";\n\t\t\t}\n\n\t\t\t// Make sure that null and NaN values aren't set (#7116)\n\t\t\tif ( value == null || value !== value ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// If a number, add 'px' to the (except for certain CSS properties)\n\t\t\tif ( type === \"number\" && !jQuery.cssNumber[ origName ] ) {\n\t\t\t\tvalue += \"px\";\n\t\t\t}\n\n\t\t\t// Support: IE9-11+\n\t\t\t// background-* props affect original clone's values\n\t\t\tif ( !support.clearCloneStyle && value === \"\" && name.indexOf( \"background\" ) === 0 ) {\n\t\t\t\tstyle[ name ] = \"inherit\";\n\t\t\t}\n\n\t\t\t// If a hook was provided, use that value, otherwise just set the specified value\n\t\t\tif ( !hooks || !(\"set\" in hooks) || (value = hooks.set( elem, value, extra )) !== undefined ) {\n\t\t\t\tstyle[ name ] = value;\n\t\t\t}\n\n\t\t} else {\n\t\t\t// If a hook was provided get the non-computed value from there\n\t\t\tif ( hooks && \"get\" in hooks && (ret = hooks.get( elem, false, extra )) !== undefined ) {\n\t\t\t\treturn ret;\n\t\t\t}\n\n\t\t\t// Otherwise just get the value from the style object\n\t\t\treturn style[ name ];\n\t\t}\n\t},\n\n\tcss: function( elem, name, extra, styles ) {\n\t\tvar val, num, hooks,\n\t\t\torigName = jQuery.camelCase( name );\n\n\t\t// Make sure that we're working with the right name\n\t\tname = jQuery.cssProps[ origName ] || ( jQuery.cssProps[ origName ] = vendorPropName( elem.style, origName ) );\n\n\t\t// Try prefixed name followed by the unprefixed name\n\t\thooks = jQuery.cssHooks[ name ] || jQuery.cssHooks[ origName ];\n\n\t\t// If a hook was provided get the computed value from there\n\t\tif ( hooks && \"get\" in hooks ) {\n\t\t\tval = hooks.get( elem, true, extra );\n\t\t}\n\n\t\t// Otherwise, if a way to get the computed value exists, use that\n\t\tif ( val === undefined ) {\n\t\t\tval = curCSS( elem, name, styles );\n\t\t}\n\n\t\t// Convert \"normal\" to computed value\n\t\tif ( val === \"normal\" && name in cssNormalTransform ) {\n\t\t\tval = cssNormalTransform[ name ];\n\t\t}\n\n\t\t// Make numeric if forced or a qualifier was provided and val looks numeric\n\t\tif ( extra === \"\" || extra ) {\n\t\t\tnum = parseFloat( val );\n\t\t\treturn extra === true || jQuery.isNumeric( num ) ? num || 0 : val;\n\t\t}\n\t\treturn val;\n\t}\n});\n\njQuery.each([ \"height\", \"width\" ], function( i, name ) {\n\tjQuery.cssHooks[ name ] = {\n\t\tget: function( elem, computed, extra ) {\n\t\t\tif ( computed ) {\n\n\t\t\t\t// Certain elements can have dimension info if we invisibly show them\n\t\t\t\t// but it must have a current display style that would benefit\n\t\t\t\treturn rdisplayswap.test( jQuery.css( elem, \"display\" ) ) && elem.offsetWidth === 0 ?\n\t\t\t\t\tjQuery.swap( elem, cssShow, function() {\n\t\t\t\t\t\treturn getWidthOrHeight( elem, name, extra );\n\t\t\t\t\t}) :\n\t\t\t\t\tgetWidthOrHeight( elem, name, extra );\n\t\t\t}\n\t\t},\n\n\t\tset: function( elem, value, extra ) {\n\t\t\tvar styles = extra && getStyles( elem );\n\t\t\treturn setPositiveNumber( elem, value, extra ?\n\t\t\t\taugmentWidthOrHeight(\n\t\t\t\t\telem,\n\t\t\t\t\tname,\n\t\t\t\t\textra,\n\t\t\t\t\tjQuery.css( elem, \"boxSizing\", false, styles ) === \"border-box\",\n\t\t\t\t\tstyles\n\t\t\t\t) : 0\n\t\t\t);\n\t\t}\n\t};\n});\n\n// Support: Android 2.3\njQuery.cssHooks.marginRight = addGetHookIf( support.reliableMarginRight,\n\tfunction( elem, computed ) {\n\t\tif ( computed ) {\n\t\t\treturn jQuery.swap( elem, { \"display\": \"inline-block\" },\n\t\t\t\tcurCSS, [ elem, \"marginRight\" ] );\n\t\t}\n\t}\n);\n\n// These hooks are used by animate to expand properties\njQuery.each({\n\tmargin: \"\",\n\tpadding: \"\",\n\tborder: \"Width\"\n}, function( prefix, suffix ) {\n\tjQuery.cssHooks[ prefix + suffix ] = {\n\t\texpand: function( value ) {\n\t\t\tvar i = 0,\n\t\t\t\texpanded = {},\n\n\t\t\t\t// Assumes a single number if not a string\n\t\t\t\tparts = typeof value === \"string\" ? value.split(\" \") : [ value ];\n\n\t\t\tfor ( ; i < 4; i++ ) {\n\t\t\t\texpanded[ prefix + cssExpand[ i ] + suffix ] =\n\t\t\t\t\tparts[ i ] || parts[ i - 2 ] || parts[ 0 ];\n\t\t\t}\n\n\t\t\treturn expanded;\n\t\t}\n\t};\n\n\tif ( !rmargin.test( prefix ) ) {\n\t\tjQuery.cssHooks[ prefix + suffix ].set = setPositiveNumber;\n\t}\n});\n\njQuery.fn.extend({\n\tcss: function( name, value ) {\n\t\treturn access( this, function( elem, name, value ) {\n\t\t\tvar styles, len,\n\t\t\t\tmap = {},\n\t\t\t\ti = 0;\n\n\t\t\tif ( jQuery.isArray( name ) ) {\n\t\t\t\tstyles = getStyles( elem );\n\t\t\t\tlen = name.length;\n\n\t\t\t\tfor ( ; i < len; i++ ) {\n\t\t\t\t\tmap[ name[ i ] ] = jQuery.css( elem, name[ i ], false, styles );\n\t\t\t\t}\n\n\t\t\t\treturn map;\n\t\t\t}\n\n\t\t\treturn value !== undefined ?\n\t\t\t\tjQuery.style( elem, name, value ) :\n\t\t\t\tjQuery.css( elem, name );\n\t\t}, name, value, arguments.length > 1 );\n\t},\n\tshow: function() {\n\t\treturn showHide( this, true );\n\t},\n\thide: function() {\n\t\treturn showHide( this );\n\t},\n\ttoggle: function( state ) {\n\t\tif ( typeof state === \"boolean\" ) {\n\t\t\treturn state ? this.show() : this.hide();\n\t\t}\n\n\t\treturn this.each(function() {\n\t\t\tif ( isHidden( this ) ) {\n\t\t\t\tjQuery( this ).show();\n\t\t\t} else {\n\t\t\t\tjQuery( this ).hide();\n\t\t\t}\n\t\t});\n\t}\n});\n\n\nfunction Tween( elem, options, prop, end, easing ) {\n\treturn new Tween.prototype.init( elem, options, prop, end, easing );\n}\njQuery.Tween = Tween;\n\nTween.prototype = {\n\tconstructor: Tween,\n\tinit: function( elem, options, prop, end, easing, unit ) {\n\t\tthis.elem = elem;\n\t\tthis.prop = prop;\n\t\tthis.easing = easing || \"swing\";\n\t\tthis.options = options;\n\t\tthis.start = this.now = this.cur();\n\t\tthis.end = end;\n\t\tthis.unit = unit || ( jQuery.cssNumber[ prop ] ? \"\" : \"px\" );\n\t},\n\tcur: function() {\n\t\tvar hooks = Tween.propHooks[ this.prop ];\n\n\t\treturn hooks && hooks.get ?\n\t\t\thooks.get( this ) :\n\t\t\tTween.propHooks._default.get( this );\n\t},\n\trun: function( percent ) {\n\t\tvar eased,\n\t\t\thooks = Tween.propHooks[ this.prop ];\n\n\t\tif ( this.options.duration ) {\n\t\t\tthis.pos = eased = jQuery.easing[ this.easing ](\n\t\t\t\tpercent, this.options.duration * percent, 0, 1, this.options.duration\n\t\t\t);\n\t\t} else {\n\t\t\tthis.pos = eased = percent;\n\t\t}\n\t\tthis.now = ( this.end - this.start ) * eased + this.start;\n\n\t\tif ( this.options.step ) {\n\t\t\tthis.options.step.call( this.elem, this.now, this );\n\t\t}\n\n\t\tif ( hooks && hooks.set ) {\n\t\t\thooks.set( this );\n\t\t} else {\n\t\t\tTween.propHooks._default.set( this );\n\t\t}\n\t\treturn this;\n\t}\n};\n\nTween.prototype.init.prototype = Tween.prototype;\n\nTween.propHooks = {\n\t_default: {\n\t\tget: function( tween ) {\n\t\t\tvar result;\n\n\t\t\tif ( tween.elem[ tween.prop ] != null &&\n\t\t\t\t(!tween.elem.style || tween.elem.style[ tween.prop ] == null) ) {\n\t\t\t\treturn tween.elem[ tween.prop ];\n\t\t\t}\n\n\t\t\t// Passing an empty string as a 3rd parameter to .css will automatically\n\t\t\t// attempt a parseFloat and fallback to a string if the parse fails.\n\t\t\t// Simple values such as \"10px\" are parsed to Float;\n\t\t\t// complex values such as \"rotate(1rad)\" are returned as-is.\n\t\t\tresult = jQuery.css( tween.elem, tween.prop, \"\" );\n\t\t\t// Empty strings, null, undefined and \"auto\" are converted to 0.\n\t\t\treturn !result || result === \"auto\" ? 0 : result;\n\t\t},\n\t\tset: function( tween ) {\n\t\t\t// Use step hook for back compat.\n\t\t\t// Use cssHook if its there.\n\t\t\t// Use .style if available and use plain properties where available.\n\t\t\tif ( jQuery.fx.step[ tween.prop ] ) {\n\t\t\t\tjQuery.fx.step[ tween.prop ]( tween );\n\t\t\t} else if ( tween.elem.style && ( tween.elem.style[ jQuery.cssProps[ tween.prop ] ] != null || jQuery.cssHooks[ tween.prop ] ) ) {\n\t\t\t\tjQuery.style( tween.elem, tween.prop, tween.now + tween.unit );\n\t\t\t} else {\n\t\t\t\ttween.elem[ tween.prop ] = tween.now;\n\t\t\t}\n\t\t}\n\t}\n};\n\n// Support: IE9\n// Panic based approach to setting things on disconnected nodes\nTween.propHooks.scrollTop = Tween.propHooks.scrollLeft = {\n\tset: function( tween ) {\n\t\tif ( tween.elem.nodeType && tween.elem.parentNode ) {\n\t\t\ttween.elem[ tween.prop ] = tween.now;\n\t\t}\n\t}\n};\n\njQuery.easing = {\n\tlinear: function( p ) {\n\t\treturn p;\n\t},\n\tswing: function( p ) {\n\t\treturn 0.5 - Math.cos( p * Math.PI ) / 2;\n\t}\n};\n\njQuery.fx = Tween.prototype.init;\n\n// Back Compat <1.8 extension point\njQuery.fx.step = {};\n\n\n\n\nvar\n\tfxNow, timerId,\n\trfxtypes = /^(?:toggle|show|hide)$/,\n\trfxnum = new RegExp( \"^(?:([+-])=|)(\" + pnum + \")([a-z%]*)$\", \"i\" ),\n\trrun = /queueHooks$/,\n\tanimationPrefilters = [ defaultPrefilter ],\n\ttweeners = {\n\t\t\"*\": [ function( prop, value ) {\n\t\t\tvar tween = this.createTween( prop, value ),\n\t\t\t\ttarget = tween.cur(),\n\t\t\t\tparts = rfxnum.exec( value ),\n\t\t\t\tunit = parts && parts[ 3 ] || ( jQuery.cssNumber[ prop ] ? \"\" : \"px\" ),\n\n\t\t\t\t// Starting value computation is required for potential unit mismatches\n\t\t\t\tstart = ( jQuery.cssNumber[ prop ] || unit !== \"px\" && +target ) &&\n\t\t\t\t\trfxnum.exec( jQuery.css( tween.elem, prop ) ),\n\t\t\t\tscale = 1,\n\t\t\t\tmaxIterations = 20;\n\n\t\t\tif ( start && start[ 3 ] !== unit ) {\n\t\t\t\t// Trust units reported by jQuery.css\n\t\t\t\tunit = unit || start[ 3 ];\n\n\t\t\t\t// Make sure we update the tween properties later on\n\t\t\t\tparts = parts || [];\n\n\t\t\t\t// Iteratively approximate from a nonzero starting point\n\t\t\t\tstart = +target || 1;\n\n\t\t\t\tdo {\n\t\t\t\t\t// If previous iteration zeroed out, double until we get *something*.\n\t\t\t\t\t// Use string for doubling so we don't accidentally see scale as unchanged below\n\t\t\t\t\tscale = scale || \".5\";\n\n\t\t\t\t\t// Adjust and apply\n\t\t\t\t\tstart = start / scale;\n\t\t\t\t\tjQuery.style( tween.elem, prop, start + unit );\n\n\t\t\t\t// Update scale, tolerating zero or NaN from tween.cur(),\n\t\t\t\t// break the loop if scale is unchanged or perfect, or if we've just had enough\n\t\t\t\t} while ( scale !== (scale = tween.cur() / target) && scale !== 1 && --maxIterations );\n\t\t\t}\n\n\t\t\t// Update tween properties\n\t\t\tif ( parts ) {\n\t\t\t\tstart = tween.start = +start || +target || 0;\n\t\t\t\ttween.unit = unit;\n\t\t\t\t// If a +=/-= token was provided, we're doing a relative animation\n\t\t\t\ttween.end = parts[ 1 ] ?\n\t\t\t\t\tstart + ( parts[ 1 ] + 1 ) * parts[ 2 ] :\n\t\t\t\t\t+parts[ 2 ];\n\t\t\t}\n\n\t\t\treturn tween;\n\t\t} ]\n\t};\n\n// Animations created synchronously will run synchronously\nfunction createFxNow() {\n\tsetTimeout(function() {\n\t\tfxNow = undefined;\n\t});\n\treturn ( fxNow = jQuery.now() );\n}\n\n// Generate parameters to create a standard animation\nfunction genFx( type, includeWidth ) {\n\tvar which,\n\t\ti = 0,\n\t\tattrs = { height: type };\n\n\t// If we include width, step value is 1 to do all cssExpand values,\n\t// otherwise step value is 2 to skip over Left and Right\n\tincludeWidth = includeWidth ? 1 : 0;\n\tfor ( ; i < 4 ; i += 2 - includeWidth ) {\n\t\twhich = cssExpand[ i ];\n\t\tattrs[ \"margin\" + which ] = attrs[ \"padding\" + which ] = type;\n\t}\n\n\tif ( includeWidth ) {\n\t\tattrs.opacity = attrs.width = type;\n\t}\n\n\treturn attrs;\n}\n\nfunction createTween( value, prop, animation ) {\n\tvar tween,\n\t\tcollection = ( tweeners[ prop ] || [] ).concat( tweeners[ \"*\" ] ),\n\t\tindex = 0,\n\t\tlength = collection.length;\n\tfor ( ; index < length; index++ ) {\n\t\tif ( (tween = collection[ index ].call( animation, prop, value )) ) {\n\n\t\t\t// We're done with this property\n\t\t\treturn tween;\n\t\t}\n\t}\n}\n\nfunction defaultPrefilter( elem, props, opts ) {\n\t/* jshint validthis: true */\n\tvar prop, value, toggle, tween, hooks, oldfire, display, checkDisplay,\n\t\tanim = this,\n\t\torig = {},\n\t\tstyle = elem.style,\n\t\thidden = elem.nodeType && isHidden( elem ),\n\t\tdataShow = data_priv.get( elem, \"fxshow\" );\n\n\t// Handle queue: false promises\n\tif ( !opts.queue ) {\n\t\thooks = jQuery._queueHooks( elem, \"fx\" );\n\t\tif ( hooks.unqueued == null ) {\n\t\t\thooks.unqueued = 0;\n\t\t\toldfire = hooks.empty.fire;\n\t\t\thooks.empty.fire = function() {\n\t\t\t\tif ( !hooks.unqueued ) {\n\t\t\t\t\toldfire();\n\t\t\t\t}\n\t\t\t};\n\t\t}\n\t\thooks.unqueued++;\n\n\t\tanim.always(function() {\n\t\t\t// Ensure the complete handler is called before this completes\n\t\t\tanim.always(function() {\n\t\t\t\thooks.unqueued--;\n\t\t\t\tif ( !jQuery.queue( elem, \"fx\" ).length ) {\n\t\t\t\t\thooks.empty.fire();\n\t\t\t\t}\n\t\t\t});\n\t\t});\n\t}\n\n\t// Height/width overflow pass\n\tif ( elem.nodeType === 1 && ( \"height\" in props || \"width\" in props ) ) {\n\t\t// Make sure that nothing sneaks out\n\t\t// Record all 3 overflow attributes because IE9-10 do not\n\t\t// change the overflow attribute when overflowX and\n\t\t// overflowY are set to the same value\n\t\topts.overflow = [ style.overflow, style.overflowX, style.overflowY ];\n\n\t\t// Set display property to inline-block for height/width\n\t\t// animations on inline elements that are having width/height animated\n\t\tdisplay = jQuery.css( elem, \"display\" );\n\n\t\t// Test default display if display is currently \"none\"\n\t\tcheckDisplay = display === \"none\" ?\n\t\t\tdata_priv.get( elem, \"olddisplay\" ) || defaultDisplay( elem.nodeName ) : display;\n\n\t\tif ( checkDisplay === \"inline\" && jQuery.css( elem, \"float\" ) === \"none\" ) {\n\t\t\tstyle.display = \"inline-block\";\n\t\t}\n\t}\n\n\tif ( opts.overflow ) {\n\t\tstyle.overflow = \"hidden\";\n\t\tanim.always(function() {\n\t\t\tstyle.overflow = opts.overflow[ 0 ];\n\t\t\tstyle.overflowX = opts.overflow[ 1 ];\n\t\t\tstyle.overflowY = opts.overflow[ 2 ];\n\t\t});\n\t}\n\n\t// show/hide pass\n\tfor ( prop in props ) {\n\t\tvalue = props[ prop ];\n\t\tif ( rfxtypes.exec( value ) ) {\n\t\t\tdelete props[ prop ];\n\t\t\ttoggle = toggle || value === \"toggle\";\n\t\t\tif ( value === ( hidden ? \"hide\" : \"show\" ) ) {\n\n\t\t\t\t// If there is dataShow left over from a stopped hide or show and we are going to proceed with show, we should pretend to be hidden\n\t\t\t\tif ( value === \"show\" && dataShow && dataShow[ prop ] !== undefined ) {\n\t\t\t\t\thidden = true;\n\t\t\t\t} else {\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\t\t\t}\n\t\t\torig[ prop ] = dataShow && dataShow[ prop ] || jQuery.style( elem, prop );\n\n\t\t// Any non-fx value stops us from restoring the original display value\n\t\t} else {\n\t\t\tdisplay = undefined;\n\t\t}\n\t}\n\n\tif ( !jQuery.isEmptyObject( orig ) ) {\n\t\tif ( dataShow ) {\n\t\t\tif ( \"hidden\" in dataShow ) {\n\t\t\t\thidden = dataShow.hidden;\n\t\t\t}\n\t\t} else {\n\t\t\tdataShow = data_priv.access( elem, \"fxshow\", {} );\n\t\t}\n\n\t\t// Store state if its toggle - enables .stop().toggle() to \"reverse\"\n\t\tif ( toggle ) {\n\t\t\tdataShow.hidden = !hidden;\n\t\t}\n\t\tif ( hidden ) {\n\t\t\tjQuery( elem ).show();\n\t\t} else {\n\t\t\tanim.done(function() {\n\t\t\t\tjQuery( elem ).hide();\n\t\t\t});\n\t\t}\n\t\tanim.done(function() {\n\t\t\tvar prop;\n\n\t\t\tdata_priv.remove( elem, \"fxshow\" );\n\t\t\tfor ( prop in orig ) {\n\t\t\t\tjQuery.style( elem, prop, orig[ prop ] );\n\t\t\t}\n\t\t});\n\t\tfor ( prop in orig ) {\n\t\t\ttween = createTween( hidden ? dataShow[ prop ] : 0, prop, anim );\n\n\t\t\tif ( !( prop in dataShow ) ) {\n\t\t\t\tdataShow[ prop ] = tween.start;\n\t\t\t\tif ( hidden ) {\n\t\t\t\t\ttween.end = tween.start;\n\t\t\t\t\ttween.start = prop === \"width\" || prop === \"height\" ? 1 : 0;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t// If this is a noop like .hide().hide(), restore an overwritten display value\n\t} else if ( (display === \"none\" ? defaultDisplay( elem.nodeName ) : display) === \"inline\" ) {\n\t\tstyle.display = display;\n\t}\n}\n\nfunction propFilter( props, specialEasing ) {\n\tvar index, name, easing, value, hooks;\n\n\t// camelCase, specialEasing and expand cssHook pass\n\tfor ( index in props ) {\n\t\tname = jQuery.camelCase( index );\n\t\teasing = specialEasing[ name ];\n\t\tvalue = props[ index ];\n\t\tif ( jQuery.isArray( value ) ) {\n\t\t\teasing = value[ 1 ];\n\t\t\tvalue = props[ index ] = value[ 0 ];\n\t\t}\n\n\t\tif ( index !== name ) {\n\t\t\tprops[ name ] = value;\n\t\t\tdelete props[ index ];\n\t\t}\n\n\t\thooks = jQuery.cssHooks[ name ];\n\t\tif ( hooks && \"expand\" in hooks ) {\n\t\t\tvalue = hooks.expand( value );\n\t\t\tdelete props[ name ];\n\n\t\t\t// Not quite $.extend, this won't overwrite existing keys.\n\t\t\t// Reusing 'index' because we have the correct \"name\"\n\t\t\tfor ( index in value ) {\n\t\t\t\tif ( !( index in props ) ) {\n\t\t\t\t\tprops[ index ] = value[ index ];\n\t\t\t\t\tspecialEasing[ index ] = easing;\n\t\t\t\t}\n\t\t\t}\n\t\t} else {\n\t\t\tspecialEasing[ name ] = easing;\n\t\t}\n\t}\n}\n\nfunction Animation( elem, properties, options ) {\n\tvar result,\n\t\tstopped,\n\t\tindex = 0,\n\t\tlength = animationPrefilters.length,\n\t\tdeferred = jQuery.Deferred().always( function() {\n\t\t\t// Don't match elem in the :animated selector\n\t\t\tdelete tick.elem;\n\t\t}),\n\t\ttick = function() {\n\t\t\tif ( stopped ) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\tvar currentTime = fxNow || createFxNow(),\n\t\t\t\tremaining = Math.max( 0, animation.startTime + animation.duration - currentTime ),\n\t\t\t\t// Support: Android 2.3\n\t\t\t\t// Archaic crash bug won't allow us to use `1 - ( 0.5 || 0 )` (#12497)\n\t\t\t\ttemp = remaining / animation.duration || 0,\n\t\t\t\tpercent = 1 - temp,\n\t\t\t\tindex = 0,\n\t\t\t\tlength = animation.tweens.length;\n\n\t\t\tfor ( ; index < length ; index++ ) {\n\t\t\t\tanimation.tweens[ index ].run( percent );\n\t\t\t}\n\n\t\t\tdeferred.notifyWith( elem, [ animation, percent, remaining ]);\n\n\t\t\tif ( percent < 1 && length ) {\n\t\t\t\treturn remaining;\n\t\t\t} else {\n\t\t\t\tdeferred.resolveWith( elem, [ animation ] );\n\t\t\t\treturn false;\n\t\t\t}\n\t\t},\n\t\tanimation = deferred.promise({\n\t\t\telem: elem,\n\t\t\tprops: jQuery.extend( {}, properties ),\n\t\t\topts: jQuery.extend( true, { specialEasing: {} }, options ),\n\t\t\toriginalProperties: properties,\n\t\t\toriginalOptions: options,\n\t\t\tstartTime: fxNow || createFxNow(),\n\t\t\tduration: options.duration,\n\t\t\ttweens: [],\n\t\t\tcreateTween: function( prop, end ) {\n\t\t\t\tvar tween = jQuery.Tween( elem, animation.opts, prop, end,\n\t\t\t\t\t\tanimation.opts.specialEasing[ prop ] || animation.opts.easing );\n\t\t\t\tanimation.tweens.push( tween );\n\t\t\t\treturn tween;\n\t\t\t},\n\t\t\tstop: function( gotoEnd ) {\n\t\t\t\tvar index = 0,\n\t\t\t\t\t// If we are going to the end, we want to run all the tweens\n\t\t\t\t\t// otherwise we skip this part\n\t\t\t\t\tlength = gotoEnd ? animation.tweens.length : 0;\n\t\t\t\tif ( stopped ) {\n\t\t\t\t\treturn this;\n\t\t\t\t}\n\t\t\t\tstopped = true;\n\t\t\t\tfor ( ; index < length ; index++ ) {\n\t\t\t\t\tanimation.tweens[ index ].run( 1 );\n\t\t\t\t}\n\n\t\t\t\t// Resolve when we played the last frame; otherwise, reject\n\t\t\t\tif ( gotoEnd ) {\n\t\t\t\t\tdeferred.resolveWith( elem, [ animation, gotoEnd ] );\n\t\t\t\t} else {\n\t\t\t\t\tdeferred.rejectWith( elem, [ animation, gotoEnd ] );\n\t\t\t\t}\n\t\t\t\treturn this;\n\t\t\t}\n\t\t}),\n\t\tprops = animation.props;\n\n\tpropFilter( props, animation.opts.specialEasing );\n\n\tfor ( ; index < length ; index++ ) {\n\t\tresult = animationPrefilters[ index ].call( animation, elem, props, animation.opts );\n\t\tif ( result ) {\n\t\t\treturn result;\n\t\t}\n\t}\n\n\tjQuery.map( props, createTween, animation );\n\n\tif ( jQuery.isFunction( animation.opts.start ) ) {\n\t\tanimation.opts.start.call( elem, animation );\n\t}\n\n\tjQuery.fx.timer(\n\t\tjQuery.extend( tick, {\n\t\t\telem: elem,\n\t\t\tanim: animation,\n\t\t\tqueue: animation.opts.queue\n\t\t})\n\t);\n\n\t// attach callbacks from options\n\treturn animation.progress( animation.opts.progress )\n\t\t.done( animation.opts.done, animation.opts.complete )\n\t\t.fail( animation.opts.fail )\n\t\t.always( animation.opts.always );\n}\n\njQuery.Animation = jQuery.extend( Animation, {\n\n\ttweener: function( props, callback ) {\n\t\tif ( jQuery.isFunction( props ) ) {\n\t\t\tcallback = props;\n\t\t\tprops = [ \"*\" ];\n\t\t} else {\n\t\t\tprops = props.split(\" \");\n\t\t}\n\n\t\tvar prop,\n\t\t\tindex = 0,\n\t\t\tlength = props.length;\n\n\t\tfor ( ; index < length ; index++ ) {\n\t\t\tprop = props[ index ];\n\t\t\ttweeners[ prop ] = tweeners[ prop ] || [];\n\t\t\ttweeners[ prop ].unshift( callback );\n\t\t}\n\t},\n\n\tprefilter: function( callback, prepend ) {\n\t\tif ( prepend ) {\n\t\t\tanimationPrefilters.unshift( callback );\n\t\t} else {\n\t\t\tanimationPrefilters.push( callback );\n\t\t}\n\t}\n});\n\njQuery.speed = function( speed, easing, fn ) {\n\tvar opt = speed && typeof speed === \"object\" ? jQuery.extend( {}, speed ) : {\n\t\tcomplete: fn || !fn && easing ||\n\t\t\tjQuery.isFunction( speed ) && speed,\n\t\tduration: speed,\n\t\teasing: fn && easing || easing && !jQuery.isFunction( easing ) && easing\n\t};\n\n\topt.duration = jQuery.fx.off ? 0 : typeof opt.duration === \"number\" ? opt.duration :\n\t\topt.duration in jQuery.fx.speeds ? jQuery.fx.speeds[ opt.duration ] : jQuery.fx.speeds._default;\n\n\t// Normalize opt.queue - true/undefined/null -> \"fx\"\n\tif ( opt.queue == null || opt.queue === true ) {\n\t\topt.queue = \"fx\";\n\t}\n\n\t// Queueing\n\topt.old = opt.complete;\n\n\topt.complete = function() {\n\t\tif ( jQuery.isFunction( opt.old ) ) {\n\t\t\topt.old.call( this );\n\t\t}\n\n\t\tif ( opt.queue ) {\n\t\t\tjQuery.dequeue( this, opt.queue );\n\t\t}\n\t};\n\n\treturn opt;\n};\n\njQuery.fn.extend({\n\tfadeTo: function( speed, to, easing, callback ) {\n\n\t\t// Show any hidden elements after setting opacity to 0\n\t\treturn this.filter( isHidden ).css( \"opacity\", 0 ).show()\n\n\t\t\t// Animate to the value specified\n\t\t\t.end().animate({ opacity: to }, speed, easing, callback );\n\t},\n\tanimate: function( prop, speed, easing, callback ) {\n\t\tvar empty = jQuery.isEmptyObject( prop ),\n\t\t\toptall = jQuery.speed( speed, easing, callback ),\n\t\t\tdoAnimation = function() {\n\t\t\t\t// Operate on a copy of prop so per-property easing won't be lost\n\t\t\t\tvar anim = Animation( this, jQuery.extend( {}, prop ), optall );\n\n\t\t\t\t// Empty animations, or finishing resolves immediately\n\t\t\t\tif ( empty || data_priv.get( this, \"finish\" ) ) {\n\t\t\t\t\tanim.stop( true );\n\t\t\t\t}\n\t\t\t};\n\t\t\tdoAnimation.finish = doAnimation;\n\n\t\treturn empty || optall.queue === false ?\n\t\t\tthis.each( doAnimation ) :\n\t\t\tthis.queue( optall.queue, doAnimation );\n\t},\n\tstop: function( type, clearQueue, gotoEnd ) {\n\t\tvar stopQueue = function( hooks ) {\n\t\t\tvar stop = hooks.stop;\n\t\t\tdelete hooks.stop;\n\t\t\tstop( gotoEnd );\n\t\t};\n\n\t\tif ( typeof type !== \"string\" ) {\n\t\t\tgotoEnd = clearQueue;\n\t\t\tclearQueue = type;\n\t\t\ttype = undefined;\n\t\t}\n\t\tif ( clearQueue && type !== false ) {\n\t\t\tthis.queue( type || \"fx\", [] );\n\t\t}\n\n\t\treturn this.each(function() {\n\t\t\tvar dequeue = true,\n\t\t\t\tindex = type != null && type + \"queueHooks\",\n\t\t\t\ttimers = jQuery.timers,\n\t\t\t\tdata = data_priv.get( this );\n\n\t\t\tif ( index ) {\n\t\t\t\tif ( data[ index ] && data[ index ].stop ) {\n\t\t\t\t\tstopQueue( data[ index ] );\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\tfor ( index in data ) {\n\t\t\t\t\tif ( data[ index ] && data[ index ].stop && rrun.test( index ) ) {\n\t\t\t\t\t\tstopQueue( data[ index ] );\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tfor ( index = timers.length; index--; ) {\n\t\t\t\tif ( timers[ index ].elem === this && (type == null || timers[ index ].queue === type) ) {\n\t\t\t\t\ttimers[ index ].anim.stop( gotoEnd );\n\t\t\t\t\tdequeue = false;\n\t\t\t\t\ttimers.splice( index, 1 );\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Start the next in the queue if the last step wasn't forced.\n\t\t\t// Timers currently will call their complete callbacks, which\n\t\t\t// will dequeue but only if they were gotoEnd.\n\t\t\tif ( dequeue || !gotoEnd ) {\n\t\t\t\tjQuery.dequeue( this, type );\n\t\t\t}\n\t\t});\n\t},\n\tfinish: function( type ) {\n\t\tif ( type !== false ) {\n\t\t\ttype = type || \"fx\";\n\t\t}\n\t\treturn this.each(function() {\n\t\t\tvar index,\n\t\t\t\tdata = data_priv.get( this ),\n\t\t\t\tqueue = data[ type + \"queue\" ],\n\t\t\t\thooks = data[ type + \"queueHooks\" ],\n\t\t\t\ttimers = jQuery.timers,\n\t\t\t\tlength = queue ? queue.length : 0;\n\n\t\t\t// Enable finishing flag on private data\n\t\t\tdata.finish = true;\n\n\t\t\t// Empty the queue first\n\t\t\tjQuery.queue( this, type, [] );\n\n\t\t\tif ( hooks && hooks.stop ) {\n\t\t\t\thooks.stop.call( this, true );\n\t\t\t}\n\n\t\t\t// Look for any active animations, and finish them\n\t\t\tfor ( index = timers.length; index--; ) {\n\t\t\t\tif ( timers[ index ].elem === this && timers[ index ].queue === type ) {\n\t\t\t\t\ttimers[ index ].anim.stop( true );\n\t\t\t\t\ttimers.splice( index, 1 );\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Look for any animations in the old queue and finish them\n\t\t\tfor ( index = 0; index < length; index++ ) {\n\t\t\t\tif ( queue[ index ] && queue[ index ].finish ) {\n\t\t\t\t\tqueue[ index ].finish.call( this );\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Turn off finishing flag\n\t\t\tdelete data.finish;\n\t\t});\n\t}\n});\n\njQuery.each([ \"toggle\", \"show\", \"hide\" ], function( i, name ) {\n\tvar cssFn = jQuery.fn[ name ];\n\tjQuery.fn[ name ] = function( speed, easing, callback ) {\n\t\treturn speed == null || typeof speed === \"boolean\" ?\n\t\t\tcssFn.apply( this, arguments ) :\n\t\t\tthis.animate( genFx( name, true ), speed, easing, callback );\n\t};\n});\n\n// Generate shortcuts for custom animations\njQuery.each({\n\tslideDown: genFx(\"show\"),\n\tslideUp: genFx(\"hide\"),\n\tslideToggle: genFx(\"toggle\"),\n\tfadeIn: { opacity: \"show\" },\n\tfadeOut: { opacity: \"hide\" },\n\tfadeToggle: { opacity: \"toggle\" }\n}, function( name, props ) {\n\tjQuery.fn[ name ] = function( speed, easing, callback ) {\n\t\treturn this.animate( props, speed, easing, callback );\n\t};\n});\n\njQuery.timers = [];\njQuery.fx.tick = function() {\n\tvar timer,\n\t\ti = 0,\n\t\ttimers = jQuery.timers;\n\n\tfxNow = jQuery.now();\n\n\tfor ( ; i < timers.length; i++ ) {\n\t\ttimer = timers[ i ];\n\t\t// Checks the timer has not already been removed\n\t\tif ( !timer() && timers[ i ] === timer ) {\n\t\t\ttimers.splice( i--, 1 );\n\t\t}\n\t}\n\n\tif ( !timers.length ) {\n\t\tjQuery.fx.stop();\n\t}\n\tfxNow = undefined;\n};\n\njQuery.fx.timer = function( timer ) {\n\tjQuery.timers.push( timer );\n\tif ( timer() ) {\n\t\tjQuery.fx.start();\n\t} else {\n\t\tjQuery.timers.pop();\n\t}\n};\n\njQuery.fx.interval = 13;\n\njQuery.fx.start = function() {\n\tif ( !timerId ) {\n\t\ttimerId = setInterval( jQuery.fx.tick, jQuery.fx.interval );\n\t}\n};\n\njQuery.fx.stop = function() {\n\tclearInterval( timerId );\n\ttimerId = null;\n};\n\njQuery.fx.speeds = {\n\tslow: 600,\n\tfast: 200,\n\t// Default speed\n\t_default: 400\n};\n\n\n// Based off of the plugin by Clint Helfers, with permission.\n// http://blindsignals.com/index.php/2009/07/jquery-delay/\njQuery.fn.delay = function( time, type ) {\n\ttime = jQuery.fx ? jQuery.fx.speeds[ time ] || time : time;\n\ttype = type || \"fx\";\n\n\treturn this.queue( type, function( next, hooks ) {\n\t\tvar timeout = setTimeout( next, time );\n\t\thooks.stop = function() {\n\t\t\tclearTimeout( timeout );\n\t\t};\n\t});\n};\n\n\n(function() {\n\tvar input = document.createElement( \"input\" ),\n\t\tselect = document.createElement( \"select\" ),\n\t\topt = select.appendChild( document.createElement( \"option\" ) );\n\n\tinput.type = \"checkbox\";\n\n\t// Support: iOS<=5.1, Android<=4.2+\n\t// Default value for a checkbox should be \"on\"\n\tsupport.checkOn = input.value !== \"\";\n\n\t// Support: IE<=11+\n\t// Must access selectedIndex to make default options select\n\tsupport.optSelected = opt.selected;\n\n\t// Support: Android<=2.3\n\t// Options inside disabled selects are incorrectly marked as disabled\n\tselect.disabled = true;\n\tsupport.optDisabled = !opt.disabled;\n\n\t// Support: IE<=11+\n\t// An input loses its value after becoming a radio\n\tinput = document.createElement( \"input\" );\n\tinput.value = \"t\";\n\tinput.type = \"radio\";\n\tsupport.radioValue = input.value === \"t\";\n})();\n\n\nvar nodeHook, boolHook,\n\tattrHandle = jQuery.expr.attrHandle;\n\njQuery.fn.extend({\n\tattr: function( name, value ) {\n\t\treturn access( this, jQuery.attr, name, value, arguments.length > 1 );\n\t},\n\n\tremoveAttr: function( name ) {\n\t\treturn this.each(function() {\n\t\t\tjQuery.removeAttr( this, name );\n\t\t});\n\t}\n});\n\njQuery.extend({\n\tattr: function( elem, name, value ) {\n\t\tvar hooks, ret,\n\t\t\tnType = elem.nodeType;\n\n\t\t// don't get/set attributes on text, comment and attribute nodes\n\t\tif ( !elem || nType === 3 || nType === 8 || nType === 2 ) {\n\t\t\treturn;\n\t\t}\n\n\t\t// Fallback to prop when attributes are not supported\n\t\tif ( typeof elem.getAttribute === strundefined ) {\n\t\t\treturn jQuery.prop( elem, name, value );\n\t\t}\n\n\t\t// All attributes are lowercase\n\t\t// Grab necessary hook if one is defined\n\t\tif ( nType !== 1 || !jQuery.isXMLDoc( elem ) ) {\n\t\t\tname = name.toLowerCase();\n\t\t\thooks = jQuery.attrHooks[ name ] ||\n\t\t\t\t( jQuery.expr.match.bool.test( name ) ? boolHook : nodeHook );\n\t\t}\n\n\t\tif ( value !== undefined ) {\n\n\t\t\tif ( value === null ) {\n\t\t\t\tjQuery.removeAttr( elem, name );\n\n\t\t\t} else if ( hooks && \"set\" in hooks && (ret = hooks.set( elem, value, name )) !== undefined ) {\n\t\t\t\treturn ret;\n\n\t\t\t} else {\n\t\t\t\telem.setAttribute( name, value + \"\" );\n\t\t\t\treturn value;\n\t\t\t}\n\n\t\t} else if ( hooks && \"get\" in hooks && (ret = hooks.get( elem, name )) !== null ) {\n\t\t\treturn ret;\n\n\t\t} else {\n\t\t\tret = jQuery.find.attr( elem, name );\n\n\t\t\t// Non-existent attributes return null, we normalize to undefined\n\t\t\treturn ret == null ?\n\t\t\t\tundefined :\n\t\t\t\tret;\n\t\t}\n\t},\n\n\tremoveAttr: function( elem, value ) {\n\t\tvar name, propName,\n\t\t\ti = 0,\n\t\t\tattrNames = value && value.match( rnotwhite );\n\n\t\tif ( attrNames && elem.nodeType === 1 ) {\n\t\t\twhile ( (name = attrNames[i++]) ) {\n\t\t\t\tpropName = jQuery.propFix[ name ] || name;\n\n\t\t\t\t// Boolean attributes get special treatment (#10870)\n\t\t\t\tif ( jQuery.expr.match.bool.test( name ) ) {\n\t\t\t\t\t// Set corresponding property to false\n\t\t\t\t\telem[ propName ] = false;\n\t\t\t\t}\n\n\t\t\t\telem.removeAttribute( name );\n\t\t\t}\n\t\t}\n\t},\n\n\tattrHooks: {\n\t\ttype: {\n\t\t\tset: function( elem, value ) {\n\t\t\t\tif ( !support.radioValue && value === \"radio\" &&\n\t\t\t\t\tjQuery.nodeName( elem, \"input\" ) ) {\n\t\t\t\t\tvar val = elem.value;\n\t\t\t\t\telem.setAttribute( \"type\", value );\n\t\t\t\t\tif ( val ) {\n\t\t\t\t\t\telem.value = val;\n\t\t\t\t\t}\n\t\t\t\t\treturn value;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n});\n\n// Hooks for boolean attributes\nboolHook = {\n\tset: function( elem, value, name ) {\n\t\tif ( value === false ) {\n\t\t\t// Remove boolean attributes when set to false\n\t\t\tjQuery.removeAttr( elem, name );\n\t\t} else {\n\t\t\telem.setAttribute( name, name );\n\t\t}\n\t\treturn name;\n\t}\n};\njQuery.each( jQuery.expr.match.bool.source.match( /\\w+/g ), function( i, name ) {\n\tvar getter = attrHandle[ name ] || jQuery.find.attr;\n\n\tattrHandle[ name ] = function( elem, name, isXML ) {\n\t\tvar ret, handle;\n\t\tif ( !isXML ) {\n\t\t\t// Avoid an infinite loop by temporarily removing this function from the getter\n\t\t\thandle = attrHandle[ name ];\n\t\t\tattrHandle[ name ] = ret;\n\t\t\tret = getter( elem, name, isXML ) != null ?\n\t\t\t\tname.toLowerCase() :\n\t\t\t\tnull;\n\t\t\tattrHandle[ name ] = handle;\n\t\t}\n\t\treturn ret;\n\t};\n});\n\n\n\n\nvar rfocusable = /^(?:input|select|textarea|button)$/i;\n\njQuery.fn.extend({\n\tprop: function( name, value ) {\n\t\treturn access( this, jQuery.prop, name, value, arguments.length > 1 );\n\t},\n\n\tremoveProp: function( name ) {\n\t\treturn this.each(function() {\n\t\t\tdelete this[ jQuery.propFix[ name ] || name ];\n\t\t});\n\t}\n});\n\njQuery.extend({\n\tpropFix: {\n\t\t\"for\": \"htmlFor\",\n\t\t\"class\": \"className\"\n\t},\n\n\tprop: function( elem, name, value ) {\n\t\tvar ret, hooks, notxml,\n\t\t\tnType = elem.nodeType;\n\n\t\t// Don't get/set properties on text, comment and attribute nodes\n\t\tif ( !elem || nType === 3 || nType === 8 || nType === 2 ) {\n\t\t\treturn;\n\t\t}\n\n\t\tnotxml = nType !== 1 || !jQuery.isXMLDoc( elem );\n\n\t\tif ( notxml ) {\n\t\t\t// Fix name and attach hooks\n\t\t\tname = jQuery.propFix[ name ] || name;\n\t\t\thooks = jQuery.propHooks[ name ];\n\t\t}\n\n\t\tif ( value !== undefined ) {\n\t\t\treturn hooks && \"set\" in hooks && (ret = hooks.set( elem, value, name )) !== undefined ?\n\t\t\t\tret :\n\t\t\t\t( elem[ name ] = value );\n\n\t\t} else {\n\t\t\treturn hooks && \"get\" in hooks && (ret = hooks.get( elem, name )) !== null ?\n\t\t\t\tret :\n\t\t\t\telem[ name ];\n\t\t}\n\t},\n\n\tpropHooks: {\n\t\ttabIndex: {\n\t\t\tget: function( elem ) {\n\t\t\t\treturn elem.hasAttribute( \"tabindex\" ) || rfocusable.test( elem.nodeName ) || elem.href ?\n\t\t\t\t\telem.tabIndex :\n\t\t\t\t\t-1;\n\t\t\t}\n\t\t}\n\t}\n});\n\nif ( !support.optSelected ) {\n\tjQuery.propHooks.selected = {\n\t\tget: function( elem ) {\n\t\t\tvar parent = elem.parentNode;\n\t\t\tif ( parent && parent.parentNode ) {\n\t\t\t\tparent.parentNode.selectedIndex;\n\t\t\t}\n\t\t\treturn null;\n\t\t}\n\t};\n}\n\njQuery.each([\n\t\"tabIndex\",\n\t\"readOnly\",\n\t\"maxLength\",\n\t\"cellSpacing\",\n\t\"cellPadding\",\n\t\"rowSpan\",\n\t\"colSpan\",\n\t\"useMap\",\n\t\"frameBorder\",\n\t\"contentEditable\"\n], function() {\n\tjQuery.propFix[ this.toLowerCase() ] = this;\n});\n\n\n\n\nvar rclass = /[\\t\\r\\n\\f]/g;\n\njQuery.fn.extend({\n\taddClass: function( value ) {\n\t\tvar classes, elem, cur, clazz, j, finalValue,\n\t\t\tproceed = typeof value === \"string\" && value,\n\t\t\ti = 0,\n\t\t\tlen = this.length;\n\n\t\tif ( jQuery.isFunction( value ) ) {\n\t\t\treturn this.each(function( j ) {\n\t\t\t\tjQuery( this ).addClass( value.call( this, j, this.className ) );\n\t\t\t});\n\t\t}\n\n\t\tif ( proceed ) {\n\t\t\t// The disjunction here is for better compressibility (see removeClass)\n\t\t\tclasses = ( value || \"\" ).match( rnotwhite ) || [];\n\n\t\t\tfor ( ; i < len; i++ ) {\n\t\t\t\telem = this[ i ];\n\t\t\t\tcur = elem.nodeType === 1 && ( elem.className ?\n\t\t\t\t\t( \" \" + elem.className + \" \" ).replace( rclass, \" \" ) :\n\t\t\t\t\t\" \"\n\t\t\t\t);\n\n\t\t\t\tif ( cur ) {\n\t\t\t\t\tj = 0;\n\t\t\t\t\twhile ( (clazz = classes[j++]) ) {\n\t\t\t\t\t\tif ( cur.indexOf( \" \" + clazz + \" \" ) < 0 ) {\n\t\t\t\t\t\t\tcur += clazz + \" \";\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\t// only assign if different to avoid unneeded rendering.\n\t\t\t\t\tfinalValue = jQuery.trim( cur );\n\t\t\t\t\tif ( elem.className !== finalValue ) {\n\t\t\t\t\t\telem.className = finalValue;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn this;\n\t},\n\n\tremoveClass: function( value ) {\n\t\tvar classes, elem, cur, clazz, j, finalValue,\n\t\t\tproceed = arguments.length === 0 || typeof value === \"string\" && value,\n\t\t\ti = 0,\n\t\t\tlen = this.length;\n\n\t\tif ( jQuery.isFunction( value ) ) {\n\t\t\treturn this.each(function( j ) {\n\t\t\t\tjQuery( this ).removeClass( value.call( this, j, this.className ) );\n\t\t\t});\n\t\t}\n\t\tif ( proceed ) {\n\t\t\tclasses = ( value || \"\" ).match( rnotwhite ) || [];\n\n\t\t\tfor ( ; i < len; i++ ) {\n\t\t\t\telem = this[ i ];\n\t\t\t\t// This expression is here for better compressibility (see addClass)\n\t\t\t\tcur = elem.nodeType === 1 && ( elem.className ?\n\t\t\t\t\t( \" \" + elem.className + \" \" ).replace( rclass, \" \" ) :\n\t\t\t\t\t\"\"\n\t\t\t\t);\n\n\t\t\t\tif ( cur ) {\n\t\t\t\t\tj = 0;\n\t\t\t\t\twhile ( (clazz = classes[j++]) ) {\n\t\t\t\t\t\t// Remove *all* instances\n\t\t\t\t\t\twhile ( cur.indexOf( \" \" + clazz + \" \" ) >= 0 ) {\n\t\t\t\t\t\t\tcur = cur.replace( \" \" + clazz + \" \", \" \" );\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\t// Only assign if different to avoid unneeded rendering.\n\t\t\t\t\tfinalValue = value ? jQuery.trim( cur ) : \"\";\n\t\t\t\t\tif ( elem.className !== finalValue ) {\n\t\t\t\t\t\telem.className = finalValue;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn this;\n\t},\n\n\ttoggleClass: function( value, stateVal ) {\n\t\tvar type = typeof value;\n\n\t\tif ( typeof stateVal === \"boolean\" && type === \"string\" ) {\n\t\t\treturn stateVal ? this.addClass( value ) : this.removeClass( value );\n\t\t}\n\n\t\tif ( jQuery.isFunction( value ) ) {\n\t\t\treturn this.each(function( i ) {\n\t\t\t\tjQuery( this ).toggleClass( value.call(this, i, this.className, stateVal), stateVal );\n\t\t\t});\n\t\t}\n\n\t\treturn this.each(function() {\n\t\t\tif ( type === \"string\" ) {\n\t\t\t\t// Toggle individual class names\n\t\t\t\tvar className,\n\t\t\t\t\ti = 0,\n\t\t\t\t\tself = jQuery( this ),\n\t\t\t\t\tclassNames = value.match( rnotwhite ) || [];\n\n\t\t\t\twhile ( (className = classNames[ i++ ]) ) {\n\t\t\t\t\t// Check each className given, space separated list\n\t\t\t\t\tif ( self.hasClass( className ) ) {\n\t\t\t\t\t\tself.removeClass( className );\n\t\t\t\t\t} else {\n\t\t\t\t\t\tself.addClass( className );\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t// Toggle whole class name\n\t\t\t} else if ( type === strundefined || type === \"boolean\" ) {\n\t\t\t\tif ( this.className ) {\n\t\t\t\t\t// store className if set\n\t\t\t\t\tdata_priv.set( this, \"__className__\", this.className );\n\t\t\t\t}\n\n\t\t\t\t// If the element has a class name or if we're passed `false`,\n\t\t\t\t// then remove the whole classname (if there was one, the above saved it).\n\t\t\t\t// Otherwise bring back whatever was previously saved (if anything),\n\t\t\t\t// falling back to the empty string if nothing was stored.\n\t\t\t\tthis.className = this.className || value === false ? \"\" : data_priv.get( this, \"__className__\" ) || \"\";\n\t\t\t}\n\t\t});\n\t},\n\n\thasClass: function( selector ) {\n\t\tvar className = \" \" + selector + \" \",\n\t\t\ti = 0,\n\t\t\tl = this.length;\n\t\tfor ( ; i < l; i++ ) {\n\t\t\tif ( this[i].nodeType === 1 && (\" \" + this[i].className + \" \").replace(rclass, \" \").indexOf( className ) >= 0 ) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\n\t\treturn false;\n\t}\n});\n\n\n\n\nvar rreturn = /\\r/g;\n\njQuery.fn.extend({\n\tval: function( value ) {\n\t\tvar hooks, ret, isFunction,\n\t\t\telem = this[0];\n\n\t\tif ( !arguments.length ) {\n\t\t\tif ( elem ) {\n\t\t\t\thooks = jQuery.valHooks[ elem.type ] || jQuery.valHooks[ elem.nodeName.toLowerCase() ];\n\n\t\t\t\tif ( hooks && \"get\" in hooks && (ret = hooks.get( elem, \"value\" )) !== undefined ) {\n\t\t\t\t\treturn ret;\n\t\t\t\t}\n\n\t\t\t\tret = elem.value;\n\n\t\t\t\treturn typeof ret === \"string\" ?\n\t\t\t\t\t// Handle most common string cases\n\t\t\t\t\tret.replace(rreturn, \"\") :\n\t\t\t\t\t// Handle cases where value is null/undef or number\n\t\t\t\t\tret == null ? \"\" : ret;\n\t\t\t}\n\n\t\t\treturn;\n\t\t}\n\n\t\tisFunction = jQuery.isFunction( value );\n\n\t\treturn this.each(function( i ) {\n\t\t\tvar val;\n\n\t\t\tif ( this.nodeType !== 1 ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif ( isFunction ) {\n\t\t\t\tval = value.call( this, i, jQuery( this ).val() );\n\t\t\t} else {\n\t\t\t\tval = value;\n\t\t\t}\n\n\t\t\t// Treat null/undefined as \"\"; convert numbers to string\n\t\t\tif ( val == null ) {\n\t\t\t\tval = \"\";\n\n\t\t\t} else if ( typeof val === \"number\" ) {\n\t\t\t\tval += \"\";\n\n\t\t\t} else if ( jQuery.isArray( val ) ) {\n\t\t\t\tval = jQuery.map( val, function( value ) {\n\t\t\t\t\treturn value == null ? \"\" : value + \"\";\n\t\t\t\t});\n\t\t\t}\n\n\t\t\thooks = jQuery.valHooks[ this.type ] || jQuery.valHooks[ this.nodeName.toLowerCase() ];\n\n\t\t\t// If set returns undefined, fall back to normal setting\n\t\t\tif ( !hooks || !(\"set\" in hooks) || hooks.set( this, val, \"value\" ) === undefined ) {\n\t\t\t\tthis.value = val;\n\t\t\t}\n\t\t});\n\t}\n});\n\njQuery.extend({\n\tvalHooks: {\n\t\toption: {\n\t\t\tget: function( elem ) {\n\t\t\t\tvar val = jQuery.find.attr( elem, \"value\" );\n\t\t\t\treturn val != null ?\n\t\t\t\t\tval :\n\t\t\t\t\t// Support: IE10-11+\n\t\t\t\t\t// option.text throws exceptions (#14686, #14858)\n\t\t\t\t\tjQuery.trim( jQuery.text( elem ) );\n\t\t\t}\n\t\t},\n\t\tselect: {\n\t\t\tget: function( elem ) {\n\t\t\t\tvar value, option,\n\t\t\t\t\toptions = elem.options,\n\t\t\t\t\tindex = elem.selectedIndex,\n\t\t\t\t\tone = elem.type === \"select-one\" || index < 0,\n\t\t\t\t\tvalues = one ? null : [],\n\t\t\t\t\tmax = one ? index + 1 : options.length,\n\t\t\t\t\ti = index < 0 ?\n\t\t\t\t\t\tmax :\n\t\t\t\t\t\tone ? index : 0;\n\n\t\t\t\t// Loop through all the selected options\n\t\t\t\tfor ( ; i < max; i++ ) {\n\t\t\t\t\toption = options[ i ];\n\n\t\t\t\t\t// IE6-9 doesn't update selected after form reset (#2551)\n\t\t\t\t\tif ( ( option.selected || i === index ) &&\n\t\t\t\t\t\t\t// Don't return options that are disabled or in a disabled optgroup\n\t\t\t\t\t\t\t( support.optDisabled ? !option.disabled : option.getAttribute( \"disabled\" ) === null ) &&\n\t\t\t\t\t\t\t( !option.parentNode.disabled || !jQuery.nodeName( option.parentNode, \"optgroup\" ) ) ) {\n\n\t\t\t\t\t\t// Get the specific value for the option\n\t\t\t\t\t\tvalue = jQuery( option ).val();\n\n\t\t\t\t\t\t// We don't need an array for one selects\n\t\t\t\t\t\tif ( one ) {\n\t\t\t\t\t\t\treturn value;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\t// Multi-Selects return an array\n\t\t\t\t\t\tvalues.push( value );\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\treturn values;\n\t\t\t},\n\n\t\t\tset: function( elem, value ) {\n\t\t\t\tvar optionSet, option,\n\t\t\t\t\toptions = elem.options,\n\t\t\t\t\tvalues = jQuery.makeArray( value ),\n\t\t\t\t\ti = options.length;\n\n\t\t\t\twhile ( i-- ) {\n\t\t\t\t\toption = options[ i ];\n\t\t\t\t\tif ( (option.selected = jQuery.inArray( option.value, values ) >= 0) ) {\n\t\t\t\t\t\toptionSet = true;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t// Force browsers to behave consistently when non-matching value is set\n\t\t\t\tif ( !optionSet ) {\n\t\t\t\t\telem.selectedIndex = -1;\n\t\t\t\t}\n\t\t\t\treturn values;\n\t\t\t}\n\t\t}\n\t}\n});\n\n// Radios and checkboxes getter/setter\njQuery.each([ \"radio\", \"checkbox\" ], function() {\n\tjQuery.valHooks[ this ] = {\n\t\tset: function( elem, value ) {\n\t\t\tif ( jQuery.isArray( value ) ) {\n\t\t\t\treturn ( elem.checked = jQuery.inArray( jQuery(elem).val(), value ) >= 0 );\n\t\t\t}\n\t\t}\n\t};\n\tif ( !support.checkOn ) {\n\t\tjQuery.valHooks[ this ].get = function( elem ) {\n\t\t\treturn elem.getAttribute(\"value\") === null ? \"on\" : elem.value;\n\t\t};\n\t}\n});\n\n\n\n\n// Return jQuery for attributes-only inclusion\n\n\njQuery.each( (\"blur focus focusin focusout load resize scroll unload click dblclick \" +\n\t\"mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave \" +\n\t\"change select submit keydown keypress keyup error contextmenu\").split(\" \"), function( i, name ) {\n\n\t// Handle event binding\n\tjQuery.fn[ name ] = function( data, fn ) {\n\t\treturn arguments.length > 0 ?\n\t\t\tthis.on( name, null, data, fn ) :\n\t\t\tthis.trigger( name );\n\t};\n});\n\njQuery.fn.extend({\n\thover: function( fnOver, fnOut ) {\n\t\treturn this.mouseenter( fnOver ).mouseleave( fnOut || fnOver );\n\t},\n\n\tbind: function( types, data, fn ) {\n\t\treturn this.on( types, null, data, fn );\n\t},\n\tunbind: function( types, fn ) {\n\t\treturn this.off( types, null, fn );\n\t},\n\n\tdelegate: function( selector, types, data, fn ) {\n\t\treturn this.on( types, selector, data, fn );\n\t},\n\tundelegate: function( selector, types, fn ) {\n\t\t// ( namespace ) or ( selector, types [, fn] )\n\t\treturn arguments.length === 1 ? this.off( selector, \"**\" ) : this.off( types, selector || \"**\", fn );\n\t}\n});\n\n\nvar nonce = jQuery.now();\n\nvar rquery = (/\\?/);\n\n\n\n// Support: Android 2.3\n// Workaround failure to string-cast null input\njQuery.parseJSON = function( data ) {\n\treturn JSON.parse( data + \"\" );\n};\n\n\n// Cross-browser xml parsing\njQuery.parseXML = function( data ) {\n\tvar xml, tmp;\n\tif ( !data || typeof data !== \"string\" ) {\n\t\treturn null;\n\t}\n\n\t// Support: IE9\n\ttry {\n\t\ttmp = new DOMParser();\n\t\txml = tmp.parseFromString( data, \"text/xml\" );\n\t} catch ( e ) {\n\t\txml = undefined;\n\t}\n\n\tif ( !xml || xml.getElementsByTagName( \"parsererror\" ).length ) {\n\t\tjQuery.error( \"Invalid XML: \" + data );\n\t}\n\treturn xml;\n};\n\n\nvar\n\trhash = /#.*$/,\n\trts = /([?&])_=[^&]*/,\n\trheaders = /^(.*?):[ \\t]*([^\\r\\n]*)$/mg,\n\t// #7653, #8125, #8152: local protocol detection\n\trlocalProtocol = /^(?:about|app|app-storage|.+-extension|file|res|widget):$/,\n\trnoContent = /^(?:GET|HEAD)$/,\n\trprotocol = /^\\/\\//,\n\trurl = /^([\\w.+-]+:)(?:\\/\\/(?:[^\\/?#]*@|)([^\\/?#:]*)(?::(\\d+)|)|)/,\n\n\t/* Prefilters\n\t * 1) They are useful to introduce custom dataTypes (see ajax/jsonp.js for an example)\n\t * 2) These are called:\n\t *    - BEFORE asking for a transport\n\t *    - AFTER param serialization (s.data is a string if s.processData is true)\n\t * 3) key is the dataType\n\t * 4) the catchall symbol \"*\" can be used\n\t * 5) execution will start with transport dataType and THEN continue down to \"*\" if needed\n\t */\n\tprefilters = {},\n\n\t/* Transports bindings\n\t * 1) key is the dataType\n\t * 2) the catchall symbol \"*\" can be used\n\t * 3) selection will start with transport dataType and THEN go to \"*\" if needed\n\t */\n\ttransports = {},\n\n\t// Avoid comment-prolog char sequence (#10098); must appease lint and evade compression\n\tallTypes = \"*/\".concat( \"*\" ),\n\n\t// Document location\n\tajaxLocation = window.location.href,\n\n\t// Segment location into parts\n\tajaxLocParts = rurl.exec( ajaxLocation.toLowerCase() ) || [];\n\n// Base \"constructor\" for jQuery.ajaxPrefilter and jQuery.ajaxTransport\nfunction addToPrefiltersOrTransports( structure ) {\n\n\t// dataTypeExpression is optional and defaults to \"*\"\n\treturn function( dataTypeExpression, func ) {\n\n\t\tif ( typeof dataTypeExpression !== \"string\" ) {\n\t\t\tfunc = dataTypeExpression;\n\t\t\tdataTypeExpression = \"*\";\n\t\t}\n\n\t\tvar dataType,\n\t\t\ti = 0,\n\t\t\tdataTypes = dataTypeExpression.toLowerCase().match( rnotwhite ) || [];\n\n\t\tif ( jQuery.isFunction( func ) ) {\n\t\t\t// For each dataType in the dataTypeExpression\n\t\t\twhile ( (dataType = dataTypes[i++]) ) {\n\t\t\t\t// Prepend if requested\n\t\t\t\tif ( dataType[0] === \"+\" ) {\n\t\t\t\t\tdataType = dataType.slice( 1 ) || \"*\";\n\t\t\t\t\t(structure[ dataType ] = structure[ dataType ] || []).unshift( func );\n\n\t\t\t\t// Otherwise append\n\t\t\t\t} else {\n\t\t\t\t\t(structure[ dataType ] = structure[ dataType ] || []).push( func );\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t};\n}\n\n// Base inspection function for prefilters and transports\nfunction inspectPrefiltersOrTransports( structure, options, originalOptions, jqXHR ) {\n\n\tvar inspected = {},\n\t\tseekingTransport = ( structure === transports );\n\n\tfunction inspect( dataType ) {\n\t\tvar selected;\n\t\tinspected[ dataType ] = true;\n\t\tjQuery.each( structure[ dataType ] || [], function( _, prefilterOrFactory ) {\n\t\t\tvar dataTypeOrTransport = prefilterOrFactory( options, originalOptions, jqXHR );\n\t\t\tif ( typeof dataTypeOrTransport === \"string\" && !seekingTransport && !inspected[ dataTypeOrTransport ] ) {\n\t\t\t\toptions.dataTypes.unshift( dataTypeOrTransport );\n\t\t\t\tinspect( dataTypeOrTransport );\n\t\t\t\treturn false;\n\t\t\t} else if ( seekingTransport ) {\n\t\t\t\treturn !( selected = dataTypeOrTransport );\n\t\t\t}\n\t\t});\n\t\treturn selected;\n\t}\n\n\treturn inspect( options.dataTypes[ 0 ] ) || !inspected[ \"*\" ] && inspect( \"*\" );\n}\n\n// A special extend for ajax options\n// that takes \"flat\" options (not to be deep extended)\n// Fixes #9887\nfunction ajaxExtend( target, src ) {\n\tvar key, deep,\n\t\tflatOptions = jQuery.ajaxSettings.flatOptions || {};\n\n\tfor ( key in src ) {\n\t\tif ( src[ key ] !== undefined ) {\n\t\t\t( flatOptions[ key ] ? target : ( deep || (deep = {}) ) )[ key ] = src[ key ];\n\t\t}\n\t}\n\tif ( deep ) {\n\t\tjQuery.extend( true, target, deep );\n\t}\n\n\treturn target;\n}\n\n/* Handles responses to an ajax request:\n * - finds the right dataType (mediates between content-type and expected dataType)\n * - returns the corresponding response\n */\nfunction ajaxHandleResponses( s, jqXHR, responses ) {\n\n\tvar ct, type, finalDataType, firstDataType,\n\t\tcontents = s.contents,\n\t\tdataTypes = s.dataTypes;\n\n\t// Remove auto dataType and get content-type in the process\n\twhile ( dataTypes[ 0 ] === \"*\" ) {\n\t\tdataTypes.shift();\n\t\tif ( ct === undefined ) {\n\t\t\tct = s.mimeType || jqXHR.getResponseHeader(\"Content-Type\");\n\t\t}\n\t}\n\n\t// Check if we're dealing with a known content-type\n\tif ( ct ) {\n\t\tfor ( type in contents ) {\n\t\t\tif ( contents[ type ] && contents[ type ].test( ct ) ) {\n\t\t\t\tdataTypes.unshift( type );\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\t// Check to see if we have a response for the expected dataType\n\tif ( dataTypes[ 0 ] in responses ) {\n\t\tfinalDataType = dataTypes[ 0 ];\n\t} else {\n\t\t// Try convertible dataTypes\n\t\tfor ( type in responses ) {\n\t\t\tif ( !dataTypes[ 0 ] || s.converters[ type + \" \" + dataTypes[0] ] ) {\n\t\t\t\tfinalDataType = type;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t\tif ( !firstDataType ) {\n\t\t\t\tfirstDataType = type;\n\t\t\t}\n\t\t}\n\t\t// Or just use first one\n\t\tfinalDataType = finalDataType || firstDataType;\n\t}\n\n\t// If we found a dataType\n\t// We add the dataType to the list if needed\n\t// and return the corresponding response\n\tif ( finalDataType ) {\n\t\tif ( finalDataType !== dataTypes[ 0 ] ) {\n\t\t\tdataTypes.unshift( finalDataType );\n\t\t}\n\t\treturn responses[ finalDataType ];\n\t}\n}\n\n/* Chain conversions given the request and the original response\n * Also sets the responseXXX fields on the jqXHR instance\n */\nfunction ajaxConvert( s, response, jqXHR, isSuccess ) {\n\tvar conv2, current, conv, tmp, prev,\n\t\tconverters = {},\n\t\t// Work with a copy of dataTypes in case we need to modify it for conversion\n\t\tdataTypes = s.dataTypes.slice();\n\n\t// Create converters map with lowercased keys\n\tif ( dataTypes[ 1 ] ) {\n\t\tfor ( conv in s.converters ) {\n\t\t\tconverters[ conv.toLowerCase() ] = s.converters[ conv ];\n\t\t}\n\t}\n\n\tcurrent = dataTypes.shift();\n\n\t// Convert to each sequential dataType\n\twhile ( current ) {\n\n\t\tif ( s.responseFields[ current ] ) {\n\t\t\tjqXHR[ s.responseFields[ current ] ] = response;\n\t\t}\n\n\t\t// Apply the dataFilter if provided\n\t\tif ( !prev && isSuccess && s.dataFilter ) {\n\t\t\tresponse = s.dataFilter( response, s.dataType );\n\t\t}\n\n\t\tprev = current;\n\t\tcurrent = dataTypes.shift();\n\n\t\tif ( current ) {\n\n\t\t// There's only work to do if current dataType is non-auto\n\t\t\tif ( current === \"*\" ) {\n\n\t\t\t\tcurrent = prev;\n\n\t\t\t// Convert response if prev dataType is non-auto and differs from current\n\t\t\t} else if ( prev !== \"*\" && prev !== current ) {\n\n\t\t\t\t// Seek a direct converter\n\t\t\t\tconv = converters[ prev + \" \" + current ] || converters[ \"* \" + current ];\n\n\t\t\t\t// If none found, seek a pair\n\t\t\t\tif ( !conv ) {\n\t\t\t\t\tfor ( conv2 in converters ) {\n\n\t\t\t\t\t\t// If conv2 outputs current\n\t\t\t\t\t\ttmp = conv2.split( \" \" );\n\t\t\t\t\t\tif ( tmp[ 1 ] === current ) {\n\n\t\t\t\t\t\t\t// If prev can be converted to accepted input\n\t\t\t\t\t\t\tconv = converters[ prev + \" \" + tmp[ 0 ] ] ||\n\t\t\t\t\t\t\t\tconverters[ \"* \" + tmp[ 0 ] ];\n\t\t\t\t\t\t\tif ( conv ) {\n\t\t\t\t\t\t\t\t// Condense equivalence converters\n\t\t\t\t\t\t\t\tif ( conv === true ) {\n\t\t\t\t\t\t\t\t\tconv = converters[ conv2 ];\n\n\t\t\t\t\t\t\t\t// Otherwise, insert the intermediate dataType\n\t\t\t\t\t\t\t\t} else if ( converters[ conv2 ] !== true ) {\n\t\t\t\t\t\t\t\t\tcurrent = tmp[ 0 ];\n\t\t\t\t\t\t\t\t\tdataTypes.unshift( tmp[ 1 ] );\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t// Apply converter (if not an equivalence)\n\t\t\t\tif ( conv !== true ) {\n\n\t\t\t\t\t// Unless errors are allowed to bubble, catch and return them\n\t\t\t\t\tif ( conv && s[ \"throws\" ] ) {\n\t\t\t\t\t\tresponse = conv( response );\n\t\t\t\t\t} else {\n\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\tresponse = conv( response );\n\t\t\t\t\t\t} catch ( e ) {\n\t\t\t\t\t\t\treturn { state: \"parsererror\", error: conv ? e : \"No conversion from \" + prev + \" to \" + current };\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\treturn { state: \"success\", data: response };\n}\n\njQuery.extend({\n\n\t// Counter for holding the number of active queries\n\tactive: 0,\n\n\t// Last-Modified header cache for next request\n\tlastModified: {},\n\tetag: {},\n\n\tajaxSettings: {\n\t\turl: ajaxLocation,\n\t\ttype: \"GET\",\n\t\tisLocal: rlocalProtocol.test( ajaxLocParts[ 1 ] ),\n\t\tglobal: true,\n\t\tprocessData: true,\n\t\tasync: true,\n\t\tcontentType: \"application/x-www-form-urlencoded; charset=UTF-8\",\n\t\t/*\n\t\ttimeout: 0,\n\t\tdata: null,\n\t\tdataType: null,\n\t\tusername: null,\n\t\tpassword: null,\n\t\tcache: null,\n\t\tthrows: false,\n\t\ttraditional: false,\n\t\theaders: {},\n\t\t*/\n\n\t\taccepts: {\n\t\t\t\"*\": allTypes,\n\t\t\ttext: \"text/plain\",\n\t\t\thtml: \"text/html\",\n\t\t\txml: \"application/xml, text/xml\",\n\t\t\tjson: \"application/json, text/javascript\"\n\t\t},\n\n\t\tcontents: {\n\t\t\txml: /xml/,\n\t\t\thtml: /html/,\n\t\t\tjson: /json/\n\t\t},\n\n\t\tresponseFields: {\n\t\t\txml: \"responseXML\",\n\t\t\ttext: \"responseText\",\n\t\t\tjson: \"responseJSON\"\n\t\t},\n\n\t\t// Data converters\n\t\t// Keys separate source (or catchall \"*\") and destination types with a single space\n\t\tconverters: {\n\n\t\t\t// Convert anything to text\n\t\t\t\"* text\": String,\n\n\t\t\t// Text to html (true = no transformation)\n\t\t\t\"text html\": true,\n\n\t\t\t// Evaluate text as a json expression\n\t\t\t\"text json\": jQuery.parseJSON,\n\n\t\t\t// Parse text as xml\n\t\t\t\"text xml\": jQuery.parseXML\n\t\t},\n\n\t\t// For options that shouldn't be deep extended:\n\t\t// you can add your own custom options here if\n\t\t// and when you create one that shouldn't be\n\t\t// deep extended (see ajaxExtend)\n\t\tflatOptions: {\n\t\t\turl: true,\n\t\t\tcontext: true\n\t\t}\n\t},\n\n\t// Creates a full fledged settings object into target\n\t// with both ajaxSettings and settings fields.\n\t// If target is omitted, writes into ajaxSettings.\n\tajaxSetup: function( target, settings ) {\n\t\treturn settings ?\n\n\t\t\t// Building a settings object\n\t\t\tajaxExtend( ajaxExtend( target, jQuery.ajaxSettings ), settings ) :\n\n\t\t\t// Extending ajaxSettings\n\t\t\tajaxExtend( jQuery.ajaxSettings, target );\n\t},\n\n\tajaxPrefilter: addToPrefiltersOrTransports( prefilters ),\n\tajaxTransport: addToPrefiltersOrTransports( transports ),\n\n\t// Main method\n\tajax: function( url, options ) {\n\n\t\t// If url is an object, simulate pre-1.5 signature\n\t\tif ( typeof url === \"object\" ) {\n\t\t\toptions = url;\n\t\t\turl = undefined;\n\t\t}\n\n\t\t// Force options to be an object\n\t\toptions = options || {};\n\n\t\tvar transport,\n\t\t\t// URL without anti-cache param\n\t\t\tcacheURL,\n\t\t\t// Response headers\n\t\t\tresponseHeadersString,\n\t\t\tresponseHeaders,\n\t\t\t// timeout handle\n\t\t\ttimeoutTimer,\n\t\t\t// Cross-domain detection vars\n\t\t\tparts,\n\t\t\t// To know if global events are to be dispatched\n\t\t\tfireGlobals,\n\t\t\t// Loop variable\n\t\t\ti,\n\t\t\t// Create the final options object\n\t\t\ts = jQuery.ajaxSetup( {}, options ),\n\t\t\t// Callbacks context\n\t\t\tcallbackContext = s.context || s,\n\t\t\t// Context for global events is callbackContext if it is a DOM node or jQuery collection\n\t\t\tglobalEventContext = s.context && ( callbackContext.nodeType || callbackContext.jquery ) ?\n\t\t\t\tjQuery( callbackContext ) :\n\t\t\t\tjQuery.event,\n\t\t\t// Deferreds\n\t\t\tdeferred = jQuery.Deferred(),\n\t\t\tcompleteDeferred = jQuery.Callbacks(\"once memory\"),\n\t\t\t// Status-dependent callbacks\n\t\t\tstatusCode = s.statusCode || {},\n\t\t\t// Headers (they are sent all at once)\n\t\t\trequestHeaders = {},\n\t\t\trequestHeadersNames = {},\n\t\t\t// The jqXHR state\n\t\t\tstate = 0,\n\t\t\t// Default abort message\n\t\t\tstrAbort = \"canceled\",\n\t\t\t// Fake xhr\n\t\t\tjqXHR = {\n\t\t\t\treadyState: 0,\n\n\t\t\t\t// Builds headers hashtable if needed\n\t\t\t\tgetResponseHeader: function( key ) {\n\t\t\t\t\tvar match;\n\t\t\t\t\tif ( state === 2 ) {\n\t\t\t\t\t\tif ( !responseHeaders ) {\n\t\t\t\t\t\t\tresponseHeaders = {};\n\t\t\t\t\t\t\twhile ( (match = rheaders.exec( responseHeadersString )) ) {\n\t\t\t\t\t\t\t\tresponseHeaders[ match[1].toLowerCase() ] = match[ 2 ];\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\tmatch = responseHeaders[ key.toLowerCase() ];\n\t\t\t\t\t}\n\t\t\t\t\treturn match == null ? null : match;\n\t\t\t\t},\n\n\t\t\t\t// Raw string\n\t\t\t\tgetAllResponseHeaders: function() {\n\t\t\t\t\treturn state === 2 ? responseHeadersString : null;\n\t\t\t\t},\n\n\t\t\t\t// Caches the header\n\t\t\t\tsetRequestHeader: function( name, value ) {\n\t\t\t\t\tvar lname = name.toLowerCase();\n\t\t\t\t\tif ( !state ) {\n\t\t\t\t\t\tname = requestHeadersNames[ lname ] = requestHeadersNames[ lname ] || name;\n\t\t\t\t\t\trequestHeaders[ name ] = value;\n\t\t\t\t\t}\n\t\t\t\t\treturn this;\n\t\t\t\t},\n\n\t\t\t\t// Overrides response content-type header\n\t\t\t\toverrideMimeType: function( type ) {\n\t\t\t\t\tif ( !state ) {\n\t\t\t\t\t\ts.mimeType = type;\n\t\t\t\t\t}\n\t\t\t\t\treturn this;\n\t\t\t\t},\n\n\t\t\t\t// Status-dependent callbacks\n\t\t\t\tstatusCode: function( map ) {\n\t\t\t\t\tvar code;\n\t\t\t\t\tif ( map ) {\n\t\t\t\t\t\tif ( state < 2 ) {\n\t\t\t\t\t\t\tfor ( code in map ) {\n\t\t\t\t\t\t\t\t// Lazy-add the new callback in a way that preserves old ones\n\t\t\t\t\t\t\t\tstatusCode[ code ] = [ statusCode[ code ], map[ code ] ];\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t// Execute the appropriate callbacks\n\t\t\t\t\t\t\tjqXHR.always( map[ jqXHR.status ] );\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\treturn this;\n\t\t\t\t},\n\n\t\t\t\t// Cancel the request\n\t\t\t\tabort: function( statusText ) {\n\t\t\t\t\tvar finalText = statusText || strAbort;\n\t\t\t\t\tif ( transport ) {\n\t\t\t\t\t\ttransport.abort( finalText );\n\t\t\t\t\t}\n\t\t\t\t\tdone( 0, finalText );\n\t\t\t\t\treturn this;\n\t\t\t\t}\n\t\t\t};\n\n\t\t// Attach deferreds\n\t\tdeferred.promise( jqXHR ).complete = completeDeferred.add;\n\t\tjqXHR.success = jqXHR.done;\n\t\tjqXHR.error = jqXHR.fail;\n\n\t\t// Remove hash character (#7531: and string promotion)\n\t\t// Add protocol if not provided (prefilters might expect it)\n\t\t// Handle falsy url in the settings object (#10093: consistency with old signature)\n\t\t// We also use the url parameter if available\n\t\ts.url = ( ( url || s.url || ajaxLocation ) + \"\" ).replace( rhash, \"\" )\n\t\t\t.replace( rprotocol, ajaxLocParts[ 1 ] + \"//\" );\n\n\t\t// Alias method option to type as per ticket #12004\n\t\ts.type = options.method || options.type || s.method || s.type;\n\n\t\t// Extract dataTypes list\n\t\ts.dataTypes = jQuery.trim( s.dataType || \"*\" ).toLowerCase().match( rnotwhite ) || [ \"\" ];\n\n\t\t// A cross-domain request is in order when we have a protocol:host:port mismatch\n\t\tif ( s.crossDomain == null ) {\n\t\t\tparts = rurl.exec( s.url.toLowerCase() );\n\t\t\ts.crossDomain = !!( parts &&\n\t\t\t\t( parts[ 1 ] !== ajaxLocParts[ 1 ] || parts[ 2 ] !== ajaxLocParts[ 2 ] ||\n\t\t\t\t\t( parts[ 3 ] || ( parts[ 1 ] === \"http:\" ? \"80\" : \"443\" ) ) !==\n\t\t\t\t\t\t( ajaxLocParts[ 3 ] || ( ajaxLocParts[ 1 ] === \"http:\" ? \"80\" : \"443\" ) ) )\n\t\t\t);\n\t\t}\n\n\t\t// Convert data if not already a string\n\t\tif ( s.data && s.processData && typeof s.data !== \"string\" ) {\n\t\t\ts.data = jQuery.param( s.data, s.traditional );\n\t\t}\n\n\t\t// Apply prefilters\n\t\tinspectPrefiltersOrTransports( prefilters, s, options, jqXHR );\n\n\t\t// If request was aborted inside a prefilter, stop there\n\t\tif ( state === 2 ) {\n\t\t\treturn jqXHR;\n\t\t}\n\n\t\t// We can fire global events as of now if asked to\n\t\t// Don't fire events if jQuery.event is undefined in an AMD-usage scenario (#15118)\n\t\tfireGlobals = jQuery.event && s.global;\n\n\t\t// Watch for a new set of requests\n\t\tif ( fireGlobals && jQuery.active++ === 0 ) {\n\t\t\tjQuery.event.trigger(\"ajaxStart\");\n\t\t}\n\n\t\t// Uppercase the type\n\t\ts.type = s.type.toUpperCase();\n\n\t\t// Determine if request has content\n\t\ts.hasContent = !rnoContent.test( s.type );\n\n\t\t// Save the URL in case we're toying with the If-Modified-Since\n\t\t// and/or If-None-Match header later on\n\t\tcacheURL = s.url;\n\n\t\t// More options handling for requests with no content\n\t\tif ( !s.hasContent ) {\n\n\t\t\t// If data is available, append data to url\n\t\t\tif ( s.data ) {\n\t\t\t\tcacheURL = ( s.url += ( rquery.test( cacheURL ) ? \"&\" : \"?\" ) + s.data );\n\t\t\t\t// #9682: remove data so that it's not used in an eventual retry\n\t\t\t\tdelete s.data;\n\t\t\t}\n\n\t\t\t// Add anti-cache in url if needed\n\t\t\tif ( s.cache === false ) {\n\t\t\t\ts.url = rts.test( cacheURL ) ?\n\n\t\t\t\t\t// If there is already a '_' parameter, set its value\n\t\t\t\t\tcacheURL.replace( rts, \"$1_=\" + nonce++ ) :\n\n\t\t\t\t\t// Otherwise add one to the end\n\t\t\t\t\tcacheURL + ( rquery.test( cacheURL ) ? \"&\" : \"?\" ) + \"_=\" + nonce++;\n\t\t\t}\n\t\t}\n\n\t\t// Set the If-Modified-Since and/or If-None-Match header, if in ifModified mode.\n\t\tif ( s.ifModified ) {\n\t\t\tif ( jQuery.lastModified[ cacheURL ] ) {\n\t\t\t\tjqXHR.setRequestHeader( \"If-Modified-Since\", jQuery.lastModified[ cacheURL ] );\n\t\t\t}\n\t\t\tif ( jQuery.etag[ cacheURL ] ) {\n\t\t\t\tjqXHR.setRequestHeader( \"If-None-Match\", jQuery.etag[ cacheURL ] );\n\t\t\t}\n\t\t}\n\n\t\t// Set the correct header, if data is being sent\n\t\tif ( s.data && s.hasContent && s.contentType !== false || options.contentType ) {\n\t\t\tjqXHR.setRequestHeader( \"Content-Type\", s.contentType );\n\t\t}\n\n\t\t// Set the Accepts header for the server, depending on the dataType\n\t\tjqXHR.setRequestHeader(\n\t\t\t\"Accept\",\n\t\t\ts.dataTypes[ 0 ] && s.accepts[ s.dataTypes[0] ] ?\n\t\t\t\ts.accepts[ s.dataTypes[0] ] + ( s.dataTypes[ 0 ] !== \"*\" ? \", \" + allTypes + \"; q=0.01\" : \"\" ) :\n\t\t\t\ts.accepts[ \"*\" ]\n\t\t);\n\n\t\t// Check for headers option\n\t\tfor ( i in s.headers ) {\n\t\t\tjqXHR.setRequestHeader( i, s.headers[ i ] );\n\t\t}\n\n\t\t// Allow custom headers/mimetypes and early abort\n\t\tif ( s.beforeSend && ( s.beforeSend.call( callbackContext, jqXHR, s ) === false || state === 2 ) ) {\n\t\t\t// Abort if not done already and return\n\t\t\treturn jqXHR.abort();\n\t\t}\n\n\t\t// Aborting is no longer a cancellation\n\t\tstrAbort = \"abort\";\n\n\t\t// Install callbacks on deferreds\n\t\tfor ( i in { success: 1, error: 1, complete: 1 } ) {\n\t\t\tjqXHR[ i ]( s[ i ] );\n\t\t}\n\n\t\t// Get transport\n\t\ttransport = inspectPrefiltersOrTransports( transports, s, options, jqXHR );\n\n\t\t// If no transport, we auto-abort\n\t\tif ( !transport ) {\n\t\t\tdone( -1, \"No Transport\" );\n\t\t} else {\n\t\t\tjqXHR.readyState = 1;\n\n\t\t\t// Send global event\n\t\t\tif ( fireGlobals ) {\n\t\t\t\tglobalEventContext.trigger( \"ajaxSend\", [ jqXHR, s ] );\n\t\t\t}\n\t\t\t// Timeout\n\t\t\tif ( s.async && s.timeout > 0 ) {\n\t\t\t\ttimeoutTimer = setTimeout(function() {\n\t\t\t\t\tjqXHR.abort(\"timeout\");\n\t\t\t\t}, s.timeout );\n\t\t\t}\n\n\t\t\ttry {\n\t\t\t\tstate = 1;\n\t\t\t\ttransport.send( requestHeaders, done );\n\t\t\t} catch ( e ) {\n\t\t\t\t// Propagate exception as error if not done\n\t\t\t\tif ( state < 2 ) {\n\t\t\t\t\tdone( -1, e );\n\t\t\t\t// Simply rethrow otherwise\n\t\t\t\t} else {\n\t\t\t\t\tthrow e;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t// Callback for when everything is done\n\t\tfunction done( status, nativeStatusText, responses, headers ) {\n\t\t\tvar isSuccess, success, error, response, modified,\n\t\t\t\tstatusText = nativeStatusText;\n\n\t\t\t// Called once\n\t\t\tif ( state === 2 ) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// State is \"done\" now\n\t\t\tstate = 2;\n\n\t\t\t// Clear timeout if it exists\n\t\t\tif ( timeoutTimer ) {\n\t\t\t\tclearTimeout( timeoutTimer );\n\t\t\t}\n\n\t\t\t// Dereference transport for early garbage collection\n\t\t\t// (no matter how long the jqXHR object will be used)\n\t\t\ttransport = undefined;\n\n\t\t\t// Cache response headers\n\t\t\tresponseHeadersString = headers || \"\";\n\n\t\t\t// Set readyState\n\t\t\tjqXHR.readyState = status > 0 ? 4 : 0;\n\n\t\t\t// Determine if successful\n\t\t\tisSuccess = status >= 200 && status < 300 || status === 304;\n\n\t\t\t// Get response data\n\t\t\tif ( responses ) {\n\t\t\t\tresponse = ajaxHandleResponses( s, jqXHR, responses );\n\t\t\t}\n\n\t\t\t// Convert no matter what (that way responseXXX fields are always set)\n\t\t\tresponse = ajaxConvert( s, response, jqXHR, isSuccess );\n\n\t\t\t// If successful, handle type chaining\n\t\t\tif ( isSuccess ) {\n\n\t\t\t\t// Set the If-Modified-Since and/or If-None-Match header, if in ifModified mode.\n\t\t\t\tif ( s.ifModified ) {\n\t\t\t\t\tmodified = jqXHR.getResponseHeader(\"Last-Modified\");\n\t\t\t\t\tif ( modified ) {\n\t\t\t\t\t\tjQuery.lastModified[ cacheURL ] = modified;\n\t\t\t\t\t}\n\t\t\t\t\tmodified = jqXHR.getResponseHeader(\"etag\");\n\t\t\t\t\tif ( modified ) {\n\t\t\t\t\t\tjQuery.etag[ cacheURL ] = modified;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t// if no content\n\t\t\t\tif ( status === 204 || s.type === \"HEAD\" ) {\n\t\t\t\t\tstatusText = \"nocontent\";\n\n\t\t\t\t// if not modified\n\t\t\t\t} else if ( status === 304 ) {\n\t\t\t\t\tstatusText = \"notmodified\";\n\n\t\t\t\t// If we have data, let's convert it\n\t\t\t\t} else {\n\t\t\t\t\tstatusText = response.state;\n\t\t\t\t\tsuccess = response.data;\n\t\t\t\t\terror = response.error;\n\t\t\t\t\tisSuccess = !error;\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t// Extract error from statusText and normalize for non-aborts\n\t\t\t\terror = statusText;\n\t\t\t\tif ( status || !statusText ) {\n\t\t\t\t\tstatusText = \"error\";\n\t\t\t\t\tif ( status < 0 ) {\n\t\t\t\t\t\tstatus = 0;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// Set data for the fake xhr object\n\t\t\tjqXHR.status = status;\n\t\t\tjqXHR.statusText = ( nativeStatusText || statusText ) + \"\";\n\n\t\t\t// Success/Error\n\t\t\tif ( isSuccess ) {\n\t\t\t\tdeferred.resolveWith( callbackContext, [ success, statusText, jqXHR ] );\n\t\t\t} else {\n\t\t\t\tdeferred.rejectWith( callbackContext, [ jqXHR, statusText, error ] );\n\t\t\t}\n\n\t\t\t// Status-dependent callbacks\n\t\t\tjqXHR.statusCode( statusCode );\n\t\t\tstatusCode = undefined;\n\n\t\t\tif ( fireGlobals ) {\n\t\t\t\tglobalEventContext.trigger( isSuccess ? \"ajaxSuccess\" : \"ajaxError\",\n\t\t\t\t\t[ jqXHR, s, isSuccess ? success : error ] );\n\t\t\t}\n\n\t\t\t// Complete\n\t\t\tcompleteDeferred.fireWith( callbackContext, [ jqXHR, statusText ] );\n\n\t\t\tif ( fireGlobals ) {\n\t\t\t\tglobalEventContext.trigger( \"ajaxComplete\", [ jqXHR, s ] );\n\t\t\t\t// Handle the global AJAX counter\n\t\t\t\tif ( !( --jQuery.active ) ) {\n\t\t\t\t\tjQuery.event.trigger(\"ajaxStop\");\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn jqXHR;\n\t},\n\n\tgetJSON: function( url, data, callback ) {\n\t\treturn jQuery.get( url, data, callback, \"json\" );\n\t},\n\n\tgetScript: function( url, callback ) {\n\t\treturn jQuery.get( url, undefined, callback, \"script\" );\n\t}\n});\n\njQuery.each( [ \"get\", \"post\" ], function( i, method ) {\n\tjQuery[ method ] = function( url, data, callback, type ) {\n\t\t// Shift arguments if data argument was omitted\n\t\tif ( jQuery.isFunction( data ) ) {\n\t\t\ttype = type || callback;\n\t\t\tcallback = data;\n\t\t\tdata = undefined;\n\t\t}\n\n\t\treturn jQuery.ajax({\n\t\t\turl: url,\n\t\t\ttype: method,\n\t\t\tdataType: type,\n\t\t\tdata: data,\n\t\t\tsuccess: callback\n\t\t});\n\t};\n});\n\n\njQuery._evalUrl = function( url ) {\n\treturn jQuery.ajax({\n\t\turl: url,\n\t\ttype: \"GET\",\n\t\tdataType: \"script\",\n\t\tasync: false,\n\t\tglobal: false,\n\t\t\"throws\": true\n\t});\n};\n\n\njQuery.fn.extend({\n\twrapAll: function( html ) {\n\t\tvar wrap;\n\n\t\tif ( jQuery.isFunction( html ) ) {\n\t\t\treturn this.each(function( i ) {\n\t\t\t\tjQuery( this ).wrapAll( html.call(this, i) );\n\t\t\t});\n\t\t}\n\n\t\tif ( this[ 0 ] ) {\n\n\t\t\t// The elements to wrap the target around\n\t\t\twrap = jQuery( html, this[ 0 ].ownerDocument ).eq( 0 ).clone( true );\n\n\t\t\tif ( this[ 0 ].parentNode ) {\n\t\t\t\twrap.insertBefore( this[ 0 ] );\n\t\t\t}\n\n\t\t\twrap.map(function() {\n\t\t\t\tvar elem = this;\n\n\t\t\t\twhile ( elem.firstElementChild ) {\n\t\t\t\t\telem = elem.firstElementChild;\n\t\t\t\t}\n\n\t\t\t\treturn elem;\n\t\t\t}).append( this );\n\t\t}\n\n\t\treturn this;\n\t},\n\n\twrapInner: function( html ) {\n\t\tif ( jQuery.isFunction( html ) ) {\n\t\t\treturn this.each(function( i ) {\n\t\t\t\tjQuery( this ).wrapInner( html.call(this, i) );\n\t\t\t});\n\t\t}\n\n\t\treturn this.each(function() {\n\t\t\tvar self = jQuery( this ),\n\t\t\t\tcontents = self.contents();\n\n\t\t\tif ( contents.length ) {\n\t\t\t\tcontents.wrapAll( html );\n\n\t\t\t} else {\n\t\t\t\tself.append( html );\n\t\t\t}\n\t\t});\n\t},\n\n\twrap: function( html ) {\n\t\tvar isFunction = jQuery.isFunction( html );\n\n\t\treturn this.each(function( i ) {\n\t\t\tjQuery( this ).wrapAll( isFunction ? html.call(this, i) : html );\n\t\t});\n\t},\n\n\tunwrap: function() {\n\t\treturn this.parent().each(function() {\n\t\t\tif ( !jQuery.nodeName( this, \"body\" ) ) {\n\t\t\t\tjQuery( this ).replaceWith( this.childNodes );\n\t\t\t}\n\t\t}).end();\n\t}\n});\n\n\njQuery.expr.filters.hidden = function( elem ) {\n\t// Support: Opera <= 12.12\n\t// Opera reports offsetWidths and offsetHeights less than zero on some elements\n\treturn elem.offsetWidth <= 0 && elem.offsetHeight <= 0;\n};\njQuery.expr.filters.visible = function( elem ) {\n\treturn !jQuery.expr.filters.hidden( elem );\n};\n\n\n\n\nvar r20 = /%20/g,\n\trbracket = /\\[\\]$/,\n\trCRLF = /\\r?\\n/g,\n\trsubmitterTypes = /^(?:submit|button|image|reset|file)$/i,\n\trsubmittable = /^(?:input|select|textarea|keygen)/i;\n\nfunction buildParams( prefix, obj, traditional, add ) {\n\tvar name;\n\n\tif ( jQuery.isArray( obj ) ) {\n\t\t// Serialize array item.\n\t\tjQuery.each( obj, function( i, v ) {\n\t\t\tif ( traditional || rbracket.test( prefix ) ) {\n\t\t\t\t// Treat each array item as a scalar.\n\t\t\t\tadd( prefix, v );\n\n\t\t\t} else {\n\t\t\t\t// Item is non-scalar (array or object), encode its numeric index.\n\t\t\t\tbuildParams( prefix + \"[\" + ( typeof v === \"object\" ? i : \"\" ) + \"]\", v, traditional, add );\n\t\t\t}\n\t\t});\n\n\t} else if ( !traditional && jQuery.type( obj ) === \"object\" ) {\n\t\t// Serialize object item.\n\t\tfor ( name in obj ) {\n\t\t\tbuildParams( prefix + \"[\" + name + \"]\", obj[ name ], traditional, add );\n\t\t}\n\n\t} else {\n\t\t// Serialize scalar item.\n\t\tadd( prefix, obj );\n\t}\n}\n\n// Serialize an array of form elements or a set of\n// key/values into a query string\njQuery.param = function( a, traditional ) {\n\tvar prefix,\n\t\ts = [],\n\t\tadd = function( key, value ) {\n\t\t\t// If value is a function, invoke it and return its value\n\t\t\tvalue = jQuery.isFunction( value ) ? value() : ( value == null ? \"\" : value );\n\t\t\ts[ s.length ] = encodeURIComponent( key ) + \"=\" + encodeURIComponent( value );\n\t\t};\n\n\t// Set traditional to true for jQuery <= 1.3.2 behavior.\n\tif ( traditional === undefined ) {\n\t\ttraditional = jQuery.ajaxSettings && jQuery.ajaxSettings.traditional;\n\t}\n\n\t// If an array was passed in, assume that it is an array of form elements.\n\tif ( jQuery.isArray( a ) || ( a.jquery && !jQuery.isPlainObject( a ) ) ) {\n\t\t// Serialize the form elements\n\t\tjQuery.each( a, function() {\n\t\t\tadd( this.name, this.value );\n\t\t});\n\n\t} else {\n\t\t// If traditional, encode the \"old\" way (the way 1.3.2 or older\n\t\t// did it), otherwise encode params recursively.\n\t\tfor ( prefix in a ) {\n\t\t\tbuildParams( prefix, a[ prefix ], traditional, add );\n\t\t}\n\t}\n\n\t// Return the resulting serialization\n\treturn s.join( \"&\" ).replace( r20, \"+\" );\n};\n\njQuery.fn.extend({\n\tserialize: function() {\n\t\treturn jQuery.param( this.serializeArray() );\n\t},\n\tserializeArray: function() {\n\t\treturn this.map(function() {\n\t\t\t// Can add propHook for \"elements\" to filter or add form elements\n\t\t\tvar elements = jQuery.prop( this, \"elements\" );\n\t\t\treturn elements ? jQuery.makeArray( elements ) : this;\n\t\t})\n\t\t.filter(function() {\n\t\t\tvar type = this.type;\n\n\t\t\t// Use .is( \":disabled\" ) so that fieldset[disabled] works\n\t\t\treturn this.name && !jQuery( this ).is( \":disabled\" ) &&\n\t\t\t\trsubmittable.test( this.nodeName ) && !rsubmitterTypes.test( type ) &&\n\t\t\t\t( this.checked || !rcheckableType.test( type ) );\n\t\t})\n\t\t.map(function( i, elem ) {\n\t\t\tvar val = jQuery( this ).val();\n\n\t\t\treturn val == null ?\n\t\t\t\tnull :\n\t\t\t\tjQuery.isArray( val ) ?\n\t\t\t\t\tjQuery.map( val, function( val ) {\n\t\t\t\t\t\treturn { name: elem.name, value: val.replace( rCRLF, \"\\r\\n\" ) };\n\t\t\t\t\t}) :\n\t\t\t\t\t{ name: elem.name, value: val.replace( rCRLF, \"\\r\\n\" ) };\n\t\t}).get();\n\t}\n});\n\n\njQuery.ajaxSettings.xhr = function() {\n\ttry {\n\t\treturn new XMLHttpRequest();\n\t} catch( e ) {}\n};\n\nvar xhrId = 0,\n\txhrCallbacks = {},\n\txhrSuccessStatus = {\n\t\t// file protocol always yields status code 0, assume 200\n\t\t0: 200,\n\t\t// Support: IE9\n\t\t// #1450: sometimes IE returns 1223 when it should be 204\n\t\t1223: 204\n\t},\n\txhrSupported = jQuery.ajaxSettings.xhr();\n\n// Support: IE9\n// Open requests must be manually aborted on unload (#5280)\n// See https://support.microsoft.com/kb/2856746 for more info\nif ( window.attachEvent ) {\n\twindow.attachEvent( \"onunload\", function() {\n\t\tfor ( var key in xhrCallbacks ) {\n\t\t\txhrCallbacks[ key ]();\n\t\t}\n\t});\n}\n\nsupport.cors = !!xhrSupported && ( \"withCredentials\" in xhrSupported );\nsupport.ajax = xhrSupported = !!xhrSupported;\n\njQuery.ajaxTransport(function( options ) {\n\tvar callback;\n\n\t// Cross domain only allowed if supported through XMLHttpRequest\n\tif ( support.cors || xhrSupported && !options.crossDomain ) {\n\t\treturn {\n\t\t\tsend: function( headers, complete ) {\n\t\t\t\tvar i,\n\t\t\t\t\txhr = options.xhr(),\n\t\t\t\t\tid = ++xhrId;\n\n\t\t\t\txhr.open( options.type, options.url, options.async, options.username, options.password );\n\n\t\t\t\t// Apply custom fields if provided\n\t\t\t\tif ( options.xhrFields ) {\n\t\t\t\t\tfor ( i in options.xhrFields ) {\n\t\t\t\t\t\txhr[ i ] = options.xhrFields[ i ];\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\t// Override mime type if needed\n\t\t\t\tif ( options.mimeType && xhr.overrideMimeType ) {\n\t\t\t\t\txhr.overrideMimeType( options.mimeType );\n\t\t\t\t}\n\n\t\t\t\t// X-Requested-With header\n\t\t\t\t// For cross-domain requests, seeing as conditions for a preflight are\n\t\t\t\t// akin to a jigsaw puzzle, we simply never set it to be sure.\n\t\t\t\t// (it can always be set on a per-request basis or even using ajaxSetup)\n\t\t\t\t// For same-domain requests, won't change header if already provided.\n\t\t\t\tif ( !options.crossDomain && !headers[\"X-Requested-With\"] ) {\n\t\t\t\t\theaders[\"X-Requested-With\"] = \"XMLHttpRequest\";\n\t\t\t\t}\n\n\t\t\t\t// Set headers\n\t\t\t\tfor ( i in headers ) {\n\t\t\t\t\txhr.setRequestHeader( i, headers[ i ] );\n\t\t\t\t}\n\n\t\t\t\t// Callback\n\t\t\t\tcallback = function( type ) {\n\t\t\t\t\treturn function() {\n\t\t\t\t\t\tif ( callback ) {\n\t\t\t\t\t\t\tdelete xhrCallbacks[ id ];\n\t\t\t\t\t\t\tcallback = xhr.onload = xhr.onerror = null;\n\n\t\t\t\t\t\t\tif ( type === \"abort\" ) {\n\t\t\t\t\t\t\t\txhr.abort();\n\t\t\t\t\t\t\t} else if ( type === \"error\" ) {\n\t\t\t\t\t\t\t\tcomplete(\n\t\t\t\t\t\t\t\t\t// file: protocol always yields status 0; see #8605, #14207\n\t\t\t\t\t\t\t\t\txhr.status,\n\t\t\t\t\t\t\t\t\txhr.statusText\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\tcomplete(\n\t\t\t\t\t\t\t\t\txhrSuccessStatus[ xhr.status ] || xhr.status,\n\t\t\t\t\t\t\t\t\txhr.statusText,\n\t\t\t\t\t\t\t\t\t// Support: IE9\n\t\t\t\t\t\t\t\t\t// Accessing binary-data responseText throws an exception\n\t\t\t\t\t\t\t\t\t// (#11426)\n\t\t\t\t\t\t\t\t\ttypeof xhr.responseText === \"string\" ? {\n\t\t\t\t\t\t\t\t\t\ttext: xhr.responseText\n\t\t\t\t\t\t\t\t\t} : undefined,\n\t\t\t\t\t\t\t\t\txhr.getAllResponseHeaders()\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\t\t\t\t};\n\n\t\t\t\t// Listen to events\n\t\t\t\txhr.onload = callback();\n\t\t\t\txhr.onerror = callback(\"error\");\n\n\t\t\t\t// Create the abort callback\n\t\t\t\tcallback = xhrCallbacks[ id ] = callback(\"abort\");\n\n\t\t\t\ttry {\n\t\t\t\t\t// Do send the request (this may raise an exception)\n\t\t\t\t\txhr.send( options.hasContent && options.data || null );\n\t\t\t\t} catch ( e ) {\n\t\t\t\t\t// #14683: Only rethrow if this hasn't been notified as an error yet\n\t\t\t\t\tif ( callback ) {\n\t\t\t\t\t\tthrow e;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t},\n\n\t\t\tabort: function() {\n\t\t\t\tif ( callback ) {\n\t\t\t\t\tcallback();\n\t\t\t\t}\n\t\t\t}\n\t\t};\n\t}\n});\n\n\n\n\n// Install script dataType\njQuery.ajaxSetup({\n\taccepts: {\n\t\tscript: \"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript\"\n\t},\n\tcontents: {\n\t\tscript: /(?:java|ecma)script/\n\t},\n\tconverters: {\n\t\t\"text script\": function( text ) {\n\t\t\tjQuery.globalEval( text );\n\t\t\treturn text;\n\t\t}\n\t}\n});\n\n// Handle cache's special case and crossDomain\njQuery.ajaxPrefilter( \"script\", function( s ) {\n\tif ( s.cache === undefined ) {\n\t\ts.cache = false;\n\t}\n\tif ( s.crossDomain ) {\n\t\ts.type = \"GET\";\n\t}\n});\n\n// Bind script tag hack transport\njQuery.ajaxTransport( \"script\", function( s ) {\n\t// This transport only deals with cross domain requests\n\tif ( s.crossDomain ) {\n\t\tvar script, callback;\n\t\treturn {\n\t\t\tsend: function( _, complete ) {\n\t\t\t\tscript = jQuery(\"<script>\").prop({\n\t\t\t\t\tasync: true,\n\t\t\t\t\tcharset: s.scriptCharset,\n\t\t\t\t\tsrc: s.url\n\t\t\t\t}).on(\n\t\t\t\t\t\"load error\",\n\t\t\t\t\tcallback = function( evt ) {\n\t\t\t\t\t\tscript.remove();\n\t\t\t\t\t\tcallback = null;\n\t\t\t\t\t\tif ( evt ) {\n\t\t\t\t\t\t\tcomplete( evt.type === \"error\" ? 404 : 200, evt.type );\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t);\n\t\t\t\tdocument.head.appendChild( script[ 0 ] );\n\t\t\t},\n\t\t\tabort: function() {\n\t\t\t\tif ( callback ) {\n\t\t\t\t\tcallback();\n\t\t\t\t}\n\t\t\t}\n\t\t};\n\t}\n});\n\n\n\n\nvar oldCallbacks = [],\n\trjsonp = /(=)\\?(?=&|$)|\\?\\?/;\n\n// Default jsonp settings\njQuery.ajaxSetup({\n\tjsonp: \"callback\",\n\tjsonpCallback: function() {\n\t\tvar callback = oldCallbacks.pop() || ( jQuery.expando + \"_\" + ( nonce++ ) );\n\t\tthis[ callback ] = true;\n\t\treturn callback;\n\t}\n});\n\n// Detect, normalize options and install callbacks for jsonp requests\njQuery.ajaxPrefilter( \"json jsonp\", function( s, originalSettings, jqXHR ) {\n\n\tvar callbackName, overwritten, responseContainer,\n\t\tjsonProp = s.jsonp !== false && ( rjsonp.test( s.url ) ?\n\t\t\t\"url\" :\n\t\t\ttypeof s.data === \"string\" && !( s.contentType || \"\" ).indexOf(\"application/x-www-form-urlencoded\") && rjsonp.test( s.data ) && \"data\"\n\t\t);\n\n\t// Handle iff the expected data type is \"jsonp\" or we have a parameter to set\n\tif ( jsonProp || s.dataTypes[ 0 ] === \"jsonp\" ) {\n\n\t\t// Get callback name, remembering preexisting value associated with it\n\t\tcallbackName = s.jsonpCallback = jQuery.isFunction( s.jsonpCallback ) ?\n\t\t\ts.jsonpCallback() :\n\t\t\ts.jsonpCallback;\n\n\t\t// Insert callback into url or form data\n\t\tif ( jsonProp ) {\n\t\t\ts[ jsonProp ] = s[ jsonProp ].replace( rjsonp, \"$1\" + callbackName );\n\t\t} else if ( s.jsonp !== false ) {\n\t\t\ts.url += ( rquery.test( s.url ) ? \"&\" : \"?\" ) + s.jsonp + \"=\" + callbackName;\n\t\t}\n\n\t\t// Use data converter to retrieve json after script execution\n\t\ts.converters[\"script json\"] = function() {\n\t\t\tif ( !responseContainer ) {\n\t\t\t\tjQuery.error( callbackName + \" was not called\" );\n\t\t\t}\n\t\t\treturn responseContainer[ 0 ];\n\t\t};\n\n\t\t// force json dataType\n\t\ts.dataTypes[ 0 ] = \"json\";\n\n\t\t// Install callback\n\t\toverwritten = window[ callbackName ];\n\t\twindow[ callbackName ] = function() {\n\t\t\tresponseContainer = arguments;\n\t\t};\n\n\t\t// Clean-up function (fires after converters)\n\t\tjqXHR.always(function() {\n\t\t\t// Restore preexisting value\n\t\t\twindow[ callbackName ] = overwritten;\n\n\t\t\t// Save back as free\n\t\t\tif ( s[ callbackName ] ) {\n\t\t\t\t// make sure that re-using the options doesn't screw things around\n\t\t\t\ts.jsonpCallback = originalSettings.jsonpCallback;\n\n\t\t\t\t// save the callback name for future use\n\t\t\t\toldCallbacks.push( callbackName );\n\t\t\t}\n\n\t\t\t// Call if it was a function and we have a response\n\t\t\tif ( responseContainer && jQuery.isFunction( overwritten ) ) {\n\t\t\t\toverwritten( responseContainer[ 0 ] );\n\t\t\t}\n\n\t\t\tresponseContainer = overwritten = undefined;\n\t\t});\n\n\t\t// Delegate to script\n\t\treturn \"script\";\n\t}\n});\n\n\n\n\n// data: string of html\n// context (optional): If specified, the fragment will be created in this context, defaults to document\n// keepScripts (optional): If true, will include scripts passed in the html string\njQuery.parseHTML = function( data, context, keepScripts ) {\n\tif ( !data || typeof data !== \"string\" ) {\n\t\treturn null;\n\t}\n\tif ( typeof context === \"boolean\" ) {\n\t\tkeepScripts = context;\n\t\tcontext = false;\n\t}\n\tcontext = context || document;\n\n\tvar parsed = rsingleTag.exec( data ),\n\t\tscripts = !keepScripts && [];\n\n\t// Single tag\n\tif ( parsed ) {\n\t\treturn [ context.createElement( parsed[1] ) ];\n\t}\n\n\tparsed = jQuery.buildFragment( [ data ], context, scripts );\n\n\tif ( scripts && scripts.length ) {\n\t\tjQuery( scripts ).remove();\n\t}\n\n\treturn jQuery.merge( [], parsed.childNodes );\n};\n\n\n// Keep a copy of the old load method\nvar _load = jQuery.fn.load;\n\n/**\n * Load a url into a page\n */\njQuery.fn.load = function( url, params, callback ) {\n\tif ( typeof url !== \"string\" && _load ) {\n\t\treturn _load.apply( this, arguments );\n\t}\n\n\tvar selector, type, response,\n\t\tself = this,\n\t\toff = url.indexOf(\" \");\n\n\tif ( off >= 0 ) {\n\t\tselector = jQuery.trim( url.slice( off ) );\n\t\turl = url.slice( 0, off );\n\t}\n\n\t// If it's a function\n\tif ( jQuery.isFunction( params ) ) {\n\n\t\t// We assume that it's the callback\n\t\tcallback = params;\n\t\tparams = undefined;\n\n\t// Otherwise, build a param string\n\t} else if ( params && typeof params === \"object\" ) {\n\t\ttype = \"POST\";\n\t}\n\n\t// If we have elements to modify, make the request\n\tif ( self.length > 0 ) {\n\t\tjQuery.ajax({\n\t\t\turl: url,\n\n\t\t\t// if \"type\" variable is undefined, then \"GET\" method will be used\n\t\t\ttype: type,\n\t\t\tdataType: \"html\",\n\t\t\tdata: params\n\t\t}).done(function( responseText ) {\n\n\t\t\t// Save response for use in complete callback\n\t\t\tresponse = arguments;\n\n\t\t\tself.html( selector ?\n\n\t\t\t\t// If a selector was specified, locate the right elements in a dummy div\n\t\t\t\t// Exclude scripts to avoid IE 'Permission Denied' errors\n\t\t\t\tjQuery(\"<div>\").append( jQuery.parseHTML( responseText ) ).find( selector ) :\n\n\t\t\t\t// Otherwise use the full result\n\t\t\t\tresponseText );\n\n\t\t}).complete( callback && function( jqXHR, status ) {\n\t\t\tself.each( callback, response || [ jqXHR.responseText, status, jqXHR ] );\n\t\t});\n\t}\n\n\treturn this;\n};\n\n\n\n\n// Attach a bunch of functions for handling common AJAX events\njQuery.each( [ \"ajaxStart\", \"ajaxStop\", \"ajaxComplete\", \"ajaxError\", \"ajaxSuccess\", \"ajaxSend\" ], function( i, type ) {\n\tjQuery.fn[ type ] = function( fn ) {\n\t\treturn this.on( type, fn );\n\t};\n});\n\n\n\n\njQuery.expr.filters.animated = function( elem ) {\n\treturn jQuery.grep(jQuery.timers, function( fn ) {\n\t\treturn elem === fn.elem;\n\t}).length;\n};\n\n\n\n\nvar docElem = window.document.documentElement;\n\n/**\n * Gets a window from an element\n */\nfunction getWindow( elem ) {\n\treturn jQuery.isWindow( elem ) ? elem : elem.nodeType === 9 && elem.defaultView;\n}\n\njQuery.offset = {\n\tsetOffset: function( elem, options, i ) {\n\t\tvar curPosition, curLeft, curCSSTop, curTop, curOffset, curCSSLeft, calculatePosition,\n\t\t\tposition = jQuery.css( elem, \"position\" ),\n\t\t\tcurElem = jQuery( elem ),\n\t\t\tprops = {};\n\n\t\t// Set position first, in-case top/left are set even on static elem\n\t\tif ( position === \"static\" ) {\n\t\t\telem.style.position = \"relative\";\n\t\t}\n\n\t\tcurOffset = curElem.offset();\n\t\tcurCSSTop = jQuery.css( elem, \"top\" );\n\t\tcurCSSLeft = jQuery.css( elem, \"left\" );\n\t\tcalculatePosition = ( position === \"absolute\" || position === \"fixed\" ) &&\n\t\t\t( curCSSTop + curCSSLeft ).indexOf(\"auto\") > -1;\n\n\t\t// Need to be able to calculate position if either\n\t\t// top or left is auto and position is either absolute or fixed\n\t\tif ( calculatePosition ) {\n\t\t\tcurPosition = curElem.position();\n\t\t\tcurTop = curPosition.top;\n\t\t\tcurLeft = curPosition.left;\n\n\t\t} else {\n\t\t\tcurTop = parseFloat( curCSSTop ) || 0;\n\t\t\tcurLeft = parseFloat( curCSSLeft ) || 0;\n\t\t}\n\n\t\tif ( jQuery.isFunction( options ) ) {\n\t\t\toptions = options.call( elem, i, curOffset );\n\t\t}\n\n\t\tif ( options.top != null ) {\n\t\t\tprops.top = ( options.top - curOffset.top ) + curTop;\n\t\t}\n\t\tif ( options.left != null ) {\n\t\t\tprops.left = ( options.left - curOffset.left ) + curLeft;\n\t\t}\n\n\t\tif ( \"using\" in options ) {\n\t\t\toptions.using.call( elem, props );\n\n\t\t} else {\n\t\t\tcurElem.css( props );\n\t\t}\n\t}\n};\n\njQuery.fn.extend({\n\toffset: function( options ) {\n\t\tif ( arguments.length ) {\n\t\t\treturn options === undefined ?\n\t\t\t\tthis :\n\t\t\t\tthis.each(function( i ) {\n\t\t\t\t\tjQuery.offset.setOffset( this, options, i );\n\t\t\t\t});\n\t\t}\n\n\t\tvar docElem, win,\n\t\t\telem = this[ 0 ],\n\t\t\tbox = { top: 0, left: 0 },\n\t\t\tdoc = elem && elem.ownerDocument;\n\n\t\tif ( !doc ) {\n\t\t\treturn;\n\t\t}\n\n\t\tdocElem = doc.documentElement;\n\n\t\t// Make sure it's not a disconnected DOM node\n\t\tif ( !jQuery.contains( docElem, elem ) ) {\n\t\t\treturn box;\n\t\t}\n\n\t\t// Support: BlackBerry 5, iOS 3 (original iPhone)\n\t\t// If we don't have gBCR, just use 0,0 rather than error\n\t\tif ( typeof elem.getBoundingClientRect !== strundefined ) {\n\t\t\tbox = elem.getBoundingClientRect();\n\t\t}\n\t\twin = getWindow( doc );\n\t\treturn {\n\t\t\ttop: box.top + win.pageYOffset - docElem.clientTop,\n\t\t\tleft: box.left + win.pageXOffset - docElem.clientLeft\n\t\t};\n\t},\n\n\tposition: function() {\n\t\tif ( !this[ 0 ] ) {\n\t\t\treturn;\n\t\t}\n\n\t\tvar offsetParent, offset,\n\t\t\telem = this[ 0 ],\n\t\t\tparentOffset = { top: 0, left: 0 };\n\n\t\t// Fixed elements are offset from window (parentOffset = {top:0, left: 0}, because it is its only offset parent\n\t\tif ( jQuery.css( elem, \"position\" ) === \"fixed\" ) {\n\t\t\t// Assume getBoundingClientRect is there when computed position is fixed\n\t\t\toffset = elem.getBoundingClientRect();\n\n\t\t} else {\n\t\t\t// Get *real* offsetParent\n\t\t\toffsetParent = this.offsetParent();\n\n\t\t\t// Get correct offsets\n\t\t\toffset = this.offset();\n\t\t\tif ( !jQuery.nodeName( offsetParent[ 0 ], \"html\" ) ) {\n\t\t\t\tparentOffset = offsetParent.offset();\n\t\t\t}\n\n\t\t\t// Add offsetParent borders\n\t\t\tparentOffset.top += jQuery.css( offsetParent[ 0 ], \"borderTopWidth\", true );\n\t\t\tparentOffset.left += jQuery.css( offsetParent[ 0 ], \"borderLeftWidth\", true );\n\t\t}\n\n\t\t// Subtract parent offsets and element margins\n\t\treturn {\n\t\t\ttop: offset.top - parentOffset.top - jQuery.css( elem, \"marginTop\", true ),\n\t\t\tleft: offset.left - parentOffset.left - jQuery.css( elem, \"marginLeft\", true )\n\t\t};\n\t},\n\n\toffsetParent: function() {\n\t\treturn this.map(function() {\n\t\t\tvar offsetParent = this.offsetParent || docElem;\n\n\t\t\twhile ( offsetParent && ( !jQuery.nodeName( offsetParent, \"html\" ) && jQuery.css( offsetParent, \"position\" ) === \"static\" ) ) {\n\t\t\t\toffsetParent = offsetParent.offsetParent;\n\t\t\t}\n\n\t\t\treturn offsetParent || docElem;\n\t\t});\n\t}\n});\n\n// Create scrollLeft and scrollTop methods\njQuery.each( { scrollLeft: \"pageXOffset\", scrollTop: \"pageYOffset\" }, function( method, prop ) {\n\tvar top = \"pageYOffset\" === prop;\n\n\tjQuery.fn[ method ] = function( val ) {\n\t\treturn access( this, function( elem, method, val ) {\n\t\t\tvar win = getWindow( elem );\n\n\t\t\tif ( val === undefined ) {\n\t\t\t\treturn win ? win[ prop ] : elem[ method ];\n\t\t\t}\n\n\t\t\tif ( win ) {\n\t\t\t\twin.scrollTo(\n\t\t\t\t\t!top ? val : window.pageXOffset,\n\t\t\t\t\ttop ? val : window.pageYOffset\n\t\t\t\t);\n\n\t\t\t} else {\n\t\t\t\telem[ method ] = val;\n\t\t\t}\n\t\t}, method, val, arguments.length, null );\n\t};\n});\n\n// Support: Safari<7+, Chrome<37+\n// Add the top/left cssHooks using jQuery.fn.position\n// Webkit bug: https://bugs.webkit.org/show_bug.cgi?id=29084\n// Blink bug: https://code.google.com/p/chromium/issues/detail?id=229280\n// getComputedStyle returns percent when specified for top/left/bottom/right;\n// rather than make the css module depend on the offset module, just check for it here\njQuery.each( [ \"top\", \"left\" ], function( i, prop ) {\n\tjQuery.cssHooks[ prop ] = addGetHookIf( support.pixelPosition,\n\t\tfunction( elem, computed ) {\n\t\t\tif ( computed ) {\n\t\t\t\tcomputed = curCSS( elem, prop );\n\t\t\t\t// If curCSS returns percentage, fallback to offset\n\t\t\t\treturn rnumnonpx.test( computed ) ?\n\t\t\t\t\tjQuery( elem ).position()[ prop ] + \"px\" :\n\t\t\t\t\tcomputed;\n\t\t\t}\n\t\t}\n\t);\n});\n\n\n// Create innerHeight, innerWidth, height, width, outerHeight and outerWidth methods\njQuery.each( { Height: \"height\", Width: \"width\" }, function( name, type ) {\n\tjQuery.each( { padding: \"inner\" + name, content: type, \"\": \"outer\" + name }, function( defaultExtra, funcName ) {\n\t\t// Margin is only for outerHeight, outerWidth\n\t\tjQuery.fn[ funcName ] = function( margin, value ) {\n\t\t\tvar chainable = arguments.length && ( defaultExtra || typeof margin !== \"boolean\" ),\n\t\t\t\textra = defaultExtra || ( margin === true || value === true ? \"margin\" : \"border\" );\n\n\t\t\treturn access( this, function( elem, type, value ) {\n\t\t\t\tvar doc;\n\n\t\t\t\tif ( jQuery.isWindow( elem ) ) {\n\t\t\t\t\t// As of 5/8/2012 this will yield incorrect results for Mobile Safari, but there\n\t\t\t\t\t// isn't a whole lot we can do. See pull request at this URL for discussion:\n\t\t\t\t\t// https://github.com/jquery/jquery/pull/764\n\t\t\t\t\treturn elem.document.documentElement[ \"client\" + name ];\n\t\t\t\t}\n\n\t\t\t\t// Get document width or height\n\t\t\t\tif ( elem.nodeType === 9 ) {\n\t\t\t\t\tdoc = elem.documentElement;\n\n\t\t\t\t\t// Either scroll[Width/Height] or offset[Width/Height] or client[Width/Height],\n\t\t\t\t\t// whichever is greatest\n\t\t\t\t\treturn Math.max(\n\t\t\t\t\t\telem.body[ \"scroll\" + name ], doc[ \"scroll\" + name ],\n\t\t\t\t\t\telem.body[ \"offset\" + name ], doc[ \"offset\" + name ],\n\t\t\t\t\t\tdoc[ \"client\" + name ]\n\t\t\t\t\t);\n\t\t\t\t}\n\n\t\t\t\treturn value === undefined ?\n\t\t\t\t\t// Get width or height on the element, requesting but not forcing parseFloat\n\t\t\t\t\tjQuery.css( elem, type, extra ) :\n\n\t\t\t\t\t// Set width or height on the element\n\t\t\t\t\tjQuery.style( elem, type, value, extra );\n\t\t\t}, type, chainable ? margin : undefined, chainable, null );\n\t\t};\n\t});\n});\n\n\n// The number of elements contained in the matched element set\njQuery.fn.size = function() {\n\treturn this.length;\n};\n\njQuery.fn.andSelf = jQuery.fn.addBack;\n\n\n\n\n// Register as a named AMD module, since jQuery can be concatenated with other\n// files that may use define, but not via a proper concatenation script that\n// understands anonymous AMD modules. A named AMD is safest and most robust\n// way to register. Lowercase jquery is used because AMD module names are\n// derived from file names, and jQuery is normally delivered in a lowercase\n// file name. Do this after creating the global so that if an AMD module wants\n// to call noConflict to hide this version of jQuery, it will work.\n\n// Note that for maximum portability, libraries that are not jQuery should\n// declare themselves as anonymous modules, and avoid setting a global if an\n// AMD loader is present. jQuery is a special case. For more information, see\n// https://github.com/jrburke/requirejs/wiki/Updating-existing-libraries#wiki-anon\n\nif ( typeof define === \"function\" && define.amd ) {\n\tdefine( \"jquery\", [], function() {\n\t\treturn jQuery;\n\t});\n}\n\n\n\n\nvar\n\t// Map over jQuery in case of overwrite\n\t_jQuery = window.jQuery,\n\n\t// Map over the $ in case of overwrite\n\t_$ = window.$;\n\njQuery.noConflict = function( deep ) {\n\tif ( window.$ === jQuery ) {\n\t\twindow.$ = _$;\n\t}\n\n\tif ( deep && window.jQuery === jQuery ) {\n\t\twindow.jQuery = _jQuery;\n\t}\n\n\treturn jQuery;\n};\n\n// Expose jQuery and $ identifiers, even in AMD\n// (#7102#comment:10, https://github.com/jquery/jquery/pull/557)\n// and CommonJS for browser emulators (#13566)\nif ( typeof noGlobal === strundefined ) {\n\twindow.jQuery = window.$ = jQuery;\n}\n\n\n\n\nreturn jQuery;\n\n}));\n"
  },
  {
    "path": "tests/phone-format-amd.js",
    "content": "define(function(require, exports, module){\nvar COMPILED = !0, goog = goog || {};\ngoog.global = this || self;\ngoog.isDef = function(a) {\n  return void 0 !== a;\n};\ngoog.isString = function(a) {\n  return \"string\" == typeof a;\n};\ngoog.isBoolean = function(a) {\n  return \"boolean\" == typeof a;\n};\ngoog.isNumber = function(a) {\n  return \"number\" == typeof a;\n};\ngoog.exportPath_ = function(a, b, c) {\n  a = a.split(\".\");\n  c = c || goog.global;\n  a[0] in c || \"undefined\" == typeof c.execScript || c.execScript(\"var \" + a[0]);\n  for (var d; a.length && (d = a.shift());) {\n    a.length || void 0 === b ? c = c[d] && c[d] !== Object.prototype[d] ? c[d] : c[d] = {} : c[d] = b;\n  }\n};\ngoog.define = function(a, b) {\n  var c = b;\n  if (!COMPILED) {\n    var d = goog.global.CLOSURE_UNCOMPILED_DEFINES, e = goog.global.CLOSURE_DEFINES;\n    d && void 0 === d.nodeType && Object.prototype.hasOwnProperty.call(d, a) ? c = d[a] : e && void 0 === e.nodeType && Object.prototype.hasOwnProperty.call(e, a) && (c = e[a]);\n  }\n  return c;\n};\ngoog.FEATURESET_YEAR = 2012;\ngoog.DEBUG = !0;\ngoog.LOCALE = \"en\";\ngoog.TRUSTED_SITE = !0;\ngoog.STRICT_MODE_COMPATIBLE = !1;\ngoog.DISALLOW_TEST_ONLY_CODE = COMPILED && !goog.DEBUG;\ngoog.ENABLE_CHROME_APP_SAFE_SCRIPT_LOADING = !1;\ngoog.provide = function(a) {\n  if (goog.isInModuleLoader_()) {\n    throw Error(\"goog.provide cannot be used within a module.\");\n  }\n  if (!COMPILED && goog.isProvided_(a)) {\n    throw Error('Namespace \"' + a + '\" already declared.');\n  }\n  goog.constructNamespace_(a);\n};\ngoog.constructNamespace_ = function(a, b) {\n  if (!COMPILED) {\n    delete goog.implicitNamespaces_[a];\n    for (var c = a; (c = c.substring(0, c.lastIndexOf(\".\"))) && !goog.getObjectByName(c);) {\n      goog.implicitNamespaces_[c] = !0;\n    }\n  }\n  goog.exportPath_(a, b);\n};\ngoog.getScriptNonce = function(a) {\n  if (a && a != goog.global) {\n    return goog.getScriptNonce_(a.document);\n  }\n  null === goog.cspNonce_ && (goog.cspNonce_ = goog.getScriptNonce_(goog.global.document));\n  return goog.cspNonce_;\n};\ngoog.NONCE_PATTERN_ = /^[\\w+/_-]+[=]{0,2}$/;\ngoog.cspNonce_ = null;\ngoog.getScriptNonce_ = function(a) {\n  return (a = a.querySelector && a.querySelector(\"script[nonce]\")) && (a = a.nonce || a.getAttribute(\"nonce\")) && goog.NONCE_PATTERN_.test(a) ? a : \"\";\n};\ngoog.VALID_MODULE_RE_ = /^[a-zA-Z_$][a-zA-Z0-9._$]*$/;\ngoog.module = function(a) {\n  if (\"string\" !== typeof a || !a || -1 == a.search(goog.VALID_MODULE_RE_)) {\n    throw Error(\"Invalid module identifier\");\n  }\n  if (!goog.isInGoogModuleLoader_()) {\n    throw Error(\"Module \" + a + \" has been loaded incorrectly. Note, modules cannot be loaded as normal scripts. They require some kind of pre-processing step. You're likely trying to load a module via a script tag or as a part of a concatenated bundle without rewriting the module. For more info see: https://github.com/google/closure-library/wiki/goog.module:-an-ES6-module-like-alternative-to-goog.provide.\");\n  }\n  if (goog.moduleLoaderState_.moduleName) {\n    throw Error(\"goog.module may only be called once per module.\");\n  }\n  goog.moduleLoaderState_.moduleName = a;\n  if (!COMPILED) {\n    if (goog.isProvided_(a)) {\n      throw Error('Namespace \"' + a + '\" already declared.');\n    }\n    delete goog.implicitNamespaces_[a];\n  }\n};\ngoog.module.get = function(a) {\n  return goog.module.getInternal_(a);\n};\ngoog.module.getInternal_ = function(a) {\n  if (!COMPILED) {\n    if (a in goog.loadedModules_) {\n      return goog.loadedModules_[a].exports;\n    }\n    if (!goog.implicitNamespaces_[a]) {\n      return a = goog.getObjectByName(a), null != a ? a : null;\n    }\n  }\n  return null;\n};\ngoog.ModuleType = {ES6:\"es6\", GOOG:\"goog\"};\ngoog.moduleLoaderState_ = null;\ngoog.isInModuleLoader_ = function() {\n  return goog.isInGoogModuleLoader_() || goog.isInEs6ModuleLoader_();\n};\ngoog.isInGoogModuleLoader_ = function() {\n  return !!goog.moduleLoaderState_ && goog.moduleLoaderState_.type == goog.ModuleType.GOOG;\n};\ngoog.isInEs6ModuleLoader_ = function() {\n  if (goog.moduleLoaderState_ && goog.moduleLoaderState_.type == goog.ModuleType.ES6) {\n    return !0;\n  }\n  var a = goog.global.$jscomp;\n  return a ? \"function\" != typeof a.getCurrentModulePath ? !1 : !!a.getCurrentModulePath() : !1;\n};\ngoog.module.declareLegacyNamespace = function() {\n  if (!COMPILED && !goog.isInGoogModuleLoader_()) {\n    throw Error(\"goog.module.declareLegacyNamespace must be called from within a goog.module\");\n  }\n  if (!COMPILED && !goog.moduleLoaderState_.moduleName) {\n    throw Error(\"goog.module must be called prior to goog.module.declareLegacyNamespace.\");\n  }\n  goog.moduleLoaderState_.declareLegacyNamespace = !0;\n};\ngoog.declareModuleId = function(a) {\n  if (!COMPILED) {\n    if (!goog.isInEs6ModuleLoader_()) {\n      throw Error(\"goog.declareModuleId may only be called from within an ES6 module\");\n    }\n    if (goog.moduleLoaderState_ && goog.moduleLoaderState_.moduleName) {\n      throw Error(\"goog.declareModuleId may only be called once per module.\");\n    }\n    if (a in goog.loadedModules_) {\n      throw Error('Module with namespace \"' + a + '\" already exists.');\n    }\n  }\n  if (goog.moduleLoaderState_) {\n    goog.moduleLoaderState_.moduleName = a;\n  } else {\n    var b = goog.global.$jscomp;\n    if (!b || \"function\" != typeof b.getCurrentModulePath) {\n      throw Error('Module with namespace \"' + a + '\" has been loaded incorrectly.');\n    }\n    b = b.require(b.getCurrentModulePath());\n    goog.loadedModules_[a] = {exports:b, type:goog.ModuleType.ES6, moduleId:a};\n  }\n};\ngoog.setTestOnly = function(a) {\n  if (goog.DISALLOW_TEST_ONLY_CODE) {\n    throw a = a || \"\", Error(\"Importing test-only code into non-debug environment\" + (a ? \": \" + a : \".\"));\n  }\n};\ngoog.forwardDeclare = function(a) {\n};\nCOMPILED || (goog.isProvided_ = function(a) {\n  return a in goog.loadedModules_ || !goog.implicitNamespaces_[a] && null != goog.getObjectByName(a);\n}, goog.implicitNamespaces_ = {\"goog.module\":!0});\ngoog.getObjectByName = function(a, b) {\n  for (var c = a.split(\".\"), d = b || goog.global, e = 0; e < c.length; e++) {\n    if (d = d[c[e]], null == d) {\n      return null;\n    }\n  }\n  return d;\n};\ngoog.globalize = function(a, b) {\n  var c = b || goog.global, d;\n  for (d in a) {\n    c[d] = a[d];\n  }\n};\ngoog.addDependency = function(a, b, c, d) {\n  !COMPILED && goog.DEPENDENCIES_ENABLED && goog.debugLoader_.addDependency(a, b, c, d);\n};\ngoog.ENABLE_DEBUG_LOADER = !0;\ngoog.logToConsole_ = function(a) {\n  goog.global.console && goog.global.console.error(a);\n};\ngoog.require = function(a) {\n  if (!COMPILED) {\n    goog.ENABLE_DEBUG_LOADER && goog.debugLoader_.requested(a);\n    if (goog.isProvided_(a)) {\n      if (goog.isInModuleLoader_()) {\n        return goog.module.getInternal_(a);\n      }\n    } else {\n      if (goog.ENABLE_DEBUG_LOADER) {\n        var b = goog.moduleLoaderState_;\n        goog.moduleLoaderState_ = null;\n        try {\n          goog.debugLoader_.load_(a);\n        } finally {\n          goog.moduleLoaderState_ = b;\n        }\n      }\n    }\n    return null;\n  }\n};\ngoog.requireType = function(a) {\n  return {};\n};\ngoog.basePath = \"\";\ngoog.nullFunction = function() {\n};\ngoog.abstractMethod = function() {\n  throw Error(\"unimplemented abstract method\");\n};\ngoog.addSingletonGetter = function(a) {\n  a.instance_ = void 0;\n  a.getInstance = function() {\n    if (a.instance_) {\n      return a.instance_;\n    }\n    goog.DEBUG && (goog.instantiatedSingletons_[goog.instantiatedSingletons_.length] = a);\n    return a.instance_ = new a;\n  };\n};\ngoog.instantiatedSingletons_ = [];\ngoog.LOAD_MODULE_USING_EVAL = !0;\ngoog.SEAL_MODULE_EXPORTS = goog.DEBUG;\ngoog.loadedModules_ = {};\ngoog.DEPENDENCIES_ENABLED = !COMPILED && goog.ENABLE_DEBUG_LOADER;\ngoog.TRANSPILE = \"detect\";\ngoog.ASSUME_ES_MODULES_TRANSPILED = !1;\ngoog.TRANSPILE_TO_LANGUAGE = \"\";\ngoog.TRANSPILER = \"transpile.js\";\ngoog.hasBadLetScoping = null;\ngoog.useSafari10Workaround = function() {\n  if (null == goog.hasBadLetScoping) {\n    try {\n      var a = !eval('\"use strict\";let x = 1; function f() { return typeof x; };f() == \"number\";');\n    } catch (b) {\n      a = !1;\n    }\n    goog.hasBadLetScoping = a;\n  }\n  return goog.hasBadLetScoping;\n};\ngoog.workaroundSafari10EvalBug = function(a) {\n  return \"(function(){\" + a + \"\\n;})();\\n\";\n};\ngoog.loadModule = function(a) {\n  var b = goog.moduleLoaderState_;\n  try {\n    goog.moduleLoaderState_ = {moduleName:\"\", declareLegacyNamespace:!1, type:goog.ModuleType.GOOG};\n    if (goog.isFunction(a)) {\n      var c = a.call(void 0, {});\n    } else {\n      if (\"string\" === typeof a) {\n        goog.useSafari10Workaround() && (a = goog.workaroundSafari10EvalBug(a)), c = goog.loadModuleFromSource_.call(void 0, a);\n      } else {\n        throw Error(\"Invalid module definition\");\n      }\n    }\n    var d = goog.moduleLoaderState_.moduleName;\n    if (\"string\" === typeof d && d) {\n      goog.moduleLoaderState_.declareLegacyNamespace ? goog.constructNamespace_(d, c) : goog.SEAL_MODULE_EXPORTS && Object.seal && \"object\" == typeof c && null != c && Object.seal(c), goog.loadedModules_[d] = {exports:c, type:goog.ModuleType.GOOG, moduleId:goog.moduleLoaderState_.moduleName};\n    } else {\n      throw Error('Invalid module name \"' + d + '\"');\n    }\n  } finally {\n    goog.moduleLoaderState_ = b;\n  }\n};\ngoog.loadModuleFromSource_ = function(a) {\n  eval(a);\n  return {};\n};\ngoog.normalizePath_ = function(a) {\n  a = a.split(\"/\");\n  for (var b = 0; b < a.length;) {\n    \".\" == a[b] ? a.splice(b, 1) : b && \"..\" == a[b] && a[b - 1] && \"..\" != a[b - 1] ? a.splice(--b, 2) : b++;\n  }\n  return a.join(\"/\");\n};\ngoog.loadFileSync_ = function(a) {\n  if (goog.global.CLOSURE_LOAD_FILE_SYNC) {\n    return goog.global.CLOSURE_LOAD_FILE_SYNC(a);\n  }\n  try {\n    var b = new goog.global.XMLHttpRequest;\n    b.open(\"get\", a, !1);\n    b.send();\n    return 0 == b.status || 200 == b.status ? b.responseText : null;\n  } catch (c) {\n    return null;\n  }\n};\ngoog.transpile_ = function(a, b, c) {\n  var d = goog.global.$jscomp;\n  d || (goog.global.$jscomp = d = {});\n  var e = d.transpile;\n  if (!e) {\n    var f = goog.basePath + goog.TRANSPILER, g = goog.loadFileSync_(f);\n    if (g) {\n      (function() {\n        (0,eval)(g + \"\\n//# sourceURL=\" + f);\n      }).call(goog.global);\n      if (goog.global.$gwtExport && goog.global.$gwtExport.$jscomp && !goog.global.$gwtExport.$jscomp.transpile) {\n        throw Error('The transpiler did not properly export the \"transpile\" method. $gwtExport: ' + JSON.stringify(goog.global.$gwtExport));\n      }\n      goog.global.$jscomp.transpile = goog.global.$gwtExport.$jscomp.transpile;\n      d = goog.global.$jscomp;\n      e = d.transpile;\n    }\n  }\n  e || (e = d.transpile = function(a, b) {\n    goog.logToConsole_(b + \" requires transpilation but no transpiler was found.\");\n    return a;\n  });\n  return e(a, b, c);\n};\ngoog.typeOf = function(a) {\n  var b = typeof a;\n  if (\"object\" == b) {\n    if (a) {\n      if (a instanceof Array) {\n        return \"array\";\n      }\n      if (a instanceof Object) {\n        return b;\n      }\n      var c = Object.prototype.toString.call(a);\n      if (\"[object Window]\" == c) {\n        return \"object\";\n      }\n      if (\"[object Array]\" == c || \"number\" == typeof a.length && \"undefined\" != typeof a.splice && \"undefined\" != typeof a.propertyIsEnumerable && !a.propertyIsEnumerable(\"splice\")) {\n        return \"array\";\n      }\n      if (\"[object Function]\" == c || \"undefined\" != typeof a.call && \"undefined\" != typeof a.propertyIsEnumerable && !a.propertyIsEnumerable(\"call\")) {\n        return \"function\";\n      }\n    } else {\n      return \"null\";\n    }\n  } else {\n    if (\"function\" == b && \"undefined\" == typeof a.call) {\n      return \"object\";\n    }\n  }\n  return b;\n};\ngoog.isNull = function(a) {\n  return null === a;\n};\ngoog.isDefAndNotNull = function(a) {\n  return null != a;\n};\ngoog.isArray = function(a) {\n  return \"array\" == goog.typeOf(a);\n};\ngoog.isArrayLike = function(a) {\n  var b = goog.typeOf(a);\n  return \"array\" == b || \"object\" == b && \"number\" == typeof a.length;\n};\ngoog.isDateLike = function(a) {\n  return goog.isObject(a) && \"function\" == typeof a.getFullYear;\n};\ngoog.isFunction = function(a) {\n  return \"function\" == goog.typeOf(a);\n};\ngoog.isObject = function(a) {\n  var b = typeof a;\n  return \"object\" == b && null != a || \"function\" == b;\n};\ngoog.getUid = function(a) {\n  return a[goog.UID_PROPERTY_] || (a[goog.UID_PROPERTY_] = ++goog.uidCounter_);\n};\ngoog.hasUid = function(a) {\n  return !!a[goog.UID_PROPERTY_];\n};\ngoog.removeUid = function(a) {\n  null !== a && \"removeAttribute\" in a && a.removeAttribute(goog.UID_PROPERTY_);\n  try {\n    delete a[goog.UID_PROPERTY_];\n  } catch (b) {\n  }\n};\ngoog.UID_PROPERTY_ = \"closure_uid_\" + (1e9 * Math.random() >>> 0);\ngoog.uidCounter_ = 0;\ngoog.getHashCode = goog.getUid;\ngoog.removeHashCode = goog.removeUid;\ngoog.cloneObject = function(a) {\n  var b = goog.typeOf(a);\n  if (\"object\" == b || \"array\" == b) {\n    if (\"function\" === typeof a.clone) {\n      return a.clone();\n    }\n    b = \"array\" == b ? [] : {};\n    for (var c in a) {\n      b[c] = goog.cloneObject(a[c]);\n    }\n    return b;\n  }\n  return a;\n};\ngoog.bindNative_ = function(a, b, c) {\n  return a.call.apply(a.bind, arguments);\n};\ngoog.bindJs_ = function(a, b, c) {\n  if (!a) {\n    throw Error();\n  }\n  if (2 < arguments.length) {\n    var d = Array.prototype.slice.call(arguments, 2);\n    return function() {\n      var c = Array.prototype.slice.call(arguments);\n      Array.prototype.unshift.apply(c, d);\n      return a.apply(b, c);\n    };\n  }\n  return function() {\n    return a.apply(b, arguments);\n  };\n};\ngoog.bind = function(a, b, c) {\n  Function.prototype.bind && -1 != Function.prototype.bind.toString().indexOf(\"native code\") ? goog.bind = goog.bindNative_ : goog.bind = goog.bindJs_;\n  return goog.bind.apply(null, arguments);\n};\ngoog.partial = function(a, b) {\n  var c = Array.prototype.slice.call(arguments, 1);\n  return function() {\n    var b = c.slice();\n    b.push.apply(b, arguments);\n    return a.apply(this, b);\n  };\n};\ngoog.mixin = function(a, b) {\n  for (var c in b) {\n    a[c] = b[c];\n  }\n};\ngoog.now = goog.TRUSTED_SITE && Date.now || function() {\n  return +new Date;\n};\ngoog.globalEval = function(a) {\n  if (goog.global.execScript) {\n    goog.global.execScript(a, \"JavaScript\");\n  } else {\n    if (goog.global.eval) {\n      if (null == goog.evalWorksForGlobals_) {\n        try {\n          goog.global.eval(\"var _evalTest_ = 1;\");\n        } catch (d) {\n        }\n        if (\"undefined\" != typeof goog.global._evalTest_) {\n          try {\n            delete goog.global._evalTest_;\n          } catch (d) {\n          }\n          goog.evalWorksForGlobals_ = !0;\n        } else {\n          goog.evalWorksForGlobals_ = !1;\n        }\n      }\n      if (goog.evalWorksForGlobals_) {\n        goog.global.eval(a);\n      } else {\n        var b = goog.global.document, c = b.createElement(\"script\");\n        c.type = \"text/javascript\";\n        c.defer = !1;\n        c.appendChild(b.createTextNode(a));\n        b.head.appendChild(c);\n        b.head.removeChild(c);\n      }\n    } else {\n      throw Error(\"goog.globalEval not available\");\n    }\n  }\n};\ngoog.evalWorksForGlobals_ = null;\ngoog.getCssName = function(a, b) {\n  if (\".\" == String(a).charAt(0)) {\n    throw Error('className passed in goog.getCssName must not start with \".\". You passed: ' + a);\n  }\n  var c = function(a) {\n    return goog.cssNameMapping_[a] || a;\n  }, d = function(a) {\n    a = a.split(\"-\");\n    for (var b = [], d = 0; d < a.length; d++) {\n      b.push(c(a[d]));\n    }\n    return b.join(\"-\");\n  };\n  d = goog.cssNameMapping_ ? \"BY_WHOLE\" == goog.cssNameMappingStyle_ ? c : d : function(a) {\n    return a;\n  };\n  d = b ? a + \"-\" + d(b) : d(a);\n  return goog.global.CLOSURE_CSS_NAME_MAP_FN ? goog.global.CLOSURE_CSS_NAME_MAP_FN(d) : d;\n};\ngoog.setCssNameMapping = function(a, b) {\n  goog.cssNameMapping_ = a;\n  goog.cssNameMappingStyle_ = b;\n};\n!COMPILED && goog.global.CLOSURE_CSS_NAME_MAPPING && (goog.cssNameMapping_ = goog.global.CLOSURE_CSS_NAME_MAPPING);\ngoog.getMsg = function(a, b, c) {\n  c && c.html && (a = a.replace(/</g, \"&lt;\"));\n  b && (a = a.replace(/\\{\\$([^}]+)}/g, function(a, c) {\n    return null != b && c in b ? b[c] : a;\n  }));\n  return a;\n};\ngoog.getMsgWithFallback = function(a, b) {\n  return a;\n};\ngoog.exportSymbol = function(a, b, c) {\n  goog.exportPath_(a, b, c);\n};\ngoog.exportProperty = function(a, b, c) {\n  a[b] = c;\n};\ngoog.inherits = function(a, b) {\n  function c() {\n  }\n  c.prototype = b.prototype;\n  a.superClass_ = b.prototype;\n  a.prototype = new c;\n  a.prototype.constructor = a;\n  a.base = function(a, c, f) {\n    for (var d = Array(arguments.length - 2), e = 2; e < arguments.length; e++) {\n      d[e - 2] = arguments[e];\n    }\n    return b.prototype[c].apply(a, d);\n  };\n};\ngoog.base = function(a, b, c) {\n  var d = arguments.callee.caller;\n  if (goog.STRICT_MODE_COMPATIBLE || goog.DEBUG && !d) {\n    throw Error(\"arguments.caller not defined.  goog.base() cannot be used with strict mode code. See http://www.ecma-international.org/ecma-262/5.1/#sec-C\");\n  }\n  if (\"undefined\" !== typeof d.superClass_) {\n    for (var e = Array(arguments.length - 1), f = 1; f < arguments.length; f++) {\n      e[f - 1] = arguments[f];\n    }\n    return d.superClass_.constructor.apply(a, e);\n  }\n  if (\"string\" != typeof b && \"symbol\" != typeof b) {\n    throw Error(\"method names provided to goog.base must be a string or a symbol\");\n  }\n  e = Array(arguments.length - 2);\n  for (f = 2; f < arguments.length; f++) {\n    e[f - 2] = arguments[f];\n  }\n  f = !1;\n  for (var g = a.constructor.prototype; g; g = Object.getPrototypeOf(g)) {\n    if (g[b] === d) {\n      f = !0;\n    } else {\n      if (f) {\n        return g[b].apply(a, e);\n      }\n    }\n  }\n  if (a[b] === d) {\n    return a.constructor.prototype[b].apply(a, e);\n  }\n  throw Error(\"goog.base called from a method of one name to a method of a different name\");\n};\ngoog.scope = function(a) {\n  if (goog.isInModuleLoader_()) {\n    throw Error(\"goog.scope is not supported within a module.\");\n  }\n  a.call(goog.global);\n};\nCOMPILED || (goog.global.COMPILED = COMPILED);\ngoog.defineClass = function(a, b) {\n  var c = b.constructor, d = b.statics;\n  c && c != Object.prototype.constructor || (c = function() {\n    throw Error(\"cannot instantiate an interface (no constructor defined).\");\n  });\n  c = goog.defineClass.createSealingConstructor_(c, a);\n  a && goog.inherits(c, a);\n  delete b.constructor;\n  delete b.statics;\n  goog.defineClass.applyProperties_(c.prototype, b);\n  null != d && (d instanceof Function ? d(c) : goog.defineClass.applyProperties_(c, d));\n  return c;\n};\ngoog.defineClass.SEAL_CLASS_INSTANCES = goog.DEBUG;\ngoog.defineClass.createSealingConstructor_ = function(a, b) {\n  if (!goog.defineClass.SEAL_CLASS_INSTANCES) {\n    return a;\n  }\n  var c = !goog.defineClass.isUnsealable_(b), d = function() {\n    var b = a.apply(this, arguments) || this;\n    b[goog.UID_PROPERTY_] = b[goog.UID_PROPERTY_];\n    this.constructor === d && c && Object.seal instanceof Function && Object.seal(b);\n    return b;\n  };\n  return d;\n};\ngoog.defineClass.isUnsealable_ = function(a) {\n  return a && a.prototype && a.prototype[goog.UNSEALABLE_CONSTRUCTOR_PROPERTY_];\n};\ngoog.defineClass.OBJECT_PROTOTYPE_FIELDS_ = \"constructor hasOwnProperty isPrototypeOf propertyIsEnumerable toLocaleString toString valueOf\".split(\" \");\ngoog.defineClass.applyProperties_ = function(a, b) {\n  for (var c in b) {\n    Object.prototype.hasOwnProperty.call(b, c) && (a[c] = b[c]);\n  }\n  for (var d = 0; d < goog.defineClass.OBJECT_PROTOTYPE_FIELDS_.length; d++) {\n    c = goog.defineClass.OBJECT_PROTOTYPE_FIELDS_[d], Object.prototype.hasOwnProperty.call(b, c) && (a[c] = b[c]);\n  }\n};\ngoog.tagUnsealableClass = function(a) {\n  !COMPILED && goog.defineClass.SEAL_CLASS_INSTANCES && (a.prototype[goog.UNSEALABLE_CONSTRUCTOR_PROPERTY_] = !0);\n};\ngoog.UNSEALABLE_CONSTRUCTOR_PROPERTY_ = \"goog_defineClass_legacy_unsealable\";\n!COMPILED && goog.DEPENDENCIES_ENABLED && (goog.inHtmlDocument_ = function() {\n  var a = goog.global.document;\n  return null != a && \"write\" in a;\n}, goog.isDocumentLoading_ = function() {\n  var a = goog.global.document;\n  return a.attachEvent ? \"complete\" != a.readyState : \"loading\" == a.readyState;\n}, goog.findBasePath_ = function() {\n  if (void 0 != goog.global.CLOSURE_BASE_PATH && \"string\" === typeof goog.global.CLOSURE_BASE_PATH) {\n    goog.basePath = goog.global.CLOSURE_BASE_PATH;\n  } else {\n    if (goog.inHtmlDocument_()) {\n      var a = goog.global.document, b = a.currentScript;\n      a = b ? [b] : a.getElementsByTagName(\"SCRIPT\");\n      for (b = a.length - 1; 0 <= b; --b) {\n        var c = a[b].src, d = c.lastIndexOf(\"?\");\n        d = -1 == d ? c.length : d;\n        if (\"base.js\" == c.substr(d - 7, 7)) {\n          goog.basePath = c.substr(0, d - 7);\n          break;\n        }\n      }\n    }\n  }\n}, goog.findBasePath_(), goog.Transpiler = function() {\n  this.requiresTranspilation_ = null;\n  this.transpilationTarget_ = goog.TRANSPILE_TO_LANGUAGE;\n}, goog.Transpiler.prototype.createRequiresTranspilation_ = function() {\n  function a(a, b) {\n    e ? d[a] = !0 : b() ? (c = a, d[a] = !1) : e = d[a] = !0;\n  }\n  function b(a) {\n    try {\n      return !!eval(a);\n    } catch (h) {\n      return !1;\n    }\n  }\n  var c = \"es3\", d = {es3:!1}, e = !1, f = goog.global.navigator && goog.global.navigator.userAgent ? goog.global.navigator.userAgent : \"\";\n  a(\"es5\", function() {\n    return b(\"[1,].length==1\");\n  });\n  a(\"es6\", function() {\n    return f.match(/Edge\\/(\\d+)(\\.\\d)*/i) ? !1 : b('(()=>{\"use strict\";class X{constructor(){if(new.target!=String)throw 1;this.x=42}}let q=Reflect.construct(X,[],String);if(q.x!=42||!(q instanceof String))throw 1;for(const a of[2,3]){if(a==2)continue;function f(z={a}){let a=0;return z.a}{function f(){return 0;}}return f()==3}})()');\n  });\n  a(\"es7\", function() {\n    return b(\"2 ** 2 == 4\");\n  });\n  a(\"es8\", function() {\n    return b(\"async () => 1, true\");\n  });\n  a(\"es9\", function() {\n    return b(\"({...rest} = {}), true\");\n  });\n  a(\"es_next\", function() {\n    return !1;\n  });\n  return {target:c, map:d};\n}, goog.Transpiler.prototype.needsTranspile = function(a, b) {\n  if (\"always\" == goog.TRANSPILE) {\n    return !0;\n  }\n  if (\"never\" == goog.TRANSPILE) {\n    return !1;\n  }\n  if (!this.requiresTranspilation_) {\n    var c = this.createRequiresTranspilation_();\n    this.requiresTranspilation_ = c.map;\n    this.transpilationTarget_ = this.transpilationTarget_ || c.target;\n  }\n  if (a in this.requiresTranspilation_) {\n    return this.requiresTranspilation_[a] ? !0 : !goog.inHtmlDocument_() || \"es6\" != b || \"noModule\" in goog.global.document.createElement(\"script\") ? !1 : !0;\n  }\n  throw Error(\"Unknown language mode: \" + a);\n}, goog.Transpiler.prototype.transpile = function(a, b) {\n  return goog.transpile_(a, b, this.transpilationTarget_);\n}, goog.transpiler_ = new goog.Transpiler, goog.protectScriptTag_ = function(a) {\n  return a.replace(/<\\/(SCRIPT)/ig, \"\\\\x3c/$1\");\n}, goog.DebugLoader_ = function() {\n  this.dependencies_ = {};\n  this.idToPath_ = {};\n  this.written_ = {};\n  this.loadingDeps_ = [];\n  this.depsToLoad_ = [];\n  this.paused_ = !1;\n  this.factory_ = new goog.DependencyFactory(goog.transpiler_);\n  this.deferredCallbacks_ = {};\n  this.deferredQueue_ = [];\n}, goog.DebugLoader_.prototype.bootstrap = function(a, b) {\n  function c() {\n    d && (goog.global.setTimeout(d, 0), d = null);\n  }\n  var d = b;\n  if (a.length) {\n    for (var e = [], f = 0; f < a.length; f++) {\n      var g = this.getPathFromDeps_(a[f]);\n      if (!g) {\n        throw Error(\"Unregonized namespace: \" + a[f]);\n      }\n      e.push(this.dependencies_[g]);\n    }\n    g = goog.require;\n    var h = 0;\n    for (f = 0; f < a.length; f++) {\n      g(a[f]), e[f].onLoad(function() {\n        ++h == a.length && c();\n      });\n    }\n  } else {\n    c();\n  }\n}, goog.DebugLoader_.prototype.loadClosureDeps = function() {\n  this.depsToLoad_.push(this.factory_.createDependency(goog.normalizePath_(goog.basePath + \"deps.js\"), \"deps.js\", [], [], {}, !1));\n  this.loadDeps_();\n}, goog.DebugLoader_.prototype.requested = function(a, b) {\n  var c = this.getPathFromDeps_(a);\n  if (c && (b || this.areDepsLoaded_(this.dependencies_[c].requires))) {\n    var d = this.deferredCallbacks_[c];\n    d && (delete this.deferredCallbacks_[c], d());\n  }\n}, goog.DebugLoader_.prototype.setDependencyFactory = function(a) {\n  this.factory_ = a;\n}, goog.DebugLoader_.prototype.load_ = function(a) {\n  if (this.getPathFromDeps_(a)) {\n    var b = this, c = [], d = function(a) {\n      var e = b.getPathFromDeps_(a);\n      if (!e) {\n        throw Error(\"Bad dependency path or symbol: \" + a);\n      }\n      if (!b.written_[e]) {\n        b.written_[e] = !0;\n        a = b.dependencies_[e];\n        for (e = 0; e < a.requires.length; e++) {\n          goog.isProvided_(a.requires[e]) || d(a.requires[e]);\n        }\n        c.push(a);\n      }\n    };\n    d(a);\n    a = !!this.depsToLoad_.length;\n    this.depsToLoad_ = this.depsToLoad_.concat(c);\n    this.paused_ || a || this.loadDeps_();\n  } else {\n    throw a = \"goog.require could not find: \" + a, goog.logToConsole_(a), Error(a);\n  }\n}, goog.DebugLoader_.prototype.loadDeps_ = function() {\n  for (var a = this, b = this.paused_; this.depsToLoad_.length && !b;) {\n    (function() {\n      var c = !1, d = a.depsToLoad_.shift(), e = !1;\n      a.loading_(d);\n      var f = {pause:function() {\n        if (c) {\n          throw Error(\"Cannot call pause after the call to load.\");\n        }\n        b = !0;\n      }, resume:function() {\n        c ? a.resume_() : b = !1;\n      }, loaded:function() {\n        if (e) {\n          throw Error(\"Double call to loaded.\");\n        }\n        e = !0;\n        a.loaded_(d);\n      }, pending:function() {\n        for (var b = [], c = 0; c < a.loadingDeps_.length; c++) {\n          b.push(a.loadingDeps_[c]);\n        }\n        return b;\n      }, setModuleState:function(a) {\n        goog.moduleLoaderState_ = {type:a, moduleName:\"\", declareLegacyNamespace:!1};\n      }, registerEs6ModuleExports:function(a, b, c) {\n        c && (goog.loadedModules_[c] = {exports:b, type:goog.ModuleType.ES6, moduleId:c || \"\"});\n      }, registerGoogModuleExports:function(a, b) {\n        goog.loadedModules_[a] = {exports:b, type:goog.ModuleType.GOOG, moduleId:a};\n      }, clearModuleState:function() {\n        goog.moduleLoaderState_ = null;\n      }, defer:function(b) {\n        if (c) {\n          throw Error(\"Cannot register with defer after the call to load.\");\n        }\n        a.defer_(d, b);\n      }, areDepsLoaded:function() {\n        return a.areDepsLoaded_(d.requires);\n      }};\n      try {\n        d.load(f);\n      } finally {\n        c = !0;\n      }\n    })();\n  }\n  b && this.pause_();\n}, goog.DebugLoader_.prototype.pause_ = function() {\n  this.paused_ = !0;\n}, goog.DebugLoader_.prototype.resume_ = function() {\n  this.paused_ && (this.paused_ = !1, this.loadDeps_());\n}, goog.DebugLoader_.prototype.loading_ = function(a) {\n  this.loadingDeps_.push(a);\n}, goog.DebugLoader_.prototype.loaded_ = function(a) {\n  for (var b = 0; b < this.loadingDeps_.length; b++) {\n    if (this.loadingDeps_[b] == a) {\n      this.loadingDeps_.splice(b, 1);\n      break;\n    }\n  }\n  for (b = 0; b < this.deferredQueue_.length; b++) {\n    if (this.deferredQueue_[b] == a.path) {\n      this.deferredQueue_.splice(b, 1);\n      break;\n    }\n  }\n  if (this.loadingDeps_.length == this.deferredQueue_.length && !this.depsToLoad_.length) {\n    for (; this.deferredQueue_.length;) {\n      this.requested(this.deferredQueue_.shift(), !0);\n    }\n  }\n  a.loaded();\n}, goog.DebugLoader_.prototype.areDepsLoaded_ = function(a) {\n  for (var b = 0; b < a.length; b++) {\n    var c = this.getPathFromDeps_(a[b]);\n    if (!c || !(c in this.deferredCallbacks_ || goog.isProvided_(a[b]))) {\n      return !1;\n    }\n  }\n  return !0;\n}, goog.DebugLoader_.prototype.getPathFromDeps_ = function(a) {\n  return a in this.idToPath_ ? this.idToPath_[a] : a in this.dependencies_ ? a : null;\n}, goog.DebugLoader_.prototype.defer_ = function(a, b) {\n  this.deferredCallbacks_[a.path] = b;\n  this.deferredQueue_.push(a.path);\n}, goog.LoadController = function() {\n}, goog.LoadController.prototype.pause = function() {\n}, goog.LoadController.prototype.resume = function() {\n}, goog.LoadController.prototype.loaded = function() {\n}, goog.LoadController.prototype.pending = function() {\n}, goog.LoadController.prototype.registerEs6ModuleExports = function(a, b, c) {\n}, goog.LoadController.prototype.setModuleState = function(a) {\n}, goog.LoadController.prototype.clearModuleState = function() {\n}, goog.LoadController.prototype.defer = function(a) {\n}, goog.LoadController.prototype.areDepsLoaded = function() {\n}, goog.Dependency = function(a, b, c, d, e) {\n  this.path = a;\n  this.relativePath = b;\n  this.provides = c;\n  this.requires = d;\n  this.loadFlags = e;\n  this.loaded_ = !1;\n  this.loadCallbacks_ = [];\n}, goog.Dependency.prototype.getPathName = function() {\n  var a = this.path, b = a.indexOf(\"://\");\n  0 <= b && (a = a.substring(b + 3), b = a.indexOf(\"/\"), 0 <= b && (a = a.substring(b + 1)));\n  return a;\n}, goog.Dependency.prototype.onLoad = function(a) {\n  this.loaded_ ? a() : this.loadCallbacks_.push(a);\n}, goog.Dependency.prototype.loaded = function() {\n  this.loaded_ = !0;\n  var a = this.loadCallbacks_;\n  this.loadCallbacks_ = [];\n  for (var b = 0; b < a.length; b++) {\n    a[b]();\n  }\n}, goog.Dependency.defer_ = !1, goog.Dependency.callbackMap_ = {}, goog.Dependency.registerCallback_ = function(a) {\n  var b = Math.random().toString(32);\n  goog.Dependency.callbackMap_[b] = a;\n  return b;\n}, goog.Dependency.unregisterCallback_ = function(a) {\n  delete goog.Dependency.callbackMap_[a];\n}, goog.Dependency.callback_ = function(a, b) {\n  if (a in goog.Dependency.callbackMap_) {\n    for (var c = goog.Dependency.callbackMap_[a], d = [], e = 1; e < arguments.length; e++) {\n      d.push(arguments[e]);\n    }\n    c.apply(void 0, d);\n  } else {\n    throw Error(\"Callback key \" + a + \" does not exist (was base.js loaded more than once?).\");\n  }\n}, goog.Dependency.prototype.load = function(a) {\n  if (goog.global.CLOSURE_IMPORT_SCRIPT) {\n    goog.global.CLOSURE_IMPORT_SCRIPT(this.path) ? a.loaded() : a.pause();\n  } else {\n    if (goog.inHtmlDocument_()) {\n      var b = goog.global.document;\n      if (\"complete\" == b.readyState && !goog.ENABLE_CHROME_APP_SAFE_SCRIPT_LOADING) {\n        if (/\\bdeps.js$/.test(this.path)) {\n          a.loaded();\n          return;\n        }\n        throw Error('Cannot write \"' + this.path + '\" after document load');\n      }\n      if (!goog.ENABLE_CHROME_APP_SAFE_SCRIPT_LOADING && goog.isDocumentLoading_()) {\n        var c = goog.Dependency.registerCallback_(function(b) {\n          goog.DebugLoader_.IS_OLD_IE_ && \"complete\" != b.readyState || (goog.Dependency.unregisterCallback_(c), a.loaded());\n        }), d = !goog.DebugLoader_.IS_OLD_IE_ && goog.getScriptNonce() ? ' nonce=\"' + goog.getScriptNonce() + '\"' : \"\";\n        d = '<script src=\"' + this.path + '\" ' + (goog.DebugLoader_.IS_OLD_IE_ ? \"onreadystatechange\" : \"onload\") + \"=\\\"goog.Dependency.callback_('\" + c + '\\', this)\" type=\"text/javascript\" ' + (goog.Dependency.defer_ ? \"defer\" : \"\") + d + \">\\x3c/script>\";\n        b.write(goog.TRUSTED_TYPES_POLICY_ ? goog.TRUSTED_TYPES_POLICY_.createHTML(d) : d);\n      } else {\n        var e = b.createElement(\"script\");\n        e.defer = goog.Dependency.defer_;\n        e.async = !1;\n        e.type = \"text/javascript\";\n        (d = goog.getScriptNonce()) && e.setAttribute(\"nonce\", d);\n        goog.DebugLoader_.IS_OLD_IE_ ? (a.pause(), e.onreadystatechange = function() {\n          if (\"loaded\" == e.readyState || \"complete\" == e.readyState) {\n            a.loaded(), a.resume();\n          }\n        }) : e.onload = function() {\n          e.onload = null;\n          a.loaded();\n        };\n        e.src = goog.TRUSTED_TYPES_POLICY_ ? goog.TRUSTED_TYPES_POLICY_.createScriptURL(this.path) : this.path;\n        b.head.appendChild(e);\n      }\n    } else {\n      goog.logToConsole_(\"Cannot use default debug loader outside of HTML documents.\"), \"deps.js\" == this.relativePath ? (goog.logToConsole_(\"Consider setting CLOSURE_IMPORT_SCRIPT before loading base.js, or setting CLOSURE_NO_DEPS to true.\"), a.loaded()) : a.pause();\n    }\n  }\n}, goog.Es6ModuleDependency = function(a, b, c, d, e) {\n  goog.Dependency.call(this, a, b, c, d, e);\n}, goog.inherits(goog.Es6ModuleDependency, goog.Dependency), goog.Es6ModuleDependency.prototype.load = function(a) {\n  function b(a, b) {\n    var c = b ? '<script type=\"module\" crossorigin>' + b + \"\\x3c/script>\" : '<script type=\"module\" crossorigin src=\"' + a + '\">\\x3c/script>';\n    d.write(goog.TRUSTED_TYPES_POLICY_ ? goog.TRUSTED_TYPES_POLICY_.createHTML(c) : c);\n  }\n  function c(a, b) {\n    var c = d.createElement(\"script\");\n    c.defer = !0;\n    c.async = !1;\n    c.type = \"module\";\n    c.setAttribute(\"crossorigin\", !0);\n    var e = goog.getScriptNonce();\n    e && c.setAttribute(\"nonce\", e);\n    b ? c.textContent = goog.TRUSTED_TYPES_POLICY_ ? goog.TRUSTED_TYPES_POLICY_.createScript(b) : b : c.src = goog.TRUSTED_TYPES_POLICY_ ? goog.TRUSTED_TYPES_POLICY_.createScriptURL(a) : a;\n    d.head.appendChild(c);\n  }\n  if (goog.global.CLOSURE_IMPORT_SCRIPT) {\n    goog.global.CLOSURE_IMPORT_SCRIPT(this.path) ? a.loaded() : a.pause();\n  } else {\n    if (goog.inHtmlDocument_()) {\n      var d = goog.global.document, e = this;\n      if (goog.isDocumentLoading_()) {\n        var f = b;\n        goog.Dependency.defer_ = !0;\n      } else {\n        f = c;\n      }\n      var g = goog.Dependency.registerCallback_(function() {\n        goog.Dependency.unregisterCallback_(g);\n        a.setModuleState(goog.ModuleType.ES6);\n      });\n      f(void 0, 'goog.Dependency.callback_(\"' + g + '\")');\n      f(this.path, void 0);\n      var h = goog.Dependency.registerCallback_(function(b) {\n        goog.Dependency.unregisterCallback_(h);\n        a.registerEs6ModuleExports(e.path, b, goog.moduleLoaderState_.moduleName);\n      });\n      f(void 0, 'import * as m from \"' + this.path + '\"; goog.Dependency.callback_(\"' + h + '\", m)');\n      var k = goog.Dependency.registerCallback_(function() {\n        goog.Dependency.unregisterCallback_(k);\n        a.clearModuleState();\n        a.loaded();\n      });\n      f(void 0, 'goog.Dependency.callback_(\"' + k + '\")');\n    } else {\n      goog.logToConsole_(\"Cannot use default debug loader outside of HTML documents.\"), a.pause();\n    }\n  }\n}, goog.TransformedDependency = function(a, b, c, d, e) {\n  goog.Dependency.call(this, a, b, c, d, e);\n  this.contents_ = null;\n  this.lazyFetch_ = !goog.inHtmlDocument_() || !(\"noModule\" in goog.global.document.createElement(\"script\"));\n}, goog.inherits(goog.TransformedDependency, goog.Dependency), goog.TransformedDependency.prototype.load = function(a) {\n  function b() {\n    e.contents_ = goog.loadFileSync_(e.path);\n    e.contents_ && (e.contents_ = e.transform(e.contents_), e.contents_ && (e.contents_ += \"\\n//# sourceURL=\" + e.path));\n  }\n  function c() {\n    e.lazyFetch_ && b();\n    if (e.contents_) {\n      f && a.setModuleState(goog.ModuleType.ES6);\n      try {\n        var c = e.contents_;\n        e.contents_ = null;\n        goog.globalEval(c);\n        if (f) {\n          var d = goog.moduleLoaderState_.moduleName;\n        }\n      } finally {\n        f && a.clearModuleState();\n      }\n      f && goog.global.$jscomp.require.ensure([e.getPathName()], function() {\n        a.registerEs6ModuleExports(e.path, goog.global.$jscomp.require(e.getPathName()), d);\n      });\n      a.loaded();\n    }\n  }\n  function d() {\n    var a = goog.global.document, b = goog.Dependency.registerCallback_(function() {\n      goog.Dependency.unregisterCallback_(b);\n      c();\n    }), d = '<script type=\"text/javascript\">' + goog.protectScriptTag_('goog.Dependency.callback_(\"' + b + '\");') + \"\\x3c/script>\";\n    a.write(goog.TRUSTED_TYPES_POLICY_ ? goog.TRUSTED_TYPES_POLICY_.createHTML(d) : d);\n  }\n  var e = this;\n  if (goog.global.CLOSURE_IMPORT_SCRIPT) {\n    b(), this.contents_ && goog.global.CLOSURE_IMPORT_SCRIPT(\"\", this.contents_) ? (this.contents_ = null, a.loaded()) : a.pause();\n  } else {\n    var f = this.loadFlags.module == goog.ModuleType.ES6;\n    this.lazyFetch_ || b();\n    var g = 1 < a.pending().length, h = g && goog.DebugLoader_.IS_OLD_IE_;\n    g = goog.Dependency.defer_ && (g || goog.isDocumentLoading_());\n    if (h || g) {\n      a.defer(function() {\n        c();\n      });\n    } else {\n      var k = goog.global.document;\n      h = goog.inHtmlDocument_() && \"ActiveXObject\" in goog.global;\n      if (f && goog.inHtmlDocument_() && goog.isDocumentLoading_() && !h) {\n        goog.Dependency.defer_ = !0;\n        a.pause();\n        var l = k.onreadystatechange;\n        k.onreadystatechange = function() {\n          \"interactive\" == k.readyState && (k.onreadystatechange = l, c(), a.resume());\n          goog.isFunction(l) && l.apply(void 0, arguments);\n        };\n      } else {\n        !goog.DebugLoader_.IS_OLD_IE_ && goog.inHtmlDocument_() && goog.isDocumentLoading_() ? d() : c();\n      }\n    }\n  }\n}, goog.TransformedDependency.prototype.transform = function(a) {\n}, goog.TranspiledDependency = function(a, b, c, d, e, f) {\n  goog.TransformedDependency.call(this, a, b, c, d, e);\n  this.transpiler = f;\n}, goog.inherits(goog.TranspiledDependency, goog.TransformedDependency), goog.TranspiledDependency.prototype.transform = function(a) {\n  return this.transpiler.transpile(a, this.getPathName());\n}, goog.PreTranspiledEs6ModuleDependency = function(a, b, c, d, e) {\n  goog.TransformedDependency.call(this, a, b, c, d, e);\n}, goog.inherits(goog.PreTranspiledEs6ModuleDependency, goog.TransformedDependency), goog.PreTranspiledEs6ModuleDependency.prototype.transform = function(a) {\n  return a;\n}, goog.GoogModuleDependency = function(a, b, c, d, e, f, g) {\n  goog.TransformedDependency.call(this, a, b, c, d, e);\n  this.needsTranspile_ = f;\n  this.transpiler_ = g;\n}, goog.inherits(goog.GoogModuleDependency, goog.TransformedDependency), goog.GoogModuleDependency.prototype.transform = function(a) {\n  this.needsTranspile_ && (a = this.transpiler_.transpile(a, this.getPathName()));\n  return goog.LOAD_MODULE_USING_EVAL && void 0 !== goog.global.JSON ? \"goog.loadModule(\" + goog.global.JSON.stringify(a + \"\\n//# sourceURL=\" + this.path + \"\\n\") + \");\" : 'goog.loadModule(function(exports) {\"use strict\";' + a + \"\\n;return exports});\\n//# sourceURL=\" + this.path + \"\\n\";\n}, goog.DebugLoader_.IS_OLD_IE_ = !(goog.global.atob || !goog.global.document || !goog.global.document.all), goog.DebugLoader_.prototype.addDependency = function(a, b, c, d) {\n  b = b || [];\n  a = a.replace(/\\\\/g, \"/\");\n  var e = goog.normalizePath_(goog.basePath + a);\n  d && \"boolean\" !== typeof d || (d = d ? {module:goog.ModuleType.GOOG} : {});\n  c = this.factory_.createDependency(e, a, b, c, d, goog.transpiler_.needsTranspile(d.lang || \"es3\", d.module));\n  this.dependencies_[e] = c;\n  for (c = 0; c < b.length; c++) {\n    this.idToPath_[b[c]] = e;\n  }\n  this.idToPath_[a] = e;\n}, goog.DependencyFactory = function(a) {\n  this.transpiler = a;\n}, goog.DependencyFactory.prototype.createDependency = function(a, b, c, d, e, f) {\n  return e.module == goog.ModuleType.GOOG ? new goog.GoogModuleDependency(a, b, c, d, e, f, this.transpiler) : f ? new goog.TranspiledDependency(a, b, c, d, e, this.transpiler) : e.module == goog.ModuleType.ES6 ? \"never\" == goog.TRANSPILE && goog.ASSUME_ES_MODULES_TRANSPILED ? new goog.PreTranspiledEs6ModuleDependency(a, b, c, d, e) : new goog.Es6ModuleDependency(a, b, c, d, e) : new goog.Dependency(a, b, c, d, e);\n}, goog.debugLoader_ = new goog.DebugLoader_, goog.loadClosureDeps = function() {\n  goog.debugLoader_.loadClosureDeps();\n}, goog.setDependencyFactory = function(a) {\n  goog.debugLoader_.setDependencyFactory(a);\n}, goog.global.CLOSURE_NO_DEPS || goog.debugLoader_.loadClosureDeps(), goog.bootstrap = function(a, b) {\n  goog.debugLoader_.bootstrap(a, b);\n});\ngoog.TRUSTED_TYPES_POLICY_NAME = \"\";\ngoog.identity_ = function(a) {\n  return a;\n};\ngoog.createTrustedTypesPolicy = function(a) {\n  var b = null, c = goog.global.trustedTypes || goog.global.TrustedTypes;\n  if (!c || !c.createPolicy) {\n    return b;\n  }\n  try {\n    b = c.createPolicy(a, {createHTML:goog.identity_, createScript:goog.identity_, createScriptURL:goog.identity_, createURL:goog.identity_});\n  } catch (d) {\n    goog.logToConsole_(d.message);\n  }\n  return b;\n};\ngoog.TRUSTED_TYPES_POLICY_ = goog.TRUSTED_TYPES_POLICY_NAME ? goog.createTrustedTypesPolicy(goog.TRUSTED_TYPES_POLICY_NAME + \"#base\") : null;\ngoog.string = {};\ngoog.string.StringBuffer = function(a, b) {\n  null != a && this.append.apply(this, arguments);\n};\ngoog.string.StringBuffer.prototype.buffer_ = \"\";\ngoog.string.StringBuffer.prototype.set = function(a) {\n  this.buffer_ = \"\" + a;\n};\ngoog.string.StringBuffer.prototype.append = function(a, b, c) {\n  this.buffer_ += String(a);\n  if (null != b) {\n    for (var d = 1; d < arguments.length; d++) {\n      this.buffer_ += arguments[d];\n    }\n  }\n  return this;\n};\ngoog.string.StringBuffer.prototype.clear = function() {\n  this.buffer_ = \"\";\n};\ngoog.string.StringBuffer.prototype.getLength = function() {\n  return this.buffer_.length;\n};\ngoog.string.StringBuffer.prototype.toString = function() {\n  return this.buffer_;\n};\ngoog.debug = {};\ngoog.debug.Error = function(a) {\n  if (Error.captureStackTrace) {\n    Error.captureStackTrace(this, goog.debug.Error);\n  } else {\n    var b = Error().stack;\n    b && (this.stack = b);\n  }\n  a && (this.message = String(a));\n  this.reportErrorToServer = !0;\n};\ngoog.inherits(goog.debug.Error, Error);\ngoog.debug.Error.prototype.name = \"CustomError\";\ngoog.dom = {};\ngoog.dom.NodeType = {ELEMENT:1, ATTRIBUTE:2, TEXT:3, CDATA_SECTION:4, ENTITY_REFERENCE:5, ENTITY:6, PROCESSING_INSTRUCTION:7, COMMENT:8, DOCUMENT:9, DOCUMENT_TYPE:10, DOCUMENT_FRAGMENT:11, NOTATION:12};\ngoog.asserts = {};\ngoog.asserts.ENABLE_ASSERTS = goog.DEBUG;\ngoog.asserts.AssertionError = function(a, b) {\n  goog.debug.Error.call(this, goog.asserts.subs_(a, b));\n  this.messagePattern = a;\n};\ngoog.inherits(goog.asserts.AssertionError, goog.debug.Error);\ngoog.asserts.AssertionError.prototype.name = \"AssertionError\";\ngoog.asserts.DEFAULT_ERROR_HANDLER = function(a) {\n  throw a;\n};\ngoog.asserts.errorHandler_ = goog.asserts.DEFAULT_ERROR_HANDLER;\ngoog.asserts.subs_ = function(a, b) {\n  for (var c = a.split(\"%s\"), d = \"\", e = c.length - 1, f = 0; f < e; f++) {\n    d += c[f] + (f < b.length ? b[f] : \"%s\");\n  }\n  return d + c[e];\n};\ngoog.asserts.doAssertFailure_ = function(a, b, c, d) {\n  var e = \"Assertion failed\";\n  if (c) {\n    e += \": \" + c;\n    var f = d;\n  } else {\n    a && (e += \": \" + a, f = b);\n  }\n  a = new goog.asserts.AssertionError(\"\" + e, f || []);\n  goog.asserts.errorHandler_(a);\n};\ngoog.asserts.setErrorHandler = function(a) {\n  goog.asserts.ENABLE_ASSERTS && (goog.asserts.errorHandler_ = a);\n};\ngoog.asserts.assert = function(a, b, c) {\n  goog.asserts.ENABLE_ASSERTS && !a && goog.asserts.doAssertFailure_(\"\", null, b, Array.prototype.slice.call(arguments, 2));\n  return a;\n};\ngoog.asserts.assertExists = function(a, b, c) {\n  goog.asserts.ENABLE_ASSERTS && null == a && goog.asserts.doAssertFailure_(\"Expected to exist: %s.\", [a], b, Array.prototype.slice.call(arguments, 2));\n  return a;\n};\ngoog.asserts.fail = function(a, b) {\n  goog.asserts.ENABLE_ASSERTS && goog.asserts.errorHandler_(new goog.asserts.AssertionError(\"Failure\" + (a ? \": \" + a : \"\"), Array.prototype.slice.call(arguments, 1)));\n};\ngoog.asserts.assertNumber = function(a, b, c) {\n  goog.asserts.ENABLE_ASSERTS && \"number\" !== typeof a && goog.asserts.doAssertFailure_(\"Expected number but got %s: %s.\", [goog.typeOf(a), a], b, Array.prototype.slice.call(arguments, 2));\n  return a;\n};\ngoog.asserts.assertString = function(a, b, c) {\n  goog.asserts.ENABLE_ASSERTS && \"string\" !== typeof a && goog.asserts.doAssertFailure_(\"Expected string but got %s: %s.\", [goog.typeOf(a), a], b, Array.prototype.slice.call(arguments, 2));\n  return a;\n};\ngoog.asserts.assertFunction = function(a, b, c) {\n  goog.asserts.ENABLE_ASSERTS && !goog.isFunction(a) && goog.asserts.doAssertFailure_(\"Expected function but got %s: %s.\", [goog.typeOf(a), a], b, Array.prototype.slice.call(arguments, 2));\n  return a;\n};\ngoog.asserts.assertObject = function(a, b, c) {\n  goog.asserts.ENABLE_ASSERTS && !goog.isObject(a) && goog.asserts.doAssertFailure_(\"Expected object but got %s: %s.\", [goog.typeOf(a), a], b, Array.prototype.slice.call(arguments, 2));\n  return a;\n};\ngoog.asserts.assertArray = function(a, b, c) {\n  goog.asserts.ENABLE_ASSERTS && !goog.isArray(a) && goog.asserts.doAssertFailure_(\"Expected array but got %s: %s.\", [goog.typeOf(a), a], b, Array.prototype.slice.call(arguments, 2));\n  return a;\n};\ngoog.asserts.assertBoolean = function(a, b, c) {\n  goog.asserts.ENABLE_ASSERTS && \"boolean\" !== typeof a && goog.asserts.doAssertFailure_(\"Expected boolean but got %s: %s.\", [goog.typeOf(a), a], b, Array.prototype.slice.call(arguments, 2));\n  return a;\n};\ngoog.asserts.assertElement = function(a, b, c) {\n  !goog.asserts.ENABLE_ASSERTS || goog.isObject(a) && a.nodeType == goog.dom.NodeType.ELEMENT || goog.asserts.doAssertFailure_(\"Expected Element but got %s: %s.\", [goog.typeOf(a), a], b, Array.prototype.slice.call(arguments, 2));\n  return a;\n};\ngoog.asserts.assertInstanceof = function(a, b, c, d) {\n  !goog.asserts.ENABLE_ASSERTS || a instanceof b || goog.asserts.doAssertFailure_(\"Expected instanceof %s but got %s.\", [goog.asserts.getType_(b), goog.asserts.getType_(a)], c, Array.prototype.slice.call(arguments, 3));\n  return a;\n};\ngoog.asserts.assertFinite = function(a, b, c) {\n  !goog.asserts.ENABLE_ASSERTS || \"number\" == typeof a && isFinite(a) || goog.asserts.doAssertFailure_(\"Expected %s to be a finite number but it is not.\", [a], b, Array.prototype.slice.call(arguments, 2));\n  return a;\n};\ngoog.asserts.assertObjectPrototypeIsIntact = function() {\n  for (var a in Object.prototype) {\n    goog.asserts.fail(a + \" should not be enumerable in Object.prototype.\");\n  }\n};\ngoog.asserts.getType_ = function(a) {\n  return a instanceof Function ? a.displayName || a.name || \"unknown type name\" : a instanceof Object ? a.constructor.displayName || a.constructor.name || Object.prototype.toString.call(a) : null === a ? \"null\" : typeof a;\n};\ngoog.array = {};\ngoog.NATIVE_ARRAY_PROTOTYPES = goog.TRUSTED_SITE;\ngoog.array.ASSUME_NATIVE_FUNCTIONS = 2012 < goog.FEATURESET_YEAR;\ngoog.array.peek = function(a) {\n  return a[a.length - 1];\n};\ngoog.array.last = goog.array.peek;\ngoog.array.indexOf = goog.NATIVE_ARRAY_PROTOTYPES && (goog.array.ASSUME_NATIVE_FUNCTIONS || Array.prototype.indexOf) ? function(a, b, c) {\n  goog.asserts.assert(null != a.length);\n  return Array.prototype.indexOf.call(a, b, c);\n} : function(a, b, c) {\n  c = null == c ? 0 : 0 > c ? Math.max(0, a.length + c) : c;\n  if (\"string\" === typeof a) {\n    return \"string\" !== typeof b || 1 != b.length ? -1 : a.indexOf(b, c);\n  }\n  for (; c < a.length; c++) {\n    if (c in a && a[c] === b) {\n      return c;\n    }\n  }\n  return -1;\n};\ngoog.array.lastIndexOf = goog.NATIVE_ARRAY_PROTOTYPES && (goog.array.ASSUME_NATIVE_FUNCTIONS || Array.prototype.lastIndexOf) ? function(a, b, c) {\n  goog.asserts.assert(null != a.length);\n  return Array.prototype.lastIndexOf.call(a, b, null == c ? a.length - 1 : c);\n} : function(a, b, c) {\n  c = null == c ? a.length - 1 : c;\n  0 > c && (c = Math.max(0, a.length + c));\n  if (\"string\" === typeof a) {\n    return \"string\" !== typeof b || 1 != b.length ? -1 : a.lastIndexOf(b, c);\n  }\n  for (; 0 <= c; c--) {\n    if (c in a && a[c] === b) {\n      return c;\n    }\n  }\n  return -1;\n};\ngoog.array.forEach = goog.NATIVE_ARRAY_PROTOTYPES && (goog.array.ASSUME_NATIVE_FUNCTIONS || Array.prototype.forEach) ? function(a, b, c) {\n  goog.asserts.assert(null != a.length);\n  Array.prototype.forEach.call(a, b, c);\n} : function(a, b, c) {\n  for (var d = a.length, e = \"string\" === typeof a ? a.split(\"\") : a, f = 0; f < d; f++) {\n    f in e && b.call(c, e[f], f, a);\n  }\n};\ngoog.array.forEachRight = function(a, b, c) {\n  var d = a.length, e = \"string\" === typeof a ? a.split(\"\") : a;\n  for (--d; 0 <= d; --d) {\n    d in e && b.call(c, e[d], d, a);\n  }\n};\ngoog.array.filter = goog.NATIVE_ARRAY_PROTOTYPES && (goog.array.ASSUME_NATIVE_FUNCTIONS || Array.prototype.filter) ? function(a, b, c) {\n  goog.asserts.assert(null != a.length);\n  return Array.prototype.filter.call(a, b, c);\n} : function(a, b, c) {\n  for (var d = a.length, e = [], f = 0, g = \"string\" === typeof a ? a.split(\"\") : a, h = 0; h < d; h++) {\n    if (h in g) {\n      var k = g[h];\n      b.call(c, k, h, a) && (e[f++] = k);\n    }\n  }\n  return e;\n};\ngoog.array.map = goog.NATIVE_ARRAY_PROTOTYPES && (goog.array.ASSUME_NATIVE_FUNCTIONS || Array.prototype.map) ? function(a, b, c) {\n  goog.asserts.assert(null != a.length);\n  return Array.prototype.map.call(a, b, c);\n} : function(a, b, c) {\n  for (var d = a.length, e = Array(d), f = \"string\" === typeof a ? a.split(\"\") : a, g = 0; g < d; g++) {\n    g in f && (e[g] = b.call(c, f[g], g, a));\n  }\n  return e;\n};\ngoog.array.reduce = goog.NATIVE_ARRAY_PROTOTYPES && (goog.array.ASSUME_NATIVE_FUNCTIONS || Array.prototype.reduce) ? function(a, b, c, d) {\n  goog.asserts.assert(null != a.length);\n  d && (b = goog.bind(b, d));\n  return Array.prototype.reduce.call(a, b, c);\n} : function(a, b, c, d) {\n  var e = c;\n  goog.array.forEach(a, function(c, g) {\n    e = b.call(d, e, c, g, a);\n  });\n  return e;\n};\ngoog.array.reduceRight = goog.NATIVE_ARRAY_PROTOTYPES && (goog.array.ASSUME_NATIVE_FUNCTIONS || Array.prototype.reduceRight) ? function(a, b, c, d) {\n  goog.asserts.assert(null != a.length);\n  goog.asserts.assert(null != b);\n  d && (b = goog.bind(b, d));\n  return Array.prototype.reduceRight.call(a, b, c);\n} : function(a, b, c, d) {\n  var e = c;\n  goog.array.forEachRight(a, function(c, g) {\n    e = b.call(d, e, c, g, a);\n  });\n  return e;\n};\ngoog.array.some = goog.NATIVE_ARRAY_PROTOTYPES && (goog.array.ASSUME_NATIVE_FUNCTIONS || Array.prototype.some) ? function(a, b, c) {\n  goog.asserts.assert(null != a.length);\n  return Array.prototype.some.call(a, b, c);\n} : function(a, b, c) {\n  for (var d = a.length, e = \"string\" === typeof a ? a.split(\"\") : a, f = 0; f < d; f++) {\n    if (f in e && b.call(c, e[f], f, a)) {\n      return !0;\n    }\n  }\n  return !1;\n};\ngoog.array.every = goog.NATIVE_ARRAY_PROTOTYPES && (goog.array.ASSUME_NATIVE_FUNCTIONS || Array.prototype.every) ? function(a, b, c) {\n  goog.asserts.assert(null != a.length);\n  return Array.prototype.every.call(a, b, c);\n} : function(a, b, c) {\n  for (var d = a.length, e = \"string\" === typeof a ? a.split(\"\") : a, f = 0; f < d; f++) {\n    if (f in e && !b.call(c, e[f], f, a)) {\n      return !1;\n    }\n  }\n  return !0;\n};\ngoog.array.count = function(a, b, c) {\n  var d = 0;\n  goog.array.forEach(a, function(a, f, g) {\n    b.call(c, a, f, g) && ++d;\n  }, c);\n  return d;\n};\ngoog.array.find = function(a, b, c) {\n  b = goog.array.findIndex(a, b, c);\n  return 0 > b ? null : \"string\" === typeof a ? a.charAt(b) : a[b];\n};\ngoog.array.findIndex = function(a, b, c) {\n  for (var d = a.length, e = \"string\" === typeof a ? a.split(\"\") : a, f = 0; f < d; f++) {\n    if (f in e && b.call(c, e[f], f, a)) {\n      return f;\n    }\n  }\n  return -1;\n};\ngoog.array.findRight = function(a, b, c) {\n  b = goog.array.findIndexRight(a, b, c);\n  return 0 > b ? null : \"string\" === typeof a ? a.charAt(b) : a[b];\n};\ngoog.array.findIndexRight = function(a, b, c) {\n  var d = a.length, e = \"string\" === typeof a ? a.split(\"\") : a;\n  for (--d; 0 <= d; d--) {\n    if (d in e && b.call(c, e[d], d, a)) {\n      return d;\n    }\n  }\n  return -1;\n};\ngoog.array.contains = function(a, b) {\n  return 0 <= goog.array.indexOf(a, b);\n};\ngoog.array.isEmpty = function(a) {\n  return 0 == a.length;\n};\ngoog.array.clear = function(a) {\n  if (!goog.isArray(a)) {\n    for (var b = a.length - 1; 0 <= b; b--) {\n      delete a[b];\n    }\n  }\n  a.length = 0;\n};\ngoog.array.insert = function(a, b) {\n  goog.array.contains(a, b) || a.push(b);\n};\ngoog.array.insertAt = function(a, b, c) {\n  goog.array.splice(a, c, 0, b);\n};\ngoog.array.insertArrayAt = function(a, b, c) {\n  goog.partial(goog.array.splice, a, c, 0).apply(null, b);\n};\ngoog.array.insertBefore = function(a, b, c) {\n  var d;\n  2 == arguments.length || 0 > (d = goog.array.indexOf(a, c)) ? a.push(b) : goog.array.insertAt(a, b, d);\n};\ngoog.array.remove = function(a, b) {\n  var c = goog.array.indexOf(a, b), d;\n  (d = 0 <= c) && goog.array.removeAt(a, c);\n  return d;\n};\ngoog.array.removeLast = function(a, b) {\n  var c = goog.array.lastIndexOf(a, b);\n  return 0 <= c ? (goog.array.removeAt(a, c), !0) : !1;\n};\ngoog.array.removeAt = function(a, b) {\n  goog.asserts.assert(null != a.length);\n  return 1 == Array.prototype.splice.call(a, b, 1).length;\n};\ngoog.array.removeIf = function(a, b, c) {\n  b = goog.array.findIndex(a, b, c);\n  return 0 <= b ? (goog.array.removeAt(a, b), !0) : !1;\n};\ngoog.array.removeAllIf = function(a, b, c) {\n  var d = 0;\n  goog.array.forEachRight(a, function(e, f) {\n    b.call(c, e, f, a) && goog.array.removeAt(a, f) && d++;\n  });\n  return d;\n};\ngoog.array.concat = function(a) {\n  return Array.prototype.concat.apply([], arguments);\n};\ngoog.array.join = function(a) {\n  return Array.prototype.concat.apply([], arguments);\n};\ngoog.array.toArray = function(a) {\n  var b = a.length;\n  if (0 < b) {\n    for (var c = Array(b), d = 0; d < b; d++) {\n      c[d] = a[d];\n    }\n    return c;\n  }\n  return [];\n};\ngoog.array.clone = goog.array.toArray;\ngoog.array.extend = function(a, b) {\n  for (var c = 1; c < arguments.length; c++) {\n    var d = arguments[c];\n    if (goog.isArrayLike(d)) {\n      var e = a.length || 0, f = d.length || 0;\n      a.length = e + f;\n      for (var g = 0; g < f; g++) {\n        a[e + g] = d[g];\n      }\n    } else {\n      a.push(d);\n    }\n  }\n};\ngoog.array.splice = function(a, b, c, d) {\n  goog.asserts.assert(null != a.length);\n  return Array.prototype.splice.apply(a, goog.array.slice(arguments, 1));\n};\ngoog.array.slice = function(a, b, c) {\n  goog.asserts.assert(null != a.length);\n  return 2 >= arguments.length ? Array.prototype.slice.call(a, b) : Array.prototype.slice.call(a, b, c);\n};\ngoog.array.removeDuplicates = function(a, b, c) {\n  b = b || a;\n  var d = function(a) {\n    return goog.isObject(a) ? \"o\" + goog.getUid(a) : (typeof a).charAt(0) + a;\n  };\n  c = c || d;\n  d = {};\n  for (var e = 0, f = 0; f < a.length;) {\n    var g = a[f++], h = c(g);\n    Object.prototype.hasOwnProperty.call(d, h) || (d[h] = !0, b[e++] = g);\n  }\n  b.length = e;\n};\ngoog.array.binarySearch = function(a, b, c) {\n  return goog.array.binarySearch_(a, c || goog.array.defaultCompare, !1, b);\n};\ngoog.array.binarySelect = function(a, b, c) {\n  return goog.array.binarySearch_(a, b, !0, void 0, c);\n};\ngoog.array.binarySearch_ = function(a, b, c, d, e) {\n  for (var f = 0, g = a.length, h; f < g;) {\n    var k = f + (g - f >>> 1);\n    var l = c ? b.call(e, a[k], k, a) : b(d, a[k]);\n    0 < l ? f = k + 1 : (g = k, h = !l);\n  }\n  return h ? f : -f - 1;\n};\ngoog.array.sort = function(a, b) {\n  a.sort(b || goog.array.defaultCompare);\n};\ngoog.array.stableSort = function(a, b) {\n  for (var c = Array(a.length), d = 0; d < a.length; d++) {\n    c[d] = {index:d, value:a[d]};\n  }\n  var e = b || goog.array.defaultCompare;\n  goog.array.sort(c, function(a, b) {\n    return e(a.value, b.value) || a.index - b.index;\n  });\n  for (d = 0; d < a.length; d++) {\n    a[d] = c[d].value;\n  }\n};\ngoog.array.sortByKey = function(a, b, c) {\n  var d = c || goog.array.defaultCompare;\n  goog.array.sort(a, function(a, c) {\n    return d(b(a), b(c));\n  });\n};\ngoog.array.sortObjectsByKey = function(a, b, c) {\n  goog.array.sortByKey(a, function(a) {\n    return a[b];\n  }, c);\n};\ngoog.array.isSorted = function(a, b, c) {\n  b = b || goog.array.defaultCompare;\n  for (var d = 1; d < a.length; d++) {\n    var e = b(a[d - 1], a[d]);\n    if (0 < e || 0 == e && c) {\n      return !1;\n    }\n  }\n  return !0;\n};\ngoog.array.equals = function(a, b, c) {\n  if (!goog.isArrayLike(a) || !goog.isArrayLike(b) || a.length != b.length) {\n    return !1;\n  }\n  var d = a.length;\n  c = c || goog.array.defaultCompareEquality;\n  for (var e = 0; e < d; e++) {\n    if (!c(a[e], b[e])) {\n      return !1;\n    }\n  }\n  return !0;\n};\ngoog.array.compare3 = function(a, b, c) {\n  c = c || goog.array.defaultCompare;\n  for (var d = Math.min(a.length, b.length), e = 0; e < d; e++) {\n    var f = c(a[e], b[e]);\n    if (0 != f) {\n      return f;\n    }\n  }\n  return goog.array.defaultCompare(a.length, b.length);\n};\ngoog.array.defaultCompare = function(a, b) {\n  return a > b ? 1 : a < b ? -1 : 0;\n};\ngoog.array.inverseDefaultCompare = function(a, b) {\n  return -goog.array.defaultCompare(a, b);\n};\ngoog.array.defaultCompareEquality = function(a, b) {\n  return a === b;\n};\ngoog.array.binaryInsert = function(a, b, c) {\n  c = goog.array.binarySearch(a, b, c);\n  return 0 > c ? (goog.array.insertAt(a, b, -(c + 1)), !0) : !1;\n};\ngoog.array.binaryRemove = function(a, b, c) {\n  b = goog.array.binarySearch(a, b, c);\n  return 0 <= b ? goog.array.removeAt(a, b) : !1;\n};\ngoog.array.bucket = function(a, b, c) {\n  for (var d = {}, e = 0; e < a.length; e++) {\n    var f = a[e], g = b.call(c, f, e, a);\n    void 0 !== g && (d[g] || (d[g] = [])).push(f);\n  }\n  return d;\n};\ngoog.array.toObject = function(a, b, c) {\n  var d = {};\n  goog.array.forEach(a, function(e, f) {\n    d[b.call(c, e, f, a)] = e;\n  });\n  return d;\n};\ngoog.array.range = function(a, b, c) {\n  var d = [], e = 0, f = a;\n  c = c || 1;\n  void 0 !== b && (e = a, f = b);\n  if (0 > c * (f - e)) {\n    return [];\n  }\n  if (0 < c) {\n    for (a = e; a < f; a += c) {\n      d.push(a);\n    }\n  } else {\n    for (a = e; a > f; a += c) {\n      d.push(a);\n    }\n  }\n  return d;\n};\ngoog.array.repeat = function(a, b) {\n  for (var c = [], d = 0; d < b; d++) {\n    c[d] = a;\n  }\n  return c;\n};\ngoog.array.flatten = function(a) {\n  for (var b = [], c = 0; c < arguments.length; c++) {\n    var d = arguments[c];\n    if (goog.isArray(d)) {\n      for (var e = 0; e < d.length; e += 8192) {\n        var f = goog.array.slice(d, e, e + 8192);\n        f = goog.array.flatten.apply(null, f);\n        for (var g = 0; g < f.length; g++) {\n          b.push(f[g]);\n        }\n      }\n    } else {\n      b.push(d);\n    }\n  }\n  return b;\n};\ngoog.array.rotate = function(a, b) {\n  goog.asserts.assert(null != a.length);\n  a.length && (b %= a.length, 0 < b ? Array.prototype.unshift.apply(a, a.splice(-b, b)) : 0 > b && Array.prototype.push.apply(a, a.splice(0, -b)));\n  return a;\n};\ngoog.array.moveItem = function(a, b, c) {\n  goog.asserts.assert(0 <= b && b < a.length);\n  goog.asserts.assert(0 <= c && c < a.length);\n  b = Array.prototype.splice.call(a, b, 1);\n  Array.prototype.splice.call(a, c, 0, b[0]);\n};\ngoog.array.zip = function(a) {\n  if (!arguments.length) {\n    return [];\n  }\n  for (var b = [], c = arguments[0].length, d = 1; d < arguments.length; d++) {\n    arguments[d].length < c && (c = arguments[d].length);\n  }\n  for (d = 0; d < c; d++) {\n    for (var e = [], f = 0; f < arguments.length; f++) {\n      e.push(arguments[f][d]);\n    }\n    b.push(e);\n  }\n  return b;\n};\ngoog.array.shuffle = function(a, b) {\n  for (var c = b || Math.random, d = a.length - 1; 0 < d; d--) {\n    var e = Math.floor(c() * (d + 1)), f = a[d];\n    a[d] = a[e];\n    a[e] = f;\n  }\n};\ngoog.array.copyByIndex = function(a, b) {\n  var c = [];\n  goog.array.forEach(b, function(b) {\n    c.push(a[b]);\n  });\n  return c;\n};\ngoog.array.concatMap = function(a, b, c) {\n  return goog.array.concat.apply([], goog.array.map(a, b, c));\n};\ngoog.object = {};\ngoog.object.is = function(a, b) {\n  return a === b ? 0 !== a || 1 / a === 1 / b : a !== a && b !== b;\n};\ngoog.object.forEach = function(a, b, c) {\n  for (var d in a) {\n    b.call(c, a[d], d, a);\n  }\n};\ngoog.object.filter = function(a, b, c) {\n  var d = {}, e;\n  for (e in a) {\n    b.call(c, a[e], e, a) && (d[e] = a[e]);\n  }\n  return d;\n};\ngoog.object.map = function(a, b, c) {\n  var d = {}, e;\n  for (e in a) {\n    d[e] = b.call(c, a[e], e, a);\n  }\n  return d;\n};\ngoog.object.some = function(a, b, c) {\n  for (var d in a) {\n    if (b.call(c, a[d], d, a)) {\n      return !0;\n    }\n  }\n  return !1;\n};\ngoog.object.every = function(a, b, c) {\n  for (var d in a) {\n    if (!b.call(c, a[d], d, a)) {\n      return !1;\n    }\n  }\n  return !0;\n};\ngoog.object.getCount = function(a) {\n  var b = 0, c;\n  for (c in a) {\n    b++;\n  }\n  return b;\n};\ngoog.object.getAnyKey = function(a) {\n  for (var b in a) {\n    return b;\n  }\n};\ngoog.object.getAnyValue = function(a) {\n  for (var b in a) {\n    return a[b];\n  }\n};\ngoog.object.contains = function(a, b) {\n  return goog.object.containsValue(a, b);\n};\ngoog.object.getValues = function(a) {\n  var b = [], c = 0, d;\n  for (d in a) {\n    b[c++] = a[d];\n  }\n  return b;\n};\ngoog.object.getKeys = function(a) {\n  var b = [], c = 0, d;\n  for (d in a) {\n    b[c++] = d;\n  }\n  return b;\n};\ngoog.object.getValueByKeys = function(a, b) {\n  var c = goog.isArrayLike(b), d = c ? b : arguments;\n  for (c = c ? 0 : 1; c < d.length; c++) {\n    if (null == a) {\n      return;\n    }\n    a = a[d[c]];\n  }\n  return a;\n};\ngoog.object.containsKey = function(a, b) {\n  return null !== a && b in a;\n};\ngoog.object.containsValue = function(a, b) {\n  for (var c in a) {\n    if (a[c] == b) {\n      return !0;\n    }\n  }\n  return !1;\n};\ngoog.object.findKey = function(a, b, c) {\n  for (var d in a) {\n    if (b.call(c, a[d], d, a)) {\n      return d;\n    }\n  }\n};\ngoog.object.findValue = function(a, b, c) {\n  return (b = goog.object.findKey(a, b, c)) && a[b];\n};\ngoog.object.isEmpty = function(a) {\n  for (var b in a) {\n    return !1;\n  }\n  return !0;\n};\ngoog.object.clear = function(a) {\n  for (var b in a) {\n    delete a[b];\n  }\n};\ngoog.object.remove = function(a, b) {\n  var c;\n  (c = b in a) && delete a[b];\n  return c;\n};\ngoog.object.add = function(a, b, c) {\n  if (null !== a && b in a) {\n    throw Error('The object already contains the key \"' + b + '\"');\n  }\n  goog.object.set(a, b, c);\n};\ngoog.object.get = function(a, b, c) {\n  return null !== a && b in a ? a[b] : c;\n};\ngoog.object.set = function(a, b, c) {\n  a[b] = c;\n};\ngoog.object.setIfUndefined = function(a, b, c) {\n  return b in a ? a[b] : a[b] = c;\n};\ngoog.object.setWithReturnValueIfNotSet = function(a, b, c) {\n  if (b in a) {\n    return a[b];\n  }\n  c = c();\n  return a[b] = c;\n};\ngoog.object.equals = function(a, b) {\n  for (var c in a) {\n    if (!(c in b) || a[c] !== b[c]) {\n      return !1;\n    }\n  }\n  for (var d in b) {\n    if (!(d in a)) {\n      return !1;\n    }\n  }\n  return !0;\n};\ngoog.object.clone = function(a) {\n  var b = {}, c;\n  for (c in a) {\n    b[c] = a[c];\n  }\n  return b;\n};\ngoog.object.unsafeClone = function(a) {\n  var b = goog.typeOf(a);\n  if (\"object\" == b || \"array\" == b) {\n    if (goog.isFunction(a.clone)) {\n      return a.clone();\n    }\n    b = \"array\" == b ? [] : {};\n    for (var c in a) {\n      b[c] = goog.object.unsafeClone(a[c]);\n    }\n    return b;\n  }\n  return a;\n};\ngoog.object.transpose = function(a) {\n  var b = {}, c;\n  for (c in a) {\n    b[a[c]] = c;\n  }\n  return b;\n};\ngoog.object.PROTOTYPE_FIELDS_ = \"constructor hasOwnProperty isPrototypeOf propertyIsEnumerable toLocaleString toString valueOf\".split(\" \");\ngoog.object.extend = function(a, b) {\n  for (var c, d, e = 1; e < arguments.length; e++) {\n    d = arguments[e];\n    for (c in d) {\n      a[c] = d[c];\n    }\n    for (var f = 0; f < goog.object.PROTOTYPE_FIELDS_.length; f++) {\n      c = goog.object.PROTOTYPE_FIELDS_[f], Object.prototype.hasOwnProperty.call(d, c) && (a[c] = d[c]);\n    }\n  }\n};\ngoog.object.create = function(a) {\n  var b = arguments.length;\n  if (1 == b && goog.isArray(arguments[0])) {\n    return goog.object.create.apply(null, arguments[0]);\n  }\n  if (b % 2) {\n    throw Error(\"Uneven number of arguments\");\n  }\n  for (var c = {}, d = 0; d < b; d += 2) {\n    c[arguments[d]] = arguments[d + 1];\n  }\n  return c;\n};\ngoog.object.createSet = function(a) {\n  var b = arguments.length;\n  if (1 == b && goog.isArray(arguments[0])) {\n    return goog.object.createSet.apply(null, arguments[0]);\n  }\n  for (var c = {}, d = 0; d < b; d++) {\n    c[arguments[d]] = !0;\n  }\n  return c;\n};\ngoog.object.createImmutableView = function(a) {\n  var b = a;\n  Object.isFrozen && !Object.isFrozen(a) && (b = Object.create(a), Object.freeze(b));\n  return b;\n};\ngoog.object.isImmutableView = function(a) {\n  return !!Object.isFrozen && Object.isFrozen(a);\n};\ngoog.object.getAllPropertyNames = function(a, b, c) {\n  if (!a) {\n    return [];\n  }\n  if (!Object.getOwnPropertyNames || !Object.getPrototypeOf) {\n    return goog.object.getKeys(a);\n  }\n  for (var d = {}; a && (a !== Object.prototype || b) && (a !== Function.prototype || c);) {\n    for (var e = Object.getOwnPropertyNames(a), f = 0; f < e.length; f++) {\n      d[e[f]] = !0;\n    }\n    a = Object.getPrototypeOf(a);\n  }\n  return goog.object.getKeys(d);\n};\ngoog.object.getSuperClass = function(a) {\n  return (a = Object.getPrototypeOf(a.prototype)) && a.constructor;\n};\ngoog.dom.asserts = {};\ngoog.dom.asserts.assertIsLocation = function(a) {\n  if (goog.asserts.ENABLE_ASSERTS) {\n    var b = goog.dom.asserts.getWindow_(a);\n    b && (!a || !(a instanceof b.Location) && a instanceof b.Element) && goog.asserts.fail(\"Argument is not a Location (or a non-Element mock); got: %s\", goog.dom.asserts.debugStringForType_(a));\n  }\n  return a;\n};\ngoog.dom.asserts.assertIsElementType_ = function(a, b) {\n  if (goog.asserts.ENABLE_ASSERTS) {\n    var c = goog.dom.asserts.getWindow_(a);\n    c && \"undefined\" != typeof c[b] && (a && (a instanceof c[b] || !(a instanceof c.Location || a instanceof c.Element)) || goog.asserts.fail(\"Argument is not a %s (or a non-Element, non-Location mock); got: %s\", b, goog.dom.asserts.debugStringForType_(a)));\n  }\n  return a;\n};\ngoog.dom.asserts.assertIsHTMLAnchorElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLAnchorElement\");\n};\ngoog.dom.asserts.assertIsHTMLButtonElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLButtonElement\");\n};\ngoog.dom.asserts.assertIsHTMLLinkElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLLinkElement\");\n};\ngoog.dom.asserts.assertIsHTMLImageElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLImageElement\");\n};\ngoog.dom.asserts.assertIsHTMLAudioElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLAudioElement\");\n};\ngoog.dom.asserts.assertIsHTMLVideoElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLVideoElement\");\n};\ngoog.dom.asserts.assertIsHTMLInputElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLInputElement\");\n};\ngoog.dom.asserts.assertIsHTMLTextAreaElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLTextAreaElement\");\n};\ngoog.dom.asserts.assertIsHTMLCanvasElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLCanvasElement\");\n};\ngoog.dom.asserts.assertIsHTMLEmbedElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLEmbedElement\");\n};\ngoog.dom.asserts.assertIsHTMLFormElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLFormElement\");\n};\ngoog.dom.asserts.assertIsHTMLFrameElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLFrameElement\");\n};\ngoog.dom.asserts.assertIsHTMLIFrameElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLIFrameElement\");\n};\ngoog.dom.asserts.assertIsHTMLObjectElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLObjectElement\");\n};\ngoog.dom.asserts.assertIsHTMLScriptElement = function(a) {\n  return goog.dom.asserts.assertIsElementType_(a, \"HTMLScriptElement\");\n};\ngoog.dom.asserts.debugStringForType_ = function(a) {\n  if (goog.isObject(a)) {\n    try {\n      return a.constructor.displayName || a.constructor.name || Object.prototype.toString.call(a);\n    } catch (b) {\n      return \"<object could not be stringified>\";\n    }\n  } else {\n    return void 0 === a ? \"undefined\" : null === a ? \"null\" : typeof a;\n  }\n};\ngoog.dom.asserts.getWindow_ = function(a) {\n  try {\n    var b = a && a.ownerDocument, c = b && (b.defaultView || b.parentWindow);\n    c = c || goog.global;\n    if (c.Element && c.Location) {\n      return c;\n    }\n  } catch (d) {\n  }\n  return null;\n};\ngoog.functions = {};\ngoog.functions.constant = function(a) {\n  return function() {\n    return a;\n  };\n};\ngoog.functions.FALSE = function() {\n  return !1;\n};\ngoog.functions.TRUE = function() {\n  return !0;\n};\ngoog.functions.NULL = function() {\n  return null;\n};\ngoog.functions.identity = function(a, b) {\n  return a;\n};\ngoog.functions.error = function(a) {\n  return function() {\n    throw Error(a);\n  };\n};\ngoog.functions.fail = function(a) {\n  return function() {\n    throw a;\n  };\n};\ngoog.functions.lock = function(a, b) {\n  b = b || 0;\n  return function() {\n    return a.apply(this, Array.prototype.slice.call(arguments, 0, b));\n  };\n};\ngoog.functions.nth = function(a) {\n  return function() {\n    return arguments[a];\n  };\n};\ngoog.functions.partialRight = function(a, b) {\n  var c = Array.prototype.slice.call(arguments, 1);\n  return function() {\n    var b = Array.prototype.slice.call(arguments);\n    b.push.apply(b, c);\n    return a.apply(this, b);\n  };\n};\ngoog.functions.withReturnValue = function(a, b) {\n  return goog.functions.sequence(a, goog.functions.constant(b));\n};\ngoog.functions.equalTo = function(a, b) {\n  return function(c) {\n    return b ? a == c : a === c;\n  };\n};\ngoog.functions.compose = function(a, b) {\n  var c = arguments, d = c.length;\n  return function() {\n    var a;\n    d && (a = c[d - 1].apply(this, arguments));\n    for (var b = d - 2; 0 <= b; b--) {\n      a = c[b].call(this, a);\n    }\n    return a;\n  };\n};\ngoog.functions.sequence = function(a) {\n  var b = arguments, c = b.length;\n  return function() {\n    for (var a, e = 0; e < c; e++) {\n      a = b[e].apply(this, arguments);\n    }\n    return a;\n  };\n};\ngoog.functions.and = function(a) {\n  var b = arguments, c = b.length;\n  return function() {\n    for (var a = 0; a < c; a++) {\n      if (!b[a].apply(this, arguments)) {\n        return !1;\n      }\n    }\n    return !0;\n  };\n};\ngoog.functions.or = function(a) {\n  var b = arguments, c = b.length;\n  return function() {\n    for (var a = 0; a < c; a++) {\n      if (b[a].apply(this, arguments)) {\n        return !0;\n      }\n    }\n    return !1;\n  };\n};\ngoog.functions.not = function(a) {\n  return function() {\n    return !a.apply(this, arguments);\n  };\n};\ngoog.functions.create = function(a, b) {\n  var c = function() {\n  };\n  c.prototype = a.prototype;\n  c = new c;\n  a.apply(c, Array.prototype.slice.call(arguments, 1));\n  return c;\n};\ngoog.functions.CACHE_RETURN_VALUE = !0;\ngoog.functions.cacheReturnValue = function(a) {\n  var b = !1, c;\n  return function() {\n    if (!goog.functions.CACHE_RETURN_VALUE) {\n      return a();\n    }\n    b || (c = a(), b = !0);\n    return c;\n  };\n};\ngoog.functions.once = function(a) {\n  var b = a;\n  return function() {\n    if (b) {\n      var a = b;\n      b = null;\n      a();\n    }\n  };\n};\ngoog.functions.debounce = function(a, b, c) {\n  var d = 0;\n  return function(e) {\n    goog.global.clearTimeout(d);\n    var f = arguments;\n    d = goog.global.setTimeout(function() {\n      a.apply(c, f);\n    }, b);\n  };\n};\ngoog.functions.throttle = function(a, b, c) {\n  var d = 0, e = !1, f = [], g = function() {\n    d = 0;\n    e && (e = !1, h());\n  }, h = function() {\n    d = goog.global.setTimeout(g, b);\n    a.apply(c, f);\n  };\n  return function(a) {\n    f = arguments;\n    d ? e = !0 : h();\n  };\n};\ngoog.functions.rateLimit = function(a, b, c) {\n  var d = 0, e = function() {\n    d = 0;\n  };\n  return function(f) {\n    d || (d = goog.global.setTimeout(e, b), a.apply(c, arguments));\n  };\n};\ngoog.dom.HtmlElement = function() {\n};\ngoog.dom.TagName = function(a) {\n  this.tagName_ = a;\n};\ngoog.dom.TagName.prototype.toString = function() {\n  return this.tagName_;\n};\ngoog.dom.TagName.A = new goog.dom.TagName(\"A\");\ngoog.dom.TagName.ABBR = new goog.dom.TagName(\"ABBR\");\ngoog.dom.TagName.ACRONYM = new goog.dom.TagName(\"ACRONYM\");\ngoog.dom.TagName.ADDRESS = new goog.dom.TagName(\"ADDRESS\");\ngoog.dom.TagName.APPLET = new goog.dom.TagName(\"APPLET\");\ngoog.dom.TagName.AREA = new goog.dom.TagName(\"AREA\");\ngoog.dom.TagName.ARTICLE = new goog.dom.TagName(\"ARTICLE\");\ngoog.dom.TagName.ASIDE = new goog.dom.TagName(\"ASIDE\");\ngoog.dom.TagName.AUDIO = new goog.dom.TagName(\"AUDIO\");\ngoog.dom.TagName.B = new goog.dom.TagName(\"B\");\ngoog.dom.TagName.BASE = new goog.dom.TagName(\"BASE\");\ngoog.dom.TagName.BASEFONT = new goog.dom.TagName(\"BASEFONT\");\ngoog.dom.TagName.BDI = new goog.dom.TagName(\"BDI\");\ngoog.dom.TagName.BDO = new goog.dom.TagName(\"BDO\");\ngoog.dom.TagName.BIG = new goog.dom.TagName(\"BIG\");\ngoog.dom.TagName.BLOCKQUOTE = new goog.dom.TagName(\"BLOCKQUOTE\");\ngoog.dom.TagName.BODY = new goog.dom.TagName(\"BODY\");\ngoog.dom.TagName.BR = new goog.dom.TagName(\"BR\");\ngoog.dom.TagName.BUTTON = new goog.dom.TagName(\"BUTTON\");\ngoog.dom.TagName.CANVAS = new goog.dom.TagName(\"CANVAS\");\ngoog.dom.TagName.CAPTION = new goog.dom.TagName(\"CAPTION\");\ngoog.dom.TagName.CENTER = new goog.dom.TagName(\"CENTER\");\ngoog.dom.TagName.CITE = new goog.dom.TagName(\"CITE\");\ngoog.dom.TagName.CODE = new goog.dom.TagName(\"CODE\");\ngoog.dom.TagName.COL = new goog.dom.TagName(\"COL\");\ngoog.dom.TagName.COLGROUP = new goog.dom.TagName(\"COLGROUP\");\ngoog.dom.TagName.COMMAND = new goog.dom.TagName(\"COMMAND\");\ngoog.dom.TagName.DATA = new goog.dom.TagName(\"DATA\");\ngoog.dom.TagName.DATALIST = new goog.dom.TagName(\"DATALIST\");\ngoog.dom.TagName.DD = new goog.dom.TagName(\"DD\");\ngoog.dom.TagName.DEL = new goog.dom.TagName(\"DEL\");\ngoog.dom.TagName.DETAILS = new goog.dom.TagName(\"DETAILS\");\ngoog.dom.TagName.DFN = new goog.dom.TagName(\"DFN\");\ngoog.dom.TagName.DIALOG = new goog.dom.TagName(\"DIALOG\");\ngoog.dom.TagName.DIR = new goog.dom.TagName(\"DIR\");\ngoog.dom.TagName.DIV = new goog.dom.TagName(\"DIV\");\ngoog.dom.TagName.DL = new goog.dom.TagName(\"DL\");\ngoog.dom.TagName.DT = new goog.dom.TagName(\"DT\");\ngoog.dom.TagName.EM = new goog.dom.TagName(\"EM\");\ngoog.dom.TagName.EMBED = new goog.dom.TagName(\"EMBED\");\ngoog.dom.TagName.FIELDSET = new goog.dom.TagName(\"FIELDSET\");\ngoog.dom.TagName.FIGCAPTION = new goog.dom.TagName(\"FIGCAPTION\");\ngoog.dom.TagName.FIGURE = new goog.dom.TagName(\"FIGURE\");\ngoog.dom.TagName.FONT = new goog.dom.TagName(\"FONT\");\ngoog.dom.TagName.FOOTER = new goog.dom.TagName(\"FOOTER\");\ngoog.dom.TagName.FORM = new goog.dom.TagName(\"FORM\");\ngoog.dom.TagName.FRAME = new goog.dom.TagName(\"FRAME\");\ngoog.dom.TagName.FRAMESET = new goog.dom.TagName(\"FRAMESET\");\ngoog.dom.TagName.H1 = new goog.dom.TagName(\"H1\");\ngoog.dom.TagName.H2 = new goog.dom.TagName(\"H2\");\ngoog.dom.TagName.H3 = new goog.dom.TagName(\"H3\");\ngoog.dom.TagName.H4 = new goog.dom.TagName(\"H4\");\ngoog.dom.TagName.H5 = new goog.dom.TagName(\"H5\");\ngoog.dom.TagName.H6 = new goog.dom.TagName(\"H6\");\ngoog.dom.TagName.HEAD = new goog.dom.TagName(\"HEAD\");\ngoog.dom.TagName.HEADER = new goog.dom.TagName(\"HEADER\");\ngoog.dom.TagName.HGROUP = new goog.dom.TagName(\"HGROUP\");\ngoog.dom.TagName.HR = new goog.dom.TagName(\"HR\");\ngoog.dom.TagName.HTML = new goog.dom.TagName(\"HTML\");\ngoog.dom.TagName.I = new goog.dom.TagName(\"I\");\ngoog.dom.TagName.IFRAME = new goog.dom.TagName(\"IFRAME\");\ngoog.dom.TagName.IMG = new goog.dom.TagName(\"IMG\");\ngoog.dom.TagName.INPUT = new goog.dom.TagName(\"INPUT\");\ngoog.dom.TagName.INS = new goog.dom.TagName(\"INS\");\ngoog.dom.TagName.ISINDEX = new goog.dom.TagName(\"ISINDEX\");\ngoog.dom.TagName.KBD = new goog.dom.TagName(\"KBD\");\ngoog.dom.TagName.KEYGEN = new goog.dom.TagName(\"KEYGEN\");\ngoog.dom.TagName.LABEL = new goog.dom.TagName(\"LABEL\");\ngoog.dom.TagName.LEGEND = new goog.dom.TagName(\"LEGEND\");\ngoog.dom.TagName.LI = new goog.dom.TagName(\"LI\");\ngoog.dom.TagName.LINK = new goog.dom.TagName(\"LINK\");\ngoog.dom.TagName.MAIN = new goog.dom.TagName(\"MAIN\");\ngoog.dom.TagName.MAP = new goog.dom.TagName(\"MAP\");\ngoog.dom.TagName.MARK = new goog.dom.TagName(\"MARK\");\ngoog.dom.TagName.MATH = new goog.dom.TagName(\"MATH\");\ngoog.dom.TagName.MENU = new goog.dom.TagName(\"MENU\");\ngoog.dom.TagName.MENUITEM = new goog.dom.TagName(\"MENUITEM\");\ngoog.dom.TagName.META = new goog.dom.TagName(\"META\");\ngoog.dom.TagName.METER = new goog.dom.TagName(\"METER\");\ngoog.dom.TagName.NAV = new goog.dom.TagName(\"NAV\");\ngoog.dom.TagName.NOFRAMES = new goog.dom.TagName(\"NOFRAMES\");\ngoog.dom.TagName.NOSCRIPT = new goog.dom.TagName(\"NOSCRIPT\");\ngoog.dom.TagName.OBJECT = new goog.dom.TagName(\"OBJECT\");\ngoog.dom.TagName.OL = new goog.dom.TagName(\"OL\");\ngoog.dom.TagName.OPTGROUP = new goog.dom.TagName(\"OPTGROUP\");\ngoog.dom.TagName.OPTION = new goog.dom.TagName(\"OPTION\");\ngoog.dom.TagName.OUTPUT = new goog.dom.TagName(\"OUTPUT\");\ngoog.dom.TagName.P = new goog.dom.TagName(\"P\");\ngoog.dom.TagName.PARAM = new goog.dom.TagName(\"PARAM\");\ngoog.dom.TagName.PICTURE = new goog.dom.TagName(\"PICTURE\");\ngoog.dom.TagName.PRE = new goog.dom.TagName(\"PRE\");\ngoog.dom.TagName.PROGRESS = new goog.dom.TagName(\"PROGRESS\");\ngoog.dom.TagName.Q = new goog.dom.TagName(\"Q\");\ngoog.dom.TagName.RP = new goog.dom.TagName(\"RP\");\ngoog.dom.TagName.RT = new goog.dom.TagName(\"RT\");\ngoog.dom.TagName.RTC = new goog.dom.TagName(\"RTC\");\ngoog.dom.TagName.RUBY = new goog.dom.TagName(\"RUBY\");\ngoog.dom.TagName.S = new goog.dom.TagName(\"S\");\ngoog.dom.TagName.SAMP = new goog.dom.TagName(\"SAMP\");\ngoog.dom.TagName.SCRIPT = new goog.dom.TagName(\"SCRIPT\");\ngoog.dom.TagName.SECTION = new goog.dom.TagName(\"SECTION\");\ngoog.dom.TagName.SELECT = new goog.dom.TagName(\"SELECT\");\ngoog.dom.TagName.SMALL = new goog.dom.TagName(\"SMALL\");\ngoog.dom.TagName.SOURCE = new goog.dom.TagName(\"SOURCE\");\ngoog.dom.TagName.SPAN = new goog.dom.TagName(\"SPAN\");\ngoog.dom.TagName.STRIKE = new goog.dom.TagName(\"STRIKE\");\ngoog.dom.TagName.STRONG = new goog.dom.TagName(\"STRONG\");\ngoog.dom.TagName.STYLE = new goog.dom.TagName(\"STYLE\");\ngoog.dom.TagName.SUB = new goog.dom.TagName(\"SUB\");\ngoog.dom.TagName.SUMMARY = new goog.dom.TagName(\"SUMMARY\");\ngoog.dom.TagName.SUP = new goog.dom.TagName(\"SUP\");\ngoog.dom.TagName.SVG = new goog.dom.TagName(\"SVG\");\ngoog.dom.TagName.TABLE = new goog.dom.TagName(\"TABLE\");\ngoog.dom.TagName.TBODY = new goog.dom.TagName(\"TBODY\");\ngoog.dom.TagName.TD = new goog.dom.TagName(\"TD\");\ngoog.dom.TagName.TEMPLATE = new goog.dom.TagName(\"TEMPLATE\");\ngoog.dom.TagName.TEXTAREA = new goog.dom.TagName(\"TEXTAREA\");\ngoog.dom.TagName.TFOOT = new goog.dom.TagName(\"TFOOT\");\ngoog.dom.TagName.TH = new goog.dom.TagName(\"TH\");\ngoog.dom.TagName.THEAD = new goog.dom.TagName(\"THEAD\");\ngoog.dom.TagName.TIME = new goog.dom.TagName(\"TIME\");\ngoog.dom.TagName.TITLE = new goog.dom.TagName(\"TITLE\");\ngoog.dom.TagName.TR = new goog.dom.TagName(\"TR\");\ngoog.dom.TagName.TRACK = new goog.dom.TagName(\"TRACK\");\ngoog.dom.TagName.TT = new goog.dom.TagName(\"TT\");\ngoog.dom.TagName.U = new goog.dom.TagName(\"U\");\ngoog.dom.TagName.UL = new goog.dom.TagName(\"UL\");\ngoog.dom.TagName.VAR = new goog.dom.TagName(\"VAR\");\ngoog.dom.TagName.VIDEO = new goog.dom.TagName(\"VIDEO\");\ngoog.dom.TagName.WBR = new goog.dom.TagName(\"WBR\");\ngoog.dom.tags = {};\ngoog.dom.tags.VOID_TAGS_ = {area:!0, base:!0, br:!0, col:!0, command:!0, embed:!0, hr:!0, img:!0, input:!0, keygen:!0, link:!0, meta:!0, param:!0, source:!0, track:!0, wbr:!0};\ngoog.dom.tags.isVoidTag = function(a) {\n  return !0 === goog.dom.tags.VOID_TAGS_[a];\n};\ngoog.html = {};\ngoog.html.trustedtypes = {};\ngoog.html.trustedtypes.PRIVATE_DO_NOT_ACCESS_OR_ELSE_POLICY = goog.TRUSTED_TYPES_POLICY_NAME ? goog.createTrustedTypesPolicy(goog.TRUSTED_TYPES_POLICY_NAME + \"#html\") : null;\ngoog.string.TypedString = function() {\n};\ngoog.string.Const = function(a, b) {\n  this.stringConstValueWithSecurityContract__googStringSecurityPrivate_ = a === goog.string.Const.GOOG_STRING_CONSTRUCTOR_TOKEN_PRIVATE_ && b || \"\";\n  this.STRING_CONST_TYPE_MARKER__GOOG_STRING_SECURITY_PRIVATE_ = goog.string.Const.TYPE_MARKER_;\n};\ngoog.string.Const.prototype.implementsGoogStringTypedString = !0;\ngoog.string.Const.prototype.getTypedStringValue = function() {\n  return this.stringConstValueWithSecurityContract__googStringSecurityPrivate_;\n};\ngoog.DEBUG && (goog.string.Const.prototype.toString = function() {\n  return \"Const{\" + this.stringConstValueWithSecurityContract__googStringSecurityPrivate_ + \"}\";\n});\ngoog.string.Const.unwrap = function(a) {\n  if (a instanceof goog.string.Const && a.constructor === goog.string.Const && a.STRING_CONST_TYPE_MARKER__GOOG_STRING_SECURITY_PRIVATE_ === goog.string.Const.TYPE_MARKER_) {\n    return a.stringConstValueWithSecurityContract__googStringSecurityPrivate_;\n  }\n  goog.asserts.fail(\"expected object of type Const, got '\" + a + \"'\");\n  return \"type_error:Const\";\n};\ngoog.string.Const.from = function(a) {\n  return new goog.string.Const(goog.string.Const.GOOG_STRING_CONSTRUCTOR_TOKEN_PRIVATE_, a);\n};\ngoog.string.Const.TYPE_MARKER_ = {};\ngoog.string.Const.GOOG_STRING_CONSTRUCTOR_TOKEN_PRIVATE_ = {};\ngoog.string.Const.EMPTY = goog.string.Const.from(\"\");\ngoog.html.SafeScript = function() {\n  this.privateDoNotAccessOrElseSafeScriptWrappedValue_ = \"\";\n  this.SAFE_SCRIPT_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ = goog.html.SafeScript.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_;\n};\ngoog.html.SafeScript.prototype.implementsGoogStringTypedString = !0;\ngoog.html.SafeScript.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ = {};\ngoog.html.SafeScript.fromConstant = function(a) {\n  a = goog.string.Const.unwrap(a);\n  return 0 === a.length ? goog.html.SafeScript.EMPTY : goog.html.SafeScript.createSafeScriptSecurityPrivateDoNotAccessOrElse(a);\n};\ngoog.html.SafeScript.fromConstantAndArgs = function(a, b) {\n  for (var c = [], d = 1; d < arguments.length; d++) {\n    c.push(goog.html.SafeScript.stringify_(arguments[d]));\n  }\n  return goog.html.SafeScript.createSafeScriptSecurityPrivateDoNotAccessOrElse(\"(\" + goog.string.Const.unwrap(a) + \")(\" + c.join(\", \") + \");\");\n};\ngoog.html.SafeScript.fromJson = function(a) {\n  return goog.html.SafeScript.createSafeScriptSecurityPrivateDoNotAccessOrElse(goog.html.SafeScript.stringify_(a));\n};\ngoog.html.SafeScript.prototype.getTypedStringValue = function() {\n  return this.privateDoNotAccessOrElseSafeScriptWrappedValue_.toString();\n};\ngoog.DEBUG && (goog.html.SafeScript.prototype.toString = function() {\n  return \"SafeScript{\" + this.privateDoNotAccessOrElseSafeScriptWrappedValue_ + \"}\";\n});\ngoog.html.SafeScript.unwrap = function(a) {\n  return goog.html.SafeScript.unwrapTrustedScript(a).toString();\n};\ngoog.html.SafeScript.unwrapTrustedScript = function(a) {\n  if (a instanceof goog.html.SafeScript && a.constructor === goog.html.SafeScript && a.SAFE_SCRIPT_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ === goog.html.SafeScript.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_) {\n    return a.privateDoNotAccessOrElseSafeScriptWrappedValue_;\n  }\n  goog.asserts.fail(\"expected object of type SafeScript, got '\" + a + \"' of type \" + goog.typeOf(a));\n  return \"type_error:SafeScript\";\n};\ngoog.html.SafeScript.stringify_ = function(a) {\n  return JSON.stringify(a).replace(/</g, \"\\\\x3c\");\n};\ngoog.html.SafeScript.createSafeScriptSecurityPrivateDoNotAccessOrElse = function(a) {\n  return (new goog.html.SafeScript).initSecurityPrivateDoNotAccessOrElse_(a);\n};\ngoog.html.SafeScript.prototype.initSecurityPrivateDoNotAccessOrElse_ = function(a) {\n  this.privateDoNotAccessOrElseSafeScriptWrappedValue_ = goog.html.trustedtypes.PRIVATE_DO_NOT_ACCESS_OR_ELSE_POLICY ? goog.html.trustedtypes.PRIVATE_DO_NOT_ACCESS_OR_ELSE_POLICY.createScript(a) : a;\n  return this;\n};\ngoog.html.SafeScript.EMPTY = goog.html.SafeScript.createSafeScriptSecurityPrivateDoNotAccessOrElse(\"\");\ngoog.fs = {};\ngoog.fs.url = {};\ngoog.fs.url.createObjectUrl = function(a) {\n  return goog.fs.url.getUrlObject_().createObjectURL(a);\n};\ngoog.fs.url.revokeObjectUrl = function(a) {\n  goog.fs.url.getUrlObject_().revokeObjectURL(a);\n};\ngoog.fs.url.getUrlObject_ = function() {\n  var a = goog.fs.url.findUrlObject_();\n  if (null != a) {\n    return a;\n  }\n  throw Error(\"This browser doesn't seem to support blob URLs\");\n};\ngoog.fs.url.findUrlObject_ = function() {\n  return void 0 !== goog.global.URL && void 0 !== goog.global.URL.createObjectURL ? goog.global.URL : void 0 !== goog.global.webkitURL && void 0 !== goog.global.webkitURL.createObjectURL ? goog.global.webkitURL : void 0 !== goog.global.createObjectURL ? goog.global : null;\n};\ngoog.fs.url.browserSupportsObjectUrls = function() {\n  return null != goog.fs.url.findUrlObject_();\n};\ngoog.i18n = {};\ngoog.i18n.bidi = {};\ngoog.i18n.bidi.FORCE_RTL = !1;\ngoog.i18n.bidi.IS_RTL = goog.i18n.bidi.FORCE_RTL || (\"ar\" == goog.LOCALE.substring(0, 2).toLowerCase() || \"fa\" == goog.LOCALE.substring(0, 2).toLowerCase() || \"he\" == goog.LOCALE.substring(0, 2).toLowerCase() || \"iw\" == goog.LOCALE.substring(0, 2).toLowerCase() || \"ps\" == goog.LOCALE.substring(0, 2).toLowerCase() || \"sd\" == goog.LOCALE.substring(0, 2).toLowerCase() || \"ug\" == goog.LOCALE.substring(0, 2).toLowerCase() || \"ur\" == goog.LOCALE.substring(0, 2).toLowerCase() || \"yi\" == goog.LOCALE.substring(0,\n2).toLowerCase()) && (2 == goog.LOCALE.length || \"-\" == goog.LOCALE.substring(2, 3) || \"_\" == goog.LOCALE.substring(2, 3)) || 3 <= goog.LOCALE.length && \"ckb\" == goog.LOCALE.substring(0, 3).toLowerCase() && (3 == goog.LOCALE.length || \"-\" == goog.LOCALE.substring(3, 4) || \"_\" == goog.LOCALE.substring(3, 4)) || 7 <= goog.LOCALE.length && (\"-\" == goog.LOCALE.substring(2, 3) || \"_\" == goog.LOCALE.substring(2, 3)) && (\"adlm\" == goog.LOCALE.substring(3, 7).toLowerCase() || \"arab\" == goog.LOCALE.substring(3,\n7).toLowerCase() || \"hebr\" == goog.LOCALE.substring(3, 7).toLowerCase() || \"nkoo\" == goog.LOCALE.substring(3, 7).toLowerCase() || \"rohg\" == goog.LOCALE.substring(3, 7).toLowerCase() || \"thaa\" == goog.LOCALE.substring(3, 7).toLowerCase()) || 8 <= goog.LOCALE.length && (\"-\" == goog.LOCALE.substring(3, 4) || \"_\" == goog.LOCALE.substring(3, 4)) && (\"adlm\" == goog.LOCALE.substring(4, 8).toLowerCase() || \"arab\" == goog.LOCALE.substring(4, 8).toLowerCase() || \"hebr\" == goog.LOCALE.substring(4, 8).toLowerCase() ||\n\"nkoo\" == goog.LOCALE.substring(4, 8).toLowerCase() || \"rohg\" == goog.LOCALE.substring(4, 8).toLowerCase() || \"thaa\" == goog.LOCALE.substring(4, 8).toLowerCase());\ngoog.i18n.bidi.Format = {LRE:\"\\u202a\", RLE:\"\\u202b\", PDF:\"\\u202c\", LRM:\"\\u200e\", RLM:\"\\u200f\"};\ngoog.i18n.bidi.Dir = {LTR:1, RTL:-1, NEUTRAL:0};\ngoog.i18n.bidi.RIGHT = \"right\";\ngoog.i18n.bidi.LEFT = \"left\";\ngoog.i18n.bidi.I18N_RIGHT = goog.i18n.bidi.IS_RTL ? goog.i18n.bidi.LEFT : goog.i18n.bidi.RIGHT;\ngoog.i18n.bidi.I18N_LEFT = goog.i18n.bidi.IS_RTL ? goog.i18n.bidi.RIGHT : goog.i18n.bidi.LEFT;\ngoog.i18n.bidi.toDir = function(a, b) {\n  return \"number\" == typeof a ? 0 < a ? goog.i18n.bidi.Dir.LTR : 0 > a ? goog.i18n.bidi.Dir.RTL : b ? null : goog.i18n.bidi.Dir.NEUTRAL : null == a ? null : a ? goog.i18n.bidi.Dir.RTL : goog.i18n.bidi.Dir.LTR;\n};\ngoog.i18n.bidi.ltrChars_ = \"A-Za-z\\u00c0-\\u00d6\\u00d8-\\u00f6\\u00f8-\\u02b8\\u0300-\\u0590\\u0900-\\u1fff\\u200e\\u2c00-\\ud801\\ud804-\\ud839\\ud83c-\\udbff\\uf900-\\ufb1c\\ufe00-\\ufe6f\\ufefd-\\uffff\";\ngoog.i18n.bidi.rtlChars_ = \"\\u0591-\\u06ef\\u06fa-\\u08ff\\u200f\\ud802-\\ud803\\ud83a-\\ud83b\\ufb1d-\\ufdff\\ufe70-\\ufefc\";\ngoog.i18n.bidi.htmlSkipReg_ = /<[^>]*>|&[^;]+;/g;\ngoog.i18n.bidi.stripHtmlIfNeeded_ = function(a, b) {\n  return b ? a.replace(goog.i18n.bidi.htmlSkipReg_, \"\") : a;\n};\ngoog.i18n.bidi.rtlCharReg_ = new RegExp(\"[\" + goog.i18n.bidi.rtlChars_ + \"]\");\ngoog.i18n.bidi.ltrCharReg_ = new RegExp(\"[\" + goog.i18n.bidi.ltrChars_ + \"]\");\ngoog.i18n.bidi.hasAnyRtl = function(a, b) {\n  return goog.i18n.bidi.rtlCharReg_.test(goog.i18n.bidi.stripHtmlIfNeeded_(a, b));\n};\ngoog.i18n.bidi.hasRtlChar = goog.i18n.bidi.hasAnyRtl;\ngoog.i18n.bidi.hasAnyLtr = function(a, b) {\n  return goog.i18n.bidi.ltrCharReg_.test(goog.i18n.bidi.stripHtmlIfNeeded_(a, b));\n};\ngoog.i18n.bidi.ltrRe_ = new RegExp(\"^[\" + goog.i18n.bidi.ltrChars_ + \"]\");\ngoog.i18n.bidi.rtlRe_ = new RegExp(\"^[\" + goog.i18n.bidi.rtlChars_ + \"]\");\ngoog.i18n.bidi.isRtlChar = function(a) {\n  return goog.i18n.bidi.rtlRe_.test(a);\n};\ngoog.i18n.bidi.isLtrChar = function(a) {\n  return goog.i18n.bidi.ltrRe_.test(a);\n};\ngoog.i18n.bidi.isNeutralChar = function(a) {\n  return !goog.i18n.bidi.isLtrChar(a) && !goog.i18n.bidi.isRtlChar(a);\n};\ngoog.i18n.bidi.ltrDirCheckRe_ = new RegExp(\"^[^\" + goog.i18n.bidi.rtlChars_ + \"]*[\" + goog.i18n.bidi.ltrChars_ + \"]\");\ngoog.i18n.bidi.rtlDirCheckRe_ = new RegExp(\"^[^\" + goog.i18n.bidi.ltrChars_ + \"]*[\" + goog.i18n.bidi.rtlChars_ + \"]\");\ngoog.i18n.bidi.startsWithRtl = function(a, b) {\n  return goog.i18n.bidi.rtlDirCheckRe_.test(goog.i18n.bidi.stripHtmlIfNeeded_(a, b));\n};\ngoog.i18n.bidi.isRtlText = goog.i18n.bidi.startsWithRtl;\ngoog.i18n.bidi.startsWithLtr = function(a, b) {\n  return goog.i18n.bidi.ltrDirCheckRe_.test(goog.i18n.bidi.stripHtmlIfNeeded_(a, b));\n};\ngoog.i18n.bidi.isLtrText = goog.i18n.bidi.startsWithLtr;\ngoog.i18n.bidi.isRequiredLtrRe_ = /^http:\\/\\/.*/;\ngoog.i18n.bidi.isNeutralText = function(a, b) {\n  a = goog.i18n.bidi.stripHtmlIfNeeded_(a, b);\n  return goog.i18n.bidi.isRequiredLtrRe_.test(a) || !goog.i18n.bidi.hasAnyLtr(a) && !goog.i18n.bidi.hasAnyRtl(a);\n};\ngoog.i18n.bidi.ltrExitDirCheckRe_ = new RegExp(\"[\" + goog.i18n.bidi.ltrChars_ + \"][^\" + goog.i18n.bidi.rtlChars_ + \"]*$\");\ngoog.i18n.bidi.rtlExitDirCheckRe_ = new RegExp(\"[\" + goog.i18n.bidi.rtlChars_ + \"][^\" + goog.i18n.bidi.ltrChars_ + \"]*$\");\ngoog.i18n.bidi.endsWithLtr = function(a, b) {\n  return goog.i18n.bidi.ltrExitDirCheckRe_.test(goog.i18n.bidi.stripHtmlIfNeeded_(a, b));\n};\ngoog.i18n.bidi.isLtrExitText = goog.i18n.bidi.endsWithLtr;\ngoog.i18n.bidi.endsWithRtl = function(a, b) {\n  return goog.i18n.bidi.rtlExitDirCheckRe_.test(goog.i18n.bidi.stripHtmlIfNeeded_(a, b));\n};\ngoog.i18n.bidi.isRtlExitText = goog.i18n.bidi.endsWithRtl;\ngoog.i18n.bidi.rtlLocalesRe_ = /^(ar|ckb|dv|he|iw|fa|nqo|ps|sd|ug|ur|yi|.*[-_](Adlm|Arab|Hebr|Nkoo|Rohg|Thaa))(?!.*[-_](Latn|Cyrl)($|-|_))($|-|_)/i;\ngoog.i18n.bidi.isRtlLanguage = function(a) {\n  return goog.i18n.bidi.rtlLocalesRe_.test(a);\n};\ngoog.i18n.bidi.bracketGuardTextRe_ = /(\\(.*?\\)+)|(\\[.*?\\]+)|(\\{.*?\\}+)|(<.*?>+)/g;\ngoog.i18n.bidi.guardBracketInText = function(a, b) {\n  var c = (void 0 === b ? goog.i18n.bidi.hasAnyRtl(a) : b) ? goog.i18n.bidi.Format.RLM : goog.i18n.bidi.Format.LRM;\n  return a.replace(goog.i18n.bidi.bracketGuardTextRe_, c + \"$&\" + c);\n};\ngoog.i18n.bidi.enforceRtlInHtml = function(a) {\n  return \"<\" == a.charAt(0) ? a.replace(/<\\w+/, \"$& dir=rtl\") : \"\\n<span dir=rtl>\" + a + \"</span>\";\n};\ngoog.i18n.bidi.enforceRtlInText = function(a) {\n  return goog.i18n.bidi.Format.RLE + a + goog.i18n.bidi.Format.PDF;\n};\ngoog.i18n.bidi.enforceLtrInHtml = function(a) {\n  return \"<\" == a.charAt(0) ? a.replace(/<\\w+/, \"$& dir=ltr\") : \"\\n<span dir=ltr>\" + a + \"</span>\";\n};\ngoog.i18n.bidi.enforceLtrInText = function(a) {\n  return goog.i18n.bidi.Format.LRE + a + goog.i18n.bidi.Format.PDF;\n};\ngoog.i18n.bidi.dimensionsRe_ = /:\\s*([.\\d][.\\w]*)\\s+([.\\d][.\\w]*)\\s+([.\\d][.\\w]*)\\s+([.\\d][.\\w]*)/g;\ngoog.i18n.bidi.leftRe_ = /left/gi;\ngoog.i18n.bidi.rightRe_ = /right/gi;\ngoog.i18n.bidi.tempRe_ = /%%%%/g;\ngoog.i18n.bidi.mirrorCSS = function(a) {\n  return a.replace(goog.i18n.bidi.dimensionsRe_, \":$1 $4 $3 $2\").replace(goog.i18n.bidi.leftRe_, \"%%%%\").replace(goog.i18n.bidi.rightRe_, goog.i18n.bidi.LEFT).replace(goog.i18n.bidi.tempRe_, goog.i18n.bidi.RIGHT);\n};\ngoog.i18n.bidi.doubleQuoteSubstituteRe_ = /([\\u0591-\\u05f2])\"/g;\ngoog.i18n.bidi.singleQuoteSubstituteRe_ = /([\\u0591-\\u05f2])'/g;\ngoog.i18n.bidi.normalizeHebrewQuote = function(a) {\n  return a.replace(goog.i18n.bidi.doubleQuoteSubstituteRe_, \"$1\\u05f4\").replace(goog.i18n.bidi.singleQuoteSubstituteRe_, \"$1\\u05f3\");\n};\ngoog.i18n.bidi.wordSeparatorRe_ = /\\s+/;\ngoog.i18n.bidi.hasNumeralsRe_ = /[\\d\\u06f0-\\u06f9]/;\ngoog.i18n.bidi.rtlDetectionThreshold_ = 0.40;\ngoog.i18n.bidi.estimateDirection = function(a, b) {\n  for (var c = 0, d = 0, e = !1, f = goog.i18n.bidi.stripHtmlIfNeeded_(a, b).split(goog.i18n.bidi.wordSeparatorRe_), g = 0; g < f.length; g++) {\n    var h = f[g];\n    goog.i18n.bidi.startsWithRtl(h) ? (c++, d++) : goog.i18n.bidi.isRequiredLtrRe_.test(h) ? e = !0 : goog.i18n.bidi.hasAnyLtr(h) ? d++ : goog.i18n.bidi.hasNumeralsRe_.test(h) && (e = !0);\n  }\n  return 0 == d ? e ? goog.i18n.bidi.Dir.LTR : goog.i18n.bidi.Dir.NEUTRAL : c / d > goog.i18n.bidi.rtlDetectionThreshold_ ? goog.i18n.bidi.Dir.RTL : goog.i18n.bidi.Dir.LTR;\n};\ngoog.i18n.bidi.detectRtlDirectionality = function(a, b) {\n  return goog.i18n.bidi.estimateDirection(a, b) == goog.i18n.bidi.Dir.RTL;\n};\ngoog.i18n.bidi.setElementDirAndAlign = function(a, b) {\n  a && (b = goog.i18n.bidi.toDir(b)) && (a.style.textAlign = b == goog.i18n.bidi.Dir.RTL ? goog.i18n.bidi.RIGHT : goog.i18n.bidi.LEFT, a.dir = b == goog.i18n.bidi.Dir.RTL ? \"rtl\" : \"ltr\");\n};\ngoog.i18n.bidi.setElementDirByTextDirectionality = function(a, b) {\n  switch(goog.i18n.bidi.estimateDirection(b)) {\n    case goog.i18n.bidi.Dir.LTR:\n      a.dir = \"ltr\";\n      break;\n    case goog.i18n.bidi.Dir.RTL:\n      a.dir = \"rtl\";\n      break;\n    default:\n      a.removeAttribute(\"dir\");\n  }\n};\ngoog.i18n.bidi.DirectionalString = function() {\n};\ngoog.html.TrustedResourceUrl = function(a, b, c) {\n  this.privateDoNotAccessOrElseTrustedResourceUrlWrappedValue_ = a === goog.html.TrustedResourceUrl.CONSTRUCTOR_TOKEN_PRIVATE_ && b || \"\";\n  this.trustedURL_ = a === goog.html.TrustedResourceUrl.CONSTRUCTOR_TOKEN_PRIVATE_ && c || null;\n  this.TRUSTED_RESOURCE_URL_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ = goog.html.TrustedResourceUrl.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_;\n};\ngoog.html.TrustedResourceUrl.prototype.implementsGoogStringTypedString = !0;\ngoog.html.TrustedResourceUrl.prototype.getTypedStringValue = function() {\n  return this.privateDoNotAccessOrElseTrustedResourceUrlWrappedValue_.toString();\n};\ngoog.html.TrustedResourceUrl.prototype.implementsGoogI18nBidiDirectionalString = !0;\ngoog.html.TrustedResourceUrl.prototype.getDirection = function() {\n  return goog.i18n.bidi.Dir.LTR;\n};\ngoog.html.TrustedResourceUrl.prototype.cloneWithParams = function(a, b) {\n  var c = goog.html.TrustedResourceUrl.unwrap(this);\n  c = goog.html.TrustedResourceUrl.URL_PARAM_PARSER_.exec(c);\n  var d = c[3] || \"\";\n  return goog.html.TrustedResourceUrl.createTrustedResourceUrlSecurityPrivateDoNotAccessOrElse(c[1] + goog.html.TrustedResourceUrl.stringifyParams_(\"?\", c[2] || \"\", a) + goog.html.TrustedResourceUrl.stringifyParams_(\"#\", d, b));\n};\ngoog.DEBUG && (goog.html.TrustedResourceUrl.prototype.toString = function() {\n  return \"TrustedResourceUrl{\" + this.privateDoNotAccessOrElseTrustedResourceUrlWrappedValue_ + \"}\";\n});\ngoog.html.TrustedResourceUrl.unwrap = function(a) {\n  return goog.html.TrustedResourceUrl.unwrapTrustedScriptURL(a).toString();\n};\ngoog.html.TrustedResourceUrl.unwrapTrustedScriptURL = function(a) {\n  if (a instanceof goog.html.TrustedResourceUrl && a.constructor === goog.html.TrustedResourceUrl && a.TRUSTED_RESOURCE_URL_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ === goog.html.TrustedResourceUrl.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_) {\n    return a.privateDoNotAccessOrElseTrustedResourceUrlWrappedValue_;\n  }\n  goog.asserts.fail(\"expected object of type TrustedResourceUrl, got '\" + a + \"' of type \" + goog.typeOf(a));\n  return \"type_error:TrustedResourceUrl\";\n};\ngoog.html.TrustedResourceUrl.unwrapTrustedURL = function(a) {\n  return a.trustedURL_ ? a.trustedURL_ : goog.html.TrustedResourceUrl.unwrap(a);\n};\ngoog.html.TrustedResourceUrl.format = function(a, b) {\n  var c = goog.string.Const.unwrap(a);\n  if (!goog.html.TrustedResourceUrl.BASE_URL_.test(c)) {\n    throw Error(\"Invalid TrustedResourceUrl format: \" + c);\n  }\n  var d = c.replace(goog.html.TrustedResourceUrl.FORMAT_MARKER_, function(a, d) {\n    if (!Object.prototype.hasOwnProperty.call(b, d)) {\n      throw Error('Found marker, \"' + d + '\", in format string, \"' + c + '\", but no valid label mapping found in args: ' + JSON.stringify(b));\n    }\n    var e = b[d];\n    return e instanceof goog.string.Const ? goog.string.Const.unwrap(e) : encodeURIComponent(String(e));\n  });\n  return goog.html.TrustedResourceUrl.createTrustedResourceUrlSecurityPrivateDoNotAccessOrElse(d);\n};\ngoog.html.TrustedResourceUrl.FORMAT_MARKER_ = /%{(\\w+)}/g;\ngoog.html.TrustedResourceUrl.BASE_URL_ = /^((https:)?\\/\\/[0-9a-z.:[\\]-]+\\/|\\/[^/\\\\]|[^:/\\\\%]+\\/|[^:/\\\\%]*[?#]|about:blank#)/i;\ngoog.html.TrustedResourceUrl.URL_PARAM_PARSER_ = /^([^?#]*)(\\?[^#]*)?(#[\\s\\S]*)?/;\ngoog.html.TrustedResourceUrl.formatWithParams = function(a, b, c, d) {\n  return goog.html.TrustedResourceUrl.format(a, b).cloneWithParams(c, d);\n};\ngoog.html.TrustedResourceUrl.fromConstant = function(a) {\n  return goog.html.TrustedResourceUrl.createTrustedResourceUrlSecurityPrivateDoNotAccessOrElse(goog.string.Const.unwrap(a));\n};\ngoog.html.TrustedResourceUrl.fromConstants = function(a) {\n  for (var b = \"\", c = 0; c < a.length; c++) {\n    b += goog.string.Const.unwrap(a[c]);\n  }\n  return goog.html.TrustedResourceUrl.createTrustedResourceUrlSecurityPrivateDoNotAccessOrElse(b);\n};\ngoog.html.TrustedResourceUrl.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ = {};\ngoog.html.TrustedResourceUrl.createTrustedResourceUrlSecurityPrivateDoNotAccessOrElse = function(a) {\n  var b = goog.html.trustedtypes.PRIVATE_DO_NOT_ACCESS_OR_ELSE_POLICY ? goog.html.trustedtypes.PRIVATE_DO_NOT_ACCESS_OR_ELSE_POLICY.createScriptURL(a) : a;\n  a = goog.html.trustedtypes.PRIVATE_DO_NOT_ACCESS_OR_ELSE_POLICY ? goog.html.trustedtypes.PRIVATE_DO_NOT_ACCESS_OR_ELSE_POLICY.createURL(a) : null;\n  return new goog.html.TrustedResourceUrl(goog.html.TrustedResourceUrl.CONSTRUCTOR_TOKEN_PRIVATE_, b, a);\n};\ngoog.html.TrustedResourceUrl.stringifyParams_ = function(a, b, c) {\n  if (null == c) {\n    return b;\n  }\n  if (\"string\" === typeof c) {\n    return c ? a + encodeURIComponent(c) : \"\";\n  }\n  for (var d in c) {\n    var e = c[d];\n    e = goog.isArray(e) ? e : [e];\n    for (var f = 0; f < e.length; f++) {\n      var g = e[f];\n      null != g && (b || (b = a), b += (b.length > a.length ? \"&\" : \"\") + encodeURIComponent(d) + \"=\" + encodeURIComponent(String(g)));\n    }\n  }\n  return b;\n};\ngoog.html.TrustedResourceUrl.CONSTRUCTOR_TOKEN_PRIVATE_ = {};\ngoog.string.internal = {};\ngoog.string.internal.startsWith = function(a, b) {\n  return 0 == a.lastIndexOf(b, 0);\n};\ngoog.string.internal.endsWith = function(a, b) {\n  var c = a.length - b.length;\n  return 0 <= c && a.indexOf(b, c) == c;\n};\ngoog.string.internal.caseInsensitiveStartsWith = function(a, b) {\n  return 0 == goog.string.internal.caseInsensitiveCompare(b, a.substr(0, b.length));\n};\ngoog.string.internal.caseInsensitiveEndsWith = function(a, b) {\n  return 0 == goog.string.internal.caseInsensitiveCompare(b, a.substr(a.length - b.length, b.length));\n};\ngoog.string.internal.caseInsensitiveEquals = function(a, b) {\n  return a.toLowerCase() == b.toLowerCase();\n};\ngoog.string.internal.isEmptyOrWhitespace = function(a) {\n  return /^[\\s\\xa0]*$/.test(a);\n};\ngoog.string.internal.trim = goog.TRUSTED_SITE && String.prototype.trim ? function(a) {\n  return a.trim();\n} : function(a) {\n  return /^[\\s\\xa0]*([\\s\\S]*?)[\\s\\xa0]*$/.exec(a)[1];\n};\ngoog.string.internal.caseInsensitiveCompare = function(a, b) {\n  var c = String(a).toLowerCase(), d = String(b).toLowerCase();\n  return c < d ? -1 : c == d ? 0 : 1;\n};\ngoog.string.internal.newLineToBr = function(a, b) {\n  return a.replace(/(\\r\\n|\\r|\\n)/g, b ? \"<br />\" : \"<br>\");\n};\ngoog.string.internal.htmlEscape = function(a, b) {\n  if (b) {\n    a = a.replace(goog.string.internal.AMP_RE_, \"&amp;\").replace(goog.string.internal.LT_RE_, \"&lt;\").replace(goog.string.internal.GT_RE_, \"&gt;\").replace(goog.string.internal.QUOT_RE_, \"&quot;\").replace(goog.string.internal.SINGLE_QUOTE_RE_, \"&#39;\").replace(goog.string.internal.NULL_RE_, \"&#0;\");\n  } else {\n    if (!goog.string.internal.ALL_RE_.test(a)) {\n      return a;\n    }\n    -1 != a.indexOf(\"&\") && (a = a.replace(goog.string.internal.AMP_RE_, \"&amp;\"));\n    -1 != a.indexOf(\"<\") && (a = a.replace(goog.string.internal.LT_RE_, \"&lt;\"));\n    -1 != a.indexOf(\">\") && (a = a.replace(goog.string.internal.GT_RE_, \"&gt;\"));\n    -1 != a.indexOf('\"') && (a = a.replace(goog.string.internal.QUOT_RE_, \"&quot;\"));\n    -1 != a.indexOf(\"'\") && (a = a.replace(goog.string.internal.SINGLE_QUOTE_RE_, \"&#39;\"));\n    -1 != a.indexOf(\"\\x00\") && (a = a.replace(goog.string.internal.NULL_RE_, \"&#0;\"));\n  }\n  return a;\n};\ngoog.string.internal.AMP_RE_ = /&/g;\ngoog.string.internal.LT_RE_ = /</g;\ngoog.string.internal.GT_RE_ = />/g;\ngoog.string.internal.QUOT_RE_ = /\"/g;\ngoog.string.internal.SINGLE_QUOTE_RE_ = /'/g;\ngoog.string.internal.NULL_RE_ = /\\x00/g;\ngoog.string.internal.ALL_RE_ = /[\\x00&<>\"']/;\ngoog.string.internal.whitespaceEscape = function(a, b) {\n  return goog.string.internal.newLineToBr(a.replace(/  /g, \" &#160;\"), b);\n};\ngoog.string.internal.contains = function(a, b) {\n  return -1 != a.indexOf(b);\n};\ngoog.string.internal.caseInsensitiveContains = function(a, b) {\n  return goog.string.internal.contains(a.toLowerCase(), b.toLowerCase());\n};\ngoog.string.internal.compareVersions = function(a, b) {\n  for (var c = 0, d = goog.string.internal.trim(String(a)).split(\".\"), e = goog.string.internal.trim(String(b)).split(\".\"), f = Math.max(d.length, e.length), g = 0; 0 == c && g < f; g++) {\n    var h = d[g] || \"\", k = e[g] || \"\";\n    do {\n      h = /(\\d*)(\\D*)(.*)/.exec(h) || [\"\", \"\", \"\", \"\"];\n      k = /(\\d*)(\\D*)(.*)/.exec(k) || [\"\", \"\", \"\", \"\"];\n      if (0 == h[0].length && 0 == k[0].length) {\n        break;\n      }\n      c = 0 == h[1].length ? 0 : parseInt(h[1], 10);\n      var l = 0 == k[1].length ? 0 : parseInt(k[1], 10);\n      c = goog.string.internal.compareElements_(c, l) || goog.string.internal.compareElements_(0 == h[2].length, 0 == k[2].length) || goog.string.internal.compareElements_(h[2], k[2]);\n      h = h[3];\n      k = k[3];\n    } while (0 == c);\n  }\n  return c;\n};\ngoog.string.internal.compareElements_ = function(a, b) {\n  return a < b ? -1 : a > b ? 1 : 0;\n};\ngoog.html.SafeUrl = function(a, b) {\n  this.privateDoNotAccessOrElseSafeUrlWrappedValue_ = a === goog.html.SafeUrl.CONSTRUCTOR_TOKEN_PRIVATE_ && b || \"\";\n  this.SAFE_URL_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ = goog.html.SafeUrl.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_;\n};\ngoog.html.SafeUrl.INNOCUOUS_STRING = \"about:invalid#zClosurez\";\ngoog.html.SafeUrl.prototype.implementsGoogStringTypedString = !0;\ngoog.html.SafeUrl.prototype.getTypedStringValue = function() {\n  return this.privateDoNotAccessOrElseSafeUrlWrappedValue_.toString();\n};\ngoog.html.SafeUrl.prototype.implementsGoogI18nBidiDirectionalString = !0;\ngoog.html.SafeUrl.prototype.getDirection = function() {\n  return goog.i18n.bidi.Dir.LTR;\n};\ngoog.DEBUG && (goog.html.SafeUrl.prototype.toString = function() {\n  return \"SafeUrl{\" + this.privateDoNotAccessOrElseSafeUrlWrappedValue_ + \"}\";\n});\ngoog.html.SafeUrl.unwrap = function(a) {\n  return goog.html.SafeUrl.unwrapTrustedURL(a).toString();\n};\ngoog.html.SafeUrl.unwrapTrustedURL = function(a) {\n  if (a instanceof goog.html.SafeUrl && a.constructor === goog.html.SafeUrl && a.SAFE_URL_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ === goog.html.SafeUrl.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_) {\n    return a.privateDoNotAccessOrElseSafeUrlWrappedValue_;\n  }\n  goog.asserts.fail(\"expected object of type SafeUrl, got '\" + a + \"' of type \" + goog.typeOf(a));\n  return \"type_error:SafeUrl\";\n};\ngoog.html.SafeUrl.fromConstant = function(a) {\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(goog.string.Const.unwrap(a));\n};\ngoog.html.SAFE_MIME_TYPE_PATTERN_ = /^(?:audio\\/(?:3gpp2|3gpp|aac|L16|midi|mp3|mp4|mpeg|oga|ogg|opus|x-m4a|x-wav|wav|webm)|image\\/(?:bmp|gif|jpeg|jpg|png|tiff|webp|x-icon)|text\\/csv|video\\/(?:mpeg|mp4|ogg|webm|quicktime))(?:;\\w+=(?:\\w+|\"[\\w;=]+\"))*$/i;\ngoog.html.SafeUrl.isSafeMimeType = function(a) {\n  return goog.html.SAFE_MIME_TYPE_PATTERN_.test(a);\n};\ngoog.html.SafeUrl.fromBlob = function(a) {\n  a = goog.html.SAFE_MIME_TYPE_PATTERN_.test(a.type) ? goog.fs.url.createObjectUrl(a) : goog.html.SafeUrl.INNOCUOUS_STRING;\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(a);\n};\ngoog.html.DATA_URL_PATTERN_ = /^data:([^,]*);base64,[a-z0-9+\\/]+=*$/i;\ngoog.html.SafeUrl.fromDataUrl = function(a) {\n  a = a.replace(/(%0A|%0D)/g, \"\");\n  var b = a.match(goog.html.DATA_URL_PATTERN_);\n  b = b && goog.html.SAFE_MIME_TYPE_PATTERN_.test(b[1]);\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(b ? a : goog.html.SafeUrl.INNOCUOUS_STRING);\n};\ngoog.html.SafeUrl.fromTelUrl = function(a) {\n  goog.string.internal.caseInsensitiveStartsWith(a, \"tel:\") || (a = goog.html.SafeUrl.INNOCUOUS_STRING);\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(a);\n};\ngoog.html.SIP_URL_PATTERN_ = /^sip[s]?:[+a-z0-9_.!$%&'*\\/=^`{|}~-]+@([a-z0-9-]+\\.)+[a-z0-9]{2,63}$/i;\ngoog.html.SafeUrl.fromSipUrl = function(a) {\n  goog.html.SIP_URL_PATTERN_.test(decodeURIComponent(a)) || (a = goog.html.SafeUrl.INNOCUOUS_STRING);\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(a);\n};\ngoog.html.SafeUrl.fromFacebookMessengerUrl = function(a) {\n  goog.string.internal.caseInsensitiveStartsWith(a, \"fb-messenger://share\") || (a = goog.html.SafeUrl.INNOCUOUS_STRING);\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(a);\n};\ngoog.html.SafeUrl.fromWhatsAppUrl = function(a) {\n  goog.string.internal.caseInsensitiveStartsWith(a, \"whatsapp://send\") || (a = goog.html.SafeUrl.INNOCUOUS_STRING);\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(a);\n};\ngoog.html.SafeUrl.fromSmsUrl = function(a) {\n  goog.string.internal.caseInsensitiveStartsWith(a, \"sms:\") && goog.html.SafeUrl.isSmsUrlBodyValid_(a) || (a = goog.html.SafeUrl.INNOCUOUS_STRING);\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(a);\n};\ngoog.html.SafeUrl.isSmsUrlBodyValid_ = function(a) {\n  var b = a.indexOf(\"#\");\n  0 < b && (a = a.substring(0, b));\n  b = a.match(/[?&]body=/gi);\n  if (!b) {\n    return !0;\n  }\n  if (1 < b.length) {\n    return !1;\n  }\n  a = a.match(/[?&]body=([^&]*)/)[1];\n  if (!a) {\n    return !0;\n  }\n  try {\n    decodeURIComponent(a);\n  } catch (c) {\n    return !1;\n  }\n  return /^(?:[a-z0-9\\-_.~]|%[0-9a-f]{2})+$/i.test(a);\n};\ngoog.html.SafeUrl.fromSshUrl = function(a) {\n  goog.string.internal.caseInsensitiveStartsWith(a, \"ssh://\") || (a = goog.html.SafeUrl.INNOCUOUS_STRING);\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(a);\n};\ngoog.html.SafeUrl.sanitizeChromeExtensionUrl = function(a, b) {\n  return goog.html.SafeUrl.sanitizeExtensionUrl_(/^chrome-extension:\\/\\/([^\\/]+)\\//, a, b);\n};\ngoog.html.SafeUrl.sanitizeFirefoxExtensionUrl = function(a, b) {\n  return goog.html.SafeUrl.sanitizeExtensionUrl_(/^moz-extension:\\/\\/([^\\/]+)\\//, a, b);\n};\ngoog.html.SafeUrl.sanitizeEdgeExtensionUrl = function(a, b) {\n  return goog.html.SafeUrl.sanitizeExtensionUrl_(/^ms-browser-extension:\\/\\/([^\\/]+)\\//, a, b);\n};\ngoog.html.SafeUrl.sanitizeExtensionUrl_ = function(a, b, c) {\n  (a = a.exec(b)) ? (a = a[1], -1 == (c instanceof goog.string.Const ? [goog.string.Const.unwrap(c)] : c.map(function(a) {\n    return goog.string.Const.unwrap(a);\n  })).indexOf(a) && (b = goog.html.SafeUrl.INNOCUOUS_STRING)) : b = goog.html.SafeUrl.INNOCUOUS_STRING;\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(b);\n};\ngoog.html.SafeUrl.fromTrustedResourceUrl = function(a) {\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(goog.html.TrustedResourceUrl.unwrap(a));\n};\ngoog.html.SAFE_URL_PATTERN_ = /^(?:(?:https?|mailto|ftp):|[^:/?#]*(?:[/?#]|$))/i;\ngoog.html.SafeUrl.SAFE_URL_PATTERN = goog.html.SAFE_URL_PATTERN_;\ngoog.html.SafeUrl.sanitize = function(a) {\n  if (a instanceof goog.html.SafeUrl) {\n    return a;\n  }\n  a = \"object\" == typeof a && a.implementsGoogStringTypedString ? a.getTypedStringValue() : String(a);\n  goog.html.SAFE_URL_PATTERN_.test(a) || (a = goog.html.SafeUrl.INNOCUOUS_STRING);\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(a);\n};\ngoog.html.SafeUrl.sanitizeAssertUnchanged = function(a, b) {\n  if (a instanceof goog.html.SafeUrl) {\n    return a;\n  }\n  a = \"object\" == typeof a && a.implementsGoogStringTypedString ? a.getTypedStringValue() : String(a);\n  if (b && /^data:/i.test(a)) {\n    var c = goog.html.SafeUrl.fromDataUrl(a);\n    if (c.getTypedStringValue() == a) {\n      return c;\n    }\n  }\n  goog.asserts.assert(goog.html.SAFE_URL_PATTERN_.test(a), \"%s does not match the safe URL pattern\", a) || (a = goog.html.SafeUrl.INNOCUOUS_STRING);\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(a);\n};\ngoog.html.SafeUrl.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ = {};\ngoog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse = function(a) {\n  return new goog.html.SafeUrl(goog.html.SafeUrl.CONSTRUCTOR_TOKEN_PRIVATE_, goog.html.trustedtypes.PRIVATE_DO_NOT_ACCESS_OR_ELSE_POLICY ? goog.html.trustedtypes.PRIVATE_DO_NOT_ACCESS_OR_ELSE_POLICY.createURL(a) : a);\n};\ngoog.html.SafeUrl.ABOUT_BLANK = goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(\"about:blank\");\ngoog.html.SafeUrl.CONSTRUCTOR_TOKEN_PRIVATE_ = {};\ngoog.html.SafeStyle = function() {\n  this.privateDoNotAccessOrElseSafeStyleWrappedValue_ = \"\";\n  this.SAFE_STYLE_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ = goog.html.SafeStyle.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_;\n};\ngoog.html.SafeStyle.prototype.implementsGoogStringTypedString = !0;\ngoog.html.SafeStyle.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ = {};\ngoog.html.SafeStyle.fromConstant = function(a) {\n  a = goog.string.Const.unwrap(a);\n  if (0 === a.length) {\n    return goog.html.SafeStyle.EMPTY;\n  }\n  goog.asserts.assert(goog.string.internal.endsWith(a, \";\"), \"Last character of style string is not ';': \" + a);\n  goog.asserts.assert(goog.string.internal.contains(a, \":\"), \"Style string must contain at least one ':', to specify a \\\"name: value\\\" pair: \" + a);\n  return goog.html.SafeStyle.createSafeStyleSecurityPrivateDoNotAccessOrElse(a);\n};\ngoog.html.SafeStyle.prototype.getTypedStringValue = function() {\n  return this.privateDoNotAccessOrElseSafeStyleWrappedValue_;\n};\ngoog.DEBUG && (goog.html.SafeStyle.prototype.toString = function() {\n  return \"SafeStyle{\" + this.privateDoNotAccessOrElseSafeStyleWrappedValue_ + \"}\";\n});\ngoog.html.SafeStyle.unwrap = function(a) {\n  if (a instanceof goog.html.SafeStyle && a.constructor === goog.html.SafeStyle && a.SAFE_STYLE_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ === goog.html.SafeStyle.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_) {\n    return a.privateDoNotAccessOrElseSafeStyleWrappedValue_;\n  }\n  goog.asserts.fail(\"expected object of type SafeStyle, got '\" + a + \"' of type \" + goog.typeOf(a));\n  return \"type_error:SafeStyle\";\n};\ngoog.html.SafeStyle.createSafeStyleSecurityPrivateDoNotAccessOrElse = function(a) {\n  return (new goog.html.SafeStyle).initSecurityPrivateDoNotAccessOrElse_(a);\n};\ngoog.html.SafeStyle.prototype.initSecurityPrivateDoNotAccessOrElse_ = function(a) {\n  this.privateDoNotAccessOrElseSafeStyleWrappedValue_ = a;\n  return this;\n};\ngoog.html.SafeStyle.EMPTY = goog.html.SafeStyle.createSafeStyleSecurityPrivateDoNotAccessOrElse(\"\");\ngoog.html.SafeStyle.INNOCUOUS_STRING = \"zClosurez\";\ngoog.html.SafeStyle.create = function(a) {\n  var b = \"\", c;\n  for (c in a) {\n    if (!/^[-_a-zA-Z0-9]+$/.test(c)) {\n      throw Error(\"Name allows only [-_a-zA-Z0-9], got: \" + c);\n    }\n    var d = a[c];\n    null != d && (d = goog.isArray(d) ? goog.array.map(d, goog.html.SafeStyle.sanitizePropertyValue_).join(\" \") : goog.html.SafeStyle.sanitizePropertyValue_(d), b += c + \":\" + d + \";\");\n  }\n  return b ? goog.html.SafeStyle.createSafeStyleSecurityPrivateDoNotAccessOrElse(b) : goog.html.SafeStyle.EMPTY;\n};\ngoog.html.SafeStyle.sanitizePropertyValue_ = function(a) {\n  if (a instanceof goog.html.SafeUrl) {\n    return 'url(\"' + goog.html.SafeUrl.unwrap(a).replace(/</g, \"%3c\").replace(/[\\\\\"]/g, \"\\\\$&\") + '\")';\n  }\n  a = a instanceof goog.string.Const ? goog.string.Const.unwrap(a) : goog.html.SafeStyle.sanitizePropertyValueString_(String(a));\n  if (/[{;}]/.test(a)) {\n    throw new goog.asserts.AssertionError(\"Value does not allow [{;}], got: %s.\", [a]);\n  }\n  return a;\n};\ngoog.html.SafeStyle.sanitizePropertyValueString_ = function(a) {\n  var b = a.replace(goog.html.SafeStyle.FUNCTIONS_RE_, \"$1\").replace(goog.html.SafeStyle.FUNCTIONS_RE_, \"$1\").replace(goog.html.SafeStyle.URL_RE_, \"url\");\n  if (goog.html.SafeStyle.VALUE_RE_.test(b)) {\n    if (goog.html.SafeStyle.COMMENT_RE_.test(a)) {\n      return goog.asserts.fail(\"String value disallows comments, got: \" + a), goog.html.SafeStyle.INNOCUOUS_STRING;\n    }\n    if (!goog.html.SafeStyle.hasBalancedQuotes_(a)) {\n      return goog.asserts.fail(\"String value requires balanced quotes, got: \" + a), goog.html.SafeStyle.INNOCUOUS_STRING;\n    }\n    if (!goog.html.SafeStyle.hasBalancedSquareBrackets_(a)) {\n      return goog.asserts.fail(\"String value requires balanced square brackets and one identifier per pair of brackets, got: \" + a), goog.html.SafeStyle.INNOCUOUS_STRING;\n    }\n  } else {\n    return goog.asserts.fail(\"String value allows only \" + goog.html.SafeStyle.VALUE_ALLOWED_CHARS_ + \" and simple functions, got: \" + a), goog.html.SafeStyle.INNOCUOUS_STRING;\n  }\n  return goog.html.SafeStyle.sanitizeUrl_(a);\n};\ngoog.html.SafeStyle.hasBalancedQuotes_ = function(a) {\n  for (var b = !0, c = !0, d = 0; d < a.length; d++) {\n    var e = a.charAt(d);\n    \"'\" == e && c ? b = !b : '\"' == e && b && (c = !c);\n  }\n  return b && c;\n};\ngoog.html.SafeStyle.hasBalancedSquareBrackets_ = function(a) {\n  for (var b = !0, c = /^[-_a-zA-Z0-9]$/, d = 0; d < a.length; d++) {\n    var e = a.charAt(d);\n    if (\"]\" == e) {\n      if (b) {\n        return !1;\n      }\n      b = !0;\n    } else {\n      if (\"[\" == e) {\n        if (!b) {\n          return !1;\n        }\n        b = !1;\n      } else {\n        if (!b && !c.test(e)) {\n          return !1;\n        }\n      }\n    }\n  }\n  return b;\n};\ngoog.html.SafeStyle.VALUE_ALLOWED_CHARS_ = \"[-,.\\\"'%_!# a-zA-Z0-9\\\\[\\\\]]\";\ngoog.html.SafeStyle.VALUE_RE_ = new RegExp(\"^\" + goog.html.SafeStyle.VALUE_ALLOWED_CHARS_ + \"+$\");\ngoog.html.SafeStyle.URL_RE_ = RegExp(\"\\\\b(url\\\\([ \\t\\n]*)('[ -&(-\\\\[\\\\]-~]*'|\\\"[ !#-\\\\[\\\\]-~]*\\\"|[!#-&*-\\\\[\\\\]-~]*)([ \\t\\n]*\\\\))\", \"g\");\ngoog.html.SafeStyle.ALLOWED_FUNCTIONS_ = \"calc cubic-bezier fit-content hsl hsla matrix minmax repeat rgb rgba (rotate|scale|translate)(X|Y|Z|3d)?\".split(\" \");\ngoog.html.SafeStyle.FUNCTIONS_RE_ = new RegExp(\"\\\\b(\" + goog.html.SafeStyle.ALLOWED_FUNCTIONS_.join(\"|\") + \")\\\\([-+*/0-9a-z.%\\\\[\\\\], ]+\\\\)\", \"g\");\ngoog.html.SafeStyle.COMMENT_RE_ = /\\/\\*/;\ngoog.html.SafeStyle.sanitizeUrl_ = function(a) {\n  return a.replace(goog.html.SafeStyle.URL_RE_, function(a, c, d, e) {\n    var b = \"\";\n    d = d.replace(/^(['\"])(.*)\\1$/, function(a, c, d) {\n      b = c;\n      return d;\n    });\n    a = goog.html.SafeUrl.sanitize(d).getTypedStringValue();\n    return c + b + a + b + e;\n  });\n};\ngoog.html.SafeStyle.concat = function(a) {\n  var b = \"\", c = function(a) {\n    goog.isArray(a) ? goog.array.forEach(a, c) : b += goog.html.SafeStyle.unwrap(a);\n  };\n  goog.array.forEach(arguments, c);\n  return b ? goog.html.SafeStyle.createSafeStyleSecurityPrivateDoNotAccessOrElse(b) : goog.html.SafeStyle.EMPTY;\n};\ngoog.html.SafeStyleSheet = function() {\n  this.privateDoNotAccessOrElseSafeStyleSheetWrappedValue_ = \"\";\n  this.SAFE_STYLE_SHEET_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ = goog.html.SafeStyleSheet.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_;\n};\ngoog.html.SafeStyleSheet.prototype.implementsGoogStringTypedString = !0;\ngoog.html.SafeStyleSheet.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ = {};\ngoog.html.SafeStyleSheet.createRule = function(a, b) {\n  if (goog.string.internal.contains(a, \"<\")) {\n    throw Error(\"Selector does not allow '<', got: \" + a);\n  }\n  var c = a.replace(/('|\")((?!\\1)[^\\r\\n\\f\\\\]|\\\\[\\s\\S])*\\1/g, \"\");\n  if (!/^[-_a-zA-Z0-9#.:* ,>+~[\\]()=^$|]+$/.test(c)) {\n    throw Error(\"Selector allows only [-_a-zA-Z0-9#.:* ,>+~[\\\\]()=^$|] and strings, got: \" + a);\n  }\n  if (!goog.html.SafeStyleSheet.hasBalancedBrackets_(c)) {\n    throw Error(\"() and [] in selector must be balanced, got: \" + a);\n  }\n  b instanceof goog.html.SafeStyle || (b = goog.html.SafeStyle.create(b));\n  c = a + \"{\" + goog.html.SafeStyle.unwrap(b).replace(/</g, \"\\\\3C \") + \"}\";\n  return goog.html.SafeStyleSheet.createSafeStyleSheetSecurityPrivateDoNotAccessOrElse(c);\n};\ngoog.html.SafeStyleSheet.hasBalancedBrackets_ = function(a) {\n  for (var b = {\"(\":\")\", \"[\":\"]\"}, c = [], d = 0; d < a.length; d++) {\n    var e = a[d];\n    if (b[e]) {\n      c.push(b[e]);\n    } else {\n      if (goog.object.contains(b, e) && c.pop() != e) {\n        return !1;\n      }\n    }\n  }\n  return 0 == c.length;\n};\ngoog.html.SafeStyleSheet.concat = function(a) {\n  var b = \"\", c = function(a) {\n    goog.isArray(a) ? goog.array.forEach(a, c) : b += goog.html.SafeStyleSheet.unwrap(a);\n  };\n  goog.array.forEach(arguments, c);\n  return goog.html.SafeStyleSheet.createSafeStyleSheetSecurityPrivateDoNotAccessOrElse(b);\n};\ngoog.html.SafeStyleSheet.fromConstant = function(a) {\n  a = goog.string.Const.unwrap(a);\n  if (0 === a.length) {\n    return goog.html.SafeStyleSheet.EMPTY;\n  }\n  goog.asserts.assert(!goog.string.internal.contains(a, \"<\"), \"Forbidden '<' character in style sheet string: \" + a);\n  return goog.html.SafeStyleSheet.createSafeStyleSheetSecurityPrivateDoNotAccessOrElse(a);\n};\ngoog.html.SafeStyleSheet.prototype.getTypedStringValue = function() {\n  return this.privateDoNotAccessOrElseSafeStyleSheetWrappedValue_;\n};\ngoog.DEBUG && (goog.html.SafeStyleSheet.prototype.toString = function() {\n  return \"SafeStyleSheet{\" + this.privateDoNotAccessOrElseSafeStyleSheetWrappedValue_ + \"}\";\n});\ngoog.html.SafeStyleSheet.unwrap = function(a) {\n  if (a instanceof goog.html.SafeStyleSheet && a.constructor === goog.html.SafeStyleSheet && a.SAFE_STYLE_SHEET_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ === goog.html.SafeStyleSheet.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_) {\n    return a.privateDoNotAccessOrElseSafeStyleSheetWrappedValue_;\n  }\n  goog.asserts.fail(\"expected object of type SafeStyleSheet, got '\" + a + \"' of type \" + goog.typeOf(a));\n  return \"type_error:SafeStyleSheet\";\n};\ngoog.html.SafeStyleSheet.createSafeStyleSheetSecurityPrivateDoNotAccessOrElse = function(a) {\n  return (new goog.html.SafeStyleSheet).initSecurityPrivateDoNotAccessOrElse_(a);\n};\ngoog.html.SafeStyleSheet.prototype.initSecurityPrivateDoNotAccessOrElse_ = function(a) {\n  this.privateDoNotAccessOrElseSafeStyleSheetWrappedValue_ = a;\n  return this;\n};\ngoog.html.SafeStyleSheet.EMPTY = goog.html.SafeStyleSheet.createSafeStyleSheetSecurityPrivateDoNotAccessOrElse(\"\");\ngoog.labs = {};\ngoog.labs.userAgent = {};\ngoog.labs.userAgent.util = {};\ngoog.labs.userAgent.util.getNativeUserAgentString_ = function() {\n  var a = goog.labs.userAgent.util.getNavigator_();\n  return a && (a = a.userAgent) ? a : \"\";\n};\ngoog.labs.userAgent.util.getNavigator_ = function() {\n  return goog.global.navigator;\n};\ngoog.labs.userAgent.util.userAgent_ = goog.labs.userAgent.util.getNativeUserAgentString_();\ngoog.labs.userAgent.util.setUserAgent = function(a) {\n  goog.labs.userAgent.util.userAgent_ = a || goog.labs.userAgent.util.getNativeUserAgentString_();\n};\ngoog.labs.userAgent.util.getUserAgent = function() {\n  return goog.labs.userAgent.util.userAgent_;\n};\ngoog.labs.userAgent.util.matchUserAgent = function(a) {\n  var b = goog.labs.userAgent.util.getUserAgent();\n  return goog.string.internal.contains(b, a);\n};\ngoog.labs.userAgent.util.matchUserAgentIgnoreCase = function(a) {\n  var b = goog.labs.userAgent.util.getUserAgent();\n  return goog.string.internal.caseInsensitiveContains(b, a);\n};\ngoog.labs.userAgent.util.extractVersionTuples = function(a) {\n  for (var b = RegExp(\"(\\\\w[\\\\w ]+)/([^\\\\s]+)\\\\s*(?:\\\\((.*?)\\\\))?\", \"g\"), c = [], d; d = b.exec(a);) {\n    c.push([d[1], d[2], d[3] || void 0]);\n  }\n  return c;\n};\ngoog.labs.userAgent.browser = {};\ngoog.labs.userAgent.browser.matchOpera_ = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Opera\");\n};\ngoog.labs.userAgent.browser.matchIE_ = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Trident\") || goog.labs.userAgent.util.matchUserAgent(\"MSIE\");\n};\ngoog.labs.userAgent.browser.matchEdgeHtml_ = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Edge\");\n};\ngoog.labs.userAgent.browser.matchEdgeChromium_ = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Edg/\");\n};\ngoog.labs.userAgent.browser.matchOperaChromium_ = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"OPR\");\n};\ngoog.labs.userAgent.browser.matchFirefox_ = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Firefox\") || goog.labs.userAgent.util.matchUserAgent(\"FxiOS\");\n};\ngoog.labs.userAgent.browser.matchSafari_ = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Safari\") && !(goog.labs.userAgent.browser.matchChrome_() || goog.labs.userAgent.browser.matchCoast_() || goog.labs.userAgent.browser.matchOpera_() || goog.labs.userAgent.browser.matchEdgeHtml_() || goog.labs.userAgent.browser.matchEdgeChromium_() || goog.labs.userAgent.browser.matchOperaChromium_() || goog.labs.userAgent.browser.matchFirefox_() || goog.labs.userAgent.browser.isSilk() || goog.labs.userAgent.util.matchUserAgent(\"Android\"));\n};\ngoog.labs.userAgent.browser.matchCoast_ = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Coast\");\n};\ngoog.labs.userAgent.browser.matchIosWebview_ = function() {\n  return (goog.labs.userAgent.util.matchUserAgent(\"iPad\") || goog.labs.userAgent.util.matchUserAgent(\"iPhone\")) && !goog.labs.userAgent.browser.matchSafari_() && !goog.labs.userAgent.browser.matchChrome_() && !goog.labs.userAgent.browser.matchCoast_() && !goog.labs.userAgent.browser.matchFirefox_() && goog.labs.userAgent.util.matchUserAgent(\"AppleWebKit\");\n};\ngoog.labs.userAgent.browser.matchChrome_ = function() {\n  return (goog.labs.userAgent.util.matchUserAgent(\"Chrome\") || goog.labs.userAgent.util.matchUserAgent(\"CriOS\")) && !goog.labs.userAgent.browser.matchEdgeHtml_();\n};\ngoog.labs.userAgent.browser.matchAndroidBrowser_ = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Android\") && !(goog.labs.userAgent.browser.isChrome() || goog.labs.userAgent.browser.isFirefox() || goog.labs.userAgent.browser.isOpera() || goog.labs.userAgent.browser.isSilk());\n};\ngoog.labs.userAgent.browser.isOpera = goog.labs.userAgent.browser.matchOpera_;\ngoog.labs.userAgent.browser.isIE = goog.labs.userAgent.browser.matchIE_;\ngoog.labs.userAgent.browser.isEdge = goog.labs.userAgent.browser.matchEdgeHtml_;\ngoog.labs.userAgent.browser.isEdgeChromium = goog.labs.userAgent.browser.matchEdgeChromium_;\ngoog.labs.userAgent.browser.isOperaChromium = goog.labs.userAgent.browser.matchOperaChromium_;\ngoog.labs.userAgent.browser.isFirefox = goog.labs.userAgent.browser.matchFirefox_;\ngoog.labs.userAgent.browser.isSafari = goog.labs.userAgent.browser.matchSafari_;\ngoog.labs.userAgent.browser.isCoast = goog.labs.userAgent.browser.matchCoast_;\ngoog.labs.userAgent.browser.isIosWebview = goog.labs.userAgent.browser.matchIosWebview_;\ngoog.labs.userAgent.browser.isChrome = goog.labs.userAgent.browser.matchChrome_;\ngoog.labs.userAgent.browser.isAndroidBrowser = goog.labs.userAgent.browser.matchAndroidBrowser_;\ngoog.labs.userAgent.browser.isSilk = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Silk\");\n};\ngoog.labs.userAgent.browser.getVersion = function() {\n  function a(a) {\n    a = goog.array.find(a, d);\n    return c[a] || \"\";\n  }\n  var b = goog.labs.userAgent.util.getUserAgent();\n  if (goog.labs.userAgent.browser.isIE()) {\n    return goog.labs.userAgent.browser.getIEVersion_(b);\n  }\n  b = goog.labs.userAgent.util.extractVersionTuples(b);\n  var c = {};\n  goog.array.forEach(b, function(a) {\n    c[a[0]] = a[1];\n  });\n  var d = goog.partial(goog.object.containsKey, c);\n  return goog.labs.userAgent.browser.isOpera() ? a([\"Version\", \"Opera\"]) : goog.labs.userAgent.browser.isEdge() ? a([\"Edge\"]) : goog.labs.userAgent.browser.isEdgeChromium() ? a([\"Edg\"]) : goog.labs.userAgent.browser.isChrome() ? a([\"Chrome\", \"CriOS\"]) : (b = b[2]) && b[1] || \"\";\n};\ngoog.labs.userAgent.browser.isVersionOrHigher = function(a) {\n  return 0 <= goog.string.internal.compareVersions(goog.labs.userAgent.browser.getVersion(), a);\n};\ngoog.labs.userAgent.browser.getIEVersion_ = function(a) {\n  var b = /rv: *([\\d\\.]*)/.exec(a);\n  if (b && b[1]) {\n    return b[1];\n  }\n  b = \"\";\n  var c = /MSIE +([\\d\\.]+)/.exec(a);\n  if (c && c[1]) {\n    if (a = /Trident\\/(\\d.\\d)/.exec(a), \"7.0\" == c[1]) {\n      if (a && a[1]) {\n        switch(a[1]) {\n          case \"4.0\":\n            b = \"8.0\";\n            break;\n          case \"5.0\":\n            b = \"9.0\";\n            break;\n          case \"6.0\":\n            b = \"10.0\";\n            break;\n          case \"7.0\":\n            b = \"11.0\";\n        }\n      } else {\n        b = \"7.0\";\n      }\n    } else {\n      b = c[1];\n    }\n  }\n  return b;\n};\ngoog.html.SafeHtml = function() {\n  this.privateDoNotAccessOrElseSafeHtmlWrappedValue_ = \"\";\n  this.SAFE_HTML_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ = goog.html.SafeHtml.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_;\n  this.dir_ = null;\n};\ngoog.html.SafeHtml.ENABLE_ERROR_MESSAGES = goog.DEBUG;\ngoog.html.SafeHtml.SUPPORT_STYLE_ATTRIBUTE = !0;\ngoog.html.SafeHtml.prototype.implementsGoogI18nBidiDirectionalString = !0;\ngoog.html.SafeHtml.prototype.getDirection = function() {\n  return this.dir_;\n};\ngoog.html.SafeHtml.prototype.implementsGoogStringTypedString = !0;\ngoog.html.SafeHtml.prototype.getTypedStringValue = function() {\n  return this.privateDoNotAccessOrElseSafeHtmlWrappedValue_.toString();\n};\ngoog.DEBUG && (goog.html.SafeHtml.prototype.toString = function() {\n  return \"SafeHtml{\" + this.privateDoNotAccessOrElseSafeHtmlWrappedValue_ + \"}\";\n});\ngoog.html.SafeHtml.unwrap = function(a) {\n  return goog.html.SafeHtml.unwrapTrustedHTML(a).toString();\n};\ngoog.html.SafeHtml.unwrapTrustedHTML = function(a) {\n  if (a instanceof goog.html.SafeHtml && a.constructor === goog.html.SafeHtml && a.SAFE_HTML_TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ === goog.html.SafeHtml.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_) {\n    return a.privateDoNotAccessOrElseSafeHtmlWrappedValue_;\n  }\n  goog.asserts.fail(\"expected object of type SafeHtml, got '\" + a + \"' of type \" + goog.typeOf(a));\n  return \"type_error:SafeHtml\";\n};\ngoog.html.SafeHtml.htmlEscape = function(a) {\n  if (a instanceof goog.html.SafeHtml) {\n    return a;\n  }\n  var b = \"object\" == typeof a, c = null;\n  b && a.implementsGoogI18nBidiDirectionalString && (c = a.getDirection());\n  a = b && a.implementsGoogStringTypedString ? a.getTypedStringValue() : String(a);\n  return goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(goog.string.internal.htmlEscape(a), c);\n};\ngoog.html.SafeHtml.htmlEscapePreservingNewlines = function(a) {\n  if (a instanceof goog.html.SafeHtml) {\n    return a;\n  }\n  a = goog.html.SafeHtml.htmlEscape(a);\n  return goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(goog.string.internal.newLineToBr(goog.html.SafeHtml.unwrap(a)), a.getDirection());\n};\ngoog.html.SafeHtml.htmlEscapePreservingNewlinesAndSpaces = function(a) {\n  if (a instanceof goog.html.SafeHtml) {\n    return a;\n  }\n  a = goog.html.SafeHtml.htmlEscape(a);\n  return goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(goog.string.internal.whitespaceEscape(goog.html.SafeHtml.unwrap(a)), a.getDirection());\n};\ngoog.html.SafeHtml.from = goog.html.SafeHtml.htmlEscape;\ngoog.html.SafeHtml.VALID_NAMES_IN_TAG_ = /^[a-zA-Z0-9-]+$/;\ngoog.html.SafeHtml.URL_ATTRIBUTES_ = {action:!0, cite:!0, data:!0, formaction:!0, href:!0, manifest:!0, poster:!0, src:!0};\ngoog.html.SafeHtml.NOT_ALLOWED_TAG_NAMES_ = {APPLET:!0, BASE:!0, EMBED:!0, IFRAME:!0, LINK:!0, MATH:!0, META:!0, OBJECT:!0, SCRIPT:!0, STYLE:!0, SVG:!0, TEMPLATE:!0};\ngoog.html.SafeHtml.create = function(a, b, c) {\n  goog.html.SafeHtml.verifyTagName(String(a));\n  return goog.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse(String(a), b, c);\n};\ngoog.html.SafeHtml.verifyTagName = function(a) {\n  if (!goog.html.SafeHtml.VALID_NAMES_IN_TAG_.test(a)) {\n    throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES ? \"Invalid tag name <\" + a + \">.\" : \"\");\n  }\n  if (a.toUpperCase() in goog.html.SafeHtml.NOT_ALLOWED_TAG_NAMES_) {\n    throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES ? \"Tag name <\" + a + \"> is not allowed for SafeHtml.\" : \"\");\n  }\n};\ngoog.html.SafeHtml.createIframe = function(a, b, c, d) {\n  a && goog.html.TrustedResourceUrl.unwrap(a);\n  var e = {};\n  e.src = a || null;\n  e.srcdoc = b && goog.html.SafeHtml.unwrap(b);\n  a = goog.html.SafeHtml.combineAttributes(e, {sandbox:\"\"}, c);\n  return goog.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse(\"iframe\", a, d);\n};\ngoog.html.SafeHtml.createSandboxIframe = function(a, b, c, d) {\n  if (!goog.html.SafeHtml.canUseSandboxIframe()) {\n    throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES ? \"The browser does not support sandboxed iframes.\" : \"\");\n  }\n  var e = {};\n  e.src = a ? goog.html.SafeUrl.unwrap(goog.html.SafeUrl.sanitize(a)) : null;\n  e.srcdoc = b || null;\n  e.sandbox = \"\";\n  a = goog.html.SafeHtml.combineAttributes(e, {}, c);\n  return goog.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse(\"iframe\", a, d);\n};\ngoog.html.SafeHtml.canUseSandboxIframe = function() {\n  return goog.global.HTMLIFrameElement && \"sandbox\" in goog.global.HTMLIFrameElement.prototype;\n};\ngoog.html.SafeHtml.createScriptSrc = function(a, b) {\n  goog.html.TrustedResourceUrl.unwrap(a);\n  var c = goog.html.SafeHtml.combineAttributes({src:a}, {}, b);\n  return goog.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse(\"script\", c);\n};\ngoog.html.SafeHtml.createScript = function(a, b) {\n  for (var c in b) {\n    var d = c.toLowerCase();\n    if (\"language\" == d || \"src\" == d || \"text\" == d || \"type\" == d) {\n      throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES ? 'Cannot set \"' + d + '\" attribute' : \"\");\n    }\n  }\n  c = \"\";\n  a = goog.array.concat(a);\n  for (d = 0; d < a.length; d++) {\n    c += goog.html.SafeScript.unwrap(a[d]);\n  }\n  c = goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(c, goog.i18n.bidi.Dir.NEUTRAL);\n  return goog.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse(\"script\", b, c);\n};\ngoog.html.SafeHtml.createStyle = function(a, b) {\n  var c = goog.html.SafeHtml.combineAttributes({type:\"text/css\"}, {}, b), d = \"\";\n  a = goog.array.concat(a);\n  for (var e = 0; e < a.length; e++) {\n    d += goog.html.SafeStyleSheet.unwrap(a[e]);\n  }\n  d = goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(d, goog.i18n.bidi.Dir.NEUTRAL);\n  return goog.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse(\"style\", c, d);\n};\ngoog.html.SafeHtml.createMetaRefresh = function(a, b) {\n  var c = goog.html.SafeUrl.unwrap(goog.html.SafeUrl.sanitize(a));\n  (goog.labs.userAgent.browser.isIE() || goog.labs.userAgent.browser.isEdge()) && goog.string.internal.contains(c, \";\") && (c = \"'\" + c.replace(/'/g, \"%27\") + \"'\");\n  return goog.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse(\"meta\", {\"http-equiv\":\"refresh\", content:(b || 0) + \"; url=\" + c});\n};\ngoog.html.SafeHtml.getAttrNameAndValue_ = function(a, b, c) {\n  if (c instanceof goog.string.Const) {\n    c = goog.string.Const.unwrap(c);\n  } else {\n    if (\"style\" == b.toLowerCase()) {\n      if (goog.html.SafeHtml.SUPPORT_STYLE_ATTRIBUTE) {\n        c = goog.html.SafeHtml.getStyleValue_(c);\n      } else {\n        throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES ? 'Attribute \"style\" not supported.' : \"\");\n      }\n    } else {\n      if (/^on/i.test(b)) {\n        throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES ? 'Attribute \"' + b + '\" requires goog.string.Const value, \"' + c + '\" given.' : \"\");\n      }\n      if (b.toLowerCase() in goog.html.SafeHtml.URL_ATTRIBUTES_) {\n        if (c instanceof goog.html.TrustedResourceUrl) {\n          c = goog.html.TrustedResourceUrl.unwrap(c);\n        } else {\n          if (c instanceof goog.html.SafeUrl) {\n            c = goog.html.SafeUrl.unwrap(c);\n          } else {\n            if (\"string\" === typeof c) {\n              c = goog.html.SafeUrl.sanitize(c).getTypedStringValue();\n            } else {\n              throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES ? 'Attribute \"' + b + '\" on tag \"' + a + '\" requires goog.html.SafeUrl, goog.string.Const, or string, value \"' + c + '\" given.' : \"\");\n            }\n          }\n        }\n      }\n    }\n  }\n  c.implementsGoogStringTypedString && (c = c.getTypedStringValue());\n  goog.asserts.assert(\"string\" === typeof c || \"number\" === typeof c, \"String or number value expected, got \" + typeof c + \" with value: \" + c);\n  return b + '=\"' + goog.string.internal.htmlEscape(String(c)) + '\"';\n};\ngoog.html.SafeHtml.getStyleValue_ = function(a) {\n  if (!goog.isObject(a)) {\n    throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES ? 'The \"style\" attribute requires goog.html.SafeStyle or map of style properties, ' + typeof a + \" given: \" + a : \"\");\n  }\n  a instanceof goog.html.SafeStyle || (a = goog.html.SafeStyle.create(a));\n  return goog.html.SafeStyle.unwrap(a);\n};\ngoog.html.SafeHtml.createWithDir = function(a, b, c, d) {\n  b = goog.html.SafeHtml.create(b, c, d);\n  b.dir_ = a;\n  return b;\n};\ngoog.html.SafeHtml.join = function(a, b) {\n  var c = goog.html.SafeHtml.htmlEscape(a), d = c.getDirection(), e = [], f = function(a) {\n    goog.isArray(a) ? goog.array.forEach(a, f) : (a = goog.html.SafeHtml.htmlEscape(a), e.push(goog.html.SafeHtml.unwrap(a)), a = a.getDirection(), d == goog.i18n.bidi.Dir.NEUTRAL ? d = a : a != goog.i18n.bidi.Dir.NEUTRAL && d != a && (d = null));\n  };\n  goog.array.forEach(b, f);\n  return goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(e.join(goog.html.SafeHtml.unwrap(c)), d);\n};\ngoog.html.SafeHtml.concat = function(a) {\n  return goog.html.SafeHtml.join(goog.html.SafeHtml.EMPTY, Array.prototype.slice.call(arguments));\n};\ngoog.html.SafeHtml.concatWithDir = function(a, b) {\n  var c = goog.html.SafeHtml.concat(goog.array.slice(arguments, 1));\n  c.dir_ = a;\n  return c;\n};\ngoog.html.SafeHtml.TYPE_MARKER_GOOG_HTML_SECURITY_PRIVATE_ = {};\ngoog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse = function(a, b) {\n  return (new goog.html.SafeHtml).initSecurityPrivateDoNotAccessOrElse_(a, b);\n};\ngoog.html.SafeHtml.prototype.initSecurityPrivateDoNotAccessOrElse_ = function(a, b) {\n  this.privateDoNotAccessOrElseSafeHtmlWrappedValue_ = goog.html.trustedtypes.PRIVATE_DO_NOT_ACCESS_OR_ELSE_POLICY ? goog.html.trustedtypes.PRIVATE_DO_NOT_ACCESS_OR_ELSE_POLICY.createHTML(a) : a;\n  this.dir_ = b;\n  return this;\n};\ngoog.html.SafeHtml.createSafeHtmlTagSecurityPrivateDoNotAccessOrElse = function(a, b, c) {\n  var d = null;\n  var e = \"<\" + a + goog.html.SafeHtml.stringifyAttributes(a, b);\n  null == c ? c = [] : goog.isArray(c) || (c = [c]);\n  goog.dom.tags.isVoidTag(a.toLowerCase()) ? (goog.asserts.assert(!c.length, \"Void tag <\" + a + \"> does not allow content.\"), e += \">\") : (d = goog.html.SafeHtml.concat(c), e += \">\" + goog.html.SafeHtml.unwrap(d) + \"</\" + a + \">\", d = d.getDirection());\n  (a = b && b.dir) && (d = /^(ltr|rtl|auto)$/i.test(a) ? goog.i18n.bidi.Dir.NEUTRAL : null);\n  return goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(e, d);\n};\ngoog.html.SafeHtml.stringifyAttributes = function(a, b) {\n  var c = \"\";\n  if (b) {\n    for (var d in b) {\n      if (!goog.html.SafeHtml.VALID_NAMES_IN_TAG_.test(d)) {\n        throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES ? 'Invalid attribute name \"' + d + '\".' : \"\");\n      }\n      var e = b[d];\n      null != e && (c += \" \" + goog.html.SafeHtml.getAttrNameAndValue_(a, d, e));\n    }\n  }\n  return c;\n};\ngoog.html.SafeHtml.combineAttributes = function(a, b, c) {\n  var d = {}, e;\n  for (e in a) {\n    goog.asserts.assert(e.toLowerCase() == e, \"Must be lower case\"), d[e] = a[e];\n  }\n  for (e in b) {\n    goog.asserts.assert(e.toLowerCase() == e, \"Must be lower case\"), d[e] = b[e];\n  }\n  if (c) {\n    for (e in c) {\n      var f = e.toLowerCase();\n      if (f in a) {\n        throw Error(goog.html.SafeHtml.ENABLE_ERROR_MESSAGES ? 'Cannot override \"' + f + '\" attribute, got \"' + e + '\" with value \"' + c[e] + '\"' : \"\");\n      }\n      f in b && delete d[f];\n      d[e] = c[e];\n    }\n  }\n  return d;\n};\ngoog.html.SafeHtml.DOCTYPE_HTML = goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(\"<!DOCTYPE html>\", goog.i18n.bidi.Dir.NEUTRAL);\ngoog.html.SafeHtml.EMPTY = goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(\"\", goog.i18n.bidi.Dir.NEUTRAL);\ngoog.html.SafeHtml.BR = goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(\"<br>\", goog.i18n.bidi.Dir.NEUTRAL);\ngoog.html.uncheckedconversions = {};\ngoog.html.uncheckedconversions.safeHtmlFromStringKnownToSatisfyTypeContract = function(a, b, c) {\n  goog.asserts.assertString(goog.string.Const.unwrap(a), \"must provide justification\");\n  goog.asserts.assert(!goog.string.internal.isEmptyOrWhitespace(goog.string.Const.unwrap(a)), \"must provide non-empty justification\");\n  return goog.html.SafeHtml.createSafeHtmlSecurityPrivateDoNotAccessOrElse(b, c || null);\n};\ngoog.html.uncheckedconversions.safeScriptFromStringKnownToSatisfyTypeContract = function(a, b) {\n  goog.asserts.assertString(goog.string.Const.unwrap(a), \"must provide justification\");\n  goog.asserts.assert(!goog.string.internal.isEmptyOrWhitespace(goog.string.Const.unwrap(a)), \"must provide non-empty justification\");\n  return goog.html.SafeScript.createSafeScriptSecurityPrivateDoNotAccessOrElse(b);\n};\ngoog.html.uncheckedconversions.safeStyleFromStringKnownToSatisfyTypeContract = function(a, b) {\n  goog.asserts.assertString(goog.string.Const.unwrap(a), \"must provide justification\");\n  goog.asserts.assert(!goog.string.internal.isEmptyOrWhitespace(goog.string.Const.unwrap(a)), \"must provide non-empty justification\");\n  return goog.html.SafeStyle.createSafeStyleSecurityPrivateDoNotAccessOrElse(b);\n};\ngoog.html.uncheckedconversions.safeStyleSheetFromStringKnownToSatisfyTypeContract = function(a, b) {\n  goog.asserts.assertString(goog.string.Const.unwrap(a), \"must provide justification\");\n  goog.asserts.assert(!goog.string.internal.isEmptyOrWhitespace(goog.string.Const.unwrap(a)), \"must provide non-empty justification\");\n  return goog.html.SafeStyleSheet.createSafeStyleSheetSecurityPrivateDoNotAccessOrElse(b);\n};\ngoog.html.uncheckedconversions.safeUrlFromStringKnownToSatisfyTypeContract = function(a, b) {\n  goog.asserts.assertString(goog.string.Const.unwrap(a), \"must provide justification\");\n  goog.asserts.assert(!goog.string.internal.isEmptyOrWhitespace(goog.string.Const.unwrap(a)), \"must provide non-empty justification\");\n  return goog.html.SafeUrl.createSafeUrlSecurityPrivateDoNotAccessOrElse(b);\n};\ngoog.html.uncheckedconversions.trustedResourceUrlFromStringKnownToSatisfyTypeContract = function(a, b) {\n  goog.asserts.assertString(goog.string.Const.unwrap(a), \"must provide justification\");\n  goog.asserts.assert(!goog.string.internal.isEmptyOrWhitespace(goog.string.Const.unwrap(a)), \"must provide non-empty justification\");\n  return goog.html.TrustedResourceUrl.createTrustedResourceUrlSecurityPrivateDoNotAccessOrElse(b);\n};\ngoog.dom.safe = {};\ngoog.dom.safe.InsertAdjacentHtmlPosition = {AFTERBEGIN:\"afterbegin\", AFTEREND:\"afterend\", BEFOREBEGIN:\"beforebegin\", BEFOREEND:\"beforeend\"};\ngoog.dom.safe.insertAdjacentHtml = function(a, b, c) {\n  a.insertAdjacentHTML(b, goog.html.SafeHtml.unwrapTrustedHTML(c));\n};\ngoog.dom.safe.SET_INNER_HTML_DISALLOWED_TAGS_ = {MATH:!0, SCRIPT:!0, STYLE:!0, SVG:!0, TEMPLATE:!0};\ngoog.dom.safe.isInnerHtmlCleanupRecursive_ = goog.functions.cacheReturnValue(function() {\n  if (goog.DEBUG && \"undefined\" === typeof document) {\n    return !1;\n  }\n  var a = document.createElement(\"div\"), b = document.createElement(\"div\");\n  b.appendChild(document.createElement(\"div\"));\n  a.appendChild(b);\n  if (goog.DEBUG && !a.firstChild) {\n    return !1;\n  }\n  b = a.firstChild.firstChild;\n  a.innerHTML = goog.html.SafeHtml.unwrapTrustedHTML(goog.html.SafeHtml.EMPTY);\n  return !b.parentElement;\n});\ngoog.dom.safe.unsafeSetInnerHtmlDoNotUseOrElse = function(a, b) {\n  if (goog.dom.safe.isInnerHtmlCleanupRecursive_()) {\n    for (; a.lastChild;) {\n      a.removeChild(a.lastChild);\n    }\n  }\n  a.innerHTML = goog.html.SafeHtml.unwrapTrustedHTML(b);\n};\ngoog.dom.safe.setInnerHtml = function(a, b) {\n  if (goog.asserts.ENABLE_ASSERTS) {\n    var c = a.tagName.toUpperCase();\n    if (goog.dom.safe.SET_INNER_HTML_DISALLOWED_TAGS_[c]) {\n      throw Error(\"goog.dom.safe.setInnerHtml cannot be used to set content of \" + a.tagName + \".\");\n    }\n  }\n  goog.dom.safe.unsafeSetInnerHtmlDoNotUseOrElse(a, b);\n};\ngoog.dom.safe.setOuterHtml = function(a, b) {\n  a.outerHTML = goog.html.SafeHtml.unwrapTrustedHTML(b);\n};\ngoog.dom.safe.setFormElementAction = function(a, b) {\n  var c = b instanceof goog.html.SafeUrl ? b : goog.html.SafeUrl.sanitizeAssertUnchanged(b);\n  goog.dom.asserts.assertIsHTMLFormElement(a).action = goog.html.SafeUrl.unwrapTrustedURL(c);\n};\ngoog.dom.safe.setButtonFormAction = function(a, b) {\n  var c = b instanceof goog.html.SafeUrl ? b : goog.html.SafeUrl.sanitizeAssertUnchanged(b);\n  goog.dom.asserts.assertIsHTMLButtonElement(a).formAction = goog.html.SafeUrl.unwrapTrustedURL(c);\n};\ngoog.dom.safe.setInputFormAction = function(a, b) {\n  var c = b instanceof goog.html.SafeUrl ? b : goog.html.SafeUrl.sanitizeAssertUnchanged(b);\n  goog.dom.asserts.assertIsHTMLInputElement(a).formAction = goog.html.SafeUrl.unwrapTrustedURL(c);\n};\ngoog.dom.safe.setStyle = function(a, b) {\n  a.style.cssText = goog.html.SafeStyle.unwrap(b);\n};\ngoog.dom.safe.documentWrite = function(a, b) {\n  a.write(goog.html.SafeHtml.unwrapTrustedHTML(b));\n};\ngoog.dom.safe.setAnchorHref = function(a, b) {\n  goog.dom.asserts.assertIsHTMLAnchorElement(a);\n  var c = b instanceof goog.html.SafeUrl ? b : goog.html.SafeUrl.sanitizeAssertUnchanged(b);\n  a.href = goog.html.SafeUrl.unwrapTrustedURL(c);\n};\ngoog.dom.safe.setImageSrc = function(a, b) {\n  goog.dom.asserts.assertIsHTMLImageElement(a);\n  if (b instanceof goog.html.SafeUrl) {\n    var c = b;\n  } else {\n    c = /^data:image\\//i.test(b), c = goog.html.SafeUrl.sanitizeAssertUnchanged(b, c);\n  }\n  a.src = goog.html.SafeUrl.unwrapTrustedURL(c);\n};\ngoog.dom.safe.setAudioSrc = function(a, b) {\n  goog.dom.asserts.assertIsHTMLAudioElement(a);\n  if (b instanceof goog.html.SafeUrl) {\n    var c = b;\n  } else {\n    c = /^data:audio\\//i.test(b), c = goog.html.SafeUrl.sanitizeAssertUnchanged(b, c);\n  }\n  a.src = goog.html.SafeUrl.unwrapTrustedURL(c);\n};\ngoog.dom.safe.setVideoSrc = function(a, b) {\n  goog.dom.asserts.assertIsHTMLVideoElement(a);\n  if (b instanceof goog.html.SafeUrl) {\n    var c = b;\n  } else {\n    c = /^data:video\\//i.test(b), c = goog.html.SafeUrl.sanitizeAssertUnchanged(b, c);\n  }\n  a.src = goog.html.SafeUrl.unwrapTrustedURL(c);\n};\ngoog.dom.safe.setEmbedSrc = function(a, b) {\n  goog.dom.asserts.assertIsHTMLEmbedElement(a);\n  a.src = goog.html.TrustedResourceUrl.unwrapTrustedScriptURL(b);\n};\ngoog.dom.safe.setFrameSrc = function(a, b) {\n  goog.dom.asserts.assertIsHTMLFrameElement(a);\n  a.src = goog.html.TrustedResourceUrl.unwrapTrustedURL(b);\n};\ngoog.dom.safe.setIframeSrc = function(a, b) {\n  goog.dom.asserts.assertIsHTMLIFrameElement(a);\n  a.src = goog.html.TrustedResourceUrl.unwrapTrustedURL(b);\n};\ngoog.dom.safe.setIframeSrcdoc = function(a, b) {\n  goog.dom.asserts.assertIsHTMLIFrameElement(a);\n  a.srcdoc = goog.html.SafeHtml.unwrapTrustedHTML(b);\n};\ngoog.dom.safe.setLinkHrefAndRel = function(a, b, c) {\n  goog.dom.asserts.assertIsHTMLLinkElement(a);\n  a.rel = c;\n  goog.string.internal.caseInsensitiveContains(c, \"stylesheet\") ? (goog.asserts.assert(b instanceof goog.html.TrustedResourceUrl, 'URL must be TrustedResourceUrl because \"rel\" contains \"stylesheet\"'), a.href = goog.html.TrustedResourceUrl.unwrapTrustedURL(b)) : a.href = b instanceof goog.html.TrustedResourceUrl ? goog.html.TrustedResourceUrl.unwrapTrustedURL(b) : b instanceof goog.html.SafeUrl ? goog.html.SafeUrl.unwrapTrustedURL(b) : goog.html.SafeUrl.unwrapTrustedURL(goog.html.SafeUrl.sanitizeAssertUnchanged(b));\n};\ngoog.dom.safe.setObjectData = function(a, b) {\n  goog.dom.asserts.assertIsHTMLObjectElement(a);\n  a.data = goog.html.TrustedResourceUrl.unwrapTrustedScriptURL(b);\n};\ngoog.dom.safe.setScriptSrc = function(a, b) {\n  goog.dom.asserts.assertIsHTMLScriptElement(a);\n  a.src = goog.html.TrustedResourceUrl.unwrapTrustedScriptURL(b);\n  var c = goog.getScriptNonce();\n  c && a.setAttribute(\"nonce\", c);\n};\ngoog.dom.safe.setScriptContent = function(a, b) {\n  goog.dom.asserts.assertIsHTMLScriptElement(a);\n  a.text = goog.html.SafeScript.unwrapTrustedScript(b);\n  var c = goog.getScriptNonce();\n  c && a.setAttribute(\"nonce\", c);\n};\ngoog.dom.safe.setLocationHref = function(a, b) {\n  goog.dom.asserts.assertIsLocation(a);\n  var c = b instanceof goog.html.SafeUrl ? b : goog.html.SafeUrl.sanitizeAssertUnchanged(b);\n  a.href = goog.html.SafeUrl.unwrapTrustedURL(c);\n};\ngoog.dom.safe.assignLocation = function(a, b) {\n  goog.dom.asserts.assertIsLocation(a);\n  var c = b instanceof goog.html.SafeUrl ? b : goog.html.SafeUrl.sanitizeAssertUnchanged(b);\n  a.assign(goog.html.SafeUrl.unwrapTrustedURL(c));\n};\ngoog.dom.safe.replaceLocation = function(a, b) {\n  goog.dom.asserts.assertIsLocation(a);\n  var c = b instanceof goog.html.SafeUrl ? b : goog.html.SafeUrl.sanitizeAssertUnchanged(b);\n  a.replace(goog.html.SafeUrl.unwrapTrustedURL(c));\n};\ngoog.dom.safe.openInWindow = function(a, b, c, d, e) {\n  a = a instanceof goog.html.SafeUrl ? a : goog.html.SafeUrl.sanitizeAssertUnchanged(a);\n  return (b || goog.global).open(goog.html.SafeUrl.unwrapTrustedURL(a), c ? goog.string.Const.unwrap(c) : \"\", d, e);\n};\ngoog.dom.safe.parseFromStringHtml = function(a, b) {\n  return goog.dom.safe.parseFromString(a, b, \"text/html\");\n};\ngoog.dom.safe.parseFromString = function(a, b, c) {\n  return a.parseFromString(goog.html.SafeHtml.unwrapTrustedHTML(b), c);\n};\ngoog.dom.safe.createImageFromBlob = function(a) {\n  if (!/^image\\/.*/g.test(a.type)) {\n    throw Error(\"goog.dom.safe.createImageFromBlob only accepts MIME type image/.*.\");\n  }\n  var b = goog.global.URL.createObjectURL(a);\n  a = new goog.global.Image;\n  a.onload = function() {\n    goog.global.URL.revokeObjectURL(b);\n  };\n  goog.dom.safe.setImageSrc(a, goog.html.uncheckedconversions.safeUrlFromStringKnownToSatisfyTypeContract(goog.string.Const.from(\"Image blob URL.\"), b));\n  return a;\n};\ngoog.string.DETECT_DOUBLE_ESCAPING = !1;\ngoog.string.FORCE_NON_DOM_HTML_UNESCAPING = !1;\ngoog.string.Unicode = {NBSP:\"\\u00a0\"};\ngoog.string.startsWith = goog.string.internal.startsWith;\ngoog.string.endsWith = goog.string.internal.endsWith;\ngoog.string.caseInsensitiveStartsWith = goog.string.internal.caseInsensitiveStartsWith;\ngoog.string.caseInsensitiveEndsWith = goog.string.internal.caseInsensitiveEndsWith;\ngoog.string.caseInsensitiveEquals = goog.string.internal.caseInsensitiveEquals;\ngoog.string.subs = function(a, b) {\n  for (var c = a.split(\"%s\"), d = \"\", e = Array.prototype.slice.call(arguments, 1); e.length && 1 < c.length;) {\n    d += c.shift() + e.shift();\n  }\n  return d + c.join(\"%s\");\n};\ngoog.string.collapseWhitespace = function(a) {\n  return a.replace(/[\\s\\xa0]+/g, \" \").replace(/^\\s+|\\s+$/g, \"\");\n};\ngoog.string.isEmptyOrWhitespace = goog.string.internal.isEmptyOrWhitespace;\ngoog.string.isEmptyString = function(a) {\n  return 0 == a.length;\n};\ngoog.string.isEmpty = goog.string.isEmptyOrWhitespace;\ngoog.string.isEmptyOrWhitespaceSafe = function(a) {\n  return goog.string.isEmptyOrWhitespace(goog.string.makeSafe(a));\n};\ngoog.string.isEmptySafe = goog.string.isEmptyOrWhitespaceSafe;\ngoog.string.isBreakingWhitespace = function(a) {\n  return !/[^\\t\\n\\r ]/.test(a);\n};\ngoog.string.isAlpha = function(a) {\n  return !/[^a-zA-Z]/.test(a);\n};\ngoog.string.isNumeric = function(a) {\n  return !/[^0-9]/.test(a);\n};\ngoog.string.isAlphaNumeric = function(a) {\n  return !/[^a-zA-Z0-9]/.test(a);\n};\ngoog.string.isSpace = function(a) {\n  return \" \" == a;\n};\ngoog.string.isUnicodeChar = function(a) {\n  return 1 == a.length && \" \" <= a && \"~\" >= a || \"\\u0080\" <= a && \"\\ufffd\" >= a;\n};\ngoog.string.stripNewlines = function(a) {\n  return a.replace(/(\\r\\n|\\r|\\n)+/g, \" \");\n};\ngoog.string.canonicalizeNewlines = function(a) {\n  return a.replace(/(\\r\\n|\\r|\\n)/g, \"\\n\");\n};\ngoog.string.normalizeWhitespace = function(a) {\n  return a.replace(/\\xa0|\\s/g, \" \");\n};\ngoog.string.normalizeSpaces = function(a) {\n  return a.replace(/\\xa0|[ \\t]+/g, \" \");\n};\ngoog.string.collapseBreakingSpaces = function(a) {\n  return a.replace(/[\\t\\r\\n ]+/g, \" \").replace(/^[\\t\\r\\n ]+|[\\t\\r\\n ]+$/g, \"\");\n};\ngoog.string.trim = goog.string.internal.trim;\ngoog.string.trimLeft = function(a) {\n  return a.replace(/^[\\s\\xa0]+/, \"\");\n};\ngoog.string.trimRight = function(a) {\n  return a.replace(/[\\s\\xa0]+$/, \"\");\n};\ngoog.string.caseInsensitiveCompare = goog.string.internal.caseInsensitiveCompare;\ngoog.string.numberAwareCompare_ = function(a, b, c) {\n  if (a == b) {\n    return 0;\n  }\n  if (!a) {\n    return -1;\n  }\n  if (!b) {\n    return 1;\n  }\n  for (var d = a.toLowerCase().match(c), e = b.toLowerCase().match(c), f = Math.min(d.length, e.length), g = 0; g < f; g++) {\n    c = d[g];\n    var h = e[g];\n    if (c != h) {\n      return a = parseInt(c, 10), !isNaN(a) && (b = parseInt(h, 10), !isNaN(b) && a - b) ? a - b : c < h ? -1 : 1;\n    }\n  }\n  return d.length != e.length ? d.length - e.length : a < b ? -1 : 1;\n};\ngoog.string.intAwareCompare = function(a, b) {\n  return goog.string.numberAwareCompare_(a, b, /\\d+|\\D+/g);\n};\ngoog.string.floatAwareCompare = function(a, b) {\n  return goog.string.numberAwareCompare_(a, b, /\\d+|\\.\\d+|\\D+/g);\n};\ngoog.string.numerateCompare = goog.string.floatAwareCompare;\ngoog.string.urlEncode = function(a) {\n  return encodeURIComponent(String(a));\n};\ngoog.string.urlDecode = function(a) {\n  return decodeURIComponent(a.replace(/\\+/g, \" \"));\n};\ngoog.string.newLineToBr = goog.string.internal.newLineToBr;\ngoog.string.htmlEscape = function(a, b) {\n  a = goog.string.internal.htmlEscape(a, b);\n  goog.string.DETECT_DOUBLE_ESCAPING && (a = a.replace(goog.string.E_RE_, \"&#101;\"));\n  return a;\n};\ngoog.string.E_RE_ = /e/g;\ngoog.string.unescapeEntities = function(a) {\n  return goog.string.contains(a, \"&\") ? !goog.string.FORCE_NON_DOM_HTML_UNESCAPING && \"document\" in goog.global ? goog.string.unescapeEntitiesUsingDom_(a) : goog.string.unescapePureXmlEntities_(a) : a;\n};\ngoog.string.unescapeEntitiesWithDocument = function(a, b) {\n  return goog.string.contains(a, \"&\") ? goog.string.unescapeEntitiesUsingDom_(a, b) : a;\n};\ngoog.string.unescapeEntitiesUsingDom_ = function(a, b) {\n  var c = {\"&amp;\":\"&\", \"&lt;\":\"<\", \"&gt;\":\">\", \"&quot;\":'\"'};\n  var d = b ? b.createElement(\"div\") : goog.global.document.createElement(\"div\");\n  return a.replace(goog.string.HTML_ENTITY_PATTERN_, function(a, b) {\n    var e = c[a];\n    if (e) {\n      return e;\n    }\n    if (\"#\" == b.charAt(0)) {\n      var f = Number(\"0\" + b.substr(1));\n      isNaN(f) || (e = String.fromCharCode(f));\n    }\n    e || (goog.dom.safe.setInnerHtml(d, goog.html.uncheckedconversions.safeHtmlFromStringKnownToSatisfyTypeContract(goog.string.Const.from(\"Single HTML entity.\"), a + \" \")), e = d.firstChild.nodeValue.slice(0, -1));\n    return c[a] = e;\n  });\n};\ngoog.string.unescapePureXmlEntities_ = function(a) {\n  return a.replace(/&([^;]+);/g, function(a, c) {\n    switch(c) {\n      case \"amp\":\n        return \"&\";\n      case \"lt\":\n        return \"<\";\n      case \"gt\":\n        return \">\";\n      case \"quot\":\n        return '\"';\n      default:\n        if (\"#\" == c.charAt(0)) {\n          var b = Number(\"0\" + c.substr(1));\n          if (!isNaN(b)) {\n            return String.fromCharCode(b);\n          }\n        }\n        return a;\n    }\n  });\n};\ngoog.string.HTML_ENTITY_PATTERN_ = /&([^;\\s<&]+);?/g;\ngoog.string.whitespaceEscape = function(a, b) {\n  return goog.string.newLineToBr(a.replace(/  /g, \" &#160;\"), b);\n};\ngoog.string.preserveSpaces = function(a) {\n  return a.replace(/(^|[\\n ]) /g, \"$1\" + goog.string.Unicode.NBSP);\n};\ngoog.string.stripQuotes = function(a, b) {\n  for (var c = b.length, d = 0; d < c; d++) {\n    var e = 1 == c ? b : b.charAt(d);\n    if (a.charAt(0) == e && a.charAt(a.length - 1) == e) {\n      return a.substring(1, a.length - 1);\n    }\n  }\n  return a;\n};\ngoog.string.truncate = function(a, b, c) {\n  c && (a = goog.string.unescapeEntities(a));\n  a.length > b && (a = a.substring(0, b - 3) + \"...\");\n  c && (a = goog.string.htmlEscape(a));\n  return a;\n};\ngoog.string.truncateMiddle = function(a, b, c, d) {\n  c && (a = goog.string.unescapeEntities(a));\n  if (d && a.length > b) {\n    d > b && (d = b);\n    var e = a.length - d;\n    a = a.substring(0, b - d) + \"...\" + a.substring(e);\n  } else {\n    a.length > b && (d = Math.floor(b / 2), e = a.length - d, a = a.substring(0, d + b % 2) + \"...\" + a.substring(e));\n  }\n  c && (a = goog.string.htmlEscape(a));\n  return a;\n};\ngoog.string.specialEscapeChars_ = {\"\\x00\":\"\\\\0\", \"\\b\":\"\\\\b\", \"\\f\":\"\\\\f\", \"\\n\":\"\\\\n\", \"\\r\":\"\\\\r\", \"\\t\":\"\\\\t\", \"\\x0B\":\"\\\\x0B\", '\"':'\\\\\"', \"\\\\\":\"\\\\\\\\\", \"<\":\"\\\\u003C\"};\ngoog.string.jsEscapeCache_ = {\"'\":\"\\\\'\"};\ngoog.string.quote = function(a) {\n  a = String(a);\n  for (var b = ['\"'], c = 0; c < a.length; c++) {\n    var d = a.charAt(c), e = d.charCodeAt(0);\n    b[c + 1] = goog.string.specialEscapeChars_[d] || (31 < e && 127 > e ? d : goog.string.escapeChar(d));\n  }\n  b.push('\"');\n  return b.join(\"\");\n};\ngoog.string.escapeString = function(a) {\n  for (var b = [], c = 0; c < a.length; c++) {\n    b[c] = goog.string.escapeChar(a.charAt(c));\n  }\n  return b.join(\"\");\n};\ngoog.string.escapeChar = function(a) {\n  if (a in goog.string.jsEscapeCache_) {\n    return goog.string.jsEscapeCache_[a];\n  }\n  if (a in goog.string.specialEscapeChars_) {\n    return goog.string.jsEscapeCache_[a] = goog.string.specialEscapeChars_[a];\n  }\n  var b = a.charCodeAt(0);\n  if (31 < b && 127 > b) {\n    var c = a;\n  } else {\n    if (256 > b) {\n      if (c = \"\\\\x\", 16 > b || 256 < b) {\n        c += \"0\";\n      }\n    } else {\n      c = \"\\\\u\", 4096 > b && (c += \"0\");\n    }\n    c += b.toString(16).toUpperCase();\n  }\n  return goog.string.jsEscapeCache_[a] = c;\n};\ngoog.string.contains = goog.string.internal.contains;\ngoog.string.caseInsensitiveContains = goog.string.internal.caseInsensitiveContains;\ngoog.string.countOf = function(a, b) {\n  return a && b ? a.split(b).length - 1 : 0;\n};\ngoog.string.removeAt = function(a, b, c) {\n  var d = a;\n  0 <= b && b < a.length && 0 < c && (d = a.substr(0, b) + a.substr(b + c, a.length - b - c));\n  return d;\n};\ngoog.string.remove = function(a, b) {\n  return a.replace(b, \"\");\n};\ngoog.string.removeAll = function(a, b) {\n  var c = new RegExp(goog.string.regExpEscape(b), \"g\");\n  return a.replace(c, \"\");\n};\ngoog.string.replaceAll = function(a, b, c) {\n  b = new RegExp(goog.string.regExpEscape(b), \"g\");\n  return a.replace(b, c.replace(/\\$/g, \"$$$$\"));\n};\ngoog.string.regExpEscape = function(a) {\n  return String(a).replace(/([-()\\[\\]{}+?*.$\\^|,:#<!\\\\])/g, \"\\\\$1\").replace(/\\x08/g, \"\\\\x08\");\n};\ngoog.string.repeat = String.prototype.repeat ? function(a, b) {\n  return a.repeat(b);\n} : function(a, b) {\n  return Array(b + 1).join(a);\n};\ngoog.string.padNumber = function(a, b, c) {\n  a = void 0 !== c ? a.toFixed(c) : String(a);\n  c = a.indexOf(\".\");\n  -1 == c && (c = a.length);\n  return goog.string.repeat(\"0\", Math.max(0, b - c)) + a;\n};\ngoog.string.makeSafe = function(a) {\n  return null == a ? \"\" : String(a);\n};\ngoog.string.buildString = function(a) {\n  return Array.prototype.join.call(arguments, \"\");\n};\ngoog.string.getRandomString = function() {\n  return Math.floor(2147483648 * Math.random()).toString(36) + Math.abs(Math.floor(2147483648 * Math.random()) ^ goog.now()).toString(36);\n};\ngoog.string.compareVersions = goog.string.internal.compareVersions;\ngoog.string.hashCode = function(a) {\n  for (var b = 0, c = 0; c < a.length; ++c) {\n    b = 31 * b + a.charCodeAt(c) >>> 0;\n  }\n  return b;\n};\ngoog.string.uniqueStringCounter_ = 2147483648 * Math.random() | 0;\ngoog.string.createUniqueString = function() {\n  return \"goog_\" + goog.string.uniqueStringCounter_++;\n};\ngoog.string.toNumber = function(a) {\n  var b = Number(a);\n  return 0 == b && goog.string.isEmptyOrWhitespace(a) ? NaN : b;\n};\ngoog.string.isLowerCamelCase = function(a) {\n  return /^[a-z]+([A-Z][a-z]*)*$/.test(a);\n};\ngoog.string.isUpperCamelCase = function(a) {\n  return /^([A-Z][a-z]*)+$/.test(a);\n};\ngoog.string.toCamelCase = function(a) {\n  return String(a).replace(/\\-([a-z])/g, function(a, c) {\n    return c.toUpperCase();\n  });\n};\ngoog.string.toSelectorCase = function(a) {\n  return String(a).replace(/([A-Z])/g, \"-$1\").toLowerCase();\n};\ngoog.string.toTitleCase = function(a, b) {\n  var c = \"string\" === typeof b ? goog.string.regExpEscape(b) : \"\\\\s\";\n  return a.replace(new RegExp(\"(^\" + (c ? \"|[\" + c + \"]+\" : \"\") + \")([a-z])\", \"g\"), function(a, b, c) {\n    return b + c.toUpperCase();\n  });\n};\ngoog.string.capitalize = function(a) {\n  return String(a.charAt(0)).toUpperCase() + String(a.substr(1)).toLowerCase();\n};\ngoog.string.parseInt = function(a) {\n  isFinite(a) && (a = String(a));\n  return \"string\" === typeof a ? /^\\s*-?0x/i.test(a) ? parseInt(a, 16) : parseInt(a, 10) : NaN;\n};\ngoog.string.splitLimit = function(a, b, c) {\n  a = a.split(b);\n  for (var d = []; 0 < c && a.length;) {\n    d.push(a.shift()), c--;\n  }\n  a.length && d.push(a.join(b));\n  return d;\n};\ngoog.string.lastComponent = function(a, b) {\n  if (b) {\n    \"string\" == typeof b && (b = [b]);\n  } else {\n    return a;\n  }\n  for (var c = -1, d = 0; d < b.length; d++) {\n    if (\"\" != b[d]) {\n      var e = a.lastIndexOf(b[d]);\n      e > c && (c = e);\n    }\n  }\n  return -1 == c ? a : a.slice(c + 1);\n};\ngoog.string.editDistance = function(a, b) {\n  var c = [], d = [];\n  if (a == b) {\n    return 0;\n  }\n  if (!a.length || !b.length) {\n    return Math.max(a.length, b.length);\n  }\n  for (var e = 0; e < b.length + 1; e++) {\n    c[e] = e;\n  }\n  for (e = 0; e < a.length; e++) {\n    d[0] = e + 1;\n    for (var f = 0; f < b.length; f++) {\n      d[f + 1] = Math.min(d[f] + 1, c[f + 1] + 1, c[f] + Number(a[e] != b[f]));\n    }\n    for (f = 0; f < c.length; f++) {\n      c[f] = d[f];\n    }\n  }\n  return d[b.length];\n};\ngoog.proto2 = {};\ngoog.proto2.FieldDescriptor = function(a, b, c) {\n  this.parent_ = a;\n  goog.asserts.assert(goog.string.isNumeric(b));\n  this.tag_ = b;\n  this.name_ = c.name;\n  this.isPacked_ = !!c.packed;\n  this.isRepeated_ = !!c.repeated;\n  this.isRequired_ = !!c.required;\n  this.fieldType_ = c.fieldType;\n  this.nativeType_ = c.type;\n  this.deserializationConversionPermitted_ = !1;\n  switch(this.fieldType_) {\n    case goog.proto2.FieldDescriptor.FieldType.INT64:\n    case goog.proto2.FieldDescriptor.FieldType.UINT64:\n    case goog.proto2.FieldDescriptor.FieldType.FIXED64:\n    case goog.proto2.FieldDescriptor.FieldType.SFIXED64:\n    case goog.proto2.FieldDescriptor.FieldType.SINT64:\n    case goog.proto2.FieldDescriptor.FieldType.FLOAT:\n    case goog.proto2.FieldDescriptor.FieldType.DOUBLE:\n      this.deserializationConversionPermitted_ = !0;\n  }\n  this.defaultValue_ = c.defaultValue;\n};\ngoog.proto2.FieldDescriptor.FieldType = {DOUBLE:1, FLOAT:2, INT64:3, UINT64:4, INT32:5, FIXED64:6, FIXED32:7, BOOL:8, STRING:9, GROUP:10, MESSAGE:11, BYTES:12, UINT32:13, ENUM:14, SFIXED32:15, SFIXED64:16, SINT32:17, SINT64:18};\ngoog.proto2.FieldDescriptor.prototype.getTag = function() {\n  return this.tag_;\n};\ngoog.proto2.FieldDescriptor.prototype.getContainingType = function() {\n  return this.parent_.prototype.getDescriptor();\n};\ngoog.proto2.FieldDescriptor.prototype.getName = function() {\n  return this.name_;\n};\ngoog.proto2.FieldDescriptor.prototype.getDefaultValue = function() {\n  if (void 0 === this.defaultValue_) {\n    var a = this.nativeType_;\n    if (a === Boolean) {\n      this.defaultValue_ = !1;\n    } else {\n      if (a === Number) {\n        this.defaultValue_ = 0;\n      } else {\n        if (a === String) {\n          this.defaultValue_ = this.deserializationConversionPermitted_ ? \"0\" : \"\";\n        } else {\n          return new a;\n        }\n      }\n    }\n  }\n  return this.defaultValue_;\n};\ngoog.proto2.FieldDescriptor.prototype.getFieldType = function() {\n  return this.fieldType_;\n};\ngoog.proto2.FieldDescriptor.prototype.getNativeType = function() {\n  return this.nativeType_;\n};\ngoog.proto2.FieldDescriptor.prototype.deserializationConversionPermitted = function() {\n  return this.deserializationConversionPermitted_;\n};\ngoog.proto2.FieldDescriptor.prototype.getFieldMessageType = function() {\n  return this.nativeType_.prototype.getDescriptor();\n};\ngoog.proto2.FieldDescriptor.prototype.isCompositeType = function() {\n  return this.fieldType_ == goog.proto2.FieldDescriptor.FieldType.MESSAGE || this.fieldType_ == goog.proto2.FieldDescriptor.FieldType.GROUP;\n};\ngoog.proto2.FieldDescriptor.prototype.isPacked = function() {\n  return this.isPacked_;\n};\ngoog.proto2.FieldDescriptor.prototype.isRepeated = function() {\n  return this.isRepeated_;\n};\ngoog.proto2.FieldDescriptor.prototype.isRequired = function() {\n  return this.isRequired_;\n};\ngoog.proto2.FieldDescriptor.prototype.isOptional = function() {\n  return !this.isRepeated_ && !this.isRequired_;\n};\ngoog.proto2.Descriptor = function(a, b, c) {\n  this.messageType_ = a;\n  this.name_ = b.name || null;\n  this.fullName_ = b.fullName || null;\n  this.containingType_ = b.containingType;\n  this.fields_ = {};\n  for (a = 0; a < c.length; a++) {\n    b = c[a], this.fields_[b.getTag()] = b;\n  }\n};\ngoog.proto2.Descriptor.prototype.getName = function() {\n  return this.name_;\n};\ngoog.proto2.Descriptor.prototype.getFullName = function() {\n  return this.fullName_;\n};\ngoog.proto2.Descriptor.prototype.getContainingType = function() {\n  return this.containingType_ ? this.containingType_.getDescriptor() : null;\n};\ngoog.proto2.Descriptor.prototype.getFields = function() {\n  var a = goog.object.getValues(this.fields_);\n  goog.array.sort(a, function(a, c) {\n    return a.getTag() - c.getTag();\n  });\n  return a;\n};\ngoog.proto2.Descriptor.prototype.getFieldsMap = function() {\n  return this.fields_;\n};\ngoog.proto2.Descriptor.prototype.findFieldByName = function(a) {\n  return goog.object.findValue(this.fields_, function(b, c, d) {\n    return b.getName() == a;\n  }) || null;\n};\ngoog.proto2.Descriptor.prototype.findFieldByTag = function(a) {\n  goog.asserts.assert(goog.string.isNumeric(a));\n  return this.fields_[parseInt(a, 10)] || null;\n};\ngoog.proto2.Descriptor.prototype.createMessageInstance = function() {\n  return new this.messageType_;\n};\ngoog.proto2.Message = function() {\n  this.values_ = {};\n  this.fields_ = this.getDescriptor().getFieldsMap();\n  this.deserializedFields_ = this.lazyDeserializer_ = null;\n};\ngoog.proto2.Message.FieldType = {DOUBLE:1, FLOAT:2, INT64:3, UINT64:4, INT32:5, FIXED64:6, FIXED32:7, BOOL:8, STRING:9, GROUP:10, MESSAGE:11, BYTES:12, UINT32:13, ENUM:14, SFIXED32:15, SFIXED64:16, SINT32:17, SINT64:18};\ngoog.proto2.Message.prototype.initializeForLazyDeserializer = function(a, b) {\n  this.lazyDeserializer_ = a;\n  this.values_ = b;\n  this.deserializedFields_ = {};\n};\ngoog.proto2.Message.prototype.setUnknown = function(a, b) {\n  goog.asserts.assert(!this.fields_[a], \"Field is not unknown in this message\");\n  goog.asserts.assert(1 <= a, \"Tag \" + a + ' has value \"' + b + '\" in descriptor ' + this.getDescriptor().getName());\n  goog.asserts.assert(null !== b, \"Value cannot be null\");\n  this.values_[a] = b;\n  this.deserializedFields_ && delete this.deserializedFields_[a];\n};\ngoog.proto2.Message.prototype.forEachUnknown = function(a, b) {\n  var c = b || this, d;\n  for (d in this.values_) {\n    var e = Number(d);\n    this.fields_[e] || a.call(c, e, this.values_[d]);\n  }\n};\ngoog.proto2.Message.prototype.getDescriptor = goog.abstractMethod;\ngoog.proto2.Message.prototype.has = function(a) {\n  goog.asserts.assert(a.getContainingType() == this.getDescriptor(), \"The current message does not contain the given field\");\n  return this.has$Value(a.getTag());\n};\ngoog.proto2.Message.prototype.arrayOf = function(a) {\n  goog.asserts.assert(a.getContainingType() == this.getDescriptor(), \"The current message does not contain the given field\");\n  return this.array$Values(a.getTag());\n};\ngoog.proto2.Message.prototype.countOf = function(a) {\n  goog.asserts.assert(a.getContainingType() == this.getDescriptor(), \"The current message does not contain the given field\");\n  return this.count$Values(a.getTag());\n};\ngoog.proto2.Message.prototype.get = function(a, b) {\n  goog.asserts.assert(a.getContainingType() == this.getDescriptor(), \"The current message does not contain the given field\");\n  return this.get$Value(a.getTag(), b);\n};\ngoog.proto2.Message.prototype.getOrDefault = function(a, b) {\n  goog.asserts.assert(a.getContainingType() == this.getDescriptor(), \"The current message does not contain the given field\");\n  return this.get$ValueOrDefault(a.getTag(), b);\n};\ngoog.proto2.Message.prototype.set = function(a, b) {\n  goog.asserts.assert(a.getContainingType() == this.getDescriptor(), \"The current message does not contain the given field\");\n  this.set$Value(a.getTag(), b);\n};\ngoog.proto2.Message.prototype.add = function(a, b) {\n  goog.asserts.assert(a.getContainingType() == this.getDescriptor(), \"The current message does not contain the given field\");\n  this.add$Value(a.getTag(), b);\n};\ngoog.proto2.Message.prototype.clear = function(a) {\n  goog.asserts.assert(a.getContainingType() == this.getDescriptor(), \"The current message does not contain the given field\");\n  this.clear$Field(a.getTag());\n};\ngoog.proto2.Message.prototype.equals = function(a) {\n  if (!a || this.constructor != a.constructor) {\n    return !1;\n  }\n  for (var b = this.getDescriptor().getFields(), c = 0; c < b.length; c++) {\n    var d = b[c], e = d.getTag();\n    if (this.has$Value(e) != a.has$Value(e)) {\n      return !1;\n    }\n    if (this.has$Value(e)) {\n      var f = d.isCompositeType(), g = this.getValueForTag_(e);\n      e = a.getValueForTag_(e);\n      if (d.isRepeated()) {\n        if (g.length != e.length) {\n          return !1;\n        }\n        for (d = 0; d < g.length; d++) {\n          var h = g[d], k = e[d];\n          if (f ? !h.equals(k) : h != k) {\n            return !1;\n          }\n        }\n      } else {\n        if (f ? !g.equals(e) : g != e) {\n          return !1;\n        }\n      }\n    }\n  }\n  return !0;\n};\ngoog.proto2.Message.prototype.copyFrom = function(a) {\n  goog.asserts.assert(this.constructor == a.constructor, \"The source message must have the same type.\");\n  this != a && (this.values_ = {}, this.deserializedFields_ && (this.deserializedFields_ = {}), this.mergeFrom(a));\n};\ngoog.proto2.Message.prototype.mergeFrom = function(a) {\n  goog.asserts.assert(this.constructor == a.constructor, \"The source message must have the same type.\");\n  for (var b = this.getDescriptor().getFields(), c = 0; c < b.length; c++) {\n    var d = b[c], e = d.getTag();\n    if (a.has$Value(e)) {\n      this.deserializedFields_ && delete this.deserializedFields_[d.getTag()];\n      var f = d.isCompositeType();\n      if (d.isRepeated()) {\n        d = a.array$Values(e);\n        for (var g = 0; g < d.length; g++) {\n          this.add$Value(e, f ? d[g].clone() : d[g]);\n        }\n      } else {\n        d = a.getValueForTag_(e), f ? (f = this.getValueForTag_(e)) ? f.mergeFrom(d) : this.set$Value(e, d.clone()) : this.set$Value(e, d);\n      }\n    }\n  }\n};\ngoog.proto2.Message.prototype.clone = function() {\n  var a = new this.constructor;\n  a.copyFrom(this);\n  return a;\n};\ngoog.proto2.Message.prototype.initDefaults = function(a) {\n  for (var b = this.getDescriptor().getFields(), c = 0; c < b.length; c++) {\n    var d = b[c], e = d.getTag(), f = d.isCompositeType();\n    this.has$Value(e) || d.isRepeated() || (f ? this.values_[e] = new (d.getNativeType()) : a && (this.values_[e] = d.getDefaultValue()));\n    if (f) {\n      if (d.isRepeated()) {\n        for (d = this.array$Values(e), e = 0; e < d.length; e++) {\n          d[e].initDefaults(a);\n        }\n      } else {\n        this.get$Value(e).initDefaults(a);\n      }\n    }\n  }\n};\ngoog.proto2.Message.prototype.has$Value = function(a) {\n  return null != this.values_[a];\n};\ngoog.proto2.Message.prototype.getValueForTag_ = function(a) {\n  var b = this.values_[a];\n  return null == b ? null : this.lazyDeserializer_ ? a in this.deserializedFields_ ? this.deserializedFields_[a] : (b = this.lazyDeserializer_.deserializeField(this, this.fields_[a], b), this.deserializedFields_[a] = b) : b;\n};\ngoog.proto2.Message.prototype.get$Value = function(a, b) {\n  var c = this.getValueForTag_(a);\n  if (this.fields_[a].isRepeated()) {\n    var d = b || 0;\n    goog.asserts.assert(0 <= d && d < c.length, \"Given index %s is out of bounds.  Repeated field length: %s\", d, c.length);\n    return c[d];\n  }\n  return c;\n};\ngoog.proto2.Message.prototype.get$ValueOrDefault = function(a, b) {\n  return this.has$Value(a) ? this.get$Value(a, b) : this.fields_[a].getDefaultValue();\n};\ngoog.proto2.Message.prototype.array$Values = function(a) {\n  return this.getValueForTag_(a) || [];\n};\ngoog.proto2.Message.prototype.count$Values = function(a) {\n  return this.fields_[a].isRepeated() ? this.has$Value(a) ? this.values_[a].length : 0 : this.has$Value(a) ? 1 : 0;\n};\ngoog.proto2.Message.prototype.set$Value = function(a, b) {\n  goog.asserts.ENABLE_ASSERTS && this.checkFieldType_(this.fields_[a], b);\n  this.values_[a] = b;\n  this.deserializedFields_ && (this.deserializedFields_[a] = b);\n};\ngoog.proto2.Message.prototype.add$Value = function(a, b) {\n  goog.asserts.ENABLE_ASSERTS && this.checkFieldType_(this.fields_[a], b);\n  this.values_[a] || (this.values_[a] = []);\n  this.values_[a].push(b);\n  this.deserializedFields_ && delete this.deserializedFields_[a];\n};\ngoog.proto2.Message.prototype.checkFieldType_ = function(a, b) {\n  a.getFieldType() == goog.proto2.FieldDescriptor.FieldType.ENUM ? goog.asserts.assertNumber(b) : goog.asserts.assert(Object(b).constructor == a.getNativeType());\n};\ngoog.proto2.Message.prototype.clear$Field = function(a) {\n  delete this.values_[a];\n  this.deserializedFields_ && delete this.deserializedFields_[a];\n};\ngoog.proto2.Message.createDescriptor = function(a, b) {\n  var c = [], d = b[0], e;\n  for (e in b) {\n    0 != e && c.push(new goog.proto2.FieldDescriptor(a, e, b[e]));\n  }\n  return new goog.proto2.Descriptor(a, d, c);\n};\ngoog.proto2.Serializer = function() {\n};\ngoog.proto2.Serializer.DECODE_SYMBOLIC_ENUMS = !1;\ngoog.proto2.Serializer.prototype.serialize = goog.abstractMethod;\ngoog.proto2.Serializer.prototype.getSerializedValue = function(a, b) {\n  return a.isCompositeType() ? this.serialize(b) : \"number\" !== typeof b || isFinite(b) ? b : b.toString();\n};\ngoog.proto2.Serializer.prototype.deserialize = function(a, b) {\n  var c = a.createMessageInstance();\n  this.deserializeTo(c, b);\n  goog.asserts.assert(c instanceof goog.proto2.Message);\n  return c;\n};\ngoog.proto2.Serializer.prototype.deserializeTo = goog.abstractMethod;\ngoog.proto2.Serializer.prototype.getDeserializedValue = function(a, b) {\n  if (a.isCompositeType()) {\n    return b instanceof goog.proto2.Message ? b : this.deserialize(a.getFieldMessageType(), b);\n  }\n  if (a.getFieldType() == goog.proto2.FieldDescriptor.FieldType.ENUM) {\n    if (goog.proto2.Serializer.DECODE_SYMBOLIC_ENUMS && \"string\" === typeof b) {\n      var c = a.getNativeType();\n      if (c.hasOwnProperty(b)) {\n        return c[b];\n      }\n    }\n    return \"string\" === typeof b && goog.proto2.Serializer.INTEGER_REGEX.test(b) && (c = Number(b), 0 < c) ? c : b;\n  }\n  if (!a.deserializationConversionPermitted()) {\n    return b;\n  }\n  c = a.getNativeType();\n  if (c === String) {\n    if (\"number\" === typeof b) {\n      return String(b);\n    }\n  } else {\n    if (c === Number && \"string\" === typeof b && (\"Infinity\" === b || \"-Infinity\" === b || \"NaN\" === b || goog.proto2.Serializer.INTEGER_REGEX.test(b))) {\n      return Number(b);\n    }\n  }\n  return b;\n};\ngoog.proto2.Serializer.INTEGER_REGEX = /^-?[0-9]+$/;\ngoog.proto2.LazyDeserializer = function() {\n};\ngoog.inherits(goog.proto2.LazyDeserializer, goog.proto2.Serializer);\ngoog.proto2.LazyDeserializer.prototype.deserialize = function(a, b) {\n  var c = a.createMessageInstance();\n  c.initializeForLazyDeserializer(this, b);\n  goog.asserts.assert(c instanceof goog.proto2.Message);\n  return c;\n};\ngoog.proto2.LazyDeserializer.prototype.deserializeTo = function(a, b) {\n  throw Error(\"Unimplemented\");\n};\ngoog.proto2.LazyDeserializer.prototype.deserializeField = goog.abstractMethod;\ngoog.proto2.PbLiteSerializer = function() {\n};\ngoog.inherits(goog.proto2.PbLiteSerializer, goog.proto2.LazyDeserializer);\ngoog.proto2.PbLiteSerializer.prototype.zeroIndexing_ = !1;\ngoog.proto2.PbLiteSerializer.prototype.setZeroIndexed = function(a) {\n  this.zeroIndexing_ = a;\n};\ngoog.proto2.PbLiteSerializer.prototype.serialize = function(a) {\n  for (var b = a.getDescriptor().getFields(), c = [], d = this.zeroIndexing_, e = 0; e < b.length; e++) {\n    var f = b[e];\n    if (a.has(f)) {\n      var g = f.getTag();\n      g = d ? g - 1 : g;\n      if (f.isRepeated()) {\n        c[g] = [];\n        for (var h = 0; h < a.countOf(f); h++) {\n          c[g][h] = this.getSerializedValue(f, a.get(f, h));\n        }\n      } else {\n        c[g] = this.getSerializedValue(f, a.get(f));\n      }\n    }\n  }\n  a.forEachUnknown(function(a, b) {\n    c[d ? a - 1 : a] = b;\n  });\n  return c;\n};\ngoog.proto2.PbLiteSerializer.prototype.deserializeField = function(a, b, c) {\n  if (null == c) {\n    return c;\n  }\n  if (b.isRepeated()) {\n    a = [];\n    goog.asserts.assert(goog.isArray(c), \"Value must be array: %s\", c);\n    for (var d = 0; d < c.length; d++) {\n      a[d] = this.getDeserializedValue(b, c[d]);\n    }\n    return a;\n  }\n  return this.getDeserializedValue(b, c);\n};\ngoog.proto2.PbLiteSerializer.prototype.getSerializedValue = function(a, b) {\n  return a.getFieldType() == goog.proto2.FieldDescriptor.FieldType.BOOL ? b ? 1 : 0 : goog.proto2.Serializer.prototype.getSerializedValue.apply(this, arguments);\n};\ngoog.proto2.PbLiteSerializer.prototype.getDeserializedValue = function(a, b) {\n  return a.getFieldType() == goog.proto2.FieldDescriptor.FieldType.BOOL ? (goog.asserts.assert(\"number\" === typeof b || \"boolean\" === typeof b, \"Value is expected to be a number or boolean\"), !!b) : goog.proto2.Serializer.prototype.getDeserializedValue.apply(this, arguments);\n};\ngoog.proto2.PbLiteSerializer.prototype.deserialize = function(a, b) {\n  var c = b;\n  if (this.zeroIndexing_) {\n    c = [];\n    for (var d in b) {\n      c[parseInt(d, 10) + 1] = b[d];\n    }\n  }\n  return goog.proto2.PbLiteSerializer.superClass_.deserialize.call(this, a, c);\n};\ngoog.labs.userAgent.engine = {};\ngoog.labs.userAgent.engine.isPresto = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Presto\");\n};\ngoog.labs.userAgent.engine.isTrident = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Trident\") || goog.labs.userAgent.util.matchUserAgent(\"MSIE\");\n};\ngoog.labs.userAgent.engine.isEdge = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Edge\");\n};\ngoog.labs.userAgent.engine.isWebKit = function() {\n  return goog.labs.userAgent.util.matchUserAgentIgnoreCase(\"WebKit\") && !goog.labs.userAgent.engine.isEdge();\n};\ngoog.labs.userAgent.engine.isGecko = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Gecko\") && !goog.labs.userAgent.engine.isWebKit() && !goog.labs.userAgent.engine.isTrident() && !goog.labs.userAgent.engine.isEdge();\n};\ngoog.labs.userAgent.engine.getVersion = function() {\n  var a = goog.labs.userAgent.util.getUserAgent();\n  if (a) {\n    a = goog.labs.userAgent.util.extractVersionTuples(a);\n    var b = goog.labs.userAgent.engine.getEngineTuple_(a);\n    if (b) {\n      return \"Gecko\" == b[0] ? goog.labs.userAgent.engine.getVersionForKey_(a, \"Firefox\") : b[1];\n    }\n    a = a[0];\n    var c;\n    if (a && (c = a[2]) && (c = /Trident\\/([^\\s;]+)/.exec(c))) {\n      return c[1];\n    }\n  }\n  return \"\";\n};\ngoog.labs.userAgent.engine.getEngineTuple_ = function(a) {\n  if (!goog.labs.userAgent.engine.isEdge()) {\n    return a[1];\n  }\n  for (var b = 0; b < a.length; b++) {\n    var c = a[b];\n    if (\"Edge\" == c[0]) {\n      return c;\n    }\n  }\n};\ngoog.labs.userAgent.engine.isVersionOrHigher = function(a) {\n  return 0 <= goog.string.compareVersions(goog.labs.userAgent.engine.getVersion(), a);\n};\ngoog.labs.userAgent.engine.getVersionForKey_ = function(a, b) {\n  var c = goog.array.find(a, function(a) {\n    return b == a[0];\n  });\n  return c && c[1] || \"\";\n};\ngoog.labs.userAgent.platform = {};\ngoog.labs.userAgent.platform.isAndroid = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Android\");\n};\ngoog.labs.userAgent.platform.isIpod = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"iPod\");\n};\ngoog.labs.userAgent.platform.isIphone = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"iPhone\") && !goog.labs.userAgent.util.matchUserAgent(\"iPod\") && !goog.labs.userAgent.util.matchUserAgent(\"iPad\");\n};\ngoog.labs.userAgent.platform.isIpad = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"iPad\");\n};\ngoog.labs.userAgent.platform.isIos = function() {\n  return goog.labs.userAgent.platform.isIphone() || goog.labs.userAgent.platform.isIpad() || goog.labs.userAgent.platform.isIpod();\n};\ngoog.labs.userAgent.platform.isMacintosh = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Macintosh\");\n};\ngoog.labs.userAgent.platform.isLinux = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Linux\");\n};\ngoog.labs.userAgent.platform.isWindows = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"Windows\");\n};\ngoog.labs.userAgent.platform.isChromeOS = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"CrOS\");\n};\ngoog.labs.userAgent.platform.isChromecast = function() {\n  return goog.labs.userAgent.util.matchUserAgent(\"CrKey\");\n};\ngoog.labs.userAgent.platform.isKaiOS = function() {\n  return goog.labs.userAgent.util.matchUserAgentIgnoreCase(\"KaiOS\");\n};\ngoog.labs.userAgent.platform.isGo2Phone = function() {\n  return goog.labs.userAgent.util.matchUserAgentIgnoreCase(\"GAFP\");\n};\ngoog.labs.userAgent.platform.getVersion = function() {\n  var a = goog.labs.userAgent.util.getUserAgent(), b = \"\";\n  goog.labs.userAgent.platform.isWindows() ? (b = /Windows (?:NT|Phone) ([0-9.]+)/, b = (a = b.exec(a)) ? a[1] : \"0.0\") : goog.labs.userAgent.platform.isIos() ? (b = /(?:iPhone|iPod|iPad|CPU)\\s+OS\\s+(\\S+)/, b = (a = b.exec(a)) && a[1].replace(/_/g, \".\")) : goog.labs.userAgent.platform.isMacintosh() ? (b = /Mac OS X ([0-9_.]+)/, b = (a = b.exec(a)) ? a[1].replace(/_/g, \".\") : \"10\") : goog.labs.userAgent.platform.isKaiOS() ? (b = /(?:KaiOS)\\/(\\S+)/i, b = (a = b.exec(a)) && a[1]) : goog.labs.userAgent.platform.isAndroid() ?\n  (b = /Android\\s+([^\\);]+)(\\)|;)/, b = (a = b.exec(a)) && a[1]) : goog.labs.userAgent.platform.isChromeOS() && (b = /(?:CrOS\\s+(?:i686|x86_64)\\s+([0-9.]+))/, b = (a = b.exec(a)) && a[1]);\n  return b || \"\";\n};\ngoog.labs.userAgent.platform.isVersionOrHigher = function(a) {\n  return 0 <= goog.string.compareVersions(goog.labs.userAgent.platform.getVersion(), a);\n};\ngoog.reflect = {};\ngoog.reflect.object = function(a, b) {\n  return b;\n};\ngoog.reflect.objectProperty = function(a, b) {\n  return a;\n};\ngoog.reflect.sinkValue = function(a) {\n  goog.reflect.sinkValue[\" \"](a);\n  return a;\n};\ngoog.reflect.sinkValue[\" \"] = goog.nullFunction;\ngoog.reflect.canAccessProperty = function(a, b) {\n  try {\n    return goog.reflect.sinkValue(a[b]), !0;\n  } catch (c) {\n  }\n  return !1;\n};\ngoog.reflect.cache = function(a, b, c, d) {\n  d = d ? d(b) : b;\n  return Object.prototype.hasOwnProperty.call(a, d) ? a[d] : a[d] = c(b);\n};\ngoog.userAgent = {};\ngoog.userAgent.ASSUME_IE = !1;\ngoog.userAgent.ASSUME_EDGE = !1;\ngoog.userAgent.ASSUME_GECKO = !1;\ngoog.userAgent.ASSUME_WEBKIT = !1;\ngoog.userAgent.ASSUME_MOBILE_WEBKIT = !1;\ngoog.userAgent.ASSUME_OPERA = !1;\ngoog.userAgent.ASSUME_ANY_VERSION = !1;\ngoog.userAgent.BROWSER_KNOWN_ = goog.userAgent.ASSUME_IE || goog.userAgent.ASSUME_EDGE || goog.userAgent.ASSUME_GECKO || goog.userAgent.ASSUME_MOBILE_WEBKIT || goog.userAgent.ASSUME_WEBKIT || goog.userAgent.ASSUME_OPERA;\ngoog.userAgent.getUserAgentString = function() {\n  return goog.labs.userAgent.util.getUserAgent();\n};\ngoog.userAgent.getNavigatorTyped = function() {\n  return goog.global.navigator || null;\n};\ngoog.userAgent.getNavigator = function() {\n  return goog.userAgent.getNavigatorTyped();\n};\ngoog.userAgent.OPERA = goog.userAgent.BROWSER_KNOWN_ ? goog.userAgent.ASSUME_OPERA : goog.labs.userAgent.browser.isOpera();\ngoog.userAgent.IE = goog.userAgent.BROWSER_KNOWN_ ? goog.userAgent.ASSUME_IE : goog.labs.userAgent.browser.isIE();\ngoog.userAgent.EDGE = goog.userAgent.BROWSER_KNOWN_ ? goog.userAgent.ASSUME_EDGE : goog.labs.userAgent.engine.isEdge();\ngoog.userAgent.EDGE_OR_IE = goog.userAgent.EDGE || goog.userAgent.IE;\ngoog.userAgent.GECKO = goog.userAgent.BROWSER_KNOWN_ ? goog.userAgent.ASSUME_GECKO : goog.labs.userAgent.engine.isGecko();\ngoog.userAgent.WEBKIT = goog.userAgent.BROWSER_KNOWN_ ? goog.userAgent.ASSUME_WEBKIT || goog.userAgent.ASSUME_MOBILE_WEBKIT : goog.labs.userAgent.engine.isWebKit();\ngoog.userAgent.isMobile_ = function() {\n  return goog.userAgent.WEBKIT && goog.labs.userAgent.util.matchUserAgent(\"Mobile\");\n};\ngoog.userAgent.MOBILE = goog.userAgent.ASSUME_MOBILE_WEBKIT || goog.userAgent.isMobile_();\ngoog.userAgent.SAFARI = goog.userAgent.WEBKIT;\ngoog.userAgent.determinePlatform_ = function() {\n  var a = goog.userAgent.getNavigatorTyped();\n  return a && a.platform || \"\";\n};\ngoog.userAgent.PLATFORM = goog.userAgent.determinePlatform_();\ngoog.userAgent.ASSUME_MAC = !1;\ngoog.userAgent.ASSUME_WINDOWS = !1;\ngoog.userAgent.ASSUME_LINUX = !1;\ngoog.userAgent.ASSUME_X11 = !1;\ngoog.userAgent.ASSUME_ANDROID = !1;\ngoog.userAgent.ASSUME_IPHONE = !1;\ngoog.userAgent.ASSUME_IPAD = !1;\ngoog.userAgent.ASSUME_IPOD = !1;\ngoog.userAgent.ASSUME_KAIOS = !1;\ngoog.userAgent.ASSUME_GO2PHONE = !1;\ngoog.userAgent.PLATFORM_KNOWN_ = goog.userAgent.ASSUME_MAC || goog.userAgent.ASSUME_WINDOWS || goog.userAgent.ASSUME_LINUX || goog.userAgent.ASSUME_X11 || goog.userAgent.ASSUME_ANDROID || goog.userAgent.ASSUME_IPHONE || goog.userAgent.ASSUME_IPAD || goog.userAgent.ASSUME_IPOD;\ngoog.userAgent.MAC = goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_MAC : goog.labs.userAgent.platform.isMacintosh();\ngoog.userAgent.WINDOWS = goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_WINDOWS : goog.labs.userAgent.platform.isWindows();\ngoog.userAgent.isLegacyLinux_ = function() {\n  return goog.labs.userAgent.platform.isLinux() || goog.labs.userAgent.platform.isChromeOS();\n};\ngoog.userAgent.LINUX = goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_LINUX : goog.userAgent.isLegacyLinux_();\ngoog.userAgent.isX11_ = function() {\n  var a = goog.userAgent.getNavigatorTyped();\n  return !!a && goog.string.contains(a.appVersion || \"\", \"X11\");\n};\ngoog.userAgent.X11 = goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_X11 : goog.userAgent.isX11_();\ngoog.userAgent.ANDROID = goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_ANDROID : goog.labs.userAgent.platform.isAndroid();\ngoog.userAgent.IPHONE = goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_IPHONE : goog.labs.userAgent.platform.isIphone();\ngoog.userAgent.IPAD = goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_IPAD : goog.labs.userAgent.platform.isIpad();\ngoog.userAgent.IPOD = goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_IPOD : goog.labs.userAgent.platform.isIpod();\ngoog.userAgent.IOS = goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_IPHONE || goog.userAgent.ASSUME_IPAD || goog.userAgent.ASSUME_IPOD : goog.labs.userAgent.platform.isIos();\ngoog.userAgent.KAIOS = goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_KAIOS : goog.labs.userAgent.platform.isKaiOS();\ngoog.userAgent.GO2PHONE = goog.userAgent.PLATFORM_KNOWN_ ? goog.userAgent.ASSUME_GO2PHONE : goog.labs.userAgent.platform.isGo2Phone();\ngoog.userAgent.determineVersion_ = function() {\n  var a = \"\", b = goog.userAgent.getVersionRegexResult_();\n  b && (a = b ? b[1] : \"\");\n  return goog.userAgent.IE && (b = goog.userAgent.getDocumentMode_(), null != b && b > parseFloat(a)) ? String(b) : a;\n};\ngoog.userAgent.getVersionRegexResult_ = function() {\n  var a = goog.userAgent.getUserAgentString();\n  if (goog.userAgent.GECKO) {\n    return /rv:([^\\);]+)(\\)|;)/.exec(a);\n  }\n  if (goog.userAgent.EDGE) {\n    return /Edge\\/([\\d\\.]+)/.exec(a);\n  }\n  if (goog.userAgent.IE) {\n    return /\\b(?:MSIE|rv)[: ]([^\\);]+)(\\)|;)/.exec(a);\n  }\n  if (goog.userAgent.WEBKIT) {\n    return /WebKit\\/(\\S+)/.exec(a);\n  }\n  if (goog.userAgent.OPERA) {\n    return /(?:Version)[ \\/]?(\\S+)/.exec(a);\n  }\n};\ngoog.userAgent.getDocumentMode_ = function() {\n  var a = goog.global.document;\n  return a ? a.documentMode : void 0;\n};\ngoog.userAgent.VERSION = goog.userAgent.determineVersion_();\ngoog.userAgent.compare = function(a, b) {\n  return goog.string.compareVersions(a, b);\n};\ngoog.userAgent.isVersionOrHigherCache_ = {};\ngoog.userAgent.isVersionOrHigher = function(a) {\n  return goog.userAgent.ASSUME_ANY_VERSION || goog.reflect.cache(goog.userAgent.isVersionOrHigherCache_, a, function() {\n    return 0 <= goog.string.compareVersions(goog.userAgent.VERSION, a);\n  });\n};\ngoog.userAgent.isVersion = goog.userAgent.isVersionOrHigher;\ngoog.userAgent.isDocumentModeOrHigher = function(a) {\n  return Number(goog.userAgent.DOCUMENT_MODE) >= a;\n};\ngoog.userAgent.isDocumentMode = goog.userAgent.isDocumentModeOrHigher;\ngoog.userAgent.DOCUMENT_MODE = function() {\n  if (goog.global.document && goog.userAgent.IE) {\n    return goog.userAgent.getDocumentMode_();\n  }\n}();\ngoog.dom.BrowserFeature = {};\ngoog.dom.BrowserFeature.ASSUME_NO_OFFSCREEN_CANVAS = !1;\ngoog.dom.BrowserFeature.ASSUME_OFFSCREEN_CANVAS = !1;\ngoog.dom.BrowserFeature.detectOffscreenCanvas_ = function(a) {\n  try {\n    return !!(new self.OffscreenCanvas(0, 0)).getContext(a);\n  } catch (b) {\n  }\n  return !1;\n};\ngoog.dom.BrowserFeature.OFFSCREEN_CANVAS_2D = !goog.dom.BrowserFeature.ASSUME_NO_OFFSCREEN_CANVAS && (goog.dom.BrowserFeature.ASSUME_OFFSCREEN_CANVAS || goog.dom.BrowserFeature.detectOffscreenCanvas_(\"2d\"));\ngoog.dom.BrowserFeature.CAN_ADD_NAME_OR_TYPE_ATTRIBUTES = !goog.userAgent.IE || goog.userAgent.isDocumentModeOrHigher(9);\ngoog.dom.BrowserFeature.CAN_USE_CHILDREN_ATTRIBUTE = !goog.userAgent.GECKO && !goog.userAgent.IE || goog.userAgent.IE && goog.userAgent.isDocumentModeOrHigher(9) || goog.userAgent.GECKO && goog.userAgent.isVersionOrHigher(\"1.9.1\");\ngoog.dom.BrowserFeature.CAN_USE_INNER_TEXT = goog.userAgent.IE && !goog.userAgent.isVersionOrHigher(\"9\");\ngoog.dom.BrowserFeature.CAN_USE_PARENT_ELEMENT_PROPERTY = goog.userAgent.IE || goog.userAgent.OPERA || goog.userAgent.WEBKIT;\ngoog.dom.BrowserFeature.INNER_HTML_NEEDS_SCOPED_ELEMENT = goog.userAgent.IE;\ngoog.dom.BrowserFeature.LEGACY_IE_RANGES = goog.userAgent.IE && !goog.userAgent.isDocumentModeOrHigher(9);\ngoog.math = {};\ngoog.math.randomInt = function(a) {\n  return Math.floor(Math.random() * a);\n};\ngoog.math.uniformRandom = function(a, b) {\n  return a + Math.random() * (b - a);\n};\ngoog.math.clamp = function(a, b, c) {\n  return Math.min(Math.max(a, b), c);\n};\ngoog.math.modulo = function(a, b) {\n  var c = a % b;\n  return 0 > c * b ? c + b : c;\n};\ngoog.math.lerp = function(a, b, c) {\n  return a + c * (b - a);\n};\ngoog.math.nearlyEquals = function(a, b, c) {\n  return Math.abs(a - b) <= (c || 0.000001);\n};\ngoog.math.standardAngle = function(a) {\n  return goog.math.modulo(a, 360);\n};\ngoog.math.standardAngleInRadians = function(a) {\n  return goog.math.modulo(a, 2 * Math.PI);\n};\ngoog.math.toRadians = function(a) {\n  return a * Math.PI / 180;\n};\ngoog.math.toDegrees = function(a) {\n  return 180 * a / Math.PI;\n};\ngoog.math.angleDx = function(a, b) {\n  return b * Math.cos(goog.math.toRadians(a));\n};\ngoog.math.angleDy = function(a, b) {\n  return b * Math.sin(goog.math.toRadians(a));\n};\ngoog.math.angle = function(a, b, c, d) {\n  return goog.math.standardAngle(goog.math.toDegrees(Math.atan2(d - b, c - a)));\n};\ngoog.math.angleDifference = function(a, b) {\n  var c = goog.math.standardAngle(b) - goog.math.standardAngle(a);\n  180 < c ? c -= 360 : -180 >= c && (c = 360 + c);\n  return c;\n};\ngoog.math.sign = function(a) {\n  return 0 < a ? 1 : 0 > a ? -1 : a;\n};\ngoog.math.longestCommonSubsequence = function(a, b, c, d) {\n  c = c || function(a, b) {\n    return a == b;\n  };\n  d = d || function(b, c) {\n    return a[b];\n  };\n  for (var e = a.length, f = b.length, g = [], h = 0; h < e + 1; h++) {\n    g[h] = [], g[h][0] = 0;\n  }\n  for (var k = 0; k < f + 1; k++) {\n    g[0][k] = 0;\n  }\n  for (h = 1; h <= e; h++) {\n    for (k = 1; k <= f; k++) {\n      c(a[h - 1], b[k - 1]) ? g[h][k] = g[h - 1][k - 1] + 1 : g[h][k] = Math.max(g[h - 1][k], g[h][k - 1]);\n    }\n  }\n  var l = [];\n  h = e;\n  for (k = f; 0 < h && 0 < k;) {\n    c(a[h - 1], b[k - 1]) ? (l.unshift(d(h - 1, k - 1)), h--, k--) : g[h - 1][k] > g[h][k - 1] ? h-- : k--;\n  }\n  return l;\n};\ngoog.math.sum = function(a) {\n  return goog.array.reduce(arguments, function(a, c) {\n    return a + c;\n  }, 0);\n};\ngoog.math.average = function(a) {\n  return goog.math.sum.apply(null, arguments) / arguments.length;\n};\ngoog.math.sampleVariance = function(a) {\n  var b = arguments.length;\n  if (2 > b) {\n    return 0;\n  }\n  var c = goog.math.average.apply(null, arguments);\n  return goog.math.sum.apply(null, goog.array.map(arguments, function(a) {\n    return Math.pow(a - c, 2);\n  })) / (b - 1);\n};\ngoog.math.standardDeviation = function(a) {\n  return Math.sqrt(goog.math.sampleVariance.apply(null, arguments));\n};\ngoog.math.isInt = function(a) {\n  return isFinite(a) && 0 == a % 1;\n};\ngoog.math.isFiniteNumber = function(a) {\n  return isFinite(a);\n};\ngoog.math.isNegativeZero = function(a) {\n  return 0 == a && 0 > 1 / a;\n};\ngoog.math.log10Floor = function(a) {\n  if (0 < a) {\n    var b = Math.round(Math.log(a) * Math.LOG10E);\n    return b - (parseFloat(\"1e\" + b) > a ? 1 : 0);\n  }\n  return 0 == a ? -Infinity : NaN;\n};\ngoog.math.safeFloor = function(a, b) {\n  goog.asserts.assert(void 0 === b || 0 < b);\n  return Math.floor(a + (b || 2e-15));\n};\ngoog.math.safeCeil = function(a, b) {\n  goog.asserts.assert(void 0 === b || 0 < b);\n  return Math.ceil(a - (b || 2e-15));\n};\ngoog.math.Coordinate = function(a, b) {\n  this.x = void 0 !== a ? a : 0;\n  this.y = void 0 !== b ? b : 0;\n};\ngoog.math.Coordinate.prototype.clone = function() {\n  return new goog.math.Coordinate(this.x, this.y);\n};\ngoog.DEBUG && (goog.math.Coordinate.prototype.toString = function() {\n  return \"(\" + this.x + \", \" + this.y + \")\";\n});\ngoog.math.Coordinate.prototype.equals = function(a) {\n  return a instanceof goog.math.Coordinate && goog.math.Coordinate.equals(this, a);\n};\ngoog.math.Coordinate.equals = function(a, b) {\n  return a == b ? !0 : a && b ? a.x == b.x && a.y == b.y : !1;\n};\ngoog.math.Coordinate.distance = function(a, b) {\n  var c = a.x - b.x, d = a.y - b.y;\n  return Math.sqrt(c * c + d * d);\n};\ngoog.math.Coordinate.magnitude = function(a) {\n  return Math.sqrt(a.x * a.x + a.y * a.y);\n};\ngoog.math.Coordinate.azimuth = function(a) {\n  return goog.math.angle(0, 0, a.x, a.y);\n};\ngoog.math.Coordinate.squaredDistance = function(a, b) {\n  var c = a.x - b.x, d = a.y - b.y;\n  return c * c + d * d;\n};\ngoog.math.Coordinate.difference = function(a, b) {\n  return new goog.math.Coordinate(a.x - b.x, a.y - b.y);\n};\ngoog.math.Coordinate.sum = function(a, b) {\n  return new goog.math.Coordinate(a.x + b.x, a.y + b.y);\n};\ngoog.math.Coordinate.prototype.ceil = function() {\n  this.x = Math.ceil(this.x);\n  this.y = Math.ceil(this.y);\n  return this;\n};\ngoog.math.Coordinate.prototype.floor = function() {\n  this.x = Math.floor(this.x);\n  this.y = Math.floor(this.y);\n  return this;\n};\ngoog.math.Coordinate.prototype.round = function() {\n  this.x = Math.round(this.x);\n  this.y = Math.round(this.y);\n  return this;\n};\ngoog.math.Coordinate.prototype.translate = function(a, b) {\n  a instanceof goog.math.Coordinate ? (this.x += a.x, this.y += a.y) : (this.x += Number(a), \"number\" === typeof b && (this.y += b));\n  return this;\n};\ngoog.math.Coordinate.prototype.scale = function(a, b) {\n  this.x *= a;\n  this.y *= \"number\" === typeof b ? b : a;\n  return this;\n};\ngoog.math.Coordinate.prototype.rotateRadians = function(a, b) {\n  var c = b || new goog.math.Coordinate(0, 0), d = this.x, e = this.y, f = Math.cos(a), g = Math.sin(a);\n  this.x = (d - c.x) * f - (e - c.y) * g + c.x;\n  this.y = (d - c.x) * g + (e - c.y) * f + c.y;\n};\ngoog.math.Coordinate.prototype.rotateDegrees = function(a, b) {\n  this.rotateRadians(goog.math.toRadians(a), b);\n};\ngoog.math.Size = function(a, b) {\n  this.width = a;\n  this.height = b;\n};\ngoog.math.Size.equals = function(a, b) {\n  return a == b ? !0 : a && b ? a.width == b.width && a.height == b.height : !1;\n};\ngoog.math.Size.prototype.clone = function() {\n  return new goog.math.Size(this.width, this.height);\n};\ngoog.DEBUG && (goog.math.Size.prototype.toString = function() {\n  return \"(\" + this.width + \" x \" + this.height + \")\";\n});\ngoog.math.Size.prototype.getLongest = function() {\n  return Math.max(this.width, this.height);\n};\ngoog.math.Size.prototype.getShortest = function() {\n  return Math.min(this.width, this.height);\n};\ngoog.math.Size.prototype.area = function() {\n  return this.width * this.height;\n};\ngoog.math.Size.prototype.perimeter = function() {\n  return 2 * (this.width + this.height);\n};\ngoog.math.Size.prototype.aspectRatio = function() {\n  return this.width / this.height;\n};\ngoog.math.Size.prototype.isEmpty = function() {\n  return !this.area();\n};\ngoog.math.Size.prototype.ceil = function() {\n  this.width = Math.ceil(this.width);\n  this.height = Math.ceil(this.height);\n  return this;\n};\ngoog.math.Size.prototype.fitsInside = function(a) {\n  return this.width <= a.width && this.height <= a.height;\n};\ngoog.math.Size.prototype.floor = function() {\n  this.width = Math.floor(this.width);\n  this.height = Math.floor(this.height);\n  return this;\n};\ngoog.math.Size.prototype.round = function() {\n  this.width = Math.round(this.width);\n  this.height = Math.round(this.height);\n  return this;\n};\ngoog.math.Size.prototype.scale = function(a, b) {\n  this.width *= a;\n  this.height *= \"number\" === typeof b ? b : a;\n  return this;\n};\ngoog.math.Size.prototype.scaleToCover = function(a) {\n  a = this.aspectRatio() <= a.aspectRatio() ? a.width / this.width : a.height / this.height;\n  return this.scale(a);\n};\ngoog.math.Size.prototype.scaleToFit = function(a) {\n  a = this.aspectRatio() > a.aspectRatio() ? a.width / this.width : a.height / this.height;\n  return this.scale(a);\n};\ngoog.dom.ASSUME_QUIRKS_MODE = !1;\ngoog.dom.ASSUME_STANDARDS_MODE = !1;\ngoog.dom.COMPAT_MODE_KNOWN_ = goog.dom.ASSUME_QUIRKS_MODE || goog.dom.ASSUME_STANDARDS_MODE;\ngoog.dom.getDomHelper = function(a) {\n  return a ? new goog.dom.DomHelper(goog.dom.getOwnerDocument(a)) : goog.dom.defaultDomHelper_ || (goog.dom.defaultDomHelper_ = new goog.dom.DomHelper);\n};\ngoog.dom.getDocument = function() {\n  return document;\n};\ngoog.dom.getElement = function(a) {\n  return goog.dom.getElementHelper_(document, a);\n};\ngoog.dom.getElementHelper_ = function(a, b) {\n  return \"string\" === typeof b ? a.getElementById(b) : b;\n};\ngoog.dom.getRequiredElement = function(a) {\n  return goog.dom.getRequiredElementHelper_(document, a);\n};\ngoog.dom.getRequiredElementHelper_ = function(a, b) {\n  goog.asserts.assertString(b);\n  var c = goog.dom.getElementHelper_(a, b);\n  return c = goog.asserts.assertElement(c, \"No element found with id: \" + b);\n};\ngoog.dom.$ = goog.dom.getElement;\ngoog.dom.getElementsByTagName = function(a, b) {\n  return (b || document).getElementsByTagName(String(a));\n};\ngoog.dom.getElementsByTagNameAndClass = function(a, b, c) {\n  return goog.dom.getElementsByTagNameAndClass_(document, a, b, c);\n};\ngoog.dom.getElementByTagNameAndClass = function(a, b, c) {\n  return goog.dom.getElementByTagNameAndClass_(document, a, b, c);\n};\ngoog.dom.getElementsByClass = function(a, b) {\n  var c = b || document;\n  return goog.dom.canUseQuerySelector_(c) ? c.querySelectorAll(\".\" + a) : goog.dom.getElementsByTagNameAndClass_(document, \"*\", a, b);\n};\ngoog.dom.getElementByClass = function(a, b) {\n  var c = b || document;\n  return (c.getElementsByClassName ? c.getElementsByClassName(a)[0] : goog.dom.getElementByTagNameAndClass_(document, \"*\", a, b)) || null;\n};\ngoog.dom.getRequiredElementByClass = function(a, b) {\n  var c = goog.dom.getElementByClass(a, b);\n  return goog.asserts.assert(c, \"No element found with className: \" + a);\n};\ngoog.dom.canUseQuerySelector_ = function(a) {\n  return !(!a.querySelectorAll || !a.querySelector);\n};\ngoog.dom.getElementsByTagNameAndClass_ = function(a, b, c, d) {\n  a = d || a;\n  b = b && \"*\" != b ? String(b).toUpperCase() : \"\";\n  if (goog.dom.canUseQuerySelector_(a) && (b || c)) {\n    return a.querySelectorAll(b + (c ? \".\" + c : \"\"));\n  }\n  if (c && a.getElementsByClassName) {\n    a = a.getElementsByClassName(c);\n    if (b) {\n      d = {};\n      for (var e = 0, f = 0, g; g = a[f]; f++) {\n        b == g.nodeName && (d[e++] = g);\n      }\n      d.length = e;\n      return d;\n    }\n    return a;\n  }\n  a = a.getElementsByTagName(b || \"*\");\n  if (c) {\n    d = {};\n    for (f = e = 0; g = a[f]; f++) {\n      b = g.className, \"function\" == typeof b.split && goog.array.contains(b.split(/\\s+/), c) && (d[e++] = g);\n    }\n    d.length = e;\n    return d;\n  }\n  return a;\n};\ngoog.dom.getElementByTagNameAndClass_ = function(a, b, c, d) {\n  var e = d || a, f = b && \"*\" != b ? String(b).toUpperCase() : \"\";\n  return goog.dom.canUseQuerySelector_(e) && (f || c) ? e.querySelector(f + (c ? \".\" + c : \"\")) : goog.dom.getElementsByTagNameAndClass_(a, b, c, d)[0] || null;\n};\ngoog.dom.$$ = goog.dom.getElementsByTagNameAndClass;\ngoog.dom.setProperties = function(a, b) {\n  goog.object.forEach(b, function(b, d) {\n    b && \"object\" == typeof b && b.implementsGoogStringTypedString && (b = b.getTypedStringValue());\n    \"style\" == d ? a.style.cssText = b : \"class\" == d ? a.className = b : \"for\" == d ? a.htmlFor = b : goog.dom.DIRECT_ATTRIBUTE_MAP_.hasOwnProperty(d) ? a.setAttribute(goog.dom.DIRECT_ATTRIBUTE_MAP_[d], b) : goog.string.startsWith(d, \"aria-\") || goog.string.startsWith(d, \"data-\") ? a.setAttribute(d, b) : a[d] = b;\n  });\n};\ngoog.dom.DIRECT_ATTRIBUTE_MAP_ = {cellpadding:\"cellPadding\", cellspacing:\"cellSpacing\", colspan:\"colSpan\", frameborder:\"frameBorder\", height:\"height\", maxlength:\"maxLength\", nonce:\"nonce\", role:\"role\", rowspan:\"rowSpan\", type:\"type\", usemap:\"useMap\", valign:\"vAlign\", width:\"width\"};\ngoog.dom.getViewportSize = function(a) {\n  return goog.dom.getViewportSize_(a || window);\n};\ngoog.dom.getViewportSize_ = function(a) {\n  a = a.document;\n  a = goog.dom.isCss1CompatMode_(a) ? a.documentElement : a.body;\n  return new goog.math.Size(a.clientWidth, a.clientHeight);\n};\ngoog.dom.getDocumentHeight = function() {\n  return goog.dom.getDocumentHeight_(window);\n};\ngoog.dom.getDocumentHeightForWindow = function(a) {\n  return goog.dom.getDocumentHeight_(a);\n};\ngoog.dom.getDocumentHeight_ = function(a) {\n  var b = a.document, c = 0;\n  if (b) {\n    c = b.body;\n    var d = b.documentElement;\n    if (!d || !c) {\n      return 0;\n    }\n    a = goog.dom.getViewportSize_(a).height;\n    if (goog.dom.isCss1CompatMode_(b) && d.scrollHeight) {\n      c = d.scrollHeight != a ? d.scrollHeight : d.offsetHeight;\n    } else {\n      b = d.scrollHeight;\n      var e = d.offsetHeight;\n      d.clientHeight != e && (b = c.scrollHeight, e = c.offsetHeight);\n      c = b > a ? b > e ? b : e : b < e ? b : e;\n    }\n  }\n  return c;\n};\ngoog.dom.getPageScroll = function(a) {\n  return goog.dom.getDomHelper((a || goog.global || window).document).getDocumentScroll();\n};\ngoog.dom.getDocumentScroll = function() {\n  return goog.dom.getDocumentScroll_(document);\n};\ngoog.dom.getDocumentScroll_ = function(a) {\n  var b = goog.dom.getDocumentScrollElement_(a);\n  a = goog.dom.getWindow_(a);\n  return goog.userAgent.IE && goog.userAgent.isVersionOrHigher(\"10\") && a.pageYOffset != b.scrollTop ? new goog.math.Coordinate(b.scrollLeft, b.scrollTop) : new goog.math.Coordinate(a.pageXOffset || b.scrollLeft, a.pageYOffset || b.scrollTop);\n};\ngoog.dom.getDocumentScrollElement = function() {\n  return goog.dom.getDocumentScrollElement_(document);\n};\ngoog.dom.getDocumentScrollElement_ = function(a) {\n  return a.scrollingElement ? a.scrollingElement : !goog.userAgent.WEBKIT && goog.dom.isCss1CompatMode_(a) ? a.documentElement : a.body || a.documentElement;\n};\ngoog.dom.getWindow = function(a) {\n  return a ? goog.dom.getWindow_(a) : window;\n};\ngoog.dom.getWindow_ = function(a) {\n  return a.parentWindow || a.defaultView;\n};\ngoog.dom.createDom = function(a, b, c) {\n  return goog.dom.createDom_(document, arguments);\n};\ngoog.dom.createDom_ = function(a, b) {\n  var c = String(b[0]), d = b[1];\n  if (!goog.dom.BrowserFeature.CAN_ADD_NAME_OR_TYPE_ATTRIBUTES && d && (d.name || d.type)) {\n    c = [\"<\", c];\n    d.name && c.push(' name=\"', goog.string.htmlEscape(d.name), '\"');\n    if (d.type) {\n      c.push(' type=\"', goog.string.htmlEscape(d.type), '\"');\n      var e = {};\n      goog.object.extend(e, d);\n      delete e.type;\n      d = e;\n    }\n    c.push(\">\");\n    c = c.join(\"\");\n  }\n  c = goog.dom.createElement_(a, c);\n  d && (\"string\" === typeof d ? c.className = d : goog.isArray(d) ? c.className = d.join(\" \") : goog.dom.setProperties(c, d));\n  2 < b.length && goog.dom.append_(a, c, b, 2);\n  return c;\n};\ngoog.dom.append_ = function(a, b, c, d) {\n  function e(c) {\n    c && b.appendChild(\"string\" === typeof c ? a.createTextNode(c) : c);\n  }\n  for (; d < c.length; d++) {\n    var f = c[d];\n    goog.isArrayLike(f) && !goog.dom.isNodeLike(f) ? goog.array.forEach(goog.dom.isNodeList(f) ? goog.array.toArray(f) : f, e) : e(f);\n  }\n};\ngoog.dom.$dom = goog.dom.createDom;\ngoog.dom.createElement = function(a) {\n  return goog.dom.createElement_(document, a);\n};\ngoog.dom.createElement_ = function(a, b) {\n  b = String(b);\n  \"application/xhtml+xml\" === a.contentType && (b = b.toLowerCase());\n  return a.createElement(b);\n};\ngoog.dom.createTextNode = function(a) {\n  return document.createTextNode(String(a));\n};\ngoog.dom.createTable = function(a, b, c) {\n  return goog.dom.createTable_(document, a, b, !!c);\n};\ngoog.dom.createTable_ = function(a, b, c, d) {\n  for (var e = goog.dom.createElement_(a, \"TABLE\"), f = e.appendChild(goog.dom.createElement_(a, \"TBODY\")), g = 0; g < b; g++) {\n    for (var h = goog.dom.createElement_(a, \"TR\"), k = 0; k < c; k++) {\n      var l = goog.dom.createElement_(a, \"TD\");\n      d && goog.dom.setTextContent(l, goog.string.Unicode.NBSP);\n      h.appendChild(l);\n    }\n    f.appendChild(h);\n  }\n  return e;\n};\ngoog.dom.constHtmlToNode = function(a) {\n  var b = goog.array.map(arguments, goog.string.Const.unwrap);\n  b = goog.html.uncheckedconversions.safeHtmlFromStringKnownToSatisfyTypeContract(goog.string.Const.from(\"Constant HTML string, that gets turned into a Node later, so it will be automatically balanced.\"), b.join(\"\"));\n  return goog.dom.safeHtmlToNode(b);\n};\ngoog.dom.safeHtmlToNode = function(a) {\n  return goog.dom.safeHtmlToNode_(document, a);\n};\ngoog.dom.safeHtmlToNode_ = function(a, b) {\n  var c = goog.dom.createElement_(a, \"DIV\");\n  goog.dom.BrowserFeature.INNER_HTML_NEEDS_SCOPED_ELEMENT ? (goog.dom.safe.setInnerHtml(c, goog.html.SafeHtml.concat(goog.html.SafeHtml.BR, b)), c.removeChild(goog.asserts.assert(c.firstChild))) : goog.dom.safe.setInnerHtml(c, b);\n  return goog.dom.childrenToNode_(a, c);\n};\ngoog.dom.childrenToNode_ = function(a, b) {\n  if (1 == b.childNodes.length) {\n    return b.removeChild(goog.asserts.assert(b.firstChild));\n  }\n  for (var c = a.createDocumentFragment(); b.firstChild;) {\n    c.appendChild(b.firstChild);\n  }\n  return c;\n};\ngoog.dom.isCss1CompatMode = function() {\n  return goog.dom.isCss1CompatMode_(document);\n};\ngoog.dom.isCss1CompatMode_ = function(a) {\n  return goog.dom.COMPAT_MODE_KNOWN_ ? goog.dom.ASSUME_STANDARDS_MODE : \"CSS1Compat\" == a.compatMode;\n};\ngoog.dom.canHaveChildren = function(a) {\n  if (a.nodeType != goog.dom.NodeType.ELEMENT) {\n    return !1;\n  }\n  switch(a.tagName) {\n    case \"APPLET\":\n    case \"AREA\":\n    case \"BASE\":\n    case \"BR\":\n    case \"COL\":\n    case \"COMMAND\":\n    case \"EMBED\":\n    case \"FRAME\":\n    case \"HR\":\n    case \"IMG\":\n    case \"INPUT\":\n    case \"IFRAME\":\n    case \"ISINDEX\":\n    case \"KEYGEN\":\n    case \"LINK\":\n    case \"NOFRAMES\":\n    case \"NOSCRIPT\":\n    case \"META\":\n    case \"OBJECT\":\n    case \"PARAM\":\n    case \"SCRIPT\":\n    case \"SOURCE\":\n    case \"STYLE\":\n    case \"TRACK\":\n    case \"WBR\":\n      return !1;\n  }\n  return !0;\n};\ngoog.dom.appendChild = function(a, b) {\n  goog.asserts.assert(null != a && null != b, \"goog.dom.appendChild expects non-null arguments\");\n  a.appendChild(b);\n};\ngoog.dom.append = function(a, b) {\n  goog.dom.append_(goog.dom.getOwnerDocument(a), a, arguments, 1);\n};\ngoog.dom.removeChildren = function(a) {\n  for (var b; b = a.firstChild;) {\n    a.removeChild(b);\n  }\n};\ngoog.dom.insertSiblingBefore = function(a, b) {\n  goog.asserts.assert(null != a && null != b, \"goog.dom.insertSiblingBefore expects non-null arguments\");\n  b.parentNode && b.parentNode.insertBefore(a, b);\n};\ngoog.dom.insertSiblingAfter = function(a, b) {\n  goog.asserts.assert(null != a && null != b, \"goog.dom.insertSiblingAfter expects non-null arguments\");\n  b.parentNode && b.parentNode.insertBefore(a, b.nextSibling);\n};\ngoog.dom.insertChildAt = function(a, b, c) {\n  goog.asserts.assert(null != a, \"goog.dom.insertChildAt expects a non-null parent\");\n  a.insertBefore(b, a.childNodes[c] || null);\n};\ngoog.dom.removeNode = function(a) {\n  return a && a.parentNode ? a.parentNode.removeChild(a) : null;\n};\ngoog.dom.replaceNode = function(a, b) {\n  goog.asserts.assert(null != a && null != b, \"goog.dom.replaceNode expects non-null arguments\");\n  var c = b.parentNode;\n  c && c.replaceChild(a, b);\n};\ngoog.dom.flattenElement = function(a) {\n  var b, c = a.parentNode;\n  if (c && c.nodeType != goog.dom.NodeType.DOCUMENT_FRAGMENT) {\n    if (a.removeNode) {\n      return a.removeNode(!1);\n    }\n    for (; b = a.firstChild;) {\n      c.insertBefore(b, a);\n    }\n    return goog.dom.removeNode(a);\n  }\n};\ngoog.dom.getChildren = function(a) {\n  return goog.dom.BrowserFeature.CAN_USE_CHILDREN_ATTRIBUTE && void 0 != a.children ? a.children : goog.array.filter(a.childNodes, function(a) {\n    return a.nodeType == goog.dom.NodeType.ELEMENT;\n  });\n};\ngoog.dom.getFirstElementChild = function(a) {\n  return void 0 !== a.firstElementChild ? a.firstElementChild : goog.dom.getNextElementNode_(a.firstChild, !0);\n};\ngoog.dom.getLastElementChild = function(a) {\n  return void 0 !== a.lastElementChild ? a.lastElementChild : goog.dom.getNextElementNode_(a.lastChild, !1);\n};\ngoog.dom.getNextElementSibling = function(a) {\n  return void 0 !== a.nextElementSibling ? a.nextElementSibling : goog.dom.getNextElementNode_(a.nextSibling, !0);\n};\ngoog.dom.getPreviousElementSibling = function(a) {\n  return void 0 !== a.previousElementSibling ? a.previousElementSibling : goog.dom.getNextElementNode_(a.previousSibling, !1);\n};\ngoog.dom.getNextElementNode_ = function(a, b) {\n  for (; a && a.nodeType != goog.dom.NodeType.ELEMENT;) {\n    a = b ? a.nextSibling : a.previousSibling;\n  }\n  return a;\n};\ngoog.dom.getNextNode = function(a) {\n  if (!a) {\n    return null;\n  }\n  if (a.firstChild) {\n    return a.firstChild;\n  }\n  for (; a && !a.nextSibling;) {\n    a = a.parentNode;\n  }\n  return a ? a.nextSibling : null;\n};\ngoog.dom.getPreviousNode = function(a) {\n  if (!a) {\n    return null;\n  }\n  if (!a.previousSibling) {\n    return a.parentNode;\n  }\n  for (a = a.previousSibling; a && a.lastChild;) {\n    a = a.lastChild;\n  }\n  return a;\n};\ngoog.dom.isNodeLike = function(a) {\n  return goog.isObject(a) && 0 < a.nodeType;\n};\ngoog.dom.isElement = function(a) {\n  return goog.isObject(a) && a.nodeType == goog.dom.NodeType.ELEMENT;\n};\ngoog.dom.isWindow = function(a) {\n  return goog.isObject(a) && a.window == a;\n};\ngoog.dom.getParentElement = function(a) {\n  var b;\n  if (goog.dom.BrowserFeature.CAN_USE_PARENT_ELEMENT_PROPERTY && !(goog.userAgent.IE && goog.userAgent.isVersionOrHigher(\"9\") && !goog.userAgent.isVersionOrHigher(\"10\") && goog.global.SVGElement && a instanceof goog.global.SVGElement) && (b = a.parentElement)) {\n    return b;\n  }\n  b = a.parentNode;\n  return goog.dom.isElement(b) ? b : null;\n};\ngoog.dom.contains = function(a, b) {\n  if (!a || !b) {\n    return !1;\n  }\n  if (a.contains && b.nodeType == goog.dom.NodeType.ELEMENT) {\n    return a == b || a.contains(b);\n  }\n  if (\"undefined\" != typeof a.compareDocumentPosition) {\n    return a == b || !!(a.compareDocumentPosition(b) & 16);\n  }\n  for (; b && a != b;) {\n    b = b.parentNode;\n  }\n  return b == a;\n};\ngoog.dom.compareNodeOrder = function(a, b) {\n  if (a == b) {\n    return 0;\n  }\n  if (a.compareDocumentPosition) {\n    return a.compareDocumentPosition(b) & 2 ? 1 : -1;\n  }\n  if (goog.userAgent.IE && !goog.userAgent.isDocumentModeOrHigher(9)) {\n    if (a.nodeType == goog.dom.NodeType.DOCUMENT) {\n      return -1;\n    }\n    if (b.nodeType == goog.dom.NodeType.DOCUMENT) {\n      return 1;\n    }\n  }\n  if (\"sourceIndex\" in a || a.parentNode && \"sourceIndex\" in a.parentNode) {\n    var c = a.nodeType == goog.dom.NodeType.ELEMENT, d = b.nodeType == goog.dom.NodeType.ELEMENT;\n    if (c && d) {\n      return a.sourceIndex - b.sourceIndex;\n    }\n    var e = a.parentNode, f = b.parentNode;\n    return e == f ? goog.dom.compareSiblingOrder_(a, b) : !c && goog.dom.contains(e, b) ? -1 * goog.dom.compareParentsDescendantNodeIe_(a, b) : !d && goog.dom.contains(f, a) ? goog.dom.compareParentsDescendantNodeIe_(b, a) : (c ? a.sourceIndex : e.sourceIndex) - (d ? b.sourceIndex : f.sourceIndex);\n  }\n  d = goog.dom.getOwnerDocument(a);\n  c = d.createRange();\n  c.selectNode(a);\n  c.collapse(!0);\n  d = d.createRange();\n  d.selectNode(b);\n  d.collapse(!0);\n  return c.compareBoundaryPoints(goog.global.Range.START_TO_END, d);\n};\ngoog.dom.compareParentsDescendantNodeIe_ = function(a, b) {\n  var c = a.parentNode;\n  if (c == b) {\n    return -1;\n  }\n  for (var d = b; d.parentNode != c;) {\n    d = d.parentNode;\n  }\n  return goog.dom.compareSiblingOrder_(d, a);\n};\ngoog.dom.compareSiblingOrder_ = function(a, b) {\n  for (var c = b; c = c.previousSibling;) {\n    if (c == a) {\n      return -1;\n    }\n  }\n  return 1;\n};\ngoog.dom.findCommonAncestor = function(a) {\n  var b, c = arguments.length;\n  if (!c) {\n    return null;\n  }\n  if (1 == c) {\n    return arguments[0];\n  }\n  var d = [], e = Infinity;\n  for (b = 0; b < c; b++) {\n    for (var f = [], g = arguments[b]; g;) {\n      f.unshift(g), g = g.parentNode;\n    }\n    d.push(f);\n    e = Math.min(e, f.length);\n  }\n  f = null;\n  for (b = 0; b < e; b++) {\n    g = d[0][b];\n    for (var h = 1; h < c; h++) {\n      if (g != d[h][b]) {\n        return f;\n      }\n    }\n    f = g;\n  }\n  return f;\n};\ngoog.dom.isInDocument = function(a) {\n  return 16 == (a.ownerDocument.compareDocumentPosition(a) & 16);\n};\ngoog.dom.getOwnerDocument = function(a) {\n  goog.asserts.assert(a, \"Node cannot be null or undefined.\");\n  return a.nodeType == goog.dom.NodeType.DOCUMENT ? a : a.ownerDocument || a.document;\n};\ngoog.dom.getFrameContentDocument = function(a) {\n  return a.contentDocument || a.contentWindow.document;\n};\ngoog.dom.getFrameContentWindow = function(a) {\n  try {\n    return a.contentWindow || (a.contentDocument ? goog.dom.getWindow(a.contentDocument) : null);\n  } catch (b) {\n  }\n  return null;\n};\ngoog.dom.setTextContent = function(a, b) {\n  goog.asserts.assert(null != a, \"goog.dom.setTextContent expects a non-null value for node\");\n  if (\"textContent\" in a) {\n    a.textContent = b;\n  } else {\n    if (a.nodeType == goog.dom.NodeType.TEXT) {\n      a.data = String(b);\n    } else {\n      if (a.firstChild && a.firstChild.nodeType == goog.dom.NodeType.TEXT) {\n        for (; a.lastChild != a.firstChild;) {\n          a.removeChild(goog.asserts.assert(a.lastChild));\n        }\n        a.firstChild.data = String(b);\n      } else {\n        goog.dom.removeChildren(a);\n        var c = goog.dom.getOwnerDocument(a);\n        a.appendChild(c.createTextNode(String(b)));\n      }\n    }\n  }\n};\ngoog.dom.getOuterHtml = function(a) {\n  goog.asserts.assert(null !== a, \"goog.dom.getOuterHtml expects a non-null value for element\");\n  if (\"outerHTML\" in a) {\n    return a.outerHTML;\n  }\n  var b = goog.dom.getOwnerDocument(a);\n  b = goog.dom.createElement_(b, \"DIV\");\n  b.appendChild(a.cloneNode(!0));\n  return b.innerHTML;\n};\ngoog.dom.findNode = function(a, b) {\n  var c = [];\n  return goog.dom.findNodes_(a, b, c, !0) ? c[0] : void 0;\n};\ngoog.dom.findNodes = function(a, b) {\n  var c = [];\n  goog.dom.findNodes_(a, b, c, !1);\n  return c;\n};\ngoog.dom.findNodes_ = function(a, b, c, d) {\n  if (null != a) {\n    for (a = a.firstChild; a;) {\n      if (b(a) && (c.push(a), d) || goog.dom.findNodes_(a, b, c, d)) {\n        return !0;\n      }\n      a = a.nextSibling;\n    }\n  }\n  return !1;\n};\ngoog.dom.findElement = function(a, b) {\n  for (var c = goog.dom.getChildrenReverse_(a); 0 < c.length;) {\n    var d = c.pop();\n    if (b(d)) {\n      return d;\n    }\n    for (d = d.lastElementChild; d; d = d.previousElementSibling) {\n      c.push(d);\n    }\n  }\n  return null;\n};\ngoog.dom.findElements = function(a, b) {\n  for (var c = [], d = goog.dom.getChildrenReverse_(a); 0 < d.length;) {\n    var e = d.pop();\n    b(e) && c.push(e);\n    for (e = e.lastElementChild; e; e = e.previousElementSibling) {\n      d.push(e);\n    }\n  }\n  return c;\n};\ngoog.dom.getChildrenReverse_ = function(a) {\n  if (a.nodeType == goog.dom.NodeType.DOCUMENT) {\n    return [a.documentElement];\n  }\n  var b = [];\n  for (a = a.lastElementChild; a; a = a.previousElementSibling) {\n    b.push(a);\n  }\n  return b;\n};\ngoog.dom.TAGS_TO_IGNORE_ = {SCRIPT:1, STYLE:1, HEAD:1, IFRAME:1, OBJECT:1};\ngoog.dom.PREDEFINED_TAG_VALUES_ = {IMG:\" \", BR:\"\\n\"};\ngoog.dom.isFocusableTabIndex = function(a) {\n  return goog.dom.hasSpecifiedTabIndex_(a) && goog.dom.isTabIndexFocusable_(a);\n};\ngoog.dom.setFocusableTabIndex = function(a, b) {\n  b ? a.tabIndex = 0 : (a.tabIndex = -1, a.removeAttribute(\"tabIndex\"));\n};\ngoog.dom.isFocusable = function(a) {\n  var b;\n  return (b = goog.dom.nativelySupportsFocus_(a) ? !a.disabled && (!goog.dom.hasSpecifiedTabIndex_(a) || goog.dom.isTabIndexFocusable_(a)) : goog.dom.isFocusableTabIndex(a)) && goog.userAgent.IE ? goog.dom.hasNonZeroBoundingRect_(a) : b;\n};\ngoog.dom.hasSpecifiedTabIndex_ = function(a) {\n  return goog.userAgent.IE && !goog.userAgent.isVersionOrHigher(\"9\") ? (a = a.getAttributeNode(\"tabindex\"), null != a && a.specified) : a.hasAttribute(\"tabindex\");\n};\ngoog.dom.isTabIndexFocusable_ = function(a) {\n  a = a.tabIndex;\n  return \"number\" === typeof a && 0 <= a && 32768 > a;\n};\ngoog.dom.nativelySupportsFocus_ = function(a) {\n  return \"A\" == a.tagName && a.hasAttribute(\"href\") || \"INPUT\" == a.tagName || \"TEXTAREA\" == a.tagName || \"SELECT\" == a.tagName || \"BUTTON\" == a.tagName;\n};\ngoog.dom.hasNonZeroBoundingRect_ = function(a) {\n  a = !goog.isFunction(a.getBoundingClientRect) || goog.userAgent.IE && null == a.parentElement ? {height:a.offsetHeight, width:a.offsetWidth} : a.getBoundingClientRect();\n  return null != a && 0 < a.height && 0 < a.width;\n};\ngoog.dom.getTextContent = function(a) {\n  if (goog.dom.BrowserFeature.CAN_USE_INNER_TEXT && null !== a && \"innerText\" in a) {\n    a = goog.string.canonicalizeNewlines(a.innerText);\n  } else {\n    var b = [];\n    goog.dom.getTextContent_(a, b, !0);\n    a = b.join(\"\");\n  }\n  a = a.replace(/ \\xAD /g, \" \").replace(/\\xAD/g, \"\");\n  a = a.replace(/\\u200B/g, \"\");\n  goog.dom.BrowserFeature.CAN_USE_INNER_TEXT || (a = a.replace(/ +/g, \" \"));\n  \" \" != a && (a = a.replace(/^\\s*/, \"\"));\n  return a;\n};\ngoog.dom.getRawTextContent = function(a) {\n  var b = [];\n  goog.dom.getTextContent_(a, b, !1);\n  return b.join(\"\");\n};\ngoog.dom.getTextContent_ = function(a, b, c) {\n  if (!(a.nodeName in goog.dom.TAGS_TO_IGNORE_)) {\n    if (a.nodeType == goog.dom.NodeType.TEXT) {\n      c ? b.push(String(a.nodeValue).replace(/(\\r\\n|\\r|\\n)/g, \"\")) : b.push(a.nodeValue);\n    } else {\n      if (a.nodeName in goog.dom.PREDEFINED_TAG_VALUES_) {\n        b.push(goog.dom.PREDEFINED_TAG_VALUES_[a.nodeName]);\n      } else {\n        for (a = a.firstChild; a;) {\n          goog.dom.getTextContent_(a, b, c), a = a.nextSibling;\n        }\n      }\n    }\n  }\n};\ngoog.dom.getNodeTextLength = function(a) {\n  return goog.dom.getTextContent(a).length;\n};\ngoog.dom.getNodeTextOffset = function(a, b) {\n  for (var c = b || goog.dom.getOwnerDocument(a).body, d = []; a && a != c;) {\n    for (var e = a; e = e.previousSibling;) {\n      d.unshift(goog.dom.getTextContent(e));\n    }\n    a = a.parentNode;\n  }\n  return goog.string.trimLeft(d.join(\"\")).replace(/ +/g, \" \").length;\n};\ngoog.dom.getNodeAtOffset = function(a, b, c) {\n  a = [a];\n  for (var d = 0, e = null; 0 < a.length && d < b;) {\n    if (e = a.pop(), !(e.nodeName in goog.dom.TAGS_TO_IGNORE_)) {\n      if (e.nodeType == goog.dom.NodeType.TEXT) {\n        var f = e.nodeValue.replace(/(\\r\\n|\\r|\\n)/g, \"\").replace(/ +/g, \" \");\n        d += f.length;\n      } else {\n        if (e.nodeName in goog.dom.PREDEFINED_TAG_VALUES_) {\n          d += goog.dom.PREDEFINED_TAG_VALUES_[e.nodeName].length;\n        } else {\n          for (f = e.childNodes.length - 1; 0 <= f; f--) {\n            a.push(e.childNodes[f]);\n          }\n        }\n      }\n    }\n  }\n  goog.isObject(c) && (c.remainder = e ? e.nodeValue.length + b - d - 1 : 0, c.node = e);\n  return e;\n};\ngoog.dom.isNodeList = function(a) {\n  if (a && \"number\" == typeof a.length) {\n    if (goog.isObject(a)) {\n      return \"function\" == typeof a.item || \"string\" == typeof a.item;\n    }\n    if (goog.isFunction(a)) {\n      return \"function\" == typeof a.item;\n    }\n  }\n  return !1;\n};\ngoog.dom.getAncestorByTagNameAndClass = function(a, b, c, d) {\n  if (!b && !c) {\n    return null;\n  }\n  var e = b ? String(b).toUpperCase() : null;\n  return goog.dom.getAncestor(a, function(a) {\n    return (!e || a.nodeName == e) && (!c || \"string\" === typeof a.className && goog.array.contains(a.className.split(/\\s+/), c));\n  }, !0, d);\n};\ngoog.dom.getAncestorByClass = function(a, b, c) {\n  return goog.dom.getAncestorByTagNameAndClass(a, null, b, c);\n};\ngoog.dom.getAncestor = function(a, b, c, d) {\n  a && !c && (a = a.parentNode);\n  for (c = 0; a && (null == d || c <= d);) {\n    goog.asserts.assert(\"parentNode\" != a.name);\n    if (b(a)) {\n      return a;\n    }\n    a = a.parentNode;\n    c++;\n  }\n  return null;\n};\ngoog.dom.getActiveElement = function(a) {\n  try {\n    var b = a && a.activeElement;\n    return b && b.nodeName ? b : null;\n  } catch (c) {\n    return null;\n  }\n};\ngoog.dom.getPixelRatio = function() {\n  var a = goog.dom.getWindow();\n  return void 0 !== a.devicePixelRatio ? a.devicePixelRatio : a.matchMedia ? goog.dom.matchesPixelRatio_(3) || goog.dom.matchesPixelRatio_(2) || goog.dom.matchesPixelRatio_(1.5) || goog.dom.matchesPixelRatio_(1) || .75 : 1;\n};\ngoog.dom.matchesPixelRatio_ = function(a) {\n  return goog.dom.getWindow().matchMedia(\"(min-resolution: \" + a + \"dppx),(min--moz-device-pixel-ratio: \" + a + \"),(min-resolution: \" + 96 * a + \"dpi)\").matches ? a : 0;\n};\ngoog.dom.getCanvasContext2D = function(a) {\n  return a.getContext(\"2d\");\n};\ngoog.dom.DomHelper = function(a) {\n  this.document_ = a || goog.global.document || document;\n};\ngoog.dom.DomHelper.prototype.getDomHelper = goog.dom.getDomHelper;\ngoog.dom.DomHelper.prototype.setDocument = function(a) {\n  this.document_ = a;\n};\ngoog.dom.DomHelper.prototype.getDocument = function() {\n  return this.document_;\n};\ngoog.dom.DomHelper.prototype.getElement = function(a) {\n  return goog.dom.getElementHelper_(this.document_, a);\n};\ngoog.dom.DomHelper.prototype.getRequiredElement = function(a) {\n  return goog.dom.getRequiredElementHelper_(this.document_, a);\n};\ngoog.dom.DomHelper.prototype.$ = goog.dom.DomHelper.prototype.getElement;\ngoog.dom.DomHelper.prototype.getElementsByTagName = function(a, b) {\n  return (b || this.document_).getElementsByTagName(String(a));\n};\ngoog.dom.DomHelper.prototype.getElementsByTagNameAndClass = function(a, b, c) {\n  return goog.dom.getElementsByTagNameAndClass_(this.document_, a, b, c);\n};\ngoog.dom.DomHelper.prototype.getElementByTagNameAndClass = function(a, b, c) {\n  return goog.dom.getElementByTagNameAndClass_(this.document_, a, b, c);\n};\ngoog.dom.DomHelper.prototype.getElementsByClass = function(a, b) {\n  return goog.dom.getElementsByClass(a, b || this.document_);\n};\ngoog.dom.DomHelper.prototype.getElementByClass = function(a, b) {\n  return goog.dom.getElementByClass(a, b || this.document_);\n};\ngoog.dom.DomHelper.prototype.getRequiredElementByClass = function(a, b) {\n  return goog.dom.getRequiredElementByClass(a, b || this.document_);\n};\ngoog.dom.DomHelper.prototype.$$ = goog.dom.DomHelper.prototype.getElementsByTagNameAndClass;\ngoog.dom.DomHelper.prototype.setProperties = goog.dom.setProperties;\ngoog.dom.DomHelper.prototype.getViewportSize = function(a) {\n  return goog.dom.getViewportSize(a || this.getWindow());\n};\ngoog.dom.DomHelper.prototype.getDocumentHeight = function() {\n  return goog.dom.getDocumentHeight_(this.getWindow());\n};\ngoog.dom.DomHelper.prototype.createDom = function(a, b, c) {\n  return goog.dom.createDom_(this.document_, arguments);\n};\ngoog.dom.DomHelper.prototype.$dom = goog.dom.DomHelper.prototype.createDom;\ngoog.dom.DomHelper.prototype.createElement = function(a) {\n  return goog.dom.createElement_(this.document_, a);\n};\ngoog.dom.DomHelper.prototype.createTextNode = function(a) {\n  return this.document_.createTextNode(String(a));\n};\ngoog.dom.DomHelper.prototype.createTable = function(a, b, c) {\n  return goog.dom.createTable_(this.document_, a, b, !!c);\n};\ngoog.dom.DomHelper.prototype.safeHtmlToNode = function(a) {\n  return goog.dom.safeHtmlToNode_(this.document_, a);\n};\ngoog.dom.DomHelper.prototype.isCss1CompatMode = function() {\n  return goog.dom.isCss1CompatMode_(this.document_);\n};\ngoog.dom.DomHelper.prototype.getWindow = function() {\n  return goog.dom.getWindow_(this.document_);\n};\ngoog.dom.DomHelper.prototype.getDocumentScrollElement = function() {\n  return goog.dom.getDocumentScrollElement_(this.document_);\n};\ngoog.dom.DomHelper.prototype.getDocumentScroll = function() {\n  return goog.dom.getDocumentScroll_(this.document_);\n};\ngoog.dom.DomHelper.prototype.getActiveElement = function(a) {\n  return goog.dom.getActiveElement(a || this.document_);\n};\ngoog.dom.DomHelper.prototype.appendChild = goog.dom.appendChild;\ngoog.dom.DomHelper.prototype.append = goog.dom.append;\ngoog.dom.DomHelper.prototype.canHaveChildren = goog.dom.canHaveChildren;\ngoog.dom.DomHelper.prototype.removeChildren = goog.dom.removeChildren;\ngoog.dom.DomHelper.prototype.insertSiblingBefore = goog.dom.insertSiblingBefore;\ngoog.dom.DomHelper.prototype.insertSiblingAfter = goog.dom.insertSiblingAfter;\ngoog.dom.DomHelper.prototype.insertChildAt = goog.dom.insertChildAt;\ngoog.dom.DomHelper.prototype.removeNode = goog.dom.removeNode;\ngoog.dom.DomHelper.prototype.replaceNode = goog.dom.replaceNode;\ngoog.dom.DomHelper.prototype.flattenElement = goog.dom.flattenElement;\ngoog.dom.DomHelper.prototype.getChildren = goog.dom.getChildren;\ngoog.dom.DomHelper.prototype.getFirstElementChild = goog.dom.getFirstElementChild;\ngoog.dom.DomHelper.prototype.getLastElementChild = goog.dom.getLastElementChild;\ngoog.dom.DomHelper.prototype.getNextElementSibling = goog.dom.getNextElementSibling;\ngoog.dom.DomHelper.prototype.getPreviousElementSibling = goog.dom.getPreviousElementSibling;\ngoog.dom.DomHelper.prototype.getNextNode = goog.dom.getNextNode;\ngoog.dom.DomHelper.prototype.getPreviousNode = goog.dom.getPreviousNode;\ngoog.dom.DomHelper.prototype.isNodeLike = goog.dom.isNodeLike;\ngoog.dom.DomHelper.prototype.isElement = goog.dom.isElement;\ngoog.dom.DomHelper.prototype.isWindow = goog.dom.isWindow;\ngoog.dom.DomHelper.prototype.getParentElement = goog.dom.getParentElement;\ngoog.dom.DomHelper.prototype.contains = goog.dom.contains;\ngoog.dom.DomHelper.prototype.compareNodeOrder = goog.dom.compareNodeOrder;\ngoog.dom.DomHelper.prototype.findCommonAncestor = goog.dom.findCommonAncestor;\ngoog.dom.DomHelper.prototype.getOwnerDocument = goog.dom.getOwnerDocument;\ngoog.dom.DomHelper.prototype.getFrameContentDocument = goog.dom.getFrameContentDocument;\ngoog.dom.DomHelper.prototype.getFrameContentWindow = goog.dom.getFrameContentWindow;\ngoog.dom.DomHelper.prototype.setTextContent = goog.dom.setTextContent;\ngoog.dom.DomHelper.prototype.getOuterHtml = goog.dom.getOuterHtml;\ngoog.dom.DomHelper.prototype.findNode = goog.dom.findNode;\ngoog.dom.DomHelper.prototype.findNodes = goog.dom.findNodes;\ngoog.dom.DomHelper.prototype.isFocusableTabIndex = goog.dom.isFocusableTabIndex;\ngoog.dom.DomHelper.prototype.setFocusableTabIndex = goog.dom.setFocusableTabIndex;\ngoog.dom.DomHelper.prototype.isFocusable = goog.dom.isFocusable;\ngoog.dom.DomHelper.prototype.getTextContent = goog.dom.getTextContent;\ngoog.dom.DomHelper.prototype.getNodeTextLength = goog.dom.getNodeTextLength;\ngoog.dom.DomHelper.prototype.getNodeTextOffset = goog.dom.getNodeTextOffset;\ngoog.dom.DomHelper.prototype.getNodeAtOffset = goog.dom.getNodeAtOffset;\ngoog.dom.DomHelper.prototype.isNodeList = goog.dom.isNodeList;\ngoog.dom.DomHelper.prototype.getAncestorByTagNameAndClass = goog.dom.getAncestorByTagNameAndClass;\ngoog.dom.DomHelper.prototype.getAncestorByClass = goog.dom.getAncestorByClass;\ngoog.dom.DomHelper.prototype.getAncestor = goog.dom.getAncestor;\ngoog.dom.DomHelper.prototype.getCanvasContext2D = goog.dom.getCanvasContext2D;\ngoog.json = {};\ngoog.json.USE_NATIVE_JSON = !1;\ngoog.json.TRY_NATIVE_JSON = !1;\ngoog.json.isValid = function(a) {\n  return /^\\s*$/.test(a) ? !1 : /^[\\],:{}\\s\\u2028\\u2029]*$/.test(a.replace(/\\\\[\"\\\\\\/bfnrtu]/g, \"@\").replace(/(?:\"[^\"\\\\\\n\\r\\u2028\\u2029\\x00-\\x08\\x0a-\\x1f]*\"|true|false|null|-?\\d+(?:\\.\\d*)?(?:[eE][+\\-]?\\d+)?)[\\s\\u2028\\u2029]*(?=:|,|]|}|$)/g, \"]\").replace(/(?:^|:|,)(?:[\\s\\u2028\\u2029]*\\[)+/g, \"\"));\n};\ngoog.json.errorLogger_ = goog.nullFunction;\ngoog.json.setErrorLogger = function(a) {\n  goog.json.errorLogger_ = a;\n};\ngoog.json.parse = goog.json.USE_NATIVE_JSON ? goog.global.JSON.parse : function(a) {\n  if (goog.json.TRY_NATIVE_JSON) {\n    try {\n      return goog.global.JSON.parse(a);\n    } catch (d) {\n      var b = d;\n    }\n  }\n  a = String(a);\n  if (goog.json.isValid(a)) {\n    try {\n      var c = eval(\"(\" + a + \")\");\n      b && goog.json.errorLogger_(\"Invalid JSON: \" + a, b);\n      return c;\n    } catch (d) {\n    }\n  }\n  throw Error(\"Invalid JSON string: \" + a);\n};\ngoog.json.serialize = goog.json.USE_NATIVE_JSON ? goog.global.JSON.stringify : function(a, b) {\n  return (new goog.json.Serializer(b)).serialize(a);\n};\ngoog.json.Serializer = function(a) {\n  this.replacer_ = a;\n};\ngoog.json.Serializer.prototype.serialize = function(a) {\n  var b = [];\n  this.serializeInternal(a, b);\n  return b.join(\"\");\n};\ngoog.json.Serializer.prototype.serializeInternal = function(a, b) {\n  if (null == a) {\n    b.push(\"null\");\n  } else {\n    if (\"object\" == typeof a) {\n      if (goog.isArray(a)) {\n        this.serializeArray(a, b);\n        return;\n      }\n      if (a instanceof String || a instanceof Number || a instanceof Boolean) {\n        a = a.valueOf();\n      } else {\n        this.serializeObject_(a, b);\n        return;\n      }\n    }\n    switch(typeof a) {\n      case \"string\":\n        this.serializeString_(a, b);\n        break;\n      case \"number\":\n        this.serializeNumber_(a, b);\n        break;\n      case \"boolean\":\n        b.push(String(a));\n        break;\n      case \"function\":\n        b.push(\"null\");\n        break;\n      default:\n        throw Error(\"Unknown type: \" + typeof a);\n    }\n  }\n};\ngoog.json.Serializer.charToJsonCharCache_ = {'\"':'\\\\\"', \"\\\\\":\"\\\\\\\\\", \"/\":\"\\\\/\", \"\\b\":\"\\\\b\", \"\\f\":\"\\\\f\", \"\\n\":\"\\\\n\", \"\\r\":\"\\\\r\", \"\\t\":\"\\\\t\", \"\\x0B\":\"\\\\u000b\"};\ngoog.json.Serializer.charsToReplace_ = /\\uffff/.test(\"\\uffff\") ? /[\\\\\"\\x00-\\x1f\\x7f-\\uffff]/g : /[\\\\\"\\x00-\\x1f\\x7f-\\xff]/g;\ngoog.json.Serializer.prototype.serializeString_ = function(a, b) {\n  b.push('\"', a.replace(goog.json.Serializer.charsToReplace_, function(a) {\n    var b = goog.json.Serializer.charToJsonCharCache_[a];\n    b || (b = \"\\\\u\" + (a.charCodeAt(0) | 65536).toString(16).substr(1), goog.json.Serializer.charToJsonCharCache_[a] = b);\n    return b;\n  }), '\"');\n};\ngoog.json.Serializer.prototype.serializeNumber_ = function(a, b) {\n  b.push(isFinite(a) && !isNaN(a) ? String(a) : \"null\");\n};\ngoog.json.Serializer.prototype.serializeArray = function(a, b) {\n  var c = a.length;\n  b.push(\"[\");\n  for (var d = \"\", e = 0; e < c; e++) {\n    b.push(d), d = a[e], this.serializeInternal(this.replacer_ ? this.replacer_.call(a, String(e), d) : d, b), d = \",\";\n  }\n  b.push(\"]\");\n};\ngoog.json.Serializer.prototype.serializeObject_ = function(a, b) {\n  b.push(\"{\");\n  var c = \"\", d;\n  for (d in a) {\n    if (Object.prototype.hasOwnProperty.call(a, d)) {\n      var e = a[d];\n      \"function\" != typeof e && (b.push(c), this.serializeString_(d, b), b.push(\":\"), this.serializeInternal(this.replacer_ ? this.replacer_.call(a, d, e) : e, b), c = \",\");\n    }\n  }\n  b.push(\"}\");\n};\ngoog.proto2.ObjectSerializer = function(a, b) {\n  this.keyOption_ = a;\n  this.serializeBooleanAsNumber_ = b;\n};\ngoog.inherits(goog.proto2.ObjectSerializer, goog.proto2.Serializer);\ngoog.proto2.ObjectSerializer.KeyOption = {TAG:0, NAME:1, CAMEL_CASE_NAME:2};\ngoog.proto2.ObjectSerializer.prototype.serialize = function(a) {\n  for (var b = a.getDescriptor().getFields(), c = {}, d = 0; d < b.length; d++) {\n    var e = b[d], f = e.getTag();\n    switch(this.keyOption_) {\n      case goog.proto2.ObjectSerializer.KeyOption.TAG:\n        break;\n      case goog.proto2.ObjectSerializer.KeyOption.NAME:\n        f = e.getName();\n        break;\n      case goog.proto2.ObjectSerializer.KeyOption.CAMEL_CASE_NAME:\n        f = goog.string.toCamelCase(e.getName().replace(/_/g, \"-\"));\n        break;\n      default:\n        goog.asserts.assert(this.keyOption_ !== goog.proto2.ObjectSerializer.KeyOption.TAG && this.keyOption_ !== goog.proto2.ObjectSerializer.KeyOption.NAME && this.keyOption_ !== goog.proto2.ObjectSerializer.KeyOption.CAMEL_CASE_NAME, \"keyOption should be one of TAG, NAME, or CAMEL_CASE_NAME\");\n    }\n    if (a.has(e)) {\n      if (e.isRepeated()) {\n        var g = [];\n        c[f] = g;\n        for (f = 0; f < a.countOf(e); f++) {\n          g.push(this.getSerializedValue(e, a.get(e, f)));\n        }\n      } else {\n        c[f] = this.getSerializedValue(e, a.get(e));\n      }\n    }\n  }\n  a.forEachUnknown(function(a, b) {\n    c[a] = b;\n  });\n  return c;\n};\ngoog.proto2.ObjectSerializer.prototype.getSerializedValue = function(a, b) {\n  return this.serializeBooleanAsNumber_ && a.getFieldType() == goog.proto2.FieldDescriptor.FieldType.BOOL && \"boolean\" === typeof b ? b ? 1 : 0 : goog.proto2.ObjectSerializer.superClass_.getSerializedValue.call(this, a, b);\n};\ngoog.proto2.ObjectSerializer.prototype.getDeserializedValue = function(a, b) {\n  return a.getFieldType() == goog.proto2.FieldDescriptor.FieldType.BOOL && \"number\" === typeof b ? !!b : goog.proto2.ObjectSerializer.superClass_.getDeserializedValue.call(this, a, b);\n};\ngoog.proto2.ObjectSerializer.prototype.deserializeTo = function(a, b) {\n  var c = a.getDescriptor(), d;\n  for (d in b) {\n    var e = b[d], f = goog.string.isNumeric(d);\n    if (f) {\n      var g = c.findFieldByTag(d);\n    } else {\n      goog.asserts.assert(this.keyOption_ == goog.proto2.ObjectSerializer.KeyOption.NAME || this.keyOption_ == goog.proto2.ObjectSerializer.KeyOption.CAMEL_CASE_NAME, \"Key mode \" + this.keyOption_ + \"for key \" + d + \" is not \" + goog.proto2.ObjectSerializer.KeyOption.NAME + \" nor \" + goog.proto2.ObjectSerializer.KeyOption.CAMEL_CASE_NAME), this.keyOption_ == goog.proto2.ObjectSerializer.KeyOption.CAMEL_CASE_NAME && (d = goog.string.toSelectorCase(d).replace(/\\-/g, \"_\")), g = c.findFieldByName(d);\n    }\n    if (g) {\n      if (g.isRepeated()) {\n        for (goog.asserts.assert(goog.isArray(e), \"Value for repeated field \" + g + \" must be an array.\"), f = 0; f < e.length; f++) {\n          a.add(g, this.getDeserializedValue(g, e[f]));\n        }\n      } else {\n        goog.asserts.assert(!goog.isArray(e), \"Value for non-repeated field \" + g + \" must not be an array.\"), a.set(g, this.getDeserializedValue(g, e));\n      }\n    } else {\n      f ? a.setUnknown(Number(d), e) : goog.asserts.fail(\"Failed to find field: \" + d);\n    }\n  }\n};\n/*\n\n Protocol Buffer 2 Copyright 2008 Google Inc.\n All other code copyright its respective owners.\n Copyright (C) 2010 The Libphonenumber Authors\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n*/\nvar i18n = {phonenumbers:{}};\ni18n.phonenumbers.NumberFormat = function() {\n  goog.proto2.Message.call(this);\n};\ngoog.inherits(i18n.phonenumbers.NumberFormat, goog.proto2.Message);\ni18n.phonenumbers.NumberFormat.descriptor_ = null;\ni18n.phonenumbers.NumberFormat.prototype.getPattern = function() {\n  return this.get$Value(1);\n};\ni18n.phonenumbers.NumberFormat.prototype.getPatternOrDefault = function() {\n  return this.get$ValueOrDefault(1);\n};\ni18n.phonenumbers.NumberFormat.prototype.setPattern = function(a) {\n  this.set$Value(1, a);\n};\ni18n.phonenumbers.NumberFormat.prototype.hasPattern = function() {\n  return this.has$Value(1);\n};\ni18n.phonenumbers.NumberFormat.prototype.patternCount = function() {\n  return this.count$Values(1);\n};\ni18n.phonenumbers.NumberFormat.prototype.clearPattern = function() {\n  this.clear$Field(1);\n};\ni18n.phonenumbers.NumberFormat.prototype.getFormat = function() {\n  return this.get$Value(2);\n};\ni18n.phonenumbers.NumberFormat.prototype.getFormatOrDefault = function() {\n  return this.get$ValueOrDefault(2);\n};\ni18n.phonenumbers.NumberFormat.prototype.setFormat = function(a) {\n  this.set$Value(2, a);\n};\ni18n.phonenumbers.NumberFormat.prototype.hasFormat = function() {\n  return this.has$Value(2);\n};\ni18n.phonenumbers.NumberFormat.prototype.formatCount = function() {\n  return this.count$Values(2);\n};\ni18n.phonenumbers.NumberFormat.prototype.clearFormat = function() {\n  this.clear$Field(2);\n};\ni18n.phonenumbers.NumberFormat.prototype.getLeadingDigitsPattern = function(a) {\n  return this.get$Value(3, a);\n};\ni18n.phonenumbers.NumberFormat.prototype.getLeadingDigitsPatternOrDefault = function(a) {\n  return this.get$ValueOrDefault(3, a);\n};\ni18n.phonenumbers.NumberFormat.prototype.addLeadingDigitsPattern = function(a) {\n  this.add$Value(3, a);\n};\ni18n.phonenumbers.NumberFormat.prototype.leadingDigitsPatternArray = function() {\n  return this.array$Values(3);\n};\ni18n.phonenumbers.NumberFormat.prototype.hasLeadingDigitsPattern = function() {\n  return this.has$Value(3);\n};\ni18n.phonenumbers.NumberFormat.prototype.leadingDigitsPatternCount = function() {\n  return this.count$Values(3);\n};\ni18n.phonenumbers.NumberFormat.prototype.clearLeadingDigitsPattern = function() {\n  this.clear$Field(3);\n};\ni18n.phonenumbers.NumberFormat.prototype.getNationalPrefixFormattingRule = function() {\n  return this.get$Value(4);\n};\ni18n.phonenumbers.NumberFormat.prototype.getNationalPrefixFormattingRuleOrDefault = function() {\n  return this.get$ValueOrDefault(4);\n};\ni18n.phonenumbers.NumberFormat.prototype.setNationalPrefixFormattingRule = function(a) {\n  this.set$Value(4, a);\n};\ni18n.phonenumbers.NumberFormat.prototype.hasNationalPrefixFormattingRule = function() {\n  return this.has$Value(4);\n};\ni18n.phonenumbers.NumberFormat.prototype.nationalPrefixFormattingRuleCount = function() {\n  return this.count$Values(4);\n};\ni18n.phonenumbers.NumberFormat.prototype.clearNationalPrefixFormattingRule = function() {\n  this.clear$Field(4);\n};\ni18n.phonenumbers.NumberFormat.prototype.getNationalPrefixOptionalWhenFormatting = function() {\n  return this.get$Value(6);\n};\ni18n.phonenumbers.NumberFormat.prototype.getNationalPrefixOptionalWhenFormattingOrDefault = function() {\n  return this.get$ValueOrDefault(6);\n};\ni18n.phonenumbers.NumberFormat.prototype.setNationalPrefixOptionalWhenFormatting = function(a) {\n  this.set$Value(6, a);\n};\ni18n.phonenumbers.NumberFormat.prototype.hasNationalPrefixOptionalWhenFormatting = function() {\n  return this.has$Value(6);\n};\ni18n.phonenumbers.NumberFormat.prototype.nationalPrefixOptionalWhenFormattingCount = function() {\n  return this.count$Values(6);\n};\ni18n.phonenumbers.NumberFormat.prototype.clearNationalPrefixOptionalWhenFormatting = function() {\n  this.clear$Field(6);\n};\ni18n.phonenumbers.NumberFormat.prototype.getDomesticCarrierCodeFormattingRule = function() {\n  return this.get$Value(5);\n};\ni18n.phonenumbers.NumberFormat.prototype.getDomesticCarrierCodeFormattingRuleOrDefault = function() {\n  return this.get$ValueOrDefault(5);\n};\ni18n.phonenumbers.NumberFormat.prototype.setDomesticCarrierCodeFormattingRule = function(a) {\n  this.set$Value(5, a);\n};\ni18n.phonenumbers.NumberFormat.prototype.hasDomesticCarrierCodeFormattingRule = function() {\n  return this.has$Value(5);\n};\ni18n.phonenumbers.NumberFormat.prototype.domesticCarrierCodeFormattingRuleCount = function() {\n  return this.count$Values(5);\n};\ni18n.phonenumbers.NumberFormat.prototype.clearDomesticCarrierCodeFormattingRule = function() {\n  this.clear$Field(5);\n};\ni18n.phonenumbers.PhoneNumberDesc = function() {\n  goog.proto2.Message.call(this);\n};\ngoog.inherits(i18n.phonenumbers.PhoneNumberDesc, goog.proto2.Message);\ni18n.phonenumbers.PhoneNumberDesc.descriptor_ = null;\ni18n.phonenumbers.PhoneNumberDesc.prototype.getNationalNumberPattern = function() {\n  return this.get$Value(2);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.getNationalNumberPatternOrDefault = function() {\n  return this.get$ValueOrDefault(2);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.setNationalNumberPattern = function(a) {\n  this.set$Value(2, a);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.hasNationalNumberPattern = function() {\n  return this.has$Value(2);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.nationalNumberPatternCount = function() {\n  return this.count$Values(2);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.clearNationalNumberPattern = function() {\n  this.clear$Field(2);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.getPossibleLength = function(a) {\n  return this.get$Value(9, a);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.getPossibleLengthOrDefault = function(a) {\n  return this.get$ValueOrDefault(9, a);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.addPossibleLength = function(a) {\n  this.add$Value(9, a);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.possibleLengthArray = function() {\n  return this.array$Values(9);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.hasPossibleLength = function() {\n  return this.has$Value(9);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.possibleLengthCount = function() {\n  return this.count$Values(9);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.clearPossibleLength = function() {\n  this.clear$Field(9);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.getPossibleLengthLocalOnly = function(a) {\n  return this.get$Value(10, a);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.getPossibleLengthLocalOnlyOrDefault = function(a) {\n  return this.get$ValueOrDefault(10, a);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.addPossibleLengthLocalOnly = function(a) {\n  this.add$Value(10, a);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.possibleLengthLocalOnlyArray = function() {\n  return this.array$Values(10);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.hasPossibleLengthLocalOnly = function() {\n  return this.has$Value(10);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.possibleLengthLocalOnlyCount = function() {\n  return this.count$Values(10);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.clearPossibleLengthLocalOnly = function() {\n  this.clear$Field(10);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.getExampleNumber = function() {\n  return this.get$Value(6);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.getExampleNumberOrDefault = function() {\n  return this.get$ValueOrDefault(6);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.setExampleNumber = function(a) {\n  this.set$Value(6, a);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.hasExampleNumber = function() {\n  return this.has$Value(6);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.exampleNumberCount = function() {\n  return this.count$Values(6);\n};\ni18n.phonenumbers.PhoneNumberDesc.prototype.clearExampleNumber = function() {\n  this.clear$Field(6);\n};\ni18n.phonenumbers.PhoneMetadata = function() {\n  goog.proto2.Message.call(this);\n};\ngoog.inherits(i18n.phonenumbers.PhoneMetadata, goog.proto2.Message);\ni18n.phonenumbers.PhoneMetadata.descriptor_ = null;\ni18n.phonenumbers.PhoneMetadata.prototype.getGeneralDesc = function() {\n  return this.get$Value(1);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getGeneralDescOrDefault = function() {\n  return this.get$ValueOrDefault(1);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setGeneralDesc = function(a) {\n  this.set$Value(1, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasGeneralDesc = function() {\n  return this.has$Value(1);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.generalDescCount = function() {\n  return this.count$Values(1);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearGeneralDesc = function() {\n  this.clear$Field(1);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getFixedLine = function() {\n  return this.get$Value(2);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getFixedLineOrDefault = function() {\n  return this.get$ValueOrDefault(2);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setFixedLine = function(a) {\n  this.set$Value(2, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasFixedLine = function() {\n  return this.has$Value(2);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.fixedLineCount = function() {\n  return this.count$Values(2);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearFixedLine = function() {\n  this.clear$Field(2);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getMobile = function() {\n  return this.get$Value(3);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getMobileOrDefault = function() {\n  return this.get$ValueOrDefault(3);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setMobile = function(a) {\n  this.set$Value(3, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasMobile = function() {\n  return this.has$Value(3);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.mobileCount = function() {\n  return this.count$Values(3);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearMobile = function() {\n  this.clear$Field(3);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getTollFree = function() {\n  return this.get$Value(4);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getTollFreeOrDefault = function() {\n  return this.get$ValueOrDefault(4);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setTollFree = function(a) {\n  this.set$Value(4, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasTollFree = function() {\n  return this.has$Value(4);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.tollFreeCount = function() {\n  return this.count$Values(4);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearTollFree = function() {\n  this.clear$Field(4);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getPremiumRate = function() {\n  return this.get$Value(5);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getPremiumRateOrDefault = function() {\n  return this.get$ValueOrDefault(5);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setPremiumRate = function(a) {\n  this.set$Value(5, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasPremiumRate = function() {\n  return this.has$Value(5);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.premiumRateCount = function() {\n  return this.count$Values(5);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearPremiumRate = function() {\n  this.clear$Field(5);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getSharedCost = function() {\n  return this.get$Value(6);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getSharedCostOrDefault = function() {\n  return this.get$ValueOrDefault(6);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setSharedCost = function(a) {\n  this.set$Value(6, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasSharedCost = function() {\n  return this.has$Value(6);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.sharedCostCount = function() {\n  return this.count$Values(6);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearSharedCost = function() {\n  this.clear$Field(6);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getPersonalNumber = function() {\n  return this.get$Value(7);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getPersonalNumberOrDefault = function() {\n  return this.get$ValueOrDefault(7);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setPersonalNumber = function(a) {\n  this.set$Value(7, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasPersonalNumber = function() {\n  return this.has$Value(7);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.personalNumberCount = function() {\n  return this.count$Values(7);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearPersonalNumber = function() {\n  this.clear$Field(7);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getVoip = function() {\n  return this.get$Value(8);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getVoipOrDefault = function() {\n  return this.get$ValueOrDefault(8);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setVoip = function(a) {\n  this.set$Value(8, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasVoip = function() {\n  return this.has$Value(8);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.voipCount = function() {\n  return this.count$Values(8);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearVoip = function() {\n  this.clear$Field(8);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getPager = function() {\n  return this.get$Value(21);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getPagerOrDefault = function() {\n  return this.get$ValueOrDefault(21);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setPager = function(a) {\n  this.set$Value(21, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasPager = function() {\n  return this.has$Value(21);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.pagerCount = function() {\n  return this.count$Values(21);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearPager = function() {\n  this.clear$Field(21);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getUan = function() {\n  return this.get$Value(25);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getUanOrDefault = function() {\n  return this.get$ValueOrDefault(25);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setUan = function(a) {\n  this.set$Value(25, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasUan = function() {\n  return this.has$Value(25);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.uanCount = function() {\n  return this.count$Values(25);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearUan = function() {\n  this.clear$Field(25);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getEmergency = function() {\n  return this.get$Value(27);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getEmergencyOrDefault = function() {\n  return this.get$ValueOrDefault(27);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setEmergency = function(a) {\n  this.set$Value(27, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasEmergency = function() {\n  return this.has$Value(27);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.emergencyCount = function() {\n  return this.count$Values(27);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearEmergency = function() {\n  this.clear$Field(27);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getVoicemail = function() {\n  return this.get$Value(28);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getVoicemailOrDefault = function() {\n  return this.get$ValueOrDefault(28);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setVoicemail = function(a) {\n  this.set$Value(28, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasVoicemail = function() {\n  return this.has$Value(28);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.voicemailCount = function() {\n  return this.count$Values(28);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearVoicemail = function() {\n  this.clear$Field(28);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getShortCode = function() {\n  return this.get$Value(29);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getShortCodeOrDefault = function() {\n  return this.get$ValueOrDefault(29);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setShortCode = function(a) {\n  this.set$Value(29, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasShortCode = function() {\n  return this.has$Value(29);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.shortCodeCount = function() {\n  return this.count$Values(29);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearShortCode = function() {\n  this.clear$Field(29);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getStandardRate = function() {\n  return this.get$Value(30);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getStandardRateOrDefault = function() {\n  return this.get$ValueOrDefault(30);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setStandardRate = function(a) {\n  this.set$Value(30, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasStandardRate = function() {\n  return this.has$Value(30);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.standardRateCount = function() {\n  return this.count$Values(30);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearStandardRate = function() {\n  this.clear$Field(30);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getCarrierSpecific = function() {\n  return this.get$Value(31);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getCarrierSpecificOrDefault = function() {\n  return this.get$ValueOrDefault(31);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setCarrierSpecific = function(a) {\n  this.set$Value(31, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasCarrierSpecific = function() {\n  return this.has$Value(31);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.carrierSpecificCount = function() {\n  return this.count$Values(31);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearCarrierSpecific = function() {\n  this.clear$Field(31);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getSmsServices = function() {\n  return this.get$Value(33);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getSmsServicesOrDefault = function() {\n  return this.get$ValueOrDefault(33);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setSmsServices = function(a) {\n  this.set$Value(33, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasSmsServices = function() {\n  return this.has$Value(33);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.smsServicesCount = function() {\n  return this.count$Values(33);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearSmsServices = function() {\n  this.clear$Field(33);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getNoInternationalDialling = function() {\n  return this.get$Value(24);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getNoInternationalDiallingOrDefault = function() {\n  return this.get$ValueOrDefault(24);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setNoInternationalDialling = function(a) {\n  this.set$Value(24, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasNoInternationalDialling = function() {\n  return this.has$Value(24);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.noInternationalDiallingCount = function() {\n  return this.count$Values(24);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearNoInternationalDialling = function() {\n  this.clear$Field(24);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getId = function() {\n  return this.get$Value(9);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getIdOrDefault = function() {\n  return this.get$ValueOrDefault(9);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setId = function(a) {\n  this.set$Value(9, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasId = function() {\n  return this.has$Value(9);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.idCount = function() {\n  return this.count$Values(9);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearId = function() {\n  this.clear$Field(9);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getCountryCode = function() {\n  return this.get$Value(10);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getCountryCodeOrDefault = function() {\n  return this.get$ValueOrDefault(10);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setCountryCode = function(a) {\n  this.set$Value(10, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasCountryCode = function() {\n  return this.has$Value(10);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.countryCodeCount = function() {\n  return this.count$Values(10);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearCountryCode = function() {\n  this.clear$Field(10);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getInternationalPrefix = function() {\n  return this.get$Value(11);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getInternationalPrefixOrDefault = function() {\n  return this.get$ValueOrDefault(11);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setInternationalPrefix = function(a) {\n  this.set$Value(11, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasInternationalPrefix = function() {\n  return this.has$Value(11);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.internationalPrefixCount = function() {\n  return this.count$Values(11);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearInternationalPrefix = function() {\n  this.clear$Field(11);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getPreferredInternationalPrefix = function() {\n  return this.get$Value(17);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getPreferredInternationalPrefixOrDefault = function() {\n  return this.get$ValueOrDefault(17);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setPreferredInternationalPrefix = function(a) {\n  this.set$Value(17, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasPreferredInternationalPrefix = function() {\n  return this.has$Value(17);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.preferredInternationalPrefixCount = function() {\n  return this.count$Values(17);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearPreferredInternationalPrefix = function() {\n  this.clear$Field(17);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getNationalPrefix = function() {\n  return this.get$Value(12);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getNationalPrefixOrDefault = function() {\n  return this.get$ValueOrDefault(12);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setNationalPrefix = function(a) {\n  this.set$Value(12, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasNationalPrefix = function() {\n  return this.has$Value(12);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.nationalPrefixCount = function() {\n  return this.count$Values(12);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearNationalPrefix = function() {\n  this.clear$Field(12);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getPreferredExtnPrefix = function() {\n  return this.get$Value(13);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getPreferredExtnPrefixOrDefault = function() {\n  return this.get$ValueOrDefault(13);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setPreferredExtnPrefix = function(a) {\n  this.set$Value(13, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasPreferredExtnPrefix = function() {\n  return this.has$Value(13);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.preferredExtnPrefixCount = function() {\n  return this.count$Values(13);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearPreferredExtnPrefix = function() {\n  this.clear$Field(13);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getNationalPrefixForParsing = function() {\n  return this.get$Value(15);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getNationalPrefixForParsingOrDefault = function() {\n  return this.get$ValueOrDefault(15);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setNationalPrefixForParsing = function(a) {\n  this.set$Value(15, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasNationalPrefixForParsing = function() {\n  return this.has$Value(15);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.nationalPrefixForParsingCount = function() {\n  return this.count$Values(15);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearNationalPrefixForParsing = function() {\n  this.clear$Field(15);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getNationalPrefixTransformRule = function() {\n  return this.get$Value(16);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getNationalPrefixTransformRuleOrDefault = function() {\n  return this.get$ValueOrDefault(16);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setNationalPrefixTransformRule = function(a) {\n  this.set$Value(16, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasNationalPrefixTransformRule = function() {\n  return this.has$Value(16);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.nationalPrefixTransformRuleCount = function() {\n  return this.count$Values(16);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearNationalPrefixTransformRule = function() {\n  this.clear$Field(16);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getSameMobileAndFixedLinePattern = function() {\n  return this.get$Value(18);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getSameMobileAndFixedLinePatternOrDefault = function() {\n  return this.get$ValueOrDefault(18);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setSameMobileAndFixedLinePattern = function(a) {\n  this.set$Value(18, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasSameMobileAndFixedLinePattern = function() {\n  return this.has$Value(18);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.sameMobileAndFixedLinePatternCount = function() {\n  return this.count$Values(18);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearSameMobileAndFixedLinePattern = function() {\n  this.clear$Field(18);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getNumberFormat = function(a) {\n  return this.get$Value(19, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getNumberFormatOrDefault = function(a) {\n  return this.get$ValueOrDefault(19, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.addNumberFormat = function(a) {\n  this.add$Value(19, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.numberFormatArray = function() {\n  return this.array$Values(19);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasNumberFormat = function() {\n  return this.has$Value(19);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.numberFormatCount = function() {\n  return this.count$Values(19);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearNumberFormat = function() {\n  this.clear$Field(19);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getIntlNumberFormat = function(a) {\n  return this.get$Value(20, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getIntlNumberFormatOrDefault = function(a) {\n  return this.get$ValueOrDefault(20, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.addIntlNumberFormat = function(a) {\n  this.add$Value(20, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.intlNumberFormatArray = function() {\n  return this.array$Values(20);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasIntlNumberFormat = function() {\n  return this.has$Value(20);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.intlNumberFormatCount = function() {\n  return this.count$Values(20);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearIntlNumberFormat = function() {\n  this.clear$Field(20);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getMainCountryForCode = function() {\n  return this.get$Value(22);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getMainCountryForCodeOrDefault = function() {\n  return this.get$ValueOrDefault(22);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setMainCountryForCode = function(a) {\n  this.set$Value(22, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasMainCountryForCode = function() {\n  return this.has$Value(22);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.mainCountryForCodeCount = function() {\n  return this.count$Values(22);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearMainCountryForCode = function() {\n  this.clear$Field(22);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getLeadingDigits = function() {\n  return this.get$Value(23);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getLeadingDigitsOrDefault = function() {\n  return this.get$ValueOrDefault(23);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setLeadingDigits = function(a) {\n  this.set$Value(23, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasLeadingDigits = function() {\n  return this.has$Value(23);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.leadingDigitsCount = function() {\n  return this.count$Values(23);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearLeadingDigits = function() {\n  this.clear$Field(23);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getLeadingZeroPossible = function() {\n  return this.get$Value(26);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.getLeadingZeroPossibleOrDefault = function() {\n  return this.get$ValueOrDefault(26);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.setLeadingZeroPossible = function(a) {\n  this.set$Value(26, a);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.hasLeadingZeroPossible = function() {\n  return this.has$Value(26);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.leadingZeroPossibleCount = function() {\n  return this.count$Values(26);\n};\ni18n.phonenumbers.PhoneMetadata.prototype.clearLeadingZeroPossible = function() {\n  this.clear$Field(26);\n};\ni18n.phonenumbers.PhoneMetadataCollection = function() {\n  goog.proto2.Message.call(this);\n};\ngoog.inherits(i18n.phonenumbers.PhoneMetadataCollection, goog.proto2.Message);\ni18n.phonenumbers.PhoneMetadataCollection.descriptor_ = null;\ni18n.phonenumbers.PhoneMetadataCollection.prototype.getMetadata = function(a) {\n  return this.get$Value(1, a);\n};\ni18n.phonenumbers.PhoneMetadataCollection.prototype.getMetadataOrDefault = function(a) {\n  return this.get$ValueOrDefault(1, a);\n};\ni18n.phonenumbers.PhoneMetadataCollection.prototype.addMetadata = function(a) {\n  this.add$Value(1, a);\n};\ni18n.phonenumbers.PhoneMetadataCollection.prototype.metadataArray = function() {\n  return this.array$Values(1);\n};\ni18n.phonenumbers.PhoneMetadataCollection.prototype.hasMetadata = function() {\n  return this.has$Value(1);\n};\ni18n.phonenumbers.PhoneMetadataCollection.prototype.metadataCount = function() {\n  return this.count$Values(1);\n};\ni18n.phonenumbers.PhoneMetadataCollection.prototype.clearMetadata = function() {\n  this.clear$Field(1);\n};\ni18n.phonenumbers.NumberFormat.prototype.getDescriptor = function() {\n  var a = i18n.phonenumbers.NumberFormat.descriptor_;\n  a || (i18n.phonenumbers.NumberFormat.descriptor_ = a = goog.proto2.Message.createDescriptor(i18n.phonenumbers.NumberFormat, {0:{name:\"NumberFormat\", fullName:\"i18n.phonenumbers.NumberFormat\"}, 1:{name:\"pattern\", required:!0, fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 2:{name:\"format\", required:!0, fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 3:{name:\"leading_digits_pattern\", repeated:!0, fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 4:{name:\"national_prefix_formatting_rule\",\n  fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 6:{name:\"national_prefix_optional_when_formatting\", fieldType:goog.proto2.Message.FieldType.BOOL, defaultValue:!1, type:Boolean}, 5:{name:\"domestic_carrier_code_formatting_rule\", fieldType:goog.proto2.Message.FieldType.STRING, type:String}}));\n  return a;\n};\ni18n.phonenumbers.NumberFormat.getDescriptor = i18n.phonenumbers.NumberFormat.prototype.getDescriptor;\ni18n.phonenumbers.PhoneNumberDesc.prototype.getDescriptor = function() {\n  var a = i18n.phonenumbers.PhoneNumberDesc.descriptor_;\n  a || (i18n.phonenumbers.PhoneNumberDesc.descriptor_ = a = goog.proto2.Message.createDescriptor(i18n.phonenumbers.PhoneNumberDesc, {0:{name:\"PhoneNumberDesc\", fullName:\"i18n.phonenumbers.PhoneNumberDesc\"}, 2:{name:\"national_number_pattern\", fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 9:{name:\"possible_length\", repeated:!0, fieldType:goog.proto2.Message.FieldType.INT32, type:Number}, 10:{name:\"possible_length_local_only\", repeated:!0, fieldType:goog.proto2.Message.FieldType.INT32,\n  type:Number}, 6:{name:\"example_number\", fieldType:goog.proto2.Message.FieldType.STRING, type:String}}));\n  return a;\n};\ni18n.phonenumbers.PhoneNumberDesc.getDescriptor = i18n.phonenumbers.PhoneNumberDesc.prototype.getDescriptor;\ni18n.phonenumbers.PhoneMetadata.prototype.getDescriptor = function() {\n  var a = i18n.phonenumbers.PhoneMetadata.descriptor_;\n  a || (i18n.phonenumbers.PhoneMetadata.descriptor_ = a = goog.proto2.Message.createDescriptor(i18n.phonenumbers.PhoneMetadata, {0:{name:\"PhoneMetadata\", fullName:\"i18n.phonenumbers.PhoneMetadata\"}, 1:{name:\"general_desc\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 2:{name:\"fixed_line\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 3:{name:\"mobile\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc},\n  4:{name:\"toll_free\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 5:{name:\"premium_rate\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 6:{name:\"shared_cost\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 7:{name:\"personal_number\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 8:{name:\"voip\", fieldType:goog.proto2.Message.FieldType.MESSAGE,\n  type:i18n.phonenumbers.PhoneNumberDesc}, 21:{name:\"pager\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 25:{name:\"uan\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 27:{name:\"emergency\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 28:{name:\"voicemail\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 29:{name:\"short_code\",\n  fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 30:{name:\"standard_rate\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 31:{name:\"carrier_specific\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 33:{name:\"sms_services\", fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneNumberDesc}, 24:{name:\"no_international_dialling\", fieldType:goog.proto2.Message.FieldType.MESSAGE,\n  type:i18n.phonenumbers.PhoneNumberDesc}, 9:{name:\"id\", required:!0, fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 10:{name:\"country_code\", fieldType:goog.proto2.Message.FieldType.INT32, type:Number}, 11:{name:\"international_prefix\", fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 17:{name:\"preferred_international_prefix\", fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 12:{name:\"national_prefix\", fieldType:goog.proto2.Message.FieldType.STRING, type:String},\n  13:{name:\"preferred_extn_prefix\", fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 15:{name:\"national_prefix_for_parsing\", fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 16:{name:\"national_prefix_transform_rule\", fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 18:{name:\"same_mobile_and_fixed_line_pattern\", fieldType:goog.proto2.Message.FieldType.BOOL, defaultValue:!1, type:Boolean}, 19:{name:\"number_format\", repeated:!0, fieldType:goog.proto2.Message.FieldType.MESSAGE,\n  type:i18n.phonenumbers.NumberFormat}, 20:{name:\"intl_number_format\", repeated:!0, fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.NumberFormat}, 22:{name:\"main_country_for_code\", fieldType:goog.proto2.Message.FieldType.BOOL, defaultValue:!1, type:Boolean}, 23:{name:\"leading_digits\", fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 26:{name:\"leading_zero_possible\", fieldType:goog.proto2.Message.FieldType.BOOL, defaultValue:!1, type:Boolean}}));\n  return a;\n};\ni18n.phonenumbers.PhoneMetadata.getDescriptor = i18n.phonenumbers.PhoneMetadata.prototype.getDescriptor;\ni18n.phonenumbers.PhoneMetadataCollection.prototype.getDescriptor = function() {\n  var a = i18n.phonenumbers.PhoneMetadataCollection.descriptor_;\n  a || (i18n.phonenumbers.PhoneMetadataCollection.descriptor_ = a = goog.proto2.Message.createDescriptor(i18n.phonenumbers.PhoneMetadataCollection, {0:{name:\"PhoneMetadataCollection\", fullName:\"i18n.phonenumbers.PhoneMetadataCollection\"}, 1:{name:\"metadata\", repeated:!0, fieldType:goog.proto2.Message.FieldType.MESSAGE, type:i18n.phonenumbers.PhoneMetadata}}));\n  return a;\n};\ni18n.phonenumbers.PhoneMetadataCollection.getDescriptor = i18n.phonenumbers.PhoneMetadataCollection.prototype.getDescriptor;\ni18n.phonenumbers.PhoneNumber = function() {\n  goog.proto2.Message.call(this);\n};\ngoog.inherits(i18n.phonenumbers.PhoneNumber, goog.proto2.Message);\ni18n.phonenumbers.PhoneNumber.descriptor_ = null;\ni18n.phonenumbers.PhoneNumber.prototype.getCountryCode = function() {\n  return this.get$Value(1);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getCountryCodeOrDefault = function() {\n  return this.get$ValueOrDefault(1);\n};\ni18n.phonenumbers.PhoneNumber.prototype.setCountryCode = function(a) {\n  this.set$Value(1, a);\n};\ni18n.phonenumbers.PhoneNumber.prototype.hasCountryCode = function() {\n  return this.has$Value(1);\n};\ni18n.phonenumbers.PhoneNumber.prototype.countryCodeCount = function() {\n  return this.count$Values(1);\n};\ni18n.phonenumbers.PhoneNumber.prototype.clearCountryCode = function() {\n  this.clear$Field(1);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getNationalNumber = function() {\n  return this.get$Value(2);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getNationalNumberOrDefault = function() {\n  return this.get$ValueOrDefault(2);\n};\ni18n.phonenumbers.PhoneNumber.prototype.setNationalNumber = function(a) {\n  this.set$Value(2, a);\n};\ni18n.phonenumbers.PhoneNumber.prototype.hasNationalNumber = function() {\n  return this.has$Value(2);\n};\ni18n.phonenumbers.PhoneNumber.prototype.nationalNumberCount = function() {\n  return this.count$Values(2);\n};\ni18n.phonenumbers.PhoneNumber.prototype.clearNationalNumber = function() {\n  this.clear$Field(2);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getExtension = function() {\n  return this.get$Value(3);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getExtensionOrDefault = function() {\n  return this.get$ValueOrDefault(3);\n};\ni18n.phonenumbers.PhoneNumber.prototype.setExtension = function(a) {\n  this.set$Value(3, a);\n};\ni18n.phonenumbers.PhoneNumber.prototype.hasExtension = function() {\n  return this.has$Value(3);\n};\ni18n.phonenumbers.PhoneNumber.prototype.extensionCount = function() {\n  return this.count$Values(3);\n};\ni18n.phonenumbers.PhoneNumber.prototype.clearExtension = function() {\n  this.clear$Field(3);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getItalianLeadingZero = function() {\n  return this.get$Value(4);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getItalianLeadingZeroOrDefault = function() {\n  return this.get$ValueOrDefault(4);\n};\ni18n.phonenumbers.PhoneNumber.prototype.setItalianLeadingZero = function(a) {\n  this.set$Value(4, a);\n};\ni18n.phonenumbers.PhoneNumber.prototype.hasItalianLeadingZero = function() {\n  return this.has$Value(4);\n};\ni18n.phonenumbers.PhoneNumber.prototype.italianLeadingZeroCount = function() {\n  return this.count$Values(4);\n};\ni18n.phonenumbers.PhoneNumber.prototype.clearItalianLeadingZero = function() {\n  this.clear$Field(4);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getNumberOfLeadingZeros = function() {\n  return this.get$Value(8);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getNumberOfLeadingZerosOrDefault = function() {\n  return this.get$ValueOrDefault(8);\n};\ni18n.phonenumbers.PhoneNumber.prototype.setNumberOfLeadingZeros = function(a) {\n  this.set$Value(8, a);\n};\ni18n.phonenumbers.PhoneNumber.prototype.hasNumberOfLeadingZeros = function() {\n  return this.has$Value(8);\n};\ni18n.phonenumbers.PhoneNumber.prototype.numberOfLeadingZerosCount = function() {\n  return this.count$Values(8);\n};\ni18n.phonenumbers.PhoneNumber.prototype.clearNumberOfLeadingZeros = function() {\n  this.clear$Field(8);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getRawInput = function() {\n  return this.get$Value(5);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getRawInputOrDefault = function() {\n  return this.get$ValueOrDefault(5);\n};\ni18n.phonenumbers.PhoneNumber.prototype.setRawInput = function(a) {\n  this.set$Value(5, a);\n};\ni18n.phonenumbers.PhoneNumber.prototype.hasRawInput = function() {\n  return this.has$Value(5);\n};\ni18n.phonenumbers.PhoneNumber.prototype.rawInputCount = function() {\n  return this.count$Values(5);\n};\ni18n.phonenumbers.PhoneNumber.prototype.clearRawInput = function() {\n  this.clear$Field(5);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getCountryCodeSource = function() {\n  return this.get$Value(6);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getCountryCodeSourceOrDefault = function() {\n  return this.get$ValueOrDefault(6);\n};\ni18n.phonenumbers.PhoneNumber.prototype.setCountryCodeSource = function(a) {\n  this.set$Value(6, a);\n};\ni18n.phonenumbers.PhoneNumber.prototype.hasCountryCodeSource = function() {\n  return this.has$Value(6);\n};\ni18n.phonenumbers.PhoneNumber.prototype.countryCodeSourceCount = function() {\n  return this.count$Values(6);\n};\ni18n.phonenumbers.PhoneNumber.prototype.clearCountryCodeSource = function() {\n  this.clear$Field(6);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getPreferredDomesticCarrierCode = function() {\n  return this.get$Value(7);\n};\ni18n.phonenumbers.PhoneNumber.prototype.getPreferredDomesticCarrierCodeOrDefault = function() {\n  return this.get$ValueOrDefault(7);\n};\ni18n.phonenumbers.PhoneNumber.prototype.setPreferredDomesticCarrierCode = function(a) {\n  this.set$Value(7, a);\n};\ni18n.phonenumbers.PhoneNumber.prototype.hasPreferredDomesticCarrierCode = function() {\n  return this.has$Value(7);\n};\ni18n.phonenumbers.PhoneNumber.prototype.preferredDomesticCarrierCodeCount = function() {\n  return this.count$Values(7);\n};\ni18n.phonenumbers.PhoneNumber.prototype.clearPreferredDomesticCarrierCode = function() {\n  this.clear$Field(7);\n};\ni18n.phonenumbers.PhoneNumber.CountryCodeSource = {UNSPECIFIED:0, FROM_NUMBER_WITH_PLUS_SIGN:1, FROM_NUMBER_WITH_IDD:5, FROM_NUMBER_WITHOUT_PLUS_SIGN:10, FROM_DEFAULT_COUNTRY:20};\ni18n.phonenumbers.PhoneNumber.prototype.getDescriptor = function() {\n  var a = i18n.phonenumbers.PhoneNumber.descriptor_;\n  a || (i18n.phonenumbers.PhoneNumber.descriptor_ = a = goog.proto2.Message.createDescriptor(i18n.phonenumbers.PhoneNumber, {0:{name:\"PhoneNumber\", fullName:\"i18n.phonenumbers.PhoneNumber\"}, 1:{name:\"country_code\", required:!0, fieldType:goog.proto2.Message.FieldType.INT32, type:Number}, 2:{name:\"national_number\", required:!0, fieldType:goog.proto2.Message.FieldType.UINT64, type:Number}, 3:{name:\"extension\", fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 4:{name:\"italian_leading_zero\",\n  fieldType:goog.proto2.Message.FieldType.BOOL, type:Boolean}, 8:{name:\"number_of_leading_zeros\", fieldType:goog.proto2.Message.FieldType.INT32, defaultValue:1, type:Number}, 5:{name:\"raw_input\", fieldType:goog.proto2.Message.FieldType.STRING, type:String}, 6:{name:\"country_code_source\", fieldType:goog.proto2.Message.FieldType.ENUM, defaultValue:i18n.phonenumbers.PhoneNumber.CountryCodeSource.UNSPECIFIED, type:i18n.phonenumbers.PhoneNumber.CountryCodeSource}, 7:{name:\"preferred_domestic_carrier_code\",\n  fieldType:goog.proto2.Message.FieldType.STRING, type:String}}));\n  return a;\n};\ni18n.phonenumbers.PhoneNumber.ctor = i18n.phonenumbers.PhoneNumber;\ni18n.phonenumbers.PhoneNumber.ctor.getDescriptor = i18n.phonenumbers.PhoneNumber.prototype.getDescriptor;\n/*\n\n Copyright (C) 2010 The Libphonenumber Authors\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n*/\ni18n.phonenumbers.metadata = {};\ni18n.phonenumbers.metadata.countryCodeToRegionCodeMap = {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\".split(\" \"), 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\",\n\"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\"],\n241:[\"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\"],\n358:[\"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\"],\n599:[\"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\"], 800:[\"001\"], 808:[\"001\"], 850:[\"KP\"], 852:[\"HK\"], 853:[\"MO\"], 855:[\"KH\"], 856:[\"LA\"], 870:[\"001\"], 878:[\"001\"], 880:[\"BD\"], 881:[\"001\"], 882:[\"001\"], 883:[\"001\"], 886:[\"TW\"], 888:[\"001\"], 960:[\"MV\"], 961:[\"LB\"], 962:[\"JO\"], 963:[\"SY\"],\n964:[\"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\"], 979:[\"001\"], 992:[\"TJ\"], 993:[\"TM\"], 994:[\"AZ\"], 995:[\"GE\"], 996:[\"KG\"], 998:[\"UZ\"]};\ni18n.phonenumbers.metadata.countryToMetadata = {AC:[, [, , \"(?:[01589]\\\\d|[46])\\\\d{4}\", , , , , , , [5, 6]], [, , \"6[2-467]\\\\d{3}\", , , , \"62889\", , , [5]], [, , \"4\\\\d{4}\", , , , \"40123\", , , [5]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"AC\", 247, \"00\", , , , , , , , , , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"(?:0[1-9]|[1589]\\\\d)\\\\d{4}\", , , , \"542011\", , , [6]], , , [, , , , , , , ,\n, [-1]]], AD:[, [, , \"(?:1|6\\\\d)\\\\d{7}|[136-9]\\\\d{5}\", , , , , , , [6, 8, 9]], [, , \"[78]\\\\d{5}\", , , , \"712345\", , , [6]], [, , \"690\\\\d{6}|[36]\\\\d{5}\", , , , \"312345\", , , [6, 9]], [, , \"180[02]\\\\d{4}\", , , , \"18001234\", , , [8]], [, , \"[19]\\\\d{5}\", , , , \"912345\", , , [6]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"AD\", 376, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{3})\", \"$1 $2\", [\"[136-9]\"]], [, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"1\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\n\"$1 $2 $3\", [\"6\"]]], , [, , , , , , , , , [-1]], , , [, , \"1800\\\\d{4}\", , , , , , , [8]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], AE:[, [, , \"(?:[4-7]\\\\d|9[0-689])\\\\d{7}|800\\\\d{2,9}|[2-4679]\\\\d{7}\", , , , , , , [5, 6, 7, 8, 9, 10, 11, 12]], [, , \"[2-4679][2-8]\\\\d{6}\", , , , \"22345678\", , , [8], [7]], [, , \"5[024-68]\\\\d{7}\", , , , \"501234567\", , , [9]], [, , \"400\\\\d{6}|800\\\\d{2,9}\", , , , \"800123456\"], [, , \"900[02]\\\\d{5}\", , , , \"900234567\", , , [9]], [, , \"700[05]\\\\d{5}\", , , ,\n\"700012345\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"AE\", 971, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"600[25]\\\\d{5}\", , , , \"600212345\", , , [9]], , , [, , , , , , , , , [-1]]], AF:[, [, , \"[2-7]\\\\d{8}\",\n, , , , , , [9], [7]], [, , \"(?:[25][0-8]|[34][0-4]|6[0-5])[2-9]\\\\d{6}\", , , , \"234567890\", , , , [7]], [, , \"7(?:[014-9]\\\\d|2[89]|3[01])\\\\d{6}\", , , , \"701234567\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"AF\", 93, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[2-9]\"]], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[2-7]\"], \"0$1\"]], [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[2-7]\"], \"0$1\"]],\n[, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], AG:[, [, , \"(?:268|[58]\\\\d\\\\d|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"268(?:4(?:6[0-38]|84)|56[0-2])\\\\d{4}\", , , , \"2684601234\", , , , [7]], [, , \"268(?:464|7(?:1[3-9]|2\\\\d|3[246]|64|[78][0-689]))\\\\d{4}\", , , , \"2684641234\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\",\n, , , \"5002345678\"], [, , \"26848[01]\\\\d{4}\", , , , \"2684801234\", , , , [7]], \"AG\", 1, \"011\", \"1\", , , \"1|([457]\\\\d{6})$\", \"268$1\", , , , , [, , \"26840[69]\\\\d{4}\", , , , \"2684061234\", , , , [7]], , \"268\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], AI:[, [, , \"(?:264|[58]\\\\d\\\\d|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"2644(?:6[12]|9[78])\\\\d{4}\", , , , \"2644612345\", , , , [7]], [, , \"264(?:235|476|5(?:3[6-9]|8[1-4])|7(?:29|72))\\\\d{4}\", , , , \"2642351234\", ,\n, , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"AI\", 1, \"011\", \"1\", , , \"1|([2457]\\\\d{6})$\", \"264$1\", , , , , [, , , , , , , , , [-1]], , \"264\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], AL:[, [, , \"(?:700\\\\d\\\\d|900)\\\\d{3}|8\\\\d{5,7}|(?:[2-5]|6\\\\d)\\\\d{7}\", , , , , ,\n, [6, 7, 8, 9], [5]], [, , \"(?:[2358](?:[16-9]\\\\d[2-9]|[2-5][2-9]\\\\d)|4(?:[2-57-9][2-9]|6\\\\d)\\\\d)\\\\d{4}\", , , , \"22345678\", , , [8], [5, 6, 7]], [, , \"6(?:[689][2-9]|7[2-6])\\\\d{6}\", , , , \"662123456\", , , [9]], [, , \"800\\\\d{4}\", , , , \"8001234\", , , [7]], [, , \"900[1-9]\\\\d\\\\d\", , , , \"900123\", , , [6]], [, , \"808[1-9]\\\\d\\\\d\", , , , \"808123\", , , [6]], [, , \"700[2-9]\\\\d{4}\", , , , \"70021234\", , , [8]], [, , , , , , , , , [-1]], \"AL\", 355, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{3,4})\", \"$1 $2\",\n[\"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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], AM:[, [, , \"(?:[1-489]\\\\d|55|60|77)\\\\d{6}\", , , , , , , [8], [5, 6]], [, , \"(?:(?:1[0-25]|47)\\\\d|2(?:2[2-46]|3[1-8]|4[2-69]|5[2-7]|6[1-9]|8[1-7])|3[12]2)\\\\d{5}\",\n, , , \"10123456\", , , , [5, 6]], [, , \"(?:33|4[1349]|55|77|88|9[13-9])\\\\d{6}\", , , , \"77123456\"], [, , \"800\\\\d{5}\", , , , \"80012345\"], [, , \"90[016]\\\\d{5}\", , , , \"90012345\"], [, , \"80[1-4]\\\\d{5}\", , , , \"80112345\"], [, , , , , , , , , [-1]], [, , \"60(?:2[78]|3[5-9]|4[02-9]|5[0-46-9]|[6-8]\\\\d|90)\\\\d{4}\", , , , \"60271234\"], \"AM\", 374, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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})\",\n\"$1 $2\", [\"1|47\"], \"(0$1)\"], [, \"(\\\\d{2})(\\\\d{6})\", \"$1 $2\", [\"[3-9]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], AO:[, [, , \"[29]\\\\d{8}\", , , , , , , [9]], [, , \"2\\\\d(?:[0134][25-9]|[25-9]\\\\d)\\\\d{5}\", , , , \"222123456\"], [, , \"9[1-49]\\\\d{7}\", , , , \"923123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"AO\", 244, \"00\", , , , ,\n, , , [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[29]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], AR:[, [, , \"11\\\\d{8}|(?:[2368]|9\\\\d)\\\\d{9}\", , , , , , , [10, 11], [6, 7, 8]], [, , \"(?:2(?:646[0-46-9]|9(?:45[02-69]|54[2-8]))|3(?:4(?:3(?:5[0-7]|6[1-69])|5(?:4[0-4679]|[56][024-6]))|585[013-7]|7(?:(?:1[15]|81)[46]|77[2-8])|8(?:(?:21|4[16]|9[12])[46]|35[124-6]|5(?:5[0-46-9]|6[0-246-9])|6(?:5[2-8]|9[46])|86[0-68])))\\\\d{5}|(?:2(?:284|657|9(?:20|66))|3(?:4(?:8[27]|92)|755|878))[2-7]\\\\d{5}|(?:2(?:2(?:2[59]|44|52)|3(?:26|4[24])|473|9(?:[07]2|2[26]|34|46))|3327)[45]\\\\d{5}|(?:2(?:(?:26|62)2|3(?:02|2[03])|477|9(?:42|83))|3(?:4(?:[47]6|62|89)|5(?:41|64)|873))[2-6]\\\\d{5}|(?:(?:11[2-7]|670)\\\\d|2(?:2(?:0[45]|1[2-6]|3[3-6])|3(?:[06]4|7[45])|494|6(?:04|1[2-7]|[346][45])|80[45]|9(?:[17][4-6]|44|8[45]|9[3-6]))|3(?:364|4(?:1[2-7]|2[4-6]|[38]4)|5(?:1[2-8]|3[4-6]|8[46])|6(?:2[45]|44)|7[069][45]|8(?:0[45]|1[2-6]|34|5[34]|7[24-6]|8[3-5])))\\\\d{6}|2(?:2(?:21|4[23]|6[145]|7[1-4]|8[356]|9[267])|3(?:16|3[13-8]|43|5[346-8]|9[3-5])|475|6(?:2[46]|4[78]|5[1568])|9(?:03|2[1457-9]|3[1356]|4[08]|[56][23]|82))4\\\\d{5}|(?:2(?:2(?:57|81)|3(?:24|46|92)|9(?:01|23|64))|3(?:329|4(?:42|71)|5(?:25|37|4[347]|71)|7(?:18|5[17])|888))[3-6]\\\\d{5}|(?:2(?:2(?:02|2[3467]|4[156]|5[45]|6[6-8]|91)|3(?:1[47]|[24]5|5[25]|96)|47[48]|625|932)|3(?:38[2578]|4(?:0[0-24-9]|3[78]|4[457]|58|6[03-9]|72|83|9[136-8])|5(?:2[124]|[368][23]|4[2689]|7[2-6])|7(?:16|2[15]|3[145]|4[13]|5[468]|7[2-5]|8[26])|8(?:2[5-7]|3[278]|4[3-5]|5[78]|6[1-378]|[78]7|94)))[4-6]\\\\d{5}\",\n, , , \"1123456789\", , , [10], [6, 7, 8]], [, , \"9(?:2(?:646[0-46-9]|9(?:45[02-69]|54[2-8]))|3(?:4(?:3(?:5[0-7]|6[1-69])|5(?:4[0-4679]|[56][024-6]))|585[013-7]|7(?:(?:1[15]|81)[46]|77[2-8])|8(?:(?:21|4[16]|9[12])[46]|35[124-6]|5(?:5[0-46-9]|6[0-246-9])|6(?:5[2-8]|9[46])|86[0-68])))\\\\d{5}|9(?:2(?:284|657|9(?:20|66))|3(?:4(?:8[27]|92)|755|878))[2-7]\\\\d{5}|9(?:2(?:2(?:2[59]|44|52)|3(?:26|4[24])|473|9(?:[07]2|2[26]|34|46))|3327)[45]\\\\d{5}|9(?:2(?:(?:26|62)2|3(?:02|2[03])|477|9(?:42|83))|3(?:4(?:[47]6|62|89)|5(?:41|64)|873))[2-6]\\\\d{5}|(?:675\\\\d|9(?:11[2-7]\\\\d|2(?:2(?:0[45]|1[2-6]|3[3-6])|3(?:[06]4|7[45])|494|6(?:04|1[2-7]|[346][45])|80[45]|9(?:[17][4-6]|44|8[45]|9[3-6]))|3(?:364|4(?:1[2-7]|2[4-6]|[38]4)|5(?:1[2-8]|3[4-6]|8[46])|6(?:2[45]|44)|7[069][45]|8(?:0[45]|1[2-6]|34|5[34]|7[24-6]|8[3-5]))))\\\\d{6}|92(?:2(?:21|4[23]|6[145]|7[1-4]|8[356]|9[267])|3(?:16|3[13-8]|43|5[346-8]|9[3-5])|475|6(?:2[46]|4[78]|5[1568])|9(?:03|2[1457-9]|3[1356]|4[08]|[56][23]|82))4\\\\d{5}|9(?:2(?:2(?:57|81)|3(?:24|46|92)|9(?:01|23|64))|3(?:329|4(?:42|71)|5(?:25|37|4[347]|71)|7(?:18|5[17])|888))[3-6]\\\\d{5}|9(?:2(?:2(?:02|2[3467]|4[156]|5[45]|6[6-8]|91)|3(?:1[47]|[24]5|5[25]|96)|47[48]|625|932)|3(?:38[2578]|4(?:0[0-24-9]|3[78]|4[457]|58|6[03-9]|72|83|9[136-8])|5(?:2[124]|[368][23]|4[2689]|7[2-6])|7(?:16|2[15]|3[145]|4[13]|5[468]|7[2-5]|8[26])|8(?:2[5-7]|3[278]|4[3-5]|5[78]|6[1-378]|[78]7|94)))[4-6]\\\\d{5}\",\n, , , \"91123456789\", , , , [6, 7, 8]], [, , \"800\\\\d{7}\", , , , \"8001234567\", , , [10]], [, , \"60[04579]\\\\d{7}\", , , , \"6001234567\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"AR\", 54, \"00\", \"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)?\",\n\"9$1\", , , [[, \"(\\\\d{3})\", \"$1\", [\"[09]|1(?:[02]|1[02-5])\"]], [, \"(\\\\d{2})(\\\\d{4})\", \"$1-$2\", [\"[2-7]|8[0-7]\"]], [, \"(\\\\d{3})(\\\\d{4})\", \"$1-$2\", [\"[2-7]|8[013-8]\"]], [, \"(\\\\d{4})(\\\\d{4})\", \"$1-$2\", [\"2[0-8]|[3-7]\"]], [, \"(\\\\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)\",\n\"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(?:[24-6]|3[2-5]))|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]\"],\n\"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\", [\"[23]\"], \"0$1\", , 1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"[68]\"], \"0$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)\",\n\"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(?:[24-6]|3[2-5]))|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]\"],\n\"0$1\"], [, \"(\\\\d)(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$2 15-$3-$4\", [\"91\"], \"0$1\"], [, \"(\\\\d)(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$2 15-$3-$4\", [\"9\"], \"0$1\"]], [[, \"(\\\\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]\",\n\"2(?:[23]02|6(?:[25]|4(?:64|[78]))|9(?:[02356]|4(?:[0268]|5(?:[24-6]|3[2-5]))|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\", [\"[23]\"],\n\"0$1\", , 1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"[68]\"], \"0$1\"], [, \"(\\\\d)(\\\\d{4})(\\\\d{2})(\\\\d{4})\", \"$1 $2 $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]\",\n\"9(?:2(?:[23]02|6(?:[25]|4(?:64|[78]))|9(?:[02356]|4(?:[0268]|5(?:[24-6]|3[2-5]))|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]\"]], [, \"(\\\\d)(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3-$4\", [\"91\"]], [, \"(\\\\d)(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3-$4\",\n[\"9\"]]], [, , , , , , , , , [-1]], , , [, , \"810\\\\d{7}\", , , , , , , [10]], [, , \"810\\\\d{7}\", , , , \"8101234567\", , , [10]], , , [, , , , , , , , , [-1]]], AS:[, [, , \"(?:[58]\\\\d\\\\d|684|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"6846(?:22|33|44|55|77|88|9[19])\\\\d{4}\", , , , \"6846221234\", , , , [7]], [, , \"684(?:2(?:5[2468]|72)|7(?:3[13]|70))\\\\d{4}\", , , , \"6847331234\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , ,\n, , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"AS\", 1, \"011\", \"1\", , , \"1|([267]\\\\d{6})$\", \"684$1\", , , , , [, , , , , , , , , [-1]], , \"684\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], AT:[, [, , \"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,\n11, 12, 13], [3]], [, , \"1(?:11\\\\d|[2-9]\\\\d{3,11})|(?:316|463|(?:51|66|73)2)\\\\d{3,10}|(?:2(?:1[467]|2[13-8]|5[2357]|6[1-46-8]|7[1-8]|8[124-7]|9[1458])|3(?:1[1-578]|3[23568]|4[5-7]|5[1378]|6[1-38]|8[3-68])|4(?:2[1-8]|35|7[1368]|8[2457])|5(?:2[1-8]|3[357]|4[147]|5[12578]|6[37])|6(?:13|2[1-47]|4[135-8]|5[468])|7(?:2[1-8]|35|4[13478]|5[68]|6[16-8]|7[1-6]|9[45]))\\\\d{4,10}\", , , , \"1234567890\", , , , [3]], [, , \"6(?:5[0-3579]|6[013-9]|[7-9]\\\\d)\\\\d{4,10}\", , , , \"664123456\", , , [7, 8, 9, 10, 11, 12, 13]],\n[, , \"800\\\\d{6,10}\", , , , \"800123456\", , , [9, 10, 11, 12, 13]], [, , \"9(?:0[01]|3[019])\\\\d{6,10}\", , , , \"900123456\", , , [9, 10, 11, 12, 13]], [, , \"8(?:10|2[018])\\\\d{6,10}|828\\\\d{5}\", , , , \"810123456\", , , [8, 9, 10, 11, 12, 13]], [, , , , , , , , , [-1]], [, , \"5(?:0[1-9]|17|[79]\\\\d)\\\\d{2,10}|7[28]0\\\\d{6,10}\", , , , \"780123456\", , , [5, 6, 7, 8, 9, 10, 11, 12, 13]], \"AT\", 43, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d)(\\\\d{3,12})\", \"$1 $2\", [\"1(?:11|[2-9])\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{2})\", \"$1 $2\",\n[\"517\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3,5})\", \"$1 $2\", [\"5[079]\"], \"0$1\"], [, \"(\\\\d{6})\", \"$1\", [\"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\"]], [[, \"(\\\\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})\",\n\"$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\"]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], AU:[, [, , \"1(?:[0-79]\\\\d{7,8}|8[0-24-9]\\\\d{7})|(?:[2-478]\\\\d\\\\d|550)\\\\d{6}|1\\\\d{4,7}\",\n, , , , , , [5, 6, 7, 8, 9, 10]], [, , \"(?:[237]\\\\d{5}|8(?:51(?:0(?:0[03-9]|[1247]\\\\d|3[2-9]|5[0-8]|6[1-9]|8[0-6])|1(?:1[69]|[23]\\\\d|4[0-4]))|(?:[6-8]\\\\d{3}|9(?:[02-9]\\\\d\\\\d|1(?:[0-57-9]\\\\d|6[0135-9])))\\\\d))\\\\d{3}\", , , , \"212345678\", , , [9], [8]], [, , \"483[0-3]\\\\d{5}|4(?:[0-3]\\\\d|4[047-9]|5[0-25-9]|6[06-9]|7[02-9]|8[0-2457-9]|9[0-27-9])\\\\d{6}\", , , , \"412345678\", , , [9]], [, , \"180(?:0\\\\d{3}|2)\\\\d{3}\", , , , \"1800123456\", , , [7, 10]], [, , \"190[0-26]\\\\d{6}\", , , , \"1900123456\", , , [10]], [,\n, \"13(?:00\\\\d{3}|45[0-4])\\\\d{3}|13\\\\d{4}\", , , , \"1300123456\", , , [6, 8, 10]], [, , , , , , , , , [-1]], [, , \"(?:14(?:5(?:1[0458]|[23][458])|71\\\\d)|550\\\\d\\\\d)\\\\d{4}\", , , , \"550123456\", , , [9]], \"AU\", 61, \"001[14-689]|14(?:1[14]|34|4[17]|[56]6|7[47]|88)0011\", \"0\", , , \"0|(183[12])\", , \"0011\", , [[, \"(\\\\d{2})(\\\\d{3,4})\", \"$1 $2\", [\"16\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3\", [\"13\"]], [, \"(\\\\d{3})(\\\\d{3})\", \"$1 $2\", [\"19\"]], [, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"180\", \"1802\"]], [, \"(\\\\d{4})(\\\\d{3,4})\",\n\"$1 $2\", [\"19\"]], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{2,4})\", \"$1 $2 $3\", [\"16\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"14|[45]\"], \"0$1\"], [, \"(\\\\d)(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"[2378]\"], \"(0$1)\", \"$CC ($1)\"], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"1(?:30|[89])\"]]], [[, \"(\\\\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|[45]\"], \"0$1\"], [, \"(\\\\d)(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"[2378]\"],\n\"(0$1)\", \"$CC ($1)\"], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"1(?:30|[89])\"]]], [, , \"16\\\\d{3,7}\", , , , \"1612345\", , , [5, 6, 7, 8, 9]], 1, , [, , \"1[38]00\\\\d{6}|1(?:345[0-4]|802)\\\\d{3}|13\\\\d{4}\", , , , , , , [6, 7, 8, 10]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], AW:[, [, , \"(?:[25-79]\\\\d\\\\d|800)\\\\d{4}\", , , , , , , [7]], [, , \"5(?:2\\\\d|8[1-9])\\\\d{4}\", , , , \"5212345\"], [, , \"(?:290|5[69]\\\\d|6(?:[03]0|22|4[0-2]|[69]\\\\d)|7(?:[34]\\\\d|7[07])|9(?:6[45]|9[4-8]))\\\\d{4}\", , , , \"5601234\"],\n[, , \"800\\\\d{4}\", , , , \"8001234\"], [, , \"900\\\\d{4}\", , , , \"9001234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"(?:28\\\\d|501)\\\\d{4}\", , , , \"5011234\"], \"AW\", 297, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[25-9]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], AX:[, [, , \"2\\\\d{4,9}|35\\\\d{4,5}|(?:60\\\\d\\\\d|800)\\\\d{4,6}|(?:[147]\\\\d|3[0-46-9]|50)\\\\d{4,8}\", , , , , , , [5, 6, 7, 8, 9, 10]], [, , \"18[1-8]\\\\d{3,6}\",\n, , , \"181234567\", , , [6, 7, 8, 9]], [, , \"(?:4[0-8]|50)\\\\d{4,8}\", , , , \"412345678\", , , [6, 7, 8, 9, 10]], [, , \"800\\\\d{4,6}\", , , , \"800123456\", , , [7, 8, 9]], [, , \"[67]00\\\\d{5,6}\", , , , \"600123456\", , , [8, 9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"AX\", 358, \"00|99(?:[01469]|5(?:[14]1|3[23]|5[59]|77|88|9[09]))\", \"0\", , , \"0\", , \"00\", , , , [, , , , , , , , , [-1]], , \"18\", [, , , , , , , , , [-1]], [, , \"(?:10|[23][09])\\\\d{4,8}|60(?:[12]\\\\d{5,6}|6\\\\d{7})|7(?:(?:1|3\\\\d)\\\\d{7}|5[03-9]\\\\d{3,7})|20[2-59]\\\\d\\\\d\",\n, , , \"10112345\"], , , [, , , , , , , , , [-1]]], AZ:[, [, , \"(?:365\\\\d{3}|900200)\\\\d{3}|(?:[12457]\\\\d|60|88)\\\\d{7}\", , , , , , , [9], [7]], [, , \"365(?:[0-46-9]\\\\d|5[0-35-9])\\\\d{4}|(?:1[28]\\\\d|2(?:[045]2|1[24]|2[2-4]|33|6[23]))\\\\d{6}\", , , , \"123123456\", , , , [7]], [, , \"36554\\\\d{4}|(?:4[04]|5[015]|60|7[07])\\\\d{7}\", , , , \"401234567\"], [, , \"88\\\\d{7}\", , , , \"881234567\"], [, , \"900200\\\\d{3}\", , , , \"900200123\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"AZ\",\n994, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3\", [\"[1-9]\"]], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"9\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[12]|365\", \"[12]|365\", \"[12]|365(?:[0-46-9]|5[0-35-9])\"], \"(0$1)\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[3-8]\"], \"0$1\"]], [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"9\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[12]|365\", \"[12]|365\",\n\"[12]|365(?:[0-46-9]|5[0-35-9])\"], \"(0$1)\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[3-8]\"], \"0$1\"]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BA:[, [, , \"6\\\\d{8}|(?:[35689]\\\\d|49|70)\\\\d{6}\", , , , , , , [8, 9], [6]], [, , \"(?:3(?:[05-79][2-9]|1[4579]|[23][24-9]|4[2-4689]|8[2457-9])|49[2-579]|5(?:0[2-49]|[13][2-9]|[268][2-4679]|4[4689]|5[2-79]|7[2-69]|9[2-4689]))\\\\d{5}\", , , , \"30212345\", , , [8], [6]], [, ,\n\"6(?:0(?:3\\\\d|40)|[1-356]\\\\d|44[0-6]|71[137])\\\\d{5}\", , , , \"61123456\"], [, , \"8[08]\\\\d{6}\", , , , \"80123456\", , , [8]], [, , \"9[0246]\\\\d{6}\", , , , \"90123456\", , , [8]], [, , \"8[12]\\\\d{6}\", , , , \"82123456\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"BA\", 387, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{3})\", \"$1-$2\", [\"[2-9]\"]], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"6[1-356]|[7-9]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2-$3\", [\"[3-5]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{3})\",\n\"$1 $2 $3 $4\", [\"6\"], \"0$1\"]], [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"6[1-356]|[7-9]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2-$3\", [\"[3-5]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{3})\", \"$1 $2 $3 $4\", [\"6\"], \"0$1\"]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"70(?:3[0146]|[56]0)\\\\d{4}\", , , , \"70341234\", , , [8]], , , [, , , , , , , , , [-1]]], BB:[, [, , \"(?:246|[58]\\\\d\\\\d|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"246(?:2(?:2[78]|7[0-4])|4(?:1[024-6]|2\\\\d|3[2-9])|5(?:20|[34]\\\\d|54|7[1-3])|6(?:2\\\\d|38)|7[35]7|9(?:1[89]|63))\\\\d{4}\",\n, , , \"2464123456\", , , , [7]], [, , \"246(?:2(?:[356]\\\\d|4[0-57-9]|8[0-79])|45\\\\d|69[5-7]|8(?:[2-5]\\\\d|83))\\\\d{4}\", , , , \"2462501234\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"(?:246976|900[2-9]\\\\d\\\\d)\\\\d{4}\", , , , \"9002123456\", , , , [7]], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , \"24631\\\\d{5}\", , , , \"2463101234\", , , , [7]], \"BB\", 1, \"011\", \"1\", , , \"1|([2-9]\\\\d{6})$\", \"246$1\", , , , , [, , ,\n, , , , , , [-1]], , \"246\", [, , , , , , , , , [-1]], [, , \"246(?:292|367|4(?:1[7-9]|3[01]|44|67)|7(?:36|53))\\\\d{4}\", , , , \"2464301234\", , , , [7]], , , [, , , , , , , , , [-1]]], BD:[, [, , \"[13469]\\\\d{9}|8[0-79]\\\\d{7,8}|[2-7]\\\\d{8}|[2-9]\\\\d{7}|[3-689]\\\\d{6}|[57-9]\\\\d{5}\", , , , , , , [6, 7, 8, 9, 10]], [, , \"(?:3(?:03[56]|224)|4(?:22[25]|653))\\\\d{3,4}|(?:4(?:31\\\\d\\\\d|[46]23)|5(?:222|32[37]))\\\\d{3}(?:\\\\d{2})?|(?:3(?:42[47]|529|823)|4(?:027|525|658)|(?:56|73)2|6257|9[35]1)\\\\d{3}|(?:3(?:02[348]|22[35]|324|422)|4(?:22[67]|32[236-9]|6(?:2[46]|5[57])|953)|5526|6(?:024|6655)|81)\\\\d{4,5}|(?:2(?:7(?:1[0-267]|2[0-289]|3[0-29]|4[01]|5[1-3]|6[013]|7[0178]|91)|8(?:0[125]|1[1-6]|2[0157-9]|3[1-69]|41|6[1-35]|7[1-5]|8[1-8]|9[0-6])|9(?:0[0-2]|1[0-4]|2[568]|3[3-6]|5[5-7]|6[01367]|7[15]|8[014-9]))|3(?:0(?:2[025-79]|3[2-4])|22[12]|32[2356]|824)|4(?:02[09]|22[348]|32[045]|523|6(?:27|54))|666(?:22|53)|8(?:4[12]|[5-7]2)|9(?:[024]2|81))\\\\d{4}|(?:2[45]\\\\d\\\\d|3(?:1(?:2[5-7]|[5-7])|425|822)|4(?:033|1\\\\d|[257]1|332|4(?:2[246]|5[25])|6(?:25|56|62)|8(?:23|54)|92[2-5])|5(?:02[03489]|22[457]|32[569]|42[46]|6(?:[18]|53)|724|826)|6(?:023|2(?:2[2-5]|5[3-5]|8)|32[3478]|42[34]|52[47]|6(?:[18]|6(?:2[34]|5[24]))|[78]2[2-5]|92[2-6])|7(?:02|21\\\\d|[3-589]1|6[12]|72[24])|8(?:0|217|3[12]|[5-7]1)|9[24]1)\\\\d{5}|(?:(?:3[2-8]|5[2-57-9]|6[03-589])1|4[4689][18])\\\\d{5}|[59]1\\\\d{5}\",\n, , , \"27111234\"], [, , \"(?:1[13-9]\\\\d|644)\\\\d{7}|(?:3[78]|44|66)[02-9]\\\\d{7}\", , , , \"1812345678\", , , [10]], [, , \"80[03]\\\\d{7}\", , , , \"8001234567\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"96(?:0[469]|1[0-47]|3[389]|6[69]|7[78])\\\\d{6}\", , , , \"9604123456\", , , [10]], \"BD\", 880, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{4,6})\", \"$1-$2\", [\"31[5-7]|[459]1\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{3,7})\", \"$1-$2\", [\"3(?:[67]|8[013-9])|4(?:6[168]|7|[89][18])|5(?:6[128]|9)|6(?:28|4[14]|5)|7[2-589]|8(?:0[014-9]|[12])|9[358]|(?:3[2-5]|4[235]|5[2-578]|6[0389]|76|8[3-7]|9[24])1|(?:44|66)[01346-9]\"],\n\"0$1\"], [, \"(\\\\d{4})(\\\\d{3,6})\", \"$1-$2\", [\"[13-9]\"], \"0$1\"], [, \"(\\\\d)(\\\\d{7,8})\", \"$1-$2\", [\"2\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BE:[, [, , \"4\\\\d{8}|[1-9]\\\\d{7}\", , , , , , , [8, 9]], [, , \"80[2-8]\\\\d{5}|(?:1[0-69]|[23][2-8]|4[23]|5\\\\d|6[013-57-9]|71|8[1-79]|9[2-4])\\\\d{6}\", , , , \"12345678\", , , [8]], [, , \"4(?:5[56]|6[0135-8]|[79]\\\\d|8[3-9])\\\\d{6}\", , , , \"470123456\", , , [9]], [, , \"800[1-9]\\\\d{4}\", ,\n, , \"80012345\", , , [8]], [, , \"(?:70(?:2[0-57]|3[0457]|44|69|7[0579])|90(?:0[0-35-8]|1[36]|2[0-3568]|3[0135689]|4[2-68]|5[1-68]|6[0-378]|7[23568]|9[34679]))\\\\d{4}\", , , , \"90012345\", , , [8]], [, , \"7879\\\\d{4}\", , , , \"78791234\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"BE\", 32, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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})\",\n\"$1 $2 $3 $4\", [\"[15-8]\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"4\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"78(?:0[57]|1[0458]|2[25]|3[5-8]|48|[56]0|7[078])\\\\d{4}\", , , , \"78102345\", , , [8]], , , [, , , , , , , , , [-1]]], BF:[, [, , \"[025-7]\\\\d{7}\", , , , , , , [8]], [, , \"2(?:0(?:49|5[23]|6[56]|9[016-9])|4(?:4[569]|5[4-6]|6[56]|7[0179])|5(?:[34]\\\\d|50|6[5-7]))\\\\d{4}\", , , , \"20491234\"], [, , \"(?:0[17]|5[124-8]|[67]\\\\d)\\\\d{6}\", , , ,\n\"70123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"BF\", 226, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[025-7]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BG:[, [, , \"[2-7]\\\\d{6,7}|[89]\\\\d{6,8}|2\\\\d{5}\", , , , , , , [6, 7, 8, 9], [4, 5]], [, , \"2\\\\d{5,7}|(?:43[1-6]|70[1-9])\\\\d{4,5}|(?:[36]\\\\d|4[124-7]|[57][1-9]|8[1-6]|9[1-7])\\\\d{5,6}\",\n, , , \"2123456\", , , [6, 7, 8], [4, 5]], [, , \"43[07-9]\\\\d{5}|(?:48|8[7-9]\\\\d|9(?:8\\\\d|9[69]))\\\\d{6}\", , , , \"48123456\", , , [8, 9]], [, , \"800\\\\d{5}\", , , , \"80012345\", , , [8]], [, , \"90\\\\d{6}\", , , , \"90123456\", , , [8]], [, , \"700\\\\d{5}\", , , , \"70012345\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"BG\", 359, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{6})\", \"$1\", [\"1\"]], [, \"(\\\\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]\"],\n\"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\"]], [[, \"(\\\\d)(\\\\d)(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"2\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{4})\",\n\"$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\"]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]],\n[, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BH:[, [, , \"[136-9]\\\\d{7}\", , , , , , , [8]], [, , \"(?:1(?:3[1356]|6[0156]|7\\\\d)\\\\d|6(?:1[16]\\\\d|500|6(?:0\\\\d|3[12]|44|7[7-9]|88)|9[69][69])|7(?:1(?:11|78)|7\\\\d\\\\d))\\\\d{4}\", , , , \"17001234\"], [, , \"(?:3(?:[1-4679]\\\\d|5[013-69]|8[0-47-9])\\\\d|6(?:3(?:00|33|6[16])|6(?:3[03-9]|[69]\\\\d|7[0-6])))\\\\d{4}\", , , , \"36001234\"], [, , \"80\\\\d{6}\", , , , \"80123456\"], [, , \"(?:87|9[014578])\\\\d{6}\", , , , \"90123456\"], [, , \"84\\\\d{6}\", , , , \"84123456\"], [,\n, , , , , , , , [-1]], [, , , , , , , , , [-1]], \"BH\", 973, \"00\", , , , , , , , [[, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[13679]|8[047]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BI:[, [, , \"(?:[267]\\\\d|31)\\\\d{6}\", , , , , , , [8]], [, , \"22\\\\d{6}\", , , , \"22201234\"], [, , \"(?:29|31|6[189]|7[125-9])\\\\d{6}\", , , , \"79561234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]],\n[, , , , , , , , , [-1]], \"BI\", 257, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[2367]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BJ:[, [, , \"[2689]\\\\d{7}\", , , , , , , [8]], [, , \"2(?:02|1[037]|2[45]|3[68])\\\\d{5}\", , , , \"20211234\"], [, , \"(?:6\\\\d|9[013-9])\\\\d{6}\", , , , \"90011234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]],\n[, , \"857[58]\\\\d{4}\", , , , \"85751234\"], \"BJ\", 229, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[2689]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"81\\\\d{6}\", , , , \"81123456\"], , , [, , , , , , , , , [-1]]], BL:[, [, , \"(?:590|69\\\\d)\\\\d{6}\", , , , , , , [9]], [, , \"590(?:2[7-9]|5[12]|87)\\\\d{4}\", , , , \"590271234\"], [, , \"69(?:0\\\\d\\\\d|1(?:2[29]|3[0-5]))\\\\d{4}\", , , , \"690001234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , ,\n, , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"BL\", 590, \"00\", \"0\", , , \"0\", , , , , , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BM:[, [, , \"(?:441|[58]\\\\d\\\\d|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"441(?:2(?:02|23|[3479]\\\\d|61)|[46]\\\\d\\\\d|5(?:4\\\\d|60|89)|824)\\\\d{4}\", , , , \"4412345678\", , , , [7]], [, , \"441(?:[37]\\\\d|5[0-39])\\\\d{5}\", , , , \"4413701234\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\",\n, , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"BM\", 1, \"011\", \"1\", , , \"1|([2-8]\\\\d{6})$\", \"441$1\", , , , , [, , , , , , , , , [-1]], , \"441\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BN:[, [, , \"[2-578]\\\\d{6}\", , , , , , , [7]], [, , \"22[0-7]\\\\d{4}|(?:2[013-9]|[3-5]\\\\d)\\\\d{5}\", , , , \"2345678\"], [, , \"(?:22[89]|[78]\\\\d\\\\d)\\\\d{4}\",\n, , , \"7123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"BN\", 673, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[2-578]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BO:[, [, , \"(?:[2-467]\\\\d\\\\d|8001)\\\\d{5}\", , , , , , , [8, 9], [7]], [, , \"(?:2(?:2\\\\d\\\\d|5(?:11|[258]\\\\d|9[67])|6(?:12|2\\\\d|9[34])|8(?:2[34]|39|62))|3(?:3\\\\d\\\\d|4(?:6\\\\d|8[24])|8(?:25|42|5[257]|86|9[25])|9(?:[27]\\\\d|3[2-4]|4[248]|5[24]|6[2-6]))|4(?:4\\\\d\\\\d|6(?:11|[24689]\\\\d|72)))\\\\d{4}\",\n, , , \"22123456\", , , [8], [7]], [, , \"[67]\\\\d{7}\", , , , \"71234567\", , , [8]], [, , \"8001[07]\\\\d{4}\", , , , \"800171234\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"BO\", 591, \"00(?:1\\\\d)?\", \"0\", , , \"0(1\\\\d)?\", , , , [[, \"(\\\\d)(\\\\d{7})\", \"$1 $2\", [\"[23]|4[46]\"], , \"0$CC $1\"], [, \"(\\\\d{8})\", \"$1\", [\"[67]\"], , \"0$CC $1\"], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{4})\", \"$1 $2 $3\", [\"8\"], , \"0$CC $1\"]], , [, , , , , , , , , [-1]], , , [, , \"8001[07]\\\\d{4}\",\n, , , , , , [9]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BQ:[, [, , \"(?:[34]1|7\\\\d)\\\\d{5}\", , , , , , , [7]], [, , \"(?:318[023]|41(?:6[023]|70)|7(?:1[578]|50)\\\\d)\\\\d{3}\", , , , \"7151234\"], [, , \"(?:31(?:8[14-8]|9[14578])|416[14-9]|7(?:0[01]|7[07]|8\\\\d|9[056])\\\\d)\\\\d{3}\", , , , \"3181234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"BQ\", 599, \"00\", , , , , , , , , , [, , , , , , , , , [-1]], ,\n\"[347]\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BR:[, [, , \"(?:[1-46-9]\\\\d\\\\d|5(?:[0-46-9]\\\\d|5[0-24679]))\\\\d{8}|[1-9]\\\\d{9}|[3589]\\\\d{8}|[34]\\\\d{7}\", , , , , , , [8, 9, 10, 11]], [, , \"(?:[14689][1-9]|2[12478]|3[1-578]|5[13-5]|7[13-579])[2-5]\\\\d{7}\", , , , \"1123456789\", , , [10], [8]], [, , \"(?:[14689][1-9]|2[12478]|3[1-578]|5[13-5]|7[13-579])(?:7|9\\\\d)\\\\d{7}\", , , , \"11961234567\", , , [10, 11], [8, 9]], [, , \"800\\\\d{6,7}\", , , , \"800123456\", , , [9, 10]],\n[, , \"300\\\\d{6}|[59]00\\\\d{6,7}\", , , , \"300123456\", , , [9, 10]], [, , \"300\\\\d{7}|[34]00\\\\d{5}|4(?:02|37)0\\\\d{4}\", , , , \"40041234\", , , [8, 10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"BR\", 55, \"00(?:1[245]|2[1-35]|31|4[13]|[56]5|99)\", \"0\", , , \"0(?:(1[245]|2[1-35]|31|4[13]|[56]5|99)(\\\\d{10,11}))?\", \"$2\", , , [[, \"(\\\\d{3,6})\", \"$1\", [\"1(?:1[25-8]|2[357-9]|3[02-68]|4[12568]|5|6[0-8]|8[015]|9[0-47-9])|321|610\"]], [, \"(\\\\d{4})(\\\\d{4})\", \"$1-$2\", [\"300|4(?:0[02]|37)\", \"4(?:02|37)0|[34]00\"]],\n[, \"(\\\\d{4})(\\\\d{4})\", \"$1-$2\", [\"[2-57]\", \"[2357]|4(?:[0-24-9]|3(?:[0-689]|7[1-9]))\"]], [, \"(\\\\d{3})(\\\\d{2,3})(\\\\d{4})\", \"$1 $2 $3\", [\"(?:[358]|90)0\"], \"0$1\"], [, \"(\\\\d{5})(\\\\d{4})\", \"$1-$2\", [\"9\"]], [, \"(\\\\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)\", \"0 $CC ($1)\"], [, \"(\\\\d{2})(\\\\d{5})(\\\\d{4})\", \"$1 $2-$3\", [\"[16][1-9]|[2-57-9]\"], \"($1)\", \"0 $CC ($1)\"]], [[, \"(\\\\d{4})(\\\\d{4})\", \"$1-$2\", [\"300|4(?:0[02]|37)\", \"4(?:02|37)0|[34]00\"]],\n[, \"(\\\\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)\", \"0 $CC ($1)\"], [, \"(\\\\d{2})(\\\\d{5})(\\\\d{4})\", \"$1 $2-$3\", [\"[16][1-9]|[2-57-9]\"], \"($1)\", \"0 $CC ($1)\"]], [, , , , , , , , , [-1]], , , [, , \"4020\\\\d{4}|[34]00\\\\d{5}\", , , , , , , [8]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BS:[, [, , \"(?:242|[58]\\\\d\\\\d|900)\\\\d{7}\", , , , , , , [10], [7]], [, ,\n\"242(?:3(?:02|[236][1-9]|4[0-24-9]|5[0-68]|7[347]|8[0-4]|9[2-467])|461|502|6(?:0[1-4]|12|2[013]|[45]0|7[67]|8[78]|9[89])|7(?:02|88))\\\\d{4}\", , , , \"2423456789\", , , , [7]], [, , \"242(?:3(?:5[79]|7[56]|95)|4(?:[23][1-9]|4[1-35-9]|5[1-8]|6[2-8]|7\\\\d|81)|5(?:2[45]|3[35]|44|5[1-46-9]|65|77)|6[34]6|7(?:27|38)|8(?:0[1-9]|1[02-9]|2\\\\d|[89]9))\\\\d{4}\", , , , \"2423591234\", , , , [7]], [, , \"242300\\\\d{4}|8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\", , , , [7]], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"],\n[, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"BS\", 1, \"011\", \"1\", , , \"1|([3-8]\\\\d{6})$\", \"242$1\", , , , , [, , , , , , , , , [-1]], , \"242\", [, , , , , , , , , [-1]], [, , \"242225[0-46-9]\\\\d{3}\", , , , \"2422250123\"], , , [, , , , , , , , , [-1]]], BT:[, [, , \"[17]\\\\d{7}|[2-8]\\\\d{6}\", , , , , , , [7, 8], [6]], [, , \"(?:2[3-6]|[34][5-7]|5[236]|6[2-46]|7[246]|8[2-4])\\\\d{5}\", , , , \"2345678\", , , [7], [6]], [, , \"(?:1[67]|77)\\\\d{6}\",\n, , , \"17123456\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"BT\", 975, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{3})\", \"$1 $2\", [\"[2-7]\"]], [, \"(\\\\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\"]]], [[, \"(\\\\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\"]]], [, , , ,\n, , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BW:[, [, , \"90\\\\d{5}|(?:[2-6]|7\\\\d)\\\\d{6}\", , , , , , , [7, 8]], [, , \"(?:2(?:4[0-48]|6[0-24]|9[0578])|3(?:1[0-35-9]|55|[69]\\\\d|7[013])|4(?:6[03]|7[1267]|9[0-5])|5(?:3[0389]|4[0489]|7[1-47]|88|9[0-49])|6(?:2[1-35]|5[149]|8[067]))\\\\d{4}\", , , , \"2401234\", , , [7]], [, , \"77200\\\\d{3}|7(?:[1-6]\\\\d|7[014-8])\\\\d{5}\", , , , \"71123456\", , , [8]], [, , , , , , , , , [-1]], [, , \"90\\\\d{5}\", , , , \"9012345\",\n, , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"79(?:1(?:[01]\\\\d|20)|2[0-2]\\\\d)\\\\d{3}\", , , , \"79101234\", , , [8]], \"BW\", 267, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{5})\", \"$1 $2\", [\"90\"]], [, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[2-6]\"]], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"7\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BY:[, [, , \"(?:[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}\",\n, , , , , , [6, 7, 8, 9, 10, 11], [5]], [, , \"(?:1(?:5(?:1[1-5]|[24]\\\\d|6[2-4]|9[1-7])|6(?:[235]\\\\d|4[1-7])|7\\\\d\\\\d)|2(?:1(?:[246]\\\\d|3[0-35-9]|5[1-9])|2(?:[235]\\\\d|4[0-8])|3(?:[26]\\\\d|3[02-79]|4[024-7]|5[03-7])))\\\\d{5}\", , , , \"152450911\", , , [9], [5, 6, 7]], [, , \"(?:2(?:5[5-79]|9[1-9])|(?:33|44)\\\\d)\\\\d{6}\", , , , \"294911911\", , , [9]], [, , \"800\\\\d{3,7}|8(?:0[13]|20\\\\d)\\\\d{7}\", , , , \"8011234567\"], [, , \"(?:810|902)\\\\d{7}\", , , , \"9021234567\", , , [10]], [, , , , , , , , , [-1]], [, , , , , ,\n, , , [-1]], [, , \"249\\\\d{6}\", , , , \"249123456\", , , [9]], \"BY\", 375, \"810\", \"8\", , , \"0|80?\", , \"8~10\", , [[, \"(\\\\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]\"],\n\"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\"]], , [, , , , , , , , , [-1]], , , [, , \"800\\\\d{3,7}|(?:8(?:0[13]|10|20\\\\d)|902)\\\\d{7}\"], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], BZ:[, [, , \"(?:0800\\\\d|[2-8])\\\\d{6}\", , , , , , , [7, 11]], [, , \"(?:236|732)\\\\d{4}|[2-578][02]\\\\d{5}\", , , , \"2221234\", , , [7]], [, , \"6[0-35-7]\\\\d{5}\", , , , \"6221234\", , , [7]], [, , \"0800\\\\d{7}\", , , ,\n\"08001234123\", , , [11]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"BZ\", 501, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1-$2\", [\"[2-8]\"]], [, \"(\\\\d)(\\\\d{3})(\\\\d{4})(\\\\d{3})\", \"$1-$2-$3-$4\", [\"0\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CA:[, [, , \"(?:[2-8]\\\\d|90)\\\\d{8}\", , , , , , , [10], [7]], [, , \"(?:2(?:04|[23]6|[48]9|50)|3(?:06|43|65)|4(?:03|1[68]|3[178]|50)|5(?:06|1[49]|48|79|8[17])|6(?:04|13|39|47)|7(?:0[59]|78|8[02])|8(?:[06]7|19|25|73)|90[25])[2-9]\\\\d{6}\",\n, , , \"5062345678\", , , , [7]], [, , \"(?:2(?:04|[23]6|[48]9|50)|3(?:06|43|65)|4(?:03|1[68]|3[178]|50)|5(?:06|1[49]|48|79|8[17])|6(?:04|13|39|47)|7(?:0[59]|78|8[02])|8(?:[06]7|19|25|73)|90[25])[2-9]\\\\d{6}\", , , , \"5062345678\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"(?:5(?:00|2[12]|33|44|66|77|88)|622)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , \"600[2-9]\\\\d{6}\", , , , \"6002012345\"], \"CA\",\n1, \"011\", \"1\", , , \"1\", , , 1, , , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CC:[, [, , \"1(?:[0-79]\\\\d|8[0-24-9])\\\\d{7}|(?:[148]\\\\d\\\\d|550)\\\\d{6}|1\\\\d{5,7}\", , , , , , , [6, 7, 8, 9, 10]], [, , \"8(?:51(?:0(?:02|31|60)|118)|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}\", , , , \"891621234\", , , [9], [8]], [, , \"483[0-3]\\\\d{5}|4(?:[0-3]\\\\d|4[047-9]|5[0-25-9]|6[06-9]|7[02-9]|8[0-2457-9]|9[0-27-9])\\\\d{6}\",\n, , , \"412345678\", , , [9]], [, , \"180(?:0\\\\d{3}|2)\\\\d{3}\", , , , \"1800123456\", , , [7, 10]], [, , \"190[0-26]\\\\d{6}\", , , , \"1900123456\", , , [10]], [, , \"13(?:00\\\\d{3}|45[0-4])\\\\d{3}|13\\\\d{4}\", , , , \"1300123456\", , , [6, 8, 10]], [, , , , , , , , , [-1]], [, , \"(?:14(?:5(?:1[0458]|[23][458])|71\\\\d)|550\\\\d\\\\d)\\\\d{4}\", , , , \"550123456\", , , [9]], \"CC\", 61, \"001[14-689]|14(?:1[14]|34|4[17]|[56]6|7[47]|88)0011\", \"0\", , , \"0|([59]\\\\d{7})$\", \"8$1\", \"0011\", , , , [, , , , , , , , , [-1]], , , [, , ,\n, , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CD:[, [, , \"[189]\\\\d{8}|[1-68]\\\\d{6}\", , , , , , , [7, 9]], [, , \"12\\\\d{7}|[1-6]\\\\d{6}\", , , , \"1234567\"], [, , \"88\\\\d{5}|(?:8[0-2459]|9[017-9])\\\\d{7}\", , , , \"991234567\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"CD\", 243, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{3})\", \"$1 $2 $3\", [\"88\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{5})\", \"$1 $2\",\n[\"[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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CF:[, [, , \"(?:[27]\\\\d{3}|8776)\\\\d{4}\", , , , , , , [8]], [, , \"2[12]\\\\d{6}\", , , , \"21612345\"], [, , \"7[0257]\\\\d{6}\", , , , \"70012345\"], [, , , , , , , , , [-1]], [, , \"8776\\\\d{4}\", , , , \"87761234\"], [, , , , , , , , , [-1]], [, , , , , , , , ,\n[-1]], [, , , , , , , , , [-1]], \"CF\", 236, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[278]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CG:[, [, , \"222\\\\d{6}|(?:0\\\\d|80)\\\\d{7}\", , , , , , , [9]], [, , \"222[1-589]\\\\d{5}\", , , , \"222123456\"], [, , \"0[14-6]\\\\d{7}\", , , , \"061234567\"], [, , , , , , , , , [-1]], [, , \"80(?:0\\\\d\\\\d|11[0-4])\\\\d{4}\", , , , \"800123456\"], [, , , , , , , , , [-1]],\n[, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"CG\", 242, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"801\"]], [, \"(\\\\d)(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"8\"]], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[02]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CH:[, [, , \"8\\\\d{11}|[2-9]\\\\d{8}\", , , , , , , [9, 12]], [, , \"(?:2[12467]|3[1-4]|4[134]|5[256]|6[12]|[7-9]1)\\\\d{7}\", , , , \"212345678\",\n, , [9]], [, , \"7[35-9]\\\\d{7}\", , , , \"781234567\", , , [9]], [, , \"800\\\\d{6}\", , , , \"800123456\", , , [9]], [, , \"90[016]\\\\d{6}\", , , , \"900123456\", , , [9]], [, , \"84[0248]\\\\d{6}\", , , , \"840123456\", , , [9]], [, , \"878\\\\d{6}\", , , , \"878123456\", , , [9]], [, , , , , , , , , [-1]], \"CH\", 41, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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})\",\n\"$1 $2 $3 $4 $5\", [\"8\"], \"0$1\"]], , [, , \"74[0248]\\\\d{6}\", , , , \"740123456\", , , [9]], , , [, , , , , , , , , [-1]], [, , \"5[18]\\\\d{7}\", , , , \"581234567\", , , [9]], , , [, , \"860\\\\d{9}\", , , , \"860123456789\", , , [12]]], CI:[, [, , \"[02-8]\\\\d{7}\", , , , , , , [8]], [, , \"(?:2(?:0[023]|1[02357]|[23][045]|4[03-5])|3(?:0[06]|1[069]|[2-4][07]|5[09]|6[08]))\\\\d{5}\", , , , \"21234567\"], [, , \"(?:0[1-9]|[457]\\\\d|6[014-9]|8[4-9])\\\\d{6}\", , , , \"01234567\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]],\n[, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"CI\", 225, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[02-8]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CK:[, [, , \"[2-8]\\\\d{4}\", , , , , , , [5]], [, , \"(?:2\\\\d|3[13-7]|4[1-5])\\\\d{3}\", , , , \"21234\"], [, , \"[5-8]\\\\d{4}\", , , , \"71234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]],\n[, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"CK\", 682, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{3})\", \"$1 $2\", [\"[2-8]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CL:[, [, , \"12300\\\\d{6}|6\\\\d{9,10}|[2-9]\\\\d{8}\", , , , , , , [9, 10, 11]], [, , \"(?:2(?:1962|3(?:2\\\\d\\\\d|300))|80[1-9]\\\\d\\\\d)\\\\d{4}|(?:22|3[2-5]|[47][1-35]|5[1-3578]|6[13-57]|8[1-9]|9[2-9])\\\\d{7}\", , , , \"221234567\", , , [9]], [, , \"(?:2(?:1962|3(?:2\\\\d\\\\d|300))|80[1-9]\\\\d\\\\d)\\\\d{4}|(?:22|3[2-5]|[47][1-35]|5[1-3578]|6[13-57]|8[1-9]|9[2-9])\\\\d{7}\",\n, , , \"221234567\", , , [9]], [, , \"(?:123|8)00\\\\d{6}\", , , , \"800123456\", , , [9, 11]], [, , , , , , , , , [-1]], [, , \"600\\\\d{7,8}\", , , , \"6001234567\", , , [10, 11]], [, , , , , , , , , [-1]], [, , \"44\\\\d{7}\", , , , \"441234567\", , , [9]], \"CL\", 56, \"(?:0|1(?:1[0-69]|2[0-57]|5[13-58]|69|7[0167]|8[018]))0\", , , , , , , 1, [[, \"(\\\\d{4})\", \"$1\", [\"1(?:[03-589]|21)|[29]0|78\"]], [, \"(\\\\d{5})(\\\\d{4})\", \"$1 $2\", [\"21\"], \"($1)\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"44\"]], [, \"(\\\\d)(\\\\d{4})(\\\\d{4})\",\n\"$1 $2 $3\", [\"2[23]\"], \"($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\"]]], [[, \"(\\\\d{5})(\\\\d{4})\", \"$1 $2\", [\"21\"], \"($1)\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"44\"]], [, \"(\\\\d)(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\",\n[\"2[23]\"], \"($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\"]]], [, , , , , , , , , [-1]], , , [, , \"600\\\\d{7,8}\", , , , , , , [10, 11]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CM:[, [, , \"(?:[26]\\\\d\\\\d|88)\\\\d{6}\",\n, , , , , , [8, 9]], [, , \"2(?:22|33|4[23])\\\\d{6}\", , , , \"222123456\", , , [9]], [, , \"6[5-9]\\\\d{7}\", , , , \"671234567\", , , [9]], [, , \"88\\\\d{6}\", , , , \"88012345\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"CM\", 237, \"00\", , , , , , , , [[, \"(\\\\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]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]],\n[, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CN:[, [, , \"1[1279]\\\\d{8,9}|2\\\\d{9}(?:\\\\d{2})?|[12]\\\\d{6,7}|86\\\\d{6}|(?:1[03-68]\\\\d|6)\\\\d{7,9}|(?:[3-579]\\\\d|8[0-57-9])\\\\d{6,9}\", , , , , , , [7, 8, 9, 10, 11, 12], [5, 6]], [, , \"(?:10(?:[02-79]\\\\d\\\\d|[18](?:0[1-9]|[1-9]\\\\d))|21(?:[18](?:0[1-9]|[1-9]\\\\d)|[2-79]\\\\d\\\\d))\\\\d{5}|(?:43[35]|754)\\\\d{7,8}|8(?:078\\\\d{7}|51\\\\d{7,8})|(?:10|(?:2|85)1|43[35]|754)(?:100\\\\d\\\\d|95\\\\d{3,4})|(?:2[02-57-9]|3(?:11|7[179])|4(?:[15]1|3[12])|5(?:1\\\\d|2[37]|3[12]|51|7[13-79]|9[15])|7(?:[39]1|5[57]|6[09])|8(?:71|98))(?:[02-8]\\\\d{7}|1(?:0(?:0\\\\d\\\\d(?:\\\\d{3})?|[1-9]\\\\d{5})|[1-9]\\\\d{6})|9(?:[0-46-9]\\\\d{6}|5\\\\d{3}(?:\\\\d(?:\\\\d{2})?)?))|(?:3(?:1[02-9]|35|49|5\\\\d|7[02-68]|9[1-68])|4(?:1[02-9]|2[179]|3[46-9]|5[2-9]|6[47-9]|7\\\\d|8[23])|5(?:3[03-9]|4[36]|5[02-9]|6[1-46]|7[028]|80|9[2-46-9])|6(?:3[1-5]|6[0238]|9[12])|7(?:01|[17]\\\\d|2[248]|3[04-9]|4[3-6]|5[0-3689]|6[2368]|9[02-9])|8(?:1[236-8]|2[5-7]|3\\\\d|5[2-9]|7[02-9]|8[36-8]|9[1-7])|9(?:0[1-3689]|1[1-79]|[379]\\\\d|4[13]|5[1-5]))(?:[02-8]\\\\d{6}|1(?:0(?:0\\\\d\\\\d(?:\\\\d{2})?|[1-9]\\\\d{4})|[1-9]\\\\d{5})|9(?:[0-46-9]\\\\d{5}|5\\\\d{3,5}))\",\n, , , \"1012345678\", , , [7, 8, 9, 10, 11], [5, 6]], [, , \"1740[0-5]\\\\d{6}|1(?:[38]\\\\d|4[57]|5[0-35-9]|6[25-7]|7[0-35-8]|9[189])\\\\d{8}\", , , , \"13123456789\", , , [11]], [, , \"(?:(?:10|21)8|8)00\\\\d{7}\", , , , \"8001234567\", , , [10, 12]], [, , \"16[08]\\\\d{5}\", , , , \"16812345\", , , [8]], [, , \"400\\\\d{7}|950\\\\d{7,8}|(?:10|2[0-57-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[14-9]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|[379]\\\\d|4[13]|5[1-5]))96\\\\d{3,4}\",\n, , , \"4001234567\", , , [7, 8, 9, 10, 11], [5, 6]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"CN\", 86, \"00|1(?:[12]\\\\d|79|9[0235-7])\\\\d\\\\d00\", \"0\", , , \"0|(1(?:[12]\\\\d|79|9[0235-7])\\\\d\\\\d)\", , \"00\", , [[, \"(\\\\d{5,6})\", \"$1\", [\"96\"]], [, \"(\\\\d{2})(\\\\d{5,6})\", \"$1 $2\", [\"(?:10|2[0-57-9])[19]\", \"(?:10|2[0-57-9])(?:10|9[56])\", \"(?:10|2[0-57-9])(?:100|9[56])\"], \"0$1\", \"$CC $1\"], [, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[1-9]\", \"1[1-9]|26|[3-9]|(?:10|2[0-57-9])(?:[0-8]|9[0-47-9])\", \"1[1-9]|26|[3-9]|(?:10|2[0-57-9])(?:[02-8]|1(?:0[1-9]|[1-9])|9[0-47-9])\"]],\n[, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"16[08]\"]], [, \"(\\\\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]\",\n\"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])\"],\n\"0$1\", \"$CC $1\"], [, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[1-9]\", \"1[1-9]|26|[3-9]|(?:10|2[0-57-9])(?:[0-8]|9[0-47-9])\", \"26|3(?:[0268]|9[079])|4(?:[049]|2[02-68]|[35]0|6[0-356]|8[014-9])|5(?:0|2[0-24-689]|4[0-2457-9]|6[057-9]|90)|6(?:[0-24578]|6[14-79]|9[03-9])|7(?:0[02-9]|2[0135-79]|3[23]|4[0-27-9]|6[1457]|8)|8(?:[046]|1[01459]|2[0-489]|50|8[0-2459]|9[09])|9(?:0[0457]|1[08]|[268]|4[024-9])|(?:34|85[23])[0-8]|(?:1|58)[1-9]|(?:63|95)[06-9]|(?:33|85[23]9)[0-46-9]|(?:10|2[0-57-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[14-9]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|[379]\\\\d|4[13]|5[1-5]))(?:[0-8]|9[0-47-9])\",\n\"26|3(?:[0268]|3[0-46-9]|4[0-8]|9[079])|4(?:[049]|2[02-68]|[35]0|6[0-356]|8[014-9])|5(?:0|2[0-24-689]|4[0-2457-9]|6[057-9]|90)|6(?:[0-24578]|3[06-9]|6[14-79]|9[03-9])|7(?:0[02-9]|2[0135-79]|3[23]|4[0-27-9]|6[1457]|8)|8(?:[046]|1[01459]|2[0-489]|5(?:0|[23](?:[02-8]|1[1-9]|9[0-46-9]))|8[0-2459]|9[09])|9(?:0[0457]|1[08]|[268]|4[024-9]|5[06-9])|(?:1|58|85[23]10)[1-9]|(?:10|2[0-57-9])(?:[0-8]|9[0-47-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[14-9]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|[379]\\\\d|4[13]|5[1-5]))(?:[02-8]|1(?:0[1-9]|[1-9])|9[0-47-9])\"]],\n[, \"(\\\\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\", \"$CC $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\", \"$CC $1\", 1],\n[, \"(\\\\d{3})(\\\\d{7,8})\", \"$1 $2\", [\"9\"]], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"80\"], \"0$1\", \"$CC $1\", 1], [, \"(\\\\d{3})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"[3-578]\"], \"0$1\", \"$CC $1\", 1], [, \"(\\\\d{3})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"1[3-9]\"], , \"$CC $1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3 $4\", [\"[12]\"], \"0$1\", , 1]], [[, \"(\\\\d{2})(\\\\d{5,6})\", \"$1 $2\", [\"(?:10|2[0-57-9])[19]\", \"(?:10|2[0-57-9])(?:10|9[56])\", \"(?:10|2[0-57-9])(?:100|9[56])\"], \"0$1\", \"$CC $1\"], [, \"(\\\\d{3})(\\\\d{5,6})\",\n\"$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]\",\n\"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])\"],\n\"0$1\", \"$CC $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\", \"$CC $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\",\n\"$CC $1\", 1], [, \"(\\\\d{3})(\\\\d{7,8})\", \"$1 $2\", [\"9\"]], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"80\"], \"0$1\", \"$CC $1\", 1], [, \"(\\\\d{3})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"[3-578]\"], \"0$1\", \"$CC $1\", 1], [, \"(\\\\d{3})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"1[3-9]\"], , \"$CC $1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3 $4\", [\"[12]\"], \"0$1\", , 1]], [, , , , , , , , , [-1]], , , [, , \"(?:(?:10|21)8|[48])00\\\\d{7}|950\\\\d{7,8}\", , , , , , , [10, 11, 12]], [, , , , , , , , , [-1]], , , [, , , , , , ,\n, , [-1]]], CO:[, [, , \"(?:1\\\\d|3)\\\\d{9}|[124-8]\\\\d{7}\", , , , , , , [8, 10, 11], [7]], [, , \"[124-8][2-9]\\\\d{6}\", , , , \"12345678\", , , [8], [7]], [, , \"3(?:0[0-5]|1\\\\d|2[0-3]|5[01])\\\\d{7}\", , , , \"3211234567\", , , [10]], [, , \"1800\\\\d{7}\", , , , \"18001234567\", , , [11]], [, , \"19(?:0[01]|4[78])\\\\d{7}\", , , , \"19001234567\", , , [11]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"CO\", 57, \"00(?:4(?:[14]4|56)|[579])\", \"0\", , , \"0([3579]|4(?:[14]4|56))?\", , , , [[,\n\"(\\\\d)(\\\\d{7})\", \"$1 $2\", [\"1[2-79]|[25-8]|(?:18|4)[2-9]\"], \"($1)\", \"0$CC $1\"], [, \"(\\\\d{3})(\\\\d{7})\", \"$1 $2\", [\"3\"], , \"0$CC $1\"], [, \"(\\\\d)(\\\\d{3})(\\\\d{7})\", \"$1-$2-$3\", [\"1(?:80|9)\", \"1(?:800|9)\"], \"0$1\"]], [[, \"(\\\\d)(\\\\d{7})\", \"$1 $2\", [\"1[2-79]|[25-8]|(?:18|4)[2-9]\"], \"($1)\", \"0$CC $1\"], [, \"(\\\\d{3})(\\\\d{7})\", \"$1 $2\", [\"3\"], , \"0$CC $1\"], [, \"(\\\\d)(\\\\d{3})(\\\\d{7})\", \"$1 $2 $3\", [\"1(?:80|9)\", \"1(?:800|9)\"]]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]],\n, , [, , , , , , , , , [-1]]], CR:[, [, , \"(?:8\\\\d|90)\\\\d{8}|[24-8]\\\\d{7}\", , , , , , , [8, 10]], [, , \"210[7-9]\\\\d{4}|2(?:[024-7]\\\\d|1[1-9])\\\\d{5}\", , , , \"22123456\", , , [8]], [, , \"6500[01]\\\\d{3}|5(?:0[01]|7[0-3])\\\\d{5}|(?:6[0-4]|7[0-3]|8[3-9])\\\\d{6}\", , , , \"83123456\", , , [8]], [, , \"800\\\\d{7}\", , , , \"8001234567\", , , [10]], [, , \"90[059]\\\\d{7}\", , , , \"9001234567\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"(?:210[0-6]|4\\\\d{3}|5100)\\\\d{4}\", , , , \"40001234\", , , [8]],\n\"CR\", 506, \"00\", , , , \"(19(?:0[0-2468]|1[09]|20|66|77|99))\", , , , [[, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[24-7]|8[3-9]\"], , \"$CC $1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"[89]\"], , \"$CC $1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CU:[, [, , \"[27]\\\\d{6,7}|[34]\\\\d{5,7}|5\\\\d{7}\", , , , , , , [6, 7, 8], [4, 5]], [, , \"(?:3[23]|48)\\\\d{4,6}|(?:31|4[36])\\\\d{6}|(?:2[1-4]|4[1257]|7\\\\d)\\\\d{5,6}\", , , , \"71234567\", , , , [4,\n5]], [, , \"5\\\\d{7}\", , , , \"51234567\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"CU\", 53, \"119\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{4,6})\", \"$1 $2\", [\"2[1-4]|[34]\"], \"(0$1)\"], [, \"(\\\\d)(\\\\d{6,7})\", \"$1 $2\", [\"7\"], \"(0$1)\"], [, \"(\\\\d)(\\\\d{7})\", \"$1 $2\", [\"5\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CV:[, [, , \"[2-59]\\\\d{6}\",\n, , , , , , [7]], [, , \"2(?:2[1-7]|3[0-8]|4[12]|5[1256]|6\\\\d|7[1-3]|8[1-5])\\\\d{4}\", , , , \"2211234\"], [, , \"(?:[34][36]|5[1-389]|9\\\\d)\\\\d{5}\", , , , \"9911234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"CV\", 238, \"0\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3\", [\"[2-59]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CW:[, [,\n, \"(?:[34]1|60|(?:7|9\\\\d)\\\\d)\\\\d{5}\", , , , , , , [7, 8]], [, , \"9(?:4(?:3[0-5]|4[14]|6\\\\d)|50\\\\d|7(?:2[014]|3[02-9]|4[4-9]|6[357]|77|8[7-9])|8(?:3[39]|[46]\\\\d|7[01]|8[57-9]))\\\\d{4}\", , , , \"94351234\"], [, , \"953[01]\\\\d{4}|9(?:5[12467]|6[5-9])\\\\d{5}\", , , , \"95181234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"60[0-2]\\\\d{4}\", , , , \"6001234\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"CW\", 599, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[3467]\"]],\n[, \"(\\\\d)(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"9[4-8]\"]]], , [, , \"955\\\\d{5}\", , , , \"95581234\", , , [8]], 1, \"[69]\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CX:[, [, , \"1(?:[0-79]\\\\d|8[0-24-9])\\\\d{7}|(?:[148]\\\\d\\\\d|550)\\\\d{6}|1\\\\d{5,7}\", , , , , , , [6, 7, 8, 9, 10]], [, , \"8(?:51(?:0(?:01|30|59)|117)|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}\", , , , \"891641234\", , , [9], [8]], [, , \"483[0-3]\\\\d{5}|4(?:[0-3]\\\\d|4[047-9]|5[0-25-9]|6[06-9]|7[02-9]|8[0-2457-9]|9[0-27-9])\\\\d{6}\",\n, , , \"412345678\", , , [9]], [, , \"180(?:0\\\\d{3}|2)\\\\d{3}\", , , , \"1800123456\", , , [7, 10]], [, , \"190[0-26]\\\\d{6}\", , , , \"1900123456\", , , [10]], [, , \"13(?:00\\\\d{3}|45[0-4])\\\\d{3}|13\\\\d{4}\", , , , \"1300123456\", , , [6, 8, 10]], [, , , , , , , , , [-1]], [, , \"(?:14(?:5(?:1[0458]|[23][458])|71\\\\d)|550\\\\d\\\\d)\\\\d{4}\", , , , \"550123456\", , , [9]], \"CX\", 61, \"001[14-689]|14(?:1[14]|34|4[17]|[56]6|7[47]|88)0011\", \"0\", , , \"0|([59]\\\\d{7})$\", \"8$1\", \"0011\", , , , [, , , , , , , , , [-1]], , , [, , ,\n, , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], CY:[, [, , \"(?:[279]\\\\d|[58]0)\\\\d{6}\", , , , , , , [8]], [, , \"2[2-6]\\\\d{6}\", , , , \"22345678\"], [, , \"9[4-79]\\\\d{6}\", , , , \"96123456\"], [, , \"800\\\\d{5}\", , , , \"80001234\"], [, , \"90[09]\\\\d{5}\", , , , \"90012345\"], [, , \"80[1-9]\\\\d{5}\", , , , \"80112345\"], [, , \"700\\\\d{5}\", , , , \"70012345\"], [, , , , , , , , , [-1]], \"CY\", 357, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{6})\", \"$1 $2\", [\"[257-9]\"]]], , [, , , , , , , , , [-1]],\n, , [, , , , , , , , , [-1]], [, , \"(?:50|77)\\\\d{6}\", , , , \"77123456\"], , , [, , , , , , , , , [-1]]], CZ:[, [, , \"(?:[2-578]\\\\d|60)\\\\d{7}|9\\\\d{8,11}\", , , , , , , [9, 10, 11, 12]], [, , \"(?:2\\\\d|3[1257-9]|4[16-9]|5[13-9])\\\\d{7}\", , , , \"212345678\", , , [9]], [, , \"(?:60[1-8]|7(?:0[2-5]|[2379]\\\\d))\\\\d{6}\", , , , \"601123456\", , , [9]], [, , \"800\\\\d{6}\", , , , \"800123456\", , , [9]], [, , \"9(?:0[05689]|76)\\\\d{6}\", , , , \"900123456\", , , [9]], [, , \"8[134]\\\\d{7}\", , , , \"811234567\", , , [9]], [, , \"70[01]\\\\d{6}\",\n, , , \"700123456\", , , [9]], [, , \"9[17]0\\\\d{6}\", , , , \"910123456\", , , [9]], \"CZ\", 420, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[2-8]|9[015-7]\"]], [, \"(\\\\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\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"9(?:5\\\\d|7[2-4])\\\\d{6}\", , , , \"972123456\", , , [9]], , , [, , \"9(?:3\\\\d{9}|6\\\\d{7,10})\", , , , \"93123456789\"]], DE:[, [, , \"[2579]\\\\d{5,14}|49(?:[05]\\\\d{10}|[46][1-8]\\\\d{4,9})|49(?:[0-25]\\\\d|3[1-689]|7[1-7])\\\\d{4,8}|49(?:[0-2579]\\\\d|[34][1-9]|6[0-8])\\\\d{3}|49\\\\d{3,4}|(?:1|[368]\\\\d|4[0-8])\\\\d{3,13}\",\n, , , , , , [4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15], [2, 3]], [, , \"(?:32|49[4-6]\\\\d)\\\\d{9}|49[0-7]\\\\d{3,9}|(?:[34]0|[68]9)\\\\d{3,13}|(?:2(?:0[1-689]|[1-3569]\\\\d|4[0-8]|7[1-7]|8[0-7])|3(?:[3569]\\\\d|4[0-79]|7[1-7]|8[1-8])|4(?:1[02-9]|[2-48]\\\\d|5[0-6]|6[0-8]|7[0-79])|5(?:0[2-8]|[124-6]\\\\d|[38][0-8]|[79][0-7])|6(?:0[02-9]|[1-358]\\\\d|[47][0-8]|6[1-9])|7(?:0[2-8]|1[1-9]|[27][0-7]|3\\\\d|[4-6][0-8]|8[0-5]|9[013-7])|8(?:0[2-9]|1[0-79]|2\\\\d|3[0-46-9]|4[0-6]|5[013-9]|6[1-8]|7[0-8]|8[0-24-6])|9(?:0[6-9]|[1-4]\\\\d|[589][0-7]|6[0-8]|7[0-467]))\\\\d{3,12}\",\n, , , \"30123456\", , , [5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15], [2, 3, 4]], [, , \"15[0-25-9]\\\\d{8}|1(?:6[023]|7\\\\d)\\\\d{7,8}\", , , , \"15123456789\", , , [10, 11]], [, , \"800\\\\d{7,12}\", , , , \"8001234567890\", , , [10, 11, 12, 13, 14, 15]], [, , \"(?:137[7-9]|900(?:[135]|9\\\\d))\\\\d{6}\", , , , \"9001234567\", , , [10, 11]], [, , \"180\\\\d{5,11}|13(?:7[1-6]\\\\d\\\\d|8)\\\\d{4}\", , , , \"18012345\", , , [7, 8, 9, 10, 11, 12, 13, 14]], [, , \"700\\\\d{8}\", , , , \"70012345678\", , , [11]], [, , , , , , , , , [-1]], \"DE\", 49,\n\"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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]\"],\n\"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\"],\n[, \"(\\\\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\"]], , [, , \"16(?:4\\\\d{1,10}|[89]\\\\d{1,11})\", , , , \"16412345\", , , [4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14]], , , [, , , , , , , , , [-1]], [, , \"18(?:1\\\\d{5,11}|[2-9]\\\\d{8})\",\n, , , \"18500123456\", , , [8, 9, 10, 11, 12, 13, 14]], , , [, , \"1(?:6(?:013|255|399)|7(?:(?:[015]1|[69]3)3|[2-4]55|[78]99))\\\\d{7,8}|15(?:(?:[03-68]00|113)\\\\d|2\\\\d55|7\\\\d99|9\\\\d33)\\\\d{7}\", , , , \"177991234567\", , , [12, 13]]], DJ:[, [, , \"(?:2\\\\d|77)\\\\d{6}\", , , , , , , [8]], [, , \"2(?:1[2-5]|7[45])\\\\d{5}\", , , , \"21360003\"], [, , \"77\\\\d{6}\", , , , \"77831001\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"DJ\", 253,\n\"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[27]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], DK:[, [, , \"[2-9]\\\\d{7}\", , , , , , , [8]], [, , \"(?:[2-7]\\\\d|8[126-9]|9[1-36-9])\\\\d{6}\", , , , \"32123456\"], [, , \"(?:[2-7]\\\\d|8[126-9]|9[1-36-9])\\\\d{6}\", , , , \"32123456\"], [, , \"80\\\\d{6}\", , , , \"80123456\"], [, , \"90\\\\d{6}\", , , , \"90123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [,\n, , , , , , , , [-1]], \"DK\", 45, \"00\", , , , , , , 1, [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[2-9]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], DM:[, [, , \"(?:[58]\\\\d\\\\d|767|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"767(?:2(?:55|66)|4(?:2[01]|4[0-25-9])|50[0-4]|70[1-3])\\\\d{4}\", , , , \"7674201234\", , , , [7]], [, , \"767(?:2(?:[2-4689]5|7[5-7])|31[5-7]|61[1-7])\\\\d{4}\", , , , \"7672251234\", , , , [7]], [, ,\n\"8(?:00(?:14|[2-9]\\\\d)|(?:33|44|55|66|77|88)[2-9]\\\\d)\\\\d{5}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"DM\", 1, \"011\", \"1\", , , \"1|([2-7]\\\\d{6})$\", \"767$1\", , , , , [, , , , , , , , , [-1]], , \"767|8001\", [, , \"80014\\\\d{5}\"], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], DO:[, [, , \"(?:[58]\\\\d\\\\d|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"8(?:[04]9[2-9]\\\\d\\\\d|29(?:2(?:[0-59]\\\\d|6[04-9]|7[0-27]|8[0237-9])|3(?:[0-35-9]\\\\d|4[7-9])|[45]\\\\d\\\\d|6(?:[0-27-9]\\\\d|[3-5][1-9]|6[0135-8])|7(?:0[013-9]|[1-37]\\\\d|4[1-35689]|5[1-4689]|6[1-57-9]|8[1-79]|9[1-8])|8(?:0[146-9]|1[0-48]|[248]\\\\d|3[1-79]|5[01589]|6[013-68]|7[124-8]|9[0-8])|9(?:[0-24]\\\\d|3[02-46-9]|5[0-79]|60|7[0169]|8[57-9]|9[02-9])))\\\\d{4}\",\n, , , \"8092345678\", , , , [7]], [, , \"8[024]9[2-9]\\\\d{6}\", , , , \"8092345678\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"DO\", 1, \"011\", \"1\", , , \"1\", , , , , , [, , , , , , , , , [-1]], , \"8[024]9\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], DZ:[, [, , \"(?:[1-4]|[5-79]\\\\d|80)\\\\d{7}\",\n, , , , , , [8, 9]], [, , \"9619\\\\d{5}|(?:1\\\\d|2[013-79]|3[0-8]|4[0135689])\\\\d{6}\", , , , \"12345678\"], [, , \"67[0-6]\\\\d{6}|(?:5[4-6]|6[569]|7[7-9])\\\\d{7}\", , , , \"551234567\", , , [9]], [, , \"800\\\\d{6}\", , , , \"800123456\", , , [9]], [, , \"80[3-689]1\\\\d{5}\", , , , \"808123456\", , , [9]], [, , \"80[12]1\\\\d{5}\", , , , \"801123456\", , , [9]], [, , , , , , , , , [-1]], [, , \"98[23]\\\\d{6}\", , , , \"983123456\", , , [9]], \"DZ\", 213, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\",\n[\"[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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], EC:[, [, , \"1800\\\\d{6,7}|(?:[2-7]|9\\\\d)\\\\d{7}\", , , , , , , [8, 9, 10, 11], [7]], [, , \"[2-7][2-7]\\\\d{6}\", , , , \"22123456\", , , [8], [7]], [, , \"964[0-2]\\\\d{5}|9(?:39|[57][89]|6[0-37-9]|[89]\\\\d)\\\\d{6}\", , , , \"991234567\", ,\n, [9]], [, , \"1800\\\\d{6,7}\", , , , \"18001234567\", , , [10, 11]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"[2-7]890\\\\d{4}\", , , , \"28901234\", , , [8]], \"EC\", 593, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1-$2\", [\"[2-7]\"]], [, \"(\\\\d)(\\\\d{3})(\\\\d{4})\", \"$1 $2-$3\", [\"[2-7]\"], \"(0$1)\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"9\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{3,4})\", \"$1 $2 $3\", [\"1\"]]], [[, \"(\\\\d)(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"[2-7]\"]],\n[, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"9\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{3,4})\", \"$1 $2 $3\", [\"1\"]]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], EE:[, [, , \"8\\\\d{9}|[4578]\\\\d{7}|(?:[3-8]\\\\d\\\\d|900)\\\\d{4}\", , , , , , , [7, 8, 10]], [, , \"(?:3[23589]|4[3-8]|6\\\\d|7[1-9]|88)\\\\d{5}\", , , , \"3212345\", , , [7]], [, , \"(?:5\\\\d|8[1-4])\\\\d{6}|5(?:(?:[02]\\\\d|5[0-478])\\\\d|1(?:[0-8]\\\\d|95)|6(?:4[0-4]|5[1-589]))\\\\d{3}\", , , , \"51234567\",\n, , [7, 8]], [, , \"800(?:(?:0\\\\d\\\\d|1)\\\\d|[2-9])\\\\d{3}\", , , , \"80012345\"], [, , \"(?:40\\\\d\\\\d|900)\\\\d{4}\", , , , \"9001234\", , , [7, 8]], [, , , , , , , , , [-1]], [, , \"70[0-2]\\\\d{5}\", , , , \"70012345\", , , [8]], [, , , , , , , , , [-1]], \"EE\", 372, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[369]|4[3-8]|5(?:[0-2]|5[0-478]|6[45])|7[1-9]\", \"[369]|4[3-8]|5(?:[02]|1(?:[0-8]|95)|5[0-478]|6(?:4[0-4]|5[1-589]))|7[1-9]\"]], [, \"(\\\\d{4})(\\\\d{3,4})\", \"$1 $2\", [\"[45]|8(?:00|[1-4])\", \"[45]|8(?:00[1-9]|[1-4])\"]],\n[, \"(\\\\d{2})(\\\\d{2})(\\\\d{4})\", \"$1 $2 $3\", [\"7\"]], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"80\"]]], , [, , , , , , , , , [-1]], , , [, , \"800[2-9]\\\\d{3}\", , , , , , , [7]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], EG:[, [, , \"[189]\\\\d{8,9}|[24-6]\\\\d{8}|[135]\\\\d{7}\", , , , , , , [8, 9, 10], [6, 7]], [, , \"(?:15\\\\d|57[23])\\\\d{5,6}|(?:13[23]|(?:2[2-4]|3)\\\\d|4(?:0[2-5]|[578][23]|64)|5(?:0[2-7]|5\\\\d)|6[24-689]3|8(?:2[2-57]|4[26]|6[237]|8[2-4])|9(?:2[27]|3[24]|52|6[2356]|7[2-4]))\\\\d{6}\",\n, , , \"234567890\", , , [8, 9], [6, 7]], [, , \"1[0-25]\\\\d{8}\", , , , \"1001234567\", , , [10]], [, , \"800\\\\d{7}\", , , , \"8001234567\", , , [10]], [, , \"900\\\\d{7}\", , , , \"9001234567\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"EG\", 20, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d)(\\\\d{7,8})\", \"$1 $2\", [\"[23]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{6,7})\", \"$1 $2\", [\"1[35]|[4-6]|8[2468]|9[235-7]\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[189]\"], \"0$1\"]], , [, ,\n, , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], EH:[, [, , \"[5-8]\\\\d{8}\", , , , , , , [9]], [, , \"528[89]\\\\d{5}\", , , , \"528812345\"], [, , \"692[12]\\\\d{5}|(?:6(?:[0-7]\\\\d|8[0-247-9]|9[013-9])|7(?:0[06-8]|6[1267]|7[0-27]))\\\\d{6}\", , , , \"650123456\"], [, , \"80\\\\d{7}\", , , , \"801234567\"], [, , \"89\\\\d{7}\", , , , \"891234567\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"5924[0-2]\\\\d{4}\", , , , \"592401234\"], \"EH\", 212, \"00\", \"0\",\n, , \"0\", , , , , , [, , , , , , , , , [-1]], , \"528[89]\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], ER:[, [, , \"[178]\\\\d{6}\", , , , , , , [7], [6]], [, , \"(?:1(?:1[12568]|[24]0|55|6[146])|8\\\\d\\\\d)\\\\d{4}\", , , , \"8370362\", , , , [6]], [, , \"(?:17[1-3]|7\\\\d\\\\d)\\\\d{4}\", , , , \"7123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"ER\", 291, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d)(\\\\d{3})(\\\\d{3})\",\n\"$1 $2 $3\", [\"[178]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], ES:[, [, , \"(?:51|[6-9]\\\\d)\\\\d{7}\", , , , , , , [9]], [, , \"96906(?:0[0-8]|1[1-9]|[2-9]\\\\d)\\\\d\\\\d|9(?:69(?:0[0-57-9]|[1-9]\\\\d)|73(?:[0-8]\\\\d|9[1-9]))\\\\d{4}|(?:8(?:[1356]\\\\d|[28][0-8]|[47][1-9])|9(?:[135]\\\\d|[268][0-8]|4[1-9]|7[124-9]))\\\\d{6}\", , , , \"810123456\"], [, , \"9(?:6906(?:09|10)|7390\\\\d\\\\d)\\\\d\\\\d|(?:6\\\\d|7[1-48])\\\\d{7}\", , , , \"612345678\"], [,\n, \"[89]00\\\\d{6}\", , , , \"800123456\"], [, , \"80[367]\\\\d{6}\", , , , \"803123456\"], [, , \"90[12]\\\\d{6}\", , , , \"901123456\"], [, , \"70\\\\d{7}\", , , , \"701234567\"], [, , , , , , , , , [-1]], \"ES\", 34, \"00\", , , , , , , , [[, \"(\\\\d{4})\", \"$1\", [\"905\"]], [, \"(\\\\d{6})\", \"$1\", [\"[79]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]\"]]], [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[89]00\"]], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\",\n[\"[5-9]\"]]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"51\\\\d{7}\", , , , \"511234567\"], , , [, , , , , , , , , [-1]]], ET:[, [, , \"(?:11|[2-59]\\\\d)\\\\d{7}\", , , , , , , [9], [7]], [, , \"(?:11(?:1(?:1[124]|2[2-57]|3[1-5]|5[5-8]|8[6-8])|2(?:13|3[6-8]|5[89]|7[05-9]|8[2-6])|3(?:2[01]|3[0-289]|4[1289]|7[1-4]|87)|4(?:1[69]|3[2-49]|4[0-3]|6[5-8])|5(?:1[578]|44|5[0-4])|6(?:1[78]|2[69]|39|4[5-7]|5[1-5]|6[0-59]|8[015-8]))|2(?:2(?:11[1-9]|22[0-7]|33\\\\d|44[1467]|66[1-68])|5(?:11[124-6]|33[2-8]|44[1467]|55[14]|66[1-3679]|77[124-79]|880))|3(?:3(?:11[0-46-8]|(?:22|55)[0-6]|33[0134689]|44[04]|66[01467])|4(?:44[0-8]|55[0-69]|66[0-3]|77[1-5]))|4(?:6(?:22[0-24-7]|33[1-5]|44[13-69]|55[14-689]|660|88[1-4])|7(?:(?:11|22)[1-9]|33[13-7]|44[13-6]|55[1-689]))|5(?:7(?:227|55[05]|(?:66|77)[14-8])|8(?:11[149]|22[013-79]|33[0-68]|44[013-8]|550|66[1-5]|77\\\\d)))\\\\d{4}\",\n, , , \"111112345\", , , , [7]], [, , \"9\\\\d{8}\", , , , \"911234567\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"ET\", 251, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[1-59]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], FI:[, [, , \"(?:[124-7]\\\\d|3[0-46-9])\\\\d{8}|[1-9]\\\\d{5,8}|[1-35689]\\\\d{4}\", , , , , , ,\n[5, 6, 7, 8, 9, 10]], [, , \"(?:1[3-79][1-8]|[235689][1-8]\\\\d)\\\\d{2,6}\", , , , \"131234567\", , , [5, 6, 7, 8, 9]], [, , \"(?:4[0-8]|50)\\\\d{4,8}\", , , , \"412345678\", , , [6, 7, 8, 9, 10]], [, , \"800\\\\d{4,6}\", , , , \"800123456\", , , [7, 8, 9]], [, , \"[67]00\\\\d{5,6}\", , , , \"600123456\", , , [8, 9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"FI\", 358, \"00|99(?:[01469]|5(?:[14]1|3[23]|5[59]|77|88|9[09]))\", \"0\", , , \"0\", , \"00\", , [[, \"(\\\\d{5})\", \"$1\", [\"75[12]\"], \"0$1\"],\n[, \"(\\\\d)(\\\\d{4,9})\", \"$1 $2\", [\"[2568][1-8]|3(?:0[1-9]|[1-9])|9\"], \"0$1\"], [, \"(\\\\d{6})\", \"$1\", [\"11\"]], [, \"(\\\\d{3})(\\\\d{3,7})\", \"$1 $2\", [\"(?:[12]0|7)0|[368]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{4,8})\", \"$1 $2\", [\"[12457]\"], \"0$1\"]], [[, \"(\\\\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]0|7)0|[368]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{4,8})\", \"$1 $2\", [\"[12457]\"], \"0$1\"]], [, , , , , , , , , [-1]], 1, \"1[03-79]|[2-9]\", [, , \"20(?:2[023]|9[89])\\\\d{1,6}|60[12]\\\\d{5,6}|(?:606|7(?:1|3\\\\d))\\\\d{7}|(?:[1-3]00|75[03-9])\\\\d{3,7}\"],\n[, , \"(?:10|[23][09])\\\\d{4,8}|60(?:[12]\\\\d{5,6}|6\\\\d{7})|7(?:(?:1|3\\\\d)\\\\d{7}|5[03-9]\\\\d{3,7})|20[2-59]\\\\d\\\\d\", , , , \"10112345\"], , , [, , , , , , , , , [-1]]], FJ:[, [, , \"45\\\\d{5}|(?:0800\\\\d|[235-9])\\\\d{6}\", , , , , , , [7, 11]], [, , \"603\\\\d{4}|(?:3[0-5]|6[25-7]|8[58])\\\\d{5}\", , , , \"3212345\", , , [7]], [, , \"(?:[279]\\\\d|45|5[01568]|8[034679])\\\\d{5}\", , , , \"7012345\", , , [7]], [, , \"0800\\\\d{7}\", , , , \"08001234567\", , , [11]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , ,\n, , , [-1]], [, , , , , , , , , [-1]], \"FJ\", 679, \"0(?:0|52)\", , , , , , \"00\", , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[235-9]|45\"]], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"0\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], FK:[, [, , \"[2-7]\\\\d{4}\", , , , , , , [5]], [, , \"[2-47]\\\\d{4}\", , , , \"31234\"], [, , \"[56]\\\\d{4}\", , , , \"51234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , ,\n, , , , , [-1]], [, , , , , , , , , [-1]], \"FK\", 500, \"00\", , , , , , , , , , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], FM:[, [, , \"[39]\\\\d{6}\", , , , , , , [7]], [, , \"(?:3[2357]0[1-9]|9[2-6]\\\\d\\\\d)\\\\d{3}\", , , , \"3201234\"], [, , \"(?:3[2357]0[1-9]|9[2-7]\\\\d\\\\d)\\\\d{3}\", , , , \"3501234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"FM\", 691,\n\"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[39]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], FO:[, [, , \"(?:[2-8]\\\\d|90)\\\\d{4}\", , , , , , , [6]], [, , \"(?:20|[34]\\\\d|8[19])\\\\d{4}\", , , , \"201234\"], [, , \"(?:[27][1-9]|5\\\\d)\\\\d{4}\", , , , \"211234\"], [, , \"80[257-9]\\\\d{3}\", , , , \"802123\"], [, , \"90(?:[13-5][15-7]|2[125-7]|99)\\\\d\\\\d\", , , , \"901123\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"(?:6[0-36]|88)\\\\d{4}\",\n, , , \"601234\"], \"FO\", 298, \"00\", , , , \"(10(?:01|[12]0|88))\", , , , [[, \"(\\\\d{6})\", \"$1\", [\"[2-9]\"], , \"$CC $1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], FR:[, [, , \"[1-9]\\\\d{8}\", , , , , , , [9]], [, , \"[1-5]\\\\d{8}\", , , , \"123456789\"], [, , \"700\\\\d{6}|(?:6\\\\d|7[3-9])\\\\d{7}\", , , , \"612345678\"], [, , \"80[0-5]\\\\d{6}\", , , , \"801234567\"], [, , \"8[129]\\\\d{7}\", , , , \"891123456\"], [, , \"884\\\\d{6}\", , , , \"884012345\"], [, ,\n, , , , , , , [-1]], [, , \"9\\\\d{8}\", , , , \"912345678\"], \"FR\", 33, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{4})\", \"$1\", [\"10\"]], [, \"(\\\\d{3})(\\\\d{3})\", \"$1 $2\", [\"1\"]], [, \"(\\\\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\"]], [[, \"(\\\\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\"]], [, , , , , , , , , [-1]], , ,\n[, , , , , , , , , [-1]], [, , \"80[6-9]\\\\d{6}\", , , , \"806123456\"], , , [, , , , , , , , , [-1]]], GA:[, [, , \"(?:0\\\\d|[2-7])\\\\d{6}\", , , , , , , [7, 8]], [, , \"01\\\\d{6}\", , , , \"01441234\", , , [8]], [, , \"(?:0[2-7]|[2-7])\\\\d{6}\", , , , \"06031234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"GA\", 241, \"00\", , , , , , , , [[, \"(\\\\d)(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[2-7]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\n\"$1 $2 $3 $4\", [\"0\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GB:[, [, , \"[1-357-9]\\\\d{9}|[18]\\\\d{8}|8\\\\d{6}\", , , , , , , [7, 9, 10], [4, 5, 6, 8]], [, , \"(?:1(?:(?:1(?:3[0-58]|4[0-5]|5[0-26-9]|6[0-4]|[78][0-49])|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[024-9]|2[3-9]|3[3-79]|4[1-689]|[58][02-9]|6[0-47-9]|7[013-9]|9\\\\d)\\\\d\\\\d|1(?:[0-7]\\\\d\\\\d|80[04589])))|2(?:0[01378]|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]))|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|7(?:(?:26(?:6[13-9]|7[0-7])|442\\\\d|50(?:2[0-3]|[3-68]2|76))\\\\d|6888[2-46-8]))\\\\d\\\\d\",\n, , , \"1212345678\", , , [9, 10], [4, 5, 6, 7, 8]], [, , \"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}\", , , , \"7400123456\", , , [10]], [, , \"80[08]\\\\d{7}|800\\\\d{6}|8001111\", , , , \"8001234567\"], [, , \"(?:8(?:4[2-5]|7[0-3])|9(?:[01]\\\\d|8[2-49]))\\\\d{7}|845464\\\\d\", , , , \"9012345678\", , , [7, 10]], [, , , , , , , , , [-1]], [, ,\n\"70\\\\d{8}\", , , , \"7012345678\", , , [10]], [, , \"56\\\\d{8}\", , , , \"5612345678\", , , [10]], \"GB\", 44, \"00\", \"0\", \" x\", , \"0\", , , , [[, \"(\\\\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)\"],\n\"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[024-9])\", \"[25]|7(?:0|6(?:[04-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\"]], , [, , \"76(?:0[0-2]|2[356]|4[0134]|5[49]|6[0-369]|77|81|9[39])\\\\d{6}\", , , , \"7640123456\", , , [10]], 1, , [, , , , , , , , , [-1]], [, , \"(?:3[0347]|55)\\\\d{8}\", , , , \"5512345678\", , , [10]], , , [, ,\n, , , , , , , [-1]]], GD:[, [, , \"(?:473|[58]\\\\d\\\\d|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"473(?:2(?:3[0-2]|69)|3(?:2[89]|86)|4(?:[06]8|3[5-9]|4[0-49]|5[5-79]|73|90)|63[68]|7(?:58|84)|800|938)\\\\d{4}\", , , , \"4732691234\", , , , [7]], [, , \"473(?:4(?:0[2-79]|1[04-9]|2[0-5]|58)|5(?:2[01]|3[3-8])|901)\\\\d{4}\", , , , \"4734031234\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\",\n, , , \"5002345678\"], [, , , , , , , , , [-1]], \"GD\", 1, \"011\", \"1\", , , \"1|([2-9]\\\\d{6})$\", \"473$1\", , , , , [, , , , , , , , , [-1]], , \"473\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GE:[, [, , \"(?:[3-57]\\\\d\\\\d|800)\\\\d{6}\", , , , , , , [9], [6, 7]], [, , \"(?:3(?:[256]\\\\d|4[124-9]|7[0-4])|4(?:1\\\\d|2[2-7]|3[1-79]|4[2-8]|7[239]|9[1-7]))\\\\d{6}\", , , , \"322123456\", , , , [6, 7]], [, , \"5(?:0(?:0[05]|55)\\\\d|1111|2222|3333|5200|75(?:00|7[78])|8(?:58[89]|888))\\\\d{4}|(?:5(?:[14]4|5[0157-9]|68|7[0147-9]|9[1-35-9])|790)\\\\d{6}\",\n, , , \"555123456\"], [, , \"800\\\\d{6}\", , , , \"800123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"706\\\\d{6}\", , , , \"706123456\"], \"GE\", 995, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\"]], , [, , , , , , , , ,\n[-1]], , , [, , \"706\\\\d{6}\"], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GF:[, [, , \"[56]94\\\\d{6}\", , , , , , , [9]], [, , \"594(?:[023]\\\\d|1[01]|4[03-9]|5[6-9]|6[0-3]|80|9[014])\\\\d{4}\", , , , \"594101234\"], [, , \"694(?:[0-249]\\\\d|3[0-48])\\\\d{4}\", , , , \"694201234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"GF\", 594, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\",\n[\"[56]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GG:[, [, , \"(?:1481|[357-9]\\\\d{3})\\\\d{6}|8\\\\d{6}(?:\\\\d{2})?\", , , , , , , [7, 9, 10], [6]], [, , \"1481[25-9]\\\\d{5}\", , , , \"1481256789\", , , [10], [6]], [, , \"7(?:(?:781|839)\\\\d|911[17])\\\\d{5}\", , , , \"7781123456\", , , [10]], [, , \"80[08]\\\\d{7}|800\\\\d{6}|8001111\", , , , \"8001234567\"], [, , \"(?:8(?:4[2-5]|7[0-3])|9(?:[01]\\\\d|8[0-3]))\\\\d{7}|845464\\\\d\", , , , \"9012345678\",\n, , [7, 10]], [, , , , , , , , , [-1]], [, , \"70\\\\d{8}\", , , , \"7012345678\", , , [10]], [, , \"56\\\\d{8}\", , , , \"5612345678\", , , [10]], \"GG\", 44, \"00\", \"0\", , , \"0|([25-9]\\\\d{5})$\", \"1481$1\", , , , , [, , \"76(?:0[0-2]|2[356]|4[0134]|5[49]|6[0-369]|77|81|9[39])\\\\d{6}\", , , , \"7640123456\", , , [10]], , , [, , , , , , , , , [-1]], [, , \"(?:3[0347]|55)\\\\d{8}\", , , , \"5512345678\", , , [10]], , , [, , , , , , , , , [-1]]], GH:[, [, , \"(?:[235]\\\\d{3}|800)\\\\d{5}\", , , , , , , [8, 9], [7]], [, , \"3(?:[167]2[0-6]|22[0-5]|32[0-3]|4(?:2[013-9]|3[01])|52[0-7]|82[0-2])\\\\d{5}|3(?:[0-8]8|9[28])0\\\\d{5}|3(?:0[237]|[1-9]7)\\\\d{6}\",\n, , , \"302345678\", , , [9], [7]], [, , \"56[01]\\\\d{6}|(?:2[0346-8]|5[0457])\\\\d{7}\", , , , \"231234567\", , , [9]], [, , \"800\\\\d{5}\", , , , \"80012345\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"GH\", 233, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[237]|80\"]], [, \"(\\\\d{3})(\\\\d{5})\", \"$1 $2\", [\"8\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[235]\"], \"0$1\"]], [[, \"(\\\\d{3})(\\\\d{5})\", \"$1 $2\", [\"8\"], \"0$1\"],\n[, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[235]\"], \"0$1\"]], [, , , , , , , , , [-1]], , , [, , \"800\\\\d{5}\", , , , , , , [8]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GI:[, [, , \"(?:[25]\\\\d\\\\d|629)\\\\d{5}\", , , , , , , [8]], [, , \"2190[0-2]\\\\d{3}|2(?:00\\\\d|16[24-7]|2(?:2[2457]|50))\\\\d{4}\", , , , \"20012345\"], [, , \"(?:5[46-8]\\\\d|629)\\\\d{5}\", , , , \"57123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , ,\n, [-1]], \"GI\", 350, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{5})\", \"$1 $2\", [\"2\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GL:[, [, , \"(?:19|[2-689]\\\\d)\\\\d{4}\", , , , , , , [6]], [, , \"(?:19|3[1-7]|6[14689]|8[14-79]|9\\\\d)\\\\d{4}\", , , , \"321000\"], [, , \"(?:[25][1-9]|4[2-9])\\\\d{4}\", , , , \"221234\"], [, , \"80\\\\d{4}\", , , , \"801234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"3[89]\\\\d{4}\",\n, , , \"381234\"], \"GL\", 299, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3\", [\"19|[2-689]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GM:[, [, , \"[2-9]\\\\d{6}\", , , , , , , [7]], [, , \"(?:4(?:[23]\\\\d\\\\d|4(?:1[024679]|[6-9]\\\\d))|5(?:54[0-7]|6[67]\\\\d|7(?:1[04]|2[035]|3[58]|48))|8\\\\d{3})\\\\d{3}\", , , , \"5661234\"], [, , \"(?:[23679]\\\\d|5[0-3])\\\\d{5}\", , , , \"3012345\"], [, , , , , , , , , [-1]], [, , , , , , , , ,\n[-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"GM\", 220, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[2-9]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GN:[, [, , \"(?:30|6\\\\d\\\\d|722)\\\\d{6}\", , , , , , , [8, 9]], [, , \"30(?:24|3[12]|4[1-35-7]|5[13]|6[189]|[78]1|9[1478])\\\\d{4}\", , , , \"30241234\", , , [8]], [, , \"6[02356]\\\\d{7}\", , , , \"601123456\", , , [9]], [, , , , , , , , ,\n[-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"722\\\\d{6}\", , , , \"722123456\", , , [9]], \"GN\", 224, \"00\", , , , , , , , [[, \"(\\\\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]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GP:[, [, , \"(?:590|69\\\\d)\\\\d{6}\", , , , , , , [9]], [, , \"590(?:0[1-68]|1[0-2]|2[0-68]|3[1289]|4[0-24-9]|5[3-579]|6[0189]|7[08]|8[0-689]|9\\\\d)\\\\d{4}\",\n, , , \"590201234\"], [, , \"69(?:0\\\\d\\\\d|1(?:2[29]|3[0-5]))\\\\d{4}\", , , , \"690001234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"GP\", 590, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[56]\"], \"0$1\"]], , [, , , , , , , , , [-1]], 1, , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GQ:[, [, , \"222\\\\d{6}|(?:3\\\\d|55|[89]0)\\\\d{7}\", , , , , ,\n, [9]], [, , \"33[0-24-9]\\\\d[46]\\\\d{4}|3(?:33|5\\\\d)\\\\d[7-9]\\\\d{4}\", , , , \"333091234\"], [, , \"(?:222|55[015])\\\\d{6}\", , , , \"222123456\"], [, , \"80\\\\d[1-9]\\\\d{5}\", , , , \"800123456\"], [, , \"90\\\\d[1-9]\\\\d{5}\", , , , \"900123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"GQ\", 240, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[235]\"]], [, \"(\\\\d{3})(\\\\d{6})\", \"$1 $2\", [\"[89]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , ,\n, , , , , , [-1]], , , [, , , , , , , , , [-1]]], GR:[, [, , \"(?:[268]\\\\d|[79]0)\\\\d{8}\", , , , , , , [10]], [, , \"2(?:1\\\\d\\\\d|2(?:2[1-46-9]|[36][1-8]|4[1-7]|5[1-4]|7[1-5]|[89][1-9])|3(?:1\\\\d|2[1-57]|[35][1-3]|4[13]|7[1-7]|8[124-6]|9[1-79])|4(?:1\\\\d|2[1-8]|3[1-4]|4[13-5]|6[1-578]|9[1-5])|5(?:1\\\\d|[29][1-4]|3[1-5]|4[124]|5[1-6])|6(?:1\\\\d|[269][1-6]|3[1245]|4[1-7]|5[13-9]|7[14]|8[1-5])|7(?:1\\\\d|2[1-5]|3[1-6]|4[1-7]|5[1-57]|6[135]|9[125-7])|8(?:1\\\\d|2[1-5]|[34][1-4]|9[1-57]))\\\\d{6}\", , , , \"2123456789\"],\n[, , \"6(?:8[57-9]|9\\\\d)\\\\d{7}\", , , , \"6912345678\"], [, , \"800\\\\d{7}\", , , , \"8001234567\"], [, , \"90[19]\\\\d{7}\", , , , \"9091234567\"], [, , \"8(?:0[16]|12|25)\\\\d{7}\", , , , \"8011234567\"], [, , \"70(?:0[3-8]0|707)\\\\d{5}\", , , , \"7003000123\"], [, , , , , , , , , [-1]], \"GR\", 30, \"00\", , , , , , , , [[, \"(\\\\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])\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[2689]\"]]],\n, [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GT:[, [, , \"(?:1\\\\d{3}|[2-7])\\\\d{7}\", , , , , , , [8, 11]], [, , \"[267][2-9]\\\\d{6}\", , , , \"22456789\", , , [8]], [, , \"[3-5]\\\\d{7}\", , , , \"51234567\", , , [8]], [, , \"18[01]\\\\d{8}\", , , , \"18001112222\", , , [11]], [, , \"19\\\\d{9}\", , , , \"19001112222\", , , [11]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"GT\", 502, \"00\", , , , , , , , [[, \"(\\\\d{4})(\\\\d{4})\",\n\"$1 $2\", [\"[2-7]\"]], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"1\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GU:[, [, , \"(?:[58]\\\\d\\\\d|671|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"671(?:3(?:00|3[39]|4[349]|55|6[26])|4(?:00|56|7[1-9]|8[0236-9])|5(?:55|6[2-5]|88)|6(?:3[2-578]|4[24-9]|5[34]|78|8[235-9])|7(?:[0479]7|2[0167]|3[45]|8[7-9])|8(?:[2-57-9]8|6[48])|9(?:2[29]|6[79]|7[1279]|8[7-9]|9[78]))\\\\d{4}\", , , , \"6713001234\",\n, , , [7]], [, , \"671(?:3(?:00|3[39]|4[349]|55|6[26])|4(?:00|56|7[1-9]|8[0236-9])|5(?:55|6[2-5]|88)|6(?:3[2-578]|4[24-9]|5[34]|78|8[235-9])|7(?:[0479]7|2[0167]|3[45]|8[7-9])|8(?:[2-57-9]8|6[48])|9(?:2[29]|6[79]|7[1279]|8[7-9]|9[78]))\\\\d{4}\", , , , \"6713001234\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]],\n\"GU\", 1, \"011\", \"1\", , , \"1|([3-9]\\\\d{6})$\", \"671$1\", , 1, , , [, , , , , , , , , [-1]], , \"671\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GW:[, [, , \"[49]\\\\d{8}|4\\\\d{6}\", , , , , , , [7, 9]], [, , \"443\\\\d{6}\", , , , \"443201234\", , , [9]], [, , \"9(?:5\\\\d|6[569]|77)\\\\d{6}\", , , , \"955012345\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"40\\\\d{5}\", , , , \"4012345\", , , [7]], \"GW\", 245,\n\"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"40\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[49]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], GY:[, [, , \"(?:862\\\\d|9008)\\\\d{3}|(?:[2-46]\\\\d|77)\\\\d{5}\", , , , , , , [7]], [, , \"(?:2(?:1[6-9]|2[0-35-9]|3[1-4]|5[3-9]|6\\\\d|7[0-24-79])|3(?:2[25-9]|3\\\\d)|4(?:4[0-24]|5[56])|77[1-57])\\\\d{4}\", , , , \"2201234\"], [, , \"6\\\\d{6}\", , , , \"6091234\"], [, , \"(?:289|862)\\\\d{4}\",\n, , , \"2891234\"], [, , \"9008\\\\d{3}\", , , , \"9008123\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"GY\", 592, \"001\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[2-46-9]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], HK:[, [, , \"8[0-46-9]\\\\d{6,7}|9\\\\d{4}(?:\\\\d(?:\\\\d(?:\\\\d{4})?)?)?|(?:[235-79]\\\\d|46)\\\\d{6}\", , , , , , , [5, 6, 7, 8, 9, 11]], [, , \"(?:384[0-24]|58(?:0[1-8]|1[2-9]))\\\\d{4}|(?:2(?:[13-8]\\\\d|2[013-9]|9[0-24-9])|3(?:[1569][0-24-9]|4[0-246-9]|7[0-24-69]|89))\\\\d{5}\",\n, , , \"21234567\", , , [8]], [, , \"(?:46(?:0[0-6]|1[0-2]|4[0-57-9])|5730|(?:626|848)[01]|707[1-5]|929[03-9])\\\\d{4}|(?:5(?:[1-59][0-46-9]|6[0-4689]|7[0-2469])|6(?:0[1-9]|[13-59]\\\\d|[268][0-57-9]|7[0-79])|9(?:0[1-9]|1[02-9]|[2358][0-8]|[467]\\\\d))\\\\d{5}\", , , , \"51234567\", , , [8]], [, , \"800\\\\d{6}\", , , , \"800123456\", , , [9]], [, , \"900(?:[0-24-9]\\\\d{7}|3\\\\d{1,4})\", , , , \"90012345678\", , , [5, 6, 7, 8, 11]], [, , , , , , , , , [-1]], [, , \"8(?:1[0-4679]\\\\d|2(?:[0-36]\\\\d|7[0-4])|3(?:[034]\\\\d|2[09]|70))\\\\d{4}\",\n, , , \"81123456\", , , [8]], [, , , , , , , , , [-1]], \"HK\", 852, \"00(?:30|5[09]|[126-9]?)\", , , , , , \"00\", , [[, \"(\\\\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\"]]], , [, , \"7(?:1(?:0[0-38]|1[0-3679]|3[013]|69|9[136])|2(?:[02389]\\\\d|1[18]|7[27-9])|3(?:[0-38]\\\\d|7[0-369]|9[2357-9])|47\\\\d|5(?:[178]\\\\d|5[0-5])|6(?:0[0-7]|2[236-9]|[35]\\\\d)|7(?:[27]\\\\d|8[7-9])|8(?:[23689]\\\\d|7[1-9])|9(?:[025]\\\\d|6[0-246-8]|7[0-36-9]|8[238]))\\\\d{4}\",\n, , , \"71123456\", , , [8]], , , [, , , , , , , , , [-1]], [, , \"30(?:0[1-9]|[15-7]\\\\d|2[047]|89)\\\\d{4}\", , , , \"30161234\", , , [8]], , , [, , , , , , , , , [-1]]], HN:[, [, , \"8\\\\d{10}|[237-9]\\\\d{7}\", , , , , , , [8, 11]], [, , \"2(?:2(?:0[019]|1[1-36]|[23]\\\\d|4[04-6]|5[57]|6[24]|7[0135689]|8[01346-9]|9[0-2])|4(?:07|2[3-59]|3[13-689]|4[0-68]|5[1-35])|5(?:0[78]|16|4[03-5]|5\\\\d|6[14-6]|74|80)|6(?:[056]\\\\d|17|2[07]|3[04]|4[0-378]|[78][0-8]|9[01])|7(?:6[46-9]|7[02-9]|8[034]|91)|8(?:79|8[0-357-9]|9[1-57-9]))\\\\d{4}\",\n, , , \"22123456\", , , [8]], [, , \"[37-9]\\\\d{7}\", , , , \"91234567\", , , [8]], [, , \"8002\\\\d{7}\", , , , \"80021234567\", , , [11]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"HN\", 504, \"00\", , , , , , , , [[, \"(\\\\d{4})(\\\\d{4})\", \"$1-$2\", [\"[237-9]\"]], [, \"(\\\\d{3})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"8\"]]], [[, \"(\\\\d{4})(\\\\d{4})\", \"$1-$2\", [\"[237-9]\"]]], [, , , , , , , , , [-1]], , , [, , \"8002\\\\d{7}\", , , , , , , [11]], [, , , , , , , , , [-1]],\n, , [, , , , , , , , , [-1]]], HR:[, [, , \"(?:[24-69]\\\\d|3[0-79])\\\\d{7}|80\\\\d{5,7}|[1-79]\\\\d{7}|6\\\\d{5,6}\", , , , , , , [6, 7, 8, 9]], [, , \"1\\\\d{7}|(?:2[0-3]|3[1-5]|4[02-47-9]|5[1-3])\\\\d{6,7}\", , , , \"12345678\", , , [8, 9], [6, 7]], [, , \"9(?:751\\\\d{5}|8\\\\d{6,7})|9(?:01|[1259]\\\\d|7[0679])\\\\d{6}\", , , , \"921234567\", , , [8, 9]], [, , \"80[01]\\\\d{4,6}\", , , , \"800123456\", , , [7, 8, 9]], [, , \"6[01459]\\\\d{6}|6[01]\\\\d{4,5}\", , , , \"611234\", , , [6, 7, 8]], [, , , , , , , , , [-1]], [, , \"7[45]\\\\d{6}\",\n, , , \"74123456\", , , [8]], [, , , , , , , , , [-1]], \"HR\", 385, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\",\n[\"8\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"62\\\\d{6,7}|72\\\\d{6}\", , , , \"62123456\", , , [8, 9]], , , [, , , , , , , , , [-1]]], HT:[, [, , \"[2-489]\\\\d{7}\", , , , , , , [8]], [, , \"2(?:2\\\\d|5[1-5]|81|9[149])\\\\d{5}\", , , , \"22453300\"], [, , \"[34]\\\\d{7}\", , , , \"34101234\"], [, , \"8\\\\d{7}\", , , , \"80012345\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"9(?:[67][0-4]|8[0-3589]|9\\\\d)\\\\d{5}\", , , , \"98901234\"], \"HT\", 509, \"00\",\n, , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{4})\", \"$1 $2 $3\", [\"[2-489]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], HU:[, [, , \"[2357]\\\\d{8}|[1-9]\\\\d{7}\", , , , , , , [8, 9], [6, 7]], [, , \"(?:1\\\\d|[27][2-9]|3[2-7]|4[24-9]|5[2-79]|6[23689]|8[2-57-9]|9[2-69])\\\\d{6}\", , , , \"12345678\", , , [8], [6, 7]], [, , \"(?:[257]0|3[01])\\\\d{7}\", , , , \"201234567\", , , [9]], [, , \"[48]0\\\\d{6}\", , , , \"80123456\", , , [8]], [, , \"9[01]\\\\d{6}\",\n, , , \"90123456\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"21\\\\d{7}\", , , , \"211234567\", , , [9]], \"HU\", 36, \"00\", \"06\", , , \"06\", , , , [[, \"(\\\\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-57-9]\"], \"06 $1\"]], , [, , , , , , , , , [-1]], , , [, , \"[48]0\\\\d{6}\", , , , , , , [8]], [, , \"38\\\\d{7}\", , , , \"381234567\",\n, , [9]], , , [, , , , , , , , , [-1]]], ID:[, [, , \"(?:(?:007803|8\\\\d{4})\\\\d|[1-36])\\\\d{6}|[1-9]\\\\d{8,10}|[2-9]\\\\d{7}\", , , , , , , [7, 8, 9, 10, 11, 12, 13], [5, 6]], [, , \"2[124]\\\\d{7,8}|619\\\\d{8}|2(?:1(?:14|500)|2\\\\d{3})\\\\d{3}|61\\\\d{5,8}|(?:2(?:[35][1-4]|6[0-8]|7[1-6]|8\\\\d|9[1-8])|3(?:1|[25][1-8]|3[1-68]|4[1-3]|6[1-3568]|7[0-469]|8\\\\d)|4(?:0[1-589]|1[01347-9]|2[0-36-8]|3[0-24-68]|43|5[1-378]|6[1-5]|7[134]|8[1245])|5(?:1[1-35-9]|2[25-8]|3[124-9]|4[1-3589]|5[1-46]|6[1-8])|6(?:[25]\\\\d|3[1-69]|4[1-6])|7(?:02|[125][1-9]|[36]\\\\d|4[1-8]|7[0-36-9])|9(?:0[12]|1[013-8]|2[0-479]|5[125-8]|6[23679]|7[159]|8[01346]))\\\\d{5,8}\",\n, , , \"218350123\", , , [7, 8, 9, 10, 11], [5, 6]], [, , \"8[1-35-9]\\\\d{7,10}\", , , , \"812345678\", , , [9, 10, 11, 12]], [, , \"007803\\\\d{7}|(?:177\\\\d|800)\\\\d{5,7}\", , , , \"8001234567\", , , [8, 9, 10, 11, 13]], [, , \"809\\\\d{7}\", , , , \"8091234567\", , , [10]], [, , \"804\\\\d{7}\", , , , \"8041234567\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"ID\", 62, \"00[189]\", \"0\", , , \"0\", , , , [[, \"(\\\\d)(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"15\"]], [, \"(\\\\d{2})(\\\\d{5,9})\", \"$1 $2\", [\"2[124]|[36]1\"],\n\"(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\"], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3 $4\", [\"0\"]]], [[, \"(\\\\d)(\\\\d{3})(\\\\d{3})\",\n\"$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\"]], [, , ,\n, , , , , , [-1]], , , [, , \"(?:007803\\\\d|8071)\\\\d{6}\", , , , , , , [10, 13]], [, , \"(?:1500|8071\\\\d{3})\\\\d{3}\", , , , \"8071123456\", , , [7, 10]], , , [, , , , , , , , , [-1]]], IE:[, [, , \"(?:1\\\\d|[2569])\\\\d{6,8}|4\\\\d{6,9}|7\\\\d{8}|8\\\\d{8,9}\", , , , , , , [7, 8, 9, 10], [5, 6]], [, , \"(?:1\\\\d|21)\\\\d{6,7}|(?:2[24-9]|4(?:0[24]|5\\\\d|7)|5(?:0[45]|1\\\\d|8)|6(?:1\\\\d|[237-9])|9(?:1\\\\d|[35-9]))\\\\d{5}|(?:23|4(?:[1-469]|8[0-46-9])|5[23679]|6[4-6]|7[14]|9[04])\\\\d{7}\", , , , \"2212345\", , , , [5, 6]], [, , \"8(?:22|[35-9]\\\\d)\\\\d{6}\",\n, , , \"850123456\", , , [9]], [, , \"1800\\\\d{6}\", , , , \"1800123456\", , , [10]], [, , \"15(?:1[2-8]|[2-8]0|9[089])\\\\d{6}\", , , , \"1520123456\", , , [10]], [, , \"18[59]0\\\\d{6}\", , , , \"1850123456\", , , [10]], [, , \"700\\\\d{6}\", , , , \"700123456\", , , [9]], [, , \"76\\\\d{7}\", , , , \"761234567\", , , [9]], \"IE\", 353, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\",\n[\"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)(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3 $4\", [\"8\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"4\"], \"(0$1)\"]], , [, , , , , , , , , [-1]], , , [, , \"18[59]0\\\\d{6}\",\n, , , , , , [10]], [, , \"818\\\\d{6}\", , , , \"818123456\", , , [9]], , , [, , \"8[35-9]5\\\\d{7}\", , , , \"8551234567\", , , [10]]], IL:[, [, , \"1\\\\d{6}(?:\\\\d{3,5})?|[57]\\\\d{8}|[1-489]\\\\d{7}\", , , , , , , [7, 8, 9, 10, 11, 12]], [, , \"153\\\\d{8,9}|[2-489]\\\\d{7}\", , , , \"21234567\", , , [8, 11, 12], [7]], [, , \"5(?:(?:[0-389][2-9]|4[1-9]|6\\\\d)\\\\d|5(?:01|2[2-6]|3[23]|4[45]|5[05689]|6[6-8]|7[0-267]|8[7-9]|9[1-9]))\\\\d{5}\", , , , \"502345678\", , , [9]], [, , \"1(?:255|80[019]\\\\d{3})\\\\d{3}\", , , , \"1800123456\", ,\n, [7, 10]], [, , \"1212\\\\d{4}|1(?:200|9(?:0[01]|19))\\\\d{6}\", , , , \"1919123456\", , , [8, 10]], [, , \"1700\\\\d{6}\", , , , \"1700123456\", , , [10]], [, , , , , , , , , [-1]], [, , \"78(?:33|55|77|81)\\\\d{5}|7(?:18|2[23]|3[237]|47|6[58]|7\\\\d|82|9[235-9])\\\\d{6}\", , , , \"771234567\", , , [9]], \"IL\", 972, \"0(?:0|1[2-9])\", \"0\", , , \"0\", , , , [[, \"(\\\\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})\",\n\"$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\"]]], , [, , , , , , , , , [-1]], , , [, , \"1700\\\\d{6}\", , , , , , , [10]], [, , \"1599\\\\d{6}\", , , , \"1599123456\", , , [10]], , , [, , \"151\\\\d{8,9}\", , , , \"15112340000\", , , [11, 12]]], IM:[, [, , \"1624\\\\d{6}|(?:[3578]\\\\d|90)\\\\d{8}\", , , , , , , [10],\n[6]], [, , \"1624[5-8]\\\\d{5}\", , , , \"1624756789\", , , , [6]], [, , \"76245[06]\\\\d{4}|7(?:4576|[59]24\\\\d|624[0-4689])\\\\d{5}\", , , , \"7924123456\"], [, , \"808162\\\\d{4}\", , , , \"8081624567\"], [, , \"8(?:440[49]06|72299\\\\d)\\\\d{3}|(?:8(?:45|70)|90[0167])624\\\\d{4}\", , , , \"9016247890\"], [, , , , , , , , , [-1]], [, , \"70\\\\d{8}\", , , , \"7012345678\"], [, , \"56\\\\d{8}\", , , , \"5612345678\"], \"IM\", 44, \"00\", \"0\", , , \"0|([5-8]\\\\d{5})$\", \"1624$1\", , , , , [, , , , , , , , , [-1]], , \"74576|(?:16|7[56])24\", [, ,\n, , , , , , , [-1]], [, , \"3440[49]06\\\\d{3}|(?:3(?:08162|3\\\\d{4}|45624|7(?:0624|2299))|55\\\\d{4})\\\\d{4}\", , , , \"5512345678\"], , , [, , , , , , , , , [-1]]], IN:[, [, , \"(?:00800|[2-9]\\\\d\\\\d)\\\\d{7}|1\\\\d{7,12}\", , , , , , , [8, 9, 10, 11, 12, 13], [6, 7]], [, , \"782[0-6][2-7]\\\\d{5}|(?:170[24]|2(?:80[13468]|90\\\\d)|380\\\\d|4(?:20[24]|72[2-8])|552[1-7])\\\\d{6}|(?:342|674|788)(?:[0189][2-7]|[2-7]\\\\d)\\\\d{5}|(?:11|2[02]|33|4[04]|79|80)[2-7]\\\\d{7}|(?:1(?:2[0-249]|3[0-25]|4[145]|[59][14]|6[014]|7[1257]|8[01346])|2(?:1[257]|3[013]|4[01]|5[0137]|6[0158]|78|8[1568]|9[14])|3(?:26|4[13]|5[34]|6[01489]|7[02-46]|8[159])|4(?:1[36]|2[1-47]|3[15]|5[12]|6[0-26-9]|7[014-9]|8[013-57]|9[014-7])|5(?:1[025]|22|[36][25]|4[28]|[578]1|9[15])|6(?:12|[2-47]1|5[17]|6[13]|80)|7(?:12|2[14]|3[134]|4[47]|5[15]|[67]1)|8(?:16|2[014]|3[126]|6[136]|7[078]|8[34]|91))[2-7]\\\\d{6}|(?:1(?:2[35-8]|3[346-9]|4[236-9]|[59][0235-9]|6[235-9]|7[34689]|8[257-9])|2(?:1[134689]|3[24-8]|4[2-8]|5[25689]|6[2-4679]|7[13-79]|8[2-479]|9[235-9])|3(?:01|1[79]|2[1-5]|4[5-8]|5[125689]|6[235-7]|7[157-9]|8[2-46-8])|4(?:1[14578]|2[5689]|3[2-467]|5[4-7]|6[35]|73|8[2689]|9[2389])|5(?:[16][146-9]|2[14-8]|3[1346]|4[14-69]|5[46]|7[2-4]|8[2-8]|9[246])|6(?:1[1358]|2[2457]|3[2-4]|4[235-7]|5[2-689]|6[24578]|7[235689]|8[1-6])|7(?:1[013-9]|2[0235-9]|3[2679]|4[1-35689]|5[2-46-9]|[67][02-9]|8[013-7]|9[0189])|8(?:1[1357-9]|2[235-8]|3[03-57-9]|4[0-24-9]|5\\\\d|6[2457-9]|7[1-6]|8[1256]|9[2-4]))\\\\d[2-7]\\\\d{5}\",\n, , , \"7410410123\", , , [10], [6, 7, 8]], [, , \"(?:6(?:1279|350[0-6])|7(?:3(?:1(?:11|7[02-8])|411)|4[47](?:11|7[02-8])|5111|700[02-9]|88(?:11|7[02-9])|9(?:313|79[07-9]))|8(?:079[04-9]|(?:16|2[014]|3[126]|6[136]|7[78]|8[34]|91)7[02-8]))\\\\d{5}|7(?:28[6-8]|3(?:2[0-49]|9[2-5])|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])[089]\\\\d{5}|(?:6(?:0(?:0[0-3569]|26|33)|2(?:[06]\\\\d|3[02589]|8[0-479]|9[0-79])|3(?:0[0-79]|5[1-9]|6[0-4679]|7[0-24-9]|[89]\\\\d)|9(?:0[019]|13))|7(?:0\\\\d\\\\d|19[0-5]|2(?:[0235-79]\\\\d|[14][017-9]|8[0-59])|3(?:[05-8]\\\\d|1[089]|2[5-8]|3[017-9]|4[07-9]|9[016-9])|4(?:0\\\\d|1[015-9]|[29][89]|39|[47][089]|8[389])|5(?:[0346-8]\\\\d|1[07-9]|2[04-9]|5[017-9]|9[7-9])|6(?:0[0-47]|1[0-257-9]|2[0-4]|3[19]|5[4589]|[6-9]\\\\d)|7(?:0[289]|[1-9]\\\\d)|8(?:[0-79]\\\\d|8[089])|9(?:[089]\\\\d|7[02-8]))|8(?:0(?:[01589]\\\\d|6[67]|7[02-8])|1(?:[0-57-9]\\\\d|6[089])|2(?:[014][089]|[235-9]\\\\d)|3(?:[03-57-9]\\\\d|[126][089])|[45]\\\\d\\\\d|6(?:[02457-9]\\\\d|[136][089])|7(?:0[07-9]|[1-69]\\\\d|[78][089])|8(?:[0-25-9]\\\\d|3[089]|4[0489])|9(?:[02-9]\\\\d|1[0289]))|9\\\\d{3})\\\\d{6}\",\n, , , \"8123456789\", , , [10]], [, , \"00800\\\\d{7}|1(?:600\\\\d{6}|80(?:0\\\\d{4,9}|3\\\\d{9}))\", , , , \"1800123456\"], [, , \"186[12]\\\\d{9}\", , , , \"1861123456789\", , , [13]], [, , \"1860\\\\d{7}\", , , , \"18603451234\", , , [11]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"IN\", 91, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{7})\", \"$1\", [\"575\"]], [, \"(\\\\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)\"], , , 1], [, \"(\\\\d{4})(\\\\d{4,5})\",\n\"$1 $2\", [\"180\", \"1800\"], , , 1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"140\"], , , 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]\",\n\"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(?:[2-4]1|5[17]|6[13]|7[14]|80)|7(?:12|(?: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|(?:55|61)2|7(?: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])|[2-4]1|5[17]|6[13]|7[14]|80)|7(?:12|(?: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]|(?:1(?:29|60|8[06])|261|552|788[01])[2-7]|(?:74[47]|8(?:16|2[014]|3[126]|6[136]|7[78]|83))(?:[2-6]|7[19])\"],\n\"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-8])|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-8])|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(?:1[1358]|2(?:[2457]|84|95)|3(?:[2-4]|55)|[4-8])|7(?:1(?:[013-8]|9[6-9])|3179)|807(?:1|9[1-3])|(?:1552|7(?: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]\"],\n\"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)\"], , , 1], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})(\\\\d{3})\", \"$1 $2 $3 $4\", [\"0\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3 $4\", [\"18\"], , , 1]], [[, \"(\\\\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)\"], , , 1], [, \"(\\\\d{4})(\\\\d{4,5})\", \"$1 $2\", [\"180\", \"1800\"],\n, , 1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"140\"], , , 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]\",\n\"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(?:[2-4]1|5[17]|6[13]|7[14]|80)|7(?:12|(?: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|(?:55|61)2|7(?: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])|[2-4]1|5[17]|6[13]|7[14]|80)|7(?:12|(?: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]|(?:1(?:29|60|8[06])|261|552|788[01])[2-7]|(?:74[47]|8(?:16|2[014]|3[126]|6[136]|7[78]|83))(?:[2-6]|7[19])\"],\n\"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-8])|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-8])|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(?:1[1358]|2(?:[2457]|84|95)|3(?:[2-4]|55)|[4-8])|7(?:1(?:[013-8]|9[6-9])|3179)|807(?:1|9[1-3])|(?:1552|7(?: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]\"],\n\"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)\"], , , 1], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3 $4\", [\"18\"], , , 1]], [, , , , , , , , , [-1]], , , [, , \"1(?:600\\\\d{6}|800\\\\d{4,9})|(?:00800|18(?:03\\\\d\\\\d|6(?:0|[12]\\\\d\\\\d)))\\\\d{7}\"], [, , \"140\\\\d{7}\", , , , \"1409305260\", , , [10]], , , [, , , , , , , , , [-1]]], IO:[, [, , \"3\\\\d{6}\", , , , , , , [7]], [, , \"37\\\\d{5}\", , , , \"3709100\"], [,\n, \"38\\\\d{5}\", , , , \"3801234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"IO\", 246, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"3\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], IQ:[, [, , \"(?:1|7\\\\d\\\\d)\\\\d{7}|[2-6]\\\\d{7,8}\", , , , , , , [8, 9, 10], [6, 7]], [, , \"1\\\\d{7}|(?:2[13-5]|3[02367]|4[023]|5[03]|6[026])\\\\d{6,7}\", , , ,\n\"12345678\", , , [8, 9], [6, 7]], [, , \"7[3-9]\\\\d{8}\", , , , \"7912345678\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"IQ\", 964, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , ,\n, , , [-1]], , , [, , , , , , , , , [-1]]], IR:[, [, , \"[1-9]\\\\d{9}|(?:[1-8]\\\\d\\\\d|9)\\\\d{3,4}\", , , , , , , [4, 5, 6, 7, 10], [8]], [, , \"(?:1[137]|2[13-68]|3[1458]|4[145]|5[1468]|6[16]|7[1467]|8[13467])(?:[03-57]\\\\d{7}|[16]\\\\d{3}(?:\\\\d{4})?|[289]\\\\d{3}(?:\\\\d(?:\\\\d{3})?)?)|94(?:000[09]|2(?:121|[2689]0\\\\d)|30[0-2]\\\\d|4(?:111|40\\\\d))\\\\d{4}\", , , , \"2123456789\", , , [6, 7, 10], [4, 5, 8]], [, , \"9(?:(?:0(?:[1-35]\\\\d|44)|(?:[13]\\\\d|2[0-2])\\\\d)\\\\d|9(?:(?:[0-2]\\\\d|44)\\\\d|5[15]0|8(?:1\\\\d|88)|9(?:0[013]|1[0134]|21|77|9[6-9])))\\\\d{5}\",\n, , , \"9123456789\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"993\\\\d{7}\", , , , \"9932123456\", , , [10]], \"IR\", 98, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\"]],\n, [, , , , , , , , , [-1]], , , [, , \"9(?:4440\\\\d{5}|6(?:0[12]|2[16-8]|3(?:08|[14]5|[23]|66)|4(?:0|80)|5[01]|6[89]|86|9[19]))\", , , , , , , [4, 5, 10]], [, , \"96(?:0[12]|2[16-8]|3(?:08|[14]5|[23]|66)|4(?:0|80)|5[01]|6[89]|86|9[19])\", , , , \"9601\", , , [4, 5]], , , [, , , , , , , , , [-1]]], IS:[, [, , \"(?:38\\\\d|[4-9])\\\\d{6}\", , , , , , , [7, 9]], [, , \"(?:4(?:1[0-24-69]|2[0-7]|[37][0-8]|4[0-245]|5[0-68]|6\\\\d|8[0-36-8])|5(?:05|[156]\\\\d|2[02578]|3[0-579]|4[03-7]|7[0-2578]|8[0-35-9]|9[013-689])|87[23])\\\\d{4}\",\n, , , \"4101234\", , , [7]], [, , \"(?:38[589]\\\\d\\\\d|6(?:1[1-8]|2[0-6]|3[027-9]|4[014679]|5[0159]|6[0-69]|70|8[06-8]|9\\\\d)|7(?:5[057]|[6-8]\\\\d|9[0-3])|8(?:2[0-59]|[3469]\\\\d|5[1-9]|8[28]))\\\\d{4}\", , , , \"6111234\"], [, , \"800\\\\d{4}\", , , , \"8001234\", , , [7]], [, , \"90\\\\d{5}\", , , , \"9011234\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"49\\\\d{5}\", , , , \"4921234\", , , [7]], \"IS\", 354, \"00|1(?:0(?:01|[12]0)|100)\", , , , , , \"00\", , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[4-9]\"]], [,\n\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"3\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"809\\\\d{4}\", , , , \"8091234\", , , [7]], , , [, , \"(?:689|8(?:7[0189]|80)|95[48])\\\\d{4}\", , , , \"6891234\", , , [7]]], IT:[, [, , \"0\\\\d{5,10}|3[0-8]\\\\d{7,10}|55\\\\d{8}|8\\\\d{5}(?:\\\\d{2,4})?|(?:1\\\\d|39)\\\\d{7,8}\", , , , , , , [6, 7, 8, 9, 10, 11, 12]], [, , \"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}\",\n, , , \"0212345678\", , , [6, 7, 8, 9, 10, 11]], [, , \"3[1-9]\\\\d{8}|3[2-9]\\\\d{7}\", , , , \"3123456789\", , , [9, 10]], [, , \"80(?:0\\\\d{3}|3)\\\\d{3}\", , , , \"800123456\", , , [6, 9]], [, , \"(?:0878\\\\d\\\\d|89(?:2|4[5-9]\\\\d))\\\\d{3}|89[45][0-4]\\\\d\\\\d|(?:1(?:44|6[346])|89(?:5[5-9]|9))\\\\d{6}\", , , , \"899123456\", , , [6, 8, 9, 10]], [, , \"84(?:[08]\\\\d{3}|[17])\\\\d{3}\", , , , \"848123456\", , , [6, 9]], [, , \"1(?:78\\\\d|99)\\\\d{6}\", , , , \"1781234567\", , , [9, 10]], [, , \"55\\\\d{8}\", , , , \"5512345678\", , , [10]], \"IT\",\n39, \"00\", , , , , , , , [[, \"(\\\\d{4,5})\", \"$1\", [\"1(?:0|9[246])\", \"1(?:0|9(?:2[2-9]|[46]))\"]], [, \"(\\\\d{6})\", \"$1\", [\"1(?:1|92)\"]], [, \"(\\\\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[245])\", \"0[13-57-9][0159]|8(?:03|4[17]|9(?:2|[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})\",\n\"$1 $2 $3\", [\"1[4679]|[38]\"]], [, \"(\\\\d{3})(\\\\d{3,4})(\\\\d{4})\", \"$1 $2 $3\", [\"0[13-57-9][0159]\"]], [, \"(\\\\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\"]]], [[, \"(\\\\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[245])\", \"0[13-57-9][0159]|8(?:03|4[17]|9(?:2|[45][0-4]))\"]], [, \"(\\\\d{4})(\\\\d{2,6})\", \"$1 $2\", [\"0(?:[13-579][2-46-8]|8[236-8])\"]],\n[, \"(\\\\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[4679]|[38]\"]], [, \"(\\\\d{3})(\\\\d{3,4})(\\\\d{4})\", \"$1 $2 $3\", [\"0[13-57-9][0159]\"]], [, \"(\\\\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\"]]], [, , , , , , , , , [-1]], 1, , [, , \"848\\\\d{6}\", , , , , , , [9]], [, , , , , , , , , [-1]], , , [, , \"3[2-8]\\\\d{9,10}\",\n, , , \"33101234501\", , , [11, 12]]], JE:[, [, , \"1534\\\\d{6}|(?:[3578]\\\\d|90)\\\\d{8}\", , , , , , , [10], [6]], [, , \"1534[0-24-8]\\\\d{5}\", , , , \"1534456789\", , , , [6]], [, , \"7(?:(?:(?:50|82)9|937)\\\\d|7(?:00[378]|97[7-9]))\\\\d{5}\", , , , \"7797712345\"], [, , \"80(?:07(?:35|81)|8901)\\\\d{4}\", , , , \"8007354567\"], [, , \"(?:8(?:4(?:4(?:4(?:05|42|69)|703)|5(?:041|800))|7(?:0002|1206))|90(?:066[59]|1810|71(?:07|55)))\\\\d{4}\", , , , \"9018105678\"], [, , , , , , , , , [-1]], [, , \"701511\\\\d{4}\", , , , \"7015115678\"],\n[, , \"56\\\\d{8}\", , , , \"5612345678\"], \"JE\", 44, \"00\", \"0\", , , \"0|([0-24-8]\\\\d{5})$\", \"1534$1\", , , , , [, , \"76(?:0[0-2]|2[356]|4[0134]|5[49]|6[0-369]|77|81|9[39])\\\\d{6}\", , , , \"7640123456\"], , , [, , , , , , , , , [-1]], [, , \"(?: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}\", , , , \"5512345678\"], , , [, , , , , , , , , [-1]]], JM:[, [, , \"(?:[58]\\\\d\\\\d|658|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"(?:658(?:2(?:[0-8]\\\\d|9[0-46-9])|[3-9]\\\\d\\\\d)|876(?:5(?:02|1[0-468]|2[35]|63)|6(?:0[1-3579]|1[0237-9]|[23]\\\\d|40|5[06]|6[2-589]|7[05]|8[04]|9[4-9])|7(?:0[2-689]|[1-6]\\\\d|8[056]|9[45])|9(?:0[1-8]|1[02378]|[2-8]\\\\d|9[2-468])))\\\\d{4}\",\n, , , \"8765230123\", , , , [7]], [, , \"(?:658295|876(?:(?:2[14-9]|[348]\\\\d)\\\\d|5(?:0[13-9]|17|[2-57-9]\\\\d|6[0-24-9])|7(?:0[07]|7\\\\d|8[1-47-9]|9[0-36-9])|9(?:[01]9|9[0579])))\\\\d{4}\", , , , \"8762101234\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"JM\", 1, \"011\", \"1\", , , \"1\", , , , , , [, , , , , , , ,\n, [-1]], , \"658|876\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], JO:[, [, , \"900\\\\d{5}|(?:(?:[268]|7\\\\d)\\\\d|32|53)\\\\d{6}\", , , , , , , [8, 9]], [, , \"(?:2(?:6(?:2[0-35-9]|3[0-578]|4[24-7]|5[0-24-8]|[6-8][023]|9[0-3])|7(?:0[1-79]|10|2[014-7]|3[0-689]|4[019]|5[0-3578]))|32(?:0[1-69]|1[1-35-7]|2[024-7]|3\\\\d|4[0-3]|[57][023]|6[03])|53(?:0[0-3]|[13][023]|2[0-59]|49|5[0-35-9]|6[15]|7[45]|8[1-6]|9[0-36-9])|6(?:2(?:[05]0|22)|3(?:00|33)|4(?:0[0-25]|1[2-7]|2[0569]|[38][07-9]|4[025689]|6[0-589]|7\\\\d|9[0-2])|5(?:[01][056]|2[034]|3[0-57-9]|4[178]|5[0-69]|6[0-35-9]|7[1-379]|8[0-68]|9[0239]))|87(?:[029]0|7[08]))\\\\d{4}\",\n, , , \"62001234\", , , [8]], [, , \"7(?:55[0-49]|(?:7[025-9]|[89][0-25-9])\\\\d)\\\\d{5}\", , , , \"790123456\", , , [9]], [, , \"80\\\\d{6}\", , , , \"80012345\", , , [8]], [, , \"900\\\\d{5}\", , , , \"90012345\", , , [8]], [, , \"85\\\\d{6}\", , , , \"85012345\", , , [8]], [, , \"70\\\\d{7}\", , , , \"700123456\", , , [9]], [, , , , , , , , , [-1]], \"JO\", 962, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\",\n[\"70\"], \"0$1\"], [, \"(\\\\d)(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"7\"], \"0$1\"]], , [, , \"74(?:66|77)\\\\d{5}\", , , , \"746612345\", , , [9]], , , [, , , , , , , , , [-1]], [, , \"8(?:10|8\\\\d)\\\\d{5}\", , , , \"88101234\", , , [8]], , , [, , , , , , , , , [-1]]], JP:[, [, , \"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]], [, , \"(?:1(?:1[235-8]|2[3-6]|3[3-9]|4[2-6]|[58][2-8]|6[2-7]|7[2-9]|9[1-9])|(?:2[2-9]|[36][1-9])\\\\d|4(?:[2-578]\\\\d|6[02-8]|9[2-59])|5(?:[2-589]\\\\d|6[1-9]|7[2-8])|7(?:[25-9]\\\\d|3[4-9]|4[02-9])|8(?:[2679]\\\\d|3[2-9]|4[5-9]|5[1-9]|8[03-9])|9(?:[2-58]\\\\d|[679][1-9]))\\\\d{6}\",\n, , , \"312345678\", , , [9]], [, , \"[7-9]0[1-9]\\\\d{7}\", , , , \"9012345678\", , , [10]], [, , \"00(?:(?:37|66)\\\\d{6,13}|(?:777(?:[01]|(?:5|8\\\\d)\\\\d)|882[1245]\\\\d\\\\d)\\\\d\\\\d)|(?:120|800\\\\d)\\\\d{6}\", , , , \"120123456\"], [, , \"990\\\\d{6}\", , , , \"990123456\", , , [9]], [, , , , , , , , , [-1]], [, , \"60\\\\d{7}\", , , , \"601234567\", , , [9]], [, , \"50[1-9]\\\\d{7}\", , , , \"5012345678\", , , [10]], \"JP\", 81, \"010\", \"0\", , , \"0\", , , , [[, \"(\\\\d{4})(\\\\d{4})\", \"$1-$2\", [\"007\", \"0077\", \"00777\", \"00777[01]\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\n\"$1-$2-$3\", [\"(?:12|57|99)0\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d)(\\\\d{4})\", \"$1-$2-$3\", [\"1(?:26|3[79]|4[56]|5[4-68]|6[3-5])|499|5(?:76|97)|746|8(?:3[89]|47|51|63)|9(?:49|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[78]|96)|477|51[24]|636)|9(?:496|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[78]|96[2457-9])|477|51[24]|636[2-57-9])|9(?:496|802|9(?:1[23]|69))|1(?:45|58)[67]\"],\n\"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"60\"], \"0$1\"], [, \"(\\\\d)(\\\\d{4})(\\\\d{4})\", \"$1-$2-$3\", [\"[36]|4(?:2[09]|7[01])\", \"[36]|4(?:2(?:0|9[02-69])|7(?:0[019]|1))\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"1(?:1|5[45]|77|88|9[69])|2(?:2[1-37]|3[0-269]|4[59]|5|6[24]|7[1-358]|8[1369]|9[0-38])|4(?:[28][1-9]|3[0-57]|[45]|6[248]|7[2-579]|9[29])|5(?:2|3[045]|4[0-369]|5[29]|8[02389]|9[0-389])|7(?:2[02-46-9]|34|[58]|6[0249]|7[57]|9[2-6])|8(?:2[124589]|3[279]|49|6[0-24-689]|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])\",\n\"1(?:1|5(?:4[018]|5[017])|77|88|9[69])|2(?:2(?:[127]|3[014-9])|3[0-269]|4[59]|5(?:[0468][01]|[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]|2[01]|8[014-6])|3[0-57]|[45]|6[248]|7[2-47]|8[1-9])|5(?:2|3[045]|4[0-369]|8[02389]|9[0-3])|7(?:2[02-46-9]|34|[58]|6[0249]|7[57]|9(?:[23]|4[0-59]|5[01569]|6[0167]))|8(?:2(?:[1258]|4[0-39]|9[0-2469])|49|6(?:[0-24]|5[0-3589]|9[01459])|7[0-468]|8[68])|9(?:[23][1-9]|4[15]|5[138]|6[1-3]|7[156]|8[189]|9(?:[1289]|3[34]|4[0178]))|(?:49|55|83)[29]|(?:264|837)[016-9]|2(?:57|93)[015-9]|(?:47[59]|59[89]|8(?:6[68]|9))[019]\",\n\"1(?:1|5(?:4[018]|5[017])|77|88|9[69])|2(?:2[127]|3[0-269]|4[59]|5(?:[0468][01]|[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]|2[01]|8[014-6])|3[0-57]|[45]|6[248]|7[2-47]|9[29])|5(?:2|3[045]|4[0-369]|5[29]|8[02389]|9[0-3])|7(?:2[02-46-9]|34|[58]|6[0249]|7[57]|9(?:[23]|4[0-59]|5[01569]|6[0167]))|8(?:2(?:[1258]|4[0-39]|9[0169])|3(?:[29]|7(?:[017-9]|6[6-8]))|49|6(?:[0-24]|5(?:[0-389]|5[23])|6(?:[01]|9[178])|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]|(?:48|8292|9[23])[1-9]|(?:47[59]|59[89]|8(?:68|9))[019]\",\n\"1(?:1|5(?:4[018]|5[017])|77|88|9[69])|2(?:2[127]|3[0-269]|4[59]|5(?:[0468][01]|[1-3]|5[0-69]|7[015-9]|9(?:17|99))|6(?:2|4[016-9])|7(?:[1-35]|8[0189])|8(?:[16]|3[0134]|9[0-5])|9(?:[028]|17|3[015-9]))|4(?:2(?:[13-79]|2[01]|8[014-6])|3[0-57]|[45]|6[248]|7[2-47]|9[29])|5(?:2|3[045]|4[0-369]|5[29]|8[02389]|9[0-3])|7(?:2[02-46-9]|34|[58]|6[0249]|7[57]|9(?:[23]|4[0-59]|5[01569]|6[0167]))|8(?:2(?:[1258]|4[0-39]|9(?:[019]|4[1-3]|6(?:[0-47-9]|5[01346-9])))|3(?:[29]|7(?:[017-9]|6[6-8]))|49|6(?:[0-24]|5(?:[0-389]|5[23])|6(?:[01]|9[178])|9[0145])|7[0-468]|8[68])|9(?:4[15]|5[138]|6[1-3]|7[156]|8[189]|9(?:[1289]|3(?:31|4[357])|4[0178]))|(?:223|8699)[014-9]|(?:48|829(?:2|66)|9[23])[1-9]|(?:47[59]|59[89]|8(?:68|9))[019]\"],\n\"0$1\"], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{4})\", \"$1-$2-$3\", [\"[14]|[29][2-9]|5[3-9]|7[2-4679]|8(?:[246-9]|3[3-8]|5[2-9])\", \"[14]|[29][2-9]|5[3-9]|7[2-4679]|8(?:[246-9]|3(?:[3-6][2-9]|7|8[2-5])|5[2-9])\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d{2})(\\\\d{3,4})\", \"$1-$2-$3\", [\"007\"]], [, \"(\\\\d{4})(\\\\d{2})(\\\\d{4})\", \"$1-$2-$3\", [\"008\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"800\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1-$2-$3\", [\"[2579]|80\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{3,4})\", \"$1-$2-$3\", [\"0\"]], [, \"(\\\\d{4})(\\\\d{4})(\\\\d{4,5})\",\n\"$1-$2-$3\", [\"0\"]], [, \"(\\\\d{4})(\\\\d{5})(\\\\d{5,6})\", \"$1-$2-$3\", [\"0\"]], [, \"(\\\\d{4})(\\\\d{6})(\\\\d{6,7})\", \"$1-$2-$3\", [\"0\"]]], [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1-$2-$3\", [\"(?:12|57|99)0\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d)(\\\\d{4})\", \"$1-$2-$3\", [\"1(?:26|3[79]|4[56]|5[4-68]|6[3-5])|499|5(?:76|97)|746|8(?:3[89]|47|51|63)|9(?:49|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[78]|96)|477|51[24]|636)|9(?:496|802|9(?:1[23]|69))|1(?:45|58)[67]\",\n\"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[78]|96[2457-9])|477|51[24]|636[2-57-9])|9(?:496|802|9(?:1[23]|69))|1(?:45|58)[67]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"60\"], \"0$1\"], [, \"(\\\\d)(\\\\d{4})(\\\\d{4})\", \"$1-$2-$3\", [\"[36]|4(?:2[09]|7[01])\", \"[36]|4(?:2(?:0|9[02-69])|7(?:0[019]|1))\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"1(?:1|5[45]|77|88|9[69])|2(?:2[1-37]|3[0-269]|4[59]|5|6[24]|7[1-358]|8[1369]|9[0-38])|4(?:[28][1-9]|3[0-57]|[45]|6[248]|7[2-579]|9[29])|5(?:2|3[045]|4[0-369]|5[29]|8[02389]|9[0-389])|7(?:2[02-46-9]|34|[58]|6[0249]|7[57]|9[2-6])|8(?:2[124589]|3[279]|49|6[0-24-689]|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])\",\n\"1(?:1|5(?:4[018]|5[017])|77|88|9[69])|2(?:2(?:[127]|3[014-9])|3[0-269]|4[59]|5(?:[0468][01]|[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]|2[01]|8[014-6])|3[0-57]|[45]|6[248]|7[2-47]|8[1-9])|5(?:2|3[045]|4[0-369]|8[02389]|9[0-3])|7(?:2[02-46-9]|34|[58]|6[0249]|7[57]|9(?:[23]|4[0-59]|5[01569]|6[0167]))|8(?:2(?:[1258]|4[0-39]|9[0-2469])|49|6(?:[0-24]|5[0-3589]|9[01459])|7[0-468]|8[68])|9(?:[23][1-9]|4[15]|5[138]|6[1-3]|7[156]|8[189]|9(?:[1289]|3[34]|4[0178]))|(?:49|55|83)[29]|(?:264|837)[016-9]|2(?:57|93)[015-9]|(?:47[59]|59[89]|8(?:6[68]|9))[019]\",\n\"1(?:1|5(?:4[018]|5[017])|77|88|9[69])|2(?:2[127]|3[0-269]|4[59]|5(?:[0468][01]|[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]|2[01]|8[014-6])|3[0-57]|[45]|6[248]|7[2-47]|9[29])|5(?:2|3[045]|4[0-369]|5[29]|8[02389]|9[0-3])|7(?:2[02-46-9]|34|[58]|6[0249]|7[57]|9(?:[23]|4[0-59]|5[01569]|6[0167]))|8(?:2(?:[1258]|4[0-39]|9[0169])|3(?:[29]|7(?:[017-9]|6[6-8]))|49|6(?:[0-24]|5(?:[0-389]|5[23])|6(?:[01]|9[178])|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]|(?:48|8292|9[23])[1-9]|(?:47[59]|59[89]|8(?:68|9))[019]\",\n\"1(?:1|5(?:4[018]|5[017])|77|88|9[69])|2(?:2[127]|3[0-269]|4[59]|5(?:[0468][01]|[1-3]|5[0-69]|7[015-9]|9(?:17|99))|6(?:2|4[016-9])|7(?:[1-35]|8[0189])|8(?:[16]|3[0134]|9[0-5])|9(?:[028]|17|3[015-9]))|4(?:2(?:[13-79]|2[01]|8[014-6])|3[0-57]|[45]|6[248]|7[2-47]|9[29])|5(?:2|3[045]|4[0-369]|5[29]|8[02389]|9[0-3])|7(?:2[02-46-9]|34|[58]|6[0249]|7[57]|9(?:[23]|4[0-59]|5[01569]|6[0167]))|8(?:2(?:[1258]|4[0-39]|9(?:[019]|4[1-3]|6(?:[0-47-9]|5[01346-9])))|3(?:[29]|7(?:[017-9]|6[6-8]))|49|6(?:[0-24]|5(?:[0-389]|5[23])|6(?:[01]|9[178])|9[0145])|7[0-468]|8[68])|9(?:4[15]|5[138]|6[1-3]|7[156]|8[189]|9(?:[1289]|3(?:31|4[357])|4[0178]))|(?:223|8699)[014-9]|(?:48|829(?:2|66)|9[23])[1-9]|(?:47[59]|59[89]|8(?:68|9))[019]\"],\n\"0$1\"], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{4})\", \"$1-$2-$3\", [\"[14]|[29][2-9]|5[3-9]|7[2-4679]|8(?:[246-9]|3[3-8]|5[2-9])\", \"[14]|[29][2-9]|5[3-9]|7[2-4679]|8(?:[246-9]|3(?:[3-6][2-9]|7|8[2-5])|5[2-9])\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"800\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1-$2-$3\", [\"[2579]|80\"], \"0$1\"]], [, , \"20\\\\d{8}\", , , , \"2012345678\", , , [10]], , , [, , \"00(?:777(?:[01]|(?:5|8\\\\d)\\\\d)|882[1245]\\\\d\\\\d)\\\\d\\\\d|00(?:37|66)\\\\d{6,13}\"], [, , \"570\\\\d{6}\", , , , \"570123456\",\n, , [9]], , , [, , , , , , , , , [-1]]], KE:[, [, , \"(?:[17]\\\\d\\\\d|900)\\\\d{6}|(?:2|80)0\\\\d{6,7}|[4-6]\\\\d{6,8}\", , , , , , , [7, 8, 9, 10]], [, , \"(?:4[245]|5[2-79]|6[01457-9])\\\\d{5,7}|(?:4[136]|5[08]|62)\\\\d{7}|(?:[24]0|51|66)\\\\d{6,7}\", , , , \"202012345\", , , [7, 8, 9]], [, , \"(?:1(?:0[0-2]|1[01])|7\\\\d\\\\d)\\\\d{6}\", , , , \"712123456\", , , [9]], [, , \"800[24-8]\\\\d{5,6}\", , , , \"800223456\", , , [9, 10]], [, , \"900[02-9]\\\\d{5}\", , , , \"900223456\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , ,\n[-1]], [, , , , , , , , , [-1]], \"KE\", 254, \"000\", \"0\", , , \"0\", , , , [[, \"(\\\\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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], KG:[, [, , \"8\\\\d{9}|(?:[235-8]\\\\d|99)\\\\d{7}\", , , , , , , [9, 10], [5, 6]], [, , \"(?:3(?:1(?:[256]\\\\d|3[1-9]|47)|2(?:22|3[0-479]|6[0-7])|4(?:22|5[6-9]|6\\\\d)|5(?:22|3[4-7]|59|6\\\\d)|6(?:22|5[35-7]|6\\\\d)|7(?:22|3[468]|4[1-9]|59|[67]\\\\d)|9(?:22|4[1-8]|6\\\\d))|6(?:09|12|2[2-4])\\\\d)\\\\d{5}\",\n, , , \"312123456\", , , [9], [5, 6]], [, , \"8801\\\\d{5}|(?:2(?:0[0-35]|2\\\\d)|5(?:0[0-57-9]|[124-7]\\\\d)|7(?:[07]\\\\d|55)|99[05-9])\\\\d{6}\", , , , \"700123456\", , , [9]], [, , \"800\\\\d{6,7}\", , , , \"800123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"KG\", 996, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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})\",\n\"$1 $2 $3 $4\", [\"8\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], KH:[, [, , \"1\\\\d{9}|[1-9]\\\\d{7,8}\", , , , , , , [8, 9, 10], [6, 7]], [, , \"23(?:4(?:[2-4]|[56]\\\\d)|[568]\\\\d\\\\d)\\\\d{4}|23[236-9]\\\\d{5}|(?:2[4-6]|3[2-6]|4[2-4]|[5-7][2-5])(?:(?:[237-9]|4[56]|5\\\\d)\\\\d{5}|6\\\\d{5,6})\", , , , \"23756789\", , , [8, 9], [6, 7]], [, , \"(?:(?:1[28]|3[18]|9[67])\\\\d|6[016-9]|7(?:[07-9]|[16]\\\\d)|8(?:[013-79]|8\\\\d))\\\\d{6}|(?:1\\\\d|9[0-57-9])\\\\d{6}|(?:2[3-6]|3[2-6]|4[2-4]|[5-7][2-5])48\\\\d{5}\",\n, , , \"91234567\", , , [8, 9]], [, , \"1800(?:1\\\\d|2[019])\\\\d{4}\", , , , \"1800123456\", , , [10]], [, , \"1900(?:1\\\\d|2[09])\\\\d{4}\", , , , \"1900123456\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"KH\", 855, \"00[14-9]\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{3,4})\", \"$1 $2 $3\", [\"[1-9]\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"1\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , ,\n, , [-1]]], KI:[, [, , \"(?:[37]\\\\d|6[0-79])\\\\d{6}|(?:[2-48]\\\\d|50)\\\\d{3}\", , , , , , , [5, 8]], [, , \"(?:[24]\\\\d|3[1-9]|50|65(?:02[12]|12[56]|22[89]|[3-5]00)|7(?:27\\\\d\\\\d|3100|5(?:02[12]|12[56]|22[89]|[34](?:00|81)|500))|8[0-5])\\\\d{3}\", , , , \"31234\"], [, , \"73140\\\\d{3}|(?:630[01]|730[0-5])\\\\d{4}|[67]200[01]\\\\d{3}\", , , , \"72001234\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"30(?:0[01]\\\\d\\\\d|12(?:11|20))\\\\d\\\\d\", , , , \"30010000\",\n, , [8]], \"KI\", 686, \"00\", \"0\", , , \"0\", , , , , , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], KM:[, [, , \"[3478]\\\\d{6}\", , , , , , , [7]], [, , \"7[4-7]\\\\d{5}\", , , , \"7712345\"], [, , \"[34]\\\\d{6}\", , , , \"3212345\"], [, , , , , , , , , [-1]], [, , \"8\\\\d{6}\", , , , \"8001234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"KM\", 269, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3\", [\"[3478]\"]]],\n, [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], KN:[, [, , \"(?:[58]\\\\d\\\\d|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"869(?:2(?:29|36)|302|4(?:6[015-9]|70))\\\\d{4}\", , , , \"8692361234\", , , , [7]], [, , \"869(?:5(?:5[6-8]|6[5-7])|66\\\\d|76[02-7])\\\\d{4}\", , , , \"8697652917\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\",\n, , , \"5002345678\"], [, , , , , , , , , [-1]], \"KN\", 1, \"011\", \"1\", , , \"1|([2-7]\\\\d{6})$\", \"869$1\", , , , , [, , , , , , , , , [-1]], , \"869\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], KP:[, [, , \"85\\\\d{6}|(?:19\\\\d|2)\\\\d{7}\", , , , , , , [8, 10], [6, 7]], [, , \"(?:2\\\\d|85)\\\\d{6}\", , , , \"21234567\", , , [8], [6, 7]], [, , \"19[1-3]\\\\d{7}\", , , , \"1921234567\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , ,\n, , , , [-1]], [, , , , , , , , , [-1]], \"KP\", 850, \"00|99\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"8\"], \"0$1\"], [, \"(\\\\d)(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"2\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"1\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , \"238[02-9]\\\\d{4}|2(?:[0-24-9]\\\\d|3[0-79])\\\\d{5}\", , , , , , , [8]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], KR:[, [, , \"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}\",\n, , , , , , [5, 6, 8, 9, 10, 11, 12, 13, 14], [3, 4, 7]], [, , \"(?:2|3[1-3]|[46][1-4]|5[1-5])[1-9]\\\\d{6,7}|(?:3[1-3]|[46][1-4]|5[1-5])1\\\\d{2,3}\", , , , \"22123456\", , , [5, 6, 8, 9, 10], [3, 4, 7]], [, , \"10[01]\\\\d{6}|1(?:0[2-9]|[126-9]\\\\d)\\\\d{6,7}\", , , , \"1020000000\", , , [9, 10]], [, , \"00(?:308\\\\d{6,7}|798\\\\d{7,9})|(?:00368|80)\\\\d{7}\", , , , \"801234567\", , , [9, 11, 12, 13, 14]], [, , \"60[2-9]\\\\d{6}\", , , , \"602345678\", , , [9]], [, , , , , , , , , [-1]], [, , \"50\\\\d{8,9}\", , , , \"5012345678\",\n, , [10, 11]], [, , \"70\\\\d{8}\", , , , \"7012345678\", , , [10]], \"KR\", 82, \"00(?:[125689]|3(?:[46]5|91)|7(?:00|27|3|55|6[126]))\", \"0\", , , \"0(8(?:[1-46-8]|5\\\\d\\\\d))?\", , , , [[, \"(\\\\d{5})\", \"$1\", [\"1[016-9]1\", \"1[016-9]11\", \"1[016-9]114\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3,4})\", \"$1-$2\", [\"(?:3[1-3]|[46][1-4]|5[1-5])1\"], \"0$1\", \"0$CC-$1\"], [, \"(\\\\d{4})(\\\\d{4})\", \"$1-$2\", [\"1\"]], [, \"(\\\\d)(\\\\d{3,4})(\\\\d{4})\", \"$1-$2-$3\", [\"2\"], \"0$1\", \"0$CC-$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"60|8\"], \"0$1\",\n\"0$CC-$1\"], [, \"(\\\\d{2})(\\\\d{3,4})(\\\\d{4})\", \"$1-$2-$3\", [\"[1346]|5[1-5]\"], \"0$1\", \"0$CC-$1\"], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1-$2-$3\", [\"[57]\"], \"0$1\", \"0$CC-$1\"], [, \"(\\\\d{5})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"003\", \"0030\"]], [, \"(\\\\d{2})(\\\\d{5})(\\\\d{4})\", \"$1-$2-$3\", [\"5\"], \"0$1\", \"0$CC-$1\"], [, \"(\\\\d{5})(\\\\d{3,4})(\\\\d{4})\", \"$1 $2 $3\", [\"0\"]], [, \"(\\\\d{5})(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3 $4\", [\"0\"]]], [[, \"(\\\\d{2})(\\\\d{3,4})\", \"$1-$2\", [\"(?:3[1-3]|[46][1-4]|5[1-5])1\"], \"0$1\", \"0$CC-$1\"],\n[, \"(\\\\d{4})(\\\\d{4})\", \"$1-$2\", [\"1\"]], [, \"(\\\\d)(\\\\d{3,4})(\\\\d{4})\", \"$1-$2-$3\", [\"2\"], \"0$1\", \"0$CC-$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"60|8\"], \"0$1\", \"0$CC-$1\"], [, \"(\\\\d{2})(\\\\d{3,4})(\\\\d{4})\", \"$1-$2-$3\", [\"[1346]|5[1-5]\"], \"0$1\", \"0$CC-$1\"], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1-$2-$3\", [\"[57]\"], \"0$1\", \"0$CC-$1\"], [, \"(\\\\d{2})(\\\\d{5})(\\\\d{4})\", \"$1-$2-$3\", [\"5\"], \"0$1\", \"0$CC-$1\"]], [, , \"15\\\\d{7,8}\", , , , \"1523456789\", , , [9, 10]], , , [, , \"00(?:3(?:08\\\\d{6,7}|68\\\\d{7})|798\\\\d{7,9})\",\n, , , , , , [11, 12, 13, 14]], [, , \"1(?:5(?:22|44|66|77|88|99)|6(?:[07]0|44|6[16]|88)|8(?:00|33|55|77|99))\\\\d{4}\", , , , \"15441234\", , , [8]], , , [, , , , , , , , , [-1]]], KW:[, [, , \"(?:18|[2569]\\\\d\\\\d)\\\\d{5}\", , , , , , , [7, 8]], [, , \"2(?:[23]\\\\d\\\\d|4(?:[1-35-9]\\\\d|44)|5(?:0[034]|[2-46]\\\\d|5[1-3]|7[1-7]))\\\\d{4}\", , , , \"22345678\", , , [8]], [, , \"(?:52(?:22|5[25])|6(?:222|70[013-9]|93[039])|9(?:11[01]|333|702))\\\\d{4}|(?:5(?:[05]\\\\d|1[0-7]|6[56])|6(?:0[034679]|5[015-9]|6\\\\d|7[67]|9[069])|9(?:0[09]|22|4[01479]|55|6[0679]|7[1-9]|8[057-9]|9\\\\d))\\\\d{5}\",\n, , , \"50012345\", , , [8]], [, , \"18\\\\d{5}\", , , , \"1801234\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"KW\", 965, \"00\", , , , , , , , [[, \"(\\\\d{4})(\\\\d{3,4})\", \"$1 $2\", [\"[169]|2(?:[235]|4[1-35-9])|52\"]], [, \"(\\\\d{3})(\\\\d{5})\", \"$1 $2\", [\"[25]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], KY:[, [, , \"(?:345|[58]\\\\d\\\\d|900)\\\\d{7}\", , , , , , , [10], [7]],\n[, , \"345(?:2(?:22|44)|444|6(?:23|38|40)|7(?:4[35-79]|6[6-9]|77)|8(?:00|1[45]|25|[48]8)|9(?:14|4[035-9]))\\\\d{4}\", , , , \"3452221234\", , , , [7]], [, , \"345(?:32[1-9]|5(?:1[67]|2[5-79]|4[6-9]|50|76)|649|9(?:1[67]|2[2-9]|3[689]))\\\\d{4}\", , , , \"3453231234\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002345678\"], [, , \"(?:345976|900[2-9]\\\\d\\\\d)\\\\d{4}\", , , , \"9002345678\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , ,\n, , , , [-1]], \"KY\", 1, \"011\", \"1\", , , \"1|([2-9]\\\\d{6})$\", \"345$1\", , , , , [, , \"345849\\\\d{4}\", , , , \"3458491234\"], , \"345\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], KZ:[, [, , \"33622\\\\d{5}|(?:7\\\\d|80)\\\\d{8}\", , , , , , , [10], [5, 6]], [, , \"(?:33622|7(?:1(?:0(?:[23]\\\\d|4[0-3]|59|63)|1(?:[23]\\\\d|4[0-79]|59)|2(?:[23]\\\\d|59)|3(?:2\\\\d|3[0-79]|4[0-35-9]|59)|4(?:[24]\\\\d|3[013-9]|5[1-9])|5(?:2\\\\d|3[1-9]|4[0-7]|59)|6(?:[2-4]\\\\d|5[19]|61)|72\\\\d|8(?:[27]\\\\d|3[1-46-9]|4[0-5]))|2(?:1(?:[23]\\\\d|4[46-9]|5[3469])|2(?:2\\\\d|3[0679]|46|5[12679])|3(?:[2-4]\\\\d|5[139])|4(?:2\\\\d|3[1-35-9]|59)|5(?:[23]\\\\d|4[0-246-8]|59|61)|6(?:2\\\\d|3[1-9]|4[0-4]|59)|7(?:[2379]\\\\d|40|5[279])|8(?:[23]\\\\d|4[0-3]|59)|9(?:2\\\\d|3[124578]|59))))\\\\d{5}\",\n, , , \"7123456789\", , , , [5, 6]], [, , \"7(?:0[0-25-8]|47|6[02-4]|7[15-8]|85)\\\\d{7}\", , , , \"7710009998\"], [, , \"800\\\\d{7}\", , , , \"8001234567\"], [, , \"809\\\\d{7}\", , , , \"8091234567\"], [, , , , , , , , , [-1]], [, , \"808\\\\d{7}\", , , , \"8081234567\"], [, , \"751\\\\d{7}\", , , , \"7511234567\"], \"KZ\", 7, \"810\", \"8\", , , \"8\", , \"8~10\", , , , [, , , , , , , , , [-1]], , \"33|7\", [, , \"751\\\\d{7}\"], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], LA:[, [, , \"(?:2\\\\d|3)\\\\d{8}|(?:[235-8]\\\\d|41)\\\\d{6}\",\n, , , , , , [8, 9, 10], [6]], [, , \"(?:2[13]|[35-7][14]|41|8[1468])\\\\d{6}\", , , , \"21212862\", , , [8], [6]], [, , \"20(?:[29]\\\\d|5[24-689]|7[6-8])\\\\d{6}\", , , , \"2023123456\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"LA\", 856, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"2[13]|3[14]|[4-8]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{3})\", \"$1 $2 $3 $4\", [\"3\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{3})(\\\\d{3})\",\n\"$1 $2 $3 $4\", [\"2\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"30\\\\d{7}\", , , , \"301234567\", , , [9]], , , [, , , , , , , , , [-1]]], LB:[, [, , \"[7-9]\\\\d{7}|[13-9]\\\\d{6}\", , , , , , , [7, 8]], [, , \"(?:(?:[14-69]\\\\d|8[02-9])\\\\d|7(?:[2-57]\\\\d|62|8[0-7]|9[04-9]))\\\\d{4}\", , , , \"1123456\", , , [7]], [, , \"(?:(?:3|81)\\\\d|7(?:[01]\\\\d|6[013-9]|8[89]|9[1-3]))\\\\d{5}\", , , , \"71123456\"], [, , , , , , , , , [-1]], [, , \"9[01]\\\\d{6}\", , , , \"90123456\", , , [8]], [, , \"80\\\\d{6}\",\n, , , \"80123456\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"LB\", 961, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\", [\"[7-9]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], LC:[, [, , \"(?:[58]\\\\d\\\\d|758|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"758(?:4(?:30|5\\\\d|6[2-9]|8[0-2])|57[0-2]|638)\\\\d{4}\",\n, , , \"7584305678\", , , , [7]], [, , \"758(?:28[4-7]|384|4(?:6[01]|8[4-9])|5(?:1[89]|20|84)|7(?:1[2-9]|2\\\\d|3[01]))\\\\d{4}\", , , , \"7582845678\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"LC\", 1, \"011\", \"1\", , , \"1|([2-7]\\\\d{6})$\", \"758$1\", , , , , [, , , , , , , , , [-1]], , \"758\", [, , , , , , , , ,\n[-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], LI:[, [, , \"90\\\\d{5}|(?:[2378]|6\\\\d\\\\d)\\\\d{6}\", , , , , , , [7, 9]], [, , \"(?:2(?:01|1[27]|22|3\\\\d|6[02-578]|96)|3(?:33|40|7[0135-7]|8[048]|9[0269]))\\\\d{4}\", , , , \"2345678\", , , [7]], [, , \"756\\\\d{4}|(?:6(?:499|5[0-3]\\\\d|6(?:0[0-7]|10|2[06-9]|39))|7[37-9])\\\\d{5}\", , , , \"660234567\"], [, , \"80(?:02[28]|9\\\\d\\\\d)\\\\d\\\\d\", , , , \"8002222\", , , [7]], [, , \"90(?:02[258]|1(?:23|3[14])|66[136])\\\\d\\\\d\", , , , \"9002222\", , , [7]], [, , , , , ,\n, , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"LI\", 423, \"00\", \"0\", , , \"0|(10(?:01|20|66))\", , , , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3\", [\"[237-9]\"], , \"$CC $1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"69\"], , \"$CC $1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"6\"], , \"$CC $1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"870(?:28|87)\\\\d\\\\d\", , , , \"8702812\", , , [7]], , , [, , \"697(?:56|[78]\\\\d)\\\\d{4}\", , , , \"697861234\", , , [9]]], LK:[,\n[, , \"(?:[1-7]\\\\d|[89]1)\\\\d{7}\", , , , , , , [9], [7]], [, , \"(?:[189]1|2[13-7]|3[1-8]|4[157]|5[12457]|6[35-7])[2-57]\\\\d{6}\", , , , \"112345678\", , , , [7]], [, , \"7[0-25-8]\\\\d{7}\", , , , \"712345678\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"LK\", 94, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\"]], , [, , , ,\n, , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"1973\\\\d{5}\", , , , \"197312345\"], , , [, , , , , , , , , [-1]]], LR:[, [, , \"(?:2|33|5\\\\d|77|88)\\\\d{7}|[45]\\\\d{6}\", , , , , , , [7, 8, 9]], [, , \"(?:2\\\\d{3}|33333)\\\\d{4}\", , , , \"21234567\", , , [8, 9]], [, , \"(?:(?:330|555|(?:77|88)\\\\d)\\\\d|4[67])\\\\d{5}|5\\\\d{6}\", , , , \"770123456\", , , [7, 9]], [, , , , , , , , , [-1]], [, , \"332(?:02|[34]\\\\d)\\\\d{4}\", , , , \"332021234\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , ,\n, , [-1]], \"LR\", 231, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d)(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[45]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"2\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[3578]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], LS:[, [, , \"(?:[256]\\\\d\\\\d|800)\\\\d{5}\", , , , , , , [8]], [, , \"2\\\\d{7}\", , , , \"22123456\"], [, , \"[56]\\\\d{7}\", , , , \"50123456\"], [, , \"800[256]\\\\d{4}\", , ,\n, \"80021234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"LS\", 266, \"00\", , , , , , , , [[, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[2568]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], LT:[, [, , \"(?:[3469]\\\\d|52|[78]0)\\\\d{6}\", , , , , , , [8]], [, , \"(?:3[1478]|4[124-6]|52)\\\\d{6}\", , , , \"31234567\"], [, , \"6\\\\d{7}\", , , , \"61234567\"], [, , \"800\\\\d{5}\", , , , \"80012345\"],\n[, , \"9(?:0[0239]|10)\\\\d{5}\", , , , \"90012345\"], [, , \"808\\\\d{5}\", , , , \"80812345\"], [, , \"700\\\\d{5}\", , , , \"70012345\"], [, , , , , , , , , [-1]], \"LT\", 370, \"00\", \"8\", , , \"[08]\", , , , [[, \"(\\\\d)(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"52[0-79]\"], \"(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]], , [, , , , , , , , , [-1]], , , [, , , ,\n, , , , , [-1]], [, , \"70[67]\\\\d{5}\", , , , \"70712345\"], , , [, , , , , , , , , [-1]]], LU:[, [, , \"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]], [, , \"(?:35[013-9]|80[2-9]|90[89])\\\\d{1,8}|(?:2[2-9]|3[0-46-9]|[457]\\\\d|8[13-9]|9[2-579])\\\\d{2,9}\", , , , \"27123456\"], [, , \"6(?:[269][18]|5[158]|7[189]|81)\\\\d{6}\", , , , \"628123456\", , , [9]], [, , \"800\\\\d{5}\", , , , \"80012345\", , , [8]], [, , \"90[015]\\\\d{5}\", , , , \"90012345\", , , [8]],\n[, , \"801\\\\d{5}\", , , , \"80112345\", , , [8]], [, , , , , , , , , [-1]], [, , \"20(?:1\\\\d{5}|[2-689]\\\\d{1,7})\", , , , \"20201234\", , , [4, 5, 6, 7, 8, 9, 10]], \"LU\", 352, \"00\", , , , \"(15(?:0[06]|1[12]|[35]5|4[04]|6[26]|77|88|99)\\\\d)\", , , , [[, \"(\\\\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])\"], , \"$CC $1\"], [, \"(\\\\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])\"], , \"$CC $1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{3})\",\n\"$1 $2 $3\", [\"20[2-689]\"], , \"$CC $1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{1,2})\", \"$1 $2 $3 $4\", [\"2(?:[0367]|4[3-8])\"], , \"$CC $1\"], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{3})\", \"$1 $2 $3\", [\"80[01]|90[015]\"], , \"$CC $1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{3})\", \"$1 $2 $3 $4\", [\"20\"], , \"$CC $1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"6\"], , \"$CC $1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{1,2})\", \"$1 $2 $3 $4 $5\", [\"2(?:[0367]|4[3-8])\"], , \"$CC $1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{1,5})\", \"$1 $2 $3 $4\",\n[\"[3-57]|8[13-9]|9(?:0[89]|[2-579])|(?:2|80)[2-9]\"], , \"$CC $1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], LV:[, [, , \"(?:[268]\\\\d|90)\\\\d{6}\", , , , , , , [8]], [, , \"6\\\\d{7}\", , , , \"63123456\"], [, , \"2\\\\d{7}\", , , , \"21234567\"], [, , \"80\\\\d{6}\", , , , \"80123456\"], [, , \"90\\\\d{6}\", , , , \"90123456\"], [, , \"81\\\\d{6}\", , , , \"81123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"LV\", 371, \"00\", , , , , , , , [[,\n\"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[269]|8[01]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], LY:[, [, , \"(?:[2569]\\\\d|71)\\\\d{7}\", , , , , , , [9], [7]], [, , \"(?:2[13-5]|5[1347]|6[1-479]|71)\\\\d{7}\", , , , \"212345678\", , , , [7]], [, , \"9[1-6]\\\\d{7}\", , , , \"912345678\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"LY\", 218, \"00\", \"0\",\n, , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{7})\", \"$1-$2\", [\"[25-79]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MA:[, [, , \"[5-8]\\\\d{8}\", , , , , , , [9]], [, , \"5(?:29|38)[89]0\\\\d{4}|5(?:2(?:[015-7]\\\\d|2[2-9]|3[2-57]|4[2-46-8]|8[235-7]|90)|3(?:[0-4]\\\\d|[57][2-9]|6[2-8]|80|9[3-9])|(?:4[067]|5[03])\\\\d)\\\\d{5}\", , , , \"520123456\"], [, , \"692[12]\\\\d{5}|(?:6(?:[0-7]\\\\d|8[0-247-9]|9[013-9])|7(?:0[06-8]|6[1267]|7[0-27]))\\\\d{6}\", ,\n, , \"650123456\"], [, , \"80\\\\d{7}\", , , , \"801234567\"], [, , \"89\\\\d{7}\", , , , \"891234567\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"5924[0-2]\\\\d{4}\", , , , \"592401234\"], \"MA\", 212, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{5})(\\\\d{4})\", \"$1-$2\", [\"5(?:29|38)\", \"5(?:29|38)[89]\"], \"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\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{7})\", \"$1-$2\", [\"8\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{6})\",\n\"$1-$2\", [\"[5-7]\"], \"0$1\"]], , [, , , , , , , , , [-1]], 1, , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MC:[, [, , \"870\\\\d{5}|(?:[349]|6\\\\d)\\\\d{7}\", , , , , , , [8, 9]], [, , \"(?:870|9[2-47-9]\\\\d)\\\\d{5}\", , , , \"99123456\", , , [8]], [, , \"4(?:4\\\\d|5[1-9])\\\\d{5}|(?:3|6\\\\d)\\\\d{7}\", , , , \"612345678\"], [, , \"90\\\\d{6}\", , , , \"90123456\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"MC\", 377,\n\"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{2})\", \"$1 $2 $3\", [\"8\"]], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"4\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[39]\"]], [, \"(\\\\d)(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4 $5\", [\"6\"], \"0$1\"]], [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"4\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[39]\"]], [, \"(\\\\d)(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4 $5\", [\"6\"], \"0$1\"]], [, , , , , , , , , [-1]],\n, , [, , \"870\\\\d{5}\", , , , , , , [8]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MD:[, [, , \"(?:[235-7]\\\\d|[89]0)\\\\d{6}\", , , , , , , [8]], [, , \"(?:(?:2[1-9]|3[1-79])\\\\d|5(?:33|5[257]))\\\\d{5}\", , , , \"22212345\"], [, , \"(?:562|6\\\\d\\\\d|7(?:[189]\\\\d|6[07]|7[457-9]))\\\\d{5}\", , , , \"62112345\"], [, , \"800\\\\d{5}\", , , , \"80012345\"], [, , \"90[056]\\\\d{5}\", , , , \"90012345\"], [, , \"808\\\\d{5}\", , , , \"80812345\"], [, , , , , , , , , [-1]], [, , \"3[08]\\\\d{6}\", , , , \"30123456\"], \"MD\", 373, \"00\",\n\"0\", , , \"0\", , , , [[, \"(\\\\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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"803\\\\d{5}\", , , , \"80312345\"], , , [, , , , , , , , , [-1]]], ME:[, [, , \"(?:20|[3-79]\\\\d)\\\\d{6}|80\\\\d{6,7}\", , , , , , , [8, 9], [6]], [, , \"(?:20[2-8]|3(?:[0-2][2-7]|3[24-7])|4(?:0[2-467]|1[2467])|5(?:[01][2467]|2[2-467]))\\\\d{5}\", , , , \"30234567\",\n, , [8], [6]], [, , \"6(?:00|3[024]|6[0-25]|[7-9]\\\\d)\\\\d{5}\", , , , \"67622901\", , , [8]], [, , \"80(?:[0-2578]|9\\\\d)\\\\d{5}\", , , , \"80080002\"], [, , \"9(?:4[1568]|5[178])\\\\d{5}\", , , , \"94515151\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"78[1-49]\\\\d{5}\", , , , \"78108780\", , , [8]], \"ME\", 382, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{3,4})\", \"$1 $2 $3\", [\"[2-9]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"77[1-9]\\\\d{5}\", , , , \"77273012\",\n, , [8]], , , [, , , , , , , , , [-1]]], MF:[, [, , \"(?:590|69\\\\d)\\\\d{6}\", , , , , , , [9]], [, , \"590(?:0[079]|[14]3|[27][79]|30|5[0-268]|87)\\\\d{4}\", , , , \"590271234\"], [, , \"69(?:0\\\\d\\\\d|1(?:2[29]|3[0-5]))\\\\d{4}\", , , , \"690001234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"MF\", 590, \"00\", \"0\", , , \"0\", , , , , , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , ,\n, , , , , , [-1]]], MG:[, [, , \"[23]\\\\d{8}\", , , , , , , [9], [7]], [, , \"2072[29]\\\\d{4}|20(?:2\\\\d|4[47]|5[3467]|6[279]|7[35]|8[268]|9[245])\\\\d{5}\", , , , \"202123456\", , , , [7]], [, , \"3[2-49]\\\\d{7}\", , , , \"321234567\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"22\\\\d{7}\", , , , \"221234567\"], \"MG\", 261, \"00\", \"0\", , , \"0|([24-9]\\\\d{6})$\", \"20$1\", , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{3})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[23]\"], \"0$1\"]], , [,\n, , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MH:[, [, , \"329\\\\d{4}|(?:[256]\\\\d|45)\\\\d{5}\", , , , , , , [7]], [, , \"(?:247|528|625)\\\\d{4}\", , , , \"2471234\"], [, , \"(?:(?:23|54)5|329|45[56])\\\\d{4}\", , , , \"2351234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"635\\\\d{4}\", , , , \"6351234\"], \"MH\", 692, \"011\", \"1\", , , \"1\", , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1-$2\", [\"[2-6]\"]]],\n, [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MK:[, [, , \"[2-578]\\\\d{7}\", , , , , , , [8], [6, 7]], [, , \"(?:2(?:[23]\\\\d|5[0-24578]|6[01]|82)|3(?:1[3-68]|[23][2-68]|4[23568])|4(?:[23][2-68]|4[3-68]|5[2568]|6[25-8]|7[24-68]|8[4-68]))\\\\d{5}\", , , , \"22012345\", , , , [6, 7]], [, , \"7(?:(?:[0-25-8]\\\\d|3[2-4]|9[23])\\\\d|4(?:21|60))\\\\d{4}\", , , , \"72345678\"], [, , \"800\\\\d{5}\", , , , \"80012345\"], [, , \"5[02-9]\\\\d{6}\", , , , \"50012345\"],\n[, , \"8(?:0[1-9]|[1-9]\\\\d)\\\\d{5}\", , , , \"80123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"MK\", 389, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d)(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"2\"], \"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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], ML:[, [, , \"(?:[246-9]\\\\d|50)\\\\d{6}\", , , , , , , [8]],\n[, , \"2(?:07[0-8]|12[67])\\\\d{4}|(?:2(?:02|1[4-689])|4(?:0[0-4]|4[1-39]))\\\\d{5}\", , , , \"20212345\"], [, , \"2(?:079|17\\\\d)\\\\d{4}|(?:50|[679]\\\\d|8[239])\\\\d{6}\", , , , \"65012345\"], [, , \"80\\\\d{6}\", , , , \"80012345\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"ML\", 223, \"00\", , , , , , , , [[, \"(\\\\d{4})\", \"$1\", [\"67[057-9]|74[045]\", \"67(?:0[09]|[59]9|77|8[89])|74(?:0[02]|44|55)\"]], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[24-9]\"]]],\n[[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[24-9]\"]]], [, , , , , , , , , [-1]], , , [, , \"80\\\\d{6}\"], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MM:[, [, , \"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], [5]], [, , \"(?:1(?:(?:2\\\\d|3[56]|[89][0-6])\\\\d|4(?:2[2-469]|39|46|6[25]|7[0-2])|6)|2(?:2(?:00|8[34])|4(?:0\\\\d|2[246]|39|46|62|7[0-2])|51\\\\d\\\\d)|4(?:2(?:2\\\\d\\\\d|48[0-2])|[34]20\\\\d)|6(?:0(?:[23]|88\\\\d)|(?:124|320|[56]2\\\\d)\\\\d|247[23]|4(?:2[04]\\\\d|47[23])|7(?:(?:3\\\\d|8[01459])\\\\d|4(?:39|60|7[01])))|8(?:[1-3]2\\\\d|5(?:2\\\\d|4[1-9]|51))\\\\d)\\\\d{4}|5(?:2(?:2\\\\d{5,6}|47[023]\\\\d{4})|(?:347[23]|42(?:1|86)|(?:522|[68]20)\\\\d|7(?:20\\\\d|48[0-2])|9(?:20\\\\d|47[01]))\\\\d{4})|7(?:120\\\\d{4,5}|(?:425\\\\d|5(?:202|96\\\\d))\\\\d{4})|(?:(?:1[2-6]\\\\d|4(?:2[24-8]|356|[46][2-6]|5[35])|5(?:[27][2-8]|3[2-68]|4[25-8]|5[23]|6[2-4]|8[25-7]|9[2-7])|6(?:[19]20|42[03-6]|(?:52|7[45])\\\\d)|7(?:[04][25-8]|[15][235-7]|22|3[2-4]))\\\\d|8(?:[135]2\\\\d\\\\d|2(?:2\\\\d\\\\d|320)))\\\\d{3}|25\\\\d{5,6}|(?:2[2-9]|43[235-7]|6(?:1[2356]|[24][2-6]|3[256]|5[2-4]|6[2-8]|7[235-7]|8[245]|9[24])|8(?:1[235689]|2[2-8]|32|4[24-7]|5[245]|6[23]))\\\\d{4}|(?:4[35]|5[48]|63|7[0145]|8[13])470\\\\d{4}|(?:4[35]|5[48]|63|7[0145]|8[13])4\\\\d{4}\",\n, , , \"1234567\", , , [6, 7, 8, 9], [5]], [, , \"(?:17[01]|9(?:2(?:[0-4]|[56]\\\\d\\\\d)|(?:3(?:[0-36]|4\\\\d)|6[7-9]\\\\d|7(?:3|5[0-2]|[6-9]\\\\d)|8(?:8[7-9]|9\\\\d))\\\\d|4(?:(?:[0245]\\\\d|[1379])\\\\d|88)|5[0-6]|9(?:[089]|[5-7]\\\\d\\\\d))\\\\d)\\\\d{4}|9[69]1\\\\d{6}|9[68]\\\\d{6}\", , , , \"92123456\", , , [7, 8, 9, 10]], [, , \"80080(?:[01][1-9]|2\\\\d)\\\\d{3}\", , , , \"8008001234\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"1333\\\\d{4}|[12]468\\\\d{4}\", , , , \"13331234\", , , [8]],\n\"MM\", 95, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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})\",\n\"$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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MN:[, [, , \"[12]\\\\d{7,9}|[57-9]\\\\d{7}\", , , , , , , [8, 9, 10], [4, 5, 6]], [, , \"[12](?:3[2-8]|4[2-68]|5[1-4689])\\\\d{6,7}|(?:11(?:3\\\\d|4[568])|(?:(?:21|5[0568])\\\\d|70[0-5])\\\\d)\\\\d{4}|[12]2(?:[1-3]\\\\d{5,6}|7\\\\d{6})\", , , , \"50123456\", ,\n, , [4, 5, 6]], [, , \"(?:8(?:[05689]\\\\d|3[01])|9(?:[014-9]\\\\d|20|3[0-4]))\\\\d{5}\", , , , \"88123456\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"7(?:100|5(?:0[0579]|1[015]|[389]5|[57][57])|(?:6[0167]|7\\\\d|8[01])\\\\d)\\\\d{4}\", , , , \"75153456\", , , [8]], \"MN\", 976, \"001\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{4})\", \"$1 $2 $3\", [\"[12]1\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[57-9]\"]], [, \"(\\\\d{3})(\\\\d{5,6})\", \"$1 $2\",\n[\"[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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MO:[, [, , \"(?:28|[68]\\\\d)\\\\d{6}\", , , , , , , [8]], [, , \"(?:28[2-57-9]|8(?:11|[2-57-9]\\\\d))\\\\d{5}\", , , , \"28212345\"], [, , \"6(?:[2356]\\\\d\\\\d|8(?:[02][5-9]|[1478]\\\\d|[356][0-4]))\\\\d{4}\",\n, , , \"66123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"MO\", 853, \"00\", , , , , , , , [[, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[268]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MP:[, [, , \"[58]\\\\d{9}|(?:67|90)0\\\\d{7}\", , , , , , , [10], [7]], [, , \"670(?:2(?:3[3-7]|56|8[5-8])|32[1-38]|4(?:33|8[348])|5(?:32|55|88)|6(?:64|70|82)|78[3589]|8[3-9]8|989)\\\\d{4}\",\n, , , \"6702345678\", , , , [7]], [, , \"670(?:2(?:3[3-7]|56|8[5-8])|32[1-38]|4(?:33|8[348])|5(?:32|55|88)|6(?:64|70|82)|78[3589]|8[3-9]8|989)\\\\d{4}\", , , , \"6702345678\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"MP\", 1, \"011\", \"1\", , , \"1|([2-9]\\\\d{6})$\", \"670$1\", , 1, , , [, , , , , , , , , [-1]], ,\n\"670\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MQ:[, [, , \"(?:596|69\\\\d)\\\\d{6}\", , , , , , , [9]], [, , \"596(?:0[0-7]|10|2[7-9]|3[05-9]|4[0-46-8]|[5-7]\\\\d|8[09]|9[4-8])\\\\d{4}\", , , , \"596301234\"], [, , \"69(?:6(?:[0-47-9]\\\\d|5[0-6]|6[0-4])|727)\\\\d{4}\", , , , \"696201234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"MQ\", 596, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\n\"$1 $2 $3 $4\", [\"[56]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MR:[, [, , \"(?:[2-4]\\\\d\\\\d|800)\\\\d{5}\", , , , , , , [8]], [, , \"(?:25[08]|35\\\\d|45[1-7])\\\\d{5}\", , , , \"35123456\"], [, , \"[2-4][0-46-9]\\\\d{6}\", , , , \"22123456\"], [, , \"800\\\\d{5}\", , , , \"80012345\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"MR\", 222, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\n\"$1 $2 $3 $4\", [\"[2-48]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MS:[, [, , \"66449\\\\d{5}|(?:[58]\\\\d\\\\d|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"664491\\\\d{4}\", , , , \"6644912345\", , , , [7]], [, , \"66449[2-6]\\\\d{4}\", , , , \"6644923456\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\",\n, , , \"5002345678\"], [, , , , , , , , , [-1]], \"MS\", 1, \"011\", \"1\", , , \"1|(4\\\\d{6})$\", \"664$1\", , , , , [, , , , , , , , , [-1]], , \"664\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MT:[, [, , \"3550\\\\d{4}|(?:[2579]\\\\d\\\\d|800)\\\\d{5}\", , , , , , , [8]], [, , \"2(?:0(?:[19]\\\\d|3[1-4]|6[059])|[1-357]\\\\d\\\\d)\\\\d{4}\", , , , \"21001234\"], [, , \"(?:7(?:210|[79]\\\\d\\\\d)|9(?:2(?:1[01]|31)|69[67]|8(?:1[1-3]|89|97)|9\\\\d\\\\d))\\\\d{4}\", , , , \"96961234\"], [, , \"800[3467]\\\\d{4}\",\n, , , \"80071234\"], [, , \"5(?:0(?:0(?:37|43)|(?:6\\\\d|70|9[0168])\\\\d)|[12]\\\\d0[1-5])\\\\d{3}\", , , , \"50037123\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"3550\\\\d{4}\", , , , \"35501234\"], \"MT\", 356, \"00\", , , , , , , , [[, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[2357-9]\"]]], , [, , \"7117\\\\d{4}\", , , , \"71171234\"], , , [, , , , , , , , , [-1]], [, , \"501\\\\d{5}\", , , , \"50112345\"], , , [, , , , , , , , , [-1]]], MU:[, [, , \"(?:[2-468]|5\\\\d)\\\\d{6}\", , , , , , , [7, 8]], [, , \"(?:2(?:[03478]\\\\d|1[0-7]|6[0-79])|4(?:[013568]\\\\d|2[4-7])|54(?:[34]\\\\d|71)|6\\\\d\\\\d|8(?:14|3[129]))\\\\d{4}\",\n, , , \"54480123\"], [, , \"5(?:4(?:2[1-389]|7[1-9])|87[15-8])\\\\d{4}|5(?:2[589]|4[3489]|7\\\\d|8[0-689]|9[0-8])\\\\d{5}\", , , , \"52512345\", , , [8]], [, , \"80[0-2]\\\\d{4}\", , , , \"8001234\", , , [7]], [, , \"30\\\\d{5}\", , , , \"3012345\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"3(?:20|9\\\\d)\\\\d{4}\", , , , \"3201234\", , , [7]], \"MU\", 230, \"0(?:0|[24-7]0|3[03])\", , , , , , \"020\", , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[2-46]|8[013]\"]], [, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"5\"]]], , [, , , ,\n, , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MV:[, [, , \"(?:800|9[0-57-9]\\\\d)\\\\d{7}|[34679]\\\\d{6}\", , , , , , , [7, 10]], [, , \"(?:3(?:0[0-3]|3[0-59])|6(?:[57][02468]|6[024-68]|8[024689]))\\\\d{4}\", , , , \"6701234\", , , [7]], [, , \"46[46]\\\\d{4}|(?:7[2-9]|9[13-9])\\\\d{5}\", , , , \"7712345\", , , [7]], [, , \"800\\\\d{7}\", , , , \"8001234567\", , , [10]], [, , \"900\\\\d{7}\", , , , \"9001234567\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]],\n[, , , , , , , , , [-1]], \"MV\", 960, \"0(?:0|19)\", , , , , , \"00\", , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1-$2\", [\"[3467]|9[13-9]\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[89]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"4[05]0\\\\d{4}\", , , , \"4001234\", , , [7]], , , [, , , , , , , , , [-1]]], MW:[, [, , \"1\\\\d{6}(?:\\\\d{2})?|(?:[23]1|77|88|99)\\\\d{7}\", , , , , , , [7, 9]], [, , \"(?:1[2-9]|21\\\\d\\\\d)\\\\d{5}\", , , , \"1234567\"], [, , \"111\\\\d{6}|(?:77|88|99)\\\\d{7}\", , , , \"991234567\",\n, , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"31\\\\d{7}\", , , , \"310123456\", , , [9]], \"MW\", 265, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"3\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[17-9]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]],\n[, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MX:[, [, , \"(?:1(?:[01467]\\\\d|[2359][1-9]|8[1-79])|[2-9]\\\\d)\\\\d{8}\", , , , , , , [10, 11], [7, 8]], [, , \"(?:2(?:0[01]|2[1-9]|3[1-35-8]|4[13-9]|7[1-689]|8[1-578]|9[467])|3(?:1[1-79]|[2458][1-9]|3\\\\d|7[1-8]|9[1-5])|4(?:1[1-57-9]|[24-7][1-9]|3[1-8]|8[1-35-9]|9[2-689])|5(?:[56]\\\\d|88|9[1-79])|6(?:1[2-68]|[2-4][1-9]|5[1-3689]|6[1-57-9]|7[1-7]|8[67]|9[4-8])|7(?:[1-467][1-9]|5[13-9]|8[1-69]|9[17])|8(?:1\\\\d|2[13-689]|3[1-6]|4[124-6]|6[1246-9]|7[1-378]|9[12479])|9(?:1[346-9]|2[1-4]|3[2-46-8]|5[1348]|[69][1-9]|7[12]|8[1-8]))\\\\d{7}\",\n, , , \"2001234567\", , , [10], [7, 8]], [, , \"(?:1(?:2(?:2[1-9]|3[1-35-8]|4[13-9]|7[1-689]|8[1-578]|9[467])|3(?:1[1-79]|[2458][1-9]|3\\\\d|7[1-8]|9[1-5])|4(?:1[1-57-9]|[24-7][1-9]|3[1-8]|8[1-35-9]|9[2-689])|5(?:[56]\\\\d|88|9[1-79])|6(?:1[2-68]|[2-4][1-9]|5[1-3689]|6[1-57-9]|7[1-7]|8[67]|9[4-8])|7(?:[1-467][1-9]|5[13-9]|8[1-69]|9[17])|8(?:1\\\\d|2[13-689]|3[1-6]|4[124-6]|6[1246-9]|7[1-378]|9[12479])|9(?:1[346-9]|2[1-4]|3[2-46-8]|5[1348]|[69][1-9]|7[12]|8[1-8]))|2(?:2[1-9]|3[1-35-8]|4[13-9]|7[1-689]|8[1-578]|9[467])|3(?:1[1-79]|[2458][1-9]|3\\\\d|7[1-8]|9[1-5])|4(?:1[1-57-9]|[24-7][1-9]|3[1-8]|8[1-35-9]|9[2-689])|5(?:[56]\\\\d|88|9[1-79])|6(?:1[2-68]|[2-4][1-9]|5[1-3689]|6[1-57-9]|7[1-7]|8[67]|9[4-8])|7(?:[1-467][1-9]|5[13-9]|8[1-69]|9[17])|8(?:1\\\\d|2[13-689]|3[1-6]|4[124-6]|6[1246-9]|7[1-378]|9[12479])|9(?:1[346-9]|2[1-4]|3[2-46-8]|5[1348]|[69][1-9]|7[12]|8[1-8]))\\\\d{7}\",\n, , , \"12221234567\", , , , [7, 8]], [, , \"8(?:00|88)\\\\d{7}\", , , , \"8001234567\", , , [10]], [, , \"900\\\\d{7}\", , , , \"9001234567\", , , [10]], [, , \"300\\\\d{7}\", , , , \"3001234567\", , , [10]], [, , \"500\\\\d{7}\", , , , \"5001234567\", , , [10]], [, , , , , , , , , [-1]], \"MX\", 52, \"0[09]\", \"01\", , , \"0(?:[12]|4[45])|1\", , \"00\", , [[, \"(\\\\d{5})\", \"$1\", [\"53\"]], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"33|5[56]|81\"], , , 1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[2-9]\"], , , 1], [, \"(\\\\d)(\\\\d{2})(\\\\d{4})(\\\\d{4})\",\n\"$2 $3 $4\", [\"1(?:33|5[56]|81)\"], , , 1], [, \"(\\\\d)(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$2 $3 $4\", [\"1\"], , , 1]], [[, \"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"33|5[56]|81\"], , , 1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[2-9]\"], , , 1], [, \"(\\\\d)(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$2 $3 $4\", [\"1(?:33|5[56]|81)\"], , , 1], [, \"(\\\\d)(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$2 $3 $4\", [\"1\"], , , 1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MY:[, [,\n, \"1\\\\d{8,9}|(?:3\\\\d|[4-9])\\\\d{7}\", , , , , , , [8, 9, 10], [6, 7]], [, , \"(?:3(?:2[0-36-9]|3[0-368]|4[0-278]|5[0-24-8]|6[0-467]|7[1246-9]|8\\\\d|9[0-57])\\\\d|4(?:2[0-689]|[3-79]\\\\d|8[1-35689])|5(?:2[0-589]|[3468]\\\\d|5[0-489]|7[1-9]|9[23])|6(?:2[2-9]|3[1357-9]|[46]\\\\d|5[0-6]|7[0-35-9]|85|9[015-8])|7(?:[2579]\\\\d|3[03-68]|4[0-8]|6[5-9]|8[0-35-9])|8(?:[24][2-8]|3[2-5]|5[2-7]|6[2-589]|7[2-578]|[89][2-9])|9(?:0[57]|13|[25-7]\\\\d|[3489][0-8]))\\\\d{5}\", , , , \"323856789\", , , [8, 9], [6, 7]], [, , \"1(?:4400|8(?:47|8[27])[0-4])\\\\d{4}|1(?:0(?:[23568]\\\\d|4[0-6]|7[016-9]|9[0-8])|1(?:[1-5]\\\\d\\\\d|6(?:0[5-9]|[1-9]\\\\d))|(?:[23679][2-9]|4[235-9]|59\\\\d)\\\\d|8(?:1[23]|[236]\\\\d|4[06]|5[7-9]|7[016-9]|8[01]|9[0-8]))\\\\d{5}\",\n, , , \"123456789\", , , [9, 10]], [, , \"1[378]00\\\\d{6}\", , , , \"1300123456\", , , [10]], [, , \"1600\\\\d{6}\", , , , \"1600123456\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"154(?:6(?:0\\\\d|1[0-3])|8(?:[25]1|4[0189]|7[0-4679]))\\\\d{4}\", , , , \"1546012345\", , , [10]], \"MY\", 60, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d)(\\\\d{3})(\\\\d{4})\", \"$1-$2 $3\", [\"[4-79]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3,4})\", \"$1-$2 $3\", [\"1(?:[0249]|[367][2-9]|8[1-9])|8\"], \"0$1\"], [, \"(\\\\d)(\\\\d{4})(\\\\d{4})\",\n\"$1-$2 $3\", [\"3\"], \"0$1\"], [, \"(\\\\d)(\\\\d{3})(\\\\d{2})(\\\\d{4})\", \"$1-$2-$3-$4\", [\"1[36-8]\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1-$2 $3\", [\"15\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1-$2 $3\", [\"1\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], MZ:[, [, , \"(?:2|8\\\\d)\\\\d{7}\", , , , , , , [8, 9]], [, , \"2(?:[1346]\\\\d|5[0-2]|[78][12]|93)\\\\d{5}\", , , , \"21123456\", , , [8]], [, , \"8[2-7]\\\\d{7}\", , , , \"821234567\", , , [9]],\n[, , \"800\\\\d{6}\", , , , \"800123456\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"MZ\", 258, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{3,4})\", \"$1 $2 $3\", [\"2|8[2-7]\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"8\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], NA:[, [, , \"[68]\\\\d{7,8}\", , , , , , , [8, 9]], [, , \"6(?:1(?:[02-4]\\\\d\\\\d|17)|2(?:17|54\\\\d|69|70)|3(?:17|2[0237]\\\\d|34|6[289]|7[01]|81)|4(?:17|(?:27|41|5[25])\\\\d|69|7[01])|5(?:17|2[236-8]\\\\d|69|7[01])|6(?:17|26\\\\d|38|42|69|7[01])|7(?:17|(?:2[2-4]|30)\\\\d|6[89]|7[01]))\\\\d{4}|6(?:1(?:2[2-7]|3[01378]|4[0-4]|69|7[014])|25[0-46-8]|32\\\\d|4(?:2[0-27]|4[016]|5[0-357])|52[02-9]|62[56]|7(?:2[2-69]|3[013]))\\\\d{4}\",\n, , , \"61221234\"], [, , \"(?:60|8[1245])\\\\d{7}\", , , , \"811234567\", , , [9]], [, , \"80\\\\d{7}\", , , , \"800123456\", , , [9]], [, , \"8701\\\\d{5}\", , , , \"870123456\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"8(?:3\\\\d\\\\d|86)\\\\d{5}\", , , , \"88612345\"], \"NA\", 264, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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})\",\n\"$1 $2 $3\", [\"8\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], NC:[, [, , \"[2-57-9]\\\\d{5}\", , , , , , , [6]], [, , \"(?:2[03-9]|3[0-5]|4[1-7]|88)\\\\d{4}\", , , , \"201234\"], [, , \"(?:5[0-4]|[79]\\\\d|8[0-79])\\\\d{4}\", , , , \"751234\"], [, , , , , , , , , [-1]], [, , \"36\\\\d{4}\", , , , \"366711\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"NC\", 687, \"00\", , , , , , , , [[, \"(\\\\d{3})\", \"$1\", [\"5[6-8]\"]],\n[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1.$2.$3\", [\"[2-57-9]\"]]], [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1.$2.$3\", [\"[2-57-9]\"]]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], NE:[, [, , \"[0289]\\\\d{7}\", , , , , , , [8]], [, , \"2(?:0(?:20|3[1-8]|4[13-5]|5[14]|6[14578]|7[1-578])|1(?:4[145]|5[14]|6[14-68]|7[169]|88))\\\\d{4}\", , , , \"20201234\"], [, , \"(?:8[014589]|9\\\\d)\\\\d{6}\", , , , \"93123456\"], [, , \"08\\\\d{6}\", , , , \"08123456\"], [, , \"09\\\\d{6}\",\n, , , \"09123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"NE\", 227, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"08\"]], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[089]|2[01]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], NF:[, [, , \"[13]\\\\d{5}\", , , , , , , [6], [5]], [, , \"(?:1(?:06|17|28|39)|3[0-2]\\\\d)\\\\d{3}\", , , , \"106609\", , , , [5]], [, , \"3[58]\\\\d{4}\",\n, , , \"381234\", , , , [5]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"NF\", 672, \"00\", , , , \"([0-258]\\\\d{4})$\", \"3$1\", , , [[, \"(\\\\d{2})(\\\\d{4})\", \"$1 $2\", [\"1\"]], [, \"(\\\\d)(\\\\d{5})\", \"$1 $2\", [\"3\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], NG:[, [, , \"(?:[124-7]|9\\\\d{3})\\\\d{6}|[1-9]\\\\d{7}|[78]\\\\d{9,13}\", , , , , , , [7, 8, 10, 11, 12,\n13, 14], [5, 6]], [, , \"(?:(?:[1-356]\\\\d|4[02-8]|7[0-79]|8[2-9])\\\\d|9(?:0[3-9]|[1-9]\\\\d))\\\\d{5}|(?:[12]\\\\d|4[147]|5[14579]|6[1578]|7[0-3578])\\\\d{5}\", , , , \"18040123\", , , [7, 8], [5, 6]], [, , \"(?:707[0-3]|8(?:01|19)[01])\\\\d{6}|(?:70[1-689]|8(?:0[2-9]|1[0-8])|90[1-35-9])\\\\d{7}\", , , , \"8021234567\", , , [10]], [, , \"800\\\\d{7,11}\", , , , \"80017591759\", , , [10, 11, 12, 13, 14]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"NG\", 234, \"009\",\n\"0\", , , \"0\", , , , [[, \"(\\\\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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"700\\\\d{7,11}\", ,\n, , \"7001234567\", , , [10, 11, 12, 13, 14]], , , [, , , , , , , , , [-1]]], NI:[, [, , \"(?:1800|[25-8]\\\\d{3})\\\\d{4}\", , , , , , , [8]], [, , \"2\\\\d{7}\", , , , \"21234567\"], [, , \"(?:5(?:5[0-7]|[78]\\\\d)|6(?:20|3[035]|4[045]|5[05]|77|8[1-9]|9[059])|(?:7[5-8]|8\\\\d)\\\\d)\\\\d{5}\", , , , \"81234567\"], [, , \"1800\\\\d{4}\", , , , \"18001234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"NI\", 505, \"00\", , , , , , , , [[, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[125-8]\"]]],\n, [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], NL:[, [, , \"(?:[124-7]\\\\d\\\\d|3(?:[02-9]\\\\d|1[0-8]))\\\\d{6}|[89]\\\\d{6,9}|1\\\\d{4,5}\", , , , , , , [5, 6, 7, 8, 9, 10]], [, , \"(?:1(?:[035]\\\\d|1[13-578]|6[124-8]|7[24]|8[0-467])|2(?:[0346]\\\\d|2[2-46-9]|5[125]|9[479])|3(?:[03568]\\\\d|1[3-8]|2[01]|4[1-8])|4(?:[0356]\\\\d|1[1-368]|7[58]|8[15-8]|9[23579])|5(?:[0358]\\\\d|[19][1-9]|2[1-57-9]|4[13-8]|6[126]|7[0-3578])|7\\\\d\\\\d)\\\\d{6}\", , , , \"101234567\",\n, , [9]], [, , \"6[1-58]\\\\d{7}\", , , , \"612345678\", , , [9]], [, , \"800\\\\d{4,7}\", , , , \"8001234\", , , [7, 8, 9, 10]], [, , \"90[069]\\\\d{4,7}\", , , , \"9061234\", , , [7, 8, 9, 10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"(?:85|91)\\\\d{7}\", , , , \"851234567\", , , [9]], \"NL\", 31, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{4})\", \"$1\", [\"1[238]|[34]\"]], [, \"(\\\\d{2})(\\\\d{3,4})\", \"$1 $2\", [\"14\"]], [, \"(\\\\d{6})\", \"$1\", [\"1\"]], [, \"(\\\\d{3})(\\\\d{4,7})\", \"$1 $2\", [\"[89]0\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{7})\",\n\"$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-57-9]\"], \"0$1\"]], [[, \"(\\\\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})\",\n\"$1 $2 $3\", [\"[1-57-9]\"], \"0$1\"]], [, , \"66\\\\d{7}\", , , , \"662345678\", , , [9]], , , [, , \"140(?:1[035]|2[0346]|3[03568]|4[0356]|5[0358]|8[458])|140(?:1[16-8]|2[259]|3[124]|4[17-9]|5[124679]|7)\\\\d\", , , , , , , [5, 6]], [, , \"140(?:1[035]|2[0346]|3[03568]|4[0356]|5[0358]|8[458])|(?:140(?:1[16-8]|2[259]|3[124]|4[17-9]|5[124679]|7)|8[478]\\\\d{6})\\\\d\", , , , \"14020\", , , [5, 6, 9]], , , [, , , , , , , , , [-1]]], NO:[, [, , \"(?:0|[2-9]\\\\d{3})\\\\d{4}\", , , , , , , [5, 8]], [, , \"(?:2[1-4]|3[1-3578]|5[1-35-7]|6[1-4679]|7[0-8])\\\\d{6}\",\n, , , \"21234567\", , , [8]], [, , \"(?:4[015-8]|5[89]|9\\\\d)\\\\d{6}\", , , , \"40612345\", , , [8]], [, , \"80[01]\\\\d{5}\", , , , \"80012345\", , , [8]], [, , \"82[09]\\\\d{5}\", , , , \"82012345\", , , [8]], [, , \"810(?:0[0-6]|[2-8]\\\\d)\\\\d{3}\", , , , \"81021234\", , , [8]], [, , \"880\\\\d{5}\", , , , \"88012345\", , , [8]], [, , \"85[0-5]\\\\d{5}\", , , , \"85012345\", , , [8]], \"NO\", 47, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{3})\", \"$1 $2 $3\", [\"[489]\"]], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[235-7]\"]]],\n, [, , , , , , , , , [-1]], 1, \"[02-689]|7[0-8]\", [, , , , , , , , , [-1]], [, , \"(?:0[2-9]|81(?:0(?:0[7-9]|1\\\\d)|5\\\\d\\\\d))\\\\d{3}\", , , , \"02000\"], , , [, , \"81[23]\\\\d{5}\", , , , \"81212345\", , , [8]]], NP:[, [, , \"9\\\\d{9}|[1-9]\\\\d{7}\", , , , , , , [8, 10], [6, 7]], [, , \"1[0-6]\\\\d{6}|(?:2[13-79]|3[135-8]|4[146-9]|5[135-7]|6[13-9]|7[15-9]|8[1-46-9]|9[1-79])[2-6]\\\\d{5}\", , , , \"14567890\", , , [8], [6, 7]], [, , \"9(?:6[0-3]|7[245]|8[0-24-68])\\\\d{7}\", , , , \"9841234567\", , , [10]], [, , , , , , , , ,\n[-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"NP\", 977, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d)(\\\\d{7})\", \"$1-$2\", [\"1[2-6]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{6})\", \"$1-$2\", [\"[1-8]|9(?:[1-579]|6[2-6])\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{7})\", \"$1-$2\", [\"9\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], NR:[, [, , \"(?:444|55\\\\d|888)\\\\d{4}\", , , , , , , [7]], [, , \"(?:444|888)\\\\d{4}\",\n, , , \"4441234\"], [, , \"55[4-9]\\\\d{4}\", , , , \"5551234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"NR\", 674, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[458]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], NU:[, [, , \"(?:[47]|888\\\\d)\\\\d{3}\", , , , , , , [4, 7]], [, , \"[47]\\\\d{3}\", , , , \"7012\", , , [4]], [, , \"888[4-9]\\\\d{3}\",\n, , , \"8884012\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"NU\", 683, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"8\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], NZ:[, [, , \"[28]\\\\d{7,9}|[346]\\\\d{7}|(?:508|[79]\\\\d)\\\\d{6,7}\", , , , , , , [8, 9, 10], [7]], [, , \"24099\\\\d{3}|(?:3[2-79]|[49][2-9]|6[235-9]|7[2-57-9])\\\\d{6}\",\n, , , \"32345678\", , , [8], [7]], [, , \"2[0-28]\\\\d{8}|2[0-27-9]\\\\d{7}|21\\\\d{6}\", , , , \"211234567\"], [, , \"508\\\\d{6,7}|80\\\\d{6,8}\", , , , \"800123456\"], [, , \"90\\\\d{6,7}\", , , , \"900123456\", , , [8, 9]], [, , , , , , , , , [-1]], [, , \"70\\\\d{7}\", , , , \"701234567\", , , [9]], [, , , , , , , , , [-1]], \"NZ\", 64, \"0(?:0|161)\", \"0\", , , \"0\", , \"00\", , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{3})\", \"$1 $2 $3\", [\"[89]0\"], \"0$1\"], [, \"(\\\\d)(\\\\d{3})(\\\\d{4})\", \"$1-$2 $3\", [\"24|[346]|7[2-57-9]|9[2-9]\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3,4})\",\n\"$1 $2 $3\", [\"2(?:10|74)|[59]|80\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3,4})(\\\\d{4})\", \"$1 $2 $3\", [\"2[028]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3,5})\", \"$1 $2 $3\", [\"2(?:[169]|7[0-35-9])|7|86\"], \"0$1\"]], , [, , \"[28]6\\\\d{6,7}\", , , , \"26123456\", , , [8, 9]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], OM:[, [, , \"(?:[279]\\\\d{3}|500)\\\\d{4}|8007\\\\d{4,5}\", , , , , , , [7, 8, 9]], [, , \"2[2-6]\\\\d{6}\", , , , \"23123456\", , , [8]], [, , \"90[1-9]\\\\d{5}|(?:7[129]|9[1-9])\\\\d{6}\",\n, , , \"92123456\", , , [8]], [, , \"500\\\\d{4}|8007\\\\d{4,5}\", , , , \"80071234\"], [, , \"900\\\\d{5}\", , , , \"90012345\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"OM\", 968, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4,6})\", \"$1 $2\", [\"[58]\"]], [, \"(\\\\d{2})(\\\\d{6})\", \"$1 $2\", [\"2\"]], [, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[79]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], PA:[, [, , \"(?:[1-57-9]|6\\\\d)\\\\d{6}\",\n, , , , , , [7, 8]], [, , \"(?:1(?:0\\\\d|1[479]|2[37]|3[0137]|4[17]|5[05]|[68][58]|7[0167]|9[39])|2(?:[0235-79]\\\\d|1[0-7]|4[013-9]|8[026-9])|3(?:[089]\\\\d|1[014-7]|2[0-35]|33|4[0-579]|55|6[068]|7[06-8])|4(?:00|3[0-579]|4\\\\d|7[0-57-9])|5(?:[01]\\\\d|2[0-7]|[56]0|79)|7(?:0[09]|2[0-26-8]|3[03]|4[04]|5[05-9]|6[05]|7[0-24-9]|8[7-9]|90)|8(?:09|2[89]|3\\\\d|4[0-24-689]|5[014]|8[02])|9(?:0[5-9]|1[0135-8]|2[036-9]|3[35-79]|40|5[0457-9]|6[05-9]|7[04-9]|8[35-8]|9\\\\d))\\\\d{4}\", , , , \"2001234\", , , [7]], [, , \"(?:1[16]1|21[89]|6(?:[02-9]\\\\d|1[0-6])\\\\d|8(?:1[01]|7[23]))\\\\d{4}\",\n, , , \"61234567\"], [, , \"800\\\\d{4}\", , , , \"8001234\", , , [7]], [, , \"(?:8(?:22|55|60|7[78]|86)|9(?:00|81))\\\\d{4}\", , , , \"8601234\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"PA\", 507, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1-$2\", [\"[1-57-9]\"]], [, \"(\\\\d{4})(\\\\d{4})\", \"$1-$2\", [\"6\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], PE:[, [, , \"(?:[14-8]|9\\\\d)\\\\d{7}\", , , , , ,\n, [8, 9], [6, 7]], [, , \"19(?:[02-68]\\\\d|1[035-9]|7[0-689]|9[1-9])\\\\d{4}|(?:1[0-8]|4[1-4]|5[1-46]|6[1-7]|7[2-46]|8[2-4])\\\\d{6}\", , , , \"11234567\", , , [8], [6, 7]], [, , \"9\\\\d{8}\", , , , \"912345678\", , , [9]], [, , \"800\\\\d{5}\", , , , \"80012345\", , , [8]], [, , \"805\\\\d{5}\", , , , \"80512345\", , , [8]], [, , \"801\\\\d{5}\", , , , \"80112345\", , , [8]], [, , \"80[24]\\\\d{5}\", , , , \"80212345\", , , [8]], [, , , , , , , , , [-1]], \"PE\", 51, \"19(?:1[124]|77|90)00\", \"0\", \" Anexo \", , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{5})\",\n\"$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\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], PF:[, [, , \"[48]\\\\d{7}|4\\\\d{5}\", , , , , , , [6, 8]], [, , \"4(?:[09][4-689]\\\\d|4)\\\\d{4}\", , , , \"40412345\"], [, , \"8[7-9]\\\\d{6}\", , , , \"87123456\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]],\n[, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"PF\", 689, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3\", [\"44\"]], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[48]\"]]], , [, , , , , , , , , [-1]], , , [, , \"44\\\\d{4}\", , , , , , , [6]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], PG:[, [, , \"(?:180|[78]\\\\d{3})\\\\d{4}|(?:[2-589]\\\\d|64)\\\\d{5}\", , , , , , , [7, 8]], [, , \"(?:64[1-9]|7730|85[02-46-9])\\\\d{4}|(?:3[0-2]|4[257]|5[34]|77[0-24]|9[78])\\\\d{5}\",\n, , , \"3123456\"], [, , \"775\\\\d{5}|(?:7[0-689]|81)\\\\d{6}\", , , , \"70123456\", , , [8]], [, , \"180\\\\d{4}\", , , , \"1801234\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"2(?:0[0-47]|7[568])\\\\d{4}\", , , , \"2751234\", , , [7]], \"PG\", 675, \"00|140[1-3]\", , , , , , \"00\", , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"18|[2-69]|85\"]], [, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[78]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [,\n, , , , , , , , [-1]]], PH:[, [, , \"1800\\\\d{7,9}|(?:2|[89]\\\\d{4})\\\\d{5}|[2-8]\\\\d{8}|[28]\\\\d{7}\", , , , , , , [6, 8, 9, 10, 11, 12, 13], [4, 5, 7]], [, , \"(?:(?:2[3-8]|3[2-68]|4[2-9]|5[2-6]|6[2-58]|7[24578])\\\\d{3}|88(?:22\\\\d\\\\d|42))\\\\d{4}|2\\\\d{5}(?:\\\\d{2})?|8[2-8]\\\\d{7}\", , , , \"21234567\", , , [6, 8, 9, 10], [4, 5, 7]], [, , \"(?:81[37]|9(?:0[5-9]|1[0-24-9]|2[0-35-9]|[35]\\\\d|4[235-9]|6[0-25-8]|7[1-9]|8[19]|9[4-9]))\\\\d{7}\", , , , \"9051234567\", , , [10]], [, , \"1800\\\\d{7,9}\", , , , \"180012345678\", ,\n, [11, 12, 13]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"PH\", 63, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d)(\\\\d{5})\", \"$1 $2\", [\"2\"], \"(0$1)\"], [, \"(\\\\d)(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"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})\",\n\"$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\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], PK:[,\n[, , \"122\\\\d{6}|[24-8]\\\\d{10,11}|9(?:[013-9]\\\\d{8,10}|2(?:[01]\\\\d\\\\d|2(?:[025-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], [5, 6, 7]], [, , \"(?:(?:21|42)[2-9]|58[126])\\\\d{7}|(?:2[25]|4[0146-9]|5[1-35-7]|6[1-8]|7[14]|8[16]|91)[2-9]\\\\d{6}|(?: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]))[2-9]\\\\d{5,6}\", , , , \"2123456789\", , ,\n[9, 10], [5, 6, 7, 8]], [, , \"3(?:[014]\\\\d|2[0-5]|3[0-7]|55|64)\\\\d{7}\", , , , \"3012345678\", , , [10]], [, , \"800\\\\d{5}\", , , , \"80012345\", , , [8]], [, , \"900\\\\d{5}\", , , , \"90012345\", , , [8]], [, , , , , , , , , [-1]], [, , \"122\\\\d{6}\", , , , \"122044444\", , , [9]], [, , , , , , , , , [-1]], \"PK\", 92, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{2})\", \"$1 $2 $3\", [\"[89]0\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d{5})\", \"$1 $2\", [\"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]\"],\n\"(0$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{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})\",\n\"$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)\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"(?:2(?:[125]|3[2358]|4[2-4]|9[2-8])|4(?:[0-246-9]|5[3479])|5(?:[1-35-7]|4[2-467])|6(?:0[468]|[1-8])|7(?:[14]|2[236])|8(?:[16]|2[2-689]|3[23578]|4[3478]|5[2356])|9(?:1|22|3[27-9]|4[2-6]|6[3569]|9[2-7]))111\\\\d{6}\", , , , \"21111825888\", , , [11, 12]], , , [, , , , , , , , , [-1]]],\nPL:[, [, , \"[1-57-9]\\\\d{6}(?:\\\\d{2})?|6\\\\d{5,8}\", , , , , , , [6, 7, 8, 9]], [, , \"(?: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])(?:[02-9]\\\\d{6}|1(?:[0-8]\\\\d{5}|9\\\\d{3}(?:\\\\d{2})?))\", , , , \"123456789\", , , [7, 9]], [, , \"(?:45|5[0137]|6[069]|7[2389]|88)\\\\d{7}\", , , , \"512345678\", , , [9]], [, , \"800\\\\d{6}\", , , , \"800123456\", , , [9]], [, , \"70[01346-8]\\\\d{6}\", , , , \"701234567\", , , [9]], [, , \"801\\\\d{6}\", , , , \"801234567\", , , [9]], [, , , , , , , , , [-1]], [,\n, \"39\\\\d{7}\", , , , \"391234567\", , , [9]], \"PL\", 48, \"00\", , , , , , , , [[, \"(\\\\d{5})\", \"$1\", [\"19\"]], [, \"(\\\\d{3})(\\\\d{3})\", \"$1 $2\", [\"11|64\"]], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{3})\", \"$1 $2 $3\", [\"(?:1[2-8]|2[2-69]|3[2-4]|4[1-468]|5[24-689]|6[1-3578]|7[14-7]|8[1-79]|9[145])1\", \"(?:1[2-8]|2[2-69]|3[2-4]|4[1-468]|5[24-689]|6[1-3578]|7[14-7]|8[1-79]|9[145])19\"]], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{2,3})\", \"$1 $2 $3\", [\"64\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"39|45|5[0137]|6[0469]|7[02389]|8[08]\"]], [,\n\"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"1[2-8]|[2-8]|9[145]\"]]], , [, , \"64\\\\d{4,7}\", , , , \"641234567\"], , , [, , , , , , , , , [-1]], [, , \"804\\\\d{6}\", , , , \"804123456\", , , [9]], , , [, , , , , , , , , [-1]]], PM:[, [, , \"[45]\\\\d{5}\", , , , , , , [6]], [, , \"(?:4[1-3]|50)\\\\d{4}\", , , , \"430123\"], [, , \"(?:4[02-4]|5[05])\\\\d{4}\", , , , \"551234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"PM\", 508,\n\"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3\", [\"[45]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], PR:[, [, , \"(?:[589]\\\\d\\\\d|787)\\\\d{7}\", , , , , , , [10], [7]], [, , \"(?:787|939)[2-9]\\\\d{6}\", , , , \"7872345678\", , , , [7]], [, , \"(?:787|939)[2-9]\\\\d{6}\", , , , \"7872345678\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002345678\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002345678\"],\n[, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"PR\", 1, \"011\", \"1\", , , \"1\", , , 1, , , [, , , , , , , , , [-1]], , \"787|939\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], PS:[, [, , \"[2489]2\\\\d{6}|(?:1\\\\d|5)\\\\d{8}\", , , , , , , [8, 9, 10], [7]], [, , \"(?:22[2-47-9]|42[45]|82[01458]|92[369])\\\\d{5}\", , , , \"22234567\", , , [8], [7]], [, , \"5[69]\\\\d{7}\", , , , \"599123456\", , , [9]], [, , \"1800\\\\d{6}\",\n, , , \"1800123456\", , , [10]], [, , , , , , , , , [-1]], [, , \"1700\\\\d{6}\", , , , \"1700123456\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"PS\", 970, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], PT:[, [, , \"(?:[26-9]\\\\d|30)\\\\d{7}\",\n, , , , , , [9]], [, , \"2(?:[12]\\\\d|[35][1-689]|4[1-59]|6[1-35689]|7[1-9]|8[1-69]|9[1256])\\\\d{6}\", , , , \"212345678\"], [, , \"9(?:[1-36]\\\\d\\\\d|480)\\\\d{5}\", , , , \"912345678\"], [, , \"80[02]\\\\d{6}\", , , , \"800123456\"], [, , \"(?:6(?:0[178]|4[68])\\\\d|76(?:0[1-57]|1[2-47]|2[237]))\\\\d{5}\", , , , \"760123456\"], [, , \"80(?:8\\\\d|9[1579])\\\\d{5}\", , , , \"808123456\"], [, , \"884[0-4689]\\\\d{5}\", , , , \"884123456\"], [, , \"30\\\\d{7}\", , , , \"301234567\"], \"PT\", 351, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\",\n\"$1 $2 $3\", [\"2[12]\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[236-9]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"70(?:7\\\\d|8[17])\\\\d{5}\", , , , \"707123456\"], , , [, , \"600\\\\d{6}\", , , , \"600110000\"]], PW:[, [, , \"(?:[25-8]\\\\d\\\\d|345|488|900)\\\\d{4}\", , , , , , , [7]], [, , \"(?:2(?:55|77)|345|488|5(?:35|44|87)|6(?:22|54|79)|7(?:33|47)|8(?:24|55|76)|900)\\\\d{4}\", , , , \"2771234\"], [, , \"(?:6[2-4689]0|77\\\\d|88[0-4])\\\\d{4}\", , , , \"6201234\"], [, , , , , , , , , [-1]], [,\n, , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"PW\", 680, \"01[12]\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[2-9]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], PY:[, [, , \"59\\\\d{4,6}|(?:[2-46-9]\\\\d|5[0-8])\\\\d{4,7}\", , , , , , , [6, 7, 8, 9], [5]], [, , \"(?:[26]1|3[289]|4[1246-8]|7[1-3]|8[1-36])\\\\d{5,7}|(?:2(?:2[4-68]|7[15]|9[1-5])|3(?:18|3[167]|4[2357]|51)|4(?:3[12]|5[13]|9[1-47])|5(?:[1-4]\\\\d|5[02-4])|6(?:3[1-3]|44|7[1-46-8])|7(?:4[0-4]|6[1-578]|75|8[0-8])|858)\\\\d{5,6}\",\n, , , \"212345678\", , , [7, 8, 9], [5, 6]], [, , \"9(?:51|6[129]|[78][1-6]|9[1-5])\\\\d{6}\", , , , \"961456789\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"8700[0-4]\\\\d{4}\", , , , \"870012345\", , , [9]], \"PY\", 595, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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[347]|7[46-8]|85\"],\n\"(0$1)\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3,4})\", \"$1 $2 $3\", [\"[26]1|3[289]|4[1246-8]|7[1-3]|8[1-36]\"], \"(0$1)\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"87\"]], [, \"(\\\\d{3})(\\\\d{6})\", \"$1 $2\", [\"9\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[2-8]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"[2-9]0\\\\d{4,7}\", , , , \"201234567\"], , , [, , , , , , , , , [-1]]], QA:[, [, , \"800\\\\d{4}|(?:2|[3-7]\\\\d)\\\\d{6}\", , , , , , , [7, 8]], [, , \"4[04]\\\\d{6}\", , , , \"44123456\",\n, , [8]], [, , \"[35-7]\\\\d{7}\", , , , \"33123456\", , , [8]], [, , \"800\\\\d{4}\", , , , \"8001234\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"QA\", 974, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"2[126]|8\"]], [, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[3-7]\"]]], , [, , \"2(?:[12]\\\\d|61)\\\\d{4}\", , , , \"2123456\", , , [7]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], RE:[, [, , \"(?:26|[68]\\\\d)\\\\d{7}\",\n, , , , , , [9]], [, , \"262\\\\d{6}\", , , , \"262161234\"], [, , \"69(?:2\\\\d\\\\d|3(?:0[0-46]|1[013]|2[0-2]|3[0-39]|4\\\\d|5[05]|6[0-26]|7[0-27]|8[0-8]|9[0-479]))\\\\d{4}\", , , , \"692123456\"], [, , \"80\\\\d{7}\", , , , \"801234567\"], [, , \"89[1-37-9]\\\\d{6}\", , , , \"891123456\"], [, , \"8(?:1[019]|2[0156]|84|90)\\\\d{6}\", , , , \"810123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"RE\", 262, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[268]\"], \"0$1\"]], , [, , , , ,\n, , , , [-1]], 1, \"262|69|8\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], RO:[, [, , \"(?:[237]\\\\d|[89]0)\\\\d{7}|[23]\\\\d{5}\", , , , , , , [6, 9]], [, , \"[23][13-6]\\\\d{7}|(?:2(?:19\\\\d|[3-6]\\\\d9)|31\\\\d\\\\d)\\\\d\\\\d\", , , , \"211234567\"], [, , \"7120\\\\d{5}|7(?:[02-7]\\\\d|1[01]|8[03-8]|99)\\\\d{6}\", , , , \"712034567\", , , [9]], [, , \"800\\\\d{6}\", , , , \"800123456\", , , [9]], [, , \"90[036]\\\\d{6}\", , , , \"900123456\", , , [9]], [, , \"801\\\\d{6}\", , , , \"801123456\", , , [9]], [,\n, , , , , , , , [-1]], [, , , , , , , , , [-1]], \"RO\", 40, \"00\", \"0\", \" int \", , \"0\", , , , [[, \"(\\\\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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"37\\\\d{7}\", , , , \"372123456\", , , [9]], , , [, , , , , , , , , [-1]]], RS:[, [, , \"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}\",\n, , , , , , [6, 7, 8, 9, 10, 11, 12], [4, 5]], [, , \"(?:11[1-9]\\\\d|(?:2[389]|39)(?:0[2-9]|[2-9]\\\\d))\\\\d{3,8}|(?:1[02-9]|2[0-24-7]|3[0-8])[2-9]\\\\d{4,9}\", , , , \"10234567\", , , [7, 8, 9, 10, 11, 12], [4, 5, 6]], [, , \"6(?:[0-689]|7\\\\d)\\\\d{6,7}\", , , , \"601234567\", , , [8, 9, 10]], [, , \"800\\\\d{3,9}\", , , , \"80012345\"], [, , \"(?:78\\\\d|90[0169])\\\\d{3,7}\", , , , \"90012345\", , , [6, 7, 8, 9, 10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"RS\", 381, \"00\", \"0\", , , \"0\",\n, , , [[, \"(\\\\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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"7[06]\\\\d{4,10}\", , , , \"700123456\"], , , [, , , , , , , , , [-1]]], RU:[, [, , \"[347-9]\\\\d{9}\", , , , , , , [10], [7]], [, , \"(?:3(?:0[12]|4[1-35-79]|5[1-3]|65|8[1-58]|9[0145])|4(?:01|1[1356]|2[13467]|7[1-5]|8[1-7]|9[1-689])|8(?:1[1-8]|2[01]|3[13-6]|4[0-8]|5[15]|6[1-35-79]|7[1-37-9]))\\\\d{7}\", , , , \"3011234567\",\n, , , [7]], [, , \"9\\\\d{9}\", , , , \"9123456789\"], [, , \"80[04]\\\\d{7}\", , , , \"8001234567\"], [, , \"80[39]\\\\d{7}\", , , , \"8091234567\"], [, , , , , , , , , [-1]], [, , \"808\\\\d{7}\", , , , \"8081234567\"], [, , , , , , , , , [-1]], \"RU\", 7, \"810\", \"8\", , , \"8\", , \"8~10\", , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1-$2-$3\", [\"[0-79]\"]], [, \"(\\\\d{4})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"7(?:1[0-8]|2[1-9])\", \"7(?:1(?:[0-6]2|7|8[27])|2(?:1[23]|[2-9]2))\", \"7(?:1(?:[0-6]2|7|8[27])|2(?:13[03-69]|62[013-9]))|72[1-57-9]2\"],\n\"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\", [\"[3489]\"],\n\"8 ($1)\", , 1]], [[, \"(\\\\d{4})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"7(?:1[0-8]|2[1-9])\", \"7(?:1(?:[0-6]2|7|8[27])|2(?:1[23]|[2-9]2))\", \"7(?:1(?:[0-6]2|7|8[27])|2(?:13[03-69]|62[013-9]))|72[1-57-9]2\"], \"8 ($1)\", , 1], [, \"(\\\\d{5})(\\\\d)(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"7(?:1[0-68]|2[1-9])\", \"7(?:1(?:[06][3-6]|[18]|2[35]|[3-5][3-5])|2(?:[13][3-5]|[24-689]|7[457]))\", \"7(?:1(?:0(?:[356]|4[023])|[18]|2(?:3[013-9]|5)|3[45]|43[013-79]|5(?:3[1-8]|4[1-7]|5)|6(?:3[0-35-9]|[4-6]))|2(?:1(?:3[178]|[45])|[24-689]|3[35]|7[457]))|7(?:14|23)4[0-8]|71(?:33|45)[1-79]\"],\n\"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\", [\"[3489]\"], \"8 ($1)\", , 1]], [, , , , , , , , , [-1]], 1, \"3[04-689]|[489]\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], RW:[, [, , \"(?:06|[27]\\\\d\\\\d|[89]00)\\\\d{6}\", , , , , , , [8, 9]], [, , \"(?:06|2[258]\\\\d)\\\\d{6}\", , , , \"250123456\"], [, , \"7[238]\\\\d{7}\", , , , \"720123456\", , , [9]], [, , \"800\\\\d{6}\", , , , \"800123456\", ,\n, [9]], [, , \"900\\\\d{6}\", , , , \"900123456\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"RW\", 250, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SA:[, [, , \"92\\\\d{7}|(?:[15]|8\\\\d)\\\\d{8}\",\n, , , , , , [9, 10], [7]], [, , \"1(?:1\\\\d|2[24-8]|3[35-8]|4[3-68]|6[2-5]|7[235-7])\\\\d{6}\", , , , \"112345678\", , , [9], [7]], [, , \"5(?:[013-689]\\\\d|7[0-36-8])\\\\d{6}\", , , , \"512345678\", , , [9]], [, , \"800\\\\d{7}\", , , , \"8001234567\", , , [10]], [, , \"925\\\\d{6}\", , , , \"925012345\", , , [9]], [, , \"920\\\\d{6}\", , , , \"920012345\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"SA\", 966, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{4})(\\\\d{5})\", \"$1 $2\", [\"9\"]], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\",\n[\"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\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"811\\\\d{7}\", , , , \"8110123456\", , , [10]], , , [, , , , , , , , , [-1]]], SB:[, [, , \"(?:[1-6]|[7-9]\\\\d\\\\d)\\\\d{4}\", , , , , , , [5, 7]], [, , \"(?:1[4-79]|[23]\\\\d|4[0-2]|5[03]|6[0-37])\\\\d{3}\", , , , \"40123\", , , [5]], [, , \"48\\\\d{3}|(?:(?:7[1-9]|8[4-9])\\\\d|9(?:1[2-9]|2[013-9]|3[0-2]|[46]\\\\d|5[0-46-9]|7[0-689]|8[0-79]|9[0-8]))\\\\d{4}\",\n, , , \"7421234\"], [, , \"1[38]\\\\d{3}\", , , , \"18123\", , , [5]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"5[12]\\\\d{3}\", , , , \"51123\", , , [5]], \"SB\", 677, \"0[01]\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{5})\", \"$1 $2\", [\"7|8[4-9]|9(?:[1-8]|9[0-8])\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SC:[, [, , \"8000\\\\d{3}|(?:[249]\\\\d|64)\\\\d{5}\", , , , , , , [7]], [, , \"4[2-46]\\\\d{5}\", , , , \"4217123\"],\n[, , \"2[5-8]\\\\d{5}\", , , , \"2510123\"], [, , \"8000\\\\d{3}\", , , , \"8000000\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"971\\\\d{4}|(?:64|95)\\\\d{5}\", , , , \"6412345\"], \"SC\", 248, \"010|0[0-2]\", , , , , , \"00\", , [[, \"(\\\\d)(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[246]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SD:[, [, , \"[19]\\\\d{8}\", , , , , , , [9]], [, , \"1(?:5[3-7]|8[35-7])\\\\d{6}\", , , ,\n\"153123456\"], [, , \"(?:1[0-2]|9[0-3569])\\\\d{7}\", , , , \"911231234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"SD\", 249, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[19]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SE:[, [, , \"(?:[26]\\\\d\\\\d|9)\\\\d{9}|[1-9]\\\\d{8}|[1-689]\\\\d{7}|[1-4689]\\\\d{6}|2\\\\d{5}\", ,\n, , , , , [6, 7, 8, 9, 10, 12]], [, , \"10[1-8]\\\\d{6}|90[1-9]\\\\d{4,6}|(?:[12][136]|3[356]|4[0246]|6[03]|8\\\\d)\\\\d{5,7}|(?:1(?:2[0-35]|4[0-4]|5[0-25-9]|7[13-6]|[89]\\\\d)|2(?:2[0-7]|4[0136-8]|5[0138]|7[018]|8[01]|9[0-57])|3(?:0[0-4]|1\\\\d|2[0-25]|4[056]|7[0-2]|8[0-3]|9[023])|4(?:1[013-8]|3[0135]|5[14-79]|7[0-246-9]|8[0156]|9[0-689])|5(?:0[0-6]|[15][0-5]|2[0-68]|3[0-4]|4\\\\d|6[03-5]|7[013]|8[0-79]|9[01])|6(?:1[1-3]|2[0-4]|4[02-57]|5[0-37]|6[0-3]|7[0-2]|8[0247]|9[0-356])|9(?:1[0-68]|2\\\\d|3[02-5]|4[0-3]|5[0-4]|[68][01]|7[0135-8]))\\\\d{5,6}\",\n, , , \"8123456\", , , [7, 8, 9]], [, , \"7[02369]\\\\d{7}\", , , , \"701234567\", , , [9]], [, , \"20\\\\d{4,7}\", , , , \"20123456\", , , [6, 7, 8, 9]], [, , \"649\\\\d{6}|9(?:00|39|44)[1-8]\\\\d{3,6}\", , , , \"9001234567\", , , [7, 8, 9, 10]], [, , \"77[0-7]\\\\d{6}\", , , , \"771234567\", , , [9]], [, , \"75[1-8]\\\\d{6}\", , , , \"751234567\", , , [9]], [, , , , , , , , , [-1]], \"SE\", 46, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{2,3})(\\\\d{2})\", \"$1-$2 $3\", [\"20\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{4})\", \"$1-$2\", [\"9(?:00|39|44)\"],\n\"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{2})\", \"$1-$2 $3\", [\"[12][136]|3[356]|4[0246]|6[03]|90[1-9]\"], \"0$1\"], [, \"(\\\\d)(\\\\d{2,3})(\\\\d{2})(\\\\d{2})\", \"$1-$2 $3 $4\", [\"8\"], \"0$1\"], [, \"(\\\\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\"], [, \"(\\\\d{3})(\\\\d{2,3})(\\\\d{3})\", \"$1-$2 $3\", [\"9(?:00|39|44)\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{2,3})(\\\\d{2})(\\\\d{2})\", \"$1-$2 $3 $4\", [\"1[013689]|2[0136]|3[1356]|4[0246]|54|6[03]|90[1-9]\"],\n\"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1-$2 $3 $4\", [\"7\"], \"0$1\"], [, \"(\\\\d)(\\\\d{3})(\\\\d{3})(\\\\d{2})\", \"$1-$2 $3 $4\", [\"8\"], \"0$1\"], [, \"(\\\\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\"], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{3})\", \"$1-$2 $3 $4\", [\"9\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1-$2 $3 $4 $5\", [\"[26]\"], \"0$1\"]], [[, \"(\\\\d{2})(\\\\d{2,3})(\\\\d{2})\", \"$1 $2 $3\", [\"20\"]], [, \"(\\\\d{3})(\\\\d{4})\",\n\"$1 $2\", [\"9(?:00|39|44)\"]], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{2})\", \"$1 $2 $3\", [\"[12][136]|3[356]|4[0246]|6[03]|90[1-9]\"]], [, \"(\\\\d)(\\\\d{2,3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"8\"]], [, \"(\\\\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])\"]], [, \"(\\\\d{3})(\\\\d{2,3})(\\\\d{3})\", \"$1 $2 $3\", [\"9(?:00|39|44)\"]], [, \"(\\\\d{2})(\\\\d{2,3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"1[013689]|2[0136]|3[1356]|4[0246]|54|6[03]|90[1-9]\"]],\n[, \"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"7\"]], [, \"(\\\\d)(\\\\d{3})(\\\\d{3})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"8\"]], [, \"(\\\\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])\"]], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{3})\", \"$1 $2 $3 $4\", [\"9\"]], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4 $5\", [\"[26]\"]]], [, , \"74[02-9]\\\\d{6}\", , , , \"740123456\", , , [9]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]],\n, , [, , \"(?:25[245]|67[3-68])\\\\d{9}\", , , , \"254123456789\", , , [12]]], SG:[, [, , \"(?:(?:1\\\\d|8)\\\\d\\\\d|7000)\\\\d{7}|[3689]\\\\d{7}\", , , , , , , [8, 10, 11]], [, , \"6[1-9]\\\\d{6}\", , , , \"61234567\", , , [8]], [, , \"89[01]\\\\d{5}|(?:8[1-8]|9[0-8])\\\\d{6}\", , , , \"81234567\", , , [8]], [, , \"(?:18|8)00\\\\d{7}\", , , , \"18001234567\", , , [10, 11]], [, , \"1900\\\\d{7}\", , , , \"19001234567\", , , [11]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"3[12]\\\\d{6}\", , , , \"31234567\", , , [8]], \"SG\", 65,\n\"0[0-3]\\\\d\", , , , , , , , [[, \"(\\\\d{4,5})\", \"$1\", [\"1[0135-7]|77\"]], [, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[369]|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\"]]], [[, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[369]|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\"]]], [, , , , , , , , , [-1]],\n, , [, , , , , , , , , [-1]], [, , \"7000\\\\d{7}\", , , , \"70001234567\", , , [11]], , , [, , , , , , , , , [-1]]], SH:[, [, , \"(?:[256]\\\\d|8)\\\\d{3}\", , , , , , , [4, 5]], [, , \"2(?:[0-57-9]\\\\d|6[4-9])\\\\d\\\\d\", , , , \"22158\"], [, , \"[56]\\\\d{4}\", , , , \"51234\", , , [5]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"262\\\\d\\\\d\", , , , \"26212\", , , [5]], \"SH\", 290, \"00\", , , , , , , , , , [, , , , , , , , , [-1]], 1, \"[256]\", [, , , , , , ,\n, , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SI:[, [, , \"[1-7]\\\\d{7}|8\\\\d{4,7}|90\\\\d{4,6}\", , , , , , , [5, 6, 7, 8]], [, , \"(?:[1-357][2-8]|4[24-8])\\\\d{6}\", , , , \"12345678\", , , [8], [7]], [, , \"6(?:5(?:1\\\\d|55|[67]0)|9(?:10|[69]\\\\d))\\\\d{4}|(?:[37][01]|4[0139]|51|6[48])\\\\d{6}\", , , , \"31234567\", , , [8]], [, , \"80\\\\d{4,6}\", , , , \"80123456\", , , [6, 7, 8]], [, , \"89[1-3]\\\\d{2,5}|90\\\\d{4,6}\", , , , \"90123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"(?:59\\\\d\\\\d|8(?:1(?:[67]\\\\d|8[01389])|2(?:0\\\\d|2[0378]|8[0-2489])|3[389]\\\\d))\\\\d{4}\",\n, , , \"59012345\", , , [8]], \"SI\", 386, \"00|10(?:22|66|88|99)\", \"0\", , , \"0\", , \"00\", , [[, \"(\\\\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)\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SJ:[, [, , \"0\\\\d{4}|(?:[4589]\\\\d|79)\\\\d{6}\",\n, , , , , , [5, 8]], [, , \"79\\\\d{6}\", , , , \"79123456\", , , [8]], [, , \"(?:4[015-8]|5[89]|9\\\\d)\\\\d{6}\", , , , \"41234567\", , , [8]], [, , \"80[01]\\\\d{5}\", , , , \"80012345\", , , [8]], [, , \"82[09]\\\\d{5}\", , , , \"82012345\", , , [8]], [, , \"810(?:0[0-6]|[2-8]\\\\d)\\\\d{3}\", , , , \"81021234\", , , [8]], [, , \"880\\\\d{5}\", , , , \"88012345\", , , [8]], [, , \"85[0-5]\\\\d{5}\", , , , \"85012345\", , , [8]], \"SJ\", 47, \"00\", , , , , , , , , , [, , , , , , , , , [-1]], , \"79\", [, , , , , , , , , [-1]], [, , \"(?:0[2-9]|81(?:0(?:0[7-9]|1\\\\d)|5\\\\d\\\\d))\\\\d{3}\",\n, , , \"02000\"], , , [, , \"81[23]\\\\d{5}\", , , , \"81212345\", , , [8]]], SK:[, [, , \"[2-689]\\\\d{8}|[2-59]\\\\d{6}|[2-5]\\\\d{5}\", , , , , , , [6, 7, 9]], [, , \"(?:2(?:16|[2-9]\\\\d{3})|[3-5][1-8]\\\\d{3})\\\\d{4}|(?:2|[3-5][1-8])1[67]\\\\d{3}|[3-5][1-8]16\\\\d\\\\d\", , , , \"221234567\"], [, , \"909[1-9]\\\\d{5}|9(?:0[1-8]|1[0-24-9]|[45]\\\\d)\\\\d{6}\", , , , \"912123456\", , , [9]], [, , \"800\\\\d{6}\", , , , \"800123456\", , , [9]], [, , \"9(?:00|[78]\\\\d)\\\\d{6}\", , , , \"900123456\", , , [9]], [, , \"8[5-9]\\\\d{7}\", , , , \"850123456\",\n, , [9]], [, , , , , , , , , [-1]], [, , \"6(?:02|5[0-4]|9[0-6])\\\\d{6}\", , , , \"690123456\", , , [9]], \"SK\", 421, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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{4})(\\\\d{3})\", \"$1 $2\", [\"909\", \"9090\"], \"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})\",\n\"$1/$2 $3 $4\", [\"[3-5]\"], \"0$1\"]], [[, \"(\\\\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\"]], [, , \"9090\\\\d{3}\", , , , \"9090123\", , , [7]], , , [, , \"9090\\\\d{3}|(?:602|8(?:00|[5-9]\\\\d)|9(?:00|[78]\\\\d))\\\\d{6}\",\n, , , , , , [7, 9]], [, , \"96\\\\d{7}\", , , , \"961234567\", , , [9]], , , [, , , , , , , , , [-1]]], SL:[, [, , \"(?:[2378]\\\\d|99)\\\\d{6}\", , , , , , , [8], [6]], [, , \"22\\\\d{6}\", , , , \"22221234\", , , , [6]], [, , \"(?:25|3[0134]|7[5-9]|8[08]|99)\\\\d{6}\", , , , \"25123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"SL\", 232, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{6})\", \"$1 $2\", [\"[237-9]\"], \"(0$1)\"]], , [, , ,\n, , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SM:[, [, , \"(?:0549|[5-7]\\\\d)\\\\d{6}\", , , , , , , [8, 10], [6]], [, , \"0549(?:8[0157-9]|9\\\\d)\\\\d{4}\", , , , \"0549886377\", , , [10], [6]], [, , \"6[16]\\\\d{6}\", , , , \"66661212\", , , [8]], [, , , , , , , , , [-1]], [, , \"7[178]\\\\d{6}\", , , , \"71123456\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"5[158]\\\\d{6}\", , , , \"58001110\", , , [8]], \"SM\", 378, \"00\", , , , \"([89]\\\\d{5})$\",\n\"0549$1\", , , [[, \"(\\\\d{6})\", \"$1\", [\"[89]\"]], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[5-7]\"]], [, \"(\\\\d{4})(\\\\d{6})\", \"$1 $2\", [\"0\"]]], [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[5-7]\"]], [, \"(\\\\d{4})(\\\\d{6})\", \"$1 $2\", [\"0\"]]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SN:[, [, , \"(?:[378]\\\\d{4}|93330)\\\\d{4}\", , , , , , , [9]], [, , \"3(?:0(?:1[0-2]|80)|282|3(?:8[1-9]|9[3-9])|611)\\\\d{5}\", , , ,\n\"301012345\"], [, , \"7(?:[06-8]\\\\d|21|90)\\\\d{6}\", , , , \"701234567\"], [, , \"800\\\\d{6}\", , , , \"800123456\"], [, , \"88[4689]\\\\d{6}\", , , , \"884123456\"], [, , \"81[02468]\\\\d{6}\", , , , \"810123456\"], [, , , , , , , , , [-1]], [, , \"93330\\\\d{4}|3(?:392|9[01]\\\\d)\\\\d{5}\", , , , \"933301234\"], \"SN\", 221, \"00\", , , , , , , , [[, \"(\\\\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]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]],\n[, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SO:[, [, , \"[346-9]\\\\d{8}|[12679]\\\\d{7}|(?:[1-4]\\\\d|59)\\\\d{5}|[1348]\\\\d{5}\", , , , , , , [6, 7, 8, 9]], [, , \"(?:1\\\\d|2[0-79]|3[0-46-8]|4[0-7]|59)\\\\d{5}|(?:[134]\\\\d|8[125])\\\\d{4}\", , , , \"4012345\", , , [6, 7]], [, , \"28\\\\d{5}|(?:6[1-9]|79)\\\\d{6,7}|(?:15|24|(?:3[59]|4[89]|8[08])\\\\d|60|7[1-8]|9(?:0[67]|[2-9]))\\\\d{6}\", , , , \"71123456\", , , [7, 8, 9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , ,\n, , [-1]], [, , , , , , , , , [-1]], \"SO\", 252, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{2})(\\\\d{4})\", \"$1 $2\", [\"8[125]\"]], [, \"(\\\\d{6})\", \"$1\", [\"[134]\"]], [, \"(\\\\d)(\\\\d{6})\", \"$1 $2\", [\"1|2[0-79]|3[0-46-8]|4[0-7]|59\"]], [, \"(\\\\d)(\\\\d{7})\", \"$1 $2\", [\"24|[67]\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[348]|64|79[0-8]|90\"]], [, \"(\\\\d{2})(\\\\d{5,7})\", \"$1 $2\", [\"1|28|6[1-35-9]|799|9[2-9]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , ,\n, [-1]]], SR:[, [, , \"(?:[2-5]|68|[78]\\\\d)\\\\d{5}\", , , , , , , [6, 7]], [, , \"(?:2[1-3]|3[0-7]|(?:4|68)\\\\d|5[2-58])\\\\d{4}\", , , , \"211234\"], [, , \"(?:7[124-7]|8[125-9])\\\\d{5}\", , , , \"7412345\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"56\\\\d{4}\", , , , \"561234\", , , [6]], \"SR\", 597, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1-$2-$3\", [\"56\"]], [, \"(\\\\d{3})(\\\\d{3})\", \"$1-$2\", [\"[2-5]\"]], [, \"(\\\\d{3})(\\\\d{4})\",\n\"$1-$2\", [\"[6-8]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SS:[, [, , \"[19]\\\\d{8}\", , , , , , , [9]], [, , \"18\\\\d{7}\", , , , \"181234567\"], [, , \"(?:12|9[1257])\\\\d{7}\", , , , \"977123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"SS\", 211, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[19]\"], \"0$1\"]], , [,\n, , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], ST:[, [, , \"(?:22|9\\\\d)\\\\d{5}\", , , , , , , [7]], [, , \"22\\\\d{5}\", , , , \"2221234\"], [, , \"900[5-9]\\\\d{3}|9(?:0[1-9]|[89]\\\\d)\\\\d{4}\", , , , \"9812345\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"ST\", 239, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[29]\"]]], , [, , , , , , , , , [-1]], , , [,\n, , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SV:[, [, , \"[267]\\\\d{7}|[89]00\\\\d{4}(?:\\\\d{4})?\", , , , , , , [7, 8, 11]], [, , \"2[1-6]\\\\d{6}\", , , , \"21234567\", , , [8]], [, , \"[67]\\\\d{7}\", , , , \"70123456\", , , [8]], [, , \"800\\\\d{4}(?:\\\\d{4})?\", , , , \"8001234\", , , [7, 11]], [, , \"900\\\\d{4}(?:\\\\d{4})?\", , , , \"9001234\", , , [7, 11]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"SV\", 503, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\",\n\"$1 $2\", [\"[89]\"]], [, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[267]\"]], [, \"(\\\\d{3})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"[89]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SX:[, [, , \"7215\\\\d{6}|(?:[58]\\\\d\\\\d|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"7215(?:4[2-8]|8[239]|9[056])\\\\d{4}\", , , , \"7215425678\", , , , [7]], [, , \"7215(?:1[02]|2\\\\d|5[034679]|8[014-8])\\\\d{4}\", , , , \"7215205678\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\",\n, , , \"8002123456\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002123456\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"SX\", 1, \"011\", \"1\", , , \"1|(5\\\\d{6})$\", \"721$1\", , , , , [, , , , , , , , , [-1]], , \"721\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], SY:[, [, , \"[1-39]\\\\d{8}|[1-5]\\\\d{7}\", , , , , , , [8, 9], [6, 7]], [, , \"[12]1\\\\d{6,7}|(?:1(?:[2356]|4\\\\d)|2[235]|3(?:[13]\\\\d|4)|4[13]|5[1-3])\\\\d{6}\",\n, , , \"112345678\", , , , [6, 7]], [, , \"9(?:22|[3-589]\\\\d|6[024-9])\\\\d{6}\", , , , \"944567890\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"SY\", 963, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , ,\n, , , , , , [-1]]], SZ:[, [, , \"0800\\\\d{4}|(?:[237]\\\\d|900)\\\\d{6}\", , , , , , , [8, 9]], [, , \"[23][2-5]\\\\d{6}\", , , , \"22171234\", , , [8]], [, , \"7[6-9]\\\\d{6}\", , , , \"76123456\", , , [8]], [, , \"0800\\\\d{4}\", , , , \"08001234\", , , [8]], [, , \"900\\\\d{6}\", , , , \"900012345\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"70\\\\d{6}\", , , , \"70012345\", , , [8]], \"SZ\", 268, \"00\", , , , , , , , [[, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[0237]\"]], [, \"(\\\\d{5})(\\\\d{4})\", \"$1 $2\", [\"9\"]]], ,\n[, , , , , , , , , [-1]], , , [, , \"0800\\\\d{4}\", , , , , , , [8]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], TA:[, [, , \"8\\\\d{3}\", , , , , , , [4]], [, , \"8\\\\d{3}\", , , , \"8999\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"TA\", 290, \"00\", , , , , , , , , , [, , , , , , , , , [-1]], , \"8\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]],\nTC:[, [, , \"(?:[58]\\\\d\\\\d|649|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"649(?:712|9(?:4\\\\d|50))\\\\d{4}\", , , , \"6497121234\", , , , [7]], [, , \"649(?:2(?:3[129]|4[1-7])|3(?:3[1-389]|4[1-8])|4[34][1-3])\\\\d{4}\", , , , \"6492311234\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002345678\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002345678\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , \"64971[01]\\\\d{4}\", , , , \"6497101234\", , , , [7]],\n\"TC\", 1, \"011\", \"1\", , , \"1|([2-479]\\\\d{6})$\", \"649$1\", , , , , [, , , , , , , , , [-1]], , \"649\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], TD:[, [, , \"(?:22|[69]\\\\d|77)\\\\d{6}\", , , , , , , [8]], [, , \"22(?:[37-9]0|5[0-5]|6[89])\\\\d{4}\", , , , \"22501234\"], [, , \"(?:6[023568]|77|9\\\\d)\\\\d{6}\", , , , \"63012345\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"TD\", 235, \"00|16\",\n, , , , , \"00\", , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[2679]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], TG:[, [, , \"[279]\\\\d{7}\", , , , , , , [8]], [, , \"2(?:2[2-7]|3[23]|4[45]|55|6[67]|77)\\\\d{5}\", , , , \"22212345\"], [, , \"(?:7[09]|9[0-36-9])\\\\d{6}\", , , , \"90112345\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"TG\",\n228, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[279]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], TH:[, [, , \"1\\\\d{8,9}|(?:[2-57]|[689]\\\\d)\\\\d{7}\", , , , , , , [8, 9, 10]], [, , \"(?:2\\\\d|3[2-9]|4[2-5]|5[2-6]|7[3-7])\\\\d{6}\", , , , \"21234567\", , , [8]], [, , \"(?:14|6[1-6]|[89]\\\\d)\\\\d{7}\", , , , \"812345678\", , , [9]], [, , \"1800\\\\d{6}\", , , , \"1800123456\", , , [10]], [, , \"1900\\\\d{6}\", , , ,\n\"1900123456\", , , [10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"6[08]\\\\d{7}\", , , , \"601234567\", , , [9]], \"TH\", 66, \"00[1-9]\", \"0\", , , \"0\", , , , [[, \"(\\\\d)(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"2\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3,4})\", \"$1 $2 $3\", [\"14|[3-9]\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"1\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], TJ:[, [, , \"(?:[3-59]\\\\d|77|88)\\\\d{7}\", , ,\n, , , , [9], [3, 5, 6, 7]], [, , \"(?:3(?:1[3-5]|2[245]|3[12]|4[24-7]|5[25]|72)|4(?:46|74|87))\\\\d{6}\", , , , \"372123456\", , , , [3, 5, 6, 7]], [, , \"41[18]\\\\d{6}|(?:5[05]|77|88|9\\\\d)\\\\d{7}\", , , , \"917123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"TJ\", 992, \"810\", \"8\", , , \"8\", , \"8~10\", , [[, \"(\\\\d{6})(\\\\d)(\\\\d{2})\", \"$1 $2 $3\", [\"331\", \"3317\"], , , 1], [, \"(\\\\d{3})(\\\\d{2})(\\\\d{4})\", \"$1 $2 $3\", [\"[34]7|91[78]\"],\n, , 1], [, \"(\\\\d{4})(\\\\d)(\\\\d{4})\", \"$1 $2 $3\", [\"3\"], , , 1], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[457-9]\"], , , 1]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], TK:[, [, , \"[2-47]\\\\d{3,6}\", , , , , , , [4, 5, 6, 7]], [, , \"(?:2[2-4]|[34]\\\\d)\\\\d{2,5}\", , , , \"3101\"], [, , \"7[2-4]\\\\d{2,5}\", , , , \"7290\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , ,\n, , , , [-1]], \"TK\", 690, \"00\", , , , , , , , , , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], TL:[, [, , \"7\\\\d{7}|(?:[2-47]\\\\d|[89]0)\\\\d{5}\", , , , , , , [7, 8]], [, , \"(?:2[1-5]|3[1-9]|4[1-4])\\\\d{5}\", , , , \"2112345\", , , [7]], [, , \"7[3-8]\\\\d{6}\", , , , \"77212345\", , , [8]], [, , \"80\\\\d{5}\", , , , \"8012345\", , , [7]], [, , \"90\\\\d{5}\", , , , \"9012345\", , , [7]], [, , , , , , , , , [-1]], [, , \"70\\\\d{5}\", , , , \"7012345\", , , [7]],\n[, , , , , , , , , [-1]], \"TL\", 670, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[2-489]|70\"]], [, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"7\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], TM:[, [, , \"[1-6]\\\\d{7}\", , , , , , , [8]], [, , \"(?:1(?:2\\\\d|3[1-9])|2(?:22|4[0-35-8])|3(?:22|4[03-9])|4(?:22|3[128]|4\\\\d|6[15])|5(?:22|5[7-9]|6[014-689]))\\\\d{5}\", , , , \"12345678\"], [, , \"6[1-9]\\\\d{6}\", , , , \"66123456\"], [, , , , , , ,\n, , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"TM\", 993, \"810\", \"8\", , , \"8\", , \"8~10\", , [[, \"(\\\\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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], TN:[, [, , \"[2-57-9]\\\\d{7}\", ,\n, , , , , [8]], [, , \"81200\\\\d{3}|(?:3[0-2]|7\\\\d)\\\\d{6}\", , , , \"30010123\"], [, , \"3(?:001|[12]40)\\\\d{4}|(?:(?:[259]\\\\d|4[0-6])\\\\d|3(?:1[1-35]|6[0-4]|91))\\\\d{5}\", , , , \"20123456\"], [, , \"8010\\\\d{4}\", , , , \"80101234\"], [, , \"88\\\\d{6}\", , , , \"88123456\"], [, , \"8[12]10\\\\d{4}\", , , , \"81101234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"TN\", 216, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[2-57-9]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [,\n, , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], TO:[, [, , \"(?:0800|[5-8]\\\\d{3})\\\\d{3}|[2-8]\\\\d{4}\", , , , , , , [5, 7]], [, , \"(?:2\\\\d|3[0-8]|4[0-4]|50|6[09]|7[0-24-69]|8[05])\\\\d{3}\", , , , \"20123\", , , [5]], [, , \"(?:6(?:3[02]|85|90)|7(?:[2-46]0|[578]\\\\d)|8[46-9]\\\\d)\\\\d{4}\", , , , \"7715123\", , , [7]], [, , \"0800\\\\d{3}\", , , , \"0800222\", , , [7]], [, , \"55[04]\\\\d{4}\", , , , \"5501234\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"TO\", 676, \"00\", ,\n, , , , , , [[, \"(\\\\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-8]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], TR:[, [, , \"(?:[2-58]\\\\d\\\\d|900)\\\\d{7}|4\\\\d{6}\", , , , , , , [7, 10]], [, , \"(?:2(?:[13][26]|[28][2468]|[45][268]|[67][246])|3(?:[13][28]|[24-6][2468]|[78][02468]|92)|4(?:[16][246]|[23578][2468]|4[26]))\\\\d{7}\", , , , \"2123456789\",\n, , [10]], [, , \"56161\\\\d{5}|5(?:0[15-7]|1[06]|24|[34]\\\\d|5[1-59]|9[46])\\\\d{7}\", , , , \"5012345678\", , , [10]], [, , \"800\\\\d{7}\", , , , \"8001234567\", , , [10]], [, , \"(?:8[89]8|900)\\\\d{7}\", , , , \"9001234567\", , , [10]], [, , , , , , , , , [-1]], [, , \"592(?:21[12]|461)\\\\d{4}\", , , , \"5922121234\", , , [10]], [, , , , , , , , , [-1]], \"TR\", 90, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d)(\\\\d{3})\", \"$1 $2 $3\", [\"444\"], , , 1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"512|8[0589]|90\"], \"0$1\", ,\n1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"5(?:[0-59]|61)\", \"5(?:[0-59]|616)\", \"5(?:[0-59]|6161)\"], \"0$1\", , 1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[24][1-8]|3[1-9]\"], \"(0$1)\", , 1]], [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"512|8[0589]|90\"], \"0$1\", , 1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"5(?:[0-59]|61)\", \"5(?:[0-59]|616)\", \"5(?:[0-59]|6161)\"], \"0$1\", , 1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[24][1-8]|3[1-9]\"],\n\"(0$1)\", , 1]], [, , \"512\\\\d{7}\", , , , \"5123456789\", , , [10]], , , [, , \"444\\\\d{4}\", , , , , , , [7]], [, , \"(?:444|850\\\\d{3})\\\\d{4}\", , , , \"4441444\"], , , [, , , , , , , , , [-1]]], TT:[, [, , \"(?:[58]\\\\d\\\\d|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"868(?:2(?:01|1[89]|[23]\\\\d|4[0-2])|6(?:0[7-9]|1[02-8]|2[1-9]|[3-69]\\\\d|7[0-79])|82[124])\\\\d{4}\", , , , \"8682211234\", , , , [7]], [, , \"868(?:2(?:6[6-9]|[7-9]\\\\d)|[37](?:0[1-9]|1[02-9]|[2-9]\\\\d)|4[6-9]\\\\d|6(?:20|78|8\\\\d))\\\\d{4}\", , , , \"8682911234\",\n, , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002345678\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002345678\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"TT\", 1, \"011\", \"1\", , , \"1|([2-46-8]\\\\d{6})$\", \"868$1\", , , , , [, , , , , , , , , [-1]], , \"868\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , \"868619\\\\d{4}\", , , , \"8686191234\", , , , [7]]], TV:[, [, , \"(?:2|7\\\\d\\\\d|90)\\\\d{4}\", , , , , , ,\n[5, 6, 7]], [, , \"2[02-9]\\\\d{3}\", , , , \"20123\", , , [5]], [, , \"(?:7[01]\\\\d|90)\\\\d{4}\", , , , \"901234\", , , [6, 7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"TV\", 688, \"00\", , , , , , , , , , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], TW:[, [, , \"(?:[24589]|7\\\\d)\\\\d{8}|[2-8]\\\\d{7}|2\\\\d{6}\", , , , , , , [7, 8, 9, 10]], [, , \"24\\\\d{6,7}|(?:6412|8(?:2(?:3\\\\d|66)|36[24-9]))\\\\d{4}|(?:2[235-8]\\\\d|3[2-9]|4(?:[239]\\\\d|[78])|5[2-8]|6[235-79]|7[1-9]|8[7-9])\\\\d{6}\",\n, , , \"221234567\", , , [8, 9]], [, , \"9[0-8]\\\\d{7}\", , , , \"912345678\", , , [9]], [, , \"80[0-79]\\\\d{6}\", , , , \"800123456\", , , [9]], [, , \"20(?:[013-9]\\\\d\\\\d|2)\\\\d{4}\", , , , \"203123456\", , , [7, 9]], [, , , , , , , , , [-1]], [, , \"99\\\\d{7}\", , , , \"990123456\", , , [9]], [, , \"70\\\\d{8}\", , , , \"7012345678\", , , [10]], \"TW\", 886, \"0(?:0[25-79]|19)\", \"0\", \"#\", , \"0\", , , , [[, \"(\\\\d{2})(\\\\d)(\\\\d{4})\", \"$1 $2 $3\", [\"202\"], \"0$1\"], [, \"(\\\\d)(\\\\d{3,4})(\\\\d{4})\", \"$1 $2 $3\", [\"[25][2-8]|[346]|7[1-9]|8[237-9]\"],\n\"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[258]\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"9\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"7\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"50[0-46-9]\\\\d{6}\", , , , \"500123456\", , , [9]], , , [, , , , , , , , , [-1]]], TZ:[, [, , \"(?:[26-8]\\\\d|41|90)\\\\d{7}\", , , , , , , [9]], [, , \"2[2-8]\\\\d{7}\", , , , \"222345678\"], [, , \"(?:6[2-9]|7[13-9])\\\\d{7}\", , , , \"621234567\"], [, , \"80[08]\\\\d{6}\",\n, , , \"800123456\"], [, , \"90\\\\d{7}\", , , , \"900123456\"], [, , \"8(?:40|6[01])\\\\d{6}\", , , , \"840123456\"], [, , , , , , , , , [-1]], [, , \"41\\\\d{7}\", , , , \"412345678\"], \"TZ\", 255, \"00[056]\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{2})(\\\\d{4})\", \"$1 $2 $3\", [\"[89]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"[24]\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[67]\"], \"0$1\"]], , [, , , , , , , , , [-1]], , , [, , \"(?:8(?:[04]0|6[01])|90\\\\d)\\\\d{6}\"], [, , , , , , , , , [-1]], , , [,\n, , , , , , , , [-1]]], UA:[, [, , \"[89]\\\\d{9}|[3-9]\\\\d{8}\", , , , , , , [9, 10], [5, 6, 7]], [, , \"(?:3[1-8]|4[13-8]|5[1-7]|6[12459])\\\\d{7}\", , , , \"311234567\", , , [9], [5, 6, 7]], [, , \"(?:50|6[36-8]|7[1-3]|9[1-9])\\\\d{7}\", , , , \"501234567\", , , [9]], [, , \"800[1-8]\\\\d{5,6}\", , , , \"800123456\"], [, , \"900[239]\\\\d{5,6}\", , , , \"900212345\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"89[1-579]\\\\d{6}\", , , , \"891234567\", , , [9]], \"UA\", 380, \"00\", \"0\", , , \"0\", , \"0~0\", , [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\n\"$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{2})(\\\\d{3})(\\\\d{4})\", \"$1 $2 $3\", [\"4[45][0-5]|5(?:0|6[37])|6(?:[12][018]|[36-8])|7|89|9[1-9]|(?:48|57)[0137-9]\", \"4[45][0-5]|5(?:0|6(?:3[14-7]|7))|6(?:[12][018]|[36-8])|7|89|9[1-9]|(?:48|57)[0137-9]\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d{5})\", \"$1 $2\", [\"[3-6]\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3,4})\", \"$1 $2 $3\", [\"[89]\"], \"0$1\"]],\n, [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], UG:[, [, , \"800\\\\d{6}|(?:[29]0|[347]\\\\d)\\\\d{7}\", , , , , , , [9], [5, 6, 7]], [, , \"(?:20(?:(?:(?:[0147]\\\\d|5[0-4])\\\\d|2(?:40|[5-9]\\\\d)|3(?:0[67]|2[0-4])|810)\\\\d|6(?:00[0-2]|[15-9]\\\\d\\\\d|30[0-4]))|[34]\\\\d{5})\\\\d{3}\", , , , \"312345678\", , , , [5, 6, 7]], [, , \"7260\\\\d{5}|7(?:[0157-9]\\\\d|20|4[0-4])\\\\d{6}\", , , , \"712345678\"], [, , \"800[1-3]\\\\d{5}\", , , , \"800123456\"], [, , \"90[1-3]\\\\d{6}\",\n, , , \"901123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"UG\", 256, \"00[057]\", \"0\", , , \"0\", , , , [[, \"(\\\\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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], US:[, [, , \"[2-9]\\\\d{9}\", , , , , , , [10], [7]], [, , \"(?: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[0135]|3[0-24679]|4[167]|5[12]|6[014]|8[056])|4(?:0[124-9]|1[02-579]|2[3-5]|3[0245]|4[0235]|58|6[39]|7[0589]|8[04])|5(?:0[1-57-9]|1[0235-8]|20|3[0149]|4[01]|5[19]|6[1-47]|7[013-5]|8[056])|6(?:0[1-35-9]|1[024-9]|2[03689]|[34][016]|5[017]|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[02-59]|8[156])|8(?:0[1-68]|1[02-8]|2[08]|3[0-28]|4[3578]|5[046-9]|6[02-5]|7[028])|9(?:0[1346-9]|1[02-9]|2[0589]|3[0146-8]|4[0179]|5[12469]|7[0-389]|8[04-69]))[2-9]\\\\d{6}\",\n, , , \"2015550123\", , , , [7]], [, , \"(?: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[0135]|3[0-24679]|4[167]|5[12]|6[014]|8[056])|4(?:0[124-9]|1[02-579]|2[3-5]|3[0245]|4[0235]|58|6[39]|7[0589]|8[04])|5(?:0[1-57-9]|1[0235-8]|20|3[0149]|4[01]|5[19]|6[1-47]|7[013-5]|8[056])|6(?:0[1-35-9]|1[024-9]|2[03689]|[34][016]|5[017]|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[02-59]|8[156])|8(?:0[1-68]|1[02-8]|2[08]|3[0-28]|4[3578]|5[046-9]|6[02-5]|7[028])|9(?:0[1346-9]|1[02-9]|2[0589]|3[0146-8]|4[0179]|5[12469]|7[0-389]|8[04-69]))[2-9]\\\\d{6}\",\n, , , \"2015550123\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002345678\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002345678\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"US\", 1, \"011\", \"1\", , , \"1\", , , 1, [[, \"(\\\\d{3})(\\\\d{4})\", \"$1-$2\", [\"[2-9]\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"($1) $2-$3\", [\"[2-9]\"], , , 1]], [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{4})\", \"$1-$2-$3\", [\"[2-9]\"]]], [, , , , , , , , , [-1]], 1, , [,\n, , , , , , , , [-1]], [, , \"710[2-9]\\\\d{6}\", , , , \"7102123456\"], , , [, , , , , , , , , [-1]]], UY:[, [, , \"(?:[249]\\\\d\\\\d|80)\\\\d{5}|9\\\\d{6}\", , , , , , , [7, 8]], [, , \"(?:2\\\\d|4[2-7])\\\\d{6}\", , , , \"21231234\", , , [8], [7]], [, , \"9[1-9]\\\\d{6}\", , , , \"94231234\", , , [8]], [, , \"80[05]\\\\d{4}\", , , , \"8001234\", , , [7]], [, , \"90[0-8]\\\\d{4}\", , , , \"9001234\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"UY\", 598, \"0(?:0|1[3-9]\\\\d)\", \"0\", \" int. \", ,\n\"0\", , \"00\", , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"8|90\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"9\"], \"0$1\"], [, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\", [\"[24]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], UZ:[, [, , \"[679]\\\\d{8}\", , , , , , , [9]], [, , \"78(?:1(?:13|2[02]|50)|2(?:10|2[139]|98)|77[01])\\\\d{4}|(?:6(?:1(?:22|3[124]|4[1-4]|5[1-3578]|64)|2(?:22|3[0-57-9]|41)|5(?:22|3[3-7]|5[024-8])|6\\\\d\\\\d|7(?:[23]\\\\d|7[69])|9(?:22|4[1-8]|6[135]))|7(?:0(?:5[4-9]|6[0146]|7[124-6]|9[135-8])|1[12]\\\\d|2(?:22|3[13-57-9]|4[1-3579]|5[14])|3(?:2\\\\d|3[1578]|4[1-35-7]|5[1-57]|61)|4(?:2\\\\d|3[1-579]|7[1-79])|5(?:22|5[1-9]|6[1457])|6(?:22|3[12457]|4[13-8])|9(?:22|5[1-9])))\\\\d{5}\",\n, , , \"669050123\"], [, , \"(?:6(?:1(?:2(?:2[01]|98)|35[0-4]|50\\\\d|61[23]|7(?:[01][017]|4\\\\d|55|9[5-9]))|2(?:(?:11|7\\\\d)\\\\d|2(?:[12]1|9[01379])|5(?:[126]\\\\d|3[0-4]))|5(?:19[01]|2(?:27|9[26])|(?:30|59|7\\\\d)\\\\d)|6(?:2(?:1[5-9]|2[0367]|38|41|52|60)|(?:3[79]|9[0-3])\\\\d|4(?:56|83)|7(?:[07]\\\\d|1[017]|3[07]|4[047]|5[057]|67|8[0178]|9[79]))|7(?:2(?:24|3[237]|4[5-9]|7[15-8])|5(?:7[12]|8[0589])|7(?:0\\\\d|[39][07])|9(?:0\\\\d|7[079]))|9(?:2(?:1[1267]|3[01]|5\\\\d|7[0-4])|(?:5[67]|7\\\\d)\\\\d|6(?:2[0-26]|8\\\\d)))|7(?:0\\\\d{3}|1(?:13[01]|6(?:0[47]|1[67]|66)|71[3-69]|98\\\\d)|2(?:2(?:2[79]|95)|3(?:2[5-9]|6[0-6])|57\\\\d|7(?:0\\\\d|1[17]|2[27]|3[37]|44|5[057]|66|88))|3(?:2(?:1[0-6]|21|3[469]|7[159])|(?:33|9[4-6])\\\\d|5(?:0[0-4]|5[579]|9\\\\d)|7(?:[0-3579]\\\\d|4[0467]|6[67]|8[078]))|4(?:2(?:29|5[0257]|6[0-7]|7[1-57])|5(?:1[0-4]|8\\\\d|9[5-9])|7(?:0\\\\d|1[024589]|2[0-27]|3[0137]|[46][07]|5[01]|7[5-9]|9[079])|9(?:7[015-9]|[89]\\\\d))|5(?:112|2(?:0\\\\d|2[29]|[49]4)|3[1568]\\\\d|52[6-9]|7(?:0[01578]|1[017]|[23]7|4[047]|[5-7]\\\\d|8[78]|9[079]))|6(?:2(?:2[1245]|4[2-4])|39\\\\d|41[179]|5(?:[349]\\\\d|5[0-2])|7(?:0[017]|[13]\\\\d|22|44|55|67|88))|9(?:22[128]|3(?:2[0-4]|7\\\\d)|57[02569]|7(?:2[05-9]|3[37]|4\\\\d|60|7[2579]|87|9[07])))|9[0-57-9]\\\\d{3})\\\\d{4}\",\n, , , \"912345678\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"UZ\", 998, \"810\", \"8\", , , \"8\", , \"8~10\", , [[, \"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[679]\"], \"8 $1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], VA:[, [, , \"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,\n10, 11, 12]], [, , \"06698\\\\d{1,6}\", , , , \"0669812345\", , , [6, 7, 8, 9, 10, 11]], [, , \"3[1-9]\\\\d{8}|3[2-9]\\\\d{7}\", , , , \"3123456789\", , , [9, 10]], [, , \"80(?:0\\\\d{3}|3)\\\\d{3}\", , , , \"800123456\", , , [6, 9]], [, , \"(?:0878\\\\d\\\\d|89(?:2|4[5-9]\\\\d))\\\\d{3}|89[45][0-4]\\\\d\\\\d|(?:1(?:44|6[346])|89(?:5[5-9]|9))\\\\d{6}\", , , , \"899123456\", , , [6, 8, 9, 10]], [, , \"84(?:[08]\\\\d{3}|[17])\\\\d{3}\", , , , \"848123456\", , , [6, 9]], [, , \"1(?:78\\\\d|99)\\\\d{6}\", , , , \"1781234567\", , , [9, 10]], [, , \"55\\\\d{8}\",\n, , , \"5512345678\", , , [10]], \"VA\", 39, \"00\", , , , , , , , , , [, , , , , , , , , [-1]], , \"06698\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , \"3[2-8]\\\\d{9,10}\", , , , \"33101234501\", , , [11, 12]]], VC:[, [, , \"(?:[58]\\\\d\\\\d|784|900)\\\\d{7}\", , , , , , , [10], [7]], [, , \"784(?:266|3(?:6[6-9]|7\\\\d|8[0-24-6])|4(?:38|5[0-36-8]|8[0-8])|5(?:55|7[0-2]|93)|638|784)\\\\d{4}\", , , , \"7842661234\", , , , [7]], [, , \"784(?:4(?:3[0-5]|5[45]|89|9[0-8])|5(?:2[6-9]|3[0-4]))\\\\d{4}\", , , , \"7844301234\",\n, , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002345678\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002345678\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"VC\", 1, \"011\", \"1\", , , \"1|([2-7]\\\\d{6})$\", \"784$1\", , , , , [, , , , , , , , , [-1]], , \"784\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], VE:[, [, , \"[89]00\\\\d{7}|(?:[24]\\\\d|50)\\\\d{8}\", , , , , , , [10], [7]], [, , \"(?:2(?:12|3[457-9]|[467]\\\\d|[58][1-9]|9[1-6])|50[01])\\\\d{7}\",\n, , , \"2121234567\", , , , [7]], [, , \"4(?:1[24-8]|2[46])\\\\d{7}\", , , , \"4121234567\"], [, , \"800\\\\d{7}\", , , , \"8001234567\"], [, , \"900\\\\d{7}\", , , , \"9001234567\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"VE\", 58, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{7})\", \"$1-$2\", [\"[24589]\"], \"0$1\", \"$CC $1\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], VG:[, [, , \"(?:284|[58]\\\\d\\\\d|900)\\\\d{7}\",\n, , , , , , [10], [7]], [, , \"284496[0-5]\\\\d{3}|284(?:229|4(?:22|9[45])|774|8(?:52|6[459]))\\\\d{4}\", , , , \"2842291234\", , , , [7]], [, , \"284496[6-9]\\\\d{3}|284(?:3(?:0[0-3]|4[0-7]|68|9[34])|4(?:4[0-6]|68|99)|54[0-57])\\\\d{4}\", , , , \"2843001234\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002345678\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002345678\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"VG\", 1, \"011\",\n\"1\", , , \"1|([2-578]\\\\d{6})$\", \"284$1\", , , , , [, , , , , , , , , [-1]], , \"284\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], VI:[, [, , \"[58]\\\\d{9}|(?:34|90)0\\\\d{7}\", , , , , , , [10], [7]], [, , \"340(?:2(?:0[12]|2[06-8]|4[49]|77)|3(?:32|44)|4(?:22|7[34]|89)|5(?:1[34]|55)|6(?:2[56]|4[23]|77|9[023])|7(?:1[2-57-9]|27|7\\\\d)|884|998)\\\\d{4}\", , , , \"3406421234\", , , , [7]], [, , \"340(?:2(?:0[12]|2[06-8]|4[49]|77)|3(?:32|44)|4(?:22|7[34]|89)|5(?:1[34]|55)|6(?:2[56]|4[23]|77|9[023])|7(?:1[2-57-9]|27|7\\\\d)|884|998)\\\\d{4}\",\n, , , \"3406421234\", , , , [7]], [, , \"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\", , , , \"8002345678\"], [, , \"900[2-9]\\\\d{6}\", , , , \"9002345678\"], [, , , , , , , , , [-1]], [, , \"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\", , , , \"5002345678\"], [, , , , , , , , , [-1]], \"VI\", 1, \"011\", \"1\", , , \"1|([2-9]\\\\d{6})$\", \"340$1\", , 1, , , [, , , , , , , , , [-1]], , \"340\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], VN:[, [, , \"[12]\\\\d{9}|[135-9]\\\\d{8}|[16]\\\\d{7}|[16-8]\\\\d{6}\",\n, , , , , , [7, 8, 9, 10]], [, , \"2(?:0[3-9]|1[0-689]|2[0-25-9]|3[2-9]|4[2-8]|5[124-9]|6[0-39]|7[0-7]|8[2-79]|9[0-4679])\\\\d{7}\", , , , \"2101234567\", , , [10]], [, , \"(?:52[238]|8(?:79|9[689])|99[013-9])\\\\d{6}|(?:3\\\\d|5[689]|7[06-9]|8[1-68]|9[0-8])\\\\d{7}\", , , , \"912345678\", , , [9]], [, , \"1(?:228\\\\d{4}|800\\\\d{4,6})\", , , , \"1800123456\", , , [8, 9, 10]], [, , \"1900\\\\d{4,6}\", , , , \"1900123456\", , , [8, 9, 10]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"672\\\\d{6}\", , , , \"672012345\",\n, , [9]], \"VN\", 84, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{4})\", \"$1 $2\", [\"[17]99\"], \"0$1\", , 1], [, \"(\\\\d{2})(\\\\d{5})\", \"$1 $2\", [\"80\"], \"0$1\", , 1], [, \"(\\\\d{3})(\\\\d{4,5})\", \"$1 $2\", [\"69\"], \"0$1\", , 1], [, \"(\\\\d{4})(\\\\d{4,6})\", \"$1 $2\", [\"1\"], , , 1], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[69]\"], \"0$1\", , 1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[3578]\"], \"0$1\", , 1], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"2[48]\"], \"0$1\", , 1], [, \"(\\\\d{3})(\\\\d{4})(\\\\d{3})\",\n\"$1 $2 $3\", [\"2\"], \"0$1\", , 1]], [[, \"(\\\\d{2})(\\\\d{5})\", \"$1 $2\", [\"80\"], \"0$1\", , 1], [, \"(\\\\d{4})(\\\\d{4,6})\", \"$1 $2\", [\"1\"], , , 1], [, \"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\", \"$1 $2 $3 $4\", [\"[69]\"], \"0$1\", , 1], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[3578]\"], \"0$1\", , 1], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"2[48]\"], \"0$1\", , 1], [, \"(\\\\d{3})(\\\\d{4})(\\\\d{3})\", \"$1 $2 $3\", [\"2\"], \"0$1\", , 1]], [, , , , , , , , , [-1]], , , [, , \"[17]99\\\\d{4}|69\\\\d{5,6}\", , , , , , , [7, 8]], [, , \"(?:[17]99|80\\\\d)\\\\d{4}|69\\\\d{5,6}\",\n, , , \"1992000\", , , [7, 8]], , , [, , , , , , , , , [-1]]], VU:[, [, , \"(?:[23]\\\\d|[48]8)\\\\d{3}|(?:[57]\\\\d|90)\\\\d{5}\", , , , , , , [5, 7]], [, , \"(?:38[0-8]|48[4-9])\\\\d\\\\d|(?:2[02-9]|3[4-7]|88)\\\\d{3}\", , , , \"22123\", , , [5]], [, , \"57[2-5]\\\\d{4}|(?:5[0-689]|7[013-7])\\\\d{5}\", , , , \"5912345\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"90[1-9]\\\\d{4}\", , , , \"9010123\", , , [7]], \"VU\", 678, \"00\", , , , , , , , [[, \"(\\\\d{3})(\\\\d{4})\",\n\"$1 $2\", [\"[579]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"(?:3[03]|900\\\\d)\\\\d{3}\", , , , \"30123\"], , , [, , , , , , , , , [-1]]], WF:[, [, , \"(?:[45]0|68|72|8\\\\d)\\\\d{4}\", , , , , , , [6]], [, , \"(?:50|68|72)\\\\d{4}\", , , , \"501234\"], [, , \"(?:50|68|72|8[23])\\\\d{4}\", , , , \"501234\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"WF\", 681, \"00\", , , , , , , , [[, \"(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\n\"$1 $2 $3\", [\"[4-8]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , \"[48]0\\\\d{4}\", , , , \"401234\"]], WS:[, [, , \"[2-6]\\\\d{4}|8\\\\d{5}(?:\\\\d{4})?|[78]\\\\d{6}\", , , , , , , [5, 6, 7, 10]], [, , \"(?:[2-5]\\\\d|6[1-9])\\\\d{3}\", , , , \"22123\", , , [5]], [, , \"(?:7[25-7]|8(?:[3-7]|9\\\\d{3}))\\\\d{5}\", , , , \"7212345\", , , [7, 10]], [, , \"800\\\\d{3}\", , , , \"800123\", , , [6]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , ,\n, , , , , [-1]], \"WS\", 685, \"0\", , , , , , , , [[, \"(\\\\d{5})\", \"$1\", [\"[2-6]\"]], [, \"(\\\\d{3})(\\\\d{3,7})\", \"$1 $2\", [\"8\"]], [, \"(\\\\d{2})(\\\\d{5})\", \"$1 $2\", [\"7\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], XK:[, [, , \"[23]\\\\d{7,8}|(?:4\\\\d\\\\d|[89]00)\\\\d{5}\", , , , , , , [8, 9]], [, , \"(?:2[89]|39)0\\\\d{6}|[23][89]\\\\d{6}\", , , , \"28012345\"], [, , \"4[3-79]\\\\d{6}\", , , , \"43201234\", , , [8]], [, , \"800\\\\d{5}\", , , , \"80001234\", ,\n, [8]], [, , \"900\\\\d{5}\", , , , \"90001234\", , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"XK\", 383, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], YE:[, [, , \"(?:1|7\\\\d)\\\\d{7}|[1-7]\\\\d{6}\",\n, , , , , , [7, 8, 9], [6]], [, , \"17\\\\d{6}|(?:[12][2-68]|3[2358]|4[2-58]|5[2-6]|6[3-58]|7[24-68])\\\\d{5}\", , , , \"1234567\", , , [7, 8], [6]], [, , \"7[0137]\\\\d{7}\", , , , \"712345678\", , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"YE\", 967, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d)(\\\\d{3})(\\\\d{3,4})\", \"$1 $2 $3\", [\"[1-6]|7[24-68]\"], \"0$1\"], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"7\"], \"0$1\"]], , [, , , ,\n, , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], YT:[, [, , \"80\\\\d{7}|(?:26|63)9\\\\d{6}\", , , , , , , [9]], [, , \"269(?:0[67]|5[01]|6\\\\d|[78]0)\\\\d{4}\", , , , \"269601234\"], [, , \"639(?:0[0-79]|1[019]|[267]\\\\d|3[09]|[45]0|9[04-79])\\\\d{4}\", , , , \"639012345\"], [, , \"80\\\\d{7}\", , , , \"801234567\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"YT\", 262, \"00\", \"0\", , , \"0\", , , , , , [, , ,\n, , , , , , [-1]], , \"269|63\", [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], ZA:[, [, , \"[1-9]\\\\d{8}|8\\\\d{4,7}\", , , , , , , [5, 6, 7, 8, 9]], [, , \"(?:1[0-8]|2[1-378]|3[1-69]|4\\\\d|5[1346-8])\\\\d{7}\", , , , \"101234567\", , , [9]], [, , \"8[1-4]\\\\d{3,7}|(?:6\\\\d|7[0-46-9]|85)\\\\d{7}\", , , , \"711234567\"], [, , \"80\\\\d{7}\", , , , \"801234567\", , , [9]], [, , \"(?:86[2-9]|9[0-2]\\\\d)\\\\d{6}\", , , , \"862345678\", , , [9]], [, , \"860\\\\d{6}\", , , , \"860123456\", , , [9]], [, , ,\n, , , , , , [-1]], [, , \"87\\\\d{7}\", , , , \"871234567\", , , [9]], \"ZA\", 27, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"861\\\\d{6}\", , , , \"861123456\", , , [9]], , , [, , , , , , , , , [-1]]], ZM:[, [, , \"800\\\\d{6}|(?:21|76|9\\\\d)\\\\d{7}\",\n, , , , , , [9], [6]], [, , \"21[1-8]\\\\d{6}\", , , , \"211234567\", , , , [6]], [, , \"(?:76|9[5-8])\\\\d{7}\", , , , \"955123456\"], [, , \"800\\\\d{6}\", , , , \"800123456\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"ZM\", 260, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\d{3})(\\\\d{3})\", \"$1 $2\", [\"[1-9]\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[28]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{7})\", \"$1 $2\", [\"[79]\"], \"0$1\"]], [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\",\n[\"[28]\"], \"0$1\"], [, \"(\\\\d{2})(\\\\d{7})\", \"$1 $2\", [\"[79]\"], \"0$1\"]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], ZW:[, [, , \"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], [3, 4]], [, , \"(?:1(?:(?:3\\\\d|9)\\\\d|[4-8])|2(?:(?:(?:0(?:2[014]|5)|(?:2[0157]|31|84|9)\\\\d\\\\d|[56](?:[14]\\\\d\\\\d|20)|7(?:[089]|2[03]|[35]\\\\d\\\\d))\\\\d|4(?:2\\\\d\\\\d|8))\\\\d|1(?:2|[39]\\\\d{4}))|3(?:(?:123|(?:29\\\\d|92)\\\\d)\\\\d\\\\d|7(?:[19]|[56]\\\\d))|5(?:0|1[2-478]|26|[37]2|4(?:2\\\\d{3}|83)|5(?:25\\\\d\\\\d|[78])|[689]\\\\d)|6(?:(?:[16-8]21|28|52[013])\\\\d\\\\d|[39])|8(?:[1349]28|523)\\\\d\\\\d)\\\\d{3}|(?:4\\\\d\\\\d|9[2-9])\\\\d{4,5}|(?:(?:2(?:(?:(?:0|8[146])\\\\d|7[1-7])\\\\d|2(?:[278]\\\\d|92)|58(?:2\\\\d|3))|3(?:[26]|9\\\\d{3})|5(?:4\\\\d|5)\\\\d\\\\d)\\\\d|6(?:(?:(?:[0-246]|[78]\\\\d)\\\\d|37)\\\\d|5[2-8]))\\\\d\\\\d|(?:2(?:[569]\\\\d|8[2-57-9])|3(?:[013-59]\\\\d|8[37])|6[89]8)\\\\d{3}\",\n, , , \"1312345\", , , , [3, 4]], [, , \"7(?:1[2-9]|[37][1-9]|8[2-7])\\\\d{6}\", , , , \"712345678\", , , [9]], [, , \"80(?:[01]\\\\d|20|8[0-8])\\\\d{3}\", , , , \"8001234\", , , [7]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"86(?:1[12]|22|30|44|55|77|8[368])\\\\d{6}\", , , , \"8686123456\", , , [10]], \"ZW\", 263, \"00\", \"0\", , , \"0\", , , , [[, \"(\\\\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\"], [,\n\"(\\\\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})\",\n\"$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\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], 800:[, [, , \"\\\\d{8}\", , , , , ,\n, [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"\\\\d{8}\", , , , \"12345678\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"001\", 800, , , , , , , , 1, [[, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], 808:[, [, , \"\\\\d{8}\", , , , , , , [8]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , ,\n, , , , , , [-1]], [, , \"\\\\d{8}\", , , , \"12345678\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"001\", 808, , , , , , , , 1, [[, \"(\\\\d{4})(\\\\d{4})\", \"$1 $2\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], 870:[, [, , \"[35-7]\\\\d{8}\", , , , , , , [9]], [, , , , , , , , , [-1]], [, , \"(?:[356]\\\\d|7[6-8])\\\\d{7}\", , , , \"301234567\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , ,\n, , , [-1]], [, , , , , , , , , [-1]], \"001\", 870, , , , , , , , , [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"[35-7]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], 878:[, [, , \"10\\\\d{10}\", , , , , , , [12]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"10\\\\d{10}\", , , , \"101234567890\"], \"001\", 878, , , , ,\n, , , 1, [[, \"(\\\\d{2})(\\\\d{5})(\\\\d{5})\", \"$1 $2 $3\", [\"1\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], 881:[, [, , \"[67]\\\\d{8}\", , , , , , , [9]], [, , , , , , , , , [-1]], [, , \"[67]\\\\d{8}\", , , , \"612345678\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"001\", 881, , , , , , , , , [[, \"(\\\\d)(\\\\d{3})(\\\\d{5})\", \"$1 $2 $3\", [\"[67]\"]]], , [,\n, , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], 882:[, [, , \"1\\\\d{6,11}|3\\\\d{6}(?:\\\\d{2,5})?\", , , , , , , [7, 8, 9, 10, 11, 12]], [, , , , , , , , , [-1]], [, , \"3(?:37\\\\d\\\\d|42)\\\\d{4}|3(?:2|47|7\\\\d{3})\\\\d{7}\", , , , \"3421234\", , , [7, 9, 10, 12]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"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})|3(?:45|9\\\\d{3})\\\\d{7}\",\n, , , \"390123456789\"], \"001\", 882, , , , , , , , , [[, \"(\\\\d{2})(\\\\d{5})\", \"$1 $2\", [\"16|342\"]], [, \"(\\\\d{2})(\\\\d{2})(\\\\d{4})\", \"$1 $2 $3\", [\"1\"]], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{3})\", \"$1 $2 $3\", [\"3[23]\"]], [, \"(\\\\d{2})(\\\\d{3,4})(\\\\d{4})\", \"$1 $2 $3\", [\"1\"]], [, \"(\\\\d{2})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"34[57]\"]], [, \"(\\\\d{3})(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\", [\"34\"]], [, \"(\\\\d{2})(\\\\d{4,5})(\\\\d{5})\", \"$1 $2 $3\", [\"[13]\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]],\n, , [, , \"348[57]\\\\d{7}\", , , , \"34851234567\", , , [11]]], 883:[, [, , \"51\\\\d{7}(?:\\\\d{3})?\", , , , , , , [9, 12]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"51[013]0\\\\d{8}|5100\\\\d{5}\", , , , \"510012345\"], \"001\", 883, , , , , , , , 1, [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3\", [\"510\"]], [, \"(\\\\d{3})(\\\\d{3})(\\\\d{3})(\\\\d{3})\", \"$1 $2 $3 $4\", [\"510\"]], [, \"(\\\\d{4})(\\\\d{4})(\\\\d{4})\",\n\"$1 $2 $3\", [\"5\"]]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]], 888:[, [, , \"\\\\d{11}\", , , , , , , [11]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"001\", 888, , , , , , , , 1, [[, \"(\\\\d{3})(\\\\d{3})(\\\\d{5})\", \"$1 $2 $3\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , \"\\\\d{11}\",\n, , , \"12345678901\"], , , [, , , , , , , , , [-1]]], 979:[, [, , \"\\\\d{9}\", , , , , , , [9]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , \"\\\\d{9}\", , , , \"123456789\"], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], \"001\", 979, , , , , , , , 1, [[, \"(\\\\d)(\\\\d{4})(\\\\d{4})\", \"$1 $2 $3\"]], , [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]], [, , , , , , , , , [-1]], , , [, , , , , , , , , [-1]]]};\n/*\n\n Copyright (C) 2010 The Libphonenumber Authors.\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n*/\ni18n.phonenumbers.PhoneNumberUtil = function() {\n  this.regionToMetadataMap = {};\n};\ngoog.addSingletonGetter(i18n.phonenumbers.PhoneNumberUtil);\ni18n.phonenumbers.Error = {INVALID_COUNTRY_CODE:\"Invalid country calling code\", NOT_A_NUMBER:\"The string supplied did not seem to be a phone number\", TOO_SHORT_AFTER_IDD:\"Phone number too short after IDD\", TOO_SHORT_NSN:\"The string supplied is too short to be a phone number\", TOO_LONG:\"The string supplied is too long to be a phone number\"};\ni18n.phonenumbers.PhoneNumberUtil.NANPA_COUNTRY_CODE_ = 1;\ni18n.phonenumbers.PhoneNumberUtil.MIN_LENGTH_FOR_NSN_ = 2;\ni18n.phonenumbers.PhoneNumberUtil.MAX_LENGTH_FOR_NSN_ = 17;\ni18n.phonenumbers.PhoneNumberUtil.MAX_LENGTH_COUNTRY_CODE_ = 3;\ni18n.phonenumbers.PhoneNumberUtil.MAX_INPUT_STRING_LENGTH_ = 250;\ni18n.phonenumbers.PhoneNumberUtil.UNKNOWN_REGION_ = \"ZZ\";\ni18n.phonenumbers.PhoneNumberUtil.COLOMBIA_MOBILE_TO_FIXED_LINE_PREFIX_ = \"3\";\ni18n.phonenumbers.PhoneNumberUtil.MOBILE_TOKEN_MAPPINGS_ = {54:\"9\"};\ni18n.phonenumbers.PhoneNumberUtil.GEO_MOBILE_COUNTRIES_ = [52, 54, 55];\ni18n.phonenumbers.PhoneNumberUtil.PLUS_SIGN = \"+\";\ni18n.phonenumbers.PhoneNumberUtil.STAR_SIGN_ = \"*\";\ni18n.phonenumbers.PhoneNumberUtil.RFC3966_EXTN_PREFIX_ = \";ext=\";\ni18n.phonenumbers.PhoneNumberUtil.RFC3966_PREFIX_ = \"tel:\";\ni18n.phonenumbers.PhoneNumberUtil.RFC3966_PHONE_CONTEXT_ = \";phone-context=\";\ni18n.phonenumbers.PhoneNumberUtil.RFC3966_ISDN_SUBADDRESS_ = \";isub=\";\ni18n.phonenumbers.PhoneNumberUtil.DIGIT_MAPPINGS = {0:\"0\", 1:\"1\", 2:\"2\", 3:\"3\", 4:\"4\", 5:\"5\", 6:\"6\", 7:\"7\", 8:\"8\", 9:\"9\", \"\\uff10\":\"0\", \"\\uff11\":\"1\", \"\\uff12\":\"2\", \"\\uff13\":\"3\", \"\\uff14\":\"4\", \"\\uff15\":\"5\", \"\\uff16\":\"6\", \"\\uff17\":\"7\", \"\\uff18\":\"8\", \"\\uff19\":\"9\", \"\\u0660\":\"0\", \"\\u0661\":\"1\", \"\\u0662\":\"2\", \"\\u0663\":\"3\", \"\\u0664\":\"4\", \"\\u0665\":\"5\", \"\\u0666\":\"6\", \"\\u0667\":\"7\", \"\\u0668\":\"8\", \"\\u0669\":\"9\", \"\\u06f0\":\"0\", \"\\u06f1\":\"1\", \"\\u06f2\":\"2\", \"\\u06f3\":\"3\", \"\\u06f4\":\"4\", \"\\u06f5\":\"5\", \"\\u06f6\":\"6\", \"\\u06f7\":\"7\",\n\"\\u06f8\":\"8\", \"\\u06f9\":\"9\"};\ni18n.phonenumbers.PhoneNumberUtil.DIALLABLE_CHAR_MAPPINGS_ = {0:\"0\", 1:\"1\", 2:\"2\", 3:\"3\", 4:\"4\", 5:\"5\", 6:\"6\", 7:\"7\", 8:\"8\", 9:\"9\", \"+\":i18n.phonenumbers.PhoneNumberUtil.PLUS_SIGN, \"*\":\"*\", \"#\":\"#\"};\ni18n.phonenumbers.PhoneNumberUtil.ALPHA_MAPPINGS_ = {A:\"2\", B:\"2\", C:\"2\", D:\"3\", E:\"3\", F:\"3\", G:\"4\", H:\"4\", I:\"4\", J:\"5\", K:\"5\", L:\"5\", M:\"6\", N:\"6\", O:\"6\", P:\"7\", Q:\"7\", R:\"7\", S:\"7\", T:\"8\", U:\"8\", V:\"8\", W:\"9\", X:\"9\", Y:\"9\", Z:\"9\"};\ni18n.phonenumbers.PhoneNumberUtil.ALL_NORMALIZATION_MAPPINGS_ = {0:\"0\", 1:\"1\", 2:\"2\", 3:\"3\", 4:\"4\", 5:\"5\", 6:\"6\", 7:\"7\", 8:\"8\", 9:\"9\", \"\\uff10\":\"0\", \"\\uff11\":\"1\", \"\\uff12\":\"2\", \"\\uff13\":\"3\", \"\\uff14\":\"4\", \"\\uff15\":\"5\", \"\\uff16\":\"6\", \"\\uff17\":\"7\", \"\\uff18\":\"8\", \"\\uff19\":\"9\", \"\\u0660\":\"0\", \"\\u0661\":\"1\", \"\\u0662\":\"2\", \"\\u0663\":\"3\", \"\\u0664\":\"4\", \"\\u0665\":\"5\", \"\\u0666\":\"6\", \"\\u0667\":\"7\", \"\\u0668\":\"8\", \"\\u0669\":\"9\", \"\\u06f0\":\"0\", \"\\u06f1\":\"1\", \"\\u06f2\":\"2\", \"\\u06f3\":\"3\", \"\\u06f4\":\"4\", \"\\u06f5\":\"5\", \"\\u06f6\":\"6\",\n\"\\u06f7\":\"7\", \"\\u06f8\":\"8\", \"\\u06f9\":\"9\", A:\"2\", B:\"2\", C:\"2\", D:\"3\", E:\"3\", F:\"3\", G:\"4\", H:\"4\", I:\"4\", J:\"5\", K:\"5\", L:\"5\", M:\"6\", N:\"6\", O:\"6\", P:\"7\", Q:\"7\", R:\"7\", S:\"7\", T:\"8\", U:\"8\", V:\"8\", W:\"9\", X:\"9\", Y:\"9\", Z:\"9\"};\ni18n.phonenumbers.PhoneNumberUtil.ALL_PLUS_NUMBER_GROUPING_SYMBOLS_ = {0:\"0\", 1:\"1\", 2:\"2\", 3:\"3\", 4:\"4\", 5:\"5\", 6:\"6\", 7:\"7\", 8:\"8\", 9:\"9\", A:\"A\", B:\"B\", C:\"C\", D:\"D\", E:\"E\", F:\"F\", G:\"G\", H:\"H\", I:\"I\", J:\"J\", K:\"K\", L:\"L\", M:\"M\", N:\"N\", O:\"O\", P:\"P\", Q:\"Q\", R:\"R\", S:\"S\", T:\"T\", U:\"U\", V:\"V\", W:\"W\", X:\"X\", Y:\"Y\", Z:\"Z\", a:\"A\", b:\"B\", c:\"C\", d:\"D\", e:\"E\", f:\"F\", g:\"G\", h:\"H\", i:\"I\", j:\"J\", k:\"K\", l:\"L\", m:\"M\", n:\"N\", o:\"O\", p:\"P\", q:\"Q\", r:\"R\", s:\"S\", t:\"T\", u:\"U\", v:\"V\", w:\"W\", x:\"X\", y:\"Y\", z:\"Z\",\n\"-\":\"-\", \"\\uff0d\":\"-\", \"\\u2010\":\"-\", \"\\u2011\":\"-\", \"\\u2012\":\"-\", \"\\u2013\":\"-\", \"\\u2014\":\"-\", \"\\u2015\":\"-\", \"\\u2212\":\"-\", \"/\":\"/\", \"\\uff0f\":\"/\", \" \":\" \", \"\\u3000\":\" \", \"\\u2060\":\" \", \".\":\".\", \"\\uff0e\":\".\"};\ni18n.phonenumbers.PhoneNumberUtil.SINGLE_INTERNATIONAL_PREFIX_ = /[\\d]+(?:[~\\u2053\\u223C\\uFF5E][\\d]+)?/;\ni18n.phonenumbers.PhoneNumberUtil.VALID_PUNCTUATION = \"-x\\u2010-\\u2015\\u2212\\u30fc\\uff0d-\\uff0f \\u00a0\\u00ad\\u200b\\u2060\\u3000()\\uff08\\uff09\\uff3b\\uff3d.\\\\[\\\\]/~\\u2053\\u223c\\uff5e\";\ni18n.phonenumbers.PhoneNumberUtil.VALID_DIGITS_ = \"0-9\\uff10-\\uff19\\u0660-\\u0669\\u06f0-\\u06f9\";\ni18n.phonenumbers.PhoneNumberUtil.VALID_ALPHA_ = \"A-Za-z\";\ni18n.phonenumbers.PhoneNumberUtil.PLUS_CHARS_ = \"+\\uff0b\";\ni18n.phonenumbers.PhoneNumberUtil.PLUS_CHARS_PATTERN = new RegExp(\"[\" + i18n.phonenumbers.PhoneNumberUtil.PLUS_CHARS_ + \"]+\");\ni18n.phonenumbers.PhoneNumberUtil.LEADING_PLUS_CHARS_PATTERN = new RegExp(\"^[\" + i18n.phonenumbers.PhoneNumberUtil.PLUS_CHARS_ + \"]+\");\ni18n.phonenumbers.PhoneNumberUtil.SEPARATOR_PATTERN_ = \"[\" + i18n.phonenumbers.PhoneNumberUtil.VALID_PUNCTUATION + \"]+\";\ni18n.phonenumbers.PhoneNumberUtil.CAPTURING_DIGIT_PATTERN = new RegExp(\"([\" + i18n.phonenumbers.PhoneNumberUtil.VALID_DIGITS_ + \"])\");\ni18n.phonenumbers.PhoneNumberUtil.VALID_START_CHAR_PATTERN_ = new RegExp(\"[\" + i18n.phonenumbers.PhoneNumberUtil.PLUS_CHARS_ + i18n.phonenumbers.PhoneNumberUtil.VALID_DIGITS_ + \"]\");\ni18n.phonenumbers.PhoneNumberUtil.SECOND_NUMBER_START_PATTERN_ = /[\\\\\\/] *x/;\ni18n.phonenumbers.PhoneNumberUtil.UNWANTED_END_CHAR_PATTERN_ = new RegExp(\"[^\" + i18n.phonenumbers.PhoneNumberUtil.VALID_DIGITS_ + i18n.phonenumbers.PhoneNumberUtil.VALID_ALPHA_ + \"#]+$\");\ni18n.phonenumbers.PhoneNumberUtil.VALID_ALPHA_PHONE_PATTERN_ = /(?:.*?[A-Za-z]){3}.*/;\ni18n.phonenumbers.PhoneNumberUtil.MIN_LENGTH_PHONE_NUMBER_PATTERN_ = \"[\" + i18n.phonenumbers.PhoneNumberUtil.VALID_DIGITS_ + \"]{\" + i18n.phonenumbers.PhoneNumberUtil.MIN_LENGTH_FOR_NSN_ + \"}\";\ni18n.phonenumbers.PhoneNumberUtil.VALID_PHONE_NUMBER_ = \"[\" + i18n.phonenumbers.PhoneNumberUtil.PLUS_CHARS_ + \"]*(?:[\" + i18n.phonenumbers.PhoneNumberUtil.VALID_PUNCTUATION + i18n.phonenumbers.PhoneNumberUtil.STAR_SIGN_ + \"]*[\" + i18n.phonenumbers.PhoneNumberUtil.VALID_DIGITS_ + \"]){3,}[\" + i18n.phonenumbers.PhoneNumberUtil.VALID_PUNCTUATION + i18n.phonenumbers.PhoneNumberUtil.STAR_SIGN_ + i18n.phonenumbers.PhoneNumberUtil.VALID_ALPHA_ + i18n.phonenumbers.PhoneNumberUtil.VALID_DIGITS_ + \"]*\";\ni18n.phonenumbers.PhoneNumberUtil.DEFAULT_EXTN_PREFIX_ = \" ext. \";\ni18n.phonenumbers.PhoneNumberUtil.CAPTURING_EXTN_DIGITS_ = \"([\" + i18n.phonenumbers.PhoneNumberUtil.VALID_DIGITS_ + \"]{1,7})\";\ni18n.phonenumbers.PhoneNumberUtil.EXTN_PATTERNS_FOR_PARSING_ = i18n.phonenumbers.PhoneNumberUtil.RFC3966_EXTN_PREFIX_ + i18n.phonenumbers.PhoneNumberUtil.CAPTURING_EXTN_DIGITS_ + \"|[ \\u00a0\\\\t,]*(?:e?xt(?:ensi(?:o\\u0301?|\\u00f3))?n?|\\uff45?\\uff58\\uff54\\uff4e?|\\u0434\\u043e\\u0431|[;,x\\uff58#\\uff03~\\uff5e]|int|anexo|\\uff49\\uff4e\\uff54)[:\\\\.\\uff0e]?[ \\u00a0\\\\t,-]*\" + i18n.phonenumbers.PhoneNumberUtil.CAPTURING_EXTN_DIGITS_ + \"#?|[- ]+([\" + i18n.phonenumbers.PhoneNumberUtil.VALID_DIGITS_ + \"]{1,5})#\";\ni18n.phonenumbers.PhoneNumberUtil.EXTN_PATTERN_ = new RegExp(\"(?:\" + i18n.phonenumbers.PhoneNumberUtil.EXTN_PATTERNS_FOR_PARSING_ + \")$\", \"i\");\ni18n.phonenumbers.PhoneNumberUtil.VALID_PHONE_NUMBER_PATTERN_ = new RegExp(\"^\" + i18n.phonenumbers.PhoneNumberUtil.MIN_LENGTH_PHONE_NUMBER_PATTERN_ + \"$|^\" + i18n.phonenumbers.PhoneNumberUtil.VALID_PHONE_NUMBER_ + \"(?:\" + i18n.phonenumbers.PhoneNumberUtil.EXTN_PATTERNS_FOR_PARSING_ + \")?$\", \"i\");\ni18n.phonenumbers.PhoneNumberUtil.NON_DIGITS_PATTERN_ = /\\D+/;\ni18n.phonenumbers.PhoneNumberUtil.FIRST_GROUP_PATTERN_ = /(\\$\\d)/;\ni18n.phonenumbers.PhoneNumberUtil.NP_PATTERN_ = /\\$NP/;\ni18n.phonenumbers.PhoneNumberUtil.FG_PATTERN_ = /\\$FG/;\ni18n.phonenumbers.PhoneNumberUtil.CC_PATTERN_ = /\\$CC/;\ni18n.phonenumbers.PhoneNumberUtil.FIRST_GROUP_ONLY_PREFIX_PATTERN_ = /^\\(?\\$1\\)?$/;\ni18n.phonenumbers.PhoneNumberUtil.REGION_CODE_FOR_NON_GEO_ENTITY = \"001\";\ni18n.phonenumbers.PhoneNumberFormat = {E164:0, INTERNATIONAL:1, NATIONAL:2, RFC3966:3};\ni18n.phonenumbers.PhoneNumberType = {FIXED_LINE:0, MOBILE:1, FIXED_LINE_OR_MOBILE:2, TOLL_FREE:3, PREMIUM_RATE:4, SHARED_COST:5, VOIP:6, PERSONAL_NUMBER:7, PAGER:8, UAN:9, VOICEMAIL:10, UNKNOWN:-1};\ni18n.phonenumbers.PhoneNumberUtil.MatchType = {NOT_A_NUMBER:0, NO_MATCH:1, SHORT_NSN_MATCH:2, NSN_MATCH:3, EXACT_MATCH:4};\ni18n.phonenumbers.PhoneNumberUtil.ValidationResult = {IS_POSSIBLE:0, IS_POSSIBLE_LOCAL_ONLY:4, INVALID_COUNTRY_CODE:1, TOO_SHORT:2, INVALID_LENGTH:5, TOO_LONG:3};\ni18n.phonenumbers.PhoneNumberUtil.extractPossibleNumber = function(a) {\n  var b = a.search(i18n.phonenumbers.PhoneNumberUtil.VALID_START_CHAR_PATTERN_);\n  0 <= b ? (a = a.substring(b), a = a.replace(i18n.phonenumbers.PhoneNumberUtil.UNWANTED_END_CHAR_PATTERN_, \"\"), b = a.search(i18n.phonenumbers.PhoneNumberUtil.SECOND_NUMBER_START_PATTERN_), 0 <= b && (a = a.substring(0, b))) : a = \"\";\n  return a;\n};\ni18n.phonenumbers.PhoneNumberUtil.isViablePhoneNumber = function(a) {\n  return a.length < i18n.phonenumbers.PhoneNumberUtil.MIN_LENGTH_FOR_NSN_ ? !1 : i18n.phonenumbers.PhoneNumberUtil.matchesEntirely(i18n.phonenumbers.PhoneNumberUtil.VALID_PHONE_NUMBER_PATTERN_, a);\n};\ni18n.phonenumbers.PhoneNumberUtil.normalize = function(a) {\n  return i18n.phonenumbers.PhoneNumberUtil.matchesEntirely(i18n.phonenumbers.PhoneNumberUtil.VALID_ALPHA_PHONE_PATTERN_, a) ? i18n.phonenumbers.PhoneNumberUtil.normalizeHelper_(a, i18n.phonenumbers.PhoneNumberUtil.ALL_NORMALIZATION_MAPPINGS_, !0) : i18n.phonenumbers.PhoneNumberUtil.normalizeDigitsOnly(a);\n};\ni18n.phonenumbers.PhoneNumberUtil.normalizeSB_ = function(a) {\n  var b = i18n.phonenumbers.PhoneNumberUtil.normalize(a.toString());\n  a.clear();\n  a.append(b);\n};\ni18n.phonenumbers.PhoneNumberUtil.normalizeDigitsOnly = function(a) {\n  return i18n.phonenumbers.PhoneNumberUtil.normalizeHelper_(a, i18n.phonenumbers.PhoneNumberUtil.DIGIT_MAPPINGS, !0);\n};\ni18n.phonenumbers.PhoneNumberUtil.normalizeDiallableCharsOnly = function(a) {\n  return i18n.phonenumbers.PhoneNumberUtil.normalizeHelper_(a, i18n.phonenumbers.PhoneNumberUtil.DIALLABLE_CHAR_MAPPINGS_, !0);\n};\ni18n.phonenumbers.PhoneNumberUtil.convertAlphaCharactersInNumber = function(a) {\n  return i18n.phonenumbers.PhoneNumberUtil.normalizeHelper_(a, i18n.phonenumbers.PhoneNumberUtil.ALL_NORMALIZATION_MAPPINGS_, !1);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getLengthOfGeographicalAreaCode = function(a) {\n  var b = this.getMetadataForRegion(this.getRegionCodeForNumber(a));\n  return null != b && (b.hasNationalPrefix() || a.hasItalianLeadingZero()) && this.isNumberGeographical(a) ? this.getLengthOfNationalDestinationCode(a) : 0;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getLengthOfNationalDestinationCode = function(a) {\n  if (a.hasExtension()) {\n    var b = a.clone();\n    b.clearExtension();\n  } else {\n    b = a;\n  }\n  b = this.format(b, i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL).split(i18n.phonenumbers.PhoneNumberUtil.NON_DIGITS_PATTERN_);\n  0 == b[0].length && b.shift();\n  return 2 >= b.length ? 0 : this.getNumberType(a) == i18n.phonenumbers.PhoneNumberType.MOBILE && (a = i18n.phonenumbers.PhoneNumberUtil.getCountryMobileToken(a.getCountryCodeOrDefault()), \"\" != a) ? b[2].length + a.length : b[1].length;\n};\ni18n.phonenumbers.PhoneNumberUtil.getCountryMobileToken = function(a) {\n  return i18n.phonenumbers.PhoneNumberUtil.MOBILE_TOKEN_MAPPINGS_[a] || \"\";\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getSupportedRegions = function() {\n  return goog.array.filter(Object.keys(i18n.phonenumbers.metadata.countryToMetadata), function(a) {\n    return isNaN(a);\n  });\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getSupportedGlobalNetworkCallingCodes = function() {\n  var a = goog.array.filter(Object.keys(i18n.phonenumbers.metadata.countryToMetadata), function(a) {\n    return !isNaN(a);\n  });\n  return goog.array.map(a, function(a) {\n    return parseInt(a, 10);\n  });\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getSupportedCallingCodes = function() {\n  var a = Object.keys(i18n.phonenumbers.metadata.countryCodeToRegionCodeMap);\n  return goog.array.join(this.getSupportedGlobalNetworkCallingCodes(), goog.array.map(a, function(a) {\n    return parseInt(a, 10);\n  }));\n};\ni18n.phonenumbers.PhoneNumberUtil.descHasPossibleNumberData_ = function(a) {\n  return null != a && (1 != a.possibleLengthCount() || -1 != a.possibleLengthArray()[0]);\n};\ni18n.phonenumbers.PhoneNumberUtil.descHasData_ = function(a) {\n  return null != a && (a.hasExampleNumber() || i18n.phonenumbers.PhoneNumberUtil.descHasPossibleNumberData_(a) || a.hasNationalNumberPattern());\n};\ni18n.phonenumbers.PhoneNumberUtil.getSupportedTypesForMetadata_ = function(a) {\n  var b = [];\n  goog.object.forEach(i18n.phonenumbers.PhoneNumberType, function(c) {\n    if (c != i18n.phonenumbers.PhoneNumberType.FIXED_LINE_OR_MOBILE && c != i18n.phonenumbers.PhoneNumberType.UNKNOWN) {\n      var d = i18n.phonenumbers.PhoneNumberUtil.getNumberDescByType_(a, c);\n      i18n.phonenumbers.PhoneNumberUtil.descHasData_(d) && b.push(c);\n    }\n  });\n  return b;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getSupportedTypesForRegion = function(a) {\n  return this.isValidRegionCode_(a) ? i18n.phonenumbers.PhoneNumberUtil.getSupportedTypesForMetadata_(this.getMetadataForRegion(a)) : [];\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getSupportedTypesForNonGeoEntity = function(a) {\n  a = this.getMetadataForNonGeographicalRegion(a);\n  return null == a ? [] : i18n.phonenumbers.PhoneNumberUtil.getSupportedTypesForMetadata_(a);\n};\ni18n.phonenumbers.PhoneNumberUtil.normalizeHelper_ = function(a, b, c) {\n  for (var d = new goog.string.StringBuffer, e, f, g = a.length, h = 0; h < g; ++h) {\n    e = a.charAt(h), f = b[e.toUpperCase()], null != f ? d.append(f) : c || d.append(e);\n  }\n  return d.toString();\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.formattingRuleHasFirstGroupOnly = function(a) {\n  return 0 == a.length || i18n.phonenumbers.PhoneNumberUtil.FIRST_GROUP_ONLY_PREFIX_PATTERN_.test(a);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isNumberGeographical = function(a) {\n  var b = this.getNumberType(a);\n  return b == i18n.phonenumbers.PhoneNumberType.FIXED_LINE || b == i18n.phonenumbers.PhoneNumberType.FIXED_LINE_OR_MOBILE || goog.array.contains(i18n.phonenumbers.PhoneNumberUtil.GEO_MOBILE_COUNTRIES_, a.getCountryCodeOrDefault()) && b == i18n.phonenumbers.PhoneNumberType.MOBILE;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isValidRegionCode_ = function(a) {\n  return null != a && isNaN(a) && a.toUpperCase() in i18n.phonenumbers.metadata.countryToMetadata;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.hasValidCountryCallingCode_ = function(a) {\n  return a in i18n.phonenumbers.metadata.countryCodeToRegionCodeMap;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.format = function(a, b) {\n  if (0 == a.getNationalNumber() && a.hasRawInput()) {\n    var c = a.getRawInputOrDefault();\n    if (0 < c.length) {\n      return c;\n    }\n  }\n  c = a.getCountryCodeOrDefault();\n  var d = this.getNationalSignificantNumber(a);\n  if (b == i18n.phonenumbers.PhoneNumberFormat.E164) {\n    return this.prefixNumberWithCountryCallingCode_(c, i18n.phonenumbers.PhoneNumberFormat.E164, d, \"\");\n  }\n  if (!this.hasValidCountryCallingCode_(c)) {\n    return d;\n  }\n  var e = this.getRegionCodeForCountryCode(c), f = this.getMetadataForRegionOrCallingCode_(c, e);\n  e = this.maybeGetFormattedExtension_(a, f, b);\n  d = this.formatNsn_(d, f, b);\n  return this.prefixNumberWithCountryCallingCode_(c, b, d, e);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.formatByPattern = function(a, b, c) {\n  var d = a.getCountryCodeOrDefault(), e = this.getNationalSignificantNumber(a);\n  if (!this.hasValidCountryCallingCode_(d)) {\n    return e;\n  }\n  var f = this.getRegionCodeForCountryCode(d);\n  f = this.getMetadataForRegionOrCallingCode_(d, f);\n  var g = this.chooseFormattingPatternForNumber_(c, e);\n  if (null != g) {\n    c = g.clone();\n    g = g.getNationalPrefixFormattingRuleOrDefault();\n    if (0 < g.length) {\n      var h = f.getNationalPrefixOrDefault();\n      0 < h.length ? (g = g.replace(i18n.phonenumbers.PhoneNumberUtil.NP_PATTERN_, h).replace(i18n.phonenumbers.PhoneNumberUtil.FG_PATTERN_, \"$1\"), c.setNationalPrefixFormattingRule(g)) : c.clearNationalPrefixFormattingRule();\n    }\n    e = this.formatNsnUsingPattern_(e, c, b);\n  }\n  a = this.maybeGetFormattedExtension_(a, f, b);\n  return this.prefixNumberWithCountryCallingCode_(d, b, e, a);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.formatNationalNumberWithCarrierCode = function(a, b) {\n  var c = a.getCountryCodeOrDefault(), d = this.getNationalSignificantNumber(a);\n  if (!this.hasValidCountryCallingCode_(c)) {\n    return d;\n  }\n  var e = this.getRegionCodeForCountryCode(c), f = this.getMetadataForRegionOrCallingCode_(c, e);\n  e = this.maybeGetFormattedExtension_(a, f, i18n.phonenumbers.PhoneNumberFormat.NATIONAL);\n  d = this.formatNsn_(d, f, i18n.phonenumbers.PhoneNumberFormat.NATIONAL, b);\n  return this.prefixNumberWithCountryCallingCode_(c, i18n.phonenumbers.PhoneNumberFormat.NATIONAL, d, e);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getMetadataForRegionOrCallingCode_ = function(a, b) {\n  return i18n.phonenumbers.PhoneNumberUtil.REGION_CODE_FOR_NON_GEO_ENTITY == b ? this.getMetadataForNonGeographicalRegion(a) : this.getMetadataForRegion(b);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.formatNationalNumberWithPreferredCarrierCode = function(a, b) {\n  return this.formatNationalNumberWithCarrierCode(a, 0 < a.getPreferredDomesticCarrierCodeOrDefault().length ? a.getPreferredDomesticCarrierCodeOrDefault() : b);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.formatNumberForMobileDialing = function(a, b, c) {\n  var d = a.getCountryCodeOrDefault();\n  if (!this.hasValidCountryCallingCode_(d)) {\n    return a.hasRawInput() ? a.getRawInputOrDefault() : \"\";\n  }\n  var e = \"\";\n  a = a.clone();\n  a.clearExtension();\n  var f = this.getRegionCodeForCountryCode(d), g = this.getNumberType(a), h = g != i18n.phonenumbers.PhoneNumberType.UNKNOWN;\n  if (b == f) {\n    e = g == i18n.phonenumbers.PhoneNumberType.FIXED_LINE || g == i18n.phonenumbers.PhoneNumberType.MOBILE || g == i18n.phonenumbers.PhoneNumberType.FIXED_LINE_OR_MOBILE, \"CO\" == f && g == i18n.phonenumbers.PhoneNumberType.FIXED_LINE ? e = this.formatNationalNumberWithCarrierCode(a, i18n.phonenumbers.PhoneNumberUtil.COLOMBIA_MOBILE_TO_FIXED_LINE_PREFIX_) : \"BR\" == f && e ? e = 0 < a.getPreferredDomesticCarrierCodeOrDefault().length ? this.formatNationalNumberWithPreferredCarrierCode(a, \"\") : \"\" :\n    d == i18n.phonenumbers.PhoneNumberUtil.NANPA_COUNTRY_CODE_ ? (b = this.getMetadataForRegion(b), e = this.canBeInternationallyDialled(a) && this.testNumberLength_(this.getNationalSignificantNumber(a), b) != i18n.phonenumbers.PhoneNumberUtil.ValidationResult.TOO_SHORT ? this.format(a, i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL) : this.format(a, i18n.phonenumbers.PhoneNumberFormat.NATIONAL)) : e = (f == i18n.phonenumbers.PhoneNumberUtil.REGION_CODE_FOR_NON_GEO_ENTITY || (\"MX\" == f || \"CL\" ==\n    f || \"UZ\" == f) && e) && this.canBeInternationallyDialled(a) ? this.format(a, i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL) : this.format(a, i18n.phonenumbers.PhoneNumberFormat.NATIONAL);\n  } else {\n    if (h && this.canBeInternationallyDialled(a)) {\n      return c ? this.format(a, i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL) : this.format(a, i18n.phonenumbers.PhoneNumberFormat.E164);\n    }\n  }\n  return c ? e : i18n.phonenumbers.PhoneNumberUtil.normalizeDiallableCharsOnly(e);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.formatOutOfCountryCallingNumber = function(a, b) {\n  if (!this.isValidRegionCode_(b)) {\n    return this.format(a, i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL);\n  }\n  var c = a.getCountryCodeOrDefault(), d = this.getNationalSignificantNumber(a);\n  if (!this.hasValidCountryCallingCode_(c)) {\n    return d;\n  }\n  if (c == i18n.phonenumbers.PhoneNumberUtil.NANPA_COUNTRY_CODE_) {\n    if (this.isNANPACountry(b)) {\n      return c + \" \" + this.format(a, i18n.phonenumbers.PhoneNumberFormat.NATIONAL);\n    }\n  } else {\n    if (c == this.getCountryCodeForValidRegion_(b)) {\n      return this.format(a, i18n.phonenumbers.PhoneNumberFormat.NATIONAL);\n    }\n  }\n  var e = this.getMetadataForRegion(b), f = e.getInternationalPrefixOrDefault(), g = \"\";\n  i18n.phonenumbers.PhoneNumberUtil.matchesEntirely(i18n.phonenumbers.PhoneNumberUtil.SINGLE_INTERNATIONAL_PREFIX_, f) ? g = f : e.hasPreferredInternationalPrefix() && (g = e.getPreferredInternationalPrefixOrDefault());\n  e = this.getRegionCodeForCountryCode(c);\n  e = this.getMetadataForRegionOrCallingCode_(c, e);\n  d = this.formatNsn_(d, e, i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL);\n  e = this.maybeGetFormattedExtension_(a, e, i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL);\n  return 0 < g.length ? g + \" \" + c + \" \" + d + e : this.prefixNumberWithCountryCallingCode_(c, i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL, d, e);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.formatInOriginalFormat = function(a, b) {\n  if (a.hasRawInput() && !this.hasFormattingPatternForNumber_(a)) {\n    return a.getRawInputOrDefault();\n  }\n  if (!a.hasCountryCodeSource()) {\n    return this.format(a, i18n.phonenumbers.PhoneNumberFormat.NATIONAL);\n  }\n  switch(a.getCountryCodeSource()) {\n    case i18n.phonenumbers.PhoneNumber.CountryCodeSource.FROM_NUMBER_WITH_PLUS_SIGN:\n      var c = this.format(a, i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL);\n      break;\n    case i18n.phonenumbers.PhoneNumber.CountryCodeSource.FROM_NUMBER_WITH_IDD:\n      c = this.formatOutOfCountryCallingNumber(a, b);\n      break;\n    case i18n.phonenumbers.PhoneNumber.CountryCodeSource.FROM_NUMBER_WITHOUT_PLUS_SIGN:\n      c = this.format(a, i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL).substring(1);\n      break;\n    default:\n      var d = this.getRegionCodeForCountryCode(a.getCountryCodeOrDefault()), e = this.getNddPrefixForRegion(d, !0);\n      c = this.format(a, i18n.phonenumbers.PhoneNumberFormat.NATIONAL);\n      if (null != e && 0 != e.length && !this.rawInputContainsNationalPrefix_(a.getRawInputOrDefault(), e, d) && (d = this.getMetadataForRegion(d), e = this.getNationalSignificantNumber(a), d = this.chooseFormattingPatternForNumber_(d.numberFormatArray(), e), null != d)) {\n        e = d.getNationalPrefixFormattingRuleOrDefault();\n        var f = e.indexOf(\"$1\");\n        0 >= f || (e = e.substring(0, f), e = i18n.phonenumbers.PhoneNumberUtil.normalizeDigitsOnly(e), 0 != e.length && (c = d.clone(), c.clearNationalPrefixFormattingRule(), c = this.formatByPattern(a, i18n.phonenumbers.PhoneNumberFormat.NATIONAL, [c])));\n      }\n  }\n  d = a.getRawInputOrDefault();\n  null != c && 0 < d.length && (e = i18n.phonenumbers.PhoneNumberUtil.normalizeDiallableCharsOnly(c), f = i18n.phonenumbers.PhoneNumberUtil.normalizeDiallableCharsOnly(d), e != f && (c = d));\n  return c;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.rawInputContainsNationalPrefix_ = function(a, b, c) {\n  a = i18n.phonenumbers.PhoneNumberUtil.normalizeDigitsOnly(a);\n  if (goog.string.startsWith(a, b)) {\n    try {\n      return this.isValidNumber(this.parse(a.substring(b.length), c));\n    } catch (d) {\n    }\n  }\n  return !1;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.hasFormattingPatternForNumber_ = function(a) {\n  var b = a.getCountryCodeOrDefault(), c = this.getRegionCodeForCountryCode(b);\n  b = this.getMetadataForRegionOrCallingCode_(b, c);\n  if (null == b) {\n    return !1;\n  }\n  a = this.getNationalSignificantNumber(a);\n  return null != this.chooseFormattingPatternForNumber_(b.numberFormatArray(), a);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.formatOutOfCountryKeepingAlphaChars = function(a, b) {\n  var c = a.getRawInputOrDefault();\n  if (0 == c.length) {\n    return this.formatOutOfCountryCallingNumber(a, b);\n  }\n  var d = a.getCountryCodeOrDefault();\n  if (!this.hasValidCountryCallingCode_(d)) {\n    return c;\n  }\n  c = i18n.phonenumbers.PhoneNumberUtil.normalizeHelper_(c, i18n.phonenumbers.PhoneNumberUtil.ALL_PLUS_NUMBER_GROUPING_SYMBOLS_, !0);\n  var e = this.getNationalSignificantNumber(a);\n  if (3 < e.length) {\n    var f = c.indexOf(e.substring(0, 3));\n    -1 != f && (c = c.substring(f));\n  }\n  f = this.getMetadataForRegion(b);\n  if (d == i18n.phonenumbers.PhoneNumberUtil.NANPA_COUNTRY_CODE_) {\n    if (this.isNANPACountry(b)) {\n      return d + \" \" + c;\n    }\n  } else {\n    if (null != f && d == this.getCountryCodeForValidRegion_(b)) {\n      d = this.chooseFormattingPatternForNumber_(f.numberFormatArray(), e);\n      if (null == d) {\n        return c;\n      }\n      d = d.clone();\n      d.setPattern(\"(\\\\d+)(.*)\");\n      d.setFormat(\"$1$2\");\n      return this.formatNsnUsingPattern_(c, d, i18n.phonenumbers.PhoneNumberFormat.NATIONAL);\n    }\n  }\n  e = \"\";\n  null != f && (e = f.getInternationalPrefixOrDefault(), e = i18n.phonenumbers.PhoneNumberUtil.matchesEntirely(i18n.phonenumbers.PhoneNumberUtil.SINGLE_INTERNATIONAL_PREFIX_, e) ? e : f.getPreferredInternationalPrefixOrDefault());\n  f = this.getRegionCodeForCountryCode(d);\n  f = this.getMetadataForRegionOrCallingCode_(d, f);\n  f = this.maybeGetFormattedExtension_(a, f, i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL);\n  return 0 < e.length ? e + \" \" + d + \" \" + c + f : this.prefixNumberWithCountryCallingCode_(d, i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL, c, f);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getNationalSignificantNumber = function(a) {\n  if (!a.hasNationalNumber()) {\n    return \"\";\n  }\n  var b = \"\" + a.getNationalNumber();\n  return a.hasItalianLeadingZero() && a.getItalianLeadingZero() && 0 < a.getNumberOfLeadingZerosOrDefault() ? Array(a.getNumberOfLeadingZerosOrDefault() + 1).join(\"0\") + b : b;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.prefixNumberWithCountryCallingCode_ = function(a, b, c, d) {\n  switch(b) {\n    case i18n.phonenumbers.PhoneNumberFormat.E164:\n      return i18n.phonenumbers.PhoneNumberUtil.PLUS_SIGN + a + c + d;\n    case i18n.phonenumbers.PhoneNumberFormat.INTERNATIONAL:\n      return i18n.phonenumbers.PhoneNumberUtil.PLUS_SIGN + a + \" \" + c + d;\n    case i18n.phonenumbers.PhoneNumberFormat.RFC3966:\n      return i18n.phonenumbers.PhoneNumberUtil.RFC3966_PREFIX_ + i18n.phonenumbers.PhoneNumberUtil.PLUS_SIGN + a + \"-\" + c + d;\n    default:\n      return c + d;\n  }\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.formatNsn_ = function(a, b, c, d) {\n  b = 0 == b.intlNumberFormatArray().length || c == i18n.phonenumbers.PhoneNumberFormat.NATIONAL ? b.numberFormatArray() : b.intlNumberFormatArray();\n  b = this.chooseFormattingPatternForNumber_(b, a);\n  return null == b ? a : this.formatNsnUsingPattern_(a, b, c, d);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.chooseFormattingPatternForNumber_ = function(a, b) {\n  for (var c, d = a.length, e = 0; e < d; ++e) {\n    c = a[e];\n    var f = c.leadingDigitsPatternCount();\n    if (0 == f || 0 == b.search(c.getLeadingDigitsPattern(f - 1))) {\n      if (f = new RegExp(c.getPattern()), i18n.phonenumbers.PhoneNumberUtil.matchesEntirely(f, b)) {\n        return c;\n      }\n    }\n  }\n  return null;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.formatNsnUsingPattern_ = function(a, b, c, d) {\n  var e = b.getFormatOrDefault(), f = new RegExp(b.getPattern()), g = b.getDomesticCarrierCodeFormattingRuleOrDefault();\n  c == i18n.phonenumbers.PhoneNumberFormat.NATIONAL && null != d && 0 < d.length && 0 < g.length ? (b = g.replace(i18n.phonenumbers.PhoneNumberUtil.CC_PATTERN_, d), e = e.replace(i18n.phonenumbers.PhoneNumberUtil.FIRST_GROUP_PATTERN_, b), a = a.replace(f, e)) : (b = b.getNationalPrefixFormattingRuleOrDefault(), a = c == i18n.phonenumbers.PhoneNumberFormat.NATIONAL && null != b && 0 < b.length ? a.replace(f, e.replace(i18n.phonenumbers.PhoneNumberUtil.FIRST_GROUP_PATTERN_, b)) : a.replace(f, e));\n  c == i18n.phonenumbers.PhoneNumberFormat.RFC3966 && (a = a.replace(new RegExp(\"^\" + i18n.phonenumbers.PhoneNumberUtil.SEPARATOR_PATTERN_), \"\"), a = a.replace(new RegExp(i18n.phonenumbers.PhoneNumberUtil.SEPARATOR_PATTERN_, \"g\"), \"-\"));\n  return a;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getExampleNumber = function(a) {\n  return this.getExampleNumberForType(a, i18n.phonenumbers.PhoneNumberType.FIXED_LINE);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getExampleNumberForType = function(a, b) {\n  if (!this.isValidRegionCode_(a)) {\n    return null;\n  }\n  var c = i18n.phonenumbers.PhoneNumberUtil.getNumberDescByType_(this.getMetadataForRegion(a), b);\n  try {\n    if (c.hasExampleNumber()) {\n      return this.parse(c.getExampleNumber(), a);\n    }\n  } catch (d) {\n  }\n  return null;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getExampleNumberForNonGeoEntity = function(a) {\n  var b = this.getMetadataForNonGeographicalRegion(a);\n  if (null != b && (b = goog.array.find([b.getMobile(), b.getTollFree(), b.getSharedCost(), b.getVoip(), b.getVoicemail(), b.getUan(), b.getPremiumRate()], function(a, b) {\n    return a.hasExampleNumber();\n  }), null != b)) {\n    try {\n      return this.parse(\"+\" + a + b.getExampleNumber(), \"ZZ\");\n    } catch (c) {\n    }\n  }\n  return null;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.maybeGetFormattedExtension_ = function(a, b, c) {\n  return a.hasExtension() && 0 != a.getExtension().length ? c == i18n.phonenumbers.PhoneNumberFormat.RFC3966 ? i18n.phonenumbers.PhoneNumberUtil.RFC3966_EXTN_PREFIX_ + a.getExtension() : b.hasPreferredExtnPrefix() ? b.getPreferredExtnPrefix() + a.getExtensionOrDefault() : i18n.phonenumbers.PhoneNumberUtil.DEFAULT_EXTN_PREFIX_ + a.getExtensionOrDefault() : \"\";\n};\ni18n.phonenumbers.PhoneNumberUtil.getNumberDescByType_ = function(a, b) {\n  switch(b) {\n    case i18n.phonenumbers.PhoneNumberType.PREMIUM_RATE:\n      return a.getPremiumRate();\n    case i18n.phonenumbers.PhoneNumberType.TOLL_FREE:\n      return a.getTollFree();\n    case i18n.phonenumbers.PhoneNumberType.MOBILE:\n      return a.getMobile();\n    case i18n.phonenumbers.PhoneNumberType.FIXED_LINE:\n    case i18n.phonenumbers.PhoneNumberType.FIXED_LINE_OR_MOBILE:\n      return a.getFixedLine();\n    case i18n.phonenumbers.PhoneNumberType.SHARED_COST:\n      return a.getSharedCost();\n    case i18n.phonenumbers.PhoneNumberType.VOIP:\n      return a.getVoip();\n    case i18n.phonenumbers.PhoneNumberType.PERSONAL_NUMBER:\n      return a.getPersonalNumber();\n    case i18n.phonenumbers.PhoneNumberType.PAGER:\n      return a.getPager();\n    case i18n.phonenumbers.PhoneNumberType.UAN:\n      return a.getUan();\n    case i18n.phonenumbers.PhoneNumberType.VOICEMAIL:\n      return a.getVoicemail();\n    default:\n      return a.getGeneralDesc();\n  }\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getNumberType = function(a) {\n  var b = this.getRegionCodeForNumber(a);\n  b = this.getMetadataForRegionOrCallingCode_(a.getCountryCodeOrDefault(), b);\n  if (null == b) {\n    return i18n.phonenumbers.PhoneNumberType.UNKNOWN;\n  }\n  a = this.getNationalSignificantNumber(a);\n  return this.getNumberTypeHelper_(a, b);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getNumberTypeHelper_ = function(a, b) {\n  return this.isNumberMatchingDesc_(a, b.getGeneralDesc()) ? this.isNumberMatchingDesc_(a, b.getPremiumRate()) ? i18n.phonenumbers.PhoneNumberType.PREMIUM_RATE : this.isNumberMatchingDesc_(a, b.getTollFree()) ? i18n.phonenumbers.PhoneNumberType.TOLL_FREE : this.isNumberMatchingDesc_(a, b.getSharedCost()) ? i18n.phonenumbers.PhoneNumberType.SHARED_COST : this.isNumberMatchingDesc_(a, b.getVoip()) ? i18n.phonenumbers.PhoneNumberType.VOIP : this.isNumberMatchingDesc_(a, b.getPersonalNumber()) ? i18n.phonenumbers.PhoneNumberType.PERSONAL_NUMBER :\n  this.isNumberMatchingDesc_(a, b.getPager()) ? i18n.phonenumbers.PhoneNumberType.PAGER : this.isNumberMatchingDesc_(a, b.getUan()) ? i18n.phonenumbers.PhoneNumberType.UAN : this.isNumberMatchingDesc_(a, b.getVoicemail()) ? i18n.phonenumbers.PhoneNumberType.VOICEMAIL : this.isNumberMatchingDesc_(a, b.getFixedLine()) ? b.getSameMobileAndFixedLinePattern() || this.isNumberMatchingDesc_(a, b.getMobile()) ? i18n.phonenumbers.PhoneNumberType.FIXED_LINE_OR_MOBILE : i18n.phonenumbers.PhoneNumberType.FIXED_LINE :\n  !b.getSameMobileAndFixedLinePattern() && this.isNumberMatchingDesc_(a, b.getMobile()) ? i18n.phonenumbers.PhoneNumberType.MOBILE : i18n.phonenumbers.PhoneNumberType.UNKNOWN : i18n.phonenumbers.PhoneNumberType.UNKNOWN;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getMetadataForRegion = function(a) {\n  if (null == a) {\n    return null;\n  }\n  a = a.toUpperCase();\n  var b = this.regionToMetadataMap[a];\n  if (null == b) {\n    b = new goog.proto2.PbLiteSerializer;\n    var c = i18n.phonenumbers.metadata.countryToMetadata[a];\n    if (null == c) {\n      return null;\n    }\n    b = b.deserialize(i18n.phonenumbers.PhoneMetadata.getDescriptor(), c);\n    this.regionToMetadataMap[a] = b;\n  }\n  return b;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getMetadataForNonGeographicalRegion = function(a) {\n  return this.getMetadataForRegion(\"\" + a);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isNumberMatchingDesc_ = function(a, b) {\n  var c = a.length;\n  return 0 < b.possibleLengthCount() && -1 == goog.array.indexOf(b.possibleLengthArray(), c) ? !1 : i18n.phonenumbers.PhoneNumberUtil.matchesEntirely(b.getNationalNumberPatternOrDefault(), a);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isValidNumber = function(a) {\n  var b = this.getRegionCodeForNumber(a);\n  return this.isValidNumberForRegion(a, b);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isValidNumberForRegion = function(a, b) {\n  var c = a.getCountryCodeOrDefault(), d = this.getMetadataForRegionOrCallingCode_(c, b);\n  if (null == d || i18n.phonenumbers.PhoneNumberUtil.REGION_CODE_FOR_NON_GEO_ENTITY != b && c != this.getCountryCodeForValidRegion_(b)) {\n    return !1;\n  }\n  c = this.getNationalSignificantNumber(a);\n  return this.getNumberTypeHelper_(c, d) != i18n.phonenumbers.PhoneNumberType.UNKNOWN;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getRegionCodeForNumber = function(a) {\n  if (null == a) {\n    return null;\n  }\n  var b = a.getCountryCodeOrDefault();\n  b = i18n.phonenumbers.metadata.countryCodeToRegionCodeMap[b];\n  return null == b ? null : 1 == b.length ? b[0] : this.getRegionCodeForNumberFromRegionList_(a, b);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getRegionCodeForNumberFromRegionList_ = function(a, b) {\n  for (var c = this.getNationalSignificantNumber(a), d, e = b.length, f = 0; f < e; f++) {\n    d = b[f];\n    var g = this.getMetadataForRegion(d);\n    if (g.hasLeadingDigits()) {\n      if (0 == c.search(g.getLeadingDigits())) {\n        return d;\n      }\n    } else {\n      if (this.getNumberTypeHelper_(c, g) != i18n.phonenumbers.PhoneNumberType.UNKNOWN) {\n        return d;\n      }\n    }\n  }\n  return null;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getRegionCodeForCountryCode = function(a) {\n  a = i18n.phonenumbers.metadata.countryCodeToRegionCodeMap[a];\n  return null == a ? i18n.phonenumbers.PhoneNumberUtil.UNKNOWN_REGION_ : a[0];\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getRegionCodesForCountryCode = function(a) {\n  a = i18n.phonenumbers.metadata.countryCodeToRegionCodeMap[a];\n  return null == a ? [] : a;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getCountryCodeForRegion = function(a) {\n  return this.isValidRegionCode_(a) ? this.getCountryCodeForValidRegion_(a) : 0;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getCountryCodeForValidRegion_ = function(a) {\n  var b = this.getMetadataForRegion(a);\n  if (null == b) {\n    throw Error(\"Invalid region code: \" + a);\n  }\n  return b.getCountryCodeOrDefault();\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.getNddPrefixForRegion = function(a, b) {\n  var c = this.getMetadataForRegion(a);\n  if (null == c) {\n    return null;\n  }\n  c = c.getNationalPrefixOrDefault();\n  if (0 == c.length) {\n    return null;\n  }\n  b && (c = c.replace(\"~\", \"\"));\n  return c;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isNANPACountry = function(a) {\n  return null != a && goog.array.contains(i18n.phonenumbers.metadata.countryCodeToRegionCodeMap[i18n.phonenumbers.PhoneNumberUtil.NANPA_COUNTRY_CODE_], a.toUpperCase());\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isAlphaNumber = function(a) {\n  if (!i18n.phonenumbers.PhoneNumberUtil.isViablePhoneNumber(a)) {\n    return !1;\n  }\n  a = new goog.string.StringBuffer(a);\n  this.maybeStripExtension(a);\n  return i18n.phonenumbers.PhoneNumberUtil.matchesEntirely(i18n.phonenumbers.PhoneNumberUtil.VALID_ALPHA_PHONE_PATTERN_, a.toString());\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isPossibleNumber = function(a) {\n  a = this.isPossibleNumberWithReason(a);\n  return a == i18n.phonenumbers.PhoneNumberUtil.ValidationResult.IS_POSSIBLE || a == i18n.phonenumbers.PhoneNumberUtil.ValidationResult.IS_POSSIBLE_LOCAL_ONLY;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isPossibleNumberForType = function(a, b) {\n  var c = this.isPossibleNumberForTypeWithReason(a, b);\n  return c == i18n.phonenumbers.PhoneNumberUtil.ValidationResult.IS_POSSIBLE || c == i18n.phonenumbers.PhoneNumberUtil.ValidationResult.IS_POSSIBLE_LOCAL_ONLY;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.testNumberLength_ = function(a, b) {\n  return this.testNumberLengthForType_(a, b, i18n.phonenumbers.PhoneNumberType.UNKNOWN);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.testNumberLengthForType_ = function(a, b, c) {\n  var d = i18n.phonenumbers.PhoneNumberUtil.getNumberDescByType_(b, c), e = 0 == d.possibleLengthCount() ? b.getGeneralDesc().possibleLengthArray() : d.possibleLengthArray();\n  d = d.possibleLengthLocalOnlyArray();\n  if (c == i18n.phonenumbers.PhoneNumberType.FIXED_LINE_OR_MOBILE) {\n    if (i18n.phonenumbers.PhoneNumberUtil.descHasPossibleNumberData_(i18n.phonenumbers.PhoneNumberUtil.getNumberDescByType_(b, i18n.phonenumbers.PhoneNumberType.FIXED_LINE))) {\n      c = i18n.phonenumbers.PhoneNumberUtil.getNumberDescByType_(b, i18n.phonenumbers.PhoneNumberType.MOBILE), i18n.phonenumbers.PhoneNumberUtil.descHasPossibleNumberData_(c) && (e = e.concat(0 == c.possibleLengthCount() ? b.getGeneralDesc().possibleLengthArray() : c.possibleLengthArray()), goog.array.sort(e), 0 == d.length ? d = c.possibleLengthLocalOnlyArray() : (d = d.concat(c.possibleLengthLocalOnlyArray()), goog.array.sort(d)));\n    } else {\n      return this.testNumberLengthForType_(a, b, i18n.phonenumbers.PhoneNumberType.MOBILE);\n    }\n  }\n  if (-1 == e[0]) {\n    return i18n.phonenumbers.PhoneNumberUtil.ValidationResult.INVALID_LENGTH;\n  }\n  a = a.length;\n  if (-1 < goog.array.indexOf(d, a)) {\n    return i18n.phonenumbers.PhoneNumberUtil.ValidationResult.IS_POSSIBLE_LOCAL_ONLY;\n  }\n  b = e[0];\n  return b == a ? i18n.phonenumbers.PhoneNumberUtil.ValidationResult.IS_POSSIBLE : b > a ? i18n.phonenumbers.PhoneNumberUtil.ValidationResult.TOO_SHORT : e[e.length - 1] < a ? i18n.phonenumbers.PhoneNumberUtil.ValidationResult.TOO_LONG : -1 < goog.array.indexOf(e, a, 1) ? i18n.phonenumbers.PhoneNumberUtil.ValidationResult.IS_POSSIBLE : i18n.phonenumbers.PhoneNumberUtil.ValidationResult.INVALID_LENGTH;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isPossibleNumberWithReason = function(a) {\n  return this.isPossibleNumberForTypeWithReason(a, i18n.phonenumbers.PhoneNumberType.UNKNOWN);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isPossibleNumberForTypeWithReason = function(a, b) {\n  var c = this.getNationalSignificantNumber(a), d = a.getCountryCodeOrDefault();\n  if (!this.hasValidCountryCallingCode_(d)) {\n    return i18n.phonenumbers.PhoneNumberUtil.ValidationResult.INVALID_COUNTRY_CODE;\n  }\n  var e = this.getRegionCodeForCountryCode(d);\n  d = this.getMetadataForRegionOrCallingCode_(d, e);\n  return this.testNumberLengthForType_(c, d, b);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isPossibleNumberString = function(a, b) {\n  try {\n    return this.isPossibleNumber(this.parse(a, b));\n  } catch (c) {\n    return !1;\n  }\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.truncateTooLongNumber = function(a) {\n  if (this.isValidNumber(a)) {\n    return !0;\n  }\n  var b = a.clone(), c = a.getNationalNumberOrDefault();\n  do {\n    if (c = Math.floor(c / 10), b.setNationalNumber(c), 0 == c || this.isPossibleNumberWithReason(b) == i18n.phonenumbers.PhoneNumberUtil.ValidationResult.TOO_SHORT) {\n      return !1;\n    }\n  } while (!this.isValidNumber(b));\n  a.setNationalNumber(c);\n  return !0;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.extractCountryCode = function(a, b) {\n  var c = a.toString();\n  if (0 == c.length || \"0\" == c.charAt(0)) {\n    return 0;\n  }\n  for (var d, e = c.length, f = 1; f <= i18n.phonenumbers.PhoneNumberUtil.MAX_LENGTH_COUNTRY_CODE_ && f <= e; ++f) {\n    if (d = parseInt(c.substring(0, f), 10), d in i18n.phonenumbers.metadata.countryCodeToRegionCodeMap) {\n      return b.append(c.substring(f)), d;\n    }\n  }\n  return 0;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.maybeExtractCountryCode = function(a, b, c, d, e) {\n  if (0 == a.length) {\n    return 0;\n  }\n  a = new goog.string.StringBuffer(a);\n  var f;\n  null != b && (f = b.getInternationalPrefix());\n  null == f && (f = \"NonMatch\");\n  f = this.maybeStripInternationalPrefixAndNormalize(a, f);\n  d && e.setCountryCodeSource(f);\n  if (f != i18n.phonenumbers.PhoneNumber.CountryCodeSource.FROM_DEFAULT_COUNTRY) {\n    if (a.getLength() <= i18n.phonenumbers.PhoneNumberUtil.MIN_LENGTH_FOR_NSN_) {\n      throw Error(i18n.phonenumbers.Error.TOO_SHORT_AFTER_IDD);\n    }\n    b = this.extractCountryCode(a, c);\n    if (0 != b) {\n      return e.setCountryCode(b), b;\n    }\n    throw Error(i18n.phonenumbers.Error.INVALID_COUNTRY_CODE);\n  }\n  if (null != b) {\n    f = b.getCountryCodeOrDefault();\n    var g = \"\" + f, h = a.toString();\n    if (goog.string.startsWith(h, g) && (g = new goog.string.StringBuffer(h.substring(g.length)), h = b.getGeneralDesc(), h = new RegExp(h.getNationalNumberPatternOrDefault()), this.maybeStripNationalPrefixAndCarrierCode(g, b, null), g = g.toString(), !i18n.phonenumbers.PhoneNumberUtil.matchesEntirely(h, a.toString()) && i18n.phonenumbers.PhoneNumberUtil.matchesEntirely(h, g) || this.testNumberLength_(a.toString(), b) == i18n.phonenumbers.PhoneNumberUtil.ValidationResult.TOO_LONG)) {\n      return c.append(g), d && e.setCountryCodeSource(i18n.phonenumbers.PhoneNumber.CountryCodeSource.FROM_NUMBER_WITHOUT_PLUS_SIGN), e.setCountryCode(f), f;\n    }\n  }\n  e.setCountryCode(0);\n  return 0;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.parsePrefixAsIdd_ = function(a, b) {\n  var c = b.toString();\n  if (0 == c.search(a)) {\n    var d = c.match(a)[0].length, e = c.substring(d).match(i18n.phonenumbers.PhoneNumberUtil.CAPTURING_DIGIT_PATTERN);\n    if (e && null != e[1] && 0 < e[1].length && \"0\" == i18n.phonenumbers.PhoneNumberUtil.normalizeDigitsOnly(e[1])) {\n      return !1;\n    }\n    b.clear();\n    b.append(c.substring(d));\n    return !0;\n  }\n  return !1;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.maybeStripInternationalPrefixAndNormalize = function(a, b) {\n  var c = a.toString();\n  if (0 == c.length) {\n    return i18n.phonenumbers.PhoneNumber.CountryCodeSource.FROM_DEFAULT_COUNTRY;\n  }\n  if (i18n.phonenumbers.PhoneNumberUtil.LEADING_PLUS_CHARS_PATTERN.test(c)) {\n    return c = c.replace(i18n.phonenumbers.PhoneNumberUtil.LEADING_PLUS_CHARS_PATTERN, \"\"), a.clear(), a.append(i18n.phonenumbers.PhoneNumberUtil.normalize(c)), i18n.phonenumbers.PhoneNumber.CountryCodeSource.FROM_NUMBER_WITH_PLUS_SIGN;\n  }\n  c = new RegExp(b);\n  i18n.phonenumbers.PhoneNumberUtil.normalizeSB_(a);\n  return this.parsePrefixAsIdd_(c, a) ? i18n.phonenumbers.PhoneNumber.CountryCodeSource.FROM_NUMBER_WITH_IDD : i18n.phonenumbers.PhoneNumber.CountryCodeSource.FROM_DEFAULT_COUNTRY;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.maybeStripNationalPrefixAndCarrierCode = function(a, b, c) {\n  var d = a.toString(), e = d.length, f = b.getNationalPrefixForParsing();\n  if (0 == e || null == f || 0 == f.length) {\n    return !1;\n  }\n  var g = new RegExp(\"^(?:\" + f + \")\");\n  if (e = g.exec(d)) {\n    f = new RegExp(b.getGeneralDesc().getNationalNumberPatternOrDefault());\n    var h = i18n.phonenumbers.PhoneNumberUtil.matchesEntirely(f, d), k = e.length - 1;\n    b = b.getNationalPrefixTransformRule();\n    if (null == b || 0 == b.length || null == e[k] || 0 == e[k].length) {\n      if (h && !i18n.phonenumbers.PhoneNumberUtil.matchesEntirely(f, d.substring(e[0].length))) {\n        return !1;\n      }\n      null != c && 0 < k && null != e[k] && c.append(e[1]);\n      a.set(d.substring(e[0].length));\n    } else {\n      d = d.replace(g, b);\n      if (h && !i18n.phonenumbers.PhoneNumberUtil.matchesEntirely(f, d)) {\n        return !1;\n      }\n      null != c && 0 < k && c.append(e[1]);\n      a.set(d);\n    }\n    return !0;\n  }\n  return !1;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.maybeStripExtension = function(a) {\n  var b = a.toString(), c = b.search(i18n.phonenumbers.PhoneNumberUtil.EXTN_PATTERN_);\n  if (0 <= c && i18n.phonenumbers.PhoneNumberUtil.isViablePhoneNumber(b.substring(0, c))) {\n    for (var d = b.match(i18n.phonenumbers.PhoneNumberUtil.EXTN_PATTERN_), e = d.length, f = 1; f < e; ++f) {\n      if (null != d[f] && 0 < d[f].length) {\n        return a.clear(), a.append(b.substring(0, c)), d[f];\n      }\n    }\n  }\n  return \"\";\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.checkRegionForParsing_ = function(a, b) {\n  return this.isValidRegionCode_(b) || null != a && 0 < a.length && i18n.phonenumbers.PhoneNumberUtil.LEADING_PLUS_CHARS_PATTERN.test(a);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.parse = function(a, b) {\n  return this.parseHelper_(a, b, !1, !0);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.parseAndKeepRawInput = function(a, b) {\n  if (!this.isValidRegionCode_(b) && 0 < a.length && a.charAt(0) != i18n.phonenumbers.PhoneNumberUtil.PLUS_SIGN) {\n    throw Error(i18n.phonenumbers.Error.INVALID_COUNTRY_CODE);\n  }\n  return this.parseHelper_(a, b, !0, !0);\n};\ni18n.phonenumbers.PhoneNumberUtil.setItalianLeadingZerosForPhoneNumber_ = function(a, b) {\n  if (1 < a.length && \"0\" == a.charAt(0)) {\n    b.setItalianLeadingZero(!0);\n    for (var c = 1; c < a.length - 1 && \"0\" == a.charAt(c);) {\n      c++;\n    }\n    1 != c && b.setNumberOfLeadingZeros(c);\n  }\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.parseHelper_ = function(a, b, c, d) {\n  if (null == a) {\n    throw Error(i18n.phonenumbers.Error.NOT_A_NUMBER);\n  }\n  if (a.length > i18n.phonenumbers.PhoneNumberUtil.MAX_INPUT_STRING_LENGTH_) {\n    throw Error(i18n.phonenumbers.Error.TOO_LONG);\n  }\n  var e = new goog.string.StringBuffer;\n  this.buildNationalNumberForParsing_(a, e);\n  if (!i18n.phonenumbers.PhoneNumberUtil.isViablePhoneNumber(e.toString())) {\n    throw Error(i18n.phonenumbers.Error.NOT_A_NUMBER);\n  }\n  if (d && !this.checkRegionForParsing_(e.toString(), b)) {\n    throw Error(i18n.phonenumbers.Error.INVALID_COUNTRY_CODE);\n  }\n  d = new i18n.phonenumbers.PhoneNumber;\n  c && d.setRawInput(a);\n  a = this.maybeStripExtension(e);\n  0 < a.length && d.setExtension(a);\n  var f = this.getMetadataForRegion(b);\n  a = new goog.string.StringBuffer;\n  var g = 0, h = e.toString();\n  try {\n    g = this.maybeExtractCountryCode(h, f, a, c, d);\n  } catch (k) {\n    if (k.message == i18n.phonenumbers.Error.INVALID_COUNTRY_CODE && i18n.phonenumbers.PhoneNumberUtil.LEADING_PLUS_CHARS_PATTERN.test(h)) {\n      if (h = h.replace(i18n.phonenumbers.PhoneNumberUtil.LEADING_PLUS_CHARS_PATTERN, \"\"), g = this.maybeExtractCountryCode(h, f, a, c, d), 0 == g) {\n        throw k;\n      }\n    } else {\n      throw k;\n    }\n  }\n  0 != g ? (e = this.getRegionCodeForCountryCode(g), e != b && (f = this.getMetadataForRegionOrCallingCode_(g, e))) : (i18n.phonenumbers.PhoneNumberUtil.normalizeSB_(e), a.append(e.toString()), null != b ? (g = f.getCountryCodeOrDefault(), d.setCountryCode(g)) : c && d.clearCountryCodeSource());\n  if (a.getLength() < i18n.phonenumbers.PhoneNumberUtil.MIN_LENGTH_FOR_NSN_) {\n    throw Error(i18n.phonenumbers.Error.TOO_SHORT_NSN);\n  }\n  null != f && (b = new goog.string.StringBuffer, e = new goog.string.StringBuffer(a.toString()), this.maybeStripNationalPrefixAndCarrierCode(e, f, b), f = this.testNumberLength_(e.toString(), f), g = i18n.phonenumbers.PhoneNumberUtil.ValidationResult, f != g.TOO_SHORT && f != g.IS_POSSIBLE_LOCAL_ONLY && f != g.INVALID_LENGTH && (a = e, c && 0 < b.toString().length && d.setPreferredDomesticCarrierCode(b.toString())));\n  c = a.toString();\n  a = c.length;\n  if (a < i18n.phonenumbers.PhoneNumberUtil.MIN_LENGTH_FOR_NSN_) {\n    throw Error(i18n.phonenumbers.Error.TOO_SHORT_NSN);\n  }\n  if (a > i18n.phonenumbers.PhoneNumberUtil.MAX_LENGTH_FOR_NSN_) {\n    throw Error(i18n.phonenumbers.Error.TOO_LONG);\n  }\n  i18n.phonenumbers.PhoneNumberUtil.setItalianLeadingZerosForPhoneNumber_(c, d);\n  d.setNationalNumber(parseInt(c, 10));\n  return d;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.buildNationalNumberForParsing_ = function(a, b) {\n  var c = a.indexOf(i18n.phonenumbers.PhoneNumberUtil.RFC3966_PHONE_CONTEXT_);\n  if (0 <= c) {\n    var d = c + i18n.phonenumbers.PhoneNumberUtil.RFC3966_PHONE_CONTEXT_.length;\n    if (a.charAt(d) == i18n.phonenumbers.PhoneNumberUtil.PLUS_SIGN) {\n      var e = a.indexOf(\";\", d);\n      0 < e ? b.append(a.substring(d, e)) : b.append(a.substring(d));\n    }\n    d = a.indexOf(i18n.phonenumbers.PhoneNumberUtil.RFC3966_PREFIX_);\n    b.append(a.substring(0 <= d ? d + i18n.phonenumbers.PhoneNumberUtil.RFC3966_PREFIX_.length : 0, c));\n  } else {\n    b.append(i18n.phonenumbers.PhoneNumberUtil.extractPossibleNumber(a));\n  }\n  c = b.toString();\n  d = c.indexOf(i18n.phonenumbers.PhoneNumberUtil.RFC3966_ISDN_SUBADDRESS_);\n  0 < d && (b.clear(), b.append(c.substring(0, d)));\n};\ni18n.phonenumbers.PhoneNumberUtil.copyCoreFieldsOnly_ = function(a) {\n  var b = new i18n.phonenumbers.PhoneNumber;\n  b.setCountryCode(a.getCountryCodeOrDefault());\n  b.setNationalNumber(a.getNationalNumberOrDefault());\n  0 < a.getExtensionOrDefault().length && b.setExtension(a.getExtensionOrDefault());\n  a.getItalianLeadingZero() && (b.setItalianLeadingZero(!0), b.setNumberOfLeadingZeros(a.getNumberOfLeadingZerosOrDefault()));\n  return b;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isNumberMatch = function(a, b) {\n  if (\"string\" == typeof a) {\n    try {\n      var c = this.parse(a, i18n.phonenumbers.PhoneNumberUtil.UNKNOWN_REGION_);\n    } catch (g) {\n      if (g.message != i18n.phonenumbers.Error.INVALID_COUNTRY_CODE) {\n        return i18n.phonenumbers.PhoneNumberUtil.MatchType.NOT_A_NUMBER;\n      }\n      if (\"string\" != typeof b) {\n        var d = this.getRegionCodeForCountryCode(b.getCountryCodeOrDefault());\n        if (d != i18n.phonenumbers.PhoneNumberUtil.UNKNOWN_REGION_) {\n          try {\n            c = this.parse(a, d);\n          } catch (h) {\n            return i18n.phonenumbers.PhoneNumberUtil.MatchType.NOT_A_NUMBER;\n          }\n          c = this.isNumberMatch(c, b);\n          return c == i18n.phonenumbers.PhoneNumberUtil.MatchType.EXACT_MATCH ? i18n.phonenumbers.PhoneNumberUtil.MatchType.NSN_MATCH : c;\n        }\n      }\n      try {\n        c = this.parseHelper_(a, null, !1, !1);\n      } catch (h) {\n        return i18n.phonenumbers.PhoneNumberUtil.MatchType.NOT_A_NUMBER;\n      }\n    }\n  } else {\n    c = a.clone();\n  }\n  if (\"string\" == typeof b) {\n    try {\n      var e = this.parse(b, i18n.phonenumbers.PhoneNumberUtil.UNKNOWN_REGION_);\n      return this.isNumberMatch(a, e);\n    } catch (g) {\n      return g.message != i18n.phonenumbers.Error.INVALID_COUNTRY_CODE ? i18n.phonenumbers.PhoneNumberUtil.MatchType.NOT_A_NUMBER : this.isNumberMatch(b, c);\n    }\n  } else {\n    e = b.clone();\n  }\n  c = i18n.phonenumbers.PhoneNumberUtil.copyCoreFieldsOnly_(c);\n  e = i18n.phonenumbers.PhoneNumberUtil.copyCoreFieldsOnly_(e);\n  if (c.hasExtension() && e.hasExtension() && c.getExtension() != e.getExtension()) {\n    return i18n.phonenumbers.PhoneNumberUtil.MatchType.NO_MATCH;\n  }\n  d = c.getCountryCodeOrDefault();\n  var f = e.getCountryCodeOrDefault();\n  if (0 != d && 0 != f) {\n    return c.equals(e) ? i18n.phonenumbers.PhoneNumberUtil.MatchType.EXACT_MATCH : d == f && this.isNationalNumberSuffixOfTheOther_(c, e) ? i18n.phonenumbers.PhoneNumberUtil.MatchType.SHORT_NSN_MATCH : i18n.phonenumbers.PhoneNumberUtil.MatchType.NO_MATCH;\n  }\n  c.setCountryCode(0);\n  e.setCountryCode(0);\n  return c.equals(e) ? i18n.phonenumbers.PhoneNumberUtil.MatchType.NSN_MATCH : this.isNationalNumberSuffixOfTheOther_(c, e) ? i18n.phonenumbers.PhoneNumberUtil.MatchType.SHORT_NSN_MATCH : i18n.phonenumbers.PhoneNumberUtil.MatchType.NO_MATCH;\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.isNationalNumberSuffixOfTheOther_ = function(a, b) {\n  var c = \"\" + a.getNationalNumber(), d = \"\" + b.getNationalNumber();\n  return goog.string.endsWith(c, d) || goog.string.endsWith(d, c);\n};\ni18n.phonenumbers.PhoneNumberUtil.prototype.canBeInternationallyDialled = function(a) {\n  var b = this.getMetadataForRegion(this.getRegionCodeForNumber(a));\n  if (null == b) {\n    return !0;\n  }\n  a = this.getNationalSignificantNumber(a);\n  return !this.isNumberMatchingDesc_(a, b.getNoInternationalDialling());\n};\ni18n.phonenumbers.PhoneNumberUtil.matchesEntirely = function(a, b) {\n  var c = \"string\" == typeof a ? b.match(\"^(?:\" + a + \")$\") : b.match(a);\n  return c && c[0].length == b.length ? !0 : !1;\n};\ni18n.phonenumbers.PhoneNumberUtil.matchesPrefix = function(a, b) {\n  var c = \"string\" == typeof a ? b.match(\"^(?:\" + a + \")\") : b.match(a);\n  return c && goog.string.startsWith(b, c[0]) ? !0 : !1;\n};\ni18n.phonenumbers.AsYouTypeFormatter = function(a) {\n  this.DIGIT_PLACEHOLDER_ = \"\\u2008\";\n  this.DIGIT_PATTERN_ = new RegExp(this.DIGIT_PLACEHOLDER_);\n  this.currentOutput_ = \"\";\n  this.formattingTemplate_ = new goog.string.StringBuffer;\n  this.currentFormattingPattern_ = \"\";\n  this.accruedInput_ = new goog.string.StringBuffer;\n  this.accruedInputWithoutFormatting_ = new goog.string.StringBuffer;\n  this.ableToFormat_ = !0;\n  this.isExpectingCountryCallingCode_ = this.isCompleteNumber_ = this.inputHasFormatting_ = !1;\n  this.phoneUtil_ = i18n.phonenumbers.PhoneNumberUtil.getInstance();\n  this.positionToRemember_ = this.originalPosition_ = this.lastMatchPosition_ = 0;\n  this.prefixBeforeNationalNumber_ = new goog.string.StringBuffer;\n  this.shouldAddSpaceAfterNationalPrefix_ = !1;\n  this.extractedNationalPrefix_ = \"\";\n  this.nationalNumber_ = new goog.string.StringBuffer;\n  this.possibleFormats_ = [];\n  this.defaultCountry_ = a;\n  this.defaultMetadata_ = this.currentMetadata_ = this.getMetadataForRegion_(this.defaultCountry_);\n};\ni18n.phonenumbers.AsYouTypeFormatter.SEPARATOR_BEFORE_NATIONAL_NUMBER_ = \" \";\ni18n.phonenumbers.AsYouTypeFormatter.EMPTY_METADATA_ = new i18n.phonenumbers.PhoneMetadata;\ni18n.phonenumbers.AsYouTypeFormatter.EMPTY_METADATA_.setInternationalPrefix(\"NA\");\ni18n.phonenumbers.AsYouTypeFormatter.ELIGIBLE_FORMAT_PATTERN_ = new RegExp(\"^[\" + i18n.phonenumbers.PhoneNumberUtil.VALID_PUNCTUATION + \"]*(\\\\$\\\\d[\" + i18n.phonenumbers.PhoneNumberUtil.VALID_PUNCTUATION + \"]*)+$\");\ni18n.phonenumbers.AsYouTypeFormatter.NATIONAL_PREFIX_SEPARATORS_PATTERN_ = /[- ]/;\ni18n.phonenumbers.AsYouTypeFormatter.MIN_LEADING_DIGITS_LENGTH_ = 3;\ni18n.phonenumbers.AsYouTypeFormatter.prototype.getMetadataForRegion_ = function(a) {\n  a = this.phoneUtil_.getCountryCodeForRegion(a);\n  a = this.phoneUtil_.getRegionCodeForCountryCode(a);\n  a = this.phoneUtil_.getMetadataForRegion(a);\n  return null != a ? a : i18n.phonenumbers.AsYouTypeFormatter.EMPTY_METADATA_;\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.maybeCreateNewTemplate_ = function() {\n  for (var a = this.possibleFormats_.length, b = 0; b < a; ++b) {\n    var c = this.possibleFormats_[b], d = c.getPatternOrDefault();\n    if (this.currentFormattingPattern_ == d) {\n      return !1;\n    }\n    if (this.createFormattingTemplate_(c)) {\n      return this.currentFormattingPattern_ = d, this.shouldAddSpaceAfterNationalPrefix_ = i18n.phonenumbers.AsYouTypeFormatter.NATIONAL_PREFIX_SEPARATORS_PATTERN_.test(c.getNationalPrefixFormattingRule()), this.lastMatchPosition_ = 0, !0;\n    }\n  }\n  return this.ableToFormat_ = !1;\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.getAvailableFormats_ = function(a) {\n  for (var b = this.isCompleteNumber_ && 0 == this.extractedNationalPrefix_.length && 0 < this.currentMetadata_.intlNumberFormatCount() ? this.currentMetadata_.intlNumberFormatArray() : this.currentMetadata_.numberFormatArray(), c = b.length, d = 0; d < c; ++d) {\n    var e = b[d];\n    0 < this.extractedNationalPrefix_.length && this.phoneUtil_.formattingRuleHasFirstGroupOnly(e.getNationalPrefixFormattingRuleOrDefault()) && !e.getNationalPrefixOptionalWhenFormatting() && !e.hasDomesticCarrierCodeFormattingRule() || (0 != this.extractedNationalPrefix_.length || this.isCompleteNumber_ || this.phoneUtil_.formattingRuleHasFirstGroupOnly(e.getNationalPrefixFormattingRuleOrDefault()) || e.getNationalPrefixOptionalWhenFormatting()) && i18n.phonenumbers.AsYouTypeFormatter.ELIGIBLE_FORMAT_PATTERN_.test(e.getFormatOrDefault()) &&\n    this.possibleFormats_.push(e);\n  }\n  this.narrowDownPossibleFormats_(a);\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.narrowDownPossibleFormats_ = function(a) {\n  for (var b = [], c = a.length - i18n.phonenumbers.AsYouTypeFormatter.MIN_LEADING_DIGITS_LENGTH_, d = this.possibleFormats_.length, e = 0; e < d; ++e) {\n    var f = this.possibleFormats_[e];\n    if (0 == f.leadingDigitsPatternCount()) {\n      b.push(this.possibleFormats_[e]);\n    } else {\n      var g = Math.min(c, f.leadingDigitsPatternCount() - 1);\n      f = f.getLeadingDigitsPattern(g);\n      0 == a.search(f) && b.push(this.possibleFormats_[e]);\n    }\n  }\n  this.possibleFormats_ = b;\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.createFormattingTemplate_ = function(a) {\n  var b = a.getPatternOrDefault();\n  this.formattingTemplate_.clear();\n  a = this.getFormattingTemplate_(b, a.getFormatOrDefault());\n  return 0 < a.length ? (this.formattingTemplate_.append(a), !0) : !1;\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.getFormattingTemplate_ = function(a, b) {\n  var c = \"999999999999999\".match(a)[0];\n  if (c.length < this.nationalNumber_.getLength()) {\n    return \"\";\n  }\n  c = c.replace(new RegExp(a, \"g\"), b);\n  return c = c.replace(RegExp(\"9\", \"g\"), this.DIGIT_PLACEHOLDER_);\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.clear = function() {\n  this.currentOutput_ = \"\";\n  this.accruedInput_.clear();\n  this.accruedInputWithoutFormatting_.clear();\n  this.formattingTemplate_.clear();\n  this.lastMatchPosition_ = 0;\n  this.currentFormattingPattern_ = \"\";\n  this.prefixBeforeNationalNumber_.clear();\n  this.extractedNationalPrefix_ = \"\";\n  this.nationalNumber_.clear();\n  this.ableToFormat_ = !0;\n  this.inputHasFormatting_ = !1;\n  this.originalPosition_ = this.positionToRemember_ = 0;\n  this.isExpectingCountryCallingCode_ = this.isCompleteNumber_ = !1;\n  this.possibleFormats_ = [];\n  this.shouldAddSpaceAfterNationalPrefix_ = !1;\n  this.currentMetadata_ != this.defaultMetadata_ && (this.currentMetadata_ = this.getMetadataForRegion_(this.defaultCountry_));\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.inputDigit = function(a) {\n  return this.currentOutput_ = this.inputDigitWithOptionToRememberPosition_(a, !1);\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.inputDigitAndRememberPosition = function(a) {\n  return this.currentOutput_ = this.inputDigitWithOptionToRememberPosition_(a, !0);\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.inputDigitWithOptionToRememberPosition_ = function(a, b) {\n  this.accruedInput_.append(a);\n  b && (this.originalPosition_ = this.accruedInput_.getLength());\n  this.isDigitOrLeadingPlusSign_(a) ? a = this.normalizeAndAccrueDigitsAndPlusSign_(a, b) : (this.ableToFormat_ = !1, this.inputHasFormatting_ = !0);\n  if (!this.ableToFormat_) {\n    if (!this.inputHasFormatting_) {\n      if (this.attemptToExtractIdd_()) {\n        if (this.attemptToExtractCountryCallingCode_()) {\n          return this.attemptToChoosePatternWithPrefixExtracted_();\n        }\n      } else {\n        if (this.ableToExtractLongerNdd_()) {\n          return this.prefixBeforeNationalNumber_.append(i18n.phonenumbers.AsYouTypeFormatter.SEPARATOR_BEFORE_NATIONAL_NUMBER_), this.attemptToChoosePatternWithPrefixExtracted_();\n        }\n      }\n    }\n    return this.accruedInput_.toString();\n  }\n  switch(this.accruedInputWithoutFormatting_.getLength()) {\n    case 0:\n    case 1:\n    case 2:\n      return this.accruedInput_.toString();\n    case 3:\n      if (this.attemptToExtractIdd_()) {\n        this.isExpectingCountryCallingCode_ = !0;\n      } else {\n        return this.extractedNationalPrefix_ = this.removeNationalPrefixFromNationalNumber_(), this.attemptToChooseFormattingPattern_();\n      }\n    default:\n      if (this.isExpectingCountryCallingCode_) {\n        return this.attemptToExtractCountryCallingCode_() && (this.isExpectingCountryCallingCode_ = !1), this.prefixBeforeNationalNumber_.toString() + this.nationalNumber_.toString();\n      }\n      if (0 < this.possibleFormats_.length) {\n        var c = this.inputDigitHelper_(a), d = this.attemptToFormatAccruedDigits_();\n        if (0 < d.length) {\n          return d;\n        }\n        this.narrowDownPossibleFormats_(this.nationalNumber_.toString());\n        return this.maybeCreateNewTemplate_() ? this.inputAccruedNationalNumber_() : this.ableToFormat_ ? this.appendNationalNumber_(c) : this.accruedInput_.toString();\n      }\n      return this.attemptToChooseFormattingPattern_();\n  }\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.attemptToChoosePatternWithPrefixExtracted_ = function() {\n  this.ableToFormat_ = !0;\n  this.isExpectingCountryCallingCode_ = !1;\n  this.possibleFormats_ = [];\n  this.lastMatchPosition_ = 0;\n  this.formattingTemplate_.clear();\n  this.currentFormattingPattern_ = \"\";\n  return this.attemptToChooseFormattingPattern_();\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.getExtractedNationalPrefix_ = function() {\n  return this.extractedNationalPrefix_;\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.ableToExtractLongerNdd_ = function() {\n  if (0 < this.extractedNationalPrefix_.length) {\n    var a = this.nationalNumber_.toString();\n    this.nationalNumber_.clear();\n    this.nationalNumber_.append(this.extractedNationalPrefix_);\n    this.nationalNumber_.append(a);\n    a = this.prefixBeforeNationalNumber_.toString();\n    var b = a.lastIndexOf(this.extractedNationalPrefix_);\n    this.prefixBeforeNationalNumber_.clear();\n    this.prefixBeforeNationalNumber_.append(a.substring(0, b));\n  }\n  return this.extractedNationalPrefix_ != this.removeNationalPrefixFromNationalNumber_();\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.isDigitOrLeadingPlusSign_ = function(a) {\n  return i18n.phonenumbers.PhoneNumberUtil.CAPTURING_DIGIT_PATTERN.test(a) || 1 == this.accruedInput_.getLength() && i18n.phonenumbers.PhoneNumberUtil.PLUS_CHARS_PATTERN.test(a);\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.attemptToFormatAccruedDigits_ = function() {\n  for (var a = this.nationalNumber_.toString(), b = this.possibleFormats_.length, c = 0; c < b; ++c) {\n    var d = this.possibleFormats_[c], e = d.getPatternOrDefault();\n    if ((new RegExp(\"^(?:\" + e + \")$\")).test(a) && (this.shouldAddSpaceAfterNationalPrefix_ = i18n.phonenumbers.AsYouTypeFormatter.NATIONAL_PREFIX_SEPARATORS_PATTERN_.test(d.getNationalPrefixFormattingRule()), d = a.replace(new RegExp(e, \"g\"), d.getFormat()), d = this.appendNationalNumber_(d), i18n.phonenumbers.PhoneNumberUtil.normalizeDiallableCharsOnly(d) == this.accruedInputWithoutFormatting_)) {\n      return d;\n    }\n  }\n  return \"\";\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.appendNationalNumber_ = function(a) {\n  var b = this.prefixBeforeNationalNumber_.getLength();\n  return this.shouldAddSpaceAfterNationalPrefix_ && 0 < b && this.prefixBeforeNationalNumber_.toString().charAt(b - 1) != i18n.phonenumbers.AsYouTypeFormatter.SEPARATOR_BEFORE_NATIONAL_NUMBER_ ? this.prefixBeforeNationalNumber_ + i18n.phonenumbers.AsYouTypeFormatter.SEPARATOR_BEFORE_NATIONAL_NUMBER_ + a : this.prefixBeforeNationalNumber_ + a;\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.getRememberedPosition = function() {\n  if (!this.ableToFormat_) {\n    return this.originalPosition_;\n  }\n  for (var a = 0, b = 0, c = this.accruedInputWithoutFormatting_.toString(), d = this.currentOutput_.toString(); a < this.positionToRemember_ && b < d.length;) {\n    c.charAt(a) == d.charAt(b) && a++, b++;\n  }\n  return b;\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.attemptToChooseFormattingPattern_ = function() {\n  var a = this.nationalNumber_.toString();\n  return a.length >= i18n.phonenumbers.AsYouTypeFormatter.MIN_LEADING_DIGITS_LENGTH_ ? (this.getAvailableFormats_(a), a = this.attemptToFormatAccruedDigits_(), 0 < a.length ? a : this.maybeCreateNewTemplate_() ? this.inputAccruedNationalNumber_() : this.accruedInput_.toString()) : this.appendNationalNumber_(a);\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.inputAccruedNationalNumber_ = function() {\n  var a = this.nationalNumber_.toString(), b = a.length;\n  if (0 < b) {\n    for (var c = \"\", d = 0; d < b; d++) {\n      c = this.inputDigitHelper_(a.charAt(d));\n    }\n    return this.ableToFormat_ ? this.appendNationalNumber_(c) : this.accruedInput_.toString();\n  }\n  return this.prefixBeforeNationalNumber_.toString();\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.isNanpaNumberWithNationalPrefix_ = function() {\n  if (1 != this.currentMetadata_.getCountryCode()) {\n    return !1;\n  }\n  var a = this.nationalNumber_.toString();\n  return \"1\" == a.charAt(0) && \"0\" != a.charAt(1) && \"1\" != a.charAt(1);\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.removeNationalPrefixFromNationalNumber_ = function() {\n  var a = this.nationalNumber_.toString(), b = 0;\n  if (this.isNanpaNumberWithNationalPrefix_()) {\n    b = 1, this.prefixBeforeNationalNumber_.append(\"1\").append(i18n.phonenumbers.AsYouTypeFormatter.SEPARATOR_BEFORE_NATIONAL_NUMBER_), this.isCompleteNumber_ = !0;\n  } else {\n    if (this.currentMetadata_.hasNationalPrefixForParsing()) {\n      var c = new RegExp(\"^(?:\" + this.currentMetadata_.getNationalPrefixForParsing() + \")\");\n      c = a.match(c);\n      null != c && null != c[0] && 0 < c[0].length && (this.isCompleteNumber_ = !0, b = c[0].length, this.prefixBeforeNationalNumber_.append(a.substring(0, b)));\n    }\n  }\n  this.nationalNumber_.clear();\n  this.nationalNumber_.append(a.substring(b));\n  return a.substring(0, b);\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.attemptToExtractIdd_ = function() {\n  var a = this.accruedInputWithoutFormatting_.toString(), b = new RegExp(\"^(?:\\\\\" + i18n.phonenumbers.PhoneNumberUtil.PLUS_SIGN + \"|\" + this.currentMetadata_.getInternationalPrefix() + \")\");\n  b = a.match(b);\n  return null != b && null != b[0] && 0 < b[0].length ? (this.isCompleteNumber_ = !0, b = b[0].length, this.nationalNumber_.clear(), this.nationalNumber_.append(a.substring(b)), this.prefixBeforeNationalNumber_.clear(), this.prefixBeforeNationalNumber_.append(a.substring(0, b)), a.charAt(0) != i18n.phonenumbers.PhoneNumberUtil.PLUS_SIGN && this.prefixBeforeNationalNumber_.append(i18n.phonenumbers.AsYouTypeFormatter.SEPARATOR_BEFORE_NATIONAL_NUMBER_), !0) : !1;\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.attemptToExtractCountryCallingCode_ = function() {\n  if (0 == this.nationalNumber_.getLength()) {\n    return !1;\n  }\n  var a = new goog.string.StringBuffer, b = this.phoneUtil_.extractCountryCode(this.nationalNumber_, a);\n  if (0 == b) {\n    return !1;\n  }\n  this.nationalNumber_.clear();\n  this.nationalNumber_.append(a.toString());\n  a = this.phoneUtil_.getRegionCodeForCountryCode(b);\n  i18n.phonenumbers.PhoneNumberUtil.REGION_CODE_FOR_NON_GEO_ENTITY == a ? this.currentMetadata_ = this.phoneUtil_.getMetadataForNonGeographicalRegion(b) : a != this.defaultCountry_ && (this.currentMetadata_ = this.getMetadataForRegion_(a));\n  this.prefixBeforeNationalNumber_.append(\"\" + b).append(i18n.phonenumbers.AsYouTypeFormatter.SEPARATOR_BEFORE_NATIONAL_NUMBER_);\n  this.extractedNationalPrefix_ = \"\";\n  return !0;\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.normalizeAndAccrueDigitsAndPlusSign_ = function(a, b) {\n  if (a == i18n.phonenumbers.PhoneNumberUtil.PLUS_SIGN) {\n    var c = a;\n    this.accruedInputWithoutFormatting_.append(a);\n  } else {\n    c = i18n.phonenumbers.PhoneNumberUtil.DIGIT_MAPPINGS[a], this.accruedInputWithoutFormatting_.append(c), this.nationalNumber_.append(c);\n  }\n  b && (this.positionToRemember_ = this.accruedInputWithoutFormatting_.getLength());\n  return c;\n};\ni18n.phonenumbers.AsYouTypeFormatter.prototype.inputDigitHelper_ = function(a) {\n  var b = this.formattingTemplate_.toString();\n  if (0 <= b.substring(this.lastMatchPosition_).search(this.DIGIT_PATTERN_)) {\n    var c = b.search(this.DIGIT_PATTERN_);\n    a = b.replace(this.DIGIT_PATTERN_, a);\n    this.formattingTemplate_.clear();\n    this.formattingTemplate_.append(a);\n    this.lastMatchPosition_ = c;\n    return a.substring(0, this.lastMatchPosition_ + 1);\n  }\n  1 == this.possibleFormats_.length && (this.ableToFormat_ = !1);\n  this.currentFormattingPattern_ = \"\";\n  return this.accruedInput_.toString();\n};\n/*\n\n Copyright (C) 2011 The Libphonenumber Authors.\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n*/\ni18n.phonenumbers.RegionCode = {UN001:\"001\", AD:\"AD\", AE:\"AE\", AO:\"AO\", AQ:\"AQ\", AR:\"AR\", AM:\"AM\", AU:\"AU\", BB:\"BB\", BR:\"BR\", BS:\"BS\", BY:\"BY\", CA:\"CA\", CH:\"CH\", CL:\"CL\", CN:\"CN\", CS:\"CS\", CX:\"CX\", DE:\"DE\", FR:\"FR\", GB:\"GB\", HU:\"HU\", IT:\"IT\", JP:\"JP\", KR:\"KR\", MX:\"MX\", NZ:\"NZ\", PL:\"PL\", RE:\"RE\", RU:\"RU\", SE:\"SE\", SG:\"SG\", US:\"US\", UZ:\"UZ\", YT:\"YT\", ZW:\"ZW\", ZZ:\"ZZ\"};\n/*\n\nCompiled Wednesday July 30, 2014 at 2:15pm America/New_York\n\nVersion: libphonenumber r680\n\n------------------------------------------------------------------------\n\n\n Copyright (C) Alan Beebe (alan.beebe@gmail.com).\n\n Licensed under the Apache License, Version 2.0 (the \"License\");\n you may not use this file except in compliance with the License.\n You may obtain a copy of the License at\n\n http://www.apache.org/licenses/LICENSE-2.0\n\n Unless required by applicable law or agreed to in writing, software\n distributed under the License is distributed on an \"AS IS\" BASIS,\n WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n See the License for the specific language governing permissions and\n limitations under the License.\n\n\n\nUsage...\n\nThis is the same type of code used by cell phones when you enter\na phone number into your dialer app.  Your phone already knows\nwhat country you are a subscriber in, so it assumes you are entering\na local number, unless of course you prefix the number with a +, or\nin the USA you could also prefix the number with 011 to indicate you\nwish to dial internationally.  This code functions the same way.\n\nLets assume your in the United States and you enter the following\nphone number: 8646978257\n\nformatE164(\"US\", \"8646978257\");\n Returns: +18646978257\n\ncountryForE164Number(\"US\", \"+18646978257\");\n Returns: US\n\nformatInternational(\"US\", \"8646978257\");\n Returns: (864) 697-8257\n Info: This is the format you use if you are displaying this number to users outside the US\n\nformatLocal(\"US\", \"8646978257\");\n Returns: (864) 697-8257\n Info: This is the format you use if you are displaying this number to users inside the US\n       (In certain countries, this format will be different then the international format)\n\ncountryCodeToName(\"US\");\n Returns: United States\n\n\n\n*/\n\n\n// -------------------------------------------------------------------------\nfunction countryForE164Number(phone) {\n    /*\n\n    Return the country code for an e164 formatted number\n\n    phone (String) phone number in e164 format to return the country code for\n\n    */\n    try {\n        var phone = cleanPhone(phone);\n        var phoneUtil = i18n.phonenumbers.PhoneNumberUtil.getInstance();\n        var number = phoneUtil.parseAndKeepRawInput(phone);\n        var output = new goog.string.StringBuffer();\n        output = phoneUtil.getRegionCodeForNumber(number);\n        return output.toString();\n    } catch (e) {\n        return \"\";\n    }\n}\n\n// -------------------------------------------------------------------------\nfunction formatNumberForMobileDialing(country, phone) {\n    /*\n\n    Returns a number formatted in such a way that it can be dialed from a mobile\n    phone in a specific region. If the number cannot be reached from the region\n    (e.g. some countries block toll-free numbers from being called outside of the\n    country), the method returns an empty string.\n\n    */\n\n    try {\n        var phone = cleanPhone(phone);\n        var phoneUtil = i18n.phonenumbers.PhoneNumberUtil.getInstance();\n        var number = phoneUtil.parseAndKeepRawInput(phone, country);\n        var output = new goog.string.StringBuffer();\n        output = phoneUtil.formatNumberForMobileDialing(number, country, true);\n        return output.toString();\n    } catch (e) {\n        return \"\";\n    }\n}\n\n// -------------------------------------------------------------------------\nfunction isValidNumber(phone, country, type) {\n    /*\n\n    Tests whether a phone number matches a valid pattern. Note this doesn't\n    verify the number is actually in use, which is impossible to tell by just\n    looking at a number itself.\n\n    */\n\n    try {\n        var phone = cleanPhone(phone);\n        var phoneUtil = i18n.phonenumbers.PhoneNumberUtil.getInstance();\n        var number = phoneUtil.parseAndKeepRawInput(phone, country);\n        if (typeof type === 'string') {\n            var type = type.toUpperCase();\n            if (phoneUtil.isValidNumber(number) &&\n                phoneUtil.getNumberType(number) === i18n.phonenumbers.PhoneNumberType[type]) {\n                return true;\n            }\n            else {\n                return false;\n            }\n        }\n        else {\n            return phoneUtil.isValidNumber(number);\n        }\n    } catch (e) {\n        return false;\n    }\n}\n\n// -------------------------------------------------------------------------\nfunction formatE164(country, phone) {\n    /*\n\n    Return the phone number in e164 format\n\n    country (String) 2 digit country code\n    phone (String) phone number to format\n\n    */\n\n    try {\n        var phone = cleanPhone(phone);\n        var phoneUtil = i18n.phonenumbers.PhoneNumberUtil.getInstance();\n        var number = phoneUtil.parseAndKeepRawInput(phone, country);\n        var PNF = i18n.phonenumbers.PhoneNumberFormat;\n        var output = new goog.string.StringBuffer();\n        output = phoneUtil.format(number, PNF.E164);\n        return output.toString();\n    } catch (e) {\n        return phone\n    }\n}\n\n\n// -------------------------------------------------------------------------\nfunction formatInternational(country, phone) {\n    /*\n\n    Return the phone number in international format\n\n    country (String) 2 digit country code\n    phone (String) phone number to format\n\n    */\n\n    try {\n        var phone = cleanPhone(phone);\n        var formatter = new i18n.phonenumbers.AsYouTypeFormatter(country);\n        var output = new goog.string.StringBuffer();\n        for (var i = 0; i < phone.length; ++i) {\n            var inputChar = phone.charAt(i);\n            output = (formatter.inputDigit(inputChar));\n        }\n        return output.toString();\n    } catch (e) {\n        return phone;\n    }\n}\n\n// -------------------------------------------------------------------------\nfunction formatLocal(country, phone) {\n    /*\n\n    Return the phone number in the format local to the user\n\n    country (String) 2 digit country code\n    phone (String) phone number to format\n\n    */\n\n    try {\n        var phone = cleanPhone(phone);\n        var phoneUtil = i18n.phonenumbers.PhoneNumberUtil.getInstance();\n        var number = phoneUtil.parseAndKeepRawInput(phone, country);\n        if (phoneUtil.isValidNumberForRegion(number, country)) {\n            var PNF = i18n.phonenumbers.PhoneNumberFormat;\n            var output = new goog.string.StringBuffer();\n            output = phoneUtil.format(number, PNF.NATIONAL);\n            return output.toString();\n        } else {\n            return formatInternational(country, phone);\n        }\n    } catch (e) {\n        return formatInternational(country, phone);\n    }\n}\n\n// -------------------------------------------------------------------------\nfunction exampleLandlineNumber(country) {\n    /*\n\n    Returns an example land line phone number for the specified country\n\n    country (String) 2 digit country code\n\n    */\n\n    try {\n        var phoneUtil = i18n.phonenumbers.PhoneNumberUtil.getInstance();\n        var output = phoneUtil.getExampleNumber(country);\n        return \"\"+output.getNationalNumber();\n    } catch (e) {\n        return \"\";\n    }\n}\n\n// -------------------------------------------------------------------------\nfunction exampleMobileNumber(country) {\n    /*\n\n    Returns an example mobile phone number for the specified country\n\n    country (String) 2 digit country code\n\n    */\n\n    try {\n        var phoneUtil = i18n.phonenumbers.PhoneNumberUtil.getInstance();\n        var output = phoneUtil.getExampleNumberForType(country, i18n.phonenumbers.PhoneNumberType.MOBILE);\n        return \"\"+output.getNationalNumber();\n    } catch (e) {\n        return \"\";\n    }\n}\n\n// -------------------------------------------------------------------------\nfunction cleanPhone(phone) {\n    /*\n\n    Remove any non numeric characters from the phone number but leave any plus sign at the beginning\n\n    phone (String) phone number to clean\n\n    */\n\n    phone = phone.replace(/[^\\d\\+]/g,'');\n    if (phone.substr(0, 1) == \"+\") {\n        phone = \"+\" + phone.replace(/[^\\d]/g,'');\n    } else {\n        phone = phone.replace(/[^\\d]/g,'');\n    }\n    return phone;\n}\n\n// -------------------------------------------------------------------------\nfunction countryCodeToName(countryCode) {\n    /*\n\n    Convert the country code to a name\n\n    country (String) 2 digit country code\n\n    */\n\n    var arrCountry = new Array();\n    arrCountry['AF'] = \"Afghanistan\";\n    arrCountry['AL'] = \"Albania\";\n    arrCountry['DZ'] = \"Algeria\";\n    arrCountry['AS'] = \"American Samoa\";\n    arrCountry['AD'] = \"Andorra\";\n    arrCountry['AO'] = \"Angola\";\n    arrCountry['AI'] = \"Anguilla\";\n    arrCountry['AQ'] = \"Antarctica\";\n    arrCountry['AG'] = \"Antigua And Barbuda\";\n    arrCountry['AR'] = \"Argentina\";\n    arrCountry['AM'] = \"Armenia\";\n    arrCountry['AW'] = \"Aruba\";\n    arrCountry['AC'] = \"Ascension Island\";\n    arrCountry['AU'] = \"Australia\";\n    arrCountry['AT'] = \"Austria\";\n    arrCountry['AZ'] = \"Azerbaijan\";\n    arrCountry['BS'] = \"Bahamas\";\n    arrCountry['BH'] = \"Bahrain\";\n    arrCountry['BD'] = \"Bangladesh\";\n    arrCountry['BB'] = \"Barbados\";\n    arrCountry['BY'] = \"Belarus\";\n    arrCountry['BE'] = \"Belgium\";\n    arrCountry['BZ'] = \"Belize\";\n    arrCountry['BJ'] = \"Benin\";\n    arrCountry['BM'] = \"Bermuda\";\n    arrCountry['BT'] = \"Bhutan\";\n    arrCountry['BO'] = \"Bolivia\";\n    arrCountry['BA'] = \"Bosnia And Herzegovina\";\n    arrCountry['BW'] = \"Botswana\";\n    arrCountry['BV'] = \"Bouvet Island\";\n    arrCountry['BR'] = \"Brazil\";\n    arrCountry['IO'] = \"British Indian Ocean Territory\";\n    arrCountry['BN'] = \"Brunei\";\n    arrCountry['BG'] = \"Bulgaria\";\n    arrCountry['BF'] = \"Burkina Faso\";\n    arrCountry['BI'] = \"Burundi\";\n    arrCountry['KH'] = \"Cambodia\";\n    arrCountry['CM'] = \"Cameroon\";\n    arrCountry['CA'] = \"Canada\";\n    arrCountry['CV'] = \"Cape Verde\";\n    arrCountry['KY'] = \"Cayman Islands\";\n    arrCountry['CF'] = \"Central African Republic\";\n    arrCountry['TD'] = \"Chad\";\n    arrCountry['CL'] = \"Chile\";\n    arrCountry['CN'] = \"China\";\n    arrCountry['CX'] = \"Christmas Island\";\n    arrCountry['CC'] = \"Cocos (Keeling) Islands\";\n    arrCountry['CO'] = \"Colombia\";\n    arrCountry['KM'] = \"Comoros\";\n    arrCountry['CG'] = \"Congo\";\n    arrCountry['CK'] = \"Cook Islands\";\n    arrCountry['CR'] = \"Costa Rica\";\n    arrCountry['CI'] = \"Cote D'Ivorie (Ivory Coast)\";\n    arrCountry['HR'] = \"Croatia (Hrvatska)\";\n    arrCountry['CU'] = \"Cuba\";\n    arrCountry['CY'] = \"Cyprus\";\n    arrCountry['CZ'] = \"Czech Republic\";\n    arrCountry['CD'] = \"Democratic Republic Of Congo (Zaire)\";\n    arrCountry['DK'] = \"Denmark\";\n    arrCountry['DJ'] = \"Djibouti\";\n    arrCountry['DM'] = \"Dominica\";\n    arrCountry['DO'] = \"Dominican Republic\";\n    arrCountry['TL'] = \"East Timor\";\n    arrCountry['EC'] = \"Ecuador\";\n    arrCountry['EG'] = \"Egypt\";\n    arrCountry['SV'] = \"El Salvador\";\n    arrCountry['GQ'] = \"Equatorial Guinea\";\n    arrCountry['ER'] = \"Eritrea\";\n    arrCountry['EE'] = \"Estonia\";\n    arrCountry['ET'] = \"Ethiopia\";\n    arrCountry['FK'] = \"Falkland Islands (Malvinas)\";\n    arrCountry['FO'] = \"Faroe Islands\";\n    arrCountry['FJ'] = \"Fiji\";\n    arrCountry['FI'] = \"Finland\";\n    arrCountry['FR'] = \"France\";\n    arrCountry['FX'] = \"France, Metropolitan\";\n    arrCountry['GF'] = \"French Guinea\";\n    arrCountry['PF'] = \"French Polynesia\";\n    arrCountry['TF'] = \"French Southern Territories\";\n    arrCountry['GA'] = \"Gabon\";\n    arrCountry['GM'] = \"Gambia\";\n    arrCountry['GE'] = \"Georgia\";\n    arrCountry['DE'] = \"Germany\";\n    arrCountry['GH'] = \"Ghana\";\n    arrCountry['GI'] = \"Gibraltar\";\n    arrCountry['GR'] = \"Greece\";\n    arrCountry['GL'] = \"Greenland\";\n    arrCountry['GD'] = \"Grenada\";\n    arrCountry['GP'] = \"Guadeloupe\";\n    arrCountry['GU'] = \"Guam\";\n    arrCountry['GT'] = \"Guatemala\";\n    arrCountry['GN'] = \"Guinea\";\n    arrCountry['GW'] = \"Guinea-Bissau\";\n    arrCountry['GY'] = \"Guyana\";\n    arrCountry['HT'] = \"Haiti\";\n    arrCountry['HM'] = \"Heard And McDonald Islands\";\n    arrCountry['HN'] = \"Honduras\";\n    arrCountry['HK'] = \"Hong Kong\";\n    arrCountry['HU'] = \"Hungary\";\n    arrCountry['IS'] = \"Iceland\";\n    arrCountry['IN'] = \"India\";\n    arrCountry['ID'] = \"Indonesia\";\n    arrCountry['IR'] = \"Iran\";\n    arrCountry['IQ'] = \"Iraq\";\n    arrCountry['IE'] = \"Ireland\";\n    arrCountry['IM'] = \"Isle of Man\";\n    arrCountry['IL'] = \"Israel\";\n    arrCountry['IT'] = \"Italy\";\n    arrCountry['JM'] = \"Jamaica\";\n    arrCountry['JP'] = \"Japan\";\n    arrCountry['JO'] = \"Jordan\";\n    arrCountry['KZ'] = \"Kazakhstan\";\n    arrCountry['KE'] = \"Kenya\";\n    arrCountry['KI'] = \"Kiribati\";\n    arrCountry['KW'] = \"Kuwait\";\n    arrCountry['KG'] = \"Kyrgyzstan\";\n    arrCountry['LA'] = \"Laos\";\n    arrCountry['LV'] = \"Latvia\";\n    arrCountry['LB'] = \"Lebanon\";\n    arrCountry['LS'] = \"Lesotho\";\n    arrCountry['LR'] = \"Liberia\";\n    arrCountry['LY'] = \"Libya\";\n    arrCountry['LI'] = \"Liechtenstein\";\n    arrCountry['LT'] = \"Lithuania\";\n    arrCountry['LU'] = \"Luxembourg\";\n    arrCountry['MO'] = \"Macau\";\n    arrCountry['MK'] = \"Macedonia\";\n    arrCountry['MG'] = \"Madagascar\";\n    arrCountry['MW'] = \"Malawi\";\n    arrCountry['MY'] = \"Malaysia\";\n    arrCountry['MV'] = \"Maldives\";\n    arrCountry['ML'] = \"Mali\";\n    arrCountry['MT'] = \"Malta\";\n    arrCountry['MH'] = \"Marshall Islands\";\n    arrCountry['MQ'] = \"Martinique\";\n    arrCountry['MR'] = \"Mauritania\";\n    arrCountry['MU'] = \"Mauritius\";\n    arrCountry['YT'] = \"Mayotte\";\n    arrCountry['MX'] = \"Mexico\";\n    arrCountry['FM'] = \"Micronesia\";\n    arrCountry['MD'] = \"Moldova\";\n    arrCountry['MC'] = \"Monaco\";\n    arrCountry['MN'] = \"Mongolia\";\n    arrCountry['ME'] = \"Montenegro\";\n    arrCountry['MS'] = \"Montserrat\";\n    arrCountry['MA'] = \"Morocco\";\n    arrCountry['MZ'] = \"Mozambique\";\n    arrCountry['MM'] = \"Myanmar (Burma)\";\n    arrCountry['NA'] = \"Namibia\";\n    arrCountry['NR'] = \"Nauru\";\n    arrCountry['NP'] = \"Nepal\";\n    arrCountry['NL'] = \"Netherlands\";\n    arrCountry['AN'] = \"Netherlands Antilles\";\n    arrCountry['NC'] = \"New Caledonia\";\n    arrCountry['NZ'] = \"New Zealand\";\n    arrCountry['NI'] = \"Nicaragua\";\n    arrCountry['NE'] = \"Niger\";\n    arrCountry['NG'] = \"Nigeria\";\n    arrCountry['NU'] = \"Niue\";\n    arrCountry['NF'] = \"Norfolk Island\";\n    arrCountry['KP'] = \"North Korea\";\n    arrCountry['MP'] = \"Northern Mariana Islands\";\n    arrCountry['NO'] = \"Norway\";\n    arrCountry['OM'] = \"Oman\";\n    arrCountry['PK'] = \"Pakistan\";\n    arrCountry['PW'] = \"Palau\";\n    arrCountry['PS'] = \"Palestine\";\n    arrCountry['PA'] = \"Panama\";\n    arrCountry['PG'] = \"Papua New Guinea\";\n    arrCountry['PY'] = \"Paraguay\";\n    arrCountry['PE'] = \"Peru\";\n    arrCountry['PH'] = \"Philippines\";\n    arrCountry['PN'] = \"Pitcairn\";\n    arrCountry['PL'] = \"Poland\";\n    arrCountry['PT'] = \"Portugal\";\n    arrCountry['PR'] = \"Puerto Rico\";\n    arrCountry['QA'] = \"Qatar\";\n    arrCountry['RE'] = \"Reunion\";\n    arrCountry['RO'] = \"Romania\";\n    arrCountry['RU'] = \"Russia\";\n    arrCountry['RW'] = \"Rwanda\";\n    arrCountry['SH'] = \"Saint Helena\";\n    arrCountry['KN'] = \"Saint Kitts And Nevis\";\n    arrCountry['LC'] = \"Saint Lucia\";\n    arrCountry['PM'] = \"Saint Pierre And Miquelon\";\n    arrCountry['VC'] = \"Saint Vincent And The Grenadines\";\n    arrCountry['SM'] = \"San Marino\";\n    arrCountry['ST'] = \"Sao Tome And Principe\";\n    arrCountry['SA'] = \"Saudi Arabia\";\n    arrCountry['SN'] = \"Senegal\";\n    arrCountry['RS'] = \"Serbia\";\n    arrCountry['SC'] = \"Seychelles\";\n    arrCountry['SL'] = \"Sierra Leone\";\n    arrCountry['SG'] = \"Singapore\";\n    arrCountry['SK'] = \"Slovak Republic\";\n    arrCountry['SI'] = \"Slovenia\";\n    arrCountry['SB'] = \"Solomon Islands\";\n    arrCountry['SO'] = \"Somalia\";\n    arrCountry['ZA'] = \"South Africa\";\n    arrCountry['GS'] = \"South Georgia And South Sandwich Islands\";\n    arrCountry['KR'] = \"South Korea\";\n    arrCountry['ES'] = \"Spain\";\n    arrCountry['LK'] = \"Sri Lanka\";\n    arrCountry['SD'] = \"Sudan\";\n    arrCountry['SR'] = \"Suriname\";\n    arrCountry['SJ'] = \"Svalbard And Jan Mayen\";\n    arrCountry['SZ'] = \"Swaziland\";\n    arrCountry['SE'] = \"Sweden\";\n    arrCountry['CH'] = \"Switzerland\";\n    arrCountry['SY'] = \"Syria\";\n    arrCountry['TW'] = \"Taiwan\";\n    arrCountry['TJ'] = \"Tajikistan\";\n    arrCountry['TZ'] = \"Tanzania\";\n    arrCountry['TH'] = \"Thailand\";\n    arrCountry['TG'] = \"Togo\";\n    arrCountry['TK'] = \"Tokelau\";\n    arrCountry['TO'] = \"Tonga\";\n    arrCountry['TT'] = \"Trinidad And Tobago\";\n    arrCountry['TN'] = \"Tunisia\";\n    arrCountry['TR'] = \"Turkey\";\n    arrCountry['TM'] = \"Turkmenistan\";\n    arrCountry['TC'] = \"Turks And Caicos Islands\";\n    arrCountry['TV'] = \"Tuvalu\";\n    arrCountry['UG'] = \"Uganda\";\n    arrCountry['UA'] = \"Ukraine\";\n    arrCountry['AE'] = \"United Arab Emirates\";\n    arrCountry['GB'] = \"United Kingdom\";\n    arrCountry['US'] = \"United States\";\n    arrCountry['UM'] = \"United States Minor Outlying Islands\";\n    arrCountry['UY'] = \"Uruguay\";\n    arrCountry['UZ'] = \"Uzbekistan\";\n    arrCountry['VU'] = \"Vanuatu\";\n    arrCountry['VA'] = \"Vatican City (Holy See)\";\n    arrCountry['VE'] = \"Venezuela\";\n    arrCountry['VN'] = \"Vietnam\";\n    arrCountry['VG'] = \"Virgin Islands (British)\";\n    arrCountry['VI'] = \"Virgin Islands (US)\";\n    arrCountry['WF'] = \"Wallis And Futuna Islands\";\n    arrCountry['EH'] = \"Western Sahara\";\n    arrCountry['WS'] = \"Western Samoa\";\n    arrCountry['YE'] = \"Yemen\";\n    arrCountry['YU'] = \"Yugoslavia\";\n    arrCountry['ZM'] = \"Zambia\";\n    arrCountry['ZW'] = \"Zimbabwe\";\n\n    var name = arrCountry[countryCode.toUpperCase()];\n    if (name === undefined) {\n        return \"\";\n    }\n    return name;\n}\nexports.COMPILED=COMPILED;\nexports.goog=goog;\nexports.i18n=i18n;\nexports.countryForE164Number=countryForE164Number;\nexports.formatNumberForMobileDialing=formatNumberForMobileDialing;\nexports.isValidNumber=isValidNumber;\nexports.formatE164=formatE164;\nexports.formatInternational=formatInternational;\nexports.formatLocal=formatLocal;\nexports.exampleLandlineNumber=exampleLandlineNumber;\nexports.exampleMobileNumber=exampleMobileNumber;\nexports.cleanPhone=cleanPhone;\nexports.countryCodeToName=countryCodeToName;\n});"
  },
  {
    "path": "tests/qunit.js",
    "content": "/**\n * QUnit v1.10.0 - A JavaScript Unit Testing Framework\n *\n * http://qunitjs.com\n *\n * Copyright 2012 jQuery Foundation and other contributors\n * Released under the MIT license.\n * http://jquery.org/license\n */\n\n(function( window ) {\n\nvar QUnit,\n\tconfig,\n\tonErrorFnPrev,\n\ttestId = 0,\n\tfileName = (sourceFromStacktrace( 0 ) || \"\" ).replace(/(:\\d+)+\\)?/, \"\").replace(/.+\\//, \"\"),\n\ttoString = Object.prototype.toString,\n\thasOwn = Object.prototype.hasOwnProperty,\n\t// Keep a local reference to Date (GH-283)\n\tDate = window.Date,\n\tdefined = {\n\tsetTimeout: typeof window.setTimeout !== \"undefined\",\n\tsessionStorage: (function() {\n\t\tvar x = \"qunit-test-string\";\n\t\ttry {\n\t\t\tsessionStorage.setItem( x, x );\n\t\t\tsessionStorage.removeItem( x );\n\t\t\treturn true;\n\t\t} catch( e ) {\n\t\t\treturn false;\n\t\t}\n\t}())\n};\n\nfunction Test( settings ) {\n\textend( this, settings );\n\tthis.assertions = [];\n\tthis.testNumber = ++Test.count;\n}\n\nTest.count = 0;\n\nTest.prototype = {\n\tinit: function() {\n\t\tvar a, b, li,\n        tests = id( \"qunit-tests\" );\n\n\t\tif ( tests ) {\n\t\t\tb = document.createElement( \"strong\" );\n\t\t\tb.innerHTML = this.name;\n\n\t\t\t// `a` initialized at top of scope\n\t\t\ta = document.createElement( \"a\" );\n\t\t\ta.innerHTML = \"Rerun\";\n\t\t\ta.href = QUnit.url({ testNumber: this.testNumber });\n\n\t\t\tli = document.createElement( \"li\" );\n\t\t\tli.appendChild( b );\n\t\t\tli.appendChild( a );\n\t\t\tli.className = \"running\";\n\t\t\tli.id = this.id = \"qunit-test-output\" + testId++;\n\n\t\t\ttests.appendChild( li );\n\t\t}\n\t},\n\tsetup: function() {\n\t\tif ( this.module !== config.previousModule ) {\n\t\t\tif ( config.previousModule ) {\n\t\t\t\trunLoggingCallbacks( \"moduleDone\", QUnit, {\n\t\t\t\t\tname: config.previousModule,\n\t\t\t\t\tfailed: config.moduleStats.bad,\n\t\t\t\t\tpassed: config.moduleStats.all - config.moduleStats.bad,\n\t\t\t\t\ttotal: config.moduleStats.all\n\t\t\t\t});\n\t\t\t}\n\t\t\tconfig.previousModule = this.module;\n\t\t\tconfig.moduleStats = { all: 0, bad: 0 };\n\t\t\trunLoggingCallbacks( \"moduleStart\", QUnit, {\n\t\t\t\tname: this.module\n\t\t\t});\n\t\t} else if ( config.autorun ) {\n\t\t\trunLoggingCallbacks( \"moduleStart\", QUnit, {\n\t\t\t\tname: this.module\n\t\t\t});\n\t\t}\n\n\t\tconfig.current = this;\n\n\t\tthis.testEnvironment = extend({\n\t\t\tsetup: function() {},\n\t\t\tteardown: function() {}\n\t\t}, this.moduleTestEnvironment );\n\n\t\trunLoggingCallbacks( \"testStart\", QUnit, {\n\t\t\tname: this.testName,\n\t\t\tmodule: this.module\n\t\t});\n\n\t\t// allow utility functions to access the current test environment\n\t\t// TODO why??\n\t\tQUnit.current_testEnvironment = this.testEnvironment;\n\n\t\tif ( !config.pollution ) {\n\t\t\tsaveGlobal();\n\t\t}\n\t\tif ( config.notrycatch ) {\n\t\t\tthis.testEnvironment.setup.call( this.testEnvironment );\n\t\t\treturn;\n\t\t}\n\t\ttry {\n\t\t\tthis.testEnvironment.setup.call( this.testEnvironment );\n\t\t} catch( e ) {\n\t\t\tQUnit.pushFailure( \"Setup failed on \" + this.testName + \": \" + e.message, extractStacktrace( e, 1 ) );\n\t\t}\n\t},\n\trun: function() {\n\t\tconfig.current = this;\n\n\t\tvar running = id( \"qunit-testresult\" );\n\n\t\tif ( running ) {\n\t\t\trunning.innerHTML = \"Running: <br/>\" + this.name;\n\t\t}\n\n\t\tif ( this.async ) {\n\t\t\tQUnit.stop();\n\t\t}\n\n\t\tif ( config.notrycatch ) {\n\t\t\tthis.callback.call( this.testEnvironment, QUnit.assert );\n\t\t\treturn;\n\t\t}\n\n\t\ttry {\n\t\t\tthis.callback.call( this.testEnvironment, QUnit.assert );\n\t\t} catch( e ) {\n\t\t\tQUnit.pushFailure( \"Died on test #\" + (this.assertions.length + 1) + \" \" + this.stack + \": \" + e.message, extractStacktrace( e, 0 ) );\n\t\t\t// else next test will carry the responsibility\n\t\t\tsaveGlobal();\n\n\t\t\t// Restart the tests if they're blocking\n\t\t\tif ( config.blocking ) {\n\t\t\t\tQUnit.start();\n\t\t\t}\n\t\t}\n\t},\n\tteardown: function() {\n\t\tconfig.current = this;\n\t\tif ( config.notrycatch ) {\n\t\t\tthis.testEnvironment.teardown.call( this.testEnvironment );\n\t\t\treturn;\n\t\t} else {\n\t\t\ttry {\n\t\t\t\tthis.testEnvironment.teardown.call( this.testEnvironment );\n\t\t\t} catch( e ) {\n\t\t\t\tQUnit.pushFailure( \"Teardown failed on \" + this.testName + \": \" + e.message, extractStacktrace( e, 1 ) );\n\t\t\t}\n\t\t}\n\t\tcheckPollution();\n\t},\n\tfinish: function() {\n\t\tconfig.current = this;\n\t\tif ( config.requireExpects && this.expected == null ) {\n\t\t\tQUnit.pushFailure( \"Expected number of assertions to be defined, but expect() was not called.\", this.stack );\n\t\t} else if ( this.expected != null && this.expected != this.assertions.length ) {\n\t\t\tQUnit.pushFailure( \"Expected \" + this.expected + \" assertions, but \" + this.assertions.length + \" were run\", this.stack );\n\t\t} else if ( this.expected == null && !this.assertions.length ) {\n\t\t\tQUnit.pushFailure( \"Expected at least one assertion, but none were run - call expect(0) to accept zero assertions.\", this.stack );\n\t\t}\n\n\t\tvar assertion, a, b, i, li, ol,\n\t\t\ttest = this,\n\t\t\tgood = 0,\n\t\t\tbad = 0,\n\t\t\ttests = id( \"qunit-tests\" );\n\n\t\tconfig.stats.all += this.assertions.length;\n\t\tconfig.moduleStats.all += this.assertions.length;\n\n\t\tif ( tests ) {\n\t\t\tol = document.createElement( \"ol\" );\n\n\t\t\tfor ( i = 0; i < this.assertions.length; i++ ) {\n\t\t\t\tassertion = this.assertions[i];\n\n\t\t\t\tli = document.createElement( \"li\" );\n\t\t\t\tli.className = assertion.result ? \"pass\" : \"fail\";\n\t\t\t\tli.innerHTML = assertion.message || ( assertion.result ? \"okay\" : \"failed\" );\n\t\t\t\tol.appendChild( li );\n\n\t\t\t\tif ( assertion.result ) {\n\t\t\t\t\tgood++;\n\t\t\t\t} else {\n\t\t\t\t\tbad++;\n\t\t\t\t\tconfig.stats.bad++;\n\t\t\t\t\tconfig.moduleStats.bad++;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// store result when possible\n\t\t\tif ( QUnit.config.reorder && defined.sessionStorage ) {\n\t\t\t\tif ( bad ) {\n\t\t\t\t\tsessionStorage.setItem( \"qunit-test-\" + this.module + \"-\" + this.testName, bad );\n\t\t\t\t} else {\n\t\t\t\t\tsessionStorage.removeItem( \"qunit-test-\" + this.module + \"-\" + this.testName );\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif ( bad === 0 ) {\n\t\t\t\tol.style.display = \"none\";\n\t\t\t}\n\n\t\t\t// `b` initialized at top of scope\n\t\t\tb = document.createElement( \"strong\" );\n\t\t\tb.innerHTML = this.name + \" <b class='counts'>(<b class='failed'>\" + bad + \"</b>, <b class='passed'>\" + good + \"</b>, \" + this.assertions.length + \")</b>\";\n\n\t\t\taddEvent(b, \"click\", function() {\n\t\t\t\tvar next = b.nextSibling.nextSibling,\n\t\t\t\t\tdisplay = next.style.display;\n\t\t\t\tnext.style.display = display === \"none\" ? \"block\" : \"none\";\n\t\t\t});\n\n\t\t\taddEvent(b, \"dblclick\", function( e ) {\n\t\t\t\tvar target = e && e.target ? e.target : window.event.srcElement;\n\t\t\t\tif ( target.nodeName.toLowerCase() == \"span\" || target.nodeName.toLowerCase() == \"b\" ) {\n\t\t\t\t\ttarget = target.parentNode;\n\t\t\t\t}\n\t\t\t\tif ( window.location && target.nodeName.toLowerCase() === \"strong\" ) {\n\t\t\t\t\twindow.location = QUnit.url({ testNumber: test.testNumber });\n\t\t\t\t}\n\t\t\t});\n\n\t\t\t// `li` initialized at top of scope\n\t\t\tli = id( this.id );\n\t\t\tli.className = bad ? \"fail\" : \"pass\";\n\t\t\tli.removeChild( li.firstChild );\n\t\t\ta = li.firstChild;\n\t\t\tli.appendChild( b );\n\t\t\tli.appendChild ( a );\n\t\t\tli.appendChild( ol );\n\n\t\t} else {\n\t\t\tfor ( i = 0; i < this.assertions.length; i++ ) {\n\t\t\t\tif ( !this.assertions[i].result ) {\n\t\t\t\t\tbad++;\n\t\t\t\t\tconfig.stats.bad++;\n\t\t\t\t\tconfig.moduleStats.bad++;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\trunLoggingCallbacks( \"testDone\", QUnit, {\n\t\t\tname: this.testName,\n\t\t\tmodule: this.module,\n\t\t\tfailed: bad,\n\t\t\tpassed: this.assertions.length - bad,\n\t\t\ttotal: this.assertions.length\n\t\t});\n\n\t\tQUnit.reset();\n\n\t\tconfig.current = undefined;\n\t},\n\n\tqueue: function() {\n\t\tvar bad,\n\t\t\ttest = this;\n\n\t\tsynchronize(function() {\n\t\t\ttest.init();\n\t\t});\n\t\tfunction run() {\n\t\t\t// each of these can by async\n\t\t\tsynchronize(function() {\n\t\t\t\ttest.setup();\n\t\t\t});\n\t\t\tsynchronize(function() {\n\t\t\t\ttest.run();\n\t\t\t});\n\t\t\tsynchronize(function() {\n\t\t\t\ttest.teardown();\n\t\t\t});\n\t\t\tsynchronize(function() {\n\t\t\t\ttest.finish();\n\t\t\t});\n\t\t}\n\n\t\t// `bad` initialized at top of scope\n\t\t// defer when previous test run passed, if storage is available\n\t\tbad = QUnit.config.reorder && defined.sessionStorage &&\n\t\t\t\t\t\t+sessionStorage.getItem( \"qunit-test-\" + this.module + \"-\" + this.testName );\n\n\t\tif ( bad ) {\n\t\t\trun();\n\t\t} else {\n\t\t\tsynchronize( run, true );\n\t\t}\n\t}\n};\n\n// Root QUnit object.\n// `QUnit` initialized at top of scope\nQUnit = {\n\n\t// call on start of module test to prepend name to all tests\n\tmodule: function( name, testEnvironment ) {\n\t\tconfig.currentModule = name;\n\t\tconfig.currentModuleTestEnvironment = testEnvironment;\n\t\tconfig.modules[name] = true;\n\t},\n\n\tasyncTest: function( testName, expected, callback ) {\n\t\tif ( arguments.length === 2 ) {\n\t\t\tcallback = expected;\n\t\t\texpected = null;\n\t\t}\n\n\t\tQUnit.test( testName, expected, callback, true );\n\t},\n\n\ttest: function( testName, expected, callback, async ) {\n\t\tvar test,\n\t\t\tname = \"<span class='test-name'>\" + escapeInnerText( testName ) + \"</span>\";\n\n\t\tif ( arguments.length === 2 ) {\n\t\t\tcallback = expected;\n\t\t\texpected = null;\n\t\t}\n\n\t\tif ( config.currentModule ) {\n\t\t\tname = \"<span class='module-name'>\" + config.currentModule + \"</span>: \" + name;\n\t\t}\n\n\t\ttest = new Test({\n\t\t\tname: name,\n\t\t\ttestName: testName,\n\t\t\texpected: expected,\n\t\t\tasync: async,\n\t\t\tcallback: callback,\n\t\t\tmodule: config.currentModule,\n\t\t\tmoduleTestEnvironment: config.currentModuleTestEnvironment,\n\t\t\tstack: sourceFromStacktrace( 2 )\n\t\t});\n\n\t\tif ( !validTest( test ) ) {\n\t\t\treturn;\n\t\t}\n\n\t\ttest.queue();\n\t},\n\n\t// Specify the number of expected assertions to gurantee that failed test (no assertions are run at all) don't slip through.\n\texpect: function( asserts ) {\n\t\tif (arguments.length === 1) {\n\t\t\tconfig.current.expected = asserts;\n\t\t} else {\n\t\t\treturn config.current.expected;\n\t\t}\n\t},\n\n\tstart: function( count ) {\n\t\tconfig.semaphore -= count || 1;\n\t\t// don't start until equal number of stop-calls\n\t\tif ( config.semaphore > 0 ) {\n\t\t\treturn;\n\t\t}\n\t\t// ignore if start is called more often then stop\n\t\tif ( config.semaphore < 0 ) {\n\t\t\tconfig.semaphore = 0;\n\t\t}\n\t\t// A slight delay, to avoid any current callbacks\n\t\tif ( defined.setTimeout ) {\n\t\t\twindow.setTimeout(function() {\n\t\t\t\tif ( config.semaphore > 0 ) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tif ( config.timeout ) {\n\t\t\t\t\tclearTimeout( config.timeout );\n\t\t\t\t}\n\n\t\t\t\tconfig.blocking = false;\n\t\t\t\tprocess( true );\n\t\t\t}, 13);\n\t\t} else {\n\t\t\tconfig.blocking = false;\n\t\t\tprocess( true );\n\t\t}\n\t},\n\n\tstop: function( count ) {\n\t\tconfig.semaphore += count || 1;\n\t\tconfig.blocking = true;\n\n\t\tif ( config.testTimeout && defined.setTimeout ) {\n\t\t\tclearTimeout( config.timeout );\n\t\t\tconfig.timeout = window.setTimeout(function() {\n\t\t\t\tQUnit.ok( false, \"Test timed out\" );\n\t\t\t\tconfig.semaphore = 1;\n\t\t\t\tQUnit.start();\n\t\t\t}, config.testTimeout );\n\t\t}\n\t}\n};\n\n// Asssert helpers\n// All of these must call either QUnit.push() or manually do:\n// - runLoggingCallbacks( \"log\", .. );\n// - config.current.assertions.push({ .. });\nQUnit.assert = {\n\t/**\n\t * Asserts rough true-ish result.\n\t * @name ok\n\t * @function\n\t * @example ok( \"asdfasdf\".length > 5, \"There must be at least 5 chars\" );\n\t */\n\tok: function( result, msg ) {\n\t\tif ( !config.current ) {\n\t\t\tthrow new Error( \"ok() assertion outside test context, was \" + sourceFromStacktrace(2) );\n\t\t}\n\t\tresult = !!result;\n\n\t\tvar source,\n\t\t\tdetails = {\n\t\t\t\tmodule: config.current.module,\n\t\t\t\tname: config.current.testName,\n\t\t\t\tresult: result,\n\t\t\t\tmessage: msg\n\t\t\t};\n\n\t\tmsg = escapeInnerText( msg || (result ? \"okay\" : \"failed\" ) );\n\t\tmsg = \"<span class='test-message'>\" + msg + \"</span>\";\n\n\t\tif ( !result ) {\n\t\t\tsource = sourceFromStacktrace( 2 );\n\t\t\tif ( source ) {\n\t\t\t\tdetails.source = source;\n\t\t\t\tmsg += \"<table><tr class='test-source'><th>Source: </th><td><pre>\" + escapeInnerText( source ) + \"</pre></td></tr></table>\";\n\t\t\t}\n\t\t}\n\t\trunLoggingCallbacks( \"log\", QUnit, details );\n\t\tconfig.current.assertions.push({\n\t\t\tresult: result,\n\t\t\tmessage: msg\n\t\t});\n\t},\n\n\t/**\n\t * Assert that the first two arguments are equal, with an optional message.\n\t * Prints out both actual and expected values.\n\t * @name equal\n\t * @function\n\t * @example equal( format( \"Received {0} bytes.\", 2), \"Received 2 bytes.\", \"format() replaces {0} with next argument\" );\n\t */\n\tequal: function( actual, expected, message ) {\n\t\tQUnit.push( expected == actual, actual, expected, message );\n\t},\n\n\t/**\n\t * @name notEqual\n\t * @function\n\t */\n\tnotEqual: function( actual, expected, message ) {\n\t\tQUnit.push( expected != actual, actual, expected, message );\n\t},\n\n\t/**\n\t * @name deepEqual\n\t * @function\n\t */\n\tdeepEqual: function( actual, expected, message ) {\n\t\tQUnit.push( QUnit.equiv(actual, expected), actual, expected, message );\n\t},\n\n\t/**\n\t * @name notDeepEqual\n\t * @function\n\t */\n\tnotDeepEqual: function( actual, expected, message ) {\n\t\tQUnit.push( !QUnit.equiv(actual, expected), actual, expected, message );\n\t},\n\n\t/**\n\t * @name strictEqual\n\t * @function\n\t */\n\tstrictEqual: function( actual, expected, message ) {\n\t\tQUnit.push( expected === actual, actual, expected, message );\n\t},\n\n\t/**\n\t * @name notStrictEqual\n\t * @function\n\t */\n\tnotStrictEqual: function( actual, expected, message ) {\n\t\tQUnit.push( expected !== actual, actual, expected, message );\n\t},\n\n\tthrows: function( block, expected, message ) {\n\t\tvar actual,\n\t\t\tok = false;\n\n\t\t// 'expected' is optional\n\t\tif ( typeof expected === \"string\" ) {\n\t\t\tmessage = expected;\n\t\t\texpected = null;\n\t\t}\n\n\t\tconfig.current.ignoreGlobalErrors = true;\n\t\ttry {\n\t\t\tblock.call( config.current.testEnvironment );\n\t\t} catch (e) {\n\t\t\tactual = e;\n\t\t}\n\t\tconfig.current.ignoreGlobalErrors = false;\n\n\t\tif ( actual ) {\n\t\t\t// we don't want to validate thrown error\n\t\t\tif ( !expected ) {\n\t\t\t\tok = true;\n\t\t\t// expected is a regexp\n\t\t\t} else if ( QUnit.objectType( expected ) === \"regexp\" ) {\n\t\t\t\tok = expected.test( actual );\n\t\t\t// expected is a constructor\n\t\t\t} else if ( actual instanceof expected ) {\n\t\t\t\tok = true;\n\t\t\t// expected is a validation function which returns true is validation passed\n\t\t\t} else if ( expected.call( {}, actual ) === true ) {\n\t\t\t\tok = true;\n\t\t\t}\n\n\t\t\tQUnit.push( ok, actual, null, message );\n\t\t} else {\n\t\t\tQUnit.pushFailure( message, null, 'No exception was thrown.' );\n\t\t}\n\t}\n};\n\n/**\n * @deprecate since 1.8.0\n * Kept assertion helpers in root for backwards compatibility\n */\nextend( QUnit, QUnit.assert );\n\n/**\n * @deprecated since 1.9.0\n * Kept global \"raises()\" for backwards compatibility\n */\nQUnit.raises = QUnit.assert.throws;\n\n/**\n * @deprecated since 1.0.0, replaced with error pushes since 1.3.0\n * Kept to avoid TypeErrors for undefined methods.\n */\nQUnit.equals = function() {\n\tQUnit.push( false, false, false, \"QUnit.equals has been deprecated since 2009 (e88049a0), use QUnit.equal instead\" );\n};\nQUnit.same = function() {\n\tQUnit.push( false, false, false, \"QUnit.same has been deprecated since 2009 (e88049a0), use QUnit.deepEqual instead\" );\n};\n\n// We want access to the constructor's prototype\n(function() {\n\tfunction F() {}\n\tF.prototype = QUnit;\n\tQUnit = new F();\n\t// Make F QUnit's constructor so that we can add to the prototype later\n\tQUnit.constructor = F;\n}());\n\n/**\n * Config object: Maintain internal state\n * Later exposed as QUnit.config\n * `config` initialized at top of scope\n */\nconfig = {\n\t// The queue of tests to run\n\tqueue: [],\n\n\t// block until document ready\n\tblocking: true,\n\n\t// when enabled, show only failing tests\n\t// gets persisted through sessionStorage and can be changed in UI via checkbox\n\thidepassed: false,\n\n\t// by default, run previously failed tests first\n\t// very useful in combination with \"Hide passed tests\" checked\n\treorder: true,\n\n\t// by default, modify document.title when suite is done\n\taltertitle: true,\n\n\t// when enabled, all tests must call expect()\n\trequireExpects: false,\n\n\t// add checkboxes that are persisted in the query-string\n\t// when enabled, the id is set to `true` as a `QUnit.config` property\n\turlConfig: [\n\t\t{\n\t\t\tid: \"noglobals\",\n\t\t\tlabel: \"Check for Globals\",\n\t\t\ttooltip: \"Enabling this will test if any test introduces new properties on the `window` object. Stored as query-strings.\"\n\t\t},\n\t\t{\n\t\t\tid: \"notrycatch\",\n\t\t\tlabel: \"No try-catch\",\n\t\t\ttooltip: \"Enabling this will run tests outside of a try-catch block. Makes debugging exceptions in IE reasonable. Stored as query-strings.\"\n\t\t}\n\t],\n\n\t// Set of all modules.\n\tmodules: {},\n\n\t// logging callback queues\n\tbegin: [],\n\tdone: [],\n\tlog: [],\n\ttestStart: [],\n\ttestDone: [],\n\tmoduleStart: [],\n\tmoduleDone: []\n};\n\n// Initialize more QUnit.config and QUnit.urlParams\n(function() {\n\tvar i,\n\t\tlocation = window.location || { search: \"\", protocol: \"file:\" },\n\t\tparams = location.search.slice( 1 ).split( \"&\" ),\n\t\tlength = params.length,\n\t\turlParams = {},\n\t\tcurrent;\n\n\tif ( params[ 0 ] ) {\n\t\tfor ( i = 0; i < length; i++ ) {\n\t\t\tcurrent = params[ i ].split( \"=\" );\n\t\t\tcurrent[ 0 ] = decodeURIComponent( current[ 0 ] );\n\t\t\t// allow just a key to turn on a flag, e.g., test.html?noglobals\n\t\t\tcurrent[ 1 ] = current[ 1 ] ? decodeURIComponent( current[ 1 ] ) : true;\n\t\t\turlParams[ current[ 0 ] ] = current[ 1 ];\n\t\t}\n\t}\n\n\tQUnit.urlParams = urlParams;\n\n\t// String search anywhere in moduleName+testName\n\tconfig.filter = urlParams.filter;\n\n\t// Exact match of the module name\n\tconfig.module = urlParams.module;\n\n\tconfig.testNumber = parseInt( urlParams.testNumber, 10 ) || null;\n\n\t// Figure out if we're running the tests from a server or not\n\tQUnit.isLocal = location.protocol === \"file:\";\n}());\n\n// Export global variables, unless an 'exports' object exists,\n// in that case we assume we're in CommonJS (dealt with on the bottom of the script)\nif ( typeof exports === \"undefined\" ) {\n\textend( window, QUnit );\n\n\t// Expose QUnit object\n\twindow.QUnit = QUnit;\n}\n\n// Extend QUnit object,\n// these after set here because they should not be exposed as global functions\nextend( QUnit, {\n\tconfig: config,\n\n\t// Initialize the configuration options\n\tinit: function() {\n\t\textend( config, {\n\t\t\tstats: { all: 0, bad: 0 },\n\t\t\tmoduleStats: { all: 0, bad: 0 },\n\t\t\tstarted: +new Date(),\n\t\t\tupdateRate: 1000,\n\t\t\tblocking: false,\n\t\t\tautostart: true,\n\t\t\tautorun: false,\n\t\t\tfilter: \"\",\n\t\t\tqueue: [],\n\t\t\tsemaphore: 0\n\t\t});\n\n\t\tvar tests, banner, result,\n\t\t\tqunit = id( \"qunit\" );\n\n\t\tif ( qunit ) {\n\t\t\tqunit.innerHTML =\n\t\t\t\t\"<h1 id='qunit-header'>\" + escapeInnerText( document.title ) + \"</h1>\" +\n\t\t\t\t\"<h2 id='qunit-banner'></h2>\" +\n\t\t\t\t\"<div id='qunit-testrunner-toolbar'></div>\" +\n\t\t\t\t\"<h2 id='qunit-userAgent'></h2>\" +\n\t\t\t\t\"<ol id='qunit-tests'></ol>\";\n\t\t}\n\n\t\ttests = id( \"qunit-tests\" );\n\t\tbanner = id( \"qunit-banner\" );\n\t\tresult = id( \"qunit-testresult\" );\n\n\t\tif ( tests ) {\n\t\t\ttests.innerHTML = \"\";\n\t\t}\n\n\t\tif ( banner ) {\n\t\t\tbanner.className = \"\";\n\t\t}\n\n\t\tif ( result ) {\n\t\t\tresult.parentNode.removeChild( result );\n\t\t}\n\n\t\tif ( tests ) {\n\t\t\tresult = document.createElement( \"p\" );\n\t\t\tresult.id = \"qunit-testresult\";\n\t\t\tresult.className = \"result\";\n\t\t\ttests.parentNode.insertBefore( result, tests );\n\t\t\tresult.innerHTML = \"Running...<br/>&nbsp;\";\n\t\t}\n\t},\n\n\t// Resets the test setup. Useful for tests that modify the DOM.\n\treset: function() {\n\t\tvar fixture = id( \"qunit-fixture\" );\n\t\tif ( fixture ) {\n\t\t\tfixture.innerHTML = config.fixture;\n\t\t}\n\t},\n\n\t// Trigger an event on an element.\n\t// @example triggerEvent( document.body, \"click\" );\n\ttriggerEvent: function( elem, type, event ) {\n\t\tif ( document.createEvent ) {\n\t\t\tevent = document.createEvent( \"MouseEvents\" );\n\t\t\tevent.initMouseEvent(type, true, true, elem.ownerDocument.defaultView,\n\t\t\t\t0, 0, 0, 0, 0, false, false, false, false, 0, null);\n\n\t\t\telem.dispatchEvent( event );\n\t\t} else if ( elem.fireEvent ) {\n\t\t\telem.fireEvent( \"on\" + type );\n\t\t}\n\t},\n\n\t// Safe object type checking\n\tis: function( type, obj ) {\n\t\treturn QUnit.objectType( obj ) == type;\n\t},\n\n\tobjectType: function( obj ) {\n\t\tif ( typeof obj === \"undefined\" ) {\n\t\t\t\treturn \"undefined\";\n\t\t// consider: typeof null === object\n\t\t}\n\t\tif ( obj === null ) {\n\t\t\t\treturn \"null\";\n\t\t}\n\n\t\tvar type = toString.call( obj ).match(/^\\[object\\s(.*)\\]$/)[1] || \"\";\n\n\t\tswitch ( type ) {\n\t\t\tcase \"Number\":\n\t\t\t\tif ( isNaN(obj) ) {\n\t\t\t\t\treturn \"nan\";\n\t\t\t\t}\n\t\t\t\treturn \"number\";\n\t\t\tcase \"String\":\n\t\t\tcase \"Boolean\":\n\t\t\tcase \"Array\":\n\t\t\tcase \"Date\":\n\t\t\tcase \"RegExp\":\n\t\t\tcase \"Function\":\n\t\t\t\treturn type.toLowerCase();\n\t\t}\n\t\tif ( typeof obj === \"object\" ) {\n\t\t\treturn \"object\";\n\t\t}\n\t\treturn undefined;\n\t},\n\n\tpush: function( result, actual, expected, message ) {\n\t\tif ( !config.current ) {\n\t\t\tthrow new Error( \"assertion outside test context, was \" + sourceFromStacktrace() );\n\t\t}\n\n\t\tvar output, source,\n\t\t\tdetails = {\n\t\t\t\tmodule: config.current.module,\n\t\t\t\tname: config.current.testName,\n\t\t\t\tresult: result,\n\t\t\t\tmessage: message,\n\t\t\t\tactual: actual,\n\t\t\t\texpected: expected\n\t\t\t};\n\n\t\tmessage = escapeInnerText( message ) || ( result ? \"okay\" : \"failed\" );\n\t\tmessage = \"<span class='test-message'>\" + message + \"</span>\";\n\t\toutput = message;\n\n\t\tif ( !result ) {\n\t\t\texpected = escapeInnerText( QUnit.jsDump.parse(expected) );\n\t\t\tactual = escapeInnerText( QUnit.jsDump.parse(actual) );\n\t\t\toutput += \"<table><tr class='test-expected'><th>Expected: </th><td><pre>\" + expected + \"</pre></td></tr>\";\n\n\t\t\tif ( actual != expected ) {\n\t\t\t\toutput += \"<tr class='test-actual'><th>Result: </th><td><pre>\" + actual + \"</pre></td></tr>\";\n\t\t\t\toutput += \"<tr class='test-diff'><th>Diff: </th><td><pre>\" + QUnit.diff( expected, actual ) + \"</pre></td></tr>\";\n\t\t\t}\n\n\t\t\tsource = sourceFromStacktrace();\n\n\t\t\tif ( source ) {\n\t\t\t\tdetails.source = source;\n\t\t\t\toutput += \"<tr class='test-source'><th>Source: </th><td><pre>\" + escapeInnerText( source ) + \"</pre></td></tr>\";\n\t\t\t}\n\n\t\t\toutput += \"</table>\";\n\t\t}\n\n\t\trunLoggingCallbacks( \"log\", QUnit, details );\n\n\t\tconfig.current.assertions.push({\n\t\t\tresult: !!result,\n\t\t\tmessage: output\n\t\t});\n\t},\n\n\tpushFailure: function( message, source, actual ) {\n\t\tif ( !config.current ) {\n\t\t\tthrow new Error( \"pushFailure() assertion outside test context, was \" + sourceFromStacktrace(2) );\n\t\t}\n\n\t\tvar output,\n\t\t\tdetails = {\n\t\t\t\tmodule: config.current.module,\n\t\t\t\tname: config.current.testName,\n\t\t\t\tresult: false,\n\t\t\t\tmessage: message\n\t\t\t};\n\n\t\tmessage = escapeInnerText( message ) || \"error\";\n\t\tmessage = \"<span class='test-message'>\" + message + \"</span>\";\n\t\toutput = message;\n\n\t\toutput += \"<table>\";\n\n\t\tif ( actual ) {\n\t\t\toutput += \"<tr class='test-actual'><th>Result: </th><td><pre>\" + escapeInnerText( actual ) + \"</pre></td></tr>\";\n\t\t}\n\n\t\tif ( source ) {\n\t\t\tdetails.source = source;\n\t\t\toutput += \"<tr class='test-source'><th>Source: </th><td><pre>\" + escapeInnerText( source ) + \"</pre></td></tr>\";\n\t\t}\n\n\t\toutput += \"</table>\";\n\n\t\trunLoggingCallbacks( \"log\", QUnit, details );\n\n\t\tconfig.current.assertions.push({\n\t\t\tresult: false,\n\t\t\tmessage: output\n\t\t});\n\t},\n\n\turl: function( params ) {\n\t\tparams = extend( extend( {}, QUnit.urlParams ), params );\n\t\tvar key,\n\t\t\tquerystring = \"?\";\n\n\t\tfor ( key in params ) {\n\t\t\tif ( !hasOwn.call( params, key ) ) {\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tquerystring += encodeURIComponent( key ) + \"=\" +\n\t\t\t\tencodeURIComponent( params[ key ] ) + \"&\";\n\t\t}\n\t\treturn window.location.pathname + querystring.slice( 0, -1 );\n\t},\n\n\textend: extend,\n\tid: id,\n\taddEvent: addEvent\n\t// load, equiv, jsDump, diff: Attached later\n});\n\n/**\n * @deprecated: Created for backwards compatibility with test runner that set the hook function\n * into QUnit.{hook}, instead of invoking it and passing the hook function.\n * QUnit.constructor is set to the empty F() above so that we can add to it's prototype here.\n * Doing this allows us to tell if the following methods have been overwritten on the actual\n * QUnit object.\n */\nextend( QUnit.constructor.prototype, {\n\n\t// Logging callbacks; all receive a single argument with the listed properties\n\t// run test/logs.html for any related changes\n\tbegin: registerLoggingCallback( \"begin\" ),\n\n\t// done: { failed, passed, total, runtime }\n\tdone: registerLoggingCallback( \"done\" ),\n\n\t// log: { result, actual, expected, message }\n\tlog: registerLoggingCallback( \"log\" ),\n\n\t// testStart: { name }\n\ttestStart: registerLoggingCallback( \"testStart\" ),\n\n\t// testDone: { name, failed, passed, total }\n\ttestDone: registerLoggingCallback( \"testDone\" ),\n\n\t// moduleStart: { name }\n\tmoduleStart: registerLoggingCallback( \"moduleStart\" ),\n\n\t// moduleDone: { name, failed, passed, total }\n\tmoduleDone: registerLoggingCallback( \"moduleDone\" )\n});\n\nif ( typeof document === \"undefined\" || document.readyState === \"complete\" ) {\n\tconfig.autorun = true;\n}\n\nQUnit.load = function() {\n\trunLoggingCallbacks( \"begin\", QUnit, {} );\n\n\t// Initialize the config, saving the execution queue\n\tvar banner, filter, i, label, len, main, ol, toolbar, userAgent, val, urlConfigCheckboxes, moduleFilter,\n\t    numModules = 0,\n\t    moduleFilterHtml = \"\",\n\t\turlConfigHtml = \"\",\n\t\toldconfig = extend( {}, config );\n\n\tQUnit.init();\n\textend(config, oldconfig);\n\n\tconfig.blocking = false;\n\n\tlen = config.urlConfig.length;\n\n\tfor ( i = 0; i < len; i++ ) {\n\t\tval = config.urlConfig[i];\n\t\tif ( typeof val === \"string\" ) {\n\t\t\tval = {\n\t\t\t\tid: val,\n\t\t\t\tlabel: val,\n\t\t\t\ttooltip: \"[no tooltip available]\"\n\t\t\t};\n\t\t}\n\t\tconfig[ val.id ] = QUnit.urlParams[ val.id ];\n\t\turlConfigHtml += \"<input id='qunit-urlconfig-\" + val.id + \"' name='\" + val.id + \"' type='checkbox'\" + ( config[ val.id ] ? \" checked='checked'\" : \"\" ) + \" title='\" + val.tooltip + \"'><label for='qunit-urlconfig-\" + val.id + \"' title='\" + val.tooltip + \"'>\" + val.label + \"</label>\";\n\t}\n\n\tmoduleFilterHtml += \"<label for='qunit-modulefilter'>Module: </label><select id='qunit-modulefilter' name='modulefilter'><option value='' \" + ( config.module === undefined  ? \"selected\" : \"\" ) + \">< All Modules ></option>\";\n\tfor ( i in config.modules ) {\n\t\tif ( config.modules.hasOwnProperty( i ) ) {\n\t\t\tnumModules += 1;\n\t\t\tmoduleFilterHtml += \"<option value='\" + encodeURIComponent(i) + \"' \" + ( config.module === i ? \"selected\" : \"\" ) + \">\" + i + \"</option>\";\n\t\t}\n\t}\n\tmoduleFilterHtml += \"</select>\";\n\n\t// `userAgent` initialized at top of scope\n\tuserAgent = id( \"qunit-userAgent\" );\n\tif ( userAgent ) {\n\t\tuserAgent.innerHTML = navigator.userAgent;\n\t}\n\n\t// `banner` initialized at top of scope\n\tbanner = id( \"qunit-header\" );\n\tif ( banner ) {\n\t\tbanner.innerHTML = \"<a href='\" + QUnit.url({ filter: undefined, module: undefined, testNumber: undefined }) + \"'>\" + banner.innerHTML + \"</a> \";\n\t}\n\n\t// `toolbar` initialized at top of scope\n\ttoolbar = id( \"qunit-testrunner-toolbar\" );\n\tif ( toolbar ) {\n\t\t// `filter` initialized at top of scope\n\t\tfilter = document.createElement( \"input\" );\n\t\tfilter.type = \"checkbox\";\n\t\tfilter.id = \"qunit-filter-pass\";\n\n\t\taddEvent( filter, \"click\", function() {\n\t\t\tvar tmp,\n\t\t\t\tol = document.getElementById( \"qunit-tests\" );\n\n\t\t\tif ( filter.checked ) {\n\t\t\t\tol.className = ol.className + \" hidepass\";\n\t\t\t} else {\n\t\t\t\ttmp = \" \" + ol.className.replace( /[\\n\\t\\r]/g, \" \" ) + \" \";\n\t\t\t\tol.className = tmp.replace( / hidepass /, \" \" );\n\t\t\t}\n\t\t\tif ( defined.sessionStorage ) {\n\t\t\t\tif (filter.checked) {\n\t\t\t\t\tsessionStorage.setItem( \"qunit-filter-passed-tests\", \"true\" );\n\t\t\t\t} else {\n\t\t\t\t\tsessionStorage.removeItem( \"qunit-filter-passed-tests\" );\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\tif ( config.hidepassed || defined.sessionStorage && sessionStorage.getItem( \"qunit-filter-passed-tests\" ) ) {\n\t\t\tfilter.checked = true;\n\t\t\t// `ol` initialized at top of scope\n\t\t\tol = document.getElementById( \"qunit-tests\" );\n\t\t\tol.className = ol.className + \" hidepass\";\n\t\t}\n\t\ttoolbar.appendChild( filter );\n\n\t\t// `label` initialized at top of scope\n\t\tlabel = document.createElement( \"label\" );\n\t\tlabel.setAttribute( \"for\", \"qunit-filter-pass\" );\n\t\tlabel.setAttribute( \"title\", \"Only show tests and assertons that fail. Stored in sessionStorage.\" );\n\t\tlabel.innerHTML = \"Hide passed tests\";\n\t\ttoolbar.appendChild( label );\n\n\t\turlConfigCheckboxes = document.createElement( 'span' );\n\t\turlConfigCheckboxes.innerHTML = urlConfigHtml;\n\t\taddEvent( urlConfigCheckboxes, \"change\", function( event ) {\n\t\t\tvar params = {};\n\t\t\tparams[ event.target.name ] = event.target.checked ? true : undefined;\n\t\t\twindow.location = QUnit.url( params );\n\t\t});\n\t\ttoolbar.appendChild( urlConfigCheckboxes );\n\n\t\tif (numModules > 1) {\n\t\t\tmoduleFilter = document.createElement( 'span' );\n\t\t\tmoduleFilter.setAttribute( 'id', 'qunit-modulefilter-container' );\n\t\t\tmoduleFilter.innerHTML = moduleFilterHtml;\n\t\t\taddEvent( moduleFilter, \"change\", function() {\n\t\t\t\tvar selectBox = moduleFilter.getElementsByTagName(\"select\")[0],\n\t\t\t\t    selectedModule = decodeURIComponent(selectBox.options[selectBox.selectedIndex].value);\n\n\t\t\t\twindow.location = QUnit.url( { module: ( selectedModule === \"\" ) ? undefined : selectedModule } );\n\t\t\t});\n\t\t\ttoolbar.appendChild(moduleFilter);\n\t\t}\n\t}\n\n\t// `main` initialized at top of scope\n\tmain = id( \"qunit-fixture\" );\n\tif ( main ) {\n\t\tconfig.fixture = main.innerHTML;\n\t}\n\n\tif ( config.autostart ) {\n\t\tQUnit.start();\n\t}\n};\n\naddEvent( window, \"load\", QUnit.load );\n\n// `onErrorFnPrev` initialized at top of scope\n// Preserve other handlers\nonErrorFnPrev = window.onerror;\n\n// Cover uncaught exceptions\n// Returning true will surpress the default browser handler,\n// returning false will let it run.\nwindow.onerror = function ( error, filePath, linerNr ) {\n\tvar ret = false;\n\tif ( onErrorFnPrev ) {\n\t\tret = onErrorFnPrev( error, filePath, linerNr );\n\t}\n\n\t// Treat return value as window.onerror itself does,\n\t// Only do our handling if not surpressed.\n\tif ( ret !== true ) {\n\t\tif ( QUnit.config.current ) {\n\t\t\tif ( QUnit.config.current.ignoreGlobalErrors ) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t\tQUnit.pushFailure( error, filePath + \":\" + linerNr );\n\t\t} else {\n\t\t\tQUnit.test( \"global failure\", extend( function() {\n\t\t\t\tQUnit.pushFailure( error, filePath + \":\" + linerNr );\n\t\t\t}, { validTest: validTest } ) );\n\t\t}\n\t\treturn false;\n\t}\n\n\treturn ret;\n};\n\nfunction done() {\n\tconfig.autorun = true;\n\n\t// Log the last module results\n\tif ( config.currentModule ) {\n\t\trunLoggingCallbacks( \"moduleDone\", QUnit, {\n\t\t\tname: config.currentModule,\n\t\t\tfailed: config.moduleStats.bad,\n\t\t\tpassed: config.moduleStats.all - config.moduleStats.bad,\n\t\t\ttotal: config.moduleStats.all\n\t\t});\n\t}\n\n\tvar i, key,\n\t\tbanner = id( \"qunit-banner\" ),\n\t\ttests = id( \"qunit-tests\" ),\n\t\truntime = +new Date() - config.started,\n\t\tpassed = config.stats.all - config.stats.bad,\n\t\thtml = [\n\t\t\t\"Tests completed in \",\n\t\t\truntime,\n\t\t\t\" milliseconds.<br/>\",\n\t\t\t\"<span class='passed'>\",\n\t\t\tpassed,\n\t\t\t\"</span> tests of <span class='total'>\",\n\t\t\tconfig.stats.all,\n\t\t\t\"</span> passed, <span class='failed'>\",\n\t\t\tconfig.stats.bad,\n\t\t\t\"</span> failed.\"\n\t\t].join( \"\" );\n\n\tif ( banner ) {\n\t\tbanner.className = ( config.stats.bad ? \"qunit-fail\" : \"qunit-pass\" );\n\t}\n\n\tif ( tests ) {\n\t\tid( \"qunit-testresult\" ).innerHTML = html;\n\t}\n\n\tif ( config.altertitle && typeof document !== \"undefined\" && document.title ) {\n\t\t// show ✖ for good, ✔ for bad suite result in title\n\t\t// use escape sequences in case file gets loaded with non-utf-8-charset\n\t\tdocument.title = [\n\t\t\t( config.stats.bad ? \"\\u2716\" : \"\\u2714\" ),\n\t\t\tdocument.title.replace( /^[\\u2714\\u2716] /i, \"\" )\n\t\t].join( \" \" );\n\t}\n\n\t// clear own sessionStorage items if all tests passed\n\tif ( config.reorder && defined.sessionStorage && config.stats.bad === 0 ) {\n\t\t// `key` & `i` initialized at top of scope\n\t\tfor ( i = 0; i < sessionStorage.length; i++ ) {\n\t\t\tkey = sessionStorage.key( i++ );\n\t\t\tif ( key.indexOf( \"qunit-test-\" ) === 0 ) {\n\t\t\t\tsessionStorage.removeItem( key );\n\t\t\t}\n\t\t}\n\t}\n\n\t// scroll back to top to show results\n\tif ( window.scrollTo ) {\n\t\twindow.scrollTo(0, 0);\n\t}\n\n\trunLoggingCallbacks( \"done\", QUnit, {\n\t\tfailed: config.stats.bad,\n\t\tpassed: passed,\n\t\ttotal: config.stats.all,\n\t\truntime: runtime\n\t});\n}\n\n/** @return Boolean: true if this test should be ran */\nfunction validTest( test ) {\n\tvar include,\n\t\tfilter = config.filter && config.filter.toLowerCase(),\n\t\tmodule = config.module && config.module.toLowerCase(),\n\t\tfullName = (test.module + \": \" + test.testName).toLowerCase();\n\n\t// Internally-generated tests are always valid\n\tif ( test.callback && test.callback.validTest === validTest ) {\n\t\tdelete test.callback.validTest;\n\t\treturn true;\n\t}\n\n\tif ( config.testNumber ) {\n\t\treturn test.testNumber === config.testNumber;\n\t}\n\n\tif ( module && ( !test.module || test.module.toLowerCase() !== module ) ) {\n\t\treturn false;\n\t}\n\n\tif ( !filter ) {\n\t\treturn true;\n\t}\n\n\tinclude = filter.charAt( 0 ) !== \"!\";\n\tif ( !include ) {\n\t\tfilter = filter.slice( 1 );\n\t}\n\n\t// If the filter matches, we need to honour include\n\tif ( fullName.indexOf( filter ) !== -1 ) {\n\t\treturn include;\n\t}\n\n\t// Otherwise, do the opposite\n\treturn !include;\n}\n\n// so far supports only Firefox, Chrome and Opera (buggy), Safari (for real exceptions)\n// Later Safari and IE10 are supposed to support error.stack as well\n// See also https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Error/Stack\nfunction extractStacktrace( e, offset ) {\n\toffset = offset === undefined ? 3 : offset;\n\n\tvar stack, include, i, regex;\n\n\tif ( e.stacktrace ) {\n\t\t// Opera\n\t\treturn e.stacktrace.split( \"\\n\" )[ offset + 3 ];\n\t} else if ( e.stack ) {\n\t\t// Firefox, Chrome\n\t\tstack = e.stack.split( \"\\n\" );\n\t\tif (/^error$/i.test( stack[0] ) ) {\n\t\t\tstack.shift();\n\t\t}\n\t\tif ( fileName ) {\n\t\t\tinclude = [];\n\t\t\tfor ( i = offset; i < stack.length; i++ ) {\n\t\t\t\tif ( stack[ i ].indexOf( fileName ) != -1 ) {\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tinclude.push( stack[ i ] );\n\t\t\t}\n\t\t\tif ( include.length ) {\n\t\t\t\treturn include.join( \"\\n\" );\n\t\t\t}\n\t\t}\n\t\treturn stack[ offset ];\n\t} else if ( e.sourceURL ) {\n\t\t// Safari, PhantomJS\n\t\t// hopefully one day Safari provides actual stacktraces\n\t\t// exclude useless self-reference for generated Error objects\n\t\tif ( /qunit.js$/.test( e.sourceURL ) ) {\n\t\t\treturn;\n\t\t}\n\t\t// for actual exceptions, this is useful\n\t\treturn e.sourceURL + \":\" + e.line;\n\t}\n}\nfunction sourceFromStacktrace( offset ) {\n\ttry {\n\t\tthrow new Error();\n\t} catch ( e ) {\n\t\treturn extractStacktrace( e, offset );\n\t}\n}\n\nfunction escapeInnerText( s ) {\n\tif ( !s ) {\n\t\treturn \"\";\n\t}\n\ts = s + \"\";\n\treturn s.replace( /[\\&<>]/g, function( s ) {\n\t\tswitch( s ) {\n\t\t\tcase \"&\": return \"&amp;\";\n\t\t\tcase \"<\": return \"&lt;\";\n\t\t\tcase \">\": return \"&gt;\";\n\t\t\tdefault: return s;\n\t\t}\n\t});\n}\n\nfunction synchronize( callback, last ) {\n\tconfig.queue.push( callback );\n\n\tif ( config.autorun && !config.blocking ) {\n\t\tprocess( last );\n\t}\n}\n\nfunction process( last ) {\n\tfunction next() {\n\t\tprocess( last );\n\t}\n\tvar start = new Date().getTime();\n\tconfig.depth = config.depth ? config.depth + 1 : 1;\n\n\twhile ( config.queue.length && !config.blocking ) {\n\t\tif ( !defined.setTimeout || config.updateRate <= 0 || ( ( new Date().getTime() - start ) < config.updateRate ) ) {\n\t\t\tconfig.queue.shift()();\n\t\t} else {\n\t\t\twindow.setTimeout( next, 13 );\n\t\t\tbreak;\n\t\t}\n\t}\n\tconfig.depth--;\n\tif ( last && !config.blocking && !config.queue.length && config.depth === 0 ) {\n\t\tdone();\n\t}\n}\n\nfunction saveGlobal() {\n\tconfig.pollution = [];\n\n\tif ( config.noglobals ) {\n\t\tfor ( var key in window ) {\n\t\t\t// in Opera sometimes DOM element ids show up here, ignore them\n\t\t\tif ( !hasOwn.call( window, key ) || /^qunit-test-output/.test( key ) ) {\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tconfig.pollution.push( key );\n\t\t}\n\t}\n}\n\nfunction checkPollution( name ) {\n\tvar newGlobals,\n\t\tdeletedGlobals,\n\t\told = config.pollution;\n\n\tsaveGlobal();\n\n\tnewGlobals = diff( config.pollution, old );\n\tif ( newGlobals.length > 0 ) {\n\t\tQUnit.pushFailure( \"Introduced global variable(s): \" + newGlobals.join(\", \") );\n\t}\n\n\tdeletedGlobals = diff( old, config.pollution );\n\tif ( deletedGlobals.length > 0 ) {\n\t\tQUnit.pushFailure( \"Deleted global variable(s): \" + deletedGlobals.join(\", \") );\n\t}\n}\n\n// returns a new Array with the elements that are in a but not in b\nfunction diff( a, b ) {\n\tvar i, j,\n\t\tresult = a.slice();\n\n\tfor ( i = 0; i < result.length; i++ ) {\n\t\tfor ( j = 0; j < b.length; j++ ) {\n\t\t\tif ( result[i] === b[j] ) {\n\t\t\t\tresult.splice( i, 1 );\n\t\t\t\ti--;\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\treturn result;\n}\n\nfunction extend( a, b ) {\n\tfor ( var prop in b ) {\n\t\tif ( b[ prop ] === undefined ) {\n\t\t\tdelete a[ prop ];\n\n\t\t// Avoid \"Member not found\" error in IE8 caused by setting window.constructor\n\t\t} else if ( prop !== \"constructor\" || a !== window ) {\n\t\t\ta[ prop ] = b[ prop ];\n\t\t}\n\t}\n\n\treturn a;\n}\n\nfunction addEvent( elem, type, fn ) {\n\tif ( elem.addEventListener ) {\n\t\telem.addEventListener( type, fn, false );\n\t} else if ( elem.attachEvent ) {\n\t\telem.attachEvent( \"on\" + type, fn );\n\t} else {\n\t\tfn();\n\t}\n}\n\nfunction id( name ) {\n\treturn !!( typeof document !== \"undefined\" && document && document.getElementById ) &&\n\t\tdocument.getElementById( name );\n}\n\nfunction registerLoggingCallback( key ) {\n\treturn function( callback ) {\n\t\tconfig[key].push( callback );\n\t};\n}\n\n// Supports deprecated method of completely overwriting logging callbacks\nfunction runLoggingCallbacks( key, scope, args ) {\n\t//debugger;\n\tvar i, callbacks;\n\tif ( QUnit.hasOwnProperty( key ) ) {\n\t\tQUnit[ key ].call(scope, args );\n\t} else {\n\t\tcallbacks = config[ key ];\n\t\tfor ( i = 0; i < callbacks.length; i++ ) {\n\t\t\tcallbacks[ i ].call( scope, args );\n\t\t}\n\t}\n}\n\n// Test for equality any JavaScript type.\n// Author: Philippe Rathé <prathe@gmail.com>\nQUnit.equiv = (function() {\n\n\t// Call the o related callback with the given arguments.\n\tfunction bindCallbacks( o, callbacks, args ) {\n\t\tvar prop = QUnit.objectType( o );\n\t\tif ( prop ) {\n\t\t\tif ( QUnit.objectType( callbacks[ prop ] ) === \"function\" ) {\n\t\t\t\treturn callbacks[ prop ].apply( callbacks, args );\n\t\t\t} else {\n\t\t\t\treturn callbacks[ prop ]; // or undefined\n\t\t\t}\n\t\t}\n\t}\n\n\t// the real equiv function\n\tvar innerEquiv,\n\t\t// stack to decide between skip/abort functions\n\t\tcallers = [],\n\t\t// stack to avoiding loops from circular referencing\n\t\tparents = [],\n\n\t\tgetProto = Object.getPrototypeOf || function ( obj ) {\n\t\t\treturn obj.__proto__;\n\t\t},\n\t\tcallbacks = (function () {\n\n\t\t\t// for string, boolean, number and null\n\t\t\tfunction useStrictEquality( b, a ) {\n\t\t\t\tif ( b instanceof a.constructor || a instanceof b.constructor ) {\n\t\t\t\t\t// to catch short annotaion VS 'new' annotation of a\n\t\t\t\t\t// declaration\n\t\t\t\t\t// e.g. var i = 1;\n\t\t\t\t\t// var j = new Number(1);\n\t\t\t\t\treturn a == b;\n\t\t\t\t} else {\n\t\t\t\t\treturn a === b;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn {\n\t\t\t\t\"string\": useStrictEquality,\n\t\t\t\t\"boolean\": useStrictEquality,\n\t\t\t\t\"number\": useStrictEquality,\n\t\t\t\t\"null\": useStrictEquality,\n\t\t\t\t\"undefined\": useStrictEquality,\n\n\t\t\t\t\"nan\": function( b ) {\n\t\t\t\t\treturn isNaN( b );\n\t\t\t\t},\n\n\t\t\t\t\"date\": function( b, a ) {\n\t\t\t\t\treturn QUnit.objectType( b ) === \"date\" && a.valueOf() === b.valueOf();\n\t\t\t\t},\n\n\t\t\t\t\"regexp\": function( b, a ) {\n\t\t\t\t\treturn QUnit.objectType( b ) === \"regexp\" &&\n\t\t\t\t\t\t// the regex itself\n\t\t\t\t\t\ta.source === b.source &&\n\t\t\t\t\t\t// and its modifers\n\t\t\t\t\t\ta.global === b.global &&\n\t\t\t\t\t\t// (gmi) ...\n\t\t\t\t\t\ta.ignoreCase === b.ignoreCase &&\n\t\t\t\t\t\ta.multiline === b.multiline &&\n\t\t\t\t\t\ta.sticky === b.sticky;\n\t\t\t\t},\n\n\t\t\t\t// - skip when the property is a method of an instance (OOP)\n\t\t\t\t// - abort otherwise,\n\t\t\t\t// initial === would have catch identical references anyway\n\t\t\t\t\"function\": function() {\n\t\t\t\t\tvar caller = callers[callers.length - 1];\n\t\t\t\t\treturn caller !== Object && typeof caller !== \"undefined\";\n\t\t\t\t},\n\n\t\t\t\t\"array\": function( b, a ) {\n\t\t\t\t\tvar i, j, len, loop;\n\n\t\t\t\t\t// b could be an object literal here\n\t\t\t\t\tif ( QUnit.objectType( b ) !== \"array\" ) {\n\t\t\t\t\t\treturn false;\n\t\t\t\t\t}\n\n\t\t\t\t\tlen = a.length;\n\t\t\t\t\tif ( len !== b.length ) {\n\t\t\t\t\t\t// safe and faster\n\t\t\t\t\t\treturn false;\n\t\t\t\t\t}\n\n\t\t\t\t\t// track reference to avoid circular references\n\t\t\t\t\tparents.push( a );\n\t\t\t\t\tfor ( i = 0; i < len; i++ ) {\n\t\t\t\t\t\tloop = false;\n\t\t\t\t\t\tfor ( j = 0; j < parents.length; j++ ) {\n\t\t\t\t\t\t\tif ( parents[j] === a[i] ) {\n\t\t\t\t\t\t\t\tloop = true;// dont rewalk array\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif ( !loop && !innerEquiv(a[i], b[i]) ) {\n\t\t\t\t\t\t\tparents.pop();\n\t\t\t\t\t\t\treturn false;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tparents.pop();\n\t\t\t\t\treturn true;\n\t\t\t\t},\n\n\t\t\t\t\"object\": function( b, a ) {\n\t\t\t\t\tvar i, j, loop,\n\t\t\t\t\t\t// Default to true\n\t\t\t\t\t\teq = true,\n\t\t\t\t\t\taProperties = [],\n\t\t\t\t\t\tbProperties = [];\n\n\t\t\t\t\t// comparing constructors is more strict than using\n\t\t\t\t\t// instanceof\n\t\t\t\t\tif ( a.constructor !== b.constructor ) {\n\t\t\t\t\t\t// Allow objects with no prototype to be equivalent to\n\t\t\t\t\t\t// objects with Object as their constructor.\n\t\t\t\t\t\tif ( !(( getProto(a) === null && getProto(b) === Object.prototype ) ||\n\t\t\t\t\t\t\t( getProto(b) === null && getProto(a) === Object.prototype ) ) ) {\n\t\t\t\t\t\t\t\treturn false;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\t// stack constructor before traversing properties\n\t\t\t\t\tcallers.push( a.constructor );\n\t\t\t\t\t// track reference to avoid circular references\n\t\t\t\t\tparents.push( a );\n\n\t\t\t\t\tfor ( i in a ) { // be strict: don't ensures hasOwnProperty\n\t\t\t\t\t\t\t\t\t// and go deep\n\t\t\t\t\t\tloop = false;\n\t\t\t\t\t\tfor ( j = 0; j < parents.length; j++ ) {\n\t\t\t\t\t\t\tif ( parents[j] === a[i] ) {\n\t\t\t\t\t\t\t\t// don't go down the same path twice\n\t\t\t\t\t\t\t\tloop = true;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\taProperties.push(i); // collect a's properties\n\n\t\t\t\t\t\tif (!loop && !innerEquiv( a[i], b[i] ) ) {\n\t\t\t\t\t\t\teq = false;\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\tcallers.pop(); // unstack, we are done\n\t\t\t\t\tparents.pop();\n\n\t\t\t\t\tfor ( i in b ) {\n\t\t\t\t\t\tbProperties.push( i ); // collect b's properties\n\t\t\t\t\t}\n\n\t\t\t\t\t// Ensures identical properties name\n\t\t\t\t\treturn eq && innerEquiv( aProperties.sort(), bProperties.sort() );\n\t\t\t\t}\n\t\t\t};\n\t\t}());\n\n\tinnerEquiv = function() { // can take multiple arguments\n\t\tvar args = [].slice.apply( arguments );\n\t\tif ( args.length < 2 ) {\n\t\t\treturn true; // end transition\n\t\t}\n\n\t\treturn (function( a, b ) {\n\t\t\tif ( a === b ) {\n\t\t\t\treturn true; // catch the most you can\n\t\t\t} else if ( a === null || b === null || typeof a === \"undefined\" ||\n\t\t\t\t\ttypeof b === \"undefined\" ||\n\t\t\t\t\tQUnit.objectType(a) !== QUnit.objectType(b) ) {\n\t\t\t\treturn false; // don't lose time with error prone cases\n\t\t\t} else {\n\t\t\t\treturn bindCallbacks(a, callbacks, [ b, a ]);\n\t\t\t}\n\n\t\t\t// apply transition with (1..n) arguments\n\t\t}( args[0], args[1] ) && arguments.callee.apply( this, args.splice(1, args.length - 1 )) );\n\t};\n\n\treturn innerEquiv;\n}());\n\n/**\n * jsDump Copyright (c) 2008 Ariel Flesler - aflesler(at)gmail(dot)com |\n * http://flesler.blogspot.com Licensed under BSD\n * (http://www.opensource.org/licenses/bsd-license.php) Date: 5/15/2008\n *\n * @projectDescription Advanced and extensible data dumping for Javascript.\n * @version 1.0.0\n * @author Ariel Flesler\n * @link {http://flesler.blogspot.com/2008/05/jsdump-pretty-dump-of-any-javascript.html}\n */\nQUnit.jsDump = (function() {\n\tfunction quote( str ) {\n\t\treturn '\"' + str.toString().replace( /\"/g, '\\\\\"' ) + '\"';\n\t}\n\tfunction literal( o ) {\n\t\treturn o + \"\";\n\t}\n\tfunction join( pre, arr, post ) {\n\t\tvar s = jsDump.separator(),\n\t\t\tbase = jsDump.indent(),\n\t\t\tinner = jsDump.indent(1);\n\t\tif ( arr.join ) {\n\t\t\tarr = arr.join( \",\" + s + inner );\n\t\t}\n\t\tif ( !arr ) {\n\t\t\treturn pre + post;\n\t\t}\n\t\treturn [ pre, inner + arr, base + post ].join(s);\n\t}\n\tfunction array( arr, stack ) {\n\t\tvar i = arr.length, ret = new Array(i);\n\t\tthis.up();\n\t\twhile ( i-- ) {\n\t\t\tret[i] = this.parse( arr[i] , undefined , stack);\n\t\t}\n\t\tthis.down();\n\t\treturn join( \"[\", ret, \"]\" );\n\t}\n\n\tvar reName = /^function (\\w+)/,\n\t\tjsDump = {\n\t\t\tparse: function( obj, type, stack ) { //type is used mostly internally, you can fix a (custom)type in advance\n\t\t\t\tstack = stack || [ ];\n\t\t\t\tvar inStack, res,\n\t\t\t\t\tparser = this.parsers[ type || this.typeOf(obj) ];\n\n\t\t\t\ttype = typeof parser;\n\t\t\t\tinStack = inArray( obj, stack );\n\n\t\t\t\tif ( inStack != -1 ) {\n\t\t\t\t\treturn \"recursion(\" + (inStack - stack.length) + \")\";\n\t\t\t\t}\n\t\t\t\t//else\n\t\t\t\tif ( type == \"function\" )  {\n\t\t\t\t\tstack.push( obj );\n\t\t\t\t\tres = parser.call( this, obj, stack );\n\t\t\t\t\tstack.pop();\n\t\t\t\t\treturn res;\n\t\t\t\t}\n\t\t\t\t// else\n\t\t\t\treturn ( type == \"string\" ) ? parser : this.parsers.error;\n\t\t\t},\n\t\t\ttypeOf: function( obj ) {\n\t\t\t\tvar type;\n\t\t\t\tif ( obj === null ) {\n\t\t\t\t\ttype = \"null\";\n\t\t\t\t} else if ( typeof obj === \"undefined\" ) {\n\t\t\t\t\ttype = \"undefined\";\n\t\t\t\t} else if ( QUnit.is( \"regexp\", obj) ) {\n\t\t\t\t\ttype = \"regexp\";\n\t\t\t\t} else if ( QUnit.is( \"date\", obj) ) {\n\t\t\t\t\ttype = \"date\";\n\t\t\t\t} else if ( QUnit.is( \"function\", obj) ) {\n\t\t\t\t\ttype = \"function\";\n\t\t\t\t} else if ( typeof obj.setInterval !== undefined && typeof obj.document !== \"undefined\" && typeof obj.nodeType === \"undefined\" ) {\n\t\t\t\t\ttype = \"window\";\n\t\t\t\t} else if ( obj.nodeType === 9 ) {\n\t\t\t\t\ttype = \"document\";\n\t\t\t\t} else if ( obj.nodeType ) {\n\t\t\t\t\ttype = \"node\";\n\t\t\t\t} else if (\n\t\t\t\t\t// native arrays\n\t\t\t\t\ttoString.call( obj ) === \"[object Array]\" ||\n\t\t\t\t\t// NodeList objects\n\t\t\t\t\t( typeof obj.length === \"number\" && typeof obj.item !== \"undefined\" && ( obj.length ? obj.item(0) === obj[0] : ( obj.item( 0 ) === null && typeof obj[0] === \"undefined\" ) ) )\n\t\t\t\t) {\n\t\t\t\t\ttype = \"array\";\n\t\t\t\t} else {\n\t\t\t\t\ttype = typeof obj;\n\t\t\t\t}\n\t\t\t\treturn type;\n\t\t\t},\n\t\t\tseparator: function() {\n\t\t\t\treturn this.multiline ?\tthis.HTML ? \"<br />\" : \"\\n\" : this.HTML ? \"&nbsp;\" : \" \";\n\t\t\t},\n\t\t\tindent: function( extra ) {// extra can be a number, shortcut for increasing-calling-decreasing\n\t\t\t\tif ( !this.multiline ) {\n\t\t\t\t\treturn \"\";\n\t\t\t\t}\n\t\t\t\tvar chr = this.indentChar;\n\t\t\t\tif ( this.HTML ) {\n\t\t\t\t\tchr = chr.replace( /\\t/g, \"   \" ).replace( / /g, \"&nbsp;\" );\n\t\t\t\t}\n\t\t\t\treturn new Array( this._depth_ + (extra||0) ).join(chr);\n\t\t\t},\n\t\t\tup: function( a ) {\n\t\t\t\tthis._depth_ += a || 1;\n\t\t\t},\n\t\t\tdown: function( a ) {\n\t\t\t\tthis._depth_ -= a || 1;\n\t\t\t},\n\t\t\tsetParser: function( name, parser ) {\n\t\t\t\tthis.parsers[name] = parser;\n\t\t\t},\n\t\t\t// The next 3 are exposed so you can use them\n\t\t\tquote: quote,\n\t\t\tliteral: literal,\n\t\t\tjoin: join,\n\t\t\t//\n\t\t\t_depth_: 1,\n\t\t\t// This is the list of parsers, to modify them, use jsDump.setParser\n\t\t\tparsers: {\n\t\t\t\twindow: \"[Window]\",\n\t\t\t\tdocument: \"[Document]\",\n\t\t\t\terror: \"[ERROR]\", //when no parser is found, shouldn\"t happen\n\t\t\t\tunknown: \"[Unknown]\",\n\t\t\t\t\"null\": \"null\",\n\t\t\t\t\"undefined\": \"undefined\",\n\t\t\t\t\"function\": function( fn ) {\n\t\t\t\t\tvar ret = \"function\",\n\t\t\t\t\t\tname = \"name\" in fn ? fn.name : (reName.exec(fn) || [])[1];//functions never have name in IE\n\n\t\t\t\t\tif ( name ) {\n\t\t\t\t\t\tret += \" \" + name;\n\t\t\t\t\t}\n\t\t\t\t\tret += \"( \";\n\n\t\t\t\t\tret = [ ret, QUnit.jsDump.parse( fn, \"functionArgs\" ), \"){\" ].join( \"\" );\n\t\t\t\t\treturn join( ret, QUnit.jsDump.parse(fn,\"functionCode\" ), \"}\" );\n\t\t\t\t},\n\t\t\t\tarray: array,\n\t\t\t\tnodelist: array,\n\t\t\t\t\"arguments\": array,\n\t\t\t\tobject: function( map, stack ) {\n\t\t\t\t\tvar ret = [ ], keys, key, val, i;\n\t\t\t\t\tQUnit.jsDump.up();\n\t\t\t\t\tif ( Object.keys ) {\n\t\t\t\t\t\tkeys = Object.keys( map );\n\t\t\t\t\t} else {\n\t\t\t\t\t\tkeys = [];\n\t\t\t\t\t\tfor ( key in map ) {\n\t\t\t\t\t\t\tkeys.push( key );\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tkeys.sort();\n\t\t\t\t\tfor ( i = 0; i < keys.length; i++ ) {\n\t\t\t\t\t\tkey = keys[ i ];\n\t\t\t\t\t\tval = map[ key ];\n\t\t\t\t\t\tret.push( QUnit.jsDump.parse( key, \"key\" ) + \": \" + QUnit.jsDump.parse( val, undefined, stack ) );\n\t\t\t\t\t}\n\t\t\t\t\tQUnit.jsDump.down();\n\t\t\t\t\treturn join( \"{\", ret, \"}\" );\n\t\t\t\t},\n\t\t\t\tnode: function( node ) {\n\t\t\t\t\tvar a, val,\n\t\t\t\t\t\topen = QUnit.jsDump.HTML ? \"&lt;\" : \"<\",\n\t\t\t\t\t\tclose = QUnit.jsDump.HTML ? \"&gt;\" : \">\",\n\t\t\t\t\t\ttag = node.nodeName.toLowerCase(),\n\t\t\t\t\t\tret = open + tag;\n\n\t\t\t\t\tfor ( a in QUnit.jsDump.DOMAttrs ) {\n\t\t\t\t\t\tval = node[ QUnit.jsDump.DOMAttrs[a] ];\n\t\t\t\t\t\tif ( val ) {\n\t\t\t\t\t\t\tret += \" \" + a + \"=\" + QUnit.jsDump.parse( val, \"attribute\" );\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\treturn ret + close + open + \"/\" + tag + close;\n\t\t\t\t},\n\t\t\t\tfunctionArgs: function( fn ) {//function calls it internally, it's the arguments part of the function\n\t\t\t\t\tvar args,\n\t\t\t\t\t\tl = fn.length;\n\n\t\t\t\t\tif ( !l ) {\n\t\t\t\t\t\treturn \"\";\n\t\t\t\t\t}\n\n\t\t\t\t\targs = new Array(l);\n\t\t\t\t\twhile ( l-- ) {\n\t\t\t\t\t\targs[l] = String.fromCharCode(97+l);//97 is 'a'\n\t\t\t\t\t}\n\t\t\t\t\treturn \" \" + args.join( \", \" ) + \" \";\n\t\t\t\t},\n\t\t\t\tkey: quote, //object calls it internally, the key part of an item in a map\n\t\t\t\tfunctionCode: \"[code]\", //function calls it internally, it's the content of the function\n\t\t\t\tattribute: quote, //node calls it internally, it's an html attribute value\n\t\t\t\tstring: quote,\n\t\t\t\tdate: quote,\n\t\t\t\tregexp: literal, //regex\n\t\t\t\tnumber: literal,\n\t\t\t\t\"boolean\": literal\n\t\t\t},\n\t\t\tDOMAttrs: {\n\t\t\t\t//attributes to dump from nodes, name=>realName\n\t\t\t\tid: \"id\",\n\t\t\t\tname: \"name\",\n\t\t\t\t\"class\": \"className\"\n\t\t\t},\n\t\t\tHTML: false,//if true, entities are escaped ( <, >, \\t, space and \\n )\n\t\t\tindentChar: \"  \",//indentation unit\n\t\t\tmultiline: true //if true, items in a collection, are separated by a \\n, else just a space.\n\t\t};\n\n\treturn jsDump;\n}());\n\n// from Sizzle.js\nfunction getText( elems ) {\n\tvar i, elem,\n\t\tret = \"\";\n\n\tfor ( i = 0; elems[i]; i++ ) {\n\t\telem = elems[i];\n\n\t\t// Get the text from text nodes and CDATA nodes\n\t\tif ( elem.nodeType === 3 || elem.nodeType === 4 ) {\n\t\t\tret += elem.nodeValue;\n\n\t\t// Traverse everything else, except comment nodes\n\t\t} else if ( elem.nodeType !== 8 ) {\n\t\t\tret += getText( elem.childNodes );\n\t\t}\n\t}\n\n\treturn ret;\n}\n\n// from jquery.js\nfunction inArray( elem, array ) {\n\tif ( array.indexOf ) {\n\t\treturn array.indexOf( elem );\n\t}\n\n\tfor ( var i = 0, length = array.length; i < length; i++ ) {\n\t\tif ( array[ i ] === elem ) {\n\t\t\treturn i;\n\t\t}\n\t}\n\n\treturn -1;\n}\n\n/*\n * Javascript Diff Algorithm\n *  By John Resig (http://ejohn.org/)\n *  Modified by Chu Alan \"sprite\"\n *\n * Released under the MIT license.\n *\n * More Info:\n *  http://ejohn.org/projects/javascript-diff-algorithm/\n *\n * Usage: QUnit.diff(expected, actual)\n *\n * QUnit.diff( \"the quick brown fox jumped over\", \"the quick fox jumps over\" ) == \"the  quick <del>brown </del> fox <del>jumped </del><ins>jumps </ins> over\"\n */\nQUnit.diff = (function() {\n\tfunction diff( o, n ) {\n\t\tvar i,\n\t\t\tns = {},\n\t\t\tos = {};\n\n\t\tfor ( i = 0; i < n.length; i++ ) {\n\t\t\tif ( ns[ n[i] ] == null ) {\n\t\t\t\tns[ n[i] ] = {\n\t\t\t\t\trows: [],\n\t\t\t\t\to: null\n\t\t\t\t};\n\t\t\t}\n\t\t\tns[ n[i] ].rows.push( i );\n\t\t}\n\n\t\tfor ( i = 0; i < o.length; i++ ) {\n\t\t\tif ( os[ o[i] ] == null ) {\n\t\t\t\tos[ o[i] ] = {\n\t\t\t\t\trows: [],\n\t\t\t\t\tn: null\n\t\t\t\t};\n\t\t\t}\n\t\t\tos[ o[i] ].rows.push( i );\n\t\t}\n\n\t\tfor ( i in ns ) {\n\t\t\tif ( !hasOwn.call( ns, i ) ) {\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tif ( ns[i].rows.length == 1 && typeof os[i] != \"undefined\" && os[i].rows.length == 1 ) {\n\t\t\t\tn[ ns[i].rows[0] ] = {\n\t\t\t\t\ttext: n[ ns[i].rows[0] ],\n\t\t\t\t\trow: os[i].rows[0]\n\t\t\t\t};\n\t\t\t\to[ os[i].rows[0] ] = {\n\t\t\t\t\ttext: o[ os[i].rows[0] ],\n\t\t\t\t\trow: ns[i].rows[0]\n\t\t\t\t};\n\t\t\t}\n\t\t}\n\n\t\tfor ( i = 0; i < n.length - 1; i++ ) {\n\t\t\tif ( n[i].text != null && n[ i + 1 ].text == null && n[i].row + 1 < o.length && o[ n[i].row + 1 ].text == null &&\n\t\t\t\t\t\tn[ i + 1 ] == o[ n[i].row + 1 ] ) {\n\n\t\t\t\tn[ i + 1 ] = {\n\t\t\t\t\ttext: n[ i + 1 ],\n\t\t\t\t\trow: n[i].row + 1\n\t\t\t\t};\n\t\t\t\to[ n[i].row + 1 ] = {\n\t\t\t\t\ttext: o[ n[i].row + 1 ],\n\t\t\t\t\trow: i + 1\n\t\t\t\t};\n\t\t\t}\n\t\t}\n\n\t\tfor ( i = n.length - 1; i > 0; i-- ) {\n\t\t\tif ( n[i].text != null && n[ i - 1 ].text == null && n[i].row > 0 && o[ n[i].row - 1 ].text == null &&\n\t\t\t\t\t\tn[ i - 1 ] == o[ n[i].row - 1 ]) {\n\n\t\t\t\tn[ i - 1 ] = {\n\t\t\t\t\ttext: n[ i - 1 ],\n\t\t\t\t\trow: n[i].row - 1\n\t\t\t\t};\n\t\t\t\to[ n[i].row - 1 ] = {\n\t\t\t\t\ttext: o[ n[i].row - 1 ],\n\t\t\t\t\trow: i - 1\n\t\t\t\t};\n\t\t\t}\n\t\t}\n\n\t\treturn {\n\t\t\to: o,\n\t\t\tn: n\n\t\t};\n\t}\n\n\treturn function( o, n ) {\n\t\to = o.replace( /\\s+$/, \"\" );\n\t\tn = n.replace( /\\s+$/, \"\" );\n\n\t\tvar i, pre,\n\t\t\tstr = \"\",\n\t\t\tout = diff( o === \"\" ? [] : o.split(/\\s+/), n === \"\" ? [] : n.split(/\\s+/) ),\n\t\t\toSpace = o.match(/\\s+/g),\n\t\t\tnSpace = n.match(/\\s+/g);\n\n\t\tif ( oSpace == null ) {\n\t\t\toSpace = [ \" \" ];\n\t\t}\n\t\telse {\n\t\t\toSpace.push( \" \" );\n\t\t}\n\n\t\tif ( nSpace == null ) {\n\t\t\tnSpace = [ \" \" ];\n\t\t}\n\t\telse {\n\t\t\tnSpace.push( \" \" );\n\t\t}\n\n\t\tif ( out.n.length === 0 ) {\n\t\t\tfor ( i = 0; i < out.o.length; i++ ) {\n\t\t\t\tstr += \"<del>\" + out.o[i] + oSpace[i] + \"</del>\";\n\t\t\t}\n\t\t}\n\t\telse {\n\t\t\tif ( out.n[0].text == null ) {\n\t\t\t\tfor ( n = 0; n < out.o.length && out.o[n].text == null; n++ ) {\n\t\t\t\t\tstr += \"<del>\" + out.o[n] + oSpace[n] + \"</del>\";\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tfor ( i = 0; i < out.n.length; i++ ) {\n\t\t\t\tif (out.n[i].text == null) {\n\t\t\t\t\tstr += \"<ins>\" + out.n[i] + nSpace[i] + \"</ins>\";\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\t// `pre` initialized at top of scope\n\t\t\t\t\tpre = \"\";\n\n\t\t\t\t\tfor ( n = out.n[i].row + 1; n < out.o.length && out.o[n].text == null; n++ ) {\n\t\t\t\t\t\tpre += \"<del>\" + out.o[n] + oSpace[n] + \"</del>\";\n\t\t\t\t\t}\n\t\t\t\t\tstr += \" \" + out.n[i].text + nSpace[i] + pre;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn str;\n\t};\n}());\n\n// for CommonJS enviroments, export everything\nif ( typeof exports !== \"undefined\" ) {\n\textend(exports, QUnit);\n}\n\n// get at whatever the global object is, like window in browsers\n}( (function() {return this;}.call()) ));\n"
  },
  {
    "path": "tests/require.js",
    "content": "/*\n RequireJS 2.1.16 Copyright (c) 2010-2015, The Dojo Foundation All Rights Reserved.\n Available via the MIT or new BSD license.\n see: http://github.com/jrburke/requirejs for details\n*/\nvar requirejs,require,define;\n(function(ba){function G(b){return\"[object Function]\"===K.call(b)}function H(b){return\"[object Array]\"===K.call(b)}function v(b,c){if(b){var d;for(d=0;d<b.length&&(!b[d]||!c(b[d],d,b));d+=1);}}function T(b,c){if(b){var d;for(d=b.length-1;-1<d&&(!b[d]||!c(b[d],d,b));d-=1);}}function t(b,c){return fa.call(b,c)}function m(b,c){return t(b,c)&&b[c]}function B(b,c){for(var d in b)if(t(b,d)&&c(b[d],d))break}function U(b,c,d,e){c&&B(c,function(c,g){if(d||!t(b,g))e&&\"object\"===typeof c&&c&&!H(c)&&!G(c)&&!(c instanceof\nRegExp)?(b[g]||(b[g]={}),U(b[g],c,d,e)):b[g]=c});return b}function u(b,c){return function(){return c.apply(b,arguments)}}function ca(b){throw b;}function da(b){if(!b)return b;var c=ba;v(b.split(\".\"),function(b){c=c[b]});return c}function C(b,c,d,e){c=Error(c+\"\\nhttp://requirejs.org/docs/errors.html#\"+b);c.requireType=b;c.requireModules=e;d&&(c.originalError=d);return c}function ga(b){function c(a,k,b){var f,l,c,d,e,g,i,p,k=k&&k.split(\"/\"),h=j.map,n=h&&h[\"*\"];if(a){a=a.split(\"/\");l=a.length-1;j.nodeIdCompat&&\nQ.test(a[l])&&(a[l]=a[l].replace(Q,\"\"));\".\"===a[0].charAt(0)&&k&&(l=k.slice(0,k.length-1),a=l.concat(a));l=a;for(c=0;c<l.length;c++)if(d=l[c],\".\"===d)l.splice(c,1),c-=1;else if(\"..\"===d&&!(0===c||1==c&&\"..\"===l[2]||\"..\"===l[c-1])&&0<c)l.splice(c-1,2),c-=2;a=a.join(\"/\")}if(b&&h&&(k||n)){l=a.split(\"/\");c=l.length;a:for(;0<c;c-=1){e=l.slice(0,c).join(\"/\");if(k)for(d=k.length;0<d;d-=1)if(b=m(h,k.slice(0,d).join(\"/\")))if(b=m(b,e)){f=b;g=c;break a}!i&&(n&&m(n,e))&&(i=m(n,e),p=c)}!f&&i&&(f=i,g=p);f&&(l.splice(0,\ng,f),a=l.join(\"/\"))}return(f=m(j.pkgs,a))?f:a}function d(a){z&&v(document.getElementsByTagName(\"script\"),function(k){if(k.getAttribute(\"data-requiremodule\")===a&&k.getAttribute(\"data-requirecontext\")===i.contextName)return k.parentNode.removeChild(k),!0})}function e(a){var k=m(j.paths,a);if(k&&H(k)&&1<k.length)return k.shift(),i.require.undef(a),i.makeRequire(null,{skipMap:!0})([a]),!0}function n(a){var k,c=a?a.indexOf(\"!\"):-1;-1<c&&(k=a.substring(0,c),a=a.substring(c+1,a.length));return[k,a]}function p(a,\nk,b,f){var l,d,e=null,g=k?k.name:null,j=a,p=!0,h=\"\";a||(p=!1,a=\"_@r\"+(K+=1));a=n(a);e=a[0];a=a[1];e&&(e=c(e,g,f),d=m(r,e));a&&(e?h=d&&d.normalize?d.normalize(a,function(a){return c(a,g,f)}):-1===a.indexOf(\"!\")?c(a,g,f):a:(h=c(a,g,f),a=n(h),e=a[0],h=a[1],b=!0,l=i.nameToUrl(h)));b=e&&!d&&!b?\"_unnormalized\"+(O+=1):\"\";return{prefix:e,name:h,parentMap:k,unnormalized:!!b,url:l,originalName:j,isDefine:p,id:(e?e+\"!\"+h:h)+b}}function s(a){var k=a.id,b=m(h,k);b||(b=h[k]=new i.Module(a));return b}function q(a,\nk,b){var f=a.id,c=m(h,f);if(t(r,f)&&(!c||c.defineEmitComplete))\"defined\"===k&&b(r[f]);else if(c=s(a),c.error&&\"error\"===k)b(c.error);else c.on(k,b)}function w(a,b){var c=a.requireModules,f=!1;if(b)b(a);else if(v(c,function(b){if(b=m(h,b))b.error=a,b.events.error&&(f=!0,b.emit(\"error\",a))}),!f)g.onError(a)}function x(){R.length&&(ha.apply(A,[A.length,0].concat(R)),R=[])}function y(a){delete h[a];delete V[a]}function F(a,b,c){var f=a.map.id;a.error?a.emit(\"error\",a.error):(b[f]=!0,v(a.depMaps,function(f,\nd){var e=f.id,g=m(h,e);g&&(!a.depMatched[d]&&!c[e])&&(m(b,e)?(a.defineDep(d,r[e]),a.check()):F(g,b,c))}),c[f]=!0)}function D(){var a,b,c=(a=1E3*j.waitSeconds)&&i.startTime+a<(new Date).getTime(),f=[],l=[],g=!1,h=!0;if(!W){W=!0;B(V,function(a){var i=a.map,j=i.id;if(a.enabled&&(i.isDefine||l.push(a),!a.error))if(!a.inited&&c)e(j)?g=b=!0:(f.push(j),d(j));else if(!a.inited&&(a.fetched&&i.isDefine)&&(g=!0,!i.prefix))return h=!1});if(c&&f.length)return a=C(\"timeout\",\"Load timeout for modules: \"+f,null,\nf),a.contextName=i.contextName,w(a);h&&v(l,function(a){F(a,{},{})});if((!c||b)&&g)if((z||ea)&&!X)X=setTimeout(function(){X=0;D()},50);W=!1}}function E(a){t(r,a[0])||s(p(a[0],null,!0)).init(a[1],a[2])}function I(a){var a=a.currentTarget||a.srcElement,b=i.onScriptLoad;a.detachEvent&&!Y?a.detachEvent(\"onreadystatechange\",b):a.removeEventListener(\"load\",b,!1);b=i.onScriptError;(!a.detachEvent||Y)&&a.removeEventListener(\"error\",b,!1);return{node:a,id:a&&a.getAttribute(\"data-requiremodule\")}}function J(){var a;\nfor(x();A.length;){a=A.shift();if(null===a[0])return w(C(\"mismatch\",\"Mismatched anonymous define() module: \"+a[a.length-1]));E(a)}}var W,Z,i,L,X,j={waitSeconds:7,baseUrl:\"./\",paths:{},bundles:{},pkgs:{},shim:{},config:{}},h={},V={},$={},A=[],r={},S={},aa={},K=1,O=1;L={require:function(a){return a.require?a.require:a.require=i.makeRequire(a.map)},exports:function(a){a.usingExports=!0;if(a.map.isDefine)return a.exports?r[a.map.id]=a.exports:a.exports=r[a.map.id]={}},module:function(a){return a.module?\na.module:a.module={id:a.map.id,uri:a.map.url,config:function(){return m(j.config,a.map.id)||{}},exports:a.exports||(a.exports={})}}};Z=function(a){this.events=m($,a.id)||{};this.map=a;this.shim=m(j.shim,a.id);this.depExports=[];this.depMaps=[];this.depMatched=[];this.pluginMaps={};this.depCount=0};Z.prototype={init:function(a,b,c,f){f=f||{};if(!this.inited){this.factory=b;if(c)this.on(\"error\",c);else this.events.error&&(c=u(this,function(a){this.emit(\"error\",a)}));this.depMaps=a&&a.slice(0);this.errback=\nc;this.inited=!0;this.ignore=f.ignore;f.enabled||this.enabled?this.enable():this.check()}},defineDep:function(a,b){this.depMatched[a]||(this.depMatched[a]=!0,this.depCount-=1,this.depExports[a]=b)},fetch:function(){if(!this.fetched){this.fetched=!0;i.startTime=(new Date).getTime();var a=this.map;if(this.shim)i.makeRequire(this.map,{enableBuildCallback:!0})(this.shim.deps||[],u(this,function(){return a.prefix?this.callPlugin():this.load()}));else return a.prefix?this.callPlugin():this.load()}},load:function(){var a=\nthis.map.url;S[a]||(S[a]=!0,i.load(this.map.id,a))},check:function(){if(this.enabled&&!this.enabling){var a,b,c=this.map.id;b=this.depExports;var f=this.exports,l=this.factory;if(this.inited)if(this.error)this.emit(\"error\",this.error);else{if(!this.defining){this.defining=!0;if(1>this.depCount&&!this.defined){if(G(l)){if(this.events.error&&this.map.isDefine||g.onError!==ca)try{f=i.execCb(c,l,b,f)}catch(d){a=d}else f=i.execCb(c,l,b,f);this.map.isDefine&&void 0===f&&((b=this.module)?f=b.exports:this.usingExports&&\n(f=this.exports));if(a)return a.requireMap=this.map,a.requireModules=this.map.isDefine?[this.map.id]:null,a.requireType=this.map.isDefine?\"define\":\"require\",w(this.error=a)}else f=l;this.exports=f;if(this.map.isDefine&&!this.ignore&&(r[c]=f,g.onResourceLoad))g.onResourceLoad(i,this.map,this.depMaps);y(c);this.defined=!0}this.defining=!1;this.defined&&!this.defineEmitted&&(this.defineEmitted=!0,this.emit(\"defined\",this.exports),this.defineEmitComplete=!0)}}else this.fetch()}},callPlugin:function(){var a=\nthis.map,b=a.id,d=p(a.prefix);this.depMaps.push(d);q(d,\"defined\",u(this,function(f){var l,d;d=m(aa,this.map.id);var e=this.map.name,P=this.map.parentMap?this.map.parentMap.name:null,n=i.makeRequire(a.parentMap,{enableBuildCallback:!0});if(this.map.unnormalized){if(f.normalize&&(e=f.normalize(e,function(a){return c(a,P,!0)})||\"\"),f=p(a.prefix+\"!\"+e,this.map.parentMap),q(f,\"defined\",u(this,function(a){this.init([],function(){return a},null,{enabled:!0,ignore:!0})})),d=m(h,f.id)){this.depMaps.push(f);\nif(this.events.error)d.on(\"error\",u(this,function(a){this.emit(\"error\",a)}));d.enable()}}else d?(this.map.url=i.nameToUrl(d),this.load()):(l=u(this,function(a){this.init([],function(){return a},null,{enabled:!0})}),l.error=u(this,function(a){this.inited=!0;this.error=a;a.requireModules=[b];B(h,function(a){0===a.map.id.indexOf(b+\"_unnormalized\")&&y(a.map.id)});w(a)}),l.fromText=u(this,function(f,c){var d=a.name,e=p(d),P=M;c&&(f=c);P&&(M=!1);s(e);t(j.config,b)&&(j.config[d]=j.config[b]);try{g.exec(f)}catch(h){return w(C(\"fromtexteval\",\n\"fromText eval for \"+b+\" failed: \"+h,h,[b]))}P&&(M=!0);this.depMaps.push(e);i.completeLoad(d);n([d],l)}),f.load(a.name,n,l,j))}));i.enable(d,this);this.pluginMaps[d.id]=d},enable:function(){V[this.map.id]=this;this.enabling=this.enabled=!0;v(this.depMaps,u(this,function(a,b){var c,f;if(\"string\"===typeof a){a=p(a,this.map.isDefine?this.map:this.map.parentMap,!1,!this.skipMap);this.depMaps[b]=a;if(c=m(L,a.id)){this.depExports[b]=c(this);return}this.depCount+=1;q(a,\"defined\",u(this,function(a){this.defineDep(b,\na);this.check()}));this.errback?q(a,\"error\",u(this,this.errback)):this.events.error&&q(a,\"error\",u(this,function(a){this.emit(\"error\",a)}))}c=a.id;f=h[c];!t(L,c)&&(f&&!f.enabled)&&i.enable(a,this)}));B(this.pluginMaps,u(this,function(a){var b=m(h,a.id);b&&!b.enabled&&i.enable(a,this)}));this.enabling=!1;this.check()},on:function(a,b){var c=this.events[a];c||(c=this.events[a]=[]);c.push(b)},emit:function(a,b){v(this.events[a],function(a){a(b)});\"error\"===a&&delete this.events[a]}};i={config:j,contextName:b,\nregistry:h,defined:r,urlFetched:S,defQueue:A,Module:Z,makeModuleMap:p,nextTick:g.nextTick,onError:w,configure:function(a){a.baseUrl&&\"/\"!==a.baseUrl.charAt(a.baseUrl.length-1)&&(a.baseUrl+=\"/\");var b=j.shim,c={paths:!0,bundles:!0,config:!0,map:!0};B(a,function(a,b){c[b]?(j[b]||(j[b]={}),U(j[b],a,!0,!0)):j[b]=a});a.bundles&&B(a.bundles,function(a,b){v(a,function(a){a!==b&&(aa[a]=b)})});a.shim&&(B(a.shim,function(a,c){H(a)&&(a={deps:a});if((a.exports||a.init)&&!a.exportsFn)a.exportsFn=i.makeShimExports(a);\nb[c]=a}),j.shim=b);a.packages&&v(a.packages,function(a){var b,a=\"string\"===typeof a?{name:a}:a;b=a.name;a.location&&(j.paths[b]=a.location);j.pkgs[b]=a.name+\"/\"+(a.main||\"main\").replace(ia,\"\").replace(Q,\"\")});B(h,function(a,b){!a.inited&&!a.map.unnormalized&&(a.map=p(b))});if(a.deps||a.callback)i.require(a.deps||[],a.callback)},makeShimExports:function(a){return function(){var b;a.init&&(b=a.init.apply(ba,arguments));return b||a.exports&&da(a.exports)}},makeRequire:function(a,e){function j(c,d,m){var n,\nq;e.enableBuildCallback&&(d&&G(d))&&(d.__requireJsBuild=!0);if(\"string\"===typeof c){if(G(d))return w(C(\"requireargs\",\"Invalid require call\"),m);if(a&&t(L,c))return L[c](h[a.id]);if(g.get)return g.get(i,c,a,j);n=p(c,a,!1,!0);n=n.id;return!t(r,n)?w(C(\"notloaded\",'Module name \"'+n+'\" has not been loaded yet for context: '+b+(a?\"\":\". Use require([])\"))):r[n]}J();i.nextTick(function(){J();q=s(p(null,a));q.skipMap=e.skipMap;q.init(c,d,m,{enabled:!0});D()});return j}e=e||{};U(j,{isBrowser:z,toUrl:function(b){var d,\ne=b.lastIndexOf(\".\"),k=b.split(\"/\")[0];if(-1!==e&&(!(\".\"===k||\"..\"===k)||1<e))d=b.substring(e,b.length),b=b.substring(0,e);return i.nameToUrl(c(b,a&&a.id,!0),d,!0)},defined:function(b){return t(r,p(b,a,!1,!0).id)},specified:function(b){b=p(b,a,!1,!0).id;return t(r,b)||t(h,b)}});a||(j.undef=function(b){x();var c=p(b,a,!0),e=m(h,b);d(b);delete r[b];delete S[c.url];delete $[b];T(A,function(a,c){a[0]===b&&A.splice(c,1)});e&&(e.events.defined&&($[b]=e.events),y(b))});return j},enable:function(a){m(h,a.id)&&\ns(a).enable()},completeLoad:function(a){var b,c,d=m(j.shim,a)||{},g=d.exports;for(x();A.length;){c=A.shift();if(null===c[0]){c[0]=a;if(b)break;b=!0}else c[0]===a&&(b=!0);E(c)}c=m(h,a);if(!b&&!t(r,a)&&c&&!c.inited){if(j.enforceDefine&&(!g||!da(g)))return e(a)?void 0:w(C(\"nodefine\",\"No define call for \"+a,null,[a]));E([a,d.deps||[],d.exportsFn])}D()},nameToUrl:function(a,b,c){var d,e,h;(d=m(j.pkgs,a))&&(a=d);if(d=m(aa,a))return i.nameToUrl(d,b,c);if(g.jsExtRegExp.test(a))d=a+(b||\"\");else{d=j.paths;\na=a.split(\"/\");for(e=a.length;0<e;e-=1)if(h=a.slice(0,e).join(\"/\"),h=m(d,h)){H(h)&&(h=h[0]);a.splice(0,e,h);break}d=a.join(\"/\");d+=b||(/^data\\:|\\?/.test(d)||c?\"\":\".js\");d=(\"/\"===d.charAt(0)||d.match(/^[\\w\\+\\.\\-]+:/)?\"\":j.baseUrl)+d}return j.urlArgs?d+((-1===d.indexOf(\"?\")?\"?\":\"&\")+j.urlArgs):d},load:function(a,b){g.load(i,a,b)},execCb:function(a,b,c,d){return b.apply(d,c)},onScriptLoad:function(a){if(\"load\"===a.type||ja.test((a.currentTarget||a.srcElement).readyState))N=null,a=I(a),i.completeLoad(a.id)},\nonScriptError:function(a){var b=I(a);if(!e(b.id))return w(C(\"scripterror\",\"Script error for: \"+b.id,a,[b.id]))}};i.require=i.makeRequire();return i}var g,x,y,D,I,E,N,J,s,O,ka=/(\\/\\*([\\s\\S]*?)\\*\\/|([^:]|^)\\/\\/(.*)$)/mg,la=/[^.]\\s*require\\s*\\(\\s*[\"']([^'\"\\s]+)[\"']\\s*\\)/g,Q=/\\.js$/,ia=/^\\.\\//;x=Object.prototype;var K=x.toString,fa=x.hasOwnProperty,ha=Array.prototype.splice,z=!!(\"undefined\"!==typeof window&&\"undefined\"!==typeof navigator&&window.document),ea=!z&&\"undefined\"!==typeof importScripts,ja=\nz&&\"PLAYSTATION 3\"===navigator.platform?/^complete$/:/^(complete|loaded)$/,Y=\"undefined\"!==typeof opera&&\"[object Opera]\"===opera.toString(),F={},q={},R=[],M=!1;if(\"undefined\"===typeof define){if(\"undefined\"!==typeof requirejs){if(G(requirejs))return;q=requirejs;requirejs=void 0}\"undefined\"!==typeof require&&!G(require)&&(q=require,require=void 0);g=requirejs=function(b,c,d,e){var n,p=\"_\";!H(b)&&\"string\"!==typeof b&&(n=b,H(c)?(b=c,c=d,d=e):b=[]);n&&n.context&&(p=n.context);(e=m(F,p))||(e=F[p]=g.s.newContext(p));\nn&&e.configure(n);return e.require(b,c,d)};g.config=function(b){return g(b)};g.nextTick=\"undefined\"!==typeof setTimeout?function(b){setTimeout(b,4)}:function(b){b()};require||(require=g);g.version=\"2.1.16\";g.jsExtRegExp=/^\\/|:|\\?|\\.js$/;g.isBrowser=z;x=g.s={contexts:F,newContext:ga};g({});v([\"toUrl\",\"undef\",\"defined\",\"specified\"],function(b){g[b]=function(){var c=F._;return c.require[b].apply(c,arguments)}});if(z&&(y=x.head=document.getElementsByTagName(\"head\")[0],D=document.getElementsByTagName(\"base\")[0]))y=\nx.head=D.parentNode;g.onError=ca;g.createNode=function(b){var c=b.xhtml?document.createElementNS(\"http://www.w3.org/1999/xhtml\",\"html:script\"):document.createElement(\"script\");c.type=b.scriptType||\"text/javascript\";c.charset=\"utf-8\";c.async=!0;return c};g.load=function(b,c,d){var e=b&&b.config||{};if(z)return e=g.createNode(e,c,d),e.setAttribute(\"data-requirecontext\",b.contextName),e.setAttribute(\"data-requiremodule\",c),e.attachEvent&&!(e.attachEvent.toString&&0>e.attachEvent.toString().indexOf(\"[native code\"))&&\n!Y?(M=!0,e.attachEvent(\"onreadystatechange\",b.onScriptLoad)):(e.addEventListener(\"load\",b.onScriptLoad,!1),e.addEventListener(\"error\",b.onScriptError,!1)),e.src=d,J=e,D?y.insertBefore(e,D):y.appendChild(e),J=null,e;if(ea)try{importScripts(d),b.completeLoad(c)}catch(m){b.onError(C(\"importscripts\",\"importScripts failed for \"+c+\" at \"+d,m,[c]))}};z&&!q.skipDataMain&&T(document.getElementsByTagName(\"script\"),function(b){y||(y=b.parentNode);if(I=b.getAttribute(\"data-main\"))return s=I,q.baseUrl||(E=s.split(\"/\"),\ns=E.pop(),O=E.length?E.join(\"/\")+\"/\":\"./\",q.baseUrl=O),s=s.replace(Q,\"\"),g.jsExtRegExp.test(s)&&(s=I),q.deps=q.deps?q.deps.concat(s):[s],!0});define=function(b,c,d){var e,g;\"string\"!==typeof b&&(d=c,c=b,b=null);H(c)||(d=c,c=null);!c&&G(d)&&(c=[],d.length&&(d.toString().replace(ka,\"\").replace(la,function(b,d){c.push(d)}),c=(1===d.length?[\"require\"]:[\"require\",\"exports\",\"module\"]).concat(c)));if(M){if(!(e=J))N&&\"interactive\"===N.readyState||T(document.getElementsByTagName(\"script\"),function(b){if(\"interactive\"===\nb.readyState)return N=b}),e=N;e&&(b||(b=e.getAttribute(\"data-requiremodule\")),g=F[e.getAttribute(\"data-requirecontext\")])}(g?g.defQueue:R).push([b,c,d])};define.amd={jQuery:!0};g.exec=function(b){return eval(b)};g(q)}})(this);\n"
  },
  {
    "path": "tests/test-runner.js",
    "content": "\"use strict\";\n\nrequire.config({\n  paths: {\n    'QUnit': 'qunit'\n  },\n  shim: {\n    'QUnit': {\n      exports: 'QUnit',\n      init: function() {\n        QUnit.config.autoload = false;\n        QUnit.config.autostart = false;\n      }\n    }\n  }\n});\n\nrequire(\n  ['QUnit', 'jquery', 'phone-format-amd', 'unit/phone-test'],\n  function (QUnit, jQuery, phoneFormat, phoneTest) {\n    var defaultOptions = {\n      phoneFormat: phoneFormat\n    };\n\n    phoneTest(defaultOptions);\n\n    QUnit.load();\n    QUnit.start();\n  }\n);\n"
  },
  {
    "path": "tests/unit/phone-test.js",
    "content": "'use strict';\ndefine(\n  function() {\n    return function(args) {\n      var phoneFormat = args.phoneFormat;\n      var countryCode = 'US';\n      var validPhoneNumber = '541-441-1130';\n      var validInternationalPhoneNumber = '+1-541-441-1130';\n      var tenDigitRegex = /^[1-9][0-9]{9}$/;\n\n      test('phoneformatter exists', function() {\n        ok(phoneFormat);\n      });\n\n      test('countryForE164Number', function() {\n        var result = phoneFormat.countryForE164Number(validInternationalPhoneNumber);\n\n        assert.equal(result, 'US');\n      });\n\n      test('formatNumberForMobileDialing', function() {\n        var result = phoneFormat.formatNumberForMobileDialing(countryCode, validPhoneNumber);\n\n        equal(result, '+1 541-441-1130');\n      });\n\n      test('isValidNumber', function() {\n        var result = phoneFormat.isValidNumber(validPhoneNumber, countryCode);\n\n        equal(result, true);\n      });\n\n      test('formatE164', function() {\n        var result = phoneFormat.formatE164(countryCode, validPhoneNumber);\n\n        equal(result, '+15414411130');\n      });\n\n      test('formatInternational', function() {\n        var result = phoneFormat.formatInternational(countryCode, validPhoneNumber);\n\n        equal(result, '(541) 441-1130');\n      });\n\n      test('formatLocal', function() {\n        var result = phoneFormat.formatLocal(countryCode, validPhoneNumber);\n\n        equal(result, '(541) 441-1130');\n      });\n\n      test('exampleLandlineNumber', function() {\n        var example = phoneFormat.exampleLandlineNumber(countryCode);\n\n        equal(tenDigitRegex.test(example), true);\n      });\n\n      test('exampleMobileNumber', function() {\n        var example = phoneFormat.exampleMobileNumber(countryCode);\n\n        equal(tenDigitRegex.test(example), true);\n      });\n\n      test('cleanPhone', function() {\n        var result = phoneFormat.cleanPhone(validPhoneNumber);\n\n        equal(result, '5414411130');\n      });\n\n      test('countryCodeToName', function() {\n        var result = phoneFormat.countryCodeToName(countryCode);\n\n        equal(result, 'United States');\n      });\n    };\n  }\n);\n"
  }
]