vue-layout-gitcode 1.12.53 → 1.12.54
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/{GloabarSearch-D4WuCsub.js → GloabarSearch-CyqYE-oU.js} +3 -3
- package/{MenuItem-BznpPcWm.js → MenuItem-Fu7SS3Tz.js} +2 -2
- package/{ProjectMenuList-1HqdBGW9.js → ProjectMenuList-DPscVNRR.js} +3 -3
- package/{ProjectMenuListV2-CYynTRGA.js → ProjectMenuListV2-nSkrRa6K.js} +3 -3
- package/{ProjectSearch-g_ooyoDn.js → ProjectSearch-DzbH-bqt.js} +2 -2
- package/{SearchHistoryList-BRHEDL2D.js → SearchHistoryList-CpJYD474.js} +2 -2
- package/{SearchRecommed-DiWjRapV.js → SearchRecommed-BMi4fhX2.js} +4 -5
- package/{SearchScopeList-CNJd45Ge.js → SearchScopeList-cN4MRz7O.js} +2 -2
- package/{UserSearch-B68GygQe.js → UserSearch-BDv9VoKV.js} +2 -2
- package/{index-N8tCNQEp.js → index-BVtkY7Om.js} +2 -2
- package/{index-D6SmTn3U.js → index-DdlJC00I.js} +1832 -866
- package/{index-D__jXgPB.js → index-Ds8UDIgP.js} +2 -2
- package/index.js +19 -19
- package/{notice-Dleiw4LE.js → notice-BCsRECZ7.js} +2 -2
- package/package.json +1 -1
- package/{search-suggestion-DQTeiN-d.js → search-suggestion-CvlmOcjt.js} +3 -3
- package/{transWebUrl-MIelOtyv.js → transWebUrl-BIRrBeEN.js} +1 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
var __defProp = Object.defineProperty;
|
|
2
2
|
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
3
3
|
var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
4
|
-
import { reactive, readonly, inject, effectScope,
|
|
4
|
+
import { reactive, readonly, inject, effectScope, computed, watch, isRef, getCurrentInstance, ref, shallowRef, defineComponent, h, Fragment, onBeforeMount, onMounted, onUnmounted, createVNode, Text, provide, openBlock, createElementBlock, Transition, withCtx, unref, normalizeClass, createElementVNode, toDisplayString as toDisplayString$1, createCommentVNode, createStaticVNode, withModifiers, createBlock, normalizeProps, mergeProps, renderSlot, normalizeStyle, resolveComponent, watchEffect, renderList, createTextVNode, nextTick, resolveDirective, withDirectives, onBeforeUnmount, guardReactiveProps, markRaw, resolveDynamicComponent, useAttrs, defineAsyncComponent, vShow, withKeys, useCssVars, createSlots, render, toRaw, useModel as useModel$1, mergeModels, watchPostEffect, useSlots } from "vue";
|
|
5
5
|
import axios from "axios";
|
|
6
6
|
import { useRouter, useRoute, createRouter, createWebHistory, createMemoryHistory } from "vue-router";
|
|
7
7
|
import { Icon } from "vue-devui-lal/icon";
|
|
@@ -520,96 +520,117 @@ const LOGO_MAP = {
|
|
|
520
520
|
aiLogoDark: "https://cdn-static.gitcode.com/static/images/gitcode-ai-logo-dark_atomgit.png"
|
|
521
521
|
}
|
|
522
522
|
};
|
|
523
|
-
/*! @license DOMPurify 3.
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
|
|
527
|
-
|
|
528
|
-
getPrototypeOf,
|
|
529
|
-
getOwnPropertyDescriptor
|
|
530
|
-
} = Object;
|
|
531
|
-
let {
|
|
532
|
-
freeze,
|
|
533
|
-
seal,
|
|
534
|
-
create: create$1
|
|
535
|
-
} = Object;
|
|
536
|
-
let {
|
|
537
|
-
apply: apply$1,
|
|
538
|
-
construct
|
|
539
|
-
} = typeof Reflect !== "undefined" && Reflect;
|
|
540
|
-
if (!freeze) {
|
|
541
|
-
freeze = function freeze2(x) {
|
|
542
|
-
return x;
|
|
543
|
-
};
|
|
523
|
+
/*! @license DOMPurify 3.4.16 | (c) Cure53 and other contributors | Released under the Apache license 2.0 and Mozilla Public License 2.0 | github.com/cure53/DOMPurify/blob/3.4.16/LICENSE */
|
|
524
|
+
function _arrayLikeToArray$4(r, a) {
|
|
525
|
+
(null == a || a > r.length) && (a = r.length);
|
|
526
|
+
for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e];
|
|
527
|
+
return n;
|
|
544
528
|
}
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
return x;
|
|
548
|
-
};
|
|
529
|
+
function _arrayWithHoles$1(r) {
|
|
530
|
+
if (Array.isArray(r)) return r;
|
|
549
531
|
}
|
|
550
|
-
|
|
551
|
-
|
|
552
|
-
|
|
553
|
-
|
|
532
|
+
function _iterableToArrayLimit$1(r, l) {
|
|
533
|
+
var t2 = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"];
|
|
534
|
+
if (null != t2) {
|
|
535
|
+
var e, n, i, u, a = [], f = true, o = false;
|
|
536
|
+
try {
|
|
537
|
+
if (i = (t2 = t2.call(r)).next, 0 === l) ;
|
|
538
|
+
else for (; !(f = (e = i.call(t2)).done) && (a.push(e.value), a.length !== l); f = true) ;
|
|
539
|
+
} catch (r2) {
|
|
540
|
+
o = true, n = r2;
|
|
541
|
+
} finally {
|
|
542
|
+
try {
|
|
543
|
+
if (!f && null != t2.return && (u = t2.return(), Object(u) !== u)) return;
|
|
544
|
+
} finally {
|
|
545
|
+
if (o) throw n;
|
|
546
|
+
}
|
|
554
547
|
}
|
|
555
|
-
return
|
|
556
|
-
}
|
|
548
|
+
return a;
|
|
549
|
+
}
|
|
557
550
|
}
|
|
558
|
-
|
|
559
|
-
|
|
560
|
-
|
|
561
|
-
|
|
562
|
-
|
|
563
|
-
|
|
564
|
-
};
|
|
551
|
+
function _nonIterableRest$1() {
|
|
552
|
+
throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
553
|
+
}
|
|
554
|
+
/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */
|
|
555
|
+
function _slicedToArray$1(r, e) {
|
|
556
|
+
return _arrayWithHoles$1(r) || _iterableToArrayLimit$1(r, e) || _unsupportedIterableToArray$4(r, e) || _nonIterableRest$1();
|
|
565
557
|
}
|
|
558
|
+
function _unsupportedIterableToArray$4(r, a) {
|
|
559
|
+
if (r) {
|
|
560
|
+
if ("string" == typeof r) return _arrayLikeToArray$4(r, a);
|
|
561
|
+
var t2 = {}.toString.call(r).slice(8, -1);
|
|
562
|
+
return "Object" === t2 && r.constructor && (t2 = r.constructor.name), "Map" === t2 || "Set" === t2 ? Array.from(r) : "Arguments" === t2 || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t2) ? _arrayLikeToArray$4(r, a) : void 0;
|
|
563
|
+
}
|
|
564
|
+
}
|
|
565
|
+
const entries = Object.entries;
|
|
566
|
+
const setPrototypeOf = Object.setPrototypeOf;
|
|
567
|
+
const isFrozen = Object.isFrozen;
|
|
568
|
+
const getPrototypeOf = Object.getPrototypeOf;
|
|
569
|
+
const getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;
|
|
570
|
+
let freeze = Object.freeze;
|
|
571
|
+
let seal = Object.seal;
|
|
572
|
+
let create$1 = Object.create;
|
|
573
|
+
let _ref = typeof Reflect !== "undefined" && Reflect;
|
|
574
|
+
let apply$1 = _ref.apply;
|
|
575
|
+
let construct = _ref.construct;
|
|
576
|
+
if (!freeze) freeze = function freeze2(x) {
|
|
577
|
+
return x;
|
|
578
|
+
};
|
|
579
|
+
if (!seal) seal = function seal2(x) {
|
|
580
|
+
return x;
|
|
581
|
+
};
|
|
582
|
+
if (!apply$1) apply$1 = function apply(func, thisArg) {
|
|
583
|
+
for (var _len = arguments.length, args = new Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++) args[_key - 2] = arguments[_key];
|
|
584
|
+
return func.apply(thisArg, args);
|
|
585
|
+
};
|
|
586
|
+
if (!construct) construct = function construct2(Func) {
|
|
587
|
+
for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) args[_key2 - 1] = arguments[_key2];
|
|
588
|
+
return new Func(...args);
|
|
589
|
+
};
|
|
566
590
|
const arrayForEach = unapply(Array.prototype.forEach);
|
|
567
591
|
const arrayLastIndexOf = unapply(Array.prototype.lastIndexOf);
|
|
568
592
|
const arrayPop = unapply(Array.prototype.pop);
|
|
569
593
|
const arrayPush = unapply(Array.prototype.push);
|
|
570
594
|
const arraySplice = unapply(Array.prototype.splice);
|
|
595
|
+
const arrayIsArray = Array.isArray;
|
|
571
596
|
const stringToLowerCase = unapply(String.prototype.toLowerCase);
|
|
572
597
|
const stringToString = unapply(String.prototype.toString);
|
|
573
598
|
const stringMatch = unapply(String.prototype.match);
|
|
574
599
|
const stringReplace = unapply(String.prototype.replace);
|
|
575
600
|
const stringIndexOf = unapply(String.prototype.indexOf);
|
|
576
601
|
const stringTrim = unapply(String.prototype.trim);
|
|
602
|
+
const numberToString = unapply(Number.prototype.toString);
|
|
603
|
+
const booleanToString = unapply(Boolean.prototype.toString);
|
|
604
|
+
const bigintToString = typeof BigInt === "undefined" ? null : unapply(BigInt.prototype.toString);
|
|
605
|
+
const symbolToString = typeof Symbol === "undefined" ? null : unapply(Symbol.prototype.toString);
|
|
577
606
|
const objectHasOwnProperty = unapply(Object.prototype.hasOwnProperty);
|
|
607
|
+
const objectToString$1 = unapply(Object.prototype.toString);
|
|
578
608
|
const regExpTest = unapply(RegExp.prototype.test);
|
|
579
609
|
const typeErrorCreate = unconstruct(TypeError);
|
|
580
610
|
function unapply(func) {
|
|
581
611
|
return function(thisArg) {
|
|
582
|
-
if (thisArg instanceof RegExp)
|
|
583
|
-
|
|
584
|
-
}
|
|
585
|
-
for (var _len3 = arguments.length, args = new Array(_len3 > 1 ? _len3 - 1 : 0), _key3 = 1; _key3 < _len3; _key3++) {
|
|
586
|
-
args[_key3 - 1] = arguments[_key3];
|
|
587
|
-
}
|
|
612
|
+
if (thisArg instanceof RegExp) thisArg.lastIndex = 0;
|
|
613
|
+
for (var _len3 = arguments.length, args = new Array(_len3 > 1 ? _len3 - 1 : 0), _key3 = 1; _key3 < _len3; _key3++) args[_key3 - 1] = arguments[_key3];
|
|
588
614
|
return apply$1(func, thisArg, args);
|
|
589
615
|
};
|
|
590
616
|
}
|
|
591
617
|
function unconstruct(Func) {
|
|
592
618
|
return function() {
|
|
593
|
-
for (var _len4 = arguments.length, args = new Array(_len4), _key4 = 0; _key4 < _len4; _key4++)
|
|
594
|
-
args[_key4] = arguments[_key4];
|
|
595
|
-
}
|
|
619
|
+
for (var _len4 = arguments.length, args = new Array(_len4), _key4 = 0; _key4 < _len4; _key4++) args[_key4] = arguments[_key4];
|
|
596
620
|
return construct(Func, args);
|
|
597
621
|
};
|
|
598
622
|
}
|
|
599
623
|
function addToSet(set, array) {
|
|
600
624
|
let transformCaseFunc = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : stringToLowerCase;
|
|
601
|
-
if (setPrototypeOf)
|
|
602
|
-
|
|
603
|
-
}
|
|
625
|
+
if (setPrototypeOf) setPrototypeOf(set, null);
|
|
626
|
+
if (!arrayIsArray(array)) return set;
|
|
604
627
|
let l = array.length;
|
|
605
628
|
while (l--) {
|
|
606
629
|
let element = array[l];
|
|
607
630
|
if (typeof element === "string") {
|
|
608
631
|
const lcElement = transformCaseFunc(element);
|
|
609
632
|
if (lcElement !== element) {
|
|
610
|
-
if (!isFrozen(array))
|
|
611
|
-
array[l] = lcElement;
|
|
612
|
-
}
|
|
633
|
+
if (!isFrozen(array)) array[l] = lcElement;
|
|
613
634
|
element = lcElement;
|
|
614
635
|
}
|
|
615
636
|
}
|
|
@@ -618,40 +639,58 @@ function addToSet(set, array) {
|
|
|
618
639
|
return set;
|
|
619
640
|
}
|
|
620
641
|
function cleanArray(array) {
|
|
621
|
-
for (let index2 = 0; index2 < array.length; index2++)
|
|
622
|
-
const isPropertyExist = objectHasOwnProperty(array, index2);
|
|
623
|
-
if (!isPropertyExist) {
|
|
624
|
-
array[index2] = null;
|
|
625
|
-
}
|
|
626
|
-
}
|
|
642
|
+
for (let index2 = 0; index2 < array.length; index2++) if (!objectHasOwnProperty(array, index2)) array[index2] = null;
|
|
627
643
|
return array;
|
|
628
644
|
}
|
|
629
645
|
function clone(object) {
|
|
630
646
|
const newObject = create$1(null);
|
|
631
|
-
for (const
|
|
632
|
-
|
|
633
|
-
|
|
634
|
-
|
|
635
|
-
|
|
636
|
-
|
|
637
|
-
|
|
638
|
-
|
|
639
|
-
newObject[property] = value;
|
|
640
|
-
}
|
|
647
|
+
for (const _ref2 of entries(object)) {
|
|
648
|
+
var _ref3 = _slicedToArray$1(_ref2, 2);
|
|
649
|
+
const property = _ref3[0];
|
|
650
|
+
const value = _ref3[1];
|
|
651
|
+
if (objectHasOwnProperty(object, property)) {
|
|
652
|
+
if (arrayIsArray(value)) newObject[property] = cleanArray(value);
|
|
653
|
+
else if (value && typeof value === "object" && value.constructor === Object) newObject[property] = clone(value);
|
|
654
|
+
else newObject[property] = value;
|
|
641
655
|
}
|
|
642
656
|
}
|
|
643
657
|
return newObject;
|
|
644
658
|
}
|
|
659
|
+
function stringifyValue(value) {
|
|
660
|
+
switch (typeof value) {
|
|
661
|
+
case "string":
|
|
662
|
+
return value;
|
|
663
|
+
case "number":
|
|
664
|
+
return numberToString(value);
|
|
665
|
+
case "boolean":
|
|
666
|
+
return booleanToString(value);
|
|
667
|
+
case "bigint":
|
|
668
|
+
return bigintToString ? bigintToString(value) : "0";
|
|
669
|
+
case "symbol":
|
|
670
|
+
return symbolToString ? symbolToString(value) : "Symbol()";
|
|
671
|
+
case "undefined":
|
|
672
|
+
return objectToString$1(value);
|
|
673
|
+
case "function":
|
|
674
|
+
case "object": {
|
|
675
|
+
if (value === null) return objectToString$1(value);
|
|
676
|
+
const valueAsRecord = value;
|
|
677
|
+
const valueToString = lookupGetter(valueAsRecord, "toString");
|
|
678
|
+
if (typeof valueToString === "function") {
|
|
679
|
+
const stringified = valueToString(valueAsRecord);
|
|
680
|
+
return typeof stringified === "string" ? stringified : objectToString$1(stringified);
|
|
681
|
+
}
|
|
682
|
+
return objectToString$1(value);
|
|
683
|
+
}
|
|
684
|
+
default:
|
|
685
|
+
return objectToString$1(value);
|
|
686
|
+
}
|
|
687
|
+
}
|
|
645
688
|
function lookupGetter(object, prop) {
|
|
646
689
|
while (object !== null) {
|
|
647
690
|
const desc = getOwnPropertyDescriptor(object, prop);
|
|
648
691
|
if (desc) {
|
|
649
|
-
if (desc.get)
|
|
650
|
-
|
|
651
|
-
}
|
|
652
|
-
if (typeof desc.value === "function") {
|
|
653
|
-
return unapply(desc.value);
|
|
654
|
-
}
|
|
692
|
+
if (desc.get) return unapply(desc.get);
|
|
693
|
+
if (typeof desc.value === "function") return unapply(desc.value);
|
|
655
694
|
}
|
|
656
695
|
object = getPrototypeOf(object);
|
|
657
696
|
}
|
|
@@ -660,66 +699,716 @@ function lookupGetter(object, prop) {
|
|
|
660
699
|
}
|
|
661
700
|
return fallbackValue;
|
|
662
701
|
}
|
|
663
|
-
|
|
664
|
-
|
|
665
|
-
|
|
666
|
-
|
|
667
|
-
|
|
668
|
-
|
|
702
|
+
function isRegex(value) {
|
|
703
|
+
try {
|
|
704
|
+
regExpTest(value, "");
|
|
705
|
+
return true;
|
|
706
|
+
} catch (_unused) {
|
|
707
|
+
return false;
|
|
708
|
+
}
|
|
709
|
+
}
|
|
710
|
+
const html$1 = freeze([
|
|
711
|
+
"a",
|
|
712
|
+
"abbr",
|
|
713
|
+
"acronym",
|
|
714
|
+
"address",
|
|
715
|
+
"area",
|
|
716
|
+
"article",
|
|
717
|
+
"aside",
|
|
718
|
+
"audio",
|
|
719
|
+
"b",
|
|
720
|
+
"bdi",
|
|
721
|
+
"bdo",
|
|
722
|
+
"big",
|
|
723
|
+
"blink",
|
|
724
|
+
"blockquote",
|
|
725
|
+
"body",
|
|
726
|
+
"br",
|
|
727
|
+
"button",
|
|
728
|
+
"canvas",
|
|
729
|
+
"caption",
|
|
730
|
+
"center",
|
|
731
|
+
"cite",
|
|
732
|
+
"code",
|
|
733
|
+
"col",
|
|
734
|
+
"colgroup",
|
|
735
|
+
"content",
|
|
736
|
+
"data",
|
|
737
|
+
"datalist",
|
|
738
|
+
"dd",
|
|
739
|
+
"decorator",
|
|
740
|
+
"del",
|
|
741
|
+
"details",
|
|
742
|
+
"dfn",
|
|
743
|
+
"dialog",
|
|
744
|
+
"dir",
|
|
745
|
+
"div",
|
|
746
|
+
"dl",
|
|
747
|
+
"dt",
|
|
748
|
+
"element",
|
|
749
|
+
"em",
|
|
750
|
+
"fieldset",
|
|
751
|
+
"figcaption",
|
|
752
|
+
"figure",
|
|
753
|
+
"font",
|
|
754
|
+
"footer",
|
|
755
|
+
"form",
|
|
756
|
+
"h1",
|
|
757
|
+
"h2",
|
|
758
|
+
"h3",
|
|
759
|
+
"h4",
|
|
760
|
+
"h5",
|
|
761
|
+
"h6",
|
|
762
|
+
"head",
|
|
763
|
+
"header",
|
|
764
|
+
"hgroup",
|
|
765
|
+
"hr",
|
|
766
|
+
"html",
|
|
767
|
+
"i",
|
|
768
|
+
"img",
|
|
769
|
+
"input",
|
|
770
|
+
"ins",
|
|
771
|
+
"kbd",
|
|
772
|
+
"label",
|
|
773
|
+
"legend",
|
|
774
|
+
"li",
|
|
775
|
+
"main",
|
|
776
|
+
"map",
|
|
777
|
+
"mark",
|
|
778
|
+
"marquee",
|
|
779
|
+
"menu",
|
|
780
|
+
"menuitem",
|
|
781
|
+
"meter",
|
|
782
|
+
"nav",
|
|
783
|
+
"nobr",
|
|
784
|
+
"ol",
|
|
785
|
+
"optgroup",
|
|
786
|
+
"option",
|
|
787
|
+
"output",
|
|
788
|
+
"p",
|
|
789
|
+
"picture",
|
|
790
|
+
"pre",
|
|
791
|
+
"progress",
|
|
792
|
+
"q",
|
|
793
|
+
"rp",
|
|
794
|
+
"rt",
|
|
795
|
+
"ruby",
|
|
796
|
+
"s",
|
|
797
|
+
"samp",
|
|
798
|
+
"search",
|
|
799
|
+
"section",
|
|
800
|
+
"select",
|
|
801
|
+
"shadow",
|
|
802
|
+
"slot",
|
|
803
|
+
"small",
|
|
804
|
+
"source",
|
|
805
|
+
"spacer",
|
|
806
|
+
"span",
|
|
807
|
+
"strike",
|
|
808
|
+
"strong",
|
|
809
|
+
"style",
|
|
810
|
+
"sub",
|
|
811
|
+
"summary",
|
|
812
|
+
"sup",
|
|
813
|
+
"table",
|
|
814
|
+
"tbody",
|
|
815
|
+
"td",
|
|
816
|
+
"template",
|
|
817
|
+
"textarea",
|
|
818
|
+
"tfoot",
|
|
819
|
+
"th",
|
|
820
|
+
"thead",
|
|
821
|
+
"time",
|
|
822
|
+
"tr",
|
|
823
|
+
"track",
|
|
824
|
+
"tt",
|
|
825
|
+
"u",
|
|
826
|
+
"ul",
|
|
827
|
+
"var",
|
|
828
|
+
"video",
|
|
829
|
+
"wbr"
|
|
830
|
+
]);
|
|
831
|
+
const svg$1 = freeze([
|
|
832
|
+
"svg",
|
|
833
|
+
"a",
|
|
834
|
+
"altglyph",
|
|
835
|
+
"altglyphdef",
|
|
836
|
+
"altglyphitem",
|
|
837
|
+
"animatecolor",
|
|
838
|
+
"animatemotion",
|
|
839
|
+
"animatetransform",
|
|
840
|
+
"circle",
|
|
841
|
+
"clippath",
|
|
842
|
+
"defs",
|
|
843
|
+
"desc",
|
|
844
|
+
"ellipse",
|
|
845
|
+
"enterkeyhint",
|
|
846
|
+
"exportparts",
|
|
847
|
+
"filter",
|
|
848
|
+
"font",
|
|
849
|
+
"g",
|
|
850
|
+
"glyph",
|
|
851
|
+
"glyphref",
|
|
852
|
+
"hkern",
|
|
853
|
+
"image",
|
|
854
|
+
"inputmode",
|
|
855
|
+
"line",
|
|
856
|
+
"lineargradient",
|
|
857
|
+
"marker",
|
|
858
|
+
"mask",
|
|
859
|
+
"metadata",
|
|
860
|
+
"mpath",
|
|
861
|
+
"part",
|
|
862
|
+
"path",
|
|
863
|
+
"pattern",
|
|
864
|
+
"polygon",
|
|
865
|
+
"polyline",
|
|
866
|
+
"radialgradient",
|
|
867
|
+
"rect",
|
|
868
|
+
"stop",
|
|
869
|
+
"style",
|
|
870
|
+
"switch",
|
|
871
|
+
"symbol",
|
|
872
|
+
"text",
|
|
873
|
+
"textpath",
|
|
874
|
+
"title",
|
|
875
|
+
"tref",
|
|
876
|
+
"tspan",
|
|
877
|
+
"view",
|
|
878
|
+
"vkern"
|
|
879
|
+
]);
|
|
880
|
+
const svgFilters = freeze([
|
|
881
|
+
"feBlend",
|
|
882
|
+
"feColorMatrix",
|
|
883
|
+
"feComponentTransfer",
|
|
884
|
+
"feComposite",
|
|
885
|
+
"feConvolveMatrix",
|
|
886
|
+
"feDiffuseLighting",
|
|
887
|
+
"feDisplacementMap",
|
|
888
|
+
"feDistantLight",
|
|
889
|
+
"feDropShadow",
|
|
890
|
+
"feFlood",
|
|
891
|
+
"feFuncA",
|
|
892
|
+
"feFuncB",
|
|
893
|
+
"feFuncG",
|
|
894
|
+
"feFuncR",
|
|
895
|
+
"feGaussianBlur",
|
|
896
|
+
"feImage",
|
|
897
|
+
"feMerge",
|
|
898
|
+
"feMergeNode",
|
|
899
|
+
"feMorphology",
|
|
900
|
+
"feOffset",
|
|
901
|
+
"fePointLight",
|
|
902
|
+
"feSpecularLighting",
|
|
903
|
+
"feSpotLight",
|
|
904
|
+
"feTile",
|
|
905
|
+
"feTurbulence"
|
|
906
|
+
]);
|
|
907
|
+
const svgDisallowed = freeze([
|
|
908
|
+
"animate",
|
|
909
|
+
"color-profile",
|
|
910
|
+
"cursor",
|
|
911
|
+
"discard",
|
|
912
|
+
"font-face",
|
|
913
|
+
"font-face-format",
|
|
914
|
+
"font-face-name",
|
|
915
|
+
"font-face-src",
|
|
916
|
+
"font-face-uri",
|
|
917
|
+
"foreignobject",
|
|
918
|
+
"hatch",
|
|
919
|
+
"hatchpath",
|
|
920
|
+
"mesh",
|
|
921
|
+
"meshgradient",
|
|
922
|
+
"meshpatch",
|
|
923
|
+
"meshrow",
|
|
924
|
+
"missing-glyph",
|
|
925
|
+
"script",
|
|
926
|
+
"set",
|
|
927
|
+
"solidcolor",
|
|
928
|
+
"unknown",
|
|
929
|
+
"use"
|
|
930
|
+
]);
|
|
931
|
+
const mathMl$1 = freeze([
|
|
932
|
+
"math",
|
|
933
|
+
"menclose",
|
|
934
|
+
"merror",
|
|
935
|
+
"mfenced",
|
|
936
|
+
"mfrac",
|
|
937
|
+
"mglyph",
|
|
938
|
+
"mi",
|
|
939
|
+
"mlabeledtr",
|
|
940
|
+
"mmultiscripts",
|
|
941
|
+
"mn",
|
|
942
|
+
"mo",
|
|
943
|
+
"mover",
|
|
944
|
+
"mpadded",
|
|
945
|
+
"mphantom",
|
|
946
|
+
"mroot",
|
|
947
|
+
"mrow",
|
|
948
|
+
"ms",
|
|
949
|
+
"mspace",
|
|
950
|
+
"msqrt",
|
|
951
|
+
"mstyle",
|
|
952
|
+
"msub",
|
|
953
|
+
"msup",
|
|
954
|
+
"msubsup",
|
|
955
|
+
"mtable",
|
|
956
|
+
"mtd",
|
|
957
|
+
"mtext",
|
|
958
|
+
"mtr",
|
|
959
|
+
"munder",
|
|
960
|
+
"munderover",
|
|
961
|
+
"mprescripts"
|
|
962
|
+
]);
|
|
963
|
+
const mathMlDisallowed = freeze([
|
|
964
|
+
"maction",
|
|
965
|
+
"maligngroup",
|
|
966
|
+
"malignmark",
|
|
967
|
+
"mlongdiv",
|
|
968
|
+
"mscarries",
|
|
969
|
+
"mscarry",
|
|
970
|
+
"msgroup",
|
|
971
|
+
"mstack",
|
|
972
|
+
"msline",
|
|
973
|
+
"msrow",
|
|
974
|
+
"semantics",
|
|
975
|
+
"annotation",
|
|
976
|
+
"annotation-xml",
|
|
977
|
+
"mprescripts",
|
|
978
|
+
"none"
|
|
979
|
+
]);
|
|
669
980
|
const text = freeze(["#text"]);
|
|
670
|
-
const html = freeze([
|
|
671
|
-
|
|
672
|
-
|
|
673
|
-
|
|
674
|
-
|
|
675
|
-
|
|
676
|
-
|
|
981
|
+
const html = freeze([
|
|
982
|
+
"accept",
|
|
983
|
+
"action",
|
|
984
|
+
"align",
|
|
985
|
+
"alt",
|
|
986
|
+
"autocapitalize",
|
|
987
|
+
"autocomplete",
|
|
988
|
+
"autopictureinpicture",
|
|
989
|
+
"autoplay",
|
|
990
|
+
"background",
|
|
991
|
+
"bgcolor",
|
|
992
|
+
"border",
|
|
993
|
+
"capture",
|
|
994
|
+
"cellpadding",
|
|
995
|
+
"cellspacing",
|
|
996
|
+
"checked",
|
|
997
|
+
"cite",
|
|
998
|
+
"class",
|
|
999
|
+
"clear",
|
|
1000
|
+
"color",
|
|
1001
|
+
"cols",
|
|
1002
|
+
"colspan",
|
|
1003
|
+
"command",
|
|
1004
|
+
"commandfor",
|
|
1005
|
+
"controls",
|
|
1006
|
+
"controlslist",
|
|
1007
|
+
"coords",
|
|
1008
|
+
"crossorigin",
|
|
1009
|
+
"datetime",
|
|
1010
|
+
"decoding",
|
|
1011
|
+
"default",
|
|
1012
|
+
"dir",
|
|
1013
|
+
"disabled",
|
|
1014
|
+
"disablepictureinpicture",
|
|
1015
|
+
"disableremoteplayback",
|
|
1016
|
+
"download",
|
|
1017
|
+
"draggable",
|
|
1018
|
+
"enctype",
|
|
1019
|
+
"enterkeyhint",
|
|
1020
|
+
"exportparts",
|
|
1021
|
+
"face",
|
|
1022
|
+
"for",
|
|
1023
|
+
"headers",
|
|
1024
|
+
"height",
|
|
1025
|
+
"hidden",
|
|
1026
|
+
"high",
|
|
1027
|
+
"href",
|
|
1028
|
+
"hreflang",
|
|
1029
|
+
"id",
|
|
1030
|
+
"inert",
|
|
1031
|
+
"inputmode",
|
|
1032
|
+
"integrity",
|
|
1033
|
+
"ismap",
|
|
1034
|
+
"kind",
|
|
1035
|
+
"label",
|
|
1036
|
+
"lang",
|
|
1037
|
+
"list",
|
|
1038
|
+
"loading",
|
|
1039
|
+
"loop",
|
|
1040
|
+
"low",
|
|
1041
|
+
"max",
|
|
1042
|
+
"maxlength",
|
|
1043
|
+
"media",
|
|
1044
|
+
"method",
|
|
1045
|
+
"min",
|
|
1046
|
+
"minlength",
|
|
1047
|
+
"multiple",
|
|
1048
|
+
"muted",
|
|
1049
|
+
"name",
|
|
1050
|
+
"nonce",
|
|
1051
|
+
"noshade",
|
|
1052
|
+
"novalidate",
|
|
1053
|
+
"nowrap",
|
|
1054
|
+
"open",
|
|
1055
|
+
"optimum",
|
|
1056
|
+
"part",
|
|
1057
|
+
"pattern",
|
|
1058
|
+
"placeholder",
|
|
1059
|
+
"playsinline",
|
|
1060
|
+
"popover",
|
|
1061
|
+
"popovertarget",
|
|
1062
|
+
"popovertargetaction",
|
|
1063
|
+
"poster",
|
|
1064
|
+
"preload",
|
|
1065
|
+
"pubdate",
|
|
1066
|
+
"radiogroup",
|
|
1067
|
+
"readonly",
|
|
1068
|
+
"rel",
|
|
1069
|
+
"required",
|
|
1070
|
+
"rev",
|
|
1071
|
+
"reversed",
|
|
1072
|
+
"role",
|
|
1073
|
+
"rows",
|
|
1074
|
+
"rowspan",
|
|
1075
|
+
"spellcheck",
|
|
1076
|
+
"scope",
|
|
1077
|
+
"selected",
|
|
1078
|
+
"shape",
|
|
1079
|
+
"size",
|
|
1080
|
+
"sizes",
|
|
1081
|
+
"slot",
|
|
1082
|
+
"span",
|
|
1083
|
+
"srclang",
|
|
1084
|
+
"start",
|
|
1085
|
+
"src",
|
|
1086
|
+
"srcset",
|
|
1087
|
+
"step",
|
|
1088
|
+
"style",
|
|
1089
|
+
"summary",
|
|
1090
|
+
"tabindex",
|
|
1091
|
+
"title",
|
|
1092
|
+
"translate",
|
|
1093
|
+
"type",
|
|
1094
|
+
"usemap",
|
|
1095
|
+
"valign",
|
|
1096
|
+
"value",
|
|
1097
|
+
"width",
|
|
1098
|
+
"wrap",
|
|
1099
|
+
"xmlns"
|
|
1100
|
+
]);
|
|
1101
|
+
const svg = freeze([
|
|
1102
|
+
"accent-height",
|
|
1103
|
+
"accumulate",
|
|
1104
|
+
"additive",
|
|
1105
|
+
"alignment-baseline",
|
|
1106
|
+
"amplitude",
|
|
1107
|
+
"ascent",
|
|
1108
|
+
"attributename",
|
|
1109
|
+
"attributetype",
|
|
1110
|
+
"azimuth",
|
|
1111
|
+
"basefrequency",
|
|
1112
|
+
"baseline-shift",
|
|
1113
|
+
"begin",
|
|
1114
|
+
"bias",
|
|
1115
|
+
"by",
|
|
1116
|
+
"class",
|
|
1117
|
+
"clip",
|
|
1118
|
+
"clippathunits",
|
|
1119
|
+
"clip-path",
|
|
1120
|
+
"clip-rule",
|
|
1121
|
+
"color",
|
|
1122
|
+
"color-interpolation",
|
|
1123
|
+
"color-interpolation-filters",
|
|
1124
|
+
"color-profile",
|
|
1125
|
+
"color-rendering",
|
|
1126
|
+
"cx",
|
|
1127
|
+
"cy",
|
|
1128
|
+
"d",
|
|
1129
|
+
"dx",
|
|
1130
|
+
"dy",
|
|
1131
|
+
"diffuseconstant",
|
|
1132
|
+
"direction",
|
|
1133
|
+
"display",
|
|
1134
|
+
"divisor",
|
|
1135
|
+
"dominant-baseline",
|
|
1136
|
+
"dur",
|
|
1137
|
+
"edgemode",
|
|
1138
|
+
"elevation",
|
|
1139
|
+
"end",
|
|
1140
|
+
"exponent",
|
|
1141
|
+
"fill",
|
|
1142
|
+
"fill-opacity",
|
|
1143
|
+
"fill-rule",
|
|
1144
|
+
"filter",
|
|
1145
|
+
"filterunits",
|
|
1146
|
+
"flood-color",
|
|
1147
|
+
"flood-opacity",
|
|
1148
|
+
"font-family",
|
|
1149
|
+
"font-size",
|
|
1150
|
+
"font-size-adjust",
|
|
1151
|
+
"font-stretch",
|
|
1152
|
+
"font-style",
|
|
1153
|
+
"font-variant",
|
|
1154
|
+
"font-weight",
|
|
1155
|
+
"fx",
|
|
1156
|
+
"fy",
|
|
1157
|
+
"g1",
|
|
1158
|
+
"g2",
|
|
1159
|
+
"glyph-name",
|
|
1160
|
+
"glyphref",
|
|
1161
|
+
"gradientunits",
|
|
1162
|
+
"gradienttransform",
|
|
1163
|
+
"height",
|
|
1164
|
+
"href",
|
|
1165
|
+
"id",
|
|
1166
|
+
"image-rendering",
|
|
1167
|
+
"in",
|
|
1168
|
+
"in2",
|
|
1169
|
+
"intercept",
|
|
1170
|
+
"k",
|
|
1171
|
+
"k1",
|
|
1172
|
+
"k2",
|
|
1173
|
+
"k3",
|
|
1174
|
+
"k4",
|
|
1175
|
+
"kerning",
|
|
1176
|
+
"keypoints",
|
|
1177
|
+
"keysplines",
|
|
1178
|
+
"keytimes",
|
|
1179
|
+
"lang",
|
|
1180
|
+
"lengthadjust",
|
|
1181
|
+
"letter-spacing",
|
|
1182
|
+
"kernelmatrix",
|
|
1183
|
+
"kernelunitlength",
|
|
1184
|
+
"lighting-color",
|
|
1185
|
+
"local",
|
|
1186
|
+
"marker-end",
|
|
1187
|
+
"marker-mid",
|
|
1188
|
+
"marker-start",
|
|
1189
|
+
"markerheight",
|
|
1190
|
+
"markerunits",
|
|
1191
|
+
"markerwidth",
|
|
1192
|
+
"maskcontentunits",
|
|
1193
|
+
"maskunits",
|
|
1194
|
+
"max",
|
|
1195
|
+
"mask",
|
|
1196
|
+
"mask-type",
|
|
1197
|
+
"media",
|
|
1198
|
+
"method",
|
|
1199
|
+
"mode",
|
|
1200
|
+
"min",
|
|
1201
|
+
"name",
|
|
1202
|
+
"numoctaves",
|
|
1203
|
+
"offset",
|
|
1204
|
+
"operator",
|
|
1205
|
+
"opacity",
|
|
1206
|
+
"order",
|
|
1207
|
+
"orient",
|
|
1208
|
+
"orientation",
|
|
1209
|
+
"origin",
|
|
1210
|
+
"overflow",
|
|
1211
|
+
"paint-order",
|
|
1212
|
+
"path",
|
|
1213
|
+
"pathlength",
|
|
1214
|
+
"patterncontentunits",
|
|
1215
|
+
"patterntransform",
|
|
1216
|
+
"patternunits",
|
|
1217
|
+
"pointer-events",
|
|
1218
|
+
"points",
|
|
1219
|
+
"preservealpha",
|
|
1220
|
+
"preserveaspectratio",
|
|
1221
|
+
"primitiveunits",
|
|
1222
|
+
"r",
|
|
1223
|
+
"rx",
|
|
1224
|
+
"ry",
|
|
1225
|
+
"radius",
|
|
1226
|
+
"refx",
|
|
1227
|
+
"refy",
|
|
1228
|
+
"repeatcount",
|
|
1229
|
+
"repeatdur",
|
|
1230
|
+
"restart",
|
|
1231
|
+
"result",
|
|
1232
|
+
"rotate",
|
|
1233
|
+
"scale",
|
|
1234
|
+
"seed",
|
|
1235
|
+
"shape-rendering",
|
|
1236
|
+
"slope",
|
|
1237
|
+
"specularconstant",
|
|
1238
|
+
"specularexponent",
|
|
1239
|
+
"spreadmethod",
|
|
1240
|
+
"startoffset",
|
|
1241
|
+
"stddeviation",
|
|
1242
|
+
"stitchtiles",
|
|
1243
|
+
"stop-color",
|
|
1244
|
+
"stop-opacity",
|
|
1245
|
+
"stroke-dasharray",
|
|
1246
|
+
"stroke-dashoffset",
|
|
1247
|
+
"stroke-linecap",
|
|
1248
|
+
"stroke-linejoin",
|
|
1249
|
+
"stroke-miterlimit",
|
|
1250
|
+
"stroke-opacity",
|
|
1251
|
+
"stroke",
|
|
1252
|
+
"stroke-width",
|
|
1253
|
+
"style",
|
|
1254
|
+
"surfacescale",
|
|
1255
|
+
"systemlanguage",
|
|
1256
|
+
"tabindex",
|
|
1257
|
+
"tablevalues",
|
|
1258
|
+
"targetx",
|
|
1259
|
+
"targety",
|
|
1260
|
+
"transform",
|
|
1261
|
+
"transform-origin",
|
|
1262
|
+
"text-anchor",
|
|
1263
|
+
"text-decoration",
|
|
1264
|
+
"text-orientation",
|
|
1265
|
+
"text-rendering",
|
|
1266
|
+
"textlength",
|
|
1267
|
+
"type",
|
|
1268
|
+
"u1",
|
|
1269
|
+
"u2",
|
|
1270
|
+
"unicode",
|
|
1271
|
+
"values",
|
|
1272
|
+
"vector-effect",
|
|
1273
|
+
"viewbox",
|
|
1274
|
+
"visibility",
|
|
1275
|
+
"version",
|
|
1276
|
+
"vert-adv-y",
|
|
1277
|
+
"vert-origin-x",
|
|
1278
|
+
"vert-origin-y",
|
|
1279
|
+
"width",
|
|
1280
|
+
"word-spacing",
|
|
1281
|
+
"wrap",
|
|
1282
|
+
"writing-mode",
|
|
1283
|
+
"xchannelselector",
|
|
1284
|
+
"ychannelselector",
|
|
1285
|
+
"x",
|
|
1286
|
+
"x1",
|
|
1287
|
+
"x2",
|
|
1288
|
+
"xmlns",
|
|
1289
|
+
"y",
|
|
1290
|
+
"y1",
|
|
1291
|
+
"y2",
|
|
1292
|
+
"z",
|
|
1293
|
+
"zoomandpan"
|
|
1294
|
+
]);
|
|
1295
|
+
const mathMl = freeze([
|
|
1296
|
+
"accent",
|
|
1297
|
+
"accentunder",
|
|
1298
|
+
"align",
|
|
1299
|
+
"bevelled",
|
|
1300
|
+
"close",
|
|
1301
|
+
"columnalign",
|
|
1302
|
+
"columnlines",
|
|
1303
|
+
"columnspacing",
|
|
1304
|
+
"columnspan",
|
|
1305
|
+
"denomalign",
|
|
1306
|
+
"depth",
|
|
1307
|
+
"dir",
|
|
1308
|
+
"display",
|
|
1309
|
+
"displaystyle",
|
|
1310
|
+
"encoding",
|
|
1311
|
+
"fence",
|
|
1312
|
+
"frame",
|
|
1313
|
+
"height",
|
|
1314
|
+
"href",
|
|
1315
|
+
"id",
|
|
1316
|
+
"largeop",
|
|
1317
|
+
"length",
|
|
1318
|
+
"linethickness",
|
|
1319
|
+
"lquote",
|
|
1320
|
+
"lspace",
|
|
1321
|
+
"mathbackground",
|
|
1322
|
+
"mathcolor",
|
|
1323
|
+
"mathsize",
|
|
1324
|
+
"mathvariant",
|
|
1325
|
+
"maxsize",
|
|
1326
|
+
"minsize",
|
|
1327
|
+
"movablelimits",
|
|
1328
|
+
"notation",
|
|
1329
|
+
"numalign",
|
|
1330
|
+
"open",
|
|
1331
|
+
"rowalign",
|
|
1332
|
+
"rowlines",
|
|
1333
|
+
"rowspacing",
|
|
1334
|
+
"rowspan",
|
|
1335
|
+
"rspace",
|
|
1336
|
+
"rquote",
|
|
1337
|
+
"scriptlevel",
|
|
1338
|
+
"scriptminsize",
|
|
1339
|
+
"scriptsizemultiplier",
|
|
1340
|
+
"selection",
|
|
1341
|
+
"separator",
|
|
1342
|
+
"separators",
|
|
1343
|
+
"stretchy",
|
|
1344
|
+
"subscriptshift",
|
|
1345
|
+
"supscriptshift",
|
|
1346
|
+
"symmetric",
|
|
1347
|
+
"voffset",
|
|
1348
|
+
"width",
|
|
1349
|
+
"xmlns"
|
|
1350
|
+
]);
|
|
1351
|
+
const xml = freeze([
|
|
1352
|
+
"xlink:href",
|
|
1353
|
+
"xml:id",
|
|
1354
|
+
"xlink:title",
|
|
1355
|
+
"xml:space",
|
|
1356
|
+
"xmlns:xlink"
|
|
1357
|
+
]);
|
|
1358
|
+
const MUSTACHE_EXPR = seal(/{{[\w\W]*|^[\w\W]*}}/g);
|
|
1359
|
+
const ERB_EXPR = seal(/<%[\w\W]*|^[\w\W]*%>/g);
|
|
1360
|
+
const TMPLIT_EXPR = seal(/\${[\w\W]*/g);
|
|
677
1361
|
const DATA_ATTR = seal(/^data-[\-\w.\u00B7-\uFFFF]+$/);
|
|
678
1362
|
const ARIA_ATTR = seal(/^aria-[\-\w]+$/);
|
|
679
|
-
const IS_ALLOWED_URI = seal(
|
|
680
|
-
/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i
|
|
681
|
-
// eslint-disable-line no-useless-escape
|
|
682
|
-
);
|
|
1363
|
+
const IS_ALLOWED_URI = seal(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i);
|
|
683
1364
|
const IS_SCRIPT_OR_DATA = seal(/^(?:\w+script|data):/i);
|
|
684
|
-
const ATTR_WHITESPACE = seal(
|
|
685
|
-
/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g
|
|
686
|
-
// eslint-disable-line no-control-regex
|
|
687
|
-
);
|
|
1365
|
+
const ATTR_WHITESPACE = seal(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g);
|
|
688
1366
|
const DOCTYPE_NAME = seal(/^html$/i);
|
|
689
1367
|
const CUSTOM_ELEMENT = seal(/^[a-z][.\w]*(-[.\w]+)+$/i);
|
|
690
|
-
|
|
691
|
-
|
|
692
|
-
|
|
693
|
-
|
|
694
|
-
CUSTOM_ELEMENT,
|
|
695
|
-
DATA_ATTR,
|
|
696
|
-
DOCTYPE_NAME,
|
|
697
|
-
ERB_EXPR,
|
|
698
|
-
IS_ALLOWED_URI,
|
|
699
|
-
IS_SCRIPT_OR_DATA,
|
|
700
|
-
MUSTACHE_EXPR,
|
|
701
|
-
TMPLIT_EXPR
|
|
702
|
-
});
|
|
1368
|
+
const ELEMENT_MARKUP_PROBE = seal(/<[/\w!]/g);
|
|
1369
|
+
const COMMENT_MARKUP_PROBE = seal(/<[/\w]/g);
|
|
1370
|
+
const FALLBACK_TAG_CLOSE = seal(/<\/no(script|embed|frames)/i);
|
|
1371
|
+
const SELF_CLOSING_TAG = seal(/\/>/i);
|
|
703
1372
|
const NODE_TYPE = {
|
|
704
1373
|
element: 1,
|
|
1374
|
+
attribute: 2,
|
|
705
1375
|
text: 3,
|
|
706
|
-
|
|
707
|
-
|
|
1376
|
+
cdataSection: 4,
|
|
1377
|
+
entityReference: 5,
|
|
1378
|
+
entityNode: 6,
|
|
1379
|
+
processingInstruction: 7,
|
|
708
1380
|
comment: 8,
|
|
709
|
-
document: 9
|
|
1381
|
+
document: 9,
|
|
1382
|
+
documentType: 10,
|
|
1383
|
+
documentFragment: 11,
|
|
1384
|
+
notation: 12
|
|
710
1385
|
};
|
|
1386
|
+
const LITERAL_TEXT_ELEMENT_NAMES = [
|
|
1387
|
+
"style",
|
|
1388
|
+
"script",
|
|
1389
|
+
"xmp",
|
|
1390
|
+
"iframe",
|
|
1391
|
+
"noembed",
|
|
1392
|
+
"noframes",
|
|
1393
|
+
"plaintext",
|
|
1394
|
+
"noscript"
|
|
1395
|
+
];
|
|
1396
|
+
const LITERAL_TEXT_ELEMENTS = freeze(addToSet({}, LITERAL_TEXT_ELEMENT_NAMES));
|
|
1397
|
+
const LITERAL_TEXT_CLOSE = function() {
|
|
1398
|
+
const map = {};
|
|
1399
|
+
arrayForEach(LITERAL_TEXT_ELEMENT_NAMES, (name) => {
|
|
1400
|
+
map[name] = seal(new RegExp("</" + name + "(?=[\\t\\n\\f\\r />])", "i"));
|
|
1401
|
+
});
|
|
1402
|
+
return freeze(map);
|
|
1403
|
+
}();
|
|
711
1404
|
const getGlobal = function getGlobal2() {
|
|
712
1405
|
return typeof window === "undefined" ? null : window;
|
|
713
1406
|
};
|
|
714
1407
|
const _createTrustedTypesPolicy = function _createTrustedTypesPolicy2(trustedTypes, purifyHostElement) {
|
|
715
|
-
if (typeof trustedTypes !== "object" || typeof trustedTypes.createPolicy !== "function")
|
|
716
|
-
return null;
|
|
717
|
-
}
|
|
1408
|
+
if (typeof trustedTypes !== "object" || typeof trustedTypes.createPolicy !== "function") return null;
|
|
718
1409
|
let suffix = null;
|
|
719
1410
|
const ATTR_NAME = "data-tt-policy-suffix";
|
|
720
|
-
if (purifyHostElement && purifyHostElement.hasAttribute(ATTR_NAME))
|
|
721
|
-
suffix = purifyHostElement.getAttribute(ATTR_NAME);
|
|
722
|
-
}
|
|
1411
|
+
if (purifyHostElement && purifyHostElement.hasAttribute(ATTR_NAME)) suffix = purifyHostElement.getAttribute(ATTR_NAME);
|
|
723
1412
|
const policyName = "dompurify" + (suffix ? "#" + suffix : "");
|
|
724
1413
|
try {
|
|
725
1414
|
return trustedTypes.createPolicy(policyName, {
|
|
@@ -748,73 +1437,106 @@ const _createHooksMap = function _createHooksMap2() {
|
|
|
748
1437
|
uponSanitizeShadowNode: []
|
|
749
1438
|
};
|
|
750
1439
|
};
|
|
1440
|
+
const _resolveSetOption = function _resolveSetOption2(cfg, key, fallback, options) {
|
|
1441
|
+
return objectHasOwnProperty(cfg, key) && arrayIsArray(cfg[key]) ? addToSet(options.base ? clone(options.base) : {}, cfg[key], options.transform) : fallback;
|
|
1442
|
+
};
|
|
1443
|
+
const _resolveObjectOption = function _resolveObjectOption2(cfg, key, makeFallback) {
|
|
1444
|
+
const value = objectHasOwnProperty(cfg, key) ? cfg[key] : void 0;
|
|
1445
|
+
return value && typeof value === "object" ? clone(value) : makeFallback();
|
|
1446
|
+
};
|
|
751
1447
|
function createDOMPurify() {
|
|
752
1448
|
let window2 = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : getGlobal();
|
|
753
1449
|
const DOMPurify = (root) => createDOMPurify(root);
|
|
754
|
-
DOMPurify.version = "3.
|
|
1450
|
+
DOMPurify.version = "3.4.16";
|
|
755
1451
|
DOMPurify.removed = [];
|
|
756
1452
|
if (!window2 || !window2.document || window2.document.nodeType !== NODE_TYPE.document || !window2.Element) {
|
|
757
1453
|
DOMPurify.isSupported = false;
|
|
758
1454
|
return DOMPurify;
|
|
759
1455
|
}
|
|
760
|
-
let
|
|
761
|
-
document: document2
|
|
762
|
-
} = window2;
|
|
1456
|
+
let document2 = window2.document;
|
|
763
1457
|
const originalDocument = document2;
|
|
764
1458
|
const currentScript = originalDocument.currentScript;
|
|
765
|
-
|
|
766
|
-
|
|
767
|
-
|
|
768
|
-
|
|
769
|
-
|
|
770
|
-
NodeFilter,
|
|
771
|
-
NamedNodeMap = window2.NamedNodeMap || window2.MozNamedAttrMap,
|
|
772
|
-
HTMLFormElement,
|
|
773
|
-
DOMParser,
|
|
774
|
-
trustedTypes
|
|
775
|
-
} = window2;
|
|
1459
|
+
window2.DocumentFragment;
|
|
1460
|
+
const HTMLTemplateElement = window2.HTMLTemplateElement, Node = window2.Node, Element = window2.Element, NodeFilter = window2.NodeFilter;
|
|
1461
|
+
window2.NamedNodeMap === void 0 && (window2.NamedNodeMap || window2.MozNamedAttrMap);
|
|
1462
|
+
window2.HTMLFormElement;
|
|
1463
|
+
const DOMParser = window2.DOMParser, trustedTypes = window2.trustedTypes;
|
|
776
1464
|
const ElementPrototype = Element.prototype;
|
|
777
1465
|
const cloneNode = lookupGetter(ElementPrototype, "cloneNode");
|
|
778
1466
|
const remove = lookupGetter(ElementPrototype, "remove");
|
|
1467
|
+
const removeAttributeNode = lookupGetter(ElementPrototype, "removeAttributeNode");
|
|
779
1468
|
const getNextSibling = lookupGetter(ElementPrototype, "nextSibling");
|
|
780
1469
|
const getChildNodes = lookupGetter(ElementPrototype, "childNodes");
|
|
781
1470
|
const getParentNode = lookupGetter(ElementPrototype, "parentNode");
|
|
1471
|
+
const getShadowRoot = lookupGetter(ElementPrototype, "shadowRoot");
|
|
1472
|
+
const getAttributes = lookupGetter(ElementPrototype, "attributes");
|
|
1473
|
+
const getNodeType = Node && Node.prototype ? lookupGetter(Node.prototype, "nodeType") : null;
|
|
1474
|
+
const getNodeName = Node && Node.prototype ? lookupGetter(Node.prototype, "nodeName") : null;
|
|
1475
|
+
const getOwnerDocument = Node && Node.prototype ? lookupGetter(Node.prototype, "ownerDocument") : null;
|
|
1476
|
+
const _readNodeType = function _readNodeType2(node) {
|
|
1477
|
+
return getNodeType ? getNodeType(node) : node.nodeType;
|
|
1478
|
+
};
|
|
1479
|
+
const _readNodeName = function _readNodeName2(node) {
|
|
1480
|
+
return getNodeName ? getNodeName(node) : node.nodeName;
|
|
1481
|
+
};
|
|
782
1482
|
if (typeof HTMLTemplateElement === "function") {
|
|
783
1483
|
const template = document2.createElement("template");
|
|
784
|
-
if (template.content && template.content.ownerDocument)
|
|
785
|
-
document2 = template.content.ownerDocument;
|
|
786
|
-
}
|
|
1484
|
+
if (template.content && template.content.ownerDocument) document2 = template.content.ownerDocument;
|
|
787
1485
|
}
|
|
788
1486
|
let trustedTypesPolicy;
|
|
789
1487
|
let emptyHTML = "";
|
|
790
|
-
|
|
791
|
-
|
|
792
|
-
|
|
793
|
-
|
|
794
|
-
|
|
795
|
-
}
|
|
796
|
-
const {
|
|
797
|
-
|
|
798
|
-
|
|
1488
|
+
let defaultTrustedTypesPolicy;
|
|
1489
|
+
let defaultTrustedTypesPolicyResolved = false;
|
|
1490
|
+
let IN_TRUSTED_TYPES_POLICY = 0;
|
|
1491
|
+
const _assertNotInTrustedTypesPolicy = function _assertNotInTrustedTypesPolicy2() {
|
|
1492
|
+
if (IN_TRUSTED_TYPES_POLICY > 0) throw typeErrorCreate('A configured TRUSTED_TYPES_POLICY callback (createHTML or createScriptURL) must not call DOMPurify.sanitize, as that causes infinite recursion. Do not pass a policy whose callbacks wrap DOMPurify as TRUSTED_TYPES_POLICY; see the "DOMPurify and Trusted Types" section of the README.');
|
|
1493
|
+
};
|
|
1494
|
+
const _createTrustedHTML = function _createTrustedHTML2(html2) {
|
|
1495
|
+
_assertNotInTrustedTypesPolicy();
|
|
1496
|
+
IN_TRUSTED_TYPES_POLICY++;
|
|
1497
|
+
try {
|
|
1498
|
+
return trustedTypesPolicy.createHTML(html2);
|
|
1499
|
+
} finally {
|
|
1500
|
+
IN_TRUSTED_TYPES_POLICY--;
|
|
1501
|
+
}
|
|
1502
|
+
};
|
|
1503
|
+
const _createTrustedScriptURL = function _createTrustedScriptURL2(scriptUrl) {
|
|
1504
|
+
_assertNotInTrustedTypesPolicy();
|
|
1505
|
+
IN_TRUSTED_TYPES_POLICY++;
|
|
1506
|
+
try {
|
|
1507
|
+
return trustedTypesPolicy.createScriptURL(scriptUrl);
|
|
1508
|
+
} finally {
|
|
1509
|
+
IN_TRUSTED_TYPES_POLICY--;
|
|
1510
|
+
}
|
|
1511
|
+
};
|
|
1512
|
+
const _getDefaultTrustedTypesPolicy = function _getDefaultTrustedTypesPolicy2() {
|
|
1513
|
+
if (!defaultTrustedTypesPolicyResolved) {
|
|
1514
|
+
defaultTrustedTypesPolicy = _createTrustedTypesPolicy(trustedTypes, currentScript);
|
|
1515
|
+
defaultTrustedTypesPolicyResolved = true;
|
|
1516
|
+
}
|
|
1517
|
+
return defaultTrustedTypesPolicy;
|
|
1518
|
+
};
|
|
1519
|
+
const _document = document2, implementation = _document.implementation, createNodeIterator = _document.createNodeIterator, createDocumentFragment = _document.createDocumentFragment, getElementsByTagName = _document.getElementsByTagName;
|
|
1520
|
+
const importNode = originalDocument.importNode;
|
|
799
1521
|
let hooks = _createHooksMap();
|
|
800
1522
|
DOMPurify.isSupported = typeof entries === "function" && typeof getParentNode === "function" && implementation && implementation.createHTMLDocument !== void 0;
|
|
801
|
-
const
|
|
802
|
-
|
|
803
|
-
ERB_EXPR: ERB_EXPR2,
|
|
804
|
-
TMPLIT_EXPR: TMPLIT_EXPR2,
|
|
805
|
-
DATA_ATTR: DATA_ATTR2,
|
|
806
|
-
ARIA_ATTR: ARIA_ATTR2,
|
|
807
|
-
IS_SCRIPT_OR_DATA: IS_SCRIPT_OR_DATA2,
|
|
808
|
-
ATTR_WHITESPACE: ATTR_WHITESPACE2,
|
|
809
|
-
CUSTOM_ELEMENT: CUSTOM_ELEMENT2
|
|
810
|
-
} = EXPRESSIONS;
|
|
811
|
-
let {
|
|
812
|
-
IS_ALLOWED_URI: IS_ALLOWED_URI$1
|
|
813
|
-
} = EXPRESSIONS;
|
|
1523
|
+
const MUSTACHE_EXPR$1 = MUSTACHE_EXPR, ERB_EXPR$1 = ERB_EXPR, TMPLIT_EXPR$1 = TMPLIT_EXPR, DATA_ATTR$1 = DATA_ATTR, ARIA_ATTR$1 = ARIA_ATTR, IS_SCRIPT_OR_DATA$1 = IS_SCRIPT_OR_DATA, ATTR_WHITESPACE$1 = ATTR_WHITESPACE, CUSTOM_ELEMENT$1 = CUSTOM_ELEMENT;
|
|
1524
|
+
let IS_ALLOWED_URI$1 = IS_ALLOWED_URI;
|
|
814
1525
|
let ALLOWED_TAGS = null;
|
|
815
|
-
const DEFAULT_ALLOWED_TAGS = addToSet({}, [
|
|
1526
|
+
const DEFAULT_ALLOWED_TAGS = addToSet({}, [
|
|
1527
|
+
...html$1,
|
|
1528
|
+
...svg$1,
|
|
1529
|
+
...svgFilters,
|
|
1530
|
+
...mathMl$1,
|
|
1531
|
+
...text
|
|
1532
|
+
]);
|
|
816
1533
|
let ALLOWED_ATTR = null;
|
|
817
|
-
const DEFAULT_ALLOWED_ATTR = addToSet({}, [
|
|
1534
|
+
const DEFAULT_ALLOWED_ATTR = addToSet({}, [
|
|
1535
|
+
...html,
|
|
1536
|
+
...svg,
|
|
1537
|
+
...mathMl,
|
|
1538
|
+
...xml
|
|
1539
|
+
]);
|
|
818
1540
|
let CUSTOM_ELEMENT_HANDLING = Object.seal(create$1(null, {
|
|
819
1541
|
tagNameCheck: {
|
|
820
1542
|
writable: true,
|
|
@@ -859,6 +1581,8 @@ function createDOMPurify() {
|
|
|
859
1581
|
let SAFE_FOR_XML = true;
|
|
860
1582
|
let WHOLE_DOCUMENT = false;
|
|
861
1583
|
let SET_CONFIG = false;
|
|
1584
|
+
let SET_CONFIG_ALLOWED_TAGS = null;
|
|
1585
|
+
let SET_CONFIG_ALLOWED_ATTR = null;
|
|
862
1586
|
let FORCE_BODY = false;
|
|
863
1587
|
let RETURN_DOM = false;
|
|
864
1588
|
let RETURN_DOM_FRAGMENT = false;
|
|
@@ -870,21 +1594,88 @@ function createDOMPurify() {
|
|
|
870
1594
|
let IN_PLACE = false;
|
|
871
1595
|
let USE_PROFILES = {};
|
|
872
1596
|
let FORBID_CONTENTS = null;
|
|
873
|
-
const DEFAULT_FORBID_CONTENTS = addToSet({}, [
|
|
1597
|
+
const DEFAULT_FORBID_CONTENTS = addToSet({}, [
|
|
1598
|
+
"annotation-xml",
|
|
1599
|
+
"audio",
|
|
1600
|
+
"colgroup",
|
|
1601
|
+
"desc",
|
|
1602
|
+
"foreignobject",
|
|
1603
|
+
"head",
|
|
1604
|
+
"iframe",
|
|
1605
|
+
"math",
|
|
1606
|
+
"mi",
|
|
1607
|
+
"mn",
|
|
1608
|
+
"mo",
|
|
1609
|
+
"ms",
|
|
1610
|
+
"mtext",
|
|
1611
|
+
"noembed",
|
|
1612
|
+
"noframes",
|
|
1613
|
+
"noscript",
|
|
1614
|
+
"plaintext",
|
|
1615
|
+
"script",
|
|
1616
|
+
"selectedcontent",
|
|
1617
|
+
"style",
|
|
1618
|
+
"svg",
|
|
1619
|
+
"template",
|
|
1620
|
+
"thead",
|
|
1621
|
+
"title",
|
|
1622
|
+
"video",
|
|
1623
|
+
"xmp"
|
|
1624
|
+
]);
|
|
874
1625
|
let DATA_URI_TAGS = null;
|
|
875
|
-
const DEFAULT_DATA_URI_TAGS = addToSet({}, [
|
|
1626
|
+
const DEFAULT_DATA_URI_TAGS = addToSet({}, [
|
|
1627
|
+
"audio",
|
|
1628
|
+
"video",
|
|
1629
|
+
"img",
|
|
1630
|
+
"source",
|
|
1631
|
+
"image",
|
|
1632
|
+
"track"
|
|
1633
|
+
]);
|
|
876
1634
|
let URI_SAFE_ATTRIBUTES = null;
|
|
877
|
-
const DEFAULT_URI_SAFE_ATTRIBUTES = addToSet({}, [
|
|
1635
|
+
const DEFAULT_URI_SAFE_ATTRIBUTES = addToSet({}, [
|
|
1636
|
+
"alt",
|
|
1637
|
+
"class",
|
|
1638
|
+
"for",
|
|
1639
|
+
"id",
|
|
1640
|
+
"label",
|
|
1641
|
+
"name",
|
|
1642
|
+
"pattern",
|
|
1643
|
+
"placeholder",
|
|
1644
|
+
"role",
|
|
1645
|
+
"summary",
|
|
1646
|
+
"title",
|
|
1647
|
+
"value",
|
|
1648
|
+
"style",
|
|
1649
|
+
"xmlns"
|
|
1650
|
+
]);
|
|
878
1651
|
const MATHML_NAMESPACE = "http://www.w3.org/1998/Math/MathML";
|
|
879
1652
|
const SVG_NAMESPACE = "http://www.w3.org/2000/svg";
|
|
880
1653
|
const HTML_NAMESPACE = "http://www.w3.org/1999/xhtml";
|
|
881
1654
|
let NAMESPACE = HTML_NAMESPACE;
|
|
882
1655
|
let IS_EMPTY_INPUT = false;
|
|
883
1656
|
let ALLOWED_NAMESPACES = null;
|
|
884
|
-
const DEFAULT_ALLOWED_NAMESPACES = addToSet({}, [
|
|
885
|
-
|
|
886
|
-
|
|
887
|
-
|
|
1657
|
+
const DEFAULT_ALLOWED_NAMESPACES = addToSet({}, [
|
|
1658
|
+
MATHML_NAMESPACE,
|
|
1659
|
+
SVG_NAMESPACE,
|
|
1660
|
+
HTML_NAMESPACE
|
|
1661
|
+
], stringToString);
|
|
1662
|
+
const DEFAULT_MATHML_TEXT_INTEGRATION_POINTS = freeze([
|
|
1663
|
+
"mi",
|
|
1664
|
+
"mo",
|
|
1665
|
+
"mn",
|
|
1666
|
+
"ms",
|
|
1667
|
+
"mtext"
|
|
1668
|
+
]);
|
|
1669
|
+
let MATHML_TEXT_INTEGRATION_POINTS = addToSet({}, DEFAULT_MATHML_TEXT_INTEGRATION_POINTS);
|
|
1670
|
+
const DEFAULT_HTML_INTEGRATION_POINTS = freeze(["annotation-xml"]);
|
|
1671
|
+
let HTML_INTEGRATION_POINTS = addToSet({}, DEFAULT_HTML_INTEGRATION_POINTS);
|
|
1672
|
+
const COMMON_SVG_AND_HTML_ELEMENTS = addToSet({}, [
|
|
1673
|
+
"title",
|
|
1674
|
+
"style",
|
|
1675
|
+
"font",
|
|
1676
|
+
"a",
|
|
1677
|
+
"script"
|
|
1678
|
+
]);
|
|
888
1679
|
let PARSER_MEDIA_TYPE = null;
|
|
889
1680
|
const SUPPORTED_PARSER_MEDIA_TYPES = ["application/xhtml+xml", "text/html"];
|
|
890
1681
|
const DEFAULT_PARSER_MEDIA_TYPE = "text/html";
|
|
@@ -896,25 +1687,26 @@ function createDOMPurify() {
|
|
|
896
1687
|
};
|
|
897
1688
|
const _parseConfig = function _parseConfig2() {
|
|
898
1689
|
let cfg = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
|
|
899
|
-
if (CONFIG && CONFIG === cfg)
|
|
900
|
-
|
|
901
|
-
}
|
|
902
|
-
if (!cfg || typeof cfg !== "object") {
|
|
903
|
-
cfg = {};
|
|
904
|
-
}
|
|
1690
|
+
if (CONFIG && CONFIG === cfg) return;
|
|
1691
|
+
if (!cfg || typeof cfg !== "object") cfg = {};
|
|
905
1692
|
cfg = clone(cfg);
|
|
906
|
-
PARSER_MEDIA_TYPE =
|
|
907
|
-
SUPPORTED_PARSER_MEDIA_TYPES.indexOf(cfg.PARSER_MEDIA_TYPE) === -1 ? DEFAULT_PARSER_MEDIA_TYPE : cfg.PARSER_MEDIA_TYPE;
|
|
1693
|
+
PARSER_MEDIA_TYPE = SUPPORTED_PARSER_MEDIA_TYPES.indexOf(cfg.PARSER_MEDIA_TYPE) === -1 ? DEFAULT_PARSER_MEDIA_TYPE : cfg.PARSER_MEDIA_TYPE;
|
|
908
1694
|
transformCaseFunc = PARSER_MEDIA_TYPE === "application/xhtml+xml" ? stringToString : stringToLowerCase;
|
|
909
|
-
ALLOWED_TAGS =
|
|
910
|
-
ALLOWED_ATTR =
|
|
911
|
-
ALLOWED_NAMESPACES =
|
|
912
|
-
URI_SAFE_ATTRIBUTES =
|
|
913
|
-
|
|
914
|
-
|
|
915
|
-
|
|
916
|
-
|
|
917
|
-
|
|
1695
|
+
ALLOWED_TAGS = _resolveSetOption(cfg, "ALLOWED_TAGS", DEFAULT_ALLOWED_TAGS, { transform: transformCaseFunc });
|
|
1696
|
+
ALLOWED_ATTR = _resolveSetOption(cfg, "ALLOWED_ATTR", DEFAULT_ALLOWED_ATTR, { transform: transformCaseFunc });
|
|
1697
|
+
ALLOWED_NAMESPACES = _resolveSetOption(cfg, "ALLOWED_NAMESPACES", DEFAULT_ALLOWED_NAMESPACES, { transform: stringToString });
|
|
1698
|
+
URI_SAFE_ATTRIBUTES = _resolveSetOption(cfg, "ADD_URI_SAFE_ATTR", DEFAULT_URI_SAFE_ATTRIBUTES, {
|
|
1699
|
+
transform: transformCaseFunc,
|
|
1700
|
+
base: DEFAULT_URI_SAFE_ATTRIBUTES
|
|
1701
|
+
});
|
|
1702
|
+
DATA_URI_TAGS = _resolveSetOption(cfg, "ADD_DATA_URI_TAGS", DEFAULT_DATA_URI_TAGS, {
|
|
1703
|
+
transform: transformCaseFunc,
|
|
1704
|
+
base: DEFAULT_DATA_URI_TAGS
|
|
1705
|
+
});
|
|
1706
|
+
FORBID_CONTENTS = _resolveSetOption(cfg, "FORBID_CONTENTS", DEFAULT_FORBID_CONTENTS, { transform: transformCaseFunc });
|
|
1707
|
+
FORBID_TAGS = _resolveSetOption(cfg, "FORBID_TAGS", clone({}), { transform: transformCaseFunc });
|
|
1708
|
+
FORBID_ATTR = _resolveSetOption(cfg, "FORBID_ATTR", clone({}), { transform: transformCaseFunc });
|
|
1709
|
+
USE_PROFILES = objectHasOwnProperty(cfg, "USE_PROFILES") ? cfg.USE_PROFILES && typeof cfg.USE_PROFILES === "object" ? clone(cfg.USE_PROFILES) : cfg.USE_PROFILES : false;
|
|
918
1710
|
ALLOW_ARIA_ATTR = cfg.ALLOW_ARIA_ATTR !== false;
|
|
919
1711
|
ALLOW_DATA_ATTR = cfg.ALLOW_DATA_ATTR !== false;
|
|
920
1712
|
ALLOW_UNKNOWN_PROTOCOLS = cfg.ALLOW_UNKNOWN_PROTOCOLS || false;
|
|
@@ -930,29 +1722,21 @@ function createDOMPurify() {
|
|
|
930
1722
|
SANITIZE_NAMED_PROPS = cfg.SANITIZE_NAMED_PROPS || false;
|
|
931
1723
|
KEEP_CONTENT = cfg.KEEP_CONTENT !== false;
|
|
932
1724
|
IN_PLACE = cfg.IN_PLACE || false;
|
|
933
|
-
IS_ALLOWED_URI$1 = cfg.ALLOWED_URI_REGEXP
|
|
934
|
-
NAMESPACE = cfg.NAMESPACE
|
|
935
|
-
MATHML_TEXT_INTEGRATION_POINTS = cfg
|
|
936
|
-
HTML_INTEGRATION_POINTS = cfg
|
|
937
|
-
|
|
938
|
-
|
|
939
|
-
|
|
940
|
-
|
|
941
|
-
if (
|
|
942
|
-
|
|
943
|
-
|
|
944
|
-
if (
|
|
945
|
-
CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements = cfg.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements;
|
|
946
|
-
}
|
|
947
|
-
if (SAFE_FOR_TEMPLATES) {
|
|
948
|
-
ALLOW_DATA_ATTR = false;
|
|
949
|
-
}
|
|
950
|
-
if (RETURN_DOM_FRAGMENT) {
|
|
951
|
-
RETURN_DOM = true;
|
|
952
|
-
}
|
|
1725
|
+
IS_ALLOWED_URI$1 = isRegex(cfg.ALLOWED_URI_REGEXP) ? cfg.ALLOWED_URI_REGEXP : IS_ALLOWED_URI;
|
|
1726
|
+
NAMESPACE = typeof cfg.NAMESPACE === "string" ? cfg.NAMESPACE : HTML_NAMESPACE;
|
|
1727
|
+
MATHML_TEXT_INTEGRATION_POINTS = _resolveObjectOption(cfg, "MATHML_TEXT_INTEGRATION_POINTS", () => addToSet({}, DEFAULT_MATHML_TEXT_INTEGRATION_POINTS));
|
|
1728
|
+
HTML_INTEGRATION_POINTS = _resolveObjectOption(cfg, "HTML_INTEGRATION_POINTS", () => addToSet({}, DEFAULT_HTML_INTEGRATION_POINTS));
|
|
1729
|
+
const customElementHandling = _resolveObjectOption(cfg, "CUSTOM_ELEMENT_HANDLING", () => create$1(null));
|
|
1730
|
+
CUSTOM_ELEMENT_HANDLING = create$1(null);
|
|
1731
|
+
if (objectHasOwnProperty(customElementHandling, "tagNameCheck") && isRegexOrFunction(customElementHandling.tagNameCheck)) CUSTOM_ELEMENT_HANDLING.tagNameCheck = customElementHandling.tagNameCheck;
|
|
1732
|
+
if (objectHasOwnProperty(customElementHandling, "attributeNameCheck") && isRegexOrFunction(customElementHandling.attributeNameCheck)) CUSTOM_ELEMENT_HANDLING.attributeNameCheck = customElementHandling.attributeNameCheck;
|
|
1733
|
+
if (objectHasOwnProperty(customElementHandling, "allowCustomizedBuiltInElements") && typeof customElementHandling.allowCustomizedBuiltInElements === "boolean") CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements = customElementHandling.allowCustomizedBuiltInElements;
|
|
1734
|
+
seal(CUSTOM_ELEMENT_HANDLING);
|
|
1735
|
+
if (SAFE_FOR_TEMPLATES) ALLOW_DATA_ATTR = false;
|
|
1736
|
+
if (RETURN_DOM_FRAGMENT) RETURN_DOM = true;
|
|
953
1737
|
if (USE_PROFILES) {
|
|
954
1738
|
ALLOWED_TAGS = addToSet({}, text);
|
|
955
|
-
ALLOWED_ATTR =
|
|
1739
|
+
ALLOWED_ATTR = create$1(null);
|
|
956
1740
|
if (USE_PROFILES.html === true) {
|
|
957
1741
|
addToSet(ALLOWED_TAGS, html$1);
|
|
958
1742
|
addToSet(ALLOWED_ATTR, html);
|
|
@@ -973,175 +1757,227 @@ function createDOMPurify() {
|
|
|
973
1757
|
addToSet(ALLOWED_ATTR, xml);
|
|
974
1758
|
}
|
|
975
1759
|
}
|
|
976
|
-
|
|
977
|
-
|
|
978
|
-
|
|
979
|
-
|
|
980
|
-
|
|
981
|
-
|
|
982
|
-
}
|
|
1760
|
+
EXTRA_ELEMENT_HANDLING.tagCheck = null;
|
|
1761
|
+
EXTRA_ELEMENT_HANDLING.attributeCheck = null;
|
|
1762
|
+
if (objectHasOwnProperty(cfg, "ADD_TAGS")) {
|
|
1763
|
+
if (typeof cfg.ADD_TAGS === "function") EXTRA_ELEMENT_HANDLING.tagCheck = cfg.ADD_TAGS;
|
|
1764
|
+
else if (arrayIsArray(cfg.ADD_TAGS)) {
|
|
1765
|
+
if (ALLOWED_TAGS === DEFAULT_ALLOWED_TAGS) ALLOWED_TAGS = clone(ALLOWED_TAGS);
|
|
983
1766
|
addToSet(ALLOWED_TAGS, cfg.ADD_TAGS, transformCaseFunc);
|
|
984
1767
|
}
|
|
985
1768
|
}
|
|
986
|
-
if (cfg
|
|
987
|
-
if (typeof cfg.ADD_ATTR === "function")
|
|
988
|
-
|
|
989
|
-
|
|
990
|
-
if (ALLOWED_ATTR === DEFAULT_ALLOWED_ATTR) {
|
|
991
|
-
ALLOWED_ATTR = clone(ALLOWED_ATTR);
|
|
992
|
-
}
|
|
1769
|
+
if (objectHasOwnProperty(cfg, "ADD_ATTR")) {
|
|
1770
|
+
if (typeof cfg.ADD_ATTR === "function") EXTRA_ELEMENT_HANDLING.attributeCheck = cfg.ADD_ATTR;
|
|
1771
|
+
else if (arrayIsArray(cfg.ADD_ATTR)) {
|
|
1772
|
+
if (ALLOWED_ATTR === DEFAULT_ALLOWED_ATTR) ALLOWED_ATTR = clone(ALLOWED_ATTR);
|
|
993
1773
|
addToSet(ALLOWED_ATTR, cfg.ADD_ATTR, transformCaseFunc);
|
|
994
1774
|
}
|
|
995
1775
|
}
|
|
996
|
-
if (cfg.
|
|
997
|
-
|
|
998
|
-
}
|
|
999
|
-
if (cfg.FORBID_CONTENTS) {
|
|
1000
|
-
if (FORBID_CONTENTS === DEFAULT_FORBID_CONTENTS) {
|
|
1001
|
-
FORBID_CONTENTS = clone(FORBID_CONTENTS);
|
|
1002
|
-
}
|
|
1003
|
-
addToSet(FORBID_CONTENTS, cfg.FORBID_CONTENTS, transformCaseFunc);
|
|
1004
|
-
}
|
|
1005
|
-
if (cfg.ADD_FORBID_CONTENTS) {
|
|
1006
|
-
if (FORBID_CONTENTS === DEFAULT_FORBID_CONTENTS) {
|
|
1007
|
-
FORBID_CONTENTS = clone(FORBID_CONTENTS);
|
|
1008
|
-
}
|
|
1776
|
+
if (objectHasOwnProperty(cfg, "ADD_FORBID_CONTENTS") && arrayIsArray(cfg.ADD_FORBID_CONTENTS)) {
|
|
1777
|
+
if (FORBID_CONTENTS === DEFAULT_FORBID_CONTENTS) FORBID_CONTENTS = clone(FORBID_CONTENTS);
|
|
1009
1778
|
addToSet(FORBID_CONTENTS, cfg.ADD_FORBID_CONTENTS, transformCaseFunc);
|
|
1010
1779
|
}
|
|
1011
|
-
if (KEEP_CONTENT)
|
|
1012
|
-
|
|
1013
|
-
|
|
1014
|
-
|
|
1015
|
-
|
|
1016
|
-
|
|
1780
|
+
if (KEEP_CONTENT) ALLOWED_TAGS["#text"] = true;
|
|
1781
|
+
if (WHOLE_DOCUMENT) addToSet(ALLOWED_TAGS, [
|
|
1782
|
+
"html",
|
|
1783
|
+
"head",
|
|
1784
|
+
"body"
|
|
1785
|
+
]);
|
|
1017
1786
|
if (ALLOWED_TAGS.table) {
|
|
1018
1787
|
addToSet(ALLOWED_TAGS, ["tbody"]);
|
|
1019
1788
|
delete FORBID_TAGS.tbody;
|
|
1020
1789
|
}
|
|
1021
1790
|
if (cfg.TRUSTED_TYPES_POLICY) {
|
|
1022
|
-
if (typeof cfg.TRUSTED_TYPES_POLICY.createHTML !== "function")
|
|
1023
|
-
|
|
1024
|
-
|
|
1025
|
-
if (typeof cfg.TRUSTED_TYPES_POLICY.createScriptURL !== "function") {
|
|
1026
|
-
throw typeErrorCreate('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');
|
|
1027
|
-
}
|
|
1791
|
+
if (typeof cfg.TRUSTED_TYPES_POLICY.createHTML !== "function") throw typeErrorCreate('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');
|
|
1792
|
+
if (typeof cfg.TRUSTED_TYPES_POLICY.createScriptURL !== "function") throw typeErrorCreate('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');
|
|
1793
|
+
const previousTrustedTypesPolicy = trustedTypesPolicy;
|
|
1028
1794
|
trustedTypesPolicy = cfg.TRUSTED_TYPES_POLICY;
|
|
1029
|
-
|
|
1030
|
-
|
|
1031
|
-
|
|
1032
|
-
trustedTypesPolicy =
|
|
1033
|
-
|
|
1034
|
-
if (trustedTypesPolicy !== null && typeof emptyHTML === "string") {
|
|
1035
|
-
emptyHTML = trustedTypesPolicy.createHTML("");
|
|
1795
|
+
try {
|
|
1796
|
+
emptyHTML = _createTrustedHTML("");
|
|
1797
|
+
} catch (error) {
|
|
1798
|
+
trustedTypesPolicy = previousTrustedTypesPolicy;
|
|
1799
|
+
throw error;
|
|
1036
1800
|
}
|
|
1801
|
+
} else if (cfg.TRUSTED_TYPES_POLICY === null) {
|
|
1802
|
+
trustedTypesPolicy = void 0;
|
|
1803
|
+
emptyHTML = "";
|
|
1804
|
+
} else {
|
|
1805
|
+
if (trustedTypesPolicy === void 0) trustedTypesPolicy = _getDefaultTrustedTypesPolicy();
|
|
1806
|
+
if (trustedTypesPolicy && typeof emptyHTML === "string") emptyHTML = _createTrustedHTML("");
|
|
1037
1807
|
}
|
|
1038
|
-
if (freeze)
|
|
1039
|
-
freeze(cfg);
|
|
1040
|
-
}
|
|
1808
|
+
if (freeze) freeze(cfg);
|
|
1041
1809
|
CONFIG = cfg;
|
|
1042
1810
|
};
|
|
1043
|
-
const ALL_SVG_TAGS = addToSet({}, [
|
|
1811
|
+
const ALL_SVG_TAGS = addToSet({}, [
|
|
1812
|
+
...svg$1,
|
|
1813
|
+
...svgFilters,
|
|
1814
|
+
...svgDisallowed
|
|
1815
|
+
]);
|
|
1044
1816
|
const ALL_MATHML_TAGS = addToSet({}, [...mathMl$1, ...mathMlDisallowed]);
|
|
1817
|
+
const _checkSvgNamespace = function _checkSvgNamespace2(tagName, parent, parentTagName) {
|
|
1818
|
+
if (parent.namespaceURI === HTML_NAMESPACE) return tagName === "svg";
|
|
1819
|
+
if (parent.namespaceURI === MATHML_NAMESPACE) return tagName === "svg" && (parentTagName === "annotation-xml" || MATHML_TEXT_INTEGRATION_POINTS[parentTagName]);
|
|
1820
|
+
return Boolean(ALL_SVG_TAGS[tagName]);
|
|
1821
|
+
};
|
|
1822
|
+
const _checkMathMlNamespace = function _checkMathMlNamespace2(tagName, parent, parentTagName) {
|
|
1823
|
+
if (parent.namespaceURI === HTML_NAMESPACE) return tagName === "math";
|
|
1824
|
+
if (parent.namespaceURI === SVG_NAMESPACE) return tagName === "math" && HTML_INTEGRATION_POINTS[parentTagName];
|
|
1825
|
+
return Boolean(ALL_MATHML_TAGS[tagName]);
|
|
1826
|
+
};
|
|
1827
|
+
const _checkHtmlNamespace = function _checkHtmlNamespace2(tagName, parent, parentTagName) {
|
|
1828
|
+
if (parent.namespaceURI === SVG_NAMESPACE && !HTML_INTEGRATION_POINTS[parentTagName]) return false;
|
|
1829
|
+
if (parent.namespaceURI === MATHML_NAMESPACE && !MATHML_TEXT_INTEGRATION_POINTS[parentTagName]) return false;
|
|
1830
|
+
return !ALL_MATHML_TAGS[tagName] && (COMMON_SVG_AND_HTML_ELEMENTS[tagName] || !ALL_SVG_TAGS[tagName]);
|
|
1831
|
+
};
|
|
1045
1832
|
const _checkValidNamespace = function _checkValidNamespace2(element) {
|
|
1046
1833
|
let parent = getParentNode(element);
|
|
1047
|
-
if (!parent || !parent.tagName) {
|
|
1048
|
-
|
|
1049
|
-
|
|
1050
|
-
|
|
1051
|
-
};
|
|
1052
|
-
}
|
|
1834
|
+
if (!parent || !parent.tagName) parent = {
|
|
1835
|
+
namespaceURI: NAMESPACE,
|
|
1836
|
+
tagName: "template"
|
|
1837
|
+
};
|
|
1053
1838
|
const tagName = stringToLowerCase(element.tagName);
|
|
1054
1839
|
const parentTagName = stringToLowerCase(parent.tagName);
|
|
1055
|
-
if (!ALLOWED_NAMESPACES[element.namespaceURI])
|
|
1056
|
-
|
|
1057
|
-
|
|
1058
|
-
if (element.namespaceURI ===
|
|
1059
|
-
|
|
1060
|
-
return tagName === "svg";
|
|
1061
|
-
}
|
|
1062
|
-
if (parent.namespaceURI === MATHML_NAMESPACE) {
|
|
1063
|
-
return tagName === "svg" && (parentTagName === "annotation-xml" || MATHML_TEXT_INTEGRATION_POINTS[parentTagName]);
|
|
1064
|
-
}
|
|
1065
|
-
return Boolean(ALL_SVG_TAGS[tagName]);
|
|
1066
|
-
}
|
|
1067
|
-
if (element.namespaceURI === MATHML_NAMESPACE) {
|
|
1068
|
-
if (parent.namespaceURI === HTML_NAMESPACE) {
|
|
1069
|
-
return tagName === "math";
|
|
1070
|
-
}
|
|
1071
|
-
if (parent.namespaceURI === SVG_NAMESPACE) {
|
|
1072
|
-
return tagName === "math" && HTML_INTEGRATION_POINTS[parentTagName];
|
|
1073
|
-
}
|
|
1074
|
-
return Boolean(ALL_MATHML_TAGS[tagName]);
|
|
1075
|
-
}
|
|
1076
|
-
if (element.namespaceURI === HTML_NAMESPACE) {
|
|
1077
|
-
if (parent.namespaceURI === SVG_NAMESPACE && !HTML_INTEGRATION_POINTS[parentTagName]) {
|
|
1078
|
-
return false;
|
|
1079
|
-
}
|
|
1080
|
-
if (parent.namespaceURI === MATHML_NAMESPACE && !MATHML_TEXT_INTEGRATION_POINTS[parentTagName]) {
|
|
1081
|
-
return false;
|
|
1082
|
-
}
|
|
1083
|
-
return !ALL_MATHML_TAGS[tagName] && (COMMON_SVG_AND_HTML_ELEMENTS[tagName] || !ALL_SVG_TAGS[tagName]);
|
|
1084
|
-
}
|
|
1085
|
-
if (PARSER_MEDIA_TYPE === "application/xhtml+xml" && ALLOWED_NAMESPACES[element.namespaceURI]) {
|
|
1086
|
-
return true;
|
|
1087
|
-
}
|
|
1840
|
+
if (!ALLOWED_NAMESPACES[element.namespaceURI]) return false;
|
|
1841
|
+
if (element.namespaceURI === SVG_NAMESPACE) return _checkSvgNamespace(tagName, parent, parentTagName);
|
|
1842
|
+
if (element.namespaceURI === MATHML_NAMESPACE) return _checkMathMlNamespace(tagName, parent, parentTagName);
|
|
1843
|
+
if (element.namespaceURI === HTML_NAMESPACE) return _checkHtmlNamespace(tagName, parent, parentTagName);
|
|
1844
|
+
if (PARSER_MEDIA_TYPE === "application/xhtml+xml" && ALLOWED_NAMESPACES[element.namespaceURI]) return true;
|
|
1088
1845
|
return false;
|
|
1089
1846
|
};
|
|
1090
1847
|
const _forceRemove = function _forceRemove2(node) {
|
|
1091
|
-
arrayPush(DOMPurify.removed, {
|
|
1092
|
-
element: node
|
|
1093
|
-
});
|
|
1848
|
+
arrayPush(DOMPurify.removed, { element: node });
|
|
1094
1849
|
try {
|
|
1095
1850
|
getParentNode(node).removeChild(node);
|
|
1096
1851
|
} catch (_) {
|
|
1097
1852
|
remove(node);
|
|
1853
|
+
if (!getParentNode(node)) throw typeErrorCreate("a node selected for removal could not be detached from its tree and cannot be safely returned; refusing to sanitize in place");
|
|
1098
1854
|
}
|
|
1099
1855
|
};
|
|
1100
|
-
const
|
|
1856
|
+
const _stripAttributeNode = function _stripAttributeNode2(element, attribute, name) {
|
|
1101
1857
|
try {
|
|
1102
|
-
|
|
1103
|
-
attribute: element.getAttributeNode(name),
|
|
1104
|
-
from: element
|
|
1105
|
-
});
|
|
1858
|
+
removeAttributeNode(element, attribute);
|
|
1106
1859
|
} catch (_) {
|
|
1107
|
-
|
|
1108
|
-
|
|
1109
|
-
|
|
1860
|
+
try {
|
|
1861
|
+
element.removeAttribute(name);
|
|
1862
|
+
} catch (_2) {
|
|
1863
|
+
}
|
|
1864
|
+
}
|
|
1865
|
+
};
|
|
1866
|
+
const _neutralizeRoot = function _neutralizeRoot2(root) {
|
|
1867
|
+
_neutralizeSubtree(root);
|
|
1868
|
+
const childNodes = getChildNodes(root);
|
|
1869
|
+
if (childNodes) {
|
|
1870
|
+
const snapshot = [];
|
|
1871
|
+
arrayForEach(childNodes, (child) => {
|
|
1872
|
+
arrayPush(snapshot, child);
|
|
1110
1873
|
});
|
|
1874
|
+
arrayForEach(snapshot, (child) => {
|
|
1875
|
+
try {
|
|
1876
|
+
remove(child);
|
|
1877
|
+
} catch (_) {
|
|
1878
|
+
}
|
|
1879
|
+
});
|
|
1880
|
+
}
|
|
1881
|
+
const attributes = getAttributes(root);
|
|
1882
|
+
if (attributes) for (let i = attributes.length - 1; i >= 0; --i) {
|
|
1883
|
+
const attribute = attributes[i];
|
|
1884
|
+
const name = attribute && attribute.name;
|
|
1885
|
+
if (typeof name === "string") _stripAttributeNode(root, attribute, name);
|
|
1886
|
+
}
|
|
1887
|
+
};
|
|
1888
|
+
const _removeAttribute = function _removeAttribute2(name, element, attr) {
|
|
1889
|
+
if (!attr) try {
|
|
1890
|
+
attr = element.getAttributeNode(name);
|
|
1891
|
+
} catch (_) {
|
|
1892
|
+
attr = null;
|
|
1893
|
+
}
|
|
1894
|
+
arrayPush(DOMPurify.removed, {
|
|
1895
|
+
attribute: attr || null,
|
|
1896
|
+
from: element
|
|
1897
|
+
});
|
|
1898
|
+
try {
|
|
1899
|
+
if (attr) removeAttributeNode(element, attr);
|
|
1900
|
+
else element.removeAttribute(name);
|
|
1901
|
+
} catch (_) {
|
|
1902
|
+
try {
|
|
1903
|
+
element.removeAttribute(name);
|
|
1904
|
+
} catch (_2) {
|
|
1905
|
+
}
|
|
1111
1906
|
}
|
|
1112
|
-
element.removeAttribute(name);
|
|
1113
1907
|
if (name === "is") {
|
|
1114
|
-
if (RETURN_DOM || RETURN_DOM_FRAGMENT) {
|
|
1908
|
+
if (RETURN_DOM || RETURN_DOM_FRAGMENT) try {
|
|
1909
|
+
_forceRemove(element);
|
|
1910
|
+
} catch (_) {
|
|
1911
|
+
}
|
|
1912
|
+
else try {
|
|
1913
|
+
element.setAttribute(name, "");
|
|
1914
|
+
} catch (_) {
|
|
1915
|
+
}
|
|
1916
|
+
}
|
|
1917
|
+
};
|
|
1918
|
+
const _stripDisallowedAttributes = function _stripDisallowedAttributes2(element) {
|
|
1919
|
+
const attributes = getAttributes(element);
|
|
1920
|
+
if (!attributes) return;
|
|
1921
|
+
for (let i = attributes.length - 1; i >= 0; --i) {
|
|
1922
|
+
const attribute = attributes[i];
|
|
1923
|
+
const name = attribute && attribute.name;
|
|
1924
|
+
if (typeof name !== "string" || ALLOWED_ATTR[transformCaseFunc(name)]) continue;
|
|
1925
|
+
_stripAttributeNode(element, attribute, name);
|
|
1926
|
+
}
|
|
1927
|
+
};
|
|
1928
|
+
const _neutralizeSubtree = function _neutralizeSubtree2(root) {
|
|
1929
|
+
const stack = [root];
|
|
1930
|
+
while (stack.length > 0) {
|
|
1931
|
+
const node = stack.pop();
|
|
1932
|
+
if (_readNodeType(node) === NODE_TYPE.element) _stripDisallowedAttributes(node);
|
|
1933
|
+
const childNodes = getChildNodes(node);
|
|
1934
|
+
if (childNodes) for (let i = childNodes.length - 1; i >= 0; --i) stack.push(childNodes[i]);
|
|
1935
|
+
}
|
|
1936
|
+
};
|
|
1937
|
+
const _isPatchLinkageAttribute = function _isPatchLinkageAttribute2(lcName, lcTag) {
|
|
1938
|
+
if (!SAFE_FOR_XML) return false;
|
|
1939
|
+
if (lcName === "patchsrc") return true;
|
|
1940
|
+
return lcName === "for" && lcTag !== "label" && lcTag !== "output";
|
|
1941
|
+
};
|
|
1942
|
+
const _neutralizePatchLinkage = function _neutralizePatchLinkage2(root) {
|
|
1943
|
+
if (!SAFE_FOR_XML) return;
|
|
1944
|
+
const stack = [root];
|
|
1945
|
+
while (stack.length > 0) {
|
|
1946
|
+
const node = stack.pop();
|
|
1947
|
+
const nodeType = _readNodeType(node);
|
|
1948
|
+
if (nodeType === NODE_TYPE.processingInstruction || nodeType === NODE_TYPE.comment && regExpTest(COMMENT_MARKUP_PROBE, node.data)) {
|
|
1115
1949
|
try {
|
|
1116
|
-
|
|
1950
|
+
remove(node);
|
|
1117
1951
|
} catch (_) {
|
|
1118
1952
|
}
|
|
1119
|
-
|
|
1953
|
+
continue;
|
|
1954
|
+
}
|
|
1955
|
+
if (nodeType === NODE_TYPE.element) {
|
|
1956
|
+
const element = node;
|
|
1957
|
+
const lcTag = transformCaseFunc(_readNodeName(node));
|
|
1120
1958
|
try {
|
|
1121
|
-
element.
|
|
1959
|
+
if (element.hasAttribute && element.hasAttribute("patchsrc")) element.removeAttribute("patchsrc");
|
|
1960
|
+
if (element.hasAttribute && element.hasAttribute("for") && _isPatchLinkageAttribute("for", lcTag)) element.removeAttribute("for");
|
|
1122
1961
|
} catch (_) {
|
|
1123
1962
|
}
|
|
1124
1963
|
}
|
|
1964
|
+
const childNodes = getChildNodes(node);
|
|
1965
|
+
if (childNodes) for (let i = childNodes.length - 1; i >= 0; --i) stack.push(childNodes[i]);
|
|
1125
1966
|
}
|
|
1126
1967
|
};
|
|
1127
1968
|
const _initDocument = function _initDocument2(dirty) {
|
|
1128
1969
|
let doc = null;
|
|
1129
1970
|
let leadingWhitespace = null;
|
|
1130
|
-
if (FORCE_BODY)
|
|
1131
|
-
|
|
1132
|
-
} else {
|
|
1971
|
+
if (FORCE_BODY) dirty = "<remove></remove>" + dirty;
|
|
1972
|
+
else {
|
|
1133
1973
|
const matches = stringMatch(dirty, /^[\r\n\t ]+/);
|
|
1134
1974
|
leadingWhitespace = matches && matches[0];
|
|
1135
1975
|
}
|
|
1136
|
-
if (PARSER_MEDIA_TYPE === "application/xhtml+xml" && NAMESPACE === HTML_NAMESPACE)
|
|
1137
|
-
|
|
1138
|
-
|
|
1139
|
-
|
|
1140
|
-
|
|
1141
|
-
try {
|
|
1142
|
-
doc = new DOMParser().parseFromString(dirtyPayload, PARSER_MEDIA_TYPE);
|
|
1143
|
-
} catch (_) {
|
|
1144
|
-
}
|
|
1976
|
+
if (PARSER_MEDIA_TYPE === "application/xhtml+xml" && NAMESPACE === HTML_NAMESPACE) dirty = '<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body>' + dirty + "</body></html>";
|
|
1977
|
+
const dirtyPayload = trustedTypesPolicy ? _createTrustedHTML(dirty) : dirty;
|
|
1978
|
+
if (NAMESPACE === HTML_NAMESPACE) try {
|
|
1979
|
+
doc = new DOMParser().parseFromString(dirtyPayload, PARSER_MEDIA_TYPE);
|
|
1980
|
+
} catch (_) {
|
|
1145
1981
|
}
|
|
1146
1982
|
if (!doc || !doc.documentElement) {
|
|
1147
1983
|
doc = implementation.createDocument(NAMESPACE, "template", null);
|
|
@@ -1151,144 +1987,203 @@ function createDOMPurify() {
|
|
|
1151
1987
|
}
|
|
1152
1988
|
}
|
|
1153
1989
|
const body = doc.body || doc.documentElement;
|
|
1154
|
-
if (dirty && leadingWhitespace)
|
|
1155
|
-
|
|
1156
|
-
}
|
|
1157
|
-
if (NAMESPACE === HTML_NAMESPACE) {
|
|
1158
|
-
return getElementsByTagName.call(doc, WHOLE_DOCUMENT ? "html" : "body")[0];
|
|
1159
|
-
}
|
|
1990
|
+
if (dirty && leadingWhitespace) body.insertBefore(document2.createTextNode(leadingWhitespace), body.childNodes[0] || null);
|
|
1991
|
+
if (NAMESPACE === HTML_NAMESPACE) return getElementsByTagName.call(doc, WHOLE_DOCUMENT ? "html" : "body")[0];
|
|
1160
1992
|
return WHOLE_DOCUMENT ? doc.documentElement : body;
|
|
1161
1993
|
};
|
|
1162
1994
|
const _createNodeIterator = function _createNodeIterator2(root) {
|
|
1163
|
-
|
|
1164
|
-
|
|
1165
|
-
|
|
1166
|
-
|
|
1167
|
-
|
|
1168
|
-
|
|
1169
|
-
);
|
|
1995
|
+
const doc = getOwnerDocument ? getOwnerDocument(root) : root.ownerDocument;
|
|
1996
|
+
return createNodeIterator.call(doc || root, root, NodeFilter.SHOW_ELEMENT | NodeFilter.SHOW_COMMENT | NodeFilter.SHOW_TEXT | NodeFilter.SHOW_PROCESSING_INSTRUCTION | NodeFilter.SHOW_CDATA_SECTION, null);
|
|
1997
|
+
};
|
|
1998
|
+
const _stripTemplateExpressions = function _stripTemplateExpressions2(value) {
|
|
1999
|
+
value = stringReplace(value, MUSTACHE_EXPR$1, " ");
|
|
2000
|
+
value = stringReplace(value, ERB_EXPR$1, " ");
|
|
2001
|
+
value = stringReplace(value, TMPLIT_EXPR$1, " ");
|
|
2002
|
+
return value;
|
|
2003
|
+
};
|
|
2004
|
+
const _scrubTemplateExpressions2 = function _scrubTemplateExpressions(node) {
|
|
2005
|
+
var _node$querySelectorAl;
|
|
2006
|
+
node.normalize();
|
|
2007
|
+
const doc = getOwnerDocument ? getOwnerDocument(node) : node.ownerDocument;
|
|
2008
|
+
const walker = createNodeIterator.call(doc || node, node, NodeFilter.SHOW_TEXT | NodeFilter.SHOW_COMMENT | NodeFilter.SHOW_CDATA_SECTION | NodeFilter.SHOW_PROCESSING_INSTRUCTION, null);
|
|
2009
|
+
let currentNode = walker.nextNode();
|
|
2010
|
+
while (currentNode) {
|
|
2011
|
+
currentNode.data = _stripTemplateExpressions(currentNode.data);
|
|
2012
|
+
currentNode = walker.nextNode();
|
|
2013
|
+
}
|
|
2014
|
+
const templates = (_node$querySelectorAl = node.querySelectorAll) === null || _node$querySelectorAl === void 0 ? void 0 : _node$querySelectorAl.call(node, "template");
|
|
2015
|
+
if (templates) arrayForEach(templates, (tmpl) => {
|
|
2016
|
+
if (_isDocumentFragment(tmpl.content)) _scrubTemplateExpressions2(tmpl.content);
|
|
2017
|
+
});
|
|
1170
2018
|
};
|
|
1171
2019
|
const _isClobbered = function _isClobbered2(element) {
|
|
1172
|
-
|
|
2020
|
+
const realTagName = getNodeName ? getNodeName(element) : null;
|
|
2021
|
+
if (typeof realTagName !== "string") return false;
|
|
2022
|
+
if (transformCaseFunc(realTagName) !== "form") return false;
|
|
2023
|
+
return typeof element.nodeName !== "string" || typeof element.textContent !== "string" || typeof element.removeChild !== "function" || element.attributes !== getAttributes(element) || typeof element.removeAttribute !== "function" || typeof element.removeAttributeNode !== "function" || typeof element.getAttributeNode !== "function" || typeof element.setAttribute !== "function" || typeof element.namespaceURI !== "string" || typeof element.insertBefore !== "function" || typeof element.hasChildNodes !== "function" || element.nodeType !== getNodeType(element) || element.childNodes !== getChildNodes(element);
|
|
2024
|
+
};
|
|
2025
|
+
const _isDocumentFragment = function _isDocumentFragment2(value) {
|
|
2026
|
+
if (!getNodeType || typeof value !== "object" || value === null) return false;
|
|
2027
|
+
try {
|
|
2028
|
+
return getNodeType(value) === NODE_TYPE.documentFragment;
|
|
2029
|
+
} catch (_) {
|
|
2030
|
+
return false;
|
|
2031
|
+
}
|
|
1173
2032
|
};
|
|
1174
2033
|
const _isNode = function _isNode2(value) {
|
|
1175
|
-
|
|
2034
|
+
if (!getNodeType || typeof value !== "object" || value === null) return false;
|
|
2035
|
+
try {
|
|
2036
|
+
return typeof getNodeType(value) === "number";
|
|
2037
|
+
} catch (_) {
|
|
2038
|
+
return false;
|
|
2039
|
+
}
|
|
1176
2040
|
};
|
|
1177
2041
|
function _executeHooks(hooks2, currentNode, data) {
|
|
2042
|
+
if (hooks2.length === 0) return;
|
|
1178
2043
|
arrayForEach(hooks2, (hook) => {
|
|
1179
2044
|
hook.call(DOMPurify, currentNode, data, CONFIG);
|
|
1180
2045
|
});
|
|
1181
2046
|
}
|
|
1182
|
-
const
|
|
1183
|
-
|
|
2047
|
+
const _isUnsafeNode = function _isUnsafeNode2(currentNode, tagName) {
|
|
2048
|
+
if (SAFE_FOR_XML && currentNode.hasChildNodes() && !_isNode(currentNode.firstElementChild) && regExpTest(ELEMENT_MARKUP_PROBE, currentNode.textContent) && regExpTest(ELEMENT_MARKUP_PROBE, currentNode.innerHTML)) return true;
|
|
2049
|
+
if (SAFE_FOR_XML && currentNode.namespaceURI === HTML_NAMESPACE && LITERAL_TEXT_ELEMENTS[tagName] && (_isNode(currentNode.firstElementChild) || typeof currentNode.textContent === "string" && regExpTest(LITERAL_TEXT_CLOSE[tagName], currentNode.textContent))) return true;
|
|
2050
|
+
if (currentNode.nodeType === NODE_TYPE.processingInstruction) return true;
|
|
2051
|
+
if (SAFE_FOR_XML && currentNode.nodeType === NODE_TYPE.comment && regExpTest(COMMENT_MARKUP_PROBE, currentNode.data)) return true;
|
|
2052
|
+
return false;
|
|
2053
|
+
};
|
|
2054
|
+
const _matchesNameCheck = function _matchesNameCheck2(check, name) {
|
|
2055
|
+
if (check instanceof RegExp) return regExpTest(check, name);
|
|
2056
|
+
if (check instanceof Function) {
|
|
2057
|
+
for (var _len = arguments.length, args = new Array(_len > 2 ? _len - 2 : 0), _key = 2; _key < _len; _key++) args[_key - 2] = arguments[_key];
|
|
2058
|
+
return Boolean(check(name, ...args));
|
|
2059
|
+
}
|
|
2060
|
+
return false;
|
|
2061
|
+
};
|
|
2062
|
+
const _sanitizeDisallowedNode = function _sanitizeDisallowedNode2(currentNode, tagName, root) {
|
|
2063
|
+
if (!FORBID_TAGS[tagName] && _isBasicCustomElement(tagName) && _matchesNameCheck(CUSTOM_ELEMENT_HANDLING.tagNameCheck, tagName)) return false;
|
|
2064
|
+
if (KEEP_CONTENT && !FORBID_CONTENTS[tagName]) {
|
|
2065
|
+
const parentNode = getParentNode(currentNode);
|
|
2066
|
+
const childNodes = getChildNodes(currentNode);
|
|
2067
|
+
if (childNodes && parentNode) {
|
|
2068
|
+
const childCount = childNodes.length;
|
|
2069
|
+
for (let i = childCount - 1; i >= 0; --i) {
|
|
2070
|
+
const hoisted = currentNode === root ? cloneNode(childNodes[i], true) : childNodes[i];
|
|
2071
|
+
parentNode.insertBefore(hoisted, getNextSibling(currentNode));
|
|
2072
|
+
}
|
|
2073
|
+
}
|
|
2074
|
+
}
|
|
2075
|
+
_forceRemove(currentNode);
|
|
2076
|
+
return true;
|
|
2077
|
+
};
|
|
2078
|
+
const _forkSharedAllowlist = function _forkSharedAllowlist2(hookList, set, defaultSet, setConfigSet) {
|
|
2079
|
+
if (hookList.length === 0) return set;
|
|
2080
|
+
return set === defaultSet || set === setConfigSet ? clone(set) : set;
|
|
2081
|
+
};
|
|
2082
|
+
const _handleHookDetachedNode = function _handleHookDetachedNode2(currentNode, root) {
|
|
2083
|
+
if (currentNode === root || getParentNode(currentNode) !== null) return false;
|
|
2084
|
+
if (IN_PLACE) _neutralizeSubtree(currentNode);
|
|
2085
|
+
return true;
|
|
2086
|
+
};
|
|
2087
|
+
const _sanitizeElements = function _sanitizeElements2(currentNode, root) {
|
|
1184
2088
|
_executeHooks(hooks.beforeSanitizeElements, currentNode, null);
|
|
2089
|
+
if (_handleHookDetachedNode(currentNode, root)) return true;
|
|
1185
2090
|
if (_isClobbered(currentNode)) {
|
|
1186
2091
|
_forceRemove(currentNode);
|
|
1187
2092
|
return true;
|
|
1188
2093
|
}
|
|
1189
|
-
const tagName = transformCaseFunc(currentNode
|
|
2094
|
+
const tagName = transformCaseFunc(_readNodeName(currentNode));
|
|
2095
|
+
ALLOWED_TAGS = _forkSharedAllowlist(hooks.uponSanitizeElement, ALLOWED_TAGS, DEFAULT_ALLOWED_TAGS, SET_CONFIG_ALLOWED_TAGS);
|
|
1190
2096
|
_executeHooks(hooks.uponSanitizeElement, currentNode, {
|
|
1191
2097
|
tagName,
|
|
1192
2098
|
allowedTags: ALLOWED_TAGS
|
|
1193
2099
|
});
|
|
1194
|
-
if (
|
|
1195
|
-
|
|
1196
|
-
return true;
|
|
1197
|
-
}
|
|
1198
|
-
if (currentNode.nodeType === NODE_TYPE.progressingInstruction) {
|
|
2100
|
+
if (_handleHookDetachedNode(currentNode, root)) return true;
|
|
2101
|
+
if (_isUnsafeNode(currentNode, tagName)) {
|
|
1199
2102
|
_forceRemove(currentNode);
|
|
1200
2103
|
return true;
|
|
1201
2104
|
}
|
|
1202
|
-
if (
|
|
1203
|
-
|
|
1204
|
-
|
|
1205
|
-
|
|
1206
|
-
|
|
1207
|
-
if (!FORBID_TAGS[tagName] && _isBasicCustomElement(tagName)) {
|
|
1208
|
-
if (CUSTOM_ELEMENT_HANDLING.tagNameCheck instanceof RegExp && regExpTest(CUSTOM_ELEMENT_HANDLING.tagNameCheck, tagName)) {
|
|
1209
|
-
return false;
|
|
1210
|
-
}
|
|
1211
|
-
if (CUSTOM_ELEMENT_HANDLING.tagNameCheck instanceof Function && CUSTOM_ELEMENT_HANDLING.tagNameCheck(tagName)) {
|
|
1212
|
-
return false;
|
|
1213
|
-
}
|
|
2105
|
+
if (FORBID_TAGS[tagName] || !(EXTRA_ELEMENT_HANDLING.tagCheck instanceof Function && EXTRA_ELEMENT_HANDLING.tagCheck(tagName)) && !ALLOWED_TAGS[tagName]) {
|
|
2106
|
+
const removed = _sanitizeDisallowedNode(currentNode, tagName, root);
|
|
2107
|
+
if (removed === false) {
|
|
2108
|
+
_executeHooks(hooks.afterSanitizeElements, currentNode, null);
|
|
2109
|
+
if (_handleHookDetachedNode(currentNode, root)) return true;
|
|
1214
2110
|
}
|
|
1215
|
-
|
|
1216
|
-
const parentNode = getParentNode(currentNode) || currentNode.parentNode;
|
|
1217
|
-
const childNodes = getChildNodes(currentNode) || currentNode.childNodes;
|
|
1218
|
-
if (childNodes && parentNode) {
|
|
1219
|
-
const childCount = childNodes.length;
|
|
1220
|
-
for (let i = childCount - 1; i >= 0; --i) {
|
|
1221
|
-
const childClone = cloneNode(childNodes[i], true);
|
|
1222
|
-
childClone.__removalCount = (currentNode.__removalCount || 0) + 1;
|
|
1223
|
-
parentNode.insertBefore(childClone, getNextSibling(currentNode));
|
|
1224
|
-
}
|
|
1225
|
-
}
|
|
1226
|
-
}
|
|
1227
|
-
_forceRemove(currentNode);
|
|
1228
|
-
return true;
|
|
2111
|
+
return removed;
|
|
1229
2112
|
}
|
|
1230
|
-
if (currentNode
|
|
2113
|
+
if (_readNodeType(currentNode) === NODE_TYPE.element && !_checkValidNamespace(currentNode)) {
|
|
1231
2114
|
_forceRemove(currentNode);
|
|
1232
2115
|
return true;
|
|
1233
2116
|
}
|
|
1234
|
-
if ((tagName === "noscript" || tagName === "noembed" || tagName === "noframes") && regExpTest(
|
|
2117
|
+
if ((tagName === "noscript" || tagName === "noembed" || tagName === "noframes") && regExpTest(FALLBACK_TAG_CLOSE, currentNode.innerHTML)) {
|
|
1235
2118
|
_forceRemove(currentNode);
|
|
1236
2119
|
return true;
|
|
1237
2120
|
}
|
|
1238
2121
|
if (SAFE_FOR_TEMPLATES && currentNode.nodeType === NODE_TYPE.text) {
|
|
1239
|
-
content = currentNode.textContent;
|
|
1240
|
-
arrayForEach([MUSTACHE_EXPR2, ERB_EXPR2, TMPLIT_EXPR2], (expr) => {
|
|
1241
|
-
content = stringReplace(content, expr, " ");
|
|
1242
|
-
});
|
|
2122
|
+
const content = _stripTemplateExpressions(currentNode.textContent);
|
|
1243
2123
|
if (currentNode.textContent !== content) {
|
|
1244
|
-
arrayPush(DOMPurify.removed, {
|
|
1245
|
-
element: currentNode.cloneNode()
|
|
1246
|
-
});
|
|
2124
|
+
arrayPush(DOMPurify.removed, { element: currentNode.cloneNode() });
|
|
1247
2125
|
currentNode.textContent = content;
|
|
1248
2126
|
}
|
|
1249
2127
|
}
|
|
1250
2128
|
_executeHooks(hooks.afterSanitizeElements, currentNode, null);
|
|
1251
|
-
return
|
|
2129
|
+
return _handleHookDetachedNode(currentNode, root);
|
|
1252
2130
|
};
|
|
1253
2131
|
const _isValidAttribute = function _isValidAttribute2(lcTag, lcName, value) {
|
|
1254
|
-
if (
|
|
1255
|
-
|
|
2132
|
+
if (FORBID_ATTR[lcName]) return false;
|
|
2133
|
+
if (_isPatchLinkageAttribute(lcName, lcTag)) return false;
|
|
2134
|
+
if (SANITIZE_DOM && (lcName === "id" || lcName === "name") && (value in document2 || value in formElement)) return false;
|
|
2135
|
+
const nameIsPermitted = ALLOWED_ATTR[lcName] || EXTRA_ELEMENT_HANDLING.attributeCheck instanceof Function && EXTRA_ELEMENT_HANDLING.attributeCheck(lcName, lcTag);
|
|
2136
|
+
if (ALLOW_DATA_ATTR && regExpTest(DATA_ATTR$1, lcName)) return true;
|
|
2137
|
+
if (ALLOW_ARIA_ATTR && regExpTest(ARIA_ATTR$1, lcName)) return true;
|
|
2138
|
+
if (!nameIsPermitted) return _isBasicCustomElement(lcTag) && _matchesNameCheck(CUSTOM_ELEMENT_HANDLING.tagNameCheck, lcTag) && _matchesNameCheck(CUSTOM_ELEMENT_HANDLING.attributeNameCheck, lcName, lcTag) || lcName === "is" && CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements && _matchesNameCheck(CUSTOM_ELEMENT_HANDLING.tagNameCheck, value);
|
|
2139
|
+
if (URI_SAFE_ATTRIBUTES[lcName]) return true;
|
|
2140
|
+
if (regExpTest(IS_ALLOWED_URI$1, stringReplace(value, ATTR_WHITESPACE$1, ""))) return true;
|
|
2141
|
+
if ((lcName === "src" || lcName === "xlink:href" || lcName === "href") && lcTag !== "script" && stringIndexOf(value, "data:") === 0 && DATA_URI_TAGS[lcTag]) return true;
|
|
2142
|
+
if (ALLOW_UNKNOWN_PROTOCOLS && !regExpTest(IS_SCRIPT_OR_DATA$1, stringReplace(value, ATTR_WHITESPACE$1, ""))) return true;
|
|
2143
|
+
return !value;
|
|
2144
|
+
};
|
|
2145
|
+
const RESERVED_CUSTOM_ELEMENT_NAMES = addToSet({}, [
|
|
2146
|
+
"annotation-xml",
|
|
2147
|
+
"color-profile",
|
|
2148
|
+
"font-face",
|
|
2149
|
+
"font-face-format",
|
|
2150
|
+
"font-face-name",
|
|
2151
|
+
"font-face-src",
|
|
2152
|
+
"font-face-uri",
|
|
2153
|
+
"missing-glyph"
|
|
2154
|
+
]);
|
|
2155
|
+
const _isBasicCustomElement = function _isBasicCustomElement2(tagName) {
|
|
2156
|
+
return !RESERVED_CUSTOM_ELEMENT_NAMES[stringToLowerCase(tagName)] && regExpTest(CUSTOM_ELEMENT$1, tagName);
|
|
2157
|
+
};
|
|
2158
|
+
const _applyTrustedTypesToAttribute = function _applyTrustedTypesToAttribute2(lcTag, lcName, namespaceURI, value) {
|
|
2159
|
+
if (trustedTypesPolicy && typeof trustedTypes === "object" && typeof trustedTypes.getAttributeType === "function" && !namespaceURI) switch (trustedTypes.getAttributeType(lcTag, lcName)) {
|
|
2160
|
+
case "TrustedHTML":
|
|
2161
|
+
return _createTrustedHTML(value);
|
|
2162
|
+
case "TrustedScriptURL":
|
|
2163
|
+
return _createTrustedScriptURL(value);
|
|
1256
2164
|
}
|
|
1257
|
-
|
|
1258
|
-
|
|
1259
|
-
|
|
1260
|
-
|
|
1261
|
-
if (
|
|
1262
|
-
|
|
1263
|
-
|
|
1264
|
-
|
|
1265
|
-
_isBasicCustomElement(lcTag) && (CUSTOM_ELEMENT_HANDLING.tagNameCheck instanceof RegExp && regExpTest(CUSTOM_ELEMENT_HANDLING.tagNameCheck, lcTag) || CUSTOM_ELEMENT_HANDLING.tagNameCheck instanceof Function && CUSTOM_ELEMENT_HANDLING.tagNameCheck(lcTag)) && (CUSTOM_ELEMENT_HANDLING.attributeNameCheck instanceof RegExp && regExpTest(CUSTOM_ELEMENT_HANDLING.attributeNameCheck, lcName) || CUSTOM_ELEMENT_HANDLING.attributeNameCheck instanceof Function && CUSTOM_ELEMENT_HANDLING.attributeNameCheck(lcName, lcTag)) || // Alternative, second condition checks if it's an `is`-attribute, AND
|
|
1266
|
-
// the value passes whatever the user has configured for CUSTOM_ELEMENT_HANDLING.tagNameCheck
|
|
1267
|
-
lcName === "is" && CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements && (CUSTOM_ELEMENT_HANDLING.tagNameCheck instanceof RegExp && regExpTest(CUSTOM_ELEMENT_HANDLING.tagNameCheck, value) || CUSTOM_ELEMENT_HANDLING.tagNameCheck instanceof Function && CUSTOM_ELEMENT_HANDLING.tagNameCheck(value))
|
|
1268
|
-
) ;
|
|
1269
|
-
else {
|
|
2165
|
+
return value;
|
|
2166
|
+
};
|
|
2167
|
+
const _setAttributeValue = function _setAttributeValue2(currentNode, name, namespaceURI, value) {
|
|
2168
|
+
try {
|
|
2169
|
+
if (namespaceURI) currentNode.setAttributeNS(namespaceURI, name, value);
|
|
2170
|
+
else currentNode.setAttribute(name, value);
|
|
2171
|
+
if (_isClobbered(currentNode)) {
|
|
2172
|
+
_forceRemove(currentNode);
|
|
1270
2173
|
return false;
|
|
1271
2174
|
}
|
|
1272
|
-
|
|
1273
|
-
|
|
1274
|
-
|
|
1275
|
-
else if (ALLOW_UNKNOWN_PROTOCOLS && !regExpTest(IS_SCRIPT_OR_DATA2, stringReplace(value, ATTR_WHITESPACE2, ""))) ;
|
|
1276
|
-
else if (value) {
|
|
2175
|
+
return true;
|
|
2176
|
+
} catch (_) {
|
|
2177
|
+
_removeAttribute(name, currentNode);
|
|
1277
2178
|
return false;
|
|
1278
|
-
}
|
|
1279
|
-
return true;
|
|
1280
|
-
};
|
|
1281
|
-
const _isBasicCustomElement = function _isBasicCustomElement2(tagName) {
|
|
1282
|
-
return tagName !== "annotation-xml" && stringMatch(tagName, CUSTOM_ELEMENT2);
|
|
2179
|
+
}
|
|
1283
2180
|
};
|
|
1284
|
-
const _sanitizeAttributes = function _sanitizeAttributes2(currentNode) {
|
|
2181
|
+
const _sanitizeAttributes = function _sanitizeAttributes2(currentNode, root) {
|
|
1285
2182
|
_executeHooks(hooks.beforeSanitizeAttributes, currentNode, null);
|
|
1286
|
-
|
|
1287
|
-
|
|
1288
|
-
|
|
1289
|
-
|
|
1290
|
-
return;
|
|
1291
|
-
}
|
|
2183
|
+
if (_handleHookDetachedNode(currentNode, root)) return;
|
|
2184
|
+
const attributes = currentNode.attributes;
|
|
2185
|
+
if (!attributes || _isClobbered(currentNode)) return;
|
|
2186
|
+
ALLOWED_ATTR = _forkSharedAllowlist(hooks.uponSanitizeAttribute, ALLOWED_ATTR, DEFAULT_ALLOWED_ATTR, SET_CONFIG_ALLOWED_ATTR);
|
|
1292
2187
|
const hookEvent = {
|
|
1293
2188
|
attrName: "",
|
|
1294
2189
|
attrValue: "",
|
|
@@ -1297,103 +2192,114 @@ function createDOMPurify() {
|
|
|
1297
2192
|
forceKeepAttr: void 0
|
|
1298
2193
|
};
|
|
1299
2194
|
let l = attributes.length;
|
|
2195
|
+
const lcTag = transformCaseFunc(currentNode.nodeName);
|
|
1300
2196
|
while (l--) {
|
|
1301
2197
|
const attr = attributes[l];
|
|
1302
|
-
const
|
|
1303
|
-
name,
|
|
1304
|
-
namespaceURI,
|
|
1305
|
-
value: attrValue
|
|
1306
|
-
} = attr;
|
|
2198
|
+
const name = attr.name, namespaceURI = attr.namespaceURI, attrValue = attr.value;
|
|
1307
2199
|
const lcName = transformCaseFunc(name);
|
|
1308
2200
|
const initValue = attrValue;
|
|
1309
2201
|
let value = name === "value" ? initValue : stringTrim(initValue);
|
|
2202
|
+
let recreatedNamedProp = false;
|
|
1310
2203
|
hookEvent.attrName = lcName;
|
|
1311
2204
|
hookEvent.attrValue = value;
|
|
1312
2205
|
hookEvent.keepAttr = true;
|
|
1313
2206
|
hookEvent.forceKeepAttr = void 0;
|
|
1314
2207
|
_executeHooks(hooks.uponSanitizeAttribute, currentNode, hookEvent);
|
|
1315
2208
|
value = hookEvent.attrValue;
|
|
1316
|
-
if (SANITIZE_NAMED_PROPS && (lcName === "id" || lcName === "name")) {
|
|
1317
|
-
_removeAttribute(name, currentNode);
|
|
2209
|
+
if (SANITIZE_NAMED_PROPS && (lcName === "id" || lcName === "name") && stringIndexOf(value, SANITIZE_NAMED_PROPS_PREFIX) !== 0) {
|
|
2210
|
+
_removeAttribute(name, currentNode, attr);
|
|
1318
2211
|
value = SANITIZE_NAMED_PROPS_PREFIX + value;
|
|
2212
|
+
recreatedNamedProp = true;
|
|
1319
2213
|
}
|
|
1320
|
-
if (SAFE_FOR_XML && regExpTest(/((--!?|])>)|<\/(style|title|textarea)/i, value)) {
|
|
1321
|
-
_removeAttribute(name, currentNode);
|
|
2214
|
+
if (SAFE_FOR_XML && regExpTest(/((--!?|])>)|<\/(style|script|title|xmp|textarea|noscript|iframe|noembed|noframes)/i, value)) {
|
|
2215
|
+
_removeAttribute(name, currentNode, attr);
|
|
1322
2216
|
continue;
|
|
1323
2217
|
}
|
|
1324
2218
|
if (lcName === "attributename" && stringMatch(value, "href")) {
|
|
1325
|
-
_removeAttribute(name, currentNode);
|
|
1326
|
-
continue;
|
|
1327
|
-
}
|
|
1328
|
-
if (hookEvent.forceKeepAttr) {
|
|
2219
|
+
_removeAttribute(name, currentNode, attr);
|
|
1329
2220
|
continue;
|
|
1330
2221
|
}
|
|
2222
|
+
if (hookEvent.forceKeepAttr) continue;
|
|
1331
2223
|
if (!hookEvent.keepAttr) {
|
|
1332
|
-
_removeAttribute(name, currentNode);
|
|
2224
|
+
_removeAttribute(name, currentNode, attr);
|
|
1333
2225
|
continue;
|
|
1334
2226
|
}
|
|
1335
|
-
if (!ALLOW_SELF_CLOSE_IN_ATTR && regExpTest(
|
|
1336
|
-
_removeAttribute(name, currentNode);
|
|
2227
|
+
if (!ALLOW_SELF_CLOSE_IN_ATTR && regExpTest(SELF_CLOSING_TAG, value)) {
|
|
2228
|
+
_removeAttribute(name, currentNode, attr);
|
|
1337
2229
|
continue;
|
|
1338
2230
|
}
|
|
1339
|
-
if (SAFE_FOR_TEMPLATES)
|
|
1340
|
-
arrayForEach([MUSTACHE_EXPR2, ERB_EXPR2, TMPLIT_EXPR2], (expr) => {
|
|
1341
|
-
value = stringReplace(value, expr, " ");
|
|
1342
|
-
});
|
|
1343
|
-
}
|
|
1344
|
-
const lcTag = transformCaseFunc(currentNode.nodeName);
|
|
2231
|
+
if (SAFE_FOR_TEMPLATES) value = _stripTemplateExpressions(value);
|
|
1345
2232
|
if (!_isValidAttribute(lcTag, lcName, value)) {
|
|
1346
|
-
_removeAttribute(name, currentNode);
|
|
2233
|
+
_removeAttribute(name, currentNode, attr);
|
|
1347
2234
|
continue;
|
|
1348
2235
|
}
|
|
1349
|
-
|
|
1350
|
-
if (namespaceURI) ;
|
|
1351
|
-
else {
|
|
1352
|
-
switch (trustedTypes.getAttributeType(lcTag, lcName)) {
|
|
1353
|
-
case "TrustedHTML": {
|
|
1354
|
-
value = trustedTypesPolicy.createHTML(value);
|
|
1355
|
-
break;
|
|
1356
|
-
}
|
|
1357
|
-
case "TrustedScriptURL": {
|
|
1358
|
-
value = trustedTypesPolicy.createScriptURL(value);
|
|
1359
|
-
break;
|
|
1360
|
-
}
|
|
1361
|
-
}
|
|
1362
|
-
}
|
|
1363
|
-
}
|
|
2236
|
+
value = _applyTrustedTypesToAttribute(lcTag, lcName, namespaceURI, value);
|
|
1364
2237
|
if (value !== initValue) {
|
|
1365
|
-
|
|
1366
|
-
if (namespaceURI) {
|
|
1367
|
-
currentNode.setAttributeNS(namespaceURI, name, value);
|
|
1368
|
-
} else {
|
|
1369
|
-
currentNode.setAttribute(name, value);
|
|
1370
|
-
}
|
|
1371
|
-
if (_isClobbered(currentNode)) {
|
|
1372
|
-
_forceRemove(currentNode);
|
|
1373
|
-
} else {
|
|
1374
|
-
arrayPop(DOMPurify.removed);
|
|
1375
|
-
}
|
|
1376
|
-
} catch (_) {
|
|
1377
|
-
_removeAttribute(name, currentNode);
|
|
1378
|
-
}
|
|
2238
|
+
if (_setAttributeValue(currentNode, name, namespaceURI, value) && recreatedNamedProp) arrayPop(DOMPurify.removed);
|
|
1379
2239
|
}
|
|
1380
2240
|
}
|
|
1381
2241
|
_executeHooks(hooks.afterSanitizeAttributes, currentNode, null);
|
|
2242
|
+
_handleHookDetachedNode(currentNode, root);
|
|
1382
2243
|
};
|
|
1383
|
-
const
|
|
2244
|
+
const _sanitizeShadowDOM2 = function _sanitizeShadowDOM(fragment) {
|
|
1384
2245
|
let shadowNode = null;
|
|
1385
2246
|
const shadowIterator = _createNodeIterator(fragment);
|
|
1386
2247
|
_executeHooks(hooks.beforeSanitizeShadowDOM, fragment, null);
|
|
1387
2248
|
while (shadowNode = shadowIterator.nextNode()) {
|
|
1388
2249
|
_executeHooks(hooks.uponSanitizeShadowNode, shadowNode, null);
|
|
1389
|
-
_sanitizeElements(shadowNode);
|
|
1390
|
-
_sanitizeAttributes(shadowNode);
|
|
1391
|
-
if (shadowNode.content
|
|
1392
|
-
|
|
2250
|
+
_sanitizeElements(shadowNode, fragment);
|
|
2251
|
+
_sanitizeAttributes(shadowNode, fragment);
|
|
2252
|
+
if (_isDocumentFragment(shadowNode.content)) _sanitizeShadowDOM2(shadowNode.content);
|
|
2253
|
+
if (_readNodeType(shadowNode) === NODE_TYPE.element) {
|
|
2254
|
+
const innerSr = getShadowRoot(shadowNode);
|
|
2255
|
+
if (_isDocumentFragment(innerSr)) {
|
|
2256
|
+
_sanitizeAttachedShadowRoots(innerSr);
|
|
2257
|
+
_sanitizeShadowDOM2(innerSr);
|
|
2258
|
+
}
|
|
1393
2259
|
}
|
|
1394
2260
|
}
|
|
1395
2261
|
_executeHooks(hooks.afterSanitizeShadowDOM, fragment, null);
|
|
1396
2262
|
};
|
|
2263
|
+
const _sanitizeAttachedShadowRoots = function _sanitizeAttachedShadowRoots2(root) {
|
|
2264
|
+
const stack = [{
|
|
2265
|
+
node: root,
|
|
2266
|
+
shadow: null
|
|
2267
|
+
}];
|
|
2268
|
+
while (stack.length > 0) {
|
|
2269
|
+
const item = stack.pop();
|
|
2270
|
+
if (item.shadow) {
|
|
2271
|
+
_sanitizeShadowDOM2(item.shadow);
|
|
2272
|
+
continue;
|
|
2273
|
+
}
|
|
2274
|
+
const node = item.node;
|
|
2275
|
+
const isElement = _readNodeType(node) === NODE_TYPE.element;
|
|
2276
|
+
const childNodes = getChildNodes(node);
|
|
2277
|
+
if (childNodes) for (let i = childNodes.length - 1; i >= 0; --i) stack.push({
|
|
2278
|
+
node: childNodes[i],
|
|
2279
|
+
shadow: null
|
|
2280
|
+
});
|
|
2281
|
+
if (isElement) {
|
|
2282
|
+
const rootName = getNodeName ? getNodeName(node) : null;
|
|
2283
|
+
if (typeof rootName === "string" && transformCaseFunc(rootName) === "template") {
|
|
2284
|
+
const content = node.content;
|
|
2285
|
+
if (_isDocumentFragment(content)) stack.push({
|
|
2286
|
+
node: content,
|
|
2287
|
+
shadow: null
|
|
2288
|
+
});
|
|
2289
|
+
}
|
|
2290
|
+
}
|
|
2291
|
+
if (isElement) {
|
|
2292
|
+
const sr = getShadowRoot(node);
|
|
2293
|
+
if (_isDocumentFragment(sr)) stack.push({
|
|
2294
|
+
node: null,
|
|
2295
|
+
shadow: sr
|
|
2296
|
+
}, {
|
|
2297
|
+
node: sr,
|
|
2298
|
+
shadow: null
|
|
2299
|
+
});
|
|
2300
|
+
}
|
|
2301
|
+
}
|
|
2302
|
+
};
|
|
1397
2303
|
DOMPurify.sanitize = function(dirty) {
|
|
1398
2304
|
let cfg = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {};
|
|
1399
2305
|
let body = null;
|
|
@@ -1401,119 +2307,124 @@ function createDOMPurify() {
|
|
|
1401
2307
|
let currentNode = null;
|
|
1402
2308
|
let returnNode = null;
|
|
1403
2309
|
IS_EMPTY_INPUT = !dirty;
|
|
1404
|
-
if (IS_EMPTY_INPUT)
|
|
1405
|
-
dirty = "<!-->";
|
|
1406
|
-
}
|
|
2310
|
+
if (IS_EMPTY_INPUT) dirty = "<!-->";
|
|
1407
2311
|
if (typeof dirty !== "string" && !_isNode(dirty)) {
|
|
1408
|
-
|
|
1409
|
-
|
|
1410
|
-
|
|
1411
|
-
|
|
1412
|
-
|
|
1413
|
-
|
|
1414
|
-
|
|
1415
|
-
|
|
1416
|
-
|
|
1417
|
-
if (
|
|
1418
|
-
return dirty;
|
|
1419
|
-
}
|
|
1420
|
-
if (!SET_CONFIG) {
|
|
1421
|
-
_parseConfig(cfg);
|
|
1422
|
-
}
|
|
2312
|
+
dirty = stringifyValue(dirty);
|
|
2313
|
+
if (typeof dirty !== "string") throw typeErrorCreate("dirty is not a string, aborting");
|
|
2314
|
+
}
|
|
2315
|
+
if (!DOMPurify.isSupported) return dirty;
|
|
2316
|
+
if (SET_CONFIG) {
|
|
2317
|
+
ALLOWED_TAGS = SET_CONFIG_ALLOWED_TAGS;
|
|
2318
|
+
ALLOWED_ATTR = SET_CONFIG_ALLOWED_ATTR;
|
|
2319
|
+
} else _parseConfig(cfg);
|
|
2320
|
+
if (hooks.uponSanitizeElement.length > 0 || hooks.uponSanitizeAttribute.length > 0) ALLOWED_TAGS = clone(ALLOWED_TAGS);
|
|
2321
|
+
if (hooks.uponSanitizeAttribute.length > 0) ALLOWED_ATTR = clone(ALLOWED_ATTR);
|
|
1423
2322
|
DOMPurify.removed = [];
|
|
1424
|
-
|
|
1425
|
-
|
|
1426
|
-
|
|
1427
|
-
|
|
1428
|
-
if (
|
|
1429
|
-
const tagName = transformCaseFunc(
|
|
2323
|
+
const inPlace = IN_PLACE && typeof dirty !== "string" && _isNode(dirty);
|
|
2324
|
+
if (inPlace) {
|
|
2325
|
+
_neutralizePatchLinkage(dirty);
|
|
2326
|
+
const nn = _readNodeName(dirty);
|
|
2327
|
+
if (typeof nn === "string") {
|
|
2328
|
+
const tagName = transformCaseFunc(nn);
|
|
1430
2329
|
if (!ALLOWED_TAGS[tagName] || FORBID_TAGS[tagName]) {
|
|
2330
|
+
_neutralizeRoot(dirty);
|
|
1431
2331
|
throw typeErrorCreate("root node is forbidden and cannot be sanitized in-place");
|
|
1432
2332
|
}
|
|
1433
2333
|
}
|
|
1434
|
-
|
|
2334
|
+
if (_isClobbered(dirty)) {
|
|
2335
|
+
_neutralizeRoot(dirty);
|
|
2336
|
+
throw typeErrorCreate("root node is clobbered and cannot be sanitized in-place");
|
|
2337
|
+
}
|
|
2338
|
+
try {
|
|
2339
|
+
_sanitizeAttachedShadowRoots(dirty);
|
|
2340
|
+
} catch (error) {
|
|
2341
|
+
_neutralizeRoot(dirty);
|
|
2342
|
+
throw error;
|
|
2343
|
+
}
|
|
2344
|
+
} else if (_isNode(dirty)) {
|
|
1435
2345
|
body = _initDocument("<!---->");
|
|
1436
2346
|
importedNode = body.ownerDocument.importNode(dirty, true);
|
|
1437
|
-
if (importedNode.nodeType === NODE_TYPE.element && importedNode.nodeName === "BODY")
|
|
1438
|
-
|
|
1439
|
-
|
|
1440
|
-
|
|
1441
|
-
} else {
|
|
1442
|
-
body.appendChild(importedNode);
|
|
1443
|
-
}
|
|
2347
|
+
if (importedNode.nodeType === NODE_TYPE.element && importedNode.nodeName === "BODY") body = importedNode;
|
|
2348
|
+
else if (importedNode.nodeName === "HTML") body = importedNode;
|
|
2349
|
+
else body.appendChild(importedNode);
|
|
2350
|
+
_sanitizeAttachedShadowRoots(body);
|
|
1444
2351
|
} else {
|
|
1445
|
-
if (!RETURN_DOM && !SAFE_FOR_TEMPLATES && !WHOLE_DOCUMENT &&
|
|
1446
|
-
dirty.indexOf("<") === -1) {
|
|
1447
|
-
return trustedTypesPolicy && RETURN_TRUSTED_TYPE ? trustedTypesPolicy.createHTML(dirty) : dirty;
|
|
1448
|
-
}
|
|
2352
|
+
if (!RETURN_DOM && !SAFE_FOR_TEMPLATES && !WHOLE_DOCUMENT && dirty.indexOf("<") === -1) return trustedTypesPolicy && RETURN_TRUSTED_TYPE ? _createTrustedHTML(dirty) : dirty;
|
|
1449
2353
|
body = _initDocument(dirty);
|
|
1450
|
-
if (!body)
|
|
1451
|
-
return RETURN_DOM ? null : RETURN_TRUSTED_TYPE ? emptyHTML : "";
|
|
1452
|
-
}
|
|
2354
|
+
if (!body) return RETURN_DOM ? null : RETURN_TRUSTED_TYPE ? emptyHTML : "";
|
|
1453
2355
|
}
|
|
1454
|
-
if (body && FORCE_BODY)
|
|
1455
|
-
|
|
1456
|
-
|
|
1457
|
-
|
|
1458
|
-
|
|
1459
|
-
|
|
1460
|
-
|
|
1461
|
-
|
|
1462
|
-
_sanitizeShadowDOM(currentNode.content);
|
|
2356
|
+
if (body && FORCE_BODY) _forceRemove(body.firstChild);
|
|
2357
|
+
const walkRoot = inPlace ? dirty : body;
|
|
2358
|
+
try {
|
|
2359
|
+
const nodeIterator = _createNodeIterator(walkRoot);
|
|
2360
|
+
while (currentNode = nodeIterator.nextNode()) {
|
|
2361
|
+
_sanitizeElements(currentNode, walkRoot);
|
|
2362
|
+
_sanitizeAttributes(currentNode, walkRoot);
|
|
2363
|
+
if (_isDocumentFragment(currentNode.content)) _sanitizeShadowDOM2(currentNode.content);
|
|
1463
2364
|
}
|
|
2365
|
+
} catch (error) {
|
|
2366
|
+
if (inPlace) {
|
|
2367
|
+
_neutralizeRoot(dirty);
|
|
2368
|
+
arrayForEach(DOMPurify.removed, (entry) => {
|
|
2369
|
+
if (entry.element) _neutralizeSubtree(entry.element);
|
|
2370
|
+
});
|
|
2371
|
+
}
|
|
2372
|
+
throw error;
|
|
1464
2373
|
}
|
|
1465
|
-
if (
|
|
2374
|
+
if (inPlace) {
|
|
2375
|
+
let rootWasRemoved = false;
|
|
2376
|
+
arrayForEach(DOMPurify.removed, (entry) => {
|
|
2377
|
+
if (entry.element) {
|
|
2378
|
+
if (entry.element === dirty) rootWasRemoved = true;
|
|
2379
|
+
_neutralizeSubtree(entry.element);
|
|
2380
|
+
}
|
|
2381
|
+
});
|
|
2382
|
+
if (rootWasRemoved) throw typeErrorCreate("a node selected for removal could not be safely returned; refusing to sanitize in place");
|
|
2383
|
+
if (SAFE_FOR_TEMPLATES) _scrubTemplateExpressions2(dirty);
|
|
1466
2384
|
return dirty;
|
|
1467
2385
|
}
|
|
1468
2386
|
if (RETURN_DOM) {
|
|
2387
|
+
if (SAFE_FOR_TEMPLATES) _scrubTemplateExpressions2(body);
|
|
1469
2388
|
if (RETURN_DOM_FRAGMENT) {
|
|
1470
2389
|
returnNode = createDocumentFragment.call(body.ownerDocument);
|
|
1471
|
-
while (body.firstChild)
|
|
1472
|
-
|
|
1473
|
-
|
|
1474
|
-
} else {
|
|
1475
|
-
returnNode = body;
|
|
1476
|
-
}
|
|
1477
|
-
if (ALLOWED_ATTR.shadowroot || ALLOWED_ATTR.shadowrootmode) {
|
|
1478
|
-
returnNode = importNode.call(originalDocument, returnNode, true);
|
|
1479
|
-
}
|
|
2390
|
+
while (body.firstChild) returnNode.appendChild(body.firstChild);
|
|
2391
|
+
} else returnNode = body;
|
|
2392
|
+
if (ALLOWED_ATTR.shadowroot || ALLOWED_ATTR.shadowrootmode) returnNode = importNode.call(originalDocument, returnNode, true);
|
|
1480
2393
|
return returnNode;
|
|
1481
2394
|
}
|
|
1482
2395
|
let serializedHTML = WHOLE_DOCUMENT ? body.outerHTML : body.innerHTML;
|
|
1483
|
-
if (WHOLE_DOCUMENT && ALLOWED_TAGS["!doctype"] && body.ownerDocument && body.ownerDocument.doctype && body.ownerDocument.doctype.name && regExpTest(DOCTYPE_NAME, body.ownerDocument.doctype.name))
|
|
1484
|
-
|
|
1485
|
-
|
|
1486
|
-
if (SAFE_FOR_TEMPLATES) {
|
|
1487
|
-
arrayForEach([MUSTACHE_EXPR2, ERB_EXPR2, TMPLIT_EXPR2], (expr) => {
|
|
1488
|
-
serializedHTML = stringReplace(serializedHTML, expr, " ");
|
|
1489
|
-
});
|
|
1490
|
-
}
|
|
1491
|
-
return trustedTypesPolicy && RETURN_TRUSTED_TYPE ? trustedTypesPolicy.createHTML(serializedHTML) : serializedHTML;
|
|
2396
|
+
if (WHOLE_DOCUMENT && ALLOWED_TAGS["!doctype"] && body.ownerDocument && body.ownerDocument.doctype && body.ownerDocument.doctype.name && regExpTest(DOCTYPE_NAME, body.ownerDocument.doctype.name)) serializedHTML = "<!DOCTYPE " + body.ownerDocument.doctype.name + ">\n" + serializedHTML;
|
|
2397
|
+
if (SAFE_FOR_TEMPLATES) serializedHTML = _stripTemplateExpressions(serializedHTML);
|
|
2398
|
+
return trustedTypesPolicy && RETURN_TRUSTED_TYPE ? _createTrustedHTML(serializedHTML) : serializedHTML;
|
|
1492
2399
|
};
|
|
1493
2400
|
DOMPurify.setConfig = function() {
|
|
1494
2401
|
let cfg = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
|
|
1495
2402
|
_parseConfig(cfg);
|
|
1496
2403
|
SET_CONFIG = true;
|
|
2404
|
+
SET_CONFIG_ALLOWED_TAGS = ALLOWED_TAGS;
|
|
2405
|
+
SET_CONFIG_ALLOWED_ATTR = ALLOWED_ATTR;
|
|
1497
2406
|
};
|
|
1498
2407
|
DOMPurify.clearConfig = function() {
|
|
1499
2408
|
CONFIG = null;
|
|
1500
2409
|
SET_CONFIG = false;
|
|
2410
|
+
SET_CONFIG_ALLOWED_TAGS = null;
|
|
2411
|
+
SET_CONFIG_ALLOWED_ATTR = null;
|
|
2412
|
+
trustedTypesPolicy = defaultTrustedTypesPolicy;
|
|
2413
|
+
emptyHTML = "";
|
|
1501
2414
|
};
|
|
1502
2415
|
DOMPurify.isValidAttribute = function(tag, attr, value) {
|
|
1503
|
-
if (!CONFIG) {
|
|
1504
|
-
_parseConfig({});
|
|
1505
|
-
}
|
|
2416
|
+
if (!CONFIG) _parseConfig({});
|
|
1506
2417
|
const lcTag = transformCaseFunc(tag);
|
|
1507
2418
|
const lcName = transformCaseFunc(attr);
|
|
1508
2419
|
return _isValidAttribute(lcTag, lcName, value);
|
|
1509
2420
|
};
|
|
1510
2421
|
DOMPurify.addHook = function(entryPoint, hookFunction) {
|
|
1511
|
-
if (typeof hookFunction !== "function")
|
|
1512
|
-
|
|
1513
|
-
}
|
|
2422
|
+
if (typeof hookFunction !== "function") return;
|
|
2423
|
+
if (!objectHasOwnProperty(hooks, entryPoint)) return;
|
|
1514
2424
|
arrayPush(hooks[entryPoint], hookFunction);
|
|
1515
2425
|
};
|
|
1516
2426
|
DOMPurify.removeHook = function(entryPoint, hookFunction) {
|
|
2427
|
+
if (!objectHasOwnProperty(hooks, entryPoint)) return;
|
|
1517
2428
|
if (hookFunction !== void 0) {
|
|
1518
2429
|
const index2 = arrayLastIndexOf(hooks[entryPoint], hookFunction);
|
|
1519
2430
|
return index2 === -1 ? void 0 : arraySplice(hooks[entryPoint], index2, 1)[0];
|
|
@@ -1521,6 +2432,7 @@ function createDOMPurify() {
|
|
|
1521
2432
|
return arrayPop(hooks[entryPoint]);
|
|
1522
2433
|
};
|
|
1523
2434
|
DOMPurify.removeHooks = function(entryPoint) {
|
|
2435
|
+
if (!objectHasOwnProperty(hooks, entryPoint)) return;
|
|
1524
2436
|
hooks[entryPoint] = [];
|
|
1525
2437
|
};
|
|
1526
2438
|
DOMPurify.removeAllHooks = function() {
|
|
@@ -1528,10 +2440,10 @@ function createDOMPurify() {
|
|
|
1528
2440
|
};
|
|
1529
2441
|
return DOMPurify;
|
|
1530
2442
|
}
|
|
1531
|
-
var
|
|
2443
|
+
var purify_default = createDOMPurify();
|
|
1532
2444
|
const purifyConfig = { FORBID_TAGS: ["img"] };
|
|
1533
|
-
if (typeof
|
|
1534
|
-
|
|
2445
|
+
if (typeof purify_default.addHook === "function" && typeof document !== "undefined" && document.createElement) {
|
|
2446
|
+
purify_default.addHook("uponSanitizeElement", (node, data) => {
|
|
1535
2447
|
var _a;
|
|
1536
2448
|
if (/^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/.test(data.tagName)) {
|
|
1537
2449
|
const tag = document.createElement("span");
|
|
@@ -1542,7 +2454,7 @@ if (typeof purify.addHook === "function" && typeof document !== "undefined" && d
|
|
|
1542
2454
|
}
|
|
1543
2455
|
function xssPurify(str) {
|
|
1544
2456
|
if (typeof window === "undefined") return str;
|
|
1545
|
-
return
|
|
2457
|
+
return purify_default.sanitize(str, purifyConfig);
|
|
1546
2458
|
}
|
|
1547
2459
|
const highlightWords = (Word, title, inherit) => {
|
|
1548
2460
|
if (!Word) return xssPurify(title || "");
|
|
@@ -1552,11 +2464,12 @@ const highlightWords = (Word, title, inherit) => {
|
|
|
1552
2464
|
const str = title == null ? void 0 : title.replace(regexPattern, (_, match) => `<span style="color: ${color}; text-decoration: underline;">${match}</span>`);
|
|
1553
2465
|
return str;
|
|
1554
2466
|
};
|
|
1555
|
-
/*! js-cookie v3.0.
|
|
2467
|
+
/*! js-cookie v3.0.8 | MIT */
|
|
1556
2468
|
function assign$2(target) {
|
|
1557
2469
|
for (var i = 1; i < arguments.length; i++) {
|
|
1558
2470
|
var source = arguments[i];
|
|
1559
2471
|
for (var key in source) {
|
|
2472
|
+
if (key === "__proto__") continue;
|
|
1560
2473
|
target[key] = source[key];
|
|
1561
2474
|
}
|
|
1562
2475
|
}
|
|
@@ -1613,11 +2526,11 @@ function init(converter, defaultAttributes) {
|
|
|
1613
2526
|
var value = parts.slice(1).join("=");
|
|
1614
2527
|
try {
|
|
1615
2528
|
var found = decodeURIComponent(parts[0]);
|
|
1616
|
-
jar[found] = converter.read(value, found);
|
|
2529
|
+
if (!(found in jar)) jar[found] = converter.read(value, found);
|
|
1617
2530
|
if (name === found) {
|
|
1618
2531
|
break;
|
|
1619
2532
|
}
|
|
1620
|
-
} catch (
|
|
2533
|
+
} catch (_e) {
|
|
1621
2534
|
}
|
|
1622
2535
|
}
|
|
1623
2536
|
return name ? jar[name] : jar;
|
|
@@ -1650,25 +2563,10 @@ function init(converter, defaultAttributes) {
|
|
|
1650
2563
|
}
|
|
1651
2564
|
var api = init(defaultConverter, { path: "/" });
|
|
1652
2565
|
/*!
|
|
1653
|
-
* shared v9.14.
|
|
2566
|
+
* shared v9.14.4
|
|
1654
2567
|
* (c) 2025 kazuya kawaguchi
|
|
1655
2568
|
* Released under the MIT License.
|
|
1656
2569
|
*/
|
|
1657
|
-
function warn(msg, err) {
|
|
1658
|
-
if (typeof console !== "undefined") {
|
|
1659
|
-
console.warn(`[intlify] ` + msg);
|
|
1660
|
-
if (err) {
|
|
1661
|
-
console.warn(err.stack);
|
|
1662
|
-
}
|
|
1663
|
-
}
|
|
1664
|
-
}
|
|
1665
|
-
const hasWarned = {};
|
|
1666
|
-
function warnOnce(msg) {
|
|
1667
|
-
if (!hasWarned[msg]) {
|
|
1668
|
-
hasWarned[msg] = true;
|
|
1669
|
-
warn(msg);
|
|
1670
|
-
}
|
|
1671
|
-
}
|
|
1672
2570
|
const inBrowser = typeof window !== "undefined";
|
|
1673
2571
|
let mark;
|
|
1674
2572
|
let measure;
|
|
@@ -1713,31 +2611,7 @@ const getGlobalThis = () => {
|
|
|
1713
2611
|
return _globalThis || (_globalThis = typeof globalThis !== "undefined" ? globalThis : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : typeof global !== "undefined" ? global : create());
|
|
1714
2612
|
};
|
|
1715
2613
|
function escapeHtml(rawText) {
|
|
1716
|
-
return rawText.replace(
|
|
1717
|
-
}
|
|
1718
|
-
function escapeAttributeValue(value) {
|
|
1719
|
-
return value.replace(/&(?![a-zA-Z0-9#]{2,6};)/g, "&").replace(/"/g, """).replace(/'/g, "'").replace(/</g, "<").replace(/>/g, ">");
|
|
1720
|
-
}
|
|
1721
|
-
function sanitizeTranslatedHtml(html2) {
|
|
1722
|
-
html2 = html2.replace(/(\w+)\s*=\s*"([^"]*)"/g, (_, attrName, attrValue) => `${attrName}="${escapeAttributeValue(attrValue)}"`);
|
|
1723
|
-
html2 = html2.replace(/(\w+)\s*=\s*'([^']*)'/g, (_, attrName, attrValue) => `${attrName}='${escapeAttributeValue(attrValue)}'`);
|
|
1724
|
-
const eventHandlerPattern = /\s*on\w+\s*=\s*["']?[^"'>]+["']?/gi;
|
|
1725
|
-
if (eventHandlerPattern.test(html2)) {
|
|
1726
|
-
if (process.env.NODE_ENV !== "production") {
|
|
1727
|
-
warn("Potentially dangerous event handlers detected in translation. Consider removing onclick, onerror, etc. from your translation messages.");
|
|
1728
|
-
}
|
|
1729
|
-
html2 = html2.replace(/(\s+)(on)(\w+\s*=)/gi, "$1on$3");
|
|
1730
|
-
}
|
|
1731
|
-
const javascriptUrlPattern = [
|
|
1732
|
-
// In href, src, action, formaction attributes
|
|
1733
|
-
/(\s+(?:href|src|action|formaction)\s*=\s*["']?)\s*javascript:/gi,
|
|
1734
|
-
// In style attributes within url()
|
|
1735
|
-
/(style\s*=\s*["'][^"']*url\s*\(\s*)javascript:/gi
|
|
1736
|
-
];
|
|
1737
|
-
javascriptUrlPattern.forEach((pattern) => {
|
|
1738
|
-
html2 = html2.replace(pattern, "$1javascript:");
|
|
1739
|
-
});
|
|
1740
|
-
return html2;
|
|
2614
|
+
return rawText.replace(/</g, "<").replace(/>/g, ">").replace(/"/g, """).replace(/'/g, "'");
|
|
1741
2615
|
}
|
|
1742
2616
|
const hasOwnProperty = Object.prototype.hasOwnProperty;
|
|
1743
2617
|
function hasOwn(obj, key) {
|
|
@@ -1800,6 +2674,21 @@ function incrementer(code2) {
|
|
|
1800
2674
|
let current = code2;
|
|
1801
2675
|
return () => ++current;
|
|
1802
2676
|
}
|
|
2677
|
+
function warn(msg, err) {
|
|
2678
|
+
if (typeof console !== "undefined") {
|
|
2679
|
+
console.warn(`[intlify] ` + msg);
|
|
2680
|
+
if (err) {
|
|
2681
|
+
console.warn(err.stack);
|
|
2682
|
+
}
|
|
2683
|
+
}
|
|
2684
|
+
}
|
|
2685
|
+
const hasWarned = {};
|
|
2686
|
+
function warnOnce(msg) {
|
|
2687
|
+
if (!hasWarned[msg]) {
|
|
2688
|
+
hasWarned[msg] = true;
|
|
2689
|
+
warn(msg);
|
|
2690
|
+
}
|
|
2691
|
+
}
|
|
1803
2692
|
function createEmitter() {
|
|
1804
2693
|
const events = /* @__PURE__ */ new Map();
|
|
1805
2694
|
const emitter2 = {
|
|
@@ -1848,7 +2737,7 @@ function deepCopy(src, des) {
|
|
|
1848
2737
|
}
|
|
1849
2738
|
}
|
|
1850
2739
|
/*!
|
|
1851
|
-
* message-compiler v9.14.
|
|
2740
|
+
* message-compiler v9.14.4
|
|
1852
2741
|
* (c) 2025 kazuya kawaguchi
|
|
1853
2742
|
* Released under the MIT License.
|
|
1854
2743
|
*/
|
|
@@ -3398,7 +4287,7 @@ function baseCompile$1(source, options = {}) {
|
|
|
3398
4287
|
}
|
|
3399
4288
|
}
|
|
3400
4289
|
/*!
|
|
3401
|
-
* core-base v9.14.
|
|
4290
|
+
* core-base v9.14.4
|
|
3402
4291
|
* (c) 2025 kazuya kawaguchi
|
|
3403
4292
|
* Released under the MIT License.
|
|
3404
4293
|
*/
|
|
@@ -4205,7 +5094,7 @@ function appendItemToChain(chain, target, blocks) {
|
|
|
4205
5094
|
}
|
|
4206
5095
|
return follow;
|
|
4207
5096
|
}
|
|
4208
|
-
const VERSION$1 = "9.14.
|
|
5097
|
+
const VERSION$1 = "9.14.4";
|
|
4209
5098
|
const NOT_REOSLVED = -1;
|
|
4210
5099
|
const DEFAULT_LOCALE = "en-US";
|
|
4211
5100
|
const MISSING_RESOLVE_VALUE = "";
|
|
@@ -4572,10 +5461,7 @@ function translate(context, ...args) {
|
|
|
4572
5461
|
const ctxOptions = getMessageContextOptions(context, targetLocale, message, options);
|
|
4573
5462
|
const msgContext = createMessageContext(ctxOptions);
|
|
4574
5463
|
const messaged = evaluateMessage(context, msg, msgContext);
|
|
4575
|
-
|
|
4576
|
-
if (escapeParameter && isString$1(ret)) {
|
|
4577
|
-
ret = sanitizeTranslatedHtml(ret);
|
|
4578
|
-
}
|
|
5464
|
+
const ret = postTranslation ? postTranslation(messaged, key) : messaged;
|
|
4579
5465
|
if (process.env.NODE_ENV !== "production" || __INTLIFY_PROD_DEVTOOLS__) {
|
|
4580
5466
|
const payloads = {
|
|
4581
5467
|
timestamp: Date.now(),
|
|
@@ -5292,11 +6178,11 @@ function setupDevtoolsPlugin(pluginDescriptor, setupFn) {
|
|
|
5292
6178
|
}
|
|
5293
6179
|
}
|
|
5294
6180
|
/*!
|
|
5295
|
-
* vue-i18n v9.14.
|
|
6181
|
+
* vue-i18n v9.14.4
|
|
5296
6182
|
* (c) 2025 kazuya kawaguchi
|
|
5297
6183
|
* Released under the MIT License.
|
|
5298
6184
|
*/
|
|
5299
|
-
const VERSION = "9.14.
|
|
6185
|
+
const VERSION = "9.14.4";
|
|
5300
6186
|
function initFeatureFlags() {
|
|
5301
6187
|
if (typeof __VUE_I18N_FULL_INSTALL__ !== "boolean") {
|
|
5302
6188
|
getGlobalThis().__VUE_I18N_FULL_INSTALL__ = true;
|
|
@@ -5565,7 +6451,7 @@ function createComposer(options = {}, VueI18nLegacy) {
|
|
|
5565
6451
|
const { __root, __injectWithOption } = options;
|
|
5566
6452
|
const _isGlobal = __root === void 0;
|
|
5567
6453
|
const flatJson = options.flatJson;
|
|
5568
|
-
const
|
|
6454
|
+
const _ref2 = inBrowser ? ref : shallowRef;
|
|
5569
6455
|
const translateExistCompatible = !!options.translateExistCompatible;
|
|
5570
6456
|
if (process.env.NODE_ENV !== "production") {
|
|
5571
6457
|
if (translateExistCompatible && true) {
|
|
@@ -5573,17 +6459,17 @@ function createComposer(options = {}, VueI18nLegacy) {
|
|
|
5573
6459
|
}
|
|
5574
6460
|
}
|
|
5575
6461
|
let _inheritLocale = isBoolean(options.inheritLocale) ? options.inheritLocale : true;
|
|
5576
|
-
const _locale =
|
|
6462
|
+
const _locale = _ref2(
|
|
5577
6463
|
// prettier-ignore
|
|
5578
6464
|
__root && _inheritLocale ? __root.locale.value : isString$1(options.locale) ? options.locale : DEFAULT_LOCALE
|
|
5579
6465
|
);
|
|
5580
|
-
const _fallbackLocale =
|
|
6466
|
+
const _fallbackLocale = _ref2(
|
|
5581
6467
|
// prettier-ignore
|
|
5582
6468
|
__root && _inheritLocale ? __root.fallbackLocale.value : isString$1(options.fallbackLocale) || isArray(options.fallbackLocale) || isPlainObject(options.fallbackLocale) || options.fallbackLocale === false ? options.fallbackLocale : _locale.value
|
|
5583
6469
|
);
|
|
5584
|
-
const _messages =
|
|
5585
|
-
const _datetimeFormats =
|
|
5586
|
-
const _numberFormats =
|
|
6470
|
+
const _messages = _ref2(getLocaleMessages(_locale.value, options));
|
|
6471
|
+
const _datetimeFormats = _ref2(isPlainObject(options.datetimeFormats) ? options.datetimeFormats : { [_locale.value]: {} });
|
|
6472
|
+
const _numberFormats = _ref2(isPlainObject(options.numberFormats) ? options.numberFormats : { [_locale.value]: {} });
|
|
5587
6473
|
let _missingWarn = __root ? __root.missingWarn : isBoolean(options.missingWarn) || isRegExp(options.missingWarn) ? options.missingWarn : true;
|
|
5588
6474
|
let _fallbackWarn = __root ? __root.fallbackWarn : isBoolean(options.fallbackWarn) || isRegExp(options.fallbackWarn) ? options.fallbackWarn : true;
|
|
5589
6475
|
let _fallbackRoot = __root ? __root.fallbackRoot : isBoolean(options.fallbackRoot) ? options.fallbackRoot : true;
|
|
@@ -6593,7 +7479,7 @@ function makeParams(value) {
|
|
|
6593
7479
|
}
|
|
6594
7480
|
return [path, named, options];
|
|
6595
7481
|
}
|
|
6596
|
-
function
|
|
7482
|
+
function apply2(app, i18n2, ...options) {
|
|
6597
7483
|
const pluginOptions = isPlainObject(options[0]) ? options[0] : {};
|
|
6598
7484
|
const useI18nComponentName = !!pluginOptions.useI18nComponentName;
|
|
6599
7485
|
const globalInstall = isBoolean(pluginOptions.globalInstall) ? pluginOptions.globalInstall : true;
|
|
@@ -7144,7 +8030,7 @@ function createI18n(options = {}, VueI18nLegacy) {
|
|
|
7144
8030
|
globalReleaseHandler = injectGlobalFields(app, i18n2.global);
|
|
7145
8031
|
}
|
|
7146
8032
|
if (__VUE_I18N_FULL_INSTALL__) {
|
|
7147
|
-
|
|
8033
|
+
apply2(app, i18n2, ...options2);
|
|
7148
8034
|
}
|
|
7149
8035
|
if (__VUE_I18N_LEGACY_API__ && __legacyMode) {
|
|
7150
8036
|
app.mixin(defineMixin(__global, __global.__composer, i18n2));
|
|
@@ -9152,7 +10038,7 @@ const _hoisted_9$b = { class: "float-tooltip" };
|
|
|
9152
10038
|
const _hoisted_10$a = { class: "float-tooltip-content" };
|
|
9153
10039
|
const _hoisted_11$8 = { class: "float-tooltip" };
|
|
9154
10040
|
const _hoisted_12$8 = { class: "float-tooltip-content" };
|
|
9155
|
-
const _hoisted_13$
|
|
10041
|
+
const _hoisted_13$6 = { class: "float-tooltip" };
|
|
9156
10042
|
const _hoisted_14$3 = { class: "float-tooltip-content" };
|
|
9157
10043
|
const _hoisted_15$3 = ["src", "alt"];
|
|
9158
10044
|
const _sfc_main$Q = /* @__PURE__ */ defineComponent({
|
|
@@ -9483,7 +10369,7 @@ const _sfc_main$Q = /* @__PURE__ */ defineComponent({
|
|
|
9483
10369
|
})
|
|
9484
10370
|
])
|
|
9485
10371
|
], -1)),
|
|
9486
|
-
createElementVNode("div", _hoisted_13$
|
|
10372
|
+
createElementVNode("div", _hoisted_13$6, [
|
|
9487
10373
|
createElementVNode("span", _hoisted_14$3, toDisplayString$1(unref(t2)("gitCodeLayout.toolsFloat.expand")), 1),
|
|
9488
10374
|
_cache[14] || (_cache[14] = createElementVNode("span", { class: "float-tooltip-arrow" }, null, -1))
|
|
9489
10375
|
])
|
|
@@ -10480,7 +11366,7 @@ const _sfc_main$M = /* @__PURE__ */ defineComponent({
|
|
|
10480
11366
|
key: 0,
|
|
10481
11367
|
class: "gc-flash-tag__icon",
|
|
10482
11368
|
src: iconUrl.value
|
|
10483
|
-
}, null, 8, _hoisted_1$G)) : renderSlot(_ctx.$slots, "default", {
|
|
11369
|
+
}, null, 8, _hoisted_1$G)) : renderSlot(_ctx.$slots, "default", {}, void 0, void 0, 1)
|
|
10484
11370
|
], 16)
|
|
10485
11371
|
]),
|
|
10486
11372
|
_: 3
|
|
@@ -10531,7 +11417,7 @@ var hasRequiredCore;
|
|
|
10531
11417
|
function requireCore() {
|
|
10532
11418
|
if (hasRequiredCore) return core.exports;
|
|
10533
11419
|
hasRequiredCore = 1;
|
|
10534
|
-
(function(module, exports
|
|
11420
|
+
(function(module, exports) {
|
|
10535
11421
|
(function(root, factory) {
|
|
10536
11422
|
{
|
|
10537
11423
|
module.exports = factory();
|
|
@@ -11138,7 +12024,7 @@ var hasRequiredEncBase64;
|
|
|
11138
12024
|
function requireEncBase64() {
|
|
11139
12025
|
if (hasRequiredEncBase64) return encBase64.exports;
|
|
11140
12026
|
hasRequiredEncBase64 = 1;
|
|
11141
|
-
(function(module, exports
|
|
12027
|
+
(function(module, exports) {
|
|
11142
12028
|
(function(root, factory) {
|
|
11143
12029
|
{
|
|
11144
12030
|
module.exports = factory(requireCore());
|
|
@@ -11245,7 +12131,7 @@ var hasRequiredMd5;
|
|
|
11245
12131
|
function requireMd5() {
|
|
11246
12132
|
if (hasRequiredMd5) return md5.exports;
|
|
11247
12133
|
hasRequiredMd5 = 1;
|
|
11248
|
-
(function(module, exports
|
|
12134
|
+
(function(module, exports) {
|
|
11249
12135
|
(function(root, factory) {
|
|
11250
12136
|
{
|
|
11251
12137
|
module.exports = factory(requireCore());
|
|
@@ -11424,7 +12310,7 @@ var hasRequiredSha1;
|
|
|
11424
12310
|
function requireSha1() {
|
|
11425
12311
|
if (hasRequiredSha1) return sha1.exports;
|
|
11426
12312
|
hasRequiredSha1 = 1;
|
|
11427
|
-
(function(module, exports
|
|
12313
|
+
(function(module, exports) {
|
|
11428
12314
|
(function(root, factory) {
|
|
11429
12315
|
{
|
|
11430
12316
|
module.exports = factory(requireCore());
|
|
@@ -11514,7 +12400,7 @@ var hasRequiredHmac;
|
|
|
11514
12400
|
function requireHmac() {
|
|
11515
12401
|
if (hasRequiredHmac) return hmac.exports;
|
|
11516
12402
|
hasRequiredHmac = 1;
|
|
11517
|
-
(function(module, exports
|
|
12403
|
+
(function(module, exports) {
|
|
11518
12404
|
(function(root, factory) {
|
|
11519
12405
|
{
|
|
11520
12406
|
module.exports = factory(requireCore());
|
|
@@ -11619,7 +12505,7 @@ var hasRequiredEvpkdf;
|
|
|
11619
12505
|
function requireEvpkdf() {
|
|
11620
12506
|
if (hasRequiredEvpkdf) return evpkdf.exports;
|
|
11621
12507
|
hasRequiredEvpkdf = 1;
|
|
11622
|
-
(function(module, exports
|
|
12508
|
+
(function(module, exports) {
|
|
11623
12509
|
(function(root, factory, undef) {
|
|
11624
12510
|
{
|
|
11625
12511
|
module.exports = factory(requireCore(), requireSha1(), requireHmac());
|
|
@@ -11709,7 +12595,7 @@ var hasRequiredCipherCore;
|
|
|
11709
12595
|
function requireCipherCore() {
|
|
11710
12596
|
if (hasRequiredCipherCore) return cipherCore.exports;
|
|
11711
12597
|
hasRequiredCipherCore = 1;
|
|
11712
|
-
(function(module, exports
|
|
12598
|
+
(function(module, exports) {
|
|
11713
12599
|
(function(root, factory, undef) {
|
|
11714
12600
|
{
|
|
11715
12601
|
module.exports = factory(requireCore(), requireEvpkdf());
|
|
@@ -12268,15 +13154,11 @@ function requireCipherCore() {
|
|
|
12268
13154
|
* var derivedParams = CryptoJS.kdf.OpenSSL.execute('Password', 256/32, 128/32);
|
|
12269
13155
|
* var derivedParams = CryptoJS.kdf.OpenSSL.execute('Password', 256/32, 128/32, 'saltsalt');
|
|
12270
13156
|
*/
|
|
12271
|
-
execute: function(password, keySize, ivSize, salt
|
|
13157
|
+
execute: function(password, keySize, ivSize, salt) {
|
|
12272
13158
|
if (!salt) {
|
|
12273
13159
|
salt = WordArray.random(64 / 8);
|
|
12274
13160
|
}
|
|
12275
|
-
|
|
12276
|
-
var key = EvpKDF.create({ keySize: keySize + ivSize }).compute(password, salt);
|
|
12277
|
-
} else {
|
|
12278
|
-
var key = EvpKDF.create({ keySize: keySize + ivSize, hasher }).compute(password, salt);
|
|
12279
|
-
}
|
|
13161
|
+
var key = EvpKDF.create({ keySize: keySize + ivSize }).compute(password, salt);
|
|
12280
13162
|
var iv = WordArray.create(key.words.slice(keySize), ivSize * 4);
|
|
12281
13163
|
key.sigBytes = keySize * 4;
|
|
12282
13164
|
return CipherParams.create({ key, iv, salt });
|
|
@@ -12310,7 +13192,7 @@ function requireCipherCore() {
|
|
|
12310
13192
|
*/
|
|
12311
13193
|
encrypt: function(cipher, message, password, cfg) {
|
|
12312
13194
|
cfg = this.cfg.extend(cfg);
|
|
12313
|
-
var derivedParams = cfg.kdf.execute(password, cipher.keySize, cipher.ivSize
|
|
13195
|
+
var derivedParams = cfg.kdf.execute(password, cipher.keySize, cipher.ivSize);
|
|
12314
13196
|
cfg.iv = derivedParams.iv;
|
|
12315
13197
|
var ciphertext = SerializableCipher.encrypt.call(this, cipher, message, derivedParams.key, cfg);
|
|
12316
13198
|
ciphertext.mixIn(derivedParams);
|
|
@@ -12336,7 +13218,7 @@ function requireCipherCore() {
|
|
|
12336
13218
|
decrypt: function(cipher, ciphertext, password, cfg) {
|
|
12337
13219
|
cfg = this.cfg.extend(cfg);
|
|
12338
13220
|
ciphertext = this._parse(ciphertext, cfg.format);
|
|
12339
|
-
var derivedParams = cfg.kdf.execute(password, cipher.keySize, cipher.ivSize, ciphertext.salt
|
|
13221
|
+
var derivedParams = cfg.kdf.execute(password, cipher.keySize, cipher.ivSize, ciphertext.salt);
|
|
12340
13222
|
cfg.iv = derivedParams.iv;
|
|
12341
13223
|
var plaintext = SerializableCipher.decrypt.call(this, cipher, ciphertext, derivedParams.key, cfg);
|
|
12342
13224
|
return plaintext;
|
|
@@ -12347,7 +13229,7 @@ function requireCipherCore() {
|
|
|
12347
13229
|
})(cipherCore);
|
|
12348
13230
|
return cipherCore.exports;
|
|
12349
13231
|
}
|
|
12350
|
-
(function(module, exports
|
|
13232
|
+
(function(module, exports) {
|
|
12351
13233
|
(function(root, factory, undef) {
|
|
12352
13234
|
{
|
|
12353
13235
|
module.exports = factory(requireCore(), requireEncBase64(), requireMd5(), requireEvpkdf(), requireCipherCore());
|
|
@@ -12496,7 +13378,7 @@ function requireCipherCore() {
|
|
|
12496
13378
|
var aesExports = aes.exports;
|
|
12497
13379
|
const AES = /* @__PURE__ */ getDefaultExportFromCjs(aesExports);
|
|
12498
13380
|
var padPkcs7 = { exports: {} };
|
|
12499
|
-
(function(module, exports
|
|
13381
|
+
(function(module, exports) {
|
|
12500
13382
|
(function(root, factory, undef) {
|
|
12501
13383
|
{
|
|
12502
13384
|
module.exports = factory(requireCore(), requireCipherCore());
|
|
@@ -12508,7 +13390,7 @@ var padPkcs7 = { exports: {} };
|
|
|
12508
13390
|
var padPkcs7Exports = padPkcs7.exports;
|
|
12509
13391
|
const Pkcs7 = /* @__PURE__ */ getDefaultExportFromCjs(padPkcs7Exports);
|
|
12510
13392
|
var encUtf8 = { exports: {} };
|
|
12511
|
-
(function(module, exports
|
|
13393
|
+
(function(module, exports) {
|
|
12512
13394
|
(function(root, factory) {
|
|
12513
13395
|
{
|
|
12514
13396
|
module.exports = factory(requireCore());
|
|
@@ -13035,7 +13917,7 @@ const useBreadcrumb = () => {
|
|
|
13035
13917
|
return breadcrumb;
|
|
13036
13918
|
};
|
|
13037
13919
|
var relativeTime$1 = { exports: {} };
|
|
13038
|
-
(function(module, exports
|
|
13920
|
+
(function(module, exports) {
|
|
13039
13921
|
!function(r, e) {
|
|
13040
13922
|
module.exports = e();
|
|
13041
13923
|
}(commonjsGlobal, function() {
|
|
@@ -13079,7 +13961,7 @@ var relativeTime$1 = { exports: {} };
|
|
|
13079
13961
|
var relativeTimeExports = relativeTime$1.exports;
|
|
13080
13962
|
const relativeTime = /* @__PURE__ */ getDefaultExportFromCjs(relativeTimeExports);
|
|
13081
13963
|
var zhCn = { exports: {} };
|
|
13082
|
-
(function(module, exports
|
|
13964
|
+
(function(module, exports) {
|
|
13083
13965
|
!function(e, _) {
|
|
13084
13966
|
module.exports = _(dayjs);
|
|
13085
13967
|
}(commonjsGlobal, function(e) {
|
|
@@ -13098,39 +13980,39 @@ var zhCn = { exports: {} };
|
|
|
13098
13980
|
var zhCnExports = zhCn.exports;
|
|
13099
13981
|
const locale = /* @__PURE__ */ getDefaultExportFromCjs(zhCnExports);
|
|
13100
13982
|
var timezone = { exports: {} };
|
|
13101
|
-
(function(module, exports
|
|
13983
|
+
(function(module, exports) {
|
|
13102
13984
|
!function(t2, e) {
|
|
13103
13985
|
module.exports = e();
|
|
13104
13986
|
}(commonjsGlobal, function() {
|
|
13105
13987
|
var t2 = { year: 0, month: 1, day: 2, hour: 3, minute: 4, second: 5 }, e = {};
|
|
13106
|
-
return function(n, i,
|
|
13107
|
-
var
|
|
13988
|
+
return function(n, i, r) {
|
|
13989
|
+
var o, a = function(t3, n2, i2) {
|
|
13108
13990
|
void 0 === i2 && (i2 = {});
|
|
13109
|
-
var
|
|
13991
|
+
var r2 = new Date(t3), o2 = function(t4, n3) {
|
|
13110
13992
|
void 0 === n3 && (n3 = {});
|
|
13111
|
-
var i3 = n3.timeZoneName || "short",
|
|
13112
|
-
return
|
|
13993
|
+
var i3 = n3.timeZoneName || "short", r3 = t4 + "|" + i3, o3 = e[r3];
|
|
13994
|
+
return o3 || (o3 = new Intl.DateTimeFormat("en-US", { hour12: false, timeZone: t4, year: "numeric", month: "2-digit", day: "2-digit", hour: "2-digit", minute: "2-digit", second: "2-digit", timeZoneName: i3 }), e[r3] = o3), o3;
|
|
13113
13995
|
}(n2, i2);
|
|
13114
|
-
return
|
|
13996
|
+
return o2.formatToParts(r2);
|
|
13115
13997
|
}, u = function(e2, n2) {
|
|
13116
|
-
for (var i2 = a(e2, n2),
|
|
13998
|
+
for (var i2 = a(e2, n2), o2 = [], u2 = 0; u2 < i2.length; u2 += 1) {
|
|
13117
13999
|
var f2 = i2[u2], s2 = f2.type, m = f2.value, c = t2[s2];
|
|
13118
|
-
c >= 0 && (
|
|
14000
|
+
c >= 0 && (o2[c] = parseInt(m, 10));
|
|
13119
14001
|
}
|
|
13120
|
-
var
|
|
13121
|
-
return (
|
|
14002
|
+
var l = o2[3], d = 24 === l ? 0 : l, h2 = o2[0] + "-" + o2[1] + "-" + o2[2] + " " + d + ":" + o2[4] + ":" + o2[5] + ":000", v = +e2;
|
|
14003
|
+
return (r.utc(h2).valueOf() - (v -= v % 1e3)) / 6e4;
|
|
13122
14004
|
}, f = i.prototype;
|
|
13123
14005
|
f.tz = function(t3, e2) {
|
|
13124
|
-
void 0 === t3 && (t3 =
|
|
13125
|
-
var n2, i2 = this.utcOffset(), a2 = this.toDate(),
|
|
14006
|
+
if (void 0 === t3 && (t3 = o), !this.isValid()) return this;
|
|
14007
|
+
var n2, i2 = this.utcOffset(), a2 = this.toDate(), f2 = a2.toLocaleString("en-US", { timeZone: t3 }), s2 = u(+a2, t3);
|
|
13126
14008
|
if (!Number(s2)) n2 = this.utcOffset(0, e2);
|
|
13127
|
-
else if (n2 =
|
|
14009
|
+
else if (n2 = r(f2, { locale: this.$L }).$set("millisecond", this.$ms).utcOffset(s2, true), e2) {
|
|
13128
14010
|
var m = n2.utcOffset();
|
|
13129
14011
|
n2 = n2.add(i2 - m, "minute");
|
|
13130
14012
|
}
|
|
13131
14013
|
return n2.$x.$timezone = t3, n2;
|
|
13132
14014
|
}, f.offsetName = function(t3) {
|
|
13133
|
-
var e2 = this.$x.$timezone ||
|
|
14015
|
+
var e2 = this.$x.$timezone || r.tz.guess(), n2 = a(this.valueOf(), e2, { timeZoneName: t3 }).find(function(t4) {
|
|
13134
14016
|
return "timezonename" === t4.type.toLowerCase();
|
|
13135
14017
|
});
|
|
13136
14018
|
return n2 && n2.value;
|
|
@@ -13138,22 +14020,27 @@ var timezone = { exports: {} };
|
|
|
13138
14020
|
var s = f.startOf;
|
|
13139
14021
|
f.startOf = function(t3, e2) {
|
|
13140
14022
|
if (!this.$x || !this.$x.$timezone) return s.call(this, t3, e2);
|
|
13141
|
-
var n2 =
|
|
14023
|
+
var n2 = r(this.format("YYYY-MM-DD HH:mm:ss:SSS"), { locale: this.$L });
|
|
13142
14024
|
return s.call(n2, t3, e2).tz(this.$x.$timezone, true);
|
|
13143
|
-
},
|
|
13144
|
-
var i2 = n2 && e2, a2 = n2 || e2 ||
|
|
13145
|
-
if ("string" != typeof t3) return
|
|
13146
|
-
var s2 =
|
|
13147
|
-
|
|
13148
|
-
|
|
13149
|
-
|
|
13150
|
-
|
|
13151
|
-
|
|
13152
|
-
|
|
13153
|
-
|
|
14025
|
+
}, r.tz = function(t3, e2, n2) {
|
|
14026
|
+
var i2 = n2 && e2, a2 = n2 || e2 || o, f2 = u(+r(), a2);
|
|
14027
|
+
if ("string" != typeof t3) return r(t3).tz(a2);
|
|
14028
|
+
var s2 = r.utc(t3, i2).valueOf();
|
|
14029
|
+
if (Number.isNaN(s2)) {
|
|
14030
|
+
var m = r(NaN);
|
|
14031
|
+
return m.$x.$timezone = a2, m;
|
|
14032
|
+
}
|
|
14033
|
+
var c = function(t4, e3, n3) {
|
|
14034
|
+
var i3 = t4 - 60 * e3 * 1e3, r2 = u(i3, n3);
|
|
14035
|
+
if (e3 === r2) return [i3, e3];
|
|
14036
|
+
var o2 = u(i3 -= 60 * (r2 - e3) * 1e3, n3);
|
|
14037
|
+
return r2 === o2 ? [i3, r2] : [t4 - 60 * Math.min(r2, o2) * 1e3, Math.max(r2, o2)];
|
|
14038
|
+
}(s2, f2, a2), l = c[0], d = c[1], h2 = r(l).utcOffset(d);
|
|
14039
|
+
return h2.$x.$timezone = a2, h2;
|
|
14040
|
+
}, r.tz.guess = function() {
|
|
13154
14041
|
return Intl.DateTimeFormat().resolvedOptions().timeZone;
|
|
13155
|
-
},
|
|
13156
|
-
|
|
14042
|
+
}, r.tz.setDefault = function(t3) {
|
|
14043
|
+
o = t3;
|
|
13157
14044
|
};
|
|
13158
14045
|
};
|
|
13159
14046
|
});
|
|
@@ -13161,7 +14048,7 @@ var timezone = { exports: {} };
|
|
|
13161
14048
|
var timezoneExports = timezone.exports;
|
|
13162
14049
|
const tz = /* @__PURE__ */ getDefaultExportFromCjs(timezoneExports);
|
|
13163
14050
|
var utc$1 = { exports: {} };
|
|
13164
|
-
(function(module, exports
|
|
14051
|
+
(function(module, exports) {
|
|
13165
14052
|
!function(t2, i) {
|
|
13166
14053
|
module.exports = i();
|
|
13167
14054
|
}(commonjsGlobal, function() {
|
|
@@ -13286,7 +14173,7 @@ const _hoisted_10$9 = {
|
|
|
13286
14173
|
};
|
|
13287
14174
|
const _hoisted_11$7 = ["title"];
|
|
13288
14175
|
const _hoisted_12$7 = ["title"];
|
|
13289
|
-
const _hoisted_13$
|
|
14176
|
+
const _hoisted_13$5 = {
|
|
13290
14177
|
key: 0,
|
|
13291
14178
|
class: "header-custom-tag-mb"
|
|
13292
14179
|
};
|
|
@@ -13639,7 +14526,7 @@ const _sfc_main$L = /* @__PURE__ */ defineComponent({
|
|
|
13639
14526
|
]),
|
|
13640
14527
|
_: 1
|
|
13641
14528
|
}, 8, ["href"]),
|
|
13642
|
-
unref(isGstarRepo)((_e = unref(repoInfo)) == null ? void 0 : _e.topic_names) ? (openBlock(), createElementBlock("div", _hoisted_13$
|
|
14529
|
+
unref(isGstarRepo)((_e = unref(repoInfo)) == null ? void 0 : _e.topic_names) ? (openBlock(), createElementBlock("div", _hoisted_13$5, [
|
|
13643
14530
|
createVNode(_sfc_main$M, {
|
|
13644
14531
|
origin: "repo",
|
|
13645
14532
|
icon: "",
|
|
@@ -13901,6 +14788,7 @@ const _sfc_main$I = /* @__PURE__ */ defineComponent({
|
|
|
13901
14788
|
__name: "index",
|
|
13902
14789
|
props: {
|
|
13903
14790
|
dropdownVisible: { type: Boolean, default: false },
|
|
14791
|
+
independence: { type: Boolean, default: false },
|
|
13904
14792
|
isCreateOrg: { type: Boolean, default: true },
|
|
13905
14793
|
isCreateEnterprise: { type: Boolean, default: true },
|
|
13906
14794
|
items: { default: void 0 },
|
|
@@ -14055,7 +14943,7 @@ const _sfc_main$I = /* @__PURE__ */ defineComponent({
|
|
|
14055
14943
|
if (!applicationRoute) return;
|
|
14056
14944
|
if (typeof window !== "undefined") {
|
|
14057
14945
|
const applicationUrl = new URL(applicationHref);
|
|
14058
|
-
if (applicationUrl.origin !== window.location.origin) {
|
|
14946
|
+
if (props.independence || applicationUrl.origin !== window.location.origin) {
|
|
14059
14947
|
window.location.href = applicationHref;
|
|
14060
14948
|
return;
|
|
14061
14949
|
}
|
|
@@ -14405,18 +15293,22 @@ const _hoisted_8$8 = {
|
|
|
14405
15293
|
class: "g-number"
|
|
14406
15294
|
};
|
|
14407
15295
|
const _hoisted_9$7 = {
|
|
15296
|
+
key: 0,
|
|
15297
|
+
class: "g-number"
|
|
15298
|
+
};
|
|
15299
|
+
const _hoisted_10$7 = {
|
|
14408
15300
|
key: 2,
|
|
14409
15301
|
class: "message-content-empty"
|
|
14410
15302
|
};
|
|
14411
|
-
const
|
|
15303
|
+
const _hoisted_11$6 = {
|
|
14412
15304
|
key: 3,
|
|
14413
15305
|
class: "loading-more"
|
|
14414
15306
|
};
|
|
14415
|
-
const
|
|
15307
|
+
const _hoisted_12$6 = {
|
|
14416
15308
|
key: 4,
|
|
14417
15309
|
class: "no-more"
|
|
14418
15310
|
};
|
|
14419
|
-
const
|
|
15311
|
+
const _hoisted_13$4 = { class: "message-footer-nav" };
|
|
14420
15312
|
const _sfc_main$E = /* @__PURE__ */ defineComponent({
|
|
14421
15313
|
__name: "MessageBox",
|
|
14422
15314
|
setup(__props, { expose: __expose }) {
|
|
@@ -14441,6 +15333,7 @@ const _sfc_main$E = /* @__PURE__ */ defineComponent({
|
|
|
14441
15333
|
const mentionSubTab = ref("project");
|
|
14442
15334
|
const mentionSubTabCount = ref({
|
|
14443
15335
|
project: 0,
|
|
15336
|
+
private: 0,
|
|
14444
15337
|
discussion: 0
|
|
14445
15338
|
});
|
|
14446
15339
|
const scrollContainer = ref(null);
|
|
@@ -14526,7 +15419,7 @@ const _sfc_main$E = /* @__PURE__ */ defineComponent({
|
|
|
14526
15419
|
const res = await API.getMsgDict();
|
|
14527
15420
|
msgDict.value = res.data;
|
|
14528
15421
|
(_a2 = res.data) == null ? void 0 : _a2.forEach((item) => {
|
|
14529
|
-
var _a3, _b, _c;
|
|
15422
|
+
var _a3, _b, _c, _d;
|
|
14530
15423
|
if (!item.act) return;
|
|
14531
15424
|
for (const i in formData.value) {
|
|
14532
15425
|
if (formData.value[i].messageType === item.type || item.type === "5" && formData.value[i].notifyType === 5) {
|
|
@@ -14535,7 +15428,8 @@ const _sfc_main$E = /* @__PURE__ */ defineComponent({
|
|
|
14535
15428
|
}
|
|
14536
15429
|
if (formData.value[i].messageType === "mention" && ((_a3 = item.children) == null ? void 0 : _a3.length) > 0) {
|
|
14537
15430
|
mentionSubTabCount.value.project = ((_b = item.children.find((child) => child.type === "mention")) == null ? void 0 : _b.un_read_count) || 0;
|
|
14538
|
-
mentionSubTabCount.value.
|
|
15431
|
+
mentionSubTabCount.value.private = ((_c = item.children.find((child) => child.type === "private_message")) == null ? void 0 : _c.un_read_count) || 0;
|
|
15432
|
+
mentionSubTabCount.value.discussion = ((_d = item.children.find((child) => child.type === "mention-im")) == null ? void 0 : _d.un_read_count) || 0;
|
|
14539
15433
|
}
|
|
14540
15434
|
}
|
|
14541
15435
|
});
|
|
@@ -14548,10 +15442,16 @@ const _sfc_main$E = /* @__PURE__ */ defineComponent({
|
|
|
14548
15442
|
msgCount.value = 0;
|
|
14549
15443
|
}
|
|
14550
15444
|
};
|
|
15445
|
+
const mentionSubTabTargetTypeMap = {
|
|
15446
|
+
project: "mention",
|
|
15447
|
+
private: "private_message",
|
|
15448
|
+
discussion: "mention-im"
|
|
15449
|
+
};
|
|
15450
|
+
const mentionSubTabTargetType = (tab) => mentionSubTabTargetTypeMap[tab] || "mention";
|
|
14551
15451
|
const productQueryArgs = (page = 1) => {
|
|
14552
15452
|
let typeString = checkedId.value;
|
|
14553
15453
|
if (currentType.value === "mention") {
|
|
14554
|
-
typeString = mentionSubTab.value
|
|
15454
|
+
typeString = mentionSubTabTargetType(mentionSubTab.value);
|
|
14555
15455
|
}
|
|
14556
15456
|
const queryArgs = {
|
|
14557
15457
|
page_num: page,
|
|
@@ -14592,7 +15492,8 @@ const _sfc_main$E = /* @__PURE__ */ defineComponent({
|
|
|
14592
15492
|
total.value = Number(((_b = res.data) == null ? void 0 : _b.total) || 0);
|
|
14593
15493
|
const pages = ((_c = res.data) == null ? void 0 : _c.pages) || 0;
|
|
14594
15494
|
const newRecords = ((_d = res.data) == null ? void 0 : _d.records.map((item) => {
|
|
14595
|
-
const
|
|
15495
|
+
const nameSpace = item.name_space || {};
|
|
15496
|
+
const path = nameSpace.type === "org" ? nameSpace.name : nameSpace.path;
|
|
14596
15497
|
const nickName = item.sender_id === "system" ? t2("gitCodeLayout.notice.systemMsgMenu") : item.sender_name || "Gitcode";
|
|
14597
15498
|
return {
|
|
14598
15499
|
read: Number(item.read_state) > 0,
|
|
@@ -14686,7 +15587,7 @@ const _sfc_main$E = /* @__PURE__ */ defineComponent({
|
|
|
14686
15587
|
const _directive_loading = resolveDirective("loading");
|
|
14687
15588
|
return openBlock(), createElementBlock("div", {
|
|
14688
15589
|
class: "message-box",
|
|
14689
|
-
onClick: _cache[
|
|
15590
|
+
onClick: _cache[6] || (_cache[6] = withModifiers(($event) => console.log("stop"), ["stop"]))
|
|
14690
15591
|
}, [
|
|
14691
15592
|
createElementVNode("div", _hoisted_1$z, [
|
|
14692
15593
|
createVNode(unref(Tabs), {
|
|
@@ -14745,15 +15646,22 @@ const _sfc_main$E = /* @__PURE__ */ defineComponent({
|
|
|
14745
15646
|
class: normalizeClass(["message-content-header-item message-content-header-item--mr", { active: mentionSubTab.value === "project" }]),
|
|
14746
15647
|
onClick: _cache[2] || (_cache[2] = ($event) => switchMentionSubTab("project"))
|
|
14747
15648
|
}, [
|
|
14748
|
-
_cache[
|
|
15649
|
+
_cache[7] || (_cache[7] = createTextVNode(" 项目相关 ", -1)),
|
|
14749
15650
|
mentionSubTabCount.value.project > 0 ? (openBlock(), createElementBlock("span", _hoisted_7$a, toDisplayString$1(mentionSubTabCount.value.project), 1)) : createCommentVNode("", true)
|
|
14750
15651
|
], 2),
|
|
15652
|
+
createElementVNode("div", {
|
|
15653
|
+
class: normalizeClass(["message-content-header-item message-content-header-item--mr", { active: mentionSubTab.value === "private" }]),
|
|
15654
|
+
onClick: _cache[3] || (_cache[3] = ($event) => switchMentionSubTab("private"))
|
|
15655
|
+
}, [
|
|
15656
|
+
_cache[8] || (_cache[8] = createTextVNode(" 私信 ", -1)),
|
|
15657
|
+
mentionSubTabCount.value.private > 0 ? (openBlock(), createElementBlock("span", _hoisted_8$8, toDisplayString$1(mentionSubTabCount.value.private), 1)) : createCommentVNode("", true)
|
|
15658
|
+
], 2),
|
|
14751
15659
|
createElementVNode("div", {
|
|
14752
15660
|
class: normalizeClass(["message-content-header-item", { active: mentionSubTab.value === "discussion" }]),
|
|
14753
|
-
onClick: _cache[
|
|
15661
|
+
onClick: _cache[4] || (_cache[4] = ($event) => switchMentionSubTab("discussion"))
|
|
14754
15662
|
}, [
|
|
14755
|
-
_cache[
|
|
14756
|
-
mentionSubTabCount.value.discussion > 0 ? (openBlock(), createElementBlock("span",
|
|
15663
|
+
_cache[9] || (_cache[9] = createTextVNode(" 在线讨论 ", -1)),
|
|
15664
|
+
mentionSubTabCount.value.discussion > 0 ? (openBlock(), createElementBlock("span", _hoisted_9$7, toDisplayString$1(mentionSubTabCount.value.discussion), 1)) : createCommentVNode("", true)
|
|
14757
15665
|
], 2)
|
|
14758
15666
|
])) : createCommentVNode("", true),
|
|
14759
15667
|
listData.value.length > 0 ? (openBlock(true), createElementBlock(Fragment, { key: 1 }, renderList(listData.value, (item) => {
|
|
@@ -14763,19 +15671,19 @@ const _sfc_main$E = /* @__PURE__ */ defineComponent({
|
|
|
14763
15671
|
data: item,
|
|
14764
15672
|
onTrigger: ($event) => handleMessageRead(item)
|
|
14765
15673
|
}, null, 8, ["type", "data", "onTrigger"]);
|
|
14766
|
-
}), 128)) : (openBlock(), createElementBlock("div",
|
|
15674
|
+
}), 128)) : (openBlock(), createElementBlock("div", _hoisted_10$7, [
|
|
14767
15675
|
createElementVNode("div", null, toDisplayString$1(unref(t2)("gitCodeLayout.notice.msg.noMessage")), 1)
|
|
14768
15676
|
])),
|
|
14769
|
-
loadingMore.value ? (openBlock(), createElementBlock("div",
|
|
14770
|
-
!hasMore.value && listData.value.length > 0 ? (openBlock(), createElementBlock("div",
|
|
15677
|
+
loadingMore.value ? (openBlock(), createElementBlock("div", _hoisted_11$6, toDisplayString$1(unref(t2)("gitCodeLayout.notice.msg.loading")) + "... ", 1)) : createCommentVNode("", true),
|
|
15678
|
+
!hasMore.value && listData.value.length > 0 ? (openBlock(), createElementBlock("div", _hoisted_12$6, toDisplayString$1(unref(t2)("gitCodeLayout.notice.msg.noMore")), 1)) : createCommentVNode("", true)
|
|
14771
15679
|
])), [
|
|
14772
15680
|
[_directive_loading, loading.value]
|
|
14773
15681
|
])
|
|
14774
15682
|
], 512),
|
|
14775
|
-
createElementVNode("div",
|
|
15683
|
+
createElementVNode("div", _hoisted_13$4, [
|
|
14776
15684
|
createElementVNode("div", { onClick: setPageRead }, toDisplayString$1(unref(t2)("gitCodeLayout.notice.msg.pageRead")), 1),
|
|
14777
15685
|
createElementVNode("div", {
|
|
14778
|
-
onClick: _cache[
|
|
15686
|
+
onClick: _cache[5] || (_cache[5] = ($event) => toPage("all"))
|
|
14779
15687
|
}, toDisplayString$1(unref(t2)("gitCodeLayout.notice.msg.viewAll")) + " >", 1)
|
|
14780
15688
|
])
|
|
14781
15689
|
]);
|
|
@@ -16169,12 +17077,12 @@ const _sfc_main$w = /* @__PURE__ */ defineComponent({
|
|
|
16169
17077
|
setup(__props) {
|
|
16170
17078
|
const layoutConfig2 = useLayoutConfig();
|
|
16171
17079
|
const { t: $t } = i18n.global;
|
|
16172
|
-
const ProjectSearch = defineAsyncComponent(() => import("./ProjectSearch-
|
|
16173
|
-
const UserSearch = defineAsyncComponent(() => import("./UserSearch-
|
|
16174
|
-
const GloabarSearch = defineAsyncComponent(() => import("./GloabarSearch-
|
|
16175
|
-
const SearchHistoryList = defineAsyncComponent(() => import("./SearchHistoryList-
|
|
16176
|
-
const SearchScopeList = defineAsyncComponent(() => import("./SearchScopeList-
|
|
16177
|
-
const SearchRecommed = defineAsyncComponent(() => import("./SearchRecommed-
|
|
17080
|
+
const ProjectSearch = defineAsyncComponent(() => import("./ProjectSearch-DzbH-bqt.js"));
|
|
17081
|
+
const UserSearch = defineAsyncComponent(() => import("./UserSearch-BDv9VoKV.js"));
|
|
17082
|
+
const GloabarSearch = defineAsyncComponent(() => import("./GloabarSearch-CyqYE-oU.js"));
|
|
17083
|
+
const SearchHistoryList = defineAsyncComponent(() => import("./SearchHistoryList-CpJYD474.js"));
|
|
17084
|
+
const SearchScopeList = defineAsyncComponent(() => import("./SearchScopeList-cN4MRz7O.js"));
|
|
17085
|
+
const SearchRecommed = defineAsyncComponent(() => import("./SearchRecommed-BMi4fhX2.js"));
|
|
16178
17086
|
const props = __props;
|
|
16179
17087
|
const repoInfo = inject("repoInfo", computed(() => void 0));
|
|
16180
17088
|
const orgInfo = inject("orgInfo", computed(() => void 0));
|
|
@@ -16722,13 +17630,13 @@ const _sfc_main$w = /* @__PURE__ */ defineComponent({
|
|
|
16722
17630
|
searchStr: keyword.value,
|
|
16723
17631
|
searchInfo: derivedSearchInfo.value
|
|
16724
17632
|
}, null, 8, ["searchStr", "searchInfo"])) : createCommentVNode("", true),
|
|
16725
|
-
!derivedSearchInfo.value.searchScope ? renderSlot(_ctx.$slots, "globalSearch", normalizeProps(
|
|
17633
|
+
!derivedSearchInfo.value.searchScope ? renderSlot(_ctx.$slots, "globalSearch", normalizeProps(guardReactiveProps({ searchStr: keyword.value, searchMore: handleSearchMore })), () => [
|
|
16726
17634
|
!derivedSearchInfo.value.searchScope ? (openBlock(), createBlock(unref(GloabarSearch), {
|
|
16727
17635
|
key: 0,
|
|
16728
17636
|
searchStr: keyword.value,
|
|
16729
17637
|
onSearchMore: handleSearchMore
|
|
16730
17638
|
}, null, 8, ["searchStr"])) : createCommentVNode("", true)
|
|
16731
|
-
], true) : createCommentVNode("", true)
|
|
17639
|
+
], true, 2) : createCommentVNode("", true)
|
|
16732
17640
|
], 512), [
|
|
16733
17641
|
[vShow, searchStr.value]
|
|
16734
17642
|
]),
|
|
@@ -16746,9 +17654,9 @@ const _sfc_main$w = /* @__PURE__ */ defineComponent({
|
|
|
16746
17654
|
}, null, 8, ["searchHistoryList", "visitHistoryList", "activeIndex"]), [
|
|
16747
17655
|
[vShow, !searchStr.value]
|
|
16748
17656
|
]),
|
|
16749
|
-
!searchStr.value && showRecommend.value ? renderSlot(_ctx.$slots, "searchRecommend", {
|
|
17657
|
+
!searchStr.value && showRecommend.value ? renderSlot(_ctx.$slots, "searchRecommend", {}, () => [
|
|
16750
17658
|
createVNode(unref(SearchRecommed))
|
|
16751
|
-
], true) : createCommentVNode("", true)
|
|
17659
|
+
], true, 0) : createCommentVNode("", true)
|
|
16752
17660
|
])
|
|
16753
17661
|
]),
|
|
16754
17662
|
default: withCtx(() => [
|
|
@@ -17140,8 +18048,8 @@ const _sfc_main$u = /* @__PURE__ */ defineComponent({
|
|
|
17140
18048
|
);
|
|
17141
18049
|
const fallbackUrls = computed(() => ({
|
|
17142
18050
|
atomCode: "https://atomcode.atomgit.com/",
|
|
17143
|
-
learn: "/learn",
|
|
17144
|
-
space: "/space",
|
|
18051
|
+
learn: props.independence ? joinUrl(layoutConfig2.VITE_HOST, "/learn") : "/learn",
|
|
18052
|
+
space: props.independence ? joinUrl(layoutConfig2.VITE_HOST, "/space") : "/space",
|
|
17145
18053
|
schoolParty: transformUrl("https://activity.gitcode.com/schoolparty?utm_source=homepage"),
|
|
17146
18054
|
competition: joinUrl(
|
|
17147
18055
|
layoutConfig2.VITE_COMPETITION_HOST || "https://competition.gitcode.com",
|
|
@@ -17543,7 +18451,7 @@ const vElementExposure = {
|
|
|
17543
18451
|
beforeUnmount() {
|
|
17544
18452
|
}
|
|
17545
18453
|
};
|
|
17546
|
-
const NoticeModal = defineAsyncComponent(() => import("./notice-
|
|
18454
|
+
const NoticeModal = defineAsyncComponent(() => import("./notice-BCsRECZ7.js"));
|
|
17547
18455
|
function clearNotice() {
|
|
17548
18456
|
if (localStorage$2.getItem("validator_email")) {
|
|
17549
18457
|
localStorage$2.removeItem("validator_email");
|
|
@@ -18078,7 +18986,7 @@ const _sfc_main$s = /* @__PURE__ */ defineComponent({
|
|
|
18078
18986
|
key: 0,
|
|
18079
18987
|
class: normalizeClass(["g-toolbar-custom", inAIHub.value && !unref(isPhone)() ? "g-toolbar-custom--ai" : ""])
|
|
18080
18988
|
}, [
|
|
18081
|
-
_ctx.$slots.headerCustom ? renderSlot(_ctx.$slots, "headerCustom", {
|
|
18989
|
+
_ctx.$slots.headerCustom ? renderSlot(_ctx.$slots, "headerCustom", {}, void 0, true, 0) : isModuleVisible(unref(HeaderDisplayItem).CUSTOM_CONTENT) && !showNameAndIcon.value ? (openBlock(), createBlock(HeaderCustom, {
|
|
18082
18990
|
key: 1,
|
|
18083
18991
|
scene: __props.sceneValue,
|
|
18084
18992
|
isLogin: __props.isLogin,
|
|
@@ -18100,7 +19008,7 @@ const _sfc_main$s = /* @__PURE__ */ defineComponent({
|
|
|
18100
19008
|
renderSlot(_ctx.$slots, "headerMiddleRight", {}, void 0, true)
|
|
18101
19009
|
])) : createCommentVNode("", true),
|
|
18102
19010
|
!inAIHub.value ? (openBlock(), createElementBlock("div", _hoisted_3$h, [
|
|
18103
|
-
isModuleVisible(unref(HeaderDisplayItem).SEARCH_BUTTON) ? renderSlot(_ctx.$slots, "search", {
|
|
19011
|
+
isModuleVisible(unref(HeaderDisplayItem).SEARCH_BUTTON) ? renderSlot(_ctx.$slots, "search", {}, () => [
|
|
18104
19012
|
(openBlock(), createBlock(Search, {
|
|
18105
19013
|
inAIHub: inAIHub.value,
|
|
18106
19014
|
key: _ctx.$route.fullPath,
|
|
@@ -18123,25 +19031,25 @@ const _sfc_main$s = /* @__PURE__ */ defineComponent({
|
|
|
18123
19031
|
key: "1"
|
|
18124
19032
|
} : void 0
|
|
18125
19033
|
]), 1032, ["inAIHub", "sceneValue", "isShowStickyNotice", "defaultGlobalSearchType"]))
|
|
18126
|
-
], true) : createCommentVNode("", true)
|
|
19034
|
+
], true, 0) : createCommentVNode("", true)
|
|
18127
19035
|
])) : createCommentVNode("", true),
|
|
18128
19036
|
createElementVNode("div", {
|
|
18129
19037
|
class: normalizeClass(["g-toolbar-right allow-click-stop", inAIHub.value ? "g-toolbar-right--ai" : ""])
|
|
18130
19038
|
}, [
|
|
18131
|
-
!inAIHub.value && props.showAtomCodeLauncher ? renderSlot(_ctx.$slots, "atomCodeLauncher", {
|
|
19039
|
+
!inAIHub.value && props.showAtomCodeLauncher ? renderSlot(_ctx.$slots, "atomCodeLauncher", {}, () => [
|
|
18132
19040
|
createVNode(AtomCodeLauncher, {
|
|
18133
19041
|
atomcodeLaunchQs: props.atomcodeLaunchQs,
|
|
18134
19042
|
isLogin: props.isLogin,
|
|
18135
19043
|
launchAtomCode: props.launchAtomCode
|
|
18136
19044
|
}, null, 8, ["atomcodeLaunchQs", "isLogin", "launchAtomCode"])
|
|
18137
|
-
], true) : createCommentVNode("", true),
|
|
18138
|
-
!inAIHub.value ? renderSlot(_ctx.$slots, "headerActions", {
|
|
19045
|
+
], true, 0) : createCommentVNode("", true),
|
|
19046
|
+
!inAIHub.value ? renderSlot(_ctx.$slots, "headerActions", {}, () => [
|
|
18139
19047
|
createVNode(HomeHeaderActions, {
|
|
18140
19048
|
"workspace-navigate": props.workspaceNavigate,
|
|
18141
19049
|
isLogin: props.isLogin,
|
|
18142
19050
|
independence: props.independence
|
|
18143
19051
|
}, null, 8, ["workspace-navigate", "isLogin", "independence"])
|
|
18144
|
-
], true) : createCommentVNode("", true),
|
|
19052
|
+
], true, 1) : createCommentVNode("", true),
|
|
18145
19053
|
isClaimRowVisible.value ? (openBlock(), createElementBlock("div", _hoisted_4$c, [
|
|
18146
19054
|
createVNode(ClaimPower, { config: claimPowerConfig.value }, null, 8, ["config"]),
|
|
18147
19055
|
isModuleVisible(unref(HeaderDisplayItem).OPERATION_ENTRY) ? (openBlock(), createBlock(OperationEntry, { key: 0 })) : createCommentVNode("", true)
|
|
@@ -18190,8 +19098,9 @@ const _sfc_main$s = /* @__PURE__ */ defineComponent({
|
|
|
18190
19098
|
items: props.createMenuItems,
|
|
18191
19099
|
onNavigate: props.createMenuNavigate,
|
|
18192
19100
|
isCreateEnterprise: isCreateEnterpriseVisible.value,
|
|
19101
|
+
independence: props.independence,
|
|
18193
19102
|
"onUpdate:dropdownVisible": _cache[6] || (_cache[6] = ($event) => emit("update:openCreateDropdown", $event))
|
|
18194
|
-
}, null, 8, ["dropdownVisible", "items", "onNavigate", "isCreateEnterprise"])) : createCommentVNode("", true),
|
|
19103
|
+
}, null, 8, ["dropdownVisible", "items", "onNavigate", "isCreateEnterprise", "independence"])) : createCommentVNode("", true),
|
|
18195
19104
|
isModuleVisible(unref(HeaderDisplayItem).DOCUMENT_CENTER) ? (openBlock(), createBlock(DocumentCenter, { key: 2 })) : createCommentVNode("", true),
|
|
18196
19105
|
isModuleVisible(unref(HeaderDisplayItem).MESSAGE_CENTER) ? (openBlock(), createBlock(Notice, { key: 3 })) : createCommentVNode("", true),
|
|
18197
19106
|
isModuleVisible(unref(HeaderDisplayItem).LOGIN_AND_AVATAR) ? (openBlock(), createBlock(UserAvatar, {
|
|
@@ -19645,7 +20554,7 @@ const _sfc_main$m = /* @__PURE__ */ defineComponent({
|
|
|
19645
20554
|
], 64))
|
|
19646
20555
|
]),
|
|
19647
20556
|
createElementVNode("div", _hoisted_6$4, [
|
|
19648
|
-
isModuleVisible(unref(HeaderDisplayItem).SEARCH_BUTTON) ? renderSlot(_ctx.$slots, "search", {
|
|
20557
|
+
isModuleVisible(unref(HeaderDisplayItem).SEARCH_BUTTON) ? renderSlot(_ctx.$slots, "search", {}, () => [
|
|
19649
20558
|
(openBlock(), createBlock(Search, {
|
|
19650
20559
|
inAIHub: false,
|
|
19651
20560
|
key: _ctx.$route.fullPath,
|
|
@@ -19668,16 +20577,16 @@ const _sfc_main$m = /* @__PURE__ */ defineComponent({
|
|
|
19668
20577
|
key: "1"
|
|
19669
20578
|
} : void 0
|
|
19670
20579
|
]), 1032, ["sceneValue", "defaultGlobalSearchType"]))
|
|
19671
|
-
], true) : createCommentVNode("", true)
|
|
20580
|
+
], true, 0) : createCommentVNode("", true)
|
|
19672
20581
|
]),
|
|
19673
20582
|
createElementVNode("div", _hoisted_7$3, [
|
|
19674
|
-
__props.showAtomCodeLauncher ? renderSlot(_ctx.$slots, "atomCodeLauncher", {
|
|
20583
|
+
__props.showAtomCodeLauncher ? renderSlot(_ctx.$slots, "atomCodeLauncher", {}, () => [
|
|
19675
20584
|
createVNode(AtomCodeLauncher, {
|
|
19676
20585
|
atomcodeLaunchQs: __props.atomcodeLaunchQs,
|
|
19677
20586
|
isLogin: __props.isLogin,
|
|
19678
20587
|
launchAtomCode: __props.launchAtomCode
|
|
19679
20588
|
}, null, 8, ["atomcodeLaunchQs", "isLogin", "launchAtomCode"])
|
|
19680
|
-
], true) : createCommentVNode("", true),
|
|
20589
|
+
], true, 0) : createCommentVNode("", true),
|
|
19681
20590
|
createVNode(HomeHeaderActions, {
|
|
19682
20591
|
isLogin: __props.isLogin,
|
|
19683
20592
|
independence: __props.independence
|
|
@@ -19725,8 +20634,9 @@ const _sfc_main$m = /* @__PURE__ */ defineComponent({
|
|
|
19725
20634
|
items: __props.createMenuItems,
|
|
19726
20635
|
onNavigate: __props.createMenuNavigate,
|
|
19727
20636
|
isCreateEnterprise: isCreateEnterpriseVisible.value,
|
|
20637
|
+
independence: __props.independence,
|
|
19728
20638
|
"onUpdate:dropdownVisible": _cache[3] || (_cache[3] = ($event) => emit("update:openCreateDropdown", $event))
|
|
19729
|
-
}, null, 8, ["dropdownVisible", "items", "onNavigate", "isCreateEnterprise"])) : createCommentVNode("", true),
|
|
20639
|
+
}, null, 8, ["dropdownVisible", "items", "onNavigate", "isCreateEnterprise", "independence"])) : createCommentVNode("", true),
|
|
19730
20640
|
isModuleVisible(unref(HeaderDisplayItem).MESSAGE_CENTER) ? (openBlock(), createBlock(Notice, { key: 2 })) : createCommentVNode("", true),
|
|
19731
20641
|
isModuleVisible(unref(HeaderDisplayItem).LOGIN_AND_AVATAR) ? (openBlock(), createBlock(UserAvatar, {
|
|
19732
20642
|
key: 3,
|
|
@@ -19992,9 +20902,9 @@ const _sfc_main$l = /* @__PURE__ */ defineComponent({
|
|
|
19992
20902
|
const layoutConfig2 = useLayoutConfig();
|
|
19993
20903
|
const { t: t2 } = i18n.global;
|
|
19994
20904
|
const route = useRoute();
|
|
19995
|
-
const MenuItem = defineAsyncComponent(() => import("./MenuItem-
|
|
19996
|
-
const ProjectMenuListV2 = defineAsyncComponent(() => import("./ProjectMenuListV2-
|
|
19997
|
-
const ProjectMenuList = defineAsyncComponent(() => import("./ProjectMenuList-
|
|
20905
|
+
const MenuItem = defineAsyncComponent(() => import("./MenuItem-Fu7SS3Tz.js"));
|
|
20906
|
+
const ProjectMenuListV2 = defineAsyncComponent(() => import("./ProjectMenuListV2-nSkrRa6K.js"));
|
|
20907
|
+
const ProjectMenuList = defineAsyncComponent(() => import("./ProjectMenuList-DPscVNRR.js"));
|
|
19998
20908
|
const props = __props;
|
|
19999
20909
|
const useReport2 = inject("useReport");
|
|
20000
20910
|
const userInfo = inject("userInfo");
|
|
@@ -23617,7 +24527,7 @@ const verifyCodeRegExp4 = /^\d{4}$/;
|
|
|
23617
24527
|
const verifyCodeRegExp6 = /^\d{6}$/;
|
|
23618
24528
|
const mobileRegExp = /^1[3-9]\d{9}$/;
|
|
23619
24529
|
const usernameRegExp = /^(?!-)[a-zA-Z][a-zA-Z0-9_-]{1,49}$/;
|
|
23620
|
-
const metadata = { "version": 4, "country_calling_codes": { "1": ["US", "AG", "AI", "AS", "BB", "BM", "BS", "CA", "DM", "DO", "GD", "GU", "JM", "KN", "KY", "LC", "MP", "MS", "PR", "SX", "TC", "TT", "VC", "VG", "VI"], "7": ["RU", "KZ"], "20": ["EG"], "27": ["ZA"], "30": ["GR"], "31": ["NL"], "32": ["BE"], "33": ["FR"], "34": ["ES"], "36": ["HU"], "39": ["IT", "VA"], "40": ["RO"], "41": ["CH"], "43": ["AT"], "44": ["GB", "GG", "IM", "JE"], "45": ["DK"], "46": ["SE"], "47": ["NO", "SJ"], "48": ["PL"], "49": ["DE"], "51": ["PE"], "52": ["MX"], "53": ["CU"], "54": ["AR"], "55": ["BR"], "56": ["CL"], "57": ["CO"], "58": ["VE"], "60": ["MY"], "61": ["AU", "CC", "CX"], "62": ["ID"], "63": ["PH"], "64": ["NZ"], "65": ["SG"], "66": ["TH"], "81": ["JP"], "82": ["KR"], "84": ["VN"], "86": ["CN"], "90": ["TR"], "91": ["IN"], "92": ["PK"], "93": ["AF"], "94": ["LK"], "95": ["MM"], "98": ["IR"], "211": ["SS"], "212": ["MA", "EH"], "213": ["DZ"], "216": ["TN"], "218": ["LY"], "220": ["GM"], "221": ["SN"], "222": ["MR"], "223": ["ML"], "224": ["GN"], "225": ["CI"], "226": ["BF"], "227": ["NE"], "228": ["TG"], "229": ["BJ"], "230": ["MU"], "231": ["LR"], "232": ["SL"], "233": ["GH"], "234": ["NG"], "235": ["TD"], "236": ["CF"], "237": ["CM"], "238": ["CV"], "239": ["ST"], "240": ["GQ"], "241": ["GA"], "242": ["CG"], "243": ["CD"], "244": ["AO"], "245": ["GW"], "246": ["IO"], "247": ["AC"], "248": ["SC"], "249": ["SD"], "250": ["RW"], "251": ["ET"], "252": ["SO"], "253": ["DJ"], "254": ["KE"], "255": ["TZ"], "256": ["UG"], "257": ["BI"], "258": ["MZ"], "260": ["ZM"], "261": ["MG"], "262": ["RE", "YT"], "263": ["ZW"], "264": ["NA"], "265": ["MW"], "266": ["LS"], "267": ["BW"], "268": ["SZ"], "269": ["KM"], "290": ["SH", "TA"], "291": ["ER"], "297": ["AW"], "298": ["FO"], "299": ["GL"], "350": ["GI"], "351": ["PT"], "352": ["LU"], "353": ["IE"], "354": ["IS"], "355": ["AL"], "356": ["MT"], "357": ["CY"], "358": ["FI", "AX"], "359": ["BG"], "370": ["LT"], "371": ["LV"], "372": ["EE"], "373": ["MD"], "374": ["AM"], "375": ["BY"], "376": ["AD"], "377": ["MC"], "378": ["SM"], "380": ["UA"], "381": ["RS"], "382": ["ME"], "383": ["XK"], "385": ["HR"], "386": ["SI"], "387": ["BA"], "389": ["MK"], "420": ["CZ"], "421": ["SK"], "423": ["LI"], "500": ["FK"], "501": ["BZ"], "502": ["GT"], "503": ["SV"], "504": ["HN"], "505": ["NI"], "506": ["CR"], "507": ["PA"], "508": ["PM"], "509": ["HT"], "590": ["GP", "BL", "MF"], "591": ["BO"], "592": ["GY"], "593": ["EC"], "594": ["GF"], "595": ["PY"], "596": ["MQ"], "597": ["SR"], "598": ["UY"], "599": ["CW", "BQ"], "670": ["TL"], "672": ["NF"], "673": ["BN"], "674": ["NR"], "675": ["PG"], "676": ["TO"], "677": ["SB"], "678": ["VU"], "679": ["FJ"], "680": ["PW"], "681": ["WF"], "682": ["CK"], "683": ["NU"], "685": ["WS"], "686": ["KI"], "687": ["NC"], "688": ["TV"], "689": ["PF"], "690": ["TK"], "691": ["FM"], "692": ["MH"], "850": ["KP"], "852": ["HK"], "853": ["MO"], "855": ["KH"], "856": ["LA"], "880": ["BD"], "886": ["TW"], "960": ["MV"], "961": ["LB"], "962": ["JO"], "963": ["SY"], "964": ["IQ"], "965": ["KW"], "966": ["SA"], "967": ["YE"], "968": ["OM"], "970": ["PS"], "971": ["AE"], "972": ["IL"], "973": ["BH"], "974": ["QA"], "975": ["BT"], "976": ["MN"], "977": ["NP"], "992": ["TJ"], "993": ["TM"], "994": ["AZ"], "995": ["GE"], "996": ["KG"], "998": ["UZ"] }, "countries": { "AC": ["247", "00", "(?:[01589]\\d|[46])\\d{4}", [5, 6]], "AD": ["376", "00", "(?:1|6\\d)\\d{7}|[135-9]\\d{5}", [6, 8, 9], [["(\\d{3})(\\d{3})", "$1 $2", ["[135-9]"]], ["(\\d{4})(\\d{4})", "$1 $2", ["1"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["6"]]]], "AE": ["971", "00", "(?:[4-7]\\d|9[0-689])\\d{7}|800\\d{2,9}|[2-4679]\\d{7}", [5, 6, 7, 8, 9, 10, 11, 12], [["(\\d{3})(\\d{2,9})", "$1 $2", ["60|8"]], ["(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["[236]|[479][2-8]"], "0$1"], ["(\\d{3})(\\d)(\\d{5})", "$1 $2 $3", ["[479]"]], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["5"], "0$1"]], "0"], "AF": ["93", "00", "[2-7]\\d{8}", [9], [["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[2-7]"], "0$1"]], "0"], "AG": ["1", "011", "(?:268|[58]\\d\\d|900)\\d{7}", [10], 0, "1", 0, "([457]\\d{6})$|1", "268$1", 0, "268"], "AI": ["1", "011", "(?:264|[58]\\d\\d|900)\\d{7}", [10], 0, "1", 0, "([2457]\\d{6})$|1", "264$1", 0, "264"], "AL": ["355", "00", "(?:700\\d\\d|900)\\d{3}|8\\d{5,7}|(?:[2-5]|6\\d)\\d{7}", [6, 7, 8, 9], [["(\\d{3})(\\d{3,4})", "$1 $2", ["80|9"], "0$1"], ["(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["4[2-6]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["[2358][2-5]|4"], "0$1"], ["(\\d{3})(\\d{5})", "$1 $2", ["[23578]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["6"], "0$1"]], "0"], "AM": ["374", "00", "(?:[1-489]\\d|55|60|77)\\d{6}", [8], [["(\\d{3})(\\d{2})(\\d{3})", "$1 $2 $3", ["[89]0"], "0 $1"], ["(\\d{3})(\\d{5})", "$1 $2", ["2|3[12]"], "(0$1)"], ["(\\d{2})(\\d{6})", "$1 $2", ["1|47"], "(0$1)"], ["(\\d{2})(\\d{6})", "$1 $2", ["[3-9]"], "0$1"]], "0"], "AO": ["244", "00", "[29]\\d{8}", [9], [["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[29]"]]]], "AR": ["54", "00", "(?:11|[89]\\d\\d)\\d{8}|[2368]\\d{9}", [10, 11], [["(\\d{4})(\\d{2})(\\d{4})", "$1 $2-$3", ["2(?:2[024-9]|3[0-59]|47|6[245]|9[02-8])|3(?:3[28]|4[03-9]|5[2-46-8]|7[1-578]|8[2-9])", "2(?:[23]02|6(?:[25]|4[6-8])|9(?:[02356]|4[02568]|72|8[23]))|3(?:3[28]|4(?:[04679]|3[5-8]|5[4-68]|8[2379])|5(?:[2467]|3[237]|8[2-5])|7[1-578]|8(?:[2469]|3[2578]|5[4-8]|7[36-8]|8[5-8]))|2(?:2[24-9]|3[1-59]|47)", "2(?:[23]02|6(?:[25]|4(?:64|[78]))|9(?:[02356]|4(?:[0268]|5[2-6])|72|8[23]))|3(?:3[28]|4(?:[04679]|3[78]|5(?:4[46]|8)|8[2379])|5(?:[2467]|3[237]|8[23])|7[1-578]|8(?:[2469]|3[278]|5[56][46]|86[3-6]))|2(?:2[24-9]|3[1-59]|47)|38(?:[58][78]|7[378])|3(?:4[35][56]|58[45]|8(?:[38]5|54|76))[4-6]", "2(?:[23]02|6(?:[25]|4(?:64|[78]))|9(?:[02356]|4(?:[0268]|5[2-6])|72|8[23]))|3(?:3[28]|4(?:[04679]|3(?:5(?:4[0-25689]|[56])|[78])|58|8[2379])|5(?:[2467]|3[237]|8(?:[23]|4(?:[45]|60)|5(?:4[0-39]|5|64)))|7[1-578]|8(?:[2469]|3[278]|54(?:4|5[13-7]|6[89])|86[3-6]))|2(?:2[24-9]|3[1-59]|47)|38(?:[58][78]|7[378])|3(?:454|85[56])[46]|3(?:4(?:36|5[56])|8(?:[38]5|76))[4-6]"], "0$1", 1], ["(\\d{2})(\\d{4})(\\d{4})", "$1 $2-$3", ["1"], "0$1", 1], ["(\\d{3})(\\d{3})(\\d{4})", "$1-$2-$3", ["[68]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2-$3", ["[23]"], "0$1", 1], ["(\\d)(\\d{4})(\\d{2})(\\d{4})", "$2 15-$3-$4", ["9(?:2[2-469]|3[3-578])", "9(?:2(?:2[024-9]|3[0-59]|47|6[245]|9[02-8])|3(?:3[28]|4[03-9]|5[2-46-8]|7[1-578]|8[2-9]))", "9(?:2(?:[23]02|6(?:[25]|4[6-8])|9(?:[02356]|4[02568]|72|8[23]))|3(?:3[28]|4(?:[04679]|3[5-8]|5[4-68]|8[2379])|5(?:[2467]|3[237]|8[2-5])|7[1-578]|8(?:[2469]|3[2578]|5[4-8]|7[36-8]|8[5-8])))|92(?:2[24-9]|3[1-59]|47)", "9(?:2(?:[23]02|6(?:[25]|4(?:64|[78]))|9(?:[02356]|4(?:[0268]|5[2-6])|72|8[23]))|3(?:3[28]|4(?:[04679]|3[78]|5(?:4[46]|8)|8[2379])|5(?:[2467]|3[237]|8[23])|7[1-578]|8(?:[2469]|3[278]|5(?:[56][46]|[78])|7[378]|8(?:6[3-6]|[78]))))|92(?:2[24-9]|3[1-59]|47)|93(?:4[35][56]|58[45]|8(?:[38]5|54|76))[4-6]", "9(?:2(?:[23]02|6(?:[25]|4(?:64|[78]))|9(?:[02356]|4(?:[0268]|5[2-6])|72|8[23]))|3(?:3[28]|4(?:[04679]|3(?:5(?:4[0-25689]|[56])|[78])|5(?:4[46]|8)|8[2379])|5(?:[2467]|3[237]|8(?:[23]|4(?:[45]|60)|5(?:4[0-39]|5|64)))|7[1-578]|8(?:[2469]|3[278]|5(?:4(?:4|5[13-7]|6[89])|[56][46]|[78])|7[378]|8(?:6[3-6]|[78]))))|92(?:2[24-9]|3[1-59]|47)|93(?:4(?:36|5[56])|8(?:[38]5|76))[4-6]"], "0$1", 0, "$1 $2 $3-$4"], ["(\\d)(\\d{2})(\\d{4})(\\d{4})", "$2 15-$3-$4", ["91"], "0$1", 0, "$1 $2 $3-$4"], ["(\\d{3})(\\d{3})(\\d{5})", "$1-$2-$3", ["8"], "0$1"], ["(\\d)(\\d{3})(\\d{3})(\\d{4})", "$2 15-$3-$4", ["9"], "0$1", 0, "$1 $2 $3-$4"]], "0", 0, "0?(?:(11|2(?:2(?:02?|[13]|2[13-79]|4[1-6]|5[2457]|6[124-8]|7[1-4]|8[13-6]|9[1267])|3(?:02?|1[467]|2[03-6]|3[13-8]|[49][2-6]|5[2-8]|[67])|4(?:7[3-578]|9)|6(?:[0136]|2[24-6]|4[6-8]?|5[15-8])|80|9(?:0[1-3]|[19]|2\\d|3[1-6]|4[02568]?|5[2-4]|6[2-46]|72?|8[23]?))|3(?:3(?:2[79]|6|8[2578])|4(?:0[0-24-9]|[12]|3[5-8]?|4[24-7]|5[4-68]?|6[02-9]|7[126]|8[2379]?|9[1-36-8])|5(?:1|2[1245]|3[237]?|4[1-46-9]|6[2-4]|7[1-6]|8[2-5]?)|6[24]|7(?:[069]|1[1568]|2[15]|3[145]|4[13]|5[14-8]|7[2-57]|8[126])|8(?:[01]|2[15-7]|3[2578]?|4[13-6]|5[4-8]?|6[1-357-9]|7[36-8]?|8[5-8]?|9[124])))15)?", "9$1"], "AS": ["1", "011", "(?:[58]\\d\\d|684|900)\\d{7}", [10], 0, "1", 0, "([267]\\d{6})$|1", "684$1", 0, "684"], "AT": ["43", "00", "1\\d{3,12}|2\\d{6,12}|43(?:(?:0\\d|5[02-9])\\d{3,9}|2\\d{4,5}|[3467]\\d{4}|8\\d{4,6}|9\\d{4,7})|5\\d{4,12}|8\\d{7,12}|9\\d{8,12}|(?:[367]\\d|4[0-24-9])\\d{4,11}", [4, 5, 6, 7, 8, 9, 10, 11, 12, 13], [["(\\d)(\\d{3,12})", "$1 $2", ["1(?:11|[2-9])"], "0$1"], ["(\\d{3})(\\d{2})", "$1 $2", ["517"], "0$1"], ["(\\d{2})(\\d{3,5})", "$1 $2", ["5[079]"], "0$1"], ["(\\d{3})(\\d{3,10})", "$1 $2", ["(?:31|4)6|51|6(?:48|5[0-3579]|[6-9])|7(?:20|32|8)|[89]", "(?:31|4)6|51|6(?:485|5[0-3579]|[6-9])|7(?:20|32|8)|[89]"], "0$1"], ["(\\d{4})(\\d{3,9})", "$1 $2", ["[2-467]|5[2-6]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["5"], "0$1"], ["(\\d{2})(\\d{4})(\\d{4,7})", "$1 $2 $3", ["5"], "0$1"]], "0"], "AU": ["61", "001[14-689]|14(?:1[14]|34|4[17]|[56]6|7[47]|88)0011", "1(?:[0-79]\\d{7}(?:\\d(?:\\d{2})?)?|8[0-24-9]\\d{7})|[2-478]\\d{8}|1\\d{4,7}", [5, 6, 7, 8, 9, 10, 12], [["(\\d{2})(\\d{3,4})", "$1 $2", ["16"], "0$1"], ["(\\d{2})(\\d{3})(\\d{2,4})", "$1 $2 $3", ["16"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["14|4"], "0$1"], ["(\\d)(\\d{4})(\\d{4})", "$1 $2 $3", ["[2378]"], "(0$1)"], ["(\\d{4})(\\d{3})(\\d{3})", "$1 $2 $3", ["1(?:30|[89])"]]], "0", 0, "(183[12])|0", 0, 0, 0, [["(?:(?:241|349)0\\d\\d|8(?:51(?:0(?:0[03-9]|[12479]\\d|3[2-9]|5[0-8]|6[1-9]|8[0-7])|1(?:[0235689]\\d|1[0-69]|4[0-589]|7[0-47-9])|2(?:0[0-79]|[18][13579]|2[14-9]|3[0-46-9]|[4-6]\\d|7[89]|9[0-4])|[34]\\d\\d)|91(?:(?:[0-58]\\d|6[0135-9])\\d|7(?:0[0-24-9]|[1-9]\\d)|9(?:[0-46-9]\\d|5[0-79]))))\\d{3}|(?:2(?:[0-26-9]\\d|3[0-8]|4[02-9]|5[0135-9])|3(?:[0-3589]\\d|4[0-578]|6[1-9]|7[0-35-9])|7(?:[013-57-9]\\d|2[0-8])|8(?:55|6[0-8]|[78]\\d|9[02-9]))\\d{6}", [9]], ["4(?:79[01]|83[0-36-9]|95[0-3])\\d{5}|4(?:[0-36]\\d|4[047-9]|[58][0-24-9]|7[02-8]|9[0-47-9])\\d{6}", [9]], ["180(?:0\\d{3}|2)\\d{3}", [7, 10]], ["190[0-26]\\d{6}", [10]], 0, 0, 0, ["163\\d{2,6}", [5, 6, 7, 8, 9]], ["14(?:5(?:1[0458]|[23][458])|71\\d)\\d{4}", [9]], ["13(?:00\\d{6}(?:\\d{2})?|45[0-4]\\d{3})|13\\d{4}", [6, 8, 10, 12]]], "0011"], "AW": ["297", "00", "(?:[25-79]\\d\\d|800)\\d{4}", [7], [["(\\d{3})(\\d{4})", "$1 $2", ["[25-9]"]]]], "AX": ["358", "00|99(?:[01469]|5(?:[14]1|3[23]|5[59]|77|88|9[09]))", "2\\d{4,9}|35\\d{4,5}|(?:60\\d\\d|800)\\d{4,6}|7\\d{5,11}|(?:[14]\\d|3[0-46-9]|50)\\d{4,8}", [5, 6, 7, 8, 9, 10, 11, 12], 0, "0", 0, 0, 0, 0, "18", 0, "00"], "AZ": ["994", "00", "365\\d{6}|(?:[124579]\\d|60|88)\\d{7}", [9], [["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["90"], "0$1"], ["(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["1[28]|2|365|46", "1[28]|2|365[45]|46", "1[28]|2|365(?:4|5[02])|46"], "(0$1)"], ["(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[13-9]"], "0$1"]], "0"], "BA": ["387", "00", "6\\d{8}|(?:[35689]\\d|49|70)\\d{6}", [8, 9], [["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["6[1-3]|[7-9]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3})", "$1 $2-$3", ["[3-5]|6[56]"], "0$1"], ["(\\d{2})(\\d{2})(\\d{2})(\\d{3})", "$1 $2 $3 $4", ["6"], "0$1"]], "0"], "BB": ["1", "011", "(?:246|[58]\\d\\d|900)\\d{7}", [10], 0, "1", 0, "([2-9]\\d{6})$|1", "246$1", 0, "246"], "BD": ["880", "00", "[1-469]\\d{9}|8[0-79]\\d{7,8}|[2-79]\\d{8}|[2-9]\\d{7}|[3-9]\\d{6}|[57-9]\\d{5}", [6, 7, 8, 9, 10], [["(\\d{2})(\\d{4,6})", "$1-$2", ["31[5-8]|[459]1"], "0$1"], ["(\\d{3})(\\d{3,7})", "$1-$2", ["3(?:[67]|8[013-9])|4(?:6[168]|7|[89][18])|5(?:6[128]|9)|6(?:[15]|28|4[14])|7[2-589]|8(?:0[014-9]|[12])|9[358]|(?:3[2-5]|4[235]|5[2-578]|6[0389]|76|8[3-7]|9[24])1|(?:44|66)[01346-9]"], "0$1"], ["(\\d{4})(\\d{3,6})", "$1-$2", ["[13-9]|2[23]"], "0$1"], ["(\\d)(\\d{7,8})", "$1-$2", ["2"], "0$1"]], "0"], "BE": ["32", "00", "4\\d{8}|[1-9]\\d{7}", [8, 9], [["(\\d{3})(\\d{2})(\\d{3})", "$1 $2 $3", ["(?:80|9)0"], "0$1"], ["(\\d)(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[239]|4[23]"], "0$1"], ["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[15-8]"], "0$1"], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["4"], "0$1"]], "0"], "BF": ["226", "00", "(?:[025-7]\\d|44)\\d{6}", [8], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[024-7]"]]]], "BG": ["359", "00", "00800\\d{7}|[2-7]\\d{6,7}|[89]\\d{6,8}|2\\d{5}", [6, 7, 8, 9, 12], [["(\\d)(\\d)(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["2"], "0$1"], ["(\\d{3})(\\d{4})", "$1 $2", ["43[1-6]|70[1-9]"], "0$1"], ["(\\d)(\\d{3})(\\d{3,4})", "$1 $2 $3", ["2"], "0$1"], ["(\\d{2})(\\d{3})(\\d{2,3})", "$1 $2 $3", ["[356]|4[124-7]|7[1-9]|8[1-6]|9[1-7]"], "0$1"], ["(\\d{3})(\\d{2})(\\d{3})", "$1 $2 $3", ["(?:70|8)0"], "0$1"], ["(\\d{3})(\\d{3})(\\d{2})", "$1 $2 $3", ["43[1-7]|7"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[48]|9[08]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["9"], "0$1"]], "0"], "BH": ["973", "00", "[136-9]\\d{7}", [8], [["(\\d{4})(\\d{4})", "$1 $2", ["[13679]|8[02-4679]"]]]], "BI": ["257", "00", "(?:[267]\\d|31)\\d{6}", [8], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[2367]"]]]], "BJ": ["229", "00", "(?:01\\d|8)\\d{7}", [8, 10], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["8"]], ["(\\d{2})(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4 $5", ["0"]]]], "BL": ["590", "00", "(?:590\\d|7090)\\d{5}|(?:69|80|9\\d)\\d{7}", [9], 0, "0", 0, 0, 0, 0, 0, [["590(?:2[7-9]|3[3-7]|5[12]|87)\\d{4}"], ["(?:69(?:0\\d\\d|1(?:2[2-9]|3[0-5])|4(?:0[89]|1[2-6]|9\\d)|6(?:1[016-9]|5[0-4]|[67]\\d))|7090[0-4])\\d{4}"], ["80[0-5]\\d{6}"], 0, 0, 0, 0, 0, ["9(?:(?:39[5-7]|76[018])\\d|475[0-6])\\d{4}"]]], "BM": ["1", "011", "(?:441|[58]\\d\\d|900)\\d{7}", [10], 0, "1", 0, "([2-9]\\d{6})$|1", "441$1", 0, "441"], "BN": ["673", "00", "[2-578]\\d{6}", [7], [["(\\d{3})(\\d{4})", "$1 $2", ["[2-578]"]]]], "BO": ["591", "00(?:1\\d)?", "8001\\d{5}|(?:[2-467]\\d|50)\\d{6}", [8, 9], [["(\\d)(\\d{7})", "$1 $2", ["[235]|4[46]"]], ["(\\d{8})", "$1", ["[67]"]], ["(\\d{3})(\\d{2})(\\d{4})", "$1 $2 $3", ["8"]]], "0", 0, "0(1\\d)?"], "BQ": ["599", "00", "(?:[34]1|7\\d)\\d{5}", [7], 0, 0, 0, 0, 0, 0, "[347]"], "BR": ["55", "00(?:1[245]|2[1-35]|31|4[13]|[56]5|99)", "[1-467]\\d{9,10}|55[0-46-9]\\d{8}|[34]\\d{7}|55\\d{7,8}|(?:5[0-46-9]|[89]\\d)\\d{7,9}", [8, 9, 10, 11], [["(\\d{4})(\\d{4})", "$1-$2", ["300|4(?:0[02]|37|86)", "300|4(?:0(?:0|20)|370|864)"]], ["(\\d{3})(\\d{2,3})(\\d{4})", "$1 $2 $3", ["(?:[358]|90)0"], "0$1"], ["(\\d{2})(\\d{4})(\\d{4})", "$1 $2-$3", ["(?:[14689][1-9]|2[12478]|3[1-578]|5[13-5]|7[13-579])[2-57]"], "($1)"], ["(\\d{2})(\\d{5})(\\d{4})", "$1 $2-$3", ["[16][1-9]|[2-57-9]"], "($1)"]], "0", 0, "(?:0|90)(?:(1[245]|2[1-35]|31|4[13]|[56]5|99)(\\d{10,11}))?", "$2"], "BS": ["1", "011", "(?:242|[58]\\d\\d|900)\\d{7}", [10], 0, "1", 0, "([3-8]\\d{6})$|1", "242$1", 0, "242"], "BT": ["975", "00", "[178]\\d{7}|[2-8]\\d{6}", [7, 8], [["(\\d)(\\d{3})(\\d{3})", "$1 $2 $3", ["[2-6]|7[246]|8[2-4]"]], ["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["1[67]|[78]"]]]], "BW": ["267", "00", "(?:0800|(?:[37]|800)\\d)\\d{6}|(?:[2-6]\\d|90)\\d{5}", [7, 8, 10], [["(\\d{2})(\\d{5})", "$1 $2", ["90"]], ["(\\d{3})(\\d{4})", "$1 $2", ["[24-6]|3[15-9]"]], ["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["[37]"]], ["(\\d{4})(\\d{3})(\\d{3})", "$1 $2 $3", ["0"]], ["(\\d{3})(\\d{4})(\\d{3})", "$1 $2 $3", ["8"]]]], "BY": ["375", "810", "(?:[12]\\d|33|44|902)\\d{7}|8(?:0[0-79]\\d{5,7}|[1-7]\\d{9})|8(?:1[0-489]|[5-79]\\d)\\d{7}|8[1-79]\\d{6,7}|8[0-79]\\d{5}|8\\d{5}", [6, 7, 8, 9, 10, 11], [["(\\d{3})(\\d{3})", "$1 $2", ["800"], "8 $1"], ["(\\d{3})(\\d{2})(\\d{2,4})", "$1 $2 $3", ["800"], "8 $1"], ["(\\d{4})(\\d{2})(\\d{3})", "$1 $2-$3", ["1(?:5[169]|6[3-5]|7[179])|2(?:1[35]|2[34]|3[3-5])", "1(?:5[169]|6(?:3[1-3]|4|5[125])|7(?:1[3-9]|7[0-24-6]|9[2-7]))|2(?:1[35]|2[34]|3[3-5])"], "8 0$1"], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2-$3-$4", ["1(?:[56]|7[467])|2[1-3]"], "8 0$1"], ["(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2-$3-$4", ["[1-4]"], "8 0$1"], ["(\\d{3})(\\d{3,4})(\\d{4})", "$1 $2 $3", ["[89]"], "8 $1"]], "8", 0, "0|80?", 0, 0, 0, 0, "8~10"], "BZ": ["501", "00", "(?:0800\\d|[2-8])\\d{6}", [7, 11], [["(\\d{3})(\\d{4})", "$1-$2", ["[2-8]"]], ["(\\d)(\\d{3})(\\d{4})(\\d{3})", "$1-$2-$3-$4", ["0"]]]], "CA": ["1", "011", "[2-9]\\d{9}|3\\d{6}", [7, 10], 0, "1", 0, 0, 0, 0, 0, [["(?:2(?:04|[23]6|[48]9|5[07]|63)|3(?:06|43|54|6[578]|82)|4(?:03|1[68]|[26]8|3[178]|50|74)|5(?:06|1[49]|48|79|8[147])|6(?:04|[18]3|39|47|72)|7(?:0[59]|42|53|78|8[02])|8(?:[06]7|19|25|7[39])|9(?:0[25]|42))[2-9]\\d{6}", [10]], ["", [10]], ["8(?:00|33|44|55|66|77|88)[2-9]\\d{6}", [10]], ["900[2-9]\\d{6}", [10]], ["52(?:3(?:[2-46-9][02-9]\\d|5(?:[02-46-9]\\d|5[0-46-9]))|4(?:[2-478][02-9]\\d|5(?:[034]\\d|2[024-9]|5[0-46-9])|6(?:0[1-9]|[2-9]\\d)|9(?:[05-9]\\d|2[0-5]|49)))\\d{4}|52[34][2-9]1[02-9]\\d{4}|(?:5(?:2[125-9]|33|44|66|77|88)|6(?:22|33))[2-9]\\d{6}", [10]], 0, ["310\\d{4}", [7]], 0, ["600[2-9]\\d{6}", [10]]]], "CC": ["61", "001[14-689]|14(?:1[14]|34|4[17]|[56]6|7[47]|88)0011", "1(?:[0-79]\\d{8}(?:\\d{2})?|8[0-24-9]\\d{7})|[148]\\d{8}|1\\d{5,7}", [6, 7, 8, 9, 10, 12], 0, "0", 0, "([59]\\d{7})$|0", "8$1", 0, 0, [["8(?:51(?:0(?:02|31|60|89)|1(?:18|76)|223)|91(?:0(?:1[0-2]|29)|1(?:[28]2|50|79)|2(?:10|64)|3(?:[06]8|22)|4[29]8|62\\d|70[23]|959))\\d{3}", [9]], ["4(?:79[01]|83[0-36-9]|95[0-3])\\d{5}|4(?:[0-36]\\d|4[047-9]|[58][0-24-9]|7[02-8]|9[0-47-9])\\d{6}", [9]], ["180(?:0\\d{3}|2)\\d{3}", [7, 10]], ["190[0-26]\\d{6}", [10]], 0, 0, 0, 0, ["14(?:5(?:1[0458]|[23][458])|71\\d)\\d{4}", [9]], ["13(?:00\\d{6}(?:\\d{2})?|45[0-4]\\d{3})|13\\d{4}", [6, 8, 10, 12]]], "0011"], "CD": ["243", "00", "(?:(?:[189]|5\\d)\\d|2)\\d{7}|[1-68]\\d{6}", [7, 8, 9, 10], [["(\\d{2})(\\d{2})(\\d{3})", "$1 $2 $3", ["88"], "0$1"], ["(\\d{2})(\\d{5})", "$1 $2", ["[1-6]"], "0$1"], ["(\\d{2})(\\d{2})(\\d{4})", "$1 $2 $3", ["2"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["1"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[89]"], "0$1"], ["(\\d{2})(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["5"], "0$1"]], "0"], "CF": ["236", "00", "(?:[27]\\d{3}|8776)\\d{4}", [8], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[278]"]]]], "CG": ["242", "00", "222\\d{6}|(?:0\\d|80)\\d{7}", [9], [["(\\d)(\\d{4})(\\d{4})", "$1 $2 $3", ["8"]], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[02]"]]]], "CH": ["41", "00", "8\\d{11}|[2-9]\\d{8}", [9, 12], [["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["8[047]|90"], "0$1"], ["(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[2-79]|81"], "0$1"], ["(\\d{3})(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4 $5", ["8"], "0$1"]], "0"], "CI": ["225", "00", "[02]\\d{9}", [10], [["(\\d{2})(\\d{2})(\\d)(\\d{5})", "$1 $2 $3 $4", ["2"]], ["(\\d{2})(\\d{2})(\\d{2})(\\d{4})", "$1 $2 $3 $4", ["0"]]]], "CK": ["682", "00", "[2-578]\\d{4}", [5], [["(\\d{2})(\\d{3})", "$1 $2", ["[2-578]"]]]], "CL": ["56", "(?:0|1(?:1[0-69]|2[02-5]|5[13-58]|69|7[0167]|8[018]))0", "12300\\d{6}|6\\d{9,10}|[2-9]\\d{8}", [9, 10, 11], [["(\\d{5})(\\d{4})", "$1 $2", ["219", "2196"], "($1)"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["60|809"]], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["44"]], ["(\\d)(\\d{4})(\\d{4})", "$1 $2 $3", ["2[1-36]"], "($1)"], ["(\\d)(\\d{4})(\\d{4})", "$1 $2 $3", ["9(?:10|[2-9])"]], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["3[2-5]|[47]|5[1-3578]|6[13-57]|8(?:0[1-8]|[1-9])"], "($1)"], ["(\\d{3})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["60|8"]], ["(\\d{4})(\\d{3})(\\d{4})", "$1 $2 $3", ["1"]], ["(\\d{3})(\\d{3})(\\d{2})(\\d{3})", "$1 $2 $3 $4", ["60"]]]], "CM": ["237", "00", "[26]\\d{8}|88\\d{6,7}", [8, 9], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["88"]], ["(\\d)(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4 $5", ["[26]|88"]]]], "CN": ["86", "00|1(?:[12]\\d|79)\\d\\d00", "(?:(?:1[03-689]|2\\d)\\d\\d|6)\\d{8}|1\\d{10}|[126]\\d{6}(?:\\d(?:\\d{2})?)?|86\\d{5,6}|(?:[3-579]\\d|8[0-57-9])\\d{5,9}", [7, 8, 9, 10, 11, 12], [["(\\d{2})(\\d{5,6})", "$1 $2", ["(?:10|2[0-57-9])[19]|3(?:[157]|35|49|9[1-68])|4(?:1[124-9]|2[179]|6[47-9]|7|8[23])|5(?:[1357]|2[37]|4[36]|6[1-46]|80)|6(?:3[1-5]|6[0238]|9[12])|7(?:01|[1579]|2[248]|3[014-9]|4[3-6]|6[023689])|8(?:07|1[236-8]|2[5-7]|[37]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|3|4[13]|5[1-5]|7[0-79]|9[0-35-9])|(?:4[35]|59|85)[1-9]", "(?:10|2[0-57-9])(?:1[02]|9[56])|8078|(?:3(?:[157]\\d|35|49|9[1-68])|4(?:1[124-9]|2[179]|[35][1-9]|6[47-9]|7\\d|8[23])|5(?:[1357]\\d|2[37]|4[36]|6[1-46]|80|9[1-9])|6(?:3[1-5]|6[0238]|9[12])|7(?:01|[1579]\\d|2[248]|3[014-9]|4[3-6]|6[023689])|8(?:1[236-8]|2[5-7]|[37]\\d|5[1-9]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|3\\d|4[13]|5[1-5]|7[0-79]|9[0-35-9]))1", "10(?:1(?:0|23)|9[56])|2[0-57-9](?:1(?:00|23)|9[56])|80781|(?:3(?:[157]\\d|35|49|9[1-68])|4(?:1[124-9]|2[179]|[35][1-9]|6[47-9]|7\\d|8[23])|5(?:[1357]\\d|2[37]|4[36]|6[1-46]|80|9[1-9])|6(?:3[1-5]|6[0238]|9[12])|7(?:01|[1579]\\d|2[248]|3[014-9]|4[3-6]|6[023689])|8(?:1[236-8]|2[5-7]|[37]\\d|5[1-9]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|3\\d|4[13]|5[1-5]|7[0-79]|9[0-35-9]))12", "10(?:1(?:0|23)|9[56])|2[0-57-9](?:1(?:00|23)|9[56])|807812|(?:3(?:[157]\\d|35|49|9[1-68])|4(?:1[124-9]|2[179]|[35][1-9]|6[47-9]|7\\d|8[23])|5(?:[1357]\\d|2[37]|4[36]|6[1-46]|80|9[1-9])|6(?:3[1-5]|6[0238]|9[12])|7(?:01|[1579]\\d|2[248]|3[014-9]|4[3-6]|6[023689])|8(?:1[236-8]|2[5-7]|[37]\\d|5[1-9]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|3\\d|4[13]|5[1-5]|7[0-79]|9[0-35-9]))123", "10(?:1(?:0|23)|9[56])|2[0-57-9](?:1(?:00|23)|9[56])|(?:3(?:[157]\\d|35|49|9[1-68])|4(?:1[124-9]|2[179]|[35][1-9]|6[47-9]|7\\d|8[23])|5(?:[1357]\\d|2[37]|4[36]|6[1-46]|80|9[1-9])|6(?:3[1-5]|6[0238]|9[12])|7(?:01|[1579]\\d|2[248]|3[014-9]|4[3-6]|6[023689])|8(?:078|1[236-8]|2[5-7]|[37]\\d|5[1-9]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|3\\d|4[13]|5[1-5]|7[0-79]|9[0-35-9]))123"], "0$1"], ["(\\d{3})(\\d{5,6})", "$1 $2", ["3(?:[157]|35|49|9[1-68])|4(?:[17]|2[179]|6[47-9]|8[23])|5(?:[1357]|2[37]|4[36]|6[1-46]|80)|6(?:3[1-5]|6[0238]|9[12])|7(?:01|[1579]|2[248]|3[014-9]|4[3-6]|6[023689])|8(?:1[236-8]|2[5-7]|[37]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|[379]|4[13]|5[1-5])|(?:4[35]|59|85)[1-9]", "(?:3(?:[157]\\d|35|49|9[1-68])|4(?:[17]\\d|2[179]|[35][1-9]|6[47-9]|8[23])|5(?:[1357]\\d|2[37]|4[36]|6[1-46]|80|9[1-9])|6(?:3[1-5]|6[0238]|9[12])|7(?:01|[1579]\\d|2[248]|3[014-9]|4[3-6]|6[023689])|8(?:1[236-8]|2[5-7]|[37]\\d|5[1-9]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|[379]\\d|4[13]|5[1-5]))[19]", "85[23](?:10|95)|(?:3(?:[157]\\d|35|49|9[1-68])|4(?:[17]\\d|2[179]|[35][1-9]|6[47-9]|8[23])|5(?:[1357]\\d|2[37]|4[36]|6[1-46]|80|9[1-9])|6(?:3[1-5]|6[0238]|9[12])|7(?:01|[1579]\\d|2[248]|3[014-9]|4[3-6]|6[023689])|8(?:1[236-8]|2[5-7]|[37]\\d|5[14-9]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|[379]\\d|4[13]|5[1-5]))(?:10|9[56])", "85[23](?:100|95)|(?:3(?:[157]\\d|35|49|9[1-68])|4(?:[17]\\d|2[179]|[35][1-9]|6[47-9]|8[23])|5(?:[1357]\\d|2[37]|4[36]|6[1-46]|80|9[1-9])|6(?:3[1-5]|6[0238]|9[12])|7(?:01|[1579]\\d|2[248]|3[014-9]|4[3-6]|6[023689])|8(?:1[236-8]|2[5-7]|[37]\\d|5[14-9]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|[379]\\d|4[13]|5[1-5]))(?:100|9[56])"], "0$1"], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["(?:4|80)0"]], ["(\\d{2})(\\d{4})(\\d{4})", "$1 $2 $3", ["10|2(?:[02-57-9]|1[1-9])", "10|2(?:[02-57-9]|1[1-9])", "10[0-79]|2(?:[02-57-9]|1[1-79])|(?:10|21)8(?:0[1-9]|[1-9])"], "0$1", 1], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["3(?:[3-59]|7[02-68])|4(?:[26-8]|3[3-9]|5[2-9])|5(?:3[03-9]|[468]|7[028]|9[2-46-9])|6|7(?:[0-247]|3[04-9]|5[0-4689]|6[2368])|8(?:[1-358]|9[1-7])|9(?:[013479]|5[1-5])|(?:[34]1|55|79|87)[02-9]"], "0$1", 1], ["(\\d{3})(\\d{7,8})", "$1 $2", ["9"]], ["(\\d{4})(\\d{3})(\\d{4})", "$1 $2 $3", ["80"], "0$1", 1], ["(\\d{3})(\\d{4})(\\d{4})", "$1 $2 $3", ["[3-578]"], "0$1", 1], ["(\\d{3})(\\d{4})(\\d{4})", "$1 $2 $3", ["1[3-9]"]], ["(\\d{2})(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3 $4", ["[12]"], "0$1", 1]], "0", 0, "(1(?:[12]\\d|79)\\d\\d)|0", 0, 0, 0, 0, "00"], "CO": ["57", "00(?:4(?:[14]4|56)|[579])", "(?:46|60\\d\\d)\\d{6}|(?:1\\d|[39])\\d{9}", [8, 10, 11], [["(\\d{4})(\\d{4})", "$1 $2", ["46"]], ["(\\d{3})(\\d{7})", "$1 $2", ["6|90"], "($1)"], ["(\\d{3})(\\d{7})", "$1 $2", ["3[0-357]|9[14]"]], ["(\\d)(\\d{3})(\\d{7})", "$1-$2-$3", ["1"], "0$1", 0, "$1 $2 $3"]], "0", 0, "0([3579]|4(?:[14]4|56))?"], "CR": ["506", "00", "(?:8\\d|90)\\d{8}|(?:[24-8]\\d{3}|3005)\\d{4}", [8, 10], [["(\\d{4})(\\d{4})", "$1 $2", ["[2-7]|8[3-9]"]], ["(\\d{3})(\\d{3})(\\d{4})", "$1-$2-$3", ["[89]"]]], 0, 0, "(19(?:0[0-2468]|1[09]|20|66|77|99))"], "CU": ["53", "119", "(?:[2-7]|8\\d\\d)\\d{7}|[2-47]\\d{6}|[34]\\d{5}", [6, 7, 8, 10], [["(\\d{2})(\\d{4,6})", "$1 $2", ["2[1-4]|[34]"], "(0$1)"], ["(\\d)(\\d{6,7})", "$1 $2", ["7"], "(0$1)"], ["(\\d)(\\d{7})", "$1 $2", ["[56]"], "0$1"], ["(\\d{3})(\\d{7})", "$1 $2", ["8"], "0$1"]], "0"], "CV": ["238", "0", "(?:[2-59]\\d\\d|800)\\d{4}", [7], [["(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3", ["[2-589]"]]]], "CW": ["599", "00", "(?:[34]1|60|(?:7|9\\d)\\d)\\d{5}", [7, 8], [["(\\d{3})(\\d{4})", "$1 $2", ["[3467]"]], ["(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["9[4-8]"]]], 0, 0, 0, 0, 0, "[69]"], "CX": ["61", "001[14-689]|14(?:1[14]|34|4[17]|[56]6|7[47]|88)0011", "1(?:[0-79]\\d{8}(?:\\d{2})?|8[0-24-9]\\d{7})|[148]\\d{8}|1\\d{5,7}", [6, 7, 8, 9, 10, 12], 0, "0", 0, "([59]\\d{7})$|0", "8$1", 0, 0, [["8(?:51(?:0(?:01|30|59|88)|1(?:17|46|75)|2(?:22|35))|91(?:00[6-9]|1(?:[28]1|49|78)|2(?:09|63)|3(?:12|26|75)|4(?:56|97)|64\\d|7(?:0[01]|1[0-2])|958))\\d{3}", [9]], ["4(?:79[01]|83[0-36-9]|95[0-3])\\d{5}|4(?:[0-36]\\d|4[047-9]|[58][0-24-9]|7[02-8]|9[0-47-9])\\d{6}", [9]], ["180(?:0\\d{3}|2)\\d{3}", [7, 10]], ["190[0-26]\\d{6}", [10]], 0, 0, 0, 0, ["14(?:5(?:1[0458]|[23][458])|71\\d)\\d{4}", [9]], ["13(?:00\\d{6}(?:\\d{2})?|45[0-4]\\d{3})|13\\d{4}", [6, 8, 10, 12]]], "0011"], "CY": ["357", "00", "(?:[279]\\d|[58]0)\\d{6}", [8], [["(\\d{2})(\\d{6})", "$1 $2", ["[257-9]"]]]], "CZ": ["420", "00", "(?:[2-578]\\d|60)\\d{7}|9\\d{8,11}", [9, 10, 11, 12], [["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[2-8]|9[015-7]"]], ["(\\d{2})(\\d{3})(\\d{3})(\\d{2})", "$1 $2 $3 $4", ["96"]], ["(\\d{2})(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["9"]], ["(\\d{3})(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["9"]]]], "DE": ["49", "00", "[2579]\\d{5,14}|49(?:[34]0|69|8\\d)\\d\\d?|49(?:37|49|60|7[089]|9\\d)\\d{1,3}|49(?:2[024-9]|3[2-689]|7[1-7])\\d{1,8}|(?:1|[368]\\d|4[0-8])\\d{3,13}|49(?:[015]\\d|2[13]|31|[46][1-8])\\d{1,9}", [4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15], [["(\\d{2})(\\d{3,13})", "$1 $2", ["3[02]|40|[68]9"], "0$1"], ["(\\d{3})(\\d{3,12})", "$1 $2", ["2(?:0[1-389]|1[124]|2[18]|3[14])|3(?:[35-9][15]|4[015])|906|(?:2[4-9]|4[2-9]|[579][1-9]|[68][1-8])1", "2(?:0[1-389]|12[0-8])|3(?:[35-9][15]|4[015])|906|2(?:[13][14]|2[18])|(?:2[4-9]|4[2-9]|[579][1-9]|[68][1-8])1"], "0$1"], ["(\\d{4})(\\d{2,11})", "$1 $2", ["[24-6]|3(?:[3569][02-46-9]|4[2-4679]|7[2-467]|8[2-46-8])|70[2-8]|8(?:0[2-9]|[1-8])|90[7-9]|[79][1-9]", "[24-6]|3(?:3(?:0[1-467]|2[127-9]|3[124578]|7[1257-9]|8[1256]|9[145])|4(?:2[135]|4[13578]|9[1346])|5(?:0[14]|2[1-3589]|6[1-4]|7[13468]|8[13568])|6(?:2[1-489]|3[124-6]|6[13]|7[12579]|8[1-356]|9[135])|7(?:2[1-7]|4[145]|6[1-5]|7[1-4])|8(?:21|3[1468]|6|7[1467]|8[136])|9(?:0[12479]|2[1358]|4[134679]|6[1-9]|7[136]|8[147]|9[1468]))|70[2-8]|8(?:0[2-9]|[1-8])|90[7-9]|[79][1-9]|3[68]4[1347]|3(?:47|60)[1356]|3(?:3[46]|46|5[49])[1246]|3[4579]3[1357]"], "0$1"], ["(\\d{3})(\\d{4})", "$1 $2", ["138"], "0$1"], ["(\\d{5})(\\d{2,10})", "$1 $2", ["3"], "0$1"], ["(\\d{3})(\\d{5,11})", "$1 $2", ["181"], "0$1"], ["(\\d{3})(\\d)(\\d{4,10})", "$1 $2 $3", ["1(?:3|80)|9"], "0$1"], ["(\\d{3})(\\d{7,8})", "$1 $2", ["1[67]"], "0$1"], ["(\\d{3})(\\d{7,12})", "$1 $2", ["8"], "0$1"], ["(\\d{5})(\\d{6})", "$1 $2", ["185", "1850", "18500"], "0$1"], ["(\\d{3})(\\d{4})(\\d{4})", "$1 $2 $3", ["7"], "0$1"], ["(\\d{4})(\\d{7})", "$1 $2", ["18[68]"], "0$1"], ["(\\d{4})(\\d{7})", "$1 $2", ["15[1279]"], "0$1"], ["(\\d{5})(\\d{6})", "$1 $2", ["15[03568]", "15(?:[0568]|3[13])"], "0$1"], ["(\\d{3})(\\d{8})", "$1 $2", ["18"], "0$1"], ["(\\d{3})(\\d{2})(\\d{7,8})", "$1 $2 $3", ["1(?:6[023]|7)"], "0$1"], ["(\\d{4})(\\d{2})(\\d{7})", "$1 $2 $3", ["15[279]"], "0$1"], ["(\\d{3})(\\d{2})(\\d{8})", "$1 $2 $3", ["15"], "0$1"]], "0"], "DJ": ["253", "00", "(?:2\\d|77)\\d{6}", [8], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[27]"]]]], "DK": ["45", "00", "[2-9]\\d{7}", [8], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[2-9]"]]]], "DM": ["1", "011", "(?:[58]\\d\\d|767|900)\\d{7}", [10], 0, "1", 0, "([2-7]\\d{6})$|1", "767$1", 0, "767"], "DO": ["1", "011", "(?:[58]\\d\\d|900)\\d{7}", [10], 0, "1", 0, 0, 0, 0, "8001|8[024]9"], "DZ": ["213", "00", "(?:[1-4]|[5-79]\\d|80)\\d{7}", [8, 9], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[1-4]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["9"], "0$1"], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[5-8]"], "0$1"]], "0"], "EC": ["593", "00", "1\\d{9,10}|(?:[2-7]|9\\d)\\d{7}", [8, 9, 10, 11], [["(\\d)(\\d{3})(\\d{4})", "$1 $2-$3", ["[2-7]"], "(0$1)", 0, "$1-$2-$3"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["9"], "0$1"], ["(\\d{4})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["1"]]], "0"], "EE": ["372", "00", "8\\d{9}|[4578]\\d{7}|(?:[3-8]\\d|90)\\d{5}", [7, 8, 10], [["(\\d{3})(\\d{4})", "$1 $2", ["[369]|4[3-8]|5(?:[0-2]|5[0-478]|6[45])|7[1-9]|88", "[369]|4[3-8]|5(?:[02]|1(?:[0-8]|95)|5[0-478]|6(?:4[0-4]|5[1-589]))|7[1-9]|88"]], ["(\\d{4})(\\d{3,4})", "$1 $2", ["[45]|8(?:00|[1-49])", "[45]|8(?:00[1-9]|[1-49])"]], ["(\\d{2})(\\d{2})(\\d{4})", "$1 $2 $3", ["7"]], ["(\\d{4})(\\d{3})(\\d{3})", "$1 $2 $3", ["8"]]]], "EG": ["20", "00", "[189]\\d{8,9}|[24-6]\\d{8}|[135]\\d{7}", [8, 9, 10], [["(\\d)(\\d{7,8})", "$1 $2", ["[23]"], "0$1"], ["(\\d{2})(\\d{6,7})", "$1 $2", ["1[35]|[4-6]|8[2468]|9[235-7]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["[89]"], "0$1"], ["(\\d{2})(\\d{8})", "$1 $2", ["1"], "0$1"]], "0"], "EH": ["212", "00", "[5-8]\\d{8}", [9], 0, "0", 0, 0, 0, 0, "528[89]"], "ER": ["291", "00", "[178]\\d{6}", [7], [["(\\d)(\\d{3})(\\d{3})", "$1 $2 $3", ["[178]"], "0$1"]], "0"], "ES": ["34", "00", "[5-9]\\d{8}", [9], [["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[89]00"]], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[5-9]"]]]], "ET": ["251", "00", "(?:11|[2-579]\\d)\\d{7}", [9], [["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[1-579]"], "0$1"]], "0"], "FI": ["358", "00|99(?:[01469]|5(?:[14]1|3[23]|5[59]|77|88|9[09]))", "[1-35689]\\d{4}|7\\d{10,11}|(?:[124-7]\\d|3[0-46-9])\\d{8}|[1-9]\\d{5,8}", [5, 6, 7, 8, 9, 10, 11, 12], [["(\\d{5})", "$1", ["20[2-59]"], "0$1"], ["(\\d{3})(\\d{3,7})", "$1 $2", ["(?:[1-3]0|[68])0|70[07-9]"], "0$1"], ["(\\d{2})(\\d{4,8})", "$1 $2", ["[14]|2[09]|50|7[135]"], "0$1"], ["(\\d{2})(\\d{6,10})", "$1 $2", ["7"], "0$1"], ["(\\d)(\\d{4,9})", "$1 $2", ["(?:19|[2568])[1-8]|3(?:0[1-9]|[1-9])|9"], "0$1"]], "0", 0, 0, 0, 0, "1[03-79]|[2-9]", 0, "00"], "FJ": ["679", "0(?:0|52)", "45\\d{5}|(?:0800\\d|[235-9])\\d{6}", [7, 11], [["(\\d{3})(\\d{4})", "$1 $2", ["[235-9]|45"]], ["(\\d{4})(\\d{3})(\\d{4})", "$1 $2 $3", ["0"]]], 0, 0, 0, 0, 0, 0, 0, "00"], "FK": ["500", "00", "[2-7]\\d{4}", [5]], "FM": ["691", "00", "(?:[39]\\d\\d|820)\\d{4}", [7], [["(\\d{3})(\\d{4})", "$1 $2", ["[389]"]]]], "FO": ["298", "00", "[2-9]\\d{5}", [6], [["(\\d{6})", "$1", ["[2-9]"]]], 0, 0, "(10(?:01|[12]0|88))"], "FR": ["33", "00", "[1-9]\\d{8}", [9], [["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["8"], "0 $1"], ["(\\d)(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4 $5", ["[1-79]"], "0$1"]], "0"], "GA": ["241", "00", "(?:[067]\\d|11)\\d{6}|[2-7]\\d{6}", [7, 8], [["(\\d)(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[2-7]"], "0$1"], ["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["0"]], ["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["11|[67]"], "0$1"]], 0, 0, "0(11\\d{6}|60\\d{6}|61\\d{6}|6[256]\\d{6}|7[467]\\d{6})", "$1"], "GB": ["44", "00", "[1-357-9]\\d{9}|[18]\\d{8}|8\\d{6}", [7, 9, 10], [["(\\d{3})(\\d{4})", "$1 $2", ["800", "8001", "80011", "800111", "8001111"], "0$1"], ["(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3", ["845", "8454", "84546", "845464"], "0$1"], ["(\\d{3})(\\d{6})", "$1 $2", ["800"], "0$1"], ["(\\d{5})(\\d{4,5})", "$1 $2", ["1(?:38|5[23]|69|76|94)", "1(?:(?:38|69)7|5(?:24|39)|768|946)", "1(?:3873|5(?:242|39[4-6])|(?:697|768)[347]|9467)"], "0$1"], ["(\\d{4})(\\d{5,6})", "$1 $2", ["1(?:[2-69][02-9]|[78])"], "0$1"], ["(\\d{2})(\\d{4})(\\d{4})", "$1 $2 $3", ["[25]|7(?:0|6[02-9])", "[25]|7(?:0|6(?:[03-9]|2[356]))"], "0$1"], ["(\\d{4})(\\d{6})", "$1 $2", ["7"], "0$1"], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["[1389]"], "0$1"]], "0", 0, "0|180020", 0, 0, 0, [["(?:1(?:1(?:3(?:[0-58]\\d\\d|73[0-5])|4(?:(?:[0-5]\\d|70)\\d|69[7-9])|(?:(?:5[0-26-9]|[78][0-49])\\d|6(?:[0-4]\\d|5[01]))\\d)|(?:2(?:(?:0[024-9]|2[3-9]|3[3-79]|4[1-689]|[58][02-9]|6[0-47-9]|7[013-9]|9\\d)\\d|1(?:[0-7]\\d|8[0-3]))|(?:3(?:0\\d|1[0-8]|[25][02-9]|3[02-579]|[468][0-46-9]|7[1-35-79]|9[2-578])|4(?:0[03-9]|[137]\\d|[28][02-57-9]|4[02-69]|5[0-8]|[69][0-79])|5(?:0[1-35-9]|[16]\\d|2[024-9]|3[015689]|4[02-9]|5[03-9]|7[0-35-9]|8[0-468]|9[0-57-9])|6(?:0[034689]|1\\d|2[0-35689]|[38][013-9]|4[1-467]|5[0-69]|6[13-9]|7[0-8]|9[0-24578])|7(?:0[0246-9]|2\\d|3[0236-8]|4[03-9]|5[0-46-9]|6[013-9]|7[0-35-9]|8[024-9]|9[02-9])|8(?:0[35-9]|2[1-57-9]|3[02-578]|4[0-578]|5[124-9]|6[2-69]|7\\d|8[02-9]|9[02569])|9(?:0[02-589]|[18]\\d|2[02-689]|3[1-57-9]|4[2-9]|5[0-579]|6[2-47-9]|7[0-24578]|9[2-57]))\\d)\\d)|2(?:0[013478]|3[0189]|4[017]|8[0-46-9]|9[0-2])\\d{3})\\d{4}|1(?:2(?:0(?:46[1-4]|87[2-9])|545[1-79]|76(?:2\\d|3[1-8]|6[1-6])|9(?:7(?:2[0-4]|3[2-5])|8(?:2[2-8]|7[0-47-9]|8[3-5])))|3(?:6(?:38[2-5]|47[23])|8(?:47[04-9]|64[0157-9]))|4(?:044[1-7]|20(?:2[23]|8\\d)|6(?:0(?:30|5[2-57]|6[1-8]|7[2-8])|140)|8(?:052|87[1-3]))|5(?:2(?:4(?:3[2-79]|6\\d)|76\\d)|6(?:26[06-9]|686))|6(?:06(?:4\\d|7[4-79])|295[5-7]|35[34]\\d|47(?:24|61)|59(?:5[08]|6[67]|74)|9(?:55[0-4]|77[23]))|7(?:26(?:6[13-9]|7[0-7])|(?:442|688)\\d|50(?:2[0-3]|[3-68]2|76))|8(?:27[56]\\d|37(?:5[2-5]|8[239])|843[2-58])|9(?:0(?:0(?:6[1-8]|85)|52\\d)|3583|4(?:66[1-8]|9(?:2[01]|81))|63(?:23|3[1-4])|9561))\\d{3}", [9, 10]], ["7(?:457[0-57-9]|700[01]|911[028])\\d{5}|7(?:[1-3]\\d\\d|4(?:[0-46-9]\\d|5[0-689])|5(?:0[0-8]|[13-9]\\d|2[0-35-9])|7(?:0[1-9]|[1-7]\\d|8[02-9]|9[0-689])|8(?:[014-9]\\d|[23][0-8])|9(?:[024-9]\\d|1[02-9]|3[0-689]))\\d{6}", [10]], ["80[08]\\d{7}|800\\d{6}|8001111"], ["(?:8(?:4[2-5]|7[0-3])|9(?:[01]\\d|8[2-49]))\\d{7}|845464\\d", [7, 10]], ["70\\d{8}", [10]], 0, ["(?:3[0347]|55)\\d{8}", [10]], ["76(?:464|652)\\d{5}|76(?:0[0-28]|2[356]|34|4[01347]|5[49]|6[0-369]|77|8[14]|9[139])\\d{6}", [10]], ["56\\d{8}", [10]]], 0, " x"], "GD": ["1", "011", "(?:473|[58]\\d\\d|900)\\d{7}", [10], 0, "1", 0, "([2-9]\\d{6})$|1", "473$1", 0, "473"], "GE": ["995", "00", "(?:[3-57]\\d\\d|800)\\d{6}", [9], [["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["70"], "0$1"], ["(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["32"], "0$1"], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[57]"]], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[348]"], "0$1"]], "0"], "GF": ["594", "00", "(?:[56]94\\d|7093)\\d{5}|(?:80|9\\d)\\d{7}", [9], [["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[5-7]|9[47]"], "0$1"], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[89]"], "0$1"]], "0"], "GG": ["44", "00", "(?:1481|[357-9]\\d{3})\\d{6}|8\\d{6}(?:\\d{2})?", [7, 9, 10], 0, "0", 0, "([25-9]\\d{5})$|0|180020", "1481$1", 0, 0, [["1481[25-9]\\d{5}", [10]], ["7(?:(?:781|839)\\d|911[17])\\d{5}", [10]], ["80[08]\\d{7}|800\\d{6}|8001111"], ["(?:8(?:4[2-5]|7[0-3])|9(?:[01]\\d|8[0-3]))\\d{7}|845464\\d", [7, 10]], ["70\\d{8}", [10]], 0, ["(?:3[0347]|55)\\d{8}", [10]], ["76(?:464|652)\\d{5}|76(?:0[0-28]|2[356]|34|4[01347]|5[49]|6[0-369]|77|8[14]|9[139])\\d{6}", [10]], ["56\\d{8}", [10]]]], "GH": ["233", "00", "(?:[235]\\d{3}|800)\\d{5}", [8, 9], [["(\\d{3})(\\d{5})", "$1 $2", ["8"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[235]"], "0$1"]], "0"], "GI": ["350", "00", "(?:[25]\\d|60)\\d{6}", [8], [["(\\d{3})(\\d{5})", "$1 $2", ["2"]]]], "GL": ["299", "00", "(?:19|[2-689]\\d|70)\\d{4}", [6], [["(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3", ["19|[2-9]"]]]], "GM": ["220", "00", "[2-9]\\d{6}", [7], [["(\\d{3})(\\d{4})", "$1 $2", ["[2-9]"]]]], "GN": ["224", "00", "722\\d{6}|(?:3|6\\d)\\d{7}", [8, 9], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["3"]], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[67]"]]]], "GP": ["590", "00", "(?:590\\d|7090)\\d{5}|(?:69|80|9\\d)\\d{7}", [9], [["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[5-79]"], "0$1"], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["8"], "0$1"]], "0", 0, 0, 0, 0, 0, [["590(?:0[1-68]|[14][0-24-9]|2[0-68]|3[1-9]|5[3-579]|[68][0-689]|7[08]|9\\d)\\d{4}"], ["(?:69(?:0\\d\\d|1(?:2[2-9]|3[0-5])|4(?:0[89]|1[2-6]|9\\d)|6(?:1[016-9]|5[0-4]|[67]\\d))|7090[0-4])\\d{4}"], ["80[0-5]\\d{6}"], 0, 0, 0, 0, 0, ["9(?:(?:39[5-7]|76[018])\\d|475[0-6])\\d{4}"]]], "GQ": ["240", "00", "222\\d{6}|(?:3\\d|55|[89]0)\\d{7}", [9], [["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[235]"]], ["(\\d{3})(\\d{6})", "$1 $2", ["[89]"]]]], "GR": ["30", "00", "5005000\\d{3}|8\\d{9,11}|(?:[269]\\d|70)\\d{8}", [10, 11, 12], [["(\\d{2})(\\d{4})(\\d{4})", "$1 $2 $3", ["21|7"]], ["(\\d{4})(\\d{6})", "$1 $2", ["2(?:2|3[2-57-9]|4[2-469]|5[2-59]|6[2-9]|7[2-69]|8[2-49])|5"]], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["[2689]"]], ["(\\d{3})(\\d{3,4})(\\d{5})", "$1 $2 $3", ["8"]]]], "GT": ["502", "00", "80\\d{6}|(?:1\\d{3}|[2-7])\\d{7}", [8, 11], [["(\\d{4})(\\d{4})", "$1 $2", ["[2-8]"]], ["(\\d{4})(\\d{3})(\\d{4})", "$1 $2 $3", ["1"]]]], "GU": ["1", "011", "(?:[58]\\d\\d|671|900)\\d{7}", [10], 0, "1", 0, "([2-9]\\d{6})$|1", "671$1", 0, "671"], "GW": ["245", "00", "[49]\\d{8}|4\\d{6}", [7, 9], [["(\\d{3})(\\d{4})", "$1 $2", ["40"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[49]"]]]], "GY": ["592", "001", "(?:[2-8]\\d{3}|9008)\\d{3}", [7], [["(\\d{3})(\\d{4})", "$1 $2", ["[2-9]"]]]], "HK": ["852", "00(?:30|5[09]|[126-9]?)", "8[0-46-9]\\d{6,7}|9\\d{4,7}|(?:[2-7]|9\\d{3})\\d{7}", [5, 6, 7, 8, 9, 11], [["(\\d{3})(\\d{2,5})", "$1 $2", ["900", "9003"]], ["(\\d{4})(\\d{4})", "$1 $2", ["[2-7]|8[1-4]|9(?:0[1-9]|[1-8])"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["8"]], ["(\\d{3})(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["9"]]], 0, 0, 0, 0, 0, 0, 0, "00"], "HN": ["504", "00", "8\\d{10}|[237-9]\\d{7}", [8, 11], [["(\\d{4})(\\d{4})", "$1-$2", ["[237-9]"]]]], "HR": ["385", "00", "[2-69]\\d{8}|80\\d{5,7}|[1-79]\\d{7}|6\\d{6}", [7, 8, 9], [["(\\d{2})(\\d{2})(\\d{3})", "$1 $2 $3", ["6[01]"], "0$1"], ["(\\d{3})(\\d{2})(\\d{2,3})", "$1 $2 $3", ["8"], "0$1"], ["(\\d)(\\d{4})(\\d{3})", "$1 $2 $3", ["1"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["6|7[245]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["9"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[2-57]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["8"], "0$1"]], "0"], "HT": ["509", "00", "[2-589]\\d{7}", [8], [["(\\d{2})(\\d{2})(\\d{4})", "$1 $2 $3", ["[2-589]"]]]], "HU": ["36", "00", "[235-7]\\d{8}|[1-9]\\d{7}", [8, 9], [["(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["1"], "(06 $1)"], ["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["[27][2-9]|3[2-7]|4[24-9]|5[2-79]|6|8[2-57-9]|9[2-69]"], "(06 $1)"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[2-9]"], "06 $1"]], "06"], "ID": ["62", "00[89]", "00[1-9]\\d{9,14}|(?:[1-36]|8\\d{5})\\d{6}|00\\d{9}|[1-9]\\d{8,10}|[2-9]\\d{7}", [7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17], [["(\\d)(\\d{3})(\\d{3})", "$1 $2 $3", ["15"]], ["(\\d{2})(\\d{5,9})", "$1 $2", ["2[124]|[36]1"], "(0$1)"], ["(\\d{3})(\\d{5,7})", "$1 $2", ["800"], "0$1"], ["(\\d{3})(\\d{5,8})", "$1 $2", ["[2-79]"], "(0$1)"], ["(\\d{3})(\\d{3,4})(\\d{3})", "$1-$2-$3", ["8[1-35-9]"], "0$1"], ["(\\d{3})(\\d{6,8})", "$1 $2", ["1"], "0$1"], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["804"], "0$1"], ["(\\d{3})(\\d)(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["80"], "0$1"], ["(\\d{3})(\\d{4})(\\d{4,5})", "$1-$2-$3", ["8"], "0$1"]], "0"], "IE": ["353", "00", "(?:1\\d|[2569])\\d{6,8}|4\\d{6,9}|7\\d{8}|8\\d{8,9}", [7, 8, 9, 10], [["(\\d{2})(\\d{5})", "$1 $2", ["2[24-9]|47|58|6[237-9]|9[35-9]"], "(0$1)"], ["(\\d{3})(\\d{5})", "$1 $2", ["[45]0"], "(0$1)"], ["(\\d)(\\d{3,4})(\\d{4})", "$1 $2 $3", ["1"], "(0$1)"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[2569]|4[1-69]|7[14]"], "(0$1)"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["70"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["81"], "(0$1)"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[78]"], "0$1"], ["(\\d{4})(\\d{3})(\\d{3})", "$1 $2 $3", ["1"]], ["(\\d{2})(\\d{4})(\\d{4})", "$1 $2 $3", ["4"], "(0$1)"], ["(\\d{2})(\\d)(\\d{3})(\\d{4})", "$1 $2 $3 $4", ["8"], "0$1"]], "0"], "IL": ["972", "0(?:0|1[2-9])", "1\\d{6}(?:\\d{3,5})?|[57]\\d{8}|[1-489]\\d{7}", [7, 8, 9, 10, 11, 12], [["(\\d{4})(\\d{3})", "$1-$2", ["125"]], ["(\\d{4})(\\d{2})(\\d{2})", "$1-$2-$3", ["121"]], ["(\\d)(\\d{3})(\\d{4})", "$1-$2-$3", ["[2-489]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1-$2-$3", ["[57]"], "0$1"], ["(\\d{4})(\\d{3})(\\d{3})", "$1-$2-$3", ["12"]], ["(\\d{4})(\\d{6})", "$1-$2", ["159"]], ["(\\d)(\\d{3})(\\d{3})(\\d{3})", "$1-$2-$3-$4", ["1[7-9]"]], ["(\\d{3})(\\d{1,2})(\\d{3})(\\d{4})", "$1-$2 $3-$4", ["15"]]], "0"], "IM": ["44", "00", "1624\\d{6}|(?:[3578]\\d|90)\\d{8}", [10], 0, "0", 0, "([25-8]\\d{5})$|0|180020", "1624$1", 0, "74576|(?:16|7[56])24"], "IN": ["91", "00", "(?:000800|[2-9]\\d\\d)\\d{7}|1\\d{7,12}", [8, 9, 10, 11, 12, 13], [["(\\d{8})", "$1", ["5(?:0|2[23]|3[03]|[67]1|88)", "5(?:0|2(?:21|3)|3(?:0|3[23])|616|717|888)", "5(?:0|2(?:21|3)|3(?:0|3[23])|616|717|8888)"], 0, 1], ["(\\d{4})(\\d{4,5})", "$1 $2", ["180", "1800"], 0, 1], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["140"], 0, 1], ["(\\d{2})(\\d{4})(\\d{4})", "$1 $2 $3", ["11|2[02]|33|4[04]|79[1-7]|80[2-46]", "11|2[02]|33|4[04]|79(?:[1-6]|7[19])|80(?:[2-4]|6[0-589])", "11|2[02]|33|4[04]|79(?:[124-6]|3(?:[02-9]|1[0-24-9])|7(?:1|9[1-6]))|80(?:[2-4]|6[0-589])"], "0$1", 1], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["1(?:2[0-249]|3[0-25]|4[145]|[68]|7[1257])|2(?:1[257]|3[013]|4[01]|5[0137]|6[0158]|78|8[1568])|3(?:26|4[1-3]|5[34]|6[01489]|7[02-46]|8[159])|4(?:1[36]|2[1-47]|5[12]|6[0-26-9]|7[0-24-9]|8[013-57]|9[014-7])|5(?:1[025]|22|[36][25]|4[28]|5[12]|[78]1)|6(?:12|[2-4]1|5[17]|6[13]|80)|7(?:12|3[134]|4[47]|61|88)|8(?:16|2[014]|3[126]|6[136]|7[078]|8[34]|91)|(?:43|59|75)[15]|(?:1[59]|29|67|72)[14]", "1(?:2[0-24]|3[0-25]|4[145]|[59][14]|6[1-9]|7[1257]|8[1-57-9])|2(?:1[257]|3[013]|4[01]|5[0137]|6[058]|78|8[1568]|9[14])|3(?:26|4[1-3]|5[34]|6[01489]|7[02-46]|8[159])|4(?:1[36]|2[1-47]|3[15]|5[12]|6[0-26-9]|7[0-24-9]|8[013-57]|9[014-7])|5(?:1[025]|22|[36][25]|4[28]|[578]1|9[15])|674|7(?:(?:2[14]|3[34]|5[15])[2-6]|61[346]|88[0-8])|8(?:70[2-6]|84[235-7]|91[3-7])|(?:1(?:29|60|8[06])|261|552|6(?:12|[2-47]1|5[17]|6[13]|80)|7(?:12|31|4[47])|8(?:16|2[014]|3[126]|6[136]|7[78]|83))[2-7]", "1(?:2[0-24]|3[0-25]|4[145]|[59][14]|6[1-9]|7[1257]|8[1-57-9])|2(?:1[257]|3[013]|4[01]|5[0137]|6[058]|78|8[1568]|9[14])|3(?:26|4[1-3]|5[34]|6[01489]|7[02-46]|8[159])|4(?:1[36]|2[1-47]|3[15]|5[12]|6[0-26-9]|7[0-24-9]|8[013-57]|9[014-7])|5(?:1[025]|22|[36][25]|4[28]|[578]1|9[15])|6(?:12(?:[2-6]|7[0-8])|74[2-7])|7(?:(?:2[14]|5[15])[2-6]|3171|61[346]|88(?:[2-7]|82))|8(?:70[2-6]|84(?:[2356]|7[19])|91(?:[3-6]|7[19]))|73[134][2-6]|(?:74[47]|8(?:16|2[014]|3[126]|6[136]|7[78]|83))(?:[2-6]|7[19])|(?:1(?:29|60|8[06])|261|552|6(?:[2-4]1|5[17]|6[13]|7(?:1|4[0189])|80)|7(?:12|88[01]))[2-7]"], "0$1", 1], ["(\\d{4})(\\d{3})(\\d{3})", "$1 $2 $3", ["1(?:[2-479]|5[0235-9])|[2-5]|6(?:1[1358]|2[2457-9]|3[2-5]|4[235-7]|5[2-689]|6[24578]|7[235689]|8[1-6])|7(?:1[013-9]|28|3[129]|4[1-35689]|5[29]|6[02-5]|70)|807", "1(?:[2-479]|5[0235-9])|[2-5]|6(?:1[1358]|2(?:[2457]|84|95)|3(?:[2-4]|55)|4[235-7]|5[2-689]|6[24578]|7[235689]|8[1-6])|7(?:1(?:[013-8]|9[6-9])|28[6-8]|3(?:17|2[0-49]|9[2-57])|4(?:1[2-4]|[29][0-7]|3[0-8]|[56]|8[0-24-7])|5(?:2[1-3]|9[0-6])|6(?:0[5689]|2[5-9]|3[02-8]|4|5[0-367])|70[13-7])|807[19]", "1(?:[2-479]|5(?:[0236-9]|5[013-9]))|[2-5]|6(?:2(?:84|95)|355|8(?:28[235-7]|3))|73179|807(?:1|9[1-3])|(?:1552|6(?:(?:1[1358]|2[2457]|3[2-4]|4[235-7]|5[2-689]|6[24578]|7[235689])\\d|8(?:[14-6]\\d|2[0-79]))|7(?:1(?:[013-8]\\d|9[6-9])|28[6-8]|3(?:2[0-49]|9[2-57])|4(?:1[2-4]|[29][0-7]|3[0-8]|[56]\\d|8[0-24-7])|5(?:2[1-3]|9[0-6])|6(?:0[5689]|2[5-9]|3[02-8]|4\\d|5[0-367])|70[13-7]))[2-7]"], "0$1", 1], ["(\\d{5})(\\d{5})", "$1 $2", ["[6-9]"], "0$1", 1], ["(\\d{4})(\\d{2,4})(\\d{4})", "$1 $2 $3", ["1(?:6|8[06])", "1(?:6|8[06]0)"], 0, 1], ["(\\d{4})(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["18"], 0, 1]], "0"], "IO": ["246", "00", "3\\d{6}", [7], [["(\\d{3})(\\d{4})", "$1 $2", ["3"]]]], "IQ": ["964", "00", "(?:1|7\\d\\d)\\d{7}|[2-6]\\d{7,8}", [8, 9, 10], [["(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["1"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[2-6]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["7"], "0$1"]], "0"], "IR": ["98", "00", "[1-9]\\d{9}|(?:[1-8]\\d\\d|9)\\d{3,4}", [4, 5, 6, 7, 10], [["(\\d{4,5})", "$1", ["96"], "0$1"], ["(\\d{2})(\\d{4,5})", "$1 $2", ["(?:1[137]|2[13-68]|3[1458]|4[145]|5[1468]|6[16]|7[1467]|8[13467])[12689]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["9"], "0$1"], ["(\\d{2})(\\d{4})(\\d{4})", "$1 $2 $3", ["[1-8]"], "0$1"]], "0"], "IS": ["354", "00|1(?:0(?:01|[12]0)|100)", "(?:38\\d|[4-9])\\d{6}", [7, 9], [["(\\d{3})(\\d{4})", "$1 $2", ["[4-9]"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["3"]]], 0, 0, 0, 0, 0, 0, 0, "00"], "IT": ["39", "00", "0\\d{5,11}|1\\d{8,10}|3(?:[0-8]\\d{7,10}|9\\d{7,8})|(?:43|55|70)\\d{8}|8\\d{5}(?:\\d{2,4})?", [6, 7, 8, 9, 10, 11, 12], [["(\\d{2})(\\d{4,6})", "$1 $2", ["0[26]"]], ["(\\d{3})(\\d{3,6})", "$1 $2", ["0[13-57-9][0159]|8(?:03|4[17]|9[2-5])", "0[13-57-9][0159]|8(?:03|4[17]|9(?:2|3[04]|[45][0-4]))"]], ["(\\d{4})(\\d{2,6})", "$1 $2", ["0(?:[13-579][2-46-8]|8[236-8])"]], ["(\\d{4})(\\d{4})", "$1 $2", ["894"]], ["(\\d{2})(\\d{3,4})(\\d{4})", "$1 $2 $3", ["0[26]|5"]], ["(\\d{3})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["1(?:44|[679])|[378]|43"]], ["(\\d{3})(\\d{3,4})(\\d{4})", "$1 $2 $3", ["0[13-57-9][0159]|14"]], ["(\\d{2})(\\d{4})(\\d{5})", "$1 $2 $3", ["0[26]"]], ["(\\d{4})(\\d{3})(\\d{4})", "$1 $2 $3", ["0"]], ["(\\d{3})(\\d{4})(\\d{4,5})", "$1 $2 $3", ["[03]"]]], 0, 0, 0, 0, 0, 0, [["0(?:669[0-79]\\d{1,6}|831\\d{2,8})|0(?:1(?:[0159]\\d|[27][1-5]|31|4[1-4]|6[1356]|8[2-57])|2\\d\\d|3(?:[0159]\\d|2[1-4]|3[12]|[48][1-6]|6[2-59]|7[1-7])|4(?:[0159]\\d|[23][1-9]|4[245]|6[1-5]|7[1-4]|81)|5(?:[0159]\\d|2[1-5]|3[2-6]|4[1-79]|6[4-6]|7[1-578]|8[3-8])|6(?:[0-57-9]\\d|6[0-8])|7(?:[0159]\\d|2[12]|3[1-7]|4[2-46]|6[13569]|7[13-6]|8[1-59])|8(?:[0159]\\d|2[3-578]|3[2356]|[6-8][1-5])|9(?:[0159]\\d|[238][1-5]|4[12]|6[1-8]|7[1-6]))\\d{2,7}"], ["3[2-9]\\d{7,8}|(?:31|43)\\d{8}", [9, 10]], ["80(?:0\\d{3}|3)\\d{3}", [6, 9]], ["(?:0878\\d{3}|89(?:2\\d|3[04]|4(?:[0-4]|[5-9]\\d\\d)|5[0-4]))\\d\\d|(?:1(?:44|6[346])|89(?:38|5[5-9]|9))\\d{6}", [6, 8, 9, 10]], ["1(?:78\\d|99)\\d{6}", [9, 10]], ["3[2-8]\\d{9,10}", [11, 12]], 0, 0, ["55\\d{8}", [10]], ["84(?:[08]\\d{3}|[17])\\d{3}", [6, 9]]]], "JE": ["44", "00", "1534\\d{6}|(?:[3578]\\d|90)\\d{8}", [10], 0, "0", 0, "([0-24-8]\\d{5})$|0|180020", "1534$1", 0, 0, [["1534[0-24-8]\\d{5}"], ["7(?:(?:(?:50|82)9|937)\\d|7(?:00[378]|97\\d))\\d{5}"], ["80(?:07(?:35|81)|8901)\\d{4}"], ["(?:8(?:4(?:4(?:4(?:05|42|69)|703)|5(?:041|800))|7(?:0002|1206))|90(?:066[59]|1810|71(?:07|55)))\\d{4}"], ["701511\\d{4}"], 0, ["(?:3(?:0(?:07(?:35|81)|8901)|3\\d{4}|4(?:4(?:4(?:05|42|69)|703)|5(?:041|800))|7(?:0002|1206))|55\\d{4})\\d{4}"], ["76(?:464|652)\\d{5}|76(?:0[0-28]|2[356]|34|4[01347]|5[49]|6[0-369]|77|8[14]|9[139])\\d{6}"], ["56\\d{8}"]]], "JM": ["1", "011", "(?:[58]\\d\\d|658|900)\\d{7}", [10], 0, "1", 0, 0, 0, 0, "658|876"], "JO": ["962", "00", "(?:(?:[2689]|7\\d)\\d|32|427|53)\\d{6}", [8, 9], [["(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["[2356]|87"], "(0$1)"], ["(\\d{3})(\\d{5,6})", "$1 $2", ["[89]"], "0$1"], ["(\\d{2})(\\d{7})", "$1 $2", ["70"], "0$1"], ["(\\d)(\\d{4})(\\d{4})", "$1 $2 $3", ["[47]"], "0$1"]], "0"], "JP": ["81", "010", "00[1-9]\\d{6,14}|[25-9]\\d{9}|(?:00|[1-9]\\d\\d)\\d{6}", [8, 9, 10, 11, 12, 13, 14, 15, 16, 17], [["(\\d{3})(\\d{3})(\\d{3})", "$1-$2-$3", ["(?:12|57|99)0"], "0$1"], ["(\\d{4})(\\d)(\\d{4})", "$1-$2-$3", ["1(?:26|3[79]|4[56]|5[4-68]|6[3-5])|499|5(?:76|97)|746|8(?:3[89]|47|51)|9(?:80|9[16])", "1(?:267|3(?:7[247]|9[278])|466|5(?:47|58|64)|6(?:3[245]|48|5[4-68]))|499[2468]|5(?:76|97)9|7468|8(?:3(?:8[7-9]|96)|477|51[2-9])|9(?:802|9(?:1[23]|69))|1(?:45|58)[67]", "1(?:267|3(?:7[247]|9[278])|466|5(?:47|58|64)|6(?:3[245]|48|5[4-68]))|499[2468]|5(?:769|979[2-69])|7468|8(?:3(?:8[7-9]|96[2457-9])|477|51[2-9])|9(?:802|9(?:1[23]|69))|1(?:45|58)[67]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1-$2-$3", ["60"], "0$1"], ["(\\d)(\\d{4})(\\d{4})", "$1-$2-$3", ["3|4(?:2[09]|7[01])|6[1-9]", "3|4(?:2(?:0|9[02-69])|7(?:0[019]|1))|6[1-9]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1-$2-$3", ["1(?:1|5[45]|77|88|9[69])|2(?:2[1-37]|3[0-269]|4[59]|5|6[24]|7[1-358]|8[1369]|9[0-38])|4(?:[28][1-9]|3[0-57]|[45]|6[248]|7[2-579]|9[29])|5(?:2|3[0459]|4[0-369]|5[29]|8[02389]|9[0-389])|7(?:2[02-46-9]|34|[58]|6[0249]|7[57]|9[2-6])|8(?:2[124589]|3[26-9]|49|51|6|7[0-468]|8[68]|9[019])|9(?:[23][1-9]|4[15]|5[138]|6[1-3]|7[156]|8[189]|9[1-489])", "1(?:1|5(?:4[018]|5[017])|77|88|9[69])|2(?:2(?:[127]|3[014-9])|3[0-269]|4[59]|5(?:[1-3]|5[0-69]|9[19])|62|7(?:[1-35]|8[0189])|8(?:[16]|3[0134]|9[0-5])|9(?:[028]|17))|4(?:2(?:[13-79]|8[014-6])|3[0-57]|[45]|6[248]|7[2-47]|8[1-9]|9[29])|5(?:2|3(?:[045]|9[0-8])|4[0-369]|5[29]|8[02389]|9[0-3])|7(?:2[02-46-9]|34|[58]|6[0249]|7[57]|9(?:[23]|4[0-59]|5[01569]|6[0167]))|8(?:2(?:[1258]|4[0-39]|9[0-2469])|3(?:[29]|60)|49|51|6(?:[0-24]|36|5[0-3589]|7[23]|9[01459])|7[0-468]|8[68])|9(?:[23][1-9]|4[15]|5[138]|6[1-3]|7[156]|8[189]|9(?:[1289]|3[34]|4[0178]))|(?:264|837)[016-9]|2(?:57|93)[015-9]|(?:25[0468]|422|838)[01]|(?:47[59]|59[89]|8(?:6[68]|9))[019]", "1(?:1|5(?:4[018]|5[017])|77|88|9[69])|2(?:2[127]|3[0-269]|4[59]|5(?:[1-3]|5[0-69]|9(?:17|99))|6(?:2|4[016-9])|7(?:[1-35]|8[0189])|8(?:[16]|3[0134]|9[0-5])|9(?:[028]|17))|4(?:2(?:[13-79]|8[014-6])|3[0-57]|[45]|6[248]|7[2-47]|9[29])|5(?:2|3(?:[045]|9(?:[0-58]|6[4-9]|7[0-35689]))|4[0-369]|5[29]|8[02389]|9[0-3])|7(?:2[02-46-9]|34|[58]|6[0249]|7[57]|9(?:[23]|4[0-59]|5[01569]|6[0167]))|8(?:2(?:[1258]|4[0-39]|9[0169])|3(?:[29]|60|7(?:[017-9]|6[6-8]))|49|51|6(?:[0-24]|36[2-57-9]|5(?:[0-389]|5[23])|6(?:[01]|9[178])|7(?:2[2-468]|3[78])|9[0145])|7[0-468]|8[68])|9(?:4[15]|5[138]|7[156]|8[189]|9(?:[1289]|3(?:31|4[357])|4[0178]))|(?:8294|96)[1-3]|2(?:57|93)[015-9]|(?:223|8699)[014-9]|(?:25[0468]|422|838)[01]|(?:48|8292|9[23])[1-9]|(?:47[59]|59[89]|8(?:68|9))[019]"], "0$1"], ["(\\d{3})(\\d{2})(\\d{4})", "$1-$2-$3", ["[14]|[289][2-9]|5[3-9]|7[2-4679]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{4})", "$1-$2-$3", ["800"], "0$1"], ["(\\d{2})(\\d{4})(\\d{4})", "$1-$2-$3", ["[25-9]"], "0$1"]], "0", 0, "(000[2569]\\d{4,6})$|(?:(?:003768)0?)|0", "$1"], "KE": ["254", "000", "(?:[17]\\d\\d|900)\\d{6}|(?:2|80)0\\d{6,7}|[4-6]\\d{6,8}", [7, 8, 9, 10], [["(\\d{2})(\\d{5,7})", "$1 $2", ["[24-6]"], "0$1"], ["(\\d{3})(\\d{6})", "$1 $2", ["[17]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[89]"], "0$1"]], "0"], "KG": ["996", "00", "8\\d{9}|[235-9]\\d{8}", [9, 10], [["(\\d{4})(\\d{5})", "$1 $2", ["3(?:1[346]|[24-79])"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[235-79]|88"], "0$1"], ["(\\d{3})(\\d{3})(\\d)(\\d{2,3})", "$1 $2 $3 $4", ["8"], "0$1"]], "0"], "KH": ["855", "00[14-9]", "1\\d{9}|[1-9]\\d{7,8}", [8, 9, 10], [["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[1-9]"], "0$1"], ["(\\d{4})(\\d{3})(\\d{3})", "$1 $2 $3", ["1"]]], "0"], "KI": ["686", "00", "(?:[37]\\d|6[0-79])\\d{6}|(?:[2-48]\\d|50)\\d{3}", [5, 8], 0, "0"], "KM": ["269", "00", "[3478]\\d{6}", [7], [["(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3", ["[3478]"]]]], "KN": ["1", "011", "(?:[58]\\d\\d|900)\\d{7}", [10], 0, "1", 0, "([2-7]\\d{6})$|1", "869$1", 0, "869"], "KP": ["850", "00|99", "85\\d{6}|(?:19\\d|[2-7])\\d{7}", [8, 10], [["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["8"], "0$1"], ["(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["[2-7]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["1"], "0$1"]], "0"], "KR": ["82", "00(?:[125689]|3(?:[46]5|91)|7(?:00|27|3|55|6[126]))", "00[1-9]\\d{8,11}|(?:[12]|5\\d{3})\\d{7}|[13-6]\\d{9}|(?:[1-6]\\d|80)\\d{7}|[3-6]\\d{4,5}|(?:00|7)0\\d{8}", [5, 6, 8, 9, 10, 11, 12, 13, 14], [["(\\d{2})(\\d{3,4})", "$1-$2", ["(?:3[1-3]|[46][1-4]|5[1-5])1"], "0$1"], ["(\\d{4})(\\d{4})", "$1-$2", ["1"]], ["(\\d)(\\d{3,4})(\\d{4})", "$1-$2-$3", ["2"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1-$2-$3", ["[36]0|8"], "0$1"], ["(\\d{2})(\\d{3,4})(\\d{4})", "$1-$2-$3", ["[1346]|5[1-5]"], "0$1"], ["(\\d{2})(\\d{4})(\\d{4})", "$1-$2-$3", ["[57]"], "0$1"], ["(\\d{2})(\\d{5})(\\d{4})", "$1-$2-$3", ["5"], "0$1"]], "0", 0, "0(8(?:[1-46-8]|5\\d\\d))?"], "KW": ["965", "00", "18\\d{5}|(?:[2569]\\d|41)\\d{6}", [7, 8], [["(\\d{4})(\\d{3,4})", "$1 $2", ["[169]|2(?:[235]|4[1-35-9])|52"]], ["(\\d{3})(\\d{5})", "$1 $2", ["[245]"]]]], "KY": ["1", "011", "(?:345|[58]\\d\\d|900)\\d{7}", [10], 0, "1", 0, "([2-9]\\d{6})$|1", "345$1", 0, "345"], "KZ": ["7", "810", "(?:33622|8\\d{8})\\d{5}|[78]\\d{9}", [10, 14], 0, "8", 0, 0, 0, 0, "33622|7", 0, "8~10"], "LA": ["856", "00", "[23]\\d{9}|3\\d{8}|(?:[235-8]\\d|41)\\d{6}", [8, 9, 10], [["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["2[13]|3[14]|[4-8]"], "0$1"], ["(\\d{2})(\\d{2})(\\d{2})(\\d{3})", "$1 $2 $3 $4", ["3"], "0$1"], ["(\\d{2})(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["[23]"], "0$1"]], "0"], "LB": ["961", "00", "[27-9]\\d{7}|[13-9]\\d{6}", [7, 8], [["(\\d)(\\d{3})(\\d{3})", "$1 $2 $3", ["[13-69]|7(?:[2-57]|62|8[0-6]|9[04-9])|8[02-9]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["[27-9]"]]], "0"], "LC": ["1", "011", "(?:[58]\\d\\d|758|900)\\d{7}", [10], 0, "1", 0, "([2-8]\\d{6})$|1", "758$1", 0, "758"], "LI": ["423", "00", "[68]\\d{8}|(?:[2378]\\d|90)\\d{5}", [7, 9], [["(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3", ["[2379]|8(?:0[09]|7)", "[2379]|8(?:0(?:02|9)|7)"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["8"]], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["69"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["6"]]], "0", 0, "(1001)|0"], "LK": ["94", "00", "[1-9]\\d{8}", [9], [["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["7"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[1-689]"], "0$1"]], "0"], "LR": ["231", "00", "(?:[2457]\\d|33|88)\\d{7}|(?:2\\d|[4-6])\\d{6}", [7, 8, 9], [["(\\d)(\\d{3})(\\d{3})", "$1 $2 $3", ["4[67]|[56]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["2"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[2-578]"], "0$1"]], "0"], "LS": ["266", "00", "(?:[256]\\d\\d|800)\\d{5}", [8], [["(\\d{4})(\\d{4})", "$1 $2", ["[2568]"]]]], "LT": ["370", "00", "(?:[3469]\\d|52|[78]0)\\d{6}", [8], [["(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["52[0-7]"], "(0-$1)", 1], ["(\\d{3})(\\d{2})(\\d{3})", "$1 $2 $3", ["[7-9]"], "0 $1", 1], ["(\\d{2})(\\d{6})", "$1 $2", ["37|4(?:[15]|6[1-8])"], "(0-$1)", 1], ["(\\d{3})(\\d{5})", "$1 $2", ["[3-6]"], "(0-$1)", 1]], "0", 0, "[08]"], "LU": ["352", "00", "35[013-9]\\d{4,8}|6\\d{8}|35\\d{2,4}|(?:[2457-9]\\d|3[0-46-9])\\d{2,9}", [4, 5, 6, 7, 8, 9, 10, 11], [["(\\d{2})(\\d{3})", "$1 $2", ["2(?:0[2-689]|[2-9])|[3-57]|8(?:0[2-9]|[13-9])|9(?:0[89]|[2-579])"]], ["(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3", ["2(?:0[2-689]|[2-9])|[3-57]|8(?:0[2-9]|[13-9])|9(?:0[89]|[2-579])"]], ["(\\d{2})(\\d{2})(\\d{3})", "$1 $2 $3", ["20[2-689]"]], ["(\\d{2})(\\d{2})(\\d{2})(\\d{1,2})", "$1 $2 $3 $4", ["2(?:[0367]|4[3-8])"]], ["(\\d{3})(\\d{2})(\\d{3})", "$1 $2 $3", ["80[01]|90[015]"]], ["(\\d{2})(\\d{2})(\\d{2})(\\d{3})", "$1 $2 $3 $4", ["20"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["6"]], ["(\\d{2})(\\d{2})(\\d{2})(\\d{2})(\\d{1,2})", "$1 $2 $3 $4 $5", ["2(?:[0367]|4[3-8])"]], ["(\\d{2})(\\d{2})(\\d{2})(\\d{1,5})", "$1 $2 $3 $4", ["[3-57]|8[13-9]|9(?:0[89]|[2-579])|(?:2|80)[2-9]"]]], 0, 0, "(15(?:0[06]|1[12]|[35]5|4[04]|6[26]|77|88|99)\\d)"], "LV": ["371", "00", "(?:[268]\\d|78|90)\\d{6}", [8], [["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["[2679]|8[01]"]]]], "LY": ["218", "00", "[2-9]\\d{8}", [9], [["(\\d{2})(\\d{7})", "$1-$2", ["[2-9]"], "0$1"]], "0"], "MA": ["212", "00", "[5-8]\\d{8}", [9], [["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["5[45]"], "0$1"], ["(\\d{4})(\\d{5})", "$1-$2", ["5(?:[19]|2[2-46-9]|3[3-9])|8(?:0[89]|92)"], "0$1"], ["(\\d{2})(\\d{7})", "$1-$2", ["8"], "0$1"], ["(\\d{3})(\\d{6})", "$1-$2", ["[5-7]"], "0$1"]], "0", 0, 0, 0, 0, 0, [["5(?:(?:18|4[0679]|5[03])\\d|2(?:[0-25-79]\\d|3[1-578]|4[02-46-8]|8[0235-7])|3(?:[0-47]\\d|5[02-9]|6[02-8]|8[014-9]|9[3-9]))\\d{5}"], ["(?:6(?:[0-79]\\d|8[0-247-9])|7(?:[016-8]\\d|2[0-8]|5[0-5]))\\d{6}"], ["80[0-7]\\d{6}"], ["89\\d{7}"], 0, 0, 0, 0, ["(?:592(?:4[0-2]|93)|80[89]\\d\\d)\\d{4}"]]], "MC": ["377", "00", "(?:[3489]|[67]\\d)\\d{7}", [8, 9], [["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["4"], "0$1"], ["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[389]"]], ["(\\d)(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4 $5", ["[67]"], "0$1"]], "0"], "MD": ["373", "00", "(?:[235-7]\\d|[89]0)\\d{6}", [8], [["(\\d{3})(\\d{5})", "$1 $2", ["[89]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["22|3"], "0$1"], ["(\\d{3})(\\d{2})(\\d{3})", "$1 $2 $3", ["[25-7]"], "0$1"]], "0"], "ME": ["382", "00", "(?:20|[3-79]\\d)\\d{6}|80\\d{6,7}", [8, 9], [["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[2-9]"], "0$1"]], "0"], "MF": ["590", "00", "(?:590\\d|7090)\\d{5}|(?:69|80|9\\d)\\d{7}", [9], 0, "0", 0, 0, 0, 0, 0, [["590(?:0[079]|[14]3|[27][79]|3[03-7]|5[0-268]|87)\\d{4}"], ["(?:69(?:0\\d\\d|1(?:2[2-9]|3[0-5])|4(?:0[89]|1[2-6]|9\\d)|6(?:1[016-9]|5[0-4]|[67]\\d))|7090[0-4])\\d{4}"], ["80[0-5]\\d{6}"], 0, 0, 0, 0, 0, ["9(?:(?:39[5-7]|76[018])\\d|475[0-6])\\d{4}"]]], "MG": ["261", "00", "[23]\\d{8}", [9], [["(\\d{2})(\\d{2})(\\d{3})(\\d{2})", "$1 $2 $3 $4", ["[23]"], "0$1"]], "0", 0, "([24-9]\\d{6})$|0", "20$1"], "MH": ["692", "011", "329\\d{4}|(?:[256]\\d|45)\\d{5}", [7], [["(\\d{3})(\\d{4})", "$1-$2", ["[2-6]"]]], "1"], "MK": ["389", "00", "[2-578]\\d{7}", [8], [["(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["2|34[47]|4(?:[37]7|5[47]|64)"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["[347]"], "0$1"], ["(\\d{3})(\\d)(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[58]"], "0$1"]], "0"], "ML": ["223", "00", "[24-9]\\d{7}", [8], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[24-9]"]]]], "MM": ["95", "00", "1\\d{5,7}|95\\d{6}|(?:[4-7]|9[0-46-9])\\d{6,8}|(?:2|8\\d)\\d{5,8}", [6, 7, 8, 9, 10], [["(\\d)(\\d{2})(\\d{3})", "$1 $2 $3", ["16|2"], "0$1"], ["(\\d{2})(\\d{2})(\\d{3})", "$1 $2 $3", ["4(?:[2-46]|5[3-5])|5|6(?:[1-689]|7[235-7])|7(?:[0-4]|5[2-7])|8[1-5]|(?:60|86)[23]"], "0$1"], ["(\\d)(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[12]|452|678|86", "[12]|452|6788|86"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[4-7]|8[1-35]"], "0$1"], ["(\\d)(\\d{3})(\\d{4,6})", "$1 $2 $3", ["9(?:2[0-4]|[35-9]|4[137-9])"], "0$1"], ["(\\d)(\\d{4})(\\d{4})", "$1 $2 $3", ["2"], "0$1"], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["8"], "0$1"], ["(\\d)(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["92"], "0$1"], ["(\\d)(\\d{5})(\\d{4})", "$1 $2 $3", ["9"], "0$1"]], "0"], "MN": ["976", "001", "[12]\\d{7,9}|[5-9]\\d{7}", [8, 9, 10], [["(\\d{2})(\\d{2})(\\d{4})", "$1 $2 $3", ["[12]1"], "0$1"], ["(\\d{4})(\\d{4})", "$1 $2", ["[5-9]"]], ["(\\d{3})(\\d{5,6})", "$1 $2", ["[12]2[1-3]"], "0$1"], ["(\\d{4})(\\d{5,6})", "$1 $2", ["[12](?:27|3[2-8]|4[2-68]|5[1-4689])", "[12](?:27|3[2-8]|4[2-68]|5[1-4689])[0-3]"], "0$1"], ["(\\d{5})(\\d{4,5})", "$1 $2", ["[12]"], "0$1"]], "0"], "MO": ["853", "00", "0800\\d{3}|(?:28|[68]\\d)\\d{6}", [7, 8], [["(\\d{4})(\\d{3})", "$1 $2", ["0"]], ["(\\d{4})(\\d{4})", "$1 $2", ["[268]"]]]], "MP": ["1", "011", "[58]\\d{9}|(?:67|90)0\\d{7}", [10], 0, "1", 0, "([2-9]\\d{6})$|1", "670$1", 0, "670"], "MQ": ["596", "00", "(?:596\\d|7091)\\d{5}|(?:69|[89]\\d)\\d{7}", [9], [["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[5-79]|8(?:0[6-9]|[36])"], "0$1"], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["8"], "0$1"]], "0"], "MR": ["222", "00", "(?:[2-4]\\d\\d|800)\\d{5}", [8], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[2-48]"]]]], "MS": ["1", "011", "(?:[58]\\d\\d|664|900)\\d{7}", [10], 0, "1", 0, "([34]\\d{6})$|1", "664$1", 0, "664"], "MT": ["356", "00", "3550\\d{4}|(?:[2579]\\d\\d|800)\\d{5}", [8], [["(\\d{4})(\\d{4})", "$1 $2", ["[2357-9]"]]]], "MU": ["230", "0(?:0|[24-7]0|3[03])", "(?:[57]|8\\d\\d)\\d{7}|[2-468]\\d{6}", [7, 8, 10], [["(\\d{3})(\\d{4})", "$1 $2", ["[2-46]|8[013]"]], ["(\\d{4})(\\d{4})", "$1 $2", ["[57]"]], ["(\\d{5})(\\d{5})", "$1 $2", ["8"]]], 0, 0, 0, 0, 0, 0, 0, "020"], "MV": ["960", "0(?:0|19)", "(?:800|9[0-57-9]\\d)\\d{7}|[34679]\\d{6}", [7, 10], [["(\\d{3})(\\d{4})", "$1-$2", ["[34679]"]], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["[89]"]]], 0, 0, 0, 0, 0, 0, 0, "00"], "MW": ["265", "00", "(?:[1289]\\d|31|77)\\d{7}|1\\d{6}", [7, 9], [["(\\d)(\\d{3})(\\d{3})", "$1 $2 $3", ["1[2-9]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["2"], "0$1"], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[137-9]"], "0$1"]], "0"], "MX": ["52", "0[09]", "[2-9]\\d{9}", [10], [["(\\d{2})(\\d{4})(\\d{4})", "$1 $2 $3", ["33|5[56]|81"]], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["[2-9]"]]], 0, 0, 0, 0, 0, 0, 0, "00"], "MY": ["60", "00", "1\\d{8,9}|(?:3\\d|[4-9])\\d{7}", [8, 9, 10], [["(\\d)(\\d{3})(\\d{4})", "$1-$2 $3", ["[4-79]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1-$2 $3", ["1(?:[02469]|[378][1-9]|53)|8", "1(?:[02469]|[37][1-9]|53|8(?:[1-46-9]|5[7-9]))|8"], "0$1"], ["(\\d)(\\d{4})(\\d{4})", "$1-$2 $3", ["3"], "0$1"], ["(\\d)(\\d{3})(\\d{2})(\\d{4})", "$1-$2-$3-$4", ["1(?:[367]|80)"]], ["(\\d{3})(\\d{3})(\\d{4})", "$1-$2 $3", ["15"], "0$1"], ["(\\d{2})(\\d{4})(\\d{4})", "$1-$2 $3", ["1"], "0$1"]], "0"], "MZ": ["258", "00", "(?:2|8\\d)\\d{7}", [8, 9], [["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["2|8[2-79]"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["8"]]]], "NA": ["264", "00", "[68]\\d{7,8}", [8, 9], [["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["88"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["6"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["87"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["8"], "0$1"]], "0"], "NC": ["687", "00", "(?:050|[2-57-9]\\d\\d)\\d{3}", [6], [["(\\d{2})(\\d{2})(\\d{2})", "$1.$2.$3", ["[02-57-9]"]]]], "NE": ["227", "00", "[027-9]\\d{7}", [8], [["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["08"]], ["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[089]|2[013]|7[0467]"]]]], "NF": ["672", "00", "[13]\\d{5}", [6], [["(\\d{2})(\\d{4})", "$1 $2", ["1[0-3]"]], ["(\\d)(\\d{5})", "$1 $2", ["[13]"]]], 0, 0, "([0-258]\\d{4})$", "3$1"], "NG": ["234", "009", "(?:20|9\\d)\\d{8}|[78]\\d{9,13}", [10, 11, 12, 13, 14], [["(\\d{3})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[7-9]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["20[129]"], "0$1"], ["(\\d{4})(\\d{2})(\\d{4})", "$1 $2 $3", ["2"], "0$1"], ["(\\d{3})(\\d{4})(\\d{4,5})", "$1 $2 $3", ["[78]"], "0$1"], ["(\\d{3})(\\d{5})(\\d{5,6})", "$1 $2 $3", ["[78]"], "0$1"]], "0"], "NI": ["505", "00", "(?:1800|[25-8]\\d{3})\\d{4}", [8], [["(\\d{4})(\\d{4})", "$1 $2", ["[125-8]"]]]], "NL": ["31", "00", "(?:[124-7]\\d\\d|3(?:[02-9]\\d|1[0-8]))\\d{6}|8\\d{6,9}|9\\d{6,10}|1\\d{4,5}", [5, 6, 7, 8, 9, 10, 11], [["(\\d{3})(\\d{4,7})", "$1 $2", ["[89]0"], "0$1"], ["(\\d{2})(\\d{7})", "$1 $2", ["66"], "0$1"], ["(\\d)(\\d{8})", "$1 $2", ["6"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["1[16-8]|2[259]|3[124]|4[17-9]|5[124679]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[1-578]|91"], "0$1"], ["(\\d{3})(\\d{3})(\\d{5})", "$1 $2 $3", ["9"], "0$1"]], "0"], "NO": ["47", "00", "(?:0|[2-9]\\d{3})\\d{4}", [5, 8], [["(\\d{3})(\\d{2})(\\d{3})", "$1 $2 $3", ["8"]], ["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[2-79]"]]], 0, 0, 0, 0, 0, "[02-689]|7[0-8]"], "NP": ["977", "00", "(?:1\\d|9)\\d{9}|[1-9]\\d{7}", [8, 10, 11], [["(\\d)(\\d{7})", "$1-$2", ["1[2-6]"], "0$1"], ["(\\d{2})(\\d{6})", "$1-$2", ["1[01]|[2-8]|9(?:[1-59]|[67][2-6])"], "0$1"], ["(\\d{3})(\\d{7})", "$1-$2", ["9"]]], "0"], "NR": ["674", "00", "(?:222|444|(?:55|8\\d)\\d|666|777|999)\\d{4}", [7], [["(\\d{3})(\\d{4})", "$1 $2", ["[24-9]"]]]], "NU": ["683", "00", "(?:[4-7]|888\\d)\\d{3}", [4, 7], [["(\\d{3})(\\d{4})", "$1 $2", ["8"]]]], "NZ": ["64", "0(?:0|161)", "[1289]\\d{9}|50\\d{5}(?:\\d{2,3})?|[27-9]\\d{7,8}|(?:[34]\\d|6[0-35-9])\\d{6}|8\\d{4,6}", [5, 6, 7, 8, 9, 10], [["(\\d{2})(\\d{3,8})", "$1 $2", ["8[1-79]"], "0$1"], ["(\\d{3})(\\d{2})(\\d{2,3})", "$1 $2 $3", ["50[036-8]|8|90", "50(?:[0367]|88)|8|90"], "0$1"], ["(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["24|[346]|7[2-57-9]|9[2-9]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["2(?:10|74)|[589]"], "0$1"], ["(\\d{2})(\\d{3,4})(\\d{4})", "$1 $2 $3", ["1|2[028]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,5})", "$1 $2 $3", ["2(?:[169]|7[0-35-9])|7"], "0$1"]], "0", 0, 0, 0, 0, 0, 0, "00"], "OM": ["968", "00", "(?:1505|[279]\\d{3}|500)\\d{4}|800\\d{5,6}", [7, 8, 9], [["(\\d{3})(\\d{4,6})", "$1 $2", ["[58]"]], ["(\\d{2})(\\d{6})", "$1 $2", ["2"]], ["(\\d{4})(\\d{4})", "$1 $2", ["[179]"]]]], "PA": ["507", "00", "(?:00800|8\\d{3})\\d{6}|[68]\\d{7}|[1-57-9]\\d{6}", [7, 8, 10, 11], [["(\\d{3})(\\d{4})", "$1-$2", ["[1-57-9]"]], ["(\\d{4})(\\d{4})", "$1-$2", ["[68]"]], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["8"]]]], "PE": ["51", "00|19(?:1[124]|77|90)00", "(?:[14-8]|9\\d)\\d{7}", [8, 9], [["(\\d{3})(\\d{5})", "$1 $2", ["80"], "(0$1)"], ["(\\d)(\\d{7})", "$1 $2", ["1"], "(0$1)"], ["(\\d{2})(\\d{6})", "$1 $2", ["[4-8]"], "(0$1)"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["9"]]], "0", 0, 0, 0, 0, 0, 0, "00", " Anexo "], "PF": ["689", "00", "4\\d{5}(?:\\d{2})?|8\\d{7,8}", [6, 8, 9], [["(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3", ["44"]], ["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["4|8[7-9]"]], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["8"]]]], "PG": ["675", "00|140[1-3]", "(?:180|[78]\\d{3})\\d{4}|(?:[2-589]\\d|64)\\d{5}", [7, 8], [["(\\d{3})(\\d{4})", "$1 $2", ["18|[2-69]|85"]], ["(\\d{4})(\\d{4})", "$1 $2", ["[78]"]]], 0, 0, 0, 0, 0, 0, 0, "00"], "PH": ["63", "00", "(?:[2-7]|9\\d)\\d{8}|2\\d{5}|(?:1800|8)\\d{7,9}", [6, 8, 9, 10, 11, 12, 13], [["(\\d)(\\d{5})", "$1 $2", ["2"], "(0$1)"], ["(\\d{4})(\\d{4,6})", "$1 $2", ["3(?:23|39|46)|4(?:2[3-6]|[35]9|4[26]|76)|544|88[245]|(?:52|64|86)2", "3(?:230|397|461)|4(?:2(?:35|[46]4|51)|396|4(?:22|63)|59[347]|76[15])|5(?:221|446)|642[23]|8(?:622|8(?:[24]2|5[13]))"], "(0$1)"], ["(\\d{5})(\\d{4})", "$1 $2", ["346|4(?:27|9[35])|883", "3469|4(?:279|9(?:30|56))|8834"], "(0$1)"], ["(\\d)(\\d{4})(\\d{4})", "$1 $2 $3", ["2"], "(0$1)"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[3-7]|8[2-8]"], "(0$1)"], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["[89]"], "0$1"], ["(\\d{4})(\\d{3})(\\d{4})", "$1 $2 $3", ["1"]], ["(\\d{4})(\\d{1,2})(\\d{3})(\\d{4})", "$1 $2 $3 $4", ["1"]]], "0"], "PK": ["92", "00", "122\\d{6}|[24-8]\\d{10,11}|9(?:[013-9]\\d{8,10}|2(?:[01]\\d\\d|2(?:[06-8]\\d|1[01]))\\d{7})|(?:[2-8]\\d{3}|92(?:[0-7]\\d|8[1-9]))\\d{6}|[24-9]\\d{8}|[89]\\d{7}", [8, 9, 10, 11, 12], [["(\\d{3})(\\d{3})(\\d{2,7})", "$1 $2 $3", ["[89]0"], "0$1"], ["(\\d{4})(\\d{5})", "$1 $2", ["1"]], ["(\\d{3})(\\d{6,7})", "$1 $2", ["2(?:3[2358]|4[2-4]|9[2-8])|45[3479]|54[2-467]|60[468]|72[236]|8(?:2[2-689]|3[23578]|4[3478]|5[2356])|9(?:2[2-8]|3[27-9]|4[2-6]|6[3569]|9[25-8])", "9(?:2[3-8]|98)|(?:2(?:3[2358]|4[2-4]|9[2-8])|45[3479]|54[2-467]|60[468]|72[236]|8(?:2[2-689]|3[23578]|4[3478]|5[2356])|9(?:22|3[27-9]|4[2-6]|6[3569]|9[25-7]))[2-9]"], "(0$1)"], ["(\\d{2})(\\d{7,8})", "$1 $2", ["(?:2[125]|4[0-246-9]|5[1-35-7]|6[1-8]|7[14]|8[16]|91)[2-9]"], "(0$1)"], ["(\\d{5})(\\d{5})", "$1 $2", ["58"], "(0$1)"], ["(\\d{3})(\\d{7})", "$1 $2", ["3"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["2[125]|4[0-246-9]|5[1-35-7]|6[1-8]|7[14]|8[16]|91"], "(0$1)"], ["(\\d{3})(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["[24-9]"], "(0$1)"]], "0"], "PL": ["48", "00", "(?:6|8\\d\\d)\\d{7}|[1-9]\\d{6}(?:\\d{2})?|[26]\\d{5}", [6, 7, 8, 9, 10], [["(\\d{5})", "$1", ["19"]], ["(\\d{3})(\\d{3})", "$1 $2", ["11|20|64"]], ["(\\d{2})(\\d{2})(\\d{3})", "$1 $2 $3", ["(?:1[2-8]|2[2-69]|3[2-4]|4[1-468]|5[24-689]|6[1-3578]|7[14-7]|8[1-79]|9[145])1", "(?:1[2-8]|2[2-69]|3[2-4]|4[1-468]|5[24-689]|6[1-3578]|7[14-7]|8[1-79]|9[145])19"]], ["(\\d{3})(\\d{2})(\\d{2,3})", "$1 $2 $3", ["64"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["21|39|45|5[0137]|6[0469]|7[02389]|8(?:0[14]|8)"]], ["(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["1[2-8]|[2-7]|8[1-79]|9[145]"]], ["(\\d{3})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["8"]]]], "PM": ["508", "00", "[45]\\d{5}|(?:708|8\\d\\d)\\d{6}", [6, 9], [["(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3", ["[45]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["7"]], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["8"], "0$1"]], "0"], "PR": ["1", "011", "(?:[589]\\d\\d|787)\\d{7}", [10], 0, "1", 0, 0, 0, 0, "787|939"], "PS": ["970", "00", "[2489]2\\d{6}|(?:1\\d|5)\\d{8}", [8, 9, 10], [["(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["[2489]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["5"], "0$1"], ["(\\d{4})(\\d{3})(\\d{3})", "$1 $2 $3", ["1"]]], "0"], "PT": ["351", "00", "1693\\d{5}|(?:[26-9]\\d|30)\\d{7}", [9], [["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["2[12]"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["16|[236-9]"]]]], "PW": ["680", "01[12]", "(?:[24-8]\\d\\d|345|900)\\d{4}", [7], [["(\\d{3})(\\d{4})", "$1 $2", ["[2-9]"]]]], "PY": ["595", "00", "59\\d{4,6}|9\\d{5,10}|(?:[2-46-8]\\d|5[0-8])\\d{4,7}", [6, 7, 8, 9, 10, 11], [["(\\d{3})(\\d{3,6})", "$1 $2", ["[2-9]0"], "0$1"], ["(\\d{2})(\\d{5})", "$1 $2", ["[26]1|3[289]|4[1246-8]|7[1-3]|8[1-36]"], "(0$1)"], ["(\\d{3})(\\d{4,5})", "$1 $2", ["2[279]|3[13-5]|4[359]|5|6(?:[34]|7[1-46-8])|7[46-8]|85"], "(0$1)"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["2[14-68]|3[26-9]|4[1246-8]|6(?:1|75)|7[1-35]|8[1-36]"], "(0$1)"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["87"]], ["(\\d{3})(\\d{6})", "$1 $2", ["9(?:[5-79]|8[1-7])"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[2-8]"], "0$1"], ["(\\d{4})(\\d{3})(\\d{4})", "$1 $2 $3", ["9"]]], "0"], "QA": ["974", "00", "800\\d{4}|(?:2|800)\\d{6}|(?:0080|[3-7])\\d{7}", [7, 8, 9, 11], [["(\\d{3})(\\d{4})", "$1 $2", ["2[136]|8"]], ["(\\d{4})(\\d{4})", "$1 $2", ["[3-7]"]]]], "RE": ["262", "00", "709\\d{6}|(?:26|[689]\\d)\\d{7}", [9], [["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[26-9]"], "0$1"]], "0", 0, 0, 0, 0, 0, [["26(?:2\\d\\d|3(?:0\\d|1[0-6]))\\d{4}"], ["(?:69(?:2\\d\\d|3(?:[06][0-6]|1[0-3]|2[0-2]|3[0-39]|4\\d|5[0-5]|7[0-37]|8[0-8]|9[0-479]))|7092[0-3])\\d{4}"], ["80\\d{7}"], ["89[1-37-9]\\d{6}"], 0, 0, 0, 0, ["9(?:399[0-3]|479[0-6]|76(?:2[278]|3[0-37]))\\d{4}"], ["8(?:1[019]|2[0156]|84|90)\\d{6}"]]], "RO": ["40", "00", "(?:[236-8]\\d|90)\\d{7}|[23]\\d{5}", [6, 9], [["(\\d{3})(\\d{3})", "$1 $2", ["2[3-6]", "2[3-6]\\d9"], "0$1"], ["(\\d{2})(\\d{4})", "$1 $2", ["219|31"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[23]1"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[236-9]"], "0$1"]], "0", 0, 0, 0, 0, 0, 0, 0, " int "], "RS": ["381", "00", "38[02-9]\\d{6,9}|6\\d{7,9}|90\\d{4,8}|38\\d{5,6}|(?:7\\d\\d|800)\\d{3,9}|(?:[12]\\d|3[0-79])\\d{5,10}", [6, 7, 8, 9, 10, 11, 12], [["(\\d{3})(\\d{3,9})", "$1 $2", ["(?:2[389]|39)0|[7-9]"], "0$1"], ["(\\d{2})(\\d{5,10})", "$1 $2", ["[1-36]"], "0$1"]], "0"], "RU": ["7", "810", "8\\d{13}|[347-9]\\d{9}", [10, 14], [["(\\d{4})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["7(?:1[0-8]|2[1-9])", "7(?:1(?:[0-356]2|4[29]|7|8[27])|2(?:1[23]|[2-9]2))", "7(?:1(?:[0-356]2|4[29]|7|8[27])|2(?:13[03-69]|62[013-9]))|72[1-57-9]2"], "8 ($1)", 1], ["(\\d{5})(\\d)(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["7(?:1[0-68]|2[1-9])", "7(?:1(?:[06][3-6]|[18]|2[35]|[3-5][3-5])|2(?:[13][3-5]|[24-689]|7[457]))", "7(?:1(?:0(?:[356]|4[023])|[18]|2(?:3[013-9]|5)|3[45]|43[013-79]|5(?:3[1-8]|4[1-7]|5)|6(?:3[0-35-9]|[4-6]))|2(?:1(?:3[178]|[45])|[24-689]|3[35]|7[457]))|7(?:14|23)4[0-8]|71(?:33|45)[1-79]"], "8 ($1)", 1], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["7"], "8 ($1)", 1], ["(\\d{3})(\\d{3})(\\d{2})(\\d{2})", "$1 $2-$3-$4", ["[349]|8(?:[02-7]|1[1-8])"], "8 ($1)", 1], ["(\\d{4})(\\d{4})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["8"], "8 ($1)"]], "8", 0, 0, 0, 0, 0, [["336(?:[013-9]\\d|2[013-9])\\d{5}|(?:3(?:0[12]|4[1-35-79]|5[1-3]|65|8[1-58]|9[0145])|4(?:01|1[1356]|2[13467]|7[1-5]|8[1-7]|9[1-689])|8(?:1[1-8]|2[01]|3[13-6]|4[0-8]|5[15-7]|6[0-35-79]|7[1-37-9]))\\d{7}", [10]], ["9\\d{9}", [10]], ["8(?:0[04]|108\\d{3})\\d{7}"], ["80[39]\\d{7}", [10]], ["808\\d{7}", [10]]], "8~10"], "RW": ["250", "00", "(?:06|[27]\\d\\d|[89]00)\\d{6}", [8, 9], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["0"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["2"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[7-9]"], "0$1"]], "0"], "SA": ["966", "00", "(?:[15]\\d|800|92)\\d{7}", [9, 10], [["(\\d{4})(\\d{5})", "$1 $2", ["9"]], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["1"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["5"], "0$1"], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["8"]]], "0"], "SB": ["677", "0[01]", "[6-9]\\d{6}|[1-6]\\d{4}", [5, 7], [["(\\d{2})(\\d{5})", "$1 $2", ["6[89]|7|8[4-9]|9(?:[1-8]|9[0-8])"]]]], "SC": ["248", "010|0[0-2]", "(?:[2489]\\d|64)\\d{5}", [7], [["(\\d)(\\d{3})(\\d{3})", "$1 $2 $3", ["[246]|9[57]"]]], 0, 0, 0, 0, 0, 0, 0, "00"], "SD": ["249", "00", "[19]\\d{8}", [9], [["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[19]"], "0$1"]], "0"], "SE": ["46", "00", "(?:[26]\\d\\d|9)\\d{9}|[1-9]\\d{8}|[1-689]\\d{7}|[1-4689]\\d{6}|2\\d{5}", [6, 7, 8, 9, 10, 12], [["(\\d{2})(\\d{2,3})(\\d{2})", "$1-$2 $3", ["20"], "0$1", 0, "$1 $2 $3"], ["(\\d{3})(\\d{4})", "$1-$2", ["9(?:00|39|44|9)"], "0$1", 0, "$1 $2"], ["(\\d{2})(\\d{3})(\\d{2})", "$1-$2 $3", ["[12][136]|3[356]|4[0246]|6[03]|90[1-9]"], "0$1", 0, "$1 $2 $3"], ["(\\d)(\\d{2,3})(\\d{2})(\\d{2})", "$1-$2 $3 $4", ["8"], "0$1", 0, "$1 $2 $3 $4"], ["(\\d{3})(\\d{2,3})(\\d{2})", "$1-$2 $3", ["1[2457]|2(?:[247-9]|5[0138])|3[0247-9]|4[1357-9]|5[0-35-9]|6(?:[125689]|4[02-57]|7[0-2])|9(?:[125-8]|3[02-5]|4[0-3])"], "0$1", 0, "$1 $2 $3"], ["(\\d{3})(\\d{2,3})(\\d{3})", "$1-$2 $3", ["9(?:00|39|44)"], "0$1", 0, "$1 $2 $3"], ["(\\d{2})(\\d{2,3})(\\d{2})(\\d{2})", "$1-$2 $3 $4", ["1[13689]|2[0136]|3[1356]|4[0246]|54|6[03]|90[1-9]"], "0$1", 0, "$1 $2 $3 $4"], ["(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1-$2 $3 $4", ["10|7"], "0$1", 0, "$1 $2 $3 $4"], ["(\\d)(\\d{3})(\\d{3})(\\d{2})", "$1-$2 $3 $4", ["8"], "0$1", 0, "$1 $2 $3 $4"], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1-$2 $3 $4", ["[13-5]|2(?:[247-9]|5[0138])|6(?:[124-689]|7[0-2])|9(?:[125-8]|3[02-5]|4[0-3])"], "0$1", 0, "$1 $2 $3 $4"], ["(\\d{3})(\\d{2})(\\d{2})(\\d{3})", "$1-$2 $3 $4", ["9"], "0$1", 0, "$1 $2 $3 $4"], ["(\\d{3})(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1-$2 $3 $4 $5", ["[26]"], "0$1", 0, "$1 $2 $3 $4 $5"]], "0"], "SG": ["65", "0[0-3]\\d", "(?:(?:1\\d|8)\\d\\d|7000)\\d{7}|[3689]\\d{7}", [8, 10, 11], [["(\\d{4})(\\d{4})", "$1 $2", ["[369]|8(?:0[1-9]|[1-9])"]], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["8"]], ["(\\d{4})(\\d{4})(\\d{3})", "$1 $2 $3", ["7"]], ["(\\d{4})(\\d{3})(\\d{4})", "$1 $2 $3", ["1"]]]], "SH": ["290", "00", "(?:[256]\\d|8)\\d{3}", [4, 5], 0, 0, 0, 0, 0, 0, "[256]"], "SI": ["386", "00|10(?:22|66|88|99)", "[1-7]\\d{7}|8\\d{4,7}|90\\d{4,6}", [5, 6, 7, 8], [["(\\d{2})(\\d{3,6})", "$1 $2", ["8[09]|9"], "0$1"], ["(\\d{3})(\\d{5})", "$1 $2", ["59|8"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["[37][01]|4[0139]|51|6"], "0$1"], ["(\\d)(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[1-57]"], "(0$1)"]], "0", 0, 0, 0, 0, 0, 0, "00"], "SJ": ["47", "00", "0\\d{4}|(?:[489]\\d|79)\\d{6}", [5, 8], 0, 0, 0, 0, 0, 0, "79"], "SK": ["421", "00", "[2-689]\\d{8}|[2-59]\\d{6}|[2-5]\\d{5}", [6, 7, 9], [["(\\d)(\\d{2})(\\d{3,4})", "$1 $2 $3", ["21"], "0$1"], ["(\\d{2})(\\d{2})(\\d{2,3})", "$1 $2 $3", ["[3-5][1-8]1", "[3-5][1-8]1[67]"], "0$1"], ["(\\d)(\\d{3})(\\d{3})(\\d{2})", "$1/$2 $3 $4", ["2"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[689]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1/$2 $3 $4", ["[3-5]"], "0$1"]], "0"], "SL": ["232", "00", "(?:[237-9]\\d|66)\\d{6}", [8], [["(\\d{2})(\\d{6})", "$1 $2", ["[236-9]"], "(0$1)"]], "0"], "SM": ["378", "00", "(?:0549|[5-7]\\d)\\d{6}", [8, 10], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[5-7]"]], ["(\\d{4})(\\d{6})", "$1 $2", ["0"]]], 0, 0, "([89]\\d{5})$", "0549$1"], "SN": ["221", "00", "(?:[378]\\d|93)\\d{7}", [9], [["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["8"]], ["(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[379]"]]]], "SO": ["252", "00", "[346-9]\\d{8}|[12679]\\d{7}|[1-5]\\d{6}|[1348]\\d{5}", [6, 7, 8, 9], [["(\\d{2})(\\d{4})", "$1 $2", ["8[125]"]], ["(\\d{6})", "$1", ["[134]"]], ["(\\d)(\\d{6})", "$1 $2", ["[15]|2[0-79]|3[0-46-8]|4[0-7]"]], ["(\\d)(\\d{7})", "$1 $2", ["(?:2|90)4|[67]"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[348]|64|79|90"]], ["(\\d{2})(\\d{5,7})", "$1 $2", ["1|28|6[0-35-9]|7[67]|9[2-9]"]]], "0"], "SR": ["597", "00", "(?:[2-5]|[6-8]\\d|90)\\d{5}", [6, 7], [["(\\d{2})(\\d{2})(\\d{2})", "$1-$2-$3", ["56"]], ["(\\d{3})(\\d{3})", "$1-$2", ["[2-5]"]], ["(\\d{3})(\\d{4})", "$1-$2", ["[6-9]"]]]], "SS": ["211", "00", "[19]\\d{8}", [9], [["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[19]"], "0$1"]], "0"], "ST": ["239", "00", "(?:22|9\\d)\\d{5}", [7], [["(\\d{3})(\\d{4})", "$1 $2", ["[29]"]]]], "SV": ["503", "00", "[25-7]\\d{7}|(?:80\\d|900)\\d{4}(?:\\d{4})?", [7, 8, 11], [["(\\d{3})(\\d{4})", "$1 $2", ["[89]"]], ["(\\d{4})(\\d{4})", "$1 $2", ["[25-7]"]], ["(\\d{3})(\\d{4})(\\d{4})", "$1 $2 $3", ["[89]"]]]], "SX": ["1", "011", "7215\\d{6}|(?:[58]\\d\\d|900)\\d{7}", [10], 0, "1", 0, "(5\\d{6})$|1", "721$1", 0, "721"], "SY": ["963", "00", "[1-359]\\d{8}|[1-5]\\d{7}", [8, 9], [["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[1-4]|5[1-3]"], "0$1", 1], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[59]"], "0$1", 1]], "0"], "SZ": ["268", "00", "0800\\d{4}|(?:[237]\\d|900)\\d{6}", [8, 9], [["(\\d{4})(\\d{4})", "$1 $2", ["[0237]"]], ["(\\d{5})(\\d{4})", "$1 $2", ["9"]]]], "TA": ["290", "00", "8\\d{3}", [4], 0, 0, 0, 0, 0, 0, "8"], "TC": ["1", "011", "(?:[58]\\d\\d|649|900)\\d{7}", [10], 0, "1", 0, "([2-479]\\d{6})$|1", "649$1", 0, "649"], "TD": ["235", "00|16", "(?:22|30|[689]\\d|77)\\d{6}", [8], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[236-9]"]]], 0, 0, 0, 0, 0, 0, 0, "00"], "TG": ["228", "00", "[279]\\d{7}", [8], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[279]"]]]], "TH": ["66", "00[1-9]", "(?:001800|[2-57]|[689]\\d)\\d{7}|1\\d{7,9}", [8, 9, 10, 13], [["(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["2"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[13-9]"], "0$1"], ["(\\d{4})(\\d{3})(\\d{3})", "$1 $2 $3", ["1"]]], "0"], "TJ": ["992", "810", "(?:[0-57-9]\\d|66)\\d{7}", [9], [["(\\d{6})(\\d)(\\d{2})", "$1 $2 $3", ["331", "3317"]], ["(\\d{3})(\\d{2})(\\d{4})", "$1 $2 $3", ["44[02-479]|[34]7"]], ["(\\d{4})(\\d)(\\d{4})", "$1 $2 $3", ["3(?:[1245]|3[12])"]], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["\\d"]]], 0, 0, 0, 0, 0, 0, 0, "8~10"], "TK": ["690", "00", "[2-47]\\d{3,6}", [4, 5, 6, 7]], "TL": ["670", "00", "7\\d{7}|(?:[2-47]\\d|[89]0)\\d{5}", [7, 8], [["(\\d{3})(\\d{4})", "$1 $2", ["[2-489]|70"]], ["(\\d{4})(\\d{4})", "$1 $2", ["7"]]]], "TM": ["993", "810", "(?:[1-6]\\d|71)\\d{6}", [8], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2-$3-$4", ["12"], "(8 $1)"], ["(\\d{3})(\\d)(\\d{2})(\\d{2})", "$1 $2-$3-$4", ["[1-5]"], "(8 $1)"], ["(\\d{2})(\\d{6})", "$1 $2", ["[67]"], "8 $1"]], "8", 0, 0, 0, 0, 0, 0, "8~10"], "TN": ["216", "00", "[2-57-9]\\d{7}", [8], [["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["[2-57-9]"]]]], "TO": ["676", "00", "(?:0800|(?:[5-8]\\d\\d|999)\\d)\\d{3}|[2-8]\\d{4}", [5, 7], [["(\\d{2})(\\d{3})", "$1-$2", ["[2-4]|50|6[09]|7[0-24-69]|8[05]"]], ["(\\d{4})(\\d{3})", "$1 $2", ["0"]], ["(\\d{3})(\\d{4})", "$1 $2", ["[5-9]"]]]], "TR": ["90", "00", "4\\d{6}|8\\d{11,12}|(?:[2-58]\\d\\d|900)\\d{7}", [7, 10, 12, 13], [["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["512|8[01589]|90"], "0$1", 1], ["(\\d{3})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["5(?:[0-59]|61)", "5(?:[0-59]|61[06])", "5(?:[0-59]|61[06]1)"], "0$1", 1], ["(\\d{3})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[24][1-8]|3[1-9]"], "(0$1)", 1], ["(\\d{3})(\\d{3})(\\d{6,7})", "$1 $2 $3", ["80"], "0$1", 1]], "0"], "TT": ["1", "011", "(?:[58]\\d\\d|900)\\d{7}", [10], 0, "1", 0, "([2-46-8]\\d{6})$|1", "868$1", 0, "868"], "TV": ["688", "00", "(?:2|7\\d\\d|90)\\d{4}", [5, 6, 7], [["(\\d{2})(\\d{3})", "$1 $2", ["2"]], ["(\\d{2})(\\d{4})", "$1 $2", ["90"]], ["(\\d{2})(\\d{5})", "$1 $2", ["7"]]]], "TW": ["886", "0(?:0[25-79]|19)", "[2-689]\\d{8}|7\\d{9,10}|[2-8]\\d{7}|2\\d{6}", [7, 8, 9, 10, 11], [["(\\d{2})(\\d)(\\d{4})", "$1 $2 $3", ["202"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[258]0"], "0$1"], ["(\\d)(\\d{3,4})(\\d{4})", "$1 $2 $3", ["[23568]|4(?:0[02-48]|[1-47-9])|7[1-9]", "[23568]|4(?:0[2-48]|[1-47-9])|(?:400|7)[1-9]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[49]"], "0$1"], ["(\\d{2})(\\d{4})(\\d{4,5})", "$1 $2 $3", ["7"], "0$1"]], "0", 0, 0, 0, 0, 0, 0, 0, "#"], "TZ": ["255", "00[056]", "(?:[25-8]\\d|41|90)\\d{7}", [9], [["(\\d{3})(\\d{2})(\\d{4})", "$1 $2 $3", ["[89]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[24]"], "0$1"], ["(\\d{2})(\\d{7})", "$1 $2", ["5"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[67]"], "0$1"]], "0"], "UA": ["380", "00", "[89]\\d{9}|[3-9]\\d{8}", [9, 10], [["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["6[12][29]|(?:3[1-8]|4[136-8]|5[12457]|6[49])2|(?:56|65)[24]", "6[12][29]|(?:35|4[1378]|5[12457]|6[49])2|(?:56|65)[24]|(?:3[1-46-8]|46)2[013-9]"], "0$1"], ["(\\d{4})(\\d{5})", "$1 $2", ["3[1-8]|4(?:[1367]|[45][6-9]|8[4-6])|5(?:[1-5]|6[0135689]|7[4-6])|6(?:[12][3-7]|[459])", "3[1-8]|4(?:[1367]|[45][6-9]|8[4-6])|5(?:[1-5]|6(?:[015689]|3[02389])|7[4-6])|6(?:[12][3-7]|[459])"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[3-7]|89|9[1-9]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[89]"], "0$1"]], "0", 0, 0, 0, 0, 0, 0, "0~0"], "UG": ["256", "00[057]", "800\\d{6}|(?:[29]0|[347]\\d)\\d{7}", [9], [["(\\d{4})(\\d{5})", "$1 $2", ["202", "2024"], "0$1"], ["(\\d{3})(\\d{6})", "$1 $2", ["[27-9]|4(?:6[45]|[7-9])"], "0$1"], ["(\\d{2})(\\d{7})", "$1 $2", ["[34]"], "0$1"]], "0"], "US": ["1", "011", "[2-9]\\d{9}|3\\d{6}", [10], [["(\\d{3})(\\d{4})", "$1-$2", ["310"], 0, 1], ["(\\d{3})(\\d{3})(\\d{4})", "($1) $2-$3", ["[2-9]"], 0, 1, "$1-$2-$3"]], "1", 0, 0, 0, 0, 0, [["3052(?:0[0-8]|[1-9]\\d)\\d{4}|(?:2742|305[3-9])\\d{6}|(?:472|983)[2-47-9]\\d{6}|(?:2(?:0[1-35-9]|1[02-9]|2[03-57-9]|3[1459]|4[08]|5[1-46]|6[0279]|7[0269]|8[13])|3(?:0[1-47-9]|1[02-9]|2[013-79]|3[0-24679]|4[167]|5[0-2]|6[01349]|8[056])|4(?:0[124-9]|1[02-579]|2[3-5]|3[0245]|4[023578]|58|6[349]|7[0589]|8[04])|5(?:0[1-57-9]|1[0235-8]|20|3[0149]|4[01]|5[179]|6[1-47]|7[0-5]|8[0256])|6(?:0[1-35-9]|1[024-9]|2[03689]|3[016]|4[0156]|5[01679]|6[0-279]|78|8[0-269])|7(?:0[1-46-8]|1[2-9]|2[04-8]|3[0-247]|4[0378]|5[47]|6[02359]|7[0-59]|8[156])|8(?:0[1-68]|1[02-8]|2[0168]|3[0-2589]|4[03578]|5[046-9]|6[02-5]|7[028])|9(?:0[1346-9]|1[02-9]|2[0589]|3[0146-8]|4[01357-9]|5[12469]|7[0-3589]|8[04-69]))[2-9]\\d{6}"], [""], ["8(?:00|33|44|55|66|77|88)[2-9]\\d{6}"], ["900[2-9]\\d{6}"], ["52(?:3(?:[2-46-9][02-9]\\d|5(?:[02-46-9]\\d|5[0-46-9]))|4(?:[2-478][02-9]\\d|5(?:[034]\\d|2[024-9]|5[0-46-9])|6(?:0[1-9]|[2-9]\\d)|9(?:[05-9]\\d|2[0-5]|49)))\\d{4}|52[34][2-9]1[02-9]\\d{4}|5(?:00|2[125-9]|33|44|66|77|88)[2-9]\\d{6}"], 0, 0, 0, ["305209\\d{4}"]]], "UY": ["598", "0(?:0|1[3-9]\\d)", "0004\\d{2,9}|[1249]\\d{7}|2\\d{3,4}|(?:[49]\\d|80)\\d{5}", [4, 5, 6, 7, 8, 9, 10, 11, 12, 13], [["(\\d{4,5})", "$1", ["21"]], ["(\\d{3})(\\d{3,4})", "$1 $2", ["0"]], ["(\\d{3})(\\d{4})", "$1 $2", ["[49]0|8"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["9"], "0$1"], ["(\\d{4})(\\d{4})", "$1 $2", ["[124]"]], ["(\\d{3})(\\d{3})(\\d{2,4})", "$1 $2 $3", ["0"]], ["(\\d{3})(\\d{3})(\\d{3})(\\d{2,4})", "$1 $2 $3 $4", ["0"]]], "0", 0, 0, 0, 0, 0, 0, "00", " int. "], "UZ": ["998", "00", "(?:20|33|[5-9]\\d)\\d{7}", [9], [["(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[235-9]"]]]], "VA": ["39", "00", "0\\d{5,10}|3[0-8]\\d{7,10}|55\\d{8}|8\\d{5}(?:\\d{2,4})?|(?:1\\d|39)\\d{7,8}", [6, 7, 8, 9, 10, 11, 12], 0, 0, 0, 0, 0, 0, "06698"], "VC": ["1", "011", "(?:[58]\\d\\d|784|900)\\d{7}", [10], 0, "1", 0, "([2-7]\\d{6})$|1", "784$1", 0, "784"], "VE": ["58", "00", "[68]00\\d{7}|(?:[24]\\d|[59]0)\\d{8}", [10], [["(\\d{3})(\\d{7})", "$1-$2", ["[24-689]"], "0$1"]], "0"], "VG": ["1", "011", "(?:284|[58]\\d\\d|900)\\d{7}", [10], 0, "1", 0, "([2-578]\\d{6})$|1", "284$1", 0, "284"], "VI": ["1", "011", "[58]\\d{9}|(?:34|90)0\\d{7}", [10], 0, "1", 0, "([2-9]\\d{6})$|1", "340$1", 0, "340"], "VN": ["84", "00", "[12]\\d{9}|[135-9]\\d{8}|[16]\\d{7}|[16-8]\\d{6}", [7, 8, 9, 10], [["(\\d{2})(\\d{5})", "$1 $2", ["80"], "0$1", 1], ["(\\d{4})(\\d{4,6})", "$1 $2", ["1"], 0, 1], ["(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["6"], "0$1", 1], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[357-9]"], "0$1", 1], ["(\\d{2})(\\d{4})(\\d{4})", "$1 $2 $3", ["2[48]"], "0$1", 1], ["(\\d{3})(\\d{4})(\\d{3})", "$1 $2 $3", ["2"], "0$1", 1]], "0"], "VU": ["678", "00", "[57-9]\\d{6}|(?:[238]\\d|48)\\d{3}", [5, 7], [["(\\d{3})(\\d{4})", "$1 $2", ["[57-9]"]]]], "WF": ["681", "00", "(?:40|72|8\\d{4})\\d{4}|[89]\\d{5}", [6, 9], [["(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3", ["[47-9]"]], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["8"]]]], "WS": ["685", "0", "(?:[2-6]|8\\d{5})\\d{4}|[78]\\d{6}|[68]\\d{5}", [5, 6, 7, 10], [["(\\d{5})", "$1", ["[2-5]|6[1-9]"]], ["(\\d{3})(\\d{3,7})", "$1 $2", ["[68]"]], ["(\\d{2})(\\d{5})", "$1 $2", ["7"]]]], "XK": ["383", "00", "2\\d{7,8}|3\\d{7,11}|(?:4\\d\\d|[89]00)\\d{5}", [8, 9, 10, 11, 12], [["(\\d{3})(\\d{5})", "$1 $2", ["[89]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["[2-4]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["2|39"], "0$1"], ["(\\d{2})(\\d{7,10})", "$1 $2", ["3"], "0$1"]], "0"], "YE": ["967", "00", "(?:1|7\\d)\\d{7}|[1-7]\\d{6}", [7, 8, 9], [["(\\d)(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[1-6]|7(?:[24-6]|8[0-7])"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["7"], "0$1"]], "0"], "YT": ["262", "00", "7093\\d{5}|(?:80|9\\d)\\d{7}|(?:26|63)9\\d{6}", [9], 0, "0", 0, 0, 0, 0, 0, [["269(?:0[0-467]|15|5[0-4]|6\\d|[78]0)\\d{4}"], ["(?:639(?:0[0-79]|1[019]|[267]\\d|3[09]|40|5[05-9]|9[04-79])|7093[5-7])\\d{4}"], ["80\\d{7}"], 0, 0, 0, 0, 0, ["9(?:(?:39|47)8[01]|769\\d)\\d{4}"]]], "ZA": ["27", "00", "[1-79]\\d{8}|8\\d{4,9}", [5, 6, 7, 8, 9, 10], [["(\\d{2})(\\d{3,4})", "$1 $2", ["8[1-4]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{2,3})", "$1 $2 $3", ["8[1-4]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["860"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[1-9]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["8"], "0$1"]], "0"], "ZM": ["260", "00", "800\\d{6}|(?:21|[579]\\d|63)\\d{7}", [9], [["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[28]"], "0$1"], ["(\\d{2})(\\d{7})", "$1 $2", ["[579]"], "0$1"]], "0"], "ZW": ["263", "00", "2(?:[0-57-9]\\d{6,8}|6[0-24-9]\\d{6,7})|[38]\\d{9}|[35-8]\\d{8}|[3-6]\\d{7}|[1-689]\\d{6}|[1-3569]\\d{5}|[1356]\\d{4}", [5, 6, 7, 8, 9, 10], [["(\\d{3})(\\d{3,5})", "$1 $2", ["2(?:0[45]|2[278]|[49]8)|3(?:[09]8|17)|6(?:[29]8|37|75)|[23][78]|(?:33|5[15]|6[68])[78]"], "0$1"], ["(\\d)(\\d{3})(\\d{2,4})", "$1 $2 $3", ["[49]"], "0$1"], ["(\\d{3})(\\d{4})", "$1 $2", ["80"], "0$1"], ["(\\d{2})(\\d{7})", "$1 $2", ["24|8[13-59]|(?:2[05-79]|39|5[45]|6[15-8])2", "2(?:02[014]|4|[56]20|[79]2)|392|5(?:42|525)|6(?:[16-8]21|52[013])|8[13-59]"], "(0$1)"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["7"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["2(?:1[39]|2[0157]|[378]|[56][14])|3(?:12|29)", "2(?:1[39]|2[0157]|[378]|[56][14])|3(?:123|29)"], "0$1"], ["(\\d{4})(\\d{6})", "$1 $2", ["8"], "0$1"], ["(\\d{2})(\\d{3,5})", "$1 $2", ["1|2(?:0[0-36-9]|12|29|[56])|3(?:1[0-689]|[24-6])|5(?:[0236-9]|1[2-4])|6(?:[013-59]|7[0-46-9])|(?:33|55|6[68])[0-69]|(?:29|3[09]|62)[0-79]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["29[013-9]|39|54"], "0$1"], ["(\\d{4})(\\d{3,5})", "$1 $2", ["(?:25|54)8", "258|5483"], "0$1"]], "0"] }, "nonGeographic": { "800": ["800", 0, "(?:00|[1-9]\\d)\\d{6}", [8], [["(\\d{4})(\\d{4})", "$1 $2", ["\\d"]]], 0, 0, 0, 0, 0, 0, [0, 0, ["(?:00|[1-9]\\d)\\d{6}"]]], "808": ["808", 0, "[1-9]\\d{7}", [8], [["(\\d{4})(\\d{4})", "$1 $2", ["[1-9]"]]], 0, 0, 0, 0, 0, 0, [0, 0, 0, 0, 0, 0, 0, 0, 0, ["[1-9]\\d{7}"]]], "870": ["870", 0, "7\\d{11}|[235-7]\\d{8}", [9, 12], [["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[235-7]"]]], 0, 0, 0, 0, 0, 0, [0, ["(?:[356]|774[45])\\d{8}|7[6-8]\\d{7}"], 0, 0, 0, 0, 0, 0, ["2\\d{8}", [9]]]], "878": ["878", 0, "10\\d{10}", [12], [["(\\d{2})(\\d{5})(\\d{5})", "$1 $2 $3", ["1"]]], 0, 0, 0, 0, 0, 0, [0, 0, 0, 0, 0, 0, 0, 0, ["10\\d{10}"]]], "881": ["881", 0, "6\\d{9}|[0-36-9]\\d{8}", [9, 10], [["(\\d)(\\d{3})(\\d{5})", "$1 $2 $3", ["[0-37-9]"]], ["(\\d)(\\d{3})(\\d{5,6})", "$1 $2 $3", ["6"]]], 0, 0, 0, 0, 0, 0, [0, ["6\\d{9}|[0-36-9]\\d{8}"]]], "882": ["882", 0, "[13]\\d{6}(?:\\d{2,5})?|[19]\\d{7}|(?:[25]\\d\\d|4)\\d{7}(?:\\d{2})?", [7, 8, 9, 10, 11, 12], [["(\\d{2})(\\d{5})", "$1 $2", ["16|342"]], ["(\\d{2})(\\d{6})", "$1 $2", ["49"]], ["(\\d{2})(\\d{2})(\\d{4})", "$1 $2 $3", ["1[36]|9"]], ["(\\d{2})(\\d{4})(\\d{3})", "$1 $2 $3", ["3[23]"]], ["(\\d{2})(\\d{3,4})(\\d{4})", "$1 $2 $3", ["16"]], ["(\\d{2})(\\d{4})(\\d{4})", "$1 $2 $3", ["10|23|3(?:[15]|4[57])|4|51"]], ["(\\d{3})(\\d{4})(\\d{4})", "$1 $2 $3", ["34"]], ["(\\d{2})(\\d{4,5})(\\d{5})", "$1 $2 $3", ["[1-35]"]]], 0, 0, 0, 0, 0, 0, [0, ["342\\d{4}|(?:337|49)\\d{6}|(?:3(?:2|47|7\\d{3})|50\\d{3})\\d{7}", [7, 8, 9, 10, 12]], 0, 0, 0, ["348[57]\\d{7}", [11]], 0, 0, ["1(?:3(?:0[0347]|[13][0139]|2[035]|4[013568]|6[0459]|7[06]|8[15-8]|9[0689])\\d{4}|6\\d{5,10})|(?:345\\d|9[89])\\d{6}|(?:10|2(?:3|85\\d)|3(?:[15]|[69]\\d\\d)|4[15-8]|51)\\d{8}"]]], "883": ["883", 0, "(?:[1-4]\\d|51)\\d{6,10}", [8, 9, 10, 11, 12], [["(\\d{3})(\\d{3})(\\d{2,8})", "$1 $2 $3", ["[14]|2[24-689]|3[02-689]|51[24-9]"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["510"]], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["21"]], ["(\\d{4})(\\d{4})(\\d{4})", "$1 $2 $3", ["51[13]"]], ["(\\d{3})(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["[235]"]]], 0, 0, 0, 0, 0, 0, [0, 0, 0, 0, 0, 0, 0, 0, ["(?:2(?:00\\d\\d|10)|(?:370[1-9]|51\\d0)\\d)\\d{7}|51(?:00\\d{5}|[24-9]0\\d{4,7})|(?:1[0-79]|2[24-689]|3[02-689]|4[0-4])0\\d{5,9}"]]], "888": ["888", 0, "\\d{11}", [11], [["(\\d{3})(\\d{3})(\\d{5})", "$1 $2 $3"]], 0, 0, 0, 0, 0, 0, [0, 0, 0, 0, 0, 0, ["\\d{11}"]]], "979": ["979", 0, "[1359]\\d{8}", [9], [["(\\d)(\\d{4})(\\d{4})", "$1 $2 $3", ["[1359]"]]], 0, 0, 0, 0, 0, 0, [0, 0, 0, ["[1359]\\d{8}"]]] } };
|
|
24530
|
+
const metadata = { "version": 4, "country_calling_codes": { "1": ["US", "AG", "AI", "AS", "BB", "BM", "BS", "CA", "DM", "DO", "GD", "GU", "JM", "KN", "KY", "LC", "MP", "MS", "PR", "SX", "TC", "TT", "VC", "VG", "VI"], "7": ["RU", "KZ"], "20": ["EG"], "27": ["ZA"], "30": ["GR"], "31": ["NL"], "32": ["BE"], "33": ["FR"], "34": ["ES"], "36": ["HU"], "39": ["IT", "VA"], "40": ["RO"], "41": ["CH"], "43": ["AT"], "44": ["GB", "GG", "IM", "JE"], "45": ["DK"], "46": ["SE"], "47": ["NO", "SJ"], "48": ["PL"], "49": ["DE"], "51": ["PE"], "52": ["MX"], "53": ["CU"], "54": ["AR"], "55": ["BR"], "56": ["CL"], "57": ["CO"], "58": ["VE"], "60": ["MY"], "61": ["AU", "CC", "CX"], "62": ["ID"], "63": ["PH"], "64": ["NZ"], "65": ["SG"], "66": ["TH"], "81": ["JP"], "82": ["KR"], "84": ["VN"], "86": ["CN"], "90": ["TR"], "91": ["IN"], "92": ["PK"], "93": ["AF"], "94": ["LK"], "95": ["MM"], "98": ["IR"], "211": ["SS"], "212": ["MA", "EH"], "213": ["DZ"], "216": ["TN"], "218": ["LY"], "220": ["GM"], "221": ["SN"], "222": ["MR"], "223": ["ML"], "224": ["GN"], "225": ["CI"], "226": ["BF"], "227": ["NE"], "228": ["TG"], "229": ["BJ"], "230": ["MU"], "231": ["LR"], "232": ["SL"], "233": ["GH"], "234": ["NG"], "235": ["TD"], "236": ["CF"], "237": ["CM"], "238": ["CV"], "239": ["ST"], "240": ["GQ"], "241": ["GA"], "242": ["CG"], "243": ["CD"], "244": ["AO"], "245": ["GW"], "246": ["IO"], "247": ["AC"], "248": ["SC"], "249": ["SD"], "250": ["RW"], "251": ["ET"], "252": ["SO"], "253": ["DJ"], "254": ["KE"], "255": ["TZ"], "256": ["UG"], "257": ["BI"], "258": ["MZ"], "260": ["ZM"], "261": ["MG"], "262": ["RE", "YT"], "263": ["ZW"], "264": ["NA"], "265": ["MW"], "266": ["LS"], "267": ["BW"], "268": ["SZ"], "269": ["KM"], "290": ["SH", "TA"], "291": ["ER"], "297": ["AW"], "298": ["FO"], "299": ["GL"], "350": ["GI"], "351": ["PT"], "352": ["LU"], "353": ["IE"], "354": ["IS"], "355": ["AL"], "356": ["MT"], "357": ["CY"], "358": ["FI", "AX"], "359": ["BG"], "370": ["LT"], "371": ["LV"], "372": ["EE"], "373": ["MD"], "374": ["AM"], "375": ["BY"], "376": ["AD"], "377": ["MC"], "378": ["SM"], "380": ["UA"], "381": ["RS"], "382": ["ME"], "383": ["XK"], "385": ["HR"], "386": ["SI"], "387": ["BA"], "389": ["MK"], "420": ["CZ"], "421": ["SK"], "423": ["LI"], "500": ["FK"], "501": ["BZ"], "502": ["GT"], "503": ["SV"], "504": ["HN"], "505": ["NI"], "506": ["CR"], "507": ["PA"], "508": ["PM"], "509": ["HT"], "590": ["GP", "BL", "MF"], "591": ["BO"], "592": ["GY"], "593": ["EC"], "594": ["GF"], "595": ["PY"], "596": ["MQ"], "597": ["SR"], "598": ["UY"], "599": ["CW", "BQ"], "670": ["TL"], "672": ["NF"], "673": ["BN"], "674": ["NR"], "675": ["PG"], "676": ["TO"], "677": ["SB"], "678": ["VU"], "679": ["FJ"], "680": ["PW"], "681": ["WF"], "682": ["CK"], "683": ["NU"], "685": ["WS"], "686": ["KI"], "687": ["NC"], "688": ["TV"], "689": ["PF"], "690": ["TK"], "691": ["FM"], "692": ["MH"], "850": ["KP"], "852": ["HK"], "853": ["MO"], "855": ["KH"], "856": ["LA"], "880": ["BD"], "886": ["TW"], "960": ["MV"], "961": ["LB"], "962": ["JO"], "963": ["SY"], "964": ["IQ"], "965": ["KW"], "966": ["SA"], "967": ["YE"], "968": ["OM"], "970": ["PS"], "971": ["AE"], "972": ["IL"], "973": ["BH"], "974": ["QA"], "975": ["BT"], "976": ["MN"], "977": ["NP"], "992": ["TJ"], "993": ["TM"], "994": ["AZ"], "995": ["GE"], "996": ["KG"], "998": ["UZ"] }, "countries": { "AC": ["247", "00", "(?:[01589]\\d|[2-467])\\d{4}", [5, 6]], "AD": ["376", "00", "(?:1|6\\d)\\d{7}|[135-9]\\d{5}", [6, 8, 9], [["(\\d{3})(\\d{3})", "$1 $2", ["[135-9]"]], ["(\\d{4})(\\d{4})", "$1 $2", ["1"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["6"]]]], "AE": ["971", "00", "(?:[4-7]\\d|9[0-689])\\d{7}|800\\d{2,9}|[2-4679]\\d{7}", [5, 6, 7, 8, 9, 10, 11, 12], [["(\\d{3})(\\d{2,9})", "$1 $2", ["60|8"]], ["(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["[236]|[479][2-8]"], "0$1"], ["(\\d{3})(\\d)(\\d{5})", "$1 $2 $3", ["[479]"]], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["5"], "0$1"]], "0"], "AF": ["93", "00", "[2-7]\\d{8}", [9], [["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[2-7]"], "0$1"]], "0"], "AG": ["1", "011", "(?:268|[58]\\d\\d|900)\\d{7}", [10], 0, "1", 0, "([457]\\d{6})$|1", "268$1", 0, "268"], "AI": ["1", "011", "(?:264|[58]\\d\\d|900)\\d{7}", [10], 0, "1", 0, "([2457]\\d{6})$|1", "264$1", 0, "264"], "AL": ["355", "00", "(?:700\\d\\d|900)\\d{3}|8\\d{5,7}|(?:[2-5]|6\\d)\\d{7}", [6, 7, 8, 9], [["(\\d{3})(\\d{3,4})", "$1 $2", ["80|9"], "0$1"], ["(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["4[2-6]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["[2358][2-5]|4"], "0$1"], ["(\\d{3})(\\d{5})", "$1 $2", ["[23578]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["6"], "0$1"]], "0"], "AM": ["374", "00", "(?:[1-489]\\d|55|60|77)\\d{6}", [8], [["(\\d{3})(\\d{2})(\\d{3})", "$1 $2 $3", ["[89]0"], "0 $1"], ["(\\d{3})(\\d{5})", "$1 $2", ["2|3[12]"], "(0$1)"], ["(\\d{2})(\\d{6})", "$1 $2", ["1|47"], "(0$1)"], ["(\\d{2})(\\d{6})", "$1 $2", ["[3-9]"], "0$1"]], "0"], "AO": ["244", "00", "[29]\\d{8}", [9], [["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[29]"]]]], "AR": ["54", "00", "(?:11|[89]\\d\\d)\\d{8}|[2368]\\d{9}", [10, 11], [["(\\d{4})(\\d{2})(\\d{4})", "$1 $2-$3", ["2(?:2[024-9]|3[0-59]|47|6[245]|9[02-8])|3(?:3[28]|4[03-9]|5[2-46-8]|7[1-578]|8[2-9])", "2(?:[23]02|6(?:[25]|4[6-8])|9(?:[02356]|4[02568]|72|8[23]))|3(?:3[28]|4(?:[04679]|3[5-8]|5[4-68]|8[2379])|5(?:[2467]|3[237]|8[2-5])|7[1-578]|8(?:[2469]|3[2578]|5[4-8]|7[36-8]|8[5-8]))|2(?:2[24-9]|3[1-59]|47)", "2(?:[23]02|6(?:[25]|4(?:64|[78]))|9(?:[02356]|4(?:[0268]|5[2-6])|72|8[23]))|3(?:3[28]|4(?:[04679]|3[78]|5(?:4[46]|8)|8[2379])|5(?:[2467]|3[237]|8[23])|7[1-578]|8(?:[2469]|3[278]|5[56][46]|86[3-6]))|2(?:2[24-9]|3[1-59]|47)|38(?:[58][78]|7[378])|3(?:4[35][56]|58[45]|8(?:[38]5|54|76))[4-6]", "2(?:[23]02|6(?:[25]|4(?:64|[78]))|9(?:[02356]|4(?:[0268]|5[2-6])|72|8[23]))|3(?:3[28]|4(?:[04679]|3(?:5(?:4[0-25689]|[56])|[78])|58|8[2379])|5(?:[2467]|3[237]|8(?:[23]|4(?:[45]|60)|5(?:4[0-39]|5|64)))|7[1-578]|8(?:[2469]|3[278]|54(?:4|5[13-7]|6[89])|86[3-6]))|2(?:2[24-9]|3[1-59]|47)|38(?:[58][78]|7[378])|3(?:454|85[56])[46]|3(?:4(?:36|5[56])|8(?:[38]5|76))[4-6]"], "0$1", 1], ["(\\d{2})(\\d{4})(\\d{4})", "$1 $2-$3", ["1"], "0$1", 1], ["(\\d{3})(\\d{3})(\\d{4})", "$1-$2-$3", ["[68]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2-$3", ["[23]"], "0$1", 1], ["(\\d)(\\d{4})(\\d{2})(\\d{4})", "$2 15-$3-$4", ["9(?:2[2-469]|3[3-578])", "9(?:2(?:2[024-9]|3[0-59]|47|6[245]|9[02-8])|3(?:3[28]|4[03-9]|5[2-46-8]|7[1-578]|8[2-9]))", "9(?:2(?:[23]02|6(?:[25]|4[6-8])|9(?:[02356]|4[02568]|72|8[23]))|3(?:3[28]|4(?:[04679]|3[5-8]|5[4-68]|8[2379])|5(?:[2467]|3[237]|8[2-5])|7[1-578]|8(?:[2469]|3[2578]|5[4-8]|7[36-8]|8[5-8])))|92(?:2[24-9]|3[1-59]|47)", "9(?:2(?:[23]02|6(?:[25]|4(?:64|[78]))|9(?:[02356]|4(?:[0268]|5[2-6])|72|8[23]))|3(?:3[28]|4(?:[04679]|3[78]|5(?:4[46]|8)|8[2379])|5(?:[2467]|3[237]|8[23])|7[1-578]|8(?:[2469]|3[278]|5(?:[56][46]|[78])|7[378]|8(?:6[3-6]|[78]))))|92(?:2[24-9]|3[1-59]|47)|93(?:4[35][56]|58[45]|8(?:[38]5|54|76))[4-6]", "9(?:2(?:[23]02|6(?:[25]|4(?:64|[78]))|9(?:[02356]|4(?:[0268]|5[2-6])|72|8[23]))|3(?:3[28]|4(?:[04679]|3(?:5(?:4[0-25689]|[56])|[78])|5(?:4[46]|8)|8[2379])|5(?:[2467]|3[237]|8(?:[23]|4(?:[45]|60)|5(?:4[0-39]|5|64)))|7[1-578]|8(?:[2469]|3[278]|5(?:4(?:4|5[13-7]|6[89])|[56][46]|[78])|7[378]|8(?:6[3-6]|[78]))))|92(?:2[24-9]|3[1-59]|47)|93(?:4(?:36|5[56])|8(?:[38]5|76))[4-6]"], "0$1", 0, "$1 $2 $3-$4"], ["(\\d)(\\d{2})(\\d{4})(\\d{4})", "$2 15-$3-$4", ["91"], "0$1", 0, "$1 $2 $3-$4"], ["(\\d{3})(\\d{3})(\\d{5})", "$1-$2-$3", ["8"], "0$1"], ["(\\d)(\\d{3})(\\d{3})(\\d{4})", "$2 15-$3-$4", ["9"], "0$1", 0, "$1 $2 $3-$4"]], "0", 0, "0?(?:(11|2(?:2(?:02?|[13]|2[13-79]|4[1-6]|5[2457]|6[124-8]|7[1-4]|8[13-6]|9[1267])|3(?:02?|1[467]|2[03-6]|3[13-8]|[49][2-6]|5[2-8]|[67])|4(?:7[3-578]|9)|6(?:[0136]|2[24-6]|4[6-8]?|5[15-8])|80|9(?:0[1-3]|[19]|2\\d|3[1-6]|4[02568]?|5[2-4]|6[2-46]|72?|8[23]?))|3(?:3(?:2[79]|6|8[2578])|4(?:0[0-24-9]|[12]|3[5-8]?|4[24-7]|5[4-68]?|6[02-9]|7[126]|8[2379]?|9[1-36-8])|5(?:1|2[1245]|3[237]?|4[1-46-9]|6[2-4]|7[1-6]|8[2-5]?)|6[24]|7(?:[069]|1[1568]|2[15]|3[145]|4[13]|5[14-8]|7[2-57]|8[126])|8(?:[01]|2[15-7]|3[2578]?|4[13-6]|5[4-8]?|6[1-357-9]|7[36-8]?|8[5-8]?|9[124])))15)?", "9$1"], "AS": ["1", "011", "(?:[58]\\d\\d|684|900)\\d{7}", [10], 0, "1", 0, "([267]\\d{6})$|1", "684$1", 0, "684"], "AT": ["43", "00", "1\\d{3,12}|2\\d{6,12}|43(?:(?:0\\d|5[02-9])\\d{3,9}|2\\d{4,5}|[3467]\\d{4}|8\\d{4,6}|9\\d{4,7})|5\\d{4,12}|8\\d{7,12}|9\\d{8,12}|(?:[367]\\d|4[0-24-9])\\d{4,11}", [4, 5, 6, 7, 8, 9, 10, 11, 12, 13], [["(\\d)(\\d{3,12})", "$1 $2", ["1(?:11|[2-9])"], "0$1"], ["(\\d{3})(\\d{2})", "$1 $2", ["517"], "0$1"], ["(\\d{2})(\\d{3,5})", "$1 $2", ["5[079]"], "0$1"], ["(\\d{3})(\\d{3,10})", "$1 $2", ["(?:31|4)6|51|6(?:48|5[0-3579]|[6-9])|7(?:20|32|8)|[89]", "(?:31|4)6|51|6(?:485|5[0-3579]|[6-9])|7(?:20|32|8)|[89]"], "0$1"], ["(\\d{4})(\\d{3,9})", "$1 $2", ["[2-467]|5[2-6]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["5"], "0$1"], ["(\\d{2})(\\d{4})(\\d{4,7})", "$1 $2 $3", ["5"], "0$1"]], "0"], "AU": ["61", "001[14-689]|14(?:1[14]|34|4[17]|[56]6|7[47]|88)0011", "1(?:[0-79]\\d{7}(?:\\d(?:\\d{2})?)?|8[0-24-9]\\d{7})|[2-478]\\d{8}|1\\d{4,7}", [5, 6, 7, 8, 9, 10, 12], [["(\\d{2})(\\d{3,4})", "$1 $2", ["16"], "0$1"], ["(\\d{2})(\\d{3})(\\d{2,4})", "$1 $2 $3", ["16"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["14|4"], "0$1"], ["(\\d)(\\d{4})(\\d{4})", "$1 $2 $3", ["[2378]"], "(0$1)"], ["(\\d{4})(\\d{3})(\\d{3})", "$1 $2 $3", ["1(?:30|[89])"]]], "0", 0, "(183[12])|0", 0, 0, 0, [["(?:(?:241|349)0\\d\\d|8(?:51(?:0(?:0[03-9]|[12479]\\d|3[2-9]|5[0-8]|6[1-9]|8[0-7])|1(?:[0235689]\\d|1[0-69]|4[0-589]|7[0-47-9])|2(?:0[0-79]|[18][13579]|2[14-9]|3[0-46-9]|[4-6]\\d|7[89]|9[0-4])|[34]\\d\\d)|91(?:(?:[0-58]\\d|6[0135-9])\\d|7(?:0[0-24-9]|[1-9]\\d)|9(?:[0-46-9]\\d|5[0-79]))))\\d{3}|(?:2(?:[0-26-9]\\d|3[0-8]|4[02-9]|5[0135-9])|3(?:[0-3589]\\d|4[0-578]|6[1-9]|7[0-35-9])|7(?:[013-57-9]\\d|2[0-8])|8(?:55|6[0-8]|[78]\\d|9[02-9]))\\d{6}", [9]], ["4(?:79[01]|83[0-36-9]|95[0-3])\\d{5}|4(?:[0-36]\\d|4[047-9]|[58][0-24-9]|7[02-8]|9[0-47-9])\\d{6}", [9]], ["180(?:0\\d{3}|2)\\d{3}", [7, 10]], ["190[0-26]\\d{6}", [10]], 0, 0, 0, ["163\\d{2,6}", [5, 6, 7, 8, 9]], ["14(?:5(?:1[0458]|[23][458])|71\\d)\\d{4}", [9]], ["13(?:00\\d{6}(?:\\d{2})?|45[0-4]\\d{3})|13\\d{4}", [6, 8, 10, 12]]], "0011"], "AW": ["297", "00", "(?:[25-79]\\d\\d|800)\\d{4}", [7], [["(\\d{3})(\\d{4})", "$1 $2", ["[25-9]"]]]], "AX": ["358", "00|99(?:[01469]|5(?:[14]1|3[23]|5[59]|77|88|9[09]))", "2\\d{4,9}|35\\d{4,5}|(?:60\\d\\d|800)\\d{4,6}|7\\d{5,11}|(?:[14]\\d|3[0-46-9]|50)\\d{4,8}", [5, 6, 7, 8, 9, 10, 11, 12], 0, "0", 0, 0, 0, 0, "18", 0, "00"], "AZ": ["994", "00", "365\\d{6}|(?:[124579]\\d|60|88)\\d{7}", [9], [["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["90"], "0$1"], ["(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["1[28]|2|365|46", "1[28]|2|365[45]|46", "1[28]|2|365(?:4|5[02])|46"], "(0$1)"], ["(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[13-9]"], "0$1"]], "0"], "BA": ["387", "00", "6\\d{8}|(?:[35689]\\d|49|70)\\d{6}", [8, 9], [["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["6[1-3]|[7-9]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3})", "$1 $2-$3", ["[3-5]|6[56]"], "0$1"], ["(\\d{2})(\\d{2})(\\d{2})(\\d{3})", "$1 $2 $3 $4", ["6"], "0$1"]], "0"], "BB": ["1", "011", "(?:246|[58]\\d\\d|900)\\d{7}", [10], 0, "1", 0, "([2-9]\\d{6})$|1", "246$1", 0, "246"], "BD": ["880", "00", "[1-469]\\d{9}|8[0-79]\\d{7,8}|[2-79]\\d{8}|[2-9]\\d{7}|[3-9]\\d{6}|[57-9]\\d{5}", [6, 7, 8, 9, 10], [["(\\d{2})(\\d{4,6})", "$1-$2", ["31[5-8]|[459]1"], "0$1"], ["(\\d{3})(\\d{3,7})", "$1-$2", ["3(?:[67]|8[013-9])|4(?:6[168]|7|[89][18])|5(?:6[128]|9)|6(?:[15]|28)|7[2-589]|8(?:0[014-9]|[12])|9[358]|(?:3[2-5]|4[235]|5[2-578]|6[0389]|76|8[3-7]|9[24])1|(?:44|66)[01346-9]"], "0$1"], ["(\\d{4})(\\d{3,6})", "$1-$2", ["[13-9]|2[23]"], "0$1"], ["(\\d)(\\d{7,8})", "$1-$2", ["2"], "0$1"]], "0"], "BE": ["32", "00", "4\\d{8}|[1-9]\\d{7}", [8, 9], [["(\\d{3})(\\d{2})(\\d{3})", "$1 $2 $3", ["(?:80|9)0"], "0$1"], ["(\\d)(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[239]|4[23]"], "0$1"], ["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[15-8]"], "0$1"], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["4"], "0$1"]], "0"], "BF": ["226", "00", "[024-7]\\d{7}", [8], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[024-7]"]]]], "BG": ["359", "00", "00800\\d{7}|[2-7]\\d{6,7}|[89]\\d{6,8}|2\\d{5}", [6, 7, 8, 9, 12], [["(\\d)(\\d)(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["2"], "0$1"], ["(\\d{3})(\\d{4})", "$1 $2", ["43[1-6]|70[1-9]"], "0$1"], ["(\\d)(\\d{3})(\\d{3,4})", "$1 $2 $3", ["2"], "0$1"], ["(\\d{2})(\\d{3})(\\d{2,3})", "$1 $2 $3", ["[356]|4[124-7]|7[1-9]|8[1-6]|9[1-7]"], "0$1"], ["(\\d{3})(\\d{2})(\\d{3})", "$1 $2 $3", ["(?:70|8)0"], "0$1"], ["(\\d{3})(\\d{3})(\\d{2})", "$1 $2 $3", ["43[1-7]|7"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[48]|9[08]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["9"], "0$1"]], "0"], "BH": ["973", "00", "[136-9]\\d{7}", [8], [["(\\d{4})(\\d{4})", "$1 $2", ["[13679]|8[02-4679]"]]]], "BI": ["257", "00", "(?:[267]\\d|31)\\d{6}", [8], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[2367]"]]]], "BJ": ["229", "00", "(?:01\\d|8)\\d{7}", [8, 10], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["8"]], ["(\\d{2})(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4 $5", ["0"]]]], "BL": ["590", "00", "7090\\d{5}|(?:[56]9|[89]\\d)\\d{7}", [9], 0, "0", 0, 0, 0, 0, 0, [["(?:59(?:0(?:2[7-9]|3[3-7]|5[12]|87)|87\\d)|80[6-9]\\d\\d)\\d{4}"], ["(?:69(?:0\\d\\d|1(?:2[2-9]|3[0-5]))|7090[0-4])\\d{4}"], ["80[0-5]\\d{6}"], ["8[129]\\d{7}"], 0, 0, 0, 0, ["9(?:(?:39[5-7]|76[018])\\d|475[0-6])\\d{4}"]]], "BM": ["1", "011", "(?:441|[58]\\d\\d|900)\\d{7}", [10], 0, "1", 0, "([2-9]\\d{6})$|1", "441$1", 0, "441"], "BN": ["673", "00", "[2-578]\\d{6}", [7], [["(\\d{3})(\\d{4})", "$1 $2", ["[2-578]"]]]], "BO": ["591", "00(?:1\\d)?", "(?:[2-7]\\d\\d|8001)\\d{5}", [8, 9], [["(\\d)(\\d{7})", "$1 $2", ["[23]|4[46]|50"]], ["(\\d{8})", "$1", ["[5-7]"]], ["(\\d{3})(\\d{2})(\\d{4})", "$1 $2 $3", ["8"]]], "0", 0, "0(1\\d)?"], "BQ": ["599", "00", "(?:[34]1|7\\d)\\d{5}", [7], 0, 0, 0, 0, 0, 0, "[347]"], "BR": ["55", "00(?:1[245]|2[1-35]|31|4[13]|[56]5|99)", "[1-467]\\d{9,10}|55[0-46-9]\\d{8}|[34]\\d{7}|55\\d{7,8}|(?:5[0-46-9]|[89]\\d)\\d{7,9}", [8, 9, 10, 11], [["(\\d{4})(\\d{4})", "$1-$2", ["300|4(?:0[02]|37|86)", "300|4(?:0(?:0|20)|370|864)"]], ["(\\d{3})(\\d{2,3})(\\d{4})", "$1 $2 $3", ["(?:[358]|90)0"], "0$1"], ["(\\d{2})(\\d{4})(\\d{4})", "$1 $2-$3", ["(?:[14689][1-9]|2[12478]|3[1-578]|5[13-5]|7[13-579])[2-57]"], "($1)"], ["(\\d{2})(\\d{5})(\\d{4})", "$1 $2-$3", ["[16][1-9]|[2-57-9]"], "($1)"]], "0", 0, "(?:0|90)(?:(1[245]|2[1-35]|31|4[13]|[56]5|99)(\\d{10,11}))?", "$2"], "BS": ["1", "011", "(?:242|[58]\\d\\d|900)\\d{7}", [10], 0, "1", 0, "([3-8]\\d{6})$|1", "242$1", 0, "242"], "BT": ["975", "00", "[178]\\d{7}|[2-8]\\d{6}", [7, 8], [["(\\d)(\\d{3})(\\d{3})", "$1 $2 $3", ["[2-6]|7[246]|8[2-4]"]], ["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["1[67]|[78]"]]]], "BW": ["267", "00", "(?:0800|(?:[37]|800)\\d)\\d{6}|(?:[2-6]\\d|90)\\d{5}", [7, 8, 10], [["(\\d{2})(\\d{5})", "$1 $2", ["90"]], ["(\\d{3})(\\d{4})", "$1 $2", ["[24-6]|3[15-9]"]], ["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["[37]"]], ["(\\d{4})(\\d{3})(\\d{3})", "$1 $2 $3", ["0"]], ["(\\d{3})(\\d{4})(\\d{3})", "$1 $2 $3", ["8"]]]], "BY": ["375", "810", "(?:[12]\\d|33|44|902)\\d{7}|8(?:0[0-79]\\d{5,7}|[1-7]\\d{9})|8(?:1[0-489]|[5-79]\\d)\\d{7}|8[1-79]\\d{6,7}|8[0-79]\\d{5}|8\\d{5}", [6, 7, 8, 9, 10, 11], [["(\\d{3})(\\d{3})", "$1 $2", ["800"], "8 $1"], ["(\\d{3})(\\d{2})(\\d{2,4})", "$1 $2 $3", ["800"], "8 $1"], ["(\\d{4})(\\d{2})(\\d{3})", "$1 $2-$3", ["1(?:5[169]|6[3-5]|7[179])|2(?:1[35]|2[34]|3[3-5])", "1(?:5[169]|6(?:3[1-3]|4|5[125])|7(?:1[3-9]|7[0-24-6]|9[2-7]))|2(?:1[35]|2[34]|3[3-5])"], "8 0$1"], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2-$3-$4", ["1(?:[56]|7[467])|2[1-3]"], "8 0$1"], ["(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2-$3-$4", ["[1-4]"], "8 0$1"], ["(\\d{3})(\\d{3,4})(\\d{4})", "$1 $2 $3", ["[89]"], "8 $1"]], "8", 0, "0|80?", 0, 0, 0, 0, "8~10"], "BZ": ["501", "00", "(?:0800\\d|[2-8])\\d{6}", [7, 11], [["(\\d{3})(\\d{4})", "$1-$2", ["[2-8]"]], ["(\\d)(\\d{3})(\\d{4})(\\d{3})", "$1-$2-$3-$4", ["0"]]]], "CA": ["1", "011", "[2-9]\\d{9}|3\\d{6}", [7, 10], 0, "1", 0, 0, 0, 0, 0, [["(?:2(?:04|[23]6|[48]9|5[07]|[67]3)|3(?:06|43|54|6[578]|82)|4(?:03|1[68]|[26]8|3[178]|50|74)|5(?:06|1[49]|48|79|8[147])|6(?:04|[18]3|39|47|72)|7(?:0[59]|42|53|78|8[02])|8(?:[06]7|19|25|7[39])|9(?:0[25]|42))[2-9]\\d{6}", [10]], ["", [10]], ["8(?:00|33|44|55|66|77|88)[2-9]\\d{6}", [10]], ["900[2-9]\\d{6}", [10]], ["52(?:3(?:[2-46-9][02-9]\\d|5(?:[02-46-9]\\d|5[0-46-9]))|4(?:[2-478][02-9]\\d|5(?:[034]\\d|2[024-9]|5[0-46-9])|6(?:0[1-9]|[2-9]\\d)|9(?:[05-9]\\d|2[0-5]|49)))\\d{4}|52[34][2-9]1[02-9]\\d{4}|(?:5(?:2[125-9]|3[23]|44|66|77|88)|6(?:22|33))[2-9]\\d{6}", [10]], 0, ["310\\d{4}", [7]], 0, ["600[2-9]\\d{6}", [10]]]], "CC": ["61", "001[14-689]|14(?:1[14]|34|4[17]|[56]6|7[47]|88)0011", "1(?:[0-79]\\d{8}(?:\\d{2})?|8[0-24-9]\\d{7})|[148]\\d{8}|1\\d{5,7}", [6, 7, 8, 9, 10, 12], 0, "0", 0, "([59]\\d{7})$|0", "8$1", 0, 0, [["8(?:51(?:0(?:02|31|60|89)|1(?:18|76)|223)|91(?:0(?:1[0-2]|29)|1(?:[28]2|50|79)|2(?:10|64)|3(?:[06]8|22)|4[29]8|62\\d|70[23]|959))\\d{3}", [9]], ["4(?:79[01]|83[0-36-9]|95[0-3])\\d{5}|4(?:[0-36]\\d|4[047-9]|[58][0-24-9]|7[02-8]|9[0-47-9])\\d{6}", [9]], ["180(?:0\\d{3}|2)\\d{3}", [7, 10]], ["190[0-26]\\d{6}", [10]], 0, 0, 0, 0, ["14(?:5(?:1[0458]|[23][458])|71\\d)\\d{4}", [9]], ["13(?:00\\d{6}(?:\\d{2})?|45[0-4]\\d{3})|13\\d{4}", [6, 8, 10, 12]]], "0011"], "CD": ["243", "00", "(?:(?:[189]|5\\d)\\d|2)\\d{7}|[1-68]\\d{6}", [7, 8, 9, 10], [["(\\d{2})(\\d{2})(\\d{3})", "$1 $2 $3", ["88"], "0$1"], ["(\\d{2})(\\d{5})", "$1 $2", ["[1-6]"], "0$1"], ["(\\d{2})(\\d{2})(\\d{4})", "$1 $2 $3", ["2"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["1"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[89]"], "0$1"], ["(\\d{2})(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["5"], "0$1"]], "0"], "CF": ["236", "00", "8776\\d{4}|(?:[27]\\d|61)\\d{6}", [8], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[26-8]"]]]], "CG": ["242", "00", "222\\d{6}|(?:0\\d|80)\\d{7}", [9], [["(\\d)(\\d{4})(\\d{4})", "$1 $2 $3", ["8"]], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[02]"]]]], "CH": ["41", "00", "8\\d{11}|[2-9]\\d{8}", [9, 12], [["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["8[047]|90"], "0$1"], ["(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[2-79]|81"], "0$1"], ["(\\d{3})(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4 $5", ["8"], "0$1"]], "0"], "CI": ["225", "00", "[02]\\d{9}", [10], [["(\\d{2})(\\d{2})(\\d)(\\d{5})", "$1 $2 $3 $4", ["2"]], ["(\\d{2})(\\d{2})(\\d{2})(\\d{4})", "$1 $2 $3 $4", ["0"]]]], "CK": ["682", "00", "[2-578]\\d{4}", [5], [["(\\d{2})(\\d{3})", "$1 $2", ["[2-578]"]]]], "CL": ["56", "(?:0|1(?:1[0-69]|2[02-5]|5[13-58]|69|7[0167]|8[018]))0", "12300\\d{6}|6\\d{9,10}|[2-9]\\d{8}", [9, 10, 11], [["(\\d{5})(\\d{4})", "$1 $2", ["219", "2196"], "($1)"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["60|809"]], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["44"]], ["(\\d)(\\d{4})(\\d{4})", "$1 $2 $3", ["2[1-36]"], "($1)"], ["(\\d)(\\d{4})(\\d{4})", "$1 $2 $3", ["9(?:10|[2-9])"]], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["3[2-5]|[47]|5[1-3578]|6[13-57]|8(?:0[1-8]|[1-9])"], "($1)"], ["(\\d{3})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["60|8"]], ["(\\d{4})(\\d{3})(\\d{4})", "$1 $2 $3", ["1"]], ["(\\d{3})(\\d{3})(\\d{2})(\\d{3})", "$1 $2 $3 $4", ["60"]]]], "CM": ["237", "00", "[26]\\d{8}|88\\d{6,7}", [8, 9], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["88"]], ["(\\d)(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4 $5", ["[26]|88"]]]], "CN": ["86", "00|1(?:[12]\\d|79)\\d\\d00", "(?:(?:1[03-689]|2\\d)\\d\\d|6)\\d{8}|1\\d{10}|[126]\\d{6}(?:\\d(?:\\d{2})?)?|86\\d{5,6}|(?:[3-579]\\d|8[0-57-9])\\d{5,9}", [7, 8, 9, 10, 11, 12], [["(\\d{2})(\\d{5,6})", "$1 $2", ["(?:10|2[0-57-9])[19]|3(?:[157]|35|49|9[1-68])|4(?:1[124-9]|2[179]|6[47-9]|7|8[23])|5(?:[1357]|2[37]|4[36]|6[1-46]|80)|6(?:3[1-5]|6[0238]|9[12])|7(?:01|[1579]|2[248]|3[014-9]|4[3-6]|6[023689])|8(?:07|1[236-8]|2[5-7]|[37]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|3|4[13]|5[1-5]|7[0-79]|9[0-35-9])|(?:4[35]|59|85)[1-9]", "(?:10|2[0-57-9])(?:1[02]|9[56])|8078|(?:3(?:[157]\\d|35|49|9[1-68])|4(?:1[124-9]|2[179]|[35][1-9]|6[47-9]|7\\d|8[23])|5(?:[1357]\\d|2[37]|4[36]|6[1-46]|80|9[1-9])|6(?:3[1-5]|6[0238]|9[12])|7(?:01|[1579]\\d|2[248]|3[014-9]|4[3-6]|6[023689])|8(?:1[236-8]|2[5-7]|[37]\\d|5[1-9]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|3\\d|4[13]|5[1-5]|7[0-79]|9[0-35-9]))1", "10(?:1(?:0|23)|9[56])|2[0-57-9](?:1(?:00|23)|9[56])|80781|(?:3(?:[157]\\d|35|49|9[1-68])|4(?:1[124-9]|2[179]|[35][1-9]|6[47-9]|7\\d|8[23])|5(?:[1357]\\d|2[37]|4[36]|6[1-46]|80|9[1-9])|6(?:3[1-5]|6[0238]|9[12])|7(?:01|[1579]\\d|2[248]|3[014-9]|4[3-6]|6[023689])|8(?:1[236-8]|2[5-7]|[37]\\d|5[1-9]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|3\\d|4[13]|5[1-5]|7[0-79]|9[0-35-9]))12", "10(?:1(?:0|23)|9[56])|2[0-57-9](?:1(?:00|23)|9[56])|807812|(?:3(?:[157]\\d|35|49|9[1-68])|4(?:1[124-9]|2[179]|[35][1-9]|6[47-9]|7\\d|8[23])|5(?:[1357]\\d|2[37]|4[36]|6[1-46]|80|9[1-9])|6(?:3[1-5]|6[0238]|9[12])|7(?:01|[1579]\\d|2[248]|3[014-9]|4[3-6]|6[023689])|8(?:1[236-8]|2[5-7]|[37]\\d|5[1-9]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|3\\d|4[13]|5[1-5]|7[0-79]|9[0-35-9]))123", "10(?:1(?:0|23)|9[56])|2[0-57-9](?:1(?:00|23)|9[56])|(?:3(?:[157]\\d|35|49|9[1-68])|4(?:1[124-9]|2[179]|[35][1-9]|6[47-9]|7\\d|8[23])|5(?:[1357]\\d|2[37]|4[36]|6[1-46]|80|9[1-9])|6(?:3[1-5]|6[0238]|9[12])|7(?:01|[1579]\\d|2[248]|3[014-9]|4[3-6]|6[023689])|8(?:078|1[236-8]|2[5-7]|[37]\\d|5[1-9]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|3\\d|4[13]|5[1-5]|7[0-79]|9[0-35-9]))123"], "0$1"], ["(\\d{3})(\\d{5,6})", "$1 $2", ["3(?:[157]|35|49|9[1-68])|4(?:[17]|2[179]|6[47-9]|8[23])|5(?:[1357]|2[37]|4[36]|6[1-46]|80)|6(?:3[1-5]|6[0238]|9[12])|7(?:01|[1579]|2[248]|3[014-9]|4[3-6]|6[023689])|8(?:1[236-8]|2[5-7]|[37]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|[379]|4[13]|5[1-5])|(?:4[35]|59|85)[1-9]", "(?:3(?:[157]\\d|35|49|9[1-68])|4(?:[17]\\d|2[179]|[35][1-9]|6[47-9]|8[23])|5(?:[1357]\\d|2[37]|4[36]|6[1-46]|80|9[1-9])|6(?:3[1-5]|6[0238]|9[12])|7(?:01|[1579]\\d|2[248]|3[014-9]|4[3-6]|6[023689])|8(?:1[236-8]|2[5-7]|[37]\\d|5[1-9]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|[379]\\d|4[13]|5[1-5]))[19]", "85[23](?:10|95)|(?:3(?:[157]\\d|35|49|9[1-68])|4(?:[17]\\d|2[179]|[35][1-9]|6[47-9]|8[23])|5(?:[1357]\\d|2[37]|4[36]|6[1-46]|80|9[1-9])|6(?:3[1-5]|6[0238]|9[12])|7(?:01|[1579]\\d|2[248]|3[014-9]|4[3-6]|6[023689])|8(?:1[236-8]|2[5-7]|[37]\\d|5[14-9]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|[379]\\d|4[13]|5[1-5]))(?:10|9[56])", "85[23](?:100|95)|(?:3(?:[157]\\d|35|49|9[1-68])|4(?:[17]\\d|2[179]|[35][1-9]|6[47-9]|8[23])|5(?:[1357]\\d|2[37]|4[36]|6[1-46]|80|9[1-9])|6(?:3[1-5]|6[0238]|9[12])|7(?:01|[1579]\\d|2[248]|3[014-9]|4[3-6]|6[023689])|8(?:1[236-8]|2[5-7]|[37]\\d|5[14-9]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|[379]\\d|4[13]|5[1-5]))(?:100|9[56])"], "0$1"], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["(?:4|80)0"]], ["(\\d{2})(\\d{4})(\\d{4})", "$1 $2 $3", ["10|2(?:[02-57-9]|1[1-9])", "10|2(?:[02-57-9]|1[1-9])", "10[0-79]|2(?:[02-57-9]|1[1-79])|(?:10|21)8(?:0[1-9]|[1-9])"], "0$1", 1], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["3(?:[3-59]|7[02-68])|4(?:[26-8]|3[3-9]|5[2-9])|5(?:3[03-9]|[468]|7[028]|9[2-46-9])|6|7(?:[0-247]|3[04-9]|5[0-4689]|6[2368])|8(?:[1-358]|9[1-7])|9(?:[013479]|5[1-5])|(?:[34]1|55|79|87)[02-9]"], "0$1", 1], ["(\\d{3})(\\d{7,8})", "$1 $2", ["9"]], ["(\\d{4})(\\d{3})(\\d{4})", "$1 $2 $3", ["80"], "0$1", 1], ["(\\d{3})(\\d{4})(\\d{4})", "$1 $2 $3", ["[3-578]"], "0$1", 1], ["(\\d{3})(\\d{4})(\\d{4})", "$1 $2 $3", ["1[3-9]"]], ["(\\d{2})(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3 $4", ["[12]"], "0$1", 1]], "0", 0, "(1(?:[12]\\d|79)\\d\\d)|0", 0, 0, 0, 0, "00"], "CO": ["57", "00(?:4(?:[14]4|56)|[579])", "(?:46|60\\d\\d)\\d{6}|(?:1\\d|[39])\\d{9}", [8, 10, 11], [["(\\d{4})(\\d{4})", "$1 $2", ["46"]], ["(\\d{3})(\\d{7})", "$1 $2", ["6|90"], "($1)"], ["(\\d{3})(\\d{7})", "$1 $2", ["3[0-357]|9[14]"]], ["(\\d)(\\d{3})(\\d{7})", "$1-$2-$3", ["1"], "0$1", 0, "$1 $2 $3"]], "0", 0, "0([3579]|4(?:[14]4|56))?"], "CR": ["506", "00", "(?:8\\d|90)\\d{8}|(?:[24-8]\\d{3}|3005)\\d{4}", [8, 10], [["(\\d{4})(\\d{4})", "$1 $2", ["[2-7]|8[3-9]"]], ["(\\d{3})(\\d{3})(\\d{4})", "$1-$2-$3", ["[89]"]]], 0, 0, "(19(?:0[0-2468]|1[09]|20|66|77|99))"], "CU": ["53", "119", "(?:[2-7]|8\\d\\d)\\d{7}|[2-47]\\d{6}|[34]\\d{5}", [6, 7, 8, 10], [["(\\d{2})(\\d{4,6})", "$1 $2", ["2[1-4]|[34]"], "(0$1)"], ["(\\d)(\\d{6,7})", "$1 $2", ["7"], "(0$1)"], ["(\\d)(\\d{7})", "$1 $2", ["[56]"], "0$1"], ["(\\d{3})(\\d{7})", "$1 $2", ["8"], "0$1"]], "0"], "CV": ["238", "0", "(?:[2-59]\\d\\d|800)\\d{4}", [7], [["(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3", ["[2-589]"]]]], "CW": ["599", "00", "(?:[34]1|60|(?:7|9\\d)\\d)\\d{5}", [7, 8], [["(\\d{3})(\\d{4})", "$1 $2", ["[3467]"]], ["(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["9[4-8]"]]], 0, 0, 0, 0, 0, "[69]"], "CX": ["61", "001[14-689]|14(?:1[14]|34|4[17]|[56]6|7[47]|88)0011", "1(?:[0-79]\\d{8}(?:\\d{2})?|8[0-24-9]\\d{7})|[148]\\d{8}|1\\d{5,7}", [6, 7, 8, 9, 10, 12], 0, "0", 0, "([59]\\d{7})$|0", "8$1", 0, 0, [["8(?:51(?:0(?:01|30|59|88)|1(?:17|46|75)|2(?:22|35))|91(?:00[6-9]|1(?:[28]1|49|78)|2(?:09|63)|3(?:12|26|75)|4(?:56|97)|64\\d|7(?:0[01]|1[0-2])|958))\\d{3}", [9]], ["4(?:79[01]|83[0-36-9]|95[0-3])\\d{5}|4(?:[0-36]\\d|4[047-9]|[58][0-24-9]|7[02-8]|9[0-47-9])\\d{6}", [9]], ["180(?:0\\d{3}|2)\\d{3}", [7, 10]], ["190[0-26]\\d{6}", [10]], 0, 0, 0, 0, ["14(?:5(?:1[0458]|[23][458])|71\\d)\\d{4}", [9]], ["13(?:00\\d{6}(?:\\d{2})?|45[0-4]\\d{3})|13\\d{4}", [6, 8, 10, 12]]], "0011"], "CY": ["357", "00", "(?:[279]\\d|[58]0)\\d{6}", [8], [["(\\d{2})(\\d{6})", "$1 $2", ["[257-9]"]]]], "CZ": ["420", "00", "(?:[2-578]\\d|60)\\d{7}|9\\d{8,11}", [9, 10, 11, 12], [["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[2-8]|9[015-7]"]], ["(\\d{2})(\\d{3})(\\d{3})(\\d{2})", "$1 $2 $3 $4", ["96"]], ["(\\d{2})(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["9"]], ["(\\d{3})(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["9"]]]], "DE": ["49", "00", "[2579]\\d{5,14}|49(?:[34]0|69|8\\d)\\d\\d?|49(?:37|49|60|7[089]|9\\d)\\d{1,3}|49(?:2[024-9]|3[2-689]|7[1-7])\\d{1,8}|(?:1|[368]\\d|4[0-8])\\d{3,13}|49(?:[015]\\d|2[13]|31|[46][1-8])\\d{1,9}", [4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15], [["(\\d{2})(\\d{3,13})", "$1 $2", ["3[02]|40|[68]9"], "0$1"], ["(\\d{3})(\\d{3,12})", "$1 $2", ["2(?:0[1-389]|1[124]|2[18]|3[14])|3(?:[35-9][15]|4[015])|906|(?:2[4-9]|4[2-9]|[579][1-9]|[68][1-8])1", "2(?:0[1-389]|12[0-8])|3(?:[35-9][15]|4[015])|906|2(?:[13][14]|2[18])|(?:2[4-9]|4[2-9]|[579][1-9]|[68][1-8])1"], "0$1"], ["(\\d{4})(\\d{2,11})", "$1 $2", ["[24-6]|3(?:[3569][02-46-9]|4[2-4679]|7[2-467]|8[2-46-8])|70[2-8]|8(?:0[2-9]|[1-8])|90[7-9]|[79][1-9]", "[24-6]|3(?:3(?:0[1-467]|2[127-9]|3[124578]|7[1257-9]|8[1256]|9[145])|4(?:2[135]|4[13578]|9[1346])|5(?:0[14]|2[1-3589]|6[1-4]|7[13468]|8[13568])|6(?:2[1-489]|3[124-6]|6[13]|7[12579]|8[1-356]|9[135])|7(?:2[1-7]|4[145]|6[1-5]|7[1-4])|8(?:21|3[1468]|6|7[1467]|8[136])|9(?:0[12479]|2[1358]|4[134679]|6[1-9]|7[136]|8[147]|9[1468]))|70[2-8]|8(?:0[2-9]|[1-8])|90[7-9]|[79][1-9]|3[68]4[1347]|3(?:47|60)[1356]|3(?:3[46]|46|5[49])[1246]|3[4579]3[1357]"], "0$1"], ["(\\d{3})(\\d{4})", "$1 $2", ["138"], "0$1"], ["(\\d{5})(\\d{2,10})", "$1 $2", ["3"], "0$1"], ["(\\d{3})(\\d{5,11})", "$1 $2", ["181"], "0$1"], ["(\\d{3})(\\d)(\\d{4,10})", "$1 $2 $3", ["1(?:3|80)|9"], "0$1"], ["(\\d{3})(\\d{7,8})", "$1 $2", ["1[67]"], "0$1"], ["(\\d{3})(\\d{7,12})", "$1 $2", ["8"], "0$1"], ["(\\d{5})(\\d{6})", "$1 $2", ["185", "1850", "18500"], "0$1"], ["(\\d{3})(\\d{4})(\\d{4})", "$1 $2 $3", ["7"], "0$1"], ["(\\d{4})(\\d{7})", "$1 $2", ["18[68]"], "0$1"], ["(\\d{4})(\\d{7})", "$1 $2", ["15[1279]"], "0$1"], ["(\\d{5})(\\d{6})", "$1 $2", ["15[03568]", "15(?:[0568]|3[13])"], "0$1"], ["(\\d{3})(\\d{8})", "$1 $2", ["18"], "0$1"], ["(\\d{3})(\\d{2})(\\d{7,8})", "$1 $2 $3", ["1(?:6[023]|7)"], "0$1"], ["(\\d{4})(\\d{2})(\\d{7})", "$1 $2 $3", ["15[279]"], "0$1"], ["(\\d{3})(\\d{2})(\\d{8})", "$1 $2 $3", ["15"], "0$1"]], "0"], "DJ": ["253", "00", "(?:2\\d|77)\\d{6}", [8], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[27]"]]]], "DK": ["45", "00", "[2-9]\\d{7}", [8], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[2-9]"]]]], "DM": ["1", "011", "(?:[58]\\d\\d|767|900)\\d{7}", [10], 0, "1", 0, "([2-7]\\d{6})$|1", "767$1", 0, "767"], "DO": ["1", "011", "(?:[58]\\d\\d|900)\\d{7}", [10], 0, "1", 0, 0, 0, 0, "8001|8[024]9"], "DZ": ["213", "00", "(?:[1-4]|[5-79]\\d|80)\\d{7}", [8, 9], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[1-4]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["9"], "0$1"], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[5-8]"], "0$1"]], "0"], "EC": ["593", "00", "1\\d{9,10}|(?:[2-7]|9\\d)\\d{7}", [8, 9, 10, 11], [["(\\d)(\\d{3})(\\d{4})", "$1 $2-$3", ["[2-7]"], "(0$1)", 0, "$1-$2-$3"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["9"], "0$1"], ["(\\d{4})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["1"]]], "0"], "EE": ["372", "00", "8\\d{9}|[4578]\\d{7}|(?:[3-8]\\d|90)\\d{5}", [7, 8, 10], [["(\\d{3})(\\d{4})", "$1 $2", ["[369]|4[3-8]|5(?:[0-2]|5[0-478]|6[45])|7[1-9]|88", "[369]|4[3-8]|5(?:[02]|1(?:[0-8]|95)|5[0-478]|6(?:4[0-4]|5[1-589]))|7[1-9]|88"]], ["(\\d{4})(\\d{3,4})", "$1 $2", ["[45]|8(?:00|[1-49])", "[45]|8(?:00[1-9]|[1-49])"]], ["(\\d{2})(\\d{2})(\\d{4})", "$1 $2 $3", ["7"]], ["(\\d{4})(\\d{3})(\\d{3})", "$1 $2 $3", ["8"]]]], "EG": ["20", "00", "[189]\\d{8,9}|[24-6]\\d{8}|[135]\\d{7}", [8, 9, 10], [["(\\d)(\\d{7,8})", "$1 $2", ["[23]"], "0$1"], ["(\\d{2})(\\d{6,7})", "$1 $2", ["1[35]|[4-6]|8[2468]|9[235-7]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["[89]"], "0$1"], ["(\\d{2})(\\d{8})", "$1 $2", ["1"], "0$1"]], "0"], "EH": ["212", "00", "[5-8]\\d{8}", [9], 0, "0", 0, 0, 0, 0, 0, [["528[89]\\d{5}"], ["(?:6(?:[0-79]\\d|8[0-247-9])|7(?:[016-8]\\d|2[0-8]|3[01]|5[0-5]))\\d{6}"], ["80[0-7]\\d{6}"], ["89\\d{7}"], 0, 0, 0, 0, ["(?:592(?:4[0-2]|93)|80[89]\\d\\d)\\d{4}"]]], "ER": ["291", "00", "[178]\\d{6}", [7], [["(\\d)(\\d{3})(\\d{3})", "$1 $2 $3", ["[178]"], "0$1"]], "0"], "ES": ["34", "00", "(?:400|[5-9]\\d\\d)\\d{6}", [9], [["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[89]00"]], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[4-9]"]]]], "ET": ["251", "00", "(?:11|[2-57-9]\\d)\\d{7}", [9], [["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[1-57-9]"], "0$1"]], "0"], "FI": ["358", "00|99(?:[01469]|5(?:[14]1|3[23]|5[59]|77|88|9[09]))", "[1-35689]\\d{4}|7\\d{10,11}|(?:[124-7]\\d|3[0-46-9])\\d{8}|[1-9]\\d{5,8}", [5, 6, 7, 8, 9, 10, 11, 12], [["(\\d{5})", "$1", ["20[2-59]"], "0$1"], ["(\\d{3})(\\d{3,7})", "$1 $2", ["(?:[1-3]0|[68])0|70[07-9]"], "0$1"], ["(\\d{2})(\\d{4,8})", "$1 $2", ["[14]|2[09]|50|7[135]"], "0$1"], ["(\\d{2})(\\d{6,10})", "$1 $2", ["7"], "0$1"], ["(\\d)(\\d{4,9})", "$1 $2", ["(?:19|[2568])[1-8]|3(?:0[1-9]|[1-9])|9"], "0$1"]], "0", 0, 0, 0, 0, "1[03-79]|[2-9]", 0, "00"], "FJ": ["679", "0(?:0|52)", "45\\d{5}|(?:0800\\d|[235-9])\\d{6}", [7, 11], [["(\\d{3})(\\d{4})", "$1 $2", ["[235-9]|45"]], ["(\\d{4})(\\d{3})(\\d{4})", "$1 $2 $3", ["0"]]], 0, 0, 0, 0, 0, 0, 0, "00"], "FK": ["500", "00", "[2-7]\\d{4}", [5]], "FM": ["691", "00", "(?:[39]\\d\\d|820)\\d{4}", [7], [["(\\d{3})(\\d{4})", "$1 $2", ["[389]"]]]], "FO": ["298", "00", "[2-9]\\d{5}", [6], [["(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3", ["[2-9]"]]], 0, 0, "(10(?:01|[12]0|88))"], "FR": ["33", "00", "[1-9]\\d{8}", [9], [["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["8"], "0 $1"], ["(\\d)(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4 $5", ["[1-79]"], "0$1"]], "0"], "GA": ["241", "00", "(?:[067]\\d|11)\\d{6}|[2-7]\\d{6}", [7, 8], [["(\\d)(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[2-7]"], "0$1"], ["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["0"]], ["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["11|[67]"], "0$1"]], 0, 0, "0(11\\d{6}|60\\d{6}|61\\d{6}|6[256]\\d{6}|7[467]\\d{6})", "$1"], "GB": ["44", "00", "[1-357-9]\\d{9}|[18]\\d{8}|8\\d{6}", [7, 9, 10], [["(\\d{3})(\\d{4})", "$1 $2", ["800", "8001", "80011", "800111", "8001111"], "0$1"], ["(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3", ["845", "8454", "84546", "845464"], "0$1"], ["(\\d{3})(\\d{6})", "$1 $2", ["800"], "0$1"], ["(\\d{5})(\\d{4,5})", "$1 $2", ["1(?:38|5[23]|69|76|94)", "1(?:(?:38|69)7|5(?:24|39)|768|946)", "1(?:3873|5(?:242|39[4-6])|(?:697|768)[347]|9467)"], "0$1"], ["(\\d{4})(\\d{5,6})", "$1 $2", ["1(?:[2-69][02-9]|[78])"], "0$1"], ["(\\d{2})(\\d{4})(\\d{4})", "$1 $2 $3", ["[25]|7(?:0|6[02-9])", "[25]|7(?:0|6(?:[03-9]|2[356]))"], "0$1"], ["(\\d{4})(\\d{6})", "$1 $2", ["7"], "0$1"], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["[1389]"], "0$1"]], "0", 0, "0|180020", 0, 0, 0, [["(?:1(?:1(?:3(?:[0-58]\\d\\d|73[0-5])|4(?:(?:[0-5]\\d|70)\\d|69[7-9])|(?:(?:5[0-26-9]|[78][0-49])\\d|6(?:[0-4]\\d|5[01]))\\d)|(?:2(?:(?:0[024-9]|2[3-9]|3[3-79]|4[1-689]|[58][02-9]|6[0-47-9]|7[013-9]|9\\d)\\d|1(?:[0-7]\\d|8[0-3]))|(?:3(?:0\\d|1[0-8]|[25][02-9]|3[02-579]|[468][0-46-9]|7[1-35-79]|9[2-578])|4(?:0[03-9]|[137]\\d|[28][02-57-9]|4[02-69]|5[0-8]|[69][0-79])|5(?:0[1-35-9]|[16]\\d|2[024-9]|3[015689]|4[02-9]|5[03-9]|7[0-35-9]|8[0-468]|9[0-57-9])|6(?:0[034689]|1\\d|2[0-35689]|[38][013-9]|4[1-467]|5[0-69]|6[13-9]|7[0-8]|9[0-24578])|7(?:0[0246-9]|2\\d|3[0236-8]|4[03-9]|5[0-46-9]|6[013-9]|7[0-35-9]|8[024-9]|9[02-9])|8(?:0[35-9]|2[1-57-9]|3[02-578]|4[0-578]|5[124-9]|6[2-69]|7\\d|8[02-9]|9[02569])|9(?:0[02-589]|[18]\\d|2[02-689]|3[1-57-9]|4[2-9]|5[0-579]|6[2-47-9]|7[0-24578]|9[2-57]))\\d)\\d)|2(?:0[013478]|3[0189]|4[017]|8[0-46-9]|9[0-2])\\d{3})\\d{4}|1(?:2(?:0(?:46[1-4]|87[2-9])|545[1-79]|76(?:2\\d|3[1-8]|6[1-6])|9(?:7(?:2[0-4]|3[2-5])|8(?:2[2-8]|7[0-47-9]|8[3-5])))|3(?:6(?:38[2-5]|47[23])|8(?:47[04-9]|64[0157-9]))|4(?:044[1-7]|20(?:2[23]|8\\d)|6(?:0(?:30|5[2-57]|6[1-8]|7[2-8])|140)|8(?:052|87[1-3]))|5(?:2(?:4(?:3[2-79]|6\\d)|76\\d)|6(?:26[06-9]|686))|6(?:06(?:4\\d|7[4-79])|295[5-7]|35[34]\\d|47(?:24|61)|59(?:5[08]|6[67]|74)|9(?:55[0-4]|77[23]))|7(?:26(?:6[13-9]|7[0-7])|(?:442|688)\\d|50(?:2[0-3]|[3-68]2|76))|8(?:27[56]\\d|37(?:5[2-5]|8[239])|843[2-58])|9(?:0(?:0(?:6[1-8]|85)|52\\d)|3583|4(?:66[1-8]|9(?:2[01]|81))|63(?:23|3[1-4])|9561))\\d{3}", [9, 10]], ["7(?:457[0-57-9]|700[01]|911[028])\\d{5}|7(?:[1-3]\\d\\d|4(?:[0-46-9]\\d|5[0-689])|5(?:0[0-8]|[13-9]\\d|2[0-35-9])|7(?:0[1-9]|[1-7]\\d|8[02-9]|9[0-689])|8(?:[014-9]\\d|[23][0-8])|9(?:[024-9]\\d|1[02-9]|3[0-689]))\\d{6}", [10]], ["80[08]\\d{7}|800\\d{6}|8001111"], ["(?:8(?:4[2-5]|7[0-3])|9(?:[01]\\d|8[2-49]))\\d{7}|845464\\d", [7, 10]], ["70\\d{8}", [10]], 0, ["(?:3[0347]|55)\\d{8}", [10]], ["76(?:464|652)\\d{5}|76(?:0[0-28]|2[356]|34|4[01347]|5[49]|6[0-369]|77|8[14]|9[139])\\d{6}", [10]], ["56\\d{8}", [10]]], 0, " x"], "GD": ["1", "011", "(?:473|[58]\\d\\d|900)\\d{7}", [10], 0, "1", 0, "([2-9]\\d{6})$|1", "473$1", 0, "473"], "GE": ["995", "00", "(?:[3-57]\\d\\d|800)\\d{6}", [9], [["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["70"], "0$1"], ["(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["32"], "0$1"], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[57]"]], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[348]"], "0$1"]], "0"], "GF": ["594", "00", "(?:694\\d|7093)\\d{5}|(?:59|[89]\\d)\\d{7}", [9], [["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[5-7]|80[6-9]|9[47]"], "0$1"], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[89]"], "0$1"]], "0"], "GG": ["44", "00", "(?:1481|[357-9]\\d{3})\\d{6}|8\\d{6}(?:\\d{2})?", [7, 9, 10], 0, "0", 0, "([25-9]\\d{5})$|0|180020", "1481$1", 0, 0, [["1481[25-9]\\d{5}", [10]], ["7(?:(?:781|839)\\d|911[17])\\d{5}", [10]], ["80[08]\\d{7}|800\\d{6}|8001111"], ["(?:8(?:4[2-5]|7[0-3])|9(?:[01]\\d|8[0-3]))\\d{7}|845464\\d", [7, 10]], ["70\\d{8}", [10]], 0, ["(?:3[0347]|55)\\d{8}", [10]], ["76(?:464|652)\\d{5}|76(?:0[0-28]|2[356]|34|4[01347]|5[49]|6[0-369]|77|8[14]|9[139])\\d{6}", [10]], ["56\\d{8}", [10]]]], "GH": ["233", "00", "[235]\\d{8}|800\\d{5,6}", [8, 9], [["(\\d{3})(\\d{5})", "$1 $2", ["8"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[2358]"], "0$1"]], "0"], "GI": ["350", "00", "(?:[25]\\d|60)\\d{6}", [8], [["(\\d{3})(\\d{5})", "$1 $2", ["2"]]]], "GL": ["299", "00", "(?:19|[2-689]\\d|70)\\d{4}", [6], [["(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3", ["19|[2-9]"]]]], "GM": ["220", "00", "[48]\\d{8}|[2-9]\\d{6}", [7, 9], [["(\\d{3})(\\d{4})", "$1 $2", ["[235-9]|4(?:[0-35]|4[16-9])"]], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[48]"]]]], "GN": ["224", "00", "722\\d{6}|(?:3|6\\d)\\d{7}", [8, 9], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["3"]], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[67]"]]]], "GP": ["590", "00", "7090\\d{5}|(?:[56]9|[89]\\d)\\d{7}", [9], [["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[5-79]|80[6-9]"], "0$1"], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["8"], "0$1"]], "0", 0, 0, 0, 0, 0, [["(?:59(?:0(?:0[1-68]|[14][0-24-9]|2[0-68]|3[1-9]|5[3-579]|[68][0-689]|7[08]|9\\d)|87\\d)|80[6-9]\\d\\d)\\d{4}"], ["(?:69(?:0\\d\\d|1(?:2[2-9]|3[0-5]))|7090[0-4])\\d{4}"], ["80[0-5]\\d{6}"], ["8[129]\\d{7}"], 0, 0, 0, 0, ["9(?:(?:39[5-7]|76[018])\\d|475[0-6])\\d{4}"]]], "GQ": ["240", "00", "222\\d{6}|(?:3\\d|55|[89]0)\\d{7}", [9], [["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[235]"]], ["(\\d{3})(\\d{6})", "$1 $2", ["[89]"]]]], "GR": ["30", "00", "5005000\\d{3}|8\\d{9,11}|(?:[269]\\d|70)\\d{8}", [10, 11, 12], [["(\\d{2})(\\d{4})(\\d{4})", "$1 $2 $3", ["21|7"]], ["(\\d{4})(\\d{6})", "$1 $2", ["2(?:2|3[2-57-9]|4[2-469]|5[2-59]|6[2-9]|7[2-69]|8[2-49])|5"]], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["[2689]"]], ["(\\d{3})(\\d{3,4})(\\d{5})", "$1 $2 $3", ["8"]]]], "GT": ["502", "00", "80\\d{6}|(?:1\\d{3}|[2-7])\\d{7}", [8, 11], [["(\\d{4})(\\d{4})", "$1 $2", ["[2-8]"]], ["(\\d{4})(\\d{3})(\\d{4})", "$1 $2 $3", ["1"]]]], "GU": ["1", "011", "(?:[58]\\d\\d|671|900)\\d{7}", [10], 0, "1", 0, "([2-9]\\d{6})$|1", "671$1", 0, "671"], "GW": ["245", "00", "[49]\\d{8}|4\\d{6}", [7, 9], [["(\\d{3})(\\d{4})", "$1 $2", ["40"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[49]"]]]], "GY": ["592", "001", "(?:[2-8]\\d{3}|9008)\\d{3}", [7], [["(\\d{3})(\\d{4})", "$1 $2", ["[2-9]"]]]], "HK": ["852", "00(?:30|5[09]|[126-9]?)", "8[0-46-9]\\d{6,7}|9\\d{4,7}|(?:[2-7]|9\\d{3})\\d{7}", [5, 6, 7, 8, 9, 11], [["(\\d{3})(\\d{2,5})", "$1 $2", ["900", "9003"]], ["(\\d{4})(\\d{4})", "$1 $2", ["[2-7]|8[1-4]|9(?:0[1-9]|[1-8])"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["8"]], ["(\\d{3})(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["9"]]], 0, 0, 0, 0, 0, 0, 0, "00"], "HN": ["504", "00", "8\\d{10}|[237-9]\\d{7}", [8, 11], [["(\\d{4})(\\d{4})", "$1-$2", ["[237-9]"]]]], "HR": ["385", "00", "[2-69]\\d{8}|80\\d{5,7}|[1-79]\\d{7}|6\\d{6}", [7, 8, 9], [["(\\d{2})(\\d{2})(\\d{3})", "$1 $2 $3", ["6[01]"], "0$1"], ["(\\d{3})(\\d{2})(\\d{2,3})", "$1 $2 $3", ["8"], "0$1"], ["(\\d)(\\d{4})(\\d{3})", "$1 $2 $3", ["1"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["6|7[245]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["9"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[2-57]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["8"], "0$1"]], "0"], "HT": ["509", "00", "[2-589]\\d{7}", [8], [["(\\d{2})(\\d{2})(\\d{4})", "$1 $2 $3", ["[2-589]"]]]], "HU": ["36", "00", "[235-7]\\d{8}|[1-9]\\d{7}", [8, 9], [["(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["1"], "(06 $1)"], ["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["[27][2-9]|3[2-7]|4[24-9]|5[2-79]|6|8[2-57-9]|9[2-69]"], "(06 $1)"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[2-9]"], "06 $1"]], "06"], "ID": ["62", "00[89]", "00[1-9]\\d{9,14}|(?:[1-36]|8\\d{5})\\d{6}|00\\d{9}|[1-9]\\d{8,10}|[2-9]\\d{7}", [7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17], [["(\\d)(\\d{3})(\\d{3})", "$1 $2 $3", ["15"]], ["(\\d{2})(\\d{5,9})", "$1 $2", ["2[124]|[36]1"], "(0$1)"], ["(\\d{3})(\\d{5,7})", "$1 $2", ["800"], "0$1"], ["(\\d{3})(\\d{5,8})", "$1 $2", ["[2-79]"], "(0$1)"], ["(\\d{3})(\\d{3,4})(\\d{3})", "$1-$2-$3", ["8[1-35-9]"], "0$1"], ["(\\d{3})(\\d{6,8})", "$1 $2", ["1"], "0$1"], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["804"], "0$1"], ["(\\d{3})(\\d)(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["80"], "0$1"], ["(\\d{3})(\\d{4})(\\d{4,5})", "$1-$2-$3", ["8"], "0$1"]], "0"], "IE": ["353", "00", "(?:1\\d|[2569])\\d{6,8}|4\\d{6,9}|7\\d{8}|8\\d{8,9}", [7, 8, 9, 10], [["(\\d{2})(\\d{5})", "$1 $2", ["2[24-9]|47|58|6[237-9]|9[35-9]"], "(0$1)"], ["(\\d{3})(\\d{5})", "$1 $2", ["[45]0"], "(0$1)"], ["(\\d)(\\d{3,4})(\\d{4})", "$1 $2 $3", ["1"], "(0$1)"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[2569]|4[1-69]|7[14]"], "(0$1)"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["70"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["81"], "(0$1)"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[78]"], "0$1"], ["(\\d{4})(\\d{3})(\\d{3})", "$1 $2 $3", ["1"]], ["(\\d{2})(\\d{4})(\\d{4})", "$1 $2 $3", ["4"], "(0$1)"], ["(\\d{2})(\\d)(\\d{3})(\\d{4})", "$1 $2 $3 $4", ["8"], "0$1"]], "0"], "IL": ["972", "0(?:0|1(?:05|[2-9]))", "1\\d{6}(?:\\d{3,5})?|[57]\\d{8}|[1-489]\\d{7}", [7, 8, 9, 10, 11, 12], [["(\\d{4})(\\d{3})", "$1-$2", ["125"]], ["(\\d{4})(\\d{2})(\\d{2})", "$1-$2-$3", ["121"]], ["(\\d)(\\d{3})(\\d{4})", "$1-$2-$3", ["[2-489]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1-$2-$3", ["[57]"], "0$1"], ["(\\d{4})(\\d{3})(\\d{3})", "$1-$2-$3", ["12"]], ["(\\d{4})(\\d{6})", "$1-$2", ["159"]], ["(\\d)(\\d{3})(\\d{3})(\\d{3})", "$1-$2-$3-$4", ["1[7-9]"]], ["(\\d{3})(\\d{1,2})(\\d{3})(\\d{4})", "$1-$2 $3-$4", ["15"]]], "0"], "IM": ["44", "00", "1624\\d{6}|(?:[3578]\\d|90)\\d{8}", [10], 0, "0", 0, "([25-8]\\d{5})$|0|180020", "1624$1", 0, "74576|(?:16|7[56])24"], "IN": ["91", "00", "(?:000800|[2-9]\\d\\d)\\d{7}|1\\d{7,12}", [8, 9, 10, 11, 12, 13], [["(\\d{8})", "$1", ["5(?:0|2[23]|3[03]|[67]1|88)", "5(?:0|2(?:21|3)|3(?:0|3[23])|616|717|888)", "5(?:0|2(?:21|3)|3(?:0|3[23])|616|717|8888)"], 0, 1], ["(\\d{4})(\\d{4,5})", "$1 $2", ["180", "1800"], 0, 1], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["140"], 0, 1], ["(\\d{2})(\\d{4})(\\d{4})", "$1 $2 $3", ["11|2[02]|33|4[04]|79[1-6]|80[2-46]", "11|2[02]|33|4[04]|79[1-6]|80(?:[2-4]|6[0-589])", "11|2[02]|33|4[04]|79(?:[124-6]|3(?:[02-9]|1[0-24-9]))|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]|61|88)|8(?:16|2[014]|3[126]|6[136]|7[078]|8[34]|91)|(?:43|59|75)[15]|(?:1[59]|29|67)[14]", "1(?:2[0-24]|3[0-25]|4[145]|[59][14]|6[1-9]|7[1257]|8[1-57-9])|2(?:1[257]|3[013]|4[01]|5[0137]|6[058]|78|8[1568]|9[14])|3(?:26|4[1-3]|5[34]|6[01489]|7[02-46]|8[159])|4(?:1[36]|2[1-47]|3[15]|5[12]|6[0-26-9]|7[0-24-9]|8[013-57]|9[014-7])|5(?:1[025]|22|[36][25]|4[28]|[578]1|9[15])|674|7(?:(?:3[34]|5[15])[2-6]|61[346]|88[0-8])|8(?:70[2-6]|84[235-7]|91[3-7])|(?:1(?:29|60|8[06])|261|552|6(?:12|[2-47]1|5[17]|6[13]|80)|7(?:12|31)|8(?:16|2[014]|3[126]|6[136]|7[78]|83))[2-7]", "1(?:2[0-24]|3[0-25]|4[145]|[59][14]|6[1-9]|7[1257]|8[1-57-9])|2(?:1[257]|3[013]|4[01]|5[0137]|6[058]|78|8[1568]|9[14])|3(?:26|4[1-3]|5[34]|6[01489]|7[02-46]|8[159])|4(?:1[36]|2[1-47]|3[15]|5[12]|6[0-26-9]|7[0-24-9]|8[013-57]|9[014-7])|5(?:1[025]|22|[36][25]|4[28]|[578]1|9[15])|6(?:12(?:[2-6]|7[0-8])|74[2-7])|7(?:3171|5[15][2-6]|61[346]|88(?:[2-7]|82))|8(?:70[2-6]|84(?:[2356]|7[19])|91(?:[3-6]|7[19]))|73[134][2-6]|8(?:16|2[014]|3[126]|6[136]|7[78]|83)(?:[2-6]|7[19])|(?:1(?:29|60|8[06])|261|552|6(?:[2-4]1|5[17]|6[13]|7(?:1|4[0189])|80)|7(?:12|88[01]))[2-7]"], "0$1", 1], ["(\\d{4})(\\d{3})(\\d{3})", "$1 $2 $3", ["1(?:[2-479]|5[0235-9])|[2-5]|6(?:1[1358]|2[2457-9]|3[2-5]|4[235-7]|5[2-689]|6[24578]|7[235689]|8[1-6])|7(?:1[013-9]|3[129]|5[29]|6[02-5]|70)|807", "1(?:[2-479]|5[0235-9])|[2-5]|6(?:1[1358]|2(?:[2457]|84|95)|3(?:[2-4]|55)|4[235-7]|5[2-689]|6[24578]|7(?:[23569]|8[0-57-9])|8[1-6])|7(?:1(?:[013-8]|9[6-9])|3(?:17|2[0-49]|9[2-57])|5(?:2[1-3]|9[0-6])|6(?:0[5689]|2[5-9]|3[02-8]|4|5[0-367])|70[13-7])|807[19]", "1(?:[2-479]|5(?:[0236-9]|5[013-9]))|[2-5]|6(?:2(?:84|95)|355|8(?:28[235-7]|3))|73179|807(?:1|9[1-3])|(?:1552|6(?:(?:1[1358]|2[2457]|3[2-4]|4[235-7]|5[2-689]|6[24578])\\d|7(?:[23569]\\d|8[0-57-9])|8(?:[14-6]\\d|2[0-79]))|7(?:1(?:[013-8]\\d|9[6-9])|3(?:2[0-49]|9[2-57])|5(?:2[1-3]|9[0-6])|6(?:0[5689]|2[5-9]|3[02-8]|4\\d|5[0-367])|70[13-7]))[2-7]"], "0$1", 1], ["(\\d{5})(\\d{5})", "$1 $2", ["16|[6-9]"], "0$1", 1], ["(\\d{4})(\\d{2,4})(\\d{4})", "$1 $2 $3", ["18[06]", "18[06]0"], 0, 1], ["(\\d{4})(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["18"], 0, 1]], "0"], "IO": ["246", "00", "3\\d{6}", [7], [["(\\d{3})(\\d{4})", "$1 $2", ["3"]]]], "IQ": ["964", "00", "(?:1|7\\d\\d)\\d{7}|[2-6]\\d{7,8}", [8, 9, 10], [["(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["1"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[2-6]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["7"], "0$1"]], "0"], "IR": ["98", "00", "[1-9]\\d{9}|(?:[1-8]\\d\\d|9)\\d{3,4}", [4, 5, 6, 7, 10], [["(\\d{4,5})", "$1", ["96"], "0$1"], ["(\\d{2})(\\d{4,5})", "$1 $2", ["(?:1[137]|2[13-68]|3[1458]|4[145]|5[1468]|6[16]|7[1467]|8[13467])[12689]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["9"], "0$1"], ["(\\d{2})(\\d{4})(\\d{4})", "$1 $2 $3", ["[1-8]"], "0$1"]], "0"], "IS": ["354", "00|1(?:0(?:01|[12]0)|100)", "(?:38\\d|[4-9])\\d{6}", [7, 9], [["(\\d{3})(\\d{4})", "$1 $2", ["[4-9]"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["3"]]], 0, 0, 0, 0, 0, 0, 0, "00"], "IT": ["39", "00", "0\\d{5,11}|1\\d{8,10}|3(?:[0-8]\\d{7,10}|9\\d{7,8})|(?:43|55|70)\\d{8}|8\\d{5}(?:\\d{2,4})?", [6, 7, 8, 9, 10, 11, 12], [["(\\d{2})(\\d{4,6})", "$1 $2", ["0[26]"]], ["(\\d{3})(\\d{3,6})", "$1 $2", ["0[13-57-9][0159]|8(?:03|4[17]|9[2-5])", "0[13-57-9][0159]|8(?:03|4[17]|9(?:2|3[04]|[45][0-4]))"]], ["(\\d{4})(\\d{2,6})", "$1 $2", ["0(?:[13-579][2-46-8]|8[236-8])"]], ["(\\d{4})(\\d{4})", "$1 $2", ["894"]], ["(\\d{2})(\\d{3,4})(\\d{4})", "$1 $2 $3", ["0[26]|5"]], ["(\\d{3})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["1(?:44|[679])|[378]|43"]], ["(\\d{3})(\\d{3,4})(\\d{4})", "$1 $2 $3", ["0[13-57-9][0159]|14"]], ["(\\d{2})(\\d{4})(\\d{5})", "$1 $2 $3", ["0[26]"]], ["(\\d{4})(\\d{3})(\\d{4})", "$1 $2 $3", ["0"]], ["(\\d{3})(\\d{4})(\\d{4,5})", "$1 $2 $3", ["[03]"]]], 0, 0, 0, 0, 0, 0, [["0(?:669[0-79]\\d{1,6}|831\\d{2,8})|0(?:1(?:[0159]\\d|[27][1-5]|31|4[1-4]|6[1356]|8[2-57])|2\\d\\d|3(?:[0159]\\d|2[1-4]|3[12]|[48][1-6]|6[2-59]|7[1-7])|4(?:[0159]\\d|[23][1-9]|4[245]|6[1-5]|7[1-4]|81)|5(?:[0159]\\d|2[1-5]|3[2-6]|4[1-79]|6[4-6]|7[1-578]|8[3-8])|6(?:[0-57-9]\\d|6[0-8])|7(?:[0159]\\d|2[12]|3[1-7]|4[2-46]|6[13569]|7[13-6]|8[1-59])|8(?:[0159]\\d|2[3-578]|3[2356]|[6-8][1-5])|9(?:[0159]\\d|[238][1-5]|4[12]|6[1-8]|7[1-6]))\\d{2,7}"], ["3[2-9]\\d{7,8}|(?:31|43)\\d{8}", [9, 10]], ["80(?:0\\d{3}|3)\\d{3}", [6, 9]], ["(?:0878\\d{3}|89(?:2\\d|3[04]|4(?:[0-4]|[5-9]\\d\\d)|5[0-4]))\\d\\d|(?:1(?:44|6[346])|89(?:38|5[5-9]|9))\\d{6}", [6, 8, 9, 10]], ["1(?:78\\d|99)\\d{6}", [9, 10]], ["3[2-8]\\d{9,10}", [11, 12]], 0, 0, ["55\\d{8}", [10]], ["84(?:[08]\\d{3}|[17])\\d{3}", [6, 9]]]], "JE": ["44", "00", "1534\\d{6}|(?:[3578]\\d|90)\\d{8}", [10], 0, "0", 0, "([0-24-8]\\d{5})$|0|180020", "1534$1", 0, 0, [["1534[0-24-8]\\d{5}"], ["7(?:(?:(?:50|82)9|937)\\d|7(?:00[378]|97\\d))\\d{5}"], ["80(?:07(?:35|81)|8901)\\d{4}"], ["(?:8(?:4(?:4(?:4(?:05|42|69)|703)|5(?:041|800))|7(?:0002|1206))|90(?:066[59]|1810|71(?:07|55)))\\d{4}"], ["701511\\d{4}"], 0, ["(?:3(?:0(?:07(?:35|81)|8901)|3\\d{4}|4(?:4(?:4(?:05|42|69)|703)|5(?:041|800))|7(?:0002|1206))|55\\d{4})\\d{4}"], ["76(?:464|652)\\d{5}|76(?:0[0-28]|2[356]|34|4[01347]|5[49]|6[0-369]|77|8[14]|9[139])\\d{6}"], ["56\\d{8}"]]], "JM": ["1", "011", "(?:[58]\\d\\d|658|900)\\d{7}", [10], 0, "1", 0, 0, 0, 0, "658|876"], "JO": ["962", "00", "(?:(?:[2689]|7\\d)\\d|32|427|53)\\d{6}", [8, 9], [["(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["[2356]|87"], "(0$1)"], ["(\\d{3})(\\d{5,6})", "$1 $2", ["[89]"], "0$1"], ["(\\d{2})(\\d{7})", "$1 $2", ["70"], "0$1"], ["(\\d)(\\d{4})(\\d{4})", "$1 $2 $3", ["[47]"], "0$1"]], "0"], "JP": ["81", "010", "00[1-9]\\d{6,14}|[25-9]\\d{9}|(?:00|[1-9]\\d\\d)\\d{6}", [8, 9, 10, 11, 12, 13, 14, 15, 16, 17], [["(\\d{3})(\\d{3})(\\d{3})", "$1-$2-$3", ["(?:12|57|99)0"], "0$1"], ["(\\d{4})(\\d)(\\d{4})", "$1-$2-$3", ["1(?:26|3[79]|4[56]|5[4-68]|6[3-5])|499|5(?:76|97)|746|8(?:3[89]|47|51)|9(?:80|9[16])", "1(?:267|3(?:7[247]|9[278])|466|5(?:47|58|64)|6(?:3[245]|48|5[4-68]))|499[2468]|5(?:76|97)9|7468|8(?:3(?:8[7-9]|96)|477|51[2-9])|9(?:802|9(?:1[23]|69))|1(?:45|58)[67]", "1(?:267|3(?:7[247]|9[278])|466|5(?:47|58|64)|6(?:3[245]|48|5[4-68]))|499[2468]|5(?:769|979[2-69])|7468|8(?:3(?:8[7-9]|96[2457-9])|477|51[2-9])|9(?:802|9(?:1[23]|69))|1(?:45|58)[67]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1-$2-$3", ["60"], "0$1"], ["(\\d)(\\d{4})(\\d{4})", "$1-$2-$3", ["3|4(?:2[09]|7[01])|6[1-9]", "3|4(?:2(?:0|9[02-69])|7(?:0[019]|1))|6[1-9]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1-$2-$3", ["1(?:1|5[45]|77|88|9[69])|2(?:2[1-37]|3[0-269]|4[59]|5|6[24]|7[1-358]|8[1369]|9[0-38])|4(?:[28][1-9]|3[0-57]|[45]|6[248]|7[2-579]|9[29])|5(?:2|3[0459]|4[0-369]|5[29]|8[02389]|9[0-389])|7(?:2[02-46-9]|34|[58]|6[0249]|7[57]|9[2-6])|8(?:2[124589]|3[26-9]|49|51|6|7[0-468]|8[68]|9[019])|9(?:[23][1-9]|4[15]|5[138]|6[1-3]|7[156]|8[189]|9[1-489])", "1(?:1|5(?:4[018]|5[017])|77|88|9[69])|2(?:2(?:[127]|3[014-9])|3[0-269]|4[59]|5(?:[1-3]|5[0-69]|9[19])|62|7(?:[1-35]|8[0189])|8(?:[16]|3[0134]|9[0-5])|9(?:[028]|17))|4(?:2(?:[13-79]|8[014-6])|3[0-57]|[45]|6[248]|7[2-47]|8[1-9]|9[29])|5(?:2|3(?:[045]|9[0-8])|4[0-369]|5[29]|8[02389]|9[0-3])|7(?:2[02-46-9]|34|[58]|6[0249]|7[57]|9(?:[23]|4[0-59]|5[01569]|6[0167]))|8(?:2(?:[1258]|4[0-39]|9[0-2469])|3(?:[29]|60)|49|51|6(?:[0-24]|36|5[0-3589]|7[23]|9[01459])|7[0-468]|8[68])|9(?:[23][1-9]|4[15]|5[138]|6[1-3]|7[156]|8[189]|9(?:[1289]|3[34]|4[0178]))|(?:264|837)[016-9]|2(?:57|93)[015-9]|(?:25[0468]|422|838)[01]|(?:47[59]|59[89]|8(?:6[68]|9))[019]", "1(?:1|5(?:4[018]|5[017])|77|88|9[69])|2(?:2[127]|3[0-269]|4[59]|5(?:[1-3]|5[0-69]|9(?:17|99))|6(?:2|4[016-9])|7(?:[1-35]|8[0189])|8(?:[16]|3[0134]|9[0-5])|9(?:[028]|17))|4(?:2(?:[13-79]|8[014-6])|3[0-57]|[45]|6[248]|7[2-47]|9[29])|5(?:2|3(?:[045]|9(?:[0-58]|6[4-9]|7[0-35689]))|4[0-369]|5[29]|8[02389]|9[0-3])|7(?:2[02-46-9]|34|[58]|6[0249]|7[57]|9(?:[23]|4[0-59]|5[01569]|6[0167]))|8(?:2(?:[1258]|4[0-39]|9[0169])|3(?:[29]|60|7(?:[017-9]|6[6-8]))|49|51|6(?:[0-24]|36[2-57-9]|5(?:[0-389]|5[23])|6(?:[01]|9[178])|7(?:2[2-468]|3[78])|9[0145])|7[0-468]|8[68])|9(?:4[15]|5[138]|7[156]|8[189]|9(?:[1289]|3(?:31|4[357])|4[0178]))|(?:8294|96)[1-3]|2(?:57|93)[015-9]|(?:223|8699)[014-9]|(?:25[0468]|422|838)[01]|(?:48|8292|9[23])[1-9]|(?:47[59]|59[89]|8(?:68|9))[019]"], "0$1"], ["(\\d{3})(\\d{2})(\\d{4})", "$1-$2-$3", ["[14]|[289][2-9]|5[3-9]|7[2-4679]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{4})", "$1-$2-$3", ["800"], "0$1"], ["(\\d{2})(\\d{4})(\\d{4})", "$1-$2-$3", ["[25-9]"], "0$1"]], "0", 0, "(000[2569]\\d{4,6})$|(?:(?:003768)0?)|0", "$1"], "KE": ["254", "000", "(?:[17]\\d\\d|900)\\d{6}|(?:2|80)0\\d{6,7}|[4-6]\\d{6,8}", [7, 8, 9, 10], [["(\\d{2})(\\d{5,7})", "$1 $2", ["[24-6]"], "0$1"], ["(\\d{3})(\\d{6})", "$1 $2", ["[17]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[89]"], "0$1"]], "0"], "KG": ["996", "00", "8\\d{9}|[235-9]\\d{8}", [9, 10], [["(\\d{4})(\\d{5})", "$1 $2", ["3(?:1[346]|[24-79])"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[235-79]|88"], "0$1"], ["(\\d{3})(\\d{3})(\\d)(\\d{2,3})", "$1 $2 $3 $4", ["8"], "0$1"]], "0"], "KH": ["855", "00[14-9]", "1\\d{9}|[1-9]\\d{7,8}", [8, 9, 10], [["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[1-9]"], "0$1"], ["(\\d{4})(\\d{3})(\\d{3})", "$1 $2 $3", ["1"]]], "0"], "KI": ["686", "00", "(?:[37]\\d|6[0-79])\\d{6}|(?:[2-48]\\d|50)\\d{3}", [5, 8], 0, "0"], "KM": ["269", "00", "[3478]\\d{6}", [7], [["(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3", ["[3478]"]]]], "KN": ["1", "011", "(?:[58]\\d\\d|900)\\d{7}", [10], 0, "1", 0, "([2-7]\\d{6})$|1", "869$1", 0, "869"], "KP": ["850", "00|99", "85\\d{6}|(?:19\\d|[2-7])\\d{7}", [8, 10], [["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["8"], "0$1"], ["(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["[2-7]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["1"], "0$1"]], "0"], "KR": ["82", "00(?:[125689]|3(?:[46]5|91)|7(?:00|27|3|55|6[126]))", "00[1-9]\\d{8,11}|(?:[12]|5\\d{3})\\d{7}|[13-6]\\d{9}|(?:[1-6]\\d|80)\\d{7}|[3-6]\\d{4,5}|(?:00|7)0\\d{8}", [5, 6, 8, 9, 10, 11, 12, 13, 14], [["(\\d{2})(\\d{3,4})", "$1-$2", ["(?:3[1-3]|[46][1-4]|5[1-5])1"], "0$1"], ["(\\d{4})(\\d{4})", "$1-$2", ["1"]], ["(\\d)(\\d{3,4})(\\d{4})", "$1-$2-$3", ["2"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1-$2-$3", ["[36]0|8"], "0$1"], ["(\\d{2})(\\d{3,4})(\\d{4})", "$1-$2-$3", ["[1346]|5[1-5]"], "0$1"], ["(\\d{2})(\\d{4})(\\d{4})", "$1-$2-$3", ["[57]"], "0$1"], ["(\\d{2})(\\d{5})(\\d{4})", "$1-$2-$3", ["5"], "0$1"]], "0", 0, "0(8(?:[1-46-8]|5\\d\\d))?"], "KW": ["965", "00", "18\\d{5}|(?:[2569]\\d|41)\\d{6}", [7, 8], [["(\\d{4})(\\d{3,4})", "$1 $2", ["[169]|2(?:[235]|4[1-35-9])|52"]], ["(\\d{3})(\\d{5})", "$1 $2", ["[245]"]]]], "KY": ["1", "011", "(?:345|[58]\\d\\d|900)\\d{7}", [10], 0, "1", 0, "([2-9]\\d{6})$|1", "345$1", 0, "345"], "KZ": ["7", "810", "8\\d{13}|[78]\\d{9}", [10, 14], 0, "8", 0, 0, 0, 0, "7", 0, "8~10"], "LA": ["856", "00", "[23]\\d{9}|3\\d{8}|(?:[235-8]\\d|41)\\d{6}", [8, 9, 10], [["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["2[13]|3[14]|[4-8]"], "0$1"], ["(\\d{2})(\\d{2})(\\d{2})(\\d{3})", "$1 $2 $3 $4", ["3"], "0$1"], ["(\\d{2})(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["[23]"], "0$1"]], "0"], "LB": ["961", "00", "[27-9]\\d{7}|[13-9]\\d{6}", [7, 8], [["(\\d)(\\d{3})(\\d{3})", "$1 $2 $3", ["[13-69]|7(?:[2-57]|62|8[0-6]|9[04-9])|8[02-9]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["[27-9]"]]], "0"], "LC": ["1", "011", "(?:[58]\\d\\d|758|900)\\d{7}", [10], 0, "1", 0, "([2-8]\\d{6})$|1", "758$1", 0, "758"], "LI": ["423", "00", "[68]\\d{8}|(?:[2378]\\d|90)\\d{5}", [7, 9], [["(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3", ["[2379]|8(?:0[09]|7)", "[2379]|8(?:0(?:02|9)|7)"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["8"]], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["69"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["6"]]], "0", 0, "(1001)|0"], "LK": ["94", "00", "[1-9]\\d{8}", [9], [["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["7"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[1-689]"], "0$1"]], "0"], "LR": ["231", "00", "(?:[2457]\\d|33|88)\\d{7}|(?:2\\d|[4-6])\\d{6}", [7, 8, 9], [["(\\d)(\\d{3})(\\d{3})", "$1 $2 $3", ["4[67]|[56]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["2"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[2-578]"], "0$1"]], "0"], "LS": ["266", "00", "(?:[256]\\d\\d|800)\\d{5}", [8], [["(\\d{4})(\\d{4})", "$1 $2", ["[2568]"]]]], "LT": ["370", "00", "(?:[3469]\\d|52|[78]0)\\d{6}", [8], [["(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["52[0-7]"], "(0-$1)", 1], ["(\\d{3})(\\d{2})(\\d{3})", "$1 $2 $3", ["[7-9]"], "0 $1", 1], ["(\\d{2})(\\d{6})", "$1 $2", ["37|4(?:[15]|6[1-8])"], "(0-$1)", 1], ["(\\d{3})(\\d{5})", "$1 $2", ["[3-6]"], "(0-$1)", 1]], "0", 0, "[08]"], "LU": ["352", "00", "35[013-9]\\d{4,8}|6\\d{8}|35\\d{2,4}|(?:[2457-9]\\d|3[0-46-9])\\d{2,9}", [4, 5, 6, 7, 8, 9, 10, 11], [["(\\d{2})(\\d{3})", "$1 $2", ["2(?:0[2-689]|[2-9])|[3-57]|8(?:0[2-9]|[13-9])|9(?:0[89]|[2-579])"]], ["(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3", ["2(?:0[2-689]|[2-9])|[3-57]|8(?:0[2-9]|[13-9])|9(?:0[89]|[2-579])"]], ["(\\d{2})(\\d{2})(\\d{3})", "$1 $2 $3", ["20[2-689]"]], ["(\\d{2})(\\d{2})(\\d{2})(\\d{1,2})", "$1 $2 $3 $4", ["20"]], ["(\\d{2})(\\d{2})(\\d{2})(\\d{1,5})", "$1 $2 $3 $4", ["[3-57]|8[13-9]|9(?:0[89]|[2-579])|(?:2|80)[2-9]"]], ["(\\d{3})(\\d{2})(\\d{3})", "$1 $2 $3", ["80[01]|90[015]"]], ["(\\d{2})(\\d{2})(\\d{2})(\\d{3})", "$1 $2 $3 $4", ["20"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["6"]], ["(\\d{2})(\\d{2})(\\d{2})(\\d{2})(\\d{1,2})", "$1 $2 $3 $4 $5", ["20"]]], 0, 0, "(15(?:0[06]|1[12]|[35]5|4[04]|6[26]|77|88|99)\\d)"], "LV": ["371", "00", "(?:[268]\\d|78|90)\\d{6}", [8], [["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["[2679]|8[01]"]]]], "LY": ["218", "00", "[2-9]\\d{8}", [9], [["(\\d{2})(\\d{7})", "$1-$2", ["[2-9]"], "0$1"]], "0"], "MA": ["212", "00", "[5-8]\\d{8}", [9], [["(\\d{4})(\\d{5})", "$1-$2", ["892"], "0$1"], ["(\\d{2})(\\d{7})", "$1-$2", ["8(?:0[0-7]|9)"], "0$1"], ["(\\d)(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4 $5", ["[5-8]"], "0$1"]], "0", 0, 0, 0, 0, "[5-8]"], "MC": ["377", "00", "(?:[3489]|[67]\\d)\\d{7}", [8, 9], [["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["4"], "0$1"], ["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[389]"]], ["(\\d)(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4 $5", ["[67]"], "0$1"]], "0"], "MD": ["373", "00", "(?:[235-7]\\d|[89]0)\\d{6}", [8], [["(\\d{3})(\\d{5})", "$1 $2", ["[89]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["22|3"], "0$1"], ["(\\d{3})(\\d{2})(\\d{3})", "$1 $2 $3", ["[25-7]"], "0$1"]], "0"], "ME": ["382", "00", "(?:20|[3-79]\\d)\\d{6}|80\\d{6,7}", [8, 9], [["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[2-9]"], "0$1"]], "0"], "MF": ["590", "00", "7090\\d{5}|(?:[56]9|[89]\\d)\\d{7}", [9], 0, "0", 0, 0, 0, 0, 0, [["(?:59(?:0(?:0[079]|[14]3|[27][79]|3[03-7]|5[0-268]|87)|87\\d)|80[6-9]\\d\\d)\\d{4}"], ["(?:69(?:0\\d\\d|1(?:2[2-9]|3[0-5]))|7090[0-4])\\d{4}"], ["80[0-5]\\d{6}"], ["8[129]\\d{7}"], 0, 0, 0, 0, ["9(?:(?:39[5-7]|76[018])\\d|475[0-6])\\d{4}"]]], "MG": ["261", "00", "[23]\\d{8}", [9], [["(\\d{2})(\\d{2})(\\d{3})(\\d{2})", "$1 $2 $3 $4", ["[23]"], "0$1"]], "0", 0, "([24-9]\\d{6})$|0", "20$1"], "MH": ["692", "011", "329\\d{4}|(?:[256]\\d|45)\\d{5}", [7], [["(\\d{3})(\\d{4})", "$1-$2", ["[2-6]"]]], "1"], "MK": ["389", "00", "[2-578]\\d{7}", [8], [["(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["2|34[47]|4(?:[37]7|5[47]|64)"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["[347]"], "0$1"], ["(\\d{3})(\\d)(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[58]"], "0$1"]], "0"], "ML": ["223", "00", "[24-9]\\d{7}", [8], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[24-9]"]]]], "MM": ["95", "00", "1\\d{5,7}|95\\d{6}|(?:[4-7]|9[0-46-9])\\d{6,8}|(?:2|8\\d)\\d{5,8}", [6, 7, 8, 9, 10], [["(\\d)(\\d{2})(\\d{3})", "$1 $2 $3", ["16|2"], "0$1"], ["(\\d{2})(\\d{2})(\\d{3})", "$1 $2 $3", ["4(?:[2-46]|5[3-5])|5|6(?:[1-689]|7[235-7])|7(?:[0-4]|5[2-7])|8[1-5]|(?:60|86)[23]"], "0$1"], ["(\\d)(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[12]|452|678|86", "[12]|452|6788|86"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[4-7]|8[1-35]"], "0$1"], ["(\\d)(\\d{3})(\\d{4,6})", "$1 $2 $3", ["9(?:2[0-4]|[35-9]|4[137-9])"], "0$1"], ["(\\d)(\\d{4})(\\d{4})", "$1 $2 $3", ["2"], "0$1"], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["8"], "0$1"], ["(\\d)(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["92"], "0$1"], ["(\\d)(\\d{5})(\\d{4})", "$1 $2 $3", ["9"], "0$1"]], "0"], "MN": ["976", "001", "[12]\\d{7,9}|[5-9]\\d{7}", [8, 9, 10], [["(\\d{2})(\\d{2})(\\d{4})", "$1 $2 $3", ["11|2[16]"], "0$1"], ["(\\d{4})(\\d{4})", "$1 $2", ["[5-9]"]], ["(\\d{3})(\\d{5,6})", "$1 $2", ["[12]2[1-3]"], "0$1"], ["(\\d{4})(\\d{5,6})", "$1 $2", ["[12](?:27|3[2-8]|4[2-68]|5[1-4689])", "[12](?:27|3[2-8]|4[2-68]|5[1-4689])[0-3]"], "0$1"], ["(\\d{5})(\\d{4,5})", "$1 $2", ["[12]"], "0$1"]], "0"], "MO": ["853", "00", "0800\\d{3}|(?:28|[68]\\d)\\d{6}", [7, 8], [["(\\d{4})(\\d{3})", "$1 $2", ["0"]], ["(\\d{4})(\\d{4})", "$1 $2", ["[268]"]]]], "MP": ["1", "011", "[58]\\d{9}|(?:67|90)0\\d{7}", [10], 0, "1", 0, "([2-9]\\d{6})$|1", "670$1", 0, "670"], "MQ": ["596", "00", "7091\\d{5}|(?:[56]9|[89]\\d)\\d{7}", [9], [["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[5-79]|8(?:0[6-9]|[36])"], "0$1"], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["8"], "0$1"]], "0"], "MR": ["222", "00", "(?:[2-4]\\d\\d|800)\\d{5}", [8], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[2-48]"]]]], "MS": ["1", "011", "(?:[58]\\d\\d|664|900)\\d{7}", [10], 0, "1", 0, "([34]\\d{6})$|1", "664$1", 0, "664"], "MT": ["356", "00", "3550\\d{4}|(?:[2579]\\d\\d|800)\\d{5}", [8], [["(\\d{4})(\\d{4})", "$1 $2", ["[2357-9]"]]]], "MU": ["230", "0(?:0|[24-7]0|3[03])", "(?:[57]|8\\d\\d)\\d{7}|[2-468]\\d{6}", [7, 8, 10], [["(\\d{3})(\\d{4})", "$1 $2", ["[2-46]|8[013]"]], ["(\\d{4})(\\d{4})", "$1 $2", ["[57]"]], ["(\\d{5})(\\d{5})", "$1 $2", ["8"]]], 0, 0, 0, 0, 0, 0, 0, "020"], "MV": ["960", "0(?:0|19)", "(?:800|9[0-57-9]\\d)\\d{7}|[34679]\\d{6}", [7, 10], [["(\\d{3})(\\d{4})", "$1-$2", ["[34679]"]], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["[89]"]]], 0, 0, 0, 0, 0, 0, 0, "00"], "MW": ["265", "00", "(?:[1289]\\d|31|77)\\d{7}|1\\d{6}", [7, 9], [["(\\d)(\\d{3})(\\d{3})", "$1 $2 $3", ["1[2-9]"], "0$1"], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[1-37-9]"], "0$1"]], "0"], "MX": ["52", "0[09]", "[2-9]\\d{9}", [10], [["(\\d{2})(\\d{4})(\\d{4})", "$1 $2 $3", ["33|5[56]|81"]], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["[2-9]"]]], 0, 0, 0, 0, 0, 0, 0, "00"], "MY": ["60", "00", "1\\d{8,9}|(?:3\\d|[4-9])\\d{7}", [8, 9, 10], [["(\\d)(\\d{3})(\\d{4})", "$1-$2 $3", ["[4-79]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1-$2 $3", ["1(?:[02469]|[378][1-9]|53)|8", "1(?:[02469]|[37][1-9]|53|8(?:[1-46-9]|5[7-9]))|8"], "0$1"], ["(\\d)(\\d{4})(\\d{4})", "$1-$2 $3", ["3"], "0$1"], ["(\\d)(\\d{3})(\\d{2})(\\d{4})", "$1-$2-$3-$4", ["1(?:[367]|80)"]], ["(\\d{3})(\\d{3})(\\d{4})", "$1-$2 $3", ["15"], "0$1"], ["(\\d{2})(\\d{4})(\\d{4})", "$1-$2 $3", ["1"], "0$1"]], "0"], "MZ": ["258", "00", "(?:2|8\\d)\\d{7}", [8, 9], [["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["2|8[2-9]"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["8"]]]], "NA": ["264", "00", "[68]\\d{7,8}", [8, 9], [["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["88"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["6"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["87"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["8"], "0$1"]], "0"], "NC": ["687", "00", "(?:050|[2-57-9]\\d\\d)\\d{3}", [6], [["(\\d{2})(\\d{2})(\\d{2})", "$1.$2.$3", ["[02-57-9]"]]]], "NE": ["227", "00", "[027-9]\\d{7}", [8], [["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["08"]], ["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[089]|2[013]|7[0467]"]]]], "NF": ["672", "00", "[13]\\d{5}", [6], [["(\\d{2})(\\d{4})", "$1 $2", ["1[0-3]"]], ["(\\d)(\\d{5})", "$1 $2", ["[13]"]]], 0, 0, "([0-258]\\d{4})$", "3$1"], "NG": ["234", "009", "(?:20|9\\d)\\d{8}|[78]\\d{9,13}", [10, 11, 12, 13, 14], [["(\\d{3})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[7-9]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["20[129]"], "0$1"], ["(\\d{4})(\\d{2})(\\d{4})", "$1 $2 $3", ["2"], "0$1"], ["(\\d{3})(\\d{4})(\\d{4,5})", "$1 $2 $3", ["[78]"], "0$1"], ["(\\d{3})(\\d{5})(\\d{5,6})", "$1 $2 $3", ["[78]"], "0$1"]], "0"], "NI": ["505", "00", "(?:1800|[25-8]\\d{3})\\d{4}", [8], [["(\\d{4})(\\d{4})", "$1 $2", ["[125-8]"]]]], "NL": ["31", "00", "(?:[124-7]\\d\\d|3(?:[02-9]\\d|1[0-8]))\\d{6}|8\\d{6,9}|9\\d{6,10}|1\\d{4,5}", [5, 6, 7, 8, 9, 10, 11], [["(\\d{3})(\\d{4,7})", "$1 $2", ["[89]0"], "0$1"], ["(\\d{2})(\\d{7})", "$1 $2", ["66"], "0$1"], ["(\\d)(\\d{8})", "$1 $2", ["6"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["1[16-8]|2[259]|3[124]|4[17-9]|5[124679]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[1-578]|91"], "0$1"], ["(\\d{3})(\\d{3})(\\d{5})", "$1 $2 $3", ["9"], "0$1"]], "0"], "NO": ["47", "00", "(?:0|[2-9]\\d{3})\\d{4}", [5, 8], [["(\\d{3})(\\d{2})(\\d{3})", "$1 $2 $3", ["8"]], ["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[2-79]"]]], 0, 0, 0, 0, 0, "[02-689]|7[0-8]"], "NP": ["977", "00", "(?:1\\d|9)\\d{9}|[1-9]\\d{7}", [8, 10, 11], [["(\\d)(\\d{7})", "$1-$2", ["1[2-6]"], "0$1"], ["(\\d{2})(\\d{6})", "$1-$2", ["1[01]|[2-8]|9(?:[1-59]|[67][2-6])"], "0$1"], ["(\\d{3})(\\d{7})", "$1-$2", ["9"]]], "0"], "NR": ["674", "00", "(?:222|444|(?:55|8\\d)\\d|666|777|999)\\d{4}", [7], [["(\\d{3})(\\d{4})", "$1 $2", ["[24-9]"]]]], "NU": ["683", "00", "(?:[4-7]|888\\d)\\d{3}", [4, 7], [["(\\d{3})(\\d{4})", "$1 $2", ["8"]]]], "NZ": ["64", "0(?:0|161)", "[1289]\\d{9}|50\\d{5}(?:\\d{2,3})?|[27-9]\\d{7,8}|(?:[34]\\d|6[0-35-9])\\d{6}|8\\d{4,6}", [5, 6, 7, 8, 9, 10], [["(\\d{2})(\\d{3,8})", "$1 $2", ["8[1-79]"], "0$1"], ["(\\d{3})(\\d{2})(\\d{2,3})", "$1 $2 $3", ["50[036-8]|8|90", "50(?:[0367]|88)|8|90"], "0$1"], ["(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["24|[346]|7[2-57-9]|9[2-9]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["2(?:10|74)|[589]"], "0$1"], ["(\\d{2})(\\d{3,4})(\\d{4})", "$1 $2 $3", ["1|2[028]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,5})", "$1 $2 $3", ["2(?:[169]|7[0-35-9])|7"], "0$1"]], "0", 0, 0, 0, 0, 0, 0, "00"], "OM": ["968", "00", "(?:1505|[279]\\d{3}|500)\\d{4}|800\\d{5,6}", [7, 8, 9], [["(\\d{3})(\\d{4,6})", "$1 $2", ["[58]"]], ["(\\d{2})(\\d{6})", "$1 $2", ["2"]], ["(\\d{4})(\\d{4})", "$1 $2", ["[179]"]]]], "PA": ["507", "00", "(?:00800|8\\d{3})\\d{6}|[68]\\d{7}|[1-57-9]\\d{6}", [7, 8, 10, 11], [["(\\d{3})(\\d{4})", "$1-$2", ["[1-57-9]"]], ["(\\d{4})(\\d{4})", "$1-$2", ["[68]"]], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["8"]]]], "PE": ["51", "00|19(?:1[124]|77|90)00", "(?:[14-8]|9\\d)\\d{7}", [8, 9], [["(\\d{3})(\\d{5})", "$1 $2", ["80"], "(0$1)"], ["(\\d)(\\d{7})", "$1 $2", ["1"], "(0$1)"], ["(\\d{2})(\\d{6})", "$1 $2", ["[4-8]"], "(0$1)"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["9"]]], "0", 0, 0, 0, 0, 0, 0, "00", " Anexo "], "PF": ["689", "00", "4\\d{5}(?:\\d{2})?|8\\d{7,8}", [6, 8, 9], [["(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3", ["44"]], ["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["4|8[7-9]"]], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["8"]]]], "PG": ["675", "00|140[1-3]", "(?:180|[78]\\d{3})\\d{4}|(?:[2-589]\\d|64)\\d{5}", [7, 8], [["(\\d{3})(\\d{4})", "$1 $2", ["18|[2-69]|85[02-46-9]"]], ["(\\d{4})(\\d{4})", "$1 $2", ["[78]"]]], 0, 0, 0, 0, 0, 0, 0, "00"], "PH": ["63", "00", "(?:[2-7]|9\\d)\\d{8}|2\\d{5}|(?:1800|8)\\d{7,9}", [6, 8, 9, 10, 11, 12, 13], [["(\\d)(\\d{5})", "$1 $2", ["2"], "(0$1)"], ["(\\d{4})(\\d{4,6})", "$1 $2", ["3(?:23|39|46)|4(?:2[3-6]|[35]9|4[26]|76)|544|88[245]|(?:52|64|86)2", "3(?:230|397|461)|4(?:2(?:35|[46]4|51)|396|4(?:22|63)|59[347]|76[15])|5(?:221|446)|642[23]|8(?:622|8(?:[24]2|5[13]))"], "(0$1)"], ["(\\d{5})(\\d{4})", "$1 $2", ["346|4(?:27|9[35])|883", "3469|4(?:279|9(?:30|56))|8834"], "(0$1)"], ["(\\d)(\\d{4})(\\d{4})", "$1 $2 $3", ["2"], "(0$1)"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[3-7]|8[2-8]"], "(0$1)"], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["[89]"], "0$1"], ["(\\d{4})(\\d{3})(\\d{4})", "$1 $2 $3", ["1"]], ["(\\d{4})(\\d{1,2})(\\d{3})(\\d{4})", "$1 $2 $3 $4", ["1"]]], "0"], "PK": ["92", "00", "122\\d{6}|[24-8]\\d{10,11}|9(?:[013-9]\\d{8,10}|2(?:[01]\\d\\d|2(?:[06-8]\\d|1[01]))\\d{7})|(?:[2-8]\\d{3}|92(?:[0-7]\\d|8[1-9]))\\d{6}|[24-9]\\d{8}|[89]\\d{7}", [8, 9, 10, 11, 12], [["(\\d{3})(\\d{3})(\\d{2,7})", "$1 $2 $3", ["[89]0"], "0$1"], ["(\\d{4})(\\d{5})", "$1 $2", ["1"]], ["(\\d{3})(\\d{6,7})", "$1 $2", ["2(?:3[2358]|4[2-4]|9[2-8])|45[3479]|54[2-467]|60[468]|72[236]|8(?:2[2-689]|3[23578]|4[3478]|5[2356])|9(?:2[2-8]|3[27-9]|4[2-6]|6[3569]|9[25-8])", "9(?:2[3-8]|98)|(?:2(?:3[2358]|4[2-4]|9[2-8])|45[3479]|54[2-467]|60[468]|72[236]|8(?:2[2-689]|3[23578]|4[3478]|5[2356])|9(?:22|3[27-9]|4[2-6]|6[3569]|9[25-7]))[2-9]"], "(0$1)"], ["(\\d{2})(\\d{7,8})", "$1 $2", ["(?:2[125]|4[0-246-9]|5[1-35-7]|6[1-8]|7[14]|8[16]|91)[2-9]"], "(0$1)"], ["(\\d{5})(\\d{5})", "$1 $2", ["58"], "(0$1)"], ["(\\d{3})(\\d{7})", "$1 $2", ["3"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["2[125]|4[0-246-9]|5[1-35-7]|6[1-8]|7[14]|8[16]|91"], "(0$1)"], ["(\\d{3})(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["[24-9]"], "(0$1)"]], "0"], "PL": ["48", "00", "(?:6|8\\d\\d)\\d{7}|[1-9]\\d{6}(?:\\d{2})?|[26]\\d{5}", [6, 7, 8, 9, 10], [["(\\d{5})", "$1", ["19"]], ["(\\d{3})(\\d{3})", "$1 $2", ["11|20|64"]], ["(\\d{2})(\\d{2})(\\d{3})", "$1 $2 $3", ["30|(?: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", "30|(?:1[2-8]|2[2-69]|3[2-4]|4[1-468]|5[24-689]|6[1-3578]|7[14-7]|8[1-79]|9[145])19"]], ["(\\d{3})(\\d{2})(\\d{2,3})", "$1 $2 $3", ["64"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["21|39|45|5[0137]|6[0469]|7[02389]|8(?:0[14]|8)"]], ["(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["1[2-8]|[2-7]|8[1-79]|9[145]"]], ["(\\d{3})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["8"]]]], "PM": ["508", "00", "[78]\\d{8}|[2-9]\\d{5}", [6, 9], [["(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3", ["[2-9]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["7"]], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["8"], "0$1"]], "0"], "PR": ["1", "011", "(?:[589]\\d\\d|787)\\d{7}", [10], 0, "1", 0, 0, 0, 0, "787|939"], "PS": ["970", "00", "[2489]2\\d{6}|(?:1\\d|5)\\d{8}", [8, 9, 10], [["(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["[2489]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["5"], "0$1"], ["(\\d{4})(\\d{3})(\\d{3})", "$1 $2 $3", ["1"]]], "0"], "PT": ["351", "00", "1693\\d{5}|(?:[26-9]\\d|30)\\d{7}", [9], [["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["2[12]"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["16|[236-9]"]]]], "PW": ["680", "01[12]", "(?:[24-8]\\d\\d|345|900)\\d{4}", [7], [["(\\d{3})(\\d{4})", "$1 $2", ["[2-9]"]]]], "PY": ["595", "00", "[36-8]\\d{5,8}|4\\d{6,8}|59\\d{6}|9\\d{5,10}|(?:2\\d|5[0-8])\\d{6,7}", [6, 7, 8, 9, 10, 11], [["(\\d{3})(\\d{3,6})", "$1 $2", ["[2-9]0"], "0$1"], ["(\\d{2})(\\d{5})", "$1 $2", ["3[289]|4[246-8]|61|7[1-3]|8[1-36]"], "(0$1)"], ["(\\d{3})(\\d{4,5})", "$1 $2", ["2[279]|3[13-5]|4[359]|5|6(?:[34]|7[1-46-8])|7[46-8]|85"], "(0$1)"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["2[14-68]|3[26-9]|4[1246-8]|6(?:1|75)|7[1-35]|8[1-36]"], "(0$1)"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["87"]], ["(\\d{3})(\\d{6})", "$1 $2", ["9(?:[5-79]|8[1-7])"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[2-8]"], "0$1"], ["(\\d{4})(\\d{3})(\\d{4})", "$1 $2 $3", ["9"]]], "0"], "QA": ["974", "00", "800\\d{4}|(?:2|800)\\d{6}|(?:0080|[3-7])\\d{7}", [7, 8, 9, 11], [["(\\d{3})(\\d{4})", "$1 $2", ["2[136]|8"]], ["(\\d{4})(\\d{4})", "$1 $2", ["[3-7]"]]]], "RE": ["262", "00", "709\\d{6}|(?:26|[689]\\d)\\d{7}", [9], [["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[26-9]"], "0$1"]], "0", 0, 0, 0, 0, 0, [["2631[0-6]\\d{4}|26(?:2\\d|30|88)\\d{5}"], ["(?:69(?:2\\d\\d|3(?:[06][0-6]|1[0-3]|2[0-2]|3[0-39]|4\\d|5[0-5]|7[0-37]|8[0-8]|9[0-479]))|7092[0-3])\\d{4}"], ["80\\d{7}"], ["89[1-37-9]\\d{6}"], 0, 0, 0, 0, ["9(?:399[0-3]|479[0-6]|76(?:2[278]|3[0-37]))\\d{4}"], ["8(?:1[019]|2[0156]|84|90)\\d{6}"]]], "RO": ["40", "00", "(?:[236-8]\\d|90)\\d{7}|[23]\\d{5}", [6, 9], [["(\\d{3})(\\d{3})", "$1 $2", ["2[3-6]", "2[3-6]\\d9"], "0$1"], ["(\\d{2})(\\d{4})", "$1 $2", ["219|31"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[23]1"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[236-9]"], "0$1"]], "0", 0, 0, 0, 0, 0, 0, 0, " int "], "RS": ["381", "00", "38[02-9]\\d{6,9}|6\\d{7,9}|90\\d{4,8}|38\\d{5,6}|(?:7\\d\\d|800)\\d{3,9}|(?:[12]\\d|3[0-79])\\d{5,10}", [6, 7, 8, 9, 10, 11, 12], [["(\\d{3})(\\d{3,9})", "$1 $2", ["(?:2[389]|39)0|[7-9]"], "0$1"], ["(\\d{2})(\\d{5,10})", "$1 $2", ["[1-36]"], "0$1"]], "0"], "RU": ["7", "810", "8\\d{13}|[347-9]\\d{9}", [10, 14], [["(\\d{4})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["7(?:1[0-8]|2[1-9])", "7(?:1(?:[0-356]2|4[29]|7|8[27])|2(?:1[23]|[2-9]2))", "7(?:1(?:[0-356]2|4[29]|7|8[27])|2(?:13[03-69]|62[013-9]))|72[1-57-9]2"], "8 ($1)", 1], ["(\\d{5})(\\d)(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["7(?:1[0-68]|2[1-9])", "7(?:1(?:[06][3-6]|[18]|2[35]|[3-5][3-5])|2(?:[13][3-5]|[24-689]|7[457]))", "7(?:1(?:0(?:[356]|4[023])|[18]|2(?:3[013-9]|5)|3[45]|43[013-79]|5(?:3[1-8]|4[1-7]|5)|6(?:3[0-35-9]|[4-6]))|2(?:1(?:3[178]|[45])|[24-689]|3[35]|7[457]))|7(?:14|23)4[0-8]|71(?:33|45)[1-79]"], "8 ($1)", 1], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["7"], "8 ($1)", 1], ["(\\d{3})(\\d{3})(\\d{2})(\\d{2})", "$1 $2-$3-$4", ["[349]|8(?:[02-7]|1[1-8])"], "8 ($1)", 1], ["(\\d{4})(\\d{4})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["8"], "8 ($1)"]], "8", 0, 0, 0, 0, "[3489]", 0, "8~10"], "RW": ["250", "00", "(?:06|[27]\\d\\d|[89]00)\\d{6}", [8, 9], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["0"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["2"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[7-9]"], "0$1"]], "0"], "SA": ["966", "00", "(?:[15]\\d|800|92)\\d{7}", [9, 10], [["(\\d{4})(\\d{5})", "$1 $2", ["9"]], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["1"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["5"], "0$1"], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["8"]]], "0"], "SB": ["677", "0[01]", "[6-9]\\d{6}|[1-6]\\d{4}", [5, 7], [["(\\d{2})(\\d{5})", "$1 $2", ["6[89]|7|8[4-9]|9(?:[0-8]|9[0-8])"]]]], "SC": ["248", "010|0[0-2]", "(?:[2489]\\d|64)\\d{5}", [7], [["(\\d)(\\d{3})(\\d{3})", "$1 $2 $3", ["[246]|9[57]"]]], 0, 0, 0, 0, 0, 0, 0, "00"], "SD": ["249", "00", "[19]\\d{8}", [9], [["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[19]"], "0$1"]], "0"], "SE": ["46", "00", "(?:[26]\\d\\d|9)\\d{9}|[1-9]\\d{8}|[1-689]\\d{7}|[1-4689]\\d{6}|2\\d{5}", [6, 7, 8, 9, 10, 12], [["(\\d{2})(\\d{2,3})(\\d{2})", "$1-$2 $3", ["20"], "0$1", 0, "$1 $2 $3"], ["(\\d{3})(\\d{4})", "$1-$2", ["9(?:00|39|44|9)"], "0$1", 0, "$1 $2"], ["(\\d{2})(\\d{3})(\\d{2})", "$1-$2 $3", ["[12][136]|3[356]|4[0246]|6[03]|90[1-9]"], "0$1", 0, "$1 $2 $3"], ["(\\d)(\\d{2,3})(\\d{2})(\\d{2})", "$1-$2 $3 $4", ["8"], "0$1", 0, "$1 $2 $3 $4"], ["(\\d{3})(\\d{2,3})(\\d{2})", "$1-$2 $3", ["1[2457]|2(?:[247-9]|5[0138])|3[0247-9]|4[1357-9]|5[0-35-9]|6(?:[125689]|4[02-57]|7[0-2])|9(?:[125-8]|3[02-5]|4[0-3])"], "0$1", 0, "$1 $2 $3"], ["(\\d{3})(\\d{2,3})(\\d{3})", "$1-$2 $3", ["9(?:00|39|44)"], "0$1", 0, "$1 $2 $3"], ["(\\d{2})(\\d{2,3})(\\d{2})(\\d{2})", "$1-$2 $3 $4", ["1[13689]|2[0136]|3[1356]|4[0246]|54|6[03]|90[1-9]"], "0$1", 0, "$1 $2 $3 $4"], ["(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1-$2 $3 $4", ["10|7"], "0$1", 0, "$1 $2 $3 $4"], ["(\\d)(\\d{3})(\\d{3})(\\d{2})", "$1-$2 $3 $4", ["8"], "0$1", 0, "$1 $2 $3 $4"], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1-$2 $3 $4", ["[13-5]|2(?:[247-9]|5[0138])|6(?:[124-689]|7[0-2])|9(?:[125-8]|3[02-5]|4[0-3])"], "0$1", 0, "$1 $2 $3 $4"], ["(\\d{3})(\\d{2})(\\d{2})(\\d{3})", "$1-$2 $3 $4", ["9"], "0$1", 0, "$1 $2 $3 $4"], ["(\\d{3})(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1-$2 $3 $4 $5", ["[26]"], "0$1", 0, "$1 $2 $3 $4 $5"]], "0"], "SG": ["65", "0[0-3]\\d", "(?:(?:1\\d|8)\\d\\d|7000)\\d{7}|[3689]\\d{7}", [8, 10, 11], [["(\\d{4})(\\d{4})", "$1 $2", ["[369]|8(?:0[1-9]|[1-9])"]], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["8"]], ["(\\d{4})(\\d{4})(\\d{3})", "$1 $2 $3", ["7"]], ["(\\d{4})(\\d{3})(\\d{4})", "$1 $2 $3", ["1"]]]], "SH": ["290", "00", "(?:[256]\\d|8)\\d{3}", [4, 5], 0, 0, 0, 0, 0, 0, "[256]"], "SI": ["386", "00|10(?:22|66|88|99)", "[1-7]\\d{7}|8\\d{4,7}|90\\d{4,6}", [5, 6, 7, 8], [["(\\d{2})(\\d{3,6})", "$1 $2", ["8[09]|9"], "0$1"], ["(\\d{3})(\\d{5})", "$1 $2", ["59|8"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["[37][01]|4[013]|51|6"], "0$1"], ["(\\d)(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[1-57]"], "(0$1)"]], "0", 0, 0, 0, 0, 0, 0, "00"], "SJ": ["47", "00", "0\\d{4}|(?:[489]\\d|79)\\d{6}", [5, 8], 0, 0, 0, 0, 0, 0, "79"], "SK": ["421", "00", "[2-689]\\d{8}|[2-59]\\d{6}|[2-5]\\d{5}", [6, 7, 9], [["(\\d)(\\d{2})(\\d{3,4})", "$1 $2 $3", ["21"], "0$1"], ["(\\d{2})(\\d{2})(\\d{2,3})", "$1 $2 $3", ["[3-5][1-8]1", "[3-5][1-8]1[67]"], "0$1"], ["(\\d)(\\d{3})(\\d{3})(\\d{2})", "$1 $2 $3 $4", ["2"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[689]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[3-5]"], "0$1"]], "0"], "SL": ["232", "00", "(?:[237-9]\\d|66)\\d{6}", [8], [["(\\d{2})(\\d{6})", "$1 $2", ["[236-9]"], "(0$1)"]], "0"], "SM": ["378", "00", "(?:0549|[5-7]\\d)\\d{6}", [8, 10], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[5-7]"]], ["(\\d{4})(\\d{6})", "$1 $2", ["0"]]], 0, 0, "([89]\\d{5})$", "0549$1"], "SN": ["221", "00", "(?:[378]\\d|93)\\d{7}", [9], [["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["8"]], ["(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[379]"]]]], "SO": ["252", "00", "[346-9]\\d{8}|[12679]\\d{7}|[1-5]\\d{6}|[1348]\\d{5}", [6, 7, 8, 9], [["(\\d{2})(\\d{4})", "$1 $2", ["8[125]"]], ["(\\d{6})", "$1", ["[134]"]], ["(\\d)(\\d{6})", "$1 $2", ["[15]|2[0-79]|3[0-46-8]|4[0-7]"]], ["(\\d{2})(\\d{5,7})", "$1 $2", ["1|28|9[2-9]"]], ["(\\d)(\\d{7})", "$1 $2", ["[267]|904"]], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[346-9]"]]], "0"], "SR": ["597", "00", "(?:[2-5]|[6-9]\\d)\\d{5}", [6, 7], [["(\\d{2})(\\d{2})(\\d{2})", "$1-$2-$3", ["56"]], ["(\\d{3})(\\d{3})", "$1-$2", ["[2-5]"]], ["(\\d{3})(\\d{4})", "$1-$2", ["[6-9]"]]]], "SS": ["211", "00", "[19]\\d{8}", [9], [["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[19]"], "0$1"]], "0"], "ST": ["239", "00", "(?:22|9\\d)\\d{5}", [7], [["(\\d{3})(\\d{4})", "$1 $2", ["[29]"]]]], "SV": ["503", "00", "[25-7]\\d{7}|(?:80\\d|900)\\d{4}(?:\\d{4})?", [7, 8, 11], [["(\\d{3})(\\d{4})", "$1 $2", ["[89]"]], ["(\\d{4})(\\d{4})", "$1 $2", ["[25-7]"]], ["(\\d{3})(\\d{4})(\\d{4})", "$1 $2 $3", ["[89]"]]]], "SX": ["1", "011", "7215\\d{6}|(?:[58]\\d\\d|900)\\d{7}", [10], 0, "1", 0, "(5\\d{6})$|1", "721$1", 0, "721"], "SY": ["963", "00", "[1-359]\\d{8}|[1-5]\\d{7}", [8, 9], [["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[1-4]|5[1-3]"], "0$1", 1], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[59]"], "0$1", 1]], "0"], "SZ": ["268", "00", "0800\\d{4}|(?:[237]\\d|900)\\d{6}", [8, 9], [["(\\d{4})(\\d{4})", "$1 $2", ["[0237]"]], ["(\\d{5})(\\d{4})", "$1 $2", ["9"]]]], "TA": ["290", "00", "8\\d{3}", [4], 0, 0, 0, 0, 0, 0, "8"], "TC": ["1", "011", "(?:[58]\\d\\d|649|900)\\d{7}", [10], 0, "1", 0, "([2-479]\\d{6})$|1", "649$1", 0, "649"], "TD": ["235", "00|16", "(?:22|[3689]\\d|77)\\d{6}", [8], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[236-9]"]]], 0, 0, 0, 0, 0, 0, 0, "00"], "TG": ["228", "00", "[279]\\d{7}", [8], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[279]"]]]], "TH": ["66", "00[1-9]", "(?:001800|[2-57]|[689]\\d)\\d{7}|1\\d{7,9}", [8, 9, 10, 13], [["(\\d)(\\d{3})(\\d{4})", "$1 $2 $3", ["2"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[13-9]"], "0$1"], ["(\\d{4})(\\d{3})(\\d{3})", "$1 $2 $3", ["1"]]], "0"], "TJ": ["992", "810", "(?:[0-57-9]\\d|66)\\d{7}", [9], [["(\\d{6})(\\d)(\\d{2})", "$1 $2 $3", ["331", "3317"]], ["(\\d{3})(\\d{2})(\\d{4})", "$1 $2 $3", ["44[02-479]|[34]7"]], ["(\\d{4})(\\d)(\\d{4})", "$1 $2 $3", ["3(?:[1245]|3[12])"]], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["\\d"]]], 0, 0, 0, 0, 0, 0, 0, "8~10"], "TK": ["690", "00", "[2-47]\\d{3,6}", [4, 5, 6, 7]], "TL": ["670", "00", "7\\d{7}|(?:[2-47]\\d|[89]0)\\d{5}", [7, 8], [["(\\d{3})(\\d{4})", "$1 $2", ["[2-489]|70"]], ["(\\d{4})(\\d{4})", "$1 $2", ["7"]]]], "TM": ["993", "810", "[1-7]\\d{7}", [8], [["(\\d{2})(\\d{2})(\\d{2})(\\d{2})", "$1 $2-$3-$4", ["12"], "(8 $1)"], ["(\\d{3})(\\d)(\\d{2})(\\d{2})", "$1 $2-$3-$4", ["[1-5]"], "(8 $1)"], ["(\\d{2})(\\d{6})", "$1 $2", ["[67]"], "8 $1"]], "8", 0, 0, 0, 0, 0, 0, "8~10"], "TN": ["216", "00", "[2-57-9]\\d{7}", [8], [["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["[2-57-9]"]]]], "TO": ["676", "00", "(?:0800|(?:[5-8]\\d\\d|999)\\d)\\d{3}|[2-8]\\d{4}", [5, 7], [["(\\d{2})(\\d{3})", "$1-$2", ["[2-4]|50|6[09]|7[0-24-69]|8[05]"]], ["(\\d{4})(\\d{3})", "$1 $2", ["0"]], ["(\\d{3})(\\d{4})", "$1 $2", ["[5-9]"]]]], "TR": ["90", "00", "4\\d{6}|8\\d{11,12}|(?:[2-58]\\d\\d|900)\\d{7}", [7, 10, 12, 13], [["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["512|8[01589]|90"], "0$1", 1], ["(\\d{3})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["5"], "0$1", 1], ["(\\d{3})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[24][1-8]|3[1-9]"], "(0$1)", 1], ["(\\d{3})(\\d{3})(\\d{6,7})", "$1 $2 $3", ["80"], "0$1", 1]], "0"], "TT": ["1", "011", "(?:[58]\\d\\d|900)\\d{7}", [10], 0, "1", 0, "([2-46-8]\\d{6})$|1", "868$1", 0, "868"], "TV": ["688", "00", "(?:2|7\\d\\d|90)\\d{4}", [5, 6, 7], [["(\\d{2})(\\d{3})", "$1 $2", ["2"]], ["(\\d{2})(\\d{4})", "$1 $2", ["90"]], ["(\\d{2})(\\d{5})", "$1 $2", ["7"]]]], "TW": ["886", "0(?:0[25-79]|19)", "[2-689]\\d{8}|7\\d{9,10}|[2-8]\\d{7}|2\\d{6}", [7, 8, 9, 10, 11], [["(\\d{2})(\\d)(\\d{4})", "$1 $2 $3", ["202"], "0$1"], ["(\\d{3})(\\d{5})", "$1 $2", ["826"], "0$1"], ["(\\d{3})(\\d{2})(\\d{3})", "$1 $2 $3", ["83"], "0$1"], ["(\\d{2})(\\d{2})(\\d{4})", "$1 $2 $3", ["82"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[25]0|37|49|8[09]"], "0$1"], ["(\\d)(\\d{3,4})(\\d{4})", "$1 $2 $3", ["[23568]|4(?:0[02-48]|[1-478])|7[1-9]", "[23568]|4(?:0[2-48]|[1-478])|(?:400|7)[1-9]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[49]"], "0$1"], ["(\\d{2})(\\d{4})(\\d{4,5})", "$1 $2 $3", ["7"], "0$1"]], "0", 0, 0, 0, 0, 0, 0, 0, "#"], "TZ": ["255", "00[056]", "(?:[25-8]\\d|41|90)\\d{7}", [9], [["(\\d{3})(\\d{2})(\\d{4})", "$1 $2 $3", ["[89]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[24]"], "0$1"], ["(\\d{2})(\\d{7})", "$1 $2", ["5"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[67]"], "0$1"]], "0"], "UA": ["380", "00", "[89]\\d{9}|[3-9]\\d{8}", [9, 10], [["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["6[12][29]|(?:3[1-8]|4[136-8]|5[12457]|6[49])2|(?:56|65)[24]", "6[12][29]|(?:35|4[1378]|5[12457]|6[49])2|(?:56|65)[24]|(?:3[1-46-8]|46)2[013-9]"], "0$1"], ["(\\d{4})(\\d{5})", "$1 $2", ["3[1-8]|4(?:[1367]|[45][6-9]|8[4-6])|5(?:[1-5]|6[0135689]|7[4-6])|6(?:[12][3-7]|[459])", "3[1-8]|4(?:[1367]|[45][6-9]|8[4-6])|5(?:[1-5]|6(?:[015689]|3[02389])|7[4-6])|6(?:[12][3-7]|[459])"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[3-7]|89|9[1-9]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[89]"], "0$1"]], "0", 0, 0, 0, 0, 0, 0, "0~0"], "UG": ["256", "00[057]", "800\\d{6}|(?:[29]0|[347]\\d)\\d{7}", [9], [["(\\d{4})(\\d{5})", "$1 $2", ["202", "2024", "20240"], "0$1"], ["(\\d{3})(\\d{6})", "$1 $2", ["20[0-35-7]|4(?:6[45]|[7-9])|[7-9]", "20(?:[0135-7]|2[5-9])|4(?:6[45]|[7-9])|[7-9]"], "0$1"], ["(\\d{2})(\\d{7})", "$1 $2", ["[2-4]"], "0$1"]], "0"], "US": ["1", "011", "[2-9]\\d{9}|3\\d{6}", [10], [["(\\d{3})(\\d{4})", "$1-$2", ["310"], 0, 1], ["(\\d{3})(\\d{3})(\\d{4})", "($1) $2-$3", ["[2-9]"], 0, 1, "$1-$2-$3"]], "1", 0, 0, 0, 0, 0, [["983[2-57-9]\\d{6}|(?:2(?:0[1-35-9]|1[02-9]|2[03-57-9]|3[1459]|4[08]|5[1-46]|6[0279]|7[02469]|8[13])|3(?:0[1-57-9]|1[02-9]|2[013-79]|3[0-24679]|4[167]|5[0-3]|6[01349]|8[056])|4(?:0[124-9]|1[02-579]|2[3-5]|3[0245]|4[023578]|58|6[349]|7[02589]|8[04])|5(?:0[1-57-9]|1[0235-8]|20|3[0149]|4[01]|5[179]|6[1-47]|7[0-5]|8[0256])|6(?:0[1-35-9]|1[024-9]|2[03689]|3[016]|4[0156]|5[01679]|6[0-279]|78|8[0-269])|7(?:0[1-46-8]|1[2-9]|2[04-8]|3[0-2478]|4[0378]|5[47]|6[02359]|7[0-59]|8[156])|8(?:0[1-68]|1[02-8]|2[0168]|3[0-2589]|4[03578]|5[046-9]|6[02-5]|7[028])|9(?:0[1346-9]|1[02-9]|2[0589]|3[0146-8]|4[01357-9]|5[12469]|7[0-3589]|8[04-69]))[2-9]\\d{6}"], [""], ["8(?:00|33|44|55|66|77|88)[2-9]\\d{6}"], ["900[2-9]\\d{6}"], ["52(?:3(?:[2-46-9][02-9]\\d|5(?:[02-46-9]\\d|5[0-46-9]))|4(?:[2-478][02-9]\\d|5(?:[034]\\d|2[024-9]|5[0-46-9])|6(?:0[1-9]|[2-9]\\d)|9(?:[05-9]\\d|2[0-5]|49)))\\d{4}|52[34][2-9]1[02-9]\\d{4}|5(?:00|2[125-9]|3[23]|44|66|77|88)[2-9]\\d{6}"]]], "UY": ["598", "0(?:0|1[3-9]\\d)", "0004\\d{2,9}|[1249]\\d{7}|2\\d{3,4}|(?:[49]\\d|80)\\d{5}", [4, 5, 6, 7, 8, 9, 10, 11, 12, 13], [["(\\d{4,5})", "$1", ["21"]], ["(\\d{3})(\\d{3,4})", "$1 $2", ["0"]], ["(\\d{3})(\\d{4})", "$1 $2", ["[49]0|8"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["9"], "0$1"], ["(\\d{4})(\\d{4})", "$1 $2", ["[124]"]], ["(\\d{3})(\\d{3})(\\d{2,4})", "$1 $2 $3", ["0"]], ["(\\d{3})(\\d{3})(\\d{3})(\\d{2,4})", "$1 $2 $3 $4", ["0"]]], "0", 0, 0, 0, 0, 0, 0, "00", " int. "], "UZ": ["998", "00", "(?:20|33|[5-9]\\d)\\d{7}", [9], [["(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["[235-9]"]]]], "VA": ["39", "00", "0\\d{5,10}|3[0-8]\\d{7,10}|55\\d{8}|8\\d{5}(?:\\d{2,4})?|(?:1\\d|39)\\d{7,8}", [6, 7, 8, 9, 10, 11, 12], 0, 0, 0, 0, 0, 0, "06698"], "VC": ["1", "011", "(?:[58]\\d\\d|784|900)\\d{7}", [10], 0, "1", 0, "([2-7]\\d{6})$|1", "784$1", 0, "784"], "VE": ["58", "00", "[68]00\\d{7}|(?:[24]\\d|[59]0)\\d{8}", [10], [["(\\d{3})(\\d{7})", "$1-$2", ["[24-689]"], "0$1"]], "0"], "VG": ["1", "011", "(?:284|[58]\\d\\d|900)\\d{7}", [10], 0, "1", 0, "([2-578]\\d{6})$|1", "284$1", 0, "284"], "VI": ["1", "011", "[58]\\d{9}|(?:34|90)0\\d{7}", [10], 0, "1", 0, "([2-9]\\d{6})$|1", "340$1", 0, "340"], "VN": ["84", "00", "[12]\\d{9}|[135-9]\\d{8}|[16]\\d{6,7}|7\\d{6}", [7, 8, 9, 10], [["(\\d{4})(\\d{4,6})", "$1 $2", ["1(?:2[02]|[89])"], 0, 1], ["(\\d{2})(\\d{3})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["1[26]|6"], "0$1", 1], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[1357-9]"], "0$1", 1], ["(\\d{2})(\\d{4})(\\d{4})", "$1 $2 $3", ["2[48]"], "0$1", 1], ["(\\d{3})(\\d{4})(\\d{3})", "$1 $2 $3", ["2"], "0$1", 1]], "0"], "VU": ["678", "00", "[57-9]\\d{6}|(?:[238]\\d|48)\\d{3}", [5, 7], [["(\\d{3})(\\d{4})", "$1 $2", ["[57-9]"]]]], "WF": ["681", "00", "(?:40|72|8\\d{4})\\d{4}|[89]\\d{5}", [6, 9], [["(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3", ["[47-9]"]], ["(\\d{3})(\\d{2})(\\d{2})(\\d{2})", "$1 $2 $3 $4", ["8"]]]], "WS": ["685", "0", "(?:[2-6]|8\\d{5})\\d{4}|[78]\\d{6}|[68]\\d{5}", [5, 6, 7, 10], [["(\\d{5})", "$1", ["[2-5]|6[1-9]"]], ["(\\d{3})(\\d{3,7})", "$1 $2", ["[68]"]], ["(\\d{2})(\\d{5})", "$1 $2", ["7"]]]], "XK": ["383", "00", "2\\d{7,8}|3\\d{7,11}|(?:4\\d\\d|[89]00)\\d{5}", [8, 9, 10, 11, 12], [["(\\d{3})(\\d{5})", "$1 $2", ["[89]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3})", "$1 $2 $3", ["[2-4]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["2|39"], "0$1"], ["(\\d{2})(\\d{7,10})", "$1 $2", ["3"], "0$1"]], "0"], "YE": ["967", "00", "(?:1|7\\d)\\d{7}|[1-7]\\d{6}", [7, 8, 9], [["(\\d)(\\d{3})(\\d{3,4})", "$1 $2 $3", ["[1-6]|7(?:[24-6]|8[0-7])"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["7"], "0$1"]], "0"], "YT": ["262", "00", "(?:639\\d|7093)\\d{5}|(?:26|80|9\\d)\\d{7}", [9], 0, "0", 0, 0, 0, 0, 0, [["26(?:89\\d|9(?:0[0-467]|15|5[0-4]|6\\d|[78]0))\\d{4}"], ["(?:639(?:0[0-79]|1[019]|[267]\\d|3[09]|40|5[05-9]|9[04-79])|7093[5-7])\\d{4}"], ["80\\d{7}"], 0, 0, 0, 0, 0, ["9(?:(?:39|47)8[01]|769\\d)\\d{4}"]]], "ZA": ["27", "00", "[1-79]\\d{8}|8\\d{4,9}", [5, 6, 7, 8, 9, 10], [["(\\d{2})(\\d{3,4})", "$1 $2", ["8[1-4]"], "0$1"], ["(\\d{2})(\\d{3})(\\d{2,3})", "$1 $2 $3", ["8[1-4]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["860"], "0$1"], ["(\\d{2})(\\d{3})(\\d{4})", "$1 $2 $3", ["[1-9]"], "0$1"], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["8"], "0$1"]], "0"], "ZM": ["260", "00", "800\\d{6}|(?:21|[579]\\d|63)\\d{7}", [9], [["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[28]"], "0$1"], ["(\\d{2})(\\d{7})", "$1 $2", ["[579]"], "0$1"]], "0"], "ZW": ["263", "00", "(?:13|8\\d{4})\\d{5}|[235-8]\\d{8}|[23568]\\d{6}", [7, 9, 10], [["(\\d{2})(\\d{3,5})", "$1 $2", ["1|2(?:0[0-36-9]|29|58)|67[0-46-9]|(?:55|68)[0-69]"], "0$1"], ["(\\d{3})(\\d{3,5})", "$1 $2", ["2(?:0[45]|[27]|48)|37|675|(?:55|68)[78]"], "0$1"], ["(\\d{3})(\\d{4})", "$1 $2", ["80"], "0$1"], ["(\\d{4})(\\d{3,5})", "$1 $2", ["548"], "0$1"], ["(\\d{2})(\\d{3})(\\d{3,4})", "$1 $2 $3", ["29[013-9]"], "0$1"], ["(\\d{2})(\\d{7})", "$1 $2", ["[256]|39|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", ["3"], "0$1"], ["(\\d{4})(\\d{6})", "$1 $2", ["8"], "0$1"]], "0"] }, "nonGeographic": { "800": ["800", 0, "(?:00|[1-9]\\d)\\d{6}", [8], [["(\\d{4})(\\d{4})", "$1 $2", ["\\d"]]], 0, 0, 0, 0, 0, 0, [0, 0, ["(?:00|[1-9]\\d)\\d{6}"]]], "808": ["808", 0, "[1-9]\\d{7}", [8], [["(\\d{4})(\\d{4})", "$1 $2", ["[1-9]"]]], 0, 0, 0, 0, 0, 0, [0, 0, 0, 0, 0, 0, 0, 0, 0, ["[1-9]\\d{7}"]]], "870": ["870", 0, "7\\d{11}|[235-7]\\d{8}", [9, 12], [["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["[235-7]"]]], 0, 0, 0, 0, 0, 0, [0, ["(?:[356]|774[45])\\d{8}|7[6-8]\\d{7}"], 0, 0, 0, 0, 0, 0, ["2\\d{8}", [9]]]], "878": ["878", 0, "10\\d{10}", [12], [["(\\d{2})(\\d{5})(\\d{5})", "$1 $2 $3", ["1"]]], 0, 0, 0, 0, 0, 0, [0, 0, 0, 0, 0, 0, 0, 0, ["10\\d{10}"]]], "881": ["881", 0, "6\\d{9}|[0-36-9]\\d{8}", [9, 10], [["(\\d)(\\d{3})(\\d{5})", "$1 $2 $3", ["[0-37-9]"]], ["(\\d)(\\d{3})(\\d{5,6})", "$1 $2 $3", ["6"]]], 0, 0, 0, 0, 0, 0, [0, ["6\\d{9}|[0-36-9]\\d{8}"]]], "882": ["882", 0, "[13]\\d{6}(?:\\d{2,5})?|[19]\\d{7}|(?:[25]\\d\\d|4)\\d{7}(?:\\d{2})?", [7, 8, 9, 10, 11, 12], [["(\\d{2})(\\d{5})", "$1 $2", ["16|342"]], ["(\\d{2})(\\d{6})", "$1 $2", ["49"]], ["(\\d{2})(\\d{2})(\\d{4})", "$1 $2 $3", ["1[36]|9"]], ["(\\d{2})(\\d{4})(\\d{3})", "$1 $2 $3", ["3[23]"]], ["(\\d{2})(\\d{3,4})(\\d{4})", "$1 $2 $3", ["16"]], ["(\\d{2})(\\d{4})(\\d{4})", "$1 $2 $3", ["10|23|3(?:[15]|4[57])|4|5[12]"]], ["(\\d{3})(\\d{4})(\\d{4})", "$1 $2 $3", ["34"]], ["(\\d{2})(\\d{4,5})(\\d{5})", "$1 $2 $3", ["[1-35]"]]], 0, 0, 0, 0, 0, 0, [0, ["342\\d{4}|(?:337|49)\\d{6}|(?:3(?:2|47|7\\d{3})|5(?:0\\d{3}|2[0-2]))\\d{7}", [7, 8, 9, 10, 12]], 0, 0, 0, ["348[57]\\d{7}", [11]], 0, 0, ["1(?:3(?:0[0347]|[13][0139]|2[035]|4[013568]|6[0459]|7[06]|8[15-8]|9[0689])\\d{4}|6\\d{5,10})|(?:345\\d|9[89])\\d{6}|(?:10|2(?:3|85\\d)|3(?:[15]|[69]\\d\\d)|4[15-8]|51)\\d{8}"]]], "883": ["883", 0, "(?:[1-4]\\d|51)\\d{6,10}", [8, 9, 10, 11, 12], [["(\\d{3})(\\d{3})(\\d{2,8})", "$1 $2 $3", ["[14]|2[24-689]|3[02-689]|51[24-9]"]], ["(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3", ["510"]], ["(\\d{3})(\\d{3})(\\d{4})", "$1 $2 $3", ["21"]], ["(\\d{4})(\\d{4})(\\d{4})", "$1 $2 $3", ["51[13]"]], ["(\\d{3})(\\d{3})(\\d{3})(\\d{3})", "$1 $2 $3 $4", ["[235]"]]], 0, 0, 0, 0, 0, 0, [0, 0, 0, 0, 0, 0, 0, 0, ["(?:2(?:00\\d\\d|10)|(?:370[1-9]|51\\d0)\\d)\\d{7}|51(?:00\\d{5}|[24-9]0\\d{4,7})|(?:1[0-79]|2[24-689]|3[02-689]|4[0-4])0\\d{5,9}"]]], "888": ["888", 0, "\\d{11}", [11], [["(\\d{3})(\\d{3})(\\d{5})", "$1 $2 $3"]], 0, 0, 0, 0, 0, 0, [0, 0, 0, 0, 0, 0, ["\\d{11}"]]], "979": ["979", 0, "[1359]\\d{8}", [9], [["(\\d)(\\d{4})(\\d{4})", "$1 $2 $3", ["[1359]"]]], 0, 0, 0, 0, 0, 0, [0, 0, 0, ["[1359]\\d{8}"]]] } };
|
|
23621
24531
|
function withMetadataArgument(func, _arguments) {
|
|
23622
24532
|
var args = Array.prototype.slice.call(_arguments);
|
|
23623
24533
|
args.push(metadata);
|
|
@@ -23645,6 +24555,10 @@ var objectConstructor = {}.constructor;
|
|
|
23645
24555
|
function isObject(object) {
|
|
23646
24556
|
return object !== void 0 && object !== null && object.constructor === objectConstructor;
|
|
23647
24557
|
}
|
|
24558
|
+
var CALLING_CODE_REG_EXP = /^\d+$/;
|
|
24559
|
+
function isCallingCode(string) {
|
|
24560
|
+
return CALLING_CODE_REG_EXP.test(string);
|
|
24561
|
+
}
|
|
23648
24562
|
function _typeof$7(o) {
|
|
23649
24563
|
"@babel/helpers - typeof";
|
|
23650
24564
|
return _typeof$7 = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function(o2) {
|
|
@@ -23682,7 +24596,6 @@ function _toPrimitive$6(t2, r) {
|
|
|
23682
24596
|
var V3 = "1.2.0";
|
|
23683
24597
|
var V4 = "1.7.35";
|
|
23684
24598
|
var DEFAULT_EXT_PREFIX = " ext. ";
|
|
23685
|
-
var CALLING_CODE_REG_EXP = /^\d+$/;
|
|
23686
24599
|
var Metadata = /* @__PURE__ */ function() {
|
|
23687
24600
|
function Metadata2(metadata2) {
|
|
23688
24601
|
_classCallCheck$2(this, Metadata2);
|
|
@@ -23745,18 +24658,32 @@ var Metadata = /* @__PURE__ */ function() {
|
|
|
23745
24658
|
value: function country(countryCode) {
|
|
23746
24659
|
return this.selectNumberingPlan(countryCode);
|
|
23747
24660
|
}
|
|
24661
|
+
/**
|
|
24662
|
+
* Selects a telephone numbering plan based on either a country code or a calling code.
|
|
24663
|
+
* @param {string} argument — Country code or calling code.
|
|
24664
|
+
* @param {string} legacyArgumentCallingCode — Legacy argument: calling code, if the first argument is not passed.
|
|
24665
|
+
*/
|
|
23748
24666
|
}, {
|
|
23749
24667
|
key: "selectNumberingPlan",
|
|
23750
|
-
value: function selectNumberingPlan(
|
|
23751
|
-
|
|
23752
|
-
|
|
23753
|
-
|
|
24668
|
+
value: function selectNumberingPlan(argument, legacyArgumentCallingCode) {
|
|
24669
|
+
var countryCode;
|
|
24670
|
+
var callingCode;
|
|
24671
|
+
if (argument) {
|
|
24672
|
+
if (isCallingCode(argument)) {
|
|
24673
|
+
callingCode = argument;
|
|
24674
|
+
} else {
|
|
24675
|
+
countryCode = argument;
|
|
24676
|
+
}
|
|
24677
|
+
}
|
|
24678
|
+
if (legacyArgumentCallingCode) {
|
|
24679
|
+
callingCode = legacyArgumentCallingCode;
|
|
23754
24680
|
}
|
|
23755
24681
|
if (countryCode && countryCode !== "001") {
|
|
23756
|
-
|
|
24682
|
+
var countryMetadata = this.getCountryMetadata(countryCode);
|
|
24683
|
+
if (!countryMetadata) {
|
|
23757
24684
|
throw new Error("Unknown country: ".concat(countryCode));
|
|
23758
24685
|
}
|
|
23759
|
-
this.numberingPlan = new NumberingPlan(
|
|
24686
|
+
this.numberingPlan = new NumberingPlan(countryMetadata, this);
|
|
23760
24687
|
} else if (callingCode) {
|
|
23761
24688
|
if (!this.hasCallingCode(callingCode)) {
|
|
23762
24689
|
throw new Error("Unknown calling code: ".concat(callingCode));
|
|
@@ -23908,16 +24835,28 @@ var NumberingPlan = /* @__PURE__ */ function() {
|
|
|
23908
24835
|
value: function callingCode() {
|
|
23909
24836
|
return this.metadata[0];
|
|
23910
24837
|
}
|
|
23911
|
-
//
|
|
23912
|
-
//
|
|
23913
|
-
//
|
|
23914
|
-
//
|
|
23915
|
-
//
|
|
23916
|
-
//
|
|
24838
|
+
// When multiple countries share the same calling code,
|
|
24839
|
+
// all phone number formatting rules are included in the metadata
|
|
24840
|
+
// of the "default" country for that calling code.
|
|
24841
|
+
// Any other countries' metdata doesn't include any formatting rules.
|
|
24842
|
+
// Google developers said that such storage architecture was chosen for performance reasons.
|
|
24843
|
+
//
|
|
24844
|
+
// For example, for NANPA region ("North American Numbering Plan Administration",
|
|
24845
|
+
// which includes USA, Canada, Cayman Islands, Bahamas, etc) all formatting rules
|
|
24846
|
+
// are contained in the metadata of `US` country.
|
|
24847
|
+
//
|
|
24848
|
+
// This is not public API.
|
|
24849
|
+
//
|
|
24850
|
+
}, {
|
|
24851
|
+
key: "_getDefaultCountryMetadataForThisCallingCode",
|
|
24852
|
+
value: function _getDefaultCountryMetadataForThisCallingCode() {
|
|
24853
|
+
return this.globalMetadataObject.getNumberingPlanMetadata(this.callingCode());
|
|
24854
|
+
}
|
|
24855
|
+
// Deprecated.
|
|
23917
24856
|
}, {
|
|
23918
24857
|
key: "getDefaultCountryMetadataForRegion",
|
|
23919
24858
|
value: function getDefaultCountryMetadataForRegion() {
|
|
23920
|
-
return this.
|
|
24859
|
+
return this._getDefaultCountryMetadataForThisCallingCode();
|
|
23921
24860
|
}
|
|
23922
24861
|
// Is always present.
|
|
23923
24862
|
}, {
|
|
@@ -23958,7 +24897,7 @@ var NumberingPlan = /* @__PURE__ */ function() {
|
|
|
23958
24897
|
key: "formats",
|
|
23959
24898
|
value: function formats() {
|
|
23960
24899
|
var _this = this;
|
|
23961
|
-
var formats2 = this._getFormats(this.metadata) || this._getFormats(this.
|
|
24900
|
+
var formats2 = this._getFormats(this.metadata) || this._getFormats(this._getDefaultCountryMetadataForThisCallingCode()) || [];
|
|
23962
24901
|
return formats2.map(function(_) {
|
|
23963
24902
|
return new Format(_, _this);
|
|
23964
24903
|
});
|
|
@@ -23979,7 +24918,7 @@ var NumberingPlan = /* @__PURE__ */ function() {
|
|
|
23979
24918
|
}, {
|
|
23980
24919
|
key: "nationalPrefixFormattingRule",
|
|
23981
24920
|
value: function nationalPrefixFormattingRule() {
|
|
23982
|
-
return this._getNationalPrefixFormattingRule(this.metadata) || this._getNationalPrefixFormattingRule(this.
|
|
24921
|
+
return this._getNationalPrefixFormattingRule(this.metadata) || this._getNationalPrefixFormattingRule(this._getDefaultCountryMetadataForThisCallingCode());
|
|
23983
24922
|
}
|
|
23984
24923
|
}, {
|
|
23985
24924
|
key: "_nationalPrefixForParsing",
|
|
@@ -24008,7 +24947,7 @@ var NumberingPlan = /* @__PURE__ */ function() {
|
|
|
24008
24947
|
}, {
|
|
24009
24948
|
key: "nationalPrefixIsOptionalWhenFormattingInNationalFormat",
|
|
24010
24949
|
value: function nationalPrefixIsOptionalWhenFormattingInNationalFormat() {
|
|
24011
|
-
return this._getNationalPrefixIsOptionalWhenFormatting(this.metadata) || this._getNationalPrefixIsOptionalWhenFormatting(this.
|
|
24950
|
+
return this._getNationalPrefixIsOptionalWhenFormatting(this.metadata) || this._getNationalPrefixIsOptionalWhenFormatting(this._getDefaultCountryMetadataForThisCallingCode());
|
|
24012
24951
|
}
|
|
24013
24952
|
}, {
|
|
24014
24953
|
key: "leadingDigits",
|
|
@@ -24149,15 +25088,15 @@ function validateMetadata(metadata2) {
|
|
|
24149
25088
|
var typeOf = function typeOf2(_) {
|
|
24150
25089
|
return _typeof$7(_);
|
|
24151
25090
|
};
|
|
24152
|
-
function getCountryCallingCode(country,
|
|
24153
|
-
metadata2 = new Metadata(
|
|
25091
|
+
function getCountryCallingCode(country, metadataJson) {
|
|
25092
|
+
var metadata2 = new Metadata(metadataJson);
|
|
24154
25093
|
if (metadata2.hasCountry(country)) {
|
|
24155
25094
|
return metadata2.selectNumberingPlan(country).countryCallingCode();
|
|
24156
25095
|
}
|
|
24157
25096
|
throw new Error("Unknown country: ".concat(country));
|
|
24158
25097
|
}
|
|
24159
|
-
function isSupportedCountry(country,
|
|
24160
|
-
return
|
|
25098
|
+
function isSupportedCountry(country, metadataJson) {
|
|
25099
|
+
return metadataJson.countries.hasOwnProperty(country);
|
|
24161
25100
|
}
|
|
24162
25101
|
function setVersion(metadata2) {
|
|
24163
25102
|
var version = metadata2.version;
|
|
@@ -24179,9 +25118,9 @@ function setVersion(metadata2) {
|
|
|
24179
25118
|
}
|
|
24180
25119
|
}
|
|
24181
25120
|
function checkNumberLength(nationalNumber, country, metadata2) {
|
|
24182
|
-
return checkNumberLengthForType(nationalNumber,
|
|
25121
|
+
return checkNumberLengthForType(nationalNumber, void 0, country, metadata2);
|
|
24183
25122
|
}
|
|
24184
|
-
function checkNumberLengthForType(nationalNumber,
|
|
25123
|
+
function checkNumberLengthForType(nationalNumber, type, country, metadata2) {
|
|
24185
25124
|
if (country) {
|
|
24186
25125
|
metadata2 = new Metadata(metadata2.metadata);
|
|
24187
25126
|
metadata2.selectNumberingPlan(country);
|
|
@@ -24204,16 +25143,16 @@ function checkNumberLengthForType(nationalNumber, country, type, metadata2) {
|
|
|
24204
25143
|
}
|
|
24205
25144
|
return possible_lengths.indexOf(actual_length, 1) >= 0 ? "IS_POSSIBLE" : "INVALID_LENGTH";
|
|
24206
25145
|
}
|
|
24207
|
-
function isPossiblePhoneNumber$2(input, options,
|
|
25146
|
+
function isPossiblePhoneNumber$2(input, options, metadataJson) {
|
|
24208
25147
|
if (options === void 0) {
|
|
24209
25148
|
options = {};
|
|
24210
25149
|
}
|
|
24211
|
-
metadata2 = new Metadata(
|
|
25150
|
+
var metadata2 = new Metadata(metadataJson);
|
|
24212
25151
|
if (options.v2) {
|
|
24213
25152
|
if (!input.countryCallingCode) {
|
|
24214
25153
|
throw new Error("Invalid phone number object passed");
|
|
24215
25154
|
}
|
|
24216
|
-
metadata2.selectNumberingPlan(input.countryCallingCode);
|
|
25155
|
+
metadata2.selectNumberingPlan(input.country || input.countryCallingCode);
|
|
24217
25156
|
} else {
|
|
24218
25157
|
if (!input.phone) {
|
|
24219
25158
|
return false;
|
|
@@ -24231,17 +25170,15 @@ function isPossiblePhoneNumber$2(input, options, metadata2) {
|
|
|
24231
25170
|
}
|
|
24232
25171
|
}
|
|
24233
25172
|
if (metadata2.possibleLengths()) {
|
|
24234
|
-
return isPossibleNumber(input.phone || input.nationalNumber,
|
|
24235
|
-
}
|
|
24236
|
-
|
|
24237
|
-
|
|
24238
|
-
} else {
|
|
24239
|
-
throw new Error('Missing "possibleLengths" in metadata. Perhaps the metadata has been generated before v1.0.18.');
|
|
24240
|
-
}
|
|
25173
|
+
return isPossibleNumber(input.phone || input.nationalNumber, metadata2);
|
|
25174
|
+
}
|
|
25175
|
+
if (input.countryCallingCode && metadata2.isNonGeographicCallingCode(input.countryCallingCode)) {
|
|
25176
|
+
return true;
|
|
24241
25177
|
}
|
|
25178
|
+
throw new Error('Missing "possibleLengths" in metadata. Perhaps the metadata has been generated before v1.0.18.');
|
|
24242
25179
|
}
|
|
24243
|
-
function isPossibleNumber(nationalNumber,
|
|
24244
|
-
switch (checkNumberLength(nationalNumber,
|
|
25180
|
+
function isPossibleNumber(nationalNumber, metadata2) {
|
|
25181
|
+
switch (checkNumberLength(nationalNumber, void 0, metadata2)) {
|
|
24245
25182
|
case "IS_POSSIBLE":
|
|
24246
25183
|
return true;
|
|
24247
25184
|
default:
|
|
@@ -24277,13 +25214,13 @@ function _arrayLikeToArray$3(r, a) {
|
|
|
24277
25214
|
return n;
|
|
24278
25215
|
}
|
|
24279
25216
|
var NON_FIXED_LINE_PHONE_TYPES = ["MOBILE", "PREMIUM_RATE", "TOLL_FREE", "SHARED_COST", "VOIP", "PERSONAL_NUMBER", "PAGER", "UAN", "VOICEMAIL"];
|
|
24280
|
-
function getNumberType(input, options,
|
|
25217
|
+
function getNumberType(input, options, metadataJson) {
|
|
24281
25218
|
options = options || {};
|
|
24282
25219
|
if (!input.country && !input.countryCallingCode) {
|
|
24283
25220
|
return;
|
|
24284
25221
|
}
|
|
24285
|
-
metadata2 = new Metadata(
|
|
24286
|
-
metadata2.selectNumberingPlan(input.country
|
|
25222
|
+
var metadata2 = new Metadata(metadataJson);
|
|
25223
|
+
metadata2.selectNumberingPlan(input.country || input.countryCallingCode);
|
|
24287
25224
|
var nationalNumber = options.v2 ? input.nationalNumber : input.phone;
|
|
24288
25225
|
if (!matchesEntirely(nationalNumber, metadata2.nationalNumberPattern())) {
|
|
24289
25226
|
return;
|
|
@@ -24308,25 +25245,45 @@ function getNumberType(input, options, metadata2) {
|
|
|
24308
25245
|
}
|
|
24309
25246
|
}
|
|
24310
25247
|
function isNumberTypeEqualTo(nationalNumber, type, metadata2) {
|
|
24311
|
-
|
|
24312
|
-
if (!
|
|
25248
|
+
var typeDefinition = metadata2.type(type);
|
|
25249
|
+
if (!typeDefinition || !typeDefinition.pattern()) {
|
|
24313
25250
|
return false;
|
|
24314
25251
|
}
|
|
24315
|
-
if (
|
|
25252
|
+
if (typeDefinition.possibleLengths() && typeDefinition.possibleLengths().indexOf(nationalNumber.length) < 0) {
|
|
24316
25253
|
return false;
|
|
24317
25254
|
}
|
|
24318
|
-
return matchesEntirely(nationalNumber,
|
|
25255
|
+
return matchesEntirely(nationalNumber, typeDefinition.pattern());
|
|
24319
25256
|
}
|
|
24320
|
-
function isValidNumber(input, options,
|
|
25257
|
+
function isValidNumber(input, options, metadataJson) {
|
|
24321
25258
|
options = options || {};
|
|
24322
|
-
metadata2 = new Metadata(
|
|
24323
|
-
metadata2.selectNumberingPlan(input.country
|
|
25259
|
+
var metadata2 = new Metadata(metadataJson);
|
|
25260
|
+
metadata2.selectNumberingPlan(input.country || input.countryCallingCode);
|
|
24324
25261
|
if (metadata2.hasTypes()) {
|
|
24325
25262
|
return getNumberType(input, options, metadata2.metadata) !== void 0;
|
|
24326
25263
|
}
|
|
24327
25264
|
var nationalNumber = options.v2 ? input.nationalNumber : input.phone;
|
|
24328
25265
|
return matchesEntirely(nationalNumber, metadata2.nationalNumberPattern());
|
|
24329
25266
|
}
|
|
25267
|
+
var COUNTRY_CODE_REG_EXP = /^[A-Z]{2}$/;
|
|
25268
|
+
function isCountryCode(string) {
|
|
25269
|
+
return COUNTRY_CODE_REG_EXP.test(string);
|
|
25270
|
+
}
|
|
25271
|
+
function getCountryAndCallingCodeFromOneOfThem(countryOrCallingCode, metadataJson) {
|
|
25272
|
+
var country;
|
|
25273
|
+
var callingCode;
|
|
25274
|
+
var metadata2 = new Metadata(metadataJson);
|
|
25275
|
+
if (isCountryCode(countryOrCallingCode)) {
|
|
25276
|
+
country = countryOrCallingCode;
|
|
25277
|
+
metadata2.selectNumberingPlan(country);
|
|
25278
|
+
callingCode = metadata2.countryCallingCode();
|
|
25279
|
+
} else {
|
|
25280
|
+
callingCode = countryOrCallingCode;
|
|
25281
|
+
}
|
|
25282
|
+
return {
|
|
25283
|
+
country,
|
|
25284
|
+
callingCode
|
|
25285
|
+
};
|
|
25286
|
+
}
|
|
24330
25287
|
function getPossibleCountriesForNumber(callingCode, nationalNumber, metadata2) {
|
|
24331
25288
|
var _metadata = new Metadata(metadata2);
|
|
24332
25289
|
var possibleCountries = _metadata.getCountryCodesForCallingCode(callingCode);
|
|
@@ -24337,13 +25294,10 @@ function getPossibleCountriesForNumber(callingCode, nationalNumber, metadata2) {
|
|
|
24337
25294
|
return couldNationalNumberBelongToCountry(nationalNumber, country, metadata2);
|
|
24338
25295
|
});
|
|
24339
25296
|
}
|
|
24340
|
-
function couldNationalNumberBelongToCountry(nationalNumber, country,
|
|
24341
|
-
var
|
|
24342
|
-
|
|
24343
|
-
|
|
24344
|
-
return true;
|
|
24345
|
-
}
|
|
24346
|
-
return false;
|
|
25297
|
+
function couldNationalNumberBelongToCountry(nationalNumber, country, metadataJson) {
|
|
25298
|
+
var metadata2 = new Metadata(metadataJson);
|
|
25299
|
+
metadata2.selectNumberingPlan(country);
|
|
25300
|
+
return metadata2.numberingPlan.possibleLengths().indexOf(nationalNumber.length) >= 0;
|
|
24347
25301
|
}
|
|
24348
25302
|
var MIN_LENGTH_FOR_NSN = 2;
|
|
24349
25303
|
var MAX_LENGTH_FOR_NSN = 17;
|
|
@@ -24358,13 +25312,13 @@ var TILDES = "~⁓∼~";
|
|
|
24358
25312
|
var VALID_PUNCTUATION = "".concat(DASHES).concat(SLASHES).concat(DOTS).concat(WHITESPACE).concat(BRACKETS).concat(TILDES);
|
|
24359
25313
|
var PLUS_CHARS = "++";
|
|
24360
25314
|
var CAPTURING_DIGIT_PATTERN = new RegExp("([" + VALID_DIGITS + "])");
|
|
24361
|
-
function stripIddPrefix(number2, country, callingCode,
|
|
25315
|
+
function stripIddPrefix(number2, country, callingCode, metadataJson) {
|
|
24362
25316
|
if (!country) {
|
|
24363
25317
|
return;
|
|
24364
25318
|
}
|
|
24365
|
-
var
|
|
24366
|
-
|
|
24367
|
-
var IDDPrefixPattern = new RegExp(
|
|
25319
|
+
var metadata2 = new Metadata(metadataJson);
|
|
25320
|
+
metadata2.selectNumberingPlan(country || callingCode);
|
|
25321
|
+
var IDDPrefixPattern = new RegExp(metadata2.IDDPrefix());
|
|
24368
25322
|
if (number2.search(IDDPrefixPattern) !== 0) {
|
|
24369
25323
|
return;
|
|
24370
25324
|
}
|
|
@@ -24443,26 +25397,25 @@ function _arrayLikeToArray$2(r, a) {
|
|
|
24443
25397
|
for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e];
|
|
24444
25398
|
return n;
|
|
24445
25399
|
}
|
|
24446
|
-
function getCountryByNationalNumber(
|
|
24447
|
-
var
|
|
24448
|
-
metadata2 = new Metadata(metadata2);
|
|
25400
|
+
function getCountryByNationalNumber(nationalNumber, countries, metadataJson) {
|
|
25401
|
+
var metadata2 = new Metadata(metadataJson);
|
|
24449
25402
|
for (var _iterator = _createForOfIteratorHelperLoose$1(countries), _step; !(_step = _iterator()).done; ) {
|
|
24450
25403
|
var country = _step.value;
|
|
24451
25404
|
metadata2.selectNumberingPlan(country);
|
|
24452
25405
|
if (metadata2.leadingDigits()) {
|
|
24453
|
-
if (
|
|
25406
|
+
if (nationalNumber && nationalNumber.search(metadata2.leadingDigits()) === 0) {
|
|
24454
25407
|
return country;
|
|
24455
25408
|
}
|
|
24456
25409
|
} else if (getNumberType({
|
|
24457
|
-
phone:
|
|
25410
|
+
phone: nationalNumber,
|
|
24458
25411
|
country
|
|
24459
25412
|
}, void 0, metadata2.metadata)) {
|
|
24460
25413
|
return country;
|
|
24461
25414
|
}
|
|
24462
25415
|
}
|
|
24463
25416
|
}
|
|
24464
|
-
function getCountryByCallingCode(callingCode,
|
|
24465
|
-
var
|
|
25417
|
+
function getCountryByCallingCode(callingCode, _ref2) {
|
|
25418
|
+
var nationalNumber = _ref2.nationalNumber, metadata2 = _ref2.metadata;
|
|
24466
25419
|
var possibleCountries = metadata2.getCountryCodesForCallingCode(callingCode);
|
|
24467
25420
|
if (!possibleCountries) {
|
|
24468
25421
|
return;
|
|
@@ -24470,10 +25423,7 @@ function getCountryByCallingCode(callingCode, _ref) {
|
|
|
24470
25423
|
if (possibleCountries.length === 1) {
|
|
24471
25424
|
return possibleCountries[0];
|
|
24472
25425
|
}
|
|
24473
|
-
return getCountryByNationalNumber(
|
|
24474
|
-
countries: possibleCountries,
|
|
24475
|
-
metadata: metadata2.metadata
|
|
24476
|
-
});
|
|
25426
|
+
return getCountryByNationalNumber(nationalNumber, possibleCountries, metadata2.metadata);
|
|
24477
25427
|
}
|
|
24478
25428
|
function extractNationalNumber(number2, country, metadata2) {
|
|
24479
25429
|
var _extractNationalNumbe = extractNationalNumberFromPossiblyIncompleteNumber(number2, metadata2), carrierCode = _extractNationalNumbe.carrierCode, nationalNumber = _extractNationalNumbe.nationalNumber;
|
|
@@ -24517,15 +25467,20 @@ function isPossibleIncompleteNationalNumber(nationalNumber, country, metadata2)
|
|
|
24517
25467
|
return true;
|
|
24518
25468
|
}
|
|
24519
25469
|
}
|
|
24520
|
-
function extractCountryCallingCodeFromInternationalNumberWithoutPlusSign(number2, country, defaultCountry, defaultCallingCode,
|
|
24521
|
-
|
|
25470
|
+
function extractCountryCallingCodeFromInternationalNumberWithoutPlusSign(number2, country, defaultCountry, defaultCallingCode, metadataJson) {
|
|
25471
|
+
if (!(defaultCountry || defaultCallingCode)) {
|
|
25472
|
+
return {
|
|
25473
|
+
number: number2
|
|
25474
|
+
};
|
|
25475
|
+
}
|
|
25476
|
+
var countryCallingCode = defaultCountry ? getCountryCallingCode(defaultCountry, metadataJson) : defaultCallingCode;
|
|
24522
25477
|
if (number2.indexOf(countryCallingCode) === 0) {
|
|
24523
|
-
metadata2 = new Metadata(
|
|
24524
|
-
metadata2.selectNumberingPlan(defaultCountry
|
|
25478
|
+
var metadata2 = new Metadata(metadataJson);
|
|
25479
|
+
metadata2.selectNumberingPlan(defaultCountry || defaultCallingCode);
|
|
24525
25480
|
var possibleShorterNumber = number2.slice(countryCallingCode.length);
|
|
24526
|
-
var _extractNationalNumbe = extractNationalNumber(possibleShorterNumber,
|
|
24527
|
-
var _extractNationalNumbe2 = extractNationalNumber(number2,
|
|
24528
|
-
if (!matchesEntirely(nationalNumber, metadata2.nationalNumberPattern()) && matchesEntirely(possibleShorterNationalNumber, metadata2.nationalNumberPattern()) || checkNumberLength(nationalNumber,
|
|
25481
|
+
var _extractNationalNumbe = extractNationalNumber(possibleShorterNumber, void 0, metadata2), possibleShorterNationalNumber = _extractNationalNumbe.nationalNumber;
|
|
25482
|
+
var _extractNationalNumbe2 = extractNationalNumber(number2, void 0, metadata2), nationalNumber = _extractNationalNumbe2.nationalNumber;
|
|
25483
|
+
if (!matchesEntirely(nationalNumber, metadata2.nationalNumberPattern()) && matchesEntirely(possibleShorterNationalNumber, metadata2.nationalNumberPattern()) || checkNumberLength(nationalNumber, void 0, metadata2) === "TOO_LONG") {
|
|
24529
25484
|
return {
|
|
24530
25485
|
countryCallingCode,
|
|
24531
25486
|
number: possibleShorterNumber
|
|
@@ -24536,19 +25491,19 @@ function extractCountryCallingCodeFromInternationalNumberWithoutPlusSign(number2
|
|
|
24536
25491
|
number: number2
|
|
24537
25492
|
};
|
|
24538
25493
|
}
|
|
24539
|
-
function extractCountryCallingCode(number2, country, defaultCountry, defaultCallingCode,
|
|
25494
|
+
function extractCountryCallingCode(number2, country, defaultCountry, defaultCallingCode, metadataJson) {
|
|
24540
25495
|
if (!number2) {
|
|
24541
25496
|
return {};
|
|
24542
25497
|
}
|
|
24543
25498
|
var isNumberWithIddPrefix;
|
|
24544
25499
|
if (number2[0] !== "+") {
|
|
24545
|
-
var numberWithoutIDD = stripIddPrefix(number2, defaultCountry, defaultCallingCode,
|
|
25500
|
+
var numberWithoutIDD = stripIddPrefix(number2, defaultCountry, defaultCallingCode, metadataJson);
|
|
24546
25501
|
if (numberWithoutIDD && numberWithoutIDD !== number2) {
|
|
24547
25502
|
isNumberWithIddPrefix = true;
|
|
24548
25503
|
number2 = "+" + numberWithoutIDD;
|
|
24549
25504
|
} else {
|
|
24550
25505
|
if (defaultCountry || defaultCallingCode) {
|
|
24551
|
-
var _extractCountryCallin = extractCountryCallingCodeFromInternationalNumberWithoutPlusSign(number2, country, defaultCountry, defaultCallingCode,
|
|
25506
|
+
var _extractCountryCallin = extractCountryCallingCodeFromInternationalNumberWithoutPlusSign(number2, country, defaultCountry, defaultCallingCode, metadataJson), countryCallingCode = _extractCountryCallin.countryCallingCode, shorterNumber = _extractCountryCallin.number;
|
|
24552
25507
|
if (countryCallingCode) {
|
|
24553
25508
|
return {
|
|
24554
25509
|
countryCallingCodeSource: "FROM_NUMBER_WITHOUT_PLUS_SIGN",
|
|
@@ -24567,7 +25522,7 @@ function extractCountryCallingCode(number2, country, defaultCountry, defaultCall
|
|
|
24567
25522
|
if (number2[1] === "0") {
|
|
24568
25523
|
return {};
|
|
24569
25524
|
}
|
|
24570
|
-
metadata2 = new Metadata(
|
|
25525
|
+
var metadata2 = new Metadata(metadataJson);
|
|
24571
25526
|
var i = 2;
|
|
24572
25527
|
while (i - 1 <= MAX_LENGTH_COUNTRY_CODE && i <= number2.length) {
|
|
24573
25528
|
var _countryCallingCode = number2.slice(1, i);
|
|
@@ -24587,8 +25542,8 @@ function applyInternationalSeparatorStyle(formattedNumber) {
|
|
|
24587
25542
|
return formattedNumber.replace(new RegExp("[".concat(VALID_PUNCTUATION, "]+"), "g"), " ").trim();
|
|
24588
25543
|
}
|
|
24589
25544
|
var FIRST_GROUP_PATTERN = /(\$\d)/;
|
|
24590
|
-
function formatNationalNumberUsingFormat(number2, format2,
|
|
24591
|
-
var useInternationalFormat =
|
|
25545
|
+
function formatNationalNumberUsingFormat(number2, format2, _ref2) {
|
|
25546
|
+
var useInternationalFormat = _ref2.useInternationalFormat, withNationalPrefix = _ref2.withNationalPrefix;
|
|
24592
25547
|
var formattedNumber = number2.replace(new RegExp(format2.pattern()), useInternationalFormat ? format2.internationalFormat() : (
|
|
24593
25548
|
// This library doesn't use `domestic_carrier_code_formatting_rule`,
|
|
24594
25549
|
// because that one is only used when formatting phone numbers
|
|
@@ -24613,7 +25568,7 @@ function formatNationalNumberUsingFormat(number2, format2, _ref) {
|
|
|
24613
25568
|
var SINGLE_IDD_PREFIX_REG_EXP = /^[\d]+(?:[~\u2053\u223C\uFF5E][\d]+)?$/;
|
|
24614
25569
|
function getIddPrefix(country, callingCode, metadata2) {
|
|
24615
25570
|
var countryMetadata = new Metadata(metadata2);
|
|
24616
|
-
countryMetadata.selectNumberingPlan(country
|
|
25571
|
+
countryMetadata.selectNumberingPlan(country || callingCode);
|
|
24617
25572
|
if (countryMetadata.defaultIDDPrefix()) {
|
|
24618
25573
|
return countryMetadata.defaultIDDPrefix();
|
|
24619
25574
|
}
|
|
@@ -24662,8 +25617,8 @@ function isViablePhoneNumber(number2) {
|
|
|
24662
25617
|
function isViablePhoneNumberStart(number2) {
|
|
24663
25618
|
return VALID_PHONE_NUMBER_START_REG_EXP.test(number2);
|
|
24664
25619
|
}
|
|
24665
|
-
function formatRFC3966(
|
|
24666
|
-
var number2 =
|
|
25620
|
+
function formatRFC3966(_ref2) {
|
|
25621
|
+
var number2 = _ref2.number, ext = _ref2.ext;
|
|
24667
25622
|
if (!number2) {
|
|
24668
25623
|
return "";
|
|
24669
25624
|
}
|
|
@@ -24677,13 +25632,13 @@ var DEFAULT_OPTIONS = {
|
|
|
24677
25632
|
return "".concat(formattedNumber).concat(metadata2.ext()).concat(extension);
|
|
24678
25633
|
}
|
|
24679
25634
|
};
|
|
24680
|
-
function formatNumber(input, format2, options,
|
|
25635
|
+
function formatNumber(input, format2, options, metadataJson) {
|
|
24681
25636
|
if (options) {
|
|
24682
25637
|
options = merge({}, DEFAULT_OPTIONS, options);
|
|
24683
25638
|
} else {
|
|
24684
25639
|
options = DEFAULT_OPTIONS;
|
|
24685
25640
|
}
|
|
24686
|
-
metadata2 = new Metadata(
|
|
25641
|
+
var metadata2 = new Metadata(metadataJson);
|
|
24687
25642
|
if (input.country && input.country !== "001") {
|
|
24688
25643
|
if (!metadata2.hasCountry(input.country)) {
|
|
24689
25644
|
throw new Error("Unknown country: ".concat(input.country));
|
|
@@ -24721,6 +25676,9 @@ function formatNumber(input, format2, options, metadata2) {
|
|
|
24721
25676
|
return;
|
|
24722
25677
|
}
|
|
24723
25678
|
var formattedNumber = formatIDD(nationalNumber, input.carrierCode, countryCallingCode, options.fromCountry, metadata2);
|
|
25679
|
+
if (!formattedNumber) {
|
|
25680
|
+
return;
|
|
25681
|
+
}
|
|
24724
25682
|
return addExtension(formattedNumber, input.ext, metadata2, options.formatExtension);
|
|
24725
25683
|
default:
|
|
24726
25684
|
throw new Error('Unknown "format" argument passed to "formatNumber()": "'.concat(format2, '"'));
|
|
@@ -24878,7 +25836,7 @@ var PhoneNumber = /* @__PURE__ */ function() {
|
|
|
24878
25836
|
throw new TypeError("`nationalNumber` argument must be a string");
|
|
24879
25837
|
}
|
|
24880
25838
|
validateMetadata(metadata2);
|
|
24881
|
-
var
|
|
25839
|
+
var _getCountryAndCalling = getCountryAndCallingCodeFromOneOfThem(countryOrCountryCallingCode, metadata2), country = _getCountryAndCalling.country, countryCallingCode = _getCountryAndCalling.callingCode;
|
|
24882
25840
|
this.country = country;
|
|
24883
25841
|
this.countryCallingCode = countryCallingCode;
|
|
24884
25842
|
this.nationalNumber = nationalNumber;
|
|
@@ -24925,16 +25883,29 @@ var PhoneNumber = /* @__PURE__ */ function() {
|
|
|
24925
25883
|
value: function isEqual(phoneNumber) {
|
|
24926
25884
|
return this.number === phoneNumber.number && this.ext === phoneNumber.ext;
|
|
24927
25885
|
}
|
|
24928
|
-
//
|
|
24929
|
-
//
|
|
24930
|
-
//
|
|
24931
|
-
//
|
|
24932
|
-
//
|
|
24933
|
-
//
|
|
25886
|
+
// `validateLength()` method was originally meant to be an equivalent for `validatePhoneNumberLength()`.
|
|
25887
|
+
//
|
|
25888
|
+
// Later, it became apparent that it's not really a true equivalent.
|
|
25889
|
+
// The reason is that a `PhoneNumber` instance is not created
|
|
25890
|
+
// when the phone number string is too short for it to be considered a valid phone number:
|
|
25891
|
+
// * When there must be at least 2 national (significant) number digits: `"1"`.
|
|
25892
|
+
// * When the country calling code part of an international number is incomplete: `"+12"`.
|
|
25893
|
+
//
|
|
25894
|
+
// So leaving this `validateLength()` method here would suggest a hidden anti-pattern
|
|
25895
|
+
// of using it instead of `validatePhoneNumberLength()` while ignoring
|
|
25896
|
+
// the "too short to be even possible" case from phone number length validation.
|
|
25897
|
+
// And ignoring that case wouldn't make any sense in a real-world application
|
|
25898
|
+
// because it would still be a valid case that should be handled.
|
|
25899
|
+
//
|
|
25900
|
+
// Because of that, this method was eventually commented out in order to not introduce
|
|
25901
|
+
// that kind of an anti-pattern.
|
|
25902
|
+
//
|
|
24934
25903
|
// validateLength() {
|
|
24935
|
-
// const
|
|
24936
|
-
//
|
|
24937
|
-
//
|
|
25904
|
+
// const result = checkNumberLength(
|
|
25905
|
+
// this.nationalNumber,
|
|
25906
|
+
// undefined,
|
|
25907
|
+
// this.getMetadata()
|
|
25908
|
+
// )
|
|
24938
25909
|
// if (result !== 'IS_POSSIBLE') {
|
|
24939
25910
|
// return result
|
|
24940
25911
|
// }
|
|
@@ -24972,25 +25943,6 @@ var PhoneNumber = /* @__PURE__ */ function() {
|
|
|
24972
25943
|
}
|
|
24973
25944
|
}]);
|
|
24974
25945
|
}();
|
|
24975
|
-
var isCountryCode = function isCountryCode2(value) {
|
|
24976
|
-
return /^[A-Z]{2}$/.test(value);
|
|
24977
|
-
};
|
|
24978
|
-
function getCountryAndCountryCallingCode(countryOrCountryCallingCode, metadataJson) {
|
|
24979
|
-
var country;
|
|
24980
|
-
var countryCallingCode;
|
|
24981
|
-
var metadata2 = new Metadata(metadataJson);
|
|
24982
|
-
if (isCountryCode(countryOrCountryCallingCode)) {
|
|
24983
|
-
country = countryOrCountryCallingCode;
|
|
24984
|
-
metadata2.selectNumberingPlan(country);
|
|
24985
|
-
countryCallingCode = metadata2.countryCallingCode();
|
|
24986
|
-
} else {
|
|
24987
|
-
countryCallingCode = countryOrCountryCallingCode;
|
|
24988
|
-
}
|
|
24989
|
-
return {
|
|
24990
|
-
country,
|
|
24991
|
-
countryCallingCode
|
|
24992
|
-
};
|
|
24993
|
-
}
|
|
24994
25946
|
var E164_NUMBER_REGEXP = /^\+\d+$/;
|
|
24995
25947
|
function _typeof$5(o) {
|
|
24996
25948
|
"@babel/helpers - typeof";
|
|
@@ -25257,8 +26209,8 @@ function isPhoneContextValid(phoneContext) {
|
|
|
25257
26209
|
}
|
|
25258
26210
|
return RFC3966_GLOBAL_NUMBER_DIGITS_PATTERN_.test(phoneContext) || RFC3966_DOMAINNAME_PATTERN_.test(phoneContext);
|
|
25259
26211
|
}
|
|
25260
|
-
function extractFormattedPhoneNumberFromPossibleRfc3966NumberUri(numberToParse,
|
|
25261
|
-
var extractFormattedPhoneNumber =
|
|
26212
|
+
function extractFormattedPhoneNumberFromPossibleRfc3966NumberUri(numberToParse, _ref2) {
|
|
26213
|
+
var extractFormattedPhoneNumber = _ref2.extractFormattedPhoneNumber;
|
|
25262
26214
|
var phoneContext = extractPhoneContext(numberToParse);
|
|
25263
26215
|
if (!isPhoneContextValid(phoneContext)) {
|
|
25264
26216
|
throw new ParseError("NOT_A_NUMBER");
|
|
@@ -25292,9 +26244,9 @@ function extractFormattedPhoneNumberFromPossibleRfc3966NumberUri(numberToParse,
|
|
|
25292
26244
|
var MAX_INPUT_STRING_LENGTH = 250;
|
|
25293
26245
|
var PHONE_NUMBER_START_PATTERN = new RegExp("[" + PLUS_CHARS + VALID_DIGITS + "]");
|
|
25294
26246
|
var AFTER_PHONE_NUMBER_END_PATTERN = new RegExp("[^" + VALID_DIGITS + "#]+$");
|
|
25295
|
-
function parse(text2, options,
|
|
26247
|
+
function parse(text2, options, metadataJson) {
|
|
25296
26248
|
options = options || {};
|
|
25297
|
-
metadata2 = new Metadata(
|
|
26249
|
+
var metadata2 = new Metadata(metadataJson);
|
|
25298
26250
|
if (options.defaultCountry && !metadata2.hasCountry(options.defaultCountry)) {
|
|
25299
26251
|
if (options.v2) {
|
|
25300
26252
|
throw new ParseError("INVALID_COUNTRY");
|
|
@@ -25311,7 +26263,15 @@ function parse(text2, options, metadata2) {
|
|
|
25311
26263
|
}
|
|
25312
26264
|
return {};
|
|
25313
26265
|
}
|
|
25314
|
-
var _parsePhoneNumber = parsePhoneNumber$1(
|
|
26266
|
+
var _parsePhoneNumber = parsePhoneNumber$1(
|
|
26267
|
+
formattedPhoneNumber,
|
|
26268
|
+
options.defaultCountry,
|
|
26269
|
+
options.defaultCallingCode,
|
|
26270
|
+
// If `country` is returned, its numbering plan will also be selected in `metadata`.
|
|
26271
|
+
// Otherwise, if `countryCallingCode` is returned, its numbering plan will also be selected in `metadata`.
|
|
26272
|
+
// Otherwise, if neither `country` nor `countryCallingCode` are returned, no numbering plan will be selected in `metadata`.
|
|
26273
|
+
metadata2
|
|
26274
|
+
), country = _parsePhoneNumber.country, nationalNumber = _parsePhoneNumber.nationalNumber, countryCallingCode = _parsePhoneNumber.countryCallingCode, countryCallingCodeSource = _parsePhoneNumber.countryCallingCodeSource, carrierCode = _parsePhoneNumber.carrierCode;
|
|
25315
26275
|
if (!metadata2.hasSelectedNumberingPlan()) {
|
|
25316
26276
|
if (options.v2) {
|
|
25317
26277
|
throw new ParseError("INVALID_COUNTRY");
|
|
@@ -25353,7 +26313,7 @@ function parse(text2, options, metadata2) {
|
|
|
25353
26313
|
countryCallingCode,
|
|
25354
26314
|
carrierCode,
|
|
25355
26315
|
valid,
|
|
25356
|
-
possible: valid ? true : options.extended === true && metadata2.possibleLengths() && isPossibleNumber(nationalNumber,
|
|
26316
|
+
possible: valid ? true : options.extended === true && metadata2.possibleLengths() && isPossibleNumber(nationalNumber, metadata2) ? true : false,
|
|
25357
26317
|
phone: nationalNumber,
|
|
25358
26318
|
ext
|
|
25359
26319
|
};
|
|
@@ -25413,16 +26373,28 @@ function result(country, nationalNumber, ext) {
|
|
|
25413
26373
|
return result2;
|
|
25414
26374
|
}
|
|
25415
26375
|
function parsePhoneNumber$1(formattedPhoneNumber, defaultCountry, defaultCallingCode, metadata2) {
|
|
25416
|
-
var _extractCountryCallin = extractCountryCallingCode(
|
|
26376
|
+
var _extractCountryCallin = extractCountryCallingCode(
|
|
26377
|
+
parseIncompletePhoneNumber(formattedPhoneNumber),
|
|
26378
|
+
void 0,
|
|
26379
|
+
// `defaultCountry` and `defaultCallingCode` are only used to detect
|
|
26380
|
+
// if it's an "international" phone number or not. They won't be used
|
|
26381
|
+
// to derive the resulting `countryCallingCode` from them, or anything like that.
|
|
26382
|
+
defaultCountry,
|
|
26383
|
+
defaultCallingCode,
|
|
26384
|
+
metadata2.metadata
|
|
26385
|
+
), countryCallingCodeSource = _extractCountryCallin.countryCallingCodeSource, countryCallingCode = _extractCountryCallin.countryCallingCode, number2 = _extractCountryCallin.number;
|
|
25417
26386
|
var country;
|
|
25418
26387
|
if (countryCallingCode) {
|
|
25419
26388
|
metadata2.selectNumberingPlan(countryCallingCode);
|
|
25420
26389
|
} else if (number2 && (defaultCountry || defaultCallingCode)) {
|
|
25421
|
-
metadata2.selectNumberingPlan(defaultCountry, defaultCallingCode);
|
|
25422
26390
|
if (defaultCountry) {
|
|
25423
26391
|
country = defaultCountry;
|
|
26392
|
+
metadata2.selectNumberingPlan(defaultCountry);
|
|
26393
|
+
countryCallingCode = metadata2.numberingPlan.callingCode();
|
|
26394
|
+
} else {
|
|
26395
|
+
metadata2.selectNumberingPlan(defaultCallingCode);
|
|
26396
|
+
countryCallingCode = defaultCallingCode;
|
|
25424
26397
|
}
|
|
25425
|
-
countryCallingCode = defaultCallingCode || getCountryCallingCode(defaultCountry, metadata2.metadata);
|
|
25426
26398
|
} else return {};
|
|
25427
26399
|
if (!number2) {
|
|
25428
26400
|
return {
|
|
@@ -25430,7 +26402,7 @@ function parsePhoneNumber$1(formattedPhoneNumber, defaultCountry, defaultCalling
|
|
|
25430
26402
|
countryCallingCode
|
|
25431
26403
|
};
|
|
25432
26404
|
}
|
|
25433
|
-
var _extractNationalNumbe = extractNationalNumber(parseIncompletePhoneNumber(number2),
|
|
26405
|
+
var _extractNationalNumbe = extractNationalNumber(parseIncompletePhoneNumber(number2), void 0, metadata2), nationalNumber = _extractNationalNumbe.nationalNumber, carrierCode = _extractNationalNumbe.carrierCode;
|
|
25434
26406
|
var exactCountry = getCountryByCallingCode(countryCallingCode, {
|
|
25435
26407
|
nationalNumber,
|
|
25436
26408
|
metadata: metadata2
|
|
@@ -26470,7 +27442,7 @@ const _SlidCaptchaManager = class _SlidCaptchaManager {
|
|
|
26470
27442
|
__publicField(_SlidCaptchaManager, "instance");
|
|
26471
27443
|
let SlidCaptchaManager = _SlidCaptchaManager;
|
|
26472
27444
|
const slidCaptchaManager = SlidCaptchaManager.getInstance();
|
|
26473
|
-
const SlidCaptcha = defineAsyncComponent(() => import("./index-
|
|
27445
|
+
const SlidCaptcha = defineAsyncComponent(() => import("./index-BVtkY7Om.js"));
|
|
26474
27446
|
const useSlidCaptcha = () => {
|
|
26475
27447
|
const { mount, unMount, isMounted } = usePopup("slid-captcha-popup");
|
|
26476
27448
|
const open = (config) => {
|
|
@@ -26500,7 +27472,7 @@ const useSlidCaptcha = () => {
|
|
|
26500
27472
|
close
|
|
26501
27473
|
};
|
|
26502
27474
|
};
|
|
26503
|
-
const YunpianCaptcha = defineAsyncComponent(() => import("./index-
|
|
27475
|
+
const YunpianCaptcha = defineAsyncComponent(() => import("./index-Ds8UDIgP.js"));
|
|
26504
27476
|
const useYunpianCaptcha = () => {
|
|
26505
27477
|
const { mount, unMount } = usePopup("yunpian-captcha-popup");
|
|
26506
27478
|
const open = (config) => {
|
|
@@ -26924,7 +27896,7 @@ const _sfc_main$3 = /* @__PURE__ */ defineComponent({
|
|
|
26924
27896
|
class: normalizeClass(["g-data-panel i-data-panel", { "g-card": __props.card, "g-border": __props.border }])
|
|
26925
27897
|
}, [
|
|
26926
27898
|
renderSlot(_ctx.$slots, "header", {}, void 0, true),
|
|
26927
|
-
__props.loading ? renderSlot(_ctx.$slots, "loading", {
|
|
27899
|
+
__props.loading ? renderSlot(_ctx.$slots, "loading", {}, () => [
|
|
26928
27900
|
__props.skeleton ? (openBlock(), createBlock(unref(Skeleton), {
|
|
26929
27901
|
key: 0,
|
|
26930
27902
|
class: "data-panel__skeleton",
|
|
@@ -26934,7 +27906,7 @@ const _sfc_main$3 = /* @__PURE__ */ defineComponent({
|
|
|
26934
27906
|
name: "loading",
|
|
26935
27907
|
class: "data-panel__content-loading"
|
|
26936
27908
|
})) : createCommentVNode("", true)
|
|
26937
|
-
], true) : renderSlot(_ctx.$slots, "default", {
|
|
27909
|
+
], true, 0) : renderSlot(_ctx.$slots, "default", {}, void 0, true, 1)
|
|
26938
27910
|
], 2);
|
|
26939
27911
|
};
|
|
26940
27912
|
}
|
|
@@ -28011,9 +28983,7 @@ const _sfc_main$2 = /* @__PURE__ */ defineComponent({
|
|
|
28011
28983
|
await LoginConfig.bindPhone({
|
|
28012
28984
|
param: {
|
|
28013
28985
|
successFunc: loginSuccess,
|
|
28014
|
-
failFunc: bindPhoneFail
|
|
28015
|
-
loginDeviceType: "pc",
|
|
28016
|
-
country
|
|
28986
|
+
failFunc: bindPhoneFail
|
|
28017
28987
|
},
|
|
28018
28988
|
loginParams: {
|
|
28019
28989
|
mobile,
|
|
@@ -28040,8 +29010,6 @@ const _sfc_main$2 = /* @__PURE__ */ defineComponent({
|
|
|
28040
29010
|
validFunc: LoginCheck,
|
|
28041
29011
|
successFunc: loginSuccess,
|
|
28042
29012
|
failFunc: loginFail,
|
|
28043
|
-
loginDeviceType: "pc",
|
|
28044
|
-
country,
|
|
28045
29013
|
captchaType: captchaType.value
|
|
28046
29014
|
},
|
|
28047
29015
|
loginParams: passwordParams,
|
|
@@ -28064,7 +29032,6 @@ const _sfc_main$2 = /* @__PURE__ */ defineComponent({
|
|
|
28064
29032
|
validFunc: LoginCheck,
|
|
28065
29033
|
successFunc: loginSuccess,
|
|
28066
29034
|
failFunc: loginFail,
|
|
28067
|
-
loginDeviceType: "pc",
|
|
28068
29035
|
country
|
|
28069
29036
|
},
|
|
28070
29037
|
loginParams: phoneParams
|
|
@@ -28438,8 +29405,7 @@ const _sfc_main$2 = /* @__PURE__ */ defineComponent({
|
|
|
28438
29405
|
await LoginConfig.changeBindAccount({
|
|
28439
29406
|
param: {
|
|
28440
29407
|
successFunc: loginSuccess,
|
|
28441
|
-
failFunc: changeBindAccountFail
|
|
28442
|
-
loginDeviceType: "pc"
|
|
29408
|
+
failFunc: changeBindAccountFail
|
|
28443
29409
|
},
|
|
28444
29410
|
loginParams: {
|
|
28445
29411
|
mask: bindPhoneConflictMask.value
|
|
@@ -29517,7 +30483,7 @@ const index = {
|
|
|
29517
30483
|
}
|
|
29518
30484
|
};
|
|
29519
30485
|
export {
|
|
29520
|
-
|
|
30486
|
+
HeaderSkeleton as $,
|
|
29521
30487
|
isZh as A,
|
|
29522
30488
|
ThemeType as B,
|
|
29523
30489
|
currentTheme as C,
|
|
@@ -29533,29 +30499,29 @@ export {
|
|
|
29533
30499
|
asideRequest as M,
|
|
29534
30500
|
_sfc_main$N as N,
|
|
29535
30501
|
loadAsideData as O,
|
|
29536
|
-
|
|
29537
|
-
|
|
30502
|
+
AsideFooterTools as P,
|
|
30503
|
+
AtomCodeLauncher as Q,
|
|
29538
30504
|
REPO_MODULE as R,
|
|
29539
|
-
|
|
30505
|
+
EnterpriseHeader as S,
|
|
29540
30506
|
TOPIC_TYPE as T,
|
|
29541
30507
|
GitCodeAside as U,
|
|
29542
30508
|
GitCodeAsideV2 as V,
|
|
29543
|
-
|
|
29544
|
-
|
|
29545
|
-
|
|
29546
|
-
|
|
30509
|
+
GitCodeHeader as W,
|
|
30510
|
+
GitCodeLayoutEmitter as X,
|
|
30511
|
+
HEADER_CREATE_MENU_PATHS as Y,
|
|
30512
|
+
HeaderCreateMenu as Z,
|
|
29547
30513
|
_export_sfc as _,
|
|
29548
30514
|
i18n as a,
|
|
29549
|
-
|
|
29550
|
-
|
|
29551
|
-
|
|
29552
|
-
|
|
29553
|
-
|
|
29554
|
-
|
|
29555
|
-
|
|
29556
|
-
|
|
29557
|
-
|
|
29558
|
-
|
|
30515
|
+
HomeHeaderActions as a0,
|
|
30516
|
+
_sfc_main$1 as a1,
|
|
30517
|
+
SceneValue as a2,
|
|
30518
|
+
ScrollActiveContainer as a3,
|
|
30519
|
+
SiteAnnouncement as a4,
|
|
30520
|
+
ToolsFloat as a5,
|
|
30521
|
+
index as a6,
|
|
30522
|
+
setLayoutConfig as a7,
|
|
30523
|
+
setTheme as a8,
|
|
30524
|
+
useLogin as a9,
|
|
29559
30525
|
REPO_EVENT as b,
|
|
29560
30526
|
useLayoutConfig as c,
|
|
29561
30527
|
transferNumber as d,
|