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.
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../vendor/echogarden/word-patterns.json", "../src/engine/helpers.mjs", "../vendor/echogarden/VectorMath.mjs", "../vendor/echogarden/DTW.mjs", "../vendor/echogarden/MedianFilter.mjs", "../vendor/echogarden/Whisper.mjs", "../node_modules/.pnpm/tiktoken@1.0.22/node_modules/tiktoken/lite/tiktoken_bg.js", "../node_modules/.pnpm/tiktoken@1.0.22/node_modules/tiktoken/lite/init.js", "../src/engine/tokenizer.mjs", "../src/core/speculative-context.mjs", "../src/core/vocab-subset.mjs", "../src/core/audio-time-scale.mjs", "../src/engine/native-context.mjs", "../src/core/lyrics.mjs", "../src/core/token-units.mjs", "../src/core/attention-trim.mjs", "../src/engine/transcribe.mjs", "../src/engine/guided-decode.mjs", "../src/engine/attention-resolution.mjs", "../src/engine/engine.mjs", "../src/model.ts", "../src/binding.ts", "../src/engine/align-segments.ts", "../src/worker.ts"],
4
- "sourcesContent": ["{\"\":\"(?:(?: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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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\u00E4b\\\\.|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\\\\.\u00C4\\\\.|b\\\\.|M\\\\.|i\\\\.H\\\\.|v\\\\.R\\\\.w\\\\.|o\\\\.A\\\\.|St\\\\.|Dr\\\\.|Fn\\\\.|Abs\\\\.|Rd\\\\.|Dtzd\\\\.|Jahrh\\\\.|Z\\\\.|Std\\\\.|n\\\\. Chr\\\\.|m\u00F6bl\\\\.|t\u00E4gl\\\\.|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\\\\.\u00C4\\\\.|ehem\\\\.|n\u00E4ml\\\\.|u\\\\. Z\\\\.|v\\\\. u\\\\. Z\\\\.|sog\\\\.|C\\\\.|Dipl\\\\.-Kfm\\\\.|mtl\\\\.|Hrsg\\\\.|Qu\\\\.|r\u00F6m\\\\.|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\u00FCdd\\\\.|inkl\\\\.|geb\\\\.|Ggf\\\\.|Inc\\\\.|kath\\\\.|kfm\\\\.|Nr\\\\.|Proz\\\\.|Dim\\\\.|verw\\\\.|Reg\\\\.|Dat\\\\.|Evtl\\\\.|led\\\\.|F\\\\.|Test\\\\.|Schr\\\\.|Do\\\\.|PIN\\\\.|Z\\\\. Zt\\\\.|v\\\\.Chr\\\\.|T\u00E4gl\\\\.|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\u00FCngl\\\\.|r\u00F6m\\\\.-kath\\\\.|Okt\\\\.|u\\\\.\u00E4\\\\.|Tel\\\\.|D\\\\.|Ber\\\\.|Kop\\\\.|Mio\\\\.|Y\\\\.|U\\\\.S\\\\.A\\\\.|v\\\\. H\\\\.|Forts\\\\. f\\\\.|Rep\\\\.|Hptst\\\\.|\u00F6sterr\\\\.|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\u00E4b\\\\.|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\\\\.\u00E4\\\\.|b\\\\.|m\\\\.|i\\\\.h\\\\.|v\\\\.r\\\\.w\\\\.|o\\\\.a\\\\.|st\\\\.|dr\\\\.|fn\\\\.|abs\\\\.|rd\\\\.|dtzd\\\\.|jahrh\\\\.|z\\\\.|std\\\\.|n\\\\. chr\\\\.|m\u00F6bl\\\\.|t\u00E4gl\\\\.|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\\\\.\u00E4\\\\.|ehem\\\\.|n\u00E4ml\\\\.|u\\\\. z\\\\.|v\\\\. u\\\\. z\\\\.|sog\\\\.|c\\\\.|dipl\\\\.-kfm\\\\.|mtl\\\\.|hrsg\\\\.|qu\\\\.|r\u00F6m\\\\.|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\u00FCdd\\\\.|inkl\\\\.|geb\\\\.|ggf\\\\.|inc\\\\.|kath\\\\.|kfm\\\\.|nr\\\\.|proz\\\\.|dim\\\\.|verw\\\\.|reg\\\\.|dat\\\\.|evtl\\\\.|led\\\\.|f\\\\.|test\\\\.|schr\\\\.|do\\\\.|pin\\\\.|z\\\\. zt\\\\.|v\\\\.chr\\\\.|t\u00E4gl\\\\.|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\u00FCngl\\\\.|r\u00F6m\\\\.-kath\\\\.|okt\\\\.|u\\\\.\u00E4\\\\.|tel\\\\.|d\\\\.|ber\\\\.|kop\\\\.|mio\\\\.|y\\\\.|u\\\\.s\\\\.a\\\\.|v\\\\. h\\\\.|forts\\\\. f\\\\.|rep\\\\.|hptst\\\\.|\u00F6sterr\\\\.|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\u00C4B\\\\.|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\\\\.\u00C4\\\\.|B\\\\.|M\\\\.|I\\\\.H\\\\.|V\\\\.R\\\\.W\\\\.|O\\\\.A\\\\.|ST\\\\.|DR\\\\.|FN\\\\.|ABS\\\\.|RD\\\\.|DTZD\\\\.|JAHRH\\\\.|Z\\\\.|STD\\\\.|N\\\\. CHR\\\\.|M\u00D6BL\\\\.|T\u00C4GL\\\\.|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\\\\.\u00C4\\\\.|EHEM\\\\.|N\u00C4ML\\\\.|U\\\\. Z\\\\.|V\\\\. U\\\\. Z\\\\.|SOG\\\\.|C\\\\.|DIPL\\\\.-KFM\\\\.|MTL\\\\.|HRSG\\\\.|QU\\\\.|R\u00D6M\\\\.|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\u00DCDD\\\\.|INKL\\\\.|GEB\\\\.|GGF\\\\.|INC\\\\.|KATH\\\\.|KFM\\\\.|NR\\\\.|PROZ\\\\.|DIM\\\\.|VERW\\\\.|REG\\\\.|DAT\\\\.|EVTL\\\\.|LED\\\\.|F\\\\.|TEST\\\\.|SCHR\\\\.|DO\\\\.|PIN\\\\.|Z\\\\. ZT\\\\.|V\\\\.CHR\\\\.|T\u00C4GL\\\\.|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\u00DCNGL\\\\.|R\u00D6M\\\\.-KATH\\\\.|OKT\\\\.|U\\\\.\u00C4\\\\.|TEL\\\\.|D\\\\.|BER\\\\.|KOP\\\\.|MIO\\\\.|Y\\\\.|U\\\\.S\\\\.A\\\\.|V\\\\. H\\\\.|FORTS\\\\. F\\\\.|REP\\\\.|HPTST\\\\.|\u00D6STERR\\\\.|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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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\u00E9\\\\.|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\u00E1b\\\\.|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\u00F1a\\\\.|Seg\\\\.|mar\\\\.|Rvdmo\\\\.|Reg\\\\.|ms\\\\.|Sras\\\\.|sres\\\\.|U\\\\.S\\\\.A\\\\.|Sta\\\\.|Sdad\\\\.|Dra\\\\.|srs\\\\.|R\\\\.U\\\\.|deptos\\\\.|dpto\\\\.|jun\\\\.|bco\\\\.|C\u00EDa\\\\.|Id\\\\.|Mr\\\\.|e\\\\.g\\\\.|C\\\\.S\\\\.|Excmas\\\\.|D\u00AA\\\\.|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\u00E9\\\\.|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\u00E1b\\\\.|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\u00F1a\\\\.|seg\\\\.|mar\\\\.|rvdmo\\\\.|reg\\\\.|ms\\\\.|sras\\\\.|sres\\\\.|u\\\\.s\\\\.a\\\\.|sta\\\\.|sdad\\\\.|dra\\\\.|srs\\\\.|r\\\\.u\\\\.|deptos\\\\.|dpto\\\\.|jun\\\\.|bco\\\\.|c\u00EDa\\\\.|id\\\\.|mr\\\\.|e\\\\.g\\\\.|c\\\\.s\\\\.|excmas\\\\.|d\u00AA\\\\.|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\u00C9\\\\.|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\u00C1B\\\\.|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\u00D1A\\\\.|SEG\\\\.|MAR\\\\.|RVDMO\\\\.|REG\\\\.|MS\\\\.|SRAS\\\\.|SRES\\\\.|U\\\\.S\\\\.A\\\\.|STA\\\\.|SDAD\\\\.|DRA\\\\.|SRS\\\\.|R\\\\.U\\\\.|DEPTOS\\\\.|DPTO\\\\.|JUN\\\\.|BCO\\\\.|C\u00CDA\\\\.|ID\\\\.|MR\\\\.|E\\\\.G\\\\.|C\\\\.S\\\\.|EXCMAS\\\\.|D\u00AA\\\\.|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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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\u00F4p\\\\.|Mart\\\\.|juil\\\\.|broch\\\\.|adr\\\\.|symb\\\\.|C\\\\.|anc\\\\.|voit\\\\.|Jr\\\\.|graph\\\\.|dir\\\\.|\u00E9d\\\\.|fig\\\\.|\u00E9dit\\\\.|niv\\\\.|quart\\\\.|cam\\\\.|\u00E9val\\\\.|anon\\\\.|r\u00E9f\\\\.|Comm\\\\.|Prof\\\\.|f\u00E9vr\\\\.|indus\\\\.|DC\\\\.|\u00E9quiv\\\\.|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\u00E9c\\\\.|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\u00F4p\\\\.|mart\\\\.|juil\\\\.|broch\\\\.|adr\\\\.|symb\\\\.|c\\\\.|anc\\\\.|voit\\\\.|jr\\\\.|graph\\\\.|dir\\\\.|\u00E9d\\\\.|fig\\\\.|\u00E9dit\\\\.|niv\\\\.|quart\\\\.|cam\\\\.|\u00E9val\\\\.|anon\\\\.|r\u00E9f\\\\.|comm\\\\.|prof\\\\.|f\u00E9vr\\\\.|indus\\\\.|dc\\\\.|\u00E9quiv\\\\.|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\u00E9c\\\\.|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\u00D4P\\\\.|MART\\\\.|JUIL\\\\.|BROCH\\\\.|ADR\\\\.|SYMB\\\\.|C\\\\.|ANC\\\\.|VOIT\\\\.|JR\\\\.|GRAPH\\\\.|DIR\\\\.|\u00C9D\\\\.|FIG\\\\.|\u00C9DIT\\\\.|NIV\\\\.|QUART\\\\.|CAM\\\\.|\u00C9VAL\\\\.|ANON\\\\.|R\u00C9F\\\\.|COMM\\\\.|PROF\\\\.|F\u00C9VR\\\\.|INDUS\\\\.|DC\\\\.|\u00C9QUIV\\\\.|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\u00C9C\\\\.|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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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\u00F4n\\\\.|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\u00E9d\\\\.|jur\\\\.|com\\\\.|anat\\\\.|dir\\\\.|end\\\\.|f\u00EDs\\\\.|E\\\\.|Est\\\\.|cont\\\\.|matem\\\\.|Drs\\\\.|g\u00EAn\\\\.|neol\\\\.|p\u00E1g\\\\.|\u00EDnd\\\\.|Ltda\\\\.|Exma\\\\.|esp\\\\.|ingl\\\\.|tecnol\\\\.|Mar\\\\.|s\u00EDmb\\\\.|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\u00E9d\\\\.|odontol\\\\.|org\\\\.|A\\\\.C\\\\.|jun\\\\.|d\u00E9b\\\\.|Av\\\\.|\u00E1lg\\\\.|sup\\\\.|fl\\\\.|odont\\\\.|caps\\\\.|relat\\\\.|organiz\\\\.|hist\\\\.|Fr\\\\.|Ilmo\\\\.|fem\\\\.|ap\\\\.|Ltd\\\\.|pol\\\\.|s\u00E9c\\\\.|prof\\\\.|cx\\\\.|nov\\\\.|qu\u00EDm\\\\.|m\u00FAs\\\\.|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\u00E1ut\\\\.|biogr\\\\.|f\\\\.|c\u00EDrc\\\\.|fac\\\\.|d\\\\.C\\\\.|apart\\\\.|ex\\\\.|Jr\\\\.|set\\\\.|tec\\\\.|sociol\\\\.|gram\\\\.|ind\\\\.|Ilma\\\\.|vol\\\\.|eng\\\\.|rod\\\\.|Ph\\\\.D\\\\.|Dras\\\\.|pp\\\\.|elem\\\\.|m\u00E1q\\\\.|c\u00F3d\\\\.|eletr\\\\.|prod\\\\.|ref\\\\.|fil\\\\.|a\\\\.m\\\\.|A\\\\.M|obs\\\\.|N\\\\.T\\\\.|contab\\\\.|Sto\\\\.|lit\\\\.|educ\\\\.|rementente|desc\\\\.|pr\u00F3x\\\\.|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\u00F4n\\\\.|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\u00E9d\\\\.|jur\\\\.|com\\\\.|anat\\\\.|dir\\\\.|end\\\\.|f\u00EDs\\\\.|e\\\\.|est\\\\.|cont\\\\.|matem\\\\.|drs\\\\.|g\u00EAn\\\\.|neol\\\\.|p\u00E1g\\\\.|\u00EDnd\\\\.|ltda\\\\.|exma\\\\.|esp\\\\.|ingl\\\\.|tecnol\\\\.|mar\\\\.|s\u00EDmb\\\\.|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\u00E9d\\\\.|odontol\\\\.|org\\\\.|a\\\\.c\\\\.|jun\\\\.|d\u00E9b\\\\.|av\\\\.|\u00E1lg\\\\.|sup\\\\.|fl\\\\.|odont\\\\.|caps\\\\.|relat\\\\.|organiz\\\\.|hist\\\\.|fr\\\\.|ilmo\\\\.|fem\\\\.|ap\\\\.|ltd\\\\.|pol\\\\.|s\u00E9c\\\\.|prof\\\\.|cx\\\\.|nov\\\\.|qu\u00EDm\\\\.|m\u00FAs\\\\.|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\u00E1ut\\\\.|biogr\\\\.|f\\\\.|c\u00EDrc\\\\.|fac\\\\.|d\\\\.c\\\\.|apart\\\\.|ex\\\\.|jr\\\\.|set\\\\.|tec\\\\.|sociol\\\\.|gram\\\\.|ind\\\\.|ilma\\\\.|vol\\\\.|eng\\\\.|rod\\\\.|ph\\\\.d\\\\.|dras\\\\.|pp\\\\.|elem\\\\.|m\u00E1q\\\\.|c\u00F3d\\\\.|eletr\\\\.|prod\\\\.|ref\\\\.|fil\\\\.|a\\\\.m\\\\.|a\\\\.m|obs\\\\.|n\\\\.t\\\\.|contab\\\\.|sto\\\\.|lit\\\\.|educ\\\\.|rementente|desc\\\\.|pr\u00F3x\\\\.|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\u00D4N\\\\.|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\u00C9D\\\\.|JUR\\\\.|COM\\\\.|ANAT\\\\.|DIR\\\\.|END\\\\.|F\u00CDS\\\\.|E\\\\.|EST\\\\.|CONT\\\\.|MATEM\\\\.|DRS\\\\.|G\u00CAN\\\\.|NEOL\\\\.|P\u00C1G\\\\.|\u00CDND\\\\.|LTDA\\\\.|EXMA\\\\.|ESP\\\\.|INGL\\\\.|TECNOL\\\\.|MAR\\\\.|S\u00CDMB\\\\.|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\u00C9D\\\\.|ODONTOL\\\\.|ORG\\\\.|A\\\\.C\\\\.|JUN\\\\.|D\u00C9B\\\\.|AV\\\\.|\u00C1LG\\\\.|SUP\\\\.|FL\\\\.|ODONT\\\\.|CAPS\\\\.|RELAT\\\\.|ORGANIZ\\\\.|HIST\\\\.|FR\\\\.|ILMO\\\\.|FEM\\\\.|AP\\\\.|LTD\\\\.|POL\\\\.|S\u00C9C\\\\.|PROF\\\\.|CX\\\\.|NOV\\\\.|QU\u00CDM\\\\.|M\u00DAS\\\\.|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\u00C1UT\\\\.|BIOGR\\\\.|F\\\\.|C\u00CDRC\\\\.|FAC\\\\.|D\\\\.C\\\\.|APART\\\\.|EX\\\\.|JR\\\\.|SET\\\\.|TEC\\\\.|SOCIOL\\\\.|GRAM\\\\.|IND\\\\.|ILMA\\\\.|VOL\\\\.|ENG\\\\.|ROD\\\\.|PH\\\\.D\\\\.|DRAS\\\\.|PP\\\\.|ELEM\\\\.|M\u00C1Q\\\\.|C\u00D3D\\\\.|ELETR\\\\.|PROD\\\\.|REF\\\\.|FIL\\\\.|A\\\\.M\\\\.|A\\\\.M|OBS\\\\.|N\\\\.T\\\\.|CONTAB\\\\.|STO\\\\.|LIT\\\\.|EDUC\\\\.|REMENTENTE|DESC\\\\.|PR\u00D3X\\\\.|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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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}]))|[_]))+))\"}", "import patterns from '../../vendor/echogarden/word-patterns.json' with {type:'json'};\r\nexport class Logger {start(){} async startAsync(){} end(){} write(){} log(){} logLevelGreaterOrEqualTo(){return false;}}\r\nexport class Timer {constructor(){this.start=performance.now();}get elapsedTime(){return performance.now()-this.start;}getElapsedTimeAndRestart(){const v=this.elapsedTime;this.start=performance.now();return v;}}\r\nexport const chalk={magentaBright:s=>s,blueBright:s=>s};\r\nexport const extendDeep=(base,options)=>({...base,...options});\r\nexport const getRawAudioDuration=audio=>audio.audioChannels[0].length/audio.sampleRate;\r\nexport const includesPunctuation=s=>/\\p{Punctuation}/u.test(s);\r\nexport const isAllWhitespace=s=>/^\\s+$/u.test(s);\r\nexport const containsInvalidCodepoint=s=>s.includes('\\uFFFD');\r\nexport const clip=(x,a,b)=>Math.max(a,Math.min(b,x));\r\nexport const getIntegerRange=(a,b)=>Array.from({length:Math.max(0,b-a)},(_,i)=>a+i);\r\nexport const concatUint8Arrays=arrays=>{const result=new Uint8Array(arrays.reduce((n,a)=>n+a.length,0));let offset=0;for(const a of arrays){result.set(a,offset);offset+=a.length;}return result;};\r\nexport const yieldToEventLoop=async()=>{};\r\nexport const getDeflateCompressionMetricsForString=async()=>({ratio:0});\r\nexport const getTokenRepetitionScore=()=>{throw Error('Only fixed deterministic alignment is supported');};\r\nexport const getTopKIndexes=(values,k)=>{if(k!==1)throw Error('Only deterministic top-1 supported');let best=0;for(let i=1;i<values.length;i++)if(values[i]>values[best])best=i;return[best];};\r\nexport async function splitToWords(text,language){if(language!=='ja'&&language!=='zh')return{nonPunctuationWords:Array.from(text.matchAll(new RegExp(patterns[language]??patterns[''],'gu')),match=>match[0])};const segments=Array.from(new Intl.Segmenter(language,{granularity:'word'}).segment(text));if(language==='ja')for(let i=1;i<segments.length-1;i++)if(segments[i].segment==='\u30FB'&&segments[i-1].isWordLike&&segments[i+1].isWordLike){segments.splice(i-1,3,{segment:segments[i-1].segment+'\u30FB'+segments[i+1].segment,isWordLike:true});i=Math.max(0,i-2);}return {nonPunctuationWords:segments.filter(part=>part.isWordLike||/^[\\p{Emoji_Presentation}$\u20AC\u00A2\u00A3\u00A5\u00A9\u00AE\u2122%&#~@+\u00B1\u00F7/\\\\^*\u00D7=\u2248\u00BC\u00BD\u00BE\u2192\u2264\u2265\u221E]+$/u.test(part.segment)).map(part=>part.segment)};}\r\n", "const clip=(x,a,b)=>Math.max(a,Math.min(b,x));\r\nexport function covarianceMatrixOfSamples(samples, weights, biased = false) {\r\n if (samples.length == 0) {\r\n throw new Error('No vectors given');\r\n }\r\n const { centeredVectors: centeredSamples, mean } = centerVectors(samples, weights);\r\n let covarianceMatrix;\r\n if (weights) {\r\n covarianceMatrix = weightedCovarianceMatrixOfCenteredSamples(centeredSamples, weights);\r\n }\r\n else {\r\n covarianceMatrix = covarianceMatrixOfCenteredSamples(centeredSamples, biased);\r\n }\r\n return { covarianceMatrix, mean };\r\n}\r\nexport function covarianceMatrixOfCenteredSamples(centeredSamples, biased = false, diagonalRegularizationAmount = 1e-6) {\r\n const sampleCount = centeredSamples.length;\r\n if (sampleCount == 0) {\r\n throw new Error('No vectors given');\r\n }\r\n const sampleSizeMetric = biased || sampleCount == 1 ? sampleCount : sampleCount - 1;\r\n const featureCount = centeredSamples[0].length;\r\n const covarianceMatrix = createVectorArray(featureCount, featureCount);\r\n if (sampleCount == 1) {\r\n return covarianceMatrix;\r\n }\r\n for (let i = 0; i < featureCount; i++) {\r\n for (let j = 0; j < featureCount; j++) {\r\n if (i > j) {\r\n covarianceMatrix[i][j] = covarianceMatrix[j][i];\r\n continue;\r\n }\r\n let matrixElement = 0.0;\r\n for (const sample of centeredSamples) {\r\n matrixElement += sample[i] * sample[j];\r\n }\r\n matrixElement /= sampleSizeMetric;\r\n if (i == j) {\r\n matrixElement += diagonalRegularizationAmount;\r\n }\r\n covarianceMatrix[i][j] = matrixElement;\r\n }\r\n }\r\n return covarianceMatrix;\r\n}\r\nexport function weightedCovarianceMatrixOfCenteredSamples(centeredSamples, weights, diagonalRegularizationAmount = 1e-6) {\r\n const sampleCount = centeredSamples.length;\r\n if (sampleCount == 0) {\r\n throw new Error('No vectors given');\r\n }\r\n const featureCount = centeredSamples[0].length;\r\n const covarianceMatrix = createVectorArray(featureCount, featureCount);\r\n if (sampleCount == 1) {\r\n return covarianceMatrix;\r\n }\r\n for (let i = 0; i < featureCount; i++) {\r\n for (let j = 0; j < featureCount; j++) {\r\n if (i > j) {\r\n covarianceMatrix[i][j] = covarianceMatrix[j][i];\r\n continue;\r\n }\r\n let matrixElement = 0.0;\r\n for (let sampleIndex = 0; sampleIndex < sampleCount; sampleIndex++) {\r\n const sample = centeredSamples[sampleIndex];\r\n const weight = weights[sampleIndex];\r\n matrixElement += weight * (sample[i] * sample[j]);\r\n }\r\n if (i == j) {\r\n matrixElement += diagonalRegularizationAmount;\r\n }\r\n covarianceMatrix[i][j] = matrixElement;\r\n }\r\n }\r\n return covarianceMatrix;\r\n}\r\nexport function centerVectors(vectors, weights) {\r\n const vectorCount = vectors.length;\r\n if (vectorCount == 0) {\r\n return { centeredVectors: [], mean: new Float32Array(0) };\r\n }\r\n let mean;\r\n if (weights) {\r\n mean = weightedMeanOfVectors(vectors, weights);\r\n }\r\n else {\r\n mean = meanOfVectors(vectors);\r\n }\r\n const centeredVectors = [];\r\n for (let i = 0; i < vectorCount; i++) {\r\n const centeredVector = subtractVectors(vectors[i], mean);\r\n centeredVectors.push(centeredVector);\r\n }\r\n return { centeredVectors, mean };\r\n}\r\nexport function centerVector(vector) {\r\n const mean = meanOfVector(vector);\r\n const centeredVector = new Float32Array(vector.length);\r\n for (let i = 0; i < vector.length; i++) {\r\n centeredVector[i] = vector[i] - mean;\r\n }\r\n return centeredVector;\r\n}\r\nexport function scaleToSumTo1(vector) {\r\n if (vector.length == 0) {\r\n return new Float32Array(0);\r\n }\r\n if (vector.length == 1) {\r\n return Float32Array.from([1]);\r\n }\r\n const minValue = vector[indexOfMin(vector)];\r\n const scaledVector = Float32Array.from(vector);\r\n if (minValue < 0) {\r\n const addedOffset = -minValue * 2;\r\n for (let i = 0; i < scaledVector.length; i++) {\r\n scaledVector[i] += addedOffset;\r\n }\r\n }\r\n const sum = sumVector(scaledVector);\r\n if (sum == 0) {\r\n return scaledVector;\r\n }\r\n if (sum == Infinity) {\r\n throw new Error('Vector sum is infinite');\r\n }\r\n for (let i = 0; i < vector.length; i++) {\r\n scaledVector[i] /= sum;\r\n scaledVector[i] = zeroIfNaN(scaledVector[i]);\r\n }\r\n return scaledVector;\r\n}\r\nexport function normalizeVector(vector, kind = 'population') {\r\n if (vector.length == 0) {\r\n throw new Error('Vector is empty');\r\n }\r\n const mean = meanOfVector(vector);\r\n const stdDeviation = stdDeviationOfVector(vector, kind, mean);\r\n const normalizedVector = createVector(vector.length);\r\n for (let i = 0; i < vector.length; i++) {\r\n normalizedVector[i] = (vector[i] - mean) / stdDeviation;\r\n normalizedVector[i] = zeroIfNaN(normalizedVector[i]);\r\n }\r\n return { normalizedVector, mean, stdDeviation };\r\n}\r\nexport function normalizeVectors(vectors, kind = 'population') {\r\n const vectorCount = vectors.length;\r\n if (vectorCount == 0) {\r\n return { normalizedVectors: [], mean: new Float32Array(0), stdDeviation: new Float32Array(0) };\r\n }\r\n const featureCount = vectors[0].length;\r\n const mean = meanOfVectors(vectors);\r\n const stdDeviation = stdDeviationOfVectors(vectors, kind, mean);\r\n const normalizedVectors = [];\r\n for (const vector of vectors) {\r\n const normalizedVector = createVector(featureCount);\r\n for (let featureIndex = 0; featureIndex < featureCount; featureIndex++) {\r\n normalizedVector[featureIndex] = (vector[featureIndex] - mean[featureIndex]) / stdDeviation[featureIndex];\r\n normalizedVector[featureIndex] = zeroIfNaN(normalizedVector[featureIndex]);\r\n }\r\n normalizedVectors.push(normalizedVector);\r\n }\r\n return { normalizedVectors, mean, stdDeviation };\r\n}\r\nexport function deNormalizeVectors(normalizedVectors, originalMean, originalStdDeviation) {\r\n const vectorCount = normalizeVectors.length;\r\n if (vectorCount == 0) {\r\n return [];\r\n }\r\n const featureCount = normalizedVectors[0].length;\r\n const deNormalizedVectors = [];\r\n for (const normalizedVector of normalizedVectors) {\r\n const deNormalizedVector = createVector(featureCount);\r\n for (let featureIndex = 0; featureIndex < featureCount; featureIndex++) {\r\n deNormalizedVector[featureIndex] = originalMean[featureIndex] + (normalizedVector[featureIndex] * originalStdDeviation[featureIndex]);\r\n }\r\n deNormalizedVectors.push(deNormalizedVector);\r\n }\r\n return deNormalizedVectors;\r\n}\r\nexport function meanOfVectors(vectors) {\r\n const vectorCount = vectors.length;\r\n if (vectorCount == 0) {\r\n return new Float32Array(0);\r\n }\r\n const featureCount = vectors[0].length;\r\n const result = createVector(featureCount);\r\n for (const vector of vectors) {\r\n for (let featureIndex = 0; featureIndex < featureCount; featureIndex++) {\r\n result[featureIndex] += vector[featureIndex];\r\n }\r\n }\r\n for (let featureIndex = 0; featureIndex < featureCount; featureIndex++) {\r\n result[featureIndex] /= vectorCount;\r\n }\r\n return result;\r\n}\r\nexport function weightedMeanOfVectors(vectors, weights) {\r\n const vectorCount = vectors.length;\r\n if (vectorCount == 0) {\r\n return new Float32Array(0);\r\n }\r\n const featureCount = vectors[0].length;\r\n const result = createVector(featureCount);\r\n for (let vectorIndex = 0; vectorIndex < vectorCount; vectorIndex++) {\r\n const vector = vectors[vectorIndex];\r\n const vectorWeight = weights[vectorIndex];\r\n for (let featureIndex = 0; featureIndex < featureCount; featureIndex++) {\r\n result[featureIndex] += vectorWeight * vector[featureIndex];\r\n }\r\n }\r\n return result;\r\n}\r\nexport function stdDeviationOfVectors(vectors, kind = 'population', mean) {\r\n return varianceOfVectors(vectors, kind, mean).map(v => Math.sqrt(v));\r\n}\r\nexport function varianceOfVectors(vectors, kind = 'population', mean) {\r\n const vectorCount = vectors.length;\r\n if (vectorCount == 0) {\r\n return new Float32Array(0);\r\n }\r\n const sampleSizeMetric = kind == 'population' || vectorCount == 1 ? vectorCount : vectorCount - 1;\r\n const featureCount = vectors[0].length;\r\n if (!mean) {\r\n mean = meanOfVectors(vectors);\r\n }\r\n const result = createVector(featureCount);\r\n for (const vector of vectors) {\r\n for (let i = 0; i < featureCount; i++) {\r\n result[i] += (vector[i] - mean[i]) ** 2;\r\n }\r\n }\r\n for (let i = 0; i < featureCount; i++) {\r\n result[i] /= sampleSizeMetric;\r\n }\r\n return result;\r\n}\r\nexport function meanOfVector(vector) {\r\n if (vector.length == 0) {\r\n return 0;\r\n }\r\n return sumVector(vector) / vector.length;\r\n}\r\nexport function medianOfVector(vector) {\r\n if (vector.length == 0) {\r\n throw new Error('Vector is empty');\r\n }\r\n const sortedArray = Array.from(vector).sort((a, b) => a - b);\r\n const median = sortedArray[Math.floor(sortedArray.length / 2)];\r\n return median;\r\n}\r\nexport function stdDeviationOfVector(vector, kind = 'population', mean) {\r\n return Math.sqrt(varianceOfVector(vector, kind, mean));\r\n}\r\nexport function varianceOfVector(vector, kind = 'population', mean) {\r\n if (vector.length == 0) {\r\n return 0;\r\n }\r\n const sampleSizeMetric = kind == 'population' || vector.length == 1 ? vector.length : vector.length - 1;\r\n if (mean == null) {\r\n mean = meanOfVector(vector);\r\n }\r\n let result = 0.0;\r\n for (let i = 0; i < vector.length; i++) {\r\n result += (vector[i] - mean) ** 2;\r\n }\r\n return result / sampleSizeMetric;\r\n}\r\nexport function logOfVector(vector, minVal = 1e-40) {\r\n const result = new Float32Array(vector.length);\r\n for (let i = 0; i < vector.length; i++) {\r\n const value = vector[i];\r\n result[i] = Math.log(value + minVal);\r\n }\r\n return result;\r\n}\r\nexport function expOfVector(vector) {\r\n const result = new Float32Array(vector.length);\r\n for (let i = 0; i < vector.length; i++) {\r\n const value = vector[i];\r\n result[i] = Math.exp(value);\r\n }\r\n return result;\r\n}\r\nexport function transpose(matrix) {\r\n const vectorCount = matrix.length;\r\n const featureCount = matrix[0].length;\r\n const transposedMatrix = createVectorArray(featureCount, vectorCount);\r\n for (let i = 0; i < vectorCount; i++) {\r\n for (let j = 0; j < featureCount; j++) {\r\n transposedMatrix[j][i] = matrix[i][j];\r\n }\r\n }\r\n return transposedMatrix;\r\n}\r\nexport function movingAverageOfWindow3(vector) {\r\n const elementCount = vector.length;\r\n if (elementCount == 0) {\r\n return new Float32Array(0);\r\n }\r\n if (elementCount == 1) {\r\n return Float32Array.from(vector);\r\n }\r\n const result = new Float32Array(elementCount);\r\n result[0] = (vector[0] + vector[0] + vector[1]) / 3;\r\n for (let i = 1; i < elementCount - 1; i++) {\r\n result[i] = (vector[i - 1] + vector[i] + vector[i + 1]) / 3;\r\n }\r\n result[elementCount - 1] = (vector[elementCount - 2] + vector[elementCount - 1] + vector[elementCount - 1]) / 3;\r\n return result;\r\n}\r\nexport function averageMeanSquaredError(actual, expected) {\r\n if (actual.length != expected.length) {\r\n throw new Error('Vectors are not the same length');\r\n }\r\n const vectorCount = actual.length;\r\n if (vectorCount == 0) {\r\n return 0;\r\n }\r\n let sum = 0.0;\r\n for (let i = 0; i < vectorCount; i++) {\r\n sum += meanSquaredError(actual[i], expected[i]);\r\n }\r\n return sum / vectorCount;\r\n}\r\nexport function meanSquaredError(actual, expected) {\r\n if (actual.length != expected.length) {\r\n throw new Error('Vectors are not the same length');\r\n }\r\n const featureCount = actual.length;\r\n if (featureCount == 0) {\r\n return 0;\r\n }\r\n let sum = 0.0;\r\n for (let i = 0; i < featureCount; i++) {\r\n sum += (actual[i] - expected[i]) ** 2;\r\n }\r\n return sum / featureCount;\r\n}\r\nexport function euclideanDistance(vector1, vector2) {\r\n return Math.sqrt(squaredEuclideanDistance(vector1, vector2));\r\n}\r\nexport function squaredEuclideanDistance(vector1, vector2) {\r\n if (vector1.length !== vector2.length) {\r\n throw new Error('Vectors are not the same length');\r\n }\r\n const elementCount = vector1.length;\r\n if (elementCount === 0) {\r\n return 0;\r\n }\r\n let sum = 0.0;\r\n for (let i = 0; i < elementCount; i++) {\r\n sum += (vector1[i] - vector2[i]) ** 2;\r\n }\r\n return sum;\r\n}\r\nexport function euclideanDistance13Dim(vector1, vector2) {\r\n return Math.sqrt(squaredEuclideanDistance13Dim(vector1, vector2));\r\n}\r\nexport function squaredEuclideanDistance13Dim(vector1, vector2) {\r\n // Assumes the input has 13 dimensions (optimized for 13-dimensional MFCC vectors)\r\n const result = (vector1[0] - vector2[0]) ** 2 +\r\n (vector1[1] - vector2[1]) ** 2 +\r\n (vector1[2] - vector2[2]) ** 2 +\r\n (vector1[3] - vector2[3]) ** 2 +\r\n (vector1[4] - vector2[4]) ** 2 +\r\n (vector1[5] - vector2[5]) ** 2 +\r\n (vector1[6] - vector2[6]) ** 2 +\r\n (vector1[7] - vector2[7]) ** 2 +\r\n (vector1[8] - vector2[8]) ** 2 +\r\n (vector1[9] - vector2[9]) ** 2 +\r\n (vector1[10] - vector2[10]) ** 2 +\r\n (vector1[11] - vector2[11]) ** 2 +\r\n (vector1[12] - vector2[12]) ** 2;\r\n return result;\r\n}\r\nexport function cosineDistance(vector1, vector2) {\r\n return 1 - cosineSimilarity(vector1, vector2);\r\n}\r\nexport function cosineSimilarity(vector1, vector2) {\r\n if (vector1.length !== vector2.length) {\r\n throw new Error('Vectors are not the same length');\r\n }\r\n if (vector1.length === 0) {\r\n return 0;\r\n }\r\n const elementCount = vector1.length;\r\n let dotProduct = 0.0;\r\n let squaredMagnitude1 = 0.0;\r\n let squaredMagnitude2 = 0.0;\r\n for (let i = 0; i < elementCount; i++) {\r\n const element1 = vector1[i];\r\n const element2 = vector2[i];\r\n dotProduct += element1 * element2;\r\n squaredMagnitude1 += element1 ** 2;\r\n squaredMagnitude2 += element2 ** 2;\r\n }\r\n let result = dotProduct / (Math.sqrt(squaredMagnitude1) * Math.sqrt(squaredMagnitude2) + 1e-40);\r\n result = zeroIfNaN(result);\r\n result = clip(result, -1.0, 1.0);\r\n return result;\r\n}\r\nexport function cosineDistancePrecomputedMagnitudes(vector1, vector2, magnitude1, magnitude2) {\r\n return 1 - cosineSimilarityPrecomputedMagnitudes(vector1, vector2, magnitude1, magnitude2);\r\n}\r\nexport function cosineSimilarityPrecomputedMagnitudes(vector1, vector2, magnitude1, magnitude2) {\r\n if (vector1.length != vector2.length) {\r\n throw new Error('Vectors are not the same length');\r\n }\r\n if (vector1.length == 0) {\r\n return 0;\r\n }\r\n const featureCount = vector1.length;\r\n let dotProduct = 0.0;\r\n for (let i = 0; i < featureCount; i++) {\r\n dotProduct += vector1[i] * vector2[i];\r\n }\r\n let result = dotProduct / (magnitude1 * magnitude2 + 1e-40);\r\n result = zeroIfNaN(result);\r\n result = clip(result, -1.0, 1.0);\r\n return result;\r\n}\r\nexport function minkowskiDistance(vector1, vector2, power) {\r\n if (vector1.length != vector2.length) {\r\n throw new Error('Vectors are not the same length');\r\n }\r\n const elementCount = vector1.length;\r\n if (elementCount == 0) {\r\n return 0;\r\n }\r\n let sum = 0.0;\r\n for (let i = 0; i < elementCount; i++) {\r\n sum += Math.abs(vector1[i] - vector2[i]) ** power;\r\n }\r\n return sum ** (1 / power);\r\n}\r\nexport function subtractVectors(vector1, vector2) {\r\n const elementCount = vector1.length;\r\n if (vector1.length != vector2.length) {\r\n throw new Error('Vectors are not the same length');\r\n }\r\n const result = createVector(vector1.length);\r\n for (let i = 0; i < elementCount; i++) {\r\n result[i] = vector1[i] - vector2[i];\r\n }\r\n return result;\r\n}\r\nexport function sumVector(vector) {\r\n const elementCount = vector.length;\r\n let result = 0.0;\r\n for (let i = 0; i < elementCount; i++) {\r\n result += vector[i];\r\n }\r\n return result;\r\n}\r\nexport function sumOfSquaresOfVector(vector) {\r\n const elementCount = vector.length;\r\n let result = 0.0;\r\n for (let i = 0; i < elementCount; i++) {\r\n result += vector[i] ** 2;\r\n }\r\n return result;\r\n}\r\nexport function sumAndSumOfSquaresOfVector(vector) {\r\n const elementCount = vector.length;\r\n let sum = 0.0;\r\n let sumOfSquares = 0.0;\r\n for (let i = 0; i < elementCount; i++) {\r\n const value = vector[i];\r\n sum += value;\r\n sumOfSquares += value ** 2;\r\n }\r\n return { sum, sumOfSquares };\r\n}\r\nexport function dotProduct(vector1, vector2) {\r\n if (vector1.length != vector2.length) {\r\n throw new Error('Vectors are not the same length');\r\n }\r\n const elementCount = vector1.length;\r\n let result = 0.0;\r\n for (let i = 0; i < elementCount; i++) {\r\n result += vector1[i] * vector2[i];\r\n }\r\n return result;\r\n}\r\nexport function magnitude(vector) {\r\n const featureCount = vector.length;\r\n let squaredMagnitude = 0.0;\r\n for (let i = 0; i < featureCount; i++) {\r\n squaredMagnitude += vector[i] ** 2;\r\n }\r\n return Math.sqrt(squaredMagnitude);\r\n}\r\nexport function maxValue(vector) {\r\n return vector[indexOfMax(vector)];\r\n}\r\nexport function indexOfMax(vector) {\r\n if (vector.length == 0) {\r\n return -1;\r\n }\r\n let maxValue = vector[0];\r\n let result = 0;\r\n for (let i = 1; i < vector.length; i++) {\r\n if (vector[i] > maxValue) {\r\n maxValue = vector[i];\r\n result = i;\r\n }\r\n }\r\n return result;\r\n}\r\nexport function minValue(vector) {\r\n return vector[indexOfMin(vector)];\r\n}\r\nexport function indexOfMin(vector) {\r\n const elementCount = vector.length;\r\n let minValue = Infinity;\r\n let result = -1;\r\n for (let i = 0; i < elementCount; i++) {\r\n if (vector[i] < minValue) {\r\n minValue = vector[i];\r\n result = i;\r\n }\r\n }\r\n return result;\r\n}\r\nexport function sigmoid(x) {\r\n const result = 1 / (1 + Math.exp(-x));\r\n return zeroIfNaN(result);\r\n}\r\nexport function softmax(logits, temperature = 1.0) {\r\n const logitCount = logits.length;\r\n if (logitCount === 0) {\r\n return new Float32Array(0);\r\n }\r\n let maxLogit = -Infinity;\r\n for (let i = 0; i < logitCount; i++) {\r\n const value = logits[i];\r\n if (value > maxLogit) {\r\n maxLogit = value;\r\n }\r\n }\r\n temperature = Math.max(temperature, 1e-5);\r\n const temperatureReciprocal = 1 / temperature;\r\n const results = new Float32Array(logitCount);\r\n let sumOfExponentiatedLogits = 0.0;\r\n for (let i = 0; i < logitCount; i++) {\r\n const logit = logits[i];\r\n const normalizedLogit = (logit - maxLogit) * temperatureReciprocal;\r\n const eToLogit = Math.exp(normalizedLogit);\r\n sumOfExponentiatedLogits += eToLogit;\r\n results[i] = eToLogit;\r\n }\r\n const sumOfExponentiatedValuesReciprocal = 1 / (sumOfExponentiatedLogits + 1e-20);\r\n for (let i = 0; i < logitCount; i++) {\r\n results[i] *= sumOfExponentiatedValuesReciprocal;\r\n }\r\n return results;\r\n}\r\nexport function hammingDistance(value1, value2, bitLength = 32) {\r\n let valueXor = value1 ^ value2;\r\n let result = 0;\r\n for (let i = 0; i < bitLength; i++) {\r\n result += valueXor & 1;\r\n valueXor = valueXor >> 1;\r\n }\r\n return result;\r\n}\r\nexport function createVectorArray(vectorCount, featureCount, initialValue = 0.0) {\r\n const result = new Array(vectorCount);\r\n for (let i = 0; i < vectorCount; i++) {\r\n result[i] = createVector(featureCount, initialValue);\r\n }\r\n return result;\r\n}\r\nexport function createVector(elementCount, initialValue = 0.0) {\r\n const result = new Float32Array(elementCount);\r\n if (initialValue !== 0) {\r\n result.fill(initialValue);\r\n }\r\n return result;\r\n}\r\nexport function zeroIfNaN(val) {\r\n if (isNaN(val)) {\r\n return 0;\r\n }\r\n else {\r\n return val;\r\n }\r\n}\r\nexport function logSum(values, minVal = 1e-40) {\r\n return Math.log(minVal + sumVector(values));\r\n}\r\nexport function logSumExp(values, minVal = 1e-40) {\r\n return Math.log(minVal + sumExp(values));\r\n}\r\nexport function sumExp(values) {\r\n let sumOfExp = 0;\r\n for (let i = 0; i < values.length; i++) {\r\n const value = values[i];\r\n sumOfExp += Math.exp(value);\r\n }\r\n return sumOfExp;\r\n}\r\nexport function logSoftmax(values, minVal = 1e-40) {\r\n const softMaxOfValues = softmax(values);\r\n return logOfVector(softMaxOfValues, minVal);\r\n}\r\nexport class IncrementalMean {\r\n currentElementCount = 0;\r\n currentMean = 0.0;\r\n addValueToMean(value) {\r\n this.currentElementCount += 1;\r\n this.currentMean += (value + this.currentMean) / this.currentElementCount;\r\n }\r\n}\r\n//# sourceMappingURL=VectorMath.js.map", "const logToStderr=()=>{};\r\nconst log = logToStderr;\r\nexport function alignDTWWindowed(sequence1, sequence2, costFunction, windowMaxLength, centerIndexes) {\r\n windowMaxLength = Math.max(windowMaxLength, 2);\r\n if (sequence1.length == 0 || sequence2.length == 0) {\r\n return {\r\n path: [],\r\n pathCost: 0\r\n };\r\n }\r\n // Compute accumulated cost matrix (transposed)\r\n const { accumulatedCostMatrixTransposed, windowStartOffsets } = computeAccumulatedCostMatrixTransposed(sequence1, sequence2, costFunction, windowMaxLength, centerIndexes);\r\n // Find best path for the computed matrix\r\n const path = computeBestPathTransposed(accumulatedCostMatrixTransposed, windowStartOffsets);\r\n // Best path cost is the bottom right element of the matrix\r\n const columnCount = accumulatedCostMatrixTransposed.length;\r\n const rowCount = accumulatedCostMatrixTransposed[0].length;\r\n const pathCost = accumulatedCostMatrixTransposed[columnCount - 1][rowCount - 1];\r\n // Return\r\n return { path, pathCost };\r\n}\r\nfunction computeAccumulatedCostMatrixTransposed(sequence1, sequence2, costFunction, windowMaxLength, centerIndexes) {\r\n const halfWindowMaxLength = Math.floor(windowMaxLength / 2);\r\n const columnCount = sequence1.length;\r\n const rowCount = Math.min(windowMaxLength, sequence2.length);\r\n const accumulatedCostMatrixTransposed = new Array(columnCount);\r\n // Initialize an array to store window start offsets\r\n const windowStartOffsets = new Int32Array(columnCount);\r\n // Compute accumulated cost matrix column by column\r\n for (let columnIndex = 0; columnIndex < columnCount; columnIndex++) {\r\n // Create new column and add it to the matrix\r\n const currentColumn = new Float32Array(rowCount);\r\n accumulatedCostMatrixTransposed[columnIndex] = currentColumn;\r\n // Compute window center, or use given one\r\n let windowCenter;\r\n if (centerIndexes) {\r\n windowCenter = centerIndexes[columnIndex];\r\n }\r\n else {\r\n windowCenter = Math.floor((columnIndex / columnCount) * sequence2.length);\r\n }\r\n // Compute window start and end offsets\r\n let windowStartOffset = Math.max(windowCenter - halfWindowMaxLength, 0);\r\n let windowEndOffset = windowStartOffset + rowCount;\r\n if (windowEndOffset > sequence2.length) {\r\n windowEndOffset = sequence2.length;\r\n windowStartOffset = windowEndOffset - rowCount;\r\n }\r\n // Store the start offset for this column\r\n windowStartOffsets[columnIndex] = windowStartOffset;\r\n // Get target sequence1 value\r\n const targetSequence1Value = sequence1[columnIndex];\r\n // If this is the first column, fill it only using the 'up' neighbors\r\n if (columnIndex == 0) {\r\n for (let rowIndex = 1; rowIndex < rowCount; rowIndex++) {\r\n const cost = costFunction(targetSequence1Value, sequence2[windowStartOffset + rowIndex]);\r\n const upCost = currentColumn[rowIndex - 1];\r\n currentColumn[rowIndex] = cost + upCost;\r\n }\r\n continue;\r\n }\r\n // If not first column\r\n // Store the column to the left\r\n const leftColumn = accumulatedCostMatrixTransposed[columnIndex - 1];\r\n // Compute the delta between the current window start offset\r\n // and left column's window offset\r\n const windowOffsetDelta = windowStartOffset - windowStartOffsets[columnIndex - 1];\r\n // Compute the accumulated cost for all rows in the window\r\n for (let rowIndex = 0; rowIndex < rowCount; rowIndex++) {\r\n // Compute the cost for current cell\r\n const cost = costFunction(targetSequence1Value, sequence2[windowStartOffset + rowIndex]);\r\n // Retrieve the cost for the 'up' (insertion) neighbor\r\n let upCost = Infinity;\r\n if (rowIndex > 0) {\r\n upCost = currentColumn[rowIndex - 1];\r\n }\r\n // Retrieve the cost for the 'left' (deletion) neighbor\r\n let leftCost = Infinity;\r\n const leftRowIndex = rowIndex + windowOffsetDelta;\r\n if (leftRowIndex < rowCount) {\r\n leftCost = leftColumn[leftRowIndex];\r\n }\r\n // Retrieve the cost for the 'up and left' (match) neighbor\r\n let upAndLeftCost = Infinity;\r\n const upAndLeftRowIndex = leftRowIndex - 1;\r\n if (upAndLeftRowIndex >= 0 && upAndLeftRowIndex < rowCount) {\r\n upAndLeftCost = leftColumn[upAndLeftRowIndex];\r\n }\r\n // Find the minimum of all neighbors\r\n let minimumNeighborCost = minimumOf3(upCost, leftCost, upAndLeftCost);\r\n // If all neighbors are infinity, then it means there is a \"jump\" between the window\r\n // of the current column and the left column, and they don't have overlapping rows.\r\n // In this case, only the cost of the current cell will be used\r\n if (minimumNeighborCost === Infinity) {\r\n minimumNeighborCost = 0;\r\n }\r\n // Write cost + minimum neighbor cost to the current column\r\n currentColumn[rowIndex] = cost + minimumNeighborCost;\r\n }\r\n }\r\n return {\r\n accumulatedCostMatrixTransposed,\r\n windowStartOffsets\r\n };\r\n}\r\nfunction computeBestPathTransposed(accumulatedCostMatrixTransposed, windowStartOffsets) {\r\n const columnCount = accumulatedCostMatrixTransposed.length;\r\n const rowCount = accumulatedCostMatrixTransposed[0].length;\r\n const bestPath = [];\r\n // Start at the bottom right corner and find the best path\r\n // towards the top left\r\n let columnIndex = columnCount - 1;\r\n let rowIndex = rowCount - 1;\r\n while (columnIndex > 0 || rowIndex > 0) {\r\n const windowStartIndex = windowStartOffsets[columnIndex];\r\n const windowStartDelta = columnIndex > 0 ? windowStartIndex - windowStartOffsets[columnIndex - 1] : 0;\r\n // Add the current cell to the best path\r\n bestPath.push({\r\n source: columnIndex,\r\n dest: windowStartIndex + rowIndex\r\n });\r\n // Retrieve the cost for the 'up' (insertion) neighbor\r\n const upRowIndex = rowIndex - 1;\r\n let upCost = Infinity;\r\n if (upRowIndex >= 0) {\r\n upCost = accumulatedCostMatrixTransposed[columnIndex][upRowIndex];\r\n }\r\n // Retrieve the cost for the 'left' (deletion) neighbor\r\n const leftRowIndex = rowIndex + windowStartDelta;\r\n const leftColumnIndex = columnIndex - 1;\r\n let leftCost = Infinity;\r\n if (leftColumnIndex >= 0 && leftRowIndex < rowCount) {\r\n leftCost = accumulatedCostMatrixTransposed[leftColumnIndex][leftRowIndex];\r\n }\r\n // Retrieve the cost for the 'up and left' (match) neighbor\r\n const upAndLeftRowIndex = rowIndex - 1 + windowStartDelta;\r\n const upAndLeftColumnIndex = columnIndex - 1;\r\n let upAndLeftCost = Infinity;\r\n if (upAndLeftColumnIndex >= 0 && upAndLeftRowIndex >= 0 && upAndLeftRowIndex < rowCount) {\r\n upAndLeftCost = accumulatedCostMatrixTransposed[upAndLeftColumnIndex][upAndLeftRowIndex];\r\n }\r\n // If all neighbors have a cost of infinity, it means\r\n // there is a \"jump\" between the window for the current and previous column\r\n if (upCost == Infinity && leftCost == Infinity && upAndLeftCost == Infinity) {\r\n // In that case:\r\n //\r\n // If there are rows above\r\n if (upRowIndex >= 0) {\r\n // Move upward\r\n rowIndex = upRowIndex;\r\n }\r\n else if (leftColumnIndex >= 0) {\r\n // Otherwise, move to the left\r\n columnIndex = leftColumnIndex;\r\n }\r\n else {\r\n // Since we know that either columnIndex > 0 or rowIndex > 0,\r\n // one of these directions must be available.\r\n // This error should never happen\r\n throw new Error(`Unexpected state: columnIndex: ${columnIndex}, rowIndex: ${rowIndex}`);\r\n }\r\n }\r\n else {\r\n // Choose the direction with the smallest cost\r\n const smallestCostDirection = argIndexOfMinimumOf3(upCost, leftCost, upAndLeftCost);\r\n if (smallestCostDirection == 1) {\r\n // Move upward\r\n rowIndex = upRowIndex;\r\n // The upper column index stays the same\r\n }\r\n else if (smallestCostDirection == 2) {\r\n // Move to the left\r\n rowIndex = leftRowIndex;\r\n columnIndex = leftColumnIndex;\r\n }\r\n else {\r\n // Move upward and to the left\r\n rowIndex = upAndLeftRowIndex;\r\n columnIndex = upAndLeftColumnIndex;\r\n }\r\n }\r\n }\r\n bestPath.push({\r\n source: 0,\r\n dest: 0\r\n });\r\n return bestPath.reverse();\r\n}\r\nfunction minimumOf3(x1, x2, x3) {\r\n if (x1 <= x2 && x1 <= x3) {\r\n return x1;\r\n }\r\n else if (x2 <= x3) {\r\n return x2;\r\n }\r\n else {\r\n return x3;\r\n }\r\n}\r\nfunction argIndexOfMinimumOf3(x1, x2, x3) {\r\n if (x1 <= x2 && x1 <= x3) {\r\n return 1;\r\n }\r\n else if (x2 <= x3) {\r\n return 2;\r\n }\r\n else {\r\n return 3;\r\n }\r\n}\r\n//# sourceMappingURL=DTWSequenceAlignmentWindowed.js.map", "export function medianOf5Filter(points) {\r\n // This function computes the moving median with a window of 5 elements.\r\n // I initialized the window such that at the edges of the range no median would be computed.\r\n // This is a form of optimization assuming that computing a median edge points\r\n // is less important.\r\n const pointCount = points.length;\r\n if (pointCount < 5) {\r\n return Float32Array.from(points);\r\n }\r\n const medians = new Float32Array(pointCount);\r\n medians[0] = points[0];\r\n medians[1] = points[1];\r\n medians[pointCount - 2] = points[pointCount - 2];\r\n medians[pointCount - 1] = points[pointCount - 1];\r\n for (let i = 2; i < pointCount - 2; i++) {\r\n medians[i] = medianOf5(points[i - 2], points[i - 1], points[i], points[i + 1], points[i + 2]);\r\n }\r\n return medians;\r\n}\r\nexport function medianOf3Filter(points) {\r\n // This function computes the moving median with a window of 3 elements.\r\n // I initialized the window such that at the edges of the range no median would be computed.\r\n const pointCount = points.length;\r\n if (pointCount < 3) {\r\n return points;\r\n }\r\n const medians = new Float32Array(pointCount);\r\n medians[0] = points[0];\r\n medians[pointCount - 1] = points[pointCount - 1];\r\n for (let i = 1; i < pointCount - 1; i++) {\r\n medians[i] = medianOf3(points[i - 1], points[i], points[i + 1]);\r\n }\r\n return medians;\r\n}\r\nexport function medianOf5(a, b, c, d, e) {\r\n // These swapping computation should be faster than separately using the minimum and maximum\r\n // functions but maybe less readable.\r\n // Ensure b is greater or equal to a (swap if needed)\r\n if (b < a) {\r\n [a, b] = [b, a];\r\n }\r\n // Ensure d is greater or equal to c (swap if needed)\r\n if (d < c) {\r\n [c, d] = [d, c];\r\n }\r\n // What this part does is compute the two middle medians of the first 4 elements\r\n // given to the function (a, b, c, d), but it doesn't actually determine their relative order:\r\n const firstMedianOfABCD = Math.max(a, c); // First median of a, b, c, d\r\n const secondMedianOfABCD = Math.min(b, d); // Second median of a, b, c, d\r\n // Now in relation to all five numbers, the median can only be either\r\n // the first median of ABCD, the second median of ABCD, or E:\r\n return medianOf3(firstMedianOfABCD, secondMedianOfABCD, e);\r\n}\r\nexport function medianOf3(a, b, c) {\r\n // This function uses a decision tree to find the median of three numbers.\r\n //\r\n // I tried to ensure that the comparison preserved the natural altering of\r\n // a, b and c such that in case that they are given already in order,\r\n // then all the initial branches would be directly taken.\r\n // Possible orderings:\r\n //\r\n // a, b, c\r\n // a, c, b\r\n // b, a, c\r\n // b, c, a\r\n // c, a, b\r\n // c, b, a\r\n if (a <= b) {\r\n if (b <= c) {\r\n return b; // a, b, c\r\n }\r\n else if (a <= c) {\r\n return c; // a, c, b\r\n }\r\n else {\r\n return a; // c, a, b\r\n }\r\n }\r\n else {\r\n if (a <= c) {\r\n return a; // b, a, c\r\n }\r\n else if (b <= c) {\r\n return c; // b, c, a\r\n }\r\n else {\r\n return b; // c, b, a\r\n }\r\n }\r\n}\r\n//# sourceMappingURL=MedianFilter.js.map", "import {Logger,Timer,chalk,extendDeep,getRawAudioDuration,splitToWords,includesPunctuation,isAllWhitespace,containsInvalidCodepoint,concatUint8Arrays,getIntegerRange,clip,yieldToEventLoop,getTopKIndexes,getTokenRepetitionScore,getDeflateCompressionMetricsForString} from '../../src/engine/helpers.mjs';\r\nimport {indexOfMax,meanOfVector,medianOfVector,softmax,sumAndSumOfSquaresOfVector,sumVector} from './VectorMath.mjs';\r\nimport {alignDTWWindowed} from './DTW.mjs';\r\nimport {medianOf5Filter} from './MedianFilter.mjs';\r\nexport class Whisper { constructor(){this.modelId='tiny';this.isMultiligualModel=true;this.specialTokens=multilingualSpecialTokens;this.randomGen={selectRandomIndexFromDistribution:()=>0};} async initializeIfNeeded(){} async initializeTokenizerIfNeeded(){} async encodeSamples(samples,custom,options){await this.context.encodeSamples(samples,options.threadCount);}\r\n async recognize(rawAudio, task, language, options, logitFilter, callbacks) {\r\n await this.initializeIfNeeded(options, callbacks);\r\n const logger = new Logger(callbacks.logLevel);\r\n options = extendDeep(defaultWhisperOptions, options);\r\n options.model = this.modelId;\r\n if (!options.timestampAccuracy) {\r\n options.timestampAccuracy = this.defaultTimestampAccuracy;\r\n }\r\n if (options.maxTokensPerPart > largestMaximumTokensPerPart) {\r\n //throw new Error(`The number of tokens per part cannot be greater than ${largestMaximumTokensPerPart}`)\r\n options.maxTokensPerPart = largestMaximumTokensPerPart;\r\n }\r\n const audioSamples = rawAudio.audioChannels[0];\r\n const sampleRate = rawAudio.sampleRate;\r\n const prompt = options.prompt;\r\n const decodeTimestampTokens = options.decodeTimestampTokens;\r\n const maxAudioSamplesPerPart = sampleRate * (this.audioWindowSeconds ?? 30);\r\n let previousPartTextTokens = [];\r\n let timeline = [];\r\n let allDecodedTokens = [];\r\n let wrappedLogitFilter;\r\n if (logitFilter) {\r\n wrappedLogitFilter = (logits, partDecodedTokens, isFirstPart, isFinalPart) => {\r\n return logitFilter(logits, [...allDecodedTokens, ...partDecodedTokens], isFirstPart, isFinalPart);\r\n };\r\n }\r\n for (let audioOffset = 0; audioOffset < audioSamples.length;) {\r\n callbacks?.abortSignal?.throwIfAborted();\r\n const segmentStartTime = audioOffset / sampleRate;\r\n await logger.startAsync(`\\nPrepare audio part at time position ${segmentStartTime.toFixed(2)}`, undefined, chalk.magentaBright);\r\n const audioPartSamples = audioSamples.subarray(audioOffset, audioOffset + maxAudioSamplesPerPart);\r\n const audioPartRawAudio = { audioChannels: [audioPartSamples], sampleRate };\r\n const audioPartDuration = getRawAudioDuration(audioPartRawAudio);\r\n logger.end();\r\n await this.encodeSamples(audioPartSamples, false, options, callbacks);\r\n await logger.startAsync(`Prepare prompt`);\r\n const isFirstPart = audioOffset === 0;\r\n const isFinalPart = audioOffset + maxAudioSamplesPerPart >= audioSamples.length;\r\n let initialTokens = [];\r\n if (isFirstPart && prompt) {\r\n let promptTokens = this.textToTokens(prompt);\r\n if (promptTokens.length > largestMaximumTokensPerPart) {\r\n promptTokens = promptTokens.slice(promptTokens.length - largestMaximumTokensPerPart);\r\n }\r\n initialTokens = [this.specialTokens.startOfPromptToken, ...promptTokens];\r\n }\r\n else if (options.autoPromptParts && previousPartTextTokens.length > 0) {\r\n initialTokens = [this.specialTokens.startOfPromptToken, ...previousPartTextTokens];\r\n }\r\n initialTokens = [...initialTokens, ...this.getTextStartTokens(language, task, !decodeTimestampTokens)];\r\n //logger.log(`Initial tokens count: ${initialTokens.length}`)\r\n logger.end();\r\n let { decodedTokens: partTokens, decodedTokensConfidence: partTokensConfidence, decodedTokensCrossAttentionQKs: partTokensCrossAttentionQKs, decodedTokensDecodingTime: partTokensDecodingTime, decodedTokensInferenceTime: partTokensInferenceTime, decodedTokensOverheadTime: partTokensOverheadTime, } = await this.decodeTokens(initialTokens, audioPartDuration, isFirstPart, isFinalPart, options, wrappedLogitFilter, callbacks);\r\n const lastToken = partTokens[partTokens.length - 1];\r\n const lastTokenIsTimestamp = this.isTimestampToken(lastToken);\r\n let audioEndOffset;\r\n if (!isFinalPart && lastTokenIsTimestamp) {\r\n const timePosition = this.timestampTokenToSeconds(lastToken);\r\n audioEndOffset = audioOffset + Math.floor(timePosition * sampleRate);\r\n }\r\n else {\r\n audioEndOffset = Math.min(audioOffset + maxAudioSamplesPerPart, audioSamples.length);\r\n }\r\n const segmentEndTime = audioEndOffset / sampleRate;\r\n const segmentFrameCount = this.secondsRangeToFrameCount(segmentStartTime, segmentEndTime);\r\n await logger.startAsync(`Extract timeline for part (timestamp accuracy: ${options.timestampAccuracy})`);\r\n // Prepare tokens\r\n partTokens = partTokens.slice(initialTokens.length);\r\n partTokensConfidence = partTokensConfidence.slice(initialTokens.length);\r\n partTokensCrossAttentionQKs = partTokensCrossAttentionQKs.slice(initialTokens.length);\r\n // Find alignment path using the cross attention query-key tensors\r\n const alignmentHeadsIndexesToUse = undefined;\r\n const alignmentPath = await this.findAlignmentPathFromCrossAttentionQKs(partTokensCrossAttentionQKs, partTokens, 0, segmentFrameCount, alignmentHeadsIndexesToUse);\r\n // Generate timeline from alignment path\r\n const partTimeline = await this.getTokenTimelineFromAlignmentPath(alignmentPath, partTokens, segmentStartTime, segmentEndTime, partTokensConfidence);\r\n if (callbacks?.onPart) {\r\n const partWordTimeline = this.tokenTimelineToWordTimeline(partTimeline, language);\r\n const partTranscript = this.tokensToText(partTokens);\r\n callbacks.onPart(partTranscript, partTimeline, partWordTimeline);\r\n }\r\n // Add tokens to output\r\n allDecodedTokens.push(...partTokens);\r\n timeline.push(...partTimeline);\r\n // Determine compression ratio for recognized text (normalized to lowercase) of this part\r\n const compressionRatioForPart = (await getDeflateCompressionMetricsForString(this.tokensToText(partTokens).toLocaleLowerCase())).ratio;\r\n // If the recognized text isn't too repetitive\r\n if (compressionRatioForPart < options.repetitionThreshold) {\r\n // Set current part tokens as the previous part text tokens\r\n previousPartTextTokens = partTokens.filter(token => this.isTextToken(token));\r\n }\r\n else {\r\n // Otherwise, set previous part tokens to an empty array\r\n previousPartTextTokens = [];\r\n }\r\n audioOffset = audioEndOffset;\r\n logger.end();\r\n if (logger.logLevelGreaterOrEqualTo('trace')) {\r\n const promptProcessingTime = partTokensDecodingTime[0];\r\n const medianTokenDecodingTime = medianOfVector(partTokensDecodingTime.slice(1));\r\n const medianTokenInferenceTime = medianOfVector(partTokensInferenceTime.slice(1));\r\n const medianOverheadTime = medianOfVector(partTokensOverheadTime.slice(1));\r\n logger.log(`${chalk.blueBright('Context')}: ${initialTokens.length + partTokens.length} tokens (${initialTokens.length} prompt, ${partTokens.length} decoded)\\n${chalk.blueBright('Prompt processing time')}: ${promptProcessingTime.toFixed(1)}ms\\n${chalk.blueBright('Median token decode time')}: ${medianTokenDecodingTime.toFixed(1)}ms (${medianTokenInferenceTime.toFixed(1)}ms inference, ${medianOverheadTime.toFixed(2)}ms overhead)`, 'trace');\r\n }\r\n }\r\n // Convert token timeline to word timeline\r\n timeline = this.tokenTimelineToWordTimeline(timeline, language);\r\n // Convert tokens to transcript\r\n const transcript = this.tokensToText(allDecodedTokens).trim();\r\n logger.end();\r\n return { transcript, timeline, allDecodedTokens };\r\n }\r\n async align(rawAudio, transcript, sourceLanguage, task, whisperAlignmentOptions, callbacks) {\r\n await this.initializeTokenizerIfNeeded(callbacks);\r\n const logger = new Logger(callbacks.logLevel);\r\n logger.start(`Tokenize transcript`);\r\n whisperAlignmentOptions = extendDeep(defaultWhisperAlignmentOptions, whisperAlignmentOptions);\r\n if (!whisperAlignmentOptions.timestampAccuracy) {\r\n whisperAlignmentOptions.timestampAccuracy = this.defaultTimestampAccuracy;\r\n }\r\n if (whisperAlignmentOptions.maxTokensPerPart > largestMaximumTokensPerPart) {\r\n //throw new Error(`The number of tokens per part cannot be greater than ${largestMaximumTokensPerPart}`)\r\n whisperAlignmentOptions.maxTokensPerPart = largestMaximumTokensPerPart;\r\n }\r\n const targetLanguage = task === 'transcribe' ? sourceLanguage : 'en';\r\n let simplifiedTranscript = '';\r\n {\r\n const words = (await splitToWords(transcript, targetLanguage)).nonPunctuationWords;\r\n simplifiedTranscript = words.join(' ');\r\n }\r\n // Tokenize the transcript\r\n const simplifiedTranscriptTokens = this.textToTokens(simplifiedTranscript);\r\n // Initialize custom logit filter that allows only the transcript tokens to be decoded\r\n // in order.\r\n const endOfTextToken = this.specialTokens.endOfTextToken;\r\n const logitFilter = (logits, decodedTokens, isFirstPart, isFinalPart) => {\r\n const decodedTextTokens = decodedTokens.filter(token => this.isTextToken(token));\r\n const nextTokenToDecode = simplifiedTranscriptTokens[decodedTextTokens.length] ?? endOfTextToken;\r\n const newLogits = logits.map((logit, index) => {\r\n if (index === nextTokenToDecode) {\r\n return logit;\r\n }\r\n // If it's the final part, the ent-of-text token logit is set to -Infinity.\r\n // This will force to force all transcript tokens to be decoded even if the model doesn't\r\n // recognize them.\r\n if (!isFinalPart && index === endOfTextToken) {\r\n return logit;\r\n }\r\n return -Infinity;\r\n });\r\n return newLogits;\r\n };\r\n // Set options for alignment\r\n const options = {\r\n model: this.modelId,\r\n enableGPU: whisperAlignmentOptions.enableGPU,\r\n threadCount: whisperAlignmentOptions.threadCount,\r\n gpuDeviceIndex: whisperAlignmentOptions.gpuDeviceIndex,\r\n temperature: 0.0,\r\n prompt: undefined,\r\n topCandidateCount: 1,\r\n punctuationThreshold: Infinity,\r\n autoPromptParts: false,\r\n maxTokensPerPart: whisperAlignmentOptions.maxTokensPerPart,\r\n suppressRepetition: false,\r\n repetitionThreshold: Infinity,\r\n decodeTimestampTokens: true,\r\n endTokenThreshold: whisperAlignmentOptions.endTokenThreshold,\r\n includeEndTokenInCandidates: false,\r\n timestampAccuracy: whisperAlignmentOptions.timestampAccuracy,\r\n seed: undefined,\r\n };\r\n logger.end();\r\n // Recognize\r\n const { timeline, allDecodedTokens } = await this.recognize(rawAudio, task, sourceLanguage, options, logitFilter, callbacks);\r\n {\r\n // If not all tokens were decoded, add the remaining ones to the timeline\r\n const lastKnownWordStartTime = timeline.length > 0 ? timeline[timeline.length - 1].startTime : 0;\r\n const allDecodedTextTokens = allDecodedTokens.filter(token => this.isTextToken(token));\r\n while (allDecodedTextTokens.length < simplifiedTranscriptTokens.length) {\r\n const token = simplifiedTranscriptTokens[allDecodedTextTokens.length];\r\n const tokenText = this.tokenToText(token);\r\n allDecodedTextTokens.push(token);\r\n const newTokenEntry = {\r\n type: 'token',\r\n text: tokenText,\r\n startTime: lastKnownWordStartTime,\r\n endTime: lastKnownWordStartTime,\r\n id: token,\r\n confidence: 0,\r\n };\r\n if (tokenText.startsWith(' ') || timeline.length === 0) {\r\n timeline.push({\r\n type: 'word',\r\n text: tokenText.trim(),\r\n startTime: lastKnownWordStartTime,\r\n endTime: lastKnownWordStartTime,\r\n timeline: [newTokenEntry],\r\n confidence: 0,\r\n });\r\n }\r\n else {\r\n const lastWordEntry = timeline[timeline.length - 1];\r\n lastWordEntry.timeline.push(newTokenEntry);\r\n lastWordEntry.text += tokenText;\r\n }\r\n }\r\n }\r\n return timeline;\r\n }\r\n async decodeTokens(initialTokens, audioDuration, isFirstPart, isFinalPart, options, logitFilter, callbacks) {\r\n const logger = new Logger(callbacks.logLevel);\r\n await logger.startAsync('Decode text tokens with Whisper decoder model');\r\n options = extendDeep(defaultWhisperOptions, options);\r\n // Get token information\r\n const endOfTextToken = this.specialTokens.endOfTextToken;\r\n const timestampTokensStart = this.specialTokens.timestampTokensStart;\r\n const suppressedTextTokens = this.getSuppressedTextTokens();\r\n const suppressedMetadataTokens = this.getSuppressedMetadataTokens();\r\n const allowedPunctuationMarks = this.getAllowedPunctuationMarks();\r\n const spaceToken = this.textToTokens(' ')[0];\r\n // Initialize variables for decoding loop\r\n let decodedTokens = initialTokens.slice();\r\n let decodedTokensTimestampLogits = [];\r\n let decodedTokensConfidence = [];\r\n let decodedTokensCrossAttentionQKs = [];\r\n for (let i = 0; i < decodedTokens.length; i++) {\r\n decodedTokensTimestampLogits.push(new Float32Array(1501)); // Should the length be 1500 instead?\r\n decodedTokensConfidence.push(1.0);\r\n decodedTokensCrossAttentionQKs.push(undefined);\r\n }\r\n let lastTimestampTokenIndex = -1;\r\n let timestampTokenSeenCount = 0;\r\n let bufferedTokensToPrint = [];\r\n // Define method to add a token to output\r\n const addToken = (tokenToAdd, timestampLogits, confidence, crossAttentionQKs) => {\r\n decodedTokens.push(tokenToAdd);\r\n decodedTokensTimestampLogits.push(timestampLogits);\r\n decodedTokensConfidence.push(confidence);\r\n decodedTokensCrossAttentionQKs.push(crossAttentionQKs);\r\n if (callbacks?.onToken) {\r\n callbacks.onToken(tokenToAdd, this.tokenToBytes(tokenToAdd));\r\n }\r\n };\r\n const maxTokensPerPart = Math.min(options.maxTokensPerPart, 448);\r\n let decodedTokensInferenceTime = [];\r\n let decodedTokensDecodingTime = [];\r\n const tokenDecodingTimeTimer = new Timer();\r\n // Start decoding loop\r\n for (let decodedTokenCount = 0; decodedTokenCount < maxTokensPerPart; decodedTokenCount++) {\r\n callbacks?.abortSignal?.throwIfAborted();\r\n if (decodedTokenCount > 0) {\r\n decodedTokensDecodingTime.push(tokenDecodingTimeTimer.getElapsedTimeAndRestart());\r\n }\r\n const isInitialState = decodedTokens.length === initialTokens.length;\r\n const atLeastOneTextTokenDecoded = decodedTokens.slice(initialTokens.length).some(token => this.isTextToken(token));\r\n // Prepare values for decoder\r\n const tokensToDecode = isInitialState ? decodedTokens : [decodedTokens[decodedTokens.length - 1]];\r\n const offset = isInitialState ? 0 : decodedTokens.length;\r\n //// Infer\r\n const tokenInferenceTimer = new Timer();\r\n await this.context.decodeTokens(tokensToDecode, offset, options.threadCount);\r\n decodedTokensInferenceTime.push(tokenInferenceTimer.elapsedTime);\r\n // Get cross-attention QKs\r\n //const getCrossAttentionQKsTimer = new Timer()\r\n const tokenCrossAttentionQKs = await this.context.getCrossAttentionQKs();\r\n //getCrossAttentionQKsTimer.logAndRestart('getCrossAttentionQKs')\r\n // Get logits\r\n const allTokenLogits = this.context.getLogits();\r\n // Suppress metadata tokens in the suppression set\r\n for (const suppressedTokenIndex of suppressedMetadataTokens) {\r\n allTokenLogits[suppressedTokenIndex] = -Infinity;\r\n }\r\n if (!atLeastOneTextTokenDecoded) {\r\n // If in initial state, suppress end-of-text token\r\n allTokenLogits[endOfTextToken] = -Infinity;\r\n }\r\n const timestampTokenLogits = allTokenLogits.subarray(timestampTokensStart);\r\n const decodeTimestampTokenIfNeeded = () => {\r\n // Try to decode a timestamp token, if needed\r\n // If timestamp tokens is disabled in options, don't decode a timestamp\r\n if (!options.decodeTimestampTokens) {\r\n return false;\r\n }\r\n // If this is the first token in the part, unconditionally decode a timestamp token\r\n // for time 0.0\r\n if (isInitialState) {\r\n addToken(timestampTokensStart, timestampTokenLogits, 1.0, tokenCrossAttentionQKs);\r\n return true;\r\n }\r\n const previousTokenWasTimestamp = this.isTimestampToken(decodedTokens[decodedTokens.length - 1]);\r\n const secondPreviousTokenWasTimestamp = this.isTimestampToken(decodedTokens[decodedTokens.length - 2]);\r\n // If there are two successive timestamp tokens decoded, or the previous timestamp was the first token,\r\n // don't decode a timestamp\r\n if (previousTokenWasTimestamp &&\r\n ((decodedTokens.length === initialTokens.length + 1) || secondPreviousTokenWasTimestamp)) {\r\n return false;\r\n }\r\n // Derive token probabilities\r\n const allTokenProbabilities = softmax(allTokenLogits, 1.0);\r\n const nonTimestampTokenProbs = allTokenProbabilities.subarray(0, timestampTokensStart);\r\n // Find highest probability non-timestamp token\r\n const indexOfMaxNonTimestampProb = indexOfMax(nonTimestampTokenProbs);\r\n const valueOfMaxNonTimestampProb = nonTimestampTokenProbs[indexOfMaxNonTimestampProb];\r\n const valueOfMaxNonTimestampLogProb = Math.log(valueOfMaxNonTimestampProb);\r\n // Find highest probability timestamp token\r\n const timestampTokenProbs = allTokenProbabilities.subarray(timestampTokensStart);\r\n const indexOfMaxTimestampProb = indexOfMax(timestampTokenProbs);\r\n // Compute the log of the sum of probabilities of the timestamp tokens\r\n const sumOfTimestampTokenProbs = sumVector(timestampTokenProbs);\r\n const logSumOfTimestampTokenProbs = Math.log(sumOfTimestampTokenProbs);\r\n // If the sum isn't greater than the log probability of the highest non-timestamp token,\r\n // don't decode a timestamp\r\n if (logSumOfTimestampTokenProbs <= valueOfMaxNonTimestampLogProb) {\r\n return false;\r\n }\r\n // Decode a timestamp token\r\n timestampTokenSeenCount += 1;\r\n if (previousTokenWasTimestamp) {\r\n // If previously decoded token was a timestamp token, repeat it\r\n const previousToken = decodedTokens[decodedTokens.length - 1];\r\n const previousTokenTimestampLogits = decodedTokensTimestampLogits[decodedTokensTimestampLogits.length - 1];\r\n const previousTokenConfidence = decodedTokensConfidence[decodedTokensConfidence.length - 1];\r\n addToken(previousToken, previousTokenTimestampLogits, previousTokenConfidence, tokenCrossAttentionQKs);\r\n lastTimestampTokenIndex = decodedTokens.length;\r\n }\r\n else {\r\n // Otherwise decode the highest probability timestamp\r\n const timestampToken = timestampTokensStart + indexOfMaxTimestampProb;\r\n const confidence = allTokenProbabilities[timestampToken];\r\n addToken(timestampToken, timestampTokenLogits, confidence, tokenCrossAttentionQKs);\r\n }\r\n return true;\r\n };\r\n // Call the method to decode timestamp token if needed\r\n const timestampTokenDecoded = decodeTimestampTokenIfNeeded();\r\n if (timestampTokenDecoded) {\r\n await yieldToEventLoop();\r\n continue;\r\n }\r\n // Decode a non-timestamp token\r\n let nonTimestampTokenLogits = allTokenLogits.slice(0, timestampTokensStart);\r\n let shouldDecodeEndfOfTextToken = false;\r\n // If at least one text token was decoded, and the end-of-text token's probability is\r\n // sufficiently higher than the second highest ranked token, then accept end-of-text\r\n if (atLeastOneTextTokenDecoded) {\r\n const endOfTextTokenLogit = nonTimestampTokenLogits[endOfTextToken];\r\n const otherTokensLogits = nonTimestampTokenLogits.slice();\r\n otherTokensLogits[endOfTextToken] = -Infinity;\r\n const indexOfMaximumOtherTokenLogit = indexOfMax(otherTokensLogits);\r\n const maximumOtherTokenLogit = nonTimestampTokenLogits[indexOfMaximumOtherTokenLogit];\r\n const endProbabilities = softmax([endOfTextTokenLogit, maximumOtherTokenLogit], 1.0);\r\n if (endProbabilities[0] > options.endTokenThreshold) {\r\n shouldDecodeEndfOfTextToken = true;\r\n }\r\n }\r\n if (logitFilter) {\r\n // Apply custom logit filter function if given\r\n nonTimestampTokenLogits = logitFilter(nonTimestampTokenLogits, decodedTokens, isFirstPart, isFinalPart);\r\n // If the custom filter set the end-of-text token to be Infinity, or -Infinity,\r\n // then override any previous decision and accept or reject it, respectively\r\n if (nonTimestampTokenLogits[endOfTextToken] === Infinity) {\r\n shouldDecodeEndfOfTextToken = true;\r\n }\r\n else if (nonTimestampTokenLogits[endOfTextToken] === -Infinity) {\r\n shouldDecodeEndfOfTextToken = false;\r\n }\r\n // If filter caused all word token logits to be -Infinity, then there is no\r\n // other token to decode. Fall back to accept end-of-text\r\n if (nonTimestampTokenLogits.subarray(0, endOfTextToken).every(logit => logit === -Infinity)) {\r\n shouldDecodeEndfOfTextToken = true;\r\n }\r\n }\r\n else {\r\n // Otherwise, suppress text tokens in the suppression set\r\n for (const suppressedTokenIndex of suppressedTextTokens) {\r\n nonTimestampTokenLogits[suppressedTokenIndex] = -Infinity;\r\n }\r\n // Suppress the space token if at initial state\r\n if (isInitialState) {\r\n nonTimestampTokenLogits[spaceToken] = -Infinity;\r\n }\r\n }\r\n // If end-of-text token should be decoded, then add it and break\r\n // out of the loop\r\n if (shouldDecodeEndfOfTextToken) {\r\n addToken(endOfTextToken, timestampTokenLogits, 1.0, tokenCrossAttentionQKs);\r\n break;\r\n }\r\n // Suppress end-of-text token if it shouldn't be included in candidates\r\n if (!options.includeEndTokenInCandidates) {\r\n nonTimestampTokenLogits[endOfTextToken] = -Infinity;\r\n }\r\n // Find top candidates\r\n const sortedTopCandidateTokens = getTopKIndexes(nonTimestampTokenLogits, options.topCandidateCount, true);\r\n let topCandidates = Array.from(sortedTopCandidateTokens).map(token => {\r\n const logit = nonTimestampTokenLogits[token];\r\n return {\r\n token,\r\n logit,\r\n text: this.tokenToText(token, true)\r\n };\r\n });\r\n // Apply repetition suppression if enabled\r\n if (options.suppressRepetition) {\r\n // Using some hardcoded constants, for now:\r\n const tokenWindowSize = 30;\r\n const thresholdMatchLength = 4;\r\n const thresholdCycleRepetitionCount = 3;\r\n const filteredCandidates = [];\r\n for (const candidate of topCandidates) {\r\n const decodedTextTokens = decodedTokens.filter(token => this.isTextToken(token));\r\n const lastDecodedTextTokens = decodedTextTokens\r\n .slice(Math.max(decodedTextTokens.length - tokenWindowSize, 0))\r\n .reverse();\r\n const { longestMatchLength, longestCycleRepetitionCount } = getTokenRepetitionScore([candidate.token, ...lastDecodedTextTokens]);\r\n if (longestMatchLength >= thresholdMatchLength || longestCycleRepetitionCount >= thresholdCycleRepetitionCount) {\r\n continue;\r\n }\r\n filteredCandidates.push(candidate);\r\n }\r\n // If all candidates have been filtered out, accept an end-of-text token\r\n if (filteredCandidates.length === 0) {\r\n filteredCandidates.push({\r\n token: endOfTextToken,\r\n logit: Infinity,\r\n text: this.tokenToText(endOfTextToken, true)\r\n });\r\n }\r\n topCandidates = filteredCandidates;\r\n }\r\n // Compute top candidate probabilities\r\n const topCandidateProbabilities = softmax(topCandidates.map(a => a.logit), options.temperature);\r\n // Find highest ranking punctuation token\r\n const rankOfPromisingPunctuationToken = topCandidates.findIndex((entry, index) => {\r\n const tokenText = this.tokenToText(entry.token).trim();\r\n const isPunctuationToken = allowedPunctuationMarks.includes(tokenText);\r\n if (!isPunctuationToken) {\r\n return false;\r\n }\r\n const tokenProb = topCandidateProbabilities[index];\r\n return tokenProb >= options.punctuationThreshold;\r\n });\r\n // Find rank of space token\r\n let rankOfSpaceToken = topCandidates.findIndex(candidate => candidate.token === spaceToken);\r\n if (rankOfSpaceToken < 0) {\r\n rankOfSpaceToken = Infinity;\r\n }\r\n // Choose token\r\n let chosenCandidateRank;\r\n // Select a high-ranking punctuation token if found, and it has\r\n // a rank higher than the space token,\r\n if (rankOfPromisingPunctuationToken >= 0 &&\r\n rankOfPromisingPunctuationToken < rankOfSpaceToken) {\r\n chosenCandidateRank = rankOfPromisingPunctuationToken;\r\n }\r\n else {\r\n // Otherwise, select randomly from top k distribution\r\n chosenCandidateRank = this.randomGen.selectRandomIndexFromDistribution(topCandidateProbabilities);\r\n }\r\n // Add chosen token\r\n const chosenToken = topCandidates[chosenCandidateRank].token;\r\n const chosenTokenConfidence = topCandidateProbabilities[chosenCandidateRank];\r\n addToken(chosenToken, timestampTokenLogits, chosenTokenConfidence, tokenCrossAttentionQKs);\r\n // If chosen token is the end-of-text token, break\r\n if (chosenToken === endOfTextToken) {\r\n break;\r\n }\r\n // Print token if needed\r\n if (this.isTextToken(chosenToken)) {\r\n bufferedTokensToPrint.push(chosenToken);\r\n let textToPrint = this.tokensToText(bufferedTokensToPrint);\r\n // If the decoded text is valid, print it\r\n if (!containsInvalidCodepoint(textToPrint)) {\r\n if (isFirstPart && decodedTokens.every(token => this.isMetadataToken(token))) {\r\n textToPrint = textToPrint.trimStart();\r\n }\r\n logger.write(textToPrint);\r\n bufferedTokensToPrint = [];\r\n }\r\n }\r\n await yieldToEventLoop();\r\n }\r\n if (decodedTokensDecodingTime.length === decodedTokensInferenceTime.length - 1) {\r\n decodedTokensDecodingTime.push(tokenDecodingTimeTimer.getElapsedTimeAndRestart());\r\n }\r\n // If at least two timestamp tokens were decoded and it's not the final part,\r\n // truncate up to the last timestamp token\r\n if (timestampTokenSeenCount >= 2 && !isFinalPart) {\r\n const sliceEndTokenIndex = lastTimestampTokenIndex;\r\n decodedTokens = decodedTokens.slice(0, sliceEndTokenIndex);\r\n decodedTokensTimestampLogits = decodedTokensTimestampLogits.slice(0, sliceEndTokenIndex);\r\n decodedTokensConfidence = decodedTokensConfidence.slice(0, sliceEndTokenIndex);\r\n decodedTokensCrossAttentionQKs = decodedTokensCrossAttentionQKs.slice(0, sliceEndTokenIndex);\r\n decodedTokensDecodingTime = decodedTokensDecodingTime.slice(0, sliceEndTokenIndex);\r\n decodedTokensInferenceTime = decodedTokensInferenceTime.slice(0, sliceEndTokenIndex);\r\n }\r\n const decodedTokensOverheadTime = decodedTokensDecodingTime.map((time, index) => time - decodedTokensInferenceTime[index]);\r\n logger.write('\\n');\r\n logger.end();\r\n // Return the decoded tokens\r\n return {\r\n decodedTokens,\r\n decodedTokensTimestampLogits,\r\n decodedTokensConfidence,\r\n decodedTokensCrossAttentionQKs,\r\n decodedTokensDecodingTime,\r\n decodedTokensInferenceTime,\r\n decodedTokensOverheadTime,\r\n };\r\n }\r\n tokenTimelineToWordTimeline(tokenTimeline, language) {\r\n function isSeparatorCharacter(char) {\r\n const nonSeparatingPunctuation = [`'`, `-`, `.`, `\u00B7`, `\u2022`];\r\n if (nonSeparatingPunctuation.includes(char)) {\r\n return false;\r\n }\r\n return isAllWhitespace(char) || includesPunctuation(char);\r\n }\r\n function startsWithSeparatorCharacter(text) {\r\n return isSeparatorCharacter(text[0]);\r\n }\r\n function endsWithSeparatorCharacter(text) {\r\n return isSeparatorCharacter(text[text.length - 1]);\r\n }\r\n if (language !== 'zh' && language !== 'ja') {\r\n tokenTimeline = tokenTimeline.filter(entry => this.isTextToken(entry.id));\r\n }\r\n const resultTimeline = [];\r\n let groups = [];\r\n for (let tokenIndex = 0; tokenIndex < tokenTimeline.length; tokenIndex++) {\r\n const entry = tokenTimeline[tokenIndex];\r\n const previousEntry = tokenIndex > 0 ? tokenTimeline[tokenIndex - 1] : undefined;\r\n const text = entry.text;\r\n const previousEntryText = previousEntry?.text;\r\n if (groups.length === 0 ||\r\n text === '' ||\r\n startsWithSeparatorCharacter(text) ||\r\n (previousEntryText != null && endsWithSeparatorCharacter(previousEntryText))) {\r\n groups.push([entry]);\r\n }\r\n else {\r\n groups[groups.length - 1].push(entry);\r\n }\r\n }\r\n {\r\n const splitGroups = [];\r\n for (let groupIndex = 0; groupIndex < groups.length; groupIndex++) {\r\n const group = groups[groupIndex];\r\n const nextGroup = groups[groupIndex + 1];\r\n if (group.length > 1 &&\r\n group[group.length - 1].text === '.' &&\r\n (!nextGroup || [' ', '['].includes(nextGroup[0].text[0]))) {\r\n splitGroups.push(group.slice(0, group.length - 1));\r\n splitGroups.push(group.slice(group.length - 1));\r\n }\r\n else {\r\n splitGroups.push(group);\r\n }\r\n }\r\n groups = splitGroups;\r\n }\r\n for (const group of groups) {\r\n let groupText = this.tokensToText(group.map(entry => entry.id));\r\n if (groupText === '') {\r\n continue;\r\n }\r\n const startTime = group[0].startTime;\r\n const endTime = group[group.length - 1].endTime;\r\n let confidence = undefined;\r\n if (group[0].confidence != null) {\r\n confidence = meanOfVector(group.map(entry => entry.confidence));\r\n }\r\n const newEntry = {\r\n type: 'word',\r\n text: groupText.trim(),\r\n startTime,\r\n endTime,\r\n confidence,\r\n timeline: group,\r\n };\r\n resultTimeline.push(newEntry);\r\n }\r\n return resultTimeline;\r\n }\r\n async getTokenTimelineFromAlignmentPath(alignmentPath, tokens, startTimeOffset, endTimeOffset, tokensConfidence, correctionAmount = 0.0) {\r\n if (alignmentPath.length === 0) {\r\n return [];\r\n }\r\n const tokenTimeline = [];\r\n for (let pathIndex = 0; pathIndex < alignmentPath.length; pathIndex++) {\r\n if (pathIndex !== 0 && alignmentPath[pathIndex].source === alignmentPath[pathIndex - 1].source) {\r\n continue;\r\n }\r\n const tokenMappingEntry = alignmentPath[pathIndex];\r\n const tokenIndex = tokenMappingEntry.source;\r\n const token = tokens[tokenIndex];\r\n const tokenConfidence = tokensConfidence ? tokensConfidence[tokenIndex] : undefined;\r\n const tokenText = this.tokenToText(token, true);\r\n let startTime = startTimeOffset + (tokenMappingEntry.dest * 0.02);\r\n startTime = Math.max(startTime + correctionAmount, startTimeOffset);\r\n if (tokenTimeline.length > 0) {\r\n tokenTimeline[tokenTimeline.length - 1].endTime = startTime;\r\n }\r\n tokenTimeline.push({\r\n type: 'token',\r\n text: tokenText,\r\n id: token,\r\n startTime,\r\n endTime: -1,\r\n confidence: tokenConfidence\r\n });\r\n }\r\n if (tokenTimeline.length > 0) {\r\n tokenTimeline[tokenTimeline.length - 1].endTime = endTimeOffset;\r\n }\r\n return tokenTimeline;\r\n }\r\n async findAlignmentPathFromCrossAttentionQKs(crossAttentionQKs, tokens, partStartFrameIndex, partEndFrameIndex, alignmentHeadsIndexesToUse) {\r\n const partFrameCount = partEndFrameIndex - partStartFrameIndex;\r\n if (partFrameCount === 0 || tokens.length === 0 || crossAttentionQKs.length === 0 || crossAttentionQKs[0].data.length === 0) {\r\n return [];\r\n }\r\n // crossAttentionQKs internal dimensions: [heads, tokens = 1, frames]\r\n const tokenCount = crossAttentionQKs.length;\r\n const headCount = Number(crossAttentionQKs[0].dimensions[0]);\r\n const frameCount = Number(crossAttentionQKs[0].dimensions[2]);\r\n if (!alignmentHeadsIndexesToUse) {\r\n alignmentHeadsIndexesToUse = getIntegerRange(0, headCount);\r\n }\r\n // Initialize attention head arrays\r\n const attentionHeads = []; // dimensions: [heads, tokens, frames]\r\n for (const headIndex of alignmentHeadsIndexesToUse) {\r\n const head = [];\r\n const startIndexInBuffer = headIndex * frameCount;\r\n const endIndexInBuffer = startIndexInBuffer + partFrameCount;\r\n for (let tokenIndex = 0; tokenIndex < tokenCount; tokenIndex++) {\r\n const data = crossAttentionQKs[tokenIndex].data.subarray(startIndexInBuffer, endIndexInBuffer);\r\n head.push(data);\r\n }\r\n attentionHeads.push(head);\r\n }\r\n // Initialize settings\r\n const applySoftmax = true;\r\n const normalize = true;\r\n const applyMedianFilter = true;\r\n const anchorTimestampTokens = false;\r\n const softmaxTemperature = 1.0;\r\n // Apply softmax to each token's frames, if enabled\r\n if (applySoftmax) {\r\n for (const head of attentionHeads) {\r\n for (let tokenIndex = 0; tokenIndex < tokenCount; tokenIndex++) {\r\n head[tokenIndex] = softmax(head[tokenIndex], softmaxTemperature);\r\n }\r\n }\r\n }\r\n // Normalize all weights in each individual head, if enabled\r\n if (normalize) {\r\n for (const head of attentionHeads) {\r\n let sumOfAllWeightsForHead = 0;\r\n let sumOfAllSquaredWeightsForHead = 0;\r\n let countOfAllWeightsForHead = 0;\r\n for (const tokenFrames of head) {\r\n const { sum, sumOfSquares } = sumAndSumOfSquaresOfVector(tokenFrames);\r\n sumOfAllWeightsForHead += sum;\r\n sumOfAllSquaredWeightsForHead += sumOfSquares;\r\n countOfAllWeightsForHead += tokenFrames.length;\r\n }\r\n const meanOfAllWeightsForHead = sumOfAllWeightsForHead / countOfAllWeightsForHead;\r\n const varianceOfAllWeightsForHead = sumOfAllSquaredWeightsForHead / countOfAllWeightsForHead;\r\n const stdDeviationOfAllWeightsForHead = Math.sqrt(varianceOfAllWeightsForHead);\r\n const stdDeviationReciprocal = 1.0 / (stdDeviationOfAllWeightsForHead + 1e-10);\r\n for (const tokenFrames of head) {\r\n for (let frameIndex = 0; frameIndex < tokenFrames.length; frameIndex++) {\r\n tokenFrames[frameIndex] = (tokenFrames[frameIndex] - meanOfAllWeightsForHead) * stdDeviationReciprocal;\r\n }\r\n }\r\n }\r\n }\r\n // Apply median filter to each token's frames, if enabled\r\n if (applyMedianFilter) {\r\n for (const head of attentionHeads) {\r\n for (let tokenIndex = 0; tokenIndex < tokenCount; tokenIndex++) {\r\n head[tokenIndex] = medianOf5Filter(head[tokenIndex]);\r\n }\r\n }\r\n }\r\n // Compute the mean of the selected attention heads for each frame\r\n const frameMeansForToken = [];\r\n for (let tokenIndex = 0; tokenIndex < tokenCount; tokenIndex++) {\r\n const meansForFrames = new Float32Array(partFrameCount);\r\n for (let frameIndex = 0; frameIndex < partFrameCount; frameIndex++) {\r\n let sum = 0;\r\n for (const head of attentionHeads) {\r\n sum += head[tokenIndex][frameIndex];\r\n }\r\n const frameMean = sum / attentionHeads.length;\r\n meansForFrames[frameIndex] = frameMean;\r\n }\r\n frameMeansForToken.push(meansForFrames);\r\n }\r\n // Anchor timestamp tokens timestamps to their original values, if enabled\r\n if (anchorTimestampTokens) {\r\n const timestampTokensStart = this.specialTokens.timestampTokensStart;\r\n for (let tokenIndex = 0; tokenIndex < tokens.length; tokenIndex++) {\r\n const token = tokens[tokenIndex];\r\n if (this.isTimestampToken(token)) {\r\n let timestampFrame = token - timestampTokensStart;\r\n timestampFrame = clip(timestampFrame, partStartFrameIndex, partEndFrameIndex - 1);\r\n frameMeansForToken[tokenIndex][timestampFrame] = 100;\r\n }\r\n }\r\n }\r\n // Perform DTW to align tokens indexes to frame indexes\r\n const tokenIndexes = getIntegerRange(0, tokenCount);\r\n const frameIndexes = getIntegerRange(0, partFrameCount);\r\n const positionPenalty = this.alignmentPositionPenalty ?? 0;\r\n let { path } = alignDTWWindowed(tokenIndexes, frameIndexes, (tokenIndex, frameIndex) => {\r\n const cost = -frameMeansForToken[tokenIndex][frameIndex];\r\n if (!positionPenalty) return cost;\r\n const distance = tokenIndex / Math.max(1,tokenCount-1) - frameIndex / Math.max(1,partFrameCount-1);\r\n return cost + positionPenalty * distance * distance;\r\n }, partFrameCount);\r\n path = path.map(entry => ({ source: entry.source, dest: partStartFrameIndex + entry.dest }));\r\n return path;\r\n }\r\n getTextStartTokens(language, task, disableTimestamps = false) {\r\n const startOfTextToken = this.specialTokens.startOfTextToken;\r\n let tokens;\r\n if (this.isMultiligualModel) {\r\n const languageToken = this.specialTokens.languageTokensStart + languageIdLookup[language];\r\n const taskToken = task === 'translate' ? this.specialTokens.translateTaskToken : this.specialTokens.transcribeTaskToken;\r\n tokens = [startOfTextToken, languageToken, taskToken];\r\n }\r\n else {\r\n tokens = [startOfTextToken];\r\n }\r\n if (disableTimestamps) {\r\n tokens.push(this.specialTokens.noTimestampsToken);\r\n }\r\n return tokens;\r\n }\r\n tokenToText(token, includeMetadataTokens = false) {\r\n return this.tokensToText([token], includeMetadataTokens);\r\n }\r\n tokenToBytes(token) {\r\n return this.tiktoken.decode_single_token_bytes(token);\r\n }\r\n tokensToBytes(tokens) {\r\n const tokensBytes = tokens.map(token => this.tokenToBytes(token));\r\n const concatenatedTokensBytes = concatUint8Arrays(tokensBytes);\r\n return concatenatedTokensBytes;\r\n }\r\n tokensToText(tokens, includeMetadataTokens = false) {\r\n tokens.forEach(token => this.assertIsValidToken(token));\r\n if (includeMetadataTokens === false) {\r\n tokens = tokens.filter(token => this.isTextToken(token));\r\n }\r\n if (tokens.length === 0) {\r\n return '';\r\n }\r\n try {\r\n const decodedBytes = this.tiktoken.decode(new Uint32Array(tokens));\r\n const textDecoder = new TextDecoder();\r\n const decodedString = textDecoder.decode(decodedBytes);\r\n return decodedString;\r\n }\r\n catch {\r\n return '[TOKENIZER_FAILED]';\r\n }\r\n }\r\n textToTokens(text) {\r\n return Array.from(this.tiktoken.encode(text));\r\n }\r\n isTextToken(token) {\r\n return token < this.specialTokens.endOfTextToken;\r\n }\r\n isMetadataToken(token) {\r\n return token >= this.specialTokens.endOfTextToken;\r\n }\r\n isLanguageToken(token) {\r\n return token >= this.specialTokens.languageTokensStart && token < this.specialTokens.languageTokensEnd;\r\n }\r\n isTimestampToken(token) {\r\n return token >= this.specialTokens.timestampTokensStart;\r\n }\r\n isNonTimestampToken(token) {\r\n return token < this.specialTokens.timestampTokensStart;\r\n }\r\n timestampTokenToSeconds(timestampToken) {\r\n this.assertIsValidToken(timestampToken);\r\n if (this.isNonTimestampToken(timestampToken)) {\r\n throw new Error(`Invalid timestamp token: ${timestampToken}`);\r\n }\r\n let seconds = (timestampToken - this.specialTokens.timestampTokensStart) * 0.02;\r\n seconds = clip(seconds, 0.0, 30.0);\r\n return seconds;\r\n }\r\n isValidToken(token) {\r\n //return token < this.tokenConfig.timestampTokensEnd\r\n return token <= this.specialTokens.timestampTokensEnd;\r\n }\r\n assertIsValidToken(token) {\r\n if (!this.isValidToken(token)) {\r\n throw new Error(`Invalid token: ${token}`);\r\n }\r\n }\r\n secondsToFrame(seconds) {\r\n return Math.floor((seconds + 1e-9) / 0.02);\r\n }\r\n secondsRangeToFrameCount(startSeconds, endSeconds) {\r\n if (startSeconds > endSeconds) {\r\n throw new Error(`Invalid range: ${startSeconds} > ${endSeconds}`);\r\n }\r\n return this.secondsToFrame(endSeconds - startSeconds);\r\n }\r\n languageTokenToLanguageIndex(languageToken) {\r\n if (!this.isLanguageToken(languageToken)) {\r\n throw new Error(`Invalid language token: ${languageToken}`);\r\n }\r\n let languageIndex = languageToken - this.specialTokens.languageTokensStart;\r\n if (this.isEnglishOnlyModel) {\r\n languageIndex += 1;\r\n }\r\n }\r\n get isEnglishOnlyModel() {\r\n return this.isMultiligualModel === false;\r\n }\r\n get isLargeV3Model() {\r\n return this.modelId.startsWith('large-v3');\r\n }\r\n get melBandCount() {\r\n return this.isLargeV3Model ? 128 : 80;\r\n }\r\n get defaultTimestampAccuracy() {\r\n if (this.modelId.startsWith('tiny') || this.modelId.startsWith('base')) {\r\n return 'high';\r\n }\r\n else {\r\n return 'medium';\r\n }\r\n }\r\n getSuppressedTokens() {\r\n return [\r\n ...this.getSuppressedTextTokens(),\r\n ...this.getSuppressedMetadataTokens(),\r\n ];\r\n }\r\n getSuppressedTextTokens() {\r\n const allowedPunctuationMarks = this.getAllowedPunctuationMarks();\r\n const nonWordTokensData = this.getWordTokenData().nonWordTokenData;\r\n const suppressedTextTokens = nonWordTokensData\r\n .filter(entry => !allowedPunctuationMarks.includes(entry.text))\r\n .map(entry => entry.id);\r\n return suppressedTextTokens;\r\n }\r\n getSuppressedMetadataTokens() {\r\n if (this.isMultiligualModel) {\r\n return [50256, ...getIntegerRange(50258, 50364)];\r\n }\r\n else {\r\n return [...getIntegerRange(50257, 50363)];\r\n }\r\n }\r\n getAllowedPunctuationMarks() {\r\n const generalPunctuation = [`'`, ',', '.', '?', '!'];\r\n let allowedPunctuation;\r\n if (this.isMultiligualModel) {\r\n const spanish = ['\u00BF', '\u00A1'];\r\n const chinese = ['\u3001', '\uFF0C', '\u3002', '\uFF1F', '\uFF01'];\r\n const arabic = ['\u060C', '\u061F'];\r\n const various = ['\u00B7', '\u2022', '\u30FB'];\r\n allowedPunctuation = [...generalPunctuation, ...arabic, ...chinese, ...spanish, ...various];\r\n }\r\n else {\r\n allowedPunctuation = generalPunctuation;\r\n }\r\n return allowedPunctuation;\r\n }\r\n getWordTokenData() {\r\n const wordTokenData = [];\r\n const nonWordTokenData = [];\r\n for (let i = 0; i < this.specialTokens.endOfTextToken; i++) {\r\n const tokenText = this.tokenToText(i, false);\r\n const isNonWordToken = /^[\\s\\p{Punctuation}\\p{Symbol}]+$/u.test(tokenText);\r\n const containsInvalidUTF8 = containsInvalidCodepoint(tokenText);\r\n if (isNonWordToken && (this.isEnglishOnlyModel || !containsInvalidUTF8)) {\r\n nonWordTokenData.push({\r\n id: i,\r\n text: tokenText,\r\n });\r\n }\r\n else {\r\n wordTokenData.push({\r\n id: i,\r\n text: tokenText,\r\n });\r\n }\r\n }\r\n return { wordTokenData, nonWordTokenData };\r\n }\r\n getTokensData(tokens) {\r\n const tokensData = [];\r\n for (const token of tokens) {\r\n tokensData.push({\r\n id: token,\r\n text: this.tokenToText(token, true),\r\n });\r\n }\r\n return tokensData;\r\n }\r\n}\r\nconst languageIdLookup = {\r\n 'en': 0,\r\n 'zh': 1,\r\n 'de': 2,\r\n 'es': 3,\r\n 'ru': 4,\r\n 'ko': 5,\r\n 'fr': 6,\r\n 'ja': 7,\r\n 'pt': 8,\r\n 'tr': 9,\r\n 'pl': 10,\r\n 'ca': 11,\r\n 'nl': 12,\r\n 'ar': 13,\r\n 'sv': 14,\r\n 'it': 15,\r\n 'id': 16,\r\n 'hi': 17,\r\n 'fi': 18,\r\n 'vi': 19,\r\n 'iw': 20,\r\n 'uk': 21,\r\n 'el': 22,\r\n 'ms': 23,\r\n 'cs': 24,\r\n 'ro': 25,\r\n 'da': 26,\r\n 'hu': 27,\r\n 'ta': 28,\r\n 'no': 29,\r\n 'th': 30,\r\n 'ur': 31,\r\n 'hr': 32,\r\n 'bg': 33,\r\n 'lt': 34,\r\n 'la': 35,\r\n 'mi': 36,\r\n 'ml': 37,\r\n 'cy': 38,\r\n 'sk': 39,\r\n 'te': 40,\r\n 'fa': 41,\r\n 'lv': 42,\r\n 'bn': 43,\r\n 'sr': 44,\r\n 'az': 45,\r\n 'sl': 46,\r\n 'kn': 47,\r\n 'et': 48,\r\n 'mk': 49,\r\n 'br': 50,\r\n 'eu': 51,\r\n 'is': 52,\r\n 'hy': 53,\r\n 'ne': 54,\r\n 'mn': 55,\r\n 'bs': 56,\r\n 'kk': 57,\r\n 'sq': 58,\r\n 'sw': 59,\r\n 'gl': 60,\r\n 'mr': 61,\r\n 'pa': 62,\r\n 'si': 63,\r\n 'km': 64,\r\n 'sn': 65,\r\n 'yo': 66,\r\n 'so': 67,\r\n 'af': 68,\r\n 'oc': 69,\r\n 'ka': 70,\r\n 'be': 71,\r\n 'tg': 72,\r\n 'sd': 73,\r\n 'gu': 74,\r\n 'am': 75,\r\n 'yi': 76,\r\n 'lo': 77,\r\n 'uz': 78,\r\n 'fo': 79,\r\n 'ht': 80,\r\n 'ps': 81,\r\n 'tk': 82,\r\n 'nn': 83,\r\n 'mt': 84,\r\n 'sa': 85,\r\n 'lb': 86,\r\n 'my': 87,\r\n 'bo': 88,\r\n 'tl': 89,\r\n 'mg': 90,\r\n 'as': 91,\r\n 'tt': 92,\r\n 'haw': 93,\r\n 'ln': 94,\r\n 'ha': 95,\r\n 'ba': 96,\r\n 'jw': 97,\r\n 'su': 98,\r\n //'yue': 99\r\n};\r\nconst alignmentHeadsIndices = {\r\n 'tiny': [14, 18, 20, 21, 22, 23,],\r\n 'tiny.en': [6, 12, 17, 18, 19, 20, 21, 22,],\r\n 'base': [25, 34, 35, 39, 41, 42, 44, 46,],\r\n 'base.en': [27, 39, 41, 45, 47,],\r\n 'small': [63, 69, 96, 100, 103, 104, 108, 115, 117, 125,],\r\n 'small.en': [78, 84, 87, 92, 98, 101, 103, 108, 112, 116, 118, 120, 121, 122, 123, 126, 131, 134, 136,],\r\n 'medium': [223, 244, 255, 257, 320, 372,],\r\n 'medium.en': [180, 225, 236, 238, 244, 256, 260, 265, 284, 286, 295, 298, 303, 320, 323, 329, 334, 348,],\r\n 'large-v1': [199, 222, 224, 237, 447, 451, 457, 462, 475,],\r\n 'large-v2': [212, 277, 331, 332, 333, 355, 356, 364, 371, 379, 391, 422, 423, 443, 449, 452, 465, 467, 473, 505, 521, 532, 555,],\r\n 'large-v3': [140, 217, 258, 272, 321, 354, 391, 424, 481, 506,],\r\n 'large-v3-turbo': [44, 51, 63, 66, 71, 74,],\r\n};\r\nconst melFilterbanks80 = [\r\n /* 0 */ { startIndex: 1, weights: [0.02486259490251541,] },\r\n /* 1 */ { startIndex: 1, weights: [0.001990821911022067, 0.022871771827340126,] },\r\n /* 2 */ { startIndex: 2, weights: [0.003981643822044134, 0.02088095061480999,] },\r\n /* 3 */ { startIndex: 3, weights: [0.0059724655002355576, 0.018890129402279854,] },\r\n /* 4 */ { startIndex: 4, weights: [0.007963287644088268, 0.01689930632710457,] },\r\n /* 5 */ { startIndex: 5, weights: [0.009954108856618404, 0.014908484183251858,] },\r\n /* 6 */ { startIndex: 6, weights: [0.011944931000471115, 0.012917662039399147,] },\r\n /* 7 */ { startIndex: 7, weights: [0.013935752213001251, 0.010926840826869011,] },\r\n /* 8 */ { startIndex: 8, weights: [0.015926575288176537, 0.0089360186830163,] },\r\n /* 9 */ { startIndex: 9, weights: [0.017917396500706673, 0.006945197004824877,] },\r\n /* 10 */ { startIndex: 10, weights: [0.01990821771323681, 0.004954374860972166,] },\r\n /* 11 */ { startIndex: 11, weights: [0.021899040788412094, 0.0029635531827807426,] },\r\n /* 12 */ { startIndex: 12, weights: [0.02388986200094223, 0.0009727313299663365,] },\r\n /* 13 */ { startIndex: 13, weights: [0.025880683213472366,] },\r\n /* 14 */ { startIndex: 14, weights: [0.025835324078798294,] },\r\n /* 15 */ { startIndex: 14, weights: [0.0010180906392633915, 0.023844502866268158,] },\r\n /* 16 */ { startIndex: 15, weights: [0.003008912317454815, 0.021853681653738022,] },\r\n /* 17 */ { startIndex: 16, weights: [0.004999734461307526, 0.019862858578562737,] },\r\n /* 18 */ { startIndex: 17, weights: [0.006990555673837662, 0.0178720373660326,] },\r\n /* 19 */ { startIndex: 18, weights: [0.008981377817690372, 0.015881216153502464,] },\r\n /* 20 */ { startIndex: 19, weights: [0.010972199961543083, 0.013890394009649754,] },\r\n /* 21 */ { startIndex: 20, weights: [0.01296302117407322, 0.011899571865797043,] },\r\n /* 22 */ { startIndex: 21, weights: [0.01495384331792593, 0.009908749721944332,] },\r\n /* 23 */ { startIndex: 22, weights: [0.01694466546177864, 0.007917927578091621,] },\r\n /* 24 */ { startIndex: 23, weights: [0.018935488536953926, 0.005927106365561485,] },\r\n /* 25 */ { startIndex: 24, weights: [0.020874010398983955, 0.004040425643324852,] },\r\n /* 26 */ { startIndex: 25, weights: [0.022114217281341553, 0.0033186059445142746,] },\r\n /* 27 */ { startIndex: 26, weights: [0.02173672430217266, 0.0036109676584601402,] },\r\n /* 28 */ { startIndex: 27, weights: [0.020497702062129974, 0.004762193653732538,] },\r\n /* 29 */ { startIndex: 28, weights: [0.018486659973859787, 0.006592618301510811,] },\r\n /* 30 */ { startIndex: 29, weights: [0.01585603691637516, 0.00896277092397213,] },\r\n /* 31 */ { startIndex: 30, weights: [0.012738768011331558, 0.011751330457627773,] },\r\n /* 32 */ { startIndex: 31, weights: [0.009250369854271412, 0.014853144995868206,] },\r\n /* 33 */ { startIndex: 32, weights: [0.005490840878337622, 0.018177473917603493, 0.0028155462350696325,] },\r\n /* 34 */ { startIndex: 33, weights: [0.0015463664894923568, 0.01632951945066452, 0.007420188747346401,] },\r\n /* 35 */ { startIndex: 35, weights: [0.011181050911545753, 0.012018864043056965,] },\r\n /* 36 */ { startIndex: 36, weights: [0.006065350491553545, 0.016561277210712433, 0.004360878840088844,] },\r\n /* 37 */ { startIndex: 37, weights: [0.0010297985281795263, 0.012770536355674267, 0.009707189165055752,] },\r\n /* 38 */ { startIndex: 39, weights: [0.006986402906477451, 0.01485429983586073, 0.004391219466924667,] },\r\n /* 39 */ { startIndex: 40, weights: [0.001418047584593296, 0.011486922390758991, 0.010089744813740253, 0.00040022286702878773,] },\r\n /* 40 */ { startIndex: 42, weights: [0.005411104764789343, 0.014735566452145576, 0.006518189795315266,] },\r\n /* 41 */ { startIndex: 44, weights: [0.00827841367572546, 0.012277561239898205, 0.00396781275048852,] },\r\n /* 42 */ { startIndex: 45, weights: [0.002187808509916067, 0.010184479877352715, 0.00998187530785799, 0.0022864851634949446,] },\r\n /* 43 */ { startIndex: 47, weights: [0.00386943481862545, 0.011274894699454308, 0.008466221392154694, 0.0013397691072896123,] },\r\n /* 44 */ { startIndex: 49, weights: [0.004820294212549925, 0.011678251437842846, 0.007608682848513126, 0.0010091039584949613,] },\r\n /* 45 */ { startIndex: 51, weights: [0.005156961735337973, 0.011507894843816757, 0.007301822770386934, 0.0011901655234396458,] },\r\n /* 46 */ { startIndex: 53, weights: [0.004982104524970055, 0.010863498784601688, 0.007451189681887627, 0.001791381393559277,] },\r\n /* 47 */ { startIndex: 55, weights: [0.004385921638458967, 0.009832492098212242, 0.007973956875503063, 0.002732589840888977,] },\r\n /* 48 */ { startIndex: 57, weights: [0.0034474546555429697, 0.008491347543895245, 0.008797688409686089, 0.00394382793456316,] },\r\n /* 49 */ { startIndex: 59, weights: [0.0022357646375894547, 0.0069067515432834625, 0.009859241545200348, 0.005364237818866968, 0.0008692338014952838,] },\r\n /* 50 */ { startIndex: 61, weights: [0.0008110002381727099, 0.005136650986969471, 0.00946230161935091, 0.0069410777650773525, 0.0027783995028585196,] },\r\n /* 51 */ { startIndex: 64, weights: [0.003231203882023692, 0.007237049750983715, 0.00862883497029543, 0.004773912951350212, 0.0009189908159896731,] },\r\n /* 52 */ { startIndex: 66, weights: [0.001233637798577547, 0.0049433219246566296, 0.008653006516397, 0.006818502210080624, 0.003248583758249879,] },\r\n /* 53 */ { startIndex: 69, weights: [0.0026164355222135782, 0.006051854696124792, 0.008880467154085636, 0.005574479699134827, 0.002268492942675948,] },\r\n /* 54 */ { startIndex: 71, weights: [0.0002863667905330658, 0.003467798000201583, 0.0066492292098701, 0.00787146482616663, 0.004809896927326918, 0.0017483289120718837,] },\r\n /* 55 */ { startIndex: 74, weights: [0.0009245910914614797, 0.0038708120118826628, 0.00681703258305788, 0.007283343467861414, 0.004448124207556248, 0.0016129047144204378,] },\r\n /* 56 */ { startIndex: 77, weights: [0.0011703289346769452, 0.003898728871718049, 0.006627128925174475, 0.0070473202504217625, 0.004421714693307877, 0.0017961094854399562,] },\r\n /* 57 */ { startIndex: 80, weights: [0.0010892992140725255, 0.003615982597693801, 0.006142666097730398, 0.007102936040610075, 0.004671447444707155, 0.002239959081634879,] },\r\n /* 58 */ { startIndex: 83, weights: [0.0007392280967906117, 0.0030791081953793764, 0.005418988410383463, 0.007397185545414686, 0.005145462695509195, 0.002893739379942417, 0.0006420162972062826,] },\r\n /* 59 */ { startIndex: 86, weights: [0.00017068670422304422, 0.0023375742603093386, 0.004504461772739887, 0.0066713495180010796, 0.005798479542136192, 0.003713231300935149, 0.0016279831761494279,] },\r\n /* 60 */ { startIndex: 90, weights: [0.0014345343224704266, 0.0034412189852446318, 0.005447904113680124, 0.006591092795133591, 0.004660011734813452, 0.002728930441662669, 0.0007978491485118866,] },\r\n /* 61 */ { startIndex: 93, weights: [0.0004075043834745884, 0.002265830524265766, 0.004124156199395657, 0.005982482805848122, 0.005700822453945875, 0.003912510350346565, 0.0021241982467472553, 0.0003358862304594368,] },\r\n /* 62 */ { startIndex: 97, weights: [0.0010099108330905437, 0.002730846870690584, 0.004451782442629337, 0.006172718480229378, 0.005150905344635248, 0.0034948070533573627, 0.0018387088784947991, 0.0001826105872169137,] },\r\n /* 63 */ { startIndex: 101, weights: [0.0012943691108375788, 0.002888072282075882, 0.004481775686144829, 0.006075479090213776, 0.0048866597935557365, 0.003353001084178686, 0.0018193417927250266, 0.00028568264679051936,] },\r\n /* 64 */ { startIndex: 105, weights: [0.0013131388695910573, 0.0027890161145478487, 0.004264893010258675, 0.0057407706044614315, 0.004859979264438152, 0.0034397069830447435, 0.0020194342359900475, 0.0005991620710119605,] },\r\n /* 65 */ { startIndex: 109, weights: [0.0011121684219688177, 0.002478930866345763, 0.0038456933107227087, 0.0052124555222690105, 0.005028639920055866, 0.0037133716978132725, 0.002398103242740035, 0.0010828346712514758,] },\r\n /* 66 */ { startIndex: 113, weights: [0.0007317548734135926, 0.0019974694587290287, 0.003263183869421482, 0.004528898745775223, 0.005355686880648136, 0.004137659445405006, 0.0029196315445005894, 0.0017016039928421378, 0.0004835762665607035,] },\r\n /* 67 */ { startIndex: 117, weights: [0.00020713974663522094, 0.0013792773243039846, 0.0025514145381748676, 0.003723552217707038, 0.004895689897239208, 0.004680895246565342, 0.0035529187880456448, 0.0024249425623565912, 0.0012969663366675377, 0.00016899015463422984,] },\r\n /* 68 */ { startIndex: 122, weights: [0.0006545265205204487, 0.0017400053329765797, 0.0028254841454327106, 0.003910962492227554, 0.004996441304683685, 0.0042709787376224995, 0.003226396394893527, 0.002181813819333911, 0.0011372314766049385, 9.264905384043232e-05,] },\r\n /* 69 */ { startIndex: 127, weights: [0.000854626705404371, 0.001859853626228869, 0.002865080488845706, 0.003870307235047221, 0.00487553421407938, 0.00408313749358058, 0.003115783678367734, 0.0021484296303242445, 0.001181075582280755, 0.0002137213887181133,] },\r\n /* 70 */ { startIndex: 132, weights: [0.0008483415003865957, 0.0017792496364563704, 0.0027101580053567886, 0.0036410661414265633, 0.004571974277496338, 0.004079728852957487, 0.003183893393725157, 0.002288057701662183, 0.0013922222424298525, 0.0004963868414051831,] },\r\n /* 71 */ { startIndex: 137, weights: [0.0006716204807162285, 0.0015337044605985284, 0.002395788673311472, 0.0032578727696090937, 0.004119956865906715, 0.004227725323289633, 0.0033981208689510822, 0.0025685166474431753, 0.0017389123095199466, 0.0009093079133890569, 7.970355363795534e-05,] },\r\n /* 72 */ { startIndex: 142, weights: [0.0003559796023182571, 0.0011543278815224767, 0.0019526762189343572, 0.002751024439930916, 0.0035493727773427963, 0.004347721114754677, 0.0037299629766494036, 0.002961693098768592, 0.00219342322088778, 0.0014251532265916467, 0.0006568834069184959,] },\r\n /* 73 */ { startIndex: 148, weights: [0.0006682946113869548, 0.0014076193328946829, 0.0021469437051564455, 0.002886268775910139, 0.0036255933810025454, 0.004154576454311609, 0.0034431067761033773, 0.0027316368650645018, 0.0020201667211949825, 0.0013086966937407851, 0.0005972267827019095,] },\r\n /* 74 */ { startIndex: 153, weights: [9.926508937496692e-05, 0.0007839298341423273, 0.001468594535253942, 0.0021532592363655567, 0.0028379240538924932, 0.0035225888714194298, 0.0039915177039802074, 0.0033326479606330395, 0.002673778682947159, 0.002014909405261278, 0.0013560398947447538, 0.0006971705006435513, 3.8301113818306476e-05,] },\r\n /* 75 */ { startIndex: 159, weights: [0.00010181095422012731, 0.0007358568836934865, 0.0013699028640985489, 0.0020039486698806286, 0.002637994708493352, 0.0032720407471060753, 0.003906086552888155, 0.0033682563807815313, 0.0027580985333770514, 0.002147940918803215, 0.0015377833042293787, 0.0009276255150325596, 0.000317467754939571,] },\r\n /* 76 */ { startIndex: 166, weights: [0.0005530364578589797, 0.0011402058880776167, 0.0017273754347115755, 0.0023145449813455343, 0.002901714527979493, 0.003488884074613452, 0.003523340215906501, 0.002958292607218027, 0.002393245231360197, 0.0018281979719176888, 0.001263150479644537, 0.0006981031037867069, 0.0001330557424807921,] },\r\n /* 77 */ { startIndex: 172, weights: [0.0002608386566862464, 0.0008045974536798894, 0.0013483562506735325, 0.0018921148730441928, 0.0024358737282454967, 0.002979632467031479, 0.003523391205817461, 0.003251380519941449, 0.0027281083166599274, 0.002204835880547762, 0.001681563793681562, 0.001158291706815362, 0.0006350195035338402, 0.00011174729297636077,] },\r\n /* 78 */ { startIndex: 179, weights: [0.0003849811910185963, 0.0008885387214832008, 0.001392096164636314, 0.0018956535495817661, 0.00239921105094254, 0.002902768552303314, 0.0034063260536640882, 0.003132763085886836, 0.0026481777895241976, 0.0021635922603309155, 0.0016790067311376333, 0.0011944210855290294, 0.0007098356145434082, 0.00022525011445395648,] },\r\n /* 79 */ { startIndex: 186, weights: [0.000366741674952209, 0.0008330700220540166, 0.0012993983691558242, 0.0017657268326729536, 0.0022320549469441175, 0.002698383294045925, 0.0031647118739783764, 0.003141313325613737, 0.002692554146051407, 0.0022437951993197203, 0.00179503601975739, 0.0013462770730257034, 0.000897518009878695, 0.0004487590049393475,] },\r\n];\r\nconst melFilterbank128 = [\r\n /* 0 */ { startIndex: 1, weights: [0.012373986653983593,] },\r\n /* 1 */ { startIndex: 1, weights: [0.030392564833164215,] },\r\n /* 2 */ { startIndex: 2, weights: [0.024747973307967186,] },\r\n /* 3 */ { startIndex: 2, weights: [0.018018579110503197,] },\r\n /* 4 */ { startIndex: 3, weights: [0.037121959030628204,] },\r\n /* 5 */ { startIndex: 3, weights: [0.005644591990858316, 0.006729394197463989,] },\r\n /* 6 */ { startIndex: 4, weights: [0.03603715822100639,] },\r\n /* 7 */ { startIndex: 5, weights: [0.019103379920125008,] },\r\n /* 8 */ { startIndex: 5, weights: [0.023663168773055077,] },\r\n /* 9 */ { startIndex: 6, weights: [0.031477365642786026,] },\r\n /* 10 */ { startIndex: 6, weights: [0.011289183981716633, 0.0010848019737750292,] },\r\n /* 11 */ { startIndex: 7, weights: [0.04168175160884857,] },\r\n /* 12 */ { startIndex: 8, weights: [0.013458788394927979,] },\r\n /* 13 */ { startIndex: 8, weights: [0.029307762160897255,] },\r\n /* 14 */ { startIndex: 9, weights: [0.025832774117588997,] },\r\n /* 15 */ { startIndex: 9, weights: [0.016933776438236237,] },\r\n /* 16 */ { startIndex: 10, weights: [0.038206759840250015,] },\r\n /* 17 */ { startIndex: 10, weights: [0.004559790249913931, 0.007814195938408375,] },\r\n /* 18 */ { startIndex: 11, weights: [0.03495235741138458,] },\r\n /* 19 */ { startIndex: 12, weights: [0.020188182592391968,] },\r\n /* 20 */ { startIndex: 12, weights: [0.022578367963433266,] },\r\n /* 21 */ { startIndex: 13, weights: [0.032562170177698135,] },\r\n /* 22 */ { startIndex: 13, weights: [0.010204383172094822, 0.0021696039475500584,] },\r\n /* 23 */ { startIndex: 14, weights: [0.04059694707393646,] },\r\n /* 24 */ { startIndex: 15, weights: [0.01454358920454979,] },\r\n /* 25 */ { startIndex: 15, weights: [0.028222959488630295,] },\r\n /* 26 */ { startIndex: 16, weights: [0.026917576789855957,] },\r\n /* 27 */ { startIndex: 16, weights: [0.015848975628614426,] },\r\n /* 28 */ { startIndex: 17, weights: [0.039291560649871826,] },\r\n /* 29 */ { startIndex: 17, weights: [0.0034749882761389017, 0.008898998610675335,] },\r\n /* 30 */ { startIndex: 18, weights: [0.03386755287647247,] },\r\n /* 31 */ { startIndex: 19, weights: [0.021272985264658928,] },\r\n /* 32 */ { startIndex: 19, weights: [0.021493567153811455,] },\r\n /* 33 */ { startIndex: 20, weights: [0.033646970987319946,] },\r\n /* 34 */ { startIndex: 20, weights: [0.009119580499827862, 0.003254405688494444,] },\r\n /* 35 */ { startIndex: 21, weights: [0.03951214626431465,] },\r\n /* 36 */ { startIndex: 22, weights: [0.01562839187681675,] },\r\n /* 37 */ { startIndex: 22, weights: [0.027138158679008484,] },\r\n /* 38 */ { startIndex: 23, weights: [0.028002377599477768,] },\r\n /* 39 */ { startIndex: 23, weights: [0.014764172956347466,] },\r\n /* 40 */ { startIndex: 24, weights: [0.040376365184783936,] },\r\n /* 41 */ { startIndex: 24, weights: [0.0023806870449334383, 0.010202637873589993,] },\r\n /* 42 */ { startIndex: 25, weights: [0.03161146119236946,] },\r\n /* 43 */ { startIndex: 26, weights: [0.024547001346945763,] },\r\n /* 44 */ { startIndex: 26, weights: [0.015329193323850632, 0.001665837480686605,] },\r\n /* 45 */ { startIndex: 27, weights: [0.036729052662849426,] },\r\n /* 46 */ { startIndex: 28, weights: [0.020097099244594574,] },\r\n /* 47 */ { startIndex: 28, weights: [0.016931025311350822, 0.0029026553966104984,] },\r\n /* 48 */ { startIndex: 29, weights: [0.032844990491867065,] },\r\n /* 49 */ { startIndex: 30, weights: [0.023520048707723618,] },\r\n /* 50 */ { startIndex: 30, weights: [0.011038944125175476, 0.010725829750299454,] },\r\n /* 51 */ { startIndex: 31, weights: [0.022718291729688644,] },\r\n /* 52 */ { startIndex: 32, weights: [0.03227872774004936,] },\r\n /* 53 */ { startIndex: 32, weights: [0.00011626833293121308, 0.022853482514619827,] },\r\n /* 54 */ { startIndex: 33, weights: [0.008563440293073654, 0.014979788102209568,] },\r\n /* 55 */ { startIndex: 34, weights: [0.015513983555138111, 0.008514906279742718,] },\r\n /* 56 */ { startIndex: 35, weights: [0.02110680378973484, 0.003326520323753357,] },\r\n /* 57 */ { startIndex: 36, weights: [0.02547064796090126,] },\r\n /* 58 */ { startIndex: 37, weights: [0.02735907956957817,] },\r\n /* 59 */ { startIndex: 37, weights: [0.0006585361552424729, 0.02383812516927719,] },\r\n /* 60 */ { startIndex: 38, weights: [0.0034435924608260393, 0.021224552765488625,] },\r\n /* 61 */ { startIndex: 39, weights: [0.0053584217093884945, 0.019425557926297188,] },\r\n /* 62 */ { startIndex: 40, weights: [0.006493247114121914, 0.018355421721935272,] },\r\n /* 63 */ { startIndex: 41, weights: [0.006931380834430456, 0.017935046926140785,] },\r\n /* 64 */ { startIndex: 42, weights: [0.0067496825940907, 0.018091518431901932,] },\r\n /* 65 */ { startIndex: 43, weights: [0.006018991116434336, 0.018757672980427742,] },\r\n /* 66 */ { startIndex: 44, weights: [0.004804528318345547, 0.019871728494763374,] },\r\n /* 67 */ { startIndex: 45, weights: [0.0031662785913795233, 0.02137690968811512, 0.001253173453733325,] },\r\n /* 68 */ { startIndex: 46, weights: [0.0011593446834012866, 0.02080361731350422, 0.004044868052005768,] },\r\n /* 69 */ { startIndex: 48, weights: [0.017553631216287613, 0.007083200383931398,] },\r\n /* 70 */ { startIndex: 49, weights: [0.014075386337935925, 0.010326550342142582,] },\r\n /* 71 */ { startIndex: 50, weights: [0.010409214533865452, 0.013736963272094727,] },\r\n /* 72 */ { startIndex: 51, weights: [0.006591876968741417, 0.017279881983995438, 0.0014680421445518732,] },\r\n /* 73 */ { startIndex: 52, weights: [0.0026568188332021236, 0.01809193193912506, 0.005856557283550501,] },\r\n /* 74 */ { startIndex: 54, weights: [0.013342779129743576, 0.010282675735652447,] },\r\n /* 75 */ { startIndex: 55, weights: [0.00856800377368927, 0.01472230814397335, 0.001040398608893156,] },\r\n /* 76 */ { startIndex: 56, weights: [0.003790855873376131, 0.01714678481221199, 0.006116092670708895,] },\r\n /* 77 */ { startIndex: 58, weights: [0.011759290471673012, 0.011133937165141106,] },\r\n /* 78 */ { startIndex: 59, weights: [0.006438578478991985, 0.01607806235551834, 0.004239172209054232,] },\r\n /* 79 */ { startIndex: 60, weights: [0.0011998937698081136, 0.012756715528666973, 0.00965298991650343,] },\r\n /* 80 */ { startIndex: 62, weights: [0.007069352548569441, 0.014940546825528145, 0.004190248437225819,] },\r\n /* 81 */ { startIndex: 63, weights: [0.0015148338861763477, 0.012008999474346638, 0.009848233312368393,] },\r\n /* 82 */ { startIndex: 65, weights: [0.006102240178734064, 0.01533857174217701, 0.005576768424361944,] },\r\n /* 83 */ { startIndex: 66, weights: [0.00036827256553806365, 0.00989749375730753, 0.011353404261171818, 0.0020512230694293976,] },\r\n /* 84 */ { startIndex: 68, weights: [0.003892971435561776, 0.012973522767424583, 0.00806631613522768,] },\r\n /* 85 */ { startIndex: 70, weights: [0.006744932383298874, 0.013858746737241745, 0.005411905236542225,] },\r\n /* 86 */ { startIndex: 71, weights: [0.0007422015769407153, 0.008987790904939175, 0.011378713883459568, 0.003329580882564187,] },\r\n /* 87 */ { startIndex: 73, weights: [0.0028231353498995304, 0.010680492967367172, 0.00943340640515089, 0.0017632555682212114,] },\r\n /* 88 */ { startIndex: 75, weights: [0.0043901861645281315, 0.011877589859068394, 0.007970058359205723, 0.0006610470009036362,] },\r\n /* 89 */ { startIndex: 77, weights: [0.005494666751474142, 0.012629535980522633, 0.00693987961858511,] },\r\n /* 90 */ { startIndex: 79, weights: [0.006184019148349762, 0.0129347313195467, 0.00629778765141964,] },\r\n /* 91 */ { startIndex: 80, weights: [2.3252101527759805e-05, 0.006502066273242235, 0.0123266177251935, 0.006002165377140045,] },\r\n /* 92 */ { startIndex: 82, weights: [0.00031548753031529486, 0.006489255465567112, 0.012041302397847176, 0.006014628801494837,] },\r\n /* 93 */ { startIndex: 84, weights: [0.00029979555984027684, 0.006182880140841007, 0.012042728252708912, 0.006299811881035566, 0.0005568959750235081,] },\r\n /* 94 */ { startIndex: 86, weights: [1.1204706424905453e-05, 0.005617291666567326, 0.011223378591239452, 0.0068251630291342735, 0.0013526449911296368,] },\r\n /* 95 */ { startIndex: 89, weights: [0.004824100062251091, 0.010166232474148273, 0.007560755126178265, 0.002345903078094125,] },\r\n /* 96 */ { startIndex: 91, weights: [0.003832357469946146, 0.008922962471842766, 0.00847910437732935, 0.003509786445647478,] },\r\n /* 97 */ { startIndex: 93, weights: [0.0026687318459153175, 0.007519651670008898, 0.009555005468428135, 0.004819661378860474, 8.431751484749839e-05,] },\r\n /* 98 */ { startIndex: 95, weights: [0.001357673667371273, 0.005980195011943579, 0.01060271542519331, 0.0062529849819839, 0.0017405991675332189,] },\r\n /* 99 */ { startIndex: 98, weights: [0.004326442256569862, 0.008731318637728691, 0.007789165247231722, 0.003489238675683737,] },\r\n /* 100 */ { startIndex: 100, weights: [0.0025783509481698275, 0.006775828544050455, 0.00940941646695137, 0.005311945918947458, 0.0012144759530201554,] },\r\n /* 101 */ { startIndex: 102, weights: [0.0007541119121015072, 0.004753957036882639, 0.008753802627325058, 0.007192090153694153, 0.003287544008344412,] },\r\n /* 102 */ { startIndex: 105, weights: [0.0026817969046533108, 0.0064933146350085735, 0.009114579297602177, 0.005393873900175095, 0.0016731682699173689,] },\r\n /* 103 */ { startIndex: 107, weights: [0.0005739429616369307, 0.0042060003615915775, 0.007838058285415173, 0.007520230021327734, 0.003974708262830973, 0.00042918731924146414,] },\r\n /* 104 */ { startIndex: 110, weights: [0.0019046447705477476, 0.005365691613405943, 0.008826738223433495, 0.0062760948203504086, 0.0028975096065551043,] },\r\n /* 105 */ { startIndex: 113, weights: [0.0028988525737076998, 0.006196940783411264, 0.008566990494728088, 0.005347481928765774, 0.002127972897142172,] },\r\n /* 106 */ { startIndex: 115, weights: [0.0004475022724363953, 0.0035903039388358593, 0.006733105983585119, 0.007770236115902662, 0.004702313803136349, 0.0016343912575393915,] },\r\n /* 107 */ { startIndex: 118, weights: [0.0010153602343052626, 0.004010187461972237, 0.007005014456808567, 0.007234429940581322, 0.0043109566904604435, 0.0013874832075089216,] },\r\n /* 108 */ { startIndex: 121, weights: [0.0013334885006770492, 0.004187308251857758, 0.007041127886623144, 0.0069318837486207485, 0.004146058112382889, 0.0013602323597297072,] },\r\n /* 109 */ { startIndex: 124, weights: [0.0014287971425801516, 0.004148248583078384, 0.006867699790745974, 0.006837052758783102, 0.004182394593954086, 0.0015277357306331396,] },\r\n /* 110 */ { startIndex: 127, weights: [0.0013261043932288885, 0.003917513880878687, 0.006508923601359129, 0.006926396861672401, 0.0043967291712760925, 0.0018670617137104273,] },\r\n /* 111 */ { startIndex: 130, weights: [0.0010482777142897248, 0.0035176740493625402, 0.0059870705008506775, 0.007178240455687046, 0.004767679143697023, 0.002357117598876357,] },\r\n /* 112 */ { startIndex: 133, weights: [0.0006163640646263957, 0.0029694922268390656, 0.005322620272636414, 0.007572650909423828, 0.005275587551295757, 0.0029785241931676865, 0.0006814609514549375,] },\r\n /* 113 */ { startIndex: 136, weights: [4.9713995394995436e-05, 0.0022920481860637665, 0.004534382373094559, 0.006776716560125351, 0.0059024072252213955, 0.00371349835768342, 0.0015245892573148012,] },\r\n /* 114 */ { startIndex: 140, weights: [0.0015028533525764942, 0.0036396104842424393, 0.005776367150247097, 0.0066315908916294575, 0.004545743577182293, 0.002459896495565772, 0.00037404923932626843,] },\r\n /* 115 */ { startIndex: 143, weights: [0.0006179586052894592, 0.00265410915017128, 0.004690259229391813, 0.006726410239934921, 0.005460347048938274, 0.0034727093297988176, 0.0014850713778287172,] },\r\n /* 116 */ { startIndex: 147, weights: [0.001592335756868124, 0.0035326166544109583, 0.005472897551953793, 0.0064436825923621655, 0.004549629986286163, 0.002655577613040805, 0.0007615251233801246,] },\r\n /* 117 */ { startIndex: 150, weights: [0.00046749351895414293, 0.0023164190351963043, 0.004165344405919313, 0.0060142697766423225, 0.005678446963429451, 0.0038735736161470413, 0.002068700036033988, 0.0002638266596477479,] },\r\n /* 118 */ { startIndex: 154, weights: [0.0010534910252317786, 0.002815362298861146, 0.0045772334560751915, 0.006339104846119881, 0.0051281568594276905, 0.0034082632046192884, 0.0016883700154721737,] },\r\n /* 119 */ { startIndex: 158, weights: [0.0014335009036585689, 0.0031124167144298553, 0.00479133240878582, 0.00640943692997098, 0.004770522005856037, 0.0031316077802330256, 0.0014926930889487267,] },\r\n /* 120 */ { startIndex: 161, weights: [2.9323589842533693e-05, 0.001629189937375486, 0.003229056019335985, 0.00482892245054245, 0.006146714556962252, 0.004584966227412224, 0.0030232176650315523, 0.0014614691026508808,] },\r\n /* 121 */ { startIndex: 165, weights: [0.00013601698447018862, 0.001660555717535317, 0.003185094567015767, 0.004709633067250252, 0.006040723994374275, 0.0045525087043643, 0.003064292948693037, 0.001576077425852418, 8.786193211562932e-05,] },\r\n /* 122 */ { startIndex: 169, weights: [9.328097075922415e-05, 0.001546038780361414, 0.002998796757310629, 0.004451554734259844, 0.0059043122455477715, 0.0046556610614061356, 0.003237516153603792, 0.0018193712458014488, 0.00040122633799910545,] },\r\n /* 123 */ { startIndex: 174, weights: [0.0013026263331994414, 0.002686982974410057, 0.004071339499205351, 0.005455696024000645, 0.004878324922174215, 0.0035269514191895723, 0.0021755779162049294, 0.0008242045878432691,] },\r\n /* 124 */ { startIndex: 178, weights: [0.0009459502762183547, 0.002265126211568713, 0.0035843022633343935, 0.0049034785479307175, 0.005205697845667601, 0.0039179520681500435, 0.00263020652346313, 0.001342460629530251, 5.471494296216406e-05,] },\r\n /* 125 */ { startIndex: 182, weights: [0.0004903789376839995, 0.0017474433407187462, 0.003004507627338171, 0.004261571913957596, 0.005518636200577021, 0.004397072363644838, 0.0031699584797024727, 0.001942844595760107, 0.0007157306536100805,] },\r\n /* 126 */ { startIndex: 187, weights: [0.0011469805613160133, 0.002344857668504119, 0.0035427347756922245, 0.004740611650049686, 0.0049519846215844154, 0.003782647429034114, 0.002613310469314456, 0.0014439737424254417, 0.0002746368118096143,] },\r\n /* 127 */ { startIndex: 191, weights: [0.0004756950947921723, 0.0016171716852113605, 0.002758648479357362, 0.0039001251570880413, 0.005041601601988077, 0.004457120783627033, 0.003342840587720275, 0.0022285603918135166, 0.0011142801959067583,] },\r\n];\r\nconst multilingualSpecialTokens = {\r\n endOfTextToken: 50257,\r\n startOfTextToken: 50258,\r\n languageTokensStart: 50259,\r\n languageTokensEnd: 50358,\r\n translateTaskToken: 50358,\r\n transcribeTaskToken: 50359,\r\n startOfPromptToken: 50361,\r\n nonSpeechToken: 50362,\r\n noTimestampsToken: 50363,\r\n timestampTokensStart: 50364,\r\n timestampTokensEnd: 50364 + 1501,\r\n};\r\nconst englishOnlySpecialTokens = {\r\n endOfTextToken: 50256,\r\n startOfTextToken: 50257,\r\n languageTokensStart: 50258,\r\n languageTokensEnd: 50358,\r\n translateTaskToken: 50358,\r\n transcribeTaskToken: 50359,\r\n startOfPromptToken: 50360,\r\n nonSpeechToken: 50361,\r\n noTimestampsToken: 50362,\r\n timestampTokensStart: 50363,\r\n timestampTokensEnd: 50363 + 1501,\r\n};\r\nconst largestMaximumTokensPerPart = 220;\r\nexport const defaultWhisperOptions = {\r\n model: undefined,\r\n enableGPU: false,\r\n threadCount: 4,\r\n gpuDeviceIndex: 0,\r\n temperature: 0.1,\r\n prompt: undefined,\r\n topCandidateCount: 5,\r\n punctuationThreshold: 0.2,\r\n autoPromptParts: true,\r\n maxTokensPerPart: largestMaximumTokensPerPart,\r\n suppressRepetition: true,\r\n repetitionThreshold: 2.4,\r\n decodeTimestampTokens: true,\r\n endTokenThreshold: 0.9,\r\n includeEndTokenInCandidates: true,\r\n timestampAccuracy: undefined,\r\n seed: undefined,\r\n};\r\nexport const defaultWhisperAlignmentOptions = {\r\n model: undefined,\r\n enableGPU: false,\r\n threadCount: 4,\r\n gpuDeviceIndex: 0,\r\n endTokenThreshold: 0.9,\r\n maxTokensPerPart: largestMaximumTokensPerPart,\r\n timestampAccuracy: undefined,\r\n};\r\nexport const defaultWhisperLanguageDetectionOptions = {\r\n model: undefined,\r\n enableGPU: false,\r\n threadCount: 4,\r\n gpuDeviceIndex: 0,\r\n temperature: 1.0,\r\n};\r\n//# sourceMappingURL=WhisperSTT.js.map\r\n", "let wasm;\nexport function __wbg_set_wasm(val) {\n wasm = val;\n}\n\n\nconst lTextDecoder = typeof TextDecoder === 'undefined' ? (0, module.require)('util').TextDecoder : TextDecoder;\n\nlet cachedTextDecoder = new lTextDecoder('utf-8', { ignoreBOM: true, fatal: true });\n\ncachedTextDecoder.decode();\n\nlet cachedUint8ArrayMemory0 = null;\n\nfunction getUint8ArrayMemory0() {\n if (cachedUint8ArrayMemory0 === null || cachedUint8ArrayMemory0.byteLength === 0) {\n cachedUint8ArrayMemory0 = new Uint8Array(wasm.memory.buffer);\n }\n return cachedUint8ArrayMemory0;\n}\n\nfunction getStringFromWasm0(ptr, len) {\n ptr = ptr >>> 0;\n return cachedTextDecoder.decode(getUint8ArrayMemory0().subarray(ptr, ptr + len));\n}\n\nconst heap = new Array(128).fill(undefined);\n\nheap.push(undefined, null, true, false);\n\nlet heap_next = heap.length;\n\nfunction addHeapObject(obj) {\n if (heap_next === heap.length) heap.push(heap.length + 1);\n const idx = heap_next;\n heap_next = heap[idx];\n\n heap[idx] = obj;\n return idx;\n}\n\nfunction handleError(f, args) {\n try {\n return f.apply(this, args);\n } catch (e) {\n wasm.__wbindgen_export_0(addHeapObject(e));\n }\n}\n\nfunction getObject(idx) { return heap[idx]; }\n\nfunction dropObject(idx) {\n if (idx < 132) return;\n heap[idx] = heap_next;\n heap_next = idx;\n}\n\nfunction takeObject(idx) {\n const ret = getObject(idx);\n dropObject(idx);\n return ret;\n}\n\nlet WASM_VECTOR_LEN = 0;\n\nconst lTextEncoder = typeof TextEncoder === 'undefined' ? (0, module.require)('util').TextEncoder : TextEncoder;\n\nlet cachedTextEncoder = new lTextEncoder('utf-8');\n\nconst encodeString = (typeof cachedTextEncoder.encodeInto === 'function'\n ? function (arg, view) {\n return cachedTextEncoder.encodeInto(arg, view);\n}\n : function (arg, view) {\n const buf = cachedTextEncoder.encode(arg);\n view.set(buf);\n return {\n read: arg.length,\n written: buf.length\n };\n});\n\nfunction passStringToWasm0(arg, malloc, realloc) {\n\n if (realloc === undefined) {\n const buf = cachedTextEncoder.encode(arg);\n const ptr = malloc(buf.length, 1) >>> 0;\n getUint8ArrayMemory0().subarray(ptr, ptr + buf.length).set(buf);\n WASM_VECTOR_LEN = buf.length;\n return ptr;\n }\n\n let len = arg.length;\n let ptr = malloc(len, 1) >>> 0;\n\n const mem = getUint8ArrayMemory0();\n\n let offset = 0;\n\n for (; offset < len; offset++) {\n const code = arg.charCodeAt(offset);\n if (code > 0x7F) break;\n mem[ptr + offset] = code;\n }\n\n if (offset !== len) {\n if (offset !== 0) {\n arg = arg.slice(offset);\n }\n ptr = realloc(ptr, len, len = offset + arg.length * 3, 1) >>> 0;\n const view = getUint8ArrayMemory0().subarray(ptr + offset, ptr + len);\n const ret = encodeString(arg, view);\n\n offset += ret.written;\n ptr = realloc(ptr, len, offset, 1) >>> 0;\n }\n\n WASM_VECTOR_LEN = offset;\n return ptr;\n}\n\nfunction isLikeNone(x) {\n return x === undefined || x === null;\n}\n\nlet cachedDataViewMemory0 = null;\n\nfunction getDataViewMemory0() {\n if (cachedDataViewMemory0 === null || cachedDataViewMemory0.buffer.detached === true || (cachedDataViewMemory0.buffer.detached === undefined && cachedDataViewMemory0.buffer !== wasm.memory.buffer)) {\n cachedDataViewMemory0 = new DataView(wasm.memory.buffer);\n }\n return cachedDataViewMemory0;\n}\n\nlet cachedUint32ArrayMemory0 = null;\n\nfunction getUint32ArrayMemory0() {\n if (cachedUint32ArrayMemory0 === null || cachedUint32ArrayMemory0.byteLength === 0) {\n cachedUint32ArrayMemory0 = new Uint32Array(wasm.memory.buffer);\n }\n return cachedUint32ArrayMemory0;\n}\n\nfunction getArrayU32FromWasm0(ptr, len) {\n ptr = ptr >>> 0;\n return getUint32ArrayMemory0().subarray(ptr / 4, ptr / 4 + len);\n}\n\nfunction passArray8ToWasm0(arg, malloc) {\n const ptr = malloc(arg.length * 1, 1) >>> 0;\n getUint8ArrayMemory0().set(arg, ptr / 1);\n WASM_VECTOR_LEN = arg.length;\n return ptr;\n}\n\nfunction passArray32ToWasm0(arg, malloc) {\n const ptr = malloc(arg.length * 4, 4) >>> 0;\n getUint32ArrayMemory0().set(arg, ptr / 4);\n WASM_VECTOR_LEN = arg.length;\n return ptr;\n}\n\nfunction getArrayU8FromWasm0(ptr, len) {\n ptr = ptr >>> 0;\n return getUint8ArrayMemory0().subarray(ptr / 1, ptr / 1 + len);\n}\n\nconst TiktokenFinalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_tiktoken_free(ptr >>> 0, 1));\n\nexport class Tiktoken {\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n TiktokenFinalization.unregister(this);\n return ptr;\n }\n\n free() {\n if (wasm == null) throw new Error(\"tiktoken: WASM binary has not been propery initialized.\");\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_tiktoken_free(ptr, 0);\n }\n /**\n * @param {string} tiktoken_bfe\n * @param {any} special_tokens\n * @param {string} pat_str\n */\n constructor(tiktoken_bfe, special_tokens, pat_str) {\n if (wasm == null) throw new Error(\"tiktoken: WASM binary has not been propery initialized.\");\n const ptr0 = passStringToWasm0(tiktoken_bfe, wasm.__wbindgen_export_1, wasm.__wbindgen_export_2);\n const len0 = WASM_VECTOR_LEN;\n const ptr1 = passStringToWasm0(pat_str, wasm.__wbindgen_export_1, wasm.__wbindgen_export_2);\n const len1 = WASM_VECTOR_LEN;\n const ret = wasm.tiktoken_new(ptr0, len0, addHeapObject(special_tokens), ptr1, len1);\n this.__wbg_ptr = ret >>> 0;\n TiktokenFinalization.register(this, this.__wbg_ptr, this);\n return this;\n }\n /**\n * @returns {string | undefined}\n */\n get name() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.tiktoken_name(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n let v1;\n if (r0 !== 0) {\n v1 = getStringFromWasm0(r0, r1).slice();\n wasm.__wbindgen_export_3(r0, r1 * 1, 1);\n }\n return v1;\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * @param {string} text\n * @param {any} allowed_special\n * @param {any} disallowed_special\n * @returns {Uint32Array}\n */\n encode(text, allowed_special, disallowed_special) {\n if (wasm == null) throw new Error(\"tiktoken: WASM binary has not been propery initialized.\");\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(text, wasm.__wbindgen_export_1, wasm.__wbindgen_export_2);\n const len0 = WASM_VECTOR_LEN;\n wasm.tiktoken_encode(retptr, this.__wbg_ptr, ptr0, len0, addHeapObject(allowed_special), addHeapObject(disallowed_special));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);\n if (r3) {\n throw takeObject(r2);\n }\n var v2 = getArrayU32FromWasm0(r0, r1).slice();\n wasm.__wbindgen_export_3(r0, r1 * 4, 4);\n return v2;\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * @param {string} text\n * @returns {Uint32Array}\n */\n encode_ordinary(text) {\n if (wasm == null) throw new Error(\"tiktoken: WASM binary has not been propery initialized.\");\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(text, wasm.__wbindgen_export_1, wasm.__wbindgen_export_2);\n const len0 = WASM_VECTOR_LEN;\n wasm.tiktoken_encode_ordinary(retptr, this.__wbg_ptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var v2 = getArrayU32FromWasm0(r0, r1).slice();\n wasm.__wbindgen_export_3(r0, r1 * 4, 4);\n return v2;\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * @param {string} text\n * @param {any} allowed_special\n * @param {any} disallowed_special\n * @returns {any}\n */\n encode_with_unstable(text, allowed_special, disallowed_special) {\n if (wasm == null) throw new Error(\"tiktoken: WASM binary has not been propery initialized.\");\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(text, wasm.__wbindgen_export_1, wasm.__wbindgen_export_2);\n const len0 = WASM_VECTOR_LEN;\n wasm.tiktoken_encode_with_unstable(retptr, this.__wbg_ptr, ptr0, len0, addHeapObject(allowed_special), addHeapObject(disallowed_special));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * @param {Uint8Array} bytes\n * @returns {number}\n */\n encode_single_token(bytes) {\n if (wasm == null) throw new Error(\"tiktoken: WASM binary has not been propery initialized.\");\n const ptr0 = passArray8ToWasm0(bytes, wasm.__wbindgen_export_1);\n const len0 = WASM_VECTOR_LEN;\n const ret = wasm.tiktoken_encode_single_token(this.__wbg_ptr, ptr0, len0);\n return ret >>> 0;\n }\n /**\n * @param {Uint32Array} tokens\n * @returns {Uint8Array}\n */\n decode(tokens) {\n if (wasm == null) throw new Error(\"tiktoken: WASM binary has not been propery initialized.\");\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passArray32ToWasm0(tokens, wasm.__wbindgen_export_1);\n const len0 = WASM_VECTOR_LEN;\n wasm.tiktoken_decode(retptr, this.__wbg_ptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var v2 = getArrayU8FromWasm0(r0, r1).slice();\n wasm.__wbindgen_export_3(r0, r1 * 1, 1);\n return v2;\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * @param {number} token\n * @returns {Uint8Array}\n */\n decode_single_token_bytes(token) {\n if (wasm == null) throw new Error(\"tiktoken: WASM binary has not been propery initialized.\");\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.tiktoken_decode_single_token_bytes(retptr, this.__wbg_ptr, token);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var v1 = getArrayU8FromWasm0(r0, r1).slice();\n wasm.__wbindgen_export_3(r0, r1 * 1, 1);\n return v1;\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * @returns {any}\n */\n token_byte_values() {\n if (wasm == null) throw new Error(\"tiktoken: WASM binary has not been propery initialized.\");\n const ret = wasm.tiktoken_token_byte_values(this.__wbg_ptr);\n return takeObject(ret);\n }\n}\n\nexport function __wbg_parse_def2e24ef1252aff() { return handleError(function (arg0, arg1) {\n const ret = JSON.parse(getStringFromWasm0(arg0, arg1));\n return addHeapObject(ret);\n}, arguments) };\n\nexport function __wbg_stringify_f7ed6987935b4a24() { return handleError(function (arg0) {\n const ret = JSON.stringify(getObject(arg0));\n return addHeapObject(ret);\n}, arguments) };\n\nexport function __wbindgen_error_new(arg0, arg1) {\n const ret = new Error(getStringFromWasm0(arg0, arg1));\n return addHeapObject(ret);\n};\n\nexport function __wbindgen_is_undefined(arg0) {\n const ret = getObject(arg0) === undefined;\n return ret;\n};\n\nexport function __wbindgen_object_drop_ref(arg0) {\n takeObject(arg0);\n};\n\nexport function __wbindgen_string_get(arg0, arg1) {\n if (wasm == null) throw new Error(\"tiktoken: WASM binary has not been propery initialized.\");\n const obj = getObject(arg1);\n const ret = typeof(obj) === 'string' ? obj : undefined;\n var ptr1 = isLikeNone(ret) ? 0 : passStringToWasm0(ret, wasm.__wbindgen_export_1, wasm.__wbindgen_export_2);\n var len1 = WASM_VECTOR_LEN;\n getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true);\n getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true);\n};\n\nexport function __wbindgen_throw(arg0, arg1) {\n throw new Error(getStringFromWasm0(arg0, arg1));\n};\n\n", "// @ts-expect-error\nimport * as imports from \"./tiktoken_bg\";\nlet isInitialized = false;\nexport async function init(callback) {\n if (isInitialized)\n return imports;\n const result = await callback({ \"./tiktoken_bg.js\": imports });\n const instance = \"instance\" in result && result.instance instanceof WebAssembly.Instance\n ? result.instance\n : result instanceof WebAssembly.Instance\n ? result\n : null;\n if (instance == null)\n throw new Error(\"Missing instance\");\n imports.__wbg_set_wasm(instance.exports);\n isInitialized = true;\n return imports;\n}\n// @ts-expect-error\nexport * from \"./tiktoken_bg\";\n", "import {init,Tiktoken} from 'tiktoken/lite/init';\r\nexport const WHISPER_PATTERN=\"'s|'t|'re|'ve|'m|'ll|'d| ?\\\\p{L}+| ?\\\\p{N}+| ?[^\\\\s\\\\p{L}\\\\p{N}]+|\\\\s+(?!\\\\S)|\\\\s+\";\r\nexport function metadataTokens(config){const out={ '[EndOfText]':config.endOfTextToken,'[StartOfText]':config.startOfTextToken,'[TranslateTask]':config.translateTaskToken,'[TranscribeTask]':config.transcribeTaskToken,'[StartOfPrompt]':config.startOfPromptToken,'[NonSpeech]':config.nonSpeechToken,'[NoTimestamps]':config.noTimestampsToken,'[Unused_50256]':50256,'[Unused_50360]':50360};for(let i=0;i<config.languageTokensEnd-config.languageTokensStart;i++)out[`[Language_${i}]`]=config.languageTokensStart+i;for(let i=0;i<=1501;i++)out[`[Timestamp_${(i*.02).toFixed(2)}]`]=config.timestampTokensStart+i;return out;}\r\nexport async function createTokenizer(assetBaseUrl,config){const url=name=>new URL(name,assetBaseUrl).href;const [ranks,wasm]=await Promise.all([fetch(url('multilingual.tiktoken')),fetch(url('tiktoken_bg.wasm'))]);for(const response of [ranks,wasm])if(!response.ok)throw Error(`Tokenizer fetch failed: HTTP ${response.status}`);const bytes=await wasm.arrayBuffer();await init(imports=>WebAssembly.instantiate(bytes,imports));return new Tiktoken(await ranks.text(),metadataTokens(config),WHISPER_PATTERN);}\r\n", "// Draft only supplied lyrics. Reuse rows only while actual decoder inputs agree.\r\nexport function speculativeContext(evaluate,remainingTokens,eot,batchSize=8,tokenBudget=Infinity){\r\n let consumed=0,cache,latest,steps=0;\r\n return {\r\n async decodeTokens(tokens,past){\r\n if(++steps>tokenBudget)throw Error('Decode exceeded token budget');\r\n const position=past>0?past-1:0;\r\n consumed+=tokens.filter(t=>t<eot).length;\r\n const index=cache?position-cache.position:-1;\r\n if(tokens.length===1&&index>=0&&index<cache.tokens.length&&cache.tokens[index]===tokens[0]){\r\n latest=cache.rows[index];return;\r\n }\r\n const draft=remainingTokens.slice(consumed,consumed+Math.min(batchSize-1,448-position-tokens.length,tokenBudget-steps));\r\n const input=[...tokens,...draft];\r\n const rows=await evaluate(input,position);\r\n if(rows.length!==input.length)throw Error('Speculative row count mismatch');\r\n cache={position,tokens:input,rows};latest=rows[tokens.length-1];\r\n },\r\n getLogits:()=>latest.logits.slice(),\r\n getCrossAttentionQKs:async()=>latest.qk,\r\n };\r\n}\r\n", "export function vocabularySubset(tokens,endOfText,vocabSize){\r\n if(!Number.isInteger(endOfText)||endOfText<0||endOfText>=vocabSize)throw Error('Invalid vocabulary boundary');\r\n if(tokens.some(t=>!Number.isInteger(t)||t<0||t>=vocabSize))throw Error('Invalid lyric token');\r\n return Int32Array.from(new Set([...tokens,...Array.from({length:vocabSize-endOfText},(_,i)=>endOfText+i)])).sort();\r\n}\r\n", "export function virtualAudio(pcm,scale){\r\n if(!Number.isFinite(scale)||scale<1||scale>4)throw Error('Time scale must be between 1 and 4');\r\n return pcm.subarray(0,Math.ceil(pcm.length/scale));\r\n}\r\nexport function originalSpan(pcm,virtual,samples,scale){\r\n if(samples.buffer!==virtual.buffer)throw Error('Unexpected virtual PCM buffer');\r\n const offset=(samples.byteOffset-virtual.byteOffset)/4;\r\n if(offset<0||offset+samples.length>virtual.length)throw Error('Invalid virtual audio span');\r\n return pcm.subarray(offset*scale,(offset+samples.length)*scale);\r\n}\r\nexport function scaleTimeline(timeline,scale,duration){\r\n for(const entry of timeline){\r\n entry.startTime=Math.min(duration,entry.startTime*scale);\r\n entry.endTime=Math.min(duration,entry.endTime*scale);\r\n if(entry.timeline)scaleTimeline(entry.timeline,scale,duration);\r\n }\r\n}\r\n", "import {speculativeContext} from '../core/speculative-context.mjs';\r\nimport {vocabularySubset} from '../core/vocab-subset.mjs';\r\nimport {originalSpan} from '../core/audio-time-scale.mjs';\r\nfunction collectKernels(module,profile,field){\r\n if(!profile||!module._poc_kernel_profile_ms)return;\r\n const labels=['q5Matmul','attentionF16','weightF16','otherMatmul','softmax','norm','unary','copies','addMul','im2col','other'];\r\n const counters=profile[field]??={};for(let i=0;i<labels.length;i++)counters[labels[i]]=(counters[labels[i]]??0)+module._poc_kernel_profile_ms(i);\r\n}\r\nexport function nativeContext(module,pcm,virtual,progress,scale=2,profile,contextFrames){\r\n let latest,audioOffset=0;\r\n const context={\r\n get audioOffset(){return audioOffset;},\r\n async encodeSamples(samples){audioOffset=(samples.byteOffset-virtual.byteOffset)/4;const original=originalSpan(pcm,virtual,samples,scale);progress?.('encoding',audioOffset,virtual.length);if(contextFrames){const frames=Math.min(contextFrames,Math.max(32,Math.ceil(samples.length/2560)*8));if(module._poc_set_audio_context(frames))throw Error('Dynamic audio context rejected');if(profile)(profile.contextFrames??=[]).push(frames);}const ptr=module._malloc(original.byteLength);if(!ptr)throw Error('Audio allocation failed');try{module.HEAPU8.set(new Uint8Array(original.buffer,original.byteOffset,original.byteLength),ptr);if(profile)module._poc_kernel_profile_reset?.();if(module._poc_encode_samples(ptr,original.length))throw Error('Audio encoding failed');collectKernels(module,profile,'encoderKernels');if(profile){profile.melMs+=module._poc_mel_ms();profile.encoderMs+=module._poc_encoder_ms();profile.windows++;}}finally{module._free(ptr);}},\r\n async decodeTokens(tokens,past){const values=Int32Array.from(tokens),ptr=module._malloc(values.byteLength),dp=module._malloc(12);let qp;try{if(!ptr||!dp)throw Error('Decode allocation failed');module.HEAPU8.set(new Uint8Array(values.buffer),ptr);if(profile)module._poc_kernel_profile_reset?.();if(module._poc_decode(ptr,tokens.length,past>0?past-1:0))throw Error('Token decoding failed');collectKernels(module,profile,'decoderKernels');const count=module._poc_qk_dims(dp),dims=new Int32Array(module.HEAPU8.buffer,dp,3).slice();qp=module._malloc(count*4);if(count<=0||!qp||module._poc_qk_copy(qp,count))throw Error('Attention copy failed');latest={dimensions:Array.from(dims,BigInt),data:new Float32Array(module.HEAPU8.buffer,qp,count).slice()};}finally{if(qp)module._free(qp);module._free(dp);module._free(ptr);}},\r\n getLogits:()=>{const pointer=module._poc_logits();if(!pointer)throw Error('Logits unavailable in alignment-only mode');return new Float32Array(module.HEAPU8.buffer,pointer,module._poc_vocab()).slice();},\r\n getCrossAttentionQKs:async()=>latest,\r\n };\r\n if(profile){const decode=context.decodeTokens;context.decodeTokens=async(...args)=>{const start=performance.now();try{return await decode(...args);}finally{profile.decodeMs+=performance.now()-start;profile.batches++;profile.tokens+=args[0].length;}};}\r\n return context;\r\n}\r\nexport function subset(module,tokens,eot,alignmentOnly=false){const ids=alignmentOnly?Int32Array.of(eot):vocabularySubset(tokens,eot,module._poc_vocab()),ptr=module._malloc(ids.byteLength);try{if(!ptr)throw Error('Vocabulary allocation failed');module.HEAPU8.set(new Uint8Array(ids.buffer),ptr);if(module._poc_set_vocab_subset(ptr,ids.length))throw Error('Vocabulary subset rejected');}finally{module._free(ptr);}}\r\nexport function speculativeNativeContext(module,original,remaining,eot,budget,batchSize=128){return speculativeContext(async(tokens,position)=>{await original.decodeTokens(tokens,position===0?0:position+1);const qk=await original.getCrossAttentionQKs();const[heads,count,frames]=qk.dimensions.map(Number);if(count!==tokens.length)throw Error('Unexpected batch attention dimensions');const vocab=module._poc_vocab(),base=module._poc_logits()-(count-1)*vocab*4;return tokens.map((_,row)=>{const data=new Float32Array(heads*frames);for(let h=0;h<heads;h++)data.set(qk.data.subarray((h*count+row)*frames,(h*count+row+1)*frames),h*frames);return{logits:new Float32Array(module.HEAPU8.buffer,base+row*vocab*4,vocab).slice(),qk:{dimensions:[BigInt(heads),1n,BigInt(frames)],data}};});},remaining,eot,batchSize,budget);}\r\n", "// Only cross-script parenthetical translations after a Latin-only sung line.\r\nexport function naturalJapaneseSpacing(text){\r\n return text.replace(/([\\p{Script=Hiragana}\\p{Script=Katakana}\\p{Script=Han}]) +(?=[\\p{Script=Hiragana}\\p{Script=Katakana}\\p{Script=Han}])/gu,'$1');\r\n}\r\n// Japanese sung parentheticals and English refrains are deliberately preserved.\r\nexport function spokenLyrics(text){\r\n return text.replace(/([^\\n]*[A-Za-z][^\\n]*?)(?:[ \\t]*\\r?\\n[ \\t]*|[ \\t]+)[(\uFF08]([^()\uFF08\uFF09\\n]+)[)\uFF09]/gu,(whole,sung,note)=>{\r\n const japanese=/[\\p{Script=Hiragana}\\p{Script=Katakana}\\p{Script=Han}]/u;\r\n return !japanese.test(sung)&&japanese.test(note)?sung.trimEnd():whole;\r\n });\r\n}\r\n", "// Keep UTF-8 token fragments together without merging adjacent lyric lines.\r\nexport function tokenTextUnits(words,decode,isText){\r\n const output=[];let pending=[];\r\n for(const token of words.flatMap(w=>w.timeline??[w])){\r\n if(!isText(token.id))continue;\r\n pending.push(token);\r\n const text=decode(pending.map(t=>t.id));\r\n if(text.includes('\\uFFFD'))continue;\r\n if(text.trim())output.push({type:'word',text:text.trim(),startTime:pending[0].startTime,endTime:pending.at(-1).endTime,confidence:pending.some(t=>t.confidence===0)?0:1,timeline:pending});\r\n pending=[];\r\n }\r\n if(pending.length)output.push({type:'word',text:decode(pending.map(t=>t.id)),startTime:pending[0].startTime,endTime:pending.at(-1).endTime,confidence:0,timeline:pending});\r\n return output;\r\n}\r\n", "// Keep only the acoustic prefix before the overlap boundary. Reference times\r\n// are neither accepted nor consulted; unfinished text remains for the next part.\r\nexport function trimAttentionPrefix(decoded,path,initialCount,coreFrames,timestampStart,endOfText){\r\n const tokens=decoded.decodedTokens.slice(initialCount);\r\n const starts=new Map();for(const point of path)if(!starts.has(point.source))starts.set(point.source,point.dest);\r\n let keep=0;\r\n while(keep<tokens.length&&tokens[keep]<endOfText&&(starts.get(keep)??Infinity)<coreFrames)keep++;\r\n return {\r\n ...decoded,\r\n decodedTokens:[...decoded.decodedTokens.slice(0,initialCount+keep),timestampStart+coreFrames],\r\n decodedTokensConfidence:[...decoded.decodedTokensConfidence.slice(0,initialCount+keep),1],\r\n decodedTokensCrossAttentionQKs:Array(initialCount+keep+1).fill(undefined),\r\n alignmentPath:[...path.filter(p=>p.source<keep&&p.dest<coreFrames),{source:keep,dest:coreFrames-1}],\r\n alignmentFrames:coreFrames,\r\n deferredTextCount:tokens.filter(t=>t<endOfText).length-keep,\r\n };\r\n}\r\nexport function lookaheadBudget(totalTokens,totalSamples,partDuration,remaining,isFinal,limit,ratio=1.5){\r\n if(!Number.isFinite(ratio)||ratio<1||ratio>2)throw Error('Invalid lookahead ratio');\r\n const estimated=Math.ceil(totalTokens/(totalSamples/16000)*partDuration*ratio)+16;\r\n return Math.max(1,Math.min(limit,isFinal?remaining+1:estimated));\r\n}\r\n", "import {Whisper} from '../../vendor/echogarden/Whisper.mjs';\r\nimport {nativeContext} from './native-context.mjs';\r\n\r\n/** Independent ASR: no known-token filter, vocabulary subset, or forced lyrics. */\r\nexport async function transcribeAudio(engine, audio, language) {\r\n // Exactly zero PCM contains no acoustic evidence. Do not ask a language\r\n // model to invent text for digital silence; quiet nonzero audio still runs ASR.\r\n if (audio.length && audio.every(sample => sample === 0)) return [];\r\n const m = engine.module;\r\n if (!m || !engine.whisper?.tiktoken) throw Error('Engine is not initialized');\r\n const w = new Whisper();\r\n w.tiktoken = engine.whisper.tiktoken;\r\n w.audioWindowSeconds = 30;\r\n w.getTextStartTokens(language, 'transcribe', false);\r\n const segments = [],restore=[];\r\n function set(name,value,previous){\r\n if(typeof m[name]!=='function')return; // Original ten-second ABI lacks fast flags.\r\n if(m[name](value))throw Error(`ASR configuration failed: ${name}`);\r\n restore.push(()=>{if(m[name](previous))throw Error(`ASR configuration restore failed: ${name}`);});\r\n }\r\n try {\r\n if(m._poc_set_time_scale(1))throw Error('Could not enable unrestricted ASR');\r\n restore.push(()=>{\r\n const scale=engine.config.timeScale;\r\n const result=Number.isInteger(scale)?m._poc_set_time_scale(scale):m._poc_set_time_scale_fraction?.(Math.round(scale*1000),1000);\r\n if(result!==0)throw Error('Could not restore native time scale');\r\n });\r\n set('_poc_set_alignment_only',0,engine.config.alignmentOnly?1:0);\r\n set('_poc_set_audio_context',1500,engine.config.audioContext??1500);\r\n set('_poc_set_attention_quant',0,engine.config.attentionQuant===true?2:engine.config.attentionQuant||0);\r\n set('_poc_set_vector_activations',0,engine.config.vectorActivations?1:0);\r\n if(m._poc_set_vocab_subset(0,0))throw Error('Could not enable unrestricted vocabulary');\r\n w.context = nativeContext(m, audio, audio, undefined, 1);\r\n await w.recognize({audioChannels:[audio], sampleRate:16000}, 'transcribe', language, {\r\n model:'tiny', threadCount:engine.threads, timestampAccuracy:'medium',\r\n topCandidateCount:1, temperature:.1, suppressRepetition:false,\r\n decodeTimestampTokens:false, autoPromptParts:false, maxTokensPerPart:448,\r\n }, undefined, {\r\n logLevel:'silent',\r\n onPart(text, tokens, timeline) {\r\n const words = timeline.filter(word => typeof word.text === 'string' && word.text.trim() && Number.isFinite(word.startTime) && Number.isFinite(word.endTime) && word.startTime >= 0 && word.endTime > word.startTime && word.endTime <= audio.length/16000)\r\n .map(word => ({ word:word.text, start:word.startTime, end:word.endTime }));\r\n if (words.length) segments.push({text, start:words[0].start, end:Math.max(...words.map(w => w.end)), words});\r\n // This is processed input, not an estimate of transcript accuracy.\r\n if (timeline.length) engine.progress?.('transcribing');\r\n },\r\n });\r\n return segments;\r\n } finally {\r\n let failure;\r\n for(const reset of restore.reverse())try{reset();}catch(error){failure??=error;}\r\n if(failure)throw failure;\r\n }\r\n}\r\n", "// Teacher forcing: supplied text is fixed; each token uses the preceding input's attention.\r\n// No reference times or precomputed song results enter this decoder.\r\nexport async function decodeAllKnownTokens(context,initial,remaining,eot,limit,batchSize){\r\n if(remaining.length<=limit)return decodeKnownTokens(context,initial,remaining,eot,limit,batchSize);\r\n // Each chunk resets text KV positions; all chunks attend to the same encoded\r\n // audio. Concatenate their actual attention for one monotonic alignment path.\r\n let result;\r\n for(let offset=0;offset<remaining.length;offset+=limit){\r\n const part=await decodeKnownTokens(context,initial,remaining.slice(offset,offset+limit),eot,limit,batchSize);\r\n if(!result)result=part;\r\n else for(const field of ['decodedTokens','decodedTokensConfidence','decodedTokensCrossAttentionQKs'])result[field].push(...part[field].slice(initial.length));\r\n }\r\n return result;\r\n}\r\nexport async function decodeKnownTokens(context,initial,remaining,eot,limit,batchSize){\r\n const predicted=remaining.slice(0,limit);\r\n if(predicted.length<limit)predicted.push(eot);\r\n const inputs=[...initial,...predicted.slice(0,-1)];\r\n const attention=Array(initial.length).fill(undefined);\r\n for(let position=0;position<inputs.length;position+=batchSize){\r\n const batch=inputs.slice(position,position+batchSize);\r\n await context.decodeTokens(batch,position===0?0:position+1);\r\n const qk=await context.getCrossAttentionQKs();\r\n const [heads,count,frames]=qk.dimensions.map(Number);\r\n if(count!==batch.length)throw Error('Guided attention batch mismatch');\r\n for(let row=0;row<count;row++){\r\n if(position+row<initial.length-1)continue;\r\n const data=new Float32Array(heads*frames);\r\n for(let head=0;head<heads;head++)data.set(qk.data.subarray((head*count+row)*frames,(head*count+row+1)*frames),head*frames);\r\n attention.push({dimensions:[BigInt(heads),1n,BigInt(frames)],data});\r\n }\r\n }\r\n const decodedTokens=[...initial,...predicted];\r\n return {decodedTokens,decodedTokensConfidence:Array(decodedTokens.length).fill(1),decodedTokensCrossAttentionQKs:attention,decodedTokensDecodingTime:[],decodedTokensInferenceTime:[],decodedTokensOverheadTime:[]};\r\n}\r\n", "// Reduce only the alignment grid, retaining the original song/encoder clock.\r\nexport async function coarseAttentionPath(findPath,qks,tokens,frames,stride=1){\r\n if(stride===1)return findPath(qks,tokens,0,frames);\r\n if(!Number.isInteger(stride)||stride<1)throw Error('Invalid attention stride');\r\n const coarseFrames=Math.ceil(frames/stride);\r\n const coarse=qks.map(q=>{\r\n const heads=Number(q.dimensions[0]),sourceFrames=Number(q.dimensions[2]);\r\n const data=new Float32Array(heads*coarseFrames);\r\n for(let h=0;h<heads;h++)for(let t=0;t<coarseFrames;t++){\r\n const end=Math.min(frames,(t+1)*stride);let sum=0;\r\n for(let i=t*stride;i<end;i++)sum+=q.data[h*sourceFrames+i];\r\n data[h*coarseFrames+t]=sum/(end-t*stride);\r\n }\r\n return {dimensions:[BigInt(heads),1n,BigInt(coarseFrames)],data};\r\n });\r\n return (await findPath(coarse,tokens,0,coarseFrames)).map(p=>({source:p.source,dest:Math.min(frames-1,p.dest*stride)}));\r\n}\r\n", "import {Whisper} from '../../vendor/echogarden/Whisper.mjs';\r\nimport {createTokenizer} from './tokenizer.mjs';\r\nimport {nativeContext,subset,speculativeNativeContext} from './native-context.mjs';\r\nimport {virtualAudio,scaleTimeline} from '../core/audio-time-scale.mjs';\r\nimport {naturalJapaneseSpacing} from '../core/lyrics.mjs';\r\nimport {tokenTextUnits} from '../core/token-units.mjs';\r\nimport {lookaheadBudget,trimAttentionPrefix} from '../core/attention-trim.mjs';\r\nimport {transcribeAudio} from './transcribe.mjs';\r\nimport {decodeKnownTokens,decodeAllKnownTokens} from './guided-decode.mjs';\r\nimport {coarseAttentionPath} from './attention-resolution.mjs';\r\nexport function validatePcm(audio){if(!(audio instanceof Float32Array)||!audio.length)throw Error('PCM must be a nonempty Float32Array');for(const sample of audio)if(!Number.isFinite(sample))throw Error('PCM samples must be finite');}\r\nexport class BrowserEngine{\r\n constructor(config={}){this.config={timeScale:3.25,batchSize:440,audioContext:960,guided:true,alignmentOnly:true,prepack:'group',attentionQuant:2,vectorActivations:true,attentionStride:4,attentionPositionPenalty:10,trimFinalContext:true,profile:false,...config};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');}\r\n async initialize(options,progress){\r\n this.start=performance.now();this.progress=progress;\r\n if(!globalThis.crossOriginIsolated||typeof SharedArrayBuffer==='undefined')throw Error('Cross-origin isolation (COOP/COEP) and SharedArrayBuffer are required');\r\n if(!/^[a-f0-9]{64}$/i.test(options.modelSha256))throw Error('A SHA256 model digest is required');\r\n if(![1,2,4,6,8,12].includes(options.threads))throw Error('Unsupported thread count');this.threads=options.threads;\r\n this.base=new URL(options.assetBaseUrl,globalThis.location.href).href;if(!this.base.endsWith('/'))this.base+='/';\r\n progress?.('model');const response=await fetch(options.modelUrl);if(!response.ok)throw Error(`Model fetch failed: HTTP ${response.status}`);let model=await response.arrayBuffer();\r\n const hash=Array.from(new Uint8Array(await crypto.subtle.digest('SHA-256',model)),b=>b.toString(16).padStart(2,'0')).join('');if(hash!==options.modelSha256.toLowerCase())throw Error('Model SHA256 mismatch');\r\n const script=new URL('parity.js',this.base).href;importScripts(script);\r\n this.module=await globalThis.createWhisperParity({noInitialRun:true,mainScriptUrlOrBlob:script,locateFile:name=>new URL(name,this.base).href,print:()=>{},printErr:message=>{if(this.config.debugNative)console.error(message);}});\r\n const m=this.module;m.FS.writeFile('/model.bin',new Uint8Array(model));model=null;\r\n try{if(m.ccall('poc_open_model','number',['string','number'],['/model.bin',0]))throw Error('Cannot open tiny model');}finally{m.FS.unlink('/model.bin');}\r\n if(this.config.prepack){const pack=this.config.prepack==='group'?m._poc_prepack_group_model:m._poc_prepack_model;if(!pack || pack()<=0)throw Error('Model prepacking failed');}\r\n if(m._poc_set_threads(this.threads)||m._poc_get_threads()!==this.threads)throw Error('Native thread setting failed');\r\n if(Number.isInteger(this.config.timeScale)){if(!m._poc_set_time_scale||m._poc_set_time_scale(this.config.timeScale))throw Error('Time-scale native build required');}else if(!m._poc_set_time_scale_fraction||m._poc_set_time_scale_fraction(Math.round(this.config.timeScale*1000),1000))throw Error('Fractional time-scale build required');\r\n if(m._poc_set_audio_context(this.config.audioContext))throw Error('Audio context rejected');\r\n 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');\r\n if(this.config.vectorActivations && (!m._poc_set_vector_activations || m._poc_set_vector_activations(1)))throw Error('Vector activations rejected');\r\n if(this.config.alignmentOnly && (!this.config.guided || !m._poc_set_alignment_only || m._poc_set_alignment_only(1)))throw Error('Alignment-only mode rejected');\r\n this.whisper=new Whisper();this.whisper.tiktoken=await createTokenizer(this.base,this.whisper.specialTokens);\r\n this.whisper.audioWindowSeconds=this.config.audioContext*.02;\r\n this.whisper.alignmentPositionPenalty=this.config.attentionPositionPenalty;\r\n this.initializationSeconds=(performance.now()-this.start)/1000;return{ready:true};\r\n }\r\n async align(audio,lyrics,language){\r\n validatePcm(audio);if(typeof lyrics!=='string'||!lyrics.trim())throw Error('Lyrics must not be empty');\r\n const w=this.whisper,m=this.module;if(!w||!m)throw Error('Engine is not initialized');\r\n w.getTextStartTokens(language,'transcribe',true); // validates supported language before inference\r\n const profile=this.config.profile?{melMs:0,encoderMs:0,decodeMs:0,pathMs:0,windows:0,batches:0,tokens:0}:undefined;\r\n 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:undefined);\r\n w.context=originalContext;let lyricTokens,consumed=0,workerPath;\r\n const tokenize=Whisper.prototype.textToTokens.bind(w),decode=Whisper.prototype.decodeTokens.bind(w);\r\n const findPath=async(...args)=>{const start=profile?performance.now():0;try{return await Whisper.prototype.findAlignmentPathFromCrossAttentionQKs.apply(w,args);}finally{if(profile)profile.pathMs+=performance.now()-start;}};\r\n w.textToTokens=text=>{const tokens=tokenize(language==='ja'?naturalJapaneseSpacing(text):text);if(!lyricTokens&&text!==' ')lyricTokens=tokens;return tokens;};\r\n w.recognize=(audio,task,language,options,...rest)=>Whisper.prototype.recognize.call(w,audio,task,language,{...options,decodeTimestampTokens:false},...rest);\r\n w.decodeTokens=async(initialTokens,duration,isFirst,isFinal,options,filter,callbacks)=>{\r\n if(!filter||!lyricTokens)throw Error('Only guided lyric alignment is supported');const remaining=lyricTokens.slice(consumed),eot=w.specialTokens.endOfTextToken;\r\n if(profile){profile.lyricTokens=lyricTokens.length;if(isFinal)profile.finalRemaining=remaining.length;}\r\n options={...options,maxTokensPerPart:lookaheadBudget(lyricTokens.length,virtual.length,duration,remaining.length,isFinal,Math.min(440,448-initialTokens.length),this.config.lookaheadRatio??1.15)};\r\n subset(m,remaining,eot,this.config.alignmentOnly);w.context=speculativeNativeContext(m,originalContext,remaining,eot,options.maxTokensPerPart,this.config.batchSize);\r\n const guidedFilter=(logits,tokens)=>{const next=remaining[tokens.filter(t=>t<eot).length]??eot;return logits.map((value,index)=>index===next||(!isFinal&&index===eot)?value:-Infinity);};\r\n let decoded;try{decoded=this.config.guided?await (isFinal?decodeAllKnownTokens:decodeKnownTokens)(originalContext,initialTokens,remaining,eot,options.maxTokensPerPart,this.config.batchSize):await decode(initialTokens,duration,isFirst,isFinal,options,guidedFilter,callbacks);}finally{w.context=originalContext;}\r\n const offset=originalContext.audioOffset,last=decoded.decodedTokens.at(-1),timestampStart=w.specialTokens.timestampTokensStart;\r\n 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;\r\n decoded.alignmentPath=await coarseAttentionPath(findPath,decoded.decodedTokensCrossAttentionQKs.slice(count),decoded.decodedTokens.slice(count),frames,this.config.attentionStride??1);decoded.alignmentFrames=frames;\r\n if(!isFinal)decoded=trimAttentionPrefix(decoded,decoded.alignmentPath,count,frames-(this.config.overlapFrames??Math.round(this.config.audioContext/6)),timestampStart,eot);\r\n workerPath={path:decoded.alignmentPath,frames:decoded.alignmentFrames,tokens:decoded.decodedTokens.slice(count)};\r\n if(profile)(profile.parts??=[]).push({offsetSeconds:offset/16000*this.config.timeScale,remaining:remaining.length,budget:options.maxTokensPerPart,kept:decoded.decodedTokens.slice(count).filter(t=>t<eot).length,isFinal});\r\n consumed+=decoded.decodedTokens.slice(count).filter(t=>t<eot).length;decoded.decodedTokensCrossAttentionQKs=decoded.decodedTokens.map(()=>undefined);\r\n return decoded;\r\n };\r\n w.findAlignmentPathFromCrossAttentionQKs=async(qks,tokens,start,end)=>{if(!workerPath||start!==0||end!==workerPath.frames||JSON.stringify(tokens)!==JSON.stringify(workerPath.tokens))throw Error('Alignment boundary mismatch');const path=workerPath.path;workerPath=undefined;return path;};\r\n let words=await w.align({audioChannels:[virtual],sampleRate:16000},lyrics,language,'transcribe',{model:'tiny',enableGPU:false,threadCount:this.threads,gpuDeviceIndex:0,timestampAccuracy:'medium',maxTokensPerPart:448,endTokenThreshold:1},{logLevel:'silent'});\r\n if(language==='ja')words=tokenTextUnits(words,tokens=>w.tokensToText(tokens),token=>w.isTextToken(token));scaleTimeline(words,this.config.timeScale,audio.length/16000);\r\n return{words,metrics:{initializationSeconds:this.initializationSeconds,alignmentSeconds:(performance.now()-alignStart)/1000,totalSeconds:this.initializationSeconds+(performance.now()-alignStart)/1000,...(profile?{profile}:{})}};\r\n }\r\n async transcribe(audio,language){validatePcm(audio);return transcribeAudio(this,audio,language);}\r\n dispose(){this.whisper?.tiktoken?.free();this.whisper=undefined;this.module?._poc_close();this.module?.PThread?.terminateAllThreads();this.module=undefined;}\r\n}\r\n", "export const DEFAULT_MODEL_URL = 'https://huggingface.co/ggerganov/whisper.cpp/resolve/5359861c739e955e79d9a303bcbc70fb988958b1/ggml-tiny-q5_1.bin';\r\nexport const DEFAULT_MODEL_SHA256 = '818710568da3ca15689e31a743197b520007872ff9576237bda97bd1b469c3d7';\r\n", "import { DEFAULT_MODEL_URL, DEFAULT_MODEL_SHA256 } from './model.ts';\r\nimport type { Capabilities, ErrorCode, LyricAlignBinding, LyricAlignSession, OperationContext, Progress } from './contract.ts';\r\nexport type * from './contract.ts';\r\n\r\nexport interface BindingOptions {\r\n workerUrl?: string | URL;\r\n assetBaseUrl?: string | URL;\r\n /** Relocate the pinned model; its SHA256 is always verified. */\r\n modelUrl?: string | URL;\r\n threads?: 1 | 2 | 4 | 6 | 8 | 12;\r\n}\r\n\r\nexport function libraryError(code: ErrorCode, message: string): Error & { code: ErrorCode } {\r\n return Object.assign(new Error(message), { code });\r\n}\r\nconst codes: readonly string[] = ['UNSUPPORTED_LANGUAGE','UNSUPPORTED_DEVICE','UNSUPPORTED_OPTION','MODEL_LOAD_FAILED','INVALID_INPUT','OUT_OF_MEMORY','TRANSCRIPTION_FAILED','ALIGNMENT_FAILED','ABORTED'];\r\nfunction normalizeError(value: unknown, fallback: ErrorCode) {\r\n const error = value as { code?: string; message?: string } | null;\r\n const message = typeof error?.message === 'string' ? error.message : String(value);\r\n const code = codes.includes(error?.code ?? '') ? error!.code as ErrorCode\r\n : /out of memory|cannot allocate memory|allocation failed|memory access out of bounds/i.test(message) ? 'OUT_OF_MEMORY' : fallback;\r\n return libraryError(code, message);\r\n}\r\nconst capabilities: Capabilities = Object.freeze({\r\n contractVersion: 1, libraryVersion: '1.0.0',\r\n supportedLanguages: Object.freeze(['en', 'ja', 'zh']),\r\n model: Object.freeze({ id: 'ggerganov/whisper.cpp/ggml-tiny-q5_1.bin', revision: '5359861c739e955e79d9a303bcbc70fb988958b1', device: 'wasm' as const, dtype: 'q5_1' }),\r\n alignmentOptions: Object.freeze(['threshold', 'karaoke'] as const), lyricsContext: false,\r\n});\r\nfunction language(value: unknown, fallback: string): string {\r\n if (value === undefined) return fallback;\r\n if (typeof value !== 'string' || !capabilities.supportedLanguages.includes(value)) throw libraryError('UNSUPPORTED_LANGUAGE', `Unsupported language: ${String(value)}`);\r\n return value;\r\n}\r\nfunction optionsOnly(options: object, keys: readonly string[]) {\r\n if (!options || typeof options !== 'object' || Array.isArray(options)) throw libraryError('INVALID_INPUT', 'Options must be an object');\r\n for (const key of Object.keys(options)) if (!keys.includes(key)) throw libraryError('UNSUPPORTED_OPTION', `Unsupported option: ${key}`);\r\n}\r\n\r\n/** No model, Worker, fetch or device access occurs until prepare(). */\r\nexport function createBinding(options: BindingOptions = {}): LyricAlignBinding {\r\n optionsOnly(options, ['workerUrl', 'assetBaseUrl', 'modelUrl', 'threads']);\r\n const config = { ...options };\r\n if (![1,2,4,6,8,12].includes(config.threads ?? 8)) throw libraryError('UNSUPPORTED_OPTION', 'Unsupported thread count');\r\n return Object.freeze({ capabilities, async createSession(): Promise<LyricAlignSession> {\r\n let worker: Worker | undefined, disposed = false, ready = false, busy = false, preparedLanguage = 'en', requestId = 0;\r\n let active: { id: number; reject: (error: unknown) => void; resolve: (value: any) => void; progress: (data: any) => void; code: ErrorCode } | undefined;\r\n function stop(error = libraryError('ABORTED', 'Session disposed')) {\r\n disposed = true; ready = false;\r\n worker?.terminate(); worker = undefined;\r\n const current = active; active = undefined; current?.reject(error);\r\n }\r\n function request(message: Record<string, unknown>, code: ErrorCode, progress: (data: any) => void, transfer: Transferable[] = []) {\r\n return new Promise<any>((resolve, reject) => {\r\n const id = ++requestId;\r\n active = { id, resolve, reject, progress, code };\r\n try { worker!.postMessage({ ...message, id }, transfer); }\r\n catch (error) { active = undefined; reject(normalizeError(error, code)); }\r\n });\r\n }\r\n async function operation<T>(phase: Progress['phase'], context: OperationContext, work: (emit: (data?: any) => void) => Promise<T>): Promise<T> {\r\n if (!context?.signal || typeof context.signal.addEventListener !== 'function') throw libraryError('INVALID_INPUT', 'An AbortSignal is required');\r\n if (context.signal.aborted) throw libraryError('ABORTED', 'Operation aborted');\r\n if (disposed || busy) throw libraryError('INVALID_INPUT', disposed ? 'Session is disposed' : 'Session is busy');\r\n busy = true;\r\n let sequence = 0;\r\n const emit = (data?: any) => {\r\n if (disposed || context.signal.aborted) return;\r\n const base = { phase, sequence: ++sequence, ...(typeof data?.stage === 'string' ? { detail: data.stage } : {}) };\r\n // Only explicitly typed native measurements can be forwarded. Legacy\r\n // sample counters and untyped model totals are deliberately indeterminate.\r\n const measured = data?.kind === 'measured' && Number.isFinite(data.completed) && Number.isFinite(data.total)\r\n && data.total > 0 && data.completed >= 0 && data.completed <= data.total\r\n && ['bytes','seconds','items'].includes(data.unit) && typeof data.scope === 'string' && data.scope.length > 0;\r\n const event: Progress = measured ? { ...base, kind: 'measured', completed: data.completed, total: data.total, unit: data.unit, scope: data.scope } : { ...base, kind: 'indeterminate' };\r\n try { context.onProgress?.(event); } catch { /* Observers cannot break computation. */ }\r\n };\r\n const abort = () => stop(libraryError('ABORTED', 'Operation aborted'));\r\n context.signal.addEventListener('abort', abort, { once: true });\r\n try {\r\n emit();\r\n if (disposed || context.signal.aborted) throw libraryError('ABORTED', 'Operation aborted');\r\n const result = await work(emit);\r\n if (disposed || context.signal.aborted) throw libraryError('ABORTED', 'Operation aborted');\r\n return result;\r\n }\r\n catch (error) { throw normalizeError(error, phase === 'preparing-model' ? 'MODEL_LOAD_FAILED' : phase === 'transcribing' ? 'TRANSCRIPTION_FAILED' : 'ALIGNMENT_FAILED'); }\r\n finally { busy = false; context.signal.removeEventListener('abort', abort); }\r\n }\r\n return {\r\n prepare(opts, context) {\r\n return operation('preparing-model', context, async emit => {\r\n optionsOnly(opts, ['language']); const selected = language(opts.language, preparedLanguage);\r\n if (ready) { preparedLanguage = selected; return; }\r\n if (typeof Worker === 'undefined' || typeof WebAssembly === 'undefined' || typeof SharedArrayBuffer === 'undefined' || !globalThis.crossOriginIsolated || !globalThis.isSecureContext) throw libraryError('UNSUPPORTED_DEVICE', 'tiny/WASM requires a secure cross-origin-isolated browser with Worker and SharedArrayBuffer');\r\n try {\r\n worker = new Worker(new URL(String(config.workerUrl ?? './worker.js'), import.meta.url));\r\n worker.addEventListener('message', ({ data }) => {\r\n const current = active; if (!current || data?.id !== current.id) return;\r\n if (data.type === 'progress') current.progress(data);\r\n else if (data.type === 'result') { active = undefined; current.resolve(data.result); }\r\n else if (data.type === 'error') { active = undefined; current.reject(normalizeError(data.error, current.code)); }\r\n });\r\n const crash = (message: string) => stop(libraryError(active?.code ?? 'MODEL_LOAD_FAILED', message));\r\n worker.addEventListener('error', event => crash(event.message || 'Worker crashed'));\r\n worker.addEventListener('messageerror', () => crash('Could not deserialize Worker response'));\r\n const base = new URL(String(config.assetBaseUrl ?? './assets/'), import.meta.url); if (!base.pathname.endsWith('/')) base.pathname += '/';\r\n await request({ type: 'initialize', options: { modelUrl: String(config.modelUrl ?? DEFAULT_MODEL_URL), modelSha256: DEFAULT_MODEL_SHA256, assetBaseUrl: base.href, threads: config.threads ?? 8 } }, 'MODEL_LOAD_FAILED', emit);\r\n ready = true; preparedLanguage = selected;\r\n } catch (error) { const normalized = normalizeError(error, 'MODEL_LOAD_FAILED'); stop(normalized); throw normalized; }\r\n });\r\n },\r\n transcribe(audio, opts, context) {\r\n return operation('transcribing', context, async emit => {\r\n if (!ready) throw libraryError('INVALID_INPUT', 'Call prepare before transcribe');\r\n optionsOnly(opts, ['language']); const selected = language(opts.language, preparedLanguage);\r\n if (!audio || audio.sampleRate !== 16000 || !(audio.pcm instanceof Float32Array) || !audio.pcm.length) throw libraryError('INVALID_INPUT', 'Expected nonempty mono Float32Array PCM at 16000 Hz');\r\n for (const sample of audio.pcm) if (!Number.isFinite(sample)) throw libraryError('INVALID_INPUT', 'PCM samples must be finite');\r\n const copy = audio.pcm.slice();\r\n return request({ type: 'transcribe', audio: copy, language: selected }, 'TRANSCRIPTION_FAILED', emit, [copy.buffer]);\r\n });\r\n },\r\n align(segments, lyrics, opts, context) {\r\n return operation('aligning', context, async emit => {\r\n if (!ready) throw libraryError('INVALID_INPUT', 'Call prepare before align');\r\n optionsOnly(opts, ['threshold','karaoke']);\r\n if (opts.karaoke !== undefined && opts.karaoke !== false) throw libraryError('UNSUPPORTED_OPTION', 'Only karaoke=false is supported');\r\n if (opts.threshold !== undefined && (!Number.isFinite(opts.threshold) || opts.threshold < 0 || opts.threshold > 1)) throw libraryError('INVALID_INPUT', 'threshold must be between 0 and 1');\r\n return request({ type: 'align-segments', segments, lyrics, options: opts }, 'ALIGNMENT_FAILED', emit);\r\n });\r\n },\r\n async dispose() { stop(); },\r\n };\r\n } });\r\n}\r\nexport const binding = createBinding();\r\n", "import type { AlignedLine, AlignOptions, Segment, Word } from '../contract.ts';\r\nimport { libraryError } from '../binding.ts';\r\n\r\nconst normalize = (text: string): string[] => Array.from(text.normalize('NFKC').toLocaleLowerCase('und').replace(/[^\\p{L}\\p{N}]/gu, ''));\r\ntype Evidence = { char: string; start: number; end: number; unit: number };\r\nfunction validTime(start: unknown, end: unknown): boolean {\r\n return typeof start === 'number' && typeof end === 'number' && Number.isFinite(start) && Number.isFinite(end) && start >= 0 && end > start;\r\n}\r\nfunction invalid(message: string): never { throw libraryError('INVALID_INPUT', message); }\r\n\r\n/** Global monotonic text alignment. Timings come exclusively from ASR evidence. */\r\nexport function alignSegments(segments: readonly Segment[], lyrics: readonly string[], options: AlignOptions): AlignedLine[] {\r\n if (!Array.isArray(segments) || !Array.isArray(lyrics) || lyrics.some(line => typeof line !== 'string')) invalid('Expected segment and lyric arrays');\r\n if (!options || typeof options !== 'object') invalid('Expected alignment options');\r\n for (const key of Object.keys(options)) if (!['threshold','karaoke'].includes(key)) throw libraryError('UNSUPPORTED_OPTION', `Unsupported option: ${key}`);\r\n if (options.karaoke !== undefined && options.karaoke !== false) throw libraryError('UNSUPPORTED_OPTION', 'Only karaoke=false is supported');\r\n const threshold = options.threshold ?? .65;\r\n if (!Number.isFinite(threshold) || threshold < 0 || threshold > 1) invalid('threshold must be between 0 and 1');\r\n const evidence: Evidence[] = [];\r\n let previous = -1, unitId = 0;\r\n for (const segment of segments) {\r\n if (!segment || typeof segment.text !== 'string' || !validTime(segment.start, segment.end) || segment.start < previous) invalid('Invalid or unordered ASR segment');\r\n previous = segment.start;\r\n if (segment.words !== undefined && !Array.isArray(segment.words)) invalid('Expected ASR word array');\r\n const units = segment.words?.length ? segment.words.map((w: Word) => {\r\n if (!w || typeof w !== 'object') invalid('Invalid ASR word');\r\n return {text:w.word,start:w.start,end:w.end};\r\n }) : [segment];\r\n let wordStart = segment.start;\r\n for (const unit of units) {\r\n 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');\r\n wordStart = unit.start;\r\n const id = unitId++;\r\n for (const char of normalize(unit.text)) evidence.push({ char, start: unit.start, end: unit.end, unit: id });\r\n }\r\n }\r\n const lines = lyrics.map(normalize), target = lines.flat(), width = evidence.length + 1;\r\n const cells = (target.length + 1) * width;\r\n // Reject explicitly instead of silently dropping the tail of a long song.\r\n if (cells > 64_000_000) invalid('Text alignment exceeds 64 million cells; reduce ASR/lyric text size');\r\n const trace = new Uint8Array(cells);\r\n let row = Int32Array.from({length: width}, (_, j) => -j), next = new Int32Array(width);\r\n for (let i = 1; i <= target.length; i++) {\r\n next[0] = -i;\r\n for (let j = 1; j < width; j++) {\r\n const diagonal = row[j-1] + (target[i-1] === evidence[j-1].char ? 2 : -2);\r\n const up = row[j] - 1, left = next[j-1] - 1;\r\n next[j] = Math.max(diagonal, up, left);\r\n trace[i*width+j] = diagonal >= up && diagonal >= left ? 1 : up >= left ? 2 : 3;\r\n }\r\n [row, next] = [next, row];\r\n }\r\n const mapping = new Int32Array(target.length).fill(-1);\r\n let i = target.length, j = evidence.length;\r\n while (i > 0 && j > 0) {\r\n const direction = trace[i*width+j];\r\n if (direction === 1) { mapping[--i] = --j; }\r\n else if (direction === 2) i--;\r\n else j--;\r\n }\r\n let offset = 0;\r\n const unitsByLine: Set<number>[] = [];\r\n const result = lyrics.map((line, index) => {\r\n const chars = lines[index], positions = mapping.subarray(offset, offset + chars.length); offset += chars.length;\r\n const assigned = Array.from(positions).filter(p => p >= 0);\r\n let score = 0, start: number | null = null, end: number | null = null;\r\n const units = new Set<number>(); unitsByLine.push(units);\r\n if (chars.length && assigned.length) {\r\n const first = assigned[0], last = assigned.at(-1)!;\r\n let equal = 0;\r\n for (let k = 0; k < positions.length; k++) if (positions[k] >= 0 && chars[k] === evidence[positions[k]].char) equal++;\r\n score = equal / Math.max(chars.length, last - first + 1);\r\n if (equal > 0 && score >= threshold) {\r\n start = evidence[first].start;\r\n end = 0;\r\n for (let p = first; p <= last; p++) { units.add(evidence[p].unit); end = Math.max(end,evidence[p].end); }\r\n }\r\n }\r\n return { line, start, end, score, matched: start !== null && end !== null };\r\n });\r\n const owners = new Map<number, number[]>();\r\n unitsByLine.forEach((units,line) => { for (const unit of units) { const lines = owners.get(unit) ?? []; lines.push(line); owners.set(unit,lines); } });\r\n // One coarse word/segment cannot independently locate multiple lyric lines.\r\n // Preserve legitimate overlap between distinct ASR units, but never split or\r\n // interpolate timing inside a unit that has no finer timing evidence.\r\n for (const lines of owners.values()) if (lines.length > 1) for (const line of lines) Object.assign(result[line],{start:null,end:null,matched:false});\r\n return result;\r\n}\r\n", "// Classic Worker entry: bundled as IIFE so Emscripten importScripts remains available.\r\nimport { BrowserEngine } from './engine/engine.mjs';\r\nimport { alignSegments } from './engine/align-segments.ts';\r\n// Replaced only by the experimental benchmark bundler; absent in release builds.\r\ndeclare const __ALIGN_EXPERIMENT__: Record<string, unknown>;\r\nconst engineConfig = typeof __ALIGN_EXPERIMENT__ === 'undefined' ? {} : __ALIGN_EXPERIMENT__;\r\nconst scope = self as unknown as DedicatedWorkerGlobalScope;\r\nlet engine: BrowserEngine | undefined;\r\nlet busy = false;\r\nscope.onmessage = async ({ data }) => {\r\n const { id, type } = data;\r\n const fail = (error: unknown) => { const e = error instanceof Error ? error : new Error(String(error)); scope.postMessage({ id, type: 'error', error: { name: e.name, message: e.message, code: (e as Error & {code?: string}).code } }); };\r\n if (busy) { fail(new Error('Engine is busy')); return; }\r\n busy = true;\r\n try {\r\n let result;\r\n if (type === 'initialize') { if (engine) throw new Error('Engine is already initialized'); engine = new BrowserEngine(engineConfig); result = await engine.initialize(data.options, (stage: string, completed?: number, total?: number) => scope.postMessage({id,type:'progress',stage,completed,total})); }\r\n else if (type === 'align') { if (!engine) throw new Error('Engine is not initialized'); engine.progress = (stage: string, completed?: number, total?: number) => scope.postMessage({id,type:'progress',stage,completed,total}); result = await engine.align(data.audio,data.lyrics,data.language); }\r\n else if (type === 'transcribe') { if (!engine) throw new Error('Engine is not initialized'); engine.progress = (stage: string) => scope.postMessage({id,type:'progress',stage}); result = await engine.transcribe(data.audio,data.language); }\r\n else if (type === 'align-segments') { if (!engine) throw new Error('Engine is not initialized'); result = alignSegments(data.segments,data.lyrics,data.options); }\r\n else if (type === 'dispose') { engine?.dispose(); engine = undefined; result = { disposed: true }; }\r\n else throw new Error(`Unknown worker request: ${type}`);\r\n scope.postMessage({ id, type: 'result', result });\r\n } catch (error) { if (type === 'initialize') { engine?.dispose(); engine=undefined; } fail(error); }\r\n finally { busy=false; }\r\n};\r\n"],
5
- "mappings": "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",
6
- "names": ["language", "language", "normalize", "ptr", "wasm", "module", "engine", "language", "w", "language", "audio", "busy", "j", "i", "lines"]
3
+ "sources": ["../src/engine/word-patterns.json", "../src/engine/helpers.mjs", "../src/engine/vector-math.mjs", "../src/engine/dtw.mjs", "../src/engine/whisper.mjs", "../node_modules/.pnpm/tiktoken@1.0.22/node_modules/tiktoken/lite/tiktoken_bg.js", "../node_modules/.pnpm/tiktoken@1.0.22/node_modules/tiktoken/lite/init.js", "../src/engine/tokenizer.mjs", "../src/core/speculative-context.mjs", "../src/core/vocab-subset.mjs", "../src/core/audio-time-scale.mjs", "../src/engine/native-context.mjs", "../src/core/lyrics.mjs", "../src/core/token-units.mjs", "../src/core/attention-trim.mjs", "../src/engine/transcribe.mjs", "../src/engine/guided-decode.mjs", "../src/engine/attention-resolution.mjs", "../src/engine/posterior-boundaries.mjs", "../src/engine/gap-alignment.mjs", "../src/core/score.mjs", "../src/engine/lyric-pauses.mjs", "../src/engine/engine.mjs", "../src/model.ts", "../src/binding.ts", "../src/engine/align-segments.ts", "../src/worker.ts"],
4
+ "sourcesContent": ["{\"\":\"(?:(?: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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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\u00E4b\\\\.|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\\\\.\u00C4\\\\.|b\\\\.|M\\\\.|i\\\\.H\\\\.|v\\\\.R\\\\.w\\\\.|o\\\\.A\\\\.|St\\\\.|Dr\\\\.|Fn\\\\.|Abs\\\\.|Rd\\\\.|Dtzd\\\\.|Jahrh\\\\.|Z\\\\.|Std\\\\.|n\\\\. Chr\\\\.|m\u00F6bl\\\\.|t\u00E4gl\\\\.|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\\\\.\u00C4\\\\.|ehem\\\\.|n\u00E4ml\\\\.|u\\\\. Z\\\\.|v\\\\. u\\\\. Z\\\\.|sog\\\\.|C\\\\.|Dipl\\\\.-Kfm\\\\.|mtl\\\\.|Hrsg\\\\.|Qu\\\\.|r\u00F6m\\\\.|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\u00FCdd\\\\.|inkl\\\\.|geb\\\\.|Ggf\\\\.|Inc\\\\.|kath\\\\.|kfm\\\\.|Nr\\\\.|Proz\\\\.|Dim\\\\.|verw\\\\.|Reg\\\\.|Dat\\\\.|Evtl\\\\.|led\\\\.|F\\\\.|Test\\\\.|Schr\\\\.|Do\\\\.|PIN\\\\.|Z\\\\. Zt\\\\.|v\\\\.Chr\\\\.|T\u00E4gl\\\\.|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\u00FCngl\\\\.|r\u00F6m\\\\.-kath\\\\.|Okt\\\\.|u\\\\.\u00E4\\\\.|Tel\\\\.|D\\\\.|Ber\\\\.|Kop\\\\.|Mio\\\\.|Y\\\\.|U\\\\.S\\\\.A\\\\.|v\\\\. H\\\\.|Forts\\\\. f\\\\.|Rep\\\\.|Hptst\\\\.|\u00F6sterr\\\\.|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\u00E4b\\\\.|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\\\\.\u00E4\\\\.|b\\\\.|m\\\\.|i\\\\.h\\\\.|v\\\\.r\\\\.w\\\\.|o\\\\.a\\\\.|st\\\\.|dr\\\\.|fn\\\\.|abs\\\\.|rd\\\\.|dtzd\\\\.|jahrh\\\\.|z\\\\.|std\\\\.|n\\\\. chr\\\\.|m\u00F6bl\\\\.|t\u00E4gl\\\\.|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\\\\.\u00E4\\\\.|ehem\\\\.|n\u00E4ml\\\\.|u\\\\. z\\\\.|v\\\\. u\\\\. z\\\\.|sog\\\\.|c\\\\.|dipl\\\\.-kfm\\\\.|mtl\\\\.|hrsg\\\\.|qu\\\\.|r\u00F6m\\\\.|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\u00FCdd\\\\.|inkl\\\\.|geb\\\\.|ggf\\\\.|inc\\\\.|kath\\\\.|kfm\\\\.|nr\\\\.|proz\\\\.|dim\\\\.|verw\\\\.|reg\\\\.|dat\\\\.|evtl\\\\.|led\\\\.|f\\\\.|test\\\\.|schr\\\\.|do\\\\.|pin\\\\.|z\\\\. zt\\\\.|v\\\\.chr\\\\.|t\u00E4gl\\\\.|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\u00FCngl\\\\.|r\u00F6m\\\\.-kath\\\\.|okt\\\\.|u\\\\.\u00E4\\\\.|tel\\\\.|d\\\\.|ber\\\\.|kop\\\\.|mio\\\\.|y\\\\.|u\\\\.s\\\\.a\\\\.|v\\\\. h\\\\.|forts\\\\. f\\\\.|rep\\\\.|hptst\\\\.|\u00F6sterr\\\\.|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\u00C4B\\\\.|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\\\\.\u00C4\\\\.|B\\\\.|M\\\\.|I\\\\.H\\\\.|V\\\\.R\\\\.W\\\\.|O\\\\.A\\\\.|ST\\\\.|DR\\\\.|FN\\\\.|ABS\\\\.|RD\\\\.|DTZD\\\\.|JAHRH\\\\.|Z\\\\.|STD\\\\.|N\\\\. CHR\\\\.|M\u00D6BL\\\\.|T\u00C4GL\\\\.|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\\\\.\u00C4\\\\.|EHEM\\\\.|N\u00C4ML\\\\.|U\\\\. Z\\\\.|V\\\\. U\\\\. Z\\\\.|SOG\\\\.|C\\\\.|DIPL\\\\.-KFM\\\\.|MTL\\\\.|HRSG\\\\.|QU\\\\.|R\u00D6M\\\\.|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\u00DCDD\\\\.|INKL\\\\.|GEB\\\\.|GGF\\\\.|INC\\\\.|KATH\\\\.|KFM\\\\.|NR\\\\.|PROZ\\\\.|DIM\\\\.|VERW\\\\.|REG\\\\.|DAT\\\\.|EVTL\\\\.|LED\\\\.|F\\\\.|TEST\\\\.|SCHR\\\\.|DO\\\\.|PIN\\\\.|Z\\\\. ZT\\\\.|V\\\\.CHR\\\\.|T\u00C4GL\\\\.|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\u00DCNGL\\\\.|R\u00D6M\\\\.-KATH\\\\.|OKT\\\\.|U\\\\.\u00C4\\\\.|TEL\\\\.|D\\\\.|BER\\\\.|KOP\\\\.|MIO\\\\.|Y\\\\.|U\\\\.S\\\\.A\\\\.|V\\\\. H\\\\.|FORTS\\\\. F\\\\.|REP\\\\.|HPTST\\\\.|\u00D6STERR\\\\.|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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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\u00E9\\\\.|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\u00E1b\\\\.|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\u00F1a\\\\.|Seg\\\\.|mar\\\\.|Rvdmo\\\\.|Reg\\\\.|ms\\\\.|Sras\\\\.|sres\\\\.|U\\\\.S\\\\.A\\\\.|Sta\\\\.|Sdad\\\\.|Dra\\\\.|srs\\\\.|R\\\\.U\\\\.|deptos\\\\.|dpto\\\\.|jun\\\\.|bco\\\\.|C\u00EDa\\\\.|Id\\\\.|Mr\\\\.|e\\\\.g\\\\.|C\\\\.S\\\\.|Excmas\\\\.|D\u00AA\\\\.|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\u00E9\\\\.|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\u00E1b\\\\.|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\u00F1a\\\\.|seg\\\\.|mar\\\\.|rvdmo\\\\.|reg\\\\.|ms\\\\.|sras\\\\.|sres\\\\.|u\\\\.s\\\\.a\\\\.|sta\\\\.|sdad\\\\.|dra\\\\.|srs\\\\.|r\\\\.u\\\\.|deptos\\\\.|dpto\\\\.|jun\\\\.|bco\\\\.|c\u00EDa\\\\.|id\\\\.|mr\\\\.|e\\\\.g\\\\.|c\\\\.s\\\\.|excmas\\\\.|d\u00AA\\\\.|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\u00C9\\\\.|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\u00C1B\\\\.|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\u00D1A\\\\.|SEG\\\\.|MAR\\\\.|RVDMO\\\\.|REG\\\\.|MS\\\\.|SRAS\\\\.|SRES\\\\.|U\\\\.S\\\\.A\\\\.|STA\\\\.|SDAD\\\\.|DRA\\\\.|SRS\\\\.|R\\\\.U\\\\.|DEPTOS\\\\.|DPTO\\\\.|JUN\\\\.|BCO\\\\.|C\u00CDA\\\\.|ID\\\\.|MR\\\\.|E\\\\.G\\\\.|C\\\\.S\\\\.|EXCMAS\\\\.|D\u00AA\\\\.|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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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\u00F4p\\\\.|Mart\\\\.|juil\\\\.|broch\\\\.|adr\\\\.|symb\\\\.|C\\\\.|anc\\\\.|voit\\\\.|Jr\\\\.|graph\\\\.|dir\\\\.|\u00E9d\\\\.|fig\\\\.|\u00E9dit\\\\.|niv\\\\.|quart\\\\.|cam\\\\.|\u00E9val\\\\.|anon\\\\.|r\u00E9f\\\\.|Comm\\\\.|Prof\\\\.|f\u00E9vr\\\\.|indus\\\\.|DC\\\\.|\u00E9quiv\\\\.|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\u00E9c\\\\.|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\u00F4p\\\\.|mart\\\\.|juil\\\\.|broch\\\\.|adr\\\\.|symb\\\\.|c\\\\.|anc\\\\.|voit\\\\.|jr\\\\.|graph\\\\.|dir\\\\.|\u00E9d\\\\.|fig\\\\.|\u00E9dit\\\\.|niv\\\\.|quart\\\\.|cam\\\\.|\u00E9val\\\\.|anon\\\\.|r\u00E9f\\\\.|comm\\\\.|prof\\\\.|f\u00E9vr\\\\.|indus\\\\.|dc\\\\.|\u00E9quiv\\\\.|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\u00E9c\\\\.|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\u00D4P\\\\.|MART\\\\.|JUIL\\\\.|BROCH\\\\.|ADR\\\\.|SYMB\\\\.|C\\\\.|ANC\\\\.|VOIT\\\\.|JR\\\\.|GRAPH\\\\.|DIR\\\\.|\u00C9D\\\\.|FIG\\\\.|\u00C9DIT\\\\.|NIV\\\\.|QUART\\\\.|CAM\\\\.|\u00C9VAL\\\\.|ANON\\\\.|R\u00C9F\\\\.|COMM\\\\.|PROF\\\\.|F\u00C9VR\\\\.|INDUS\\\\.|DC\\\\.|\u00C9QUIV\\\\.|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\u00C9C\\\\.|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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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\u00F4n\\\\.|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\u00E9d\\\\.|jur\\\\.|com\\\\.|anat\\\\.|dir\\\\.|end\\\\.|f\u00EDs\\\\.|E\\\\.|Est\\\\.|cont\\\\.|matem\\\\.|Drs\\\\.|g\u00EAn\\\\.|neol\\\\.|p\u00E1g\\\\.|\u00EDnd\\\\.|Ltda\\\\.|Exma\\\\.|esp\\\\.|ingl\\\\.|tecnol\\\\.|Mar\\\\.|s\u00EDmb\\\\.|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\u00E9d\\\\.|odontol\\\\.|org\\\\.|A\\\\.C\\\\.|jun\\\\.|d\u00E9b\\\\.|Av\\\\.|\u00E1lg\\\\.|sup\\\\.|fl\\\\.|odont\\\\.|caps\\\\.|relat\\\\.|organiz\\\\.|hist\\\\.|Fr\\\\.|Ilmo\\\\.|fem\\\\.|ap\\\\.|Ltd\\\\.|pol\\\\.|s\u00E9c\\\\.|prof\\\\.|cx\\\\.|nov\\\\.|qu\u00EDm\\\\.|m\u00FAs\\\\.|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\u00E1ut\\\\.|biogr\\\\.|f\\\\.|c\u00EDrc\\\\.|fac\\\\.|d\\\\.C\\\\.|apart\\\\.|ex\\\\.|Jr\\\\.|set\\\\.|tec\\\\.|sociol\\\\.|gram\\\\.|ind\\\\.|Ilma\\\\.|vol\\\\.|eng\\\\.|rod\\\\.|Ph\\\\.D\\\\.|Dras\\\\.|pp\\\\.|elem\\\\.|m\u00E1q\\\\.|c\u00F3d\\\\.|eletr\\\\.|prod\\\\.|ref\\\\.|fil\\\\.|a\\\\.m\\\\.|A\\\\.M|obs\\\\.|N\\\\.T\\\\.|contab\\\\.|Sto\\\\.|lit\\\\.|educ\\\\.|rementente|desc\\\\.|pr\u00F3x\\\\.|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\u00F4n\\\\.|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\u00E9d\\\\.|jur\\\\.|com\\\\.|anat\\\\.|dir\\\\.|end\\\\.|f\u00EDs\\\\.|e\\\\.|est\\\\.|cont\\\\.|matem\\\\.|drs\\\\.|g\u00EAn\\\\.|neol\\\\.|p\u00E1g\\\\.|\u00EDnd\\\\.|ltda\\\\.|exma\\\\.|esp\\\\.|ingl\\\\.|tecnol\\\\.|mar\\\\.|s\u00EDmb\\\\.|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\u00E9d\\\\.|odontol\\\\.|org\\\\.|a\\\\.c\\\\.|jun\\\\.|d\u00E9b\\\\.|av\\\\.|\u00E1lg\\\\.|sup\\\\.|fl\\\\.|odont\\\\.|caps\\\\.|relat\\\\.|organiz\\\\.|hist\\\\.|fr\\\\.|ilmo\\\\.|fem\\\\.|ap\\\\.|ltd\\\\.|pol\\\\.|s\u00E9c\\\\.|prof\\\\.|cx\\\\.|nov\\\\.|qu\u00EDm\\\\.|m\u00FAs\\\\.|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\u00E1ut\\\\.|biogr\\\\.|f\\\\.|c\u00EDrc\\\\.|fac\\\\.|d\\\\.c\\\\.|apart\\\\.|ex\\\\.|jr\\\\.|set\\\\.|tec\\\\.|sociol\\\\.|gram\\\\.|ind\\\\.|ilma\\\\.|vol\\\\.|eng\\\\.|rod\\\\.|ph\\\\.d\\\\.|dras\\\\.|pp\\\\.|elem\\\\.|m\u00E1q\\\\.|c\u00F3d\\\\.|eletr\\\\.|prod\\\\.|ref\\\\.|fil\\\\.|a\\\\.m\\\\.|a\\\\.m|obs\\\\.|n\\\\.t\\\\.|contab\\\\.|sto\\\\.|lit\\\\.|educ\\\\.|rementente|desc\\\\.|pr\u00F3x\\\\.|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\u00D4N\\\\.|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\u00C9D\\\\.|JUR\\\\.|COM\\\\.|ANAT\\\\.|DIR\\\\.|END\\\\.|F\u00CDS\\\\.|E\\\\.|EST\\\\.|CONT\\\\.|MATEM\\\\.|DRS\\\\.|G\u00CAN\\\\.|NEOL\\\\.|P\u00C1G\\\\.|\u00CDND\\\\.|LTDA\\\\.|EXMA\\\\.|ESP\\\\.|INGL\\\\.|TECNOL\\\\.|MAR\\\\.|S\u00CDMB\\\\.|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\u00C9D\\\\.|ODONTOL\\\\.|ORG\\\\.|A\\\\.C\\\\.|JUN\\\\.|D\u00C9B\\\\.|AV\\\\.|\u00C1LG\\\\.|SUP\\\\.|FL\\\\.|ODONT\\\\.|CAPS\\\\.|RELAT\\\\.|ORGANIZ\\\\.|HIST\\\\.|FR\\\\.|ILMO\\\\.|FEM\\\\.|AP\\\\.|LTD\\\\.|POL\\\\.|S\u00C9C\\\\.|PROF\\\\.|CX\\\\.|NOV\\\\.|QU\u00CDM\\\\.|M\u00DAS\\\\.|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\u00C1UT\\\\.|BIOGR\\\\.|F\\\\.|C\u00CDRC\\\\.|FAC\\\\.|D\\\\.C\\\\.|APART\\\\.|EX\\\\.|JR\\\\.|SET\\\\.|TEC\\\\.|SOCIOL\\\\.|GRAM\\\\.|IND\\\\.|ILMA\\\\.|VOL\\\\.|ENG\\\\.|ROD\\\\.|PH\\\\.D\\\\.|DRAS\\\\.|PP\\\\.|ELEM\\\\.|M\u00C1Q\\\\.|C\u00D3D\\\\.|ELETR\\\\.|PROD\\\\.|REF\\\\.|FIL\\\\.|A\\\\.M\\\\.|A\\\\.M|OBS\\\\.|N\\\\.T\\\\.|CONTAB\\\\.|STO\\\\.|LIT\\\\.|EDUC\\\\.|REMENTENTE|DESC\\\\.|PR\u00D3X\\\\.|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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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})(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]|$))))*(?:[%\\\\$\u00A5\u20AC\u00A3\u20A9\u20AD\u20BD\u20AB\u0E3F\u00A2\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}]))|[_]))+(?:(?:[\u00B7\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}]))|[_]))+))\"}", "import patterns from './word-patterns.json' with {type:'json'};\nexport class Logger {start(){} async startAsync(){} end(){} write(){} log(){} logLevelGreaterOrEqualTo(){return false;}}\nexport class Timer {constructor(){this.start=performance.now();}get elapsedTime(){return performance.now()-this.start;}getElapsedTimeAndRestart(){const v=this.elapsedTime;this.start=performance.now();return v;}}\nexport const chalk={magentaBright:s=>s,blueBright:s=>s};\nexport const extendDeep=(base,options)=>({...base,...options});\nexport const getRawAudioDuration=audio=>audio.audioChannels[0].length/audio.sampleRate;\nexport const includesPunctuation=s=>/\\p{Punctuation}/u.test(s);\nexport const isAllWhitespace=s=>/^\\s+$/u.test(s);\nexport const containsInvalidCodepoint=s=>s.includes('\\uFFFD');\nexport const clip=(x,a,b)=>Math.max(a,Math.min(b,x));\nexport const getIntegerRange=(a,b)=>Array.from({length:Math.max(0,b-a)},(_,i)=>a+i);\nexport const yieldToEventLoop=async()=>{};\nexport const getDeflateCompressionMetricsForString=async()=>({ratio:0});\nexport const getTokenRepetitionScore=()=>{throw Error('Only fixed deterministic alignment is supported');};\nexport const getTopKIndexes=(values,k)=>{if(k!==1)throw Error('Only deterministic top-1 supported');let best=0;for(let i=1;i<values.length;i++)if(values[i]>values[best])best=i;return[best];};\nexport async function splitToWords(text,language){if(language!=='ja'&&language!=='zh')return{nonPunctuationWords:Array.from(text.matchAll(new RegExp(patterns[language]??patterns[''],'gu')),match=>match[0])};const segments=Array.from(new Intl.Segmenter(language,{granularity:'word'}).segment(text));if(language==='ja')for(let i=1;i<segments.length-1;i++)if(segments[i].segment==='\u30FB'&&segments[i-1].isWordLike&&segments[i+1].isWordLike){segments.splice(i-1,3,{segment:segments[i-1].segment+'\u30FB'+segments[i+1].segment,isWordLike:true});i=Math.max(0,i-2);}return {nonPunctuationWords:segments.filter(part=>part.isWordLike||/^[\\p{Emoji_Presentation}$\u20AC\u00A2\u00A3\u00A5\u00A9\u00AE\u2122%&#~@+\u00B1\u00F7/\\\\^*\u00D7=\u2248\u00BC\u00BD\u00BE\u2192\u2264\u2265\u221E]+$/u.test(part.segment)).map(part=>part.segment)};}\n", "// Numeric helpers adapted from Echogarden 3.4.0 (MIT, see THIRD_PARTY_NOTICES.md): only the functions the aligner calls.\nexport function meanOfVector(vector) {\n if (vector.length == 0) {\n return 0;\n }\n return sumVector(vector) / vector.length;\n}\n\nexport function medianOfVector(vector) {\n if (vector.length == 0) {\n throw new Error('Vector is empty');\n }\n const sortedArray = Array.from(vector).sort((a, b) => a - b);\n const median = sortedArray[Math.floor(sortedArray.length / 2)];\n return median;\n}\n\nexport function sumVector(vector) {\n const elementCount = vector.length;\n let result = 0.0;\n for (let i = 0; i < elementCount; i++) {\n result += vector[i];\n }\n return result;\n}\n\nexport function sumAndSumOfSquaresOfVector(vector) {\n const elementCount = vector.length;\n let sum = 0.0;\n let sumOfSquares = 0.0;\n for (let i = 0; i < elementCount; i++) {\n const value = vector[i];\n sum += value;\n sumOfSquares += value ** 2;\n }\n return { sum, sumOfSquares };\n}\n\nexport function maxValue(vector) {\n return vector[indexOfMax(vector)];\n}\n\nexport function indexOfMax(vector) {\n if (vector.length == 0) {\n return -1;\n }\n let maxValue = vector[0];\n let result = 0;\n for (let i = 1; i < vector.length; i++) {\n if (vector[i] > maxValue) {\n maxValue = vector[i];\n result = i;\n }\n }\n return result;\n}\n\nexport function softmax(logits, temperature = 1.0) {\n const logitCount = logits.length;\n if (logitCount === 0) {\n return new Float32Array(0);\n }\n let maxLogit = -Infinity;\n for (let i = 0; i < logitCount; i++) {\n const value = logits[i];\n if (value > maxLogit) {\n maxLogit = value;\n }\n }\n temperature = Math.max(temperature, 1e-5);\n const temperatureReciprocal = 1 / temperature;\n const results = new Float32Array(logitCount);\n let sumOfExponentiatedLogits = 0.0;\n for (let i = 0; i < logitCount; i++) {\n const logit = logits[i];\n const normalizedLogit = (logit - maxLogit) * temperatureReciprocal;\n const eToLogit = Math.exp(normalizedLogit);\n sumOfExponentiatedLogits += eToLogit;\n results[i] = eToLogit;\n }\n const sumOfExponentiatedValuesReciprocal = 1 / (sumOfExponentiatedLogits + 1e-20);\n for (let i = 0; i < logitCount; i++) {\n results[i] *= sumOfExponentiatedValuesReciprocal;\n }\n return results;\n}\n\nexport function medianOf5Filter(points) {\n // This function computes the moving median with a window of 5 elements.\n // I initialized the window such that at the edges of the range no median would be computed.\n // This is a form of optimization assuming that computing a median edge points\n // is less important.\n const pointCount = points.length;\n if (pointCount < 5) {\n return Float32Array.from(points);\n }\n const medians = new Float32Array(pointCount);\n medians[0] = points[0];\n medians[1] = points[1];\n medians[pointCount - 2] = points[pointCount - 2];\n medians[pointCount - 1] = points[pointCount - 1];\n for (let i = 2; i < pointCount - 2; i++) {\n medians[i] = medianOf5(points[i - 2], points[i - 1], points[i], points[i + 1], points[i + 2]);\n }\n return medians;\n}\n\nexport function medianOf5(a, b, c, d, e) {\n // These swapping computation should be faster than separately using the minimum and maximum\n // functions but maybe less readable.\n // Ensure b is greater or equal to a (swap if needed)\n if (b < a) {\n [a, b] = [b, a];\n }\n // Ensure d is greater or equal to c (swap if needed)\n if (d < c) {\n [c, d] = [d, c];\n }\n // What this part does is compute the two middle medians of the first 4 elements\n // given to the function (a, b, c, d), but it doesn't actually determine their relative order:\n const firstMedianOfABCD = Math.max(a, c); // First median of a, b, c, d\n const secondMedianOfABCD = Math.min(b, d); // Second median of a, b, c, d\n // Now in relation to all five numbers, the median can only be either\n // the first median of ABCD, the second median of ABCD, or E:\n return medianOf3(firstMedianOfABCD, secondMedianOfABCD, e);\n}\n\nexport function medianOf3(a, b, c) {\n // This function uses a decision tree to find the median of three numbers.\n //\n // I tried to ensure that the comparison preserved the natural altering of\n // a, b and c such that in case that they are given already in order,\n // then all the initial branches would be directly taken.\n // Possible orderings:\n //\n // a, b, c\n // a, c, b\n // b, a, c\n // b, c, a\n // c, a, b\n // c, b, a\n if (a <= b) {\n if (b <= c) {\n return b; // a, b, c\n }\n else if (a <= c) {\n return c; // a, c, b\n }\n else {\n return a; // c, a, b\n }\n }\n else {\n if (a <= c) {\n return a; // b, a, c\n }\n else if (b <= c) {\n return c; // b, c, a\n }\n else {\n return b; // c, b, a\n }\n }\n}\n//# sourceMappingURL=MedianFilter.js.map\n", "// Derived from Echogarden 3.4.0 (MIT; copyright Rotem Dan). Local changes and licence text: THIRD_PARTY_NOTICES.md.\nconst logToStderr=()=>{};\nconst log = logToStderr;\nexport function alignDTWWindowed(sequence1, sequence2, costFunction, windowMaxLength, centerIndexes) {\n windowMaxLength = Math.max(windowMaxLength, 2);\n if (sequence1.length == 0 || sequence2.length == 0) {\n return {\n path: [],\n pathCost: 0\n };\n }\n // Compute accumulated cost matrix (transposed)\n const { accumulatedCostMatrixTransposed, windowStartOffsets } = computeAccumulatedCostMatrixTransposed(sequence1, sequence2, costFunction, windowMaxLength, centerIndexes);\n // Find best path for the computed matrix\n const path = computeBestPathTransposed(accumulatedCostMatrixTransposed, windowStartOffsets);\n // Best path cost is the bottom right element of the matrix\n const columnCount = accumulatedCostMatrixTransposed.length;\n const rowCount = accumulatedCostMatrixTransposed[0].length;\n const pathCost = accumulatedCostMatrixTransposed[columnCount - 1][rowCount - 1];\n // Return\n return { path, pathCost };\n}\nfunction computeAccumulatedCostMatrixTransposed(sequence1, sequence2, costFunction, windowMaxLength, centerIndexes) {\n const halfWindowMaxLength = Math.floor(windowMaxLength / 2);\n const columnCount = sequence1.length;\n const rowCount = Math.min(windowMaxLength, sequence2.length);\n const accumulatedCostMatrixTransposed = new Array(columnCount);\n // Initialize an array to store window start offsets\n const windowStartOffsets = new Int32Array(columnCount);\n // Compute accumulated cost matrix column by column\n for (let columnIndex = 0; columnIndex < columnCount; columnIndex++) {\n // Create new column and add it to the matrix\n const currentColumn = new Float32Array(rowCount);\n accumulatedCostMatrixTransposed[columnIndex] = currentColumn;\n // Compute window center, or use given one\n let windowCenter;\n if (centerIndexes) {\n windowCenter = centerIndexes[columnIndex];\n }\n else {\n windowCenter = Math.floor((columnIndex / columnCount) * sequence2.length);\n }\n // Compute window start and end offsets\n let windowStartOffset = Math.max(windowCenter - halfWindowMaxLength, 0);\n let windowEndOffset = windowStartOffset + rowCount;\n if (windowEndOffset > sequence2.length) {\n windowEndOffset = sequence2.length;\n windowStartOffset = windowEndOffset - rowCount;\n }\n // Store the start offset for this column\n windowStartOffsets[columnIndex] = windowStartOffset;\n // Get target sequence1 value\n const targetSequence1Value = sequence1[columnIndex];\n // If this is the first column, fill it only using the 'up' neighbors\n if (columnIndex == 0) {\n for (let rowIndex = 1; rowIndex < rowCount; rowIndex++) {\n const cost = costFunction(targetSequence1Value, sequence2[windowStartOffset + rowIndex]);\n const upCost = currentColumn[rowIndex - 1];\n currentColumn[rowIndex] = cost + upCost;\n }\n continue;\n }\n // If not first column\n // Store the column to the left\n const leftColumn = accumulatedCostMatrixTransposed[columnIndex - 1];\n // Compute the delta between the current window start offset\n // and left column's window offset\n const windowOffsetDelta = windowStartOffset - windowStartOffsets[columnIndex - 1];\n // Compute the accumulated cost for all rows in the window\n for (let rowIndex = 0; rowIndex < rowCount; rowIndex++) {\n // Compute the cost for current cell\n const cost = costFunction(targetSequence1Value, sequence2[windowStartOffset + rowIndex]);\n // Retrieve the cost for the 'up' (insertion) neighbor\n let upCost = Infinity;\n if (rowIndex > 0) {\n upCost = currentColumn[rowIndex - 1];\n }\n // Retrieve the cost for the 'left' (deletion) neighbor\n let leftCost = Infinity;\n const leftRowIndex = rowIndex + windowOffsetDelta;\n if (leftRowIndex < rowCount) {\n leftCost = leftColumn[leftRowIndex];\n }\n // Retrieve the cost for the 'up and left' (match) neighbor\n let upAndLeftCost = Infinity;\n const upAndLeftRowIndex = leftRowIndex - 1;\n if (upAndLeftRowIndex >= 0 && upAndLeftRowIndex < rowCount) {\n upAndLeftCost = leftColumn[upAndLeftRowIndex];\n }\n // Find the minimum of all neighbors\n let minimumNeighborCost = minimumOf3(upCost, leftCost, upAndLeftCost);\n // If all neighbors are infinity, then it means there is a \"jump\" between the window\n // of the current column and the left column, and they don't have overlapping rows.\n // In this case, only the cost of the current cell will be used\n if (minimumNeighborCost === Infinity) {\n minimumNeighborCost = 0;\n }\n // Write cost + minimum neighbor cost to the current column\n currentColumn[rowIndex] = cost + minimumNeighborCost;\n }\n }\n return {\n accumulatedCostMatrixTransposed,\n windowStartOffsets\n };\n}\nfunction computeBestPathTransposed(accumulatedCostMatrixTransposed, windowStartOffsets) {\n const columnCount = accumulatedCostMatrixTransposed.length;\n const rowCount = accumulatedCostMatrixTransposed[0].length;\n const bestPath = [];\n // Start at the bottom right corner and find the best path\n // towards the top left\n let columnIndex = columnCount - 1;\n let rowIndex = rowCount - 1;\n while (columnIndex > 0 || rowIndex > 0) {\n const windowStartIndex = windowStartOffsets[columnIndex];\n const windowStartDelta = columnIndex > 0 ? windowStartIndex - windowStartOffsets[columnIndex - 1] : 0;\n // Add the current cell to the best path\n bestPath.push({\n source: columnIndex,\n dest: windowStartIndex + rowIndex\n });\n // Retrieve the cost for the 'up' (insertion) neighbor\n const upRowIndex = rowIndex - 1;\n let upCost = Infinity;\n if (upRowIndex >= 0) {\n upCost = accumulatedCostMatrixTransposed[columnIndex][upRowIndex];\n }\n // Retrieve the cost for the 'left' (deletion) neighbor\n const leftRowIndex = rowIndex + windowStartDelta;\n const leftColumnIndex = columnIndex - 1;\n let leftCost = Infinity;\n if (leftColumnIndex >= 0 && leftRowIndex < rowCount) {\n leftCost = accumulatedCostMatrixTransposed[leftColumnIndex][leftRowIndex];\n }\n // Retrieve the cost for the 'up and left' (match) neighbor\n const upAndLeftRowIndex = rowIndex - 1 + windowStartDelta;\n const upAndLeftColumnIndex = columnIndex - 1;\n let upAndLeftCost = Infinity;\n if (upAndLeftColumnIndex >= 0 && upAndLeftRowIndex >= 0 && upAndLeftRowIndex < rowCount) {\n upAndLeftCost = accumulatedCostMatrixTransposed[upAndLeftColumnIndex][upAndLeftRowIndex];\n }\n // If all neighbors have a cost of infinity, it means\n // there is a \"jump\" between the window for the current and previous column\n if (upCost == Infinity && leftCost == Infinity && upAndLeftCost == Infinity) {\n // In that case:\n //\n // If there are rows above\n if (upRowIndex >= 0) {\n // Move upward\n rowIndex = upRowIndex;\n }\n else if (leftColumnIndex >= 0) {\n // Otherwise, move to the left\n columnIndex = leftColumnIndex;\n }\n else {\n // Since we know that either columnIndex > 0 or rowIndex > 0,\n // one of these directions must be available.\n // This error should never happen\n throw new Error(`Unexpected state: columnIndex: ${columnIndex}, rowIndex: ${rowIndex}`);\n }\n }\n else {\n // Choose the direction with the smallest cost\n const smallestCostDirection = argIndexOfMinimumOf3(upCost, leftCost, upAndLeftCost);\n if (smallestCostDirection == 1) {\n // Move upward\n rowIndex = upRowIndex;\n // The upper column index stays the same\n }\n else if (smallestCostDirection == 2) {\n // Move to the left\n rowIndex = leftRowIndex;\n columnIndex = leftColumnIndex;\n }\n else {\n // Move upward and to the left\n rowIndex = upAndLeftRowIndex;\n columnIndex = upAndLeftColumnIndex;\n }\n }\n }\n bestPath.push({\n source: 0,\n dest: 0\n });\n return bestPath.reverse();\n}\nfunction minimumOf3(x1, x2, x3) {\n if (x1 <= x2 && x1 <= x3) {\n return x1;\n }\n else if (x2 <= x3) {\n return x2;\n }\n else {\n return x3;\n }\n}\nfunction argIndexOfMinimumOf3(x1, x2, x3) {\n if (x1 <= x2 && x1 <= x3) {\n return 1;\n }\n else if (x2 <= x3) {\n return 2;\n }\n else {\n return 3;\n }\n}\n//# sourceMappingURL=DTWSequenceAlignmentWindowed.js.map", "// Derived from Echogarden 3.4.0 (MIT; copyright Rotem Dan). Local changes and licence text: THIRD_PARTY_NOTICES.md.\nimport {Logger,Timer,chalk,extendDeep,getRawAudioDuration,splitToWords,includesPunctuation,isAllWhitespace,containsInvalidCodepoint,getIntegerRange,clip,yieldToEventLoop,getTopKIndexes,getTokenRepetitionScore,getDeflateCompressionMetricsForString} from './helpers.mjs';\nimport {indexOfMax,meanOfVector,medianOfVector,softmax,sumAndSumOfSquaresOfVector,sumVector} from './vector-math.mjs';\nimport {alignDTWWindowed} from './dtw.mjs';\nimport {medianOf5Filter} from './vector-math.mjs';\nexport class Whisper { constructor(){this.modelId='tiny';this.isMultiligualModel=true;this.specialTokens=multilingualSpecialTokens;this.randomGen={selectRandomIndexFromDistribution:()=>0};} async initializeIfNeeded(){} async initializeTokenizerIfNeeded(){} async encodeSamples(samples,custom,options){await this.context.encodeSamples(samples,options.threadCount);}\n async recognize(rawAudio, task, language, options, logitFilter, callbacks) {\n await this.initializeIfNeeded(options, callbacks);\n const logger = new Logger(callbacks.logLevel);\n options = extendDeep(defaultWhisperOptions, options);\n options.model = this.modelId;\n if (!options.timestampAccuracy) {\n options.timestampAccuracy = this.defaultTimestampAccuracy;\n }\n if (options.maxTokensPerPart > largestMaximumTokensPerPart) {\n //throw new Error(`The number of tokens per part cannot be greater than ${largestMaximumTokensPerPart}`)\n options.maxTokensPerPart = largestMaximumTokensPerPart;\n }\n const audioSamples = rawAudio.audioChannels[0];\n const sampleRate = rawAudio.sampleRate;\n const prompt = options.prompt;\n const decodeTimestampTokens = options.decodeTimestampTokens;\n const maxAudioSamplesPerPart = sampleRate * (this.audioWindowSeconds ?? 30);\n let previousPartTextTokens = [];\n let timeline = [];\n let allDecodedTokens = [];\n let wrappedLogitFilter;\n if (logitFilter) {\n wrappedLogitFilter = (logits, partDecodedTokens, isFirstPart, isFinalPart) => {\n return logitFilter(logits, [...allDecodedTokens, ...partDecodedTokens], isFirstPart, isFinalPart);\n };\n }\n for (let audioOffset = 0; audioOffset < audioSamples.length;) {\n callbacks?.abortSignal?.throwIfAborted();\n const segmentStartTime = audioOffset / sampleRate;\n await logger.startAsync(`\\nPrepare audio part at time position ${segmentStartTime.toFixed(2)}`, undefined, chalk.magentaBright);\n const audioPartSamples = audioSamples.subarray(audioOffset, audioOffset + maxAudioSamplesPerPart);\n const audioPartRawAudio = { audioChannels: [audioPartSamples], sampleRate };\n const audioPartDuration = getRawAudioDuration(audioPartRawAudio);\n logger.end();\n await this.encodeSamples(audioPartSamples, false, options, callbacks);\n await logger.startAsync(`Prepare prompt`);\n const isFirstPart = audioOffset === 0;\n const isFinalPart = audioOffset + maxAudioSamplesPerPart >= audioSamples.length;\n let initialTokens = [];\n if (isFirstPart && prompt) {\n let promptTokens = this.textToTokens(prompt);\n if (promptTokens.length > largestMaximumTokensPerPart) {\n promptTokens = promptTokens.slice(promptTokens.length - largestMaximumTokensPerPart);\n }\n initialTokens = [this.specialTokens.startOfPromptToken, ...promptTokens];\n }\n else if (options.autoPromptParts && previousPartTextTokens.length > 0) {\n initialTokens = [this.specialTokens.startOfPromptToken, ...previousPartTextTokens];\n }\n initialTokens = [...initialTokens, ...this.getTextStartTokens(language, task, !decodeTimestampTokens)];\n //logger.log(`Initial tokens count: ${initialTokens.length}`)\n logger.end();\n let { decodedTokens: partTokens, decodedTokensConfidence: partTokensConfidence, decodedTokensCrossAttentionQKs: partTokensCrossAttentionQKs, decodedTokensDecodingTime: partTokensDecodingTime, decodedTokensInferenceTime: partTokensInferenceTime, decodedTokensOverheadTime: partTokensOverheadTime, } = await this.decodeTokens(initialTokens, audioPartDuration, isFirstPart, isFinalPart, options, wrappedLogitFilter, callbacks);\n const lastToken = partTokens[partTokens.length - 1];\n const lastTokenIsTimestamp = this.isTimestampToken(lastToken);\n let audioEndOffset;\n if (!isFinalPart && lastTokenIsTimestamp) {\n const timePosition = this.timestampTokenToSeconds(lastToken);\n audioEndOffset = audioOffset + Math.floor(timePosition * sampleRate);\n }\n else {\n audioEndOffset = Math.min(audioOffset + maxAudioSamplesPerPart, audioSamples.length);\n }\n const segmentEndTime = audioEndOffset / sampleRate;\n const segmentFrameCount = this.secondsRangeToFrameCount(segmentStartTime, segmentEndTime);\n await logger.startAsync(`Extract timeline for part (timestamp accuracy: ${options.timestampAccuracy})`);\n // Prepare tokens\n partTokens = partTokens.slice(initialTokens.length);\n partTokensConfidence = partTokensConfidence.slice(initialTokens.length);\n partTokensCrossAttentionQKs = partTokensCrossAttentionQKs.slice(initialTokens.length);\n // Find alignment path using the cross attention query-key tensors\n const alignmentHeadsIndexesToUse = undefined;\n const alignmentPath = await this.findAlignmentPathFromCrossAttentionQKs(partTokensCrossAttentionQKs, partTokens, 0, segmentFrameCount, alignmentHeadsIndexesToUse);\n // Generate timeline from alignment path\n const partTimeline = await this.getTokenTimelineFromAlignmentPath(alignmentPath, partTokens, segmentStartTime, segmentEndTime, partTokensConfidence);\n if (callbacks?.onPart) {\n const partWordTimeline = this.tokenTimelineToWordTimeline(partTimeline, language);\n const partTranscript = this.tokensToText(partTokens);\n callbacks.onPart(partTranscript, partTimeline, partWordTimeline);\n }\n // Add tokens to output\n allDecodedTokens.push(...partTokens);\n timeline.push(...partTimeline);\n // Determine compression ratio for recognized text (normalized to lowercase) of this part\n const compressionRatioForPart = (await getDeflateCompressionMetricsForString(this.tokensToText(partTokens).toLocaleLowerCase())).ratio;\n // If the recognized text isn't too repetitive\n if (compressionRatioForPart < options.repetitionThreshold) {\n // Set current part tokens as the previous part text tokens\n previousPartTextTokens = partTokens.filter(token => this.isTextToken(token));\n }\n else {\n // Otherwise, set previous part tokens to an empty array\n previousPartTextTokens = [];\n }\n audioOffset = audioEndOffset;\n logger.end();\n if (logger.logLevelGreaterOrEqualTo('trace')) {\n const promptProcessingTime = partTokensDecodingTime[0];\n const medianTokenDecodingTime = medianOfVector(partTokensDecodingTime.slice(1));\n const medianTokenInferenceTime = medianOfVector(partTokensInferenceTime.slice(1));\n const medianOverheadTime = medianOfVector(partTokensOverheadTime.slice(1));\n logger.log(`${chalk.blueBright('Context')}: ${initialTokens.length + partTokens.length} tokens (${initialTokens.length} prompt, ${partTokens.length} decoded)\\n${chalk.blueBright('Prompt processing time')}: ${promptProcessingTime.toFixed(1)}ms\\n${chalk.blueBright('Median token decode time')}: ${medianTokenDecodingTime.toFixed(1)}ms (${medianTokenInferenceTime.toFixed(1)}ms inference, ${medianOverheadTime.toFixed(2)}ms overhead)`, 'trace');\n }\n }\n // Convert token timeline to word timeline\n timeline = this.tokenTimelineToWordTimeline(timeline, language);\n // Convert tokens to transcript\n const transcript = this.tokensToText(allDecodedTokens).trim();\n logger.end();\n return { transcript, timeline, allDecodedTokens };\n }\n async align(rawAudio, transcript, sourceLanguage, task, whisperAlignmentOptions, callbacks) {\n await this.initializeTokenizerIfNeeded(callbacks);\n const logger = new Logger(callbacks.logLevel);\n logger.start(`Tokenize transcript`);\n whisperAlignmentOptions = extendDeep(defaultWhisperAlignmentOptions, whisperAlignmentOptions);\n if (!whisperAlignmentOptions.timestampAccuracy) {\n whisperAlignmentOptions.timestampAccuracy = this.defaultTimestampAccuracy;\n }\n if (whisperAlignmentOptions.maxTokensPerPart > largestMaximumTokensPerPart) {\n //throw new Error(`The number of tokens per part cannot be greater than ${largestMaximumTokensPerPart}`)\n whisperAlignmentOptions.maxTokensPerPart = largestMaximumTokensPerPart;\n }\n const targetLanguage = task === 'transcribe' ? sourceLanguage : 'en';\n let simplifiedTranscript = '';\n {\n const words = (await splitToWords(transcript, targetLanguage)).nonPunctuationWords;\n simplifiedTranscript = words.join(' ');\n }\n // Tokenize the transcript\n const simplifiedTranscriptTokens = this.textToTokens(simplifiedTranscript);\n // Initialize custom logit filter that allows only the transcript tokens to be decoded\n // in order.\n const endOfTextToken = this.specialTokens.endOfTextToken;\n const logitFilter = (logits, decodedTokens, isFirstPart, isFinalPart) => {\n const decodedTextTokens = decodedTokens.filter(token => this.isTextToken(token));\n const nextTokenToDecode = simplifiedTranscriptTokens[decodedTextTokens.length] ?? endOfTextToken;\n const newLogits = logits.map((logit, index) => {\n if (index === nextTokenToDecode) {\n return logit;\n }\n // If it's the final part, the ent-of-text token logit is set to -Infinity.\n // This will force to force all transcript tokens to be decoded even if the model doesn't\n // recognize them.\n if (!isFinalPart && index === endOfTextToken) {\n return logit;\n }\n return -Infinity;\n });\n return newLogits;\n };\n // Set options for alignment\n const options = {\n model: this.modelId,\n enableGPU: whisperAlignmentOptions.enableGPU,\n threadCount: whisperAlignmentOptions.threadCount,\n gpuDeviceIndex: whisperAlignmentOptions.gpuDeviceIndex,\n temperature: 0.0,\n prompt: undefined,\n topCandidateCount: 1,\n punctuationThreshold: Infinity,\n autoPromptParts: false,\n maxTokensPerPart: whisperAlignmentOptions.maxTokensPerPart,\n suppressRepetition: false,\n repetitionThreshold: Infinity,\n decodeTimestampTokens: true,\n endTokenThreshold: whisperAlignmentOptions.endTokenThreshold,\n includeEndTokenInCandidates: false,\n timestampAccuracy: whisperAlignmentOptions.timestampAccuracy,\n seed: undefined,\n };\n logger.end();\n // Recognize\n const { timeline, allDecodedTokens } = await this.recognize(rawAudio, task, sourceLanguage, options, logitFilter, callbacks);\n {\n // If not all tokens were decoded, add the remaining ones to the timeline\n const lastKnownWordStartTime = timeline.length > 0 ? timeline[timeline.length - 1].startTime : 0;\n const allDecodedTextTokens = allDecodedTokens.filter(token => this.isTextToken(token));\n while (allDecodedTextTokens.length < simplifiedTranscriptTokens.length) {\n const token = simplifiedTranscriptTokens[allDecodedTextTokens.length];\n const tokenText = this.tokenToText(token);\n allDecodedTextTokens.push(token);\n const newTokenEntry = {\n type: 'token',\n text: tokenText,\n startTime: lastKnownWordStartTime,\n endTime: lastKnownWordStartTime,\n id: token,\n confidence: 0,\n };\n if (tokenText.startsWith(' ') || timeline.length === 0) {\n timeline.push({\n type: 'word',\n text: tokenText.trim(),\n startTime: lastKnownWordStartTime,\n endTime: lastKnownWordStartTime,\n timeline: [newTokenEntry],\n confidence: 0,\n });\n }\n else {\n const lastWordEntry = timeline[timeline.length - 1];\n lastWordEntry.timeline.push(newTokenEntry);\n lastWordEntry.text += tokenText;\n }\n }\n }\n return timeline;\n }\n async decodeTokens(initialTokens, audioDuration, isFirstPart, isFinalPart, options, logitFilter, callbacks) {\n const logger = new Logger(callbacks.logLevel);\n await logger.startAsync('Decode text tokens with Whisper decoder model');\n options = extendDeep(defaultWhisperOptions, options);\n // Get token information\n const endOfTextToken = this.specialTokens.endOfTextToken;\n const timestampTokensStart = this.specialTokens.timestampTokensStart;\n const suppressedTextTokens = this.getSuppressedTextTokens();\n const suppressedMetadataTokens = this.getSuppressedMetadataTokens();\n const allowedPunctuationMarks = this.getAllowedPunctuationMarks();\n const spaceToken = this.textToTokens(' ')[0];\n // Initialize variables for decoding loop\n let decodedTokens = initialTokens.slice();\n let decodedTokensTimestampLogits = [];\n let decodedTokensConfidence = [];\n let decodedTokensCrossAttentionQKs = [];\n for (let i = 0; i < decodedTokens.length; i++) {\n decodedTokensTimestampLogits.push(new Float32Array(1501)); // Should the length be 1500 instead?\n decodedTokensConfidence.push(1.0);\n decodedTokensCrossAttentionQKs.push(undefined);\n }\n let lastTimestampTokenIndex = -1;\n let timestampTokenSeenCount = 0;\n let bufferedTokensToPrint = [];\n // Define method to add a token to output\n const addToken = (tokenToAdd, timestampLogits, confidence, crossAttentionQKs) => {\n decodedTokens.push(tokenToAdd);\n decodedTokensTimestampLogits.push(timestampLogits);\n decodedTokensConfidence.push(confidence);\n decodedTokensCrossAttentionQKs.push(crossAttentionQKs);\n if (callbacks?.onToken) {\n callbacks.onToken(tokenToAdd, this.tokenToBytes(tokenToAdd));\n }\n };\n const maxTokensPerPart = Math.min(options.maxTokensPerPart, 448);\n let decodedTokensInferenceTime = [];\n let decodedTokensDecodingTime = [];\n const tokenDecodingTimeTimer = new Timer();\n // Start decoding loop\n for (let decodedTokenCount = 0; decodedTokenCount < maxTokensPerPart; decodedTokenCount++) {\n callbacks?.abortSignal?.throwIfAborted();\n if (decodedTokenCount > 0) {\n decodedTokensDecodingTime.push(tokenDecodingTimeTimer.getElapsedTimeAndRestart());\n }\n const isInitialState = decodedTokens.length === initialTokens.length;\n const atLeastOneTextTokenDecoded = decodedTokens.slice(initialTokens.length).some(token => this.isTextToken(token));\n // Prepare values for decoder\n const tokensToDecode = isInitialState ? decodedTokens : [decodedTokens[decodedTokens.length - 1]];\n const offset = isInitialState ? 0 : decodedTokens.length;\n //// Infer\n const tokenInferenceTimer = new Timer();\n await this.context.decodeTokens(tokensToDecode, offset, options.threadCount);\n decodedTokensInferenceTime.push(tokenInferenceTimer.elapsedTime);\n // Get cross-attention QKs\n //const getCrossAttentionQKsTimer = new Timer()\n const tokenCrossAttentionQKs = await this.context.getCrossAttentionQKs();\n //getCrossAttentionQKsTimer.logAndRestart('getCrossAttentionQKs')\n // Get logits\n const allTokenLogits = this.context.getLogits();\n // Suppress metadata tokens in the suppression set\n for (const suppressedTokenIndex of suppressedMetadataTokens) {\n allTokenLogits[suppressedTokenIndex] = -Infinity;\n }\n if (!atLeastOneTextTokenDecoded) {\n // If in initial state, suppress end-of-text token\n allTokenLogits[endOfTextToken] = -Infinity;\n }\n const timestampTokenLogits = allTokenLogits.subarray(timestampTokensStart);\n const decodeTimestampTokenIfNeeded = () => {\n // Try to decode a timestamp token, if needed\n // If timestamp tokens is disabled in options, don't decode a timestamp\n if (!options.decodeTimestampTokens) {\n return false;\n }\n // If this is the first token in the part, unconditionally decode a timestamp token\n // for time 0.0\n if (isInitialState) {\n addToken(timestampTokensStart, timestampTokenLogits, 1.0, tokenCrossAttentionQKs);\n return true;\n }\n const previousTokenWasTimestamp = this.isTimestampToken(decodedTokens[decodedTokens.length - 1]);\n const secondPreviousTokenWasTimestamp = this.isTimestampToken(decodedTokens[decodedTokens.length - 2]);\n // If there are two successive timestamp tokens decoded, or the previous timestamp was the first token,\n // don't decode a timestamp\n if (previousTokenWasTimestamp &&\n ((decodedTokens.length === initialTokens.length + 1) || secondPreviousTokenWasTimestamp)) {\n return false;\n }\n // Derive token probabilities\n const allTokenProbabilities = softmax(allTokenLogits, 1.0);\n const nonTimestampTokenProbs = allTokenProbabilities.subarray(0, timestampTokensStart);\n // Find highest probability non-timestamp token\n const indexOfMaxNonTimestampProb = indexOfMax(nonTimestampTokenProbs);\n const valueOfMaxNonTimestampProb = nonTimestampTokenProbs[indexOfMaxNonTimestampProb];\n const valueOfMaxNonTimestampLogProb = Math.log(valueOfMaxNonTimestampProb);\n // Find highest probability timestamp token\n const timestampTokenProbs = allTokenProbabilities.subarray(timestampTokensStart);\n const indexOfMaxTimestampProb = indexOfMax(timestampTokenProbs);\n // Compute the log of the sum of probabilities of the timestamp tokens\n const sumOfTimestampTokenProbs = sumVector(timestampTokenProbs);\n const logSumOfTimestampTokenProbs = Math.log(sumOfTimestampTokenProbs);\n // If the sum isn't greater than the log probability of the highest non-timestamp token,\n // don't decode a timestamp\n if (logSumOfTimestampTokenProbs <= valueOfMaxNonTimestampLogProb) {\n return false;\n }\n // Decode a timestamp token\n timestampTokenSeenCount += 1;\n if (previousTokenWasTimestamp) {\n // If previously decoded token was a timestamp token, repeat it\n const previousToken = decodedTokens[decodedTokens.length - 1];\n const previousTokenTimestampLogits = decodedTokensTimestampLogits[decodedTokensTimestampLogits.length - 1];\n const previousTokenConfidence = decodedTokensConfidence[decodedTokensConfidence.length - 1];\n addToken(previousToken, previousTokenTimestampLogits, previousTokenConfidence, tokenCrossAttentionQKs);\n lastTimestampTokenIndex = decodedTokens.length;\n }\n else {\n // Otherwise decode the highest probability timestamp\n const timestampToken = timestampTokensStart + indexOfMaxTimestampProb;\n const confidence = allTokenProbabilities[timestampToken];\n addToken(timestampToken, timestampTokenLogits, confidence, tokenCrossAttentionQKs);\n }\n return true;\n };\n // Call the method to decode timestamp token if needed\n const timestampTokenDecoded = decodeTimestampTokenIfNeeded();\n if (timestampTokenDecoded) {\n await yieldToEventLoop();\n continue;\n }\n // Decode a non-timestamp token\n let nonTimestampTokenLogits = allTokenLogits.slice(0, timestampTokensStart);\n let shouldDecodeEndfOfTextToken = false;\n // If at least one text token was decoded, and the end-of-text token's probability is\n // sufficiently higher than the second highest ranked token, then accept end-of-text\n if (atLeastOneTextTokenDecoded) {\n const endOfTextTokenLogit = nonTimestampTokenLogits[endOfTextToken];\n const otherTokensLogits = nonTimestampTokenLogits.slice();\n otherTokensLogits[endOfTextToken] = -Infinity;\n const indexOfMaximumOtherTokenLogit = indexOfMax(otherTokensLogits);\n const maximumOtherTokenLogit = nonTimestampTokenLogits[indexOfMaximumOtherTokenLogit];\n const endProbabilities = softmax([endOfTextTokenLogit, maximumOtherTokenLogit], 1.0);\n if (endProbabilities[0] > options.endTokenThreshold) {\n shouldDecodeEndfOfTextToken = true;\n }\n }\n if (logitFilter) {\n // Apply custom logit filter function if given\n nonTimestampTokenLogits = logitFilter(nonTimestampTokenLogits, decodedTokens, isFirstPart, isFinalPart);\n // If the custom filter set the end-of-text token to be Infinity, or -Infinity,\n // then override any previous decision and accept or reject it, respectively\n if (nonTimestampTokenLogits[endOfTextToken] === Infinity) {\n shouldDecodeEndfOfTextToken = true;\n }\n else if (nonTimestampTokenLogits[endOfTextToken] === -Infinity) {\n shouldDecodeEndfOfTextToken = false;\n }\n // If filter caused all word token logits to be -Infinity, then there is no\n // other token to decode. Fall back to accept end-of-text\n if (nonTimestampTokenLogits.subarray(0, endOfTextToken).every(logit => logit === -Infinity)) {\n shouldDecodeEndfOfTextToken = true;\n }\n }\n else {\n // Otherwise, suppress text tokens in the suppression set\n for (const suppressedTokenIndex of suppressedTextTokens) {\n nonTimestampTokenLogits[suppressedTokenIndex] = -Infinity;\n }\n // Suppress the space token if at initial state\n if (isInitialState) {\n nonTimestampTokenLogits[spaceToken] = -Infinity;\n }\n }\n // If end-of-text token should be decoded, then add it and break\n // out of the loop\n if (shouldDecodeEndfOfTextToken) {\n addToken(endOfTextToken, timestampTokenLogits, 1.0, tokenCrossAttentionQKs);\n break;\n }\n // Suppress end-of-text token if it shouldn't be included in candidates\n if (!options.includeEndTokenInCandidates) {\n nonTimestampTokenLogits[endOfTextToken] = -Infinity;\n }\n // Find top candidates\n const sortedTopCandidateTokens = getTopKIndexes(nonTimestampTokenLogits, options.topCandidateCount, true);\n let topCandidates = Array.from(sortedTopCandidateTokens).map(token => {\n const logit = nonTimestampTokenLogits[token];\n return {\n token,\n logit,\n text: this.tokenToText(token, true)\n };\n });\n // Apply repetition suppression if enabled\n if (options.suppressRepetition) {\n // Using some hardcoded constants, for now:\n const tokenWindowSize = 30;\n const thresholdMatchLength = 4;\n const thresholdCycleRepetitionCount = 3;\n const filteredCandidates = [];\n for (const candidate of topCandidates) {\n const decodedTextTokens = decodedTokens.filter(token => this.isTextToken(token));\n const lastDecodedTextTokens = decodedTextTokens\n .slice(Math.max(decodedTextTokens.length - tokenWindowSize, 0))\n .reverse();\n const { longestMatchLength, longestCycleRepetitionCount } = getTokenRepetitionScore([candidate.token, ...lastDecodedTextTokens]);\n if (longestMatchLength >= thresholdMatchLength || longestCycleRepetitionCount >= thresholdCycleRepetitionCount) {\n continue;\n }\n filteredCandidates.push(candidate);\n }\n // If all candidates have been filtered out, accept an end-of-text token\n if (filteredCandidates.length === 0) {\n filteredCandidates.push({\n token: endOfTextToken,\n logit: Infinity,\n text: this.tokenToText(endOfTextToken, true)\n });\n }\n topCandidates = filteredCandidates;\n }\n // Compute top candidate probabilities\n const topCandidateProbabilities = softmax(topCandidates.map(a => a.logit), options.temperature);\n // Find highest ranking punctuation token\n const rankOfPromisingPunctuationToken = topCandidates.findIndex((entry, index) => {\n const tokenText = this.tokenToText(entry.token).trim();\n const isPunctuationToken = allowedPunctuationMarks.includes(tokenText);\n if (!isPunctuationToken) {\n return false;\n }\n const tokenProb = topCandidateProbabilities[index];\n return tokenProb >= options.punctuationThreshold;\n });\n // Find rank of space token\n let rankOfSpaceToken = topCandidates.findIndex(candidate => candidate.token === spaceToken);\n if (rankOfSpaceToken < 0) {\n rankOfSpaceToken = Infinity;\n }\n // Choose token\n let chosenCandidateRank;\n // Select a high-ranking punctuation token if found, and it has\n // a rank higher than the space token,\n if (rankOfPromisingPunctuationToken >= 0 &&\n rankOfPromisingPunctuationToken < rankOfSpaceToken) {\n chosenCandidateRank = rankOfPromisingPunctuationToken;\n }\n else {\n // Otherwise, select randomly from top k distribution\n chosenCandidateRank = this.randomGen.selectRandomIndexFromDistribution(topCandidateProbabilities);\n }\n // Add chosen token\n const chosenToken = topCandidates[chosenCandidateRank].token;\n const chosenTokenConfidence = topCandidateProbabilities[chosenCandidateRank];\n addToken(chosenToken, timestampTokenLogits, chosenTokenConfidence, tokenCrossAttentionQKs);\n // If chosen token is the end-of-text token, break\n if (chosenToken === endOfTextToken) {\n break;\n }\n // Print token if needed\n if (this.isTextToken(chosenToken)) {\n bufferedTokensToPrint.push(chosenToken);\n let textToPrint = this.tokensToText(bufferedTokensToPrint);\n // If the decoded text is valid, print it\n if (!containsInvalidCodepoint(textToPrint)) {\n if (isFirstPart && decodedTokens.every(token => this.isMetadataToken(token))) {\n textToPrint = textToPrint.trimStart();\n }\n logger.write(textToPrint);\n bufferedTokensToPrint = [];\n }\n }\n await yieldToEventLoop();\n }\n if (decodedTokensDecodingTime.length === decodedTokensInferenceTime.length - 1) {\n decodedTokensDecodingTime.push(tokenDecodingTimeTimer.getElapsedTimeAndRestart());\n }\n // If at least two timestamp tokens were decoded and it's not the final part,\n // truncate up to the last timestamp token\n if (timestampTokenSeenCount >= 2 && !isFinalPart) {\n const sliceEndTokenIndex = lastTimestampTokenIndex;\n decodedTokens = decodedTokens.slice(0, sliceEndTokenIndex);\n decodedTokensTimestampLogits = decodedTokensTimestampLogits.slice(0, sliceEndTokenIndex);\n decodedTokensConfidence = decodedTokensConfidence.slice(0, sliceEndTokenIndex);\n decodedTokensCrossAttentionQKs = decodedTokensCrossAttentionQKs.slice(0, sliceEndTokenIndex);\n decodedTokensDecodingTime = decodedTokensDecodingTime.slice(0, sliceEndTokenIndex);\n decodedTokensInferenceTime = decodedTokensInferenceTime.slice(0, sliceEndTokenIndex);\n }\n const decodedTokensOverheadTime = decodedTokensDecodingTime.map((time, index) => time - decodedTokensInferenceTime[index]);\n logger.write('\\n');\n logger.end();\n // Return the decoded tokens\n return {\n decodedTokens,\n decodedTokensTimestampLogits,\n decodedTokensConfidence,\n decodedTokensCrossAttentionQKs,\n decodedTokensDecodingTime,\n decodedTokensInferenceTime,\n decodedTokensOverheadTime,\n };\n }\n tokenTimelineToWordTimeline(tokenTimeline, language) {\n function isSeparatorCharacter(char) {\n const nonSeparatingPunctuation = [`'`, `-`, `.`, `\u00B7`, `\u2022`];\n if (nonSeparatingPunctuation.includes(char)) {\n return false;\n }\n return isAllWhitespace(char) || includesPunctuation(char);\n }\n function startsWithSeparatorCharacter(text) {\n return isSeparatorCharacter(text[0]);\n }\n function endsWithSeparatorCharacter(text) {\n return isSeparatorCharacter(text[text.length - 1]);\n }\n if (language !== 'zh' && language !== 'ja') {\n tokenTimeline = tokenTimeline.filter(entry => this.isTextToken(entry.id));\n }\n const resultTimeline = [];\n let groups = [];\n for (let tokenIndex = 0; tokenIndex < tokenTimeline.length; tokenIndex++) {\n const entry = tokenTimeline[tokenIndex];\n const previousEntry = tokenIndex > 0 ? tokenTimeline[tokenIndex - 1] : undefined;\n const text = entry.text;\n const previousEntryText = previousEntry?.text;\n if (groups.length === 0 ||\n text === '' ||\n startsWithSeparatorCharacter(text) ||\n (previousEntryText != null && endsWithSeparatorCharacter(previousEntryText))) {\n groups.push([entry]);\n }\n else {\n groups[groups.length - 1].push(entry);\n }\n }\n {\n const splitGroups = [];\n for (let groupIndex = 0; groupIndex < groups.length; groupIndex++) {\n const group = groups[groupIndex];\n const nextGroup = groups[groupIndex + 1];\n if (group.length > 1 &&\n group[group.length - 1].text === '.' &&\n (!nextGroup || [' ', '['].includes(nextGroup[0].text[0]))) {\n splitGroups.push(group.slice(0, group.length - 1));\n splitGroups.push(group.slice(group.length - 1));\n }\n else {\n splitGroups.push(group);\n }\n }\n groups = splitGroups;\n }\n for (const group of groups) {\n let groupText = this.tokensToText(group.map(entry => entry.id));\n if (groupText === '') {\n continue;\n }\n const startTime = group[0].startTime;\n const endTime = group[group.length - 1].endTime;\n let confidence = undefined;\n if (group[0].confidence != null) {\n confidence = meanOfVector(group.map(entry => entry.confidence));\n }\n const newEntry = {\n type: 'word',\n text: groupText.trim(),\n startTime,\n endTime,\n confidence,\n timeline: group,\n };\n resultTimeline.push(newEntry);\n }\n return resultTimeline;\n }\n async getTokenTimelineFromAlignmentPath(alignmentPath, tokens, startTimeOffset, endTimeOffset, tokensConfidence, correctionAmount = 0.0) {\n if (alignmentPath.length === 0) {\n return [];\n }\n const tokenTimeline = [];\n for (let pathIndex = 0; pathIndex < alignmentPath.length; pathIndex++) {\n if (pathIndex !== 0 && alignmentPath[pathIndex].source === alignmentPath[pathIndex - 1].source) {\n continue;\n }\n const tokenMappingEntry = alignmentPath[pathIndex];\n const tokenIndex = tokenMappingEntry.source;\n const token = tokens[tokenIndex];\n const tokenConfidence = tokensConfidence ? tokensConfidence[tokenIndex] : undefined;\n const tokenText = this.tokenToText(token, true);\n let startTime = startTimeOffset + (tokenMappingEntry.dest * 0.02);\n startTime = Math.max(startTime + correctionAmount, startTimeOffset);\n if (tokenTimeline.length > 0) {\n tokenTimeline[tokenTimeline.length - 1].endTime = startTime;\n }\n tokenTimeline.push({\n type: 'token',\n text: tokenText,\n id: token,\n startTime,\n endTime: -1,\n confidence: tokenConfidence\n });\n }\n if (tokenTimeline.length > 0) {\n tokenTimeline[tokenTimeline.length - 1].endTime = endTimeOffset;\n }\n return tokenTimeline;\n }\n async findAlignmentPathFromCrossAttentionQKs(crossAttentionQKs, tokens, partStartFrameIndex, partEndFrameIndex, alignmentHeadsIndexesToUse) {\n const partFrameCount = partEndFrameIndex - partStartFrameIndex;\n if (partFrameCount === 0 || tokens.length === 0 || crossAttentionQKs.length === 0 || crossAttentionQKs[0].data.length === 0) {\n return [];\n }\n // crossAttentionQKs internal dimensions: [heads, tokens = 1, frames]\n const tokenCount = crossAttentionQKs.length;\n const headCount = Number(crossAttentionQKs[0].dimensions[0]);\n const frameCount = Number(crossAttentionQKs[0].dimensions[2]);\n if (!alignmentHeadsIndexesToUse) {\n alignmentHeadsIndexesToUse = getIntegerRange(0, headCount);\n }\n // Initialize attention head arrays\n const attentionHeads = []; // dimensions: [heads, tokens, frames]\n for (const headIndex of alignmentHeadsIndexesToUse) {\n const head = [];\n const startIndexInBuffer = headIndex * frameCount;\n const endIndexInBuffer = startIndexInBuffer + partFrameCount;\n for (let tokenIndex = 0; tokenIndex < tokenCount; tokenIndex++) {\n const data = crossAttentionQKs[tokenIndex].data.subarray(startIndexInBuffer, endIndexInBuffer);\n head.push(data);\n }\n attentionHeads.push(head);\n }\n // Initialize settings\n const applySoftmax = true;\n const normalize = true;\n const applyMedianFilter = true;\n const anchorTimestampTokens = false;\n const softmaxTemperature = 1.0;\n // Apply softmax to each token's frames, if enabled\n if (applySoftmax) {\n for (const head of attentionHeads) {\n for (let tokenIndex = 0; tokenIndex < tokenCount; tokenIndex++) {\n head[tokenIndex] = softmax(head[tokenIndex], softmaxTemperature);\n }\n }\n }\n // Normalize all weights in each individual head, if enabled\n if (normalize) {\n for (const head of attentionHeads) {\n let sumOfAllWeightsForHead = 0;\n let sumOfAllSquaredWeightsForHead = 0;\n let countOfAllWeightsForHead = 0;\n for (const tokenFrames of head) {\n const { sum, sumOfSquares } = sumAndSumOfSquaresOfVector(tokenFrames);\n sumOfAllWeightsForHead += sum;\n sumOfAllSquaredWeightsForHead += sumOfSquares;\n countOfAllWeightsForHead += tokenFrames.length;\n }\n const meanOfAllWeightsForHead = sumOfAllWeightsForHead / countOfAllWeightsForHead;\n const varianceOfAllWeightsForHead = sumOfAllSquaredWeightsForHead / countOfAllWeightsForHead;\n const stdDeviationOfAllWeightsForHead = Math.sqrt(varianceOfAllWeightsForHead);\n const stdDeviationReciprocal = 1.0 / (stdDeviationOfAllWeightsForHead + 1e-10);\n for (const tokenFrames of head) {\n for (let frameIndex = 0; frameIndex < tokenFrames.length; frameIndex++) {\n tokenFrames[frameIndex] = (tokenFrames[frameIndex] - meanOfAllWeightsForHead) * stdDeviationReciprocal;\n }\n }\n }\n }\n // Apply median filter to each token's frames, if enabled\n if (applyMedianFilter) {\n for (const head of attentionHeads) {\n for (let tokenIndex = 0; tokenIndex < tokenCount; tokenIndex++) {\n head[tokenIndex] = medianOf5Filter(head[tokenIndex]);\n }\n }\n }\n // Compute the mean of the selected attention heads for each frame\n const frameMeansForToken = [];\n for (let tokenIndex = 0; tokenIndex < tokenCount; tokenIndex++) {\n const meansForFrames = new Float32Array(partFrameCount);\n for (let frameIndex = 0; frameIndex < partFrameCount; frameIndex++) {\n let sum = 0;\n for (const head of attentionHeads) {\n sum += head[tokenIndex][frameIndex];\n }\n const frameMean = sum / attentionHeads.length;\n meansForFrames[frameIndex] = frameMean;\n }\n frameMeansForToken.push(meansForFrames);\n }\n // Anchor timestamp tokens timestamps to their original values, if enabled\n if (anchorTimestampTokens) {\n const timestampTokensStart = this.specialTokens.timestampTokensStart;\n for (let tokenIndex = 0; tokenIndex < tokens.length; tokenIndex++) {\n const token = tokens[tokenIndex];\n if (this.isTimestampToken(token)) {\n let timestampFrame = token - timestampTokensStart;\n timestampFrame = clip(timestampFrame, partStartFrameIndex, partEndFrameIndex - 1);\n frameMeansForToken[tokenIndex][timestampFrame] = 100;\n }\n }\n }\n // Perform DTW to align tokens indexes to frame indexes\n const tokenIndexes = getIntegerRange(0, tokenCount);\n const frameIndexes = getIntegerRange(0, partFrameCount);\n const positionPenalty = this.alignmentPositionPenalty ?? 0;\n let { path } = alignDTWWindowed(tokenIndexes, frameIndexes, (tokenIndex, frameIndex) => {\n const cost = -frameMeansForToken[tokenIndex][frameIndex];\n if (!positionPenalty) return cost;\n const distance = tokenIndex / Math.max(1,tokenCount-1) - frameIndex / Math.max(1,partFrameCount-1);\n return cost + positionPenalty * distance * distance;\n }, partFrameCount);\n path = path.map(entry => ({ source: entry.source, dest: partStartFrameIndex + entry.dest }));\n return path;\n }\n getTextStartTokens(language, task, disableTimestamps = false) {\n const startOfTextToken = this.specialTokens.startOfTextToken;\n let tokens;\n if (this.isMultiligualModel) {\n const languageToken = this.specialTokens.languageTokensStart + languageIdLookup[language];\n const taskToken = task === 'translate' ? this.specialTokens.translateTaskToken : this.specialTokens.transcribeTaskToken;\n tokens = [startOfTextToken, languageToken, taskToken];\n }\n else {\n tokens = [startOfTextToken];\n }\n if (disableTimestamps) {\n tokens.push(this.specialTokens.noTimestampsToken);\n }\n return tokens;\n }\n tokenToText(token, includeMetadataTokens = false) {\n return this.tokensToText([token], includeMetadataTokens);\n }\n tokenToBytes(token) {\n return this.tiktoken.decode_single_token_bytes(token);\n }\n tokensToText(tokens, includeMetadataTokens = false) {\n tokens.forEach(token => this.assertIsValidToken(token));\n if (includeMetadataTokens === false) {\n tokens = tokens.filter(token => this.isTextToken(token));\n }\n if (tokens.length === 0) {\n return '';\n }\n try {\n const decodedBytes = this.tiktoken.decode(new Uint32Array(tokens));\n const textDecoder = new TextDecoder();\n const decodedString = textDecoder.decode(decodedBytes);\n return decodedString;\n }\n catch {\n return '[TOKENIZER_FAILED]';\n }\n }\n textToTokens(text) {\n return Array.from(this.tiktoken.encode(text));\n }\n isTextToken(token) {\n return token < this.specialTokens.endOfTextToken;\n }\n isMetadataToken(token) {\n return token >= this.specialTokens.endOfTextToken;\n }\n isTimestampToken(token) {\n return token >= this.specialTokens.timestampTokensStart;\n }\n isNonTimestampToken(token) {\n return token < this.specialTokens.timestampTokensStart;\n }\n timestampTokenToSeconds(timestampToken) {\n this.assertIsValidToken(timestampToken);\n if (this.isNonTimestampToken(timestampToken)) {\n throw new Error(`Invalid timestamp token: ${timestampToken}`);\n }\n let seconds = (timestampToken - this.specialTokens.timestampTokensStart) * 0.02;\n seconds = clip(seconds, 0.0, 30.0);\n return seconds;\n }\n isValidToken(token) {\n //return token < this.tokenConfig.timestampTokensEnd\n return token <= this.specialTokens.timestampTokensEnd;\n }\n assertIsValidToken(token) {\n if (!this.isValidToken(token)) {\n throw new Error(`Invalid token: ${token}`);\n }\n }\n secondsToFrame(seconds) {\n return Math.floor((seconds + 1e-9) / 0.02);\n }\n secondsRangeToFrameCount(startSeconds, endSeconds) {\n if (startSeconds > endSeconds) {\n throw new Error(`Invalid range: ${startSeconds} > ${endSeconds}`);\n }\n return this.secondsToFrame(endSeconds - startSeconds);\n }\n get isEnglishOnlyModel() {\n return this.isMultiligualModel === false;\n }\n get isLargeV3Model() {\n return this.modelId.startsWith('large-v3');\n }\n get melBandCount() {\n return this.isLargeV3Model ? 128 : 80;\n }\n get defaultTimestampAccuracy() {\n if (this.modelId.startsWith('tiny') || this.modelId.startsWith('base')) {\n return 'high';\n }\n else {\n return 'medium';\n }\n }\n getSuppressedTextTokens() {\n const allowedPunctuationMarks = this.getAllowedPunctuationMarks();\n const nonWordTokensData = this.getWordTokenData().nonWordTokenData;\n const suppressedTextTokens = nonWordTokensData\n .filter(entry => !allowedPunctuationMarks.includes(entry.text))\n .map(entry => entry.id);\n return suppressedTextTokens;\n }\n getSuppressedMetadataTokens() {\n if (this.isMultiligualModel) {\n return [50256, ...getIntegerRange(50258, 50364)];\n }\n else {\n return [...getIntegerRange(50257, 50363)];\n }\n }\n getAllowedPunctuationMarks() {\n const generalPunctuation = [`'`, ',', '.', '?', '!'];\n let allowedPunctuation;\n if (this.isMultiligualModel) {\n const spanish = ['\u00BF', '\u00A1'];\n const chinese = ['\u3001', '\uFF0C', '\u3002', '\uFF1F', '\uFF01'];\n const arabic = ['\u060C', '\u061F'];\n const various = ['\u00B7', '\u2022', '\u30FB'];\n allowedPunctuation = [...generalPunctuation, ...arabic, ...chinese, ...spanish, ...various];\n }\n else {\n allowedPunctuation = generalPunctuation;\n }\n return allowedPunctuation;\n }\n getWordTokenData() {\n const wordTokenData = [];\n const nonWordTokenData = [];\n for (let i = 0; i < this.specialTokens.endOfTextToken; i++) {\n const tokenText = this.tokenToText(i, false);\n const isNonWordToken = /^[\\s\\p{Punctuation}\\p{Symbol}]+$/u.test(tokenText);\n const containsInvalidUTF8 = containsInvalidCodepoint(tokenText);\n if (isNonWordToken && (this.isEnglishOnlyModel || !containsInvalidUTF8)) {\n nonWordTokenData.push({\n id: i,\n text: tokenText,\n });\n }\n else {\n wordTokenData.push({\n id: i,\n text: tokenText,\n });\n }\n }\n return { wordTokenData, nonWordTokenData };\n }\n}\nconst languageIdLookup = {\n 'en': 0,\n 'zh': 1,\n 'de': 2,\n 'es': 3,\n 'ru': 4,\n 'ko': 5,\n 'fr': 6,\n 'ja': 7,\n 'pt': 8,\n 'tr': 9,\n 'pl': 10,\n 'ca': 11,\n 'nl': 12,\n 'ar': 13,\n 'sv': 14,\n 'it': 15,\n 'id': 16,\n 'hi': 17,\n 'fi': 18,\n 'vi': 19,\n 'iw': 20,\n 'uk': 21,\n 'el': 22,\n 'ms': 23,\n 'cs': 24,\n 'ro': 25,\n 'da': 26,\n 'hu': 27,\n 'ta': 28,\n 'no': 29,\n 'th': 30,\n 'ur': 31,\n 'hr': 32,\n 'bg': 33,\n 'lt': 34,\n 'la': 35,\n 'mi': 36,\n 'ml': 37,\n 'cy': 38,\n 'sk': 39,\n 'te': 40,\n 'fa': 41,\n 'lv': 42,\n 'bn': 43,\n 'sr': 44,\n 'az': 45,\n 'sl': 46,\n 'kn': 47,\n 'et': 48,\n 'mk': 49,\n 'br': 50,\n 'eu': 51,\n 'is': 52,\n 'hy': 53,\n 'ne': 54,\n 'mn': 55,\n 'bs': 56,\n 'kk': 57,\n 'sq': 58,\n 'sw': 59,\n 'gl': 60,\n 'mr': 61,\n 'pa': 62,\n 'si': 63,\n 'km': 64,\n 'sn': 65,\n 'yo': 66,\n 'so': 67,\n 'af': 68,\n 'oc': 69,\n 'ka': 70,\n 'be': 71,\n 'tg': 72,\n 'sd': 73,\n 'gu': 74,\n 'am': 75,\n 'yi': 76,\n 'lo': 77,\n 'uz': 78,\n 'fo': 79,\n 'ht': 80,\n 'ps': 81,\n 'tk': 82,\n 'nn': 83,\n 'mt': 84,\n 'sa': 85,\n 'lb': 86,\n 'my': 87,\n 'bo': 88,\n 'tl': 89,\n 'mg': 90,\n 'as': 91,\n 'tt': 92,\n 'haw': 93,\n 'ln': 94,\n 'ha': 95,\n 'ba': 96,\n 'jw': 97,\n 'su': 98,\n //'yue': 99\n};\nconst multilingualSpecialTokens = {\n endOfTextToken: 50257,\n startOfTextToken: 50258,\n languageTokensStart: 50259,\n languageTokensEnd: 50358,\n translateTaskToken: 50358,\n transcribeTaskToken: 50359,\n startOfPromptToken: 50361,\n nonSpeechToken: 50362,\n noTimestampsToken: 50363,\n timestampTokensStart: 50364,\n timestampTokensEnd: 50364 + 1501,\n};\nconst largestMaximumTokensPerPart = 220;\nexport const defaultWhisperOptions = {\n model: undefined,\n enableGPU: false,\n threadCount: 4,\n gpuDeviceIndex: 0,\n temperature: 0.1,\n prompt: undefined,\n topCandidateCount: 5,\n punctuationThreshold: 0.2,\n autoPromptParts: true,\n maxTokensPerPart: largestMaximumTokensPerPart,\n suppressRepetition: true,\n repetitionThreshold: 2.4,\n decodeTimestampTokens: true,\n endTokenThreshold: 0.9,\n includeEndTokenInCandidates: true,\n timestampAccuracy: undefined,\n seed: undefined,\n};\nexport const defaultWhisperAlignmentOptions = {\n model: undefined,\n enableGPU: false,\n threadCount: 4,\n gpuDeviceIndex: 0,\n endTokenThreshold: 0.9,\n maxTokensPerPart: largestMaximumTokensPerPart,\n timestampAccuracy: undefined,\n};\n//# sourceMappingURL=WhisperSTT.js.map\n", "let wasm;\nexport function __wbg_set_wasm(val) {\n wasm = val;\n}\n\n\nconst lTextDecoder = typeof TextDecoder === 'undefined' ? (0, module.require)('util').TextDecoder : TextDecoder;\n\nlet cachedTextDecoder = new lTextDecoder('utf-8', { ignoreBOM: true, fatal: true });\n\ncachedTextDecoder.decode();\n\nlet cachedUint8ArrayMemory0 = null;\n\nfunction getUint8ArrayMemory0() {\n if (cachedUint8ArrayMemory0 === null || cachedUint8ArrayMemory0.byteLength === 0) {\n cachedUint8ArrayMemory0 = new Uint8Array(wasm.memory.buffer);\n }\n return cachedUint8ArrayMemory0;\n}\n\nfunction getStringFromWasm0(ptr, len) {\n ptr = ptr >>> 0;\n return cachedTextDecoder.decode(getUint8ArrayMemory0().subarray(ptr, ptr + len));\n}\n\nconst heap = new Array(128).fill(undefined);\n\nheap.push(undefined, null, true, false);\n\nlet heap_next = heap.length;\n\nfunction addHeapObject(obj) {\n if (heap_next === heap.length) heap.push(heap.length + 1);\n const idx = heap_next;\n heap_next = heap[idx];\n\n heap[idx] = obj;\n return idx;\n}\n\nfunction handleError(f, args) {\n try {\n return f.apply(this, args);\n } catch (e) {\n wasm.__wbindgen_export_0(addHeapObject(e));\n }\n}\n\nfunction getObject(idx) { return heap[idx]; }\n\nfunction dropObject(idx) {\n if (idx < 132) return;\n heap[idx] = heap_next;\n heap_next = idx;\n}\n\nfunction takeObject(idx) {\n const ret = getObject(idx);\n dropObject(idx);\n return ret;\n}\n\nlet WASM_VECTOR_LEN = 0;\n\nconst lTextEncoder = typeof TextEncoder === 'undefined' ? (0, module.require)('util').TextEncoder : TextEncoder;\n\nlet cachedTextEncoder = new lTextEncoder('utf-8');\n\nconst encodeString = (typeof cachedTextEncoder.encodeInto === 'function'\n ? function (arg, view) {\n return cachedTextEncoder.encodeInto(arg, view);\n}\n : function (arg, view) {\n const buf = cachedTextEncoder.encode(arg);\n view.set(buf);\n return {\n read: arg.length,\n written: buf.length\n };\n});\n\nfunction passStringToWasm0(arg, malloc, realloc) {\n\n if (realloc === undefined) {\n const buf = cachedTextEncoder.encode(arg);\n const ptr = malloc(buf.length, 1) >>> 0;\n getUint8ArrayMemory0().subarray(ptr, ptr + buf.length).set(buf);\n WASM_VECTOR_LEN = buf.length;\n return ptr;\n }\n\n let len = arg.length;\n let ptr = malloc(len, 1) >>> 0;\n\n const mem = getUint8ArrayMemory0();\n\n let offset = 0;\n\n for (; offset < len; offset++) {\n const code = arg.charCodeAt(offset);\n if (code > 0x7F) break;\n mem[ptr + offset] = code;\n }\n\n if (offset !== len) {\n if (offset !== 0) {\n arg = arg.slice(offset);\n }\n ptr = realloc(ptr, len, len = offset + arg.length * 3, 1) >>> 0;\n const view = getUint8ArrayMemory0().subarray(ptr + offset, ptr + len);\n const ret = encodeString(arg, view);\n\n offset += ret.written;\n ptr = realloc(ptr, len, offset, 1) >>> 0;\n }\n\n WASM_VECTOR_LEN = offset;\n return ptr;\n}\n\nfunction isLikeNone(x) {\n return x === undefined || x === null;\n}\n\nlet cachedDataViewMemory0 = null;\n\nfunction getDataViewMemory0() {\n if (cachedDataViewMemory0 === null || cachedDataViewMemory0.buffer.detached === true || (cachedDataViewMemory0.buffer.detached === undefined && cachedDataViewMemory0.buffer !== wasm.memory.buffer)) {\n cachedDataViewMemory0 = new DataView(wasm.memory.buffer);\n }\n return cachedDataViewMemory0;\n}\n\nlet cachedUint32ArrayMemory0 = null;\n\nfunction getUint32ArrayMemory0() {\n if (cachedUint32ArrayMemory0 === null || cachedUint32ArrayMemory0.byteLength === 0) {\n cachedUint32ArrayMemory0 = new Uint32Array(wasm.memory.buffer);\n }\n return cachedUint32ArrayMemory0;\n}\n\nfunction getArrayU32FromWasm0(ptr, len) {\n ptr = ptr >>> 0;\n return getUint32ArrayMemory0().subarray(ptr / 4, ptr / 4 + len);\n}\n\nfunction passArray8ToWasm0(arg, malloc) {\n const ptr = malloc(arg.length * 1, 1) >>> 0;\n getUint8ArrayMemory0().set(arg, ptr / 1);\n WASM_VECTOR_LEN = arg.length;\n return ptr;\n}\n\nfunction passArray32ToWasm0(arg, malloc) {\n const ptr = malloc(arg.length * 4, 4) >>> 0;\n getUint32ArrayMemory0().set(arg, ptr / 4);\n WASM_VECTOR_LEN = arg.length;\n return ptr;\n}\n\nfunction getArrayU8FromWasm0(ptr, len) {\n ptr = ptr >>> 0;\n return getUint8ArrayMemory0().subarray(ptr / 1, ptr / 1 + len);\n}\n\nconst TiktokenFinalization = (typeof FinalizationRegistry === 'undefined')\n ? { register: () => {}, unregister: () => {} }\n : new FinalizationRegistry(ptr => wasm.__wbg_tiktoken_free(ptr >>> 0, 1));\n\nexport class Tiktoken {\n\n __destroy_into_raw() {\n const ptr = this.__wbg_ptr;\n this.__wbg_ptr = 0;\n TiktokenFinalization.unregister(this);\n return ptr;\n }\n\n free() {\n if (wasm == null) throw new Error(\"tiktoken: WASM binary has not been propery initialized.\");\n const ptr = this.__destroy_into_raw();\n wasm.__wbg_tiktoken_free(ptr, 0);\n }\n /**\n * @param {string} tiktoken_bfe\n * @param {any} special_tokens\n * @param {string} pat_str\n */\n constructor(tiktoken_bfe, special_tokens, pat_str) {\n if (wasm == null) throw new Error(\"tiktoken: WASM binary has not been propery initialized.\");\n const ptr0 = passStringToWasm0(tiktoken_bfe, wasm.__wbindgen_export_1, wasm.__wbindgen_export_2);\n const len0 = WASM_VECTOR_LEN;\n const ptr1 = passStringToWasm0(pat_str, wasm.__wbindgen_export_1, wasm.__wbindgen_export_2);\n const len1 = WASM_VECTOR_LEN;\n const ret = wasm.tiktoken_new(ptr0, len0, addHeapObject(special_tokens), ptr1, len1);\n this.__wbg_ptr = ret >>> 0;\n TiktokenFinalization.register(this, this.__wbg_ptr, this);\n return this;\n }\n /**\n * @returns {string | undefined}\n */\n get name() {\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.tiktoken_name(retptr, this.__wbg_ptr);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n let v1;\n if (r0 !== 0) {\n v1 = getStringFromWasm0(r0, r1).slice();\n wasm.__wbindgen_export_3(r0, r1 * 1, 1);\n }\n return v1;\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * @param {string} text\n * @param {any} allowed_special\n * @param {any} disallowed_special\n * @returns {Uint32Array}\n */\n encode(text, allowed_special, disallowed_special) {\n if (wasm == null) throw new Error(\"tiktoken: WASM binary has not been propery initialized.\");\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(text, wasm.__wbindgen_export_1, wasm.__wbindgen_export_2);\n const len0 = WASM_VECTOR_LEN;\n wasm.tiktoken_encode(retptr, this.__wbg_ptr, ptr0, len0, addHeapObject(allowed_special), addHeapObject(disallowed_special));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n var r3 = getDataViewMemory0().getInt32(retptr + 4 * 3, true);\n if (r3) {\n throw takeObject(r2);\n }\n var v2 = getArrayU32FromWasm0(r0, r1).slice();\n wasm.__wbindgen_export_3(r0, r1 * 4, 4);\n return v2;\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * @param {string} text\n * @returns {Uint32Array}\n */\n encode_ordinary(text) {\n if (wasm == null) throw new Error(\"tiktoken: WASM binary has not been propery initialized.\");\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(text, wasm.__wbindgen_export_1, wasm.__wbindgen_export_2);\n const len0 = WASM_VECTOR_LEN;\n wasm.tiktoken_encode_ordinary(retptr, this.__wbg_ptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var v2 = getArrayU32FromWasm0(r0, r1).slice();\n wasm.__wbindgen_export_3(r0, r1 * 4, 4);\n return v2;\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * @param {string} text\n * @param {any} allowed_special\n * @param {any} disallowed_special\n * @returns {any}\n */\n encode_with_unstable(text, allowed_special, disallowed_special) {\n if (wasm == null) throw new Error(\"tiktoken: WASM binary has not been propery initialized.\");\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passStringToWasm0(text, wasm.__wbindgen_export_1, wasm.__wbindgen_export_2);\n const len0 = WASM_VECTOR_LEN;\n wasm.tiktoken_encode_with_unstable(retptr, this.__wbg_ptr, ptr0, len0, addHeapObject(allowed_special), addHeapObject(disallowed_special));\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var r2 = getDataViewMemory0().getInt32(retptr + 4 * 2, true);\n if (r2) {\n throw takeObject(r1);\n }\n return takeObject(r0);\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * @param {Uint8Array} bytes\n * @returns {number}\n */\n encode_single_token(bytes) {\n if (wasm == null) throw new Error(\"tiktoken: WASM binary has not been propery initialized.\");\n const ptr0 = passArray8ToWasm0(bytes, wasm.__wbindgen_export_1);\n const len0 = WASM_VECTOR_LEN;\n const ret = wasm.tiktoken_encode_single_token(this.__wbg_ptr, ptr0, len0);\n return ret >>> 0;\n }\n /**\n * @param {Uint32Array} tokens\n * @returns {Uint8Array}\n */\n decode(tokens) {\n if (wasm == null) throw new Error(\"tiktoken: WASM binary has not been propery initialized.\");\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n const ptr0 = passArray32ToWasm0(tokens, wasm.__wbindgen_export_1);\n const len0 = WASM_VECTOR_LEN;\n wasm.tiktoken_decode(retptr, this.__wbg_ptr, ptr0, len0);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var v2 = getArrayU8FromWasm0(r0, r1).slice();\n wasm.__wbindgen_export_3(r0, r1 * 1, 1);\n return v2;\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * @param {number} token\n * @returns {Uint8Array}\n */\n decode_single_token_bytes(token) {\n if (wasm == null) throw new Error(\"tiktoken: WASM binary has not been propery initialized.\");\n try {\n const retptr = wasm.__wbindgen_add_to_stack_pointer(-16);\n wasm.tiktoken_decode_single_token_bytes(retptr, this.__wbg_ptr, token);\n var r0 = getDataViewMemory0().getInt32(retptr + 4 * 0, true);\n var r1 = getDataViewMemory0().getInt32(retptr + 4 * 1, true);\n var v1 = getArrayU8FromWasm0(r0, r1).slice();\n wasm.__wbindgen_export_3(r0, r1 * 1, 1);\n return v1;\n } finally {\n wasm.__wbindgen_add_to_stack_pointer(16);\n }\n }\n /**\n * @returns {any}\n */\n token_byte_values() {\n if (wasm == null) throw new Error(\"tiktoken: WASM binary has not been propery initialized.\");\n const ret = wasm.tiktoken_token_byte_values(this.__wbg_ptr);\n return takeObject(ret);\n }\n}\n\nexport function __wbg_parse_def2e24ef1252aff() { return handleError(function (arg0, arg1) {\n const ret = JSON.parse(getStringFromWasm0(arg0, arg1));\n return addHeapObject(ret);\n}, arguments) };\n\nexport function __wbg_stringify_f7ed6987935b4a24() { return handleError(function (arg0) {\n const ret = JSON.stringify(getObject(arg0));\n return addHeapObject(ret);\n}, arguments) };\n\nexport function __wbindgen_error_new(arg0, arg1) {\n const ret = new Error(getStringFromWasm0(arg0, arg1));\n return addHeapObject(ret);\n};\n\nexport function __wbindgen_is_undefined(arg0) {\n const ret = getObject(arg0) === undefined;\n return ret;\n};\n\nexport function __wbindgen_object_drop_ref(arg0) {\n takeObject(arg0);\n};\n\nexport function __wbindgen_string_get(arg0, arg1) {\n if (wasm == null) throw new Error(\"tiktoken: WASM binary has not been propery initialized.\");\n const obj = getObject(arg1);\n const ret = typeof(obj) === 'string' ? obj : undefined;\n var ptr1 = isLikeNone(ret) ? 0 : passStringToWasm0(ret, wasm.__wbindgen_export_1, wasm.__wbindgen_export_2);\n var len1 = WASM_VECTOR_LEN;\n getDataViewMemory0().setInt32(arg0 + 4 * 1, len1, true);\n getDataViewMemory0().setInt32(arg0 + 4 * 0, ptr1, true);\n};\n\nexport function __wbindgen_throw(arg0, arg1) {\n throw new Error(getStringFromWasm0(arg0, arg1));\n};\n\n", "// @ts-expect-error\nimport * as imports from \"./tiktoken_bg\";\nlet isInitialized = false;\nexport async function init(callback) {\n if (isInitialized)\n return imports;\n const result = await callback({ \"./tiktoken_bg.js\": imports });\n const instance = \"instance\" in result && result.instance instanceof WebAssembly.Instance\n ? result.instance\n : result instanceof WebAssembly.Instance\n ? result\n : null;\n if (instance == null)\n throw new Error(\"Missing instance\");\n imports.__wbg_set_wasm(instance.exports);\n isInitialized = true;\n return imports;\n}\n// @ts-expect-error\nexport * from \"./tiktoken_bg\";\n", "import {init,Tiktoken} from 'tiktoken/lite/init';\nexport const WHISPER_PATTERN=\"'s|'t|'re|'ve|'m|'ll|'d| ?\\\\p{L}+| ?\\\\p{N}+| ?[^\\\\s\\\\p{L}\\\\p{N}]+|\\\\s+(?!\\\\S)|\\\\s+\";\nexport function metadataTokens(config){const out={ '[EndOfText]':config.endOfTextToken,'[StartOfText]':config.startOfTextToken,'[TranslateTask]':config.translateTaskToken,'[TranscribeTask]':config.transcribeTaskToken,'[StartOfPrompt]':config.startOfPromptToken,'[NonSpeech]':config.nonSpeechToken,'[NoTimestamps]':config.noTimestampsToken,'[Unused_50256]':50256,'[Unused_50360]':50360};for(let i=0;i<config.languageTokensEnd-config.languageTokensStart;i++)out[`[Language_${i}]`]=config.languageTokensStart+i;for(let i=0;i<=1501;i++)out[`[Timestamp_${(i*.02).toFixed(2)}]`]=config.timestampTokensStart+i;return out;}\nexport async function createTokenizer(assetBaseUrl,config){const url=name=>new URL(name,assetBaseUrl).href;const [ranks,wasm]=await Promise.all([fetch(url('multilingual.tiktoken')),fetch(url('tiktoken_bg.wasm'))]);for(const response of [ranks,wasm])if(!response.ok)throw Error(`Tokenizer fetch failed: HTTP ${response.status}`);const bytes=await wasm.arrayBuffer();await init(imports=>WebAssembly.instantiate(bytes,imports));return new Tiktoken(await ranks.text(),metadataTokens(config),WHISPER_PATTERN);}\n", "// Draft only supplied lyrics. Reuse rows only while actual decoder inputs agree.\nexport function speculativeContext(evaluate,remainingTokens,eot,batchSize=8,tokenBudget=Infinity){\n let consumed=0,cache,latest,steps=0;\n return {\n async decodeTokens(tokens,past){\n if(++steps>tokenBudget)throw Error('Decode exceeded token budget');\n const position=past>0?past-1:0;\n consumed+=tokens.filter(t=>t<eot).length;\n const index=cache?position-cache.position:-1;\n if(tokens.length===1&&index>=0&&index<cache.tokens.length&&cache.tokens[index]===tokens[0]){\n latest=cache.rows[index];return;\n }\n const draft=remainingTokens.slice(consumed,consumed+Math.min(batchSize-1,448-position-tokens.length,tokenBudget-steps));\n const input=[...tokens,...draft];\n const rows=await evaluate(input,position);\n if(rows.length!==input.length)throw Error('Speculative row count mismatch');\n cache={position,tokens:input,rows};latest=rows[tokens.length-1];\n },\n getLogits:()=>latest.logits.slice(),\n getCrossAttentionQKs:async()=>latest.qk,\n };\n}\n", "export function vocabularySubset(tokens,endOfText,vocabSize){\n if(!Number.isInteger(endOfText)||endOfText<0||endOfText>=vocabSize)throw Error('Invalid vocabulary boundary');\n if(tokens.some(t=>!Number.isInteger(t)||t<0||t>=vocabSize))throw Error('Invalid lyric token');\n return Int32Array.from(new Set([...tokens,...Array.from({length:vocabSize-endOfText},(_,i)=>endOfText+i)])).sort();\n}\n", "export function virtualAudio(pcm,scale){\n if(!Number.isFinite(scale)||scale<1||scale>4)throw Error('Time scale must be between 1 and 4');\n return pcm.subarray(0,Math.ceil(pcm.length/scale));\n}\nexport function originalSpan(pcm,virtual,samples,scale){\n if(samples.buffer!==virtual.buffer)throw Error('Unexpected virtual PCM buffer');\n const offset=(samples.byteOffset-virtual.byteOffset)/4;\n if(offset<0||offset+samples.length>virtual.length)throw Error('Invalid virtual audio span');\n return pcm.subarray(offset*scale,(offset+samples.length)*scale);\n}\nexport function scaleTimeline(timeline,scale,duration){\n for(const entry of timeline){\n entry.startTime=Math.min(duration,entry.startTime*scale);\n entry.endTime=Math.min(duration,entry.endTime*scale);\n if(entry.timeline)scaleTimeline(entry.timeline,scale,duration);\n }\n}\n", "import {speculativeContext} from '../core/speculative-context.mjs';\nimport {vocabularySubset} from '../core/vocab-subset.mjs';\nimport {originalSpan} from '../core/audio-time-scale.mjs';\nfunction collectKernels(module,profile,field){\n if(!profile||!module._poc_kernel_profile_ms)return;\n const labels=['q5Matmul','attentionF16','weightF16','otherMatmul','softmax','norm','unary','copies','addMul','im2col','other'];\n const counters=profile[field]??={};for(let i=0;i<labels.length;i++)counters[labels[i]]=(counters[labels[i]]??0)+module._poc_kernel_profile_ms(i);\n}\nexport function nativeContext(module,pcm,virtual,progress,scale=2,profile,contextFrames){\n let latest,audioOffset=0;\n const context={\n get audioOffset(){return audioOffset;},\n async encodeSamples(samples){audioOffset=(samples.byteOffset-virtual.byteOffset)/4;const original=originalSpan(pcm,virtual,samples,scale);progress?.('encoding',audioOffset,virtual.length);if(contextFrames){const frames=Math.min(contextFrames,Math.max(32,Math.ceil(samples.length/2560)*8));if(module._poc_set_audio_context(frames))throw Error('Dynamic audio context rejected');if(profile)(profile.contextFrames??=[]).push(frames);}const ptr=module._malloc(original.byteLength);if(!ptr)throw Error('Audio allocation failed');try{module.HEAPU8.set(new Uint8Array(original.buffer,original.byteOffset,original.byteLength),ptr);if(profile)module._poc_kernel_profile_reset?.();if(module._poc_encode_samples(ptr,original.length))throw Error('Audio encoding failed');collectKernels(module,profile,'encoderKernels');if(profile){profile.melMs+=module._poc_mel_ms();profile.encoderMs+=module._poc_encoder_ms();profile.windows++;}}finally{module._free(ptr);}},\n async decodeTokens(tokens,past){const values=Int32Array.from(tokens),ptr=module._malloc(values.byteLength),dp=module._malloc(12);let qp;try{if(!ptr||!dp)throw Error('Decode allocation failed');module.HEAPU8.set(new Uint8Array(values.buffer),ptr);if(profile)module._poc_kernel_profile_reset?.();if(module._poc_decode(ptr,tokens.length,past>0?past-1:0))throw Error('Token decoding failed');collectKernels(module,profile,'decoderKernels');const count=module._poc_qk_dims(dp),dims=new Int32Array(module.HEAPU8.buffer,dp,3).slice();qp=module._malloc(count*4);if(count<=0||!qp||module._poc_qk_copy(qp,count))throw Error('Attention copy failed');latest={dimensions:Array.from(dims,BigInt),data:new Float32Array(module.HEAPU8.buffer,qp,count).slice()};}finally{if(qp)module._free(qp);module._free(dp);module._free(ptr);}},\n getLogits:()=>{const pointer=module._poc_logits();if(!pointer)throw Error('Logits unavailable');return new Float32Array(module.HEAPU8.buffer,pointer,module._poc_vocab()).slice();},\n getCrossAttentionQKs:async()=>latest,\n getTokenLogOdds:(row,total,target,eot)=>{\n const pointer=module._poc_logits(),vocab=module._poc_vocab();\n if(!pointer||row<0||row>=total||target<0||target>=vocab||eot<0||eot>=vocab)throw Error('Invalid token evidence request');\n const base=pointer-(total-1-row)*vocab*4;\n const view=new Float32Array(module.HEAPU8.buffer,base,vocab);\n const score=view[target]-view[eot];if(!Number.isFinite(score))throw Error('Missing token evidence logits');\n return score;\n },\n };\n if(profile){const decode=context.decodeTokens;context.decodeTokens=async(...args)=>{const start=performance.now();try{return await decode(...args);}finally{profile.decodeMs+=performance.now()-start;profile.batches++;profile.tokens+=args[0].length;}};}\n return context;\n}\nexport function subset(module,tokens,eot){const ids=vocabularySubset(tokens,eot,module._poc_vocab()),ptr=module._malloc(ids.byteLength);try{if(!ptr)throw Error('Vocabulary allocation failed');module.HEAPU8.set(new Uint8Array(ids.buffer),ptr);if(module._poc_set_vocab_subset(ptr,ids.length))throw Error('Vocabulary subset rejected');}finally{module._free(ptr);}}\nexport function speculativeNativeContext(module,original,remaining,eot,budget,batchSize=128){return speculativeContext(async(tokens,position)=>{await original.decodeTokens(tokens,position===0?0:position+1);const qk=await original.getCrossAttentionQKs();const[heads,count,frames]=qk.dimensions.map(Number);if(count!==tokens.length)throw Error('Unexpected batch attention dimensions');const vocab=module._poc_vocab(),base=module._poc_logits()-(count-1)*vocab*4;return tokens.map((_,row)=>{const data=new Float32Array(heads*frames);for(let h=0;h<heads;h++)data.set(qk.data.subarray((h*count+row)*frames,(h*count+row+1)*frames),h*frames);return{logits:new Float32Array(module.HEAPU8.buffer,base+row*vocab*4,vocab).slice(),qk:{dimensions:[BigInt(heads),1n,BigInt(frames)],data}};});},remaining,eot,batchSize,budget);}\n", "// Only cross-script parenthetical translations after a Latin-only sung line.\nexport function naturalJapaneseSpacing(text){\n return text.replace(/([\\p{Script=Hiragana}\\p{Script=Katakana}\\p{Script=Han}]) +(?=[\\p{Script=Hiragana}\\p{Script=Katakana}\\p{Script=Han}])/gu,'$1');\n}\n// Japanese sung parentheticals and English refrains are deliberately preserved.\nexport function spokenLyrics(text){\n return text.replace(/([^\\n]*[A-Za-z][^\\n]*?)(?:[ \\t]*\\r?\\n[ \\t]*|[ \\t]+)[(\uFF08]([^()\uFF08\uFF09\\n]+)[)\uFF09]/gu,(whole,sung,note)=>{\n const japanese=/[\\p{Script=Hiragana}\\p{Script=Katakana}\\p{Script=Han}]/u;\n return !japanese.test(sung)&&japanese.test(note)?sung.trimEnd():whole;\n });\n}\n", "// Keep UTF-8 token fragments together without merging adjacent lyric lines.\nexport function tokenTextUnits(words,decode,isText){\n const output=[];let pending=[];\n for(const token of words.flatMap(w=>w.timeline??[w])){\n if(!isText(token.id))continue;\n pending.push(token);\n const text=decode(pending.map(t=>t.id));\n if(text.includes('\\uFFFD'))continue;\n if(text.trim())output.push({type:'word',text:text.trim(),startTime:pending[0].startTime,endTime:pending.at(-1).endTime,confidence:pending.some(t=>t.confidence===0)?0:1,timeline:pending});\n pending=[];\n }\n if(pending.length)output.push({type:'word',text:decode(pending.map(t=>t.id)),startTime:pending[0].startTime,endTime:pending.at(-1).endTime,confidence:0,timeline:pending});\n return output;\n}\n", "// Keep only the acoustic prefix before the overlap boundary. Reference times\n// are neither accepted nor consulted; unfinished text remains for the next part.\nexport function trimAttentionPrefix(decoded,path,initialCount,coreFrames,timestampStart,endOfText,bounds){\n // Revisit a crossing token with its full tail in the next window. When it\n // starts at zero, advance through it instead to guarantee forward progress.\n const crossing=bounds?.find(b=>b.start<coreFrames&&(b.allocationEnd??b.end)>coreFrames);\n if(crossing)coreFrames=crossing.start>0?crossing.start:(crossing.allocationEnd??crossing.end);\n const tokens=decoded.decodedTokens.slice(initialCount);\n const starts=new Map();for(const point of path)if(!starts.has(point.source))starts.set(point.source,point.dest);\n let keep=0;\n while(keep<tokens.length&&tokens[keep]<endOfText&&(starts.get(keep)??Infinity)<coreFrames)keep++;\n return {\n ...decoded,\n decodedTokens:[...decoded.decodedTokens.slice(0,initialCount+keep),timestampStart+coreFrames],\n decodedTokensConfidence:[...decoded.decodedTokensConfidence.slice(0,initialCount+keep),1],\n decodedTokensCrossAttentionQKs:Array(initialCount+keep+1).fill(undefined),\n alignmentPath:[...path.filter(p=>p.source<keep&&p.dest<coreFrames),{source:keep,dest:coreFrames-1}],\n alignmentFrames:coreFrames,\n deferredTextCount:tokens.filter(t=>t<endOfText).length-keep,\n };\n}\nexport function lookaheadBudget(totalTokens,totalSamples,partDuration,remaining,isFinal,limit,ratio=1.5){\n if(!Number.isFinite(ratio)||ratio<1||ratio>2)throw Error('Invalid lookahead ratio');\n const estimated=Math.ceil(totalTokens/(totalSamples/16000)*partDuration*ratio)+16;\n return Math.max(1,Math.min(limit,isFinal?remaining+1:estimated));\n}\n", "import {Whisper} from './whisper.mjs';\nimport {nativeContext} from './native-context.mjs';\n\n/** Independent ASR: no known-token filter, vocabulary subset, or forced lyrics. */\nexport async function transcribeAudio(engine, audio, language) {\n // Exactly zero PCM contains no acoustic evidence. Do not ask a language\n // model to invent text for digital silence; quiet nonzero audio still runs ASR.\n if (audio.length && audio.every(sample => sample === 0)) return [];\n const m = engine.module;\n if (!m || !engine.whisper?.tiktoken) throw Error('Engine is not initialized');\n const w = new Whisper();\n w.tiktoken = engine.whisper.tiktoken;\n w.audioWindowSeconds = 30;\n w.getTextStartTokens(language, 'transcribe', false);\n const segments = [],restore=[];\n function set(name,value,previous){\n if(typeof m[name]!=='function')return; // Original ten-second ABI lacks fast flags.\n if(m[name](value))throw Error(`ASR configuration failed: ${name}`);\n restore.push(()=>{if(m[name](previous))throw Error(`ASR configuration restore failed: ${name}`);});\n }\n try {\n if(m._poc_set_time_scale(1))throw Error('Could not enable unrestricted ASR');\n restore.push(()=>{\n const scale=engine.config.timeScale;\n const result=Number.isInteger(scale)?m._poc_set_time_scale(scale):m._poc_set_time_scale_fraction?.(Math.round(scale*1000),1000);\n if(result!==0)throw Error('Could not restore native time scale');\n });\n set('_poc_set_audio_context',1500,engine.config.audioContext??1500);\n set('_poc_set_encoder_blocks',1,engine.config.encoderBlocks??1);\n set('_poc_set_attention_quant',0,engine.config.attentionQuant===true?2:engine.config.attentionQuant||0);\n set('_poc_set_vector_activations',0,engine.config.vectorActivations?1:0);\n if(m._poc_set_vocab_subset(0,0))throw Error('Could not enable unrestricted vocabulary');\n w.context = nativeContext(m, audio, audio, undefined, 1);\n await w.recognize({audioChannels:[audio], sampleRate:16000}, 'transcribe', language, {\n model:'tiny', threadCount:engine.threads, timestampAccuracy:'medium',\n topCandidateCount:1, temperature:.1, suppressRepetition:false,\n decodeTimestampTokens:false, autoPromptParts:false, maxTokensPerPart:448,\n }, undefined, {\n logLevel:'silent',\n onPart(text, tokens, timeline) {\n const words = timeline.filter(word => typeof word.text === 'string' && word.text.trim() && Number.isFinite(word.startTime) && Number.isFinite(word.endTime) && word.startTime >= 0 && word.endTime > word.startTime && word.endTime <= audio.length/16000)\n .map(word => ({ word:word.text, start:word.startTime, end:word.endTime }));\n if (words.length) segments.push({text, start:words[0].start, end:Math.max(...words.map(w => w.end)), words});\n // This is processed input, not an estimate of transcript accuracy.\n if (timeline.length) engine.progress?.('transcribing');\n },\n });\n return segments;\n } finally {\n let failure;\n for(const reset of restore.reverse())try{reset();}catch(error){failure??=error;}\n if(failure)throw failure;\n }\n}\n", "// Teacher forcing: supplied text is fixed. Attention comes from the preceding\n// input; optional evidence measures the supplied token itself.\n// No reference times or precomputed song results enter this decoder.\nexport async function decodeAllKnownTokens(context,initial,remaining,eot,limit,batchSize,evidence=false){\n if(remaining.length<=limit)return decodeKnownTokens(context,initial,remaining,eot,limit,batchSize,evidence);\n // Each chunk resets text KV positions; all chunks attend to the same encoded\n // audio. Concatenate their actual attention for one monotonic alignment path.\n let result;\n for(let offset=0;offset<remaining.length;offset+=limit){\n const part=await decodeKnownTokens(context,initial,remaining.slice(offset,offset+limit),eot,limit,batchSize,evidence);\n if(!result)result=part;\n else for(const field of ['decodedTokens','decodedTokensConfidence','decodedTokensCrossAttentionQKs','decodedTokenLogOdds'])result[field].push(...part[field].slice(initial.length));\n }\n return result;\n}\nexport async function decodeKnownTokens(context,initial,remaining,eot,limit,batchSize,evidence=false){\n const predicted=remaining.slice(0,limit);\n if(predicted.length<limit)predicted.push(eot);\n const inputs=[...initial,...predicted.slice(0,-1)];\n const attention=Array(initial.length).fill(undefined);\n const logOdds=Array(initial.length).fill(undefined);\n for(let position=0;position<inputs.length;position+=batchSize){\n const batch=inputs.slice(position,position+batchSize);\n await context.decodeTokens(batch,position===0?0:position+1);\n const qk=await context.getCrossAttentionQKs();\n const [heads,count,frames]=qk.dimensions.map(Number);\n if(count!==batch.length)throw Error('Guided attention batch mismatch');\n for(let row=0;row<count;row++){\n if(position+row<initial.length-1)continue;\n const target=predicted[position+row-initial.length+1];\n logOdds.push(evidence?context.getTokenLogOdds(row,count,target,eot):undefined);\n const data=new Float32Array(heads*frames);\n for(let head=0;head<heads;head++)data.set(qk.data.subarray((head*count+row)*frames,(head*count+row+1)*frames),head*frames);\n attention.push({dimensions:[BigInt(heads),1n,BigInt(frames)],data});\n }\n }\n const decodedTokens=[...initial,...predicted];\n return {decodedTokens,decodedTokensConfidence:Array(decodedTokens.length).fill(1),decodedTokensCrossAttentionQKs:attention,decodedTokenLogOdds:logOdds,decodedTokensDecodingTime:[],decodedTokensInferenceTime:[],decodedTokensOverheadTime:[]};\n}\n", "// Reduce only the alignment grid, retaining the original song/encoder clock.\nexport async function coarseAttentionPath(findPath,qks,tokens,frames,stride=1){\n if(stride===1)return findPath(qks,tokens,0,frames);\n if(!Number.isInteger(stride)||stride<1)throw Error('Invalid attention stride');\n const coarseFrames=Math.ceil(frames/stride);\n const coarse=qks.map(q=>{\n const heads=Number(q.dimensions[0]),sourceFrames=Number(q.dimensions[2]);\n const data=new Float32Array(heads*coarseFrames);\n for(let h=0;h<heads;h++)for(let t=0;t<coarseFrames;t++){\n const end=Math.min(frames,(t+1)*stride);let sum=0;\n for(let i=t*stride;i<end;i++)sum+=q.data[h*sourceFrames+i];\n data[h*coarseFrames+t]=sum/(end-t*stride);\n }\n return {dimensions:[BigInt(heads),1n,BigInt(coarseFrames)],data};\n });\n return (await findPath(coarse,tokens,0,coarseFrames)).map(p=>({source:p.source,dest:Math.min(frames-1,p.dest*stride)}));\n}\n", "const add=(a,b)=>a===-Infinity?b:b===-Infinity?a:Math.max(a,b)+Math.log1p(Math.exp(-Math.abs(a-b)));\n// Sum over monotonic token/blank paths with the consumed text prefix fixed.\n// Expected entry/exit transitions estimate boundaries, not occupancy peaks.\nexport function posteriorBoundaries(scores,{blankAfter}={}){\n const n=scores.length,T=scores[0]?.length??0,S=2*n+1;\n if(!n||T<n||scores.some(r=>r.length!==T||r.some(x=>!Number.isFinite(x))))return;\n const emission=(s,t)=>s%2?scores[(s-1)/2][t]:s>0&&blankAfter?.[s/2-1]===false?-Infinity:0;\n const forward=new Float64Array((T+1)*S).fill(-Infinity),backward=new Float64Array((T+1)*S).fill(-Infinity);\n forward[0]=0;\n // A frame can enter at most one new token. States outside this band\n // cannot belong to any complete path; leave them at negative infinity.\n 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++){\n let v=forward[t*S+s];\n if(s>0)v=add(v,forward[t*S+s-1]);\n if(s>1&&s%2)v=add(v,forward[t*S+s-2]);\n forward[(t+1)*S+s]=v+emission(s,t);\n }\n backward[T*S+S-1]=backward[T*S+S-2]=0;\n 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++){\n let v=emission(s,t)+backward[(t+1)*S+s];\n if(s+1<S)v=add(v,emission(s+1,t)+backward[(t+1)*S+s+1]);\n if(s+2<S&&s%2)v=add(v,emission(s+2,t)+backward[(t+1)*S+s+2]);\n backward[t*S+s]=v;\n }\n const z=add(forward[T*S+S-1],forward[T*S+S-2]);\n if(!Number.isFinite(z))return;\n return scores.map((_,i)=>{\n const s=2*i+1;let start=0,end=0;\n for(let t=0;t<T;t++){\n let incoming=forward[t*S+s-1];if(s>1)incoming=add(incoming,forward[t*S+s-2]);\n start+=t*Math.exp(incoming+emission(s,t)+backward[(t+1)*S+s]-z);\n let outgoing=emission(s+1,t)+backward[(t+1)*S+s+1];\n if(s+2<S)outgoing=add(outgoing,emission(s+2,t)+backward[(t+1)*S+s+2]);\n end+=t*Math.exp(forward[t*S+s]+outgoing-z);\n }\n if(i===n-1)end+=T*Math.exp(forward[T*S+s]-z);\n return {start,end};\n });\n}\n", "import {posteriorBoundaries} from './posterior-boundaries.mjs';\n// Monotonic token/blank Viterbi. Each token owns >=1 frame; blanks own pauses.\n// Returns half-open token intervals, unlike DTW's adjacent boundary convention.\nexport function gapAlignment(scores,{openEnd=false,blankAfter,entryScores}={}){\n const tokens=scores.length,frames=scores[0]?.length??0,states=2*tokens+1;\n if(!tokens||!frames||(!openEnd&&tokens>frames)||scores.some(row=>row.length!==frames||row.some(x=>!Number.isFinite(x))))return;\n if(entryScores&&(entryScores.length!==tokens||entryScores.some(x=>!Number.isFinite(x))))throw Error('Invalid token entry scores');\n if(!scores.some(row=>row.some(x=>x>0)))return openEnd?[]:undefined;\n let previous=new Float64Array(states).fill(-Infinity);previous[0]=0;\n const trace=new Uint8Array(frames*states);\n for(let t=0;t<frames;t++){\n const next=new Float64Array(states).fill(-Infinity);\n for(let state=0;state<states;state++){\n if(state>0&&state%2===0&&blankAfter?.[state/2-1]===false)continue;\n let best=previous[state],step=0;\n const entry=state%2?(entryScores?.[(state-1)/2]??0):0;\n if(state>0&&previous[state-1]+entry>best){best=previous[state-1]+entry;step=1;}\n if(state%2===1&&state>1&&previous[state-2]+entry>best){best=previous[state-2]+entry;step=2;}\n next[state]=best+(state%2?scores[(state-1)/2][t]:0);\n trace[t*states+state]=step;\n }\n previous=next;\n }\n let state=previous[states-1]>=previous[states-2]?states-1:states-2;\n if(openEnd){\n state=0;\n for(let i=1;i<states;i++){\n // Equal evidence must not consume additional text; prefer blank for the\n // same consumed prefix so an unsupported tail does not extend the token.\n if(previous[i]>previous[state]||(previous[i]===previous[state]&&i%2===0&&Math.ceil(i/2)===Math.ceil(state/2)))state=i;\n }\n }\n if(!Number.isFinite(previous[state]))return;\n const bounds=Array.from({length:openEnd?Math.ceil(state/2):tokens},()=>({start:frames,end:0}));\n for(let t=frames-1;t>=0;t--){\n if(state%2){const b=bounds[(state-1)/2];b.start=t;b.end=Math.max(b.end,t+1);}\n state-=trace[t*states+state];\n }\n return bounds;\n}\n\n// Evidence relative to uniform temporal attention and frame-wide common sinks.\n// Existing QKs only: no additional encoder or decoder inference.\nexport function attentionGapBounds(qks,frames,stride=2,options={}){\n const count=qks.length,width=Math.ceil(frames/stride);\n if(!count||(!options.openEnd&&count>width)||qks.some(q=>!q))return;\n const probabilities=qks.map(q=>{\n const [heads,,sourceWidth]=q.dimensions.map(Number),weights=new Float64Array(width);\n for(let h=0;h<heads;h++){\n const row=new Float64Array(width);let maximum=-Infinity;\n for(let t=0;t<width;t++){\n let sum=0,n=0;\n for(let j=t*stride;j<Math.min(frames,(t+1)*stride);j++){sum+=q.data[h*sourceWidth+j];n++;}\n row[t]=sum/n;maximum=Math.max(maximum,row[t]);\n }\n let sum=0;for(let t=0;t<width;t++){row[t]=Math.exp(row[t]-maximum);sum+=row[t];}\n for(let t=0;t<width;t++){row[t]/=sum;weights[t]+=row[t]/heads;}\n }\n return weights;\n });\n const frameMean=new Float64Array(width);\n for(const row of probabilities)for(let t=0;t<width;t++)frameMean[t]+=row[t]/count;\n const scores=probabilities.map(row=>Float32Array.from(row,(value,t)=>{\n const score=Math.log(Math.max(1e-12,value)/Math.max(1/width,count===1?0:frameMean[t]));\n // Numerical normalization noise is not positive acoustic evidence.\n return Math.abs(score)<1e-12?0:score;\n }));\n let bounds=gapAlignment(scores,options);\n const allocation=bounds;\n if(options.posterior&&bounds?.length){\n const expected=posteriorBoundaries(scores.slice(0,bounds.length),options)?.map(b=>({start:Math.round(b.start),end:Math.round(b.end)}));\n if(expected?.every((b,i)=>b.start>=0&&b.end>b.start&&b.end<=width&&(!i||b.start>=expected[i-1].end))){\n 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;\n }\n }\n 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)}:{})}));\n}\n", "// Shared text normalization for monotonic lyric matching and evaluation.\nexport const normalize=text=>text.normalize('NFKC').toLowerCase().replace(/[^\\p{L}\\p{N}]/gu,'');\n", "import {normalize} from '../core/score.mjs';\n// Text only. If tokenization changes the text, decline the structural prior.\nexport function lyricPauseMask(tokens,decode,lyrics){\n const lines=lyrics.split(/\\r?\\n/).map(normalize).filter(Boolean);\n const target=lines.join(''),ends=new Set();let length=0;\n for(const line of lines){length+=line.length;ends.add(length);}\n const mask=[];let pending=[],text='';\n for(const token of tokens){\n pending.push(token);const decoded=decode(pending);\n if(decoded.includes('\\uFFFD')){mask.push(false);continue;}\n text+=normalize(decoded);pending=[];\n mask.push(ends.has(text.length));\n }\n return pending.length||text!==target?undefined:mask;\n}\n", "import {Whisper} from './whisper.mjs';\nimport {createTokenizer} from './tokenizer.mjs';\nimport {nativeContext,subset,speculativeNativeContext} from './native-context.mjs';\nimport {virtualAudio,scaleTimeline} from '../core/audio-time-scale.mjs';\nimport {naturalJapaneseSpacing} from '../core/lyrics.mjs';\nimport {tokenTextUnits} from '../core/token-units.mjs';\nimport {lookaheadBudget,trimAttentionPrefix} from '../core/attention-trim.mjs';\nimport {transcribeAudio} from './transcribe.mjs';\nimport {decodeKnownTokens,decodeAllKnownTokens} from './guided-decode.mjs';\nimport {coarseAttentionPath} from './attention-resolution.mjs';\nimport {attentionGapBounds} from './gap-alignment.mjs';\nimport {lyricPauseMask} from './lyric-pauses.mjs';\nexport function validatePcm(audio){if(!(audio instanceof Float32Array)||!audio.length)throw Error('PCM must be a nonempty Float32Array');for(const sample of audio)if(!Number.isFinite(sample))throw Error('PCM samples must be finite');}\nexport class BrowserEngine{\n constructor(config={}){this.config={timeScale:3.25,batchSize:440,audioContext:960,prepack:'group',attentionQuant:2,vectorActivations:true,attentionStride:4,attentionPositionPenalty:10,trimFinalContext:true,profile:false,...config};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');}\n async initialize(options,progress){\n this.start=performance.now();this.progress=progress;\n if(!globalThis.crossOriginIsolated||typeof SharedArrayBuffer==='undefined')throw Error('Cross-origin isolation (COOP/COEP) and SharedArrayBuffer are required');\n if(!/^[a-f0-9]{64}$/i.test(options.modelSha256))throw Error('A SHA256 model digest is required');\n if(![1,2,4,6,8,12].includes(options.threads))throw Error('Unsupported thread count');this.threads=options.threads;\n this.base=new URL(options.assetBaseUrl,globalThis.location.href).href;if(!this.base.endsWith('/'))this.base+='/';\n progress?.('model');const response=await fetch(options.modelUrl);if(!response.ok)throw Error(`Model fetch failed: HTTP ${response.status}`);let model=await response.arrayBuffer();\n const hash=Array.from(new Uint8Array(await crypto.subtle.digest('SHA-256',model)),b=>b.toString(16).padStart(2,'0')).join('');if(hash!==options.modelSha256.toLowerCase())throw Error('Model SHA256 mismatch');\n const script=new URL('parity.js',this.base).href;importScripts(script);\n this.module=await globalThis.createWhisperParity({noInitialRun:true,mainScriptUrlOrBlob:script,locateFile:name=>new URL(name,this.base).href,print:()=>{},printErr:()=>{}});\n const m=this.module;m.FS.writeFile('/model.bin',new Uint8Array(model));model=null;\n try{if(m.ccall('poc_open_model','number',['string','number'],['/model.bin',0]))throw Error('Cannot open tiny model');}finally{m.FS.unlink('/model.bin');}\n if(this.config.prepack){const pack=this.config.prepack==='group'?m._poc_prepack_group_model:m._poc_prepack_model;if(!pack || pack()<=0)throw Error('Model prepacking failed');}\n if(m._poc_set_threads(this.threads)||m._poc_get_threads()!==this.threads)throw Error('Native thread setting failed');\n if(Number.isInteger(this.config.timeScale)){if(!m._poc_set_time_scale||m._poc_set_time_scale(this.config.timeScale))throw Error('Time-scale native build required');}else if(!m._poc_set_time_scale_fraction||m._poc_set_time_scale_fraction(Math.round(this.config.timeScale*1000),1000))throw Error('Fractional time-scale build required');\n if(m._poc_set_audio_context(this.config.audioContext))throw Error('Audio context rejected');\n if(this.config.encoderBlocks&&(!m._poc_set_encoder_blocks||m._poc_set_encoder_blocks(this.config.encoderBlocks)))throw Error('Encoder attention blocks rejected');\n 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');\n if(this.config.vectorActivations && (!m._poc_set_vector_activations || m._poc_set_vector_activations(1)))throw Error('Vector activations rejected');\n this.whisper=new Whisper();this.whisper.tiktoken=await createTokenizer(this.base,this.whisper.specialTokens);\n this.whisper.audioWindowSeconds=this.config.audioContext*.02;\n this.whisper.alignmentPositionPenalty=this.config.attentionPositionPenalty;\n this.initializationSeconds=(performance.now()-this.start)/1000;return{ready:true};\n }\n async align(audio,lyrics,language){\n validatePcm(audio);if(typeof lyrics!=='string'||!lyrics.trim())throw Error('Lyrics must not be empty');\n const w=this.whisper,m=this.module;if(!w||!m)throw Error('Engine is not initialized');\n w.getTextStartTokens(language,'transcribe',true); // validates supported language before inference\n const profile=this.config.profile?{melMs:0,encoderMs:0,decodeMs:0,pathMs:0,windows:0,batches:0,tokens:0}:undefined;\n 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:undefined);\n w.context=originalContext;let lyricTokens,consumed=0,workerPath,prefixBounds,pauseMask;const rateHistory=[];\n w.getTokenTimelineFromAlignmentPath=async(...args)=>{\n const timeline=await Whisper.prototype.getTokenTimelineFromAlignmentPath.apply(w,args);\n if(prefixBounds){for(let i=0;i<prefixBounds.length&&i<timeline.length;i++){timeline[i].startTime=args[2]+prefixBounds[i].start*.02;timeline[i].endTime=Math.max(timeline[i].startTime,Math.min(args[3],args[2]+prefixBounds[i].end*.02));}prefixBounds=undefined;}\n return timeline;\n };\n const tokenize=Whisper.prototype.textToTokens.bind(w);\n const findPath=async(...args)=>{const start=profile?performance.now():0;try{return await Whisper.prototype.findAlignmentPathFromCrossAttentionQKs.apply(w,args);}finally{if(profile)profile.pathMs+=performance.now()-start;}};\n w.textToTokens=text=>{const tokens=tokenize(language==='ja'?naturalJapaneseSpacing(text):text);if(!lyricTokens&&text!==' ')lyricTokens=tokens;return tokens;};\n w.recognize=(audio,task,language,options,...rest)=>Whisper.prototype.recognize.call(w,audio,task,language,{...options,decodeTimestampTokens:false},...rest);\n w.decodeTokens=async(initialTokens,duration,isFirst,isFinal,options,filter,callbacks)=>{\n if(!filter||!lyricTokens)throw Error('Only guided lyric alignment is supported');const remaining=lyricTokens.slice(consumed),eot=w.specialTokens.endOfTextToken;\n if(profile){profile.lyricTokens=lyricTokens.length;if(isFinal)profile.finalRemaining=remaining.length;}\n options={...options,maxTokensPerPart:lookaheadBudget(lyricTokens.length,virtual.length,duration,remaining.length,isFinal,Math.min(440,448-initialTokens.length),1.15)};\n subset(m,remaining,eot);\n const baseOffset=originalContext.audioOffset,windowSamples=Math.round(w.audioWindowSeconds*16000),timeScale=this.config.timeScale;\n if(this.config.lyricPauses&&pauseMask===undefined)pauseMask=lyricPauseMask(lyricTokens,t=>w.tokensToText(t),lyrics)??null;\n // One window: decode the known lyric tokens, bound each token, keep the acoustic prefix. A later start\n // (shiftFrames) re-encodes the window and moves the result back onto the caller's window.\n const attempt=async shiftFrames=>{\n if(shiftFrames){const from=baseOffset+shiftFrames*320;await originalContext.encodeSamples(virtual.subarray(from,Math.min(virtual.length,from+windowSamples)));}\n w.context=speculativeNativeContext(m,originalContext,remaining,eot,options.maxTokensPerPart,this.config.batchSize);\n let decoded;try{decoded=await (isFinal?decodeAllKnownTokens:decodeKnownTokens)(originalContext,initialTokens,remaining,eot,options.maxTokensPerPart,this.config.batchSize,true);}finally{w.context=originalContext;}\n const offset=originalContext.audioOffset,last=decoded.decodedTokens.at(-1),timestampStart=w.specialTokens.timestampTokensStart;\n 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;\n decoded.alignmentFrames=frames;\n const evidence={offsetSeconds:offset/16000*timeScale,consumed,logOdds:decoded.decodedTokenLogOdds.slice(count),tokens:decoded.decodedTokens.slice(count)};\n const n=decoded.decodedTokens.slice(count).filter(t=>t<eot).length;\n // Pairwise continuation probability is charged once per consumed token,\n // not once per frame. Stable log(sigmoid(logit(token)-logit(EOT))).\n const entryScores=decoded.decodedTokenLogOdds.slice(count,count+n).map(x=>-Math.max(0,-x)-Math.log1p(Math.exp(-Math.abs(x))));\n let bounds=attentionGapBounds(decoded.decodedTokensCrossAttentionQKs.slice(count,count+n),frames,2,{openEnd:!isFinal,entryScores,blankAfter:this.config.lyricPauses?pauseMask?.slice(consumed,consumed+n):undefined,posterior:this.config.posteriorBoundaries});\n if(bounds!==undefined)decoded.alignmentPath=bounds.map((b,i)=>({source:i,dest:b.start}));\n if(!decoded.alignmentPath)decoded.alignmentPath=await coarseAttentionPath(findPath,decoded.decodedTokensCrossAttentionQKs.slice(count),decoded.decodedTokens.slice(count),frames,this.config.attentionStride??1);\n if(!isFinal)decoded=trimAttentionPrefix(decoded,decoded.alignmentPath,count,frames-Math.round(this.config.audioContext/6),timestampStart,eot,bounds);\n const kept=decoded.decodedTokens.slice(count).filter(t=>t<eot).length;\n if(bounds)bounds=bounds.slice(0,kept);\n if(shiftFrames){\n decoded.decodedTokens[decoded.decodedTokens.length-1]+=shiftFrames;decoded.alignmentFrames+=shiftFrames;\n decoded.alignmentPath=decoded.alignmentPath.map(point=>({...point,dest:point.dest+shiftFrames}));\n if(bounds)bounds=bounds.map(b=>({...b,start:b.start+shiftFrames,end:b.end+shiftFrames,...(b.allocationEnd===undefined?{}:{allocationEnd:b.allocationEnd+shiftFrames})}));\n }\n return{decoded,bounds,evidence,kept,coreSeconds:decoded.alignmentFrames*.02*timeScale,score:kept?entryScores.slice(0,kept).reduce((x,y)=>x+y,0)/kept:-Infinity,offset};\n };\n let chosen=await attempt(0);\n const retry=this.config.windowRetry;\n if(retry&&!isFinal&&chosen.kept>0&&rateHistory.length>=retry.minHistory){\n const sorted=[...rateHistory].sort((x,y)=>x-y),typical=sorted[sorted.length>>1],inBand=c=>{const r=c.kept/c.coreSeconds;return r>=retry.low*typical&&r<=retry.high*typical;};\n // Only a window with both an unusual lyric rate and poor evidence is retried from a later start.\n if(!inBand(chosen)&&chosen.score<retry.maxScore){\n let best;\n for(const shift of retry.shifts){const candidate=await attempt(shift);if(inBand(candidate)&&candidate.score>=chosen.score-retry.tolerance&&(!best||candidate.score>best.score))best=candidate;}\n if(profile)profile.retries=[...(profile.retries??[]),{offsetSeconds:chosen.offset/16000*timeScale,adopted:Boolean(best)}];\n if(best)chosen=best;\n }\n }\n let {decoded}=chosen;prefixBounds=chosen.bounds;\n if(chosen.kept>0)rateHistory.push(chosen.kept/chosen.coreSeconds);\n if(profile)(profile.tokenEvidence??=[]).push(chosen.evidence);\n workerPath={path:decoded.alignmentPath,frames:decoded.alignmentFrames,tokens:decoded.decodedTokens.slice(initialTokens.length)};\n if(profile)(profile.parts??=[]).push({offsetSeconds:chosen.offset/16000*timeScale,remaining:remaining.length,budget:options.maxTokensPerPart,kept:chosen.kept,isFinal,coreSeconds:chosen.coreSeconds});\n consumed+=chosen.kept;decoded.decodedTokensCrossAttentionQKs=decoded.decodedTokens.map(()=>undefined);\n return decoded;\n };\n w.findAlignmentPathFromCrossAttentionQKs=async(qks,tokens,start,end)=>{if(!workerPath||start!==0||end!==workerPath.frames||JSON.stringify(tokens)!==JSON.stringify(workerPath.tokens))throw Error('Alignment boundary mismatch');const path=workerPath.path;workerPath=undefined;return path;};\n let words=await w.align({audioChannels:[virtual],sampleRate:16000},lyrics,language,'transcribe',{model:'tiny',enableGPU:false,threadCount:this.threads,gpuDeviceIndex:0,timestampAccuracy:'medium',maxTokensPerPart:448,endTokenThreshold:1},{logLevel:'silent'});\n if(language==='ja')words=tokenTextUnits(words,tokens=>w.tokensToText(tokens),token=>w.isTextToken(token));scaleTimeline(words,this.config.timeScale,audio.length/16000);\n return{words,metrics:{initializationSeconds:this.initializationSeconds,alignmentSeconds:(performance.now()-alignStart)/1000,totalSeconds:this.initializationSeconds+(performance.now()-alignStart)/1000,...(profile?{profile}:{})}};\n }\n async transcribe(audio,language){validatePcm(audio);return transcribeAudio(this,audio,language);}\n dispose(){this.whisper?.tiktoken?.free();this.whisper=undefined;this.module?._poc_close();this.module?.PThread?.terminateAllThreads();this.module=undefined;}\n}\n", "export const DEFAULT_MODEL_URL = 'https://huggingface.co/ggerganov/whisper.cpp/resolve/5359861c739e955e79d9a303bcbc70fb988958b1/ggml-tiny-q5_1.bin';\nexport const DEFAULT_MODEL_SHA256 = '818710568da3ca15689e31a743197b520007872ff9576237bda97bd1b469c3d7';\n", "import { DEFAULT_MODEL_URL, DEFAULT_MODEL_SHA256 } from './model.ts';\nimport type { Capabilities, ErrorCode, LyricAlignBinding, LyricAlignSession, OperationContext, Progress } from './contract.ts';\nexport type * from './contract.ts';\n\nexport interface BindingOptions {\n workerUrl?: string | URL;\n assetBaseUrl?: string | URL;\n /** Relocate the pinned model; its SHA256 is always verified. */\n modelUrl?: string | URL;\n threads?: 1 | 2 | 4 | 6 | 8 | 12;\n}\n\nexport function libraryError(code: ErrorCode, message: string): Error & { code: ErrorCode } {\n return Object.assign(new Error(message), { code });\n}\nconst codes: readonly string[] = ['UNSUPPORTED_LANGUAGE','UNSUPPORTED_DEVICE','UNSUPPORTED_OPTION','MODEL_LOAD_FAILED','INVALID_INPUT','OUT_OF_MEMORY','TRANSCRIPTION_FAILED','ALIGNMENT_FAILED','ABORTED'];\nfunction normalizeError(value: unknown, fallback: ErrorCode) {\n const error = value as { code?: string; message?: string } | null;\n const message = typeof error?.message === 'string' ? error.message : String(value);\n const code = codes.includes(error?.code ?? '') ? error!.code as ErrorCode\n : /out of memory|cannot allocate memory|allocation failed|memory access out of bounds/i.test(message) ? 'OUT_OF_MEMORY' : fallback;\n return libraryError(code, message);\n}\nconst capabilities: Capabilities = Object.freeze({\n contractVersion: 1, libraryVersion: '1.0.2',\n supportedLanguages: Object.freeze(['en', 'ja', 'zh']),\n model: Object.freeze({ id: 'ggerganov/whisper.cpp/ggml-tiny-q5_1.bin', revision: '5359861c739e955e79d9a303bcbc70fb988958b1', device: 'wasm' as const, dtype: 'q5_1' }),\n alignmentOptions: Object.freeze(['threshold', 'karaoke'] as const), lyricsContext: false,\n});\nfunction language(value: unknown, fallback: string): string {\n if (value === undefined) return fallback;\n if (typeof value !== 'string' || !capabilities.supportedLanguages.includes(value)) throw libraryError('UNSUPPORTED_LANGUAGE', `Unsupported language: ${String(value)}`);\n return value;\n}\nfunction optionsOnly(options: object, keys: readonly string[]) {\n if (!options || typeof options !== 'object' || Array.isArray(options)) throw libraryError('INVALID_INPUT', 'Options must be an object');\n for (const key of Object.keys(options)) if (!keys.includes(key)) throw libraryError('UNSUPPORTED_OPTION', `Unsupported option: ${key}`);\n}\n\n/** No model, Worker, fetch or device access occurs until prepare(). */\nexport function createBinding(options: BindingOptions = {}): LyricAlignBinding {\n optionsOnly(options, ['workerUrl', 'assetBaseUrl', 'modelUrl', 'threads']);\n const config = { ...options };\n if (![1,2,4,6,8,12].includes(config.threads ?? 8)) throw libraryError('UNSUPPORTED_OPTION', 'Unsupported thread count');\n return Object.freeze({ capabilities, async createSession(): Promise<LyricAlignSession> {\n let worker: Worker | undefined, disposed = false, ready = false, busy = false, preparedLanguage = 'en', requestId = 0;\n let active: { id: number; reject: (error: unknown) => void; resolve: (value: any) => void; progress: (data: any) => void; code: ErrorCode } | undefined;\n function stop(error = libraryError('ABORTED', 'Session disposed')) {\n disposed = true; ready = false;\n worker?.terminate(); worker = undefined;\n const current = active; active = undefined; current?.reject(error);\n }\n function request(message: Record<string, unknown>, code: ErrorCode, progress: (data: any) => void, transfer: Transferable[] = []) {\n return new Promise<any>((resolve, reject) => {\n const id = ++requestId;\n active = { id, resolve, reject, progress, code };\n try { worker!.postMessage({ ...message, id }, transfer); }\n catch (error) { active = undefined; reject(normalizeError(error, code)); }\n });\n }\n async function operation<T>(phase: Progress['phase'], context: OperationContext, work: (emit: (data?: any) => void) => Promise<T>): Promise<T> {\n if (!context?.signal || typeof context.signal.addEventListener !== 'function') throw libraryError('INVALID_INPUT', 'An AbortSignal is required');\n if (context.signal.aborted) throw libraryError('ABORTED', 'Operation aborted');\n if (disposed || busy) throw libraryError('INVALID_INPUT', disposed ? 'Session is disposed' : 'Session is busy');\n busy = true;\n let sequence = 0;\n const emit = (data?: any) => {\n if (disposed || context.signal.aborted) return;\n const base = { phase, sequence: ++sequence, ...(typeof data?.stage === 'string' ? { detail: data.stage } : {}) };\n // Only explicitly typed native measurements can be forwarded. Legacy\n // sample counters and untyped model totals are deliberately indeterminate.\n const measured = data?.kind === 'measured' && Number.isFinite(data.completed) && Number.isFinite(data.total)\n && data.total > 0 && data.completed >= 0 && data.completed <= data.total\n && ['bytes','seconds','items'].includes(data.unit) && typeof data.scope === 'string' && data.scope.length > 0;\n const event: Progress = measured ? { ...base, kind: 'measured', completed: data.completed, total: data.total, unit: data.unit, scope: data.scope } : { ...base, kind: 'indeterminate' };\n try { context.onProgress?.(event); } catch { /* Observers cannot break computation. */ }\n };\n const abort = () => stop(libraryError('ABORTED', 'Operation aborted'));\n context.signal.addEventListener('abort', abort, { once: true });\n try {\n emit();\n if (disposed || context.signal.aborted) throw libraryError('ABORTED', 'Operation aborted');\n const result = await work(emit);\n if (disposed || context.signal.aborted) throw libraryError('ABORTED', 'Operation aborted');\n return result;\n }\n catch (error) { throw normalizeError(error, phase === 'preparing-model' ? 'MODEL_LOAD_FAILED' : phase === 'transcribing' ? 'TRANSCRIPTION_FAILED' : 'ALIGNMENT_FAILED'); }\n finally { busy = false; context.signal.removeEventListener('abort', abort); }\n }\n return {\n prepare(opts, context) {\n return operation('preparing-model', context, async emit => {\n optionsOnly(opts, ['language']); const selected = language(opts.language, preparedLanguage);\n if (ready) { preparedLanguage = selected; return; }\n if (typeof Worker === 'undefined' || typeof WebAssembly === 'undefined' || typeof SharedArrayBuffer === 'undefined' || !globalThis.crossOriginIsolated || !globalThis.isSecureContext) throw libraryError('UNSUPPORTED_DEVICE', 'tiny/WASM requires a secure cross-origin-isolated browser with Worker and SharedArrayBuffer');\n try {\n worker = new Worker(new URL(String(config.workerUrl ?? './worker.js'), import.meta.url));\n worker.addEventListener('message', ({ data }) => {\n const current = active; if (!current || data?.id !== current.id) return;\n if (data.type === 'progress') current.progress(data);\n else if (data.type === 'result') { active = undefined; current.resolve(data.result); }\n else if (data.type === 'error') { active = undefined; current.reject(normalizeError(data.error, current.code)); }\n });\n const crash = (message: string) => stop(libraryError(active?.code ?? 'MODEL_LOAD_FAILED', message));\n worker.addEventListener('error', event => crash(event.message || 'Worker crashed'));\n worker.addEventListener('messageerror', () => crash('Could not deserialize Worker response'));\n const base = new URL(String(config.assetBaseUrl ?? './assets/'), import.meta.url); if (!base.pathname.endsWith('/')) base.pathname += '/';\n await request({ type: 'initialize', options: { modelUrl: String(config.modelUrl ?? DEFAULT_MODEL_URL), modelSha256: DEFAULT_MODEL_SHA256, assetBaseUrl: base.href, threads: config.threads ?? 8 } }, 'MODEL_LOAD_FAILED', emit);\n ready = true; preparedLanguage = selected;\n } catch (error) { const normalized = normalizeError(error, 'MODEL_LOAD_FAILED'); stop(normalized); throw normalized; }\n });\n },\n transcribe(audio, opts, context) {\n return operation('transcribing', context, async emit => {\n if (!ready) throw libraryError('INVALID_INPUT', 'Call prepare before transcribe');\n optionsOnly(opts, ['language']); const selected = language(opts.language, preparedLanguage);\n if (!audio || audio.sampleRate !== 16000 || !(audio.pcm instanceof Float32Array) || !audio.pcm.length) throw libraryError('INVALID_INPUT', 'Expected nonempty mono Float32Array PCM at 16000 Hz');\n for (const sample of audio.pcm) if (!Number.isFinite(sample)) throw libraryError('INVALID_INPUT', 'PCM samples must be finite');\n const copy = audio.pcm.slice();\n return request({ type: 'transcribe', audio: copy, language: selected }, 'TRANSCRIPTION_FAILED', emit, [copy.buffer]);\n });\n },\n align(segments, lyrics, opts, context) {\n return operation('aligning', context, async emit => {\n if (!ready) throw libraryError('INVALID_INPUT', 'Call prepare before align');\n optionsOnly(opts, ['threshold','karaoke']);\n if (opts.karaoke !== undefined && opts.karaoke !== false) throw libraryError('UNSUPPORTED_OPTION', 'Only karaoke=false is supported');\n if (opts.threshold !== undefined && (!Number.isFinite(opts.threshold) || opts.threshold < 0 || opts.threshold > 1)) throw libraryError('INVALID_INPUT', 'threshold must be between 0 and 1');\n return request({ type: 'align-segments', segments, lyrics, options: opts }, 'ALIGNMENT_FAILED', emit);\n });\n },\n async dispose() { stop(); },\n };\n } });\n}\nexport const binding = createBinding();\n", "import type { AlignedLine, AlignOptions, Segment, Word } from '../contract.ts';\nimport { libraryError } from '../binding.ts';\n\nconst normalize = (text: string): string[] => Array.from(text.normalize('NFKC').toLocaleLowerCase('und').replace(/[^\\p{L}\\p{N}]/gu, ''));\ntype Evidence = { char: string; start: number; end: number; unit: number };\nfunction validTime(start: unknown, end: unknown): boolean {\n return typeof start === 'number' && typeof end === 'number' && Number.isFinite(start) && Number.isFinite(end) && start >= 0 && end > start;\n}\nfunction invalid(message: string): never { throw libraryError('INVALID_INPUT', message); }\n\n/** Global monotonic text alignment. Timings come exclusively from ASR evidence. */\nexport function alignSegments(segments: readonly Segment[], lyrics: readonly string[], options: AlignOptions): AlignedLine[] {\n if (!Array.isArray(segments) || !Array.isArray(lyrics) || lyrics.some(line => typeof line !== 'string')) invalid('Expected segment and lyric arrays');\n if (!options || typeof options !== 'object') invalid('Expected alignment options');\n for (const key of Object.keys(options)) if (!['threshold','karaoke'].includes(key)) throw libraryError('UNSUPPORTED_OPTION', `Unsupported option: ${key}`);\n if (options.karaoke !== undefined && options.karaoke !== false) throw libraryError('UNSUPPORTED_OPTION', 'Only karaoke=false is supported');\n const threshold = options.threshold ?? .65;\n if (!Number.isFinite(threshold) || threshold < 0 || threshold > 1) invalid('threshold must be between 0 and 1');\n const evidence: Evidence[] = [];\n let previous = -1, unitId = 0;\n for (const segment of segments) {\n if (!segment || typeof segment.text !== 'string' || !validTime(segment.start, segment.end) || segment.start < previous) invalid('Invalid or unordered ASR segment');\n previous = segment.start;\n if (segment.words !== undefined && !Array.isArray(segment.words)) invalid('Expected ASR word array');\n const units = segment.words?.length ? segment.words.map((w: Word) => {\n if (!w || typeof w !== 'object') invalid('Invalid ASR word');\n return {text:w.word,start:w.start,end:w.end};\n }) : [segment];\n let wordStart = segment.start;\n for (const unit of units) {\n 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');\n wordStart = unit.start;\n const id = unitId++;\n for (const char of normalize(unit.text)) evidence.push({ char, start: unit.start, end: unit.end, unit: id });\n }\n }\n const lines = lyrics.map(normalize), target = lines.flat(), width = evidence.length + 1;\n const cells = (target.length + 1) * width;\n // Reject explicitly instead of silently dropping the tail of a long song.\n if (cells > 64_000_000) invalid('Text alignment exceeds 64 million cells; reduce ASR/lyric text size');\n const trace = new Uint8Array(cells);\n let row = Int32Array.from({length: width}, (_, j) => -j), next = new Int32Array(width);\n for (let i = 1; i <= target.length; i++) {\n next[0] = -i;\n for (let j = 1; j < width; j++) {\n const diagonal = row[j-1] + (target[i-1] === evidence[j-1].char ? 2 : -2);\n const up = row[j] - 1, left = next[j-1] - 1;\n next[j] = Math.max(diagonal, up, left);\n trace[i*width+j] = diagonal >= up && diagonal >= left ? 1 : up >= left ? 2 : 3;\n }\n [row, next] = [next, row];\n }\n const mapping = new Int32Array(target.length).fill(-1);\n let i = target.length, j = evidence.length;\n while (i > 0 && j > 0) {\n const direction = trace[i*width+j];\n if (direction === 1) { mapping[--i] = --j; }\n else if (direction === 2) i--;\n else j--;\n }\n let offset = 0;\n const unitsByLine: Set<number>[] = [];\n const result = lyrics.map((line, index) => {\n const chars = lines[index], positions = mapping.subarray(offset, offset + chars.length); offset += chars.length;\n const assigned = Array.from(positions).filter(p => p >= 0);\n let score = 0, start: number | null = null, end: number | null = null;\n const units = new Set<number>(); unitsByLine.push(units);\n if (chars.length && assigned.length) {\n const first = assigned[0], last = assigned.at(-1)!;\n let equal = 0;\n for (let k = 0; k < positions.length; k++) if (positions[k] >= 0 && chars[k] === evidence[positions[k]].char) equal++;\n score = equal / Math.max(chars.length, last - first + 1);\n if (equal > 0 && score >= threshold) {\n start = evidence[first].start;\n end = 0;\n for (let p = first; p <= last; p++) { units.add(evidence[p].unit); end = Math.max(end,evidence[p].end); }\n }\n }\n return { line, start, end, score, matched: start !== null && end !== null };\n });\n const owners = new Map<number, number[]>();\n unitsByLine.forEach((units,line) => { for (const unit of units) { const lines = owners.get(unit) ?? []; lines.push(line); owners.set(unit,lines); } });\n // One coarse word/segment cannot independently locate multiple lyric lines.\n // Preserve legitimate overlap between distinct ASR units, but never split or\n // interpolate timing inside a unit that has no finer timing evidence.\n for (const lines of owners.values()) if (lines.length > 1) for (const line of lines) Object.assign(result[line],{start:null,end:null,matched:false});\n return result;\n}\n", "// Classic Worker entry: bundled as IIFE so Emscripten importScripts remains available.\nimport { BrowserEngine } from './engine/engine.mjs';\nimport { alignSegments } from './engine/align-segments.ts';\n// Replaced only by the experimental benchmark bundler; absent in release builds.\ndeclare const __ALIGN_EXPERIMENT__: Record<string, unknown>;\nconst engineConfig = typeof __ALIGN_EXPERIMENT__ === 'undefined'\n ? {timeScale:1.5,audioContext:640,encoderBlocks:4,posteriorBoundaries:'ends',lyricPauses:true,\n // Retry a window whose lyric consumption rate is off and whose evidence is poor (mean pairwise p<.25) from a later start.\n windowRetry:{shifts:[80,160],low:.65,high:1.5,minHistory:3,tolerance:0,maxScore:Math.log(.25)}}\n : __ALIGN_EXPERIMENT__;\nconst scope = self as unknown as DedicatedWorkerGlobalScope;\nlet engine: BrowserEngine | undefined;\nlet busy = false;\nscope.onmessage = async ({ data }) => {\n const { id, type } = data;\n const fail = (error: unknown) => { const e = error instanceof Error ? error : new Error(String(error)); scope.postMessage({ id, type: 'error', error: { name: e.name, message: e.message, code: (e as Error & {code?: string}).code } }); };\n if (busy) { fail(new Error('Engine is busy')); return; }\n busy = true;\n try {\n let result;\n if (type === 'initialize') { if (engine) throw new Error('Engine is already initialized'); engine = new BrowserEngine(engineConfig); result = await engine.initialize(data.options, (stage: string, completed?: number, total?: number) => scope.postMessage({id,type:'progress',stage,completed,total})); }\n else if (type === 'align') { if (!engine) throw new Error('Engine is not initialized'); engine.progress = (stage: string, completed?: number, total?: number) => scope.postMessage({id,type:'progress',stage,completed,total});\n result=await engine.align(data.audio,data.lyrics,data.language);\n }\n else if (type === 'transcribe') { if (!engine) throw new Error('Engine is not initialized'); engine.progress = (stage: string) => scope.postMessage({id,type:'progress',stage}); result = await engine.transcribe(data.audio,data.language); }\n else if (type === 'align-segments') { if (!engine) throw new Error('Engine is not initialized'); result = alignSegments(data.segments,data.lyrics,data.options); }\n else if (type === 'dispose') { engine?.dispose(); engine = undefined; result = { disposed: true }; }\n else throw new Error(`Unknown worker request: ${type}`);\n scope.postMessage({ id, type: 'result', result });\n } catch (error) { if (type === 'initialize') { engine?.dispose(); engine=undefined; } fail(error); }\n finally { busy=false; }\n};\n"],
5
+ "mappings": "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",
6
+ "names": ["language", "language", "normalize", "ptr", "wasm", "module", "engine", "language", "w", "state", "sum", "language", "audio", "decoded", "busy", "normalize", "j", "i", "lines"]
7
7
  }