lyric-align-ts 1.0.0 → 1.0.2
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/LICENSE +21 -21
- package/README.md +19 -173
- package/THIRD_PARTY_NOTICES.md +115 -107
- package/dist/assets/manifest.json +3 -3
- package/dist/assets/parity.js +1 -1
- package/dist/assets/parity.wasm +0 -0
- package/dist/binding.js +1 -1
- package/dist/binding.js.map +1 -1
- package/dist/build-proof.json +14 -12
- package/dist/core/cue-score.d.mts +9 -0
- package/dist/core/refine.d.mts +32 -0
- package/dist/core/timeline-cues.d.mts +1 -0
- package/dist/index.js +135 -22
- package/dist/index.js.map +4 -4
- package/dist/types.d.ts +3 -0
- package/dist/worker.js +325 -150
- package/dist/worker.js.map +4 -4
- package/package.json +15 -46
package/dist/worker.js
CHANGED
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
__defProp(target, name, { get: all[name], enumerable: true });
|
|
7
7
|
};
|
|
8
8
|
|
|
9
|
-
//
|
|
9
|
+
// src/engine/word-patterns.json
|
|
10
10
|
var word_patterns_default = { "": `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, en: `(?:(?:L\\.P\\.|Alt\\.|Approx\\.|E\\.G\\.|Maj\\.|Misc\\.|P\\.O\\.|J\\.D\\.|Dec\\.|Sept\\.|MR\\.|DC\\.|D\\.C\\.|M\\.T\\.|Mrs\\.|N\\.V\\.|Aug\\.|S\\.A\\.|Num\\.|M\\.I\\.T\\.|Org\\.|Ex\\.|Cont\\.|Mart\\.|Fn\\.|Abs\\.|Lt\\.|Est\\.|A\\.M\\.|L\\.A\\.|Prof\\.|U\\.S\\.|Nov\\.|Ph\\.D\\.|Mar\\.|I\\.T\\.|exec\\.|Jan\\.|N\\.Y\\.|Md\\.|Op\\.|vs\\.|D\\.A\\.|A\\.D\\.|R\\.L\\.|P\\.M\\.|M\\.R\\.|Feb\\.|Exec\\.|I\\.e\\.|Sep\\.|U\\.S\\.C\\.|Mt\\.|A\\.S\\.|C\\.O\\.D\\.|Capt\\.|Col\\.|C\\.F\\.|Adj\\.|I\\.D\\.|Mgr\\.|R\\.T\\.|B\\.V\\.|M\\.|Conn\\.|Yr\\.|Rev\\.|Phys\\.|pp\\.|Ms\\.|Sgt\\.|J\\.K\\.|Nr\\.|Jun\\.|Fri\\.|S\\.A\\.R\\.|Lev\\.|Lt\\.Cdr\\.|Def\\.|Mr\\.|Dept\\.|Pvt\\.|Diff\\.|Hon\\.B\\.A\\.|Mb\\.|Min\\.|J\\.B\\.|Ed\\.|AB\\.|S\\.p\\.A\\.|I\\.|a\\.m\\.|Comm\\.|VS\\.|PP\\.|P\\.V\\.|K\\.R\\.|Etc\\.|Adv\\.|Lib\\.|E\\.g\\.|U\\.S\\.A\\.|S\\.E\\.|AA\\.|Rep\\.|Sq\\.|TL;DR|Dr\\.|dr\\.|DR\\.|A\\.I\\.|'cause|'til|'bout|'twas|'tis|\u2019cause|\u2019til|\u2019bout|\u2019twas|\u2019tis|C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|l\\.p\\.|alt\\.|approx\\.|e\\.g\\.|maj\\.|misc\\.|p\\.o\\.|j\\.d\\.|dec\\.|sept\\.|mr\\.|dc\\.|d\\.c\\.|m\\.t\\.|mrs\\.|n\\.v\\.|aug\\.|s\\.a\\.|num\\.|m\\.i\\.t\\.|org\\.|ex\\.|cont\\.|mart\\.|fn\\.|abs\\.|lt\\.|est\\.|a\\.m\\.|l\\.a\\.|prof\\.|u\\.s\\.|nov\\.|ph\\.d\\.|mar\\.|i\\.t\\.|exec\\.|jan\\.|n\\.y\\.|md\\.|op\\.|vs\\.|d\\.a\\.|a\\.d\\.|r\\.l\\.|p\\.m\\.|m\\.r\\.|feb\\.|exec\\.|i\\.e\\.|sep\\.|u\\.s\\.c\\.|mt\\.|a\\.s\\.|c\\.o\\.d\\.|capt\\.|col\\.|c\\.f\\.|adj\\.|i\\.d\\.|mgr\\.|r\\.t\\.|b\\.v\\.|m\\.|conn\\.|yr\\.|rev\\.|phys\\.|pp\\.|ms\\.|sgt\\.|j\\.k\\.|nr\\.|jun\\.|fri\\.|s\\.a\\.r\\.|lev\\.|lt\\.cdr\\.|def\\.|mr\\.|dept\\.|pvt\\.|diff\\.|hon\\.b\\.a\\.|mb\\.|min\\.|j\\.b\\.|ed\\.|ab\\.|s\\.p\\.a\\.|i\\.|a\\.m\\.|comm\\.|vs\\.|pp\\.|p\\.v\\.|k\\.r\\.|etc\\.|adv\\.|lib\\.|e\\.g\\.|u\\.s\\.a\\.|s\\.e\\.|aa\\.|rep\\.|sq\\.|tl;dr|dr\\.|dr\\.|dr\\.|a\\.i\\.|'cause|'til|'bout|'twas|'tis|\u2019cause|\u2019til|\u2019bout|\u2019twas|\u2019tis|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|L\\.P\\.|ALT\\.|APPROX\\.|E\\.G\\.|MAJ\\.|MISC\\.|P\\.O\\.|J\\.D\\.|DEC\\.|SEPT\\.|MR\\.|DC\\.|D\\.C\\.|M\\.T\\.|MRS\\.|N\\.V\\.|AUG\\.|S\\.A\\.|NUM\\.|M\\.I\\.T\\.|ORG\\.|EX\\.|CONT\\.|MART\\.|FN\\.|ABS\\.|LT\\.|EST\\.|A\\.M\\.|L\\.A\\.|PROF\\.|U\\.S\\.|NOV\\.|PH\\.D\\.|MAR\\.|I\\.T\\.|EXEC\\.|JAN\\.|N\\.Y\\.|MD\\.|OP\\.|VS\\.|D\\.A\\.|A\\.D\\.|R\\.L\\.|P\\.M\\.|M\\.R\\.|FEB\\.|EXEC\\.|I\\.E\\.|SEP\\.|U\\.S\\.C\\.|MT\\.|A\\.S\\.|C\\.O\\.D\\.|CAPT\\.|COL\\.|C\\.F\\.|ADJ\\.|I\\.D\\.|MGR\\.|R\\.T\\.|B\\.V\\.|M\\.|CONN\\.|YR\\.|REV\\.|PHYS\\.|PP\\.|MS\\.|SGT\\.|J\\.K\\.|NR\\.|JUN\\.|FRI\\.|S\\.A\\.R\\.|LEV\\.|LT\\.CDR\\.|DEF\\.|MR\\.|DEPT\\.|PVT\\.|DIFF\\.|HON\\.B\\.A\\.|MB\\.|MIN\\.|J\\.B\\.|ED\\.|AB\\.|S\\.P\\.A\\.|I\\.|A\\.M\\.|COMM\\.|VS\\.|PP\\.|P\\.V\\.|K\\.R\\.|ETC\\.|ADV\\.|LIB\\.|E\\.G\\.|U\\.S\\.A\\.|S\\.E\\.|AA\\.|REP\\.|SQ\\.|TL;DR|DR\\.|DR\\.|DR\\.|A\\.I\\.|'CAUSE|'TIL|'BOUT|'TWAS|'TIS|\u2019CAUSE|\u2019TIL|\u2019BOUT|\u2019TWAS|\u2019TIS|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, zh: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, de: `(?:(?:Port\\.|Alt\\.|Di\\.|Ges\\.|frz\\.|entspr\\.|Gebr\\.|erw\\.|Frl\\.|Inh\\.|k\\.u\\.k\\.|Ca\\.|J\\.D\\.|Ausg\\.|evtl\\.|So\\.|i\\.B\\.|s\\.a\\.|kgl\\.|Sept\\.|o\\.B\\.|Sa\\.|ev\\.|Dez\\.|am\\.|i\\.R\\.|eigtl\\.|i\\.J\\.|u\\.U\\.|G\\.|z\\.Hd\\.|u\\.A\\.w\\.g\\.|Kl\\.|Spezif\\.|Obj\\.|Ing\\.|D\\. h\\.|Folg\\.|Akt\\.|i\\.A\\.|Msp\\.|U\\.U\\.|Chr\\.|R\\.|Einh\\.|schw\xE4b\\.|Vgl\\.|Aug\\.|Dipl\\.-Ing\\.|W\\.|B\\.|U\\. U\\.|J\\.|Fa\\.|Mo\\.|n\\.u\\.Z\\.|Op\\.|Mrd\\.|e\\.h\\.|Hr\\.|Hrn\\.|Ztr\\.|k\\. u\\. k\\.|Bibl\\.|d\\.\xC4\\.|b\\.|M\\.|i\\.H\\.|v\\.R\\.w\\.|o\\.A\\.|St\\.|Dr\\.|Fn\\.|Abs\\.|Rd\\.|Dtzd\\.|Jahrh\\.|Z\\.|Std\\.|n\\. Chr\\.|m\xF6bl\\.|t\xE4gl\\.|gest\\.|gesch\\.|z\\.B\\.|Hbf\\.|Abt\\.|A\\.M\\.|e\\.Wz\\.|v\\.T\\.|Nov\\.|z\\.|Prot\\.|U\\.S\\.|Wg\\.|u\\.v\\.a\\.|Adr\\.|App\\.|ggf\\.|ggfs\\.|Jan\\.|O\\.|Rel\\.|od\\.|Pfd\\.|a\\.a\\.O\\.|p\\.Adr\\.|P\\.|Gem\\.|v\\. Chr\\.|Art\\.|z\\.Z\\.|S\\.A\\.|i\\.V\\.|verh\\.|Ausschl\\.|m\\.W\\.|Dir\\.|Verf\\.|Sek\\.|r\\.|Chin\\.|Feb\\.|Int\\.|Sep\\.|Gesch\\.|schweiz\\.|Bed\\.|a\\.Rh\\.|jew\\.|vgl\\.|a\\.M\\.|Str\\.|exkl\\.|gek\\.|Erf\\.|u\\.\xC4\\.|ehem\\.|n\xE4ml\\.|u\\. Z\\.|v\\. u\\. Z\\.|sog\\.|C\\.|Dipl\\.-Kfm\\.|mtl\\.|Hrsg\\.|Qu\\.|r\xF6m\\.|u\\.|U\\.|Adj\\.|Kap\\.|hpts\\.|a\\.D\\.|gedr\\.|Best\\.|N\\.|v\\.u\\.Z\\.|Phys\\.|Fr\\.|d\\.J\\.|Reg\\.-Bez\\.|m\\.E\\.|schles\\.|Max\\.|Ltd\\.|s\xFCdd\\.|inkl\\.|geb\\.|Ggf\\.|Inc\\.|kath\\.|kfm\\.|Nr\\.|Proz\\.|Dim\\.|verw\\.|Reg\\.|Dat\\.|Evtl\\.|led\\.|F\\.|Test\\.|Schr\\.|Do\\.|PIN\\.|Z\\. Zt\\.|v\\.Chr\\.|T\xE4gl\\.|s\\.|amtl\\.|Temp\\.|Mind\\.|e\\.V\\.|Abw\\.|P\\.M\\.|F\\.f\\.|a\\.a\\.S\\.|Mod\\.|Co\\.|Min\\.|Allg\\.|Geograph\\.|Jr\\.|Urspr\\.|Apr\\.|Z\\. B\\.|v\\.H\\.|A\\.|einschl\\.|Trans\\.|zzgl\\.|StR\\.|Fam\\.|I\\.|jhrl\\.|u\\.a\\.|Ben\\.|o\\.g\\.|Kfm\\.|Konv\\.|Mi\\.|L\\.|beil\\.|T\\.|Urspr\xFCngl\\.|r\xF6m\\.-kath\\.|Okt\\.|u\\.\xE4\\.|Tel\\.|D\\.|Ber\\.|Kop\\.|Mio\\.|Y\\.|U\\.S\\.A\\.|v\\. H\\.|Forts\\. f\\.|Rep\\.|Hptst\\.|\xF6sterr\\.|C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|port\\.|alt\\.|di\\.|ges\\.|frz\\.|entspr\\.|gebr\\.|erw\\.|frl\\.|inh\\.|k\\.u\\.k\\.|ca\\.|j\\.d\\.|ausg\\.|evtl\\.|so\\.|i\\.b\\.|s\\.a\\.|kgl\\.|sept\\.|o\\.b\\.|sa\\.|ev\\.|dez\\.|am\\.|i\\.r\\.|eigtl\\.|i\\.j\\.|u\\.u\\.|g\\.|z\\.hd\\.|u\\.a\\.w\\.g\\.|kl\\.|spezif\\.|obj\\.|ing\\.|d\\. h\\.|folg\\.|akt\\.|i\\.a\\.|msp\\.|u\\.u\\.|chr\\.|r\\.|einh\\.|schw\xE4b\\.|vgl\\.|aug\\.|dipl\\.-ing\\.|w\\.|b\\.|u\\. u\\.|j\\.|fa\\.|mo\\.|n\\.u\\.z\\.|op\\.|mrd\\.|e\\.h\\.|hr\\.|hrn\\.|ztr\\.|k\\. u\\. k\\.|bibl\\.|d\\.\xE4\\.|b\\.|m\\.|i\\.h\\.|v\\.r\\.w\\.|o\\.a\\.|st\\.|dr\\.|fn\\.|abs\\.|rd\\.|dtzd\\.|jahrh\\.|z\\.|std\\.|n\\. chr\\.|m\xF6bl\\.|t\xE4gl\\.|gest\\.|gesch\\.|z\\.b\\.|hbf\\.|abt\\.|a\\.m\\.|e\\.wz\\.|v\\.t\\.|nov\\.|z\\.|prot\\.|u\\.s\\.|wg\\.|u\\.v\\.a\\.|adr\\.|app\\.|ggf\\.|ggfs\\.|jan\\.|o\\.|rel\\.|od\\.|pfd\\.|a\\.a\\.o\\.|p\\.adr\\.|p\\.|gem\\.|v\\. chr\\.|art\\.|z\\.z\\.|s\\.a\\.|i\\.v\\.|verh\\.|ausschl\\.|m\\.w\\.|dir\\.|verf\\.|sek\\.|r\\.|chin\\.|feb\\.|int\\.|sep\\.|gesch\\.|schweiz\\.|bed\\.|a\\.rh\\.|jew\\.|vgl\\.|a\\.m\\.|str\\.|exkl\\.|gek\\.|erf\\.|u\\.\xE4\\.|ehem\\.|n\xE4ml\\.|u\\. z\\.|v\\. u\\. z\\.|sog\\.|c\\.|dipl\\.-kfm\\.|mtl\\.|hrsg\\.|qu\\.|r\xF6m\\.|u\\.|u\\.|adj\\.|kap\\.|hpts\\.|a\\.d\\.|gedr\\.|best\\.|n\\.|v\\.u\\.z\\.|phys\\.|fr\\.|d\\.j\\.|reg\\.-bez\\.|m\\.e\\.|schles\\.|max\\.|ltd\\.|s\xFCdd\\.|inkl\\.|geb\\.|ggf\\.|inc\\.|kath\\.|kfm\\.|nr\\.|proz\\.|dim\\.|verw\\.|reg\\.|dat\\.|evtl\\.|led\\.|f\\.|test\\.|schr\\.|do\\.|pin\\.|z\\. zt\\.|v\\.chr\\.|t\xE4gl\\.|s\\.|amtl\\.|temp\\.|mind\\.|e\\.v\\.|abw\\.|p\\.m\\.|f\\.f\\.|a\\.a\\.s\\.|mod\\.|co\\.|min\\.|allg\\.|geograph\\.|jr\\.|urspr\\.|apr\\.|z\\. b\\.|v\\.h\\.|a\\.|einschl\\.|trans\\.|zzgl\\.|str\\.|fam\\.|i\\.|jhrl\\.|u\\.a\\.|ben\\.|o\\.g\\.|kfm\\.|konv\\.|mi\\.|l\\.|beil\\.|t\\.|urspr\xFCngl\\.|r\xF6m\\.-kath\\.|okt\\.|u\\.\xE4\\.|tel\\.|d\\.|ber\\.|kop\\.|mio\\.|y\\.|u\\.s\\.a\\.|v\\. h\\.|forts\\. f\\.|rep\\.|hptst\\.|\xF6sterr\\.|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|PORT\\.|ALT\\.|DI\\.|GES\\.|FRZ\\.|ENTSPR\\.|GEBR\\.|ERW\\.|FRL\\.|INH\\.|K\\.U\\.K\\.|CA\\.|J\\.D\\.|AUSG\\.|EVTL\\.|SO\\.|I\\.B\\.|S\\.A\\.|KGL\\.|SEPT\\.|O\\.B\\.|SA\\.|EV\\.|DEZ\\.|AM\\.|I\\.R\\.|EIGTL\\.|I\\.J\\.|U\\.U\\.|G\\.|Z\\.HD\\.|U\\.A\\.W\\.G\\.|KL\\.|SPEZIF\\.|OBJ\\.|ING\\.|D\\. H\\.|FOLG\\.|AKT\\.|I\\.A\\.|MSP\\.|U\\.U\\.|CHR\\.|R\\.|EINH\\.|SCHW\xC4B\\.|VGL\\.|AUG\\.|DIPL\\.-ING\\.|W\\.|B\\.|U\\. U\\.|J\\.|FA\\.|MO\\.|N\\.U\\.Z\\.|OP\\.|MRD\\.|E\\.H\\.|HR\\.|HRN\\.|ZTR\\.|K\\. U\\. K\\.|BIBL\\.|D\\.\xC4\\.|B\\.|M\\.|I\\.H\\.|V\\.R\\.W\\.|O\\.A\\.|ST\\.|DR\\.|FN\\.|ABS\\.|RD\\.|DTZD\\.|JAHRH\\.|Z\\.|STD\\.|N\\. CHR\\.|M\xD6BL\\.|T\xC4GL\\.|GEST\\.|GESCH\\.|Z\\.B\\.|HBF\\.|ABT\\.|A\\.M\\.|E\\.WZ\\.|V\\.T\\.|NOV\\.|Z\\.|PROT\\.|U\\.S\\.|WG\\.|U\\.V\\.A\\.|ADR\\.|APP\\.|GGF\\.|GGFS\\.|JAN\\.|O\\.|REL\\.|OD\\.|PFD\\.|A\\.A\\.O\\.|P\\.ADR\\.|P\\.|GEM\\.|V\\. CHR\\.|ART\\.|Z\\.Z\\.|S\\.A\\.|I\\.V\\.|VERH\\.|AUSSCHL\\.|M\\.W\\.|DIR\\.|VERF\\.|SEK\\.|R\\.|CHIN\\.|FEB\\.|INT\\.|SEP\\.|GESCH\\.|SCHWEIZ\\.|BED\\.|A\\.RH\\.|JEW\\.|VGL\\.|A\\.M\\.|STR\\.|EXKL\\.|GEK\\.|ERF\\.|U\\.\xC4\\.|EHEM\\.|N\xC4ML\\.|U\\. Z\\.|V\\. U\\. Z\\.|SOG\\.|C\\.|DIPL\\.-KFM\\.|MTL\\.|HRSG\\.|QU\\.|R\xD6M\\.|U\\.|U\\.|ADJ\\.|KAP\\.|HPTS\\.|A\\.D\\.|GEDR\\.|BEST\\.|N\\.|V\\.U\\.Z\\.|PHYS\\.|FR\\.|D\\.J\\.|REG\\.-BEZ\\.|M\\.E\\.|SCHLES\\.|MAX\\.|LTD\\.|S\xDCDD\\.|INKL\\.|GEB\\.|GGF\\.|INC\\.|KATH\\.|KFM\\.|NR\\.|PROZ\\.|DIM\\.|VERW\\.|REG\\.|DAT\\.|EVTL\\.|LED\\.|F\\.|TEST\\.|SCHR\\.|DO\\.|PIN\\.|Z\\. ZT\\.|V\\.CHR\\.|T\xC4GL\\.|S\\.|AMTL\\.|TEMP\\.|MIND\\.|E\\.V\\.|ABW\\.|P\\.M\\.|F\\.F\\.|A\\.A\\.S\\.|MOD\\.|CO\\.|MIN\\.|ALLG\\.|GEOGRAPH\\.|JR\\.|URSPR\\.|APR\\.|Z\\. B\\.|V\\.H\\.|A\\.|EINSCHL\\.|TRANS\\.|ZZGL\\.|STR\\.|FAM\\.|I\\.|JHRL\\.|U\\.A\\.|BEN\\.|O\\.G\\.|KFM\\.|KONV\\.|MI\\.|L\\.|BEIL\\.|T\\.|URSPR\xDCNGL\\.|R\xD6M\\.-KATH\\.|OKT\\.|U\\.\xC4\\.|TEL\\.|D\\.|BER\\.|KOP\\.|MIO\\.|Y\\.|U\\.S\\.A\\.|V\\. H\\.|FORTS\\. F\\.|REP\\.|HPTST\\.|\xD6STERR\\.|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, es: `(?:(?:Rdos\\.|JJ\\.OO\\.|Sres\\.|fig\\.|may\\.|RR\\.HH\\.|oct\\.|cap\\.|mi\xE9\\.|doc\\.|Excmo\\.|Trab\\.|Excmos\\.|Kit\\.|Inc\\.|FF\\.CC\\.|DC\\.|ago\\.|trad\\.|SA\\.|Rvdos\\.|ed\\.|Exmo\\.|jul\\.|col\\.|RAM\\.|Srtas\\.|ene\\.|Rol\\.|Fabric\\.|Comm\\.|vid\\.|Da\\.|dic\\.|ss\\.|abr\\.|ntra\\.|Sra\\.|dtor\\.|cf\\.|dom\\.|prov\\.|Emm\\.|Sr\\.|licdo\\.|p\\.ej\\.|bol\\.|figs\\.|Vda\\.|Dr\\.|ntro\\.|Desv\\.|O\\.M\\.|Ldo\\.|Drs\\.|s\xE1b\\.|feb\\.|Ltda\\.|Lcda\\.|Exma\\.|C\\.V\\.|SS\\.MM\\.|Lda\\.|U\\.S\\.|hnos\\.|R\\.D\\.|Korn\\.|v\\.gr\\.|vs\\.|Ilmas\\.|Rdo\\.|ej\\.|vie\\.|jue\\.|a\\. C\\.|Ilmos\\.|e\\. c\\.|Excma\\.|afma\\.|licda\\.|Em\\.|K\\.|sras\\.|MM\\.|fund\\.|Mons\\.|Lcdo\\.|afmo\\.|C\\.|A\\.C\\.|dptos\\.|Col\\.|Srta\\.|Av\\.|Ant\\.|depto\\.|Var\\.|H\\.P\\.|D\\.|M\\.|C\\.P\\.|Rev\\.|Rvdmos\\.|Fr\\.|Ilmo\\.|afmos\\.|Ltd\\.|afmas\\.|prof\\.|lun\\.|SS\\.AA\\.|Sol\\.|nov\\.|mss\\.|D\xF1a\\.|Seg\\.|mar\\.|Rvdmo\\.|Reg\\.|ms\\.|Sras\\.|sres\\.|U\\.S\\.A\\.|Sta\\.|Sdad\\.|Dra\\.|srs\\.|R\\.U\\.|deptos\\.|dpto\\.|jun\\.|bco\\.|C\xEDa\\.|Id\\.|Mr\\.|e\\.g\\.|C\\.S\\.|Excmas\\.|D\xAA\\.|Rvdo\\.|Lic\\.|cfr\\.|Corp\\.|Dto\\.|Ilma\\.|L\\.|All\\.|PP\\.|d\\. C\\.|Ltdo\\.|mtro\\.|Mrs\\.|Desc\\.|Avda\\.|Exmas\\.|a\\. e\\. c\\.|Bien\\.|Exmos\\.|AA\\.|Sto\\.|CA\\.|sept\\.|Exc\\.|c\\/c\\.|C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|rdos\\.|jj\\.oo\\.|sres\\.|fig\\.|may\\.|rr\\.hh\\.|oct\\.|cap\\.|mi\xE9\\.|doc\\.|excmo\\.|trab\\.|excmos\\.|kit\\.|inc\\.|ff\\.cc\\.|dc\\.|ago\\.|trad\\.|sa\\.|rvdos\\.|ed\\.|exmo\\.|jul\\.|col\\.|ram\\.|srtas\\.|ene\\.|rol\\.|fabric\\.|comm\\.|vid\\.|da\\.|dic\\.|ss\\.|abr\\.|ntra\\.|sra\\.|dtor\\.|cf\\.|dom\\.|prov\\.|emm\\.|sr\\.|licdo\\.|p\\.ej\\.|bol\\.|figs\\.|vda\\.|dr\\.|ntro\\.|desv\\.|o\\.m\\.|ldo\\.|drs\\.|s\xE1b\\.|feb\\.|ltda\\.|lcda\\.|exma\\.|c\\.v\\.|ss\\.mm\\.|lda\\.|u\\.s\\.|hnos\\.|r\\.d\\.|korn\\.|v\\.gr\\.|vs\\.|ilmas\\.|rdo\\.|ej\\.|vie\\.|jue\\.|a\\. c\\.|ilmos\\.|e\\. c\\.|excma\\.|afma\\.|licda\\.|em\\.|k\\.|sras\\.|mm\\.|fund\\.|mons\\.|lcdo\\.|afmo\\.|c\\.|a\\.c\\.|dptos\\.|col\\.|srta\\.|av\\.|ant\\.|depto\\.|var\\.|h\\.p\\.|d\\.|m\\.|c\\.p\\.|rev\\.|rvdmos\\.|fr\\.|ilmo\\.|afmos\\.|ltd\\.|afmas\\.|prof\\.|lun\\.|ss\\.aa\\.|sol\\.|nov\\.|mss\\.|d\xF1a\\.|seg\\.|mar\\.|rvdmo\\.|reg\\.|ms\\.|sras\\.|sres\\.|u\\.s\\.a\\.|sta\\.|sdad\\.|dra\\.|srs\\.|r\\.u\\.|deptos\\.|dpto\\.|jun\\.|bco\\.|c\xEDa\\.|id\\.|mr\\.|e\\.g\\.|c\\.s\\.|excmas\\.|d\xAA\\.|rvdo\\.|lic\\.|cfr\\.|corp\\.|dto\\.|ilma\\.|l\\.|all\\.|pp\\.|d\\. c\\.|ltdo\\.|mtro\\.|mrs\\.|desc\\.|avda\\.|exmas\\.|a\\. e\\. c\\.|bien\\.|exmos\\.|aa\\.|sto\\.|ca\\.|sept\\.|exc\\.|c\\/c\\.|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|RDOS\\.|JJ\\.OO\\.|SRES\\.|FIG\\.|MAY\\.|RR\\.HH\\.|OCT\\.|CAP\\.|MI\xC9\\.|DOC\\.|EXCMO\\.|TRAB\\.|EXCMOS\\.|KIT\\.|INC\\.|FF\\.CC\\.|DC\\.|AGO\\.|TRAD\\.|SA\\.|RVDOS\\.|ED\\.|EXMO\\.|JUL\\.|COL\\.|RAM\\.|SRTAS\\.|ENE\\.|ROL\\.|FABRIC\\.|COMM\\.|VID\\.|DA\\.|DIC\\.|SS\\.|ABR\\.|NTRA\\.|SRA\\.|DTOR\\.|CF\\.|DOM\\.|PROV\\.|EMM\\.|SR\\.|LICDO\\.|P\\.EJ\\.|BOL\\.|FIGS\\.|VDA\\.|DR\\.|NTRO\\.|DESV\\.|O\\.M\\.|LDO\\.|DRS\\.|S\xC1B\\.|FEB\\.|LTDA\\.|LCDA\\.|EXMA\\.|C\\.V\\.|SS\\.MM\\.|LDA\\.|U\\.S\\.|HNOS\\.|R\\.D\\.|KORN\\.|V\\.GR\\.|VS\\.|ILMAS\\.|RDO\\.|EJ\\.|VIE\\.|JUE\\.|A\\. C\\.|ILMOS\\.|E\\. C\\.|EXCMA\\.|AFMA\\.|LICDA\\.|EM\\.|K\\.|SRAS\\.|MM\\.|FUND\\.|MONS\\.|LCDO\\.|AFMO\\.|C\\.|A\\.C\\.|DPTOS\\.|COL\\.|SRTA\\.|AV\\.|ANT\\.|DEPTO\\.|VAR\\.|H\\.P\\.|D\\.|M\\.|C\\.P\\.|REV\\.|RVDMOS\\.|FR\\.|ILMO\\.|AFMOS\\.|LTD\\.|AFMAS\\.|PROF\\.|LUN\\.|SS\\.AA\\.|SOL\\.|NOV\\.|MSS\\.|D\xD1A\\.|SEG\\.|MAR\\.|RVDMO\\.|REG\\.|MS\\.|SRAS\\.|SRES\\.|U\\.S\\.A\\.|STA\\.|SDAD\\.|DRA\\.|SRS\\.|R\\.U\\.|DEPTOS\\.|DPTO\\.|JUN\\.|BCO\\.|C\xCDA\\.|ID\\.|MR\\.|E\\.G\\.|C\\.S\\.|EXCMAS\\.|D\xAA\\.|RVDO\\.|LIC\\.|CFR\\.|CORP\\.|DTO\\.|ILMA\\.|L\\.|ALL\\.|PP\\.|D\\. C\\.|LTDO\\.|MTRO\\.|MRS\\.|DESC\\.|AVDA\\.|EXMAS\\.|A\\. E\\. C\\.|BIEN\\.|EXMOS\\.|AA\\.|STO\\.|CA\\.|SEPT\\.|EXC\\.|C\\/C\\.|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, ru: `(?:(?:\u0440\u0443\u0431\\.|\u044F\u043D\u0432\\.|\u0434\u043E \u043D\\. \u044D\\.|\u0441\u0435\u043D\u0442\\.|\u0442\u0435\u043B\\.|\u0434\u0435\u043A\\.|\u0444\u0435\u0432\u0440\\.|\u043D\u043E\u044F\u0431\\.|\u0430\u043F\u0440\\.|\u043D\\. \u044D\\.|\u043E\u043A\u0442\\.|\u0442\u044B\u0441\\.|\u0430\u0432\u0433\\.|\u043F\u0440\u043E\u0444\\.|\u043D\\.\u044D\\.|\u043A\u0432\\.|\u0443\u043B\\.|\u043E\u0442\u0434\\.|C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|\u0440\u0443\u0431\\.|\u044F\u043D\u0432\\.|\u0434\u043E \u043D\\. \u044D\\.|\u0441\u0435\u043D\u0442\\.|\u0442\u0435\u043B\\.|\u0434\u0435\u043A\\.|\u0444\u0435\u0432\u0440\\.|\u043D\u043E\u044F\u0431\\.|\u0430\u043F\u0440\\.|\u043D\\. \u044D\\.|\u043E\u043A\u0442\\.|\u0442\u044B\u0441\\.|\u0430\u0432\u0433\\.|\u043F\u0440\u043E\u0444\\.|\u043D\\.\u044D\\.|\u043A\u0432\\.|\u0443\u043B\\.|\u043E\u0442\u0434\\.|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|\u0420\u0423\u0411\\.|\u042F\u041D\u0412\\.|\u0414\u041E \u041D\\. \u042D\\.|\u0421\u0415\u041D\u0422\\.|\u0422\u0415\u041B\\.|\u0414\u0415\u041A\\.|\u0424\u0415\u0412\u0420\\.|\u041D\u041E\u042F\u0411\\.|\u0410\u041F\u0420\\.|\u041D\\. \u042D\\.|\u041E\u041A\u0422\\.|\u0422\u042B\u0421\\.|\u0410\u0412\u0413\\.|\u041F\u0420\u041E\u0424\\.|\u041D\\.\u042D\\.|\u041A\u0412\\.|\u0423\u041B\\.|\u041E\u0422\u0414\\.|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, ko: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, fr: `(?:(?:aux\\.|config\\.|collab\\.|M\\.|dim\\.|imprim\\.|oct\\.|syst\\.|bull\\.|MM\\.|doc\\.|P\\.O\\.|h\xF4p\\.|Mart\\.|juil\\.|broch\\.|adr\\.|symb\\.|C\\.|anc\\.|voit\\.|Jr\\.|graph\\.|dir\\.|\xE9d\\.|fig\\.|\xE9dit\\.|niv\\.|quart\\.|cam\\.|\xE9val\\.|anon\\.|r\xE9f\\.|Comm\\.|Prof\\.|f\xE9vr\\.|indus\\.|DC\\.|\xE9quiv\\.|illustr\\.|acoust\\.|nov\\.|L\\.|All\\.|U\\.S\\.|S\\.M\\.A\\.R\\.T\\.|sept\\.|avr\\.|jeu\\.|dest\\.|P\\.-D\\. G\\.|ill\\.|coll\\.|encycl\\.|mer\\.|Desc\\.|ven\\.|P\\.|lun\\.|Inc\\.|sam\\.|D\\.|append\\.|Var\\.|categ\\.|janv\\.|S\\.A\\.|imm\\.|U\\.S\\.A\\.|mar\\.|exempl\\.|d\xE9c\\.|ann\\.|U\\.|synth\\.|dict\\.|av\\. J\\.-C\\.|W\\.|Op\\.|ap\\. J\\.-C\\.|gouv\\.|trav\\. publ\\.|C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|aux\\.|config\\.|collab\\.|m\\.|dim\\.|imprim\\.|oct\\.|syst\\.|bull\\.|mm\\.|doc\\.|p\\.o\\.|h\xF4p\\.|mart\\.|juil\\.|broch\\.|adr\\.|symb\\.|c\\.|anc\\.|voit\\.|jr\\.|graph\\.|dir\\.|\xE9d\\.|fig\\.|\xE9dit\\.|niv\\.|quart\\.|cam\\.|\xE9val\\.|anon\\.|r\xE9f\\.|comm\\.|prof\\.|f\xE9vr\\.|indus\\.|dc\\.|\xE9quiv\\.|illustr\\.|acoust\\.|nov\\.|l\\.|all\\.|u\\.s\\.|s\\.m\\.a\\.r\\.t\\.|sept\\.|avr\\.|jeu\\.|dest\\.|p\\.-d\\. g\\.|ill\\.|coll\\.|encycl\\.|mer\\.|desc\\.|ven\\.|p\\.|lun\\.|inc\\.|sam\\.|d\\.|append\\.|var\\.|categ\\.|janv\\.|s\\.a\\.|imm\\.|u\\.s\\.a\\.|mar\\.|exempl\\.|d\xE9c\\.|ann\\.|u\\.|synth\\.|dict\\.|av\\. j\\.-c\\.|w\\.|op\\.|ap\\. j\\.-c\\.|gouv\\.|trav\\. publ\\.|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|AUX\\.|CONFIG\\.|COLLAB\\.|M\\.|DIM\\.|IMPRIM\\.|OCT\\.|SYST\\.|BULL\\.|MM\\.|DOC\\.|P\\.O\\.|H\xD4P\\.|MART\\.|JUIL\\.|BROCH\\.|ADR\\.|SYMB\\.|C\\.|ANC\\.|VOIT\\.|JR\\.|GRAPH\\.|DIR\\.|\xC9D\\.|FIG\\.|\xC9DIT\\.|NIV\\.|QUART\\.|CAM\\.|\xC9VAL\\.|ANON\\.|R\xC9F\\.|COMM\\.|PROF\\.|F\xC9VR\\.|INDUS\\.|DC\\.|\xC9QUIV\\.|ILLUSTR\\.|ACOUST\\.|NOV\\.|L\\.|ALL\\.|U\\.S\\.|S\\.M\\.A\\.R\\.T\\.|SEPT\\.|AVR\\.|JEU\\.|DEST\\.|P\\.-D\\. G\\.|ILL\\.|COLL\\.|ENCYCL\\.|MER\\.|DESC\\.|VEN\\.|P\\.|LUN\\.|INC\\.|SAM\\.|D\\.|APPEND\\.|VAR\\.|CATEG\\.|JANV\\.|S\\.A\\.|IMM\\.|U\\.S\\.A\\.|MAR\\.|EXEMPL\\.|D\xC9C\\.|ANN\\.|U\\.|SYNTH\\.|DICT\\.|AV\\. J\\.-C\\.|W\\.|OP\\.|AP\\. J\\.-C\\.|GOUV\\.|TRAV\\. PUBL\\.|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, ja: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, pt: `(?:(?:psicol\\.|fig\\.|compl\\.|rep\\.|cap\\.|doc\\.|fisiol\\.|dipl\\.|astron\\.|port\\.|eletr\xF4n\\.|geom\\.|mov\\.|ago\\.|trad\\.|arquit\\.|dez\\.|ed\\.|apt\\.|Exmo\\.|col\\.|ff\\.|univ\\.|res\\.|R\\.|transp\\.|D\\.C|l\\.|des\\.|fev\\.|abr\\.|liter\\.|lat\\.|Dir\\.|cf\\.|adm\\.|fot\\.|p\\.m\\.|P\\.M\\.|cr\xE9d\\.|jur\\.|com\\.|anat\\.|dir\\.|end\\.|f\xEDs\\.|E\\.|Est\\.|cont\\.|matem\\.|Drs\\.|g\xEAn\\.|neol\\.|p\xE1g\\.|\xEDnd\\.|Ltda\\.|Exma\\.|esp\\.|ingl\\.|tecnol\\.|Mar\\.|s\xEDmb\\.|Pe\\.|pal\\.|filos\\.|V\\.T\\.|fasc\\.|vs\\.|mai\\.|S\\.A\\.|profa\\.|N\\.Sra\\.|r\\.s\\.v\\.p\\.|cel\\.|mat\\.|abrev\\.|out\\.|long\\.|aux\\.|arit\\.|aer\\.|jul\\.|lin\\.|S\\.|m\xE9d\\.|odontol\\.|org\\.|A\\.C\\.|jun\\.|d\xE9b\\.|Av\\.|\xE1lg\\.|sup\\.|fl\\.|odont\\.|caps\\.|relat\\.|organiz\\.|hist\\.|Fr\\.|Ilmo\\.|fem\\.|ap\\.|Ltd\\.|pol\\.|s\xE9c\\.|prof\\.|cx\\.|nov\\.|qu\xEDm\\.|m\xFAs\\.|agric\\.|mar\\.|W\\.C\\.|fr\\.|cat\\.|jan\\.|pron\\.|rel\\.|autom\\.|Sta\\.|Dra\\.|p\\.|tel\\.|div\\.|p\\. ex\\.|a\\.C\\.|bras\\.|Alm\\.|Dr\\.|comp\\.|pq\\.|arqueol\\.|n\xE1ut\\.|biogr\\.|f\\.|c\xEDrc\\.|fac\\.|d\\.C\\.|apart\\.|ex\\.|Jr\\.|set\\.|tec\\.|sociol\\.|gram\\.|ind\\.|Ilma\\.|vol\\.|eng\\.|rod\\.|Ph\\.D\\.|Dras\\.|pp\\.|elem\\.|m\xE1q\\.|c\xF3d\\.|eletr\\.|prod\\.|ref\\.|fil\\.|a\\.m\\.|A\\.M|obs\\.|N\\.T\\.|contab\\.|Sto\\.|lit\\.|educ\\.|rementente|desc\\.|pr\xF3x\\.|C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|psicol\\.|fig\\.|compl\\.|rep\\.|cap\\.|doc\\.|fisiol\\.|dipl\\.|astron\\.|port\\.|eletr\xF4n\\.|geom\\.|mov\\.|ago\\.|trad\\.|arquit\\.|dez\\.|ed\\.|apt\\.|exmo\\.|col\\.|ff\\.|univ\\.|res\\.|r\\.|transp\\.|d\\.c|l\\.|des\\.|fev\\.|abr\\.|liter\\.|lat\\.|dir\\.|cf\\.|adm\\.|fot\\.|p\\.m\\.|p\\.m\\.|cr\xE9d\\.|jur\\.|com\\.|anat\\.|dir\\.|end\\.|f\xEDs\\.|e\\.|est\\.|cont\\.|matem\\.|drs\\.|g\xEAn\\.|neol\\.|p\xE1g\\.|\xEDnd\\.|ltda\\.|exma\\.|esp\\.|ingl\\.|tecnol\\.|mar\\.|s\xEDmb\\.|pe\\.|pal\\.|filos\\.|v\\.t\\.|fasc\\.|vs\\.|mai\\.|s\\.a\\.|profa\\.|n\\.sra\\.|r\\.s\\.v\\.p\\.|cel\\.|mat\\.|abrev\\.|out\\.|long\\.|aux\\.|arit\\.|aer\\.|jul\\.|lin\\.|s\\.|m\xE9d\\.|odontol\\.|org\\.|a\\.c\\.|jun\\.|d\xE9b\\.|av\\.|\xE1lg\\.|sup\\.|fl\\.|odont\\.|caps\\.|relat\\.|organiz\\.|hist\\.|fr\\.|ilmo\\.|fem\\.|ap\\.|ltd\\.|pol\\.|s\xE9c\\.|prof\\.|cx\\.|nov\\.|qu\xEDm\\.|m\xFAs\\.|agric\\.|mar\\.|w\\.c\\.|fr\\.|cat\\.|jan\\.|pron\\.|rel\\.|autom\\.|sta\\.|dra\\.|p\\.|tel\\.|div\\.|p\\. ex\\.|a\\.c\\.|bras\\.|alm\\.|dr\\.|comp\\.|pq\\.|arqueol\\.|n\xE1ut\\.|biogr\\.|f\\.|c\xEDrc\\.|fac\\.|d\\.c\\.|apart\\.|ex\\.|jr\\.|set\\.|tec\\.|sociol\\.|gram\\.|ind\\.|ilma\\.|vol\\.|eng\\.|rod\\.|ph\\.d\\.|dras\\.|pp\\.|elem\\.|m\xE1q\\.|c\xF3d\\.|eletr\\.|prod\\.|ref\\.|fil\\.|a\\.m\\.|a\\.m|obs\\.|n\\.t\\.|contab\\.|sto\\.|lit\\.|educ\\.|rementente|desc\\.|pr\xF3x\\.|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|PSICOL\\.|FIG\\.|COMPL\\.|REP\\.|CAP\\.|DOC\\.|FISIOL\\.|DIPL\\.|ASTRON\\.|PORT\\.|ELETR\xD4N\\.|GEOM\\.|MOV\\.|AGO\\.|TRAD\\.|ARQUIT\\.|DEZ\\.|ED\\.|APT\\.|EXMO\\.|COL\\.|FF\\.|UNIV\\.|RES\\.|R\\.|TRANSP\\.|D\\.C|L\\.|DES\\.|FEV\\.|ABR\\.|LITER\\.|LAT\\.|DIR\\.|CF\\.|ADM\\.|FOT\\.|P\\.M\\.|P\\.M\\.|CR\xC9D\\.|JUR\\.|COM\\.|ANAT\\.|DIR\\.|END\\.|F\xCDS\\.|E\\.|EST\\.|CONT\\.|MATEM\\.|DRS\\.|G\xCAN\\.|NEOL\\.|P\xC1G\\.|\xCDND\\.|LTDA\\.|EXMA\\.|ESP\\.|INGL\\.|TECNOL\\.|MAR\\.|S\xCDMB\\.|PE\\.|PAL\\.|FILOS\\.|V\\.T\\.|FASC\\.|VS\\.|MAI\\.|S\\.A\\.|PROFA\\.|N\\.SRA\\.|R\\.S\\.V\\.P\\.|CEL\\.|MAT\\.|ABREV\\.|OUT\\.|LONG\\.|AUX\\.|ARIT\\.|AER\\.|JUL\\.|LIN\\.|S\\.|M\xC9D\\.|ODONTOL\\.|ORG\\.|A\\.C\\.|JUN\\.|D\xC9B\\.|AV\\.|\xC1LG\\.|SUP\\.|FL\\.|ODONT\\.|CAPS\\.|RELAT\\.|ORGANIZ\\.|HIST\\.|FR\\.|ILMO\\.|FEM\\.|AP\\.|LTD\\.|POL\\.|S\xC9C\\.|PROF\\.|CX\\.|NOV\\.|QU\xCDM\\.|M\xDAS\\.|AGRIC\\.|MAR\\.|W\\.C\\.|FR\\.|CAT\\.|JAN\\.|PRON\\.|REL\\.|AUTOM\\.|STA\\.|DRA\\.|P\\.|TEL\\.|DIV\\.|P\\. EX\\.|A\\.C\\.|BRAS\\.|ALM\\.|DR\\.|COMP\\.|PQ\\.|ARQUEOL\\.|N\xC1UT\\.|BIOGR\\.|F\\.|C\xCDRC\\.|FAC\\.|D\\.C\\.|APART\\.|EX\\.|JR\\.|SET\\.|TEC\\.|SOCIOL\\.|GRAM\\.|IND\\.|ILMA\\.|VOL\\.|ENG\\.|ROD\\.|PH\\.D\\.|DRAS\\.|PP\\.|ELEM\\.|M\xC1Q\\.|C\xD3D\\.|ELETR\\.|PROD\\.|REF\\.|FIL\\.|A\\.M\\.|A\\.M|OBS\\.|N\\.T\\.|CONTAB\\.|STO\\.|LIT\\.|EDUC\\.|REMENTENTE|DESC\\.|PR\xD3X\\.|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, tr: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, pl: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, ca: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, nl: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, ar: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, sv: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, it: `(?:(?:N\\.B\\.|div\\.|a\\.C\\.|fig\\.|d\\.p\\.R\\.|c\\.c\\.p\\.|Cfr\\.|vol\\.|Geom\\.|O\\.d\\.G\\.|S\\.p\\.A\\.|ver\\.|N\\.d\\.A\\.|dott\\.|arch\\.|d\\.C\\.|N\\.d\\.T\\.|rag\\.|Sig\\.|Mod\\.|pag\\.|dr\\.|tav\\.|N\\.d\\.E\\.|DC\\.|mitt\\.|Ing\\.|int\\.|on\\.|C\\.P\\.|ag\\.|L\\.|U\\.S\\.|S\\.M\\.A\\.R\\.T\\.|p\\.i\\.|tab\\.|Ltd\\.|Liv\\.|D\\.|U\\.S\\.A\\.|sez\\.|avv\\.|S\\.A\\.R\\.|all\\.|p\\.|C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|n\\.b\\.|div\\.|a\\.c\\.|fig\\.|d\\.p\\.r\\.|c\\.c\\.p\\.|cfr\\.|vol\\.|geom\\.|o\\.d\\.g\\.|s\\.p\\.a\\.|ver\\.|n\\.d\\.a\\.|dott\\.|arch\\.|d\\.c\\.|n\\.d\\.t\\.|rag\\.|sig\\.|mod\\.|pag\\.|dr\\.|tav\\.|n\\.d\\.e\\.|dc\\.|mitt\\.|ing\\.|int\\.|on\\.|c\\.p\\.|ag\\.|l\\.|u\\.s\\.|s\\.m\\.a\\.r\\.t\\.|p\\.i\\.|tab\\.|ltd\\.|liv\\.|d\\.|u\\.s\\.a\\.|sez\\.|avv\\.|s\\.a\\.r\\.|all\\.|p\\.|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|N\\.B\\.|DIV\\.|A\\.C\\.|FIG\\.|D\\.P\\.R\\.|C\\.C\\.P\\.|CFR\\.|VOL\\.|GEOM\\.|O\\.D\\.G\\.|S\\.P\\.A\\.|VER\\.|N\\.D\\.A\\.|DOTT\\.|ARCH\\.|D\\.C\\.|N\\.D\\.T\\.|RAG\\.|SIG\\.|MOD\\.|PAG\\.|DR\\.|TAV\\.|N\\.D\\.E\\.|DC\\.|MITT\\.|ING\\.|INT\\.|ON\\.|C\\.P\\.|AG\\.|L\\.|U\\.S\\.|S\\.M\\.A\\.R\\.T\\.|P\\.I\\.|TAB\\.|LTD\\.|LIV\\.|D\\.|U\\.S\\.A\\.|SEZ\\.|AVV\\.|S\\.A\\.R\\.|ALL\\.|P\\.|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, id: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, hi: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, fi: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, vi: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, iw: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, uk: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, el: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, ms: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, cs: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, ro: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, da: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, hu: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, ta: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, no: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, th: `(?:(?:\u0E04\\.\u0E28\\.|C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|\u0E04\\.\u0E28\\.|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|\u0E04\\.\u0E28\\.|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, ur: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, hr: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, bg: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, lt: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, la: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, mi: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, ml: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, cy: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, sk: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, te: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, fa: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, lv: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, bn: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, sr: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, az: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, sl: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, kn: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, et: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, mk: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, br: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, eu: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, is: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, hy: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, ne: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, mn: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, bs: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, kk: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, sq: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, sw: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, gl: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, mr: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, pa: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, si: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, km: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, sn: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, yo: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, so: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, af: `(?:(?:'n|\u2019n|C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|'n|\u2019n|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|'N|\u2019N|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, oc: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, ka: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, be: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, tg: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, sd: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, gu: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, am: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, yi: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, lo: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, uz: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, fo: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, ht: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, ps: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, tk: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, nn: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, mt: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, sa: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, lb: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, my: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, bo: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, tl: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, mg: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, as: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, tt: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, haw: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, ln: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, ha: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, ba: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, jw: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))`, su: `(?:(?:C#|F#|C\\+\\+|Yahoo!|Toys"R"Us|Dunkin'|Ke\\$ha|I\\/O|Sky\\+|A\\/C|A\\/V|\\.com|\\.org|\\.net|\\.co|\\.us|c#|f#|c\\+\\+|yahoo!|toys"r"us|dunkin'|ke\\$ha|i\\/o|sky\\+|a\\/c|a\\/v|\\.com|\\.org|\\.net|\\.co|\\.us|C#|F#|C\\+\\+|YAHOO!|TOYS"R"US|DUNKIN'|KE\\$HA|I\\/O|SKY\\+|A\\/C|A\\/V|\\.COM|\\.ORG|\\.NET|\\.CO|\\.US)(?!(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))|(?:(?:\\p{Emoji_Modifier_Base}\\p{Emoji_Modifier}|[\\p{Emoji_Presentation}]|\\p{Emoji}\\u{fe0f})|(?<=(?:[\\s\\p{Punctuation}]|^))(?<!:)(?:[0-9]|[0-1][0-9]|2[0-3])(?::(?:[0-9]|[0-5][0-9])){1,2}(?=(?:[\\s\\p{Punctuation}]|$|am|AM|pm|PM))(?!:)|(?:(?<!\\p{Decimal_Number})(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?=(?:[\\s\\p{Punctuation}]|$))|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:[%\\$\xA5\u20AC\xA3\u20A9\u20AD\u20BD\u20AB\u0E3F\xA2\u20AE\u060B\u20A6\u20B1\u20B4\u20AA])(?!(?:[\\p{Decimal_Number}])))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:\\.(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<=(?:[\\s\\p{Punctuation}]|^))(?:(?<=(?:[\\s\\p{Punctuation}]|^))(?:[\\-\\+])(?=[0-9]))?\\p{Decimal_Number}(?:(?:[\\p{Decimal_Number}]|(?<=[0-9])(?:[\\.,\u066C_])(?=[0-9])|(?<=[0-9]) (?=(?:[0-9]){3}(?:[\\s\\p{Punctuation}]|$))))*(?:(?:(?:[eE])(?:(?:[\\+\\-]))?[0-9]+|(?:(?:[\\p{Letter}_]))*(?!\\p{Decimal_Number})))?(?=(?:[\\s\\p{Punctuation}]|$))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+(?:(?:[\xB7\u2027])(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+)+|(?<!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))(?:\\p{Letter}(?:\\. \\p{Letter})+\\.?|\\p{Letter}(?:\\. ?\\p{Letter})+\\.?)(?!(?:(?:[\\p{Letter}\\p{Mark}])|[\\p{Decimal_Number}]))|(?:(?:(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}])|(?<=(?:[\\p{Letter}\\p{Mark}\\p{Decimal_Number}]))(?:['\u2019\u2018])(?=(?:[\\p{Letter}\\p{Mark}]))|[_]))+))` };
|
|
11
11
|
|
|
12
12
|
// src/engine/helpers.mjs
|
|
@@ -46,15 +46,6 @@
|
|
|
46
46
|
var containsInvalidCodepoint = (s) => s.includes("\uFFFD");
|
|
47
47
|
var clip = (x, a, b) => Math.max(a, Math.min(b, x));
|
|
48
48
|
var getIntegerRange = (a, b) => Array.from({ length: Math.max(0, b - a) }, (_, i) => a + i);
|
|
49
|
-
var concatUint8Arrays = (arrays) => {
|
|
50
|
-
const result = new Uint8Array(arrays.reduce((n, a) => n + a.length, 0));
|
|
51
|
-
let offset = 0;
|
|
52
|
-
for (const a of arrays) {
|
|
53
|
-
result.set(a, offset);
|
|
54
|
-
offset += a.length;
|
|
55
|
-
}
|
|
56
|
-
return result;
|
|
57
|
-
};
|
|
58
49
|
var yieldToEventLoop = async () => {
|
|
59
50
|
};
|
|
60
51
|
var getDeflateCompressionMetricsForString = async () => ({ ratio: 0 });
|
|
@@ -79,7 +70,7 @@
|
|
|
79
70
|
return { nonPunctuationWords: segments.filter((part) => part.isWordLike || /^[\p{Emoji_Presentation}$€¢£¥©®™%&#~@+±÷/\\^*×=≈¼½¾→≤≥∞]+$/u.test(part.segment)).map((part) => part.segment) };
|
|
80
71
|
}
|
|
81
72
|
|
|
82
|
-
//
|
|
73
|
+
// src/engine/vector-math.mjs
|
|
83
74
|
function meanOfVector(vector) {
|
|
84
75
|
if (vector.length == 0) {
|
|
85
76
|
return 0;
|
|
@@ -156,8 +147,53 @@
|
|
|
156
147
|
}
|
|
157
148
|
return results;
|
|
158
149
|
}
|
|
150
|
+
function medianOf5Filter(points) {
|
|
151
|
+
const pointCount = points.length;
|
|
152
|
+
if (pointCount < 5) {
|
|
153
|
+
return Float32Array.from(points);
|
|
154
|
+
}
|
|
155
|
+
const medians = new Float32Array(pointCount);
|
|
156
|
+
medians[0] = points[0];
|
|
157
|
+
medians[1] = points[1];
|
|
158
|
+
medians[pointCount - 2] = points[pointCount - 2];
|
|
159
|
+
medians[pointCount - 1] = points[pointCount - 1];
|
|
160
|
+
for (let i = 2; i < pointCount - 2; i++) {
|
|
161
|
+
medians[i] = medianOf5(points[i - 2], points[i - 1], points[i], points[i + 1], points[i + 2]);
|
|
162
|
+
}
|
|
163
|
+
return medians;
|
|
164
|
+
}
|
|
165
|
+
function medianOf5(a, b, c, d, e) {
|
|
166
|
+
if (b < a) {
|
|
167
|
+
[a, b] = [b, a];
|
|
168
|
+
}
|
|
169
|
+
if (d < c) {
|
|
170
|
+
[c, d] = [d, c];
|
|
171
|
+
}
|
|
172
|
+
const firstMedianOfABCD = Math.max(a, c);
|
|
173
|
+
const secondMedianOfABCD = Math.min(b, d);
|
|
174
|
+
return medianOf3(firstMedianOfABCD, secondMedianOfABCD, e);
|
|
175
|
+
}
|
|
176
|
+
function medianOf3(a, b, c) {
|
|
177
|
+
if (a <= b) {
|
|
178
|
+
if (b <= c) {
|
|
179
|
+
return b;
|
|
180
|
+
} else if (a <= c) {
|
|
181
|
+
return c;
|
|
182
|
+
} else {
|
|
183
|
+
return a;
|
|
184
|
+
}
|
|
185
|
+
} else {
|
|
186
|
+
if (a <= c) {
|
|
187
|
+
return a;
|
|
188
|
+
} else if (b <= c) {
|
|
189
|
+
return c;
|
|
190
|
+
} else {
|
|
191
|
+
return b;
|
|
192
|
+
}
|
|
193
|
+
}
|
|
194
|
+
}
|
|
159
195
|
|
|
160
|
-
//
|
|
196
|
+
// src/engine/dtw.mjs
|
|
161
197
|
function alignDTWWindowed(sequence1, sequence2, costFunction, windowMaxLength, centerIndexes) {
|
|
162
198
|
windowMaxLength = Math.max(windowMaxLength, 2);
|
|
163
199
|
if (sequence1.length == 0 || sequence2.length == 0) {
|
|
@@ -310,54 +346,7 @@
|
|
|
310
346
|
}
|
|
311
347
|
}
|
|
312
348
|
|
|
313
|
-
//
|
|
314
|
-
function medianOf5Filter(points) {
|
|
315
|
-
const pointCount = points.length;
|
|
316
|
-
if (pointCount < 5) {
|
|
317
|
-
return Float32Array.from(points);
|
|
318
|
-
}
|
|
319
|
-
const medians = new Float32Array(pointCount);
|
|
320
|
-
medians[0] = points[0];
|
|
321
|
-
medians[1] = points[1];
|
|
322
|
-
medians[pointCount - 2] = points[pointCount - 2];
|
|
323
|
-
medians[pointCount - 1] = points[pointCount - 1];
|
|
324
|
-
for (let i = 2; i < pointCount - 2; i++) {
|
|
325
|
-
medians[i] = medianOf5(points[i - 2], points[i - 1], points[i], points[i + 1], points[i + 2]);
|
|
326
|
-
}
|
|
327
|
-
return medians;
|
|
328
|
-
}
|
|
329
|
-
function medianOf5(a, b, c, d, e) {
|
|
330
|
-
if (b < a) {
|
|
331
|
-
[a, b] = [b, a];
|
|
332
|
-
}
|
|
333
|
-
if (d < c) {
|
|
334
|
-
[c, d] = [d, c];
|
|
335
|
-
}
|
|
336
|
-
const firstMedianOfABCD = Math.max(a, c);
|
|
337
|
-
const secondMedianOfABCD = Math.min(b, d);
|
|
338
|
-
return medianOf3(firstMedianOfABCD, secondMedianOfABCD, e);
|
|
339
|
-
}
|
|
340
|
-
function medianOf3(a, b, c) {
|
|
341
|
-
if (a <= b) {
|
|
342
|
-
if (b <= c) {
|
|
343
|
-
return b;
|
|
344
|
-
} else if (a <= c) {
|
|
345
|
-
return c;
|
|
346
|
-
} else {
|
|
347
|
-
return a;
|
|
348
|
-
}
|
|
349
|
-
} else {
|
|
350
|
-
if (a <= c) {
|
|
351
|
-
return a;
|
|
352
|
-
} else if (b <= c) {
|
|
353
|
-
return c;
|
|
354
|
-
} else {
|
|
355
|
-
return b;
|
|
356
|
-
}
|
|
357
|
-
}
|
|
358
|
-
}
|
|
359
|
-
|
|
360
|
-
// vendor/echogarden/Whisper.mjs
|
|
349
|
+
// src/engine/whisper.mjs
|
|
361
350
|
var Whisper = class {
|
|
362
351
|
constructor() {
|
|
363
352
|
this.modelId = "tiny";
|
|
@@ -915,7 +904,7 @@ ${chalk.blueBright("Median token decode time")}: ${medianTokenDecodingTime.toFix
|
|
|
915
904
|
attentionHeads.push(head);
|
|
916
905
|
}
|
|
917
906
|
const applySoftmax = true;
|
|
918
|
-
const
|
|
907
|
+
const normalize3 = true;
|
|
919
908
|
const applyMedianFilter = true;
|
|
920
909
|
const anchorTimestampTokens = false;
|
|
921
910
|
const softmaxTemperature = 1;
|
|
@@ -926,7 +915,7 @@ ${chalk.blueBright("Median token decode time")}: ${medianTokenDecodingTime.toFix
|
|
|
926
915
|
}
|
|
927
916
|
}
|
|
928
917
|
}
|
|
929
|
-
if (
|
|
918
|
+
if (normalize3) {
|
|
930
919
|
for (const head of attentionHeads) {
|
|
931
920
|
let sumOfAllWeightsForHead = 0;
|
|
932
921
|
let sumOfAllSquaredWeightsForHead = 0;
|
|
@@ -1012,11 +1001,6 @@ ${chalk.blueBright("Median token decode time")}: ${medianTokenDecodingTime.toFix
|
|
|
1012
1001
|
tokenToBytes(token) {
|
|
1013
1002
|
return this.tiktoken.decode_single_token_bytes(token);
|
|
1014
1003
|
}
|
|
1015
|
-
tokensToBytes(tokens) {
|
|
1016
|
-
const tokensBytes = tokens.map((token) => this.tokenToBytes(token));
|
|
1017
|
-
const concatenatedTokensBytes = concatUint8Arrays(tokensBytes);
|
|
1018
|
-
return concatenatedTokensBytes;
|
|
1019
|
-
}
|
|
1020
1004
|
tokensToText(tokens, includeMetadataTokens = false) {
|
|
1021
1005
|
tokens.forEach((token) => this.assertIsValidToken(token));
|
|
1022
1006
|
if (includeMetadataTokens === false) {
|
|
@@ -1043,9 +1027,6 @@ ${chalk.blueBright("Median token decode time")}: ${medianTokenDecodingTime.toFix
|
|
|
1043
1027
|
isMetadataToken(token) {
|
|
1044
1028
|
return token >= this.specialTokens.endOfTextToken;
|
|
1045
1029
|
}
|
|
1046
|
-
isLanguageToken(token) {
|
|
1047
|
-
return token >= this.specialTokens.languageTokensStart && token < this.specialTokens.languageTokensEnd;
|
|
1048
|
-
}
|
|
1049
1030
|
isTimestampToken(token) {
|
|
1050
1031
|
return token >= this.specialTokens.timestampTokensStart;
|
|
1051
1032
|
}
|
|
@@ -1078,15 +1059,6 @@ ${chalk.blueBright("Median token decode time")}: ${medianTokenDecodingTime.toFix
|
|
|
1078
1059
|
}
|
|
1079
1060
|
return this.secondsToFrame(endSeconds - startSeconds);
|
|
1080
1061
|
}
|
|
1081
|
-
languageTokenToLanguageIndex(languageToken) {
|
|
1082
|
-
if (!this.isLanguageToken(languageToken)) {
|
|
1083
|
-
throw new Error(`Invalid language token: ${languageToken}`);
|
|
1084
|
-
}
|
|
1085
|
-
let languageIndex = languageToken - this.specialTokens.languageTokensStart;
|
|
1086
|
-
if (this.isEnglishOnlyModel) {
|
|
1087
|
-
languageIndex += 1;
|
|
1088
|
-
}
|
|
1089
|
-
}
|
|
1090
1062
|
get isEnglishOnlyModel() {
|
|
1091
1063
|
return this.isMultiligualModel === false;
|
|
1092
1064
|
}
|
|
@@ -1103,12 +1075,6 @@ ${chalk.blueBright("Median token decode time")}: ${medianTokenDecodingTime.toFix
|
|
|
1103
1075
|
return "medium";
|
|
1104
1076
|
}
|
|
1105
1077
|
}
|
|
1106
|
-
getSuppressedTokens() {
|
|
1107
|
-
return [
|
|
1108
|
-
...this.getSuppressedTextTokens(),
|
|
1109
|
-
...this.getSuppressedMetadataTokens()
|
|
1110
|
-
];
|
|
1111
|
-
}
|
|
1112
1078
|
getSuppressedTextTokens() {
|
|
1113
1079
|
const allowedPunctuationMarks = this.getAllowedPunctuationMarks();
|
|
1114
1080
|
const nonWordTokensData = this.getWordTokenData().nonWordTokenData;
|
|
@@ -1157,16 +1123,6 @@ ${chalk.blueBright("Median token decode time")}: ${medianTokenDecodingTime.toFix
|
|
|
1157
1123
|
}
|
|
1158
1124
|
return { wordTokenData, nonWordTokenData };
|
|
1159
1125
|
}
|
|
1160
|
-
getTokensData(tokens) {
|
|
1161
|
-
const tokensData = [];
|
|
1162
|
-
for (const token of tokens) {
|
|
1163
|
-
tokensData.push({
|
|
1164
|
-
id: token,
|
|
1165
|
-
text: this.tokenToText(token, true)
|
|
1166
|
-
});
|
|
1167
|
-
}
|
|
1168
|
-
return tokensData;
|
|
1169
|
-
}
|
|
1170
1126
|
};
|
|
1171
1127
|
var languageIdLookup = {
|
|
1172
1128
|
"en": 0,
|
|
@@ -1283,19 +1239,6 @@ ${chalk.blueBright("Median token decode time")}: ${medianTokenDecodingTime.toFix
|
|
|
1283
1239
|
timestampTokensStart: 50364,
|
|
1284
1240
|
timestampTokensEnd: 50364 + 1501
|
|
1285
1241
|
};
|
|
1286
|
-
var englishOnlySpecialTokens = {
|
|
1287
|
-
endOfTextToken: 50256,
|
|
1288
|
-
startOfTextToken: 50257,
|
|
1289
|
-
languageTokensStart: 50258,
|
|
1290
|
-
languageTokensEnd: 50358,
|
|
1291
|
-
translateTaskToken: 50358,
|
|
1292
|
-
transcribeTaskToken: 50359,
|
|
1293
|
-
startOfPromptToken: 50360,
|
|
1294
|
-
nonSpeechToken: 50361,
|
|
1295
|
-
noTimestampsToken: 50362,
|
|
1296
|
-
timestampTokensStart: 50363,
|
|
1297
|
-
timestampTokensEnd: 50363 + 1501
|
|
1298
|
-
};
|
|
1299
1242
|
var largestMaximumTokensPerPart = 220;
|
|
1300
1243
|
var defaultWhisperOptions = {
|
|
1301
1244
|
model: void 0,
|
|
@@ -1823,10 +1766,19 @@ ${chalk.blueBright("Median token decode time")}: ${medianTokenDecodingTime.toFix
|
|
|
1823
1766
|
},
|
|
1824
1767
|
getLogits: () => {
|
|
1825
1768
|
const pointer = module2._poc_logits();
|
|
1826
|
-
if (!pointer) throw Error("Logits unavailable
|
|
1769
|
+
if (!pointer) throw Error("Logits unavailable");
|
|
1827
1770
|
return new Float32Array(module2.HEAPU8.buffer, pointer, module2._poc_vocab()).slice();
|
|
1828
1771
|
},
|
|
1829
|
-
getCrossAttentionQKs: async () => latest
|
|
1772
|
+
getCrossAttentionQKs: async () => latest,
|
|
1773
|
+
getTokenLogOdds: (row, total, target, eot) => {
|
|
1774
|
+
const pointer = module2._poc_logits(), vocab = module2._poc_vocab();
|
|
1775
|
+
if (!pointer || row < 0 || row >= total || target < 0 || target >= vocab || eot < 0 || eot >= vocab) throw Error("Invalid token evidence request");
|
|
1776
|
+
const base = pointer - (total - 1 - row) * vocab * 4;
|
|
1777
|
+
const view = new Float32Array(module2.HEAPU8.buffer, base, vocab);
|
|
1778
|
+
const score = view[target] - view[eot];
|
|
1779
|
+
if (!Number.isFinite(score)) throw Error("Missing token evidence logits");
|
|
1780
|
+
return score;
|
|
1781
|
+
}
|
|
1830
1782
|
};
|
|
1831
1783
|
if (profile) {
|
|
1832
1784
|
const decode = context.decodeTokens;
|
|
@@ -1843,8 +1795,8 @@ ${chalk.blueBright("Median token decode time")}: ${medianTokenDecodingTime.toFix
|
|
|
1843
1795
|
}
|
|
1844
1796
|
return context;
|
|
1845
1797
|
}
|
|
1846
|
-
function subset(module2, tokens, eot
|
|
1847
|
-
const ids =
|
|
1798
|
+
function subset(module2, tokens, eot) {
|
|
1799
|
+
const ids = vocabularySubset(tokens, eot, module2._poc_vocab()), ptr = module2._malloc(ids.byteLength);
|
|
1848
1800
|
try {
|
|
1849
1801
|
if (!ptr) throw Error("Vocabulary allocation failed");
|
|
1850
1802
|
module2.HEAPU8.set(new Uint8Array(ids.buffer), ptr);
|
|
@@ -1890,7 +1842,9 @@ ${chalk.blueBright("Median token decode time")}: ${medianTokenDecodingTime.toFix
|
|
|
1890
1842
|
}
|
|
1891
1843
|
|
|
1892
1844
|
// src/core/attention-trim.mjs
|
|
1893
|
-
function trimAttentionPrefix(decoded, path, initialCount, coreFrames, timestampStart, endOfText) {
|
|
1845
|
+
function trimAttentionPrefix(decoded, path, initialCount, coreFrames, timestampStart, endOfText, bounds) {
|
|
1846
|
+
const crossing = bounds?.find((b) => b.start < coreFrames && (b.allocationEnd ?? b.end) > coreFrames);
|
|
1847
|
+
if (crossing) coreFrames = crossing.start > 0 ? crossing.start : crossing.allocationEnd ?? crossing.end;
|
|
1894
1848
|
const tokens = decoded.decodedTokens.slice(initialCount);
|
|
1895
1849
|
const starts = /* @__PURE__ */ new Map();
|
|
1896
1850
|
for (const point of path) if (!starts.has(point.source)) starts.set(point.source, point.dest);
|
|
@@ -1936,8 +1890,8 @@ ${chalk.blueBright("Median token decode time")}: ${medianTokenDecodingTime.toFix
|
|
|
1936
1890
|
const result = Number.isInteger(scale) ? m._poc_set_time_scale(scale) : m._poc_set_time_scale_fraction?.(Math.round(scale * 1e3), 1e3);
|
|
1937
1891
|
if (result !== 0) throw Error("Could not restore native time scale");
|
|
1938
1892
|
});
|
|
1939
|
-
set("_poc_set_alignment_only", 0, engine2.config.alignmentOnly ? 1 : 0);
|
|
1940
1893
|
set("_poc_set_audio_context", 1500, engine2.config.audioContext ?? 1500);
|
|
1894
|
+
set("_poc_set_encoder_blocks", 1, engine2.config.encoderBlocks ?? 1);
|
|
1941
1895
|
set("_poc_set_attention_quant", 0, engine2.config.attentionQuant === true ? 2 : engine2.config.attentionQuant || 0);
|
|
1942
1896
|
set("_poc_set_vector_activations", 0, engine2.config.vectorActivations ? 1 : 0);
|
|
1943
1897
|
if (m._poc_set_vocab_subset(0, 0)) throw Error("Could not enable unrestricted vocabulary");
|
|
@@ -1973,21 +1927,22 @@ ${chalk.blueBright("Median token decode time")}: ${medianTokenDecodingTime.toFix
|
|
|
1973
1927
|
}
|
|
1974
1928
|
|
|
1975
1929
|
// src/engine/guided-decode.mjs
|
|
1976
|
-
async function decodeAllKnownTokens(context, initial, remaining, eot, limit, batchSize) {
|
|
1977
|
-
if (remaining.length <= limit) return decodeKnownTokens(context, initial, remaining, eot, limit, batchSize);
|
|
1930
|
+
async function decodeAllKnownTokens(context, initial, remaining, eot, limit, batchSize, evidence = false) {
|
|
1931
|
+
if (remaining.length <= limit) return decodeKnownTokens(context, initial, remaining, eot, limit, batchSize, evidence);
|
|
1978
1932
|
let result;
|
|
1979
1933
|
for (let offset = 0; offset < remaining.length; offset += limit) {
|
|
1980
|
-
const part = await decodeKnownTokens(context, initial, remaining.slice(offset, offset + limit), eot, limit, batchSize);
|
|
1934
|
+
const part = await decodeKnownTokens(context, initial, remaining.slice(offset, offset + limit), eot, limit, batchSize, evidence);
|
|
1981
1935
|
if (!result) result = part;
|
|
1982
|
-
else for (const field of ["decodedTokens", "decodedTokensConfidence", "decodedTokensCrossAttentionQKs"]) result[field].push(...part[field].slice(initial.length));
|
|
1936
|
+
else for (const field of ["decodedTokens", "decodedTokensConfidence", "decodedTokensCrossAttentionQKs", "decodedTokenLogOdds"]) result[field].push(...part[field].slice(initial.length));
|
|
1983
1937
|
}
|
|
1984
1938
|
return result;
|
|
1985
1939
|
}
|
|
1986
|
-
async function decodeKnownTokens(context, initial, remaining, eot, limit, batchSize) {
|
|
1940
|
+
async function decodeKnownTokens(context, initial, remaining, eot, limit, batchSize, evidence = false) {
|
|
1987
1941
|
const predicted = remaining.slice(0, limit);
|
|
1988
1942
|
if (predicted.length < limit) predicted.push(eot);
|
|
1989
1943
|
const inputs = [...initial, ...predicted.slice(0, -1)];
|
|
1990
1944
|
const attention = Array(initial.length).fill(void 0);
|
|
1945
|
+
const logOdds = Array(initial.length).fill(void 0);
|
|
1991
1946
|
for (let position = 0; position < inputs.length; position += batchSize) {
|
|
1992
1947
|
const batch = inputs.slice(position, position + batchSize);
|
|
1993
1948
|
await context.decodeTokens(batch, position === 0 ? 0 : position + 1);
|
|
@@ -1996,13 +1951,15 @@ ${chalk.blueBright("Median token decode time")}: ${medianTokenDecodingTime.toFix
|
|
|
1996
1951
|
if (count !== batch.length) throw Error("Guided attention batch mismatch");
|
|
1997
1952
|
for (let row = 0; row < count; row++) {
|
|
1998
1953
|
if (position + row < initial.length - 1) continue;
|
|
1954
|
+
const target = predicted[position + row - initial.length + 1];
|
|
1955
|
+
logOdds.push(evidence ? context.getTokenLogOdds(row, count, target, eot) : void 0);
|
|
1999
1956
|
const data = new Float32Array(heads * frames);
|
|
2000
1957
|
for (let head = 0; head < heads; head++) data.set(qk.data.subarray((head * count + row) * frames, (head * count + row + 1) * frames), head * frames);
|
|
2001
1958
|
attention.push({ dimensions: [BigInt(heads), 1n, BigInt(frames)], data });
|
|
2002
1959
|
}
|
|
2003
1960
|
}
|
|
2004
1961
|
const decodedTokens = [...initial, ...predicted];
|
|
2005
|
-
return { decodedTokens, decodedTokensConfidence: Array(decodedTokens.length).fill(1), decodedTokensCrossAttentionQKs: attention, decodedTokensDecodingTime: [], decodedTokensInferenceTime: [], decodedTokensOverheadTime: [] };
|
|
1962
|
+
return { decodedTokens, decodedTokensConfidence: Array(decodedTokens.length).fill(1), decodedTokensCrossAttentionQKs: attention, decodedTokenLogOdds: logOdds, decodedTokensDecodingTime: [], decodedTokensInferenceTime: [], decodedTokensOverheadTime: [] };
|
|
2006
1963
|
}
|
|
2007
1964
|
|
|
2008
1965
|
// src/engine/attention-resolution.mjs
|
|
@@ -2024,6 +1981,166 @@ ${chalk.blueBright("Median token decode time")}: ${medianTokenDecodingTime.toFix
|
|
|
2024
1981
|
return (await findPath(coarse, tokens, 0, coarseFrames)).map((p) => ({ source: p.source, dest: Math.min(frames - 1, p.dest * stride) }));
|
|
2025
1982
|
}
|
|
2026
1983
|
|
|
1984
|
+
// src/engine/posterior-boundaries.mjs
|
|
1985
|
+
var add = (a, b) => a === -Infinity ? b : b === -Infinity ? a : Math.max(a, b) + Math.log1p(Math.exp(-Math.abs(a - b)));
|
|
1986
|
+
function posteriorBoundaries(scores, { blankAfter } = {}) {
|
|
1987
|
+
const n = scores.length, T = scores[0]?.length ?? 0, S = 2 * n + 1;
|
|
1988
|
+
if (!n || T < n || scores.some((r) => r.length !== T || r.some((x) => !Number.isFinite(x)))) return;
|
|
1989
|
+
const emission = (s, t) => s % 2 ? scores[(s - 1) / 2][t] : s > 0 && blankAfter?.[s / 2 - 1] === false ? -Infinity : 0;
|
|
1990
|
+
const forward = new Float64Array((T + 1) * S).fill(-Infinity), backward = new Float64Array((T + 1) * S).fill(-Infinity);
|
|
1991
|
+
forward[0] = 0;
|
|
1992
|
+
for (let t = 0; t < T; t++) for (let s = Math.max(0, S - 2 - 2 * (T - t - 1)); s <= Math.min(S - 1, 2 * t + 1); s++) {
|
|
1993
|
+
let v = forward[t * S + s];
|
|
1994
|
+
if (s > 0) v = add(v, forward[t * S + s - 1]);
|
|
1995
|
+
if (s > 1 && s % 2) v = add(v, forward[t * S + s - 2]);
|
|
1996
|
+
forward[(t + 1) * S + s] = v + emission(s, t);
|
|
1997
|
+
}
|
|
1998
|
+
backward[T * S + S - 1] = backward[T * S + S - 2] = 0;
|
|
1999
|
+
for (let t = T - 1; t >= 0; t--) for (let s = Math.max(0, S - 2 - 2 * (T - t)); s <= Math.min(S - 1, Math.max(0, 2 * t - 1)); s++) {
|
|
2000
|
+
let v = emission(s, t) + backward[(t + 1) * S + s];
|
|
2001
|
+
if (s + 1 < S) v = add(v, emission(s + 1, t) + backward[(t + 1) * S + s + 1]);
|
|
2002
|
+
if (s + 2 < S && s % 2) v = add(v, emission(s + 2, t) + backward[(t + 1) * S + s + 2]);
|
|
2003
|
+
backward[t * S + s] = v;
|
|
2004
|
+
}
|
|
2005
|
+
const z = add(forward[T * S + S - 1], forward[T * S + S - 2]);
|
|
2006
|
+
if (!Number.isFinite(z)) return;
|
|
2007
|
+
return scores.map((_, i) => {
|
|
2008
|
+
const s = 2 * i + 1;
|
|
2009
|
+
let start = 0, end = 0;
|
|
2010
|
+
for (let t = 0; t < T; t++) {
|
|
2011
|
+
let incoming = forward[t * S + s - 1];
|
|
2012
|
+
if (s > 1) incoming = add(incoming, forward[t * S + s - 2]);
|
|
2013
|
+
start += t * Math.exp(incoming + emission(s, t) + backward[(t + 1) * S + s] - z);
|
|
2014
|
+
let outgoing = emission(s + 1, t) + backward[(t + 1) * S + s + 1];
|
|
2015
|
+
if (s + 2 < S) outgoing = add(outgoing, emission(s + 2, t) + backward[(t + 1) * S + s + 2]);
|
|
2016
|
+
end += t * Math.exp(forward[t * S + s] + outgoing - z);
|
|
2017
|
+
}
|
|
2018
|
+
if (i === n - 1) end += T * Math.exp(forward[T * S + s] - z);
|
|
2019
|
+
return { start, end };
|
|
2020
|
+
});
|
|
2021
|
+
}
|
|
2022
|
+
|
|
2023
|
+
// src/engine/gap-alignment.mjs
|
|
2024
|
+
function gapAlignment(scores, { openEnd = false, blankAfter, entryScores } = {}) {
|
|
2025
|
+
const tokens = scores.length, frames = scores[0]?.length ?? 0, states = 2 * tokens + 1;
|
|
2026
|
+
if (!tokens || !frames || !openEnd && tokens > frames || scores.some((row) => row.length !== frames || row.some((x) => !Number.isFinite(x)))) return;
|
|
2027
|
+
if (entryScores && (entryScores.length !== tokens || entryScores.some((x) => !Number.isFinite(x)))) throw Error("Invalid token entry scores");
|
|
2028
|
+
if (!scores.some((row) => row.some((x) => x > 0))) return openEnd ? [] : void 0;
|
|
2029
|
+
let previous = new Float64Array(states).fill(-Infinity);
|
|
2030
|
+
previous[0] = 0;
|
|
2031
|
+
const trace = new Uint8Array(frames * states);
|
|
2032
|
+
for (let t = 0; t < frames; t++) {
|
|
2033
|
+
const next = new Float64Array(states).fill(-Infinity);
|
|
2034
|
+
for (let state2 = 0; state2 < states; state2++) {
|
|
2035
|
+
if (state2 > 0 && state2 % 2 === 0 && blankAfter?.[state2 / 2 - 1] === false) continue;
|
|
2036
|
+
let best = previous[state2], step = 0;
|
|
2037
|
+
const entry = state2 % 2 ? entryScores?.[(state2 - 1) / 2] ?? 0 : 0;
|
|
2038
|
+
if (state2 > 0 && previous[state2 - 1] + entry > best) {
|
|
2039
|
+
best = previous[state2 - 1] + entry;
|
|
2040
|
+
step = 1;
|
|
2041
|
+
}
|
|
2042
|
+
if (state2 % 2 === 1 && state2 > 1 && previous[state2 - 2] + entry > best) {
|
|
2043
|
+
best = previous[state2 - 2] + entry;
|
|
2044
|
+
step = 2;
|
|
2045
|
+
}
|
|
2046
|
+
next[state2] = best + (state2 % 2 ? scores[(state2 - 1) / 2][t] : 0);
|
|
2047
|
+
trace[t * states + state2] = step;
|
|
2048
|
+
}
|
|
2049
|
+
previous = next;
|
|
2050
|
+
}
|
|
2051
|
+
let state = previous[states - 1] >= previous[states - 2] ? states - 1 : states - 2;
|
|
2052
|
+
if (openEnd) {
|
|
2053
|
+
state = 0;
|
|
2054
|
+
for (let i = 1; i < states; i++) {
|
|
2055
|
+
if (previous[i] > previous[state] || previous[i] === previous[state] && i % 2 === 0 && Math.ceil(i / 2) === Math.ceil(state / 2)) state = i;
|
|
2056
|
+
}
|
|
2057
|
+
}
|
|
2058
|
+
if (!Number.isFinite(previous[state])) return;
|
|
2059
|
+
const bounds = Array.from({ length: openEnd ? Math.ceil(state / 2) : tokens }, () => ({ start: frames, end: 0 }));
|
|
2060
|
+
for (let t = frames - 1; t >= 0; t--) {
|
|
2061
|
+
if (state % 2) {
|
|
2062
|
+
const b = bounds[(state - 1) / 2];
|
|
2063
|
+
b.start = t;
|
|
2064
|
+
b.end = Math.max(b.end, t + 1);
|
|
2065
|
+
}
|
|
2066
|
+
state -= trace[t * states + state];
|
|
2067
|
+
}
|
|
2068
|
+
return bounds;
|
|
2069
|
+
}
|
|
2070
|
+
function attentionGapBounds(qks, frames, stride = 2, options = {}) {
|
|
2071
|
+
const count = qks.length, width = Math.ceil(frames / stride);
|
|
2072
|
+
if (!count || !options.openEnd && count > width || qks.some((q) => !q)) return;
|
|
2073
|
+
const probabilities = qks.map((q) => {
|
|
2074
|
+
const [heads, , sourceWidth] = q.dimensions.map(Number), weights = new Float64Array(width);
|
|
2075
|
+
for (let h = 0; h < heads; h++) {
|
|
2076
|
+
const row = new Float64Array(width);
|
|
2077
|
+
let maximum = -Infinity;
|
|
2078
|
+
for (let t = 0; t < width; t++) {
|
|
2079
|
+
let sum2 = 0, n = 0;
|
|
2080
|
+
for (let j = t * stride; j < Math.min(frames, (t + 1) * stride); j++) {
|
|
2081
|
+
sum2 += q.data[h * sourceWidth + j];
|
|
2082
|
+
n++;
|
|
2083
|
+
}
|
|
2084
|
+
row[t] = sum2 / n;
|
|
2085
|
+
maximum = Math.max(maximum, row[t]);
|
|
2086
|
+
}
|
|
2087
|
+
let sum = 0;
|
|
2088
|
+
for (let t = 0; t < width; t++) {
|
|
2089
|
+
row[t] = Math.exp(row[t] - maximum);
|
|
2090
|
+
sum += row[t];
|
|
2091
|
+
}
|
|
2092
|
+
for (let t = 0; t < width; t++) {
|
|
2093
|
+
row[t] /= sum;
|
|
2094
|
+
weights[t] += row[t] / heads;
|
|
2095
|
+
}
|
|
2096
|
+
}
|
|
2097
|
+
return weights;
|
|
2098
|
+
});
|
|
2099
|
+
const frameMean = new Float64Array(width);
|
|
2100
|
+
for (const row of probabilities) for (let t = 0; t < width; t++) frameMean[t] += row[t] / count;
|
|
2101
|
+
const scores = probabilities.map((row) => Float32Array.from(row, (value, t) => {
|
|
2102
|
+
const score = Math.log(Math.max(1e-12, value) / Math.max(1 / width, count === 1 ? 0 : frameMean[t]));
|
|
2103
|
+
return Math.abs(score) < 1e-12 ? 0 : score;
|
|
2104
|
+
}));
|
|
2105
|
+
let bounds = gapAlignment(scores, options);
|
|
2106
|
+
const allocation = bounds;
|
|
2107
|
+
if (options.posterior && bounds?.length) {
|
|
2108
|
+
const expected = posteriorBoundaries(scores.slice(0, bounds.length), options)?.map((b) => ({ start: Math.round(b.start), end: Math.round(b.end) }));
|
|
2109
|
+
if (expected?.every((b, i) => b.start >= 0 && b.end > b.start && b.end <= width && (!i || b.start >= expected[i - 1].end))) {
|
|
2110
|
+
bounds = options.posterior === "ends" ? bounds.map((b, i) => ({ start: b.start, end: Math.max(b.start + 1, Math.min(expected[i].end, bounds[i + 1]?.start ?? width)) })) : expected;
|
|
2111
|
+
}
|
|
2112
|
+
}
|
|
2113
|
+
return bounds?.map((b, i) => ({ start: b.start * stride, end: Math.min(frames, b.end * stride), ...options.posterior === "ends" ? { allocationEnd: Math.min(frames, allocation[i].end * stride) } : {} }));
|
|
2114
|
+
}
|
|
2115
|
+
|
|
2116
|
+
// src/core/score.mjs
|
|
2117
|
+
var normalize = (text) => text.normalize("NFKC").toLowerCase().replace(/[^\p{L}\p{N}]/gu, "");
|
|
2118
|
+
|
|
2119
|
+
// src/engine/lyric-pauses.mjs
|
|
2120
|
+
function lyricPauseMask(tokens, decode, lyrics) {
|
|
2121
|
+
const lines = lyrics.split(/\r?\n/).map(normalize).filter(Boolean);
|
|
2122
|
+
const target = lines.join(""), ends = /* @__PURE__ */ new Set();
|
|
2123
|
+
let length = 0;
|
|
2124
|
+
for (const line of lines) {
|
|
2125
|
+
length += line.length;
|
|
2126
|
+
ends.add(length);
|
|
2127
|
+
}
|
|
2128
|
+
const mask = [];
|
|
2129
|
+
let pending = [], text = "";
|
|
2130
|
+
for (const token of tokens) {
|
|
2131
|
+
pending.push(token);
|
|
2132
|
+
const decoded = decode(pending);
|
|
2133
|
+
if (decoded.includes("\uFFFD")) {
|
|
2134
|
+
mask.push(false);
|
|
2135
|
+
continue;
|
|
2136
|
+
}
|
|
2137
|
+
text += normalize(decoded);
|
|
2138
|
+
pending = [];
|
|
2139
|
+
mask.push(ends.has(text.length));
|
|
2140
|
+
}
|
|
2141
|
+
return pending.length || text !== target ? void 0 : mask;
|
|
2142
|
+
}
|
|
2143
|
+
|
|
2027
2144
|
// src/engine/engine.mjs
|
|
2028
2145
|
function validatePcm(audio) {
|
|
2029
2146
|
if (!(audio instanceof Float32Array) || !audio.length) throw Error("PCM must be a nonempty Float32Array");
|
|
@@ -2031,7 +2148,7 @@ ${chalk.blueBright("Median token decode time")}: ${medianTokenDecodingTime.toFix
|
|
|
2031
2148
|
}
|
|
2032
2149
|
var BrowserEngine = class {
|
|
2033
2150
|
constructor(config = {}) {
|
|
2034
|
-
this.config = { timeScale: 3.25, batchSize: 440, audioContext: 960,
|
|
2151
|
+
this.config = { timeScale: 3.25, batchSize: 440, audioContext: 960, prepack: "group", attentionQuant: 2, vectorActivations: true, attentionStride: 4, attentionPositionPenalty: 10, trimFinalContext: true, profile: false, ...config };
|
|
2035
2152
|
if (!Number.isFinite(this.config.timeScale) || this.config.timeScale < 1 || this.config.timeScale > 4 || !Number.isInteger(this.config.timeScale * 4) || (!Number.isInteger(this.config.audioContext) || this.config.audioContext < 32 || this.config.audioContext > 1500) || !Number.isInteger(this.config.batchSize) || this.config.batchSize < 1 || this.config.batchSize > 440) throw Error("Invalid engine configuration");
|
|
2036
2153
|
}
|
|
2037
2154
|
async initialize(options, progress) {
|
|
@@ -2052,8 +2169,7 @@ ${chalk.blueBright("Median token decode time")}: ${medianTokenDecodingTime.toFix
|
|
|
2052
2169
|
const script = new URL("parity.js", this.base).href;
|
|
2053
2170
|
importScripts(script);
|
|
2054
2171
|
this.module = await globalThis.createWhisperParity({ noInitialRun: true, mainScriptUrlOrBlob: script, locateFile: (name) => new URL(name, this.base).href, print: () => {
|
|
2055
|
-
}, printErr: (
|
|
2056
|
-
if (this.config.debugNative) console.error(message);
|
|
2172
|
+
}, printErr: () => {
|
|
2057
2173
|
} });
|
|
2058
2174
|
const m = this.module;
|
|
2059
2175
|
m.FS.writeFile("/model.bin", new Uint8Array(model));
|
|
@@ -2072,9 +2188,9 @@ ${chalk.blueBright("Median token decode time")}: ${medianTokenDecodingTime.toFix
|
|
|
2072
2188
|
if (!m._poc_set_time_scale || m._poc_set_time_scale(this.config.timeScale)) throw Error("Time-scale native build required");
|
|
2073
2189
|
} else if (!m._poc_set_time_scale_fraction || m._poc_set_time_scale_fraction(Math.round(this.config.timeScale * 1e3), 1e3)) throw Error("Fractional time-scale build required");
|
|
2074
2190
|
if (m._poc_set_audio_context(this.config.audioContext)) throw Error("Audio context rejected");
|
|
2191
|
+
if (this.config.encoderBlocks && (!m._poc_set_encoder_blocks || m._poc_set_encoder_blocks(this.config.encoderBlocks))) throw Error("Encoder attention blocks rejected");
|
|
2075
2192
|
if (this.config.attentionQuant && (!m._poc_set_attention_quant || m._poc_set_attention_quant(this.config.attentionQuant === true ? 2 : this.config.attentionQuant))) throw Error("Attention quantization rejected");
|
|
2076
2193
|
if (this.config.vectorActivations && (!m._poc_set_vector_activations || m._poc_set_vector_activations(1))) throw Error("Vector activations rejected");
|
|
2077
|
-
if (this.config.alignmentOnly && (!this.config.guided || !m._poc_set_alignment_only || m._poc_set_alignment_only(1))) throw Error("Alignment-only mode rejected");
|
|
2078
2194
|
this.whisper = new Whisper();
|
|
2079
2195
|
this.whisper.tiktoken = await createTokenizer(this.base, this.whisper.specialTokens);
|
|
2080
2196
|
this.whisper.audioWindowSeconds = this.config.audioContext * 0.02;
|
|
@@ -2091,8 +2207,20 @@ ${chalk.blueBright("Median token decode time")}: ${medianTokenDecodingTime.toFix
|
|
|
2091
2207
|
const profile = this.config.profile ? { melMs: 0, encoderMs: 0, decodeMs: 0, pathMs: 0, windows: 0, batches: 0, tokens: 0 } : void 0;
|
|
2092
2208
|
const alignStart = performance.now(), virtual = virtualAudio(audio, this.config.timeScale), originalContext = nativeContext(m, audio, virtual, this.progress, this.config.timeScale, profile, this.config.trimFinalContext ? this.config.audioContext : void 0);
|
|
2093
2209
|
w.context = originalContext;
|
|
2094
|
-
let lyricTokens, consumed = 0, workerPath;
|
|
2095
|
-
const
|
|
2210
|
+
let lyricTokens, consumed = 0, workerPath, prefixBounds, pauseMask;
|
|
2211
|
+
const rateHistory = [];
|
|
2212
|
+
w.getTokenTimelineFromAlignmentPath = async (...args) => {
|
|
2213
|
+
const timeline = await Whisper.prototype.getTokenTimelineFromAlignmentPath.apply(w, args);
|
|
2214
|
+
if (prefixBounds) {
|
|
2215
|
+
for (let i = 0; i < prefixBounds.length && i < timeline.length; i++) {
|
|
2216
|
+
timeline[i].startTime = args[2] + prefixBounds[i].start * 0.02;
|
|
2217
|
+
timeline[i].endTime = Math.max(timeline[i].startTime, Math.min(args[3], args[2] + prefixBounds[i].end * 0.02));
|
|
2218
|
+
}
|
|
2219
|
+
prefixBounds = void 0;
|
|
2220
|
+
}
|
|
2221
|
+
return timeline;
|
|
2222
|
+
};
|
|
2223
|
+
const tokenize = Whisper.prototype.textToTokens.bind(w);
|
|
2096
2224
|
const findPath = async (...args) => {
|
|
2097
2225
|
const start = profile ? performance.now() : 0;
|
|
2098
2226
|
try {
|
|
@@ -2114,27 +2242,66 @@ ${chalk.blueBright("Median token decode time")}: ${medianTokenDecodingTime.toFix
|
|
|
2114
2242
|
profile.lyricTokens = lyricTokens.length;
|
|
2115
2243
|
if (isFinal) profile.finalRemaining = remaining.length;
|
|
2116
2244
|
}
|
|
2117
|
-
options = { ...options, maxTokensPerPart: lookaheadBudget(lyricTokens.length, virtual.length, duration, remaining.length, isFinal, Math.min(440, 448 - initialTokens.length),
|
|
2118
|
-
subset(m, remaining, eot
|
|
2119
|
-
|
|
2120
|
-
|
|
2121
|
-
|
|
2122
|
-
|
|
2245
|
+
options = { ...options, maxTokensPerPart: lookaheadBudget(lyricTokens.length, virtual.length, duration, remaining.length, isFinal, Math.min(440, 448 - initialTokens.length), 1.15) };
|
|
2246
|
+
subset(m, remaining, eot);
|
|
2247
|
+
const baseOffset = originalContext.audioOffset, windowSamples = Math.round(w.audioWindowSeconds * 16e3), timeScale = this.config.timeScale;
|
|
2248
|
+
if (this.config.lyricPauses && pauseMask === void 0) pauseMask = lyricPauseMask(lyricTokens, (t) => w.tokensToText(t), lyrics) ?? null;
|
|
2249
|
+
const attempt = async (shiftFrames) => {
|
|
2250
|
+
if (shiftFrames) {
|
|
2251
|
+
const from = baseOffset + shiftFrames * 320;
|
|
2252
|
+
await originalContext.encodeSamples(virtual.subarray(from, Math.min(virtual.length, from + windowSamples)));
|
|
2253
|
+
}
|
|
2254
|
+
w.context = speculativeNativeContext(m, originalContext, remaining, eot, options.maxTokensPerPart, this.config.batchSize);
|
|
2255
|
+
let decoded2;
|
|
2256
|
+
try {
|
|
2257
|
+
decoded2 = await (isFinal ? decodeAllKnownTokens : decodeKnownTokens)(originalContext, initialTokens, remaining, eot, options.maxTokensPerPart, this.config.batchSize, true);
|
|
2258
|
+
} finally {
|
|
2259
|
+
w.context = originalContext;
|
|
2260
|
+
}
|
|
2261
|
+
const offset = originalContext.audioOffset, last = decoded2.decodedTokens.at(-1), timestampStart = w.specialTokens.timestampTokensStart;
|
|
2262
|
+
const end = !isFinal && last >= timestampStart ? offset + (last - timestampStart) * 320 : Math.min(offset + this.config.audioContext * 320, virtual.length), frames = Math.floor((end - offset) / 320), count = initialTokens.length;
|
|
2263
|
+
decoded2.alignmentFrames = frames;
|
|
2264
|
+
const evidence = { offsetSeconds: offset / 16e3 * timeScale, consumed, logOdds: decoded2.decodedTokenLogOdds.slice(count), tokens: decoded2.decodedTokens.slice(count) };
|
|
2265
|
+
const n = decoded2.decodedTokens.slice(count).filter((t) => t < eot).length;
|
|
2266
|
+
const entryScores = decoded2.decodedTokenLogOdds.slice(count, count + n).map((x) => -Math.max(0, -x) - Math.log1p(Math.exp(-Math.abs(x))));
|
|
2267
|
+
let bounds = attentionGapBounds(decoded2.decodedTokensCrossAttentionQKs.slice(count, count + n), frames, 2, { openEnd: !isFinal, entryScores, blankAfter: this.config.lyricPauses ? pauseMask?.slice(consumed, consumed + n) : void 0, posterior: this.config.posteriorBoundaries });
|
|
2268
|
+
if (bounds !== void 0) decoded2.alignmentPath = bounds.map((b, i) => ({ source: i, dest: b.start }));
|
|
2269
|
+
if (!decoded2.alignmentPath) decoded2.alignmentPath = await coarseAttentionPath(findPath, decoded2.decodedTokensCrossAttentionQKs.slice(count), decoded2.decodedTokens.slice(count), frames, this.config.attentionStride ?? 1);
|
|
2270
|
+
if (!isFinal) decoded2 = trimAttentionPrefix(decoded2, decoded2.alignmentPath, count, frames - Math.round(this.config.audioContext / 6), timestampStart, eot, bounds);
|
|
2271
|
+
const kept = decoded2.decodedTokens.slice(count).filter((t) => t < eot).length;
|
|
2272
|
+
if (bounds) bounds = bounds.slice(0, kept);
|
|
2273
|
+
if (shiftFrames) {
|
|
2274
|
+
decoded2.decodedTokens[decoded2.decodedTokens.length - 1] += shiftFrames;
|
|
2275
|
+
decoded2.alignmentFrames += shiftFrames;
|
|
2276
|
+
decoded2.alignmentPath = decoded2.alignmentPath.map((point) => ({ ...point, dest: point.dest + shiftFrames }));
|
|
2277
|
+
if (bounds) bounds = bounds.map((b) => ({ ...b, start: b.start + shiftFrames, end: b.end + shiftFrames, ...b.allocationEnd === void 0 ? {} : { allocationEnd: b.allocationEnd + shiftFrames } }));
|
|
2278
|
+
}
|
|
2279
|
+
return { decoded: decoded2, bounds, evidence, kept, coreSeconds: decoded2.alignmentFrames * 0.02 * timeScale, score: kept ? entryScores.slice(0, kept).reduce((x, y) => x + y, 0) / kept : -Infinity, offset };
|
|
2123
2280
|
};
|
|
2124
|
-
let
|
|
2125
|
-
|
|
2126
|
-
|
|
2127
|
-
|
|
2128
|
-
|
|
2281
|
+
let chosen = await attempt(0);
|
|
2282
|
+
const retry = this.config.windowRetry;
|
|
2283
|
+
if (retry && !isFinal && chosen.kept > 0 && rateHistory.length >= retry.minHistory) {
|
|
2284
|
+
const sorted = [...rateHistory].sort((x, y) => x - y), typical = sorted[sorted.length >> 1], inBand = (c) => {
|
|
2285
|
+
const r = c.kept / c.coreSeconds;
|
|
2286
|
+
return r >= retry.low * typical && r <= retry.high * typical;
|
|
2287
|
+
};
|
|
2288
|
+
if (!inBand(chosen) && chosen.score < retry.maxScore) {
|
|
2289
|
+
let best;
|
|
2290
|
+
for (const shift of retry.shifts) {
|
|
2291
|
+
const candidate = await attempt(shift);
|
|
2292
|
+
if (inBand(candidate) && candidate.score >= chosen.score - retry.tolerance && (!best || candidate.score > best.score)) best = candidate;
|
|
2293
|
+
}
|
|
2294
|
+
if (profile) profile.retries = [...profile.retries ?? [], { offsetSeconds: chosen.offset / 16e3 * timeScale, adopted: Boolean(best) }];
|
|
2295
|
+
if (best) chosen = best;
|
|
2296
|
+
}
|
|
2129
2297
|
}
|
|
2130
|
-
|
|
2131
|
-
|
|
2132
|
-
|
|
2133
|
-
|
|
2134
|
-
|
|
2135
|
-
|
|
2136
|
-
|
|
2137
|
-
consumed += decoded.decodedTokens.slice(count).filter((t) => t < eot).length;
|
|
2298
|
+
let { decoded } = chosen;
|
|
2299
|
+
prefixBounds = chosen.bounds;
|
|
2300
|
+
if (chosen.kept > 0) rateHistory.push(chosen.kept / chosen.coreSeconds);
|
|
2301
|
+
if (profile) (profile.tokenEvidence ??= []).push(chosen.evidence);
|
|
2302
|
+
workerPath = { path: decoded.alignmentPath, frames: decoded.alignmentFrames, tokens: decoded.decodedTokens.slice(initialTokens.length) };
|
|
2303
|
+
if (profile) (profile.parts ??= []).push({ offsetSeconds: chosen.offset / 16e3 * timeScale, remaining: remaining.length, budget: options.maxTokensPerPart, kept: chosen.kept, isFinal, coreSeconds: chosen.coreSeconds });
|
|
2304
|
+
consumed += chosen.kept;
|
|
2138
2305
|
decoded.decodedTokensCrossAttentionQKs = decoded.decodedTokens.map(() => void 0);
|
|
2139
2306
|
return decoded;
|
|
2140
2307
|
};
|
|
@@ -2180,7 +2347,7 @@ ${chalk.blueBright("Median token decode time")}: ${medianTokenDecodingTime.toFix
|
|
|
2180
2347
|
}
|
|
2181
2348
|
var capabilities = Object.freeze({
|
|
2182
2349
|
contractVersion: 1,
|
|
2183
|
-
libraryVersion: "1.0.
|
|
2350
|
+
libraryVersion: "1.0.2",
|
|
2184
2351
|
supportedLanguages: Object.freeze(["en", "ja", "zh"]),
|
|
2185
2352
|
model: Object.freeze({ id: "ggerganov/whisper.cpp/ggml-tiny-q5_1.bin", revision: "5359861c739e955e79d9a303bcbc70fb988958b1", device: "wasm", dtype: "q5_1" }),
|
|
2186
2353
|
alignmentOptions: Object.freeze(["threshold", "karaoke"]),
|
|
@@ -2322,7 +2489,7 @@ ${chalk.blueBright("Median token decode time")}: ${medianTokenDecodingTime.toFix
|
|
|
2322
2489
|
var binding = createBinding();
|
|
2323
2490
|
|
|
2324
2491
|
// src/engine/align-segments.ts
|
|
2325
|
-
var
|
|
2492
|
+
var normalize2 = (text) => Array.from(text.normalize("NFKC").toLocaleLowerCase("und").replace(/[^\p{L}\p{N}]/gu, ""));
|
|
2326
2493
|
function validTime(start, end) {
|
|
2327
2494
|
return typeof start === "number" && typeof end === "number" && Number.isFinite(start) && Number.isFinite(end) && start >= 0 && end > start;
|
|
2328
2495
|
}
|
|
@@ -2351,10 +2518,10 @@ ${chalk.blueBright("Median token decode time")}: ${medianTokenDecodingTime.toFix
|
|
|
2351
2518
|
if (typeof unit.text !== "string" || !validTime(unit.start, unit.end) || unit.start < wordStart || unit.start < segment.start || unit.end > segment.end) invalid("Invalid or unordered ASR word");
|
|
2352
2519
|
wordStart = unit.start;
|
|
2353
2520
|
const id = unitId++;
|
|
2354
|
-
for (const char of
|
|
2521
|
+
for (const char of normalize2(unit.text)) evidence.push({ char, start: unit.start, end: unit.end, unit: id });
|
|
2355
2522
|
}
|
|
2356
2523
|
}
|
|
2357
|
-
const lines = lyrics.map(
|
|
2524
|
+
const lines = lyrics.map(normalize2), target = lines.flat(), width = evidence.length + 1;
|
|
2358
2525
|
const cells = (target.length + 1) * width;
|
|
2359
2526
|
if (cells > 64e6) invalid("Text alignment exceeds 64 million cells; reduce ASR/lyric text size");
|
|
2360
2527
|
const trace = new Uint8Array(cells);
|
|
@@ -2416,7 +2583,15 @@ ${chalk.blueBright("Median token decode time")}: ${medianTokenDecodingTime.toFix
|
|
|
2416
2583
|
}
|
|
2417
2584
|
|
|
2418
2585
|
// src/worker.ts
|
|
2419
|
-
var engineConfig = typeof __ALIGN_EXPERIMENT__ === "undefined" ? {
|
|
2586
|
+
var engineConfig = typeof __ALIGN_EXPERIMENT__ === "undefined" ? {
|
|
2587
|
+
timeScale: 1.5,
|
|
2588
|
+
audioContext: 640,
|
|
2589
|
+
encoderBlocks: 4,
|
|
2590
|
+
posteriorBoundaries: "ends",
|
|
2591
|
+
lyricPauses: true,
|
|
2592
|
+
// Retry a window whose lyric consumption rate is off and whose evidence is poor (mean pairwise p<.25) from a later start.
|
|
2593
|
+
windowRetry: { shifts: [80, 160], low: 0.65, high: 1.5, minHistory: 3, tolerance: 0, maxScore: Math.log(0.25) }
|
|
2594
|
+
} : __ALIGN_EXPERIMENT__;
|
|
2420
2595
|
var scope = self;
|
|
2421
2596
|
var engine;
|
|
2422
2597
|
var busy = false;
|