Files
discord-decomp/sources/modules/markup/MarkupRules.tsx
T
2026-07-28 01:06:53 +03:00

892 lines
74 KiB
TypeScript
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
/* Metro module 6624; source: modules/markup/MarkupRules.tsx; dependencies: [57, 862, 1379, 4267, 1938, 1867, 1878, 661, 5066, 6625, 6626, 3855, 6629, 1244, 6630, 1941, 4617, 3995, 6631, 6634, 1423, 3797, 6635, 6641, 6642, 6643, 6644, 6645, 6623, 6646, 22, 2] */
import Module00022 from '../../by-id/module-00022.js'; /* Metro dependency 22 */
import Module00057 from '../../by-id/module-00057.js'; /* Metro dependency 57 */
import Module00862 from '../../by-id/module-00862.js'; /* Metro dependency 862 */
import ChannelStore from '../../stores/ChannelStore.tsx'; /* Metro dependency 1379 */
import GuildStore from '../../stores/GuildStore.tsx'; /* Metro dependency 1867 */
import UserStore from '../../stores/UserStore.tsx'; /* Metro dependency 1878 */
import GuildRoleStore from '../../stores/GuildRoleStore.tsx'; /* Metro dependency 1938 */
import UnicodeEmojis from '../emojis/UnicodeEmojis.tsx'; /* Metro dependency 3797 */
import Module03855 from '../../by-id/module-03855.js'; /* Metro dependency 3855 */
import DetectableGameStore from '../../stores/DetectableGameStore.tsx'; /* Metro dependency 4267 */
import GetSoundmojiASTFromString from '../premium/sounds/soundmoji/utils/getSoundmojiASTFromString.tsx'; /* Metro dependency 6635 */
import * as FileImportTrackerModule from '../../by-id/module-00002-FileImportTracker.js'; /* Metro dependency 2 */
import * as ConstantsModule from '../../Constants.tsx'; /* Metro dependency 661 */
import * as IndexNativeModule from '../../intl/index.native.tsx'; /* Metro dependency 1244 */
import * as ApplicationCommandConstantsModule from '../application_commands/ApplicationCommandConstants.tsx'; /* Metro dependency 5066 */
import * as ChannelAutocompleteConstantsModule from '../channel_autocomplete/ChannelAutocompleteConstants.tsx'; /* Metro dependency 6625 */
import * as MarkupLinkRuleModule from './MarkupLinkRule.tsx'; /* Metro dependency 6626 */
import * as StaticRouteRenderingModule from './StaticRouteRendering.tsx'; /* Metro dependency 6642 */
function _fun52408(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#52408, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6802:6, offset: 0x01329deb, size: 2754 bytes, params: 8, frame: 30
const env0_0 = require;
const parseLink2 = parseLink;
const _startOfWord = function(a0, a1) {
var r1;
var r0;
var value = a0.length === 0;
if (value) {
r0 = value;
} else {
value = a1 === 0;
if (value) {
r1 = value;
} else {
value = a0.charAt(a1 - 1);
value = value.trim();
value = value === '';
r1 = value;
}
r0 = r1;
}
return r0;
};
const Object = global.Object;
Object.defineProperty(exports, '__esModule', {value: true});
let value = ConstantsModule;
const env0_10 = value.ID_REGEX;
const env0_11 = value.MARKDOWN_SPOILER_REGEXP;
const env0_12 = value.MARKDOWN_STATIC_ROUTE_NAME_REGEXP;
const env0_15 = RegExp('^( *>>> +([\\s\\S]*))|^( *>(?!>>) +[^\\n]*(\\n *>(?!>>) +[^\\n]*)*\\n?)', '');
const env0_16 = RegExp('^$|\\n *$', '');
const env0_17 = RegExp('^ *>>> ?', '');
const env0_18 = RegExp('^ *> ?', 'gm');
const env0_19 = RegExp('^((?:https?|steam):\\/\\/[^\\s<]+[^<.,:;"\'\\]\\s])', '');
object = {};
object.newline = (importDefault(3855) /* metro dependency 3855 */).defaultRules.newline;
object.paragraph = (importDefault(3855) /* metro dependency 3855 */).defaultRules.paragraph;
const object2 = {};
copyDataProperties(object2, (importDefault(3855) /* metro dependency 3855 */).defaultRules.escape, undefined);
object2['match'] = match_52413;
object.escape = object2;
const object3 = {};
copyDataProperties(object3, (importDefault(3855) /* metro dependency 3855 */).defaultRules.blockQuote, undefined);
object3['requiredFirstCharacters'] = [' ', '>'];
object3['match'] = match_52414;
object3['parse'] = parse_52415;
object.blockQuote = object3;
object.link = importDefault(6626) /* metro dependency 6626: MarkupLinkRule */;
const object4 = {};
copyDataProperties(object4, (importDefault(3855) /* metro dependency 3855 */).defaultRules.autolink, undefined);
object4['parse'] = parseLink2;
object.autolink = object4;
const object5 = {};
copyDataProperties(object5, (importDefault(3855) /* metro dependency 3855 */).defaultRules.mailto, undefined);
value = importDefault(3855) /* metro dependency 3855 */;
object5['match'] = value.inlineRegex(RegExp('^<([^\\s<>@]+@[^\\s<>@]+\\.[^\\s<>@]+)>', ''));
object5['requiredFirstCharacters'] = ['<'];
object5['parse'] = function(a0) {
var property = a0[1];
var property2 = a0[1];
return {type: 'link', content: [{type: 'text', content: property}],
target: property2.startsWith('mailto:') ? property2 : 'mailto:' + property2};
};
object.mailto = object5;
const object6 = {};
copyDataProperties(object6, (importDefault(3855) /* metro dependency 3855 */).defaultRules.mailto, undefined);
object6['requiredFirstCharacters'] = ['<'];
value = importDefault(3855) /* metro dependency 3855 */;
object6['match'] = value.inlineRegex(RegExp('^<((?:(?:tel|sms):\\+?|\\+)(?:(?:[0-9]|\\([0-9]+\\)))(?:[- .\\/]?(?:[0-9]|\\([0-9]+\\)))+)>',
''));
object6['parse'] = parse_52417;
object.tel = object6;
const object7 = {};
copyDataProperties(object7, (importDefault(3855) /* metro dependency 3855 */).defaultRules.url, undefined);
object7['requiredFirstCharacters'] = ['h', 's'];
object7['match'] = match_52418;
object7['parse'] = parseLink2;
object.url = object7;
object.strong = (importDefault(3855) /* metro dependency 3855 */).defaultRules.strong;
object.em = (importDefault(3855) /* metro dependency 3855 */).defaultRules.em;
object.u = (importDefault(3855) /* metro dependency 3855 */).defaultRules.u;
object.br = (importDefault(3855) /* metro dependency 3855 */).defaultRules.br;
object.text = importDefault(6629) /* metro dependency 6629: MarkupTextRule */;
const object8 = {};
copyDataProperties(object8, (importDefault(3855) /* metro dependency 3855 */).defaultRules.inlineCode, undefined);
object8['parse'] = parse_52419;
object.inlineCode = object8;
const object9 = {};
object9.order = (importDefault(6629) /* metro dependency 6629: MarkupTextRule */).order;
object9.requiredFirstCharacters = ['¯'];
object9.match = function(a0) {
return RegExp('^(¯\\\\_\\(ツ\\)_\\/¯)', '').exec(a0);
};
object9.parse = function(a0) {
return {type: 'text', content: a0[1]};
};
object.emoticon = object9;
const object10 = {};
object10.order = (importDefault(3855) /* metro dependency 3855 */).defaultRules.codeBlock.order;
object10.requiredFirstCharacters = ['`'];
object10.match = function(a0) {
return RegExp('^```(?:([a-z0-9_+\\-.#]+?)\\n)?\\n*([^\\n][^]*?)\\n*```', 'i').exec(a0);
};
object10.parse = function(a0, a1, a2) {
var object = {};
var property = a0[1];
var value = '';
object.lang = property ?? value;
var r1 = a0[2] ?? value;
object.content = r1;
r1 = a2.inQuote || a2.formatInline;
r1 = !!r1 && r1;
object.inQuote = r1;
return object;
};
object.codeBlock = object10;
const object11 = {};
object11.order = (importDefault(6629) /* metro dependency 6629: MarkupTextRule */).order;
object11.requiredFirstCharacters = ['<'];
object11.match = function(a0) {
return RegExp('^<@&(\\d+)>', '').exec(a0);
};
object11.parse = parse_52425;
object.roleMention = object11;
const object12 = {};
object12.order = (importDefault(6629) /* metro dependency 6629: MarkupTextRule */).order;
object12.requiredFirstCharacters = ['<', '@'];
object12.match = function(a0) {
var value = RegExp('^<@!?(\\d+)>|^(@(?:everyone|here))', '').exec(a0);
var value2 = null;
return value2 == value ? value2 : value;
};
object12.parse = parse_52427;
object.mention = object12;
const object13 = {};
object13.order = (importDefault(6629) /* metro dependency 6629: MarkupTextRule */).order;
object13.requiredFirstCharacters = ['@'];
object13.match = function(a0, a1, a2) {
var value = null;
return value == a2 ? RegExp('^(@silent(?![^\\s]))',
'').exec(a0) : a2 !== '' ? value : RegExp('^(@silent(?![^\\s]))', '').exec(a0);
};
object13.parse = function(a0) {
return {type: 'silentPrefix', content: a0[0]};
};
object.silentPrefix = object13;
object.channelMention = (importDefault(6631) /* metro dependency 6631: MarkupChannelMentionRule */).channelMention;
object.channelOrMessageUrl = (importDefault(6631) /* metro dependency 6631: MarkupChannelMentionRule */).channelOrMessageUrl;
object.mediaPostLink = (importDefault(6631) /* metro dependency 6631: MarkupChannelMentionRule */).mediaPostLink;
object.attachmentLink = (importDefault(6634) /* metro dependency 6634: MarkupAttachmentLinkRule */).attachmentLink;
const object14 = {};
object14.order = (importDefault(3855) /* metro dependency 3855 */).defaultRules.text.order;
object14.requiredFirstCharacters = ['<'];
object14.match = function(a0) {
return RegExp('^<\\/((?:(?:[\\x2D0-9A-Z_a-z\\xAA\\xB2\\xB3\\xB5\\xB9\\xBA\\xBC-\\xBE\\xC0-\\xD6\\xD8-\\xF6\\xF8-\\u02C1\\u02C6-\\u02D1\\u02E0-\\u02E4\\u02EC\\u02EE\\u0370-\\u0374\\u0376\\u0377\\u037A-\\u037D\\u037F\\u0386\\u0388-\\u038A\\u038C\\u038E-\\u03A1\\u03A3-\\u03F5\\u03F7-\\u0481\\u048A-\\u052F\\u0531-\\u0556\\u0559\\u0560-\\u0588\\u05D0-\\u05EA\\u05EF-\\u05F2\\u0620-\\u064A\\u0660-\\u0669\\u066E\\u066F\\u0671-\\u06D3\\u06D5\\u06E5\\u06E6\\u06EE-\\u06FC\\u06FF\\u0710\\u0712-\\u072F\\u074D-\\u07A5\\u07B1\\u07C0-\\u07EA\\u07F4\\u07F5\\u07FA\\u0800-\\u0815\\u081A\\u0824\\u0828\\u0840-\\u0858\\u0860-\\u086A\\u0870-\\u0887\\u0889-\\u088E\\u08A0-\\u08C9\\u0900-\\u0950\\u0955-\\u0963\\u0966-\\u0980\\u0985-\\u098C\\u098F\\u0990\\u0993-\\u09A8\\u09AA-\\u09B0\\u09B2\\u09B6-\\u09B9\\u09BD\\u09CE\\u09DC\\u09DD\\u09DF-\\u09E1\\u09E6-\\u09F1\\u09F4-\\u09F9\\u09FC\\u0A05-\\u0A0A\\u0A0F\\u0A10\\u0A13-\\u0A28\\u0A2A-\\u0A30\\u0A32\\u0A33\\u0A35\\u0A36\\u0A38\\u0A39\\u0A59-\\u0A5C\\u0A5E\\u0A66-\\u0A6F\\u0A72-\\u0A74\\u0A85-\\u0A8D\\u0A8F-\\u0A91\\u0A93-\\u0AA8\\u0AAA-\\u0AB0\\u0AB2\\u0AB3\\u0AB5-\\u0AB9\\u0ABD\\u0AD0\\u0AE0\\u0AE1\\u0AE6-\\u0AEF\\u0AF9\\u0B05-\\u0B0C\\u0B0F\\u0B10\\u0B13-\\u0B28\\u0B2A-\\u0B30\\u0B32\\u0B33\\u0B35-\\u0B39\\u0B3D\\u0B5C\\u0B5D\\u0B5F-\\u0B61\\u0B66-\\u0B6F\\u0B71-\\u0B77\\u0B83\\u0B85-\\u0B8A\\u0B8E-\\u0B90\\u0B92-\\u0B95\\u0B99\\u0B9A\\u0B9C\\u0B9E\\u0B9F\\u0BA3\\u0BA4\\u0BA8-\\u0BAA\\u0BAE-\\u0BB9\\u0BD0\\u0BE6-\\u0BF2\\u0C05-\\u0C0C\\u0C0E-\\u0C10\\u0C12-\\u0C28\\u0C2A-\\u0C39\\u0C3D\\u0C58-\\u0C5A\\u0C5D\\u0C60\\u0C61\\u0C66-\\u0C6F\\u0C78-\\u0C7E\\u0C80\\u0C85-\\u0C8C\\u0C8E-\\u0C90\\u0C92-\\u0CA8\\u0CAA-\\u0CB3\\u0CB5-\\u0CB9\\u0CBD\\u0CDD\\u0CDE\\u0CE0\\u0CE1\\u0CE6-\\u0CEF\\u0CF1\\u0CF2\\u0D04-\\u0D0C\\u0D0E-\\u0D10\\u0D12-\\u0D3A\\u0D3D\\u0D4E\\u0D54-\\u0D56\\u0D58-\\u0D61\\u0D66-\\u0D78\\u0D7A-\\u0D7F\\u0D85-\\u0D96\\u0D9A-\\u0DB1\\u0DB3-\\u0DBB\\u0DBD\\u0DC0-\\u0DC6\\u0DE6-\\u0DEF\\u0E01-\\u0E3A\\u0E40-\\u0E5B\\u0E81\\u0E82\\u0E84\\u0E86-\\u0E8A\\u0E8C-\\u0EA3\\u0EA5\\u0EA7-\\u0EB0\\u0EB2\\u0EB3\\u0EBD\\u0EC0-\\u0EC4\\u0EC6\\u0ED0-\\u0ED9\\u0EDC-\\u0EDF\\u0F00\\u0F20-\\u0F33\\u0F40-\\u0F47\\u0F49-\\u0F6C\\u0F88-\\u0F8C\\u1000-\\u102A\\u103F-\\u1049\\u1050-\\u1055\\u105A-\\u105D\\u1061\\u1065\\u1066\\u106E-\\u1070\\u1075-\\u1081\\u108E\\u1090-\\u1099\\u10A0-\\u10C5\\u10C7\\u10CD\\u10D0-\\u10FA\\u10FC-\\u1248\\u124A-\\u124D\\u1250-\\u1256\\u1258\\u125A-\\u125D\\u1260-\\u1288\\u128A-\\u128D\\u1290-\\u12B0\\u12B2-\\u12B5\\u12B8-\\u12BE\\u12C0\\u12C2-\\u12C5\\u12C8-\\u12D6\\u12D8-\\u1310\\u1312-\\u1315\\u1318-\\u135A\\u1369-\\u137C\\u1380-\\u138F\\u13A0-\\u13F5\\u13F8-\\u13FD\\u1401-\\u166C\\u166F-\\u167F\\u1681-\\u169A\\u16A0-\\u16EA\\u16EE-\\u16F8\\u1700-\\u1711\\u171F-\\u1731\\u1740-\\u1751\\u1760-\\u176C\\u176E-\\u1770\\u1780-\\u17B3\\u17D7\\u17DC\\u17E0-\\u17E9\\u17F0-\\u17F9\\u1810-\\u1819\\u1820-\\u1878\\u1880-\\u1884\\u1887-\\u18A8\\u18AA\\u18B0-\\u18F5\\u1900-\\u191E\\u1946-\\u196D\\u1970-\\u1974\\u1980-\\u19AB\\u19B0-\\u19C9\\u19D0-\\u19DA\\u1A00-\\u1A16\\u1A20-\\u1A54\\u1A80-\\u1A89\\u1A90-\\u1A99\\u1AA7\\u1B05-\\u1B33\\u1B45-\\u1B4C\\u1B50-\\u1B59\\u1B83-\\u1BA0\\u1BAE-\\u1BE5\\u1C00-\\u1C23\\u1C40-\\u1C49\\u1C4D-\\u1C7D\\u1C80-\\u1C8A\\u1C90-\\u1CBA\\u1CBD-\\u1CBF\\u1CE9-\\u1CEC\\u1CEE-\\u1CF3\\u1CF5\\u1CF6\\u1CFA\\u1D00-\\u1DBF\\u1E00-\\u1F15\\u1F18-\\u1F1D\\u1F20-\\u1F45\\u1F48-\\u1F4D\\u1F50-\\u1F57\\u1F59\\u1F5B\\u1F5D\\u1F5F-\\u1F7D\\u1F80-\\u1FB4\\u1FB6-\\u1FBC\\u1FBE\\u1FC2-\\u1FC4\\u1FC6-\\u1FCC\\u1FD0-\\u1FD3\\u1FD6-\\u1FDB\\u1FE0-\\u1FEC\\u1FF2-\\u1FF4\\u1FF6-\\u1FFC\\u2070\\u2071\\u2074-\\u2079\\u207F-\\u2089\\u2090-\\u209C\\u2102\\u2107\\u210A-\\u2113\\u2115\\u2119-\\u211D\\u2124\\u2126\\u2128\\u212A-\\u212D\\u212F-\\u2139\\u213C-\\u213F\\u2145-\\u2149\\u214E\\u2150-\\u2189\\u2460-\\u249B\\u24EA-\\u24FF\\u2776-\\u2793\\u2C00-\\u2CE4\\u2CEB-\\u2CEE\\u2CF2\\u2CF3\\u2CFD\\u2D00-\\u2D25\\u2D27\\u2D2D\\u2D30-\\u2D67\\u2D6F\\u2D80-\\u2D96\\u2DA0-\\u2DA6\\u2DA8-\\u2DAE\\u2DB0-\\u2DB6\\u2DB8-\\u2DBE\\u2DC0-\\u2DC6\\u2DC8-\\u2DCE\\u2DD0-\\u2DD6\\u2DD8-\\u2DDE\\u2E2F\\u3005-\\u3007\\u3021-\\u3029\\u3031-\\u3035\\u3038-\\u303C\\u3041-\\u3096\\u309D-\\u309F\\u30A1-\\u30FA\\u30FC-\\u30FF\\u3105-\\u312F\\u3131-\\u318E\\u3192-\\u3195\\u31A0-\\u31BF\\u31F0-\\u31FF\\u3220-\\u3229\\u3248-\\u324F\\u3251-\\u325F\\u3280-\\u3289\\u32B1-\\u32BF\\u3400-\\u4DBF\\u4E00-\\uA48C\\uA4D0-\\uA4FD\\uA500-\\uA60C\\uA610-\\uA62B\\uA640-\\uA66E\\uA67F-\\uA69D\\uA6A0-\\uA6EF\\uA717-\\uA71F\\uA722-\\uA788\\uA78B-\\uA7CD\\uA7D0\\uA7D1\\uA7D3\\uA7D5-\\uA7DC\\uA7F2-\\uA801\\uA803-\\uA805\\uA807-\\uA80A\\uA80C-\\uA822\\uA830-\\uA835\\uA840-\\uA873\\uA882-\\uA8B3\\uA8D0-\\uA8D9\\uA8E0-\\uA925\\uA930-\\uA946\\uA960-\\uA97C\\uA984-\\uA9B2\\uA9CF-\\uA9D9\\uA9E0-\\uA9E4\\uA9E6-\\uA9FE\\uAA00-\\uAA28\\uAA40-\\uAA42\\uAA44-\\uAA4B\\uAA50-\\uAA59\\uAA60-\\uAA76\\uAA7A\\uAA7E-\\uAAAF\\uAAB1\\uAAB5\\uAAB6\\uAAB9-\\uAABD\\uAAC0\\uAAC2\\uAADB-\\uAADD\\uAAE0-\\uAAEA\\uAAF2-\\uAAF4\\uAB01-\\uAB06\\uAB09-\\uAB0E\\uAB11-\\uAB16\\uAB20-\\uAB26\\uAB28-\\uAB2E\\uAB30-\\uAB5A\\uAB5C-\\uAB69\\uAB70-\\uABE2\\uABF0-\\uABF9\\uAC00-\\uD7A3\\uD7B0-\\uD7C6\\uD7CB-\\uD7FB\\uF900-\\uFA6D\\uFA70-\\uFAD9\\uFB00-\\uFB06\\uFB13-\\uFB17\\uFB1D\\uFB1F-\\uFB28\\uFB2A-\\uFB36\\uFB38-\\uFB3C\\uFB3E\\uFB40\\uFB41\\uFB43\\uFB44\\uFB46-\\uFBB1\\uFBD3-\\uFD3D\\uFD50-\\uFD8F\\uFD92-\\uFDC7\\uFDF0-\\uFDFB\\uFE70-\\uFE74\\uFE76-\\uFEFC\\uFF10-\\uFF19\\uFF21-\\uFF3A\\uFF41-\\uFF5A\\uFF66-\\uFFBE\\uFFC2-\\uFFC7\\uFFCA-\\uFFCF\\uFFD2-\\uFFD7\\uFFDA-\\uFFDC]|\\uD800[\\uDC00-\\uDC0B\\uDC0D-\\uDC26\\uDC28-\\uDC3A\\uDC3C\\uDC3D\\uDC3F-\\uDC4D\\uDC50-\\uDC5D\\uDC80-\\uDCFA\\uDD07-\\uDD33\\uDD40-\\uDD78\\uDD8A\\uDD8B\\uDE80-\\uDE9C\\uDEA0-\\uDED0\\uDEE1-\\uDEFB\\uDF00-\\uDF23\\uDF2D-\\uDF4A\\uDF50-\\uDF75\\uDF80-\\uDF9D\\uDFA0-\\uDFC3\\uDFC8-\\uDFCF\\uDFD1-\\uDFD5]|\\uD801[\\uDC00-\\uDC9D\\uDCA0-\\uDCA9\\uDCB0-\\uDCD3\\uDCD8-\\uDCFB\\uDD00-\\uDD27\\uDD30-\\uDD63\\uDD70-\\uDD7A\\uDD7C-\\uDD8A\\uDD8C-\\uDD92\\uDD94\\uDD95\\uDD97-\\uDDA1\\uDDA3-\\uDDB1\\uDDB3-\\uDDB9\\uDDBB\\uDDBC\\uDDC0-\\uDDF3\\uDE00-\\uDF36\\uDF40-\\uDF55\\uDF60-\\uDF67\\uDF80-\\uDF85\\uDF87-\\uDFB0\\uDFB2-\\uDFBA]|\\uD802[\\uDC00-\\uDC05\\uDC08\\uDC0A-\\uDC35\\uDC37\\uDC38\\uDC3C\\uDC3F-\\uDC55\\uDC58-\\uDC76\\uDC79-\\uDC9E\\uDCA7-\\uDCAF\\uDCE0-\\uDCF2\\uDCF4\\uDCF5\\uDCFB-\\uDD1B\\uDD20-\\uDD39\\uDD80-\\uDDB7\\uDDBC-\\uDDCF\\uDDD2-\\uDE00\\uDE10-\\uDE13\\uDE15-\\uDE17\\uDE19-\\uDE35\\uDE40-\\uDE48\\uDE60-\\uDE7E\\uDE80-\\uDE9F\\uDEC0-\\uDEC7\\uDEC9-\\uDEE4\\uDEEB-\\uDEEF\\uDF00-\\uDF35\\uDF40-\\uDF55\\uDF58-\\uDF72\\uDF78-\\uDF91\\uDFA9-\\uDFAF]|\\uD803[\\uDC00-\\uDC48\\uDC80-\\uDCB2\\uDCC0-\\uDCF2\\uDCFA-\\uDD23\\uDD30-\\uDD39\\uDD40-\\uDD65\\uDD6F-\\uDD85\\uDE60-\\uDE7E\\uDE80-\\uDEA9\\uDEB0\\uDEB1\\uDEC2-\\uDEC4\\uDF00-\\uDF27\\uDF30-\\uDF45\\uDF51-\\uDF54\\uDF70-\\uDF81\\uDFB0-\\uDFCB\\uDFE0-\\uDFF6]|\\uD804[\\uDC03-\\uDC37\\uDC52-\\uDC6F\\uDC71\\uDC72\\uDC75\\uDC83-\\uDCAF\\uDCD0-\\uDCE8\\uDCF0-\\uDCF9\\uDD03-\\uDD26\\uDD36-\\uDD3F\\uDD44\\uDD47\\uDD50-\\uDD72\\uDD76\\uDD83-\\uDDB2\\uDDC1-\\uDDC4\\uDDD0-\\uDDDA\\uDDDC\\uDDE1-\\uDDF4\\uDE00-\\uDE11\\uDE13-\\uDE2B\\uDE3F\\uDE40\\uDE80-\\uDE86\\uDE88\\uDE8A-\\uDE8D\\uDE8F-\\uDE9D\\uDE9F-\\uDEA8\\uDEB0-\\uDEDE\\uDEF0-\\uDEF9\\uDF05-\\uDF0C\\uDF0F\\uDF10\\uDF13-\\uDF28\\uDF2A-\\uDF30\\uDF32\\uDF33\\uDF35-\\uDF39\\uDF3D\\uDF50\\uDF5D-\\uDF61\\uDF80-\\uDF89\\uDF8B\\uDF8E\\uDF90-\\uDFB5\\uDFB7\\uDFD1\\uDFD3]|\\uD805[\\uDC00-\\uDC34\\uDC47-\\uDC4A\\uDC50-\\uDC59\\uDC5F-\\uDC61\\uDC80-\\uDCAF\\uDCC4\\uDCC5\\uDCC7\\uDCD0-\\uDCD9\\uDD80-\\uDDAE\\uDDD8-\\uDDDB\\uDE00-\\uDE2F\\uDE44\\uDE50-\\uDE59\\uDE80-\\uDEAA\\uDEB8\\uDEC0-\\uDEC9\\uDED0-\\uDEE3\\uDF00-\\uDF1A\\uDF30-\\uDF3B\\uDF40-\\uDF46]|\\uD806[\\uDC00-\\uDC2B\\uDCA0-\\uDCF2\\uDCFF-\\uDD06\\uDD09\\uDD0C-\\uDD13\\uDD15\\uDD16\\uDD18-\\uDD2F\\uDD3F\\uDD41\\uDD50-\\uDD59\\uDDA0-\\uDDA7\\uDDAA-\\uDDD0\\uDDE1\\uDDE3\\uDE00\\uDE0B-\\uDE32\\uDE3A\\uDE50\\uDE5C-\\uDE89\\uDE9D\\uDEB0-\\uDEF8\\uDF00-\\uDF09\\uDFC0-\\uDFE0\\uDFF0-\\uDFF9]|\\uD807[\\uDC00-\\uDC08\\uDC0A-\\uDC2E\\uDC40\\uDC50-\\uDC6C\\uDC72-\\uDC8F\\uDD00-\\uDD06\\uDD08\\uDD09\\uDD0B-\\uDD30\\uDD46\\uDD50-\\uDD59\\uDD60-\\uDD65\\uDD67\\uDD68\\uDD6A-\\uDD89\\uDD98\\uDDA0-\\uDDA9\\uDEE0-\\uDEF2\\uDF02\\uDF04-\\uDF10\\uDF12-\\uDF33\\uDF50-\\uDF59\\uDFB0\\uDFC0-\\uDFD4]|\\uD808[\\uDC00-\\uDF99]|\\uD809[\\uDC00-\\uDC6E\\uDC80-\\uDD43]|\\uD80B[\\uDF90-\\uDFF0]|[\\uD80C\\uD80E\\uD80F\\uD81C-\\uD820\\uD822\\uD840-\\uD868\\uD86A-\\uD86C\\uD86F-\\uD872\\uD874-\\uD879\\uD880-\\uD883\\uD885-\\uD887][\\uDC00-\\uDFFF]|\\uD80D[\\uDC00-\\uDC2F\\uDC41-\\uDC46\\uDC60-\\uDFFF]|\\uD810[\\uDC00-\\uDFFA]|\\uD811[\\uDC00-\\uDE46]|\\uD818[\\uDD00-\\uDD1D\\uDD30-\\uDD39]|\\uD81A[\\uDC00-\\uDE38\\uDE40-\\uDE5E\\uDE60-\\uDE69\\uDE70-\\uDEBE\\uDEC0-\\uDEC9\\uDED0-\\uDEED\\uDF00-\\uDF2F\\uDF40-\\uDF43\\uDF50-\\uDF59\\uDF5B-\\uDF61\\uDF63-\\uDF77\\uDF7D-\\uDF8F]|\\uD81B[\\uDD40-\\uDD6C\\uDD70-\\uDD79\\uDE40-\\uDE96\\uDF00-\\uDF4A\\uDF50\\uDF93-\\uDF9F\\uDFE0\\uDFE1\\uDFE3]|\\uD821[\\uDC00-\\uDFF7]|\\uD823[\\uDC00-\\uDCD5\\uDCFF-\\uDD08]|\\uD82B[\\uDFF0-\\uDFF3\\uDFF5-\\uDFFB\\uDFFD\\uDFFE]|\\uD82C[\\uDC00-\\uDD22\\uDD32\\uDD50-\\uDD52\\uDD55\\uDD64-\\uDD67\\uDD70-\\uDEFB]|\\uD82F[\\uDC00-\\uDC6A\\uDC70-\\uDC7C\\uDC80-\\uDC88\\uDC90-\\uDC99]|\\uD833[\\uDCF0-\\uDCF9]|\\uD834[\\uDEC0-\\uDED3\\uDEE0-\\uDEF3\\uDF60-\\uDF78]|\\uD835[\\uDC00-\\uDC54\\uDC56-\\uDC9C\\uDC9E\\uDC9F\\uDCA2\\uDCA5\\uDCA6\\uDCA9-\\uDCAC\\uDCAE-\\uDCB9\\uDCBB\\uDCBD-\\uDCC3\\uDCC5-\\uDD05\\uDD07-\\uDD0A\\uDD0D-\\uDD14\\uDD16-\\uDD1C\\uDD1E-\\uDD39\\uDD3B-\\uDD3E\\uDD40-\\uDD44\\uDD46\\uDD4A-\\uDD50\\uDD52-\\uDEA5\\uDEA8-\\uDEC0\\uDEC2-\\uDEDA\\uDEDC-\\uDEFA\\uDEFC-\\uDF14\\uDF16-\\uDF34\\uDF36-\\uDF4E\\uDF50-\\uDF6E\\uDF70-\\uDF88\\uDF8A-\\uDFA8\\uDFAA-\\uDFC2\\uDFC4-\\uDFCB\\uDFCE-\\uDFFF]|\\uD837[\\uDF00-\\uDF1E\\uDF25-\\uDF2A]|\\uD838[\\uDC30-\\uDC6D\\uDD00-\\uDD2C\\uDD37-\\uDD3D\\uDD40-\\uDD49\\uDD4E\\uDE90-\\uDEAD\\uDEC0-\\uDEEB\\uDEF0-\\uDEF9]|\\uD839[\\uDCD0-\\uDCEB\\uDCF0-\\uDCF9\\uDDD0-\\uDDED\\uDDF0-\\uDDFA\\uDFE0-\\uDFE6\\uDFE8-\\uDFEB\\uDFED\\uDFEE\\uDFF0-\\uDFFE]|\\uD83A[\\uDC00-\\uDCC4\\uDCC7-\\uDCCF\\uDD00-\\uDD43\\uDD4B\\uDD50-\\uDD59]|\\uD83B[\\uDC71-\\uDCAB\\uDCAD-\\uDCAF\\uDCB1-\\uDCB4\\uDD01-\\uDD2D\\uDD2F-\\uDD3D\\uDE00-\\uDE03\\uDE05-\\uDE1F\\uDE21\\uDE22\\uDE24\\uDE27\\uDE29-\\uDE32\\uDE34-\\uDE37\\uDE39\\uDE3B\\uDE42\\uDE47\\uDE49\\uDE4B\\uDE4D-\\uDE4F\\uDE51\\uDE52\\uDE54\\uDE57\\uDE59\\uDE5B\\uDE5D\\uDE5F\\uDE61\\uDE62\\uDE64\\uDE67-\\uDE6A\\uDE6C-\\uDE72\\uDE74-\\uDE77\\uDE79-\\uDE7C\\uDE7E\\uDE80-\\uDE89\\uDE8B-\\uDE9B\\uDEA1-\\uDEA3\\uDEA5-\\uDEA9\\uDEAB-\\uDEBB]|\\uD83C[\\uDD00-\\uDD0C]|\\uD83E[\\uDFF0-\\uDFF9]|\\uD869[\\uDC00-\\uDEDF\\uDF00-\\uDFFF]|\\uD86D[\\uDC00-\\uDF39\\uDF40-\\uDFFF]|\\uD86E[\\uDC00-\\uDC1D\\uDC20-\\uDFFF]|\\uD873[\\uDC00-\\uDEA1\\uDEB0-\\uDFFF]|\\uD87A[\\uDC00-\\uDFE0\\uDFF0-\\uDFFF]|\\uD87B[\\uDC00-\\uDE5D]|\\uD87E[\\uDC00-\\uDE1D]|\\uD884[\\uDC00-\\uDF4A\\uDF50-\\uDFFF]|\\uD888[\\uDC00-\\uDFAF]){1,32})(?: (?:[\\x2D0-9A-Z_a-z\\xAA\\xB2\\xB3\\xB5\\xB9\\xBA\\xBC-\\xBE\\xC0-\\xD6\\xD8-\\xF6\\xF8-\\u02C1\\u02C6-\\u02D1\\u02E0-\\u02E4\\u02EC\\u02EE\\u0370-\\u0374\\u0376\\u0377\\u037A-\\u037D\\u037F\\u0386\\u0388-\\u038A\\u038C\\u038E-\\u03A1\\u03A3-\\u03F5\\u03F7-\\u0481\\u048A-\\u052F\\u0531-\\u0556\\u0559\\u0560-\\u0588\\u05D0-\\u05EA\\u05EF-\\u05F2\\u0620-\\u064A\\u0660-\\u0669\\u066E\\u066F\\u0671-\\u06D3\\u06D5\\u06E5\\u06E6\\u06EE-\\u06FC\\u06FF\\u0710\\u0712-\\u072F\\u074D-\\u07A5\\u07B1\\u07C0-\\u07EA\\u07F4\\u07F5\\u07FA\\u0800-\\u0815\\u081A\\u0824\\u0828\\u0840-\\u0858\\u0860-\\u086A\\u0870-\\u0887\\u0889-\\u088E\\u08A0-\\u08C9\\u0900-\\u0950\\u0955-\\u0963\\u0966-\\u0980\\u0985-\\u098C\\u098F\\u0990\\u0993-\\u09A8\\u09AA-\\u09B0\\u09B2\\u09B6-\\u09B9\\u09BD\\u09CE\\u09DC\\u09DD\\u09DF-\\u09E1\\u09E6-\\u09F1\\u09F4-\\u09F9\\u09FC\\u0A05-\\u0A0A\\u0A0F\\u0A10\\u0A13-\\u0A28\\u0A2A-\\u0A30\\u0A32\\u0A33\\u0A35\\u0A36\\u0A38\\u0A39\\u0A59-\\u0A5C\\u0A5E\\u0A66-\\u0A6F\\u0A72-\\u0A74\\u0A85-\\u0A8D\\u0A8F-\\u0A91\\u0A93-\\u0AA8\\u0AAA-\\u0AB0\\u0AB2\\u0AB3\\u0AB5-\\u0AB9\\u0ABD\\u0AD0\\u0AE0\\u0AE1\\u0AE6-\\u0AEF\\u0AF9\\u0B05-\\u0B0C\\u0B0F\\u0B10\\u0B13-\\u0B28\\u0B2A-\\u0B30\\u0B32\\u0B33\\u0B35-\\u0B39\\u0B3D\\u0B5C\\u0B5D\\u0B5F-\\u0B61\\u0B66-\\u0B6F\\u0B71-\\u0B77\\u0B83\\u0B85-\\u0B8A\\u0B8E-\\u0B90\\u0B92-\\u0B95\\u0B99\\u0B9A\\u0B9C\\u0B9E\\u0B9F\\u0BA3\\u0BA4\\u0BA8-\\u0BAA\\u0BAE-\\u0BB9\\u0BD0\\u0BE6-\\u0BF2\\u0C05-\\u0C0C\\u0C0E-\\u0C10\\u0C12-\\u0C28\\u0C2A-\\u0C39\\u0C3D\\u0C58-\\u0C5A\\u0C5D\\u0C60\\u0C61\\u0C66-\\u0C6F\\u0C78-\\u0C7E\\u0C80\\u0C85-\\u0C8C\\u0C8E-\\u0C90\\u0C92-\\u0CA8\\u0CAA-\\u0CB3\\u0CB5-\\u0CB9\\u0CBD\\u0CDD\\u0CDE\\u0CE0\\u0CE1\\u0CE6-\\u0CEF\\u0CF1\\u0CF2\\u0D04-\\u0D0C\\u0D0E-\\u0D10\\u0D12-\\u0D3A\\u0D3D\\u0D4E\\u0D54-\\u0D56\\u0D58-\\u0D61\\u0D66-\\u0D78\\u0D7A-\\u0D7F\\u0D85-\\u0D96\\u0D9A-\\u0DB1\\u0DB3-\\u0DBB\\u0DBD\\u0DC0-\\u0DC6\\u0DE6-\\u0DEF\\u0E01-\\u0E3A\\u0E40-\\u0E5B\\u0E81\\u0E82\\u0E84\\u0E86-\\u0E8A\\u0E8C-\\u0EA3\\u0EA5\\u0EA7-\\u0EB0\\u0EB2\\u0EB3\\u0EBD\\u0EC0-\\u0EC4\\u0EC6\\u0ED0-\\u0ED9\\u0EDC-\\u0EDF\\u0F00\\u0F20-\\u0F33\\u0F40-\\u0F47\\u0F49-\\u0F6C\\u0F88-\\u0F8C\\u1000-\\u102A\\u103F-\\u1049\\u1050-\\u1055\\u105A-\\u105D\\u1061\\u1065\\u1066\\u106E-\\u1070\\u1075-\\u1081\\u108E\\u1090-\\u1099\\u10A0-\\u10C5\\u10C7\\u10CD\\u10D0-\\u10FA\\u10FC-\\u1248\\u124A-\\u124D\\u1250-\\u1256\\u1258\\u125A-\\u125D\\u1260-\\u1288\\u128A-\\u128D\\u1290-\\u12B0\\u12B2-\\u12B5\\u12B8-\\u12BE\\u12C0\\u12C2-\\u12C5\\u12C8-\\u12D6\\u12D8-\\u1310\\u1312-\\u1315\\u1318-\\u135A\\u1369-\\u137C\\u1380-\\u138F\\u13A0-\\u13F5\\u13F8-\\u13FD\\u1401-\\u166C\\u166F-\\u167F\\u1681-\\u169A\\u16A0-\\u16EA\\u16EE-\\u16F8\\u1700-\\u1711\\u171F-\\u1731\\u1740-\\u1751\\u1760-\\u176C\\u176E-\\u1770\\u1780-\\u17B3\\u17D7\\u17DC\\u17E0-\\u17E9\\u17F0-\\u17F9\\u1810-\\u1819\\u1820-\\u1878\\u1880-\\u1884\\u1887-\\u18A8\\u18AA\\u18B0-\\u18F5\\u1900-\\u191E\\u1946-\\u196D\\u1970-\\u1974\\u1980-\\u19AB\\u19B0-\\u19C9\\u19D0-\\u19DA\\u1A00-\\u1A16\\u1A20-\\u1A54\\u1A80-\\u1A89\\u1A90-\\u1A99\\u1AA7\\u1B05-\\u1B33\\u1B45-\\u1B4C\\u1B50-\\u1B59\\u1B83-\\u1BA0\\u1BAE-\\u1BE5\\u1C00-\\u1C23\\u1C40-\\u1C49\\u1C4D-\\u1C7D\\u1C80-\\u1C8A\\u1C90-\\u1CBA\\u1CBD-\\u1CBF\\u1CE9-\\u1CEC\\u1CEE-\\u1CF3\\u1CF5\\u1CF6\\u1CFA\\u1D00-\\u1DBF\\u1E00-\\u1F15\\u1F18-\\u1F1D\\u1F20-\\u1F45\\u1F48-\\u1F4D\\u1F50-\\u1F57\\u1F59\\u1F5B\\u1F5D\\u1F5F-\\u1F7D\\u1F80-\\u1FB4\\u1FB6-\\u1FBC\\u1FBE\\u1FC2-\\u1FC4\\u1FC6-\\u1FCC\\u1FD0-\\u1FD3\\u1FD6-\\u1FDB\\u1FE0-\\u1FEC\\u1FF2-\\u1FF4\\u1FF6-\\u1FFC\\u2070\\u2071\\u2074-\\u2079\\u207F-\\u2089\\u2090-\\u209C\\u2102\\u2107\\u210A-\\u2113\\u2115\\u2119-\\u211D\\u2124\\u2126\\u2128\\u212A-\\u212D\\u212F-\\u2139\\u213C-\\u213F\\u2145-\\u2149\\u214E\\u2150-\\u2189\\u2460-\\u249B\\u24EA-\\u24FF\\u2776-\\u2793\\u2C00-\\u2CE4\\u2CEB-\\u2CEE\\u2CF2\\u2CF3\\u2CFD\\u2D00-\\u2D25\\u2D27\\u2D2D\\u2D30-\\u2D67\\u2D6F\\u2D80-\\u2D96\\u2DA0-\\u2DA6\\u2DA8-\\u2DAE\\u2DB0-\\u2DB6\\u2DB8-\\u2DBE\\u2DC0-\\u2DC6\\u2DC8-\\u2DCE\\u2DD0-\\u2DD6\\u2DD8-\\u2DDE\\u2E2F\\u3005-\\u3007\\u3021-\\u3029\\u3031-\\u3035\\u3038-\\u303C\\u3041-\\u3096\\u309D-\\u309F\\u30A1-\\u30FA\\u30FC-\\u30FF\\u3105-\\u312F\\u3131-\\u318E\\u3192-\\u3195\\u31A0-\\u31BF\\u31F0-\\u31FF\\u3220-\\u3229\\u3248-\\u324F\\u3251-\\u325F\\u3280-\\u3289\\u32B1-\\u32BF\\u3400-\\u4DBF\\u4E00-\\uA48C\\uA4D0-\\uA4FD\\uA500-\\uA60C\\uA610-\\uA62B\\uA640-\\uA66E\\uA67F-\\uA69D\\uA6A0-\\uA6EF\\uA717-\\uA71F\\uA722-\\uA788\\uA78B-\\uA7CD\\uA7D0\\uA7D1\\uA7D3\\uA7D5-\\uA7DC\\uA7F2-\\uA801\\uA803-\\uA805\\uA807-\\uA80A\\uA80C-\\uA822\\uA830-\\uA835\\uA840-\\uA873\\uA882-\\uA8B3\\uA8D0-\\uA8D9\\uA8E0-\\uA925\\uA930-\\uA946\\uA960-\\uA97C\\uA984-\\uA9B2\\uA9CF-\\uA9D9\\uA9E0-\\uA9E4\\uA9E6-\\uA9FE\\uAA00-\\uAA28\\uAA40-\\uAA42\\uAA44-\\uAA4B\\uAA50-\\uAA59\\uAA60-\\uAA76\\uAA7A\\uAA7E-\\uAAAF\\uAAB1\\uAAB5\\uAAB6\\uAAB9-\\uAABD\\uAAC0\\uAAC2\\uAADB-\\uAADD\\uAAE0-\\uAAEA\\uAAF2-\\uAAF4\\uAB01-\\uAB06\\uAB09-\\uAB0E\\uAB11-\\uAB16\\uAB20-\\uAB26\\uAB28-\\uAB2E\\uAB30-\\uAB5A\\uAB5C-\\uAB69\\uAB70-\\uABE2\\uABF0-\\uABF9\\uAC00-\\uD7A3\\uD7B0-\\uD7C6\\uD7CB-\\uD7FB\\uF900-\\uFA6D\\uFA70-\\uFAD9\\uFB00-\\uFB06\\uFB13-\\uFB17\\uFB1D\\uFB1F-\\uFB28\\uFB2A-\\uFB36\\uFB38-\\uFB3C\\uFB3E\\uFB40\\uFB41\\uFB43\\uFB44\\uFB46-\\uFBB1\\uFBD3-\\uFD3D\\uFD50-\\uFD8F\\uFD92-\\uFDC7\\uFDF0-\\uFDFB\\uFE70-\\uFE74\\uFE76-\\uFEFC\\uFF10-\\uFF19\\uFF21-\\uFF3A\\uFF41-\\uFF5A\\uFF66-\\uFFBE\\uFFC2-\\uFFC7\\uFFCA-\\uFFCF\\uFFD2-\\uFFD7\\uFFDA-\\uFFDC]|\\uD800[\\uDC00-\\uDC0B\\uDC0D-\\uDC26\\uDC28-\\uDC3A\\uDC3C\\uDC3D\\uDC3F-\\uDC4D\\uDC50-\\uDC5D\\uDC80-\\uDCFA\\uDD07-\\uDD33\\uDD40-\\uDD78\\uDD8A\\uDD8B\\uDE80-\\uDE9C\\uDEA0-\\uDED0\\uDEE1-\\uDEFB\\uDF00-\\uDF23\\uDF2D-\\uDF4A\\uDF50-\\uDF75\\uDF80-\\uDF9D\\uDFA0-\\uDFC3\\uDFC8-\\uDFCF\\uDFD1-\\uDFD5]|\\uD801[\\uDC00-\\uDC9D\\uDCA0-\\uDCA9\\uDCB0-\\uDCD3\\uDCD8-\\uDCFB\\uDD00-\\uDD27\\uDD30-\\uDD63\\uDD70-\\uDD7A\\uDD7C-\\uDD8A\\uDD8C-\\uDD92\\uDD94\\uDD95\\uDD97-\\uDDA1\\uDDA3-\\uDDB1\\uDDB3-\\uDDB9\\uDDBB\\uDDBC\\uDDC0-\\uDDF3\\uDE00-\\uDF36\\uDF40-\\uDF55\\uDF60-\\uDF67\\uDF80-\\uDF85\\uDF87-\\uDFB0\\uDFB2-\\uDFBA]|\\uD802[\\uDC00-\\uDC05\\uDC08\\uDC0A-\\uDC35\\uDC37\\uDC38\\uDC3C\\uDC3F-\\uDC55\\uDC58-\\uDC76\\uDC79-\\uDC9E\\uDCA7-\\uDCAF\\uDCE0-\\uDCF2\\uDCF4\\uDCF5\\uDCFB-\\uDD1B\\uDD20-\\uDD39\\uDD80-\\uDDB7\\uDDBC-\\uDDCF\\uDDD2-\\uDE00\\uDE10-\\uDE13\\uDE15-\\uDE17\\uDE19-\\uDE35\\uDE40-\\uDE48\\uDE60-\\uDE7E\\uDE80-\\uDE9F\\uDEC0-\\uDEC7\\uDEC9-\\uDEE4\\uDEEB-\\uDEEF\\uDF00-\\uDF35\\uDF40-\\uDF55\\uDF58-\\uDF72\\uDF78-\\uDF91\\uDFA9-\\uDFAF]|\\uD803[\\uDC00-\\uDC48\\uDC80-\\uDCB2\\uDCC0-\\uDCF2\\uDCFA-\\uDD23\\uDD30-\\uDD39\\uDD40-\\uDD65\\uDD6F-\\uDD85\\uDE60-\\uDE7E\\uDE80-\\uDEA9\\uDEB0\\uDEB1\\uDEC2-\\uDEC4\\uDF00-\\uDF27\\uDF30-\\uDF45\\uDF51-\\uDF54\\uDF70-\\uDF81\\uDFB0-\\uDFCB\\uDFE0-\\uDFF6]|\\uD804[\\uDC03-\\uDC37\\uDC52-\\uDC6F\\uDC71\\uDC72\\uDC75\\uDC83-\\uDCAF\\uDCD0-\\uDCE8\\uDCF0-\\uDCF9\\uDD03-\\uDD26\\uDD36-\\uDD3F\\uDD44\\uDD47\\uDD50-\\uDD72\\uDD76\\uDD83-\\uDDB2\\uDDC1-\\uDDC4\\uDDD0-\\uDDDA\\uDDDC\\uDDE1-\\uDDF4\\uDE00-\\uDE11\\uDE13-\\uDE2B\\uDE3F\\uDE40\\uDE80-\\uDE86\\uDE88\\uDE8A-\\uDE8D\\uDE8F-\\uDE9D\\uDE9F-\\uDEA8\\uDEB0-\\uDEDE\\uDEF0-\\uDEF9\\uDF05-\\uDF0C\\uDF0F\\uDF10\\uDF13-\\uDF28\\uDF2A-\\uDF30\\uDF32\\uDF33\\uDF35-\\uDF39\\uDF3D\\uDF50\\uDF5D-\\uDF61\\uDF80-\\uDF89\\uDF8B\\uDF8E\\uDF90-\\uDFB5\\uDFB7\\uDFD1\\uDFD3]|\\uD805[\\uDC00-\\uDC34\\uDC47-\\uDC4A\\uDC50-\\uDC59\\uDC5F-\\uDC61\\uDC80-\\uDCAF\\uDCC4\\uDCC5\\uDCC7\\uDCD0-\\uDCD9\\uDD80-\\uDDAE\\uDDD8-\\uDDDB\\uDE00-\\uDE2F\\uDE44\\uDE50-\\uDE59\\uDE80-\\uDEAA\\uDEB8\\uDEC0-\\uDEC9\\uDED0-\\uDEE3\\uDF00-\\uDF1A\\uDF30-\\uDF3B\\uDF40-\\uDF46]|\\uD806[\\uDC00-\\uDC2B\\uDCA0-\\uDCF2\\uDCFF-\\uDD06\\uDD09\\uDD0C-\\uDD13\\uDD15\\uDD16\\uDD18-\\uDD2F\\uDD3F\\uDD41\\uDD50-\\uDD59\\uDDA0-\\uDDA7\\uDDAA-\\uDDD0\\uDDE1\\uDDE3\\uDE00\\uDE0B-\\uDE32\\uDE3A\\uDE50\\uDE5C-\\uDE89\\uDE9D\\uDEB0-\\uDEF8\\uDF00-\\uDF09\\uDFC0-\\uDFE0\\uDFF0-\\uDFF9]|\\uD807[\\uDC00-\\uDC08\\uDC0A-\\uDC2E\\uDC40\\uDC50-\\uDC6C\\uDC72-\\uDC8F\\uDD00-\\uDD06\\uDD08\\uDD09\\uDD0B-\\uDD30\\uDD46\\uDD50-\\uDD59\\uDD60-\\uDD65\\uDD67\\uDD68\\uDD6A-\\uDD89\\uDD98\\uDDA0-\\uDDA9\\uDEE0-\\uDEF2\\uDF02\\uDF04-\\uDF10\\uDF12-\\uDF33\\uDF50-\\uDF59\\uDFB0\\uDFC0-\\uDFD4]|\\uD808[\\uDC00-\\uDF99]|\\uD809[\\uDC00-\\uDC6E\\uDC80-\\uDD43]|\\uD80B[\\uDF90-\\uDFF0]|[\\uD80C\\uD80E\\uD80F\\uD81C-\\uD820\\uD822\\uD840-\\uD868\\uD86A-\\uD86C\\uD86F-\\uD872\\uD874-\\uD879\\uD880-\\uD883\\uD885-\\uD887][\\uDC00-\\uDFFF]|\\uD80D[\\uDC00-\\uDC2F\\uDC41-\\uDC46\\uDC60-\\uDFFF]|\\uD810[\\uDC00-\\uDFFA]|\\uD811[\\uDC00-\\uDE46]|\\uD818[\\uDD00-\\uDD1D\\uDD30-\\uDD39]|\\uD81A[\\uDC00-\\uDE38\\uDE40-\\uDE5E\\uDE60-\\uDE69\\uDE70-\\uDEBE\\uDEC0-\\uDEC9\\uDED0-\\uDEED\\uDF00-\\uDF2F\\uDF40-\\uDF43\\uDF50-\\uDF59\\uDF5B-\\uDF61\\uDF63-\\uDF77\\uDF7D-\\uDF8F]|\\uD81B[\\uDD40-\\uDD6C\\uDD70-\\uDD79\\uDE40-\\uDE96\\uDF00-\\uDF4A\\uDF50\\uDF93-\\uDF9F\\uDFE0\\uDFE1\\uDFE3]|\\uD821[\\uDC00-\\uDFF7]|\\uD823[\\uDC00-\\uDCD5\\uDCFF-\\uDD08]|\\uD82B[\\uDFF0-\\uDFF3\\uDFF5-\\uDFFB\\uDFFD\\uDFFE]|\\uD82C[\\uDC00-\\uDD22\\uDD32\\uDD50-\\uDD52\\uDD55\\uDD64-\\uDD67\\uDD70-\\uDEFB]|\\uD82F[\\uDC00-\\uDC6A\\uDC70-\\uDC7C\\uDC80-\\uDC88\\uDC90-\\uDC99]|\\uD833[\\uDCF0-\\uDCF9]|\\uD834[\\uDEC0-\\uDED3\\uDEE0-\\uDEF3\\uDF60-\\uDF78]|\\uD835[\\uDC00-\\uDC54\\uDC56-\\uDC9C\\uDC9E\\uDC9F\\uDCA2\\uDCA5\\uDCA6\\uDCA9-\\uDCAC\\uDCAE-\\uDCB9\\uDCBB\\uDCBD-\\uDCC3\\uDCC5-\\uDD05\\uDD07-\\uDD0A\\uDD0D-\\uDD14\\uDD16-\\uDD1C\\uDD1E-\\uDD39\\uDD3B-\\uDD3E\\uDD40-\\uDD44\\uDD46\\uDD4A-\\uDD50\\uDD52-\\uDEA5\\uDEA8-\\uDEC0\\uDEC2-\\uDEDA\\uDEDC-\\uDEFA\\uDEFC-\\uDF14\\uDF16-\\uDF34\\uDF36-\\uDF4E\\uDF50-\\uDF6E\\uDF70-\\uDF88\\uDF8A-\\uDFA8\\uDFAA-\\uDFC2\\uDFC4-\\uDFCB\\uDFCE-\\uDFFF]|\\uD837[\\uDF00-\\uDF1E\\uDF25-\\uDF2A]|\\uD838[\\uDC30-\\uDC6D\\uDD00-\\uDD2C\\uDD37-\\uDD3D\\uDD40-\\uDD49\\uDD4E\\uDE90-\\uDEAD\\uDEC0-\\uDEEB\\uDEF0-\\uDEF9]|\\uD839[\\uDCD0-\\uDCEB\\uDCF0-\\uDCF9\\uDDD0-\\uDDED\\uDDF0-\\uDDFA\\uDFE0-\\uDFE6\\uDFE8-\\uDFEB\\uDFED\\uDFEE\\uDFF0-\\uDFFE]|\\uD83A[\\uDC00-\\uDCC4\\uDCC7-\\uDCCF\\uDD00-\\uDD43\\uDD4B\\uDD50-\\uDD59]|\\uD83B[\\uDC71-\\uDCAB\\uDCAD-\\uDCAF\\uDCB1-\\uDCB4\\uDD01-\\uDD2D\\uDD2F-\\uDD3D\\uDE00-\\uDE03\\uDE05-\\uDE1F\\uDE21\\uDE22\\uDE24\\uDE27\\uDE29-\\uDE32\\uDE34-\\uDE37\\uDE39\\uDE3B\\uDE42\\uDE47\\uDE49\\uDE4B\\uDE4D-\\uDE4F\\uDE51\\uDE52\\uDE54\\uDE57\\uDE59\\uDE5B\\uDE5D\\uDE5F\\uDE61\\uDE62\\uDE64\\uDE67-\\uDE6A\\uDE6C-\\uDE72\\uDE74-\\uDE77\\uDE79-\\uDE7C\\uDE7E\\uDE80-\\uDE89\\uDE8B-\\uDE9B\\uDEA1-\\uDEA3\\uDEA5-\\uDEA9\\uDEAB-\\uDEBB]|\\uD83C[\\uDD00-\\uDD0C]|\\uD83E[\\uDFF0-\\uDFF9]|\\uD869[\\uDC00-\\uDEDF\\uDF00-\\uDFFF]|\\uD86D[\\uDC00-\\uDF39\\uDF40-\\uDFFF]|\\uD86E[\\uDC00-\\uDC1D\\uDC20-\\uDFFF]|\\uD873[\\uDC00-\\uDEA1\\uDEB0-\\uDFFF]|\\uD87A[\\uDC00-\\uDFE0\\uDFF0-\\uDFFF]|\\uD87B[\\uDC00-\\uDE5D]|\\uD87E[\\uDC00-\\uDE1D]|\\uD884[\\uDC00-\\uDF4A\\uDF50-\\uDFFF]|\\uD888[\\uDC00-\\uDFAF]){1,32})?(?: (?:[\\x2D0-9A-Z_a-z\\xAA\\xB2\\xB3\\xB5\\xB9\\xBA\\xBC-\\xBE\\xC0-\\xD6\\xD8-\\xF6\\xF8-\\u02C1\\u02C6-\\u02D1\\u02E0-\\u02E4\\u02EC\\u02EE\\u0370-\\u0374\\u0376\\u0377\\u037A-\\u037D\\u037F\\u0386\\u0388-\\u038A\\u038C\\u038E-\\u03A1\\u03A3-\\u03F5\\u03F7-\\u0481\\u048A-\\u052F\\u0531-\\u0556\\u0559\\u0560-\\u0588\\u05D0-\\u05EA\\u05EF-\\u05F2\\u0620-\\u064A\\u0660-\\u0669\\u066E\\u066F\\u0671-\\u06D3\\u06D5\\u06E5\\u06E6\\u06EE-\\u06FC\\u06FF\\u0710\\u0712-\\u072F\\u074D-\\u07A5\\u07B1\\u07C0-\\u07EA\\u07F4\\u07F5\\u07FA\\u0800-\\u0815\\u081A\\u0824\\u0828\\u0840-\\u0858\\u0860-\\u086A\\u0870-\\u0887\\u0889-\\u088E\\u08A0-\\u08C9\\u0900-\\u0950\\u0955-\\u0963\\u0966-\\u0980\\u0985-\\u098C\\u098F\\u0990\\u0993-\\u09A8\\u09AA-\\u09B0\\u09B2\\u09B6-\\u09B9\\u09BD\\u09CE\\u09DC\\u09DD\\u09DF-\\u09E1\\u09E6-\\u09F1\\u09F4-\\u09F9\\u09FC\\u0A05-\\u0A0A\\u0A0F\\u0A10\\u0A13-\\u0A28\\u0A2A-\\u0A30\\u0A32\\u0A33\\u0A35\\u0A36\\u0A38\\u0A39\\u0A59-\\u0A5C\\u0A5E\\u0A66-\\u0A6F\\u0A72-\\u0A74\\u0A85-\\u0A8D\\u0A8F-\\u0A91\\u0A93-\\u0AA8\\u0AAA-\\u0AB0\\u0AB2\\u0AB3\\u0AB5-\\u0AB9\\u0ABD\\u0AD0\\u0AE0\\u0AE1\\u0AE6-\\u0AEF\\u0AF9\\u0B05-\\u0B0C\\u0B0F\\u0B10\\u0B13-\\u0B28\\u0B2A-\\u0B30\\u0B32\\u0B33\\u0B35-\\u0B39\\u0B3D\\u0B5C\\u0B5D\\u0B5F-\\u0B61\\u0B66-\\u0B6F\\u0B71-\\u0B77\\u0B83\\u0B85-\\u0B8A\\u0B8E-\\u0B90\\u0B92-\\u0B95\\u0B99\\u0B9A\\u0B9C\\u0B9E\\u0B9F\\u0BA3\\u0BA4\\u0BA8-\\u0BAA\\u0BAE-\\u0BB9\\u0BD0\\u0BE6-\\u0BF2\\u0C05-\\u0C0C\\u0C0E-\\u0C10\\u0C12-\\u0C28\\u0C2A-\\u0C39\\u0C3D\\u0C58-\\u0C5A\\u0C5D\\u0C60\\u0C61\\u0C66-\\u0C6F\\u0C78-\\u0C7E\\u0C80\\u0C85-\\u0C8C\\u0C8E-\\u0C90\\u0C92-\\u0CA8\\u0CAA-\\u0CB3\\u0CB5-\\u0CB9\\u0CBD\\u0CDD\\u0CDE\\u0CE0\\u0CE1\\u0CE6-\\u0CEF\\u0CF1\\u0CF2\\u0D04-\\u0D0C\\u0D0E-\\u0D10\\u0D12-\\u0D3A\\u0D3D\\u0D4E\\u0D54-\\u0D56\\u0D58-\\u0D61\\u0D66-\\u0D78\\u0D7A-\\u0D7F\\u0D85-\\u0D96\\u0D9A-\\u0DB1\\u0DB3-\\u0DBB\\u0DBD\\u0DC0-\\u0DC6\\u0DE6-\\u0DEF\\u0E01-\\u0E3A\\u0E40-\\u0E5B\\u0E81\\u0E82\\u0E84\\u0E86-\\u0E8A\\u0E8C-\\u0EA3\\u0EA5\\u0EA7-\\u0EB0\\u0EB2\\u0EB3\\u0EBD\\u0EC0-\\u0EC4\\u0EC6\\u0ED0-\\u0ED9\\u0EDC-\\u0EDF\\u0F00\\u0F20-\\u0F33\\u0F40-\\u0F47\\u0F49-\\u0F6C\\u0F88-\\u0F8C\\u1000-\\u102A\\u103F-\\u1049\\u1050-\\u1055\\u105A-\\u105D\\u1061\\u1065\\u1066\\u106E-\\u1070\\u1075-\\u1081\\u108E\\u1090-\\u1099\\u10A0-\\u10C5\\u10C7\\u10CD\\u10D0-\\u10FA\\u10FC-\\u1248\\u124A-\\u124D\\u1250-\\u1256\\u1258\\u125A-\\u125D\\u1260-\\u1288\\u128A-\\u128D\\u1290-\\u12B0\\u12B2-\\u12B5\\u12B8-\\u12BE\\u12C0\\u12C2-\\u12C5\\u12C8-\\u12D6\\u12D8-\\u1310\\u1312-\\u1315\\u1318-\\u135A\\u1369-\\u137C\\u1380-\\u138F\\u13A0-\\u13F5\\u13F8-\\u13FD\\u1401-\\u166C\\u166F-\\u167F\\u1681-\\u169A\\u16A0-\\u16EA\\u16EE-\\u16F8\\u1700-\\u1711\\u171F-\\u1731\\u1740-\\u1751\\u1760-\\u176C\\u176E-\\u1770\\u1780-\\u17B3\\u17D7\\u17DC\\u17E0-\\u17E9\\u17F0-\\u17F9\\u1810-\\u1819\\u1820-\\u1878\\u1880-\\u1884\\u1887-\\u18A8\\u18AA\\u18B0-\\u18F5\\u1900-\\u191E\\u1946-\\u196D\\u1970-\\u1974\\u1980-\\u19AB\\u19B0-\\u19C9\\u19D0-\\u19DA\\u1A00-\\u1A16\\u1A20-\\u1A54\\u1A80-\\u1A89\\u1A90-\\u1A99\\u1AA7\\u1B05-\\u1B33\\u1B45-\\u1B4C\\u1B50-\\u1B59\\u1B83-\\u1BA0\\u1BAE-\\u1BE5\\u1C00-\\u1C23\\u1C40-\\u1C49\\u1C4D-\\u1C7D\\u1C80-\\u1C8A\\u1C90-\\u1CBA\\u1CBD-\\u1CBF\\u1CE9-\\u1CEC\\u1CEE-\\u1CF3\\u1CF5\\u1CF6\\u1CFA\\u1D00-\\u1DBF\\u1E00-\\u1F15\\u1F18-\\u1F1D\\u1F20-\\u1F45\\u1F48-\\u1F4D\\u1F50-\\u1F57\\u1F59\\u1F5B\\u1F5D\\u1F5F-\\u1F7D\\u1F80-\\u1FB4\\u1FB6-\\u1FBC\\u1FBE\\u1FC2-\\u1FC4\\u1FC6-\\u1FCC\\u1FD0-\\u1FD3\\u1FD6-\\u1FDB\\u1FE0-\\u1FEC\\u1FF2-\\u1FF4\\u1FF6-\\u1FFC\\u2070\\u2071\\u2074-\\u2079\\u207F-\\u2089\\u2090-\\u209C\\u2102\\u2107\\u210A-\\u2113\\u2115\\u2119-\\u211D\\u2124\\u2126\\u2128\\u212A-\\u212D\\u212F-\\u2139\\u213C-\\u213F\\u2145-\\u2149\\u214E\\u2150-\\u2189\\u2460-\\u249B\\u24EA-\\u24FF\\u2776-\\u2793\\u2C00-\\u2CE4\\u2CEB-\\u2CEE\\u2CF2\\u2CF3\\u2CFD\\u2D00-\\u2D25\\u2D27\\u2D2D\\u2D30-\\u2D67\\u2D6F\\u2D80-\\u2D96\\u2DA0-\\u2DA6\\u2DA8-\\u2DAE\\u2DB0-\\u2DB6\\u2DB8-\\u2DBE\\u2DC0-\\u2DC6\\u2DC8-\\u2DCE\\u2DD0-\\u2DD6\\u2DD8-\\u2DDE\\u2E2F\\u3005-\\u3007\\u3021-\\u3029\\u3031-\\u3035\\u3038-\\u303C\\u3041-\\u3096\\u309D-\\u309F\\u30A1-\\u30FA\\u30FC-\\u30FF\\u3105-\\u312F\\u3131-\\u318E\\u3192-\\u3195\\u31A0-\\u31BF\\u31F0-\\u31FF\\u3220-\\u3229\\u3248-\\u324F\\u3251-\\u325F\\u3280-\\u3289\\u32B1-\\u32BF\\u3400-\\u4DBF\\u4E00-\\uA48C\\uA4D0-\\uA4FD\\uA500-\\uA60C\\uA610-\\uA62B\\uA640-\\uA66E\\uA67F-\\uA69D\\uA6A0-\\uA6EF\\uA717-\\uA71F\\uA722-\\uA788\\uA78B-\\uA7CD\\uA7D0\\uA7D1\\uA7D3\\uA7D5-\\uA7DC\\uA7F2-\\uA801\\uA803-\\uA805\\uA807-\\uA80A\\uA80C-\\uA822\\uA830-\\uA835\\uA840-\\uA873\\uA882-\\uA8B3\\uA8D0-\\uA8D9\\uA8E0-\\uA925\\uA930-\\uA946\\uA960-\\uA97C\\uA984-\\uA9B2\\uA9CF-\\uA9D9\\uA9E0-\\uA9E4\\uA9E6-\\uA9FE\\uAA00-\\uAA28\\uAA40-\\uAA42\\uAA44-\\uAA4B\\uAA50-\\uAA59\\uAA60-\\uAA76\\uAA7A\\uAA7E-\\uAAAF\\uAAB1\\uAAB5\\uAAB6\\uAAB9-\\uAABD\\uAAC0\\uAAC2\\uAADB-\\uAADD\\uAAE0-\\uAAEA\\uAAF2-\\uAAF4\\uAB01-\\uAB06\\uAB09-\\uAB0E\\uAB11-\\uAB16\\uAB20-\\uAB26\\uAB28-\\uAB2E\\uAB30-\\uAB5A\\uAB5C-\\uAB69\\uAB70-\\uABE2\\uABF0-\\uABF9\\uAC00-\\uD7A3\\uD7B0-\\uD7C6\\uD7CB-\\uD7FB\\uF900-\\uFA6D\\uFA70-\\uFAD9\\uFB00-\\uFB06\\uFB13-\\uFB17\\uFB1D\\uFB1F-\\uFB28\\uFB2A-\\uFB36\\uFB38-\\uFB3C\\uFB3E\\uFB40\\uFB41\\uFB43\\uFB44\\uFB46-\\uFBB1\\uFBD3-\\uFD3D\\uFD50-\\uFD8F\\uFD92-\\uFDC7\\uFDF0-\\uFDFB\\uFE70-\\uFE74\\uFE76-\\uFEFC\\uFF10-\\uFF19\\uFF21-\\uFF3A\\uFF41-\\uFF5A\\uFF66-\\uFFBE\\uFFC2-\\uFFC7\\uFFCA-\\uFFCF\\uFFD2-\\uFFD7\\uFFDA-\\uFFDC]|\\uD800[\\uDC00-\\uDC0B\\uDC0D-\\uDC26\\uDC28-\\uDC3A\\uDC3C\\uDC3D\\uDC3F-\\uDC4D\\uDC50-\\uDC5D\\uDC80-\\uDCFA\\uDD07-\\uDD33\\uDD40-\\uDD78\\uDD8A\\uDD8B\\uDE80-\\uDE9C\\uDEA0-\\uDED0\\uDEE1-\\uDEFB\\uDF00-\\uDF23\\uDF2D-\\uDF4A\\uDF50-\\uDF75\\uDF80-\\uDF9D\\uDFA0-\\uDFC3\\uDFC8-\\uDFCF\\uDFD1-\\uDFD5]|\\uD801[\\uDC00-\\uDC9D\\uDCA0-\\uDCA9\\uDCB0-\\uDCD3\\uDCD8-\\uDCFB\\uDD00-\\uDD27\\uDD30-\\uDD63\\uDD70-\\uDD7A\\uDD7C-\\uDD8A\\uDD8C-\\uDD92\\uDD94\\uDD95\\uDD97-\\uDDA1\\uDDA3-\\uDDB1\\uDDB3-\\uDDB9\\uDDBB\\uDDBC\\uDDC0-\\uDDF3\\uDE00-\\uDF36\\uDF40-\\uDF55\\uDF60-\\uDF67\\uDF80-\\uDF85\\uDF87-\\uDFB0\\uDFB2-\\uDFBA]|\\uD802[\\uDC00-\\uDC05\\uDC08\\uDC0A-\\uDC35\\uDC37\\uDC38\\uDC3C\\uDC3F-\\uDC55\\uDC58-\\uDC76\\uDC79-\\uDC9E\\uDCA7-\\uDCAF\\uDCE0-\\uDCF2\\uDCF4\\uDCF5\\uDCFB-\\uDD1B\\uDD20-\\uDD39\\uDD80-\\uDDB7\\uDDBC-\\uDDCF\\uDDD2-\\uDE00\\uDE10-\\uDE13\\uDE15-\\uDE17\\uDE19-\\uDE35\\uDE40-\\uDE48\\uDE60-\\uDE7E\\uDE80-\\uDE9F\\uDEC0-\\uDEC7\\uDEC9-\\uDEE4\\uDEEB-\\uDEEF\\uDF00-\\uDF35\\uDF40-\\uDF55\\uDF58-\\uDF72\\uDF78-\\uDF91\\uDFA9-\\uDFAF]|\\uD803[\\uDC00-\\uDC48\\uDC80-\\uDCB2\\uDCC0-\\uDCF2\\uDCFA-\\uDD23\\uDD30-\\uDD39\\uDD40-\\uDD65\\uDD6F-\\uDD85\\uDE60-\\uDE7E\\uDE80-\\uDEA9\\uDEB0\\uDEB1\\uDEC2-\\uDEC4\\uDF00-\\uDF27\\uDF30-\\uDF45\\uDF51-\\uDF54\\uDF70-\\uDF81\\uDFB0-\\uDFCB\\uDFE0-\\uDFF6]|\\uD804[\\uDC03-\\uDC37\\uDC52-\\uDC6F\\uDC71\\uDC72\\uDC75\\uDC83-\\uDCAF\\uDCD0-\\uDCE8\\uDCF0-\\uDCF9\\uDD03-\\uDD26\\uDD36-\\uDD3F\\uDD44\\uDD47\\uDD50-\\uDD72\\uDD76\\uDD83-\\uDDB2\\uDDC1-\\uDDC4\\uDDD0-\\uDDDA\\uDDDC\\uDDE1-\\uDDF4\\uDE00-\\uDE11\\uDE13-\\uDE2B\\uDE3F\\uDE40\\uDE80-\\uDE86\\uDE88\\uDE8A-\\uDE8D\\uDE8F-\\uDE9D\\uDE9F-\\uDEA8\\uDEB0-\\uDEDE\\uDEF0-\\uDEF9\\uDF05-\\uDF0C\\uDF0F\\uDF10\\uDF13-\\uDF28\\uDF2A-\\uDF30\\uDF32\\uDF33\\uDF35-\\uDF39\\uDF3D\\uDF50\\uDF5D-\\uDF61\\uDF80-\\uDF89\\uDF8B\\uDF8E\\uDF90-\\uDFB5\\uDFB7\\uDFD1\\uDFD3]|\\uD805[\\uDC00-\\uDC34\\uDC47-\\uDC4A\\uDC50-\\uDC59\\uDC5F-\\uDC61\\uDC80-\\uDCAF\\uDCC4\\uDCC5\\uDCC7\\uDCD0-\\uDCD9\\uDD80-\\uDDAE\\uDDD8-\\uDDDB\\uDE00-\\uDE2F\\uDE44\\uDE50-\\uDE59\\uDE80-\\uDEAA\\uDEB8\\uDEC0-\\uDEC9\\uDED0-\\uDEE3\\uDF00-\\uDF1A\\uDF30-\\uDF3B\\uDF40-\\uDF46]|\\uD806[\\uDC00-\\uDC2B\\uDCA0-\\uDCF2\\uDCFF-\\uDD06\\uDD09\\uDD0C-\\uDD13\\uDD15\\uDD16\\uDD18-\\uDD2F\\uDD3F\\uDD41\\uDD50-\\uDD59\\uDDA0-\\uDDA7\\uDDAA-\\uDDD0\\uDDE1\\uDDE3\\uDE00\\uDE0B-\\uDE32\\uDE3A\\uDE50\\uDE5C-\\uDE89\\uDE9D\\uDEB0-\\uDEF8\\uDF00-\\uDF09\\uDFC0-\\uDFE0\\uDFF0-\\uDFF9]|\\uD807[\\uDC00-\\uDC08\\uDC0A-\\uDC2E\\uDC40\\uDC50-\\uDC6C\\uDC72-\\uDC8F\\uDD00-\\uDD06\\uDD08\\uDD09\\uDD0B-\\uDD30\\uDD46\\uDD50-\\uDD59\\uDD60-\\uDD65\\uDD67\\uDD68\\uDD6A-\\uDD89\\uDD98\\uDDA0-\\uDDA9\\uDEE0-\\uDEF2\\uDF02\\uDF04-\\uDF10\\uDF12-\\uDF33\\uDF50-\\uDF59\\uDFB0\\uDFC0-\\uDFD4]|\\uD808[\\uDC00-\\uDF99]|\\uD809[\\uDC00-\\uDC6E\\uDC80-\\uDD43]|\\uD80B[\\uDF90-\\uDFF0]|[\\uD80C\\uD80E\\uD80F\\uD81C-\\uD820\\uD822\\uD840-\\uD868\\uD86A-\\uD86C\\uD86F-\\uD872\\uD874-\\uD879\\uD880-\\uD883\\uD885-\\uD887][\\uDC00-\\uDFFF]|\\uD80D[\\uDC00-\\uDC2F\\uDC41-\\uDC46\\uDC60-\\uDFFF]|\\uD810[\\uDC00-\\uDFFA]|\\uD811[\\uDC00-\\uDE46]|\\uD818[\\uDD00-\\uDD1D\\uDD30-\\uDD39]|\\uD81A[\\uDC00-\\uDE38\\uDE40-\\uDE5E\\uDE60-\\uDE69\\uDE70-\\uDEBE\\uDEC0-\\uDEC9\\uDED0-\\uDEED\\uDF00-\\uDF2F\\uDF40-\\uDF43\\uDF50-\\uDF59\\uDF5B-\\uDF61\\uDF63-\\uDF77\\uDF7D-\\uDF8F]|\\uD81B[\\uDD40-\\uDD6C\\uDD70-\\uDD79\\uDE40-\\uDE96\\uDF00-\\uDF4A\\uDF50\\uDF93-\\uDF9F\\uDFE0\\uDFE1\\uDFE3]|\\uD821[\\uDC00-\\uDFF7]|\\uD823[\\uDC00-\\uDCD5\\uDCFF-\\uDD08]|\\uD82B[\\uDFF0-\\uDFF3\\uDFF5-\\uDFFB\\uDFFD\\uDFFE]|\\uD82C[\\uDC00-\\uDD22\\uDD32\\uDD50-\\uDD52\\uDD55\\uDD64-\\uDD67\\uDD70-\\uDEFB]|\\uD82F[\\uDC00-\\uDC6A\\uDC70-\\uDC7C\\uDC80-\\uDC88\\uDC90-\\uDC99]|\\uD833[\\uDCF0-\\uDCF9]|\\uD834[\\uDEC0-\\uDED3\\uDEE0-\\uDEF3\\uDF60-\\uDF78]|\\uD835[\\uDC00-\\uDC54\\uDC56-\\uDC9C\\uDC9E\\uDC9F\\uDCA2\\uDCA5\\uDCA6\\uDCA9-\\uDCAC\\uDCAE-\\uDCB9\\uDCBB\\uDCBD-\\uDCC3\\uDCC5-\\uDD05\\uDD07-\\uDD0A\\uDD0D-\\uDD14\\uDD16-\\uDD1C\\uDD1E-\\uDD39\\uDD3B-\\uDD3E\\uDD40-\\uDD44\\uDD46\\uDD4A-\\uDD50\\uDD52-\\uDEA5\\uDEA8-\\uDEC0\\uDEC2-\\uDEDA\\uDEDC-\\uDEFA\\uDEFC-\\uDF14\\uDF16-\\uDF34\\uDF36-\\uDF4E\\uDF50-\\uDF6E\\uDF70-\\uDF88\\uDF8A-\\uDFA8\\uDFAA-\\uDFC2\\uDFC4-\\uDFCB\\uDFCE-\\uDFFF]|\\uD837[\\uDF00-\\uDF1E\\uDF25-\\uDF2A]|\\uD838[\\uDC30-\\uDC6D\\uDD00-\\uDD2C\\uDD37-\\uDD3D\\uDD40-\\uDD49\\uDD4E\\uDE90-\\uDEAD\\uDEC0-\\uDEEB\\uDEF0-\\uDEF9]|\\uD839[\\uDCD0-\\uDCEB\\uDCF0-\\uDCF9\\uDDD0-\\uDDED\\uDDF0-\\uDDFA\\uDFE0-\\uDFE6\\uDFE8-\\uDFEB\\uDFED\\uDFEE\\uDFF0-\\uDFFE]|\\uD83A[\\uDC00-\\uDCC4\\uDCC7-\\uDCCF\\uDD00-\\uDD43\\uDD4B\\uDD50-\\uDD59]|\\uD83B[\\uDC71-\\uDCAB\\uDCAD-\\uDCAF\\uDCB1-\\uDCB4\\uDD01-\\uDD2D\\uDD2F-\\uDD3D\\uDE00-\\uDE03\\uDE05-\\uDE1F\\uDE21\\uDE22\\uDE24\\uDE27\\uDE29-\\uDE32\\uDE34-\\uDE37\\uDE39\\uDE3B\\uDE42\\uDE47\\uDE49\\uDE4B\\uDE4D-\\uDE4F\\uDE51\\uDE52\\uDE54\\uDE57\\uDE59\\uDE5B\\uDE5D\\uDE5F\\uDE61\\uDE62\\uDE64\\uDE67-\\uDE6A\\uDE6C-\\uDE72\\uDE74-\\uDE77\\uDE79-\\uDE7C\\uDE7E\\uDE80-\\uDE89\\uDE8B-\\uDE9B\\uDEA1-\\uDEA3\\uDEA5-\\uDEA9\\uDEAB-\\uDEBB]|\\uD83C[\\uDD00-\\uDD0C]|\\uD83E[\\uDFF0-\\uDFF9]|\\uD869[\\uDC00-\\uDEDF\\uDF00-\\uDFFF]|\\uD86D[\\uDC00-\\uDF39\\uDF40-\\uDFFF]|\\uD86E[\\uDC00-\\uDC1D\\uDC20-\\uDFFF]|\\uD873[\\uDC00-\\uDEA1\\uDEB0-\\uDFFF]|\\uD87A[\\uDC00-\\uDFE0\\uDFF0-\\uDFFF]|\\uD87B[\\uDC00-\\uDE5D]|\\uD87E[\\uDC00-\\uDE1D]|\\uD884[\\uDC00-\\uDF4A\\uDF50-\\uDFFF]|\\uD888[\\uDC00-\\uDFAF]){1,32})?):([0-9]+)>',
'').exec(a0);
};
object14.parse = parse_52431;
object.commandMention = object14;
const object15 = {};
object15.order = (importDefault(3855) /* metro dependency 3855 */).defaultRules.text.order;
object15.requiredFirstCharacters = ['<'];
object15.match = function(a0, a1) {
return a1.allowTimeMentionInput ? RegExp('^<@time:([^>]*)>', '').exec(a0) : null;
};
object15.parse = function(a0) {
return {type: 'timestampMentionInput', content: a0[1]};
};
object.timestampMentionInput = object15;
const object16 = {};
object16.order = (importDefault(3855) /* metro dependency 3855 */).defaultRules.text.order;
object16.requiredFirstCharacters = ['<'];
object16.match = match_52435;
object16.parse = parse_52436;
object.gameMention = object16;
const object17 = {};
object17.order = (importDefault(6629) /* metro dependency 6629: MarkupTextRule */).order;
object17.requiredFirstCharacters = [':'];
object17.match = match_52437;
object17.parse = parse_52438;
object.emoji = object17;
const object18 = {};
object18.order = (importDefault(6629) /* metro dependency 6629: MarkupTextRule */).order;
object18.requiredFirstCharacters = ['<'];
object18.match = function(a0) {
return require(dependencyMap[22]).soundmojiRawFormatRegex.exec(a0);
};
object18.parse = parse_52440;
object.soundboard = object18;
const object19 = {};
object19.order = (importDefault(6629) /* metro dependency 6629: MarkupTextRule */).order;
object19.requiredFirstCharacters = ['<'];
object19.match = function(a0) {
return RegExp('^<a?:(\\w+):(\\d+)>', '').exec(a0);
};
object19.parse = function(a0) {
return {type: 'text', content: ':' + a0[1] + ':'};
};
object.customEmoji = object19;
const object20 = {};
object20.order = (importDefault(6629) /* metro dependency 6629: MarkupTextRule */).order - 1;
object20.requiredFirstCharacters = ['<'];
object20.match = function(a0) {
var TIMESTAMP_REGEX = require(dependencyMap[23]).TIMESTAMP_REGEX;
return TIMESTAMP_REGEX.exec(a0);
};
object20.parse = parse_52444;
object.timestamp = object20;
const object21 = {};
object21.order = (importDefault(3855) /* metro dependency 3855 */).defaultRules.u.order;
object21.requiredFirstCharacters = ['~'];
object21.match = (importDefault(3855) /* metro dependency 3855 */).inlineRegex(RegExp('^~~([\\s\\S]+?)~~(?!_)', ''));
object21.parse = (importDefault(3855) /* metro dependency 3855 */).defaultRules.u.parse;
object.s = object21;
const object22 = {};
object22.order = (importDefault(6629) /* metro dependency 6629: MarkupTextRule */).order;
object22.requiredFirstCharacters = ['|'];
object22.match = function(a0) {
return MARKDOWN_SPOILER_REGEXP.exec(a0);
};
object22.parse = function(a0, a1, a2) {
return {content: a1(a0[1], a2), channelId: a2.channelId};
};
object.spoiler = object22;
const object23 = {};
object23.order = (importDefault(6629) /* metro dependency 6629: MarkupTextRule */).order;
object23.requiredFirstCharacters = ['<'];
object23.match = function(a0) {
return MARKDOWN_STATIC_ROUTE_NAME_REGEXP.exec(a0);
};
object23.parse = parse_52448;
object.staticRouteLink = object23;
object.heading = importDefault(6643) /* metro dependency 6643: MarkupHeadingRule */;
object.list = importDefault(6644) /* metro dependency 6644: MarkupListRule */;
object.subtext = importDefault(6645) /* metro dependency 6645: MarkupSubtextRule */;
value = importDefault(6623) /* metro dependency 6623: combineMarkupRules */;
value = value([object, importDefault(6646) /* metro dependency 6646: PlatformMarkupRulesNative */]);
let value2 = Module00022;
const value3 = value2.omit(value, ['inlineCode', 'codeBlock', 'br', 'blockQuote', 'subtext', 'soundboard']);
const value5 = value2.omit(value, ['inlineCode', 'codeBlock', 'br', 'blockQuote', 'autolink', 'url',
'attachmentLink', 'mention', 'roleMention', 'channelMention', 'channelOrMessageUrl', 'mediaPostLink', 'subtext',
'soundboard', 'gameMention']);
const value7 = value2.omit(value, ['codeBlock', 'br', 'mention', 'channel', 'roleMention', 'attachmentLink',
'subtext', 'soundboard', 'gameMention']);
const value8 = value2;
const value11 = value8.omit((importDefault(6623) /* metro dependency 6623: combineMarkupRules */)([value,
{inlineCode: {match: match_52450}}]), ['blockQuote', 'codeBlock', 'br']);
const value13 = value2.omit(value, ['codeBlock', 'br', 'blockQuote']);
const value15 = value2.omit(value, ['codeBlock', 'br', 'attachmentLink', 'mention', 'roleMention', 'channel',
'paragraph', 'newline', 'subtext', 'soundboard']);
const value17 = value2.omit(value, ['codeBlock', 'blockQuote', 'br']);
const value19 = value2.omit(value, ['codeBlock', 'br', 'inlineCode']);
const combineMarkupRules = importDefault(6623) /* metro dependency 6623: combineMarkupRules */;
const items2 = [{highlightWord: {order: -1, match: match_52451, parse: parse_52452}}];
const value21 = value2;
items2[1] = value21.omit(value, ['url']);
object = {RULES: value, CHANNEL_TOPIC_RULES: value3, VOICE_CHANNEL_STATUS_RULES: value5, EMBED_TITLE_RULES: value7,
INLINE_REPLY_RULES: value11, GUILD_VERIFICATION_FORM_RULES: value13, GUILD_EVENT_RULES: value17,
PROFILE_BIO_RULES: value15, AUTO_MODERATION_SYSTEM_MESSAGE_RULES: combineMarkupRules(items2),
NATIVE_SEARCH_RESULT_LINK_RULES: value19};
(FileImportTrackerModule).fileFinishedImporting('modules/markup/MarkupRules.tsx');
exports.default = object;
function parseLink(a0) { // fn#52409, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6802:488, offset: 0x0132a8ad, size: 134 bytes, params: 2, frame: 15
let value = MarkupLinkRuleModule;
value = value.punycodeLink(a0[1]);
return value == null ? {type: 'text', content: a0[1]} : {type: 'link', content: [{type: 'text',
content: value.displayTarget}], target: value.target, title: undefined};
}
function getGuildIdFromChannelId(a0) { // fn#52411, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6802:705, offset: 0x0132a977, size: 43 bytes, params: 2, frame: 11
var r0;
let value = ChannelStore.getChannel(a0);
if (value == null) {
r0 = undefined;
} else {
value = value.getGuildId();
r0 = value;
}
return r0;
}
function getGuild_52412(a0) { // fn#52412, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6802:778, offset: 0x0132a9a2, size: 89 bytes, params: 2, frame: 15
const guildId = a0.guildId;
const value = null;
return value != guildId ? GuildStore.getGuild(a0.guildId) : value != a0.channelId ? GuildStore.getGuild(getGuildIdFromChannelId(a0.channelId)) : value;
}
function match_52413(a0, a1, a2) { // fn#52413, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6802:1023, offset: 0x0132a9fb, size: 75 bytes, params: 4, frame: 16
return a1.allowEscape === false ? null : (importDefault(3855) /* metro dependency 3855 */).defaultRules.escape.match(a0,
a1, a2);
}
function match_52414(a0, {prevCapture, inQuote, nested}) { // fn#52414, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6802:1183, offset: 0x0132aa46, size: 105 bytes, params: 3, frame: 14
if (inQuote) {
return null;
}
if (nested) {
return null;
}
let value = null;
if (value == prevCapture) {
value = environment;
return env0_15.exec(a0);
}
const property = prevCapture[0];
const binding = env0_16;
return binding.test(property) ? env0_15.exec(a0) : value;
}
function parse_52415([property], a1, a2) { // fn#52415, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6802:1319, offset: 0x0132aaaf, size: 182 bytes, params: 4, frame: 18
const Boolean = global.Boolean;
const value3 = Boolean(env0_17.exec(property));
let value = property.replace(value3 ? env0_17 : env0_18, '');
let inQuote = a2.inQuote;
inQuote = !!inQuote && inQuote;
let inline = a2.inline;
inline = !!inline && inline;
a2.inQuote = true;
if (!value3) {
a2.inline = true;
}
value = a1(value, a2);
a2.inQuote = inQuote;
a2.inline = inline;
if (value.length === 0) {
value.push({'type': 'text', 'content': ' '});
}
return {content: value, type: 'blockQuote'};
}
function match_52418(a0, a1) { // fn#52418, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6802:2352, offset: 0x0132ac3f, size: 171 bytes, params: 3, frame: 21
var r5;
var r10;
var r1;
var value;
var value2;
var property;
var length;
var value3;
var indexOf;
var value4;
var value5;
var value6;
var slice;
var value7;
if (a1.inline) {
value = env0_19.exec(a0);
if (value != null) {
value2 = 0;
property = value[value2];
length = property.length;
value3 = length - 1;
if (value3 >= value2) {
if (property[value3] !== ')') {
r1 = property;
} else {
r5 = value2;
r10 = value3;
loopExit5: while (true) {
indexOf = property.indexOf;
value4 = Reflect.apply(indexOf, property, ['(', r5]);
if (value4 === -1) {
slice = property.slice;
length = property.length;
value7 = Reflect.apply(slice, property, [value2, length - 1]);
r1 = value7;
break loopExit5;
}
value5 = value4 + 1;
value6 = typeof r10 === 'bigint' ? r10 - 1n : +r10 - 1;
if (value6 >= value2) {
if (property[value6] === ')') {
r5 = value5;
r10 = value6;
continue;
}
r1 = property;
break loopExit5;
}
r1 = property;
break loopExit5;
}
}
} else {
r1 = property;
}
value[1] = r1;
value[value2] = r1;
}
return value;
}
return null;
}
function parse_52419(a0, a1, a2) { // fn#52419, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6802:2765, offset: 0x0132acea, size: 113 bytes, params: 4, frame: 17
var r0;
var object;
let value = (Module03855).defaultRules.inlineCode.parse(a0, a1, a2);
if (a2.parseInlineCodeChildContent !== true) {
r0 = value;
} else {
object = {};
copyDataProperties(object, value, undefined);
value = a1(value.content, a2);
object['validationChildContent'] = value;
r0 = object;
}
return r0;
}
function parse_52425(a0, a1, a2) { // fn#52425, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6802:3437, offset: 0x0132ae0c, size: 558 bytes, params: 4, frame: 20
var r0;
var r1;
var r2;
var r4;
var r3;
var item3;
var value3;
var moduleValue2;
var object;
var object2;
var colors;
var intl;
const iterator = a0[Symbol.iterator]();
const iterator2 = iterator.next;
let item2 = Reflect.apply(iterator2, iterator, []);
let item = item2.value;
item2 = item2.done ? undefined : iterator;
const value = undefined;
const value2 = item2 === value;
if (value2) {
r0 = item2;
r1 = value;
r2 = value2;
} else {
item3 = Reflect.apply(iterator2, item2, []);
item = item3.value;
item3 = item3.done ? undefined : item2;
value3 = item3 === value;
if (value3) {
r0 = item3;
r1 = value;
r2 = value3;
} else {
r0 = item3;
r1 = item;
r2 = value3;
}
}
if (!r2) {
r0.return();
}
if (a2.returnMentionIds) {
return {type: 'roleMention', id: r1};
}
const guild_52412 = getGuild_52412(a2);
const value6 = null;
const r5 = value6 != guild_52412 ? GuildRoleStore.getRole(guild_52412.id, r1) : value6;
if (value6 == r5) {
object = {type: 'text'};
intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
object.content = '@' + intl.string((require(1244) /* metro dependency 1244: indexNative */).t['YV4F/n']);
} else {
var hasEnhancedRoleColorsForRole = (require(6630) /* metro dependency 6630: useHasEnhancedRoleColors */).getHasEnhancedRoleColorsForRole(value6 == guild_52412 ? value : guild_52412.id,
r5);
if (hasEnhancedRoleColorsForRole) {
moduleValue2 = require(1941) /* metro dependency 1941: EnhancedRoleColorUtils */;
r4 = !moduleValue2.getIsDefaultErc(r5);
} else {
r4 = hasEnhancedRoleColorsForRole;
}
object = {type: 'mention'};
object.channelId = a2.channelId;
object.guildId = value6 != guild_52412 ? guild_52412.id : value6;
object.roleId = r1;
object.roleColor = r5.color;
if (r4) {
object2 = {};
colors = r5.colors;
object2.primaryColor = value6 == colors ? value : colors.primary_color;
colors = r5.colors;
object2.secondaryColor = value6 == colors ? value : colors.secondary_color;
colors = r5.colors;
object2.tertiaryColor = value6 == colors ? value : colors.tertiary_color;
r3 = object2;
} else {
r3 = value6;
}
object.roleColors = r3;
object.roleName = '@' + r5.name;
object.color = r5.color;
object.colorString = r5.colorString;
object.content = [{type: 'text', content: '@' + r5.name}];
}
return object;
}
function parse_52427(a0, a1, a2) { // fn#52427, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6802:4302, offset: 0x0132b064, size: 502 bytes, params: 4, frame: 26
var r6;
var r7;
var r11;
var r2;
var id;
var defaultImport;
var value8;
var intl;
if (a2.returnMentionIds) {
return a0[1] == null ? {type: 'mention', text: a0[0]} : {type: 'mention', id: a0[1]};
}
var value;
const user = UserStore.getUser(a0[1]);
const channel = ChannelStore.getChannel(a2.channelId);
const value4 = null;
const value5 = undefined;
if (value4 != user) {
id = user.id;
if (value4 == channel) {
r6 = user.toString();
} else {
defaultImport = importDefault(4617) /* metro dependency 4617: NicknameUtils */;
value8 = defaultImport.getNickname(channel.getGuildId(), a2.channelId, user);
r6 = value4 != value8 ? value8 : (importDefault(3995) /* metro dependency 3995: UserUtils */).getName(user);
}
r7 = r6;
r11 = id;
} else {
r7 = value5;
r11 = value5;
}
const property = a0[1];
const r8 = value4 != property && ID_REGEX.test(property.trim());
if (r8) {
if (a2.unknownUserMentionPlaceholder) {
intl = (require(1244) /* metro dependency 1244: indexNative */).intl;
value = intl.string((require(1244) /* metro dependency 1244: indexNative */).t.sKdZ6U);
value = '@' + value;
r2 = value;
} else {
r2 = a0[0];
}
} else {
r2 = a0[0];
}
const object = {userId: r11};
object.channelId = a2.channelId;
object.viewingChannelId = a2.viewingChannelId;
object.guildId = value4 == channel ? value5 : channel.getGuildId();
object.parsedUserId = r8 ? property : value4;
object.roleName = a0[2];
r2 = value4 != r7 ? '@' + r7 : r2;
object.content = [{type: 'text', content: r2}];
return object;
}
function parse_52431(a0, a1, a2) { // fn#52431, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6802:33918, offset: 0x0132b2c2, size: 240 bytes, params: 4, frame: 19
if (a2.returnMentionIds) {
return {type: 'commandMention', id: a0[2]};
}
let property = a0[1];
let value = property.split(' ');
value = Module00862(value);
value = value.slice(1);
property = a0[2];
const items2 = [];
arraySpread(items2, value, 0, property);
value = items2.map(function(a0) {
return '' + SUB_COMMAND_KEY_SEPARATOR + a0;
});
value = value.join('');
value = '' + property + value;
return {channelId: a2.channelId, commandId: a0[2], commandName: a0[1], commandKey: value, content: [{type: 'text',
content: '' + a0[1]}]};
}
function match_52435(a0, {allowGameMentions}) { // fn#52435, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6802:34506, offset: 0x0132b41d, size: 37 bytes, params: 3, frame: 12
return allowGameMentions ? GAME_MENTION_RAW_RE.exec(a0) : null;
}
function parse_52436([, property], a1, a2) { // fn#52436, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6802:34548, offset: 0x0132b442, size: 517 bytes, params: 4, frame: 21
var name;
var r2;
var icon_hash;
var r3;
const intl = (IndexNativeModule).intl;
const t = (IndexNativeModule).t;
var object;
const mentionGames = a2.mentionGames;
const value = undefined;
const r6 = mentionGames == null ? value : mentionGames.get(property);
const detectableGame = DetectableGameStore.getDetectableGame(property);
if (a2.returnMentionIds === true) {
name = r6 == null ? value : r6.name;
r2 = name ?? (detectableGame == null ? value : detectableGame.name);
r2 = r2 ?? intl.string(t['11pdXZ']);
icon_hash = r6 == null ? value : r6.icon_hash;
r3 = icon_hash == null ? (detectableGame == null ? value : detectableGame.icon) != null ? (importDefault(1423) /* metro dependency 1423: AvatarUtils */).getApplicationIconURL({id: detectableGame.id,
icon: detectableGame.icon,
size: 32}) : value : r6.icon_hash !== '' ? (importDefault(1423) /* metro dependency 1423: AvatarUtils */).getGameAssetURL({id: property,
hash: r6.icon_hash,
size: 32}) : (detectableGame == null ? value : detectableGame.icon) != null ? (importDefault(1423) /* metro dependency 1423: AvatarUtils */).getApplicationIconURL({id: detectableGame.id,
icon: detectableGame.icon, size: 32}) : value;
name = r6 == null ? value : r6.name;
icon_hash = r6 == null ? value : r6.icon_hash;
return {type: 'gameMention', gameId: property, channelId: a2.channelId, gameName: name, gameIconHash: icon_hash,
icon: r3, displayName: r2};
}
if (r6 != null) {
name = r6 == null ? value : r6.name;
r2 = name ?? (detectableGame == null ? value : detectableGame.name);
r2 = r2 ?? intl.string(t['11pdXZ']);
icon_hash = r6 == null ? value : r6.icon_hash;
r3 = icon_hash == null ? (detectableGame == null ? value : detectableGame.icon) != null ? (importDefault(1423) /* metro dependency 1423: AvatarUtils */).getApplicationIconURL({id: detectableGame.id,
icon: detectableGame.icon,
size: 32}) : value : r6.icon_hash !== '' ? (importDefault(1423) /* metro dependency 1423: AvatarUtils */).getGameAssetURL({id: property,
hash: r6.icon_hash,
size: 32}) : (detectableGame == null ? value : detectableGame.icon) != null ? (importDefault(1423) /* metro dependency 1423: AvatarUtils */).getApplicationIconURL({id: detectableGame.id,
icon: detectableGame.icon, size: 32}) : value;
name = r6 == null ? value : r6.name;
icon_hash = r6 == null ? value : r6.icon_hash;
return {type: 'gameMention', gameId: property, channelId: a2.channelId, gameName: name, gameIconHash: icon_hash,
icon: r3, displayName: r2};
}
if (detectableGame == null) {
object = {type: 'text'};
object.content = '@' + intl.string(t['11pdXZ']);
return object;
}
r2 = (r6 == null ? value : r6.name) ?? (detectableGame == null ? value : detectableGame.name);
r2 = r2 ?? intl.string(t['11pdXZ']);
return {type: 'gameMention', gameId: property, channelId: a2.channelId, gameName: r6 == null ? value : r6.name,
gameIconHash: r6 == null ? value : r6.icon_hash,
icon: (r6 == null ? value : r6.icon_hash) == null ? (detectableGame == null ? value : detectableGame.icon) != null ? (importDefault(1423) /* metro dependency 1423: AvatarUtils */).getApplicationIconURL({id: detectableGame.id,
icon: detectableGame.icon,
size: 32}) : value : r6.icon_hash !== '' ? (importDefault(1423) /* metro dependency 1423: AvatarUtils */).getGameAssetURL({id: property,
hash: r6.icon_hash,
size: 32}) : (detectableGame == null ? value : detectableGame.icon) != null ? (importDefault(1423) /* metro dependency 1423: AvatarUtils */).getApplicationIconURL({id: detectableGame.id,
icon: detectableGame.icon, size: 32}) : value, displayName: r2};
}
function match_52437(a0) { // fn#52437, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6802:35311, offset: 0x0132b647, size: 106 bytes, params: 2, frame: 15
var r0;
var value;
const EMOJI_NAME_RE = (importDefault(3797) /* metro dependency 3797: UnicodeEmojis */).EMOJI_NAME_RE;
const value2 = EMOJI_NAME_RE.exec(a0);
const value3 = null;
if (value3 != value2) {
value = importDefault(3797) /* metro dependency 3797: UnicodeEmojis */;
value = value.convertNameToSurrogate(value2[1]);
r0 = value === '' ? value3 : value2;
} else {
r0 = value3;
}
return r0;
}
function parse_52438(a0) { // fn#52438, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6802:35426, offset: 0x0132b6b1, size: 103 bytes, params: 2, frame: 14
let value = UnicodeEmojis;
value = value.convertNameToSurrogate(a0[1]);
return {type: 'text', content: value == null ? ':' + a0[1] + ':' : value !== '' ? value : ':' + a0[1] + ':'};
}
function parse_52440(a0, a1, a2) { // fn#52440, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6802:35660, offset: 0x0132b747, size: 39 bytes, params: 4, frame: 13
return (GetSoundmojiASTFromString)(a0, a2);
}
function parse_52444(a0) { // fn#52444, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6802:35940, offset: 0x0132b7ec, size: 165 bytes, params: 2, frame: 18
var r0;
var r1;
var r4;
var r3;
var item3;
var value3;
var item4;
var value4;
const iterator = a0[Symbol.iterator]();
const iterator2 = iterator.next;
let item2 = Reflect.apply(iterator2, iterator, []);
let item = item2.value;
item2 = item2.done ? undefined : iterator;
let value = undefined;
const value2 = item2 === value;
const r2 = value2 ? value : item;
if (value2) {
r0 = item2;
r1 = value2;
r4 = value;
} else {
item3 = Reflect.apply(iterator2, item2, []);
item = item3.value;
item3 = item3.done ? undefined : item2;
value3 = item3 === value;
if (value3) {
r0 = item3;
r1 = value3;
r4 = value;
} else {
r0 = item3;
r1 = value3;
r4 = item;
}
}
if (r1) {
r3 = value;
} else {
item4 = Reflect.apply(iterator2, r0, []);
item = item4.value;
item4 = item4.done ? undefined : r0;
value4 = item4 === value;
if (value4) {
r0 = item4;
r1 = value4;
r3 = value;
} else {
r0 = item4;
r1 = value4;
r3 = item;
}
}
if (!r1) {
r0.return();
}
value = require(6641) /* metro dependency 6641: TimestampUtils */;
value = value.parseTimestamp(r4, r3);
if (value == null) {
r0 = {type: 'text', content: r2};
} else {
value.type = 'timestamp';
r0 = value;
}
return r0;
}
function parse_52448(a0, a1, a2) { // fn#52448, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6802:36442, offset: 0x0132b8e8, size: 230 bytes, params: 4, frame: 23
const closure = function(a0) {
var value = null;
return value == a0 ? value : [{type: 'text', content: a0}];
};
const value2 = undefined;
const value3 = Module00057(a0, 3);
const property = value3[1];
const property2 = value3[2];
const value4 = (StaticRouteRenderingModule).staticRouteToTranslation(property);
const staticRouteToItemString = StaticRouteRenderingModule.staticRouteToItemString;
const guild_52412 = getGuild_52412(a2);
const value6 = Reflect.apply(staticRouteToItemString, StaticRouteRenderingModule, [property, property2,
guild_52412 == null ? value2 : guild_52412.id]);
const object = {};
object.content = closure(value4 + (value6 != null ? ' › ' + value6 : ''));
object.mainContent = closure(value4);
object.itemContent = closure(value6);
object.itemId = property2;
object.id = property;
object.guildId = getGuildIdFromChannelId(a2.channelId);
object.channelId = property;
return object;
}
function match_52450(a0, a1, a2) { // fn#52450, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6802:37390, offset: 0x0132b9f5, size: 80 bytes, params: 4, frame: 17
const value2 = env0_22.codeBlock.match(a0, a1, a2);
if (value2 != null) {
return value2;
}
return env0_22.inlineCode.match(a0, a1, a2) ?? undefined;
}
function match_52451(a0, a1) { // fn#52451, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6802:37964, offset: 0x0132ba45, size: 250 bytes, params: 3, frame: 22
var r7;
var r6;
var length;
var indexOf;
var value;
var value2;
var value3;
var substring;
var value4;
if (a1.parseDepth != null) {
reducibleJoin2: while (true) {
if (a1.parseDepth > 10) {
return null;
}
break reducibleJoin2;
}
}
let highlightWord = a1.highlightWord;
if (highlightWord != null) {
highlightWord = a1.highlightWord;
length = highlightWord.length;
reducibleJoin12: while (true) {
if (length !== 0) {
indexOf = a0.indexOf;
highlightWord = a1.highlightWord;
value = Reflect.apply(indexOf, a0, [highlightWord]);
if (value === -1) {
return null;
}
value2 = environment;
value3 = _startOfWord(a0, value);
if (value3) {
r6 = value;
} else {
r7 = value;
reducibleLoop6: while (true) {
indexOf = a0.indexOf;
highlightWord = a1.highlightWord;
value = Reflect.apply(indexOf, a0, [highlightWord, r7 + 1]);
if (_startOfWord(a0, value)) {
r6 = value;
break reducibleLoop6;
}
if (value !== -1) {
r7 = value;
continue reducibleLoop6;
}
r6 = value;
break reducibleLoop6;
}
}
if (r6 === -1) {
return null;
}
substring = a0.substring;
value = Reflect.apply(substring, a0, [0, r6]);
substring = a0.substring;
highlightWord = a1.highlightWord;
length = highlightWord.length;
value4 = Reflect.apply(substring, a0, [r6 + length]);
highlightWord = a1.highlightWord;
return [a0, highlightWord, value, value4];
}
break reducibleJoin12;
}
}
return null;
}
}
function parse_52417(a0) { // fn#52417, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6802:2107, offset: 0x0132abb9, size: 134 bytes, params: 2, frame: 15
const property = a0[1];
const value = a0[1].replaceAll(RegExp('[ \\/]+', 'g'), '-');
return {type: 'link', content: [{type: 'text', content: property}],
target: value.startsWith('tel:') || value.startsWith('sms:') ? value : 'tel:' + value};
}
function parse_52452(a0, a1, a2) { // fn#52452, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:6802:38366, offset: 0x0132bb3f, size: 140 bytes, params: 4, frame: 18
const parseDepth = a2.parseDepth;
let value = 0;
const r0 = parseDepth ?? value;
let object = {};
copyDataProperties(object, a2, undefined);
object['parseDepth'] = r0 + 1;
const value2 = a1(a0[2], object);
const value3 = a1(a0[3], object);
object = [];
value = arraySpread(object, value2, value, a1);
object[value] = {type: 'highlight', content: a0[1]};
arraySpread(object, value3, value + 1, a1);
return object;
}
global.__d(_fun52408, 6624, [57, 862, 1379, 4267, 1938, 1867, 1878, 661, 5066, 6625, 6626, 3855, 6629, 1244, 6630,
1941, 4617, 3995, 6631, 6634, 1423, 3797, 6635, 6641, 6642, 6643, 6644, 6645, 6623, 6646, 22,
2]) /* metro module 6624, dependencies: [57, 862, 1379, 4267, 1938, 1867, 1878, 661, 5066, 6625, 6626, 3855, 6629, 1244, 6630, 1941, 4617, 3995, 6631, 6634, 1423, 3797, 6635, 6641, 6642, 6643, 6644, 6645, 6623, 6646, 22, 2] */;